/** Shopify CDN: Minification failed

Line 249:36 Expected identifier but found "{"
Line 249:37 Unexpected "{"
Line 249:46 Expected ":"
Line 250:33 Expected identifier but found "{"
Line 250:34 Unexpected "{"
Line 250:43 Expected ":"
Line 250:83 Expected ":"
Line 251:49 Expected identifier but found "{"
Line 251:50 Unexpected "{"
Line 251:59 Expected ":"
... and 5 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:announcement-bar (INDEX:0) */
/* The messages are different lengths, so on a 390px phone one of them wraps to two lines
     and the others don't. Swapping them with `hidden` (display:none) therefore changed the
     bar's height every 4.2s and shoved the entire page up and down — measured as 0.08 + 0.09
     layout shift on the home page, forever, on a timer. That is what "the site feels laggy"
     actually was: content moving under your thumb while you read.
     Fix: stack every message in the same grid cell, so the bar is always as tall as the
     TALLEST message and nothing below it ever moves. `[hidden]` keeps its semantics for
     assistive tech and keeps links unfocusable via visibility:hidden, but must not collapse
     the box, hence the display override. */
  .t-announce__rotator{display:grid}
  .t-announce__item{grid-area:1 / 1}
  .t-announce__item[hidden]{display:block;visibility:hidden}
  .t-announce__item a{text-decoration:underline;text-underline-offset:3px}
  @media (prefers-reduced-motion: no-preference){
    .t-announce__item{transition:opacity .35s ease}
    .t-announce__item[hidden]{opacity:0}
  }
/* END_SECTION:announcement-bar */

/* START_SECTION:atelier (INDEX:1) */
.t-atelier{background:var(--mj-cream);padding-block:clamp(35px,6.1vw,64px);position:relative;overflow:hidden}
  .t-atelier__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,60px);align-items:center}
  .t-atelier__h{font-weight:500;font-size:calc(clamp(28px,3.6vw,42px) * var(--heading-scale));line-height:1.08;margin-top:10px}
  .t-atelier__h i,.t-atelier__h em{font-style:italic;color:var(--mj-rose)}
  .t-atelier__body{margin-top:14px;font-size:15.5px;opacity:.82;max-width:48ch}
  .t-atelier__steps{margin-top:26px;display:flex;flex-direction:column;gap:2px}
  .t-atelier__step{display:flex;gap:16px;padding:16px;border-radius:var(--radius);cursor:pointer;transition:.25s;align-items:flex-start}
  .t-atelier__step.is-open{background:var(--mj-surface);box-shadow:var(--shadow-soft)}
  .t-atelier__n{font-family:var(--font-heading);font-size:20px;color:var(--mj-rose);min-width:34px}
  .t-atelier__step h4{font-size:15px;font-weight:600}
  .t-atelier__step p{font-size:13.5px;opacity:.75;margin-top:4px;max-height:0;overflow:hidden;transition:max-height .35s,margin .35s}
  .t-atelier__step.is-open p{max-height:120px;margin-top:6px}
  .t-atelier__media{position:relative}
  .t-atelier__media img{width:100%;aspect-ratio:4/4.6;object-fit:cover;border-radius:var(--radius)}
  .t-atelier__chip{position:absolute;bottom:18px;inset-inline-start:18px;inset-inline-end:18px;background:color-mix(in srgb,var(--mj-cream-light) 94%,transparent);backdrop-filter:blur(6px);padding:14px 16px;border-radius:var(--radius);box-shadow:var(--shadow-soft)}
  .t-atelier__quotes{position:relative;margin-top:6px}
  .t-atelier__quote{font-size:13px;font-style:italic;opacity:0;position:absolute;inset:0;transition:opacity .6s ease;pointer-events:none}
  .t-atelier__quote.is-active{opacity:1;position:relative;pointer-events:auto}
  .t-atelier__by{font-style:normal;opacity:.65;font-size:12px;white-space:nowrap}
  @media(max-width:900px){.t-atelier__grid{grid-template-columns:1fr}.t-atelier__media{order:-1;margin-top:26px}.t-atelier__media img{aspect-ratio:1/1;max-height:62vh}}
/* END_SECTION:atelier */

/* START_SECTION:category-banner (INDEX:2) */
.t-catban{position:relative}
  .t-catban__frame{position:relative;border-radius:var(--radius);overflow:hidden;min-height:var(--catban-h,460px);display:flex;align-items:center}
  .t-catban__media{position:absolute;inset:0}
  .t-catban__media img,.t-catban__media .placeholder{width:100%;height:100%;object-fit:cover}
  .t-catban__scrim{position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--mj-brown-dark) 72%,transparent),transparent 72%);opacity:var(--catban-ov,.55)}
  [dir="rtl"] .t-catban__scrim{transform:scaleX(-1)}
  /* Text protection. The gradient above is a mood layer the merchant can dial 0-90%, and at
     its default it composites to only ~0.40 effective alpha — over a bright photo that put
     cream-light text at 2.53:1 and the gold italic at 1.17:1. This ::before is a LOCAL scrim
     that sits behind the copy only, at a fixed strength the merchant can't dial below the
     legible floor: worst case (pure white photo) cream-light 12.8:1, gold 4.3:1.
     It fades out radially so it reads as light falling on the model, not a grey box. */
  .t-catban__copy{position:relative;z-index:2;max-width:min(560px,90%);padding:clamp(24px,4vw,56px);color:var(--mj-cream-light);text-align:var(--catban-align,start)}
  .t-catban__copy::before{content:'';position:absolute;inset:-6% -10%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--mj-brown-dark) 86%,transparent) 0%,color-mix(in srgb,var(--mj-brown-dark) 62%,transparent) 55%,transparent 78%)}
  .t-catban__copy .t-eyebrow{opacity:.85;color:var(--mj-cream-light)}
  .t-catban__h{font-size:clamp(30px,4.4vw,52px);line-height:1.06;margin-top:10px;color:var(--mj-cream-light)}
  .t-catban__h i,.t-catban__h em{font-style:italic;color:var(--mj-zari)}
  .t-catban__body{margin-top:14px;font-size:15.5px;line-height:1.7;opacity:.92;max-width:44ch}
  [dir="rtl"] .t-catban__body{font-family:var(--font-body-ar);line-height:1.9}
  .t-catban__copy .t-btn{margin-top:24px}
  .t-catban--split .t-catban__frame{align-items:stretch}
  @media(max-width:700px){.t-catban__copy{max-width:100%;text-align:start}.t-catban__scrim{background:linear-gradient(0deg,color-mix(in srgb,var(--mj-brown-dark) 82%,transparent),transparent 78%)}}
/* END_SECTION:category-banner */

/* START_SECTION:collection-list (INDEX:3) */
.t-collist{padding-block:clamp(38px,6.7vw,70px) clamp(16px,2.9vw,30px)}
  .t-collist__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
  @media(max-width:900px){.t-collist__grid{grid-template-columns:repeat(2,1fr)}}
  .t-cat{position:relative;overflow:hidden;display:block;border-radius:var(--radius)}
  .t-cat__ph{aspect-ratio:4/5.6;overflow:hidden;border-radius:var(--radius);background:var(--mj-cream)}
  .t-cat__ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
  .t-cat:hover .t-cat__ph img{transform:scale(1.05)}
  .t-cat__lab{position:absolute;inset-inline:12px;bottom:12px;background:color-mix(in srgb,var(--mj-cream-light) 94%,transparent);display:flex;justify-content:space-between;align-items:center;padding:14px 18px;font-family:var(--font-heading);font-size:17px;letter-spacing:.01em;transition:.3s;border-radius:var(--radius)}
  [dir="rtl"] .t-cat__lab{font-family:var(--font-heading-ar);letter-spacing:0}
  .t-cat__lab span:last-child{font-family:var(--font-util);opacity:.6;transition:transform .3s}
  .t-cat:hover .t-cat__lab span:last-child{transform:translateX(3px)}
  [dir="rtl"] .t-cat:hover .t-cat__lab span:last-child{transform:translateX(-3px) scaleX(-1)}
  [dir="rtl"] .t-cat__lab span:last-child{transform:scaleX(-1)}
  .t-cat:hover .t-cat__lab{background:var(--mj-brown);color:var(--mj-cream-light)}
/* END_SECTION:collection-list */

