/* SOLA V2.5 — original designer vector assets and palette */
:root{--cream:#fcf2e8;--orange:#cc5733;--coral:#ebbcad;--navy:#00495d;--ink:#00495d;--sand:#ebbcad;--blue:#66929e}
.site-nav{background:rgba(252,242,232,.96)}
.logo img{width:94px;height:43px;object-fit:contain}.footer-logo img{width:180px;height:auto}
.hero-brand{width:clamp(180px,25vw,330px);height:auto;margin-bottom:24px}.hero-copy h1{font-size:clamp(48px,6vw,82px)}
.product-stage{background:var(--cream);border:1px solid rgba(0,73,93,.15)}.product-stage .product-brand{width:82%;height:auto;filter:none}
.club-wordmark{width:140px;height:auto}.ticker b img{display:inline-block;vertical-align:middle}
.ethos-refresh{background:var(--orange)}.editorial-quote{background:var(--blue)}
:focus-visible{outline:3px solid var(--navy);outline-offset:5px}
[hidden]{display:none!important}body.age-pending{overflow:hidden}
#age-gate{position:fixed;inset:0;z-index:1000;background:var(--cream);overflow-y:auto;display:flex;flex-direction:column;align-items:center;color:var(--navy);padding:32px 24px 0;min-height:100dvh}
.age-panel{width:min(100%,560px);margin:auto;text-align:center;padding-bottom:30px}
.age-logo{width:clamp(175px,24vh,250px);height:auto;margin:0 auto 14px}
.age-panel h1{font-size:clamp(38px,6vw,62px);line-height:1.02;letter-spacing:-.025em;margin:15px 0 22px}
#age-description{font-size:18px;margin:0 0 24px}.age-actions{display:flex;gap:12px;justify-content:center}
.age-actions button,#age-back{font:600 12px var(--sans);padding:17px 22px;cursor:pointer;border:1px solid var(--navy);color:var(--navy);background:transparent;min-height:48px}
#age-yes{background:var(--navy);color:var(--cream)}.age-actions button:hover,#age-back:hover{background:var(--orange);color:white;border-color:var(--orange)}
.age-note{font-size:11px;margin:24px 0 0;color:var(--navy)}#age-message:empty{display:none}#age-message{font-size:18px;max-width:400px;margin:24px auto}.age-bottom{width:100%;text-align:center;padding:16px;border-top:1px solid var(--orange);color:var(--orange);font-size:10px;letter-spacing:.3em}
@media(max-width:600px){.age-actions{flex-direction:column}.age-panel{max-width:380px}.age-logo{width:175px}.product-stage{min-height:390px}.hero-brand{width:190px}.hero-copy h1{font-size:48px}.age-panel h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

/* V2.7: supplied Clifton film photograph */
.hero-media{background-image:url('../images/cape-town-film-hero.jpg');background-position:center center;filter:none}
.ticker b img{filter:brightness(0) invert(1)}
@media(max-width:600px){.hero-media{background-position:55% center}}

.hero-media{background-position:50% 45%}
@media(max-width:600px){.hero-media{background-position:58% 48%}.hero-copy h1{font-size:clamp(38px,9.5vw,48px)}.hero-lede{font-size:15px;line-height:1.6}}

/* V2.8: landscape hero and a shorter editorial grapefruit crop */
.hero-media{background-position:50% 50%;filter:none}
.story-refresh-image{height:420px;min-height:0;align-self:center;width:100%}
.story-refresh-image img{height:100%;min-height:0;width:100%;object-fit:cover;object-position:50% 50%}
#site-content:focus{outline:none}
.logo:focus:not(:focus-visible){outline:none}
.logo:focus-visible{outline:2px solid var(--orange);outline-offset:6px}
@media(max-width:850px){.story-refresh-image{height:320px}}
@media(max-width:520px){.story-refresh-image{height:280px}.hero-media{background-position:57% 50%}}

/* V2.9: consistent landscape editorial frames */
.story-refresh-image,.editorial-refresh .editorial-image{aspect-ratio:4/3;height:auto;min-height:0;position:relative;overflow:hidden}
.story-refresh-image img,.editorial-refresh .editorial-image img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.editorial-refresh{min-height:0;align-items:stretch}
.editorial-refresh .editorial-quote{min-height:0;padding:32px 22px}
.editorial-refresh .editorial-quote blockquote{font-size:clamp(32px,4.5vw,60px)}
.hero-media{background-position:50% 50%}
@media(max-width:850px){.editorial-refresh .editorial-quote{min-height:280px}.story-refresh-image,.editorial-refresh .editorial-image{height:auto;min-height:0;aspect-ratio:4/3}}
@media(max-width:520px){.hero-media{background-position:52% 50%}}

/* V3.0: social summer hero and original designer brand artwork */
.hero-media{background-position:50% 48%}
.hero-overlay{background:linear-gradient(90deg,rgba(22,27,26,.64) 0%,rgba(22,27,26,.32) 42%,rgba(22,27,26,.06) 75%),linear-gradient(0deg,rgba(22,27,26,.22),transparent 65%)}
.hero-copy{max-width:630px}.hero-lede{max-width:420px}
.story-brand-panel{background:var(--cream);border:1px solid rgba(204,87,51,.2)}
.story-refresh-image.story-brand-panel img{object-fit:contain;padding:clamp(28px,4vw,60px);filter:none}
@media(max-width:600px){.hero-media{background-position:43% 50%}.hero-overlay{background:linear-gradient(90deg,rgba(22,27,26,.58),rgba(22,27,26,.20)),linear-gradient(0deg,rgba(22,27,26,.35),transparent 85%)}.story-refresh-image.story-brand-panel img{padding:24px}}

/* V3.1: coastal hero and restored tall editorial photographs */
.hero-media{background-position:50% 48%}
.editorial-refresh{min-height:620px;align-items:stretch}
.editorial-refresh .editorial-image{aspect-ratio:auto;height:620px;min-height:620px}
.editorial-refresh .editorial-image img{object-position:center}
.editorial-refresh .editorial-quote{min-height:620px;padding:50px 30px}
.story-refresh-image{aspect-ratio:4/5;height:auto;min-height:0}
@media(max-width:850px){.editorial-refresh{min-height:0}.editorial-refresh .editorial-image{aspect-ratio:4/5;height:auto;min-height:0}.editorial-refresh .editorial-quote{min-height:360px}.story-refresh-image{aspect-ratio:4/5}}
@media(max-width:600px){.hero-media{background-position:55% 50%}}

/* V3.2: palette measured from designer PDF and intact artwork panels */
:root{--cream:#fcf2e8;--orange:#cc5733;--navy:#00495d;--ink:#00495d;--blue:#66929e;--coral:#ebbcad;--sand:#ebbcad}
.designer-story{aspect-ratio:635/800}
.story-refresh-image.designer-story img{filter:none}
.product-stage:has(.designer-product){background:var(--cream);border:0}
.product-stage .designer-product{width:100%;height:auto;max-height:none;filter:none}
.club-object .designer-club-photo{width:min(100%,400px);height:auto;display:block;margin:auto;transform:none;box-shadow:none}
.editorial-refresh .editorial-quote{background:var(--navy)}
.hero-media{background-position:50% 55%}
@media(max-width:600px){.hero-media{background-position:67% 55%}.designer-story{aspect-ratio:635/800}}

/* V3.3: user's preferred hero reference restored */
.hero-copy{max-width:700px}.hero-lede{max-width:530px}
.hero-overlay{background:linear-gradient(90deg,rgba(13,34,48,.72) 0%,rgba(13,34,48,.38) 42%,rgba(13,34,48,.08) 72%),linear-gradient(0deg,rgba(13,34,48,.28),transparent 52%)}
.hero-media{background-position:50% 50%}
@media(max-width:600px){.hero-media{background-position:52% 50%}}

/* V3.5: quieter image proportions and warm, direct calls to action. */
.hero-actions .btn-orange{background:var(--orange);border-color:var(--orange);color:var(--cream);padding:16px 28px}
.hero-actions .btn-orange:hover{background:var(--navy);border-color:var(--navy)}
.story-refresh-image.designer-story{width:min(100%,430px);justify-self:center;align-self:center;aspect-ratio:635/800;height:auto;min-height:0}
.paloma-refresh .product-stage{width:min(100%,430px);min-height:0;height:auto;justify-self:center;align-self:center}
.paloma-refresh .product-stage .designer-product{width:100%;height:auto;object-fit:contain}
.paloma-refresh .stage-note{display:none}
.recipe-grid article>div{display:block}
@media(max-width:850px){.story-refresh-image.designer-story,.paloma-refresh .product-stage{width:min(100%,390px)}}
