/* ========================================
   DR. URSUM — LUXURY EDITORIAL
   Light / Dark alternating rhythm
   ======================================== */

:root {
    --gold:        #B69D62;
    --gold-hover:  #CBAF72;
    --gold-dim:    rgba(182,157,98,.1);

    --dark:        #111110;
    --dark-warm:   #17150F;
    --dark-card:   #1C1A14;
    --dark-line:   rgba(182,157,98,.1);

    --parchment:   #F2EDE3;
    --parch-mid:   #E6DFD1;
    --parch-dark:  #D1C8B5;
    --parch-deep:  #C0B69F;

    --text-dark:   #2C2A24;
    --text-mid:    #5A5548;
    --text-light-on-dark: #B8B0A0;
    --text-dim-on-dark:   #7A7468;

    --sans:  'Barlow', sans-serif;
    --cond:  'Barlow Condensed', sans-serif;
    --serif: 'Cormorant Garamond', Georgia, serif;

    --ease: cubic-bezier(.16,1,.3,1);
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
    font-family:var(--serif);font-weight:400;font-size:17px;
    color:var(--text-dark);background:var(--parchment);
    line-height:1.75;overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}
body{opacity:0;animation:pageIn .8s .15s var(--ease) forwards}
@keyframes pageIn{to{opacity:1}}