/* START_SECTION:collection-rows (INDEX:4) */
.t-catrows{padding-block:clamp(22px,3.8vw,40px);display:flex;flex-direction:column;gap:42px}
  .t-catrow__head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}
  .t-catrow__title{font-family:var(--font-heading);font-weight:500;font-size:calc(clamp(22px,2.6vw,30px) * var(--heading-scale));line-height:1.1}
  [dir="rtl"] .t-catrow__title{font-family:var(--font-heading-ar)}
  .t-catrow__nav{display:flex;align-items:center;gap:10px;flex:none}
  .t-catrow__viewall{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--mj-line-strong);padding-bottom:2px;opacity:.85;transition:.2s;white-space:nowrap}
  [dir="rtl"] .t-catrow__viewall{letter-spacing:0;text-transform:none;font-size:13.5px}
  .t-catrow__viewall:hover{opacity:1;border-color:var(--mj-rose)}
  .t-catrow__arrow{width:36px;height:36px;flex:none;border:1px solid var(--mj-line-strong);border-radius:50%;display:grid;place-items:center;color:var(--mj-brown);background:transparent;cursor:pointer;transition:.2s}
  .t-catrow__arrow:hover{background:var(--mj-brown);color:var(--mj-cream-light);border-color:var(--mj-brown)}
  [dir="rtl"] .t-catrow__arrow svg{transform:scaleX(-1)}
  .t-catrow__rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--pad) * -1);padding-inline:var(--pad);padding-bottom:6px}
  .t-catrow__rail::-webkit-scrollbar{display:none}
  .t-catrow .t-card__ph{aspect-ratio:4/5}
  .t-catrow__rail > .t-card{flex:0 0 clamp(170px,20%,220px);scroll-snap-align:start}
  .t-catrow .t-card__name{font-size:14px}
  .t-catrow .t-card__price{font-size:13px}
  @media(max-width:1000px){.t-catrow__rail > .t-card{flex-basis:38%}}
  @media(max-width:600px){.t-catrow__rail > .t-card{flex-basis:46%}.t-catrow__arrow{display:none}}
/* END_SECTION:collection-rows */

/* START_SECTION:collection-tabs (INDEX:5) */
.t-tabsec{padding-block:clamp(25px,4.4vw,46px)}
  .t-tabsec__head{max-width:640px;margin-bottom:20px}
  .t-tabsec__sub{margin-top:10px;font-size:15px;opacity:.72;line-height:1.6}
  .t-tabsec__bar{display:flex;align-items:center;justify-content:space-between;gap:12px 18px;border-bottom:1px solid var(--mj-line);margin-bottom:26px;flex-wrap:nowrap}
  .t-tabs{position:relative;display:flex;flex-wrap:nowrap;gap:28px;list-style:none;padding:0;margin:0;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .t-tabs::-webkit-scrollbar{display:none}
  .t-tabs__item{flex:0 0 auto}
  /* opacity .5 put the inactive tab labels at 3.35:1 — under the 4.5:1 floor for 13px text.
     .64 reads as clearly secondary and measures ~5:1 on cream-light and ~5:1 on cream. */
  .t-tabs__btn{position:relative;padding:12px 2px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;opacity:.64;transition:opacity .25s ease,transform .15s ease,color .25s ease;background:none;border:none;cursor:pointer;color:var(--mj-brown);font-family:inherit}
  [dir="rtl"] .t-tabs__btn{letter-spacing:0;font-size:15px}
  .t-tabs__btn:hover{opacity:.85}
  .t-tabs__btn.is-active{opacity:1}
  .t-tabs__btn:active{transform:scale(.93)}
  .t-tabs__ink{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--mj-brown);border-radius:2px;transform:translateX(0);transition:transform .4s cubic-bezier(.45,.05,.15,1),width .4s cubic-bezier(.45,.05,.15,1);pointer-events:none}
  .t-tabsec__ctrl{display:flex;align-items:center;flex:none}
  .t-tabsec__count{font-size:13px;letter-spacing:.12em;opacity:.7;font-variant-numeric:lining-nums;white-space:nowrap;display:inline-flex;align-items:center}
  .t-tabsec__dash{display:inline-block;width:24px;height:1px;background:currentColor;margin:0 10px;opacity:.55}
  .t-tabsec__panels{position:relative}
  .t-tabsec__arrow{position:absolute;top:38%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:var(--mj-brown);background:color-mix(in srgb,var(--mj-cream-light) 72%,transparent);border:1px solid color-mix(in srgb,var(--mj-brown) 12%,transparent);backdrop-filter:blur(5px);box-shadow:0 8px 20px -10px rgba(60,40,30,.28);cursor:pointer;transition:background .2s,color .2s,opacity .25s}
  .t-tabsec__arrow:hover{background:var(--mj-brown);color:var(--mj-cream-light);border-color:var(--mj-brown)}
  .t-tabsec__arrow:disabled{opacity:0;pointer-events:none}
  .t-tabsec__arrow--prev{inset-inline-start:4px}
  .t-tabsec__arrow--next{inset-inline-end:4px}
  [dir="rtl"] .t-tabsec__arrow svg{transform:scaleX(-1)}
  .t-tabpanel{display:none}
  .t-tabpanel.is-active{display:block;animation:t-tabfade .4s ease}
  @keyframes t-tabfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .t-tabpanel__rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-inline:calc(var(--pad) * -1);padding-inline:var(--pad);padding-bottom:6px}
  .t-tabpanel__rail::-webkit-scrollbar{display:none}
  .t-tabpanel__rail > .t-card{flex:0 0 calc((100% - 48px) / 4);scroll-snap-align:start}
  .t-tabpanel__all{position:relative;display:inline-block;margin-top:20px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--mj-line-strong);padding-bottom:3px;transition:.2s}
  .t-tabpanel__all::after{content:'';position:absolute;inset-block:-12px;inset-inline:-10px}
  [dir="rtl"] .t-tabpanel__all{letter-spacing:0;text-transform:none;font-size:14px}
  .t-tabpanel__all:hover{border-color:var(--mj-rose)}
  @media(max-width:1000px){.t-tabpanel__rail > .t-card{flex-basis:calc((100% - 16px) / 2)}}
  @media(max-width:600px){.t-tabpanel__rail > .t-card{flex-basis:58%}.t-tabsec__arrow{display:none}}
/* END_SECTION:collection-tabs */

/* START_SECTION:editorial (INDEX:6) */
.t-ed{padding-block:clamp(11px,1.9vw,20px) clamp(22px,3.8vw,40px)}
  .t-ed__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,56px);align-items:center}
  .t-ed__media img{width:100%;aspect-ratio:4/4.6;object-fit:cover;border-radius:var(--radius)}
  .t-ed__h{font-weight:500;font-size:calc(clamp(28px,3.6vw,42px) * var(--heading-scale));line-height:1.08;margin-top:8px}
  .t-ed__body{margin-top:12px;font-size:15px;opacity:.8;max-width:46ch}
  .t-ed__list{margin-top:22px;display:flex;flex-direction:column;gap:10px}
  .t-ed__item{display:flex;align-items:center;gap:14px;background:var(--mj-surface);border:1px solid var(--mj-line);padding:10px;border-radius:var(--radius)}
  .t-ed__item img{width:52px;height:64px;object-fit:cover;border-radius:var(--radius)}
  .t-ed__item .n{font-size:14px;font-weight:500}
  .t-ed__item .v{font-size:13px;opacity:.7}
  .t-ed__add{margin-inline-start:auto;background:var(--mj-brown);color:var(--mj-btn-text);padding:9px 16px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius)}
  [dir="rtl"] .t-ed__add{margin-inline-start:0;margin-inline-end:auto}
  .t-ed__add:disabled{opacity:.4;cursor:not-allowed}
  @media(max-width:900px){.t-ed__grid{grid-template-columns:1fr}.t-ed__media img{aspect-ratio:1/1;max-height:62vh}}
/* END_SECTION:editorial */

/* START_SECTION:featured-collection (INDEX:9) */
.t-featured{padding-block:clamp(22px,3.8vw,40px)}
/* END_SECTION:featured-collection */

