/* Zayt w Mouneh — typography, spacing and bilingual UI polish.
   Presentation-only overrides: no routing, auth, checkout or business logic. */

:root {
  --zwm-touch-target: 44px;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

:where(h1, h2, h3, h4, h5, h6) {
  text-wrap: balance;
  overflow-wrap: break-word;
}

:where(p, li, label, small, strong, span, td, th, dd, dt) {
  overflow-wrap: break-word;
  word-break: normal;
}

:where(button, input, select, textarea) {
  font: inherit;
}

:where(button,
       input[type="button"],
       input[type="submit"],
       input[type="reset"],
       .btn,
       .button,
       [class*="btn"],
       .account-primary,
       .account-secondary,
       .native-order-open) {
  box-sizing: border-box;
  min-height: 40px;
  max-width: 100%;
  line-height: 1.25;
  text-align: center;
}

button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

:where(button,
       input[type="button"],
       input[type="submit"],
       input[type="reset"],
       .btn,
       .button,
       [class*="btn"],
       .account-primary,
       .account-secondary,
       .native-order-open) {
  align-items: center;
  justify-content: center;
}

button,
a.btn,
a.button,
a[class*="btn"],
.account-primary,
.account-secondary,
.native-order-open {
  white-space: normal;
}

:where(.account-actions,
       .native-address-actions,
       .commerce-actions,
       .checkout-actions,
       .order-actions,
       .admin-actions,
       .modal-actions,
       .form-actions) {
  gap: 10px;
  flex-wrap: wrap;
}

:where(.account-actions, .native-address-actions, .checkout-actions, .order-actions) > :where(button, a) {
  min-width: 0;
}

html[dir="rtl"] body,
html[lang="ar"] body {
  letter-spacing: 0;
}

html[dir="rtl"] :where(p, li, label, small),
html[lang="ar"] :where(p, li, label, small) {
  line-height: 1.75;
}

html[dir="rtl"] :where(button, .btn, .button, [class*="btn"], .account-primary, .account-secondary),
html[lang="ar"] :where(button, .btn, .button, [class*="btn"], .account-primary, .account-secondary) {
  line-height: 1.45;
}

/* Keep inherently LTR values stable inside Arabic layouts without changing Arabic labels. */
html[dir="rtl"] :where(input[type="email"], input[type="tel"], input[type="url"], input[inputmode="tel"], input[autocomplete="email"]),
html[lang="ar"] :where(input[type="email"], input[type="tel"], input[type="url"], input[inputmode="tel"], input[autocomplete="email"]) {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

html[dir="rtl"] :where(#orderNumber, .account-referral-code strong),
html[lang="ar"] :where(#orderNumber, .account-referral-code strong) {
  direction: ltr;
  unicode-bidi: isolate;
}

:where(input, select, textarea) {
  min-width: 0;
  max-width: 100%;
}

:where(.account-card, .commerce-card, .order-card, .admin-card, .modal-card, .drawer, .panel) {
  min-width: 0;
}

@media (max-width: 700px) {
  :where(button,
         input[type="button"],
         input[type="submit"],
         input[type="reset"],
         .btn,
         .button,
         [class*="btn"],
         .account-primary,
         .account-secondary,
         .native-order-open) {
    min-height: var(--zwm-touch-target);
  }

  :where(input:not([type="checkbox"]):not([type="radio"]),
         select,
         textarea) {
    font-size: 16px;
    line-height: 1.35;
  }

  :where(.account-actions,
         .checkout-actions,
         .order-actions,
         .modal-actions,
         .form-actions) > :where(button, a) {
    flex: 1 1 150px;
  }

  :where(.account-card, .commerce-card, .order-card, .admin-card, .modal-card) {
    overflow-wrap: break-word;
  }
}

/* Admin stays dense on desktop, but labels/buttons must remain readable and centered. */
.admin-body :where(button, .admin-btn, [class*="admin-"][class*="button"]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.admin-body :where(.admin-toolbar, .admin-actions, .modal-actions) {
  gap: 10px;
}

@media (max-width: 760px) {
  .admin-body :where(button, .admin-btn, [class*="admin-"][class*="button"]) {
    min-height: var(--zwm-touch-target);
    white-space: normal;
    line-height: 1.3;
  }

  .admin-body :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    font-size: 16px;
  }
}


/* ===== visual-pass-v1: final desktop + mobile proportion cleanup ===== */
/* Never split display words such as "essentials," across lines. */
:where(h1,h2,h3,h4,h5,h6){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* Keep CTA copy visually centred without making labels feel squeezed. */
:where(.intro-primary,.intro-secondary,.button,.account-primary,.account-secondary){
  line-height:1.25;
  text-wrap:balance;
}

/* Homepage pantry hero — desktop editorial balance. */
@media (min-width:1181px){
  body[data-page="home"] .home-pantry-hero{
    min-height:650px!important;
    padding:52px 0 56px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(100% - 76px,1540px)!important;
    grid-template-columns:minmax(555px,600px) minmax(70px,1fr) minmax(480px,535px)!important;
    gap:clamp(24px,2.2vw,38px)!important;
    align-items:center!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    max-width:600px!important;
    justify-self:start!important;
    padding:6px 0!important;
    text-align:left!important;
  }

  body[data-page="home"] .home-pantry-hero .eyebrow{
    margin:0 0 17px!important;
    text-align:left!important;
  }

  body[data-page="home"] .home-pantry-hero h1.only-en{
    width:auto!important;
    max-width:10.7ch!important;
    margin:0!important;
    font-size:clamp(4.35rem,4.8vw,5.85rem)!important;
    line-height:.92!important;
    letter-spacing:-.04em!important;
    text-align:left!important;
    text-wrap:initial!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy.only-en{
    width:auto!important;
    max-width:49ch!important;
    margin:22px 0 0!important;
    padding:0!important;
    font-size:.98rem!important;
    line-height:1.62!important;
    text-align:left!important;
    text-wrap:pretty!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions{
    width:auto!important;
    max-width:510px!important;
    margin:25px 0 0!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    gap:11px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions>a{
    flex:1 1 210px!important;
    min-width:190px!important;
    min-height:49px!important;
    padding:0 20px!important;
    font-size:.78rem!important;
  }

  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    width:100%!important;
    max-width:535px!important;
    min-height:0!important;
    padding:24px!important;
    margin:0!important;
    border-radius:27px!important;
    align-self:center!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair{
    gap:11px!important;
    margin-bottom:22px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair>div{
    min-height:104px!important;
    padding:17px 19px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair strong{
    font-size:2.65rem!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips{
    gap:10px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips a{
    min-height:72px!important;
    padding:10px 13px!important;
    border-radius:17px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips a>span{
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-board-note{
    margin-top:17px!important;
    padding-top:14px!important;
    font-size:.76rem!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    justify-self:start!important;
    text-align:right!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .eyebrow,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .eyebrow{
    text-align:right!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1.only-ar,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1.only-ar{
    max-width:13ch!important;
    margin:0!important;
    text-align:right!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar{
    margin:22px 0 0!important;
    text-align:right!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-actions,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-actions{
    margin:25px 0 0!important;
    direction:rtl!important;
    justify-content:flex-start!important;
  }
}


/* Mid-size desktop/laptop: two columns, no squeezed centre track. */
@media (min-width:981px) and (max-width:1180px){
  body[data-page="home"] .home-pantry-hero{
    min-height:620px!important;
    padding:48px 0 52px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(100% - 48px,1120px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(390px,455px)!important;
    gap:30px!important;
    align-items:center!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    grid-column:1!important;
    max-width:520px!important;
    justify-self:start!important;
    text-align:left!important;
  }

  body[data-page="home"] .home-pantry-hero .eyebrow{
    text-align:left!important;
  }

  body[data-page="home"] .home-pantry-hero h1.only-en{
    max-width:10.7ch!important;
    margin:0!important;
    font-size:clamp(3.9rem,6.1vw,5.15rem)!important;
    line-height:.93!important;
    text-align:left!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy.only-en{
    max-width:46ch!important;
    margin:20px 0 0!important;
    text-align:left!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions{
    width:auto!important;
    max-width:500px!important;
    margin:23px 0 0!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions>a{
    flex:1 1 190px!important;
    min-width:175px!important;
  }

  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:2!important;
    width:100%!important;
    max-width:455px!important;
    margin:0!important;
    padding:21px!important;
    justify-self:end!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1.only-ar,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1.only-ar,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar{
    text-align:right!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-actions,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-actions{
    direction:rtl!important;
  }
}

/* Tablet: keep the hero compact and keep every headline word intact. */
@media (min-width:761px) and (max-width:980px){
  body[data-page="home"] .home-pantry-hero{
    padding:50px 0 52px!important;
  }

  body[data-page="home"] .home-pantry-hero h1.only-en{
    max-width:10.7ch!important;
    font-size:clamp(3.65rem,7.6vw,4.7rem)!important;
    line-height:.93!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy{
    max-width:48ch!important;
  }

  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    margin-top:30px!important;
    padding:21px!important;
  }
}

/* Phone: compact vertical rhythm, two-column quick choices where space allows. */
@media (max-width:760px){
  .site-header .announcement-inner>span{
    font-size:.62rem!important;
    letter-spacing:.03em!important;
  }

  body[data-page="home"] .home-pantry-hero{
    min-height:0!important;
    padding:40px 0 42px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(calc(100% - 24px),620px)!important;
    gap:24px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    max-width:560px!important;
  }

  body[data-page="home"] .home-pantry-hero .eyebrow{
    margin-bottom:12px!important;
    font-size:.6rem!important;
    line-height:1.45!important;
  }

  body[data-page="home"] .home-pantry-hero h1.only-en{
    width:auto!important;
    max-width:10.6ch!important;
    margin-inline:auto!important;
    font-size:clamp(2.95rem,11.4vw,3.85rem)!important;
    line-height:.94!important;
    letter-spacing:-.035em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-wrap:initial!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-copy{
    max-width:40ch!important;
    margin-top:17px!important;
    padding:0!important;
    font-size:.9rem!important;
    line-height:1.58!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions{
    width:min(100%,410px)!important;
    margin-top:21px!important;
    gap:9px!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions>a{
    min-height:50px!important;
    padding:0 16px!important;
    font-size:.76rem!important;
  }

  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    width:min(100%,560px)!important;
    margin:28px auto 0!important;
    padding:18px!important;
    border-radius:21px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair{
    gap:8px!important;
    margin-bottom:17px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair>div{
    min-height:86px!important;
    padding:14px!important;
    border-radius:15px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair strong{
    font-size:2.15rem!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-stat-pair span{
    margin-top:6px!important;
    font-size:.68rem!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-board-kicker{
    margin-bottom:12px!important;
    font-size:.65rem!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips a{
    min-width:0!important;
    min-height:67px!important;
    padding:9px 10px!important;
    gap:9px!important;
    border-radius:15px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips a>span{
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    border-radius:12px!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips b{
    min-width:0!important;
    font-size:.78rem!important;
    line-height:1.2!important;
    white-space:normal!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips i{
    font-size:1rem!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-board-note{
    margin-top:13px!important;
    padding-top:12px!important;
    font-size:.66rem!important;
    line-height:1.5!important;
  }

  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1.only-ar,
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1.only-ar{
    max-width:13ch!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}

@media (max-width:420px){
  body[data-page="home"] .home-pantry-hero{
    padding:34px 0 38px!important;
  }

  body[data-page="home"] .home-pantry-hero h1.only-en{
    max-width:10.5ch!important;
    font-size:clamp(2.65rem,12.8vw,3.35rem)!important;
  }

  body[data-page="home"] .home-pantry-hero .page-intro-actions{
    width:100%!important;
    grid-template-columns:1fr!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips{
    grid-template-columns:1fr!important;
  }

  body[data-page="home"] .home-pantry-hero .intro-category-chips a{
    min-height:62px!important;
  }
}

/* General small-screen card/action cleanup across storefront pages. */
@media (max-width:700px){
  :where(.button,.intro-primary,.intro-secondary,.account-primary,.account-secondary){
    min-height:48px;
    padding-inline:15px;
  }

  :where(.section-heading,.account-section-title,.catalogue-intro-card){
    min-width:0;
  }
}


/* ===== visual-pass-v2: anti-cramp and menu structure hardening ===== */
/* Menu links: explicit placement prevents text from ever falling into the number column
   when an older cached stylesheet hides auxiliary spans/arrows. */
.site-header #navLinks>a:not(.menu-utility-link),
#navLinks.is-mobile-portal>a:not(.menu-utility-link){
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr) 24px!important;
  align-items:center!important;
  column-gap:10px!important;
  min-width:0!important;
}

.site-header #navLinks>a:not(.menu-utility-link)>span:first-child,
#navLinks.is-mobile-portal>a:not(.menu-utility-link)>span:first-child{
  display:block!important;
  grid-column:1!important;
  grid-row:1!important;
  width:auto!important;
  min-width:0!important;
  color:#b0841e!important;
  font-size:.62rem!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}

.site-header #navLinks>a:not(.menu-utility-link)>strong,
#navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong{
  display:block!important;
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  line-height:1.25!important;
}

.site-header #navLinks>a:not(.menu-utility-link)>b,
#navLinks.is-mobile-portal>a:not(.menu-utility-link)>b{
  display:block!important;
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  width:auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}

/* RTL keeps the text in the wide middle track while reversing the visual auxiliaries. */
html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link),
html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link),
html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link),
html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link){
  grid-template-columns:24px minmax(0,1fr) 30px!important;
}

html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link)>span:first-child,
html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>span:first-child,
html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link)>span:first-child,
html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>span:first-child{
  grid-column:3!important;
  text-align:right!important;
}

html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link)>strong,
html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong,
html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link)>strong,
html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong{
  grid-column:2!important;
  text-align:right!important;
}

html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link)>b,
html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>b,
html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link)>b,
html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>b{
  grid-column:1!important;
  justify-self:start!important;
}

/* On very narrow phones, simplify instead of squeezing three columns. */
@media(max-width:420px){
  .site-header #navLinks>a:not(.menu-utility-link),
  #navLinks.is-mobile-portal>a:not(.menu-utility-link),
  html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link),
  html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link),
  html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link),
  html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link){
    grid-template-columns:minmax(0,1fr)!important;
    padding-inline:14px!important;
  }

  .site-header #navLinks>a:not(.menu-utility-link)>span:first-child,
  .site-header #navLinks>a:not(.menu-utility-link)>b,
  #navLinks.is-mobile-portal>a:not(.menu-utility-link)>span:first-child,
  #navLinks.is-mobile-portal>a:not(.menu-utility-link)>b{
    display:none!important;
  }

  .site-header #navLinks>a:not(.menu-utility-link)>strong,
  #navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong,
  html[dir="rtl"] .site-header #navLinks>a:not(.menu-utility-link)>strong,
  html[dir="rtl"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong,
  html[lang="ar"] .site-header #navLinks>a:not(.menu-utility-link)>strong,
  html[lang="ar"] #navLinks.is-mobile-portal>a:not(.menu-utility-link)>strong{
    grid-column:1!important;
    text-align:start!important;
  }
}

/* Human-facing copy should wrap at words, not inside normal words.
   Identifier/status fields keep their own specialized overflow rules. */
:where(
  .button,
  .intro-primary,
  .intro-secondary,
  .menu-utility-link,
  .mobile-menu-tool-copy strong,
  .mobile-menu-tool-copy small,
  .category-card,
  .category-quick-card,
  .product-card,
  .featured-product,
  .gift-preset-card,
  .contact-links,
  .account-card,
  .commerce-card,
  .checkout-card,
  .order-card,
  .panel,
  .modal-card
) :where(h1,h2,h3,h4,strong,span,p,small),
:where(.button,.intro-primary,.intro-secondary,.menu-utility-link){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* Undo the older "anywhere" wrapping on the visible homepage intro copy. */
body[data-page="home"] .home-pantry-hero .page-intro-copy,
body[data-page="home"] .home-pantry-hero .page-intro-copy.only-en,
html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar,
html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy.only-ar{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* Buttons/actions get room to breathe and center labels even when a legacy rule
   changes their display mode. */
:where(
  .button,
  .intro-primary,
  .intro-secondary,
  .menu-utility-link,
  .category-search-shortcut,
  .favorites-filter,
  .gift-v4-quiet-button,
  .gift-v4-primary-button,
  .customer-orders-refresh,
  .account-primary,
  .account-secondary,
  .native-order-open
){
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.3!important;
}

/* Prevent multi-column action rows from becoming unusably narrow. */
@media(max-width:700px){
  :where(.page-intro-actions,.account-actions,.checkout-actions,.order-actions,.form-actions,.modal-actions){
    min-width:0!important;
  }

  :where(.page-intro-actions,.account-actions,.checkout-actions,.order-actions,.form-actions,.modal-actions)>:where(a,button){
    min-width:min(100%,140px)!important;
  }

  :where(.menu-heading,.menu-utility,.mobile-menu-tools,.category-quick-grid,.product-grid,.shop-help-actions)>*{
    min-width:0!important;
  }
}


/* ===== visual-pass-v3: dashboard/order/admin readable wrapping ===== */
/* Account: labels and prose wrap by words; only account identifiers keep aggressive wrapping. */
body[data-page="account"] .account-layout :is(h1,h2,h3,p,strong,label),
body[data-page="account"] .account-tabs button>span:last-child,
body[data-page="account"] .account-stat :is(strong,small),
body[data-page="account"] .account-section-title :is(h2,p){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

body[data-page="account"] .account-identity small,
body[data-page="account"] #accountAuthStatus,
body[data-page="account"] #accountVerifyStatus{
  overflow-wrap:anywhere!important;
}

/* Order/checkout: never chop human-facing statuses, item names or address labels. */
.order-status-banner strong,
.order-stage span,
.order-item-copy>strong,
.order-item-copy>small,
.order-recipient strong,
.order-recipient span,
.order-address-row strong,
.summary-line span,
.summary-line strong{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

@media(max-width:620px){
  .order-payment-status{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}

/* Admin: names, headings and action copy get a real text column instead of
   being forced into tiny icon tracks. */
.admin-body :where(
  .panel,
  .customer-card,
  .order-mobile-card,
  .quick-action-sheet,
  .owner-inbox-item,
  .rewards-member-card,
  .rewards-member-modal
) :where(h1,h2,h3,p,b,strong,small,label){
  word-break:normal!important;
  hyphens:none!important;
}

.admin-body .order-mobile-head{
  min-width:0!important;
}

.admin-body .order-mobile-head>div{
  min-width:0!important;
}

.admin-body .order-mobile-head strong{
  white-space:normal!important;
  overflow-wrap:normal!important;
}

.admin-body .customer-card-head>div{
  min-width:0!important;
}

.admin-body .customer-card-head b{
  overflow-wrap:break-word!important;
  word-break:normal!important;
}

.admin-body .quick-action-grid button{
  grid-template-columns:32px minmax(0,1fr)!important;
  min-width:0!important;
}

.admin-body .quick-action-grid button>span{
  grid-column:1!important;
}

.admin-body .quick-action-grid button>b,
.admin-body .quick-action-grid button>small{
  grid-column:2!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

@media(max-width:520px){
  .admin-body .quick-action-grid{
    grid-template-columns:1fr!important;
  }

  .admin-body .customer-card-actions{
    grid-template-columns:1fr!important;
  }

  .admin-body .customer-card-actions :where(button,a){
    min-height:44px!important;
    white-space:normal!important;
    line-height:1.3!important;
  }
}

/* Rewards drawer: let readable labels wrap while keeping compact numeric badges intact. */
.mouneh-rewards-drawer :where(.mr-rule,.mr-wallet-preview,.mr-referral,.mr-section-head,.mr-checkout-member)
  :where(strong,small,span,p,h2,h3){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

@media(max-width:420px){
  .mr-reward-grid{
    grid-template-columns:1fr!important;
  }

  .mr-member-head{
    flex-wrap:wrap!important;
  }
}


/* ===== home-hero-regression-fix-20261005 ===== */
/* The homepage localization markup now keeps EN/AR inside one semantic H1.
   Older hero selectors targeted h1.only-en / h1.only-ar, so they stopped matching.
   These rules target the current nested spans and remove the accidental third grid
   track that squeezed the quick-navigation board off-screen. */
body[data-page="home"] .home-pantry-hero{
  overflow:hidden!important;
}
body[data-page="home"] .home-pantry-hero .page-intro-grid,
body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap,
body[data-page="home"] .home-pantry-hero .shop-intro-board{
  min-width:0!important;
}
body[data-page="home"] .home-pantry-hero h1{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  overflow:visible!important;
}
body[data-page="home"] .home-pantry-hero h1>.only-en,
body[data-page="home"] .home-pantry-hero h1>.only-ar{
  max-width:none!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
html:not([lang="fr"]) body[data-page="home"] .home-pantry-hero h1>.only-en{
  white-space:nowrap!important;
}
html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
  text-align:right!important;
}
html[lang="ar"] body[data-page="home"] .home-pantry-hero h1>.only-ar,
html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1>.only-ar{
  white-space:normal!important;
}

@media (min-width:1181px){
  body[data-page="home"] .home-pantry-hero{
    min-height:650px!important;
    padding:52px 0 56px!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(calc(100% - 64px),1380px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(360px,450px)!important;
    gap:clamp(28px,3vw,46px)!important;
    align-items:center!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    grid-column:1!important;
    width:100%!important;
    max-width:700px!important;
    justify-self:start!important;
  }
  body[data-page="home"] .home-pantry-hero h1{
    margin:0!important;
    font-size:clamp(4.35rem,6vw,5.85rem)!important;
    line-height:.92!important;
    letter-spacing:-.04em!important;
    text-align:left!important;
  }
  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:2!important;
    width:100%!important;
    max-width:450px!important;
    margin:0!important;
    justify-self:end!important;
    align-self:center!important;
  }
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
    text-align:right!important;
  }
}

@media (min-width:981px) and (max-width:1180px){
  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(calc(100% - 48px),1120px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(330px,400px)!important;
    gap:24px!important;
    align-items:center!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    grid-column:1!important;
    width:100%!important;
    max-width:560px!important;
  }
  body[data-page="home"] .home-pantry-hero h1{
    margin:0!important;
    font-size:clamp(3.75rem,6.25vw,4.8rem)!important;
    line-height:.93!important;
    text-align:left!important;
  }
  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:2!important;
    width:100%!important;
    max-width:400px!important;
    margin:0!important;
    justify-self:end!important;
  }
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
    text-align:right!important;
  }
}

@media (min-width:761px) and (max-width:980px){
  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(calc(100% - 36px),760px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:28px!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    width:100%!important;
    max-width:680px!important;
    margin-inline:auto!important;
  }
  body[data-page="home"] .home-pantry-hero h1{
    font-size:clamp(3.55rem,7.2vw,4.45rem)!important;
    line-height:.94!important;
    text-align:center!important;
  }
  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:1!important;
    width:min(100%,620px)!important;
    max-width:620px!important;
    margin:0 auto!important;
    justify-self:center!important;
  }
}

@media (max-width:760px){
  body[data-page="home"] .home-pantry-hero .page-intro-grid{
    width:min(calc(100% - 24px),620px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    width:100%!important;
    max-width:560px!important;
    margin-inline:auto!important;
  }
  body[data-page="home"] .home-pantry-hero h1{
    font-size:clamp(2.8rem,11.6vw,3.85rem)!important;
    line-height:.94!important;
    text-align:center!important;
  }
  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:1!important;
    width:min(100%,560px)!important;
    max-width:560px!important;
    margin:4px auto 0!important;
    justify-self:center!important;
  }
}

@media (max-width:420px){
  body[data-page="home"] .home-pantry-hero h1{
    font-size:clamp(2.5rem,12vw,3.15rem)!important;
  }
  body[data-page="home"] .home-pantry-hero .page-intro-actions{
    width:100%!important;
    grid-template-columns:1fr!important;
  }
  body[data-page="home"] .home-pantry-hero .shop-intro-board{
    padding:16px!important;
    border-radius:20px!important;
  }
}


/* home-arabic-hero-grid-fix-20261009 */
/* The localized heading is a span inside h1 (not h1.only-ar). Keep a genuine
   two-column hero in RTL and allow the Arabic text to fit without touching
   English/French typography, the hero media, or shop behaviour. */
@media (min-width:1181px){
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-grid,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-grid{
    grid-template-columns:minmax(0,1fr) minmax(360px,450px)!important;
  }
}
@media (min-width:981px) and (max-width:1180px){
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-grid,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-grid{
    grid-template-columns:minmax(0,1fr) minmax(330px,400px)!important;
  }
}
@media (min-width:981px){
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .page-intro-copy-wrap{
    grid-column:1!important;
    min-width:0!important;
    max-width:100%!important;
    text-align:right!important;
  }
  html[lang="ar"] body[data-page="home"] .home-pantry-hero .shop-intro-board,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero .shop-intro-board{
    grid-column:2!important;
    min-width:0!important;
    width:100%!important;
    justify-self:stretch!important;
  }
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(3.05rem,3.95vw,4.35rem)!important;
    line-height:1.3!important;
    letter-spacing:0!important;
    text-align:right!important;
  }
}
@media (max-width:980px){
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
    max-width:100%!important;
    font-size:clamp(2.3rem,5.6vw,3.55rem)!important;
    line-height:1.35!important;
    letter-spacing:0!important;
    text-align:center!important;
  }
}
@media (max-width:560px){
  html[lang="ar"] body[data-page="home"] .home-pantry-hero h1,
  html[dir="rtl"] body[data-page="home"] .home-pantry-hero h1{
    font-size:clamp(2rem,8.6vw,2.7rem)!important;
    line-height:1.4!important;
  }
}