/* Grain */
body::after{
    content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.03;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
::selection{background:var(--gold);color:#fff}

.container{max-width:1280px;margin:0 auto;padding:0 48px}
.container-sm{max-width:780px}

/* ---- Typography ---- */
.overline{
    font-family:var(--cond);font-weight:600;font-size:.78rem;
    letter-spacing:5px;text-transform:uppercase;
    color:var(--gold);display:block;margin-bottom:20px;
}
.overline.center{text-align:center}

/* Dark section text color overrides */
.is-dark{background:var(--dark);color:var(--text-light-on-dark)}
.is-dark h1,.is-dark h2,.is-dark h3,.is-dark h4,.is-dark h5,
.is-dark .heading-serif,.is-dark .heading-lg,.is-dark .heading-xl{color:#EDE6D6}
.is-dark .body-xl{color:var(--text-light-on-dark)}
.is-dark .overline{color:var(--gold)}

.heading-xl{
    font-family:var(--cond);font-weight:800;
    font-size:clamp(2rem,4.5vw,3.8rem);
    text-transform:uppercase;letter-spacing:3px;color:var(--text-dark);line-height:1.05;
}
.heading-lg{
    font-family:var(--cond);font-weight:700;
    font-size:clamp(1.5rem,3vw,2.4rem);
    text-transform:uppercase;letter-spacing:2px;color:var(--text-dark);line-height:1.1;
}
.heading-serif{
    font-family:var(--serif);font-weight:400;
    font-size:clamp(1.8rem,3.5vw,2.8rem);
    font-style:italic;color:var(--text-dark);line-height:1.35;
}
.body-xl{
    font-family:var(--serif);font-size:clamp(1.1rem,1.6vw,1.3rem);
    line-height:1.9;color:var(--text-mid);
}
.page-heading{
    font-family:var(--cond);font-weight:800;
    font-size:clamp(1.6rem,3vw,2.2rem);
    text-transform:uppercase;letter-spacing:2px;margin-bottom:48px;
}

/* ---- Buttons ---- */
.btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:18px 48px;
    font-family:var(--cond);font-weight:600;font-size:.78rem;
    letter-spacing:4px;text-transform:uppercase;
    border:none;border-radius:0;overflow:hidden;position:relative;
    transition:all .5s var(--ease);cursor:pointer;
}
.btn::before{content:'';position:absolute;inset:0;transform:translateY(101%);transition:transform .5s var(--ease)}
.btn:hover::before{transform:translateY(0)}
.btn span{position:relative;z-index:1}

.btn-gold{background:var(--gold);color:#fff}
.btn-gold::before{background:var(--gold-hover)}
.btn-gold:hover{box-shadow:0 8px 36px rgba(182,157,98,.3);transform:translateY(-2px)}

.btn-ghost{background:transparent;color:#EDE6D6;border:1px solid rgba(237,230,214,.3)}
.btn-ghost::before{background:rgba(237,230,214,.08)}
.btn-ghost:hover{border-color:#EDE6D6}

.btn-dark{background:var(--dark);color:#EDE6D6}
.btn-dark::before{background:#222}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 8px 36px rgba(0,0,0,.2)}

.btn-outline{background:transparent;color:var(--text-dark);border:1px solid var(--parch-dark)}
.btn-outline::before{background:var(--gold-dim)}
.btn-outline:hover{border-color:var(--gold)}

.btn-lg{padding:22px 64px;font-size:.82rem}
.btn-block{width:100%}

/* ---- Navigation ---- */
.nav{
    position:fixed;top:0;left:0;right:0;z-index:1000;
    transition:all .6s var(--ease);
}
.nav.scrolled{
    background:rgba(17,17,16,.95);
    backdrop-filter:blur(24px) saturate(1.4);
    -webkit-backdrop-filter:blur(24px) saturate(1.4);
}
.nav-inner{
    display:flex;align-items:center;justify-content:space-between;
    height:120px;margin:0 48px;
    border-bottom:1px solid rgba(237,230,214,.08);
    transition:all .6s var(--ease);
}
.nav.scrolled .nav-inner{height:72px;border-color:transparent}
.nav-logo img{
    height:100px;
    transition:all .5s var(--ease);
    filter:brightness(1.8) drop-shadow(0 0 12px rgba(182,157,98,.2));
}
.nav.scrolled .nav-logo img{height:60px}

/* Nav on light-background pages: always dark bg */
.nav-solid{background:rgba(17,17,16,.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.nav-solid .nav-inner{border-bottom-color:rgba(182,157,98,.08)}
.nav-center{display:flex;gap:4px}

/* Mobile Menu - separate from nav, on body level */
.mobile-menu{
    position:fixed;inset:0;z-index:99999;
    background:var(--dark);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    opacity:0;visibility:hidden;
    transition:opacity .4s var(--ease),visibility .4s;
}
.mobile-menu.is-open{opacity:1;visibility:visible}
.mobile-menu-close{
    position:absolute;top:28px;right:24px;
    background:none;border:1px solid rgba(237,230,214,.15);
    width:48px;height:48px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    color:rgba(237,230,214,.5);transition:all .3s;cursor:pointer;z-index:1;
}
.mobile-menu-close:hover{color:#EDE6D6;border-color:var(--gold)}
.mobile-menu-links{display:flex;flex-direction:column;align-items:center;gap:0}
.mobile-menu-links a{
    font-family:var(--cond);font-weight:600;font-size:1.3rem;
    letter-spacing:6px;text-transform:uppercase;
    color:rgba(237,230,214,.4);padding:18px 24px;
    transition:color .3s;
}
.mobile-menu-links a:hover,.mobile-menu-links a.active{color:#EDE6D6}
.mobile-menu-footer{
    position:absolute;bottom:40px;
    display:flex;align-items:center;gap:4px;
}
.mobile-menu-footer .sw{
    font-family:var(--cond);font-size:.7rem;letter-spacing:2px;font-weight:600;
    color:rgba(237,230,214,.3);padding:6px 8px;transition:color .3s;
}
.mobile-menu-footer .sw.active{color:var(--gold)}
.mobile-menu-footer .sw-sep{width:1px;height:12px;background:rgba(255,255,255,.1);margin:0 8px}
.nav-center a{
    font-family:var(--cond);font-weight:500;font-size:.85rem;
    letter-spacing:3px;text-transform:uppercase;
    color:rgba(237,230,214,.5);padding:8px 20px;
    position:relative;transition:color .4s;
}
.nav-center a::after{
    content:'';position:absolute;bottom:4px;left:20px;right:20px;
    height:1px;background:var(--gold);
    transform:scaleX(0);transform-origin:right;
    transition:transform .5s var(--ease);
}
.nav-center a:hover,.nav-center a.active{color:#EDE6D6}
.nav-center a:hover::after,.nav-center a.active::after{transform:scaleX(1);transform-origin:left}
.nav-right{display:flex;align-items:center;gap:28px}
.nav-switchers{display:flex;gap:2px;align-items:center}
.sw{
    font-family:var(--cond);font-size:.72rem;letter-spacing:2px;font-weight:600;
    color:rgba(237,230,214,.35);padding:4px 6px;transition:color .3s;
}
.sw.active{color:var(--gold)}
.sw:hover{color:#EDE6D6}
.sw-sep{width:1px;height:12px;background:rgba(255,255,255,.1);margin:0 8px}
.nav-cart{position:relative;color:rgba(237,230,214,.4);transition:color .3s;display:flex;align-items:center}
.nav-cart:hover{color:#EDE6D6}
.cart-count{
    position:absolute;top:-6px;right:-10px;
    background:var(--gold);color:#fff;
    font-family:var(--cond);font-size:.55rem;font-weight:800;
    width:17px;height:17px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
}
.nav-hamburger{
    display:none;background:none;border:none;padding:0;
    cursor:pointer;flex-direction:column;align-items:center;gap:5px;
    width:36px;
}
.hb-line{
    display:block;width:100%;height:.8px;
    background:rgba(237,230,214,.7);
    transition:all .4s var(--ease);
}
.hb-text{
    font-family:var(--cond);font-size:.5rem;font-weight:600;
    letter-spacing:3px;text-transform:uppercase;
    color:rgba(237,230,214,.4);
    transition:all .3s;
}
.nav-hamburger:hover .hb-line{background:#EDE6D6}
.nav-hamburger:hover .hb-text{color:rgba(237,230,214,.7)}
.nav-hamburger.open .hb-text{opacity:0;height:0;margin:0;overflow:hidden}
.nav-hamburger.open .hb-top{
    transform:translateY(3.5px) rotate(45deg);
}
.nav-hamburger.open .hb-bot{
    transform:translateY(-3.5px) rotate(-45deg);
}

/* ---- HERO (always dark) ---- */
.hero{
    position:relative;height:100vh;height:100svh;min-height:600px;
    display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.hero-page{height:72vh;min-height:460px}
.hero-media{position:absolute;inset:0}
.hero-media img,.hero-media video{width:100%;height:100%;object-fit:cover}
.hero-overlay{
    position:absolute;inset:0;
    background:
        radial-gradient(ellipse at 30% 50%, rgba(17,17,16,.2), rgba(17,17,16,.7) 70%),
        linear-gradient(180deg, rgba(17,17,16,.15) 0%, rgba(17,17,16,.1) 30%, rgba(17,17,16,.75) 80%, var(--dark) 100%);
}
.hero-content{position:relative;z-index:2;text-align:center;max-width:860px;padding:0 24px}
.hero-badge img{width:160px;margin:0 auto 40px;opacity:.3;filter:brightness(2)}
.hero-title{
    font-family:var(--cond);font-weight:900;
    font-size:clamp(3rem,8vw,6.5rem);
    text-transform:uppercase;letter-spacing:clamp(4px,1vw,12px);
    color:#EDE6D6;line-height:.95;
}
.hero-title span{display:block}
.hero-title .hero-accent{
    color:transparent;-webkit-text-stroke:1.5px var(--gold);
    font-size:1.15em;
}
.hero-page .hero-title{font-size:clamp(2rem,5vw,3.8rem)}
.hero-page .hero-title .hero-accent{-webkit-text-stroke:0;color:#EDE6D6;font-size:1em}
.hero-sub{
    margin-top:32px;font-family:var(--serif);font-style:italic;font-weight:300;
    font-size:clamp(1.05rem,1.5vw,1.25rem);color:rgba(237,230,214,.7);
    line-height:1.7;max-width:500px;margin-left:auto;margin-right:auto;
}
.hero-actions{display:flex;gap:16px;justify-content:center;margin-top:48px}
.hero-scroll{
    position:absolute;bottom:48px;left:50%;transform:translateX(-50%);z-index:2;
    display:flex;flex-direction:column;align-items:center;gap:12px;
}
.hero-scroll-text{
    font-family:var(--cond);font-size:.55rem;letter-spacing:5px;text-transform:uppercase;
    color:rgba(237,230,214,.3);writing-mode:vertical-lr;
}
.hero-scroll-line{width:1px;height:40px;background:linear-gradient(180deg,var(--gold),transparent);animation:scrollPulse 2.5s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{opacity:.2;transform:scaleY(.5)} 50%{opacity:.7;transform:scaleY(1)}}

/* ---- MARQUEE (dark) ---- */
.marquee{
    padding:18px 0;overflow:hidden;background:var(--dark);
    border-bottom:1px solid var(--dark-line);
}
.marquee-track{display:flex;white-space:nowrap;animation:marqueeScroll 35s linear infinite}
.marquee-item{
    font-family:var(--cond);font-weight:700;font-size:.65rem;
    letter-spacing:6px;text-transform:uppercase;
    color:rgba(237,230,214,.2);padding:0 40px;flex-shrink:0;
}
.marquee-item .dot{display:inline-block;width:4px;height:4px;background:var(--gold);border-radius:50%;margin:0 32px;vertical-align:middle;opacity:.5}
@keyframes marqueeScroll{0%{transform:translateX(0)} 100%{transform:translateX(-50%)}}

/* ---- CITES Bar ---- */
.cites-bar{
    background:var(--parchment);
    border-bottom:1px solid var(--parch-mid);
    padding:24px 0;
}
.cites-bar-inner{
    display:flex;align-items:center;gap:28px;
    max-width:880px;margin:0 auto;
    padding:8px 16px;
    transition:all .4s var(--ease);
}
.cites-bar-inner:hover{transform:translateX(4px)}
.cites-bar-logo{
    height:72px;width:auto;flex-shrink:0;
    opacity:.85;
    transition:opacity .3s;
}
.cites-bar-inner:hover .cites-bar-logo{opacity:1}
.cites-bar-text{flex:1;display:flex;flex-direction:column;gap:4px}
.cites-bar-label{
    font-family:var(--cond);font-size:.85rem;font-weight:700;
    letter-spacing:4px;text-transform:uppercase;color:var(--gold);
}
.cites-bar-desc{
    font-family:var(--serif);font-size:.95rem;font-style:italic;
    color:var(--text-mid);
}
.cites-bar-arrow{color:var(--gold);opacity:.5;transition:all .3s;flex-shrink:0}
.cites-bar-inner:hover .cites-bar-arrow{opacity:1;transform:translateX(4px)}

/* ---- Sections ---- */
.sc{padding:clamp(100px,14vw,180px) 0}

/* ========== LIGHT SECTIONS (parchment bg) ========== */

/* -- Intro (LIGHT) -- */
.sc-intro{background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,8vw,120px);align-items:start}
.intro-right{padding-top:12px}
.intro-right .body-xl{position:relative;padding-left:32px}
.intro-right .body-xl::before{
    content:'';position:absolute;left:0;top:8px;
    width:1px;height:calc(100% - 16px);background:var(--gold);opacity:.4;
}

/* -- Numbers (LIGHT) -- */
.sc-numbers{padding:80px 0;background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.numbers-row{display:flex;align-items:center;justify-content:center}
.number-item{flex:1;text-align:center;padding:20px 24px}
.number-val{font-family:var(--cond);font-weight:900;font-size:clamp(3rem,5vw,4.5rem);color:var(--text-dark);letter-spacing:2px;line-height:1}
.number-unit{font-family:var(--cond);font-weight:900;font-size:clamp(1.5rem,2.5vw,2rem);color:var(--gold);vertical-align:super}
.number-label{display:block;margin-top:12px;font-family:var(--cond);font-size:.75rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--text-mid)}
.number-divider{width:1px;height:80px;background:var(--parch-dark);flex-shrink:0;opacity:.5}

/* ========== DARK SECTIONS ========== */

/* -- Ingredient Spotlight (DARK) -- */
.sc-ingredient-spotlight{padding:0;background:var(--dark)}
.spotlight-grid{display:grid;grid-template-columns:1fr 1fr;min-height:85vh}
.spotlight-image{overflow:hidden}
.spotlight-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.spotlight-image:hover img{transform:scale(1.03)}
.spotlight-content{
    display:flex;flex-direction:column;justify-content:center;
    padding:clamp(48px,6vw,100px);
    background:var(--dark-warm);color:var(--text-light-on-dark);
}
.spotlight-content .overline{color:var(--gold)}
.spotlight-content .heading-lg{color:#EDE6D6;margin-bottom:20px}
.spotlight-content .body-xl{color:var(--text-light-on-dark);margin-bottom:36px}
.spotlight-ingredients{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:40px}
.spotl-ing{padding:16px 20px;border:1px solid var(--dark-line);transition:all .3s}
.spotl-ing:hover{border-color:var(--gold);background:var(--gold-dim)}
.spotl-ing-name{display:block;font-family:var(--serif);font-size:1rem;color:#EDE6D6;font-weight:500}
.spotl-ing-latin{display:block;font-family:var(--cond);font-size:.58rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-dim-on-dark);margin-top:4px}

/* -- USP (LIGHT) -- */
.sc-usp{background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.usp-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.usp-item{padding:48px 36px;border-right:1px solid var(--parch-mid);transition:background .5s}
.usp-item:last-child{border-right:none}
.usp-item:hover{background:rgba(182,157,98,.06)}
.usp-num{font-family:var(--cond);font-size:3.5rem;font-weight:900;color:rgba(182,157,98,.1);line-height:1;margin-bottom:24px}
.usp-item h3{font-family:var(--cond);font-size:.95rem;text-transform:uppercase;letter-spacing:3px;color:var(--text-dark);margin-bottom:12px;font-weight:700}
.usp-item p{font-size:.95rem;color:var(--text-mid);line-height:1.7}

/* -- Showcase (DARK) -- */
.sc-showcase{padding:0;background:var(--dark)}
.showcase-grid{display:grid;grid-template-columns:55% 45%;min-height:90vh}
.showcase-img{overflow:hidden}
.showcase-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.showcase-img:hover img{transform:scale(1.03)}
.showcase-info{display:flex;align-items:center;padding:clamp(48px,6vw,100px);background:var(--dark-warm);color:var(--text-light-on-dark)}
.showcase-info-inner{max-width:420px}
.showcase-info .overline{color:var(--gold)}
.showcase-info .heading-xl{color:#EDE6D6;margin-bottom:4px;font-size:clamp(2rem,4vw,3.6rem)}
.showcase-info .body-xl{color:var(--gold);font-style:italic;margin-bottom:36px}
.showcase-list{margin-bottom:48px}
.showcase-list li{padding:14px 0 14px 24px;border-bottom:1px solid var(--dark-line);font-family:var(--serif);font-size:1rem;color:var(--text-light-on-dark);position:relative}
.showcase-list li::before{content:'';position:absolute;left:0;top:50%;width:10px;height:1px;background:var(--gold)}

/* -- Mosaic (no padding, full bleed) -- */
.sc-mosaic{padding:3px 0;background:var(--parchment)}
.mosaic-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:3px;height:90vh}
.mosaic-item{overflow:hidden}
.mosaic-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease);filter:brightness(.9)}
.mosaic-item:hover img{transform:scale(1.04);filter:brightness(1)}
.mosaic-tall{grid-row:1/3}

/* -- Ritual (LIGHT / warm) -- */
.sc-ritual{background:var(--parch-mid)}
.ritual-header{margin-bottom:72px;text-align:center}
.ritual-header .heading-serif{max-width:480px;margin:0 auto;color:var(--text-dark)}
.ritual-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.ritual-step{text-align:center}
.ritual-step-num{display:block;font-family:var(--serif);font-style:italic;font-weight:300;font-size:2.5rem;color:var(--gold);margin-bottom:24px;opacity:.6}
.ritual-step-img{width:100%;aspect-ratio:3/4;overflow:hidden;margin-bottom:28px}
.ritual-step-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.ritual-step:hover .ritual-step-img img{transform:scale(1.05)}
.ritual-step h3{font-family:var(--cond);font-size:.92rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--text-dark);margin-bottom:12px}
.ritual-step p{font-size:.92rem;color:var(--text-mid);max-width:260px;margin:0 auto;line-height:1.7}

/* -- Video (DARK) -- */
.sc-video{background:var(--dark);color:var(--text-light-on-dark)}
.video-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,6vw,80px);align-items:center}
.video-text .overline{color:var(--gold)}
.video-text .heading-serif{color:#EDE6D6;margin-bottom:24px}
.video-text .body-xl{color:var(--text-dim-on-dark)}
.video-player{position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--dark-card)}
.video-player video{width:100%;height:100%;object-fit:cover;display:block}
.video-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(17,17,16,.3);cursor:pointer;transition:all .4s}
.video-play-overlay:hover{background:rgba(17,17,16,.15)}
.video-play-overlay.is-hidden{opacity:0;pointer-events:none}
.video-play-btn{width:72px;height:72px;border-radius:50%;border:2px solid rgba(237,230,214,.4);display:flex;align-items:center;justify-content:center;color:#EDE6D6;transition:all .4s var(--ease)}
.video-play-overlay:hover .video-play-btn{border-color:var(--gold);color:var(--gold);transform:scale(1.1)}

/* -- Gallery Strip (dark edge) -- */
.sc-gallery-strip{overflow:hidden;padding:3px 0;background:var(--dark)}
.gallery-strip-track{display:flex;gap:3px;animation:stripScroll 50s linear infinite}
.gallery-strip-item{flex:0 0 auto;width:26vw;min-width:280px;aspect-ratio:3/4;overflow:hidden}
.gallery-strip-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .8s;filter:brightness(.85)}
.gallery-strip-item:hover img{transform:scale(1.06);filter:brightness(1)}
@keyframes stripScroll{0%{transform:translateX(0)} 100%{transform:translateX(-50%)}}

/* -- Story (DARK cinematic) -- */
.sc-story{position:relative;min-height:85vh;display:flex;align-items:center;overflow:hidden;background:var(--dark)}
.story-bg-wrap{position:absolute;inset:0}
.story-bg-wrap img{width:100%;height:130%;object-fit:cover;position:absolute;top:-15%}
.story-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(17,17,16,.3),rgba(17,17,16,.85) 70%),linear-gradient(90deg,rgba(17,17,16,.95) 0%,rgba(17,17,16,.5) 60%)}
.story-inner{position:relative;z-index:2}
.story-text{max-width:560px}
.story-headline{font-family:var(--cond);font-weight:800;font-size:clamp(1.8rem,3.5vw,2.8rem);text-transform:uppercase;letter-spacing:2px;color:#EDE6D6;line-height:1.15}
.story-headline em{display:block;font-family:var(--serif);font-style:italic;font-weight:300;text-transform:none;letter-spacing:0;color:var(--gold);font-size:clamp(1.4rem,2.5vw,2.2rem);line-height:1.4;margin-top:8px}
.story-line{width:48px;height:1px;background:var(--gold);margin:36px 0}
.story-text .body-xl{color:var(--text-light-on-dark)}

/* -- Certifications (LIGHT) -- */
.sc-certs{padding:72px 0;background:var(--parchment);border-top:1px solid var(--parch-mid);border-bottom:1px solid var(--parch-mid)}
.certs-row{display:flex;align-items:center;justify-content:center}
.cert-item{flex:1;display:flex;align-items:center;gap:20px;padding:16px 32px}
.cert-logo{width:48px;opacity:.6;flex-shrink:0}
.cert-item svg{color:var(--gold);flex-shrink:0}
.cert-text strong{display:block;font-family:var(--cond);font-size:.85rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-dark)}
.cert-text span{font-size:.9rem;color:var(--text-mid);line-height:1.5}
.cert-divider{width:1px;height:56px;background:var(--parch-dark);flex-shrink:0;opacity:.5}

/* -- CTA (DARK) -- */
.sc-cta{text-align:center;background:var(--dark);border-top:1px solid var(--dark-line)}
.cta-inner{max-width:520px;margin:0 auto}
.cta-badge{width:100px;height:100px;margin:0 auto 48px;opacity:.2;filter:brightness(3)}
.cta-text{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.15rem,2vw,1.45rem);color:var(--text-light-on-dark);line-height:1.85;margin-bottom:48px}

/* ========== PRODUCT PAGE ========== */
.sc-product-top{padding-top:130px;padding-bottom:clamp(60px,8vw,120px);background:var(--parchment)}
.product-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:start;max-width:1280px;margin:0 auto}
.product-info-wrap{padding:0 48px 0 clamp(24px,4vw,64px)}

/* -- Slider -- */
.product-slider{position:relative;overflow:hidden;background:var(--parch-mid)}
.ps-track{display:flex;transition:transform .5s var(--ease);touch-action:pan-y}
.ps-slide{flex:0 0 100%;min-width:100%}
.ps-slide img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.ps-dots{
    position:absolute;bottom:16px;left:50%;transform:translateX(-50%);
    display:none;gap:8px;z-index:2;
}
.ps-dot{
    width:8px;height:8px;border-radius:50%;border:none;padding:0;
    background:rgba(255,255,255,.4);cursor:pointer;
    transition:all .3s;
}
.ps-dot.is-active{background:var(--gold);transform:scale(1.3)}
.ps-arrow{
    position:absolute;top:50%;transform:translateY(-50%);z-index:2;
    width:44px;height:44px;border:none;border-radius:50%;
    background:rgba(255,255,255,.85);color:var(--text-dark);
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;transition:all .3s;backdrop-filter:blur(4px);
    box-shadow:0 2px 12px rgba(0,0,0,.1);
}
.ps-arrow:hover{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.15)}
.ps-prev{left:16px}
.ps-next{right:16px}

/* Thumbnails under slider (desktop) */
.ps-thumbs{display:flex;gap:4px;margin-top:4px;padding:0}
.ps-thumb{
    flex:1;aspect-ratio:1;overflow:hidden;
    border:2px solid transparent;background:none;padding:0;
    opacity:.45;cursor:pointer;transition:all .4s var(--ease);
}
.ps-thumb.is-active,.ps-thumb:hover{border-color:var(--gold);opacity:1}
.ps-thumb img{width:100%;height:100%;object-fit:cover}

/* -- Product Info -- */
.product-name{font-family:var(--cond);font-weight:800;font-size:clamp(1.3rem,2vw,1.7rem);text-transform:uppercase;letter-spacing:3px;margin-bottom:20px;color:var(--text-dark)}
.product-short-desc{font-family:var(--serif);font-size:1.05rem;line-height:1.85;color:var(--text-mid);margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--parch-mid)}
.product-points{margin-bottom:20px}
.product-points p{color:var(--text-mid);margin-bottom:6px;font-size:.92rem}

/* Ideal - simplified as plain text */
.product-ideal-list{margin-bottom:28px;padding:20px 24px;background:var(--parch-mid);border-radius:2px}
.product-ideal-list p{font-size:.92rem;color:var(--text-mid);margin-bottom:6px;line-height:1.7}
.product-ideal-list p:last-child{margin-bottom:0}
.product-ideal-list strong{font-family:var(--cond);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-dark)}
.ideal-note{font-style:italic;color:var(--text-mid)}

/* Buy Form */
.buy-form{padding-top:28px;border-top:1px solid var(--parch-mid)}

/* Price + qty row (single variant) */
.bf-price-row{
    display:flex;align-items:center;justify-content:space-between;
    gap:20px;margin-bottom:24px;
    padding:20px 24px;
    background:var(--parch-mid);
    border-left:3px solid var(--gold);
}
.bf-price-info{display:flex;flex-direction:column;gap:2px}
.bf-price-size{
    font-family:var(--cond);font-size:.7rem;font-weight:600;
    letter-spacing:3px;text-transform:uppercase;color:var(--text-mid);
}
.bf-price-amount{
    font-family:var(--cond);font-size:1.6rem;font-weight:800;
    color:var(--gold);letter-spacing:1px;
}

.bf-row{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;margin-bottom:24px}
.bf-variants{}
.bf-label{display:block;font-family:var(--cond);font-size:.68rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--text-mid);margin-bottom:10px}
.bf-variant-btns{display:flex;gap:6px}
.bf-variant{
    flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;
    padding:14px 16px;
    border:1px solid var(--parch-dark);cursor:pointer;
    transition:all .3s var(--ease);text-align:center;background:var(--parchment);
}
.bf-variant input{display:none}
.bf-variant.is-active,.bf-variant:hover{border-color:var(--gold);background:var(--gold-dim)}
.bf-v-weight{font-family:var(--cond);font-size:.95rem;font-weight:700;color:var(--text-dark)}
.bf-v-price{font-family:var(--cond);font-size:1rem;font-weight:700;color:var(--gold);font-style:normal}
.bf-qty{}
.bf-qty-ctrl{display:flex;width:fit-content}
.bf-qty-ctrl button{width:40px;height:40px;background:var(--parch-mid);border:1px solid var(--parch-dark);color:var(--text-dark);font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .3s}
.bf-qty-ctrl button:hover{background:var(--parch-dark);border-color:var(--gold)}
.bf-qty-ctrl input{width:48px;height:40px;text-align:center;background:var(--parchment);border:1px solid var(--parch-dark);border-left:none;border-right:none;color:var(--text-dark);font-family:var(--cond);font-size:.95rem;font-weight:700;-moz-appearance:textfield}
.bf-qty-ctrl input::-webkit-outer-spin-button,.bf-qty-ctrl input::-webkit-inner-spin-button{-webkit-appearance:none}
.product-trust{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid var(--parch-mid)}
.trust-item{display:flex;align-items:center;gap:8px;font-family:var(--cond);font-size:.7rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-mid)}
.trust-item svg{color:var(--gold)}

/* Full img break */
.sc-fullimg{position:relative;height:65vh;overflow:hidden}
.sc-fullimg img{width:100%;height:130%;object-fit:cover;position:absolute;top:-15%}

/* Editorial */
.sc-editorial{background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.editorial-content{font-family:var(--serif);font-size:1.15rem;line-height:2.1;color:var(--text-mid)}
.editorial-content p{margin-bottom:32px}
.editorial-content p:first-child::first-letter{font-size:3.2em;float:left;font-weight:600;color:var(--gold);line-height:.85;margin-right:12px;margin-top:6px}

/* Benefits */
.sc-benefits{padding:72px 0;background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.benefits-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:32px}
.benefit-pill{display:flex;align-items:center;gap:12px;padding:14px 28px;border:1px solid var(--parch-dark);font-family:var(--serif);font-size:.92rem;color:var(--text-mid);transition:all .4s}
.benefit-pill:hover{border-color:var(--gold);background:var(--gold-dim)}
.benefit-pill svg{color:var(--gold);flex-shrink:0}

/* Ingredients (DARK) */
.sc-ingredients{background:var(--dark);color:var(--text-light-on-dark)}
.ingredients-header{text-align:center;margin-bottom:72px}
.ingredients-header .overline{color:var(--gold)}
.ingredients-header .heading-xl{color:#EDE6D6;font-size:clamp(2rem,4vw,3.2rem);margin-bottom:20px}
.inci-text{font-family:var(--serif);font-size:.95rem;font-style:italic;color:var(--text-dim-on-dark);max-width:680px;margin:16px auto 0;line-height:1.7;text-align:center}
.inci-block{margin-top:64px;padding:48px 32px;text-align:center;border-top:1px solid var(--dark-line)}
.inci-block .overline{margin-bottom:8px}

/* Product Rating */
.product-rating{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.product-rating .stars{display:flex;gap:2px;color:var(--gold)}
.product-rating-text{
    font-family:var(--cond);font-size:.7rem;letter-spacing:2px;
    text-transform:uppercase;color:var(--text-mid);
    transition:color .3s;
}
.product-rating-text:hover{color:var(--gold)}

/* Reviews Section */
.sc-reviews{background:var(--parch-mid);border-bottom:1px solid var(--parch-dark)}
.reviews-header{text-align:center;margin-bottom:64px}
.reviews-header .heading-serif{margin-bottom:24px}
.reviews-summary{display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center}
.reviews-stars{display:flex;gap:3px;color:var(--gold)}
.reviews-summary-text{
    font-family:var(--cond);font-size:.78rem;font-weight:600;
    letter-spacing:2px;text-transform:uppercase;color:var(--text-mid);
}
.reviews-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
}
.review-card{
    padding:32px 28px;
    background:var(--parchment);
    border:1px solid var(--parch-dark);
    transition:all .4s var(--ease);
    display:flex;flex-direction:column;gap:14px;
}
.review-card:hover{
    border-color:var(--gold);
    box-shadow:0 8px 32px rgba(0,0,0,.04);
    transform:translateY(-2px);
}
.review-stars{display:flex;gap:2px;color:var(--gold)}
.review-title{
    font-family:var(--cond);font-size:.95rem;font-weight:700;
    letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dark);
}
.review-content{
    font-family:var(--serif);font-size:1rem;line-height:1.75;
    color:var(--text-mid);font-style:italic;flex:1;
}
.review-author{display:flex;flex-direction:column;gap:2px;padding-top:14px;border-top:1px solid var(--parch-mid)}
.review-author-name{
    font-family:var(--cond);font-size:.85rem;font-weight:700;
    letter-spacing:1px;text-transform:uppercase;color:var(--text-dark);
}
.review-author-location{
    font-family:var(--serif);font-size:.85rem;font-style:italic;color:var(--text-mid);
}
.review-verified{
    display:inline-flex;align-items:center;gap:5px;
    margin-top:4px;
    font-family:var(--cond);font-size:.6rem;letter-spacing:2px;
    text-transform:uppercase;color:var(--gold);
}
.review-verified svg{flex-shrink:0}
.ingredients-list{display:grid;grid-template-columns:1fr 1fr;gap:0}
.ing-item{padding:36px 40px;border-bottom:1px solid var(--dark-line);border-right:1px solid var(--dark-line);transition:background .4s}
.ing-item:hover{background:var(--gold-dim)}
.ing-item:nth-child(2n){border-right:none}
.ing-header{display:flex;align-items:baseline;gap:20px;margin-bottom:12px}
.ing-num{font-family:var(--cond);font-size:2rem;font-weight:900;color:rgba(182,157,98,.08);line-height:1}
.ing-name{font-family:var(--cond);font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--gold)}
.ing-desc{font-size:.92rem;color:var(--text-dim-on-dark);line-height:1.7}

/* ========== ABOUT ========== */
.sc-about-text{background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.about-lead{margin-bottom:48px}
.about-lead .display-text{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(1.4rem,2.5vw,2rem);color:var(--text-dark);line-height:1.6}
.about-body p{font-size:1.1rem;line-height:2;margin-bottom:20px;color:var(--text-mid)}

.sc-values{background:var(--parch-mid);border-bottom:1px solid var(--parch-dark)}
.values-row{display:flex;margin-top:56px}
.value-item{flex:1;text-align:center;padding:48px 20px;border-right:1px solid var(--parch-dark);transition:background .4s}
.value-item:last-child{border-right:none}
.value-item:hover{background:var(--gold-dim)}
.value-num{display:block;font-family:var(--cond);font-size:2.5rem;font-weight:900;color:rgba(182,157,98,.08);margin-bottom:20px}
.value-name{font-family:var(--cond);font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:4px;color:var(--text-dark)}

.sc-about-gallery{padding:3px 0;background:var(--parchment)}
.about-gallery-grid{display:grid;grid-template-columns:1.5fr .5fr;grid-template-rows:1fr 1fr;gap:3px;height:80vh}
.ag-item{overflow:hidden}
.ag-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.ag-item:hover img{transform:scale(1.04)}
.ag-large{grid-row:1/3}

/* ========== CITES ========== */
.sc-cites-content{background:var(--parchment);border-bottom:1px solid var(--parch-mid)}
.cites-logo-row{text-align:center;margin-bottom:56px}
.cites-logo-lg{width:100px;margin:0 auto;opacity:.7}
.cites-intro-text{margin-bottom:56px}
.cites-intro-text .display-text{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(1.3rem,2vw,1.7rem);color:var(--text-dark);margin-bottom:24px;line-height:1.65}
.cites-block{margin-bottom:56px}
.cites-block h3{font-family:var(--cond);font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:4px;color:var(--gold);margin-bottom:20px}
.cites-block p{font-size:1.05rem;line-height:1.9;color:var(--text-mid)}
.cites-checks{margin-top:24px;display:flex;flex-direction:column;gap:12px}
.cites-check{display:flex;align-items:center;gap:18px;padding:20px 24px;background:var(--parch-mid);border-left:3px solid var(--gold);transition:background .3s}
.cites-check:hover{background:var(--gold-dim)}
.cites-check svg{color:var(--gold);flex-shrink:0}
.cites-check span{font-family:var(--serif);font-size:1rem;color:var(--text-dark)}
.cites-eu-block{margin-top:72px;padding:56px;background:var(--parch-mid);border:1px solid var(--parch-dark)}
.cites-eu-block h3{font-family:var(--cond);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:4px;color:var(--gold);margin-bottom:20px}
.cites-eu-block .body-lg{margin-bottom:28px;font-family:var(--serif);color:var(--text-mid)}

/* ========== CART DRAWER ========== */
.drawer-overlay{
    position:fixed;inset:0;z-index:2000;
    background:rgba(11,10,9,.6);backdrop-filter:blur(4px);
    opacity:0;pointer-events:none;
    transition:opacity .4s var(--ease);
}
.drawer-overlay.is-open{opacity:1;pointer-events:auto}
.drawer{
    position:fixed;top:0;right:0;bottom:0;z-index:2001;
    width:440px;max-width:92vw;
    background:var(--parchment);
    transform:translateX(100%);
    transition:transform .5s var(--ease);
    display:flex;flex-direction:column;
}
.drawer.is-open{transform:translateX(0)}
.drawer-header{
    display:flex;align-items:center;justify-content:space-between;
    padding:28px 32px;border-bottom:1px solid var(--parch-mid);
    flex-shrink:0;
}
.drawer-title{
    font-family:var(--cond);font-size:.85rem;font-weight:700;
    letter-spacing:4px;text-transform:uppercase;color:var(--text-dark);
}
.drawer-close{background:none;border:none;color:var(--text-mid);padding:4px;transition:color .3s}
.drawer-close:hover{color:var(--text-dark)}
.drawer-body{flex:1;overflow-y:auto;padding:24px 32px}
.drawer-empty{text-align:center;padding:48px 0}
.drawer-empty p{font-family:var(--serif);font-size:1.1rem;color:var(--text-mid)}
.drawer-items{}
.drawer-item{
    display:flex;align-items:center;gap:16px;
    padding:20px 0;border-bottom:1px solid var(--parch-mid);
}
.drawer-item-img{width:64px;height:64px;overflow:hidden;background:var(--parch-mid);flex-shrink:0}
.drawer-item-img img{width:100%;height:100%;object-fit:cover}
.drawer-item-info{flex:1}
.drawer-item-name{display:block;font-family:var(--cond);font-size:.82rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-dark)}
.drawer-item-variant{display:block;font-family:var(--cond);font-size:.65rem;color:var(--text-mid);letter-spacing:2px;text-transform:uppercase;margin-top:2px}
.drawer-item-qty{font-family:var(--serif);font-size:.88rem;color:var(--text-mid);margin-top:4px}
.drawer-item-price{font-family:var(--cond);font-size:1rem;font-weight:700;color:var(--gold);white-space:nowrap}
.drawer-item-remove{background:none;border:none;color:var(--parch-deep);padding:4px;transition:color .3s;cursor:pointer}
.drawer-item-remove:hover{color:#B44}
.drawer-footer{
    padding:24px 32px;border-top:1px solid var(--parch-mid);
    flex-shrink:0;background:var(--parch-mid);
}
.drawer-total{
    display:flex;justify-content:space-between;align-items:baseline;
    margin-bottom:20px;
}
.drawer-total span{font-family:var(--cond);font-size:.75rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-mid)}
.drawer-total strong{font-family:var(--cond);font-size:1.6rem;font-weight:800;color:var(--gold)}

/* ========== CHECKOUT (LIGHT) ========== */
.sc-checkout{padding-top:160px;padding-bottom:120px;min-height:80vh;background:var(--parchment)}
.co-header{margin-bottom:16px}
.co-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:64px}
.co-step{display:flex;align-items:center;gap:10px;padding:0 20px}
.co-step-num{
    width:32px;height:32px;border-radius:50%;
    border:1px solid var(--parch-dark);
    display:flex;align-items:center;justify-content:center;
    font-family:var(--cond);font-size:.75rem;font-weight:700;
    color:var(--text-mid);transition:all .3s;
}
.co-step.is-active .co-step-num{background:var(--gold);border-color:var(--gold);color:#fff}
.co-step-label{font-family:var(--cond);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-mid)}
.co-step.is-active .co-step-label{color:var(--text-dark)}
.co-step-line{width:48px;height:1px;background:var(--parch-dark)}

.co-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:64px;align-items:start}
.co-main{}
.co-section{margin-bottom:40px;padding:32px;background:#fff;border:1px solid var(--parch-mid)}
.co-section-title{
    display:flex;align-items:center;gap:12px;
    font-family:var(--cond);font-size:.82rem;font-weight:700;
    letter-spacing:3px;text-transform:uppercase;
    color:var(--text-dark);margin-bottom:24px;
    padding-bottom:16px;border-bottom:1px solid var(--parch-mid);
}
.co-section-icon{color:var(--gold)}
.co-field{margin-bottom:18px}
.co-field:last-child{margin-bottom:0}
.co-field label{
    display:block;font-family:var(--cond);font-size:.68rem;font-weight:700;
    letter-spacing:3px;text-transform:uppercase;color:var(--text-mid);margin-bottom:10px;
}
.co-field input,.co-field select,.co-field textarea{
    width:100%;padding:16px 20px;
    background:var(--parchment);border:1px solid var(--parch-dark);
    color:var(--text-dark);font-family:var(--serif);font-size:1rem;
    transition:all .3s;
}
.co-field input:focus,.co-field select:focus,.co-field textarea:focus{
    outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(182,157,98,.1);
}
.co-field input::placeholder,.co-field textarea::placeholder{color:var(--parch-deep);font-style:italic}
.co-field select{font-family:var(--sans);font-size:.95rem}
.co-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}

/* Order card (inside form) */
.co-order-card{
    margin-bottom:40px;padding:24px;
    background:var(--dark);color:var(--text-light-on-dark);
}
.co-card-title{
    display:flex;align-items:center;gap:10px;
    font-family:var(--cond);font-size:.75rem;font-weight:700;
    letter-spacing:3px;text-transform:uppercase;
    color:var(--gold);margin-bottom:20px;
}
.co-order-item{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--dark-line)}
.co-order-item:last-child{border-bottom:none}
.co-order-item-img{position:relative;width:56px;height:56px;overflow:hidden;background:var(--dark-card);flex-shrink:0}
.co-order-item-img img{width:100%;height:100%;object-fit:cover}
.co-order-item-qty{
    position:absolute;top:-6px;right:-6px;
    width:20px;height:20px;border-radius:50%;
    background:var(--gold);color:var(--dark);
    font-family:var(--cond);font-size:.6rem;font-weight:800;
    display:flex;align-items:center;justify-content:center;
}
.co-order-item-info{flex:1}
.co-order-item-name{display:block;font-family:var(--cond);font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#EDE6D6}
.co-order-item-variant{display:block;font-family:var(--cond);font-size:.6rem;color:var(--text-dim-on-dark);letter-spacing:2px;text-transform:uppercase;margin-top:2px}
.co-order-item-price{font-family:var(--cond);font-size:.95rem;font-weight:700;color:var(--gold);white-space:nowrap}

/* Sidebar */
.co-sidebar{position:sticky;top:160px}
.co-sidebar-card{background:var(--dark);padding:40px 32px;color:var(--text-light-on-dark)}
.co-sidebar-logo{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--dark-line)}
.co-sidebar-logo img{height:56px;margin:0 auto;filter:brightness(1.8)}
.co-sidebar-items{margin-bottom:24px}
.co-sidebar-item{
    display:flex;justify-content:space-between;align-items:center;
    padding:10px 0;font-size:.9rem;
}
.co-si-left{color:var(--text-light-on-dark);font-family:var(--serif)}
.co-si-qty{font-family:var(--cond);color:var(--text-dim-on-dark);margin-right:4px}
.co-si-price{font-family:var(--cond);font-weight:600;color:var(--gold)}
.co-sidebar-divider{height:1px;background:var(--dark-line);margin:8px 0 16px}
.co-sidebar-line{
    display:flex;justify-content:space-between;align-items:baseline;
    padding:6px 0;font-family:var(--cond);font-size:.78rem;
    letter-spacing:1px;color:var(--text-dim-on-dark);
}
.co-sidebar-line span:last-child{color:var(--text-light-on-dark);font-weight:600}
.co-sidebar-total{
    display:flex;justify-content:space-between;align-items:baseline;
    margin-top:14px;margin-bottom:28px;
    padding-top:14px;border-top:1px solid var(--dark-line);
}