/* START_SECTION:footer (INDEX:10) */
.t-footer{position:relative;background:var(--mj-cream);color:var(--mj-brown);padding-block:44px 22px}
  .t-footer__thread{position:absolute;top:0;inset-inline:0;height:1.5px;background:var(--mj-zari);opacity:.7}
  .t-footer__grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1.3fr;gap:30px}
  .t-footer__logo{font-family:var(--font-heading);font-size:21px;letter-spacing:.22em;color:var(--mj-brown);white-space:nowrap;text-transform:uppercase;display:inline-block;margin-bottom:14px}
  .t-footer__coltitle{font-family:var(--font-util);font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px;font-weight:600;color:var(--mj-brown)}
  [dir="rtl"] .t-footer__coltitle{letter-spacing:0;font-family:var(--font-body-ar)}
  .t-footer__blurb{font-size:14px;opacity:.8;line-height:1.7;max-width:32ch;margin-bottom:12px}
  .t-footer__line{font-size:13.5px;opacity:.9;margin-bottom:3px}
  .t-footer__line a{border-bottom:1px solid var(--mj-line-strong)}
  .t-footer__social{display:flex;gap:10px;margin-top:14px}
  /* Social icons: 34px circle was both an under-size tap target and a 2.03:1 edge.
     The circle stays 34px visually; the ::after pads the hit box out to 44px, and the
     border moves to the input-grade token so the control's edge clears 3:1 (WCAG 1.4.11). */
  .t-footer__social a{position:relative;width:34px;height:34px;border:1px solid var(--mj-line-input);border-radius:50%;display:grid;place-items:center;transition:.2s}
  .t-footer__social a::after{content:'';position:absolute;inset:-5px}
  .t-footer__social a:hover{background:var(--mj-brown);color:var(--mj-cream-light);border-color:var(--mj-brown)}
  .t-footer__links{display:flex;flex-direction:column}
  /* padding-block 5px gave ~32px-tall links; 11px lifts them to 44px (WCAG 2.5.5) */
  .t-footer__col a{display:block;font-size:14px;opacity:.82;padding-block:11px;transition:.2s;width:max-content}
  .t-footer__col a:hover{opacity:1}
  details.t-footer__col > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between}
  details.t-footer__col > summary::-webkit-details-marker{display:none}
  .t-footer__chev{width:9px;height:9px;border-inline-end:1.6px solid currentColor;border-block-end:1.6px solid currentColor;transform:rotate(45deg);transition:transform .2s;opacity:.6}
  details.t-footer__col[open] > summary .t-footer__chev{transform:rotate(-135deg)}
  details.t-footer__col.is-desktop > summary{cursor:default;pointer-events:none}
  details.t-footer__col.is-desktop .t-footer__chev{display:none}
  .t-footer__form{display:flex;flex-direction:column;gap:10px;max-width:280px}
  .t-footer__form input{height:44px;border:1px solid var(--mj-line-strong);background:var(--mj-surface);border-radius:var(--radius);padding-inline:14px;font-size:16px}
  .t-footer__form button{height:44px;background:var(--mj-brown);color:var(--mj-btn-text);border-radius:var(--radius);text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;font-weight:600;transition:.2s;font-family:var(--font-util)}
  .t-footer__form button:hover{background:var(--mj-brown-dark)}
  .t-footer__done{font-family:var(--font-heading);font-size:17px}
  [dir="rtl"] .t-footer__done{font-family:var(--font-heading-ar)}
  .t-footer__bar{display:flex;align-items:center;gap:14px 18px;flex-wrap:wrap;margin-top:34px;padding-top:18px;border-top:1px solid var(--mj-line);font-size:12px;font-family:var(--font-util)}
  .t-footer__payments{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-height:26px}
  .t-pay{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid color-mix(in srgb,var(--mj-brown) 12%,transparent);border-radius:5px;height:26px;padding:0 5px;box-shadow:0 1px 2px rgba(26,24,21,.05)}
  .t-pay__svg{height:17px;width:auto;display:block}
  .t-footer__copy{margin-inline-start:auto;opacity:.7;letter-spacing:.04em}
  [dir="rtl"] .t-footer__copy{margin-inline-start:0;margin-inline-end:auto}
  .t-footer__top{width:34px;height:34px;flex:0 0 auto;border:1px solid var(--mj-line-strong);border-radius:50%;display:grid;place-items:center;color:var(--mj-brown);background:transparent;cursor:pointer;transition:.2s}
  .t-footer__top:hover{background:var(--mj-brown);color:var(--mj-cream-light);border-color:var(--mj-brown)}
  @media(max-width:1000px){.t-footer__grid{grid-template-columns:1.4fr 1fr 1fr}}
  @media(max-width:720px){
    .t-footer{padding-block:32px 20px}
    .t-footer__grid{grid-template-columns:1fr;gap:2px}
    .t-footer__brand{margin-bottom:16px}
    details.t-footer__col{border-top:1px solid var(--mj-line)}
    details.t-footer__col > summary{padding-block:15px}
    .t-footer__news{margin-top:18px}
    .t-footer__bar{justify-content:center;text-align:center}
    .t-footer__copy{margin-inline:0;flex-basis:100%;order:3}
    .t-footer__payments{justify-content:center;flex-basis:100%;order:1}
    .t-footer__top{order:2}
  }
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:11) */
.t-lang-form{display:inline-flex}
  .t-header__search{display:inline-flex;align-items:center;cursor:pointer}
  @media(max-width:600px){.t-cart-btn__label{display:none}}
  /* v3 lockup: vector, inherits Kohl via currentColor, never typed */
  .t-logo{display:inline-flex;color:{{ section.settings.logo_color | default: 'var(--mj-brown)' }}}
  .t-logo svg,.t-logo img{height:{{ section.settings.logo_height | default: 36 }}px;width:auto;display:block}
  .t-logo--drawer svg,.t-logo--drawer img{height:{{ section.settings.logo_height | default: 36 | times: 0.78 | round }}px}
  @media(max-width:600px){.t-logo--header svg,.t-logo--header img{height:{{ section.settings.logo_height_mobile | default: 30 }}px}}

  .t-search{position:fixed;inset:0;z-index:200}
  .t-search[hidden]{display:none}
  .t-search__scrim{position:fixed;inset:0;background:rgba(42,30,26,.42);z-index:0}
  .t-search__panel{position:relative;z-index:1;background:var(--mj-surface);width:min(640px,92vw);margin:8vh auto 0;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;animation:t-search-in .3s ease}
  @keyframes t-search-in{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
  .t-search__bar{display:flex;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid var(--mj-line)}
  .t-search__icon{opacity:.5;display:flex;flex:none}
  .mj .t-search__bar input.t-search__input{flex:1;min-width:0;border:none;background:none;box-shadow:none;font-size:16px;font-family:inherit;color:inherit;outline:none;padding:0}
  .mj .t-search__bar input.t-search__input:focus{border:none;box-shadow:none;outline:none}
  .t-search__input::-webkit-search-cancel-button,.t-search__input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
  .t-search__close{font-size:26px;line-height:1;width:32px;height:32px;flex:none;opacity:.6;background:none}
  .t-search__close:hover{opacity:1}
  .t-search__results{max-height:min(62vh,460px);overflow-y:auto}
  .t-search__item{display:flex;align-items:center;gap:14px;padding:11px 18px;border-bottom:1px solid var(--mj-line);transition:background .15s}
  .t-search__item:hover{background:var(--mj-cream)}
  .t-search__item img,.t-search__ph{width:44px;height:56px;object-fit:cover;border-radius:6px;flex:none;background:var(--mj-cream)}
  .t-search__item-name{font-size:14.5px;font-weight:500}
  .t-search__all{display:block;text-align:center;padding:14px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--mj-brown)}
  .t-search__all:hover{background:var(--mj-cream)}
  .t-search__empty{padding:26px 18px;text-align:center;opacity:.6;font-size:14px}
  [dir="rtl"] .t-search__all{letter-spacing:0;text-transform:none;font-size:14px}
  @media(max-width:640px){.t-search__panel{margin:64px auto 0;width:94vw}.t-search__bar{padding:13px 14px}.t-search__results{max-height:70vh}}
/* END_SECTION:header */

