@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600&family=Noto+Kufi+Arabic:wght@400;500;600&display=swap');

:root{
  --ink:#171a18;
  --ink-soft:#4e554f;
  --stone:#e9e6de;
  --paper:#f7f5ef;
  --white:#fff;
  --leaf:#315c47;
  --leaf-deep:#173a2b;
  --line:rgba(23,26,24,.18);
  --line-light:rgba(255,255,255,.34);
  --error:#8f2c26;
  --success:#315c47;
  --ease:cubic-bezier(.23,1,.32,1);
  --shell:min(1320px,calc(100% - 64px));
  --serif:"Noto Kufi Arabic","IBM Plex Sans Arabic",sans-serif;
  --sans:"IBM Plex Sans Arabic",sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:116px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{display:block;max-width:100%}
[hidden]{display:none!important}
::selection{background:#cbd8cf;color:var(--leaf-deep)}
:focus-visible{outline:2px solid var(--leaf);outline-offset:4px}
.shell{width:var(--shell);margin-inline:auto}
.skip-link{position:fixed;top:10px;right:10px;z-index:1000;padding:10px 14px;background:var(--ink);color:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Header */
.announcement{min-height:34px;background:var(--leaf-deep);color:#eef3f0;display:flex;align-items:center;justify-content:center;padding:7px 20px;text-align:center;font-size:.72rem;letter-spacing:.01em}
.site-header{position:sticky;top:0;z-index:80;background:rgba(247,245,239,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-shell{width:var(--shell);height:84px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}
.brand{justify-self:center;display:inline-flex;align-items:center;justify-content:center}
.brand img{width:162px;height:68px;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.82rem;font-weight:600}
.nav-links a{position:relative;padding:9px 0}
.nav-links a:after{content:"";position:absolute;right:0;left:100%;bottom:3px;height:1px;background:var(--ink);transition:left .24s var(--ease)}
.nav-links a:hover:after,.nav-links a[aria-current="page"]:after{left:0}
.nav-actions{justify-self:end;display:flex;align-items:center;gap:12px}
.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .16s var(--ease)}
.nav-cta:hover,.button:hover{background:var(--leaf);border-color:var(--leaf)}
.nav-cta:active,.button:active{transform:scale(.98)}
.button.secondary{background:transparent;color:var(--ink)}
.button.secondary:hover{background:var(--ink);color:#fff}
.button.light{background:#fff;color:var(--ink);border-color:#fff}
.button.light:hover{background:transparent;color:#fff}
.icon-button{width:46px;height:46px;border:1px solid var(--line);background:transparent;display:none;place-items:center;cursor:pointer}
.icon-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.mobile-menu{position:fixed;inset:118px 0 0;z-index:75;background:var(--paper);padding:28px 24px;transform:translateX(100%);transition:transform .3s var(--ease);border-top:1px solid var(--line)}
.mobile-menu.open{transform:none}
.mobile-menu nav{display:grid;border-top:1px solid var(--line)}
.mobile-menu a{padding:18px 2px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.45rem}
.mobile-menu .mobile-social{display:flex;gap:22px;margin-top:28px;font-size:.82rem;font-weight:600}

/* Typography + sections */
.kicker{display:inline-flex;align-items:center;gap:12px;color:var(--leaf);font-size:.72rem;font-weight:600;letter-spacing:.08em}
.kicker:before{content:"";width:28px;height:1px;background:currentColor}
.display{font-family:var(--serif);font-size:clamp(3.2rem,7vw,7.2rem);font-weight:600;line-height:.94;letter-spacing:-.045em;margin:0}
.section-title{font-family:var(--serif);font-size:clamp(2.35rem,4.5vw,4.8rem);font-weight:600;line-height:1.02;letter-spacing:-.035em;margin:14px 0 0}
.section-copy{max-width:600px;color:var(--ink-soft);font-size:.95rem;line-height:2;margin:18px 0 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:48px;margin-bottom:44px}
.section-head .section-copy{max-width:430px;margin:0}
.section-rule{border-top:1px solid var(--line)}

/* Home */
.hero{position:relative;min-height:calc(100svh - 118px);display:flex;align-items:end;overflow:hidden;background:#253128;color:#fff}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.8) contrast(1.04)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,12,8,.18),rgba(6,12,8,.02) 45%),linear-gradient(0deg,rgba(7,12,9,.75),transparent 62%)}
.hero-content{position:relative;z-index:1;width:var(--shell);margin:0 auto;padding:0 0 clamp(58px,8vw,108px)}
.hero .kicker{color:#fff}
.hero .display{max-width:900px;margin-top:18px}
.hero-copy{max-width:560px;margin:26px 0 0;color:rgba(255,255,255,.86);line-height:1.9}
.hero-actions{display:flex;align-items:center;gap:12px;margin-top:32px}
.hero-season{position:absolute;z-index:2;left:32px;bottom:28px;font-size:.7rem;color:rgba(255,255,255,.72);writing-mode:vertical-rl}
.intro-section{padding:120px 0}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:10vw;align-items:start}
.intro-note{border-top:1px solid var(--line);padding-top:24px;color:var(--ink-soft);line-height:2}
.category-section{padding:0 0 120px}
.category-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.category-card{position:relative;grid-column:span 3;min-height:520px;overflow:hidden;background:#d8d8d2;color:#fff}
.category-card:nth-child(1),.category-card:nth-child(4){grid-column:span 3}
.category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,12,9,.72),transparent 58%)}
.category-card:hover img{transform:scale(1.025)}
.category-card-copy{position:absolute;z-index:1;right:24px;left:24px;bottom:24px}
.category-card small{font-size:.7rem;color:rgba(255,255,255,.76)}
.category-card h3{font-family:var(--serif);font-size:2rem;line-height:1;margin:8px 0 0}
.season-section{background:var(--ink);color:#fff;padding:120px 0}
.season-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:12px;min-height:760px}
.season-main,.season-small{position:relative;overflow:hidden;background:#29312d}
.season-side{display:grid;grid-template-rows:1fr 1fr;gap:12px}
.season-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.season-main:hover img,.season-small:hover img{transform:scale(1.025)}
.season-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 55%)}
.season-copy{position:absolute;z-index:1;right:30px;left:30px;bottom:30px}
.season-copy h3{font-family:var(--serif);font-size:clamp(1.8rem,3vw,3.6rem);line-height:1;margin:8px 0 0}
.season-copy small{color:rgba(255,255,255,.72)}
.service-section{padding:120px 0;background:var(--stone)}
.service-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;align-items:start}
.steps{display:grid;border-top:1px solid var(--line)}
.step{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}
.step b{font-family:var(--serif);font-size:1.25rem;color:var(--leaf)}
.step h3{margin:0;font-family:var(--serif);font-size:1.6rem;line-height:1.2}
.step p{margin:5px 0 0;color:var(--ink-soft);font-size:.84rem}
.club-section{padding:120px 0}
.club-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--leaf-deep);color:#fff}
.club-copy{padding:clamp(38px,7vw,92px)}
.club-copy p{color:rgba(255,255,255,.72);line-height:2;max-width:460px}
.club-media{min-height:570px;background:url('/assets/ghusn-natural-branch-leaves.webp') center/cover no-repeat,var(--stone)}

/* Catalog */
.catalog-hero{padding:88px 0 64px;border-bottom:1px solid var(--line)}
.catalog-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end}
.catalog-tools{position:sticky;top:118px;z-index:40;background:rgba(247,245,239,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.catalog-tools-inner{width:var(--shell);margin:auto;padding:18px 0;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.catalog-filters{display:flex;gap:22px;overflow:auto;scrollbar-width:none}
.catalog-filters::-webkit-scrollbar{display:none}
.filter-button{border:0;border-bottom:1px solid transparent;background:transparent;padding:8px 0;white-space:nowrap;cursor:pointer;color:var(--ink-soft);font-size:.8rem}
.filter-button.active{color:var(--ink);border-color:var(--ink)}
.catalog-search{min-width:280px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:9px 0;outline:0;color:var(--ink)}
.catalog-main{padding:52px 0 100px}
.catalog-status{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;color:var(--ink-soft);font-size:.78rem}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:42px 14px}
.product-card{min-width:0}
.product-image-wrap{position:relative;display:block;overflow:hidden;background:#e5e2da;aspect-ratio:4/5}
.product-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.product-card:hover img{transform:scale(1.025)}
.product-code{position:absolute;top:12px;left:12px;padding:5px 8px;background:rgba(247,245,239,.92);font-size:.62rem;direction:ltr}
.product-copy{padding-top:15px}
.product-meta{display:flex;justify-content:space-between;gap:12px;color:var(--ink-soft);font-size:.7rem}
.product-card h2{font-family:var(--serif);font-size:1.42rem;line-height:1.25;margin:7px 0 4px}
.product-description{color:var(--ink-soft);font-size:.78rem;line-height:1.75;margin:0;min-height:2.8em}
.product-price{margin-top:10px;font-size:.82rem;font-weight:600}
.product-card-action{display:inline-flex;margin-top:13px;padding-bottom:4px;border-bottom:1px solid var(--ink);font-size:.75rem;font-weight:600}
.empty-state{padding:80px 20px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.load-more-wrap{text-align:center;margin-top:56px}
.catalog-note{background:var(--stone);padding:70px 0}
.catalog-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}

/* Product */
.product-page{padding:56px 0 110px}
.breadcrumb{font-size:.72rem;color:var(--ink-soft);margin-bottom:24px}
.product-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:7vw;align-items:start}
.product-gallery{background:#e5e2da}
.product-gallery img{width:100%;aspect-ratio:4/5;object-fit:cover}
.product-info{position:sticky;top:148px;padding-top:18px}
.product-info h1{font-family:var(--serif);font-size:clamp(2.7rem,5vw,5rem);font-weight:600;line-height:1;margin:15px 0 18px}
.product-code-inline{white-space:nowrap;unicode-bidi:isolate;display:inline-block}
.product-lead{color:var(--ink-soft);line-height:2;max-width:520px}
.product-facts{display:grid;margin:34px 0;border-top:1px solid var(--line)}
.product-fact{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.8rem}
.product-fact span{color:var(--ink-soft)}
.price-selector{border:0;margin:0 0 28px;padding:0}
.price-selector legend{font-family:var(--serif);font-size:1.15rem;font-weight:600;margin-bottom:5px}
.price-selector>p{color:var(--ink-soft);font-size:.74rem;line-height:1.7;margin:0 0 13px}
.price-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.price-option{position:relative;cursor:pointer;min-width:0}
.price-option input{position:absolute;opacity:0;pointer-events:none}
.price-option-body{display:grid;gap:5px;min-height:76px;padding:12px 9px;border:1px solid var(--line);background:rgba(255,255,255,.4);transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}
.price-option-body b{font-size:.75rem;font-weight:600}
.price-option-body strong{font-size:.72rem;white-space:nowrap}
.price-option-body small{font-size:.65rem;color:inherit}
.price-option input:checked+.price-option-body{background:var(--leaf-deep);border-color:var(--leaf-deep);color:#fff}
.price-option input:focus-visible+.price-option-body{outline:2px solid var(--leaf);outline-offset:2px}
.custom-price-field{margin:-8px 0 26px;padding:15px 16px;border:1px solid var(--line);background:rgba(255,255,255,.48);transition:border-color .18s var(--ease),background .18s var(--ease)}
.custom-price-field>span{font-family:var(--serif);font-size:1rem;font-weight:600}
.custom-price-field input{font-size:1rem;font-weight:700;letter-spacing:.03em}
.custom-price-field small{font-size:.68rem;line-height:1.6}
.custom-price-field.is-active{border-color:var(--leaf);background:rgba(223,234,225,.5)}
.product-actions{display:grid;gap:10px}
.product-actions .button{width:100%}
#productWhatsapp[aria-busy="true"]{opacity:.65;cursor:wait;pointer-events:none}
.order-share-status{margin:12px 0 0;padding:11px 13px;border-right:2px solid var(--leaf);background:rgba(223,234,225,.5);color:var(--ink-soft);font-size:.72rem;line-height:1.7}
.order-share-status[data-state="fallback"]{border-color:#9a6a20;background:#f7f0df}
.order-share-status[data-state="neutral"]{border-color:var(--line);background:var(--stone)}
.customer-memory{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px;padding:11px 13px;background:var(--stone);color:var(--ink-soft);font-size:.72rem}
.customer-memory button{border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ink);padding:2px 0;cursor:pointer;white-space:nowrap;font:inherit}
.order-register-dialog{width:min(520px,calc(100% - 30px));max-height:calc(100svh - 30px);padding:0;border:0;background:transparent;color:var(--ink);overflow:auto}
.order-register-dialog::backdrop{background:rgba(15,26,20,.66);backdrop-filter:blur(8px)}
.order-register-card{position:relative;background:var(--paper);border:1px solid rgba(255,255,255,.42);padding:clamp(28px,6vw,52px)}
.order-register-card h2{font-family:var(--serif);font-size:clamp(2rem,5vw,3.2rem);line-height:1.18;margin:12px 0 14px}
.order-register-card>p{color:var(--ink-soft);font-size:.82rem;line-height:1.85;margin:0 0 24px}
.order-register-card form{display:grid;gap:16px}
.order-register-card .submit{margin-top:4px}
.order-register-close{position:absolute;top:16px;left:16px;width:40px;height:40px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer}

/* Join */
.join-page{padding:74px 0 100px;background:linear-gradient(90deg,var(--paper) 0 62%,var(--stone) 62%)}
.join-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;align-items:start}
.join-story{position:sticky;top:150px}
.join-story .section-copy{max-width:470px}
.trust-list{display:grid;margin-top:34px;border-top:1px solid var(--line)}
.trust-item{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.trust-item b{font-family:var(--serif);color:var(--leaf)}
.trust-item h3{font-family:var(--serif);font-size:1.35rem;margin:0}
.trust-item p{font-size:.78rem;color:var(--ink-soft);margin:3px 0 0}
.form-card{background:#fff;border:1px solid var(--line);padding:clamp(24px,5vw,56px)}
.form-heading{margin-bottom:30px}
.form-heading h2{font-family:var(--serif);font-size:2.4rem;line-height:1;margin:0}
.form-heading p{color:var(--ink-soft);font-size:.8rem;margin:8px 0 0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:7px}
.field.full{grid-column:1/-1}
.field label{font-size:.78rem;font-weight:600}
.field small{color:var(--ink-soft)}
.field input,.field select{width:100%;min-height:50px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:8px 0;outline:0;border-radius:0}
.field input:focus,.field select:focus{border-color:var(--leaf)}
.reminder-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);background:rgba(255,255,255,.5);cursor:pointer}
.reminder-consent input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--leaf-deep);flex:0 0 auto}
.reminder-consent span{display:grid;gap:4px}
.reminder-consent b{font-size:.8rem;color:var(--ink)}
.reminder-consent small{font-size:.68rem;line-height:1.65;color:var(--ink-soft)}
.known{display:flex;flex-wrap:wrap;gap:8px}
.known button{min-height:38px;padding:0 13px;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:.75rem}
.known button.active{background:var(--leaf-deep);border-color:var(--leaf-deep);color:#fff}
.event-list{display:grid;gap:10px}
.event-row{display:grid;grid-template-columns:1fr 1fr 42px;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}
.event-row button{border:0;background:var(--stone);cursor:pointer;font-size:1.1rem}
.add-event{width:100%;min-height:46px;border:1px dashed var(--line);background:transparent;cursor:pointer;margin-top:10px;font-size:.78rem}
.error{display:none;padding:12px 14px;border-right:2px solid var(--error);background:#f6eae8;color:var(--error);font-size:.8rem}
.error.show{display:block}
.submit{width:100%;min-height:54px;margin-top:22px;border:1px solid var(--leaf-deep);background:var(--leaf-deep);color:#fff;cursor:pointer;font-weight:600}
.submit:disabled{opacity:.55;cursor:wait}
.form-note{margin:13px 0 0;color:var(--ink-soft);font-size:.72rem;text-align:center}
.success{text-align:center;padding:22px 0}
.success-mark{width:56px;height:56px;display:grid;place-items:center;margin:0 auto 18px;border:1px solid var(--leaf);color:var(--leaf);font-family:var(--serif);font-size:1.5rem}
.success h2{font-family:var(--serif);font-size:2.5rem;margin:0}
.success p{color:var(--ink-soft)}
.promo{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px;margin:24px 0}
.promo b{display:block;direction:ltr;font-size:1.7rem;letter-spacing:.08em;color:var(--leaf)}
.promo small{color:var(--ink-soft)}
.success-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}

/* Footer */
.site-footer{background:var(--ink);color:#fff;padding:72px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8vw;padding-bottom:58px}
.footer-brand img{width:180px;filter:brightness(0) invert(1);opacity:.94}
.footer-brand p{max-width:370px;color:rgba(255,255,255,.62);font-size:.82rem;line-height:1.9;margin:18px 0 0}
.footer-column h3{font-size:.72rem;color:rgba(255,255,255,.55);font-weight:500;margin:0 0 14px}
.footer-column a{display:block;width:max-content;margin:9px 0;font-size:.82rem}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line-light);color:rgba(255,255,255,.52);font-size:.68rem}
.policy-page{padding:84px 0 110px;background:var(--paper)}
.policy-shell{max-width:880px}
.policy-page h1{font-family:var(--serif);font-size:clamp(2.8rem,6vw,5.4rem);font-weight:500;line-height:1.35;letter-spacing:-.04em;margin:18px 0 26px}
.policy-intro{font-size:1.02rem;line-height:2;color:var(--muted);max-width:720px;margin:0 0 54px}
.policy-page section{padding:30px 0;border-top:1px solid var(--line)}
.policy-page h2{font-family:var(--serif);font-size:1.45rem;line-height:1.7;margin:0 0 10px}
.policy-page section p{color:var(--muted);line-height:2;margin:0}
.policy-page section a{color:var(--leaf-deep);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.policy-updated{margin-top:28px;color:var(--muted);font-size:.75rem}
.whatsapp-fab{position:fixed;left:22px;bottom:22px;z-index:70;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 16px;background:var(--leaf-deep);color:#fff;border:1px solid rgba(255,255,255,.2);font-size:.75rem;font-weight:600}
.whatsapp-fab svg{width:20px;height:20px;fill:currentColor}
.reveal{opacity:1;transform:none;transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal-ready .reveal:not(.visible){opacity:0;transform:translateY(18px)}
.reveal.visible{opacity:1;transform:none}

@media(max-width:980px){
  :root{--shell:min(100% - 40px,1320px)}
  .nav-shell{grid-template-columns:auto 1fr auto;height:76px}
  .brand{justify-self:center}.brand img{width:132px;height:58px}
  .nav-links{display:none}.icon-button{display:grid}.nav-actions .nav-cta{display:none}
  .mobile-menu{inset:110px 0 0}
  .category-grid{grid-template-columns:repeat(2,1fr)}.category-card,.category-card:nth-child(1),.category-card:nth-child(4){grid-column:auto;min-height:520px}
  .product-grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:720px){
  :root{--shell:calc(100% - 30px)}
  .announcement{font-size:.66rem;min-height:32px}.site-header{position:sticky}.nav-shell{height:70px}.brand img{width:118px;height:50px}.icon-button{width:42px;height:42px}.mobile-menu{inset:102px 0 0}
  .display{font-size:clamp(3rem,15vw,4.7rem)}.section-title{font-size:clamp(2.35rem,12vw,3.4rem)}
  .section-head,.intro-grid,.service-grid,.catalog-hero-grid,.catalog-note-grid,.product-layout,.join-grid,.footer-grid{display:block}
  .hero{min-height:calc(100svh - 102px)}.hero-content{padding-bottom:44px}.hero-copy{font-size:.84rem;margin-top:18px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .button{padding-inline:10px}.hero-season{display:none}
  .intro-section,.service-section,.club-section{padding:78px 0}.intro-note{margin-top:38px}
  .category-section{padding-bottom:78px}.category-grid{display:flex;overflow:auto;margin-left:-15px;margin-right:-15px;padding:0 15px 12px;scroll-snap-type:x mandatory}.category-card,.category-card:nth-child(1),.category-card:nth-child(4){min-width:82vw;min-height:500px;scroll-snap-align:start}
  .season-section{padding:78px 0}.season-grid{display:block;min-height:0}.season-main{height:560px}.season-side{grid-template-columns:1fr 1fr;grid-template-rows:none;margin-top:10px;gap:10px}.season-small{height:280px}.season-copy{right:18px;left:18px;bottom:18px}.season-small .season-copy h3{font-size:1.25rem}
  .steps{margin-top:42px}.club-panel{display:block}.club-copy{padding:44px 24px}.club-media{min-height:360px}
  .catalog-hero{padding:56px 0 42px}.catalog-hero .section-copy{margin-top:22px}.catalog-tools{top:102px}.catalog-tools-inner{display:block;padding:12px 0}.catalog-search{width:100%;min-width:0;margin-top:10px}.catalog-filters{gap:18px}
  .catalog-main{padding:34px 0 76px}.product-grid{grid-template-columns:repeat(2,1fr);gap:34px 10px}.product-card h2{font-size:1.15rem}.product-description{display:none}.product-meta{display:block}.product-meta span:last-child{display:block;margin-top:2px}.product-code{top:8px;left:8px}.catalog-status{font-size:.7rem}
  .product-page{padding:32px 0 74px}.product-info{position:static;padding-top:32px}.product-info h1{font-size:3rem}.product-gallery img{aspect-ratio:1/1.18}
  .join-page{padding:48px 0 72px;background:var(--paper)}.join-story{position:static;margin-bottom:42px}.form-card{padding:24px 18px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.event-row{grid-template-columns:1fr 1fr 38px}
  .footer-grid{padding-bottom:38px}.footer-column{margin-top:34px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}.whatsapp-fab{left:14px;bottom:14px;width:48px;height:48px;padding:0;justify-content:center}.whatsapp-fab span{display:none}
}

@media(max-width:430px){.product-grid{grid-template-columns:1fr 1fr}.product-image-wrap{aspect-ratio:3/4}.product-card h2{font-size:1.05rem}.product-card-action{font-size:.7rem}.season-side{display:block}.season-small{height:390px;margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.category-card img,.product-card img,.season-grid img{transition:none}}