/* Payment Options */
.co-payment-options{display:flex;flex-direction:column;gap:12px}
.co-payment-option{
    display:flex;align-items:center;gap:16px;
    padding:18px 22px;
    background:var(--parchment);
    border:1px solid var(--parch-dark);
    cursor:pointer;transition:all .3s var(--ease);
}
.co-payment-option input[type="radio"]{display:none}
.co-payment-option:hover{border-color:var(--gold)}
.co-payment-option.is-active{
    border-color:var(--gold);
    background:var(--gold-dim);
}
.co-payment-option.is-disabled{
    opacity:.4;cursor:not-allowed;pointer-events:none;
}
.co-payment-radio{
    width:18px;height:18px;border-radius:50%;
    border:1.5px solid var(--parch-dark);
    flex-shrink:0;position:relative;
    transition:all .3s;
}
.co-payment-option.is-active .co-payment-radio{
    border-color:var(--gold);
}
.co-payment-option.is-active .co-payment-radio::after{
    content:'';position:absolute;inset:3px;border-radius:50%;
    background:var(--gold);
}
.co-payment-info{flex:1;display:flex;flex-direction:column;gap:4px}
.co-payment-name{
    display:flex;align-items:center;gap:10px;
    font-family:var(--cond);font-size:.92rem;font-weight:700;
    letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dark);
}
.co-payment-name svg{color:var(--gold)}
.co-payment-desc{
    font-family:var(--serif);font-size:.88rem;font-style:italic;color:var(--text-mid);
}
.co-sidebar-total span{font-family:var(--cond);font-size:.72rem;letter-spacing:3px;text-transform:uppercase;color:var(--text-dim-on-dark)}
.co-sidebar-total strong{font-family:var(--cond);font-size:2rem;font-weight:900;color:var(--gold)}
.co-sidebar-trust{margin-top:24px;padding-top:20px;border-top:1px solid var(--dark-line)}
.co-trust-item{
    display:flex;align-items:center;gap:10px;
    font-family:var(--cond);font-size:.65rem;letter-spacing:2px;
    text-transform:uppercase;color:var(--text-dim-on-dark);
    padding:5px 0;
}
.co-trust-item svg{color:var(--gold);opacity:.6}