/* START_SECTION:hero (INDEX:12) */
.t-hero{position:relative;overflow:hidden;background:var(--mj-cream)}
  .t-hero__grid{display:grid;grid-template-columns:5.2fr 6.8fr;min-height:min(78vh,660px);max-width:var(--page-width);margin-inline:auto}
  .t-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,5vw,64px) var(--pad)}
  .t-hero__copy .t-eyebrow{color:var(--mj-rose);opacity:.9}
  .t-hero__h{font-weight:500;font-size:calc(clamp(40px,5.3vw,72px) * var(--heading-scale));line-height:1.04;margin-top:14px}
  .t-hero__h i,.t-hero__h em{font-style:italic;color:var(--mj-rose)}
  .t-hero__body{margin-top:16px;font-size:16px;opacity:.82;max-width:46ch}
  .t-hero__ctas{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
  .t-hero__proof{display:flex;align-items:center;gap:12px;margin-top:26px;font-size:13px}
  .t-hero__stars{color:var(--mj-rose);display:inline-flex;gap:1px}
  .t-hero__faces{display:flex}
  .t-hero__face{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid var(--mj-cream);margin-inline-start:-8px}
  .t-hero__face:first-child{margin-inline-start:0}
  .t-hero__media{position:relative;overflow:hidden}
  /* Framed for a FRONT-FACING portrait: the model's face sits ~10% down the source frame,
     so the crop origin has to stay high or it decapitates her. The old 70% 20% was tuned
     for a back-facing shot where there was no face to protect. Re-check if the image is
     swapped again — the two numbers are specific to the photo, not to the layout. */
  .t-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 14%}
  .t-hero__media::after{content:'';position:absolute;inset:0;background:linear-gradient(to var(--g,right),var(--mj-cream),transparent 18%)}
  [dir="rtl"] .t-hero__media::after{--g:left}
  .t-hero__tag{position:absolute;bottom:22px;inset-inline-end:22px;background:color-mix(in srgb,var(--mj-cream-light) 92%,transparent);padding:10px 16px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(6px);border-radius:var(--radius)}
  [dir="rtl"] .t-hero__tag{letter-spacing:.02em}
  @media(max-width:900px){
    .t-hero__grid{grid-template-columns:1fr;min-height:0}
    /* Hero budget on a 390x844 phone: the old 4/5 image was 488px tall, which pushed the
       primary button to ~y:900 — the shopper landed on a store with no way in without
       scrolling. 46svh lands "Shop abayas" at y:776 and "Shop jalabiya" at y:838, both
       above the 844 fold. Measured, not guessed — re-measure if you change it. Small
       phones are handled by the short-viewport block below.
       Do NOT reintroduce aspect-ratio here: with a max-height cap the cap wins, and the
       aspect ratio then drags the WIDTH down to match (390x390 became 345x345 on a 390
       phone), leaving the photo inset with a cream band beside it. Set the height
       directly instead and let width:100% keep it full-bleed. */
    .t-hero__media{order:-1;width:100%;height:46svh;max-height:none;min-height:0}
    .t-hero__media img{object-position:center 10%}
    .t-hero__media::after{display:none}
    /* centered, tidy hero on mobile */
    .t-hero__copy{align-items:center;text-align:center;padding:24px var(--pad) 36px}
    .t-hero__h{font-size:clamp(30px,8vw,42px);margin-top:10px}
    .t-hero__body{margin-top:12px;font-size:15px;margin-inline:auto;max-width:34ch}
    .t-hero__ctas{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:20px}
    .t-hero__ctas .t-btn{width:100%;max-width:320px}
    .t-hero__proof{justify-content:center;flex-wrap:wrap;margin-top:18px}
  }
  /* Short phones (iPhone SE 375x667, 360x640 Androids). With the 46svh image the primary
     button landed at y:694 on a 667 fold — still below it. 46svh is a ratio, so it does
     not shrink fast enough once the viewport gets short; this block spends a smaller
     share on the photo and tightens the copy rhythm, which puts "Shop abayas" back at
     roughly y:614. Keyed on height, not width, so tall-and-narrow phones keep the
     generous image. */
  @media(max-width:900px) and (max-height:720px){
    .t-hero__media{height:38svh}
    /* 375x253 is a wide letterbox on a portrait source, so the default "10% down"
       crop origin clips the crown of her head. Pin to the top instead — in a window
       this short the face is the only part worth keeping. */
    .t-hero__media img{object-position:center top}
    .t-hero__copy{padding-top:16px;padding-bottom:26px}
    .t-hero__h{font-size:clamp(26px,7.2vw,34px);margin-top:8px}
    .t-hero__body{margin-top:8px;font-size:14px;line-height:1.55}
    .t-hero__ctas{margin-top:14px}
    .t-hero__proof{margin-top:14px}
  }
/* END_SECTION:hero */

/* START_SECTION:lace-divider (INDEX:13) */
.mj-thread-sec{display:flex;justify-content:center}
  .mj-thread-sec__inner{display:flex;align-items:center;gap:14px;inline-size:100%;padding-inline:var(--pad,24px)}
  .mj-thread-sec__line{flex:1 1 auto;height:var(--mj-th-thick,1.5px);background:var(--mj-th-gold);opacity:.85}
  .mj-thread-sec__bead{flex:0 0 auto;width:6.4px;height:6.4px;border-radius:50%;background:var(--mj-th-gold)}
  .mj-thread-sec__mono{flex:0 0 auto;display:inline-flex;color:var(--mj-brown)}
  .mj-thread-sec__mono svg{display:block}
/* END_SECTION:lace-divider */

/* START_SECTION:main-404 (INDEX:14) */
.t-404{padding-block:clamp(50px,8.6vw,90px);text-align:center}
  .t-404__inner img{margin:0 auto 24px;opacity:.8}
  .t-404 h1{font-size:64px;margin-bottom:10px}
  .t-404 p{opacity:.75;margin-bottom:24px}
/* END_SECTION:main-404 */

/* START_SECTION:main-cart (INDEX:15) */
.t-cartpage{padding-block:clamp(22px,3.8vw,40px) clamp(33px,5.7vw,60px);max-width:760px}
  .t-cartpage h1{margin-bottom:24px}
  .t-cartpage__foot{margin-top:24px;display:flex;flex-direction:column;gap:14px}
  .t-line-remove{font-size:12px;text-decoration:underline;opacity:.7;display:inline-block;margin-top:6px}
  .t-cartqty{display:inline-flex;align-items:center;border:1px solid var(--mj-line-strong);border-radius:var(--radius);margin-top:8px;overflow:hidden}
  .t-cartqty__btn{width:32px;height:34px;font-size:16px;line-height:1;background:none;color:var(--mj-brown)}
  .t-cartpage .t-cartqty input[type="number"]{width:40px;height:34px;text-align:center;border:none;background:none;font-size:14px;padding:0;-moz-appearance:textfield}
  .t-cartpage .t-cartqty input[type="number"]::-webkit-outer-spin-button,.t-cartpage .t-cartqty input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
/* END_SECTION:main-cart */

