@media (max-width: 820px) {
  body.nawasi-support-navigation {
    padding-bottom: calc(
      82px + env(safe-area-inset-bottom, 0px)
    );
  }

  body.nawasi-support-navigation :is(
    .nawasi-mobile-nav,
    .nawasi-whatsapp-single,
    .nawasi-whatsapp,
    .ns-whatsapp-float,
    #nawasi-chat-toggle,
    .nawasi-chat-toggle,
    .nawasi-reply-alert
  ) {
    display: none !important;
  }

  body.nawasi-support-navigation :is(
    .ns-main,
    main,
    .woocommerce
  ) {
    padding-bottom: 110px;
  }

  .nssn-icon {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .nssn-bottom-nav {
    position: fixed;
    z-index: 9990;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    min-height: calc(
      74px + env(safe-area-inset-bottom, 0px)
    );
    gap: 2px;
    padding:
      6px
      7px
      calc(6px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid rgba(215, 166, 47, .26);
    background: rgba(5, 7, 10, .97);
    box-shadow: 0 -12px 30px rgba(0, 0, 0, .36);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }

  .nssn-bottom-nav__item {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 58px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
    padding: 4px 2px;
    border: 0;
    border-radius: 13px;
    background: transparent;
    color: #c8ccd4 !important;
    font: 700 10px/1.1 inherit;
    text-decoration: none !important;
  }

  .nssn-bottom-nav__item.is-active {
    background: rgba(215, 166, 47, .13);
    color: #f0d266 !important;
  }

  .nssn-bottom-nav__item > span {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .nssn-whatsapp-float {
    position: fixed;
    z-index: 9985;
    right: 14px;
    bottom: calc(
      90px + env(safe-area-inset-bottom, 0px)
    );
    width: 52px;
    height: 52px;
    user-select: none;
    -webkit-user-select: none;
  }

  .nssn-whatsapp-float.is-hidden {
    display: none !important;
  }

  .nssn-whatsapp-float.is-dragging {
    opacity: .92;
  }

  .nssn-whatsapp-link {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, .18);
    border-radius: 17px;
    background: #25d366;
    color: #06250f !important;
    box-shadow: 0 13px 30px rgba(0, 0, 0, .36);
    text-decoration: none !important;
  }

  .nssn-whatsapp-link .nssn-icon {
    width: 28px;
    height: 28px;
  }

  .nssn-whatsapp-close {
    position: absolute;
    z-index: 2;
    top: -10px;
    left: -9px;
    display: grid;
    width: 24px;
    min-width: 24px;
    height: 24px;
    min-height: 24px;
    padding: 0;
    place-items: center;
    border: 2px solid #080a0e;
    border-radius: 999px;
    background: #e6473c;
    color: #fff;
    font: 900 16px/1 Arial, sans-serif;
  }

  body.nawasi-support-navigation
    .ns-site-header {
    position: sticky;
    top: 0;
  }

  body.admin-bar.nawasi-support-navigation
    .ns-site-header {
    top: 46px;
  }

  body.nawasi-support-navigation {
    scroll-padding-top: 190px;
  }

  .nssn-support {
    width: min(calc(100% - 24px), 760px);
    margin: 0 auto;
    padding:
      24px
      0
      calc(110px + env(safe-area-inset-bottom, 0px));
  }

  .nssn-support__hero {
    margin-bottom: 17px;
    padding: 22px 18px;
    border: 1px solid rgba(215, 166, 47, .28);
    border-radius: 22px;
    background:
      radial-gradient(
        circle at 80% -30%,
        rgba(215, 166, 47, .17),
        transparent 46%
      ),
      linear-gradient(155deg, #151923, #090b10);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .27);
  }

  .nssn-support__eyebrow {
    display: block;
    margin-bottom: 6px;
    color: #f0d266;
    font-size: 12px;
    font-weight: 900;
  }

  .nssn-support__hero h1 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 28px;
    line-height: 1.35;
  }

  .nssn-support__hero p {
    margin: 0;
    color: #b9bec8;
    font-size: 14px;
    line-height: 1.75;
  }

  .nssn-support__grid {
    display: grid;
    gap: 11px;
  }

  .nssn-support-card {
    display: grid;
    width: 100%;
    min-height: 84px;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 13px;
    border: 1px solid rgba(215, 166, 47, .22);
    border-radius: 18px;
    background: linear-gradient(155deg, #151923, #0a0c11);
    color: #fff !important;
    font: inherit;
    text-align: right;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .2);
  }

  .nssn-support-card__icon {
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border: 1px solid rgba(215, 166, 47, .26);
    border-radius: 16px;
    background: #0b0e14;
    color: #f0d266;
  }

  .nssn-support-card__icon.is-whatsapp {
    background: #25d366;
    color: #06250f;
  }

  .nssn-support-card strong,
  .nssn-support-card small {
    display: block;
  }

  .nssn-support-card strong {
    margin-bottom: 5px;
    color: #fff;
    font-size: 15px;
  }

  .nssn-support-card small {
    color: #afb5c0;
    font-size: 12px;
    line-height: 1.55;
  }

  body.nawasi-support-page
    .ns-main {
    padding-bottom: 0;
  }

  #nawasi-chat-root.open {
    z-index: 10020;
  }
}

@media (min-width: 821px) {
  .nssn-bottom-nav,
  .nssn-whatsapp-float {
    display: none !important;
  }

  .nssn-support {
    width: min(calc(100% - 40px), 900px);
    margin: 34px auto 70px;
  }
}


/* v1.2.1 — compact mobile scale and reliable WhatsApp dismissal */
@media (max-width: 820px) {
  body.nawasi-support-navigation {
    padding-bottom: calc(
      70px + env(safe-area-inset-bottom, 0px)
    );
  }

  body.nawasi-support-navigation :is(
    .ns-main,
    main,
    .woocommerce
  ) {
    padding-bottom: 86px !important;
  }

  /*
   * Compact header.
   */
  body.nawasi-support-navigation
    .ns-header-main {
    min-height: 58px !important;
    gap: 8px !important;
    padding:
      7px
      12px
      5px !important;
  }

  body.nawasi-support-navigation
    .ns-branding :is(
      .custom-logo-link,
      .ns-logo
    ) {
    width: min(42vw, 160px) !important;
  }

  body.nawasi-support-navigation
    .ns-branding
    img {
    height: 40px !important;
    max-height: 40px !important;
  }

  body.nawasi-support-navigation :is(
    .ns-action,
    .ns-menu-toggle
  ) {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  body.nawasi-support-navigation
    .ns-product-search {
    margin: 4px 12px 8px !important;
  }

  body.nawasi-support-navigation
    .ns-product-search
    input[type="search"] {
    min-height: 44px !important;
    height: 44px !important;
    padding-inline: 12px !important;
    font-size: 14px !important;
  }

  body.nawasi-support-navigation
    .ns-product-search
    button {
    width: 48px !important;
    min-width: 48px !important;
    min-height: 44px !important;
    height: 44px !important;
  }

  /*
   * Compact page headings and shell.
   */
  body.nawasi-support-navigation :is(
    .ns-main,
    .nawasi-wrap
  ) {
    padding-top: 12px !important;
  }

  body.nawasi-support-navigation
    .woocommerce-products-header,
  body.nawasi-support-navigation
    .ns-page-shell {
    padding: 14px !important;
    margin-bottom: 12px !important;
    border-radius: 16px !important;
  }

  body.nawasi-support-navigation :is(
    .woocommerce-products-header__title,
    .woocommerce-products-header
      .page-title,
    .ns-page-title,
    h1.entry-title
  ) {
    margin: 0 !important;
    font-size: clamp(27px, 8vw, 38px) !important;
    line-height: 1.25 !important;
  }

  /*
   * Compact wallet promotion.
   */
  body.nawasi-support-navigation
    .nawasi-wallet-feature {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 10px !important;
    margin: 12px auto !important;
    padding: 13px !important;
    border-radius: 16px !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 13px !important;
    font-size: 16px !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-kicker {
    font-size: 12px !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-copy
    h2 {
    margin: 2px 0 4px !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-copy
    p {
    font-size: 12.5px !important;
    line-height: 1.65 !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-button {
    grid-column: 1 / -1 !important;
    min-height: 42px !important;
    padding: 8px 12px !important;
    border-radius: 11px !important;
    font-size: 13px !important;
  }

  /*
   * Compact Nawasi content sections and category cards.
   */
  body.nawasi-support-navigation
    .nawasi-wrap {
    padding:
      12px
      8px
      82px !important;
  }

  body.nawasi-support-navigation
    .nawasi-hero {
    padding: 18px 14px !important;
    border-radius: 17px !important;
  }

  body.nawasi-support-navigation
    .nawasi-hero
    img {
    width: 46% !important;
    max-width: 180px !important;
  }

  body.nawasi-support-navigation
    .nawasi-hero
    h1 {
    margin: 10px 0 5px !important;
    font-size: 27px !important;
    line-height: 1.3 !important;
  }

  body.nawasi-support-navigation
    .nawasi-hero
    p {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
  }

  body.nawasi-support-navigation
    .nawasi-actions {
    gap: 7px !important;
    margin-top: 13px !important;
  }

  body.nawasi-support-navigation
    .nawasi-btn {
    min-height: 40px !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
  }

  body.nawasi-support-navigation
    .nawasi-section {
    margin-top: 24px !important;
  }

  body.nawasi-support-navigation
    .nawasi-section
    h2 {
    margin-bottom: 12px !important;
    font-size: 24px !important;
    line-height: 1.3 !important;
  }

  body.nawasi-support-navigation
    .nawasi-grid {
    gap: 8px !important;
  }

  body.nawasi-support-navigation
    .nawasi-cat-card {
    min-height: 118px !important;
    padding: 13px !important;
    border-radius: 15px !important;
  }

  body.nawasi-support-navigation
    .nawasi-cat-card
    strong {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  body.nawasi-support-navigation
    .nawasi-cat-card
    span {
    margin-top: 7px !important;
    font-size: 11.5px !important;
    line-height: 1.55 !important;
  }

  /*
   * Compact WooCommerce product grid.
   */
  body.nawasi-support-navigation
    .woocommerce
    ul.products {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 7px !important;
    border-radius: 13px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    a
    img {
    width: 100% !important;
    height: clamp(112px, 34vw, 156px) !important;
    margin-bottom: 7px !important;
    border-radius: 10px !important;
    object-fit: cover !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .woocommerce-loop-product__title {
    min-height: 36px !important;
    margin: 0 0 4px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    -webkit-line-clamp: 2 !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .price {
    margin: 3px 0 6px !important;
    font-size: 12.5px !important;
    line-height: 1.3 !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .button {
    min-height: 39px !important;
    padding: 7px 4px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  /*
   * Compact bottom navigation.
   */
  .nssn-bottom-nav {
    min-height: calc(
      66px + env(safe-area-inset-bottom, 0px)
    ) !important;
    padding:
      4px
      5px
      calc(4px + env(safe-area-inset-bottom, 0px))
      !important;
  }

  .nssn-bottom-nav__item {
    min-height: 52px !important;
    gap: 3px !important;
    padding: 3px 1px !important;
    border-radius: 11px !important;
    font-size: 9px !important;
  }

  .nssn-bottom-nav__item
    .nssn-icon {
    width: 21px !important;
    height: 21px !important;
  }

  /*
   * Compact support page.
   */
  .nssn-support {
    width: min(calc(100% - 16px), 620px) !important;
    padding:
      12px
      0
      calc(82px + env(safe-area-inset-bottom, 0px))
      !important;
  }

  .nssn-support__hero {
    margin-bottom: 10px !important;
    padding: 15px 14px !important;
    border-radius: 17px !important;
  }

  .nssn-support__eyebrow {
    margin-bottom: 4px !important;
    font-size: 10.5px !important;
  }

  .nssn-support__hero
    h1 {
    margin-bottom: 5px !important;
    font-size: 23px !important;
  }

  .nssn-support__hero
    p {
    font-size: 12px !important;
    line-height: 1.6 !important;
  }

  .nssn-support__grid {
    gap: 7px !important;
  }

  .nssn-support-card {
    min-height: 66px !important;
    grid-template-columns:
      44px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 9px !important;
    border-radius: 14px !important;
  }

  .nssn-support-card__icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 12px !important;
  }

  .nssn-support-card__icon
    .nssn-icon {
    width: 21px !important;
    height: 21px !important;
  }

  .nssn-support-card
    strong {
    margin-bottom: 2px !important;
    font-size: 13px !important;
  }

  .nssn-support-card
    small {
    font-size: 10.5px !important;
    line-height: 1.45 !important;
  }

  /*
   * Smaller floating WhatsApp.
   */
  .nssn-whatsapp-float {
    right: 10px;
    bottom: calc(
      76px + env(safe-area-inset-bottom, 0px)
    );
    width: 46px;
    height: 46px;
  }

  .nssn-whatsapp-link {
    width: 46px;
    height: 46px;
    border-radius: 15px;
  }

  .nssn-whatsapp-link
    .nssn-icon {
    width: 24px;
    height: 24px;
  }

  .nssn-whatsapp-close {
    top: -11px;
    left: -11px;
    width: 29px;
    min-width: 29px;
    height: 29px;
    min-height: 29px;
    border-radius: 10px;
    font-size: 18px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .35);
  }

  body.nawasi-support-page
    .nssn-whatsapp-float {
    display: none !important;
  }
}

@media (max-width: 370px) {
  body.nawasi-support-navigation
    .woocommerce
    ul.products {
    gap: 6px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    a
    img {
    height: 118px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .woocommerce-loop-product__title {
    font-size: 11px !important;
  }
}


/* v1.2.2 — compact mobile UI, account forms, products and drag-delete */
@media (max-width: 820px) {
  /*
   * Reduce unused space below the header.
   */
  body.nawasi-support-navigation
    .ns-nav-row {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.nawasi-support-navigation
    .ns-primary-nav:not(.is-open) {
    display: none !important;
  }

  body.nawasi-support-navigation
    .ns-primary-nav.is-open {
    display: block !important;
  }

  body.nawasi-support-navigation
    .ns-main {
    padding-top: 8px !important;
  }

  /*
   * Mobile typography scale.
   */
  body.nawasi-support-navigation {
    font-size: 14px;
  }

  body.nawasi-support-navigation :is(
    h1,
    .entry-title,
    .page-title,
    .woocommerce-products-header__title
  ) {
    font-size: clamp(26px, 7.8vw, 34px) !important;
    line-height: 1.22 !important;
  }

  body.nawasi-support-navigation :is(
    h2,
    .woocommerce h2
  ) {
    font-size: clamp(21px, 6.2vw, 27px) !important;
    line-height: 1.3 !important;
  }

  /*
   * Shop header and breadcrumb.
   */
  body.woocommerce-shop.nawasi-support-navigation
    .woocommerce-breadcrumb {
    margin: 0 0 8px !important;
    font-size: 10.5px !important;
  }

  body.woocommerce-shop.nawasi-support-navigation
    .woocommerce-products-header {
    min-height: 0 !important;
    padding: 12px 14px !important;
  }

  body.woocommerce-shop.nawasi-support-navigation
    .woocommerce-products-header__title {
    font-size: 29px !important;
  }

  /*
   * Wallet banner: compact horizontal card.
   */
  body.nawasi-support-navigation
    .nawasi-wallet-feature {
    min-height: 0 !important;
    grid-template-columns:
      42px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 10px !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-icon {
    width: 42px !important;
    height: 42px !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-copy
    h2 {
    font-size: 17px !important;
    line-height: 1.3 !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-copy
    p {
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  body.nawasi-support-navigation
    .nawasi-wallet-feature-button {
    min-height: 37px !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
  }

  /*
   * Compact home/brand promotional cards.
   */
  body.nawasi-support-navigation :is(
    .nawasi-hero,
    .nawasi-brand-hero,
    .nawasi-store-hero,
    .nawasi-intro-card,
    .nawasi-brand-card
  ) {
    min-height: 0 !important;
    padding: 14px 12px !important;
    border-radius: 16px !important;
  }

  body.nawasi-support-navigation :is(
    .nawasi-hero,
    .nawasi-brand-hero,
    .nawasi-store-hero,
    .nawasi-intro-card,
    .nawasi-brand-card
  ) img {
    width: auto !important;
    max-width: 44% !important;
    max-height: 78px !important;
    object-fit: contain !important;
  }

  body.nawasi-support-navigation :is(
    .nawasi-hero,
    .nawasi-brand-hero,
    .nawasi-store-hero,
    .nawasi-intro-card,
    .nawasi-brand-card
  ) :is(h1, h2) {
    margin: 7px 0 4px !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
  }

  body.nawasi-support-navigation :is(
    .nawasi-hero,
    .nawasi-brand-hero,
    .nawasi-store-hero,
    .nawasi-intro-card,
    .nawasi-brand-card
  ) p {
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }

  /*
   * Product cards: denser two-column layout.
   */
  body.nawasi-support-navigation
    .woocommerce
    ul.products {
    gap: 6px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product {
    padding: 6px !important;
    border-radius: 12px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    a
    img {
    height: clamp(98px, 29vw, 130px) !important;
    margin-bottom: 5px !important;
    border-radius: 9px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .woocommerce-loop-product__title {
    min-height: 32px !important;
    margin-bottom: 3px !important;
    font-size: 10.8px !important;
    line-height: 1.42 !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .price {
    margin: 2px 0 5px !important;
    font-size: 11.5px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .button {
    min-height: 36px !important;
    padding: 6px 3px !important;
    font-size: 10.5px !important;
  }

  /*
   * Account/login page.
   */
  body.woocommerce-account.nawasi-support-navigation
    .ns-page-shell,
  body.woocommerce-account.nawasi-support-navigation
    .woocommerce {
    padding: 12px 10px 92px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    :is(
      h1.entry-title,
      .ns-page-title
    ) {
    margin: 0 0 8px !important;
    font-size: 28px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce
    h2 {
    margin: 0 0 12px !important;
    font-size: 23px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    form.woocommerce-form-login {
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce-form-row {
    margin-bottom: 10px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce-form-row
    label {
    margin-bottom: 4px !important;
    font-size: 11.5px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce
    input.input-text {
    min-height: 41px !important;
    height: 41px !important;
    padding: 7px 9px !important;
    font-size: 14px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce
    button.button {
    min-height: 41px !important;
    padding: 7px 16px !important;
    font-size: 14px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce-LostPassword {
    margin: 9px 0 0 !important;
    font-size: 11.5px !important;
  }

  /*
   * Search focus: no thick gold frame.
   */
  body.nawasi-support-navigation
    .ns-product-search
    form:focus-within {
    outline: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.nawasi-support-navigation
    .ns-product-search
    input[type="search"]:focus {
    outline: 0 !important;
    border-color: rgba(224, 190, 69, .62) !important;
    box-shadow:
      inset 0 0 0 1px rgba(224, 190, 69, .42)
      !important;
  }

  /*
   * Bottom navigation: only the actual active item is highlighted.
   */
  .nssn-bottom-nav__item {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .nssn-bottom-nav__item::before,
  .nssn-bottom-nav__item::after {
    display: none !important;
  }

  .nssn-bottom-nav__item:not(.is-active):is(
    :focus,
    :focus-visible,
    :active
  ) {
    background: transparent !important;
    color: #c8ccd4 !important;
    box-shadow: none !important;
  }

  .nssn-bottom-nav__item.is-active {
    background: rgba(215, 166, 47, .13) !important;
    color: #f0d266 !important;
  }

  /*
   * Support page: last card remains above navigation.
   */
  .nssn-support {
    padding-bottom:
      calc(126px + env(safe-area-inset-bottom, 0px))
      !important;
  }

  /*
   * WhatsApp: smaller direct-close and drag-to-delete target.
   */
  .nssn-whatsapp-float {
    width: 42px !important;
    height: 42px !important;
  }

  .nssn-whatsapp-link {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
  }

  .nssn-whatsapp-link
    .nssn-icon {
    width: 22px !important;
    height: 22px !important;
  }

  .nssn-whatsapp-close {
    top: -12px !important;
    left: -12px !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    border-radius: 9px !important;
    font-size: 18px !important;
  }

  .nssn-whatsapp-drop {
    position: fixed;
    z-index: 9992;
    right: 50%;
    bottom: calc(
      80px + env(safe-area-inset-bottom, 0px)
    );
    display: none;
    min-width: 190px;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 15px;
    background: rgba(168, 37, 37, .96);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    transform: translateX(50%);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .38);
  }

  .nssn-whatsapp-drop.is-visible {
    display: flex;
  }

  .nssn-whatsapp-drop.is-hot {
    background: #d83737;
    box-shadow:
      0 0 0 4px rgba(216, 55, 55, .2),
      0 14px 34px rgba(0, 0, 0, .4);
  }

  .nssn-whatsapp-drop__icon {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 8px;
    background: rgba(0, 0, 0, .2);
    font-size: 19px;
    line-height: 1;
  }
}

@media (max-width: 370px) {
  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    a
    img {
    height: 96px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .woocommerce-loop-product__title {
    font-size: 10px !important;
  }
}


/* v1.2.3 — high-specificity compact fixes for the active Nawasi theme */
@media (max-width: 820px) {
  /*
   * Search: remove the remaining thick gold focus frame.
   */
  body.nawasi-support-navigation :is(
    .ns-product-search,
    .ns-product-search form,
    .nawasi-live-search,
    .nawasi-live-search__form,
    .woocommerce-product-search,
    form[role="search"]
  ):focus-within {
    outline: 0 !important;
    border-color: rgba(215, 166, 47, .28) !important;
    box-shadow: none !important;
  }

  body.nawasi-support-navigation :is(
    .ns-product-search,
    .nawasi-live-search,
    .woocommerce-product-search
  ) :is(
    input[type="search"],
    input[name="s"]
  ):focus {
    outline: 0 !important;
    border-width: 1px !important;
    border-color: rgba(224, 190, 69, .54) !important;
    box-shadow: none !important;
  }

  /*
   * Shop title: override the active theme's large heading selector.
   */
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ).nawasi-support-navigation
    .woocommerce-products-header {
    min-height: 0 !important;
    margin: 0 0 10px !important;
    padding: 11px 13px !important;
    border-radius: 15px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ).nawasi-support-navigation
    .woocommerce-products-header :is(
      h1,
      .page-title,
      .woocommerce-products-header__title
    ) {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
  }

  /*
   * Home promotional panel: constrain oversized theme hero blocks.
   */
  body.home.nawasi-support-navigation
    .nawasi-wrap :is(
      [class*="hero"],
      [class*="intro"],
      [class*="brand-card"],
      [class*="showcase"]
    ) {
    min-height: 0 !important;
    max-height: 300px !important;
    padding: 13px 11px !important;
    overflow: hidden !important;
    border-radius: 15px !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-wrap :is(
      [class*="hero"],
      [class*="intro"],
      [class*="brand-card"],
      [class*="showcase"]
    ) img {
    width: auto !important;
    max-width: 44% !important;
    max-height: 70px !important;
    margin: 0 auto 6px !important;
    object-fit: contain !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-wrap :is(
      [class*="hero"],
      [class*="intro"],
      [class*="brand-card"],
      [class*="showcase"]
    ) :is(h1, h2, h3) {
    margin: 5px 0 3px !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-wrap :is(
      [class*="hero"],
      [class*="intro"],
      [class*="brand-card"],
      [class*="showcase"]
    ) p {
    margin: 0 !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  /*
   * Account page: force a compact WooCommerce form layout.
   */
  body.woocommerce-account.nawasi-support-navigation
    main,
  body.woocommerce-account.nawasi-support-navigation
    .ns-main,
  body.woocommerce-account.nawasi-support-navigation
    .woocommerce {
    padding-top: 8px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    :is(
      h1,
      h1.entry-title,
      .page-title,
      .ns-page-title
    ) {
    margin: 0 0 8px !important;
    padding: 0 !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      h2,
      .u-column1 h2,
      .u-column2 h2
    ) {
    margin: 0 0 10px !important;
    padding: 0 !important;
    font-size: 21px !important;
    line-height: 1.25 !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce
    .u-columns {
    display: block !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      .u-column1,
      .u-column2,
      .col-1,
      .col-2
    ) {
    width: 100% !important;
    float: none !important;
    margin: 0 0 12px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) {
    margin: 0 0 12px !important;
    padding: 11px !important;
    border-radius: 13px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) p {
    margin: 0 0 9px !important;
    font-size: 11.5px !important;
    line-height: 1.55 !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) label {
    margin-bottom: 3px !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) :is(
      input.input-text,
      input[type="text"],
      input[type="email"],
      input[type="password"]
    ) {
    width: 100% !important;
    min-height: 39px !important;
    height: 39px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    font-size: 13px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) button.button {
    min-height: 39px !important;
    padding: 6px 14px !important;
    font-size: 13px !important;
  }

  body.woocommerce-account.nawasi-support-navigation
    .woocommerce-privacy-policy-text {
    margin: 8px 0 !important;
    font-size: 10.5px !important;
    line-height: 1.55 !important;
  }

  /*
   * Product grid: final mobile density.
   */
  body.nawasi-support-navigation
    .woocommerce
    ul.products {
    margin-top: 8px !important;
    gap: 6px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product {
    padding: 5px !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    a
    img {
    height: clamp(94px, 28vw, 124px) !important;
  }

  body.nawasi-support-navigation
    .woocommerce
    ul.products
    li.product
    .woocommerce-loop-product__title {
    min-height: 30px !important;
    font-size: 10.3px !important;
  }

  /*
   * WhatsApp: less obstruction while preserving drag and close.
   */
  .nssn-whatsapp-float,
  .nssn-whatsapp-link {
    width: 38px !important;
    height: 38px !important;
  }

  .nssn-whatsapp-float {
    right: 9px !important;
    bottom: calc(
      74px + env(safe-area-inset-bottom, 0px)
    ) !important;
  }

  .nssn-whatsapp-link {
    border-radius: 13px !important;
  }

  .nssn-whatsapp-link .nssn-icon {
    width: 20px !important;
    height: 20px !important;
  }

  .nssn-whatsapp-close {
    top: -11px !important;
    left: -11px !important;
    width: 25px !important;
    min-width: 25px !important;
    height: 25px !important;
    min-height: 25px !important;
    font-size: 16px !important;
  }

  /*
   * Support page footer clearance.
   */
  body.nawasi-support-page
    .nssn-support {
    padding-bottom:
      calc(148px + env(safe-area-inset-bottom, 0px))
      !important;
  }
}


/* v1.2.4 — final targeted mobile corrections */
@media (max-width: 820px) {
  /*
   * Remove inherited underline/indicator from every inactive bottom item.
   */
  .nssn-bottom-nav__item,
  .nssn-bottom-nav__item:link,
  .nssn-bottom-nav__item:visited {
    border: 0 !important;
    border-bottom: 0 !important;
    background-image: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  .nssn-bottom-nav__item:not(.is-active) {
    background-color: transparent !important;
    color: #c8ccd4 !important;
  }

  .nssn-bottom-nav__item:not(.is-active) > * {
    color: inherit !important;
  }

  /*
   * All-products landing page.
   */
  body.nssn-all-products-page
    .entry-content > :first-child,
  body.nssn-all-products-page :is(
    .nawasi-page-hero,
    .ns-page-hero,
    .nawasi-category-hero,
    .nawasi-archive-hero,
    .nawasi-products-hero
  ) {
    min-height: 0 !important;
    margin: 0 0 10px !important;
    padding: 14px 13px !important;
    border-radius: 16px !important;
  }

  body.nssn-all-products-page
    .entry-content > :first-child :is(h1, h2),
  body.nssn-all-products-page :is(
    .nawasi-page-hero,
    .ns-page-hero,
    .nawasi-category-hero,
    .nawasi-archive-hero,
    .nawasi-products-hero
  ) :is(h1, h2) {
    margin: 0 0 5px !important;
    font-size: 25px !important;
    line-height: 1.25 !important;
  }

  body.nssn-all-products-page
    .entry-content > :first-child p,
  body.nssn-all-products-page :is(
    .nawasi-page-hero,
    .ns-page-hero,
    .nawasi-category-hero,
    .nawasi-archive-hero,
    .nawasi-products-hero
  ) p {
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }

  /*
   * Account page: override theme typography and card dimensions.
   */
  body.nssn-account-page :is(
    .entry-content,
    .ns-page-shell,
    .woocommerce
  ) {
    padding-inline: 8px !important;
  }

  body.nssn-account-page :is(
    h1,
    h1.entry-title,
    .page-title,
    .ns-page-title
  ) {
    margin: 0 0 7px !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
  }

  body.nssn-account-page
    .woocommerce :is(
      h2,
      .u-column1 h2,
      .u-column2 h2
    ) {
    margin-bottom: 8px !important;
    font-size: 19px !important;
  }

  body.nssn-account-page
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) {
    padding: 9px !important;
    border-radius: 12px !important;
  }

  body.nssn-account-page
    .woocommerce :is(
      form.login,
      form.register,
      form.woocommerce-form-login,
      form.woocommerce-form-register
    ) :is(
      input.input-text,
      input[type="text"],
      input[type="email"],
      input[type="password"]
    ) {
    min-height: 37px !important;
    height: 37px !important;
  }

  body.nssn-account-page
    .woocommerce-privacy-policy-text {
    margin: 6px 0 !important;
    font-size: 10px !important;
    line-height: 1.5 !important;
  }

  /*
   * Empty cart: compact rather than a large empty panel.
   */
  body.nssn-cart-page :is(
    .entry-content,
    .ns-page-shell,
    .woocommerce
  ) {
    min-height: 0 !important;
  }

  body.nssn-cart-page :is(
    h1,
    .entry-title,
    .page-title,
    .ns-page-title
  ) {
    margin: 0 0 10px !important;
    font-size: 26px !important;
  }

  body.nssn-cart-page
    .cart-empty.woocommerce-info {
    min-height: 0 !important;
    margin: 0 0 12px !important;
    padding: 13px !important;
    font-size: 13px !important;
  }

  body.nssn-cart-page
    .return-to-shop {
    margin: 0 !important;
  }

  body.nssn-cart-page
    .return-to-shop
    .button {
    min-height: 40px !important;
    padding: 8px 14px !important;
    font-size: 13px !important;
  }

  /*
   * The floating WhatsApp is intentionally absent on account/cart/checkout.
   */
  body:is(
    .nssn-account-page,
    .nssn-cart-page,
    .woocommerce-checkout
  ) .nssn-whatsapp-float,
  body:is(
    .nssn-account-page,
    .nssn-cart-page,
    .woocommerce-checkout
  ) .nssn-whatsapp-drop {
    display: none !important;
  }
}


/* v1.2.5 — exact theme-source mobile corrections */
@media (max-width: 820px) {
  /*
   * Home hero: convert the redundant large brand panel into a compact strip.
   */
  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero {
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    gap: 3px 10px !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 15px !important;
    text-align: right !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero::after {
    display: none !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero
    img {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;
    align-self: center !important;
    width: 68px !important;
    max-width: 68px !important;
    max-height: 68px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero
    h1 {
    grid-column: 2 !important;
    margin: 0 !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero
    p {
    grid-column: 2 !important;
    margin: 0 !important;
    font-size: 10.5px !important;
    line-height: 1.5 !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-actions {
    grid-column: 2 !important;
    gap: 5px !important;
    margin-top: 5px !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-btn {
    min-height: 32px !important;
    padding: 5px 9px !important;
    border-radius: 8px !important;
    font-size: 10px !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-section {
    margin-top: 20px !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-section > h2 {
    margin-bottom: 10px !important;
    font-size: 21px !important;
  }

  /*
   * All-products page: remove duplicate page heading and compact NCC heading.
   */
  body.nssn-all-products-page
    .ns-page-header {
    display: none !important;
  }

  body.nssn-all-products-page
    .ns-page-shell {
    padding: 10px 8px 92px !important;
  }

  body.nssn-all-products-page
    .ncc-all-products {
    margin: 0 !important;
    padding: 0 !important;
  }

  body.nssn-all-products-page
    .ncc-page-heading {
    margin: 0 0 10px !important;
    padding: 12px !important;
    border: 1px solid rgba(215, 166, 47, .32) !important;
    border-radius: 15px !important;
    background: linear-gradient(150deg, #151820, #0a0b0e) !important;
  }

  body.nssn-all-products-page
    .ncc-page-heading
    h1 {
    margin: 0 0 4px !important;
    font-size: 23px !important;
    line-height: 1.28 !important;
  }

  body.nssn-all-products-page
    .ncc-page-heading
    p {
    margin: 0 !important;
    font-size: 10.8px !important;
    line-height: 1.5 !important;
  }

  /*
   * The header already contains search, so remove the duplicated listing search.
   */
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .entry-content > .nawasi-live-search,
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .ncc-all-products > .nawasi-live-search,
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-live-search.is-compact {
    display: none !important;
  }

  body.nssn-all-products-page
    .woocommerce-result-count {
    float: none !important;
    margin: 7px 0 !important;
    font-size: 10.5px !important;
  }

  body.nssn-all-products-page
    .woocommerce-ordering {
    float: none !important;
    width: 100% !important;
    margin: 0 0 10px !important;
  }

  body.nssn-all-products-page
    .woocommerce-ordering
    select {
    width: 100% !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 5px 9px !important;
    font-size: 12px !important;
  }

  /*
   * Compact wallet promotion only on product listings.
   */
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-wallet-feature {
    grid-template-columns: 36px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 8px !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-wallet-feature-icon {
    width: 36px !important;
    height: 36px !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-wallet-feature-copy
    h2 {
    font-size: 14px !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-wallet-feature-copy
    p {
    display: none !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop
  ) .nawasi-wallet-feature-button {
    grid-column: auto !important;
    min-height: 34px !important;
    padding: 5px 8px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }

  /*
   * Logged-in account and wallet endpoint.
   */
  body.nssn-account-page
    .ns-page-title {
    font-size: 22px !important;
  }

  body.nssn-account-page
    .ncc-my-account-shell {
    gap: 10px !important;
    margin: 0 !important;
  }

  body.nssn-account-page
    .ncc-my-account-shell
    .woocommerce-MyAccount-navigation {
    padding: 6px !important;
    border-radius: 12px !important;
  }

  body.nssn-account-page
    .ncc-my-account-shell
    .woocommerce-MyAccount-navigation
    ul {
    gap: 4px !important;
  }

  body.nssn-account-page
    .ncc-my-account-shell
    .woocommerce-MyAccount-navigation
    a {
    padding: 7px 9px !important;
    border: 0 !important;
    font-size: 10.5px !important;
    white-space: nowrap !important;
  }

  body.nssn-account-page
    .nawasi-wallet-balance-card {
    margin-bottom: 10px !important;
    padding: 13px !important;
    border-radius: 13px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-balance-card
    span {
    margin-bottom: 3px !important;
    font-size: 11px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-balance-card
    strong {
    font-size: 24px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-grid {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-panel {
    padding: 12px !important;
    border-radius: 12px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-panel
    h3 {
    margin-bottom: 6px !important;
    font-size: 17px !important;
  }

  body.nssn-account-page
    .nawasi-wallet-panel
    p {
    font-size: 11px !important;
    line-height: 1.55 !important;
  }

  /*
   * Single product page.
   */
  body.single-product.nawasi-support-navigation
    .ns-page-shell {
    padding: 9px 7px 92px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product {
    gap: 10px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images {
    padding: 7px !important;
    border-radius: 13px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    .summary {
    padding: 12px !important;
    border-radius: 14px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    .product_title {
    margin: 0 0 6px !important;
    font-size: 23px !important;
    line-height: 1.28 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    p.price,
  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    span.price {
    margin: 4px 0 8px !important;
    font-size: 18px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-details__short-description {
    margin-bottom: 8px !important;
    font-size: 11.5px !important;
    line-height: 1.55 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    form.cart {
    margin: 8px 0 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    form.cart
    .button {
    min-height: 39px !important;
    padding: 7px 12px !important;
    font-size: 12px !important;
  }

  body.single-product.nawasi-support-navigation
    .product_meta {
    margin-top: 8px !important;
    font-size: 10.5px !important;
    line-height: 1.6 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs {
    margin-top: 4px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs
    ul.tabs
    li
    a {
    padding: 7px 9px !important;
    font-size: 11px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs
    .panel {
    padding: 12px !important;
    font-size: 11px !important;
  }

  /*
   * Related products: force full-width two-column grid.
   */
  body.single-product.nawasi-support-navigation
    section.related.products {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    > h2 {
    width: 100% !important;
    margin: 0 0 9px !important;
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    ul.products {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 0 !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    ul.products
    li.product {
    width: auto !important;
    min-width: 0 !important;
    padding: 5px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    ul.products
    li.product
    a
    img {
    height: 102px !important;
    margin-bottom: 5px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    .woocommerce-loop-product__title {
    min-height: 31px !important;
    font-size: 10px !important;
    line-height: 1.4 !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    .price {
    font-size: 11px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    .button {
    min-height: 34px !important;
    padding: 5px 3px !important;
    font-size: 9.5px !important;
  }

  /*
   * WhatsApp is intentionally absent from home and product detail pages.
   */
  body.home .nssn-whatsapp-float,
  body.home .nssn-whatsapp-drop,
  body.single-product .nssn-whatsapp-float,
  body.single-product .nssn-whatsapp-drop {
    display: none !important;
  }
}

@media (max-width: 370px) {
  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero {
    grid-template-columns: 56px minmax(0, 1fr) !important;
  }

  body.home.nawasi-support-navigation
    .nawasi-native-shortcodes
    .nawasi-hero
    img {
    width: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products
    ul.products
    li.product
    a
    img {
    height: 92px !important;
  }
}


/* v1.2.6 — exact static-front-page and product-detail refinements */
@media (max-width: 820px) {
  /*
   * Static front page: compact the large brand hero using an explicit
   * body class rather than relying on WordPress body.home.
   */
  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    gap: 2px 9px !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 10px !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    text-align: right !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .24) !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero::after {
    display: none !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero
    img {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;
    align-self: center !important;
    width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    margin: 0 !important;
    object-fit: contain !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero
    h1 {
    grid-column: 2 !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.3 !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero
    p {
    grid-column: 2 !important;
    max-width: none !important;
    margin: 0 !important;
    font-size: 9.8px !important;
    line-height: 1.45 !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-actions {
    grid-column: 2 !important;
    display: flex !important;
    gap: 4px !important;
    margin: 4px 0 0 !important;
    flex-wrap: nowrap !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-btn {
    min-height: 29px !important;
    padding: 4px 7px !important;
    border-radius: 7px !important;
    font-size: 8.7px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-section {
    margin-top: 16px !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-section > h2 {
    margin-bottom: 8px !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
  }

  /*
   * Product listings already expose the wallet in the bottom navigation.
   * Keep only the direct top-up action instead of a large promotional card.
   */
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop,
    .tax-product_cat,
    .tax-product_tag
  ) .nawasi-wallet-feature {
    display: block !important;
    min-height: 0 !important;
    margin: 6px 0 9px !important;
    padding: 5px !important;
    border-radius: 11px !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop,
    .tax-product_cat,
    .tax-product_tag
  ) .nawasi-wallet-feature-icon,
  body:is(
    .nssn-all-products-page,
    .woocommerce-shop,
    .tax-product_cat,
    .tax-product_tag
  ) .nawasi-wallet-feature-copy {
    display: none !important;
  }

  body:is(
    .nssn-all-products-page,
    .woocommerce-shop,
    .tax-product_cat,
    .tax-product_tag
  ) .nawasi-wallet-feature-button {
    display: flex !important;
    width: 100% !important;
    min-height: 35px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    border-radius: 8px !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
  }

  /*
   * Single-product gallery: reduce the amount of vertical space consumed
   * before the title and purchase action.
   */
  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images
    .woocommerce-product-gallery__image
    img,
  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images
    img.wp-post-image {
    width: 100% !important;
    height: clamp(210px, 58vw, 255px) !important;
    object-fit: contain !important;
    background: #08090c !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images
    .flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    margin-top: 5px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images
    .flex-control-thumbs
    li {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    div.images
    .flex-control-thumbs
    img {
    width: 100% !important;
    height: 48px !important;
    object-fit: cover !important;
    border-radius: 7px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-breadcrumb {
    margin-bottom: 7px !important;
    font-size: 9.5px !important;
    line-height: 1.5 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    .product_title {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    p.price,
  body.single-product.nawasi-support-navigation
    .woocommerce
    div.product
    span.price {
    font-size: 16px !important;
  }
}

@media (max-width: 370px) {
  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero {
    grid-template-columns: 50px minmax(0, 1fr) !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero
    img {
    width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    max-height: 50px !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-btn {
    padding-inline: 5px !important;
    font-size: 8px !important;
  }
}


/* v1.2.7 — remove duplicate home branding, collapse closed nav gap,
   and force a compact single-product gallery/summary on mobile. */
@media (max-width: 820px) {
  /*
   * The mu-plugin nawasi-force-branding injects a second home hero before
   * [nawasi_home]. The shortcode already supplies the compact branded hero,
   * so the injected duplicate is hidden on mobile.
   */
  body.nssn-front-page
    .nawasi-home-hero {
    display: none !important;
  }

  /*
   * The theme keeps .ns-nav-inner at 52px even when the mobile menu is closed.
   * Collapse it completely; restore it only while the menu is open.
   */
  body.nawasi-support-navigation
    .ns-nav-row:not(:has(.ns-primary-nav.is-open))
    .ns-nav-inner {
    display: none !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.nawasi-support-navigation
    .ns-nav-row:has(.ns-primary-nav.is-open)
    .ns-nav-inner {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 7px 0 !important;
  }

  body.nawasi-support-navigation
    .ns-nav-row:not(:has(.ns-primary-nav.is-open)) {
    min-height: 0 !important;
    height: 0 !important;
    border-top: 0 !important;
    overflow: hidden !important;
  }

  body.nawasi-support-navigation
    .ns-nav-row:has(.ns-primary-nav.is-open) {
    height: auto !important;
    border-top: 1px solid rgba(215, 166, 47, .12) !important;
  }

  /*
   * Reduce header-to-content distance after collapsing the closed menu row.
   */
  body.nawasi-support-navigation
    .ns-main {
    padding-top: 5px !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-wrap {
    padding-top: 4px !important;
  }

  /*
   * Single-product gallery. Broad selectors are intentional because the
   * staging theme and WooCommerce gallery markup vary between products.
   */
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery,
  body.single-product.nawasi-support-navigation
    div.product
    div.images {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 9px !important;
    padding: 6px !important;
    overflow: hidden !important;
    border-radius: 13px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper {
    width: 100% !important;
    height: 236px !important;
    max-height: 236px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a {
    display: block !important;
    width: 100% !important;
    height: 236px !important;
    max-height: 236px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image
    img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product
    div.images
    img {
    display: block !important;
    width: 100% !important;
    height: 236px !important;
    max-height: 236px !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #08090c !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .zoomImg {
    display: none !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    width: 100% !important;
    margin: 5px 0 0 !important;
    padding: 0 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .flex-control-thumbs
    li {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .flex-control-thumbs
    img {
    width: 100% !important;
    height: 46px !important;
    max-height: 46px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
  }

  /*
   * Product summary/title. Use a broad final rule to beat the theme's global
   * h1 scale while remaining scoped to single-product pages only.
   */
  body.single-product.nawasi-support-navigation
    .summary,
  body.single-product.nawasi-support-navigation
    .entry-summary {
    margin: 0 !important;
    padding: 13px !important;
    border-radius: 14px !important;
  }

  body.single-product.nawasi-support-navigation
    h1.product_title,
  body.single-product.nawasi-support-navigation
    h1.entry-title,
  body.single-product.nawasi-support-navigation
    .summary
    h1 {
    margin: 0 0 7px !important;
    font-size: clamp(23px, 7vw, 29px) !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }

  body.single-product.nawasi-support-navigation
    .summary
    .price,
  body.single-product.nawasi-support-navigation
    .entry-summary
    .price {
    margin: 0 0 8px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
  }

  body.single-product.nawasi-support-navigation
    .summary
    .product_meta {
    margin-top: 10px !important;
    font-size: 10px !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs {
    margin-top: 10px !important;
  }

  body.single-product.nawasi-support-navigation
    .related.products
    > h2 {
    margin: 15px 0 8px !important;
    font-size: 22px !important;
  }
}

@media (max-width: 390px) {
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    height: 212px !important;
    max-height: 212px !important;
  }
}

/*
 * Fallback for browsers without :has(). The inner row still collapses because
 * the primary navigation is hidden; modern Chrome/Android gets the full fix.
 */
@supports not selector(:has(*)) {
  @media (max-width: 820px) {
    body.nawasi-support-navigation
      .ns-nav-inner {
      min-height: 0 !important;
      padding-block: 0 !important;
    }
  }
}

/* v1.2.8 — final mobile polish: account, product detail, active nav and spacing. */
@media (max-width: 820px) {
  /* Keep the bottom navigation state unambiguous. */
  body.nawasi-support-navigation
    .nssn-bottom-nav__item,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:link,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:visited,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:hover,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:focus,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:active {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
  }

  body.nawasi-support-navigation
    .nssn-bottom-nav__item::before,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item::after,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item
    > *::before,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item
    > *::after {
    content: none !important;
    display: none !important;
  }

  body.nawasi-support-navigation
    .nssn-bottom-nav__item:not(.is-active) {
    background: transparent !important;
    color: #c8ccd4 !important;
  }

  body.nawasi-support-navigation
    .nssn-bottom-nav__item.is-active {
    background: rgba(215, 166, 47, .14) !important;
    color: #f0d266 !important;
  }

  /* Account page: reduce the oversized login/register presentation. */
  body.nssn-account-page
    .ns-page-shell,
  body.nssn-account-page
    .woocommerce {
    padding-inline: 7px !important;
  }

  body.nssn-account-page :is(
    .ns-page-title,
    .entry-title,
    .woocommerce > h1,
    .woocommerce-account h1
  ) {
    margin: 0 0 10px !important;
    font-size: clamp(25px, 7vw, 30px) !important;
    line-height: 1.18 !important;
  }

  body.nssn-account-page
    #customer_login {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 0 !important;
  }

  body.nssn-account-page
    #customer_login
    > div {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.nssn-account-page :is(
    #customer_login h2,
    .woocommerce-form-login h2,
    .woocommerce-form-register h2,
    .ncc-my-account-shell h2
  ) {
    margin: 0 0 9px !important;
    font-size: clamp(21px, 6vw, 25px) !important;
    line-height: 1.2 !important;
  }

  body.nssn-account-page :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    form.login,
    form.register
  ) {
    margin: 0 !important;
    padding: 11px !important;
    border-radius: 14px !important;
  }

  body.nssn-account-page :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    form.login,
    form.register
  ) .form-row {
    margin: 0 0 9px !important;
  }

  body.nssn-account-page :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    form.login,
    form.register
  ) label {
    margin-bottom: 4px !important;
    font-size: 11.5px !important;
    line-height: 1.35 !important;
  }

  body.nssn-account-page :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    form.login,
    form.register
  ) :is(
    input[type="text"],
    input[type="email"],
    input[type="password"]
  ) {
    min-height: 42px !important;
    height: 42px !important;
    padding: 7px 9px !important;
    font-size: 14px !important;
  }

  body.nssn-account-page :is(
    .woocommerce-form-login,
    .woocommerce-form-register,
    form.login,
    form.register
  ) .button {
    min-height: 40px !important;
    padding: 7px 15px !important;
    font-size: 13px !important;
  }

  body.nssn-account-page
    .woocommerce-privacy-policy-text {
    margin: 7px 0 !important;
    font-size: 10.5px !important;
    line-height: 1.55 !important;
  }

  /* Product detail: show the purchase information earlier on the screen. */
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    height: clamp(190px, 52vw, 218px) !important;
    max-height: 218px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .flex-control-thumbs
    img {
    height: 40px !important;
    max-height: 40px !important;
  }

  body.single-product.nawasi-support-navigation
    .summary,
  body.single-product.nawasi-support-navigation
    .entry-summary {
    padding: 10px !important;
  }

  body.single-product.nawasi-support-navigation
    h1.product_title,
  body.single-product.nawasi-support-navigation
    h1.entry-title,
  body.single-product.nawasi-support-navigation
    .summary h1 {
    margin: 0 0 5px !important;
    font-size: clamp(18px, 5.7vw, 22px) !important;
    line-height: 1.27 !important;
    letter-spacing: 0 !important;
  }

  body.single-product.nawasi-support-navigation
    .summary .price,
  body.single-product.nawasi-support-navigation
    .entry-summary .price {
    margin: 0 0 6px !important;
    font-size: 15px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-details__short-description {
    margin-bottom: 6px !important;
    font-size: 10.5px !important;
    line-height: 1.5 !important;
  }

  body.single-product.nawasi-support-navigation
    .summary form.cart {
    margin: 6px 0 !important;
  }

  body.single-product.nawasi-support-navigation
    .summary form.cart .button {
    min-height: 38px !important;
    padding: 6px 11px !important;
    font-size: 11.5px !important;
  }

  body.single-product.nawasi-support-navigation
    .summary .product_meta {
    margin-top: 7px !important;
    font-size: 9.3px !important;
    line-height: 1.48 !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs {
    margin-top: 6px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs ul.tabs li a {
    padding: 6px 7px !important;
    font-size: 10px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-tabs .panel {
    padding: 10px !important;
    font-size: 10.5px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products {
    margin-top: 8px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products > h2 {
    margin: 7px 0 7px !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
  }

  /* Slightly tighten repeated promotional blocks on the front page. */
  body.nssn-front-page
    .nawasi-wallet-feature {
    margin-bottom: 8px !important;
  }

  body.nssn-front-page
    .nawasi-native-shortcodes.nawasi-home
    .nawasi-hero {
    margin-bottom: 8px !important;
  }
}

@media (max-width: 390px) {
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    height: 186px !important;
    max-height: 186px !important;
  }
}


/* v1.2.9 — obstruction-free listings and compact account dashboard. */
@media (max-width: 820px) {
  /* WhatsApp remains available from the support page without covering products. */
  body.nawasi-support-navigation
    .nssn-whatsapp-float,
  body.nawasi-support-navigation
    .nssn-whatsapp-drop {
    display: none !important;
  }

  /* Remove Android/Chrome tap and focus remnants from inactive bottom items. */
  body.nawasi-support-navigation
    .nssn-bottom-nav__item,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:focus,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:focus-visible,
  body.nawasi-support-navigation
    .nssn-bottom-nav__item:active {
    border-color: transparent !important;
    outline: 0 !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  /* Slightly reduce the fixed header footprint. */
  body.nawasi-support-navigation
    .ns-header-main {
    min-height: 52px !important;
    padding: 5px 10px 3px !important;
  }

  body.nawasi-support-navigation
    .ns-branding img {
    height: 35px !important;
    max-height: 35px !important;
  }

  body.nawasi-support-navigation :is(
    .ns-action,
    .ns-menu-toggle
  ) {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }

  body.nawasi-support-navigation
    .ns-product-search {
    margin: 2px 10px 5px !important;
  }

  body.nawasi-support-navigation
    .ns-product-search input[type="search"],
  body.nawasi-support-navigation
    .ns-product-search button {
    min-height: 40px !important;
    height: 40px !important;
  }

  /* Front page wallet promotion: preserve the action, reduce repeated copy. */
  body.nssn-front-page
    .nawasi-wallet-feature {
    min-height: 0 !important;
    padding: 10px !important;
    border-radius: 15px !important;
  }

  body.nssn-front-page
    .nawasi-wallet-feature-icon {
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
  }

  body.nssn-front-page
    .nawasi-wallet-feature-copy h2,
  body.nssn-front-page
    .nawasi-wallet-feature-copy h3 {
    margin-bottom: 3px !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
  }

  body.nssn-front-page
    .nawasi-wallet-feature-copy p {
    margin: 0 !important;
    font-size: 9.5px !important;
    line-height: 1.45 !important;
  }

  body.nssn-front-page
    .nawasi-wallet-feature-button {
    min-height: 34px !important;
    padding: 5px 10px !important;
    font-size: 10.5px !important;
  }

  /* Guest account: keep both forms compact and readable. */
  body.nssn-account-guest
    .woocommerce-privacy-policy-text {
    direction: rtl !important;
    text-align: right !important;
    font-size: 10px !important;
    line-height: 1.55 !important;
  }

  /* Logged-in account navigation: compact horizontal tabs. */
  body.nssn-account-dashboard
    .ncc-my-account-shell {
    gap: 8px !important;
    padding: 8px !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation {
    margin: 0 0 8px !important;
    padding: 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: thin;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    width: max-content !important;
    min-width: 100% !important;
    gap: 3px !important;
    flex-wrap: nowrap !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation li {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation a {
    min-height: 34px !important;
    padding: 6px 9px !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-content {
    min-width: 0 !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile {
    min-width: 0 !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 11px !important;
    border-radius: 14px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile :is(h2, h3, h4, strong) {
    margin: 0 0 4px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile p {
    margin: 0 !important;
    font-size: 9.7px !important;
    line-height: 1.45 !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile :is(svg, img) {
    max-width: 34px !important;
    max-height: 34px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-welcome,
  body.nssn-account-dashboard
    .nssn-account-orders {
    grid-column: 1 / -1 !important;
    min-height: 0 !important;
  }

  body.nssn-account-dashboard
    .nssn-account-welcome {
    padding: 13px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders {
    padding: 12px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders :is(table, .shop_table) {
    margin: 8px 0 0 !important;
    font-size: 10px !important;
  }

  /* Product page: expose title and buy action earlier. */
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    height: clamp(168px, 46vw, 194px) !important;
    max-height: 194px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery
    .flex-control-thumbs img {
    height: 34px !important;
    max-height: 34px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery,
  body.single-product.nawasi-support-navigation
    div.product div.images {
    margin-bottom: 7px !important;
    padding: 4px !important;
  }

  body.single-product.nawasi-support-navigation
    h1.product_title,
  body.single-product.nawasi-support-navigation
    h1.entry-title,
  body.single-product.nawasi-support-navigation
    .summary h1 {
    font-size: clamp(17px, 5.2vw, 20px) !important;
  }
}

@media (max-width: 390px) {
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    height: 164px !important;
    max-height: 164px !important;
  }
}

/* v1.3.0 — gallery hierarchy, account order card, and stable bottom navigation. */
@media (max-width: 820px) {
  /* Keep the fixed navigation visually stable against theme/browser focus rules. */
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:link,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:visited,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:hover,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:focus,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:focus-visible,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:active {
    appearance: none !important;
    -webkit-appearance: none !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  html body.nawasi-support-navigation
    .nssn-bottom-nav__item::before,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item::after {
    display: none !important;
    content: none !important;
  }

  html body.nawasi-support-navigation
    .nssn-bottom-nav__item:not(.is-active) {
    background-color: transparent !important;
    color: #c8ccd4 !important;
  }

  html body.nawasi-support-navigation
    .nssn-bottom-nav__item.is-active {
    background-color: rgba(215, 166, 47, .14) !important;
    color: #f0d266 !important;
  }

  html body.nawasi-support-navigation
    .nssn-bottom-nav__item > :is(svg, span) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }

  /* Product gallery: one real hero image plus genuinely small thumbnails. */
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 5px !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image {
    min-width: 0 !important;
    height: 54px !important;
    max-height: 54px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child {
    grid-column: 1 / -1 !important;
    height: clamp(174px, 48vw, 202px) !important;
    max-height: 202px !important;
    border-radius: 12px !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery img.wp-post-image,
  body.single-product.nawasi-support-navigation
    div.product div.images img {
    width: 100% !important;
    height: 54px !important;
    max-height: 54px !important;
    object-fit: contain !important;
  }

  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child img.wp-post-image {
    height: clamp(174px, 48vw, 202px) !important;
    max-height: 202px !important;
    object-fit: contain !important;
  }

  /* Hide cloned slider frames that can create a second oversized row. */
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image.flex-active-slide ~
    .woocommerce-product-gallery__image[style*="width: 100%"] {
    max-height: 54px !important;
  }

  /* Account tabs: proper RTL scrolling without clipped labels. */
  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation {
    direction: rtl !important;
    padding-inline: 6px !important;
    scroll-padding-inline: 6px !important;
    scrollbar-width: none !important;
    overscroll-behavior-inline: contain !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation::-webkit-scrollbar {
    display: none !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation ul {
    direction: rtl !important;
    padding-inline: 0 !important;
  }

  body.nssn-account-dashboard
    .woocommerce-MyAccount-navigation a {
    scroll-snap-align: start !important;
  }

  /* Fix the latest-orders heading/link collision seen on the dashboard. */
  body.nssn-account-dashboard
    .nssn-account-orders {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px 10px !important;
    min-height: 150px !important;
    text-align: right !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders :is(h1, h2, h3, h4, strong) {
    grid-column: 1 !important;
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders > a,
  body.nssn-account-dashboard
    .nssn-account-orders .nssn-orders-link {
    grid-column: 2 !important;
    align-self: center !important;
    margin: 0 !important;
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders :is(p, table, .shop_table, .woocommerce-message) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
  }

  body.nssn-account-dashboard
    .nssn-account-orders .button {
    justify-self: start !important;
    min-height: 38px !important;
    padding: 8px 14px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 390px) {
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child > a,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child img,
  body.single-product.nawasi-support-navigation
    .woocommerce-product-gallery__image:first-child img.wp-post-image {
    height: 168px !important;
    max-height: 168px !important;
  }
}


/* v1.3.1 — mobile interaction hardening and visual consistency. */
@media (max-width: 820px) {
  /* Replace the malformed top search glyph with a controlled SVG icon. */
  body.nawasi-support-navigation
    .ns-product-search button {
    display: grid !important;
    width: 54px !important;
    min-width: 54px !important;
    padding: 0 !important;
    place-items: center !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, #f4d867, #dba51f) !important;
    color: #090b0f !important;
    font-size: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  body.nawasi-support-navigation
    .ns-product-search button::before,
  body.nawasi-support-navigation
    .ns-product-search button::after {
    display: none !important;
    content: none !important;
  }

  body.nawasi-support-navigation
    .nssn-header-search-icon {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  /* The search item is rendered as a link to avoid inherited button skins. */
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search],
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:link,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:visited,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:hover,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:focus,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:focus-visible,
  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:active {
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 0 !important;
    outline: 0 !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  html body.nawasi-support-navigation
    .nssn-bottom-nav__item[data-nssn-search]:not(.is-active) {
    background-color: transparent !important;
    color: #c8ccd4 !important;
  }

  /* Keep the cart badge fully inside the visual viewport. */
  body.nawasi-support-navigation :is(
    .ns-action-cart,
    .ns-cart,
    .cart-contents,
    [class*="cart-button"],
    [class*="cart-action"]
  ) {
    overflow: visible !important;
  }

  body.nawasi-support-navigation :is(
    .ns-cart-count,
    .nawasi-cart-count,
    .cart-count,
    [class*="cart-count"],
    [class*="cart-badge"]
  ) {
    top: -4px !important;
    right: auto !important;
    left: -3px !important;
    z-index: 5 !important;
    min-width: 22px !important;
    height: 22px !important;
    padding-inline: 5px !important;
    border: 2px solid #080a0e !important;
    border-radius: 999px !important;
    line-height: 18px !important;
  }

  /* Account navigation becomes a complete two-column grid: no clipped tabs. */
  body.nssn-account-page
    .woocommerce-MyAccount-navigation {
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 5px !important;
    overflow: visible !important;
    direction: rtl !important;
    border-radius: 14px !important;
  }

  body.nssn-account-page
    .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5px !important;
    margin: 0 !important;
    padding: 0 !important;
    direction: rtl !important;
  }

  body.nssn-account-page
    .woocommerce-MyAccount-navigation li {
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
  }

  body.nssn-account-page
    .woocommerce-MyAccount-navigation a {
    display: grid !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 6px 7px !important;
    place-items: center !important;
    border-radius: 10px !important;
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  /* Unified SVG service-card icons. */
  body.nssn-account-dashboard
    .nssn-legacy-emoji {
    display: none !important;
  }

  body.nssn-account-dashboard
    .nssn-card-icon {
    display: grid !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 auto 8px !important;
    place-items: center !important;
    border: 1px solid rgba(215, 166, 47, .34) !important;
    border-radius: 11px !important;
    background: rgba(215, 166, 47, .08) !important;
    color: #efcf61 !important;
  }

  body.nssn-account-dashboard
    .nssn-card-icon .nssn-icon {
    width: 22px !important;
    height: 22px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(122px, auto) !important;
    gap: 9px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile {
    display: flex !important;
    min-width: 0 !important;
    min-height: 122px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    padding: 11px 8px !important;
    text-align: center !important;
    overflow: hidden !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile :is(h2, h3, h4, strong) {
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile p {
    font-size: 9.8px !important;
    line-height: 1.5 !important;
  }

  /* Latest orders card: dense hierarchy without overlapping title/link. */
  body.nssn-account-dashboard
    [data-nssn-account-card="orders"],
  body.nssn-account-dashboard
    .nssn-account-orders {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    min-height: 0 !important;
    padding: 14px !important;
    gap: 8px 10px !important;
    align-items: center !important;
    text-align: right !important;
  }

  body.nssn-account-dashboard
    [data-nssn-account-card="orders"] :is(h1, h2, h3, h4, strong),
  body.nssn-account-dashboard
    .nssn-account-orders :is(h1, h2, h3, h4, strong) {
    grid-column: 1 !important;
    margin: 0 !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
  }

  body.nssn-account-dashboard
    [data-nssn-account-card="orders"] :is(p, table, .shop_table, .woocommerce-message),
  body.nssn-account-dashboard
    .nssn-account-orders :is(p, table, .shop_table, .woocommerce-message) {
    grid-column: 1 / -1 !important;
    margin: 2px 0 0 !important;
  }

  body.nssn-account-dashboard
    [data-nssn-account-card="orders"] .button,
  body.nssn-account-dashboard
    .nssn-account-orders .button {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
    min-height: 38px !important;
    padding: 7px 14px !important;
  }

  /* Related products: equal-height cards with aligned price and action. */
  body.single-product.nawasi-support-navigation
    section.related.products ul.products {
    align-items: stretch !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product {
    display: flex !important;
    min-width: 0 !important;
    height: auto !important;
    align-self: stretch !important;
    flex-direction: column !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product :is(
      a.woocommerce-LoopProduct-link,
      .woocommerce-loop-product__link
    ) {
    display: flex !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product img {
    width: 100% !important;
    height: clamp(132px, 38vw, 158px) !important;
    object-fit: cover !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product
    .woocommerce-loop-product__title {
    display: -webkit-box !important;
    min-height: 42px !important;
    margin: 7px 7px 4px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product .price {
    margin: auto 7px 7px !important;
    min-height: 20px !important;
  }

  body.single-product.nawasi-support-navigation
    section.related.products li.product :is(.button, .added_to_cart) {
    width: calc(100% - 14px) !important;
    min-height: 40px !important;
    margin: 0 7px 7px !important;
    padding: 7px 6px !important;
  }

  /* Preserve clear content above the fixed navigation and phone safe area. */
  body.nawasi-support-navigation :is(
    main,
    .ns-main,
    .woocommerce,
    .site-main
  ) {
    padding-bottom: calc(122px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

@media (max-width: 380px) {
  body.nssn-account-page
    .woocommerce-MyAccount-navigation a {
    min-height: 36px !important;
    padding-inline: 5px !important;
    font-size: 9.8px !important;
  }

  body.nssn-account-dashboard
    .nssn-account-tile-grid {
    gap: 7px !important;
  }
}

/* v1.3.2 — remove the obsolete standalone floating search control.
 * Search remains available from the unified bottom navigation and header field.
 */
@media (max-width: 820px) {
  body.nawasi-support-navigation :is(
    .nawasi-floating-search,
    button.nawasi-floating-search,
    [data-nawasi-search-open].nawasi-floating-search
  ) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    pointer-events: none !important;
    transform: none !important;
  }
}


/* v1.3.3 — restore robust header search and hamburger glyphs without SVG/theme conflicts. */
@media (max-width: 820px) {
  body.nawasi-support-navigation
    .ns-product-search button
    > .nssn-header-search-glyph {
    position: relative !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    color: #080a0d !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body.nawasi-support-navigation
    .ns-product-search button
    > .nssn-header-search-glyph::before {
    position: absolute !important;
    top: 2px !important;
    left: 2px !important;
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    border: 3px solid currentColor !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-sizing: border-box !important;
    content: "" !important;
  }

  body.nawasi-support-navigation
    .ns-product-search button
    > .nssn-header-search-glyph::after {
    position: absolute !important;
    right: 1px !important;
    bottom: 3px !important;
    display: block !important;
    width: 10px !important;
    height: 3px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: currentColor !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    content: "" !important;
  }

  body.nawasi-support-navigation
    .ns-menu-toggle {
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    color: #e5bd42 !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body.nawasi-support-navigation
    .ns-menu-toggle::before,
  body.nawasi-support-navigation
    .ns-menu-toggle::after {
    display: none !important;
    content: none !important;
  }

  body.nawasi-support-navigation
    .ns-menu-toggle
    > .nssn-menu-glyph {
    display: block !important;
    width: 24px !important;
    height: 18px !important;
    flex: 0 0 24px !important;
    border: 0 !important;
    background:
      linear-gradient(currentColor, currentColor) 0 0 / 100% 2px no-repeat,
      linear-gradient(currentColor, currentColor) 0 8px / 100% 2px no-repeat,
      linear-gradient(currentColor, currentColor) 0 16px / 100% 2px no-repeat !important;
    box-shadow: none !important;
  }
}