/* Success */
.success-section{min-height:70vh;display:flex;align-items:center;padding-top:120px;background:var(--parchment);text-align:center}
.success-icon{color:var(--gold);margin-bottom:28px}
.order-number{font-family:var(--cond);font-size:1.1rem;font-weight:700;color:var(--gold);letter-spacing:4px;margin-top:12px;margin-bottom:40px}

/* ========== FOOTER ========== */
.footer{background:var(--dark)}

/* -- Footer CTA band -- */
.footer-cta{
    padding:80px 0;
    background:var(--dark-warm);
    border-top:1px solid var(--dark-line);
    border-bottom:1px solid var(--dark-line);
}
.footer-cta-inner{
    display:flex;align-items:center;justify-content:space-between;gap:48px;
}
.footer-cta-text .overline{margin-bottom:12px}
.footer-cta-headline{
    font-family:var(--serif);font-style:italic;font-weight:300;
    font-size:clamp(1.1rem,1.8vw,1.4rem);
    color:var(--text-light-on-dark);line-height:1.7;max-width:520px;
}

/* -- Footer main -- */
.footer-main{padding:80px 0 60px}

.footer-brand{text-align:center;margin-bottom:0}
.footer-logo{
    height:80px;margin:0 auto 16px;
    filter:brightness(1.8) drop-shadow(0 0 12px rgba(182,157,98,.12));
}
.footer-tagline{
    font-family:var(--cond);font-size:.7rem;font-weight:600;
    letter-spacing:6px;text-transform:uppercase;
    color:var(--gold);opacity:.4;
}

