@media (max-width: 768px) {
  h1 {
    line-height: 48px;
  }

  p {
    font-size: 16px;
    line-height: 24px;
  }

  .btn-lg {
    font-size: 18px;
    line-height: 56px;
    padding: 0 20px !important;
    height: 56px;
  }

  .container-fluid,
  .container {
    padding: 0 24px;
  }

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

  /* spaces */
  .mb-32 {
    margin-bottom: 32px !important;
  }

  .mt-32 {
    margin-top: 32px;
  }

  .pt-32 {
    padding-top: 32px;
  }

  .pb-32 {
    padding-bottom: 32px;
  }

  .mb-56 {
    margin-bottom: 32px !important;
  }

  .footer-contact-item::before {
    top: 5px !important;
  }

  .gap-32 {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 1.5rem;
  }

  .custom-login-wrapper {
    padding: 64px 20px;
  }

  .custom-login-logo {
    display: none;
  }

  /* Responsive Styles for Empty Cart */
  .woocommerce-empty-cart-wrapper {
    margin: 60px auto;
    padding: 40px 16px;
  }

  .empty-cart-icon svg {
    width: 100px;
    height: 100px;
  }

  .empty-cart-title {
    font-size: 24px;
    margin-bottom: 12px;
  }

  .empty-cart-subtitle {
    font-size: 16px;
    margin-bottom: 32px;
  }

  .empty-cart-button {
    padding: 14px 36px;
    font-size: 15px;
    width: 100%;
    max-width: 280px;
  }

  /* my account responsive styles starts here */

  .account-tabs-list {
    flex-direction: row;
    border-bottom: none;
    flex-wrap: nowrap;
    overflow: hidden;
    overflow-x: auto;
    gap: 16px;
  }

  .account-tab-item {
    width: 100%;
  }

  .account-tab-item a {
    border-bottom: none;
    border-left: 3px solid transparent;
    border-radius: 8px;
    margin-bottom: 0;
  }

  .account-tab-item.is-active a,
  .account-tab-item.active a {
    border-bottom-color: transparent;
    background: #f9f9f9;
    padding: 12px 24px;
  }

  .woocommerce-MyAccount-content {
    padding: 24px 16px;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100%;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100%;
    margin-top: 0;
  }

  .custom-login-card {
    padding: 32px 24px;
  }

  .custom-login-title {
    font-size: 24px;
  }

  .btn-x-sm {
    height: 48px;
    line-height: 48px;
    padding: 0 20px !important;
  }

  .btn-sm {
    padding: 0 20px !important;
  }

  .woocommerce ul.order_details {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before {
    content: "";
  }

  .woocommerce .woocommerce-customer-details .woocommerce-customer-details--email {
    padding-left: 0 !important;
  }

  .woocommerce-account-wrapper .woocommerce form.login,
  form.woocommerce-ResetPassword.lost_reset_password {
    padding: 16px !important;
  }

  .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
  }
  a.mobile-c-icon.btn.btn-circle {
    width: 64px;
    height: 64px;
}
}

/* spaces */

@media (min-width: 768px) {
  .mb-md-32 {
    margin-bottom: 32px;
  }

  .mt-md-32 {
    margin-top: 32px;
  }

  .pt-md-32 {
    padding-top: 32px;
  }

  .pb-md-32 {
    padding-bottom: 32px;
  }

  .section-space-xl {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

@media (min-width: 992px) {
  .mb-lg-32 {
    margin-bottom: 32px !important;
  }

  .mt-lg-32 {
    margin-top: 32px;
  }

  .pt-lg-32 {
    padding-top: 32px;
  }

  .pb-lg-32 {
    padding-bottom: 32px;
  }

  .section-space-xl {
    padding-top: 92px;
    padding-bottom: 92px;
  }

  a.pf-cta-button {
    padding: 21px 92px !important;
  }
}

@media (min-width: 1200px) {
  .mb-xl-32 {
    margin-bottom: 32px;
  }

  .mt-xl-32 {
    margin-top: 32px;
  }

  .pt-xl-32 {
    padding-top: 32px;
  }

  .pb-xl-32 {
    padding-bottom: 32px;
  }

  .section-space-xl {
    padding-top: 128px;
    padding-bottom: 128px;
  }

  .lh-64 {
    line-height: 64px;
  }
}

/* Show mobile menu button on mobile/tablet */
@media (max-width: 991.98px) {
  .custom-mobile-menu-toggle {
    display: flex !important;
  }

  .navbar-toggler:not(.custom-mobile-menu-toggle) {
    display: none !important;
  }

  .megamenu-wrapper .tab-content {
    display: none;
  }

  .megamenu-wrapper .nav-pills {
    width: 100%;
  }

  .megamenu-wrapper .nav-pills {
    width: 100%;
    text-align: left;
    align-items: self-start;
  }

  .nav-pills .nav-link.active,
  .nav-pills .show>.nav-link {
    color: black;
    background-color: transparent;
  }

  .nav-pills .nav-link {
    color: black !important;
  }

  .mobile-c-icon.btn .badge {
    right: 59px !important;
    left: unset !important;
  }

  .header-actions .header-btn-icon {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .mobile-sliding-menu {
    max-width: 100%;
  }

  .mobile-menu-header {
    padding: 20px 16px;
  }

  .mobile-menu-list a {
    padding: 14px 16px;
    font-size: 15px;
  }

  .mobile-menu-list .sub-menu a {
    padding-left: 16px;
  }

  .menu-open button#mobileMenuToggle {
    visibility: hidden;
  }
}

/* Between 992px and 1260px: show icons only, hide text */
@media (min-width: 992px) and (max-width: 1330px) {

  .header-actions .phone-btn .header-btn-icon,
  .header-actions .header-user-btn .header-btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 0;
  }

  .header-actions .phone-btn .phone-text,
  .header-actions .header-user-btn .user-name {
    display: none;
  }

  .header-actions .phone-btn,
  .header-actions .header-user-btn {
    padding: 8px 12px !important;
    min-width: auto;
  }

  .header-actions .phone-btn {
    display: flex;
  }

  .header-actions .phone-btn img {
    filter: invert(1);
  }

  .site-header .navbar-nav {
    gap: 24px !important
  }

  #primary-menu .mega-menu .sub-menu {
    width: 680px;
    margin-top: 17px !important;
  }

  .btn-circle {
    width: 54px;
    height: 56px;
  }
}

@media (min-width: 992px) and (max-width: 1390px) {
  .site-header .navbar-nav li a {
    font-size: 16px !important;
  }
}

/* Outside that range (desktop): show text, hide icons */
@media (min-width: 1331px) {

  .header-actions .phone-btn .header-btn-icon,
  .header-actions .header-user-btn .header-btn-icon {
    display: none;
  }

  .header-actions .phone-btn .phone-text,
  .header-actions .header-user-btn .user-name {
    display: inline;
  }
}