/* ============================================
   Digital Cartel - Shared Stylesheet v12
   Clean Deck + Simple Preloader
   ============================================ */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
--bg:#FFFFFF;--bg-alt:#F7F6F2;--card:#FFFFFF;
--gold:#C5A059;--gold-h:#B8944E;--gold-bg:rgba(197,160,89,.07);--gold-border:rgba(197,160,89,.15);--gold-ink:#8A6D33;
--text:#1A1A18;--muted:#6E6D66;--border:#E2DDD4;
--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif;
--max:1200px;--ease:cubic-bezier(0.34,1.56,0.64,1);--r:12px;
--shadow:0 2px 16px rgba(0,0,0,.04);--shadow-h:0 12px 40px rgba(0,0,0,.08);
}

html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.65;overflow-x:hidden}

a{text-decoration:none;color:inherit;transition:color .2s}
img{max-width:100%;display:block}
.c{max-width:var(--max);margin:0 auto;padding:0 24px}

/* === SKIP NAV (Accessibility) === */
.skip-nav{position:absolute;top:-100%;left:16px;background:var(--gold);color:#fff;padding:10px 20px;border-radius:0 0 8px 8px;font-size:.85rem;font-weight:600;z-index:10000;transition:top .2s}
.skip-nav:focus{top:0}

/* === CINEMATIC PRELOADER === */
.cinema-loader{position:fixed;inset:0;z-index:9999;background:radial-gradient(ellipse at 50% 45%,#16140f 0%,#0e0e0c 72%);display:flex;align-items:center;justify-content:center;animation:clFade .7s 2.6s ease-out forwards}
.cl-mist{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse 60% 50% at 30% 58%,rgba(197,160,89,.18) 0%,transparent 60%),radial-gradient(ellipse 50% 42% at 70% 62%,rgba(197,160,89,.10) 0%,transparent 55%);animation:clSmoke 3.2s ease-out forwards}
.cl-mist-2{background:radial-gradient(ellipse 55% 45% at 62% 34%,rgba(197,160,89,.11) 0%,transparent 55%),radial-gradient(ellipse 42% 36% at 34% 32%,rgba(197,160,89,.08) 0%,transparent 50%);animation-delay:.25s;animation-duration:3.5s}
.cl-mist-3{background:radial-gradient(ellipse 48% 42% at 50% 72%,rgba(197,160,89,.09) 0%,transparent 55%);animation-delay:.5s;animation-duration:3.7s}
.cl-brand{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;opacity:0;animation:clBrand 1.5s .2s ease forwards}
.cl-crown-wrap{position:relative;display:flex;align-items:center;justify-content:center}
.cl-glow{position:absolute;top:50%;left:50%;width:210px;height:210px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(197,160,89,.30) 0%,rgba(197,160,89,.07) 42%,transparent 70%);animation:clGlow 2.6s ease-in-out infinite;pointer-events:none}
.cl-crown{position:relative;z-index:1}
.cl-divider{width:0;height:1px;margin:20px 0 14px;background:linear-gradient(90deg,transparent,rgba(197,160,89,.75),transparent);animation:clDiv 1s 1s ease forwards}
.cl-tag{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.15rem,4.5vw,1.6rem);font-weight:600;letter-spacing:.12em;color:#C5A059;text-align:center;opacity:0;transform:translateY(8px);text-shadow:0 2px 24px rgba(197,160,89,.28);animation:clTag 1.1s 1.15s ease forwards}
@keyframes clFade{to{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes clSmoke{0%{opacity:0;transform:translateY(28px) scale(.92)}25%{opacity:.9}100%{opacity:0;transform:translateY(-44px) scale(1.28)}}
@keyframes clBrand{0%{opacity:0;transform:translateY(12px) scale(.92)}45%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes clGlow{0%,100%{opacity:.45}50%{opacity:.95}}
@keyframes clDiv{to{width:180px}}
@keyframes clTag{to{opacity:1;transform:translateY(0)}}

/* === SCROLL REVEAL (Enhanced) === */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.reveal.vis{opacity:1;transform:none}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}.reveal-d3{transition-delay:.3s}.reveal-d4{transition-delay:.4s}
.reveal-scale{opacity:0;transform:scale(.92);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.reveal-scale.vis{opacity:1;transform:scale(1)}

/* === COUNTER ANIMATION === */
.counter{display:inline-block}

/* === GOLD PARTICLES (hero canvas) === */
.hero-particles{position:absolute;inset:0;z-index:0;pointer-events:none}

/* === PARALLAX === */
.parallax-wrap{overflow:hidden;position:relative}
.parallax-el{will-change:transform;transition:transform .1s linear}

/* === BUTTONS === */
.btn{display:inline-block;padding:15px 34px;border-radius:8px;font-family:var(--sans);font-weight:600;font-size:.9rem;cursor:pointer;border:none;transition:all .3s var(--ease);letter-spacing:.2px}
.btn-g{background:var(--gold);color:#fff}.btn-g:hover{background:var(--gold-h);transform:translateY(-2px);box-shadow:0 8px 24px rgba(197,160,89,.25)}
.btn-o{background:transparent;border:1.5px solid var(--border);color:var(--text)}.btn-o:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.btn-w{background:var(--bg-alt);color:var(--text);border:1px solid var(--border)}.btn-w:hover{border-color:var(--gold);transform:translateY(-2px)}

/* === NAV === */
.nav{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);transition:box-shadow .3s}
.nav-i{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:var(--max);margin:0 auto}
.nav-b{display:flex;align-items:center;gap:10px}
.nav-b svg{width:28px;height:28px;flex-shrink:0}
.nav-b span{font-family:var(--serif);font-weight:700;font-size:1.1rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--text)}
.nav-l{display:flex;align-items:center;gap:28px;list-style:none}
.nav-l a{font-size:.86rem;font-weight:500;color:var(--muted);transition:color .2s}.nav-l a:hover{color:var(--gold)}
.nav-l>li{position:relative}
.nav-r{display:flex;align-items:center;gap:16px}
.nav-em{font-size:.82rem;font-weight:600;color:var(--muted);transition:color .2s}.nav-em:hover{color:var(--gold)}
.nav-cta{padding:10px 22px;font-size:.82rem}

/* Nav Dropdown */
.nav-dd{position:absolute;top:100%;left:-12px;padding-top:8px;opacity:0;visibility:hidden;transform:translateY(4px);transition:all .25s ease;z-index:100}
.nav-dd ul{list-style:none;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:8px 0;box-shadow:var(--shadow-h);min-width:200px}
.nav-dd li a{display:block;padding:10px 18px;font-size:.84rem;font-weight:500;color:var(--text);transition:all .15s}
.nav-dd li a:hover{background:var(--gold-bg);color:var(--gold)}
.nav-l>li:hover .nav-dd{opacity:1;visibility:visible;transform:translateY(0)}

/* Mobile Menu */
.mob-t{display:none;background:0 0;border:0;cursor:pointer;padding:8px}
.mob-t span{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;transition:all .3s}
.mob-m{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg);z-index:999;padding:80px 24px 24px;flex-direction:column;gap:16px;overflow-y:auto}
.mob-m.act{display:flex}.mob-m a{font-size:1.05rem;font-weight:500;color:var(--text);padding:14px 0;border-bottom:1px solid var(--border)}
.mob-m .mob-sub{padding-left:16px}.mob-m .mob-sub a{font-size:.92rem;color:var(--muted);padding:10px 0}
.mob-x{position:absolute;top:20px;right:24px;background:0 0;border:0;font-size:1.8rem;cursor:pointer;color:var(--text)}

/* === HERO === */
.hero{padding:150px 24px 100px;position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bg-alt) 0%,var(--bg) 100%)}
.hero-w{display:grid;grid-template-columns:1fr 420px;gap:64px;align-items:center}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 18px;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:50px;font-size:.72rem;font-weight:700;color:var(--gold);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:28px}
.hero-badge::before{content:'';width:6px;height:6px;background:var(--gold);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.hero h1{font-family:var(--serif);font-size:clamp(2.6rem,5.5vw,4.5rem);font-weight:700;line-height:1.05;margin-bottom:22px;letter-spacing:-1px;color:var(--text)}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero-sub{font-size:1.02rem;color:var(--muted);max-width:540px;line-height:1.75;margin-bottom:32px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-form{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:32px 28px;box-shadow:var(--shadow)}
.hero-form h3{font-family:var(--sans);font-size:1.3rem;font-weight:700;margin-bottom:4px}
.hero-form p{font-size:.82rem;color:var(--muted);margin-bottom:20px}
.hero-form input{width:100%;padding:13px 16px;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;font-family:var(--sans);font-size:.86rem;color:var(--text);margin-bottom:10px;transition:border .2s}
.hero-form input::placeholder{color:#8f8d84}
.hero-form input:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(197,160,89,.1)}
.hero-form .btn{width:100%;text-align:center;margin-top:4px}
.hero-form .hf-note{font-size:.72rem;color:var(--muted);text-align:center;margin-top:10px}

/* === SUB-PAGE HERO === */
.sub-hero{padding:140px 24px 80px;background:linear-gradient(180deg,var(--bg-alt) 0%,var(--bg) 100%)}
.sub-hero-w{max-width:800px;margin:0 auto;text-align:center}
.sub-hero h1{font-family:var(--serif);font-size:clamp(2rem,4.5vw,3.4rem);font-weight:700;line-height:1.1;margin-bottom:20px;color:var(--text)}
.sub-hero p{font-size:1.02rem;color:var(--muted);line-height:1.75;max-width:640px;margin:0 auto 28px}
.sub-hero .hero-cta{justify-content:center}

/* === BREADCRUMB === */
.bc{padding:0 24px;margin-top:-20px;margin-bottom:20px}
.bc ol{list-style:none;display:flex;gap:8px;font-size:.78rem;color:var(--muted);max-width:var(--max);margin:0 auto}
.bc li+li::before{content:'/';margin-right:8px;color:var(--border)}
.bc a{color:var(--muted)}.bc a:hover{color:var(--gold)}
.bc .bc-cur{color:var(--text);font-weight:600}

/* === LOGO STRIP === */
.strip{padding:36px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg)}
.strip-l{text-align:center;font-size:.7rem;font-weight:600;color:var(--muted);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:18px}
.strip-r{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}
.strip-logo{display:flex;align-items:center;gap:10px;opacity:.45;transition:opacity .3s;height:36px}
.strip-logo:hover{opacity:1}
.strip-logo img{height:32px;width:auto;object-fit:contain}
.strip-logo span{font-family:var(--serif);font-size:1rem;font-weight:600;letter-spacing:.5px;color:var(--text)}

/* === SECTIONS === */
.sec{padding:96px 24px}
.sec-a{background:var(--bg-alt)}
.sec-lab{font-size:.72rem;font-weight:700;color:var(--gold-ink);letter-spacing:3px;text-transform:uppercase;margin-bottom:14px}
.sec-t{font-family:var(--serif);font-size:clamp(1.9rem,4vw,3rem);font-weight:700;line-height:1.12;margin-bottom:16px;color:var(--text)}
.sec-s{font-size:.98rem;color:var(--muted);max-width:580px;line-height:1.75}
.sec-h{text-align:center;margin-bottom:56px}.sec-h .sec-s{margin:0 auto}

/* === PAIN POINT === */
.pain{padding:96px 24px;background:var(--bg)}
.pain-w{max-width:740px;margin:0 auto;text-align:center}
.pain-w h2{font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:700;line-height:1.15;margin-bottom:24px;color:var(--text)}
.pain-w p{font-size:1rem;color:var(--muted);line-height:1.8;margin-bottom:16px}
.pain-w p:last-of-type{margin-bottom:32px}
.pain-w .btn{margin-top:8px}
.pain-hl{color:var(--gold-ink);font-weight:700}

/* === MARQUEE === */
.mq{overflow:hidden;padding:26px 0;background:#1A1A18}
.mq-t{display:flex;width:max-content;animation:mq 30s linear infinite}
.mq-t span{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--gold);letter-spacing:5px;text-transform:uppercase;white-space:nowrap;padding:0 28px}
.mq-t span::after{content:'\2022';margin-left:28px;color:rgba(197,160,89,.3);font-size:.7rem;vertical-align:middle}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.cd-marquee{position:relative;width:100%;overflow:hidden;padding:14px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.cd-track{display:flex;width:max-content;align-items:center;animation:cdScroll 34s linear infinite}
.cd-marquee:hover .cd-track{animation-play-state:paused}
.cd-logo{flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:70px;min-width:190px;padding:0 34px;opacity:.6;filter:grayscale(100%);transition:opacity .3s ease,filter .3s ease}
.cd-logo:hover,.cd-logo:focus-visible{opacity:1;filter:grayscale(0)}
.cd-logo img{max-height:48px;max-width:170px;width:auto;object-fit:contain;display:block}
.cd-name{display:none;align-items:center;font-family:var(--serif);font-size:1.4rem;font-weight:700;letter-spacing:1px;color:var(--gold);white-space:nowrap;text-shadow:0 2px 22px rgba(197,160,89,.3)}
@keyframes cdScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
/* Ecosystem showcase: STATIC 3-up grid (no scroll), full-colour transparent logos resting in a soft gold
   light-pool — no tiles — with the name underneath. Generous, even spacing. Lifts + glows on hover.
   Drop a colour/transparent logo at /assets/clients/{name}.png to swap the live-site fallback; a logo that
   is itself very dark may sit low-contrast on the dark stage — use a lighter/colour version if so. */
.eco-grid{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:clamp(36px,8vw,96px);padding:24px 0}
.eco-brand{display:flex;flex-direction:column;align-items:center;gap:20px;text-decoration:none;transition:transform .45s var(--ease)}
.eco-brand:hover,.eco-brand:focus-visible{transform:translateY(-7px)}
.eco-logo{position:relative;display:flex;align-items:center;justify-content:center;height:88px;width:200px}
.eco-logo::before{content:"";position:absolute;left:50%;top:50%;width:178%;height:155%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(197,160,89,.16) 0%,rgba(197,160,89,.04) 46%,transparent 70%);opacity:.55;transition:opacity .45s ease;pointer-events:none}
.eco-brand:hover .eco-logo::before{opacity:1}
.eco-logo img,.eco-logo svg{position:relative;max-height:62px;max-width:184px;width:auto;object-fit:contain}
.eco-name{font-family:var(--serif);font-size:1.2rem;font-weight:600;letter-spacing:.6px;color:var(--gold);position:relative;padding-bottom:9px}
.eco-name::after{content:"";position:absolute;bottom:0;left:50%;width:0;height:1px;background:var(--gold);transform:translateX(-50%);transition:width .45s var(--ease)}
.eco-brand:hover .eco-name::after{width:36px}

/* === SERVICES === */
.srv-g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.srv-c{background:var(--card);border:1px solid var(--border);border-top:3px solid var(--gold);border-radius:var(--r);padding:40px 28px;transition:all .4s var(--ease);box-shadow:var(--shadow)}
.srv-c:hover{transform:translateY(-6px);box-shadow:var(--shadow-h);border-color:var(--gold-border);border-top-color:var(--gold)}
.srv-i{width:54px;height:54px;background:var(--gold);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.srv-i svg{width:24px;height:24px}
.srv-c h3{font-family:var(--sans);font-size:1.3rem;font-weight:700;margin-bottom:12px}
.srv-c p{font-size:.95rem;color:var(--muted);line-height:1.7;margin-bottom:18px}
.srv-l{font-size:.82rem;font-weight:600;color:var(--gold-ink);display:inline-flex;align-items:center;gap:6px;transition:gap .3s}.srv-l:hover{gap:10px}

/* === WAR ROOM HERO === */
.hero-grid{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(197,160,89,.018) 0px,transparent 1px,transparent 60px),repeating-linear-gradient(90deg,rgba(197,160,89,.018) 0px,transparent 1px,transparent 60px);mask-image:radial-gradient(ellipse at 50% 50%,black 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black 20%,transparent 70%);pointer-events:none;z-index:0}
.hero-bloom{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(197,160,89,.06) 0%,transparent 70%);top:10%;left:8%;pointer-events:none;z-index:0;animation:bloomPulse 10s ease-in-out infinite alternate}
.hero-bloom-r{left:auto;right:5%;top:auto;bottom:5%;width:350px;height:350px;background:radial-gradient(circle,rgba(197,160,89,.035) 0%,transparent 70%);animation-duration:13s;animation-direction:alternate-reverse}
@keyframes bloomPulse{0%{transform:translate(0,0) scale(1);opacity:.4}100%{transform:translate(15px,-10px) scale(1.12);opacity:1}}