/* START_SECTION:main-collection (INDEX:16) */
.t-collection{padding-block:clamp(24px,4.2vw,44px) clamp(35px,6.1vw,64px)}
  .t-collection__head{text-align:center;margin-bottom:30px}
  .t-collection__head .t-sec-title{margin-top:6px}
  .t-collection__count{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.55;margin-top:12px;font-family:var(--font-util)}
  [dir="rtl"] .t-collection__count{letter-spacing:.02em}
  .t-collection__desc{max-width:62ch;margin:14px auto 0;font-size:15px;line-height:1.7;opacity:.82}
  .t-collection__empty{text-align:center;padding:60px 0;opacity:.7;font-size:15px}
  .t-catnav-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:28px;border-bottom:1px solid var(--mj-line);padding-bottom:16px;flex-wrap:nowrap}
  .t-catnav{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;flex:1 1 auto;min-width:0;scroll-behavior:smooth}
  .t-catnav::-webkit-scrollbar{display:none}
  .t-catnav a.t-catnav__pill{flex:0 0 auto;padding:9px 18px;border:1px solid var(--mj-line-strong);border-radius:99px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:var(--mj-brown);transition:background .2s,color .2s,border-color .2s;font-family:var(--font-util)}
  [dir="rtl"] .t-catnav a.t-catnav__pill{letter-spacing:0;font-size:14px}
  .t-catnav a.t-catnav__pill:hover{border-color:var(--mj-brown)}
  .t-catnav a.t-catnav__pill.is-active{background:var(--mj-brown);color:var(--mj-btn-text);border-color:var(--mj-brown)}
  .t-sort{flex:0 0 auto}
  .t-sort select{border:1px solid var(--mj-line-strong);border-radius:99px;padding:9px 34px 9px 16px;font-size:12px;letter-spacing:.06em;color:var(--mj-brown);background-color:var(--mj-surface);cursor:pointer;-webkit-appearance:none;appearance:none;font-family:var(--font-util);background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="%23B08D57" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9l6 6 6-6"/></svg>');background-repeat:no-repeat;background-position:right 13px center}
  [dir="rtl"] .t-sort select{padding:9px 16px 9px 34px;background-position:left 13px center}
  .t-sort select:focus{outline:none;border-color:var(--mj-brown)}

  /* Editable grid — driven by section settings */
  .t-cards--collection{grid-template-columns:repeat(var(--col,4),minmax(0,1fr));gap:var(--cards-gap,16px) calc(var(--cards-gap,16px) - 2px)}
  .t-cards--collection .t-card{min-width:0}
  .t-cards--collection .t-card__ph{aspect-ratio:var(--card-ratio,4/5)}
  .t-cards--collection .t-card__ph img{object-fit:var(--card-fit,cover)}
  .t-cards--collection .t-card__name{font-family:var(--font-heading);font-size:16px;letter-spacing:.01em;margin-top:14px}
  [dir="rtl"] .t-cards--collection .t-card__name{font-family:var(--font-heading-ar)}
  .t-cards--collection .t-card__price{font-family:var(--font-util);font-size:13px;letter-spacing:.04em;opacity:.7;margin-top:4px}
  @media(max-width:1000px){.t-cards--collection{grid-template-columns:repeat(var(--col-mob,2),minmax(0,1fr))}}

  .t-infinite{position:relative;display:flex;justify-content:center;margin-top:40px}
  .t-infinite__more{padding:12px 30px;border:1px solid var(--mj-line-strong);border-radius:99px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mj-brown);font-family:var(--font-util);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
  .t-infinite__more:hover{background:var(--mj-brown);color:var(--mj-btn-text);border-color:var(--mj-brown)}
  .t-infinite__more.is-loading{opacity:.55;pointer-events:none}
  [dir="rtl"] .t-infinite__more{letter-spacing:0;font-size:13px}
  .t-infinite__sentinel{position:absolute;bottom:120px;left:0;width:1px;height:1px;pointer-events:none}

  .t-pagination{display:flex;gap:8px;justify-content:center;margin-top:44px;font-size:14px;font-family:var(--font-util)}
  .t-pagination a,.t-pagination span{padding:8px 13px;border:1px solid var(--mj-line);border-radius:var(--radius)}
  .t-pagination a:hover{border-color:var(--mj-brown)}
  .t-pagination .is-current{background:var(--mj-brown);color:var(--mj-cream-light);border-color:var(--mj-brown)}
/* END_SECTION:main-collection */

/* START_SECTION:main-contact (INDEX:17) */
.t-contact{padding-block:clamp(31px,5.3vw,56px) clamp(38px,6.7vw,70px)}
  .t-page__head{text-align:center;margin-bottom:36px}
  .t-page__title{font-size:calc(clamp(34px,5vw,52px) * var(--heading-scale));font-weight:500;margin-top:8px}
  .t-contact__intro{max-width:52ch;margin:12px auto 0;opacity:.82;font-size:15.5px}
  .t-contact__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start;max-width:980px;margin-inline:auto}
  .t-contact__form{display:flex;flex-direction:column;gap:14px}
  .t-contact__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .t-field{display:flex;flex-direction:column;gap:6px;font-size:13px}
  .t-field span{opacity:.8;letter-spacing:.04em;text-transform:uppercase;font-size:12px}
  .t-field input,.t-field textarea{width:100%;padding:12px 14px;border:1px solid var(--mj-line-strong);background:var(--mj-surface);border-radius:var(--radius);font-family:inherit;font-size:15px;color:inherit}
  .t-field textarea{resize:vertical}
  .t-field input:focus,.t-field textarea:focus{outline:none;border-color:var(--mj-brown)}
  .t-contact__ok{background:var(--mj-blush-soft);padding:12px 14px;border-radius:var(--radius);font-size:14px}
  .t-contact__err{color:#a3423a;font-size:13.5px}
  .t-contact__aside{background:var(--mj-cream);padding:26px;border-radius:var(--radius);font-size:14.5px;line-height:1.7}
  .t-contact__info{margin:16px 0}
  .t-contact__info a{border-bottom:1px solid var(--mj-line-strong)}
  @media(max-width:820px){.t-contact__grid{grid-template-columns:1fr}.t-contact__row{grid-template-columns:1fr}}
/* END_SECTION:main-contact */

/* START_SECTION:main-page (INDEX:19) */
.t-page{padding-block:clamp(31px,5.3vw,56px) clamp(38px,6.7vw,70px);max-width:760px}
  .t-page__head{text-align:center;margin-bottom:34px}
  .t-page__title{font-size:calc(clamp(34px,5vw,52px) * var(--heading-scale));font-weight:500;margin-top:8px}
  .t-page__body{font-size:16px;line-height:1.85}
  .t-page__body > *{margin-bottom:18px}
  .t-page__body h2,.t-page__body h3{font-family:var(--font-heading);font-weight:500;margin:30px 0 10px;font-size:26px}
  [dir="rtl"] .t-page__body h2,[dir="rtl"] .t-page__body h3{font-family:var(--font-heading-ar)}
  .t-page__body img{border-radius:var(--radius);margin-block:10px}
  .t-page__body a{color:var(--mj-rose);border-bottom:1px solid var(--mj-line-strong)}
  .t-page__body ul,.t-page__body ol{padding-inline-start:22px}
  .t-page__body li{margin-bottom:8px}
/* END_SECTION:main-page */

/* START_SECTION:main-product (INDEX:20) */
.t-pdp{padding-block:var(--t-pt,22px) var(--t-pb,50px)}
  .t-crumbs{display:flex;align-items:center;gap:8px;font-size:12.5px;opacity:.7;margin-bottom:22px}
  .t-crumbs span:last-child{opacity:1}
  .t-crumbs a{position:relative}
  .t-crumbs a::after{content:'';position:absolute;inset-block:-13px;inset-inline:-6px}
  .t-buy__rating a{position:relative}
  .t-buy__rating a::after{content:'';position:absolute;inset-block:-12px;inset-inline:-8px}
  .t-pdp__grid{display:grid;grid-template-columns:var(--t-gw-d,340px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start;justify-content:center}
  @media(max-width:900px){.t-pdp__grid{grid-template-columns:1fr}}

  .t-gallery{display:flex;flex-direction:column;gap:12px;position:sticky;top:90px;width:100%;max-width:var(--t-gw-d,340px);margin-inline:auto}
  @media(max-width:900px){.t-gallery{position:relative;top:auto;max-width:min(90vw, var(--t-gw-m,470px))}}
  .t-gallery__thumbs{display:flex;flex-direction:row;gap:10px;flex-wrap:wrap}
  @media(max-width:900px){.t-gallery__thumbs{flex-wrap:nowrap;overflow-x:auto}}
  .t-gallery__thumbs button{border:1px solid var(--mj-line);border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;width:62px;flex:0 0 auto;padding:0;background:none}
  .t-gallery__thumbs button.is-active{border-color:var(--mj-brown);border-width:2px}
  .t-gallery__thumbs img{width:100%;height:100%;object-fit:cover}
  .t-gallery__stage{position:relative;overflow:hidden;border-radius:var(--radius);background:var(--mj-cream);cursor:zoom-in;aspect-ratio:var(--t-ratio,4/4.4);width:100%}
  .t-gallery__stage.is-zoomed{cursor:zoom-out}
  .t-gallery__main{width:100%;height:100%;object-fit:var(--t-fit,cover);display:block;transform:scale(1.12);transform-origin:center;transition:transform .2s,opacity .18s}
  @media(max-width:900px){.t-gallery__stage{aspect-ratio:var(--t-ratio,4/4.4);width:100%}}
  .t-gallery__badge{position:absolute;top:14px;inset-inline-start:14px;background:var(--mj-blush);color:var(--mj-brown-dark);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:99px;z-index:2}
  .t-gallery__hint{position:absolute;bottom:12px;inset-inline-end:12px;background:color-mix(in srgb,var(--mj-cream-light) 88%,transparent);font-size:11px;padding:5px 10px;border-radius:99px}

  .t-buy__rating{display:flex;align-items:center;gap:10px;font-size:13px}
  .t-buy__rating .t-hero__stars{color:var(--mj-zari)}
  .t-buy__rating a{border-bottom:1px solid var(--mj-line-strong)}
  .t-buy__title{font-size:calc(clamp(32px,4vw,46px) * var(--heading-scale));font-weight:500;margin-top:8px}
  .t-buy__tagline{font-size:15px;opacity:.8;margin-top:6px;max-width:46ch}
  .t-buy__price{display:flex;align-items:baseline;gap:12px;margin-top:18px;flex-wrap:wrap}
  .t-buy__amount{font-size:26px;font-weight:600}
  .t-buy__was{opacity:.5}
  .t-buy__tax{font-size:12px;opacity:.6}
  .t-bnpl{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--mj-cream);padding:12px 14px;border-radius:var(--radius);margin-top:16px;font-size:13px}
  .t-bnpl__mark{background:#3bffc0;color:#04382a;font-weight:700;padding:2px 8px;border-radius:4px;font-size:12px}
  .t-bnpl{background:none;padding:0;margin-top:8px;color:var(--mj-zari);font-weight:600;justify-content:space-between}
  .t-bnpl__marks{display:inline-flex;gap:6px}
  .t-bnpl__mark--tamara{background:#E8D9F5;color:#1A1815}
  .t-fit{font-size:12.5px;line-height:1.6;opacity:.8;margin-top:10px}
  .t-shipline{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid var(--mj-line);border-radius:var(--radius);background:var(--mj-surface);font-size:13.5px;line-height:1.5}
  .t-shipline svg{flex:none;color:var(--mj-cta);margin-top:1px}
  .t-shipline small{display:block;font-size:11.5px;opacity:.65;margin-top:2px}
  .t-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
  .t-badges div{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;padding:10px 6px;border:1px solid var(--mj-line);border-radius:var(--radius);background:var(--mj-surface);font-size:11px;line-height:1.35}
  .t-badges svg{color:var(--mj-cta)}
  .t-badges b{font-weight:600;font-size:11.5px}
  .t-badges span{opacity:.65}
  .t-wa-help{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;margin-top:10px;border:1.5px solid #25D366;border-radius:var(--radius);font-size:13px;font-weight:600;background:var(--mj-surface)}
  .t-sticky-atc__ph{width:40px;height:52px;flex:none;border-radius:6px;overflow:hidden;background:var(--mj-cream)}
  .t-sticky-atc__ph img{width:100%;height:100%;object-fit:cover}
  .t-sticky-atc__info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
  .t-sticky-atc__info b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .t-sticky-atc__info > span{font-size:12.5px;opacity:.85}

  .t-opt{margin-top:22px}
  .t-opt__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
  .t-opt__label{font-size:13px;letter-spacing:.06em;text-transform:uppercase;opacity:.85}
  .t-opt__label b{font-weight:600;text-transform:none;letter-spacing:0}
  .t-opt__link{position:relative;font-size:12.5px;text-decoration:underline;color:var(--mj-brown)}
  .t-opt__link::after{content:'';position:absolute;inset-block:-13px;inset-inline:-10px}
  .t-opt__values{display:flex;gap:8px;flex-wrap:wrap}
  .t-opt__btn{min-width:48px;height:44px;padding-inline:14px;border:1px solid var(--mj-line-strong);border-radius:var(--radius);font-size:14px;transition:.2s}
  .t-opt__btn.is-active{background:var(--mj-brown);color:var(--mj-btn-text);border-color:var(--mj-brown)}
  .t-opt__values--swatch{gap:12px}
  .t-swatch{display:inline-block;width:40px;height:40px;border-radius:50%;border:1px solid var(--mj-line-strong);background-color:var(--mj-cream);background-size:cover;background-position:center;cursor:pointer;padding:0;transition:.2s}
  a.t-swatch{text-indent:-9999px;overflow:hidden}
  .t-swatch:hover{transform:scale(1.06)}
  .t-swatch.is-active{border-color:var(--mj-brown);box-shadow:0 0 0 2px var(--mj-surface),0 0 0 4px var(--mj-brown)}
  .visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}

  .t-obt{margin-top:26px;padding-top:20px;border-top:1px solid var(--mj-line)}
  .t-obt__title{display:flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.65;margin-bottom:4px}
  [dir="rtl"] .t-obt__title{letter-spacing:0;font-size:13px}
  .t-obt__item{display:flex;align-items:center;gap:12px;cursor:pointer;padding:9px 0}
  .t-obt__item + .t-obt__item{border-top:1px solid var(--mj-line)}
  .t-obt__item input{position:absolute;opacity:0;pointer-events:none}
  .t-obt__ph{width:44px;height:56px;flex:none;border-radius:6px;overflow:hidden;background:var(--mj-cream)}
  .t-obt__ph img{width:100%;height:100%;object-fit:cover}
  .t-obt__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
  .t-obt__name{font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .t-obt__price{font-size:12.5px;opacity:.7}
  .t-obt__tick{width:22px;height:22px;flex:none;border:1px solid var(--mj-line-input);border-radius:50%;display:grid;place-items:center;color:transparent;transition:.2s}
  .t-obt__item input:checked ~ .t-obt__tick{background:var(--mj-brown);border-color:var(--mj-brown);color:var(--mj-cream-light)}

  .t-buy__row{display:flex;gap:10px;margin-top:22px}
  .t-atc{flex:1 1 auto;min-width:0;height:54px;padding-inline:14px;background:var(--mj-cta,var(--mj-brown));color:var(--mj-btn-text);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600;line-height:1.2;border-radius:var(--radius);box-shadow:0 8px 22px -12px var(--mj-line-strong);transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
  @media(max-width:520px){.t-atc{letter-spacing:.03em;font-size:12.5px;padding-inline:10px}}
  [dir="rtl"] .t-atc{letter-spacing:.02em;font-size:14px}
  .t-atc:hover{background:var(--mj-cta-dark,var(--mj-brown-dark));transform:translateY(-2px);box-shadow:0 16px 30px -12px var(--mj-line-strong)}
  .t-atc.is-added{background:var(--mj-ok)}
  .t-atc:disabled{opacity:.5;cursor:not-allowed}
  .t-dynamic-checkout{margin-top:10px}
  .t-dynamic-checkout .shopify-payment-button__button{min-height:50px;border-radius:var(--radius);font-family:var(--font-util);font-weight:600;letter-spacing:.06em;font-size:12.5px;text-transform:uppercase}
  .t-dynamic-checkout .shopify-payment-button__button--unbranded{background:transparent;color:var(--mj-brown);border:1px solid var(--mj-brown);box-shadow:none}
  .t-dynamic-checkout .shopify-payment-button__button--unbranded:hover:not([disabled]){background:var(--mj-brown);color:var(--mj-btn-text)}
  .t-dynamic-checkout .shopify-payment-button__more-options{margin-top:8px;font-size:13px;min-height:44px;color:var(--mj-brown);opacity:.85}

  .t-accs{margin-top:26px;border-top:1px solid var(--mj-line)}
  .t-accs details{border-bottom:1px solid var(--mj-line)}
  .t-accs summary{display:flex;justify-content:space-between;align-items:center;padding:16px 0;cursor:pointer;font-size:14px;font-weight:500;list-style:none}
  .t-accs summary::-webkit-details-marker{display:none}
  .t-accs details[open] .t-accs__ico{transform:rotate(45deg)}
  .t-accs__ico{transition:.2s;font-size:18px}
  .t-accs__body{padding:0 0 18px;font-size:13.5px;opacity:.85;line-height:1.7}
  .t-accs__body table{width:100%;border-collapse:collapse;margin-top:8px}
  .t-accs__body th,.t-accs__body td{border:1px solid var(--mj-line);padding:7px;font-size:12.5px;text-align:center}

  .t-sticky-atc{position:fixed;bottom:0;inset-inline:0;background:var(--mj-cream-light);border-top:1px solid var(--mj-line);padding:10px var(--pad);display:flex;align-items:center;gap:12px;z-index:70;transform:translateY(100%);transition:transform .3s;box-shadow:0 -8px 24px -12px rgba(74,52,43,.3)}
  .t-sticky-atc.is-show{transform:translateY(0)}
  .t-sticky-atc .t-atc{flex:0 0 auto;height:48px;padding-inline:18px}
  @media(min-width:901px){.t-sticky-atc{display:none}}

  .t-modal{position:fixed;inset:0;background:rgba(42,30,26,.5);display:grid;place-items:center;z-index:130;padding:20px}
  .t-modal[hidden]{display:none}
  .t-modal__card{background:var(--mj-cream-light);border-radius:calc(var(--radius) + 6px);padding:28px;max-width:420px;width:100%;position:relative;max-height:calc(100vh - 40px);overflow-y:auto}
  .t-modal__card--wide{max-width:600px}
  .t-modal__close{position:absolute;top:14px;inset-inline-end:16px;font-size:26px}
  .t-modal__card h3{font-size:24px;margin-bottom:10px}
  .t-modal__sub{font-size:13.5px;opacity:.75;margin-bottom:16px;line-height:1.6}
  .t-opt__links{display:flex;gap:16px}
  .t-sizeguide__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-inline:-4px}
  .t-sizeguide{width:100%;border-collapse:collapse;margin-top:4px;font-variant-numeric:lining-nums;min-width:380px}
  .t-sizeguide th,.t-sizeguide td{border:1px solid var(--mj-line);padding:9px 12px;text-align:center;font-size:14px}
  .t-sizeguide th{background:var(--mj-cream);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px}
  .t-sizeguide td:first-child{font-weight:700}
  .t-sizeguide__length{font-size:13.5px;font-weight:600;margin-top:14px;line-height:1.6}
  .t-sizeguide__note{font-size:11.5px;opacity:.7;margin-top:8px;line-height:1.7}
/* END_SECTION:main-product */

/* START_SECTION:main-search (INDEX:21) */
.t-search{padding-block:clamp(22px,3.8vw,40px) clamp(33px,5.7vw,60px)}
  .t-search__form{display:flex;gap:10px;margin-top:20px;max-width:520px}
  .t-search__form input{flex:1}
/* END_SECTION:main-search */

/* START_SECTION:newsletter (INDEX:22) */
.t-news{background:var(--mj-blush-soft);padding-block:clamp(35px,6.1vw,64px);text-align:center;position:relative;overflow:hidden}
  .t-news__inner{max-width:620px;margin-inline:auto}
  .t-news__h{font-weight:500;font-size:calc(clamp(26px,3.2vw,38px) * var(--heading-scale));margin-top:8px}
  .t-news__body{margin-top:12px;font-size:15px;opacity:.85}
  .t-news__form{display:flex;gap:10px;margin-top:24px;max-width:460px;margin-inline:auto}
  .t-news__form input{flex:1}
  .t-news__done{margin-top:24px;font-family:var(--font-heading);font-size:20px;color:var(--mj-brown)}
  [dir="rtl"] .t-news__done{font-family:var(--font-heading-ar)}
  .t-news__fine{margin-top:14px;font-size:12px;opacity:.6}
  @media(max-width:520px){.t-news__form{flex-direction:column}}
/* END_SECTION:newsletter */

/* START_SECTION:pdp-making (INDEX:23) */
.t-making-sec{background:var(--mk-bg,transparent)}
  .t-making{max-width:var(--page-width);margin-inline:auto;padding-inline:var(--pad)}
  .t-making__head{text-align:center;max-width:60ch;margin:0 auto 46px}
  .t-making__head .t-sec-title{margin-top:6px}
  .t-making__head .t-sec-title i,.t-making__head .t-sec-title em{font-style:italic;color:var(--mj-rose)}
  .t-making__intro{margin-top:14px;font-size:15px;line-height:1.7;opacity:.82}

  .t-making__timeline{position:relative;max-width:920px;margin-inline:auto}
  .t-making__rail{position:absolute;inset-inline-start:50%;transform:translateX(-50%);top:6px;bottom:6px;width:2px;pointer-events:none}
  .t-making__track{position:absolute;inset:0;background:var(--mj-line-strong);opacity:.35}
  .t-making__fill{position:absolute;inset:0;background:var(--mk-accent);transform:scaleY(var(--prog,1));transform-origin:top;will-change:transform;box-shadow:0 0 10px -2px var(--mk-accent)}

  .t-making__stops{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(30px,5vw,66px)}
  .t-making__stop{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-width:0}
  .t-making__knot{position:absolute;inset-inline-start:50%;top:50%;transform:translate(-50%,-50%);width:13px;height:13px;border-radius:50%;background:var(--mk-accent);box-shadow:0 0 0 5px var(--mk-bg,var(--mj-cream)),0 0 0 6px color-mix(in srgb,var(--mk-accent) 40%,transparent);z-index:1}

  .t-making__card{grid-column:1;padding-inline-end:clamp(26px,4vw,58px);text-align:end;min-width:0}
  .t-making__stop:nth-child(even) .t-making__card{grid-column:2;padding-inline-end:0;padding-inline-start:clamp(26px,4vw,58px);text-align:start}
  .t-making__no{display:block;font-family:var(--font-util);font-size:12px;letter-spacing:.22em;color:var(--mk-accent);opacity:.9}
  .t-making__label{margin:8px 0 0;font-family:var(--font-heading);font-size:clamp(18px,2.2vw,22px);line-height:1.2}
  [dir="rtl"] .t-making__label{font-family:var(--font-heading-ar)}
  .t-making__text{margin:8px 0 0;font-size:14.5px;line-height:1.72;opacity:.82}
  .t-making__thumb{margin-top:14px;display:inline-block;max-width:220px;border-radius:var(--radius);overflow:hidden;background:var(--mj-cream)}
  .t-making__stop:nth-child(odd) .t-making__thumb{margin-inline-start:auto}
  .t-making__img{display:block;width:100%;height:auto}

  /* entrance — only applies once JS adds .is-pending; resting state stays visible */
  .t-making__stop.is-pending .t-making__card{opacity:0;transform:translateY(18px)}
  .t-making__stop.is-pending.is-in .t-making__card{opacity:1;transform:none;transition:opacity .7s ease,transform .7s ease}
  .t-making__stop.is-pending .t-making__knot{transform:translate(-50%,-50%) scale(.4);opacity:.35}
  .t-making__stop.is-pending.is-in .t-making__knot{transform:translate(-50%,-50%) scale(1);opacity:1;transition:transform .55s ease,opacity .55s ease}

  @media(max-width:760px){
    .t-making__rail{inset-inline-start:12px;transform:none}
    .t-making__knot,.t-making__stop.is-pending .t-making__knot,.t-making__stop.is-pending.is-in .t-making__knot{inset-inline-start:12px;top:8px;transform:translateX(-50%)}
    .t-making__stop{grid-template-columns:1fr}
    .t-making__card,.t-making__stop:nth-child(even) .t-making__card{grid-column:1;text-align:start;padding-inline:38px 0}
    .t-making__stop:nth-child(odd) .t-making__thumb{margin-inline-start:0}
  }
  @media (prefers-reduced-motion:reduce){
    .t-making__stop.is-pending .t-making__card{opacity:1!important;transform:none!important}
    .t-making__stop.is-pending .t-making__knot{opacity:1!important;transform:translate(-50%,-50%) scale(1)!important}
    .t-making__fill{transform:scaleY(1)!important}
  }
/* END_SECTION:pdp-making */

/* START_SECTION:product-reviews (INDEX:24) */
.t-previews{padding-block:clamp(28px,4.8vw,50px)}
  .t-previews__sum{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:14px}
  .t-previews__sum .t-hero__stars{color:var(--mj-zari)}
  .t-previews__hint{padding:18px;border:1px dashed var(--mj-line-strong);border-radius:var(--radius);font-size:13px;opacity:.75;line-height:1.6}
/* END_SECTION:product-reviews */

/* START_SECTION:related-products (INDEX:25) */
.t-related{padding-block:clamp(28px,4.8vw,50px)}
/* END_SECTION:related-products */

/* START_SECTION:reviews (INDEX:26) */
.t-reviews{padding-block:clamp(35px,6.1vw,64px);overflow:hidden}
  .t-reviews__head{text-align:center;margin-bottom:34px}
  .t-reviews__n{margin-top:10px;font-size:14px;opacity:.8}
  .t-reviews__rows{display:flex;flex-direction:column;gap:18px}
  /* NOTE: no CSS mask + no will-change here on purpose. iOS/WebKit fails to paint a
     will-change:transform animated child inside a -webkit-mask-image container, collapsing
     the marquee to a single card (Chrome/Blink renders it fine — so it only broke on phones). */
  /* direction:ltr on the SCROLL TRACK only: a width:max-content marquee inside an
     overflow:hidden container renders EMPTY on iOS/WebKit under dir=rtl (WebKit puts the
     overflow origin on the wrong side; Blink doesn't, so it only broke on phones). Card
     TEXT sets its own direction via dir="auto", so this does not force it either way. */
  .t-reviews__row{overflow:hidden;direction:ltr}
  .t-reviews__marquee{display:flex;gap:18px;width:max-content;animation:t-marq-l var(--marq-speed,55s) linear infinite}
  .t-reviews__marquee--right{animation-name:t-marq-r}
  .t-reviews__row:hover .t-reviews__marquee{animation-play-state:paused}
  @keyframes t-marq-l{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @keyframes t-marq-r{from{transform:translateX(-50%)}to{transform:translateX(0)}}
  .t-reviews__card{flex:0 0 360px;background:var(--mj-surface);border:1px solid var(--mj-line);padding:26px;border-radius:var(--radius);display:flex;flex-direction:column}
  .t-reviews__card .t-hero__stars{color:var(--mj-zari);justify-content:center}
  .t-reviews__quote{font-family:var(--font-body);font-size:17px;line-height:1.75;text-align:center;margin:14px 0 16px;flex:1}
  .t-reviews__author{display:flex;align-items:center;gap:10px;justify-content:center}
  .t-reviews__who{font-family:var(--font-body);font-size:13.5px;opacity:.75}
  [dir="rtl"] .t-reviews__quote{font-family:var(--font-body-ar);line-height:1.9}
  [dir="rtl"] .t-reviews__who{font-family:var(--font-body-ar)}
  /* Same rule keyed off the element's own resolved direction, for Arabic quotes sitting
     in the LTR storefront. Separate rule on purpose — see the note in base.css. */
  .t-reviews__quote:dir(rtl){font-family:var(--font-body-ar);line-height:1.9}
  .t-reviews__who:dir(rtl){font-family:var(--font-body-ar)}
  /* Definite px (no vw): iOS/WebKit collapses a vw flex-basis inside a width:max-content
     track to ~0, leaving a single visible card. Blink resolves it, so it only broke on phones. */
  @media(max-width:700px){.t-reviews__card{flex:0 0 300px}}
  @media (prefers-reduced-motion:reduce){.t-reviews__marquee{animation:none;transform:none}.t-reviews__row{overflow-x:auto}}
/* END_SECTION:reviews */

/* START_SECTION:story (INDEX:27) */
.t-story{padding-block:clamp(11px,1.9vw,20px) clamp(35px,6.1vw,64px)}
  .t-story__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,60px);align-items:center}
  .t-story__media img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:var(--radius)}
  .t-story__h{font-weight:500;font-size:calc(clamp(28px,3.6vw,42px) * var(--heading-scale));line-height:1.08;margin-top:10px}
  .t-story__body{margin-top:14px;font-size:15.5px;opacity:.82;line-height:1.75;margin-bottom:24px;max-width:48ch}
  @media(max-width:900px){.t-story__grid{grid-template-columns:1fr}.t-story__media img{aspect-ratio:1/1;max-height:62vh}}
/* END_SECTION:story */

/* START_SECTION:trust-bar (INDEX:28) */
/* ---- base (mobile): 2-up rotating ticker ---- */
  .t-trust__rotator{position:relative;display:grid;place-items:center;padding-block:15px}
  .t-trust__slide{grid-area:1 / 1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px clamp(28px,6vw,84px);width:100%;opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);transition:opacity .55s ease,transform .55s ease,visibility .55s}
  .t-trust__slide.is-active{opacity:1;visibility:visible;transform:none}
  .t-trust__item{display:flex;align-items:center;gap:10px;font-size:12.5px;letter-spacing:.06em;white-space:nowrap;cursor:default;transition:color .25s ease,transform .3s ease}
  [dir="rtl"] .t-trust__item{letter-spacing:0;font-size:13.5px}
  .t-trust__item svg{flex:none;opacity:.9;transition:transform .35s ease}
  .t-trust__item:hover{color:var(--mj-blush);transform:translateY(-2px)}
  .t-trust__item:hover svg{transform:scale(1.18) rotate(-5deg)}
  .t-trust__slide.is-active .t-trust__item svg{animation:t-trust-pop .6s ease both}
  .t-trust__slide.is-active .t-trust__item:nth-child(2) svg{animation-delay:.08s}
  @keyframes t-trust-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12)}100%{transform:scale(1);opacity:.9}}
  @media(max-width:600px){.t-trust__item{font-size:12px}.t-trust__slide{gap:10px 22px}}

  /* ---- desktop / tablet: all four in one static row ---- */
  @media(min-width:601px){
    .t-trust__rotator{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px clamp(28px,5vw,72px)}
    .t-trust__slide{display:contents}
    .t-trust__slide .t-trust__item{opacity:1;visibility:visible;transform:none;animation:none}
    .t-trust__slide .t-trust__item svg{animation:none}
    /* gentle one-time reveal on scroll-in */
    .t-trust:not([data-in]) .t-trust__item{opacity:0;transform:translateY(10px)}
    .t-trust[data-in] .t-trust__item{animation:t-trust-in .6s ease forwards}
    .t-trust[data-in] .t-trust__item:nth-child(1){animation-delay:.05s}
    .t-trust[data-in] .t-trust__item:nth-child(2){animation-delay:.13s}
    .t-trust[data-in] .t-trust__slide:last-child .t-trust__item:nth-child(1){animation-delay:.21s}
    .t-trust[data-in] .t-trust__slide:last-child .t-trust__item:nth-child(2){animation-delay:.29s}
    @keyframes t-trust-in{to{opacity:1;transform:translateY(0)}}
  }

  @media (prefers-reduced-motion:reduce){
    .t-trust__slide{transition:none}
    .t-trust__item{animation:none!important;opacity:1!important;transform:none!important}
    .t-trust__slide.is-active .t-trust__item svg{animation:none}
  }
