/* BuyBackEmpire responsive refinements */
@media (max-width: 1199.98px) {
  .navbar > .container {
    gap: 14px;
  }

  .navbar .main-menu {
    gap: 0;
  }

  .navbar .main-menu .item {
    padding-right: 7px;
    padding-left: 7px;
    font-size: 0.8125rem;
  }

  .hero-section {
    padding-top: 64px;
    padding-bottom: 68px;
  }

  .hero-image .header-image {
    max-height: 340px;
  }
}

@media (max-width: 991.98px) {
  .navbar,
  .navbar > .container {
    min-height: 70px;
  }

  .navbar > .container {
    gap: 10px;
  }

  .logo-img-lg,
  .logo-img-default {
    max-height: 40px;
    max-width: 184px;
  }

  .navbar .main-menu {
    display: none;
  }

  .navbar .icon-menu {
    margin-left: auto;
  }

  .toggle-btn {
    display: flex !important;
  }

  .icon-menu .toggle-btn button {
    color: var(--bb-brand);
    font-size: 1rem;
  }

  .search-form-top {
    right: 15px;
  }

  .hero-section {
    padding: 60px 0 64px;
  }

  .hero-content {
    padding-right: 15px;
  }

  .hero-title {
    max-width: 590px;
  }

  .hero-image {
    min-height: 290px;
    margin-top: 26px;
  }

  .hero-image .header-image {
    max-height: 315px;
  }

  .hero-image::before {
    width: 280px;
    height: 280px;
  }

  .home-section {
    padding: 70px 0;
  }

  .step-card {
    padding: 24px 20px;
  }

  .footer-top {
    padding-top: 48px;
  }
}

@media (max-width: 767.98px) {
  body.body-text {
    font-size: 15px;
  }

  body .container {
    padding-right: 20px;
    padding-left: 20px;
  }

  .demo-banner p {
    padding-right: 40px;
    padding-left: 15px;
  }

  .demo-banner .close-banner {
    right: 13px;
  }

  .navbar > .container {
    min-height: 65px;
    padding-right: 15px;
    padding-left: 15px;
  }

  .logo-img-lg,
  .logo-img-default {
    max-height: 34px;
    max-width: 162px;
  }

  .icon-menu {
    gap: 0 !important;
  }

  .icon-menu > li > a,
  .icon-menu .toggle-btn button {
    width: 34px;
    height: 34px;
  }

  .icon-user,
  .icon-search,
  .icon-cart {
    width: 18px;
    height: 18px;
  }

  .icon-menu .sale-link {
    width: 34px;
    padding: 0;
  }

  .sale-link-text {
    display: none;
  }

  .icon-menu .submenu {
    top: calc(100% + 7px);
    right: -10px;
  }

  .search-form-top {
    top: calc(100% + 6px);
    right: 10px;
    width: calc(100vw - 20px);
    padding: 10px;
  }

  .cbp-spmenu.cbp-spmenu-right {
    right: -86vw;
    width: 86vw;
  }

  .cbp-spmenu-push-toleft {
    left: -86vw;
  }

  .hero-section {
    padding: 49px 0 51px;
    text-align: center;
  }

  .hero-section::before {
    top: -240px;
    right: -265px;
  }

  .hero-section::after {
    right: -130px;
    bottom: -178px;
  }

  .hero-eyebrow {
    justify-content: center;
    margin-bottom: 14px;
  }

  .hero-title {
    margin-bottom: 15px;
    font-size: clamp(2.34rem, 11vw, 3rem);
    letter-spacing: -0.06em;
  }

  .hero-subtitle {
    max-width: 480px;
    margin: 0 auto 24px;
    font-size: 0.98rem;
  }

  .search-box-wrapper {
    margin: 0 auto;
  }

  .home-search-label {
    text-align: left;
  }

  .home-search-form .input-group {
    padding: 4px;
  }

  .search-input.form-control {
    height: 49px;
    padding-right: 9px;
    padding-left: 11px;
    font-size: 0.875rem;
  }

  .home-search-form .btn-primary {
    min-height: 49px;
    padding-right: 12px;
    padding-left: 12px;
  }

  .home-search-form .btn-primary i {
    margin-right: 4px;
  }

  .hero-reassurance {
    justify-content: center;
    gap: 7px 12px;
    margin-top: 15px;
    font-size: 0.73rem;
  }

  .hero-image {
    min-height: 0;
    margin-top: 35px;
  }

  .hero-image::before {
    width: 235px;
    height: 235px;
  }

  .hero-image .header-image {
    max-width: 240px;
    max-height: 275px;
  }

  .home-section {
    padding: 55px 0;
  }

  .section-header {
    margin-bottom: 31px;
  }

  .section-header h2 {
    font-size: 1.85rem;
  }

  .section-header .lead {
    margin-top: 11px;
    font-size: 0.94rem;
  }

  .steps-wrapper {
    margin-right: -5px;
    margin-left: -5px;
  }

  .step-item {
    padding-right: 5px;
    padding-left: 5px;
    margin-bottom: 10px;
  }

  .step-card {
    padding: 20px 15px;
    text-align: left;
  }

  .step-icon {
    width: 46px;
    height: 46px;
    margin-bottom: 14px;
    border-radius: 10px;
  }

  .step-icon img {
    max-width: 27px;
    max-height: 27px;
  }

  .step-label {
    margin-bottom: 5px;
    font-size: 0.65rem;
  }

  .step-card h3,
  .step-card h4 {
    margin-bottom: 6px;
    font-size: 0.93rem;
  }

  .step-card p {
    font-size: 0.79rem;
  }

  .category-grid {
    margin-right: -6px;
    margin-left: -6px;
  }

  .category-grid > div {
    padding-right: 6px;
    padding-left: 6px;
    margin-bottom: 12px !important;
  }

  .category-card {
    min-height: 160px;
    padding: 15px 11px;
    border-radius: 10px;
  }

  .category-image {
    height: 94px;
    margin-bottom: 12px;
  }

  .category-card h3,
  .category-card h4 {
    font-size: 0.85rem;
  }

  .why-choose-us {
    padding: 45px 0 33px;
  }

  .feature-box {
    display: grid;
    grid-template-columns: 45px 1fr;
    column-gap: 14px;
    max-width: 430px;
    margin: 0 auto 21px;
    padding: 0;
    text-align: left !important;
  }

  .feature-icon {
    grid-row: span 2;
    width: 43px;
    height: 43px;
    margin: 0;
    font-size: 1rem;
  }

  .feature-box h3,
  .feature-box h4 {
    margin: 0 0 3px;
    font-size: 0.98rem;
  }

  .feature-box p {
    max-width: none;
    font-size: 0.84rem;
  }

  .footer-top {
    padding: 42px 0 34px;
  }

  .footer-top .row {
    row-gap: 24px;
  }

  .footer-top .block > h3 {
    margin-bottom: 10px;
  }

  .footer-bottom p {
    padding: 15px 0;
    font-size: 0.72rem;
  }
}

@media (max-width: 420px) {
  .icon-menu .user {
    display: none;
  }

  .hero-title {
    font-size: 2.25rem;
  }

  .home-search-form .btn-primary {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 0.8rem;
  }
}