/* === WHITEBOARD MATRIX === */
.wb-matrix{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.8;mask-image:radial-gradient(ellipse at 50% 50%,black 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black 30%,transparent 75%)}
.wb-matrix svg{width:100%;height:100%}

/* === THE CARTEL DECK === */
.deck-wrap{position:relative;padding:40px 0 60px}
.deck-glow{position:absolute;width:760px;height:340px;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(197,160,89,.1) 0%,rgba(197,160,89,.03) 45%,transparent 72%);filter:blur(46px);pointer-events:none}
.boardroom{background:#0a0a09;overflow:hidden}
.boardroom::after{display:none}
.br-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.br-photo{position:absolute;inset:-3%;background:url('/assets/boardroom.jpg') center center/cover no-repeat,#0a0a09;animation:brZoom 30s ease-in-out infinite alternate}
.br-veil{position:absolute;inset:0;background:radial-gradient(115% 78% at 50% 6%,rgba(197,160,89,.10) 0%,transparent 55%),linear-gradient(180deg,rgba(12,11,9,.52) 0%,rgba(8,8,7,.72) 100%),radial-gradient(130% 100% at 50% 42%,transparent 44%,rgba(0,0,0,.55) 100%)}
.br-board{display:none}
.br-board svg{width:100%;height:auto;display:block}
.br-chart{stroke-dasharray:640;stroke-dashoffset:640;animation:brDraw 2.6s .5s ease forwards}
@keyframes brDraw{to{stroke-dashoffset:0}}
.boardroom>.c{position:relative;z-index:2}
@keyframes brZoom{0%{transform:scale(1)}100%{transform:scale(1.07)}}
.deck-track{display:flex;gap:24px;justify-content:center;align-items:stretch;padding:20px 0;flex-wrap:wrap}
.deck-card{position:relative;width:340px;max-width:100%;background:linear-gradient(165deg,#1C1C19 0%,#131311 100%);border:1px solid rgba(197,160,89,.12);border-radius:20px;padding:36px 28px 30px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:default;transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;box-shadow:0 8px 32px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.2)}
.deck-card:hover{transform:translateY(-12px);box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 30px rgba(197,160,89,.1);border-color:rgba(197,160,89,.25)}
.dc-corner{position:absolute;font-family:var(--serif);font-size:.52rem;font-weight:700;letter-spacing:2.5px;color:rgba(197,160,89,.12);transition:color .4s ease}
.dc-tl{top:14px;left:16px}.dc-br{bottom:14px;right:16px;transform:rotate(180deg)}
.deck-card:hover .dc-corner{color:rgba(197,160,89,.3)}
.dc-crest{width:68px;height:68px;margin:8px auto 20px;border-radius:50%;border:1px solid rgba(197,160,89,.1);display:flex;align-items:center;justify-content:center;background:rgba(197,160,89,.025);transition:border-color .4s ease,box-shadow .4s ease}
.dc-crest svg{width:28px;height:28px}
.deck-card:hover .dc-crest{border-color:rgba(197,160,89,.25);box-shadow:0 0 20px rgba(197,160,89,.08)}
.dc-type{font-size:.66rem;font-weight:700;color:var(--gold);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:10px}
.dc-name{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:16px;line-height:1.2;letter-spacing:.3px}
.dc-rule{width:32px;height:1px;background:rgba(197,160,89,.15);margin:0 auto 16px;transition:width .4s ease,background .4s ease}
.deck-card:hover .dc-rule{width:56px;background:rgba(197,160,89,.35)}
.dc-metric{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:var(--gold);line-height:1}
.dc-metric-l{font-size:.66rem;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:1.5px;margin-top:4px}
.dc-brief{font-size:.78rem;color:rgba(255,255,255,.68);line-height:1.65;margin:14px 0 auto;padding:0 4px}
.dc-stamp{margin-top:18px;font-size:.6rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(197,160,89,.15);padding:4px 12px;border:1px solid rgba(197,160,89,.06);border-radius:14px;transition:color .4s ease,border-color .4s ease}
.deck-card:hover .dc-stamp{color:rgba(197,160,89,.35);border-color:rgba(197,160,89,.15)}
.dc-link{display:block;margin-top:8px;font-size:.7rem;font-weight:600;color:var(--gold);letter-spacing:.5px;opacity:.5;transition:opacity .4s ease,letter-spacing .4s ease}
.deck-card:hover .dc-link{opacity:1;letter-spacing:1.2px}

/* === WHY US (replaces Differentiator) === */
.why-g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.why-c{text-align:center;padding:32px 20px}
.why-ic{width:56px;height:56px;background:var(--gold-bg);border:1px solid var(--gold-border);border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.why-ic svg{width:24px;height:24px}
.why-c h4{font-family:var(--sans);font-size:1.15rem;font-weight:700;margin-bottom:10px}
.why-c p{font-size:.95rem;color:var(--muted);line-height:1.7}

/* === DIFFERENTIATOR === */
.diff{padding:96px 24px;background:var(--bg-alt)}
.diff-w{max-width:800px;margin:0 auto}
.diff-w h2{font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:700;line-height:1.12;margin-bottom:28px;text-align:center}
.diff-w>p{font-size:.95rem;color:var(--muted);line-height:1.85;margin-bottom:20px}
.diff-w>p:last-of-type{margin-bottom:0}
.diff-closer{font-family:var(--serif);font-size:1.2rem;color:var(--text);font-weight:600;margin-top:28px;padding-top:28px;border-top:1px solid var(--border);text-align:center}

/* === HOW WE WORK === */
.hw-g{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.hw-c{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:32px 24px;text-align:center;transition:all .4s var(--ease);box-shadow:var(--shadow);position:relative}
.hw-c:hover{transform:translateY(-4px);box-shadow:var(--shadow-h);border-color:var(--gold-border)}
.hw-num{font-family:var(--serif);font-size:2.2rem;font-weight:700;color:var(--gold);margin-bottom:8px;line-height:1}
.hw-c h4{font-family:var(--sans);font-size:1.1rem;font-weight:700;margin-bottom:10px}
.hw-c p{font-size:.92rem;color:var(--muted);line-height:1.65}

/* === PACKAGES === */
.pk-tabs{display:flex;justify-content:center;gap:6px;margin-bottom:48px;flex-wrap:wrap}
.pk-tab{padding:10px 24px;border-radius:50px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:all .3s}
.pk-tab:hover{border-color:var(--gold);color:var(--gold)}
.pk-tab.act{background:var(--gold);color:#fff;border-color:var(--gold)}
.pk-pan{display:none}.pk-pan.act{display:block}
.pk-g{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pk-g2{grid-template-columns:repeat(2,1fr);max-width:800px;margin:0 auto}
.pk-c{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:32px 24px;position:relative;transition:all .4s var(--ease);box-shadow:var(--shadow)}
.pk-c:hover{transform:translateY(-6px);box-shadow:var(--shadow-h)}
.pk-c.ft{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),var(--shadow)}
.pk-c.ft::before{content:'MOST POPULAR';position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--gold);color:#fff;font-size:.68rem;font-weight:700;padding:4px 14px;border-radius:50px;letter-spacing:1px}
.pk-n{font-family:var(--sans);font-size:1.2rem;font-weight:700;margin-bottom:18px}
.pk-f{list-style:none;margin-bottom:24px;display:flex;flex-direction:column;gap:8px}
.pk-f li{font-size:.9rem;color:var(--muted);display:flex;align-items:flex-start;gap:8px;line-height:1.45}
.pk-f li::before{content:'\2713';color:var(--gold);font-weight:700;flex-shrink:0;margin-top:1px;font-size:.8rem}
.pk-p{font-family:var(--serif);font-size:2.2rem;font-weight:700;margin-bottom:2px}
.pk-ps{font-size:.78rem;color:var(--muted);margin-bottom:4px}
.pk-su{font-size:.78rem;color:var(--gold-ink);font-weight:600;margin-bottom:18px}
.pk-nt{font-size:.72rem;color:var(--muted);margin-bottom:18px}
.pk-c .btn{width:100%;text-align:center}

/* === GUARANTEE === */
.guar{padding:96px 24px;background:var(--bg)}
.guar-w{max-width:760px;margin:0 auto;text-align:center}
.guar-w h2{font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.6rem);font-weight:700;line-height:1.12;margin-bottom:28px}
.guar-w>p{font-size:.95rem;color:var(--muted);line-height:1.85;margin-bottom:18px;text-align:left}
.guar-box{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r);padding:28px 32px;margin:32px 0;text-align:left}
.guar-box p{font-size:.9rem;color:var(--text);line-height:1.8;margin-bottom:0}

/* === FAQ === */
.fq-l{max-width:760px;margin:0 auto}
.fq-i{border-bottom:1px solid var(--border)}
.fq-q{display:flex;align-items:center;justify-content:space-between;padding:20px 0;cursor:pointer;font-size:.95rem;font-weight:600;gap:16px;transition:color .2s}
.fq-q:hover{color:var(--gold)}
.fq-q::after{content:'+';font-size:1.3rem;color:var(--gold);transition:transform .3s;flex-shrink:0}
.fq-i.op .fq-q::after{transform:rotate(45deg)}
.fq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.fq-i.op .fq-a{max-height:400px}
.fq-a p{padding:0 0 20px;font-size:.95rem;color:var(--muted);line-height:1.75}

/* === CONTACT === */
.ct-g{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.ct-info h3{font-family:var(--serif);font-size:1.8rem;font-weight:700;margin-bottom:16px}
.ct-info>p{font-size:.95rem;color:var(--muted);line-height:1.75;margin-bottom:24px}
.ct-det{display:flex;flex-direction:column;gap:14px}
.ct-det a{display:flex;align-items:center;gap:10px;font-size:.88rem;color:var(--muted);transition:color .2s}
.ct-det a:hover{color:var(--gold)}
.ct-det svg{width:18px;height:18px;flex-shrink:0}
.fm{display:flex;flex-direction:column;gap:12px;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r);padding:32px}
.fm-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fm input,.fm textarea{width:100%;padding:13px 16px;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-family:var(--sans);font-size:.86rem;color:var(--text);transition:border .2s,box-shadow .2s}
.fm input::placeholder,.fm textarea::placeholder{color:#8f8d84}
.fm input:focus,.fm textarea:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(197,160,89,.1)}
.fm textarea{resize:vertical;min-height:90px}
.form-ok{text-align:center;padding:24px;color:var(--gold);font-family:var(--serif);font-size:1.15rem;font-weight:600}

/* === CALENDAR EMBED === */
.cal-embed{background:var(--card);border:1px solid var(--border);border-radius:var(--r);min-height:600px;width:100%;overflow:hidden;box-shadow:var(--shadow)}

/* === GEO LIST (Location pages) === */
.geo-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;margin-top:20px;font-size:.88rem;color:var(--muted)}
.geo-list li{padding:8px 0}

/* === CONTENT PROSE (Sub-pages) === */
.prose{max-width:800px;margin:0 auto}
.prose h2{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;margin:48px 0 16px;color:var(--text)}
.prose h3{font-family:var(--serif);font-size:1.2rem;font-weight:700;margin:32px 0 12px;color:var(--text)}
.prose p{font-size:.95rem;color:var(--muted);line-height:1.85;margin-bottom:18px}
.prose p strong{color:var(--text);font-weight:600}

/* === CROSS-SELL === */
.cross{text-align:center;padding:64px 24px;background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.cross h2{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;margin-bottom:12px}
.cross p{font-size:.95rem;color:var(--muted);margin-bottom:28px;max-width:540px;margin-left:auto;margin-right:auto}
.cross .hero-cta{justify-content:center}

/* === FOOTER === */
.ft{border-top:1px solid var(--border);padding:48px 24px 20px;background:var(--bg-alt)}
.ft-i{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;max-width:var(--max);margin:0 auto;flex-wrap:wrap}
.ft-b{max-width:300px}
.ft-b p{font-size:.82rem;color:var(--muted);line-height:1.65;margin-top:12px}
.ft-ls{display:flex;gap:40px}
.ft-col h4{font-size:.7rem;font-weight:700;color:var(--gold-ink);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px}
.ft-col a{display:block;font-size:.82rem;color:var(--muted);padding:3px 0;transition:color .2s}.ft-col a:hover{color:var(--gold)}
.ft-bt{text-align:center;padding-top:28px;margin-top:28px;border-top:1px solid var(--border);font-size:.72rem;color:rgba(26,26,24,.3);max-width:var(--max);margin-left:auto;margin-right:auto}

/* === STICKY MOBILE CTA === */
.mob-cta{position:fixed;bottom:0;left:0;right:0;background:var(--bg);border-top:1px solid var(--border);padding:12px 24px;z-index:900;display:none;box-shadow:0 -4px 20px rgba(0,0,0,.06)}
.mob-cta .btn{width:100%;text-align:center;padding:14px}

/* === BACK TO TOP === */
.btt{position:fixed;bottom:72px;right:24px;width:40px;height:40px;background:var(--gold);color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s;z-index:800;box-shadow:0 4px 12px rgba(197,160,89,.3)}
.btt.vis{opacity:1;visibility:visible}
.btt:hover{background:var(--gold-h);transform:translateY(-2px)}

/* === COOKIE CONSENT === */
.cookie{position:fixed;bottom:0;left:0;right:0;background:var(--text);color:rgba(255,255,255,.85);padding:16px 24px;z-index:950;display:none;font-size:.82rem;line-height:1.5}
.cookie.vis{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.cookie a{color:var(--gold);text-decoration:underline}
.cookie button{background:var(--gold);color:#fff;border:none;padding:8px 20px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap}

/* === DARK HERO === */
.hero-dark{background:linear-gradient(135deg,#111110 0%,#1e1c17 45%,#171614 100%);position:relative}
.hero-dark::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 10%,rgba(197,160,89,.08) 0%,transparent 55%);pointer-events:none}
.hero-dark .c,.hero-dark .sub-hero-w{position:relative;z-index:1}
.hero-dark h1{color:#fff}
.hero-dark h1 em{color:var(--gold)}
.hero-dark .hero-sub{color:rgba(255,255,255,.7)}
.hero-dark p{color:rgba(255,255,255,.55)}
.hero-dark .hero-badge{background:rgba(197,160,89,.12);border-color:rgba(197,160,89,.3)}
.hero-dark .btn-o{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.9)}
.hero-dark .btn-o:hover{border-color:var(--gold);color:var(--gold)}
.hero-dark .hero-form{box-shadow:0 12px 48px rgba(0,0,0,.25)}
.hero-dark .hero-form h3{color:var(--text)}
.hero-dark .hero-form p{color:var(--muted)}
.hero-dark .hero-form input{color:var(--text)}
.hero-dark .hero-form .hf-note{color:var(--muted)}

/* Sub-Hero Dark */
.sub-hero.hero-dark{background:linear-gradient(135deg,#111110 0%,#1e1c17 45%,#171614 100%);position:relative}
.sub-hero.hero-dark::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 60% 10%,rgba(197,160,89,.06) 0%,transparent 50%);pointer-events:none}
.sub-hero.hero-dark h1{color:#fff}
.sub-hero.hero-dark p{color:rgba(255,255,255,.7)}
.sub-hero.hero-dark .hero-badge{background:rgba(197,160,89,.12);border-color:rgba(197,160,89,.3)}
.sub-hero.hero-dark .hero-cta{position:relative;z-index:1}
.sub-hero.hero-dark .btn-o{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.9)}
.sub-hero.hero-dark .btn-o:hover{border-color:var(--gold);color:var(--gold)}

/* === DARK SECTIONS === */
.sec-d{background:#111110;position:relative}
.sec-d::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(197,160,89,.04) 0%,transparent 60%);pointer-events:none}
.sec-d .c{position:relative;z-index:1}
.sec-d .sec-lab{color:var(--gold)}
.sec-d .sec-t{color:#fff}
.sec-d .sec-s{color:rgba(255,255,255,.6)}
.sec-d .why-c h4{color:#fff}
.sec-d .why-c p{color:rgba(255,255,255,.6)}
.sec-d .why-ic{background:rgba(197,160,89,.08);border-color:rgba(197,160,89,.18)}
.sec-d .hw-c{border-color:rgba(255,255,255,.06)}
.sec-d .hw-c:hover{box-shadow:0 16px 48px rgba(0,0,0,.3);border-color:var(--gold-border)}
.sec-d p{color:rgba(255,255,255,.6)}
.sec-d a.srv-l{color:var(--gold)}
.sec-d .btn-o{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.9)}
.sec-d .btn-o:hover{border-color:var(--gold);color:var(--gold)}

/* Dark Guarantee */
.guar.sec-d{background:#111110}
.guar.sec-d .sec-lab{color:var(--gold)}
.guar.sec-d h2{color:#fff}
.guar.sec-d .guar-w>p{color:rgba(255,255,255,.65)}
.guar.sec-d .guar-box{background:rgba(197,160,89,.05);border-color:rgba(197,160,89,.15)}
.guar.sec-d .guar-box p{color:rgba(255,255,255,.8)}

/* Proof cards as links */
a.deck-card{cursor:pointer}

/* Guarantee: scannable promise + expandable full terms */
.guar.sec-d .guar-w>p strong{color:#fff}
.guar-details{max-width:680px;margin:6px auto 22px;text-align:left;border-top:1px solid rgba(197,160,89,.18)}
.guar-details summary{cursor:pointer;list-style:none;padding:18px 2px;font-size:.92rem;font-weight:700;color:var(--gold);letter-spacing:.3px;display:flex;align-items:center}
.guar-details summary::-webkit-details-marker{display:none}
.guar-details summary::after{content:'+';margin-left:auto;font-size:1.3rem;line-height:1}
.guar-details[open] summary::after{content:'\2212'}
.guar-details>p{font-size:.9rem;color:rgba(255,255,255,.65);line-height:1.85;margin:0 0 16px;text-align:left}
.guar-details .guar-box{margin:16px 0 4px}

/* === DARK FOOTER === */
.ft.ft-d{background:#111110;border-top:1px solid rgba(197,160,89,.12)}
.ft.ft-d .nav-b span{color:#fff}
.ft.ft-d .nav-b svg polygon,.ft.ft-d .nav-b svg rect{fill:var(--gold)}
.ft.ft-d .ft-b p{color:rgba(255,255,255,.45)}
.ft.ft-d .ft-col h4{color:var(--gold)}
.ft.ft-d .ft-col a{color:rgba(255,255,255,.45)}
.ft.ft-d .ft-col a:hover{color:var(--gold)}
.ft.ft-d .ft-bt{color:rgba(255,255,255,.18);border-top-color:rgba(255,255,255,.06)}

/* Gold top accent on strip */
.strip-g{border-top:2px solid var(--gold)}

/* Enhanced dark section prose */
.sec-d .prose h2{color:#fff}
.sec-d .prose h3{color:rgba(255,255,255,.9)}
.sec-d .prose p{color:rgba(255,255,255,.6)}
.sec-d .prose p strong{color:#fff}

/* Dark diff section */
.diff.sec-d{background:#111110}
.diff.sec-d h2{color:#fff}
.diff.sec-d p{color:rgba(255,255,255,.65)}
.diff.sec-d .diff-closer{color:#fff;border-top-color:rgba(255,255,255,.08)}

/* Dark cross-sell */
.cross.sec-d{background:#111110;border-top-color:rgba(197,160,89,.1);border-bottom-color:rgba(197,160,89,.1)}
.cross.sec-d h2{color:#fff}
.cross.sec-d p{color:rgba(255,255,255,.6)}

/* Dark FAQ */
.sec-d .fq-i{border-bottom-color:rgba(255,255,255,.08)}
.sec-d .fq-q{color:rgba(255,255,255,.9)}
.sec-d .fq-q:hover{color:var(--gold)}
.sec-d .fq-a p{color:rgba(255,255,255,.6)}

/* Dark contact section */
.sec-d .ct-info h3{color:#fff}
.sec-d .ct-info>p{color:rgba(255,255,255,.65)}
.sec-d .ct-det a{color:rgba(255,255,255,.5)}
.sec-d .ct-det a:hover{color:var(--gold)}
.sec-d .fm{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}
.sec-d .fm input,.sec-d .fm textarea{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#fff}
.sec-d .fm input::placeholder,.sec-d .fm textarea::placeholder{color:rgba(255,255,255,.48)}
.sec-d .fm input:focus,.sec-d .fm textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(197,160,89,.1)}
.sec-d .form-ok{color:var(--gold)}

/* === RESPONSIVE === */
@media(max-width:1024px){
.hero-w{grid-template-columns:1fr;gap:40px;text-align:center}
.hero-sub{margin-left:auto;margin-right:auto}
.hero-cta{justify-content:center}
.hero-form{max-width:440px;margin:0 auto}
.srv-g{grid-template-columns:repeat(2,1fr)}
.deck-track{gap:20px}.deck-card{width:280px;padding:30px 20px 26px}.dc-name{font-size:1.3rem}.dc-metric{font-size:2rem}
.why-g{grid-template-columns:1fr}
.pk-g,.pk-g2{grid-template-columns:1fr}
.hw-g{grid-template-columns:repeat(2,1fr)}
.ct-g{grid-template-columns:1fr}
.geo-list{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:768px){
.nav-l,.nav-r{display:none}.mob-t{display:block}
.hero,.sub-hero{padding:120px 24px 70px}
.sec,.pain,.diff,.guar,.cross{padding:64px 24px}
.hero-cta{flex-direction:column;align-items:center}
.strip-r{gap:24px}
.srv-g,.hw-g,.why-g{grid-template-columns:1fr}
.deck-track{flex-direction:column;align-items:center;gap:24px}.deck-card{width:100%;max-width:340px}.deck-card:hover{transform:translateY(-8px)}.deck-glow{display:none}
.hero-bloom,.hero-bloom-r,.hero-grid,.wb-matrix{display:none}
.ft-i{flex-direction:column}.ft-ls{flex-direction:column;gap:24px}
.fm-row{grid-template-columns:1fr}
.fm{padding:20px}
.guar-box{padding:20px 18px}
.geo-list{grid-template-columns:repeat(2,1fr)}
.mob-cta.vis{display:block}
.btt{bottom:80px}
}

/* === ACCESSIBILITY === */
*:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
.reveal{opacity:1;transform:none}
.mq-t,.cd-track{animation:none}
.cinema-loader{display:none}
}

/* === PRINT === */
@media print{
.nav,.mob-m,.mob-cta,.btt,.cookie,.mq,footer{display:none !important}
body{color:#000;background:#fff;font-size:12pt}
.sec,.hero,.sub-hero{padding:20pt 0}
a[href]::after{content:" (" attr(href) ")";font-size:9pt;color:#666}
.reveal{opacity:1;transform:none}
h1{page-break-after:avoid}
}

/* === v16: phone, call bar, guarantee badge === */
.nav-ph{font-size:.84rem;font-weight:700;color:var(--gold-ink);white-space:nowrap}
.nav-ph:hover{color:var(--gold-h)}
.pk-gu{font-size:.76rem;font-weight:600;color:var(--gold-ink);margin:-8px 0 16px;line-height:1.5}
.pk-gu::before{content:'\2713  '}
.mob-cta-row{display:flex;gap:10px}
.mob-cta-row .btn{flex:1;width:auto;padding:14px 0;text-align:center}
.hf-call{display:block;text-align:center;font-size:.8rem;font-weight:600;color:var(--gold-ink);margin-top:10px}
.hf-call:hover{color:var(--gold-h)}

/* === FOUNDER BLOCK === */
.fdr-w{display:grid;grid-template-columns:280px 1fr;gap:56px;align-items:center;max-width:980px;margin:0 auto}
.fdr-photo{position:relative;width:280px;height:280px}
.fdr-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:3px solid var(--gold-border);box-shadow:var(--shadow-h)}
.fdr-ph-fallback{display:none;width:100%;height:100%;border-radius:50%;border:2px solid var(--gold-border);background:var(--gold-bg);align-items:center;justify-content:center}
.fdr-body .sec-t{margin-bottom:18px}
.fdr-body p{font-size:.98rem;color:var(--muted);line-height:1.8;margin-bottom:16px}
.fdr-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
@media(max-width:768px){.fdr-w{grid-template-columns:1fr;text-align:center;gap:28px}.fdr-photo{margin:0 auto;width:200px;height:200px}.fdr-cta{justify-content:center}}

/* === SERVICES v2: dark, informative === */
.srv-dark{background:#111110;position:relative;overflow:hidden}
.srv-bg{position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,rgba(197,160,89,.025) 0 1px,transparent 1px 56px),repeating-linear-gradient(90deg,rgba(197,160,89,.025) 0 1px,transparent 1px 56px);mask-image:radial-gradient(ellipse at 50% 30%,black 25%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 30%,black 25%,transparent 75%)}
.srv-bg::after{content:'';position:absolute;width:520px;height:520px;left:50%;top:-160px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(197,160,89,.10) 0%,transparent 70%)}
.srv-dark .c{position:relative;z-index:1}
.srv-dark .sec-lab{color:var(--gold)}
.srv-dark .sec-t{color:#fff}
.srv-dark .sec-s{color:rgba(255,255,255,.66)}
.srv-c2{background:linear-gradient(165deg,#1C1C19 0%,#131311 100%);border:1px solid rgba(197,160,89,.14);border-top:3px solid var(--gold);box-shadow:0 8px 32px rgba(0,0,0,.35);display:flex;flex-direction:column}
.srv-c2:hover{border-color:rgba(197,160,89,.3);border-top-color:var(--gold);box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 30px rgba(197,160,89,.08)}
.srv-c2 .srv-k{font-size:.7rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.srv-c2 h3{color:#fff;font-size:1.25rem}
.srv-c2 p{color:rgba(255,255,255,.66)}
.srv-inc{list-style:none;margin:0 0 14px;display:flex;flex-direction:column;gap:7px}
.srv-inc li{font-size:.88rem;color:rgba(255,255,255,.78);line-height:1.5;display:flex;gap:9px;align-items:flex-start}
.srv-inc li::before{content:'\2713';color:var(--gold);font-weight:700;flex-shrink:0;font-size:.82rem;margin-top:1px}
.srv-fit{font-size:.82rem;color:rgba(255,255,255,.5);font-style:italic;margin-bottom:12px;line-height:1.5}
.srv-tl{display:inline-block;align-self:flex-start;font-size:.72rem;font-weight:700;color:var(--gold);letter-spacing:.5px;border:1px solid rgba(197,160,89,.35);border-radius:20px;padding:4px 12px;margin-bottom:12px}
.srv-pr{font-family:var(--serif);font-size:1.7rem;font-weight:700;color:var(--gold);margin:auto 0 14px;line-height:1.1}
.srv-pr span{font-family:var(--sans);font-size:.82rem;font-weight:500;color:rgba(255,255,255,.5)}
.srv-dark .srv-l{color:var(--gold)}
.srv-note{text-align:center;font-size:.8rem;color:rgba(255,255,255,.45);margin-top:34px}
.srv-note a{color:var(--gold);font-weight:600}

.srv-c2{position:relative}
.srv-badge{position:absolute;top:-13px;left:24px;background:var(--gold);color:#241C0D;font-size:.66rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:5px 14px;border-radius:20px}


/* === ECO polish: dark CTA, no panel === */
.btn-dk{background:#1A1A18;color:#F5F2EA}
.btn-dk:hover{background:#3a3320;color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px rgba(26,26,24,.25)}
.eco-tree{padding:120px 24px 110px}
.eco-tree .sec-h{margin-bottom:60px}
.eco-tree p.reveal{margin-top:48px!important}
@media(max-width:768px){.eco-tree{padding:80px 20px 70px}.eco-tree .sec-h{margin-bottom:40px}}

/* === FINAL POLISH v17 === */
section[id]{scroll-margin-top:76px}
::selection{background:rgba(197,160,89,.28);color:var(--text)}
.founder{background:var(--bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sec-t{text-wrap:balance}
.hero h1{text-wrap:balance}

/* === ECOSYSTEM — layered scene (robust at all sizes) === */
.eco-tree{position:relative;overflow:hidden;background:linear-gradient(180deg,#FDFCF9 0%,#F8F4E9 62%,#F5EFDE 100%)}
.eco-tree::before{content:'';position:absolute;left:50%;bottom:-40%;width:130%;height:90%;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(197,160,89,.12) 0%,transparent 65%);pointer-events:none}
.eco-bg{position:absolute;inset:0;pointer-events:none}
.eco-land{position:absolute;left:0;right:0;bottom:0;width:100%;height:min(400px,52%)}
.eco-board{position:absolute;top:84px;left:3.5%;width:clamp(220px,24vw,350px);height:auto}
.eco-sun{position:absolute;top:70px;right:5%;width:clamp(150px,18vw,300px);height:auto}
#ecoLeaves{position:absolute;inset:0;width:100%;height:100%;display:block}
.eco-tree .c{position:relative;z-index:1}
.eco-tree .sec-lab{color:var(--gold-ink)}
.eco-tree .sec-t{color:var(--text)}
.eco-tree .sec-s{color:var(--muted)}
.eco-tree .deck-wrap{padding:20px 0 30px}
.eco-tree .deck-glow{display:none}
.eco-tree .eco-grid{gap:clamp(48px,9vw,110px)}
.eco-tree .eco-name{color:var(--gold-ink)}
.eco-tree .eco-logo::before{background:radial-gradient(ellipse,rgba(255,255,255,.85) 0%,rgba(255,255,255,.4) 46%,transparent 72%)}
.eco-tree p.reveal{color:#5C5138!important}
@media(max-width:900px){.eco-board{display:none}.eco-sun{top:40px}}

.eco-trees{position:absolute;bottom:0;height:auto}
.eco-trees-l{left:1.5%;width:clamp(160px,17vw,320px)}
.eco-trees-r{right:1.5%;width:clamp(170px,18vw,340px)}
@media(max-width:768px){.eco-trees-l{width:120px}.eco-trees-r{width:130px}}