/* END_SECTION:trust-bar */

/* START_SECTION:ugc (INDEX:29) */
.t-ugc{padding-block:clamp(11px,1.9vw,20px) clamp(35px,6.1vw,64px);overflow:hidden}
  .t-ugc__head{text-align:center;margin-bottom:28px}
  /* NOTE: no CSS mask + no will-change here on purpose. iOS/WebKit fails to paint a
     will-change:transform animated child inside a -webkit-mask-image container, blanking
     the whole marquee (Chrome/Blink renders it fine, which is why it only broke on phones). */
  /* direction:ltr on the SCROLL TRACK only: a width:max-content marquee inside an
     overflow:hidden container renders EMPTY on iOS/WebKit under dir=rtl (WebKit puts the
     overflow origin on the wrong side; Blink doesn't, so it only broke on phones). */
  .t-ugc__row{overflow:hidden;direction:ltr}
  .t-ugc__marquee{display:flex;gap:14px;width:max-content;animation:t-ugc-scroll var(--ugc-speed,45s) linear infinite}
  .t-ugc__row:hover .t-ugc__marquee{animation-play-state:paused}
  @keyframes t-ugc-scroll{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}
  /* Definite px width AND height (no aspect-ratio, no vw): iOS/WebKit collapses an
     aspect-ratio flex item inside a width:max-content track to ~0, blanking the strip.
     Blink resolves it, so it only broke on phones. */
  .t-ugc__item{flex:0 0 auto;width:200px;height:200px;overflow:hidden;border-radius:var(--radius);position:relative}
  @media(min-width:1000px){.t-ugc__item{width:240px;height:240px}}
  .t-ugc__item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
  .t-ugc__item:hover img{transform:scale(1.06)}
  @media (prefers-reduced-motion:reduce){.t-ugc__marquee{animation:none}.t-ugc__row{overflow-x:auto}}
/* END_SECTION:ugc */