.footer-divider{
    height:1px;background:var(--dark-line);
    margin:48px 0;
}

.footer-grid{
    display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:48px;
}
.footer-col h5{
    font-family:var(--cond);font-size:.65rem;font-weight:700;
    letter-spacing:4px;text-transform:uppercase;
    color:var(--gold);opacity:.5;margin-bottom:20px;
}
.footer-col a{
    display:block;font-family:var(--serif);font-size:.95rem;
    color:var(--text-dim-on-dark);padding:6px 0;transition:color .3s;
}
.footer-col a:hover{color:#EDE6D6}

.footer-social{display:flex;flex-direction:column;gap:4px}
.footer-social-link{
    display:flex;align-items:center;gap:10px;
    font-family:var(--serif)!important;
}
.footer-social-link svg{color:var(--gold);opacity:.5}
.footer-social-link:hover svg{opacity:1}
.footer-social-soon{font-family:var(--serif);font-size:.9rem;color:var(--text-dim-on-dark);font-style:italic;opacity:.4}

/* -- Certifications row -- */
.footer-certs{
    display:flex;align-items:center;justify-content:center;gap:48px;
}
.footer-cert{
    display:flex;align-items:center;gap:10px;
    font-family:var(--cond);font-size:.6rem;font-weight:600;
    letter-spacing:3px;text-transform:uppercase;
    color:var(--text-dim-on-dark);
}
.footer-cert svg{color:var(--gold);opacity:.4}
.footer-cert-img{height:24px;opacity:.35;filter:brightness(2.5)}

/* -- Bottom bar -- */
.footer-bottom{
    padding:24px 0;
    border-top:1px solid var(--dark-line);
}
.footer-bottom-inner{
    display:flex;align-items:center;justify-content:space-between;
    font-family:var(--cond);font-size:.6rem;
    letter-spacing:3px;text-transform:uppercase;
    color:var(--text-dim-on-dark);opacity:.35;
}
.footer-bottom-links{display:flex;gap:24px}
.footer-bottom-links a{color:inherit;transition:color .3s}
.footer-bottom-links a:hover{color:var(--gold);opacity:1}

/* ---- REVEAL ---- */
[data-reveal]{opacity:0;transform:translateY(50px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
[data-reveal].is-visible{opacity:1;transform:translateY(0)}

/* ---- RESPONSIVE ---- */
@media(max-width:1100px){
    .container{padding:0 32px}
    .nav-inner{margin:0 32px}
    .intro-layout{grid-template-columns:1fr;gap:48px}
    .usp-row{grid-template-columns:1fr 1fr}
    .usp-item:nth-child(2){border-right:none}
    .showcase-grid{grid-template-columns:1fr;min-height:auto}
    .showcase-img{height:60vh}
    .showcase-info{padding:60px 40px}
    .spotlight-grid{grid-template-columns:1fr;min-height:auto}
    .spotlight-image{height:50vh}
    .spotlight-content{padding:60px 40px}
    .product-grid{grid-template-columns:1fr}
    .product-info-wrap{padding:32px 32px 0}
    .ps-arrow{width:36px;height:36px}
    .ingredients-list{grid-template-columns:1fr}
    .ing-item{border-right:none}
    .mosaic-grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}
    .mosaic-tall{grid-row:auto}
    .mosaic-item{height:45vh}
    .video-layout{grid-template-columns:1fr}
    .ritual-steps{gap:24px}
    .values-row{flex-wrap:wrap}
    .value-item{flex:0 0 33.33%;border-bottom:1px solid var(--parch-dark)}
    .about-gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}
    .ag-large{grid-row:auto}
    .ag-item{height:50vh}
    .co-layout{grid-template-columns:1fr}
    .co-sidebar{position:static}
    .co-order-card{display:block}
    .footer-grid{grid-template-columns:1fr 1fr;gap:40px}
    .footer-cta-inner{flex-direction:column;text-align:center}
    .footer-certs{flex-wrap:wrap;gap:24px;justify-content:center}
    .numbers-row{flex-wrap:wrap}
    .number-divider{display:none}
    .number-item{flex:0 0 50%}
    .certs-row{flex-direction:column;gap:24px}
    .cert-divider{width:80px;height:1px}
    .spotlight-ingredients{grid-template-columns:1fr}
    .reviews-grid{grid-template-columns:1fr 1fr;gap:20px}
    .cites-bar-inner{padding:8px 12px;gap:20px}
    .cites-bar-text{gap:2px}
    .cites-bar-desc{font-size:.85rem}
}

@media(max-width:768px){
    .container{padding:0 20px}
    .nav{padding:0}
    .nav-inner{margin:0 20px;height:80px}
    .nav-center{display:none}
    .nav-hamburger{display:flex}
    .nav-switchers{display:none}
    .hero-title{letter-spacing:3px}
    .hero-actions{flex-direction:column;align-items:center;gap:12px}
    .hero-scroll{display:none}
    .product-info-wrap{padding:24px 20px 0}
    .ps-arrow{display:none}
    .ps-thumbs{display:none}
    .ps-dots{display:flex}
    .reviews-grid{grid-template-columns:1fr;gap:16px}
    .review-card{padding:24px 22px}
    .cites-bar-inner{flex-direction:column;text-align:center;gap:16px}
    .cites-bar-arrow{display:none}
    .bf-price-row{padding:18px 20px}
    .bf-price-amount{font-size:1.4rem}
    .sc-product-top{padding-top:100px}
    .bf-row{grid-template-columns:1fr auto;gap:12px}
    .co-steps{gap:0}
    .co-step-label{font-size:.6rem;letter-spacing:1px}
    .co-section{padding:24px 20px}
    .co-order-card{padding:20px 16px}
    .usp-row{grid-template-columns:1fr}
    .usp-item{border-right:none;border-bottom:1px solid var(--parch-mid)}
    .sc-fullimg{height:45vh}
    .gallery-strip-item{width:75vw;min-width:0}
    .ritual-steps{grid-template-columns:1fr;gap:48px}
    .values-row{flex-direction:column}
    .value-item{flex:auto;border-right:none}
    .cart-item{grid-template-columns:60px 1fr auto 32px;gap:12px}
    .cart-item-price,.cart-item-qty{display:none}
    .co-row,.co-row-3{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-bottom-inner{flex-direction:column;gap:12px;text-align:center}
    .footer-certs{flex-direction:column;align-items:center;gap:16px}
    .sc{padding:clamp(72px,10vw,120px) 0}
}

@media(max-width:480px){
    .hero-title{font-size:2.4rem}
    .hero-title .hero-accent{font-size:2.8rem}
    .bf-variant-btns{flex-direction:column}
    .cart-btns{flex-direction:column}
}
