:root {
  /* Styleguide reskin — old token names remapped onto the new design system */
  --ember:#f26625; --ember-dk:#b53d0f; --ember-lt:#fa8a5b;
  --clay:#fa8a5b; --parchment:#f9f9f9; --linen:#ffffff;
  --ink:#0a0a0a; --ink-soft:#141414; --ink-mid:rgba(10,10,10,.62); --ink-pale:rgba(10,10,10,.42);
  --rule:#ededed; --white:#fff; --slate:#0a0a0a; --slate-lt:#1f1f1f;
  --serif:'Inter Tight','Inter',ui-sans-serif,system-ui,sans-serif;
  --sans:'Inter',ui-sans-serif,system-ui,sans-serif;
  --mono:'JetBrains Mono','Geist Mono',ui-monospace,monospace;
  --accent-serif:'Instrument Serif','Cormorant Garamond',Georgia,serif;
  --ease:cubic-bezier(0.22,1,0.36,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:#fff;color:var(--ink);overflow-x:clip;line-height:1.7;-webkit-font-smoothing:antialiased;}
body::after{content:'';position:fixed;inset:0;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='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:0.35;}
::-webkit-scrollbar{width:4px;}::-webkit-scrollbar-thumb{background:var(--ember);border-radius:2px;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:58px;background:rgba(255,255,255,0.96);border-bottom:1px solid var(--rule);backdrop-filter:blur(12px);}
.nb{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nb img{height:36px;}
.nb-t{font-family:var(--serif);font-size:17px;font-weight:700;color:var(--ink);}
.nb-t span{color:var(--ember);}
.nl{display:flex;list-style:none;gap:4px;align-items:center;}
.nl a{position:relative;display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--ink-mid);text-decoration:none;padding:8px 13px;border-radius:9999px;transition:color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease);}
.nl-ic{width:15px;height:15px;flex-shrink:0;opacity:.6;transition:opacity .25s var(--ease),color .25s var(--ease);}
.nl a:hover{color:var(--ember);background:rgba(242,102,37,.07);}
.nl a:hover .nl-ic{opacity:1;}
.nl a.active{color:var(--ember);background:rgba(242,102,37,.1);box-shadow:inset 0 0 0 1px rgba(242,102,37,.22);}
.nl a.active .nl-ic{opacity:1;}
.n-cta{font-size:13px;font-weight:500;color:#fff;background:var(--ember);padding:8px 20px;border-radius:2px;text-decoration:none;margin-left:6px;}
.n-cta:hover{background:var(--ember-dk);}
/* hamburger toggle — hidden on desktop, shown ≤768px */
.nav-actions{display:flex;align-items:center;gap:12px;}
.nav-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:42px;height:42px;padding:0;background:#fff;border:1px solid var(--rule);border-radius:10px;cursor:pointer;transition:border-color .25s var(--ease),background .25s var(--ease);}
.nav-toggle:hover{border-color:var(--ember);}
.nav-toggle-bar{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink);transition:transform .3s var(--ease),opacity .2s var(--ease);}

/* BUTTONS */
.bgw{background:transparent;color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.18);padding:13px 28px;border-radius:2px;text-decoration:none;font-size:14px;transition:border-color .2s,color .2s;}
.bgw:hover{border-color:rgba(255,255,255,.38);color:#fff;}

/* MARQUEE */
.mq{overflow:hidden;background:var(--ink);padding:11px 0;}
.mq-t{display:flex;gap:48px;white-space:nowrap;animation:mqs 40s linear infinite;}
.mq-i{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.22);flex-shrink:0;display:flex;align-items:center;gap:10px;}
.mq-i span{color:var(--ember-lt);}
@keyframes mqs{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* SECTIONS */
.sec{padding:92px 40px;}
.si{max-width:1280px;margin:0 auto;}
.eye{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.eye::before{content:'';display:block;width:20px;height:1px;background:var(--ember);}
.sh{font-family:var(--serif);font-size:clamp(28px,3.6vw,48px);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--ink);margin-bottom:16px;}
.sh em{font-style:italic;font-weight:400;color:var(--ember);}
.sl{font-size:16px;line-height:1.85;color:var(--ink-soft);max-width:640px;margin-bottom:48px;}

/* CALLOUT */
.callout{background:var(--white);border:1px solid var(--rule);border-left:3px solid var(--ember);padding:22px 26px;margin-bottom:36px;border-radius:0 4px 4px 0;}
.callout p{font-size:14.5px;color:var(--ink-soft);line-height:1.78;}
.callout strong{color:var(--ink);font-weight:600;}

/* STORY HERO — dark editorial */
.story-hero{position:relative;padding-top:60px;padding-bottom:60px;background:radial-gradient(125% 145% at 82% 0%,#17120e 0%,var(--ink) 56%);border-top:1px solid rgba(255,255,255,.06);overflow:hidden;color:#fff;}
.story-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px,40px 40px,40px 40px;background-position:0 0,0 0,20px 20px;opacity:.6;mask-image:radial-gradient(125% 120% at 18% 12%,#000 38%,transparent 90%);-webkit-mask-image:radial-gradient(125% 120% at 18% 12%,#000 38%,transparent 90%);pointer-events:none;}
.story-hero::after{content:'';position:absolute;top:-180px;right:-130px;width:600px;height:600px;background:radial-gradient(circle,rgba(242,102,37,.16) 0%,transparent 62%);pointer-events:none;}
.sty-hero-g{position:relative;display:grid;grid-template-columns:41.6% 1fr;gap:64px;align-items:center;}
.sty-hero{position:relative;max-width:none;}
.sty-hero .eye{color:var(--ember-lt);}
.sty-hero .eye::before{background:var(--ember-lt);}
.sty-hero-h{font-family:var(--serif);font-size:clamp(24px,2.9vw,36px);font-weight:700;line-height:1.1;letter-spacing:-.022em;color:#fff;margin:0 0 22px;}
.sty-hero-h em{font-style:italic;font-weight:400;color:var(--ember-lt);}
.sty-hero-lead{font-size:15px;line-height:1.8;color:rgba(255,255,255,.66);max-width:600px;margin:0;}
.sty-hero-lead strong{color:#fff;font-weight:600;}
/* Right-column story image */
.sty-hero-media{position:relative;background:#fff;border-radius:18px;padding:14px;box-shadow:0 44px 90px -54px rgba(0,0,0,.9);}
.sty-hero-media img{display:block;width:100%;height:auto;border-radius:10px;}
/* Founding-thesis glass panel */
.sty-quote{position:relative;margin-top:28px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-left:3px solid var(--ember);border-radius:16px;padding:22px 26px 20px;box-shadow:0 44px 90px -54px rgba(0,0,0,.95);overflow:hidden;}
.sty-quote::before{content:'';position:absolute;top:-120px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,rgba(242,102,37,.18) 0%,transparent 65%);pointer-events:none;}
.sty-quote-mark{font-family:var(--accent-serif);font-style:italic;font-size:1.5em;line-height:0;vertical-align:-.28em;color:rgba(242,102,37,.55);margin-right:5px;}
.sty-quote p{position:relative;font-family:var(--accent-serif);font-style:italic;font-size:clamp(15px,1.35vw,17px);line-height:1.5;letter-spacing:-.01em;color:#fff;margin:0 0 16px;}
.sty-quote em{color:var(--ember-lt);font-style:italic;}
.sty-quote-by{position:relative;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);display:flex;align-items:center;gap:11px;}
.sty-quote-by::before{content:'';width:20px;height:1px;background:var(--ember);}

/* STORY */
.story-sec{position:relative;background:linear-gradient(180deg,#fff 0%,var(--linen) 60%,#fbf8f4 100%);border-top:1px solid var(--rule);overflow:hidden;}
.story-sec::before{content:'';position:absolute;top:-160px;right:-140px;width:540px;height:540px;background:radial-gradient(circle,rgba(242,102,37,.07) 0%,transparent 66%);pointer-events:none;}
.story-g{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:stretch;position:relative;}
.st{display:flex;flex-direction:column;}
.st .sh{margin-bottom:26px;}
.st-h{font-family:var(--serif);font-size:clamp(25px,2.7vw,34px);font-weight:700;line-height:1.12;letter-spacing:-.022em;color:var(--ink);margin:4px 0 22px;}
.st-h em{font-style:italic;font-weight:400;color:var(--ember);}
.st p{font-size:15.5px;line-height:1.92;color:var(--ink-soft);margin-bottom:18px;}
.st p:last-child{margin-bottom:0;}
.st strong{color:var(--ink);font-weight:600;}
.st em{font-style:italic;}
/* Austin pilot marker — pinned to the bottom so the column fills */
.st-mark{margin-top:auto;display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#fff 0%,#fbf8f4 100%);border:1px solid var(--rule);border-left:3px solid var(--ember);border-radius:16px;padding:22px 26px;box-shadow:0 22px 46px -36px rgba(10,10,10,.5);}
.st-mark-badge{flex-shrink:0;width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,var(--ember),var(--ember-dk));display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:24px;color:#fff;box-shadow:0 10px 24px -10px rgba(242,102,37,.7);}
.st-mark-tx{font-size:13.5px;line-height:1.6;color:var(--ink-soft);}
.st-mark-tx strong{color:var(--ink);font-weight:600;}
.st-mark-live{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);margin-bottom:5px;}
.st-mark-live::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 0 rgba(242,102,37,.5);animation:stpulse 2s var(--ease) infinite;}
@keyframes stpulse{0%{box-shadow:0 0 0 0 rgba(242,102,37,.5)}70%{box-shadow:0 0 0 8px rgba(242,102,37,0)}100%{box-shadow:0 0 0 0 rgba(242,102,37,0)}}
/* What-we-do cards */
.wwd{display:flex;flex-direction:column;gap:14px;}
.wc-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch;}
.wwd-split{display:grid;grid-template-columns:2fr 3fr;gap:28px;align-items:stretch;}
.wwd-cards{display:flex;flex-direction:column;gap:9px;}
.wwd-media{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--rule);background:#fff;}
.wwd-img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:14px;}
#story-approach .story-g{grid-template-columns:1fr;gap:40px;}
#story-approach .st-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:900px;margin:8px auto 0;}
#story-approach .st-cols p{position:relative;margin:0;text-align:left;padding:24px 26px 24px 28px;font-size:14.5px;line-height:1.82;color:var(--ink-mid);background:linear-gradient(135deg,#fff 0%,#fbf8f4 100%);border:1px solid var(--rule);border-radius:16px;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);}
/* left ember accent bar on each panel */
#story-approach .st-cols p::before{content:'';position:absolute;top:0;bottom:0;left:0;width:3px;background:linear-gradient(180deg,var(--ember),var(--ember-lt));}
#story-approach .st-cols p:hover{transform:translateY(-3px);border-color:rgba(242,102,37,.28);box-shadow:0 22px 44px -34px rgba(10,10,10,.45);}
#story-approach .st-cols strong{color:var(--ink);font-weight:600;}
.st-pill{margin:30px auto 0;display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:8px 12px;max-width:680px;padding:10px 20px;background:linear-gradient(135deg,#fff 0%,#fbf8f4 100%);border:1px solid var(--rule);border-radius:999px;box-shadow:0 14px 34px -28px rgba(10,10,10,.5);}
.st-pill-live{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);}
.st-pill-live::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 0 rgba(242,102,37,.5);animation:stpulse 2s var(--ease) infinite;}
.st-pill-tx{font-size:13px;line-height:1.5;color:var(--ink-soft);}
.st-pill-tx strong{color:var(--ink);font-weight:600;}
.st-pill{transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);}
.st-pill:hover{transform:translateY(-2px);border-color:rgba(242,102,37,.32);box-shadow:0 20px 40px -28px rgba(242,102,37,.5);}

/* ── Conviction section polish ── */
#story-approach{position:relative;}
#story-approach::after{content:'';position:absolute;left:-160px;bottom:-120px;width:460px;height:460px;background:radial-gradient(circle,rgba(242,102,37,.06) 0%,transparent 66%);pointer-events:none;}
#story-approach .si{position:relative;z-index:1;}
/* symmetric centered eyebrow */
#story-approach .eye{justify-content:center;}
#story-approach .eye::after{content:'';display:block;width:20px;height:1px;background:var(--ember);}
/* ornamental divider beneath the heading */
#story-approach .st-h{margin-bottom:0;}
#story-approach .st-h::after{content:'';display:block;width:72px;height:2px;margin:20px auto 26px;background:linear-gradient(90deg,transparent,var(--ember) 35%,var(--ember) 65%,transparent);border-radius:2px;}
/* hairline between the two paragraph columns */
#story-approach .st-cols{position:relative;}
/* centered section label above the cards */
#story-approach .wwd-lbl{justify-content:center;font-size:10.5px;margin:6px 0 22px;}
#story-approach .wwd-lbl::before{width:26px;height:1px;border-radius:0;background:var(--ember);box-shadow:none;}
#story-approach .wwd-lbl::after{content:'';width:26px;height:1px;background:var(--ember);}
/* card refinements */
#story-approach .wwd-cards .wc{padding:16px;}
#story-approach .wwd-cards .wc-n{margin-bottom:10px;padding:3px 9px;}
#story-approach .wwd-cards .wc-t{margin-bottom:3px;font-size:15px;}
#story-approach .wwd-cards .wc-b{font-size:14px;line-height:1.5;}
#story-approach .wwd-cards .wc-b::after{display:none;}
#story-approach .wc{display:flex;flex-direction:column;background:linear-gradient(180deg,#fff 0%,#fdfbf9 100%);padding:20px 22px;}
#story-approach .wc-t{font-size:16.5px;margin-bottom:7px;}
#story-approach .wc-b{font-size:13px;line-height:1.62;}
#story-approach .wc::before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--ember),var(--ember-lt));opacity:0;transition:opacity .4s var(--ease);}
#story-approach .wc:hover::before{opacity:1;}
/* card number as a tinted chip + animated ghost */
#story-approach .wc-n{display:inline-flex;align-items:center;align-self:flex-start;gap:0;padding:5px 11px;border-radius:999px;background:rgba(242,102,37,.08);border:1px solid rgba(242,102,37,.16);font-weight:500;margin-bottom:14px;transition:background .4s var(--ease),border-color .4s var(--ease);}
#story-approach .wc:hover .wc-n{background:rgba(242,102,37,.14);border-color:rgba(242,102,37,.32);}
#story-approach .wc-ghost{transition:color .4s var(--ease),transform .5s var(--ease);}
#story-approach .wc:hover .wc-ghost{transform:translateY(2px) scale(1.06);}
#story-approach .wc-t{transition:color .4s var(--ease);}
#story-approach .wc:hover .wc-t{color:var(--ember-dk);}
/* hover affordance arrow under the card body */
#story-approach .wc-b{padding-bottom:2px;}
#story-approach .wc-b::after{content:'→';display:block;margin-top:10px;font-family:var(--mono);font-size:14px;color:var(--ember);opacity:0;transform:translateX(-6px);transition:opacity .4s var(--ease),transform .4s var(--ease);}
#story-approach .wc:hover .wc-b::after{opacity:1;transform:translateX(0);}
/* heading emphasis underline */
#story-approach .st-h em{background-image:linear-gradient(var(--ember),var(--ember));background-size:100% 1.5px;background-position:0 92%;background-repeat:no-repeat;padding-bottom:1px;}
/* warmer pill tint */
.st-pill{background:linear-gradient(135deg,#fff 0%,#fdf4ee 100%);border-color:rgba(242,102,37,.18);}
.wwd-lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);display:flex;align-items:center;gap:9px;margin-bottom:6px;}
.wwd-lbl::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 3px rgba(242,102,37,.16);}
.wc{position:relative;background:var(--white);border:1px solid var(--rule);border-radius:14px;padding:26px 28px;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);}
.wc::after{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--ember),var(--ember-lt));transform:scaleY(0);transform-origin:top;transition:transform .4s var(--ease);}
.wc:hover{transform:translateY(-4px);border-color:rgba(242,102,37,.32);box-shadow:0 26px 50px -34px rgba(10,10,10,.45);}
.wc:hover::after{transform:scaleY(1);}
.wc-ghost{position:absolute;top:-14px;right:16px;font-family:var(--accent-serif);font-style:italic;font-size:86px;line-height:1;color:rgba(10,10,10,.04);pointer-events:none;transition:color .4s var(--ease);}
.wc:hover .wc-ghost{color:rgba(242,102,37,.1);}
.wc-n{position:relative;font-family:var(--mono);font-size:10px;color:var(--ember);letter-spacing:.1em;margin-bottom:9px;}
.wc-t{position:relative;font-family:var(--serif);font-size:17.5px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin-bottom:8px;}
.wc-b{position:relative;font-size:13.5px;color:var(--ink-soft);line-height:1.78;}

/* ═══ STORY THEME TOGGLE (Light / Dark) ═══ */
.story-zone{position:relative;}
/* toggle bar — sits at the top of the story hero */
.story-toggle{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:36px;}
.story-toggle-lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.42);transition:color .35s var(--ease);}
.seg{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-items:stretch;padding:4px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:background .35s var(--ease),border-color .35s var(--ease);}
.seg-thumb{position:absolute;top:4px;left:4px;bottom:4px;width:calc(50% - 4px);border-radius:999px;background:linear-gradient(135deg,var(--ember),var(--ember-dk));box-shadow:0 6px 16px -6px rgba(242,102,37,.7);transition:transform .4s var(--ease);pointer-events:none;}
.seg-btn{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 18px;border:none;background:transparent;cursor:pointer;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);transition:color .3s var(--ease);}
.seg-btn svg{width:13px;height:13px;}
.seg-btn:focus-visible{outline:2px solid var(--ember);outline-offset:3px;border-radius:999px;}
.seg-btn.is-active{color:#fff;}
/* thumb tracks the active theme */
.story-zone[data-theme="light"] .seg-thumb{transform:translateX(0);}
.story-zone[data-theme="dark"]  .seg-thumb{transform:translateX(100%);}

/* ── LIGHT THEME: recolor the (default-dark) hero into a light editorial ── */
.story-zone[data-theme="light"] .story-toggle-lbl{color:var(--ink-pale);}
.story-zone[data-theme="light"] .seg{background:#fff;border-color:var(--rule);box-shadow:0 10px 28px -22px rgba(10,10,10,.5),inset 0 1px 0 #fff;}
.story-zone[data-theme="light"] .seg-btn{color:var(--ink-mid);}
.story-zone[data-theme="light"] .seg-btn.is-active{color:#fff;}
.story-zone[data-theme="light"] .story-hero{background:linear-gradient(180deg,#fff 0%,var(--linen) 60%,#fbf8f4 100%);border-top-color:var(--rule);color:var(--ink);}
.story-zone[data-theme="light"] .story-hero::before{background-image:linear-gradient(rgba(10,10,10,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.04) 1px,transparent 1px),radial-gradient(rgba(10,10,10,.05) 1px,transparent 1px);opacity:.55;}
.story-zone[data-theme="light"] .story-hero::after{background:radial-gradient(circle,rgba(242,102,37,.08) 0%,transparent 62%);}
.story-zone[data-theme="light"] .sty-hero-h{color:var(--ink);}
.story-zone[data-theme="light"] .sty-hero-h em{color:var(--ember);}
.story-zone[data-theme="light"] .sty-hero-lead{color:var(--ink-soft);}
.story-zone[data-theme="light"] .sty-hero-lead strong{color:var(--ink);}
.story-zone[data-theme="light"] .sty-quote{background:linear-gradient(135deg,#fff 0%,#fbf8f4 100%);border-color:var(--rule);border-left-color:var(--ember);box-shadow:0 30px 60px -42px rgba(10,10,10,.4);}
.story-zone[data-theme="light"] .sty-quote::before{background:radial-gradient(circle,rgba(242,102,37,.1) 0%,transparent 65%);}
.story-zone[data-theme="light"] .sty-quote-mark{color:rgba(242,102,37,.28);}
.story-zone[data-theme="light"] .sty-quote p{color:var(--ink);}
.story-zone[data-theme="light"] .sty-quote em{color:var(--ember);}
.story-zone[data-theme="light"] .sty-quote-by{color:var(--ink-mid);}

/* ── DARK THEME: recolor the (default-light) approach section into a dark panel ── */
.story-zone[data-theme="dark"] .story-sec{background:radial-gradient(125% 145% at 82% 0%,#17120e 0%,var(--ink) 60%);border-top-color:rgba(255,255,255,.06);}
.story-zone[data-theme="dark"] .story-sec::before{background:radial-gradient(circle,rgba(242,102,37,.1) 0%,transparent 66%);}
.story-zone[data-theme="dark"] #story-approach::after{background:radial-gradient(circle,rgba(242,102,37,.08) 0%,transparent 66%);}
.story-zone[data-theme="dark"] #story-approach .st-h{color:#fff;}
.story-zone[data-theme="dark"] #story-approach .st-h em{color:var(--ember-lt);background-image:linear-gradient(var(--ember-lt),var(--ember-lt));}
.story-zone[data-theme="dark"] #story-approach .st-cols p{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09);color:rgba(255,255,255,.6);}
.story-zone[data-theme="dark"] #story-approach .st-cols p:hover{border-color:rgba(250,138,91,.32);box-shadow:0 22px 44px -30px rgba(0,0,0,.85);}
.story-zone[data-theme="dark"] #story-approach .st-cols strong{color:#fff;}
.story-zone[data-theme="dark"] #story-approach .st-h::after{background:linear-gradient(90deg,transparent,var(--ember-lt) 35%,var(--ember-lt) 65%,transparent);}
.story-zone[data-theme="dark"] .st-pill{background:rgba(255,255,255,.04);border-color:rgba(250,138,91,.22);box-shadow:0 18px 40px -30px rgba(0,0,0,.8);}
.story-zone[data-theme="dark"] .st-pill-tx{color:rgba(255,255,255,.62);}
.story-zone[data-theme="dark"] .st-pill-tx strong{color:#fff;}
.story-zone[data-theme="dark"] .st-pill-live{color:var(--ember-lt);}
.story-zone[data-theme="dark"] #story-approach .wc{background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.02) 100%);border-color:rgba(255,255,255,.08);}
.story-zone[data-theme="dark"] #story-approach .wc:hover{border-color:rgba(250,138,91,.4);box-shadow:0 26px 50px -34px rgba(0,0,0,.9);}
.story-zone[data-theme="dark"] #story-approach .wc-t{color:#fff;}
.story-zone[data-theme="dark"] #story-approach .wc:hover .wc-t{color:var(--ember-lt);}
.story-zone[data-theme="dark"] #story-approach .wc-b{color:rgba(255,255,255,.58);}
.story-zone[data-theme="dark"] #story-approach .wc-ghost{color:rgba(255,255,255,.05);}
.story-zone[data-theme="dark"] #story-approach .wc:hover .wc-ghost{color:rgba(250,138,91,.12);}
.story-zone[data-theme="dark"] #story-approach .wc-n{color:var(--ember-lt);background:rgba(250,138,91,.1);border-color:rgba(250,138,91,.2);}

/* LIFECYCLE */
.lc-sec{border-top:1px solid var(--rule);}
.lc-intro{display:grid;grid-template-columns:41.6% 1fr;gap:56px;align-items:start;margin-bottom:34px;}
.lc-intro .rv{max-width:none;}
.lc-intro .sh{font-size:clamp(24px,2.6vw,34px);}
.lc-intro-left{min-width:0;}
.lc-intro-right{min-width:0;align-self:stretch;}
.lc-intro p{font-size:15.5px;color:var(--ink-soft);line-height:1.9;margin-bottom:16px;}
.lc-intro p:last-child{margin-bottom:0;}
.lc-intro strong{color:var(--ink);font-weight:600;}
/* The Full Picture — right-side card (top-aligned to the heading) */
.lc-snap{margin-top:40px;background:linear-gradient(180deg,#fff 0%,#fbf8f4 100%);border:1px solid var(--rule);border-left:3px solid var(--ember);border-radius:14px;padding:24px 26px;box-shadow:0 18px 38px -30px rgba(10,10,10,.35);}
.lc-snap-lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);display:flex;align-items:center;gap:9px;margin-bottom:14px;}
.lc-snap-lbl::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 3px rgba(242,102,37,.16);}
.lc-snap-h{font-family:var(--serif);font-size:21px;line-height:1.2;color:var(--ink);letter-spacing:-.02em;margin-bottom:18px;}
.lc-snap-h em{font-family:var(--accent-serif,var(--serif));font-style:italic;color:var(--ember);}
.lc-snap-list{list-style:none;display:flex;flex-direction:column;border-top:1px solid var(--rule);}
.lc-snap-list li{position:relative;font-size:13.5px;color:var(--ink-soft);line-height:1.4;padding:12px 0 12px 24px;border-bottom:1px solid var(--rule);}
.lc-snap-list li:last-child{border-bottom:none;padding-bottom:2px;}
.lc-snap-list li::before{content:'';position:absolute;left:2px;top:17px;width:7px;height:7px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 4px rgba(242,102,37,.12);}

/* "What Stays Constant" as a full-width row at the end of the section, bullets side by side */
.lc-snap-row{margin-top:28px;display:grid;grid-template-columns:minmax(180px,.85fr) 2fr;gap:32px;align-items:center;padding:18px 28px;}
.lc-snap-row .lc-snap-head{display:flex;flex-direction:column;gap:7px;}
.lc-snap-row .lc-snap-lbl{margin-bottom:0;}
.lc-snap-row .lc-snap-h{font-size:18px;line-height:1.18;margin-bottom:0;}
.lc-snap-row .lc-snap-list{flex-direction:row;border-top:none;gap:0;}
.lc-snap-row .lc-snap-list li{flex:1;font-size:13px;border-bottom:none;border-left:1px solid var(--rule);padding:2px 0 2px 22px;}
.lc-snap-row .lc-snap-list li:first-child{border-left:none;padding-left:20px;}
.lc-snap-row .lc-snap-list li::before{top:5px;}
@media(max-width:768px){
  .lc-snap-row{grid-template-columns:1fr;gap:18px;padding:18px 22px;}
  .lc-snap-row .lc-snap-list{flex-direction:column;}
  .lc-snap-row .lc-snap-list li{border-left:none;border-bottom:1px solid var(--rule);padding:11px 0 11px 22px;}
  .lc-snap-row .lc-snap-list li:last-child{border-bottom:none;}
  .lc-snap-row .lc-snap-list li::before{top:16px;}
}

/* HORIZONTAL TIMELINE */
.lc-tl{position:sticky;top:66px;z-index:30;background:radial-gradient(130% 150% at 0% 0%,#17120e 0%,var(--ink) 58%);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:24px 36px 28px;margin-bottom:24px;overflow:hidden;box-shadow:0 30px 60px -38px rgba(0,0,0,.8);}
.lc-tl::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:22px 22px;opacity:.5;pointer-events:none;}
.lc-tl-img{display:block;width:100%;height:auto;border-radius:14px;margin:0;}
.lc-tl-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:26px;position:relative;}
.lc-tl-t{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember-lt);display:flex;align-items:center;gap:9px;}
.lc-tl-t::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 3px rgba(242,102,37,.2);}
.lc-tl-h{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.3);}

/* phase bands */
.lc-phases{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;margin-bottom:18px;position:relative;}
.lc-phase{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;padding:6px 0;text-align:center;border-radius:6px;border:1px solid;}
.lc-phase.p1{grid-column:1 / span 3;color:var(--ember-lt);border-color:rgba(250,138,91,.3);background:rgba(242,102,37,.09);}
.lc-phase.p2{grid-column:4 / span 3;color:#8fb0df;border-color:rgba(74,106,154,.45);background:rgba(74,106,154,.13);}
.lc-phase.p3{grid-column:7 / span 2;color:rgba(255,255,255,.62);border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.05);}

.lc-track{display:grid;grid-template-columns:repeat(8,1fr);position:relative;}
.lc-track::before{content:'';position:absolute;top:17px;left:0;right:0;height:2px;margin:0 6.25%;background:linear-gradient(90deg,rgba(242,102,37,.6) 0%,rgba(242,102,37,.6) 33%,rgba(74,106,154,.6) 41%,rgba(74,106,154,.6) 71%,rgba(255,255,255,.24) 79%,rgba(255,255,255,.24) 100%);}
.lc-node{display:flex;flex-direction:column;align-items:center;gap:13px;padding:0 6px;background:transparent;border:none;cursor:pointer;font:inherit;text-align:center;position:relative;}
.lc-node:focus-visible{outline:2px solid var(--ember);outline-offset:4px;border-radius:10px;}
.lc-node-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;font-weight:500;background:var(--ink);border:1.5px solid rgba(255,255,255,.2);color:rgba(255,255,255,.7);position:relative;z-index:1;transition:transform .25s var(--ease),box-shadow .25s,border-color .25s,background .25s,color .25s;}
.s-e .lc-node-dot{border-color:rgba(242,102,37,.5);color:var(--ember-lt);}
.s-s .lc-node-dot{border-color:rgba(74,106,154,.62);color:#8fb0df;}
.s-p .lc-node-dot{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.72);}
.lc-node:hover .lc-node-dot,.lc-node.active .lc-node-dot{transform:translateY(-3px) scale(1.05);}
.s-e:hover .lc-node-dot,.lc-node.s-e.active .lc-node-dot{background:var(--ember);border-color:var(--ember);color:#fff;box-shadow:0 0 0 5px rgba(242,102,37,.18),0 10px 22px -6px rgba(242,102,37,.6);}
.s-s:hover .lc-node-dot,.lc-node.s-s.active .lc-node-dot{background:#4A6A9A;border-color:#5b7fb4;color:#fff;box-shadow:0 0 0 5px rgba(74,106,154,.22),0 10px 22px -6px rgba(74,106,154,.6);}
.s-p:hover .lc-node-dot,.lc-node.s-p.active .lc-node-dot{background:rgba(255,255,255,.94);border-color:#fff;color:var(--ink);box-shadow:0 0 0 5px rgba(255,255,255,.12),0 10px 22px -6px rgba(0,0,0,.7);}
.lc-node-l{font-family:var(--mono);font-size:9.5px;line-height:1.5;color:rgba(255,255,255,.58);transition:color .2s;max-width:14ch;}
.lc-node:hover .lc-node-l,.lc-node.active .lc-node-l{color:#fff;}

/* LIFECYCLE STEPS */
.lcs{position:relative;margin-bottom:44px;}
.ls{display:grid;grid-template-columns:72px 1fr 280px;background:var(--white);border:1px solid var(--rule);border-radius:14px;overflow:hidden;margin-bottom:22px;box-shadow:0 1px 0 var(--rule),0 18px 40px -34px rgba(10,10,10,.42);}
.ls:last-child{margin-bottom:0;}
.ls:last-child{margin-bottom:0;}
.ls-dk{box-shadow:0 28px 60px -34px rgba(0,0,0,.7);}
.ls:hover .ls-m{background:var(--parchment);}
.ls-idx{background:linear-gradient(180deg,var(--parchment) 0%,#fff 100%);border-right:1px solid var(--rule);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:24px 10px;gap:10px;}
.ls-n{font-family:var(--serif);font-size:30px;font-weight:700;color:var(--clay);line-height:1;will-change:transform;}
.ls-kpi>*{will-change:transform;}
.ls-ic{width:26px;height:26px;color:var(--ember);opacity:.55;transform:translateY(2px);transition:opacity .35s var(--ease),transform .35s var(--ease),color .35s var(--ease);}
.ls-ic svg{width:100%;height:100%;display:block;}
.ls:hover .ls-ic{opacity:1;transform:translateY(0) scale(1.1);}
.ls-m{padding:26px 28px 26px 24px;border-right:1px solid var(--rule);transition:background .2s;}
.ls-ph{display:inline-flex;align-items:center;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);margin-bottom:12px;padding:5px 10px;background:rgba(242,102,37,.08);border:1px solid rgba(242,102,37,.18);border-radius:100px;}
.ls-t{font-family:var(--serif);font-size:18.5px;font-weight:700;color:var(--ink);margin-bottom:10px;line-height:1.28;letter-spacing:-.01em;}
.ls-b{font-size:13.5px;color:var(--ink-soft);line-height:1.78;}
.ls-tasks{margin-top:16px;padding-top:15px;border-top:1px dashed var(--rule);display:flex;flex-direction:column;gap:8px;}
.ls-task{font-size:12.5px;color:var(--ink-mid);display:flex;align-items:flex-start;gap:9px;line-height:1.5;}
.ls-task::before{content:'✓';display:flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:rgba(242,102,37,.1);color:var(--ember);flex-shrink:0;font-size:9px;font-weight:700;margin-top:1px;transition:background .2s,color .2s;}
.ls-task:hover::before{background:var(--ember);color:#fff;}
.ls-kpi{padding:24px 18px;background:linear-gradient(180deg,#fafafa 0%,#fff 100%);}
.ls-kpi-t{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);margin-top:14px;margin-bottom:14px;display:flex;align-items:center;gap:7px;}
.ls-kpi-t::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 3px rgba(242,102,37,.16);}
.km{position:relative;margin-bottom:8px;padding:12px 14px;background:#fff;border:1px solid var(--rule);border-radius:11px;transition:box-shadow .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease);}
.km:last-child{margin-bottom:0;}
.km::before{content:'';position:absolute;left:0;top:13px;bottom:13px;width:2px;border-radius:0 2px 2px 0;background:var(--ember);opacity:0;transition:opacity .25s var(--ease);}
.km:hover{border-color:rgba(242,102,37,.45);box-shadow:0 12px 28px -20px rgba(10,10,10,.55);background:#fffdfb;}
.km:hover::before{opacity:1;}
.km-n{font-family:var(--serif);font-size:13px;font-weight:600;color:var(--ink);letter-spacing:-.005em;margin-bottom:4px;line-height:1.3;display:flex;align-items:center;gap:8px;}
.km-n::before{content:'';width:14px;height:14px;flex-shrink:0;background:var(--ember);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 7 13.5 15.5 8.5 10.5 2 17'/%3E%3Cpolyline points='16 7 22 7 22 13'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 7 13.5 15.5 8.5 10.5 2 17'/%3E%3Cpolyline points='16 7 22 7 22 13'/%3E%3C/svg%3E") center/contain no-repeat;}
.km-d{font-size:11px;color:var(--ink-mid);line-height:1.5;}
/* dark lifecycle steps */
.ls-dk .ls-idx{background:linear-gradient(180deg,#161310 0%,var(--ink) 100%);border-right-color:rgba(255,255,255,.07);}
.ls-dk .ls-n{color:rgba(255,255,255,.14);}
.ls-dk .ls-ic{color:var(--ember-lt);opacity:.6;}
.ls-dk .ls-m{background:var(--ink);border-right-color:rgba(255,255,255,.08);}
.ls-dk:hover .ls-m{background:#201c17;}
.ls-dk .ls-ph{color:var(--ember-lt);background:rgba(250,138,91,.12);border-color:rgba(250,138,91,.22);}
.ls-dk .ls-t{color:#fff;}
.ls-dk .ls-b{color:rgba(255,255,255,.56);}
.ls-dk .ls-tasks{border-top-color:rgba(255,255,255,.08);}
.ls-dk .ls-task{color:rgba(255,255,255,.52);}
.ls-dk .ls-task::before{background:rgba(250,138,91,.14);color:var(--ember-lt);}
.ls-dk .ls-task:hover::before{background:var(--ember);color:#fff;}
.ls-dk .ls-kpi{background:linear-gradient(180deg,#0e0c09 0%,#080706 100%);}
.ls-dk .ls-kpi-t{color:var(--ember-lt);}
.ls-dk .ls-kpi-t::before{background:var(--ember-lt);box-shadow:0 0 0 3px rgba(250,138,91,.18);}
.ls-dk .km{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.08);}
.ls-dk .km::before{background:var(--ember-lt);}
.ls-dk .km:hover{border-color:rgba(250,138,91,.42);box-shadow:0 12px 28px -20px rgba(0,0,0,.85);background:rgba(255,255,255,.05);}
.ls-dk .km-n{color:rgba(255,255,255,.9);}
.ls-dk .km-n::before{background:var(--ember-lt);}
.ls-dk .km-d{color:rgba(255,255,255,.45);}

/* ═══ MEASURE — dark instrument-panel theme ═══ */
.msr-sec{background:#080808;border-top:1px solid #000;color:#fff;position:relative;overflow:hidden;}
.msr-sec::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000,transparent 75%);pointer-events:none;}
.msr-sec::after{content:'';position:absolute;top:-120px;right:-120px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(242,102,37,.14) 0%,transparent 70%);pointer-events:none;}
.msr-sec .si{position:relative;z-index:1;}
.msr-sec .eye{color:var(--ember-lt);}
.msr-sec .eye::before{background:var(--ember);box-shadow:0 0 8px rgba(242,102,37,.7);}
.msr-sec .sh{color:#fff;}
.msr-sec .sh em{color:var(--ember-lt);}

.msr-g{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-bottom:56px;}
.msr-t p{font-size:15.5px;color:rgba(255,255,255,.7);line-height:1.9;margin-bottom:18px;}
.msr-t strong{color:#fff;font-weight:600;}
.msr-t em{font-style:italic;color:var(--ember-lt);}
.mpull{font-family:var(--accent-serif);font-size:23px;font-style:italic;line-height:1.55;color:#fff;border-left:2px solid var(--ember);padding:4px 0 4px 24px;margin:28px 0;}

.loop-card{position:relative;background:linear-gradient(165deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px 22px 18px;margin-bottom:20px;backdrop-filter:blur(12px);overflow:hidden;}
.loop-card::before{content:'';position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(242,102,37,.75),transparent);}
.loop-card::after{content:'';position:absolute;top:-80px;left:-60px;width:240px;height:240px;background:radial-gradient(circle,rgba(242,102,37,.12),transparent 70%);pointer-events:none;}
.loop-t{position:relative;display:flex;align-items:center;gap:9px;font-family:var(--serif);font-size:18px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:-.01em;}
.loop-t::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 4px rgba(242,102,37,.18);animation:loop-pulse 2.4s ease-in-out infinite;}
@keyframes loop-pulse{0%,100%{box-shadow:0 0 0 3px rgba(242,102,37,.22);}50%{box-shadow:0 0 0 7px rgba(242,102,37,.06);}}
.loop-s{position:relative;font-size:12px;color:rgba(255,255,255,.46);margin-bottom:16px;line-height:1.5;max-width:46ch;}
.loop-steps{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}
.loop-steps::after{content:'';position:absolute;top:21px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,rgba(242,102,37,.12),rgba(242,102,37,.6),rgba(242,102,37,.12));border-radius:2px;z-index:0;}
.lstep{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;position:relative;z-index:1;border-radius:14px;padding:2px 2px 4px;transition:transform .28s cubic-bezier(.2,.7,.3,1);}
.lstep:hover{transform:translateY(-5px);}
.ld{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--ember-lt),var(--ember));display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:14px;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.22);box-shadow:0 0 0 5px #080808,0 6px 18px rgba(242,102,37,.35);transition:box-shadow .28s ease,transform .28s ease;}
.lstep:hover .ld{transform:scale(1.06);box-shadow:0 0 0 5px #080808,0 10px 26px rgba(242,102,37,.6);}
.ln{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.9);font-weight:600;line-height:1.3;}
.ld-d{font-size:10.5px;color:rgba(255,255,255,.42);line-height:1.45;}

.msr-sec .callout{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.09);border-left:2px solid var(--ember);border-radius:0 6px 6px 0;}
.msr-sec .callout p{color:rgba(255,255,255,.62);}
.msr-sec .callout strong{color:#fff;}
.msr-sec h3{color:#fff !important;}
.msr-sec h3+p{color:rgba(255,255,255,.5) !important;}

/* KPI TIERS — stacked priority timeline */
.kpi-tiers{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;margin-bottom:48px;}
/* the vertical spine runs down the centre, behind the layered cards */
.kpi-tiers::before{content:'';position:absolute;left:50%;transform:translateX(-50%);top:18px;bottom:18px;width:2px;background:linear-gradient(180deg,var(--ember) 0%,rgba(242,102,37,.45) 55%,rgba(242,102,37,.12) 100%);z-index:0;}
/* registered angle so the conic border can actually animate */
@property --kt-angle{syntax:'<angle>';initial-value:0deg;inherits:false;}
@keyframes kt-spin{to{--kt-angle:360deg;}}
/* each step narrows to read as a stacked / layered pyramid + its own accent */
.kt:nth-child(1){width:100%;--kt-g1:var(--ember);--kt-g2:var(--ember-lt);--kt-fill:rgba(255,255,255,.07);animation-duration:6s;}
.kt:nth-child(2){width:90%;--kt-g1:var(--ember-lt);--kt-g2:#ffcaa6;--kt-fill:rgba(255,255,255,.045);animation-duration:8.5s;}
.kt:nth-child(3){width:85%;--kt-g1:rgba(242,102,37,.62);--kt-g2:rgba(255,255,255,.55);--kt-fill:rgba(255,255,255,.028);animation-duration:11s;}
.kt{position:relative;z-index:1;display:grid;grid-template-columns:64px minmax(190px,230px) 1fr;align-items:stretch;border:1.5px solid transparent;border-radius:16px;
  /* layer 1+2 fill the card (opaque), layer 3 paints the animated gradient into the border ring */
  background:linear-gradient(120deg,var(--kt-fill,rgba(255,255,255,.055)) 0%,rgba(255,255,255,.018) 55%,rgba(255,255,255,.01) 100%) padding-box,linear-gradient(#080808,#080808) padding-box,conic-gradient(from var(--kt-angle),transparent 0deg,var(--kt-g1) 70deg,var(--kt-g2) 120deg,transparent 200deg,transparent 360deg) border-box;
  overflow:hidden;isolation:isolate;box-shadow:0 1px 1px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);animation:kt-spin 7s linear infinite;transition:transform .4s var(--ease),box-shadow .4s var(--ease);}
@media(prefers-reduced-motion:reduce){.kt{animation:none;}}
/* animated gradient hairline across the top edge */
.kt::before{content:'';position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,transparent,var(--ember-lt),var(--ember),transparent);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);z-index:3;}
.kt:hover{transform:translateY(-5px);animation-duration:2.8s;box-shadow:0 24px 46px -24px rgba(0,0,0,.85),0 0 0 1px rgba(242,102,37,.14),0 0 44px -12px rgba(242,102,37,.24),inset 0 1px 0 rgba(255,255,255,.07);}
.kt:hover::before{transform:scaleX(1);}
/* col 1: the number node sitting on the spine */
.kt-num{grid-row:1;align-self:center;justify-self:center;font-family:var(--mono);font-size:14px;font-weight:600;color:var(--kt-g2,var(--ember-lt));width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(242,102,37,.32) 0%,rgba(242,102,37,.06) 100%);border:1px solid var(--kt-g1,rgba(242,102,37,.38));box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 6px 16px -8px rgba(242,102,37,.6);transition:transform .4s var(--ease);}
.kt:hover .kt-num{transform:scale(1.1);}
/* col 2: the label block, divided from body */
.kt-l{position:relative;border:none;border-right:1px solid rgba(255,255,255,.08);padding:22px 22px 22px 4px;display:flex;flex-direction:column;justify-content:center;gap:7px;}
.kt-h{min-width:0;}
.kt-e{font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--kt-g1,var(--ember-lt));margin-bottom:4px;}
.kt-n{font-family:var(--serif);font-size:18px;font-weight:700;color:#fff;line-height:1.18;}
.kt-s{align-self:flex-start;margin-top:9px;font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.62);padding:5px 11px;border:1px solid rgba(255,255,255,.14);border-radius:20px;white-space:nowrap;}
/* col 3: description + metric chips */
.kt-b{padding:22px 24px;display:flex;flex-direction:column;justify-content:center;}
.kt-b p{font-size:13px;color:rgba(255,255,255,.55);line-height:1.72;margin-bottom:16px;}
.ki-wrap{display:flex;flex-wrap:wrap;gap:7px;}
.ki{font-family:var(--mono);font-size:10px;padding:4px 10px;border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.62);border-radius:3px;letter-spacing:.02em;transition:border-color .2s,color .2s;}
.ki:hover{border-color:rgba(255,255,255,.3);color:#fff;}
.ki-e{border-color:rgba(242,102,37,.4);color:var(--ember-lt);background:rgba(242,102,37,.08);}
.ki-e:hover{border-color:var(--ember);color:#fff;}
.ki-s{border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.72);background:rgba(255,255,255,.04);}

/* KPI TIERS — premium framed block (concept: stacked data strata / instrument panel) */
.kpi-block{position:relative;margin:72px 0 8px;padding:76px 56px 84px;border-radius:24px;overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 100% at 50% 0%,rgba(242,102,37,.12) 0%,transparent 55%),linear-gradient(180deg,#0d0b09 0%,#060606 100%);
  border:1px solid rgba(255,255,255,.08);box-shadow:0 50px 110px -56px rgba(0,0,0,.92),inset 0 1px 0 rgba(255,255,255,.05);}
/* layered horizontal strata — echoes the three-tier concept */
.kpi-block::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:repeating-linear-gradient(180deg,rgba(255,255,255,.022) 0px,rgba(255,255,255,.022) 1px,transparent 1px,transparent 60px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:100% 60px,60px 100%;
  mask-image:radial-gradient(ellipse 92% 84% at 50% 38%,#000 0%,transparent 82%);-webkit-mask-image:radial-gradient(ellipse 92% 84% at 50% 38%,#000 0%,transparent 82%);}
/* ember bloom anchored to the spine, blooming up from the base */
.kpi-block::after{content:'';position:absolute;left:50%;bottom:-180px;transform:translateX(-50%);width:600px;height:400px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(242,102,37,.16) 0%,transparent 70%);}
.kpi-block .kpi-tiers{margin-bottom:0;}

/* PREVENTION — instrument tiles */
.prev-g{display:grid;grid-template-columns:1fr;gap:18px;}
.pc{position:relative;display:flex;align-items:flex-start;gap:16px;background:linear-gradient(158deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.018) 60%,rgba(255,255,255,.01) 100%);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px 22px;overflow:hidden;isolation:isolate;box-shadow:0 1px 1px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);transition:transform .45s var(--ease),border-color .45s var(--ease),box-shadow .45s var(--ease);}
/* radial spotlight glow that blooms on hover */
.pc::after{content:'';position:absolute;top:-45%;right:-25%;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(242,102,37,.22) 0%,transparent 68%);opacity:0;transform:scale(.7);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none;z-index:-1;}
/* animated gradient hairline across the top edge */
.pc::before{content:'';position:absolute;left:0;top:0;height:1.5px;width:100%;background:linear-gradient(90deg,transparent,var(--ember-lt),var(--ember),transparent);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);}
.pc:hover{transform:translateY(-7px);border-color:rgba(242,102,37,.42);box-shadow:0 26px 50px -22px rgba(0,0,0,.85),0 0 0 1px rgba(242,102,37,.16),0 0 50px -10px rgba(242,102,37,.28),inset 0 1px 0 rgba(255,255,255,.08);}
.pc:hover::before{transform:scaleX(1);}
.pc:hover::after{opacity:1;transform:scale(1);}
.pc-ico{position:relative;flex-shrink:0;color:var(--ember-lt);margin-bottom:0;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(145deg,rgba(242,102,37,.26) 0%,rgba(242,102,37,.05) 100%);border:1px solid rgba(242,102,37,.3);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 20px -10px rgba(242,102,37,.55);transition:transform .45s var(--ease),box-shadow .45s var(--ease);}
.pc-ico svg{width:22px;height:22px;display:block;}
.pc:hover .pc-ico{transform:translateY(-2px) scale(1.07) rotate(-3deg);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 12px 26px -10px rgba(242,102,37,.75);}
.pc-tx{position:relative;flex:1;min-width:0;}
.pc-t{position:relative;font-family:var(--serif);font-size:16px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:-.01em;}
.pc-b{position:relative;font-size:12.5px;color:rgba(255,255,255,.62);line-height:1.7;}

/* HOW */
.how-sec{background:var(--linen);border-top:1px solid var(--rule);}
/* HOW WE WORK — connected process spine */
.hw-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start;margin-bottom:44px;}
.hw-col-img{position:sticky;top:104px;}
.hw-grid .hw-flow{margin-bottom:0;}
.hw-flow{position:relative;list-style:none;margin:0 0 44px;padding:0;}
.hw-step{position:relative;display:grid;grid-template-columns:54px 1fr;gap:26px;}
.hw-rail{position:relative;display:flex;justify-content:center;align-items:flex-start;}
/* connector line per step — sits BEHIND the circles, runs from node center to next node */
.hw-rail::before{content:'';position:absolute;z-index:0;top:27px;bottom:0;left:50%;width:2px;transform:translateX(-50%);background:var(--rule);}
.hw-step:last-child .hw-rail::before{display:none;}
.hw-step:nth-child(2) .hw-rail::before{background:linear-gradient(180deg,var(--clay) 0%,var(--ember) 100%);}
.hw-node{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--white);border:1.5px solid var(--rule);font-family:var(--serif);font-size:20px;font-weight:700;color:var(--ink-pale);line-height:1;box-shadow:0 1px 2px rgba(10,10,10,.03);transition:transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);}
.hw-body{padding:4px 0 34px;}
.hw-step:last-child .hw-body{padding-bottom:0;}
.hw-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:13px;}
.hw-phase{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ember);background:rgba(242,102,37,.07);border:1px solid rgba(242,102,37,.22);padding:4px 11px;border-radius:9999px;}
.hw-tag{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-mid);border:1px solid var(--rule);padding:4px 11px;border-radius:9999px;}
.hw-t{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--ink);margin-bottom:10px;letter-spacing:-.02em;line-height:1.2;}
.hw-d{font-size:14.5px;color:var(--ink-soft);line-height:1.8;max-width:640px;}
/* accent progression: neutral start → clay ring → filled-ink intelligence */
.hw-step:nth-child(2) .hw-node{border-color:var(--clay);color:var(--clay);background:#fdefe8;}
.hw-step:nth-child(3) .hw-node{background:var(--ink);border-color:var(--ink);color:var(--ember);box-shadow:0 10px 24px -14px rgba(10,10,10,.55);}
.hw-step:hover .hw-node{transform:scale(1.07);border-color:var(--ember);box-shadow:0 14px 30px -16px rgba(242,102,37,.5);}

/* CTA */
.cta-sec{background:var(--ink);padding:92px 40px;border-top:3px solid var(--ember);}
.cta-in{max-width:960px;margin:0 auto;text-align:center;}
.cta-eye{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(212,87,26,.68);margin-bottom:15px;}
.cta-h{font-family:var(--serif);font-size:clamp(28px,3.8vw,48px);font-weight:700;color:#fff;line-height:1.15;margin-bottom:18px;letter-spacing:-.02em;}
.cta-h em{font-style:italic;font-weight:400;color:var(--ember-lt);}
.cta-p{font-size:16px;color:rgba(255,255,255,.5);line-height:1.8;max-width:540px;margin:0 auto 32px;}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.cta-bp{background:var(--ember);color:#fff;padding:14px 32px;border-radius:2px;text-decoration:none;font-size:14.5px;font-weight:500;transition:background .2s;}
.cta-bp:hover{background:var(--ember-lt);}

/* FOOTER */
footer{background:var(--linen);border-top:1px solid var(--rule);padding:48px 40px 26px;}
.fi{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;padding-bottom:36px;border-bottom:1px solid var(--rule);}
.fi img{height:32px;margin-bottom:11px;display:block;}
.fd{font-size:13px;color:var(--ink-pale);line-height:1.75;max-width:270px;margin-bottom:14px;}
.fl-c{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-pale);}
.ft{font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mid);margin-bottom:13px;}
.fl{list-style:none;display:flex;flex-direction:column;gap:8px;}
.fl a{font-size:13.5px;color:var(--ink-soft);text-decoration:none;transition:color .2s;}
.fl a:hover{color:var(--ember);}
.fb{max-width:1280px;margin:20px auto 0;display:flex;justify-content:space-between;align-items:flex-start;gap:28px;}
.fc{font-family:var(--mono);font-size:10px;letter-spacing:.07em;color:var(--ink-pale);white-space:nowrap;}
.fdisc{font-size:10.5px;color:var(--ink-pale);max-width:640px;text-align:right;line-height:1.7;}

/* ANIMATIONS */
@keyframes fu{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.rv.in{opacity:1;transform:translateY(0);}
.rd1{transition-delay:.08s;}.rd2{transition-delay:.16s;}

/* RESPONSIVE */
@media(max-width:1100px){
  .story-g,.sty-hero-g,.msr-g{grid-template-columns:1fr;gap:36px;}
  .hw-grid{grid-template-columns:1fr;gap:34px;}
  .hw-col-img{position:static;top:auto;}
  .lc-intro{grid-template-columns:1fr;gap:34px;align-items:start;}
  .lc-phases{display:none;}
  .lc-track{grid-template-columns:repeat(8,minmax(116px,1fr));overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;}
  .lc-node{scroll-snap-align:center;}
  .lc-track::before{left:58px;right:58px;margin:0;}
  .ls{grid-template-columns:56px 1fr;} .ls-kpi{display:none;}
  .fi{grid-template-columns:1fr 1fr;}
}
@media(max-width:900px){
  .kpi-block{padding:60px 32px 66px;}
  .sec{padding:80px 28px;}
}
@media(max-width:768px){
  .nav-toggle{display:inline-flex;}
  /* nav links collapse into a dropdown panel under the bar */
  .nl{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;padding:10px 20px 16px;background:#fff;border-bottom:1px solid var(--rule);box-shadow:0 24px 40px -28px rgba(10,10,10,.55);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s;}
  nav.nav-open .nl{opacity:1;visibility:visible;transform:translateY(0);}
  .nl a{font-size:14.5px;padding:13px 14px;}
  .nl-ic{width:17px;height:17px;}
  /* hamburger morphs into an X when open */
  nav.nav-open .nav-toggle{border-color:var(--ember);}
  nav.nav-open .nav-toggle-bar:nth-child(1){transform:translateY(6px) rotate(45deg);}
  nav.nav-open .nav-toggle-bar:nth-child(2){opacity:0;}
  nav.nav-open .nav-toggle-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
  .sec{padding:76px 20px 56px;}
  .ls{grid-template-columns:1fr;position:static;transform:none!important;margin-bottom:14px;} .ls-idx{display:none;}
  .lcs{padding-bottom:0;}
  .lc-tl{padding:22px 18px 18px;} .lc-tl-head{flex-direction:column;gap:4px;}
  .prev-g,.wc-row,.kpi-tiers,.wwd-split{grid-template-columns:1fr;}
  .wwd-media{aspect-ratio:4/3;}
  #story-approach .st-cols{grid-template-columns:1fr;gap:14px;}
  #story-approach .st-cols::before{display:none;}
  .story-toggle{justify-content:center;margin-bottom:28px;flex-wrap:wrap;gap:10px;}
  .seg{width:100%;max-width:280px;}
  .seg-btn{padding:9px 12px;}
  .kpi-block{padding:48px 18px 56px;margin:48px 0 4px;border-radius:18px;}
  .kpi-tiers{gap:14px;}
  .kt,.kt:nth-child(2),.kt:nth-child(3){width:100%;grid-template-columns:64px 1fr;}
  .kt-l{grid-column:2;border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding:18px 18px 16px 4px;}
  .kt-b{grid-column:2;padding:16px 18px 20px 4px;}
  .loop-steps{grid-template-columns:repeat(3,1fr);gap:14px;} .loop-steps::after{display:none;}
  .msr-g{gap:30px;}
  .cta-sec{padding:64px 20px;}
  footer{padding:40px 20px 24px;}
  .fi{grid-template-columns:1fr 1fr;gap:22px;}
  .fb{flex-direction:column;align-items:flex-start;gap:12px;}
  .fc{white-space:normal;}
  .fdisc{text-align:left;max-width:none;}
}
@media(max-width:480px){
  .sec{padding:64px 18px 48px;}
  .hw-step{grid-template-columns:48px 1fr;gap:16px;}
  .hw-rail::before{top:24px;}
  .hw-node{width:48px;height:48px;font-size:18px;}
  .hw-body{padding-bottom:30px;}
  .hw-t{font-size:19px;}
  .fi{grid-template-columns:1fr;gap:26px;}
  .loop-steps{grid-template-columns:repeat(2,1fr);}
  .kt,.kt:nth-child(2),.kt:nth-child(3){grid-template-columns:46px 1fr;} .kt-num{width:34px;height:34px;font-size:12px;}
  .kt-l{padding:16px 14px 14px 2px;} .kt-b{padding:14px 14px 18px 2px;}
  .cta-h,.sh,.sty-hero-h{letter-spacing:-.02em;}
}

/* ════════ STYLEGUIDE RESKIN OVERRIDES ════════ */
body{font-size:16px;line-height:1.55;font-feature-settings:'ss01','cv11';background:#fdfdfd;}
body::after{display:none;}                 /* drop the warm paper-noise overlay for clean surfaces */
::-webkit-scrollbar-thumb{border-radius:9999px;}

/* Headings render in the Inter Tight display face; italic accents switch to Instrument Serif */
.nb-t,.sh,.ls-t,.kt-n,.loop-t,.pc-t,.hw-t,.cta-h,.wc-t{letter-spacing:-.025em;}
.sh,.cta-h{letter-spacing:-.035em;line-height:1.04;}
.sh em,.cta-h em{font-family:var(--accent-serif);font-weight:400;font-style:italic;letter-spacing:-.01em;}
.mpull{font-family:var(--accent-serif);font-size:21px;line-height:1.5;}

/* Big faded numerals pick up the soft-heat tone from the styleguide */
.ls-n,.hw-node{font-family:var(--serif);}

/* Buttons → styleguide pill radius + heat glow */
.cta-bp{border-radius:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 1px 2px rgba(242,102,37,.3),0 4px 16px rgba(242,102,37,.2);}
.cta-bp:hover{background:var(--ember-dk);}
.bgw,.n-cta{border-radius:10px;}
.n-cta{box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 4px 16px rgba(242,102,37,.18);}

/* Soften standalone surfaces to the 12–16px radius scale */
.callout{border-radius:0 12px 12px 0;}
.loop-card,.lc-tl{border-radius:14px;}
.wc{border-radius:10px;}
.ki{border-radius:9999px;}

/* Nav: taller, crisper, blurred like the styleguide header.
   Bar is full-bleed; its content is capped to the page container width (matches .si / footer .fi). */
nav{height:64px;padding:0 !important;display:block;background:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.nav-inner{max-width:1360px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 40px;}   /* 1360 = 1280 content band + 40px padding each side, matches .si / .fi edges */
@media(max-width:768px){.nav-inner{padding:0 20px;}}
.nb img{display:block;height:30px;width:auto;} .nb-t{display:none !important;}   /* RedRiver One wordmark logo */

/* Focus ring matches the system */
a:focus-visible,button:focus-visible{outline:2px solid var(--ember);outline-offset:3px;border-radius:8px;}

/* ═══════════════ CLICKABLE IMAGES — spinning conic gradient border (matches tier cards) ═══════════════ */
.lb-img{position:relative;z-index:0;cursor:zoom-in;
  --kt-g1:var(--ember);--kt-g2:var(--ember-lt);
  border:2px solid transparent;border-radius:16px;
  background:
    linear-gradient(#fff,#fff) padding-box,
    conic-gradient(from var(--kt-angle),transparent 0deg,var(--kt-g1) 70deg,var(--kt-g2) 120deg,transparent 200deg,transparent 360deg) border-box;
  animation:kt-spin 7s linear infinite;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease);}
.lb-img:hover{transform:translateY(-3px);box-shadow:0 26px 50px -28px rgba(242,102,37,.5);}
@media(prefers-reduced-motion:reduce){.lb-img{animation:none;}}

/* ═══════════════ LIGHTBOX ═══════════════ */
.lb{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;
  padding:clamp(20px,5vw,72px);
  background:radial-gradient(130% 130% at 50% 0%,rgba(23,18,14,.92) 0%,rgba(8,8,8,.96) 70%);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  opacity:0;visibility:hidden;transition:opacity .32s ease,visibility .32s ease;}
.lb.open{opacity:1;visibility:visible;}
.lb-figure{margin:0;max-width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;align-items:center;gap:18px;
  transform:scale(.96) translateY(8px);transition:transform .38s cubic-bezier(.22,.61,.36,1);}
.lb.open .lb-figure{transform:scale(1) translateY(0);}
.lb-figure img{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;
  border-radius:16px;padding:3px;
  background:linear-gradient(135deg,var(--ember) 0%,var(--ember-lt) 40%,rgba(242,102,37,.15) 100%);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.8);}
.lb-cap{font-family:var(--serif);font-size:clamp(20px,2.4vw,30px);font-weight:700;letter-spacing:-.02em;
  color:#fff;text-align:center;}
.lb-close{position:absolute;top:clamp(14px,2.4vw,28px);right:clamp(14px,2.4vw,28px);
  width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.07);color:#fff;font-size:26px;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .25s ease,border-color .25s ease,transform .25s ease;}
.lb-close:hover{background:var(--ember);border-color:var(--ember);transform:rotate(90deg);}
