/* ============================================================
   Lemur Labs — site styles
   Palette sampled from "think. design. colab" key art
   ============================================================ */
/* Clash Display — embedded for offline/standalone use */
@font-face {
  font-family: 'Clash Display';
  src: url('https://cdn.fontshare.com/wf/2GQIT54GKQY3JRFTSHS4ARTRNRQISSAA/3CIP5EBHRRHE5FVQU3VFROPUERNDSTDF/JTSL5QESUXATU47LCPUNHZQBDDIWDOSW.woff2') format('woff2');
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: 'Clash Display';
  src: url('https://cdn.fontshare.com/wf/FPDAZ2S6SW4QMSRIIKNNGTPM6VIXYMKO/5HNPQ453FRLIQWV2FNOBUU3FKTDZQVSG/Z3MGHFHX6DCTLQ55LJYRJ5MDCZPMFZU6.woff2') format('woff2');
  font-weight: 600;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: 'Clash Display';
  src: url('https://cdn.fontshare.com/wf/BFBSY7LX5W2U2EROCLVVTQP4VS7S4PC3/IIUX4FGTMD2LK2VWD3RVTAS4SSMUN7B5/53RZKGODFYDW3QHTIL7IPOWTBCSUEZK7.woff2') format('woff2');
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}


:root{
  --void:#080004; --ink:#0B0106; --plum:#160317; --aubergine:#28063D;
  --indigo:#3D0E80; --violet:#F5D547; --violet-lt:#F5D547;
  --rose:#F8E27E; --ember:#FBEFB5; --paper:#FAF7F0;
  --paper-60:rgba(250,247,240,.6); --paper-40:rgba(250,247,240,.4); --paper-12:rgba(250,247,240,.12);
  --disp:"Clash Display","Helvetica Neue",Helvetica,Arial,sans-serif;
  --sans:"General Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --mono:"SFMono-Regular",ui-monospace,"Cascadia Mono",Menlo,Consolas,monospace;
  --maxw:1240px;
  --grad:linear-gradient(98deg,var(--violet-lt) 0%,var(--rose) 55%,var(--ember) 100%);
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
body{background:var(--void);color:var(--paper);font-family:var(--sans);font-size:17px;line-height:1.6;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
::selection{background:var(--violet);color:var(--paper);}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;position:relative;z-index:2;}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose);
  display:inline-flex;align-items:center;gap:10px;}
.eyebrow::before{content:"";width:24px;height:1px;background:var(--rose);opacity:.6;}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}

h1,h2,h3{font-family:var(--disp);font-weight:600;letter-spacing:-.02em;line-height:1.02;}
section{position:relative;}

/* reveal animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.16,.84,.44,1),transform .9s cubic-bezier(.16,.84,.44,1);}
.reveal.in{opacity:1;transform:none;}
.reveal[data-d="1"]{transition-delay:.08s;} .reveal[data-d="2"]{transition-delay:.16s;}
.reveal[data-d="3"]{transition-delay:.24s;} .reveal[data-d="4"]{transition-delay:.32s;}
.reveal[data-d="5"]{transition-delay:.40s;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* ---------------- Mobile overrides (inline fixed-px widths) ---------------- */
@media(max-width:700px){
  .sec h1,.sec h2,.sec h3,.sec p,.hero h1,.hero h2,.hero p,.sec-head h2,.sec-head p,.hww-block h3,.hww-block p{width:auto !important;max-width:100% !important;height:auto !important;}
  .wrap{padding-left:20px;padding-right:20px;}
  .sec{padding-left:0;padding-right:0;}
}

.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:600;font-size:15px;
  padding:14px 26px;border-radius:999px;cursor:pointer;border:1px solid transparent;transition:transform .25s,box-shadow .35s,background .25s,border-color .25s;position:relative;}
.btn-primary{background:var(--paper);color:var(--ink);box-shadow:0 0 0 0 rgba(245,213,71,.5);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 50px -10px rgba(248,226,126,.7),0 0 0 6px rgba(245,213,71,.18);}
.btn-ghost{background:rgba(250,247,240,.04);color:var(--paper);border-color:var(--paper-12);}
.btn-ghost:hover{border-color:var(--violet-lt);background:rgba(245,213,71,.16);transform:translateY(-2px);}
.btn .arr{transition:transform .3s;}
.btn:hover .arr{transform:translate(3px,-3px);}

/* ---------------- Nav ---------------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;transition:background .4s,backdrop-filter .4s,border-color .4s;border-bottom:1px solid transparent;}
.nav.scrolled{background:rgba(8,0,4,.72);backdrop-filter:blur(16px) saturate(1.2);border-bottom-color:var(--paper-12);}
.nav-in{max-width:var(--maxw);margin:0 auto;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:32px;}
.brand{display:flex;align-items:center;gap:18px;}
.brand img{height:52px;width:auto;}
.nav-links{display:flex;gap:28px;align-items:center;}
.nav-links a{font-size:19px;white-space:nowrap;color:var(--paper-60);transition:color .2s;position:relative;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;height:1px;width:0;background:var(--grad);transition:width .3s;}
.nav-links a:hover{color:var(--paper);}
.nav-links a:hover::after{width:100%;}
.nav-cta{display:flex;align-items:center;gap:16px;}
.nav-cta .btn{white-space:nowrap;}
.menu-btn{display:none;background:none;border:0;color:var(--paper);cursor:pointer;font-size:22px;line-height:1;}
.nav.menu-open{border-radius:28px;}
.mobile-menu{display:none;flex-direction:column;gap:4px;padding:14px 20px 20px;}
.mobile-menu a{font-size:17px;padding:12px 4px;color:var(--paper-60);border-bottom:1px solid var(--paper-12);}
.mobile-menu a:last-child{border-bottom:0;margin-top:8px;}
.mobile-menu a.btn{justify-content:center;}
@media(max-width:1040px){
  .nav-links{display:none;} .nav-cta .btn{display:none;} .menu-btn{display:block;}
  .nav.menu-open .mobile-menu{display:flex;}
}

/* ---------------- Hero ---------------- */
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:120px 0 80px;}
#hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;}

/* ---- Animated hero figure (think.design.colab key art) ---- */
.hero-figure{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
.hero-figure::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,var(--void) 0%,rgba(8,0,4,.62) 20%,transparent 40%),
    linear-gradient(0deg,var(--void) 1%,transparent 22%);}
.hero-figure img{position:absolute;top:47%;right:1%;height:76%;width:auto;object-fit:contain;
  transform:translateY(-50%);transform-origin:55% 45%;
  -webkit-mask-image:radial-gradient(135% 125% at 55% 47%,#000 50%,rgba(0,0,0,.7) 70%,transparent 90%);
  mask-image:radial-gradient(135% 125% at 55% 47%,#000 50%,rgba(0,0,0,.7) 70%,transparent 90%);
  filter:brightness(1) contrast(1.04) saturate(1.12);
  animation:figExposure 7.5s ease-in-out infinite, figDrift 22s ease-in-out infinite;}
@keyframes figExposure{0%,100%{filter:brightness(.94) contrast(1.02) saturate(1.05);}
  45%{filter:brightness(1.18) contrast(1.12) saturate(1.32);}
  70%{filter:brightness(1.05) contrast(1.06) saturate(1.18);}}
@keyframes figDrift{0%,100%{transform:translateY(-50%) scale(1.01);}50%{transform:translateY(-51.5%) scale(1.04);}}

/* rotating high-exposure light rays around the person */
.figure-rays{position:absolute;top:43%;right:24%;width:840px;height:840px;transform:translate(50%,-50%);
  background:conic-gradient(from 0deg,transparent 0deg,rgba(244,154,144,.16) 8deg,transparent 18deg,
    transparent 40deg,rgba(123,71,192,.14) 52deg,transparent 64deg,
    transparent 96deg,rgba(248,226,126,.13) 106deg,transparent 120deg,
    transparent 168deg,rgba(244,154,144,.12) 180deg,transparent 196deg,
    transparent 248deg,rgba(123,71,192,.13) 262deg,transparent 276deg,
    transparent 318deg,rgba(248,226,126,.12) 330deg,transparent 344deg);
  -webkit-mask-image:radial-gradient(circle at 50% 50%,transparent 8%,#000 22%,#000 48%,transparent 66%);
  mask-image:radial-gradient(circle at 50% 50%,transparent 8%,#000 22%,#000 48%,transparent 66%);
  mix-blend-mode:screen;opacity:.9;animation:raySpin 26s linear infinite, rayFlicker 5s ease-in-out infinite;}
@keyframes raySpin{to{transform:translate(50%,-50%) rotate(360deg);}}
@keyframes rayFlicker{0%,100%{opacity:.55;}50%{opacity:1;}}

/* bloom of light around the head */
.figure-bloom{position:absolute;top:34%;right:30%;width:460px;height:460px;transform:translate(50%,-50%);
  background:radial-gradient(circle at 50% 50%,rgba(255,228,200,.5) 0%,rgba(244,154,144,.32) 18%,rgba(123,71,192,.22) 42%,transparent 66%);
  mix-blend-mode:screen;filter:blur(6px);animation:bloomBreathe 6s ease-in-out infinite;}
@keyframes bloomBreathe{0%,100%{opacity:.7;transform:translate(50%,-50%) scale(1);}50%{opacity:1;transform:translate(50%,-50%) scale(1.16);}}

/* diagonal high-exposure shimmer sweep */
.figure-sweep{position:absolute;inset:0;mix-blend-mode:screen;opacity:.85;
  background:linear-gradient(108deg,transparent 38%,rgba(248,226,126,.16) 47%,rgba(255,240,230,.34) 50%,rgba(123,71,192,.16) 53%,transparent 62%);
  background-size:260% 100%;animation:sweep 6.5s ease-in-out infinite;}
@keyframes sweep{0%{background-position:140% 0;}55%,100%{background-position:-60% 0;}}

/* twinkling spark fields layered over the figure */
.figure-sparks{position:absolute;top:30%;right:6%;width:780px;height:560px;transform:translateY(-50%);
  mix-blend-mode:screen;pointer-events:none;
  background-image:
    radial-gradient(2px 2px at 12% 30%,rgba(255,228,200,.95),transparent 60%),
    radial-gradient(1.5px 1.5px at 28% 62%,rgba(244,154,144,.9),transparent 60%),
    radial-gradient(2px 2px at 44% 22%,rgba(248,226,126,.9),transparent 60%),
    radial-gradient(1.5px 1.5px at 58% 70%,rgba(255,240,230,.95),transparent 60%),
    radial-gradient(2.5px 2.5px at 70% 40%,rgba(244,154,144,.95),transparent 60%),
    radial-gradient(1.5px 1.5px at 82% 58%,rgba(248,226,126,.85),transparent 60%),
    radial-gradient(2px 2px at 36% 84%,rgba(255,228,200,.9),transparent 60%),
    radial-gradient(1.5px 1.5px at 64% 14%,rgba(255,240,230,.9),transparent 60%),
    radial-gradient(2px 2px at 90% 30%,rgba(244,154,144,.85),transparent 60%);
  animation:twinkle 3.6s ease-in-out infinite, sparkFloat 14s ease-in-out infinite;}
.figure-sparks.two{width:720px;height:520px;right:10%;
  background-image:
    radial-gradient(1.5px 1.5px at 20% 50%,rgba(255,240,230,.9),transparent 60%),
    radial-gradient(2px 2px at 38% 34%,rgba(248,226,126,.85),transparent 60%),
    radial-gradient(1.5px 1.5px at 52% 80%,rgba(244,154,144,.9),transparent 60%),
    radial-gradient(2.5px 2.5px at 66% 52%,rgba(255,228,200,.95),transparent 60%),
    radial-gradient(1.5px 1.5px at 78% 24%,rgba(248,226,126,.9),transparent 60%),
    radial-gradient(2px 2px at 86% 66%,rgba(255,240,230,.85),transparent 60%);
  animation:twinkle 4.8s ease-in-out infinite reverse, sparkFloat 18s ease-in-out infinite reverse;}
@keyframes twinkle{0%,100%{opacity:.35;}50%{opacity:1;}}
@keyframes sparkFloat{0%,100%{transform:translateY(-50%) translateX(0);}50%{transform:translateY(-52%) translateX(-14px);}}
@media(max-width:1040px){.hero-figure img{right:-30%;height:96%;min-width:120%;opacity:.7;
  -webkit-mask-image:radial-gradient(120% 80% at 60% 40%,#000 30%,transparent 72%);mask-image:radial-gradient(120% 80% at 60% 40%,#000 30%,transparent 72%);}
  .figure-bloom{right:20%;}.figure-sparks,.figure-sparks.two{right:-4%;}}
@media (prefers-reduced-motion:reduce){.hero-figure img,.figure-rays,.figure-bloom,.figure-sweep,.figure-sparks{animation:none;}}

@media(max-width:1040px){.hero-in{max-width:680px;margin:0 auto;text-align:center;}
  .hero p.sub{margin:30px auto 0;}.hero-cta{justify-content:center;}.hero-in .eyebrow::before{display:inline-block;}}

.hero-glow{position:absolute;z-index:0;left:50%;top:38%;width:1100px;height:1100px;transform:translate(-50%,-50%);
  background:radial-gradient(circle at 50% 50%,rgba(98,57,184,.55) 0%,rgba(61,14,128,.32) 32%,rgba(40,6,61,.12) 52%,transparent 70%);
  filter:blur(10px);pointer-events:none;opacity:var(--glow-op,1);animation:breathe 9s ease-in-out infinite;}
.hero-glow.ember{background:radial-gradient(circle at 50% 50%,rgba(244,154,144,.22) 0%,rgba(248,226,126,.12) 30%,transparent 62%);
  width:620px;height:620px;top:30%;animation-delay:-3s;}
@keyframes breathe{0%,100%{transform:translate(-50%,-50%) scale(1);}50%{transform:translate(-50%,-50%) scale(1.12);}}
.hero-in{position:relative;z-index:2;max-width:760px;margin:0;margin-right:auto;text-align:left;}
.hero-in .eyebrow::before{display:none;}
.hero h1{font-size:clamp(42px,7.2vw,92px);margin:26px 0 0;text-shadow:0 2px 40px rgba(8,0,4,.75);}
.hero h1 .line{display:block;overflow:hidden;}
.hero h1 .line span{display:inline-block;animation:rise .95s cubic-bezier(.16,.84,.44,1);}
.hero h1 .line:nth-child(2) span{animation-delay:.12s;} .hero h1 .line:nth-child(3) span{animation-delay:.24s;}
@keyframes rise{from{transform:translateY(110%);}to{transform:none;}}
.hero p.sub{font-size:clamp(17px,2vw,21px);color:var(--paper-60);max-width:560px;margin:30px 0 0;text-shadow:0 2px 24px rgba(8,0,4,.7);}
.hero-cta{display:flex;gap:16px;justify-content:flex-start;margin-top:40px;flex-wrap:wrap;}
.hero-scroll{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:2;font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--paper-40);text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;}
.hero-scroll .dot{width:5px;height:5px;border-radius:50%;background:var(--rose);animation:scrolldot 1.8s ease-in-out infinite;}
@keyframes scrolldot{0%{transform:translateY(-6px);opacity:0;}40%{opacity:1;}100%{transform:translateY(14px);opacity:0;}}
@media (prefers-reduced-motion:reduce){.hero h1 .line span{transform:none;animation:none;}.hero-glow{animation:none;}.hero-scroll .dot{animation:none;}}

/* section heading block */
.sec{padding:120px 0;}
.sec-head{max-width:760px;margin-bottom:64px;}
.sec-head h2{font-size:clamp(32px,4.6vw,60px);margin-top:18px;}
.sec-head p{color:var(--paper-60);font-size:19px;margin-top:22px;}

/* ---------------- Bridge diagram ---------------- */
.bridge{display:grid;grid-template-columns:1fr minmax(48px,1fr) auto minmax(48px,1fr) 1fr;align-items:center;gap:0;margin:0 auto 80px;max-width:1100px;}
.bnode{border:1px solid var(--paper-12);border-radius:18px;padding:26px 24px;background:linear-gradient(180deg,rgba(40,6,61,.5),rgba(11,1,6,.5));text-align:center;position:relative;backdrop-filter:blur(6px);}
.bnode .k{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-40);}
.bnode .t{font-family:var(--disp);font-size:22px;margin-top:8px;}
.bnode .d{font-size:14px;color:var(--paper-60);margin-top:8px;}
.bnode .ntags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:14px;}
.bnode .ntags span{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--paper-60);
  border:1px solid var(--paper-12);border-radius:6px;padding:4px 8px;background:rgba(8,0,4,.35);}
.bnode.dev{border-color:rgba(244,154,144,.32);background:linear-gradient(180deg,rgba(244,154,144,.1),rgba(11,1,6,.55));}
.bnode.dev .ntags span{border-color:rgba(244,154,144,.32);color:var(--ember);}
.bnode.comm{border-color:rgba(248,226,126,.32);background:linear-gradient(180deg,rgba(248,226,126,.1),rgba(11,1,6,.55));}
.bnode.comm .ntags span{border-color:rgba(248,226,126,.32);color:var(--rose);}
.bnode.core{position:relative;overflow:hidden;padding:34px 30px;border-color:rgba(178,120,255,.7);
  background:radial-gradient(120% 150% at 50% -10%,#7a32d6 0%,#4a13a0 26%,#2a0b50 52%,#120322 100%);
  box-shadow:0 0 0 1px rgba(178,120,255,.35),0 0 70px -6px rgba(123,71,192,.85),0 0 120px -20px rgba(244,154,144,.5),inset 0 0 60px -20px rgba(248,226,126,.6);
  animation:corePulse 4.5s ease-in-out infinite;}
@keyframes corePulse{0%,100%{box-shadow:0 0 0 1px rgba(178,120,255,.35),0 0 60px -10px rgba(123,71,192,.75),0 0 110px -22px rgba(244,154,144,.42),inset 0 0 60px -22px rgba(248,226,126,.5);}
  50%{box-shadow:0 0 0 1px rgba(200,150,255,.55),0 0 90px 0 rgba(123,71,192,.95),0 0 150px -10px rgba(244,154,144,.65),inset 0 0 70px -14px rgba(248,226,126,.8);}}
.core-burst{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:conic-gradient(from 0deg at 50% 38%,transparent 0deg,rgba(244,154,144,.5) 10deg,transparent 24deg,
    transparent 70deg,rgba(248,226,126,.45) 84deg,transparent 100deg,
    transparent 150deg,rgba(178,120,255,.5) 166deg,transparent 184deg,
    transparent 244deg,rgba(244,154,144,.42) 262deg,transparent 280deg,
    transparent 320deg,rgba(248,226,126,.45) 336deg,transparent 352deg);
  -webkit-mask-image:radial-gradient(circle at 50% 38%,#000 0%,#000 30%,transparent 64%);
  mask-image:radial-gradient(circle at 50% 38%,#000 0%,#000 30%,transparent 64%);
  mix-blend-mode:screen;opacity:.9;animation:coreSpin 14s linear infinite,rayFlicker 3.5s ease-in-out infinite;}
@keyframes coreSpin{to{transform:rotate(360deg);}}
.bnode.core img,.bnode.core .t,.bnode.core .d{position:relative;z-index:1;}
.bnode.core img{height:58px;margin:0 auto 12px;filter:drop-shadow(0 0 18px rgba(255,228,200,.85)) drop-shadow(0 0 6px rgba(244,154,144,.9));animation:coreMark 4.5s ease-in-out infinite;}
@keyframes coreMark{0%,100%{filter:drop-shadow(0 0 16px rgba(255,228,200,.7)) drop-shadow(0 0 5px rgba(244,154,144,.8));}50%{filter:drop-shadow(0 0 26px rgba(255,240,230,1)) drop-shadow(0 0 12px rgba(244,154,144,1));}}
.bnode.core .t{font-size:25px;text-shadow:0 0 24px rgba(248,226,126,.6);}
.bnode.core .d{color:rgba(250,247,240,.78);}
@media (prefers-reduced-motion:reduce){.bnode.core,.bnode.core img,.core-burst{animation:none;}}
.blink{position:relative;height:2px;background:var(--paper-12);overflow:visible;min-width:60px;}
.blink::after{content:"";position:absolute;top:50%;left:0;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);
  background:var(--rose);box-shadow:0 0 14px 3px var(--rose);animation:flow var(--flow-dur,2.6s) linear infinite;}
.blink.r2::after{animation-delay:1.3s;background:var(--ember);box-shadow:0 0 14px 3px var(--ember);}
@keyframes flow{0%{left:0%;opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{left:100%;opacity:0;}}
@media(max-width:820px){.bridge{grid-template-columns:1fr;gap:0;}.blink{width:2px;height:46px;min-width:0;justify-self:center;}
  .blink::after{animation-name:flowv;}@keyframes flowv{0%{top:0;left:50%;opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{top:100%;left:50%;opacity:0;}}}
@media (prefers-reduced-motion:reduce){.blink::after{animation:none;opacity:.8;}}

/* audience cards */
.aud{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.acard{border:1px solid var(--paper-12);border-radius:20px;padding:32px;background:linear-gradient(180deg,rgba(22,3,23,.6),rgba(8,0,4,.4));
  transition:transform .4s cubic-bezier(.16,.84,.44,1),border-color .4s,box-shadow .4s;}
.acard:hover{transform:translateY(-6px);border-color:rgba(245,213,71,.5);box-shadow:0 30px 70px -30px rgba(98,57,184,.6);}
.acard .icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(245,213,71,.16);border:1px solid rgba(245,213,71,.4);margin-bottom:20px;}
.acard h3{font-size:21px;}
.acard .row{margin-top:18px;}
.acard .row .lab{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);}
.acard .row.get .lab{color:var(--rose);}
.acard .row p{font-size:15px;color:var(--paper-60);margin-top:6px;}
.acard hr{border:0;border-top:1px solid var(--paper-12);margin:20px 0;}
@media(max-width:820px){.aud{grid-template-columns:1fr;}}

/* ---------------- THORChain report card + reader ---------------- */
.hcard.tc-report{justify-content:flex-start;}
.report-open{margin-top:18px;text-align:left;border:1px solid var(--paper-12);border-radius:18px;
  background:rgba(8,0,4,.4);padding:14px;cursor:pointer;flex:1;min-height:0;
  display:flex;flex-direction:column;gap:14px;color:var(--paper);transition:border-color .35s,transform .35s,box-shadow .35s;}
.report-open:hover{border-color:rgba(245,213,71,.55);transform:translateY(-3px);box-shadow:0 26px 60px -30px rgba(98,57,184,.7);}
.report-cover{flex:1;min-height:0;border-radius:12px;overflow:hidden;display:block;}
.report-cover img{width:100%;height:100%;object-fit:cover;display:block;}
.report-open .report-cta{font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ember);display:inline-flex;gap:8px;align-items:center;justify-content:space-between;}
.report-open:hover .report-cta .ar{transform:translate(2px,-2px);}
.report-open .report-cta .ar{transition:transform .3s;}

.reader{position:fixed;inset:0;z-index:120;background:rgba(6,2,4,.66);backdrop-filter:blur(8px);
  opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s;}
.reader.open{opacity:1;visibility:visible;}
.reader-bar{position:absolute;top:0;left:0;right:0;height:3px;background:var(--paper-12);z-index:3;}
.reader-bar i{display:block;height:100%;width:0;background:var(--grad);transition:width .08s linear;}
.reader-close{position:absolute;top:18px;right:22px;z-index:4;font-family:var(--mono);font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--paper);background:rgba(8,0,4,.6);border:1px solid var(--paper-12);
  border-radius:999px;padding:10px 16px;cursor:pointer;display:inline-flex;gap:9px;align-items:center;transition:border-color .3s,background .3s;}
.reader-close:hover{border-color:var(--violet-lt);background:rgba(245,213,71,.16);}
.reader-scroll{position:absolute;inset:0;overflow-y:auto;-webkit-overflow-scrolling:touch;
  transform:translateY(24px);transition:transform .45s cubic-bezier(.16,.84,.44,1);}
.reader.open .reader-scroll{transform:none;}
.report{max-width:740px;margin:0 auto;padding:104px 28px 140px;}
.report-head{border-bottom:1px solid var(--paper-12);padding-bottom:34px;margin-bottom:40px;}
.report-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--paper-60);}
.report-eyebrow img{height:18px;width:auto;}
.report-head h1{font-family:var(--disp);font-size:clamp(44px,8vw,84px);margin:16px 0 0;}
.report-dek{color:var(--paper-60);font-size:18px;margin-top:18px;max-width:54ch;}
.report-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-family:var(--mono);font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--paper-40);}
.report-meta span{position:relative;padding-right:18px;}
.report-meta span:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;width:4px;height:4px;border-radius:50%;background:var(--paper-12);transform:translateY(-50%);}
.report-hero{margin-top:30px;border-radius:18px;overflow:hidden;border:1px solid var(--paper-12);}
.report-hero img{width:100%;display:block;}
.report-lead{font-size:21px;line-height:1.6;color:var(--paper);}
.report h2{font-family:var(--disp);font-size:clamp(26px,4vw,38px);margin:54px 0 4px;}
.report h2 + h3{margin-top:18px;}
.report h3{font-family:var(--disp);font-weight:600;font-size:20px;color:var(--ember);margin:30px 0 0;}
.report p{font-size:17px;line-height:1.7;color:var(--paper-60);margin-top:14px;}
.report p b,.report-lead b{color:var(--paper);font-weight:600;}
.report-list{margin:16px 0 0;padding-left:22px;color:var(--paper-60);font-size:17px;line-height:1.7;}
.report-list li{margin-top:8px;}
.report-list li b{color:var(--paper);}
.report-chart{margin:26px 0 0;border:1px solid var(--paper-12);border-radius:16px;overflow:hidden;background:rgba(8,0,4,.4);}
.report-chart img{width:100%;display:block;}
.report-chart figcaption{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--paper-40);padding:12px 16px;border-top:1px solid var(--paper-12);}
.report-chart .ph{aspect-ratio:16/8;display:grid;place-items:center;
  background-image:repeating-linear-gradient(135deg,rgba(250,247,240,.05) 0 10px,transparent 10px 20px);}
.report-chart .ph span{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--paper-40);text-transform:uppercase;}
.report-takeaways{margin-top:56px;border:1px solid rgba(245,213,71,.3);border-radius:20px;padding:30px 32px;
  background:linear-gradient(180deg,rgba(245,213,71,.1),rgba(8,0,4,.3));}
.report-takeaways p{color:var(--paper);margin-top:14px;}
.report-source{font-family:var(--mono);font-size:12px;color:var(--paper-40);margin-top:40px;}
.report-invite{display:flex;flex-direction:column;gap:8px;margin-top:24px;border:1px solid rgba(51,255,153,.35);
  border-radius:20px;padding:28px 30px;background:linear-gradient(180deg,rgba(51,255,153,.1),rgba(8,0,4,.3));
  transition:border-color .35s,transform .35s,box-shadow .35s;}
.report-invite:hover{border-color:rgba(51,255,153,.7);transform:translateY(-3px);box-shadow:0 30px 70px -36px rgba(51,255,153,.5);}
.report-invite-k{font-family:var(--disp);font-size:24px;color:var(--paper);}
.report-invite-t{font-size:15px;color:var(--paper-60);}
.report-invite-cta{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:#33FF99;display:inline-flex;gap:8px;align-items:center;margin-top:6px;}
.report-invite:hover .report-invite-cta .ar{transform:translate(2px,-2px);}
.report-invite-cta .ar{transition:transform .3s;}
.report-foot{font-size:14px;color:var(--paper-40);margin-top:18px;}

/* scan-to-article animation (card 06) */
.scan-open{padding:14px;}
.scan-stage{position:relative;flex:1;min-height:0;border-radius:12px;overflow:hidden;display:block;background:#0c0c10;}
.scan-layer{position:absolute;inset:0;}
.scan-layer img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.scan-out{opacity:0;}
.scan-tag{position:absolute;left:10px;top:10px;z-index:3;display:inline-flex;align-items:center;gap:7px;
  font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--paper);
  background:rgba(8,0,4,.7);border:1px solid var(--paper-12);border-radius:7px;padding:5px 9px;backdrop-filter:blur(6px);}
.scan-tag img{height:13px;width:auto;}
.scan-beam{position:absolute;left:0;right:0;top:0;height:30%;z-index:2;
  background:linear-gradient(180deg,transparent,rgba(51,255,153,.06) 60%,rgba(51,255,153,.5));
  border-bottom:2px solid #33FF99;box-shadow:0 0 26px 6px rgba(51,255,153,.5);}
@media (prefers-reduced-motion:no-preference){
  .scan-beam{animation:scanbeam 5.5s cubic-bezier(.6,0,.4,1) infinite;}
  .scan-src{animation:scansrc 5.5s ease-in-out infinite;}
  .scan-out{animation:scanout 5.5s ease-in-out infinite;}
}
@keyframes scanbeam{
  0%{top:-32%;opacity:0;} 6%{opacity:1;}
  52%{top:100%;opacity:1;} 58%{opacity:0;} 100%{top:100%;opacity:0;}
}
@keyframes scansrc{
  0%,52%{opacity:1;filter:none;} 64%,94%{opacity:0;filter:blur(6px);} 100%{opacity:1;filter:none;}
}
@keyframes scanout{
  0%,52%{opacity:0;transform:scale(1.04);} 66%,94%{opacity:1;transform:scale(1);} 100%{opacity:0;transform:scale(1.04);}
}
.scan-open:hover .scan-beam,.scan-open:hover .scan-src,.scan-open:hover .scan-out{animation-play-state:paused;}

.report-origin{display:inline-flex;align-items:center;gap:9px;margin-top:18px;font-size:14px;color:var(--paper-60);}
.report-origin img{height:18px;width:auto;}
.report-origin code{font-family:var(--mono);font-size:12.5px;color:var(--ember);}
.report-pull{font-family:var(--disp);font-size:clamp(20px,2.4vw,26px);line-height:1.3;color:var(--paper);
  border-left:2px solid #33FF99;padding-left:20px;margin-top:30px;}

.report-chart-tall img{max-height:560px;width:auto;margin:0 auto;}
.report-chart-tall{display:flex;flex-direction:column;align-items:center;}

/* cover badge (GitLab logo on dev-spec thumbnail) */
.report-cover{position:relative;}
.cover-badge{position:absolute;top:10px;right:10px;background:#fff;border-radius:9px;padding:6px 8px;
  box-shadow:0 6px 18px -6px rgba(0,0,0,.6);display:inline-flex;}
.cover-badge img{height:18px;width:auto;display:block;}

/* step row with GitLab logo pinned far right */
.step-row{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.step-gitlab{flex:none;display:inline-flex;align-items:center;background:var(--violet);
  padding:10px 21px;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.5);}
.step-gitlab img{height:68px;width:auto;display:block;}

/* X logo inside post link */
.x-ico{width:15px;height:15px;flex:none;margin-right:2px;vertical-align:-2px;}

/* link to external post inside integrations card */
.tc-postlink{margin-top:16px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;
  font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ember);
  border-bottom:1px solid rgba(245,213,71,.4);padding-bottom:3px;transition:color .25s,border-color .25s;}
.tc-postlink:hover{color:var(--paper);border-color:var(--violet-lt);}
.tc-postlink:hover .ar{transform:translate(2px,-2px);}
.tc-postlink .ar{transition:transform .3s;}

/* GEO/PR and ADR case-study flow */
.tc-flow-card{justify-content:flex-start;}
.hcard.tc-audit-card{width:min(1120px,94vw);display:grid;grid-template-columns:minmax(260px,0.72fr) 1.65fr;grid-template-rows:100%;gap:32px;align-items:center;}
.tc-audit-text{display:flex;flex-direction:column;justify-content:center;min-width:0;}
.viz.tc-full.tc-audit-viz{height:100%;margin-top:0;background:#fff;border:none;border-radius:20px;overflow:hidden;box-shadow:0 30px 70px -34px rgba(0,0,0,.5);}
.pros-cons-viz{margin-top:20px;border-radius:20px;overflow:hidden;background:#fff;border:none;box-shadow:0 30px 70px -34px rgba(0,0,0,.5);}
.pros-cons-viz img{width:100%;display:block;border-radius:20px;}
.tc-audit-h3{font-size:clamp(30px,3.6vw,46px)!important;}
@media(max-width:1040px){
  .hcard.tc-audit-card{width:100%;display:flex;flex-direction:column;}
  .tc-audit-viz{height:auto;margin-top:18px;}
}
/* Spec card: text left, smaller image right */
.hcard.tc-spec-card{width:min(1160px,94vw);display:grid;grid-template-columns:1.15fr minmax(260px,0.95fr);grid-template-rows:100%;gap:36px;align-items:center;}
.tc-spec-text{display:flex;flex-direction:column;justify-content:center;min-width:0;}
.viz.tc-full.tc-spec-viz{height:100%;margin-top:0;background:#fff;border:none;border-radius:20px;overflow:hidden;box-shadow:0 30px 70px -34px rgba(0,0,0,.5);}
.viz.tc-full.tc-spec-viz img{width:100%;height:100%;object-fit:cover;object-position:left center;}
@media(max-width:1040px){
  .hcard.tc-spec-card{width:100%;display:flex;flex-direction:column;}
  .tc-spec-viz{height:auto;margin-top:0;}
}
.tc-flow{flex:1;min-height:0;margin-top:22px;display:flex;align-items:center;gap:10px;}
.tc-flow-adr{gap:6px;flex:none;justify-content:center;}
.tc-flow-card .report-open{flex:none;margin-top:20px;padding:14px 16px;}
.tc-flow-step{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;}
.tc-flow-thumb{width:100%;aspect-ratio:1/1;border-radius:14px;overflow:hidden;border:1px solid var(--paper-12);background:#0a1414;box-shadow:0 20px 46px -26px rgba(0,0,0,.8);}
.tc-flow-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.tc-flow-icon{width:100%;aspect-ratio:1/1;border-radius:14px;display:grid;place-items:center;border:1px solid var(--paper-12);background:rgba(250,247,240,.03);color:var(--paper-40);}
.tc-flow-icon svg{width:34%;height:34%;}
.tc-flow-k{font-family:var(--mono);font-size:11px;letter-spacing:.05em;font-weight:600;color:var(--paper);}
.tc-flow-d{font-size:12.5px;line-height:1.4;color:var(--paper-60);}
.tc-flow-arr{flex:0 0 auto;color:var(--paper-40);font-size:18px;}
.tc-flow-thumb{cursor:zoom-in;padding:0;border:none;background:none;display:block;}
@media(max-width:1040px){
  .tc-flow{flex-wrap:wrap;}
  .tc-flow-arr{transform:rotate(90deg);}
}
.img-lightbox-scroll{display:flex;align-items:center;justify-content:center;padding:60px;overflow:visible;}
.img-lightbox-scroll img{max-width:min(1100px,88vw);max-height:84vh;width:auto;height:auto;object-fit:contain;border-radius:16px;box-shadow:0 40px 100px -20px rgba(0,0,0,.6);}

/* 3D magnifying glass + lemur icon (deep-dive card) */
.dive-open{display:flex;flex-direction:column;}
.dive-stage{flex:1;min-height:0;border-radius:12px;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:26px;position:relative;overflow:hidden;background:#06120d;}
.dive-stage::before{content:"";position:absolute;inset:0;z-index:0;
  background:url('assets/thorchain/exploit/cover.avif') center/cover no-repeat;}
.dive-stage::after{content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(80% 80% at 50% 45%,rgba(6,18,13,.25),rgba(4,12,9,.72));}
.dive-stage > *{position:relative;z-index:1;}
.mag3d{position:relative;width:160px;height:160px;margin-left:38%;animation:magbob 5s ease-in-out infinite;}
@media (prefers-reduced-motion:reduce){.mag3d{animation:none;}}
@keyframes magbob{0%,100%{transform:translateY(0) rotate(-4deg);}50%{transform:translateY(-8px) rotate(-1deg);}}
.mag-lens{position:absolute;top:0;left:0;width:124px;height:124px;border-radius:50%;
  background:radial-gradient(circle at 38% 32%,#1c0a24,#0b0106 78%);
  box-shadow:0 0 0 11px #F5D547,
    0 0 0 12px rgba(138,111,21,.9),
    0 18px 50px -14px rgba(0,0,0,.8),
    inset 0 3px 10px rgba(255,255,255,.18),
    inset 0 -10px 22px rgba(0,0,0,.6);
  display:grid;place-items:center;overflow:hidden;}
.mag-thumb{position:absolute;inset:0;border-radius:50%;overflow:hidden;}
.mag-thumb img{width:100%;height:100%;object-fit:cover;opacity:.32;filter:saturate(.7);}
.mag-thumb::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,rgba(20,4,28,.2),rgba(8,1,6,.85));}
.mag-glass{position:relative;z-index:2;width:74px;height:74px;display:grid;place-items:center;}
.mag-glass img{width:100%;height:100%;object-fit:contain;
  filter:brightness(0) invert(1) drop-shadow(0 2px 6px rgba(245,213,71,.5));opacity:.95;}
.mag-glint{position:absolute;top:14px;left:18px;width:46px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 70%);
  transform:rotate(-28deg);filter:blur(1px);z-index:3;pointer-events:none;
  animation:magglint 5s ease-in-out infinite;}
@keyframes magglint{0%,100%{opacity:.5;}50%{opacity:.85;}}
.mag-handle{position:absolute;top:94px;left:94px;width:26px;height:62px;border-radius:13px;
  transform:rotate(-45deg);transform-origin:top center;
  background:linear-gradient(90deg,#d9b62e,#F5D547 45%,#fbeeb0 60%,#d9b62e);
  box-shadow:0 12px 26px -8px rgba(0,0,0,.7),inset 0 0 6px rgba(255,255,255,.35);}
.dive-label{position:absolute;left:0;right:0;bottom:18px;z-index:2;
  font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--paper-60);text-align:center;}

/* X post popup */
.post-wrap{max-width:620px;margin:0 auto;padding:104px 28px 120px;display:flex;flex-direction:column;gap:22px;}
.post-card{border:1px solid var(--paper-12);border-radius:18px;overflow:hidden;background:#000;}
.post-card img{width:100%;display:block;}
.reader-post .report-invite{margin-top:0;}
@media(max-width:560px){.post-wrap{padding:96px 20px 96px;}}
@media(max-width:560px){.report{padding:96px 20px 110px;}}

/* ---------------- SMART ---------------- */
.smart-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.scard{border:1px solid var(--paper-12);border-radius:18px;padding:26px 22px;background:rgba(11,1,6,.5);position:relative;overflow:hidden;transition:transform .4s,border-color .4s;}
.scard::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,rgba(245,213,71,.18),transparent 70%);opacity:0;transition:opacity .4s;}
.scard:hover{transform:translateY(-6px);border-color:rgba(248,226,126,.45);}
.scard:hover::before{opacity:1;}
.scard .n{font-family:var(--disp);font-size:34px;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.scard h3{font-size:18px;margin-top:14px;}
.scard p{font-size:14px;color:var(--paper-60);margin-top:8px;}
@media(max-width:980px){.smart-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.smart-grid{grid-template-columns:1fr;}}

/* formats marquee */
.marquee{margin-top:64px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee-track{display:flex;gap:14px;width:max-content;animation:marq var(--marq-dur,36s) linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.chip{font-family:var(--mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--paper-60);
  border:1px solid var(--paper-12);border-radius:999px;padding:11px 20px;white-space:nowrap;background:rgba(40,6,61,.3);}
@keyframes marq{to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;}}

/* ---------------- Work ---------------- */
.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;}
.wcard{border-radius:20px;overflow:hidden;position:relative;border:1px solid var(--paper-12);background:var(--plum);min-height:240px;
  transition:transform .5s cubic-bezier(.16,.84,.44,1),box-shadow .5s,border-color .4s;}
.wcard:hover{transform:translateY(-6px);border-color:rgba(245,213,71,.5);box-shadow:0 36px 80px -34px rgba(98,57,184,.7);}
.wcard img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .7s cubic-bezier(.16,.84,.44,1);}
.wcard:hover img{transform:scale(1.05);}
.wcard .ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(8,0,4,.9));display:flex;flex-direction:column;justify-content:flex-end;padding:24px;z-index:2;}
.wcard .tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);}
.wcard .ti{font-family:var(--disp);font-size:21px;margin-top:6px;}
.wcard.feat{grid-column:span 8;min-height:400px;}
.wcard.side{grid-column:span 4;min-height:400px;}
.wcard.quart{grid-column:span 3;min-height:330px;display:grid;place-items:center;padding:20px;
  background:radial-gradient(130% 120% at 50% 0%,#1c0638,#0b0106);}
.wcard.quart img{position:static;width:auto;height:100%;max-height:300px;object-fit:contain;
  border-radius:8px;box-shadow:0 18px 50px -20px rgba(0,0,0,.8);}
.wcard.quart:hover img{transform:scale(1.04);}
.tag.floaty{position:absolute;top:16px;left:16px;z-index:3;font-family:var(--mono);font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--rose);background:rgba(8,0,4,.55);
  border:1px solid var(--paper-12);padding:5px 10px;border-radius:999px;backdrop-filter:blur(6px);}
@media(max-width:980px){.wcard.quart{grid-column:span 6;}}
@media(max-width:820px){.wcard.feat,.wcard.side{grid-column:span 12;min-height:300px;}}
@media(max-width:560px){.wcard.quart{grid-column:span 12;}}
/* more work grid */
.work-grid.more .wcard.quart{grid-column:span 4;min-height:300px;}
@media(max-width:980px){.work-grid.more .wcard.quart{grid-column:span 6;}}
@media(max-width:560px){.work-grid.more .wcard.quart{grid-column:span 12;}}

/* ---------------- Hellas exhibit (scroll-driven horizontal showcase) ---------------- */
.hellas{position:relative;background:
  radial-gradient(120% 90% at 80% -10%,rgba(61,14,128,.28),transparent 60%),
  radial-gradient(90% 80% at 0% 110%,rgba(244,154,144,.08),transparent 55%);}
.hellas-rail{position:relative;}
.hellas-sticky{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;}
.hellas-head{max-width:var(--maxw);width:100%;margin:0 auto 26px;padding:0 32px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;}
.hellas-head .he{display:flex;flex-direction:column;align-items:flex-start;}
.hellas-logo{height:51px;width:auto;margin-left:10px;opacity:.95;transform:translateY(1px);}
.hellas-head .ht{display:block;font-family:var(--disp);font-size:clamp(22px,2.6vw,34px);margin-top:10px;line-height:1.05;}
.hellas-counter{font-family:var(--mono);font-size:13px;letter-spacing:.12em;color:var(--paper-40);white-space:nowrap;}
.hellas-counter b{color:var(--rose);font-weight:600;}

.hellas-track{display:flex;gap:26px;align-items:stretch;
  padding-left:max(32px,calc((100vw - var(--maxw))/2 + 32px));
  padding-right:max(32px,calc((100vw - var(--maxw))/2 + 32px));
  will-change:transform;}
.hcard{flex:0 0 auto;width:min(720px,88vw);height:62vh;min-height:430px;max-height:600px;
  border-radius:26px;border:1px solid var(--paper-12);
  background:linear-gradient(180deg,rgba(232,180,232,.14),rgba(225,170,225,.09));backdrop-filter:blur(8px);
  padding:32px 34px;display:flex;flex-direction:column;position:relative;overflow:hidden;
  transition:border-color .45s,box-shadow .45s,transform .45s cubic-bezier(.16,.84,.44,1);}
.hcard::before{content:"";position:absolute;inset:0;border-radius:26px;opacity:0;pointer-events:none;
  background:radial-gradient(120% 80% at 50% 0%,rgba(245,213,71,.22),transparent 60%);transition:opacity .45s;}
.hcard.is-active{border-color:rgba(245,213,71,.5);box-shadow:0 50px 110px -50px rgba(98,57,184,.7);}
.hcard.is-active::before{opacity:1;}
.hcard:hover{transform:translateY(-6px);border-color:rgba(248,226,126,.5);}
.hcard .step{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);
  display:flex;align-items:center;gap:10px;}
.hcard .step .num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;
  border:1px solid var(--paper-12);font-size:12px;color:var(--paper);}
.pr-plan-icon-wrap{flex:1;display:flex;align-items:center;justify-content:center;margin-top:8px;}
.pr-plan-icon-img{width:180px;height:180px;object-fit:contain;}
.hcard-icon{position:absolute;top:28px;right:30px;width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;background:var(--acc-soft,rgba(255,255,255,.08));
  border:1px solid var(--acc-border,var(--paper-12));color:var(--acc,var(--paper));z-index:1;}
.hcard-icon svg{width:22px;height:22px;}
.hcard h3{font-size:clamp(26px,3vw,40px);margin:16px 0 0;}
.hcard .hdesc{color:var(--paper-60);font-size:15.5px;line-height:1.55;margin-top:14px;max-width:42ch;}
.hcard.rt-intro{justify-content:center;}
.hcard.rt-intro .step{font-size:15px;}
.hcard.rt-intro .step .num{width:38px;height:38px;font-size:15px;}
.hcard.rt-intro h3{font-size:clamp(33px,3.75vw,50px);margin-top:22px;}
.hcard.rt-intro .hdesc{font-size:19.5px;line-height:1.55;margin-top:22px;max-width:46ch;}
.hcard .viz{margin-top:auto;position:relative;z-index:1;}

/* card 1 — pipeline overview */
.viz.pipe{display:flex;flex-direction:column;gap:0;padding-top:18px;}
.pstep{display:flex;align-items:center;gap:14px;padding:11px 0;}
.pstep .pn{font-family:var(--mono);font-size:11px;color:var(--paper-40);width:24px;flex:0 0 24px;}
.pstep .pd{width:11px;height:11px;border-radius:50%;background:var(--plum);border:2px solid var(--violet-lt);flex:0 0 11px;
  box-shadow:0 0 0 4px rgba(245,213,71,.12);}
.pstep .pt{font-family:var(--disp);font-size:17px;}
.pline{width:2px;height:16px;margin-left:31px;background:linear-gradient(180deg,var(--violet-lt),rgba(245,213,71,.2));}

/* card 2 — source paper */
.viz.paper{display:flex;justify-content:center;align-items:flex-end;flex:1;min-height:0;margin-top:20px;}
.viz.paper .frame{width:78%;max-height:100%;border-radius:8px 8px 0 0;overflow:hidden;
  box-shadow:0 30px 70px -28px rgba(0,0,0,.85);border:1px solid rgba(250,247,240,.1);border-bottom:0;
  transform:rotate(-1.4deg);transition:transform .5s;}
.hcard:hover .viz.paper .frame{transform:rotate(0) translateY(-6px);}
.viz.paper img{width:100%;display:block;background:#fff;}
.paper-badges{position:absolute;top:-6px;right:6px;display:flex;flex-direction:column;gap:8px;align-items:flex-end;}
.paper-badges span{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--paper-60);
  background:rgba(8,0,4,.7);border:1px solid var(--paper-12);padding:5px 9px;border-radius:999px;backdrop-filter:blur(6px);}

/* card 3 — analysis / scan */
.viz.scan{margin-top:22px;position:relative;border-radius:14px;border:1px solid var(--paper-12);
  background:rgba(8,0,4,.4);padding:18px 18px;overflow:hidden;flex:1;min-height:0;}
.viz.scan .doc{display:flex;flex-direction:column;gap:9px;}
.viz.scan .ln{height:8px;border-radius:4px;background:rgba(250,247,240,.14);}
.viz.scan .ln.hl{background:var(--grad);box-shadow:0 0 16px rgba(248,226,126,.35);}
.viz.scan .ln.note{position:relative;}
.viz.scan .ln.note::after{content:attr(data-n);position:absolute;right:0;top:-7px;font-family:var(--mono);
  font-size:9.5px;letter-spacing:.06em;color:var(--rose);background:rgba(40,6,61,.85);border:1px solid var(--paper-12);
  padding:3px 7px;border-radius:6px;white-space:nowrap;}
.viz.scan .beam{position:absolute;left:0;right:0;height:46px;top:-46px;
  background:linear-gradient(180deg,transparent,rgba(245,213,71,.28),transparent);
  border-top:1px solid rgba(248,226,126,.6);}
.hcard.is-active .viz.scan .beam{animation:scanbeam 3.4s ease-in-out infinite;}
@keyframes scanbeam{0%{top:-46px;}100%{top:100%;}}

/* card 4 — angle & narrative */
.viz.angles{margin-top:22px;display:flex;flex-direction:column;gap:11px;}
.angle{font-family:var(--sans);font-size:15px;padding:13px 16px;border-radius:12px;border:1px solid var(--paper-12);
  background:rgba(8,0,4,.35);color:var(--paper-60);display:flex;align-items:center;justify-content:space-between;gap:12px;
  transition:border-color .35s,color .35s,background .35s;}
.angle .x{font-family:var(--mono);font-size:11px;color:var(--paper-40);}
.angle.pick{border-color:rgba(245,213,71,.6);background:linear-gradient(98deg,rgba(245,213,71,.22),rgba(248,226,126,.12));color:var(--paper);}
.angle.pick .x{color:var(--rose);}
.arc{display:flex;gap:8px;margin-top:6px;}
.arc span{flex:1;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--paper-40);padding:8px 4px;border-radius:8px;border:1px dashed var(--paper-12);}

/* card 5 — published article */
.viz.article{margin-top:22px;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;}
.viz.article .shot{border-radius:14px;overflow:hidden;border:1px solid var(--paper-12);
  box-shadow:0 34px 80px -34px rgba(0,0,0,.85);position:relative;}
.viz.article .shot img{width:100%;display:block;}
.viz.article .live{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:7px;
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper);
  background:rgba(8,0,4,.6);border:1px solid var(--paper-12);padding:5px 10px;border-radius:999px;backdrop-filter:blur(6px);}
.viz.article .live .d{width:7px;height:7px;border-radius:50%;background:#6fe39a;box-shadow:0 0 8px #6fe39a;animation:livedot 1.6s ease-in-out infinite;}
.read-link{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--sans);font-weight:600;font-size:14px;
  color:var(--paper);align-self:flex-start;padding:10px 18px;border-radius:999px;border:1px solid var(--paper-12);
  background:rgba(250,247,240,.04);transition:border-color .25s,background .25s,transform .25s;}
.read-link:hover{border-color:var(--violet-lt);background:rgba(245,213,71,.18);transform:translateY(-2px);}
.read-link .arr{transition:transform .3s;}
.read-link:hover .arr{transform:translate(3px,-3px);}

/* ============================================================
   How we work exhibit
   ============================================================ */
.hww .hcard.wide{width:min(720px,88vw);}
.hww .hcard.ai-card{width:min(1080px,94vw);display:grid;grid-template-columns:minmax(240px,0.78fr) 1.7fr;
  grid-template-rows:100%;gap:28px;align-items:center;}
.ai-card .ai-col-text{display:flex;flex-direction:column;justify-content:center;min-width:0;}
.ai-card .hww-frame.ai-seo{margin-top:0;height:100%;max-height:100%;display:flex;align-items:center;justify-content:center;}
.ai-card .hww-frame.ai-seo img{width:100%;height:100%;max-height:100%;object-fit:contain;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;filter:contrast(1.05) saturate(1.04);}
.hww .hcard.result-card{width:min(1400px,98vw);display:grid;grid-template-columns:minmax(560px,1.05fr) 1.2fr;
  grid-template-rows:100%;gap:30px;align-items:center;}
.result-card .ai-col-text{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-width:0;padding:0 24px 0 40px;}
.result-card .hww-stat{margin-top:22px;}
.result-card .hww-analytics{margin-top:0;height:100%;grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:14px;padding-top:0;align-items:stretch;}
.result-card .hww-frame{height:100%;min-height:0;}
.result-card .hww-frame img{object-fit:contain;background:#0d0a16;}
.hww-flow{display:flex;flex-wrap:wrap;align-items:center;gap:9px 11px;margin-top:22px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--paper-60);}
.hww-flow i{color:var(--violet-lt);font-style:normal;}
.hww-divider{height:1px;background:#fff;margin:26px 0 18px;}
.hww-label{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-40);}
.hww-chips{display:flex;flex-wrap:wrap;gap:11px;margin-top:16px;}
.hww-chip{font-family:var(--mono);font-size:10.5px;line-height:1.4;letter-spacing:.03em;padding:9px 15px;border-radius:999px;white-space:nowrap;}
.hww-chip.on{background:var(--grad);color:var(--ink);font-weight:600;}
.hww-chip:not(.on){border:1px solid var(--paper-12);color:var(--paper-60);background:rgba(250,247,240,.03);}
.hww-stat{margin-top:18px;font-family:var(--disp);font-weight:600;font-size:clamp(17px,1.9vw,23px);line-height:1.25;color:var(--paper);}
.hww-stat b{font-weight:800;font-size:1.5em;}
.hww-advisory{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:10px 16px;border-radius:999px;background:var(--acc-soft,rgba(92,100,112,.08));border:1px solid var(--acc-border,var(--paper-12));width:fit-content;}
.hww-advisory-k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper-40);}
.hww-advisory-v{font-family:var(--disp);font-weight:600;font-size:16px;color:var(--acc,var(--paper));}
.hww-socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;}
.hww-social{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--paper-12);color:var(--paper-60);transition:color .2s,border-color .2s;}
.hww-social svg{width:16px;height:16px;}
.hww-social:hover{color:var(--paper);border-color:var(--acc-border,var(--paper-40));}
.hww-analytics{margin-top:auto;display:grid;grid-template-columns:1.5fr 1fr;gap:14px;padding-top:18px;}
.hww-frame.ai-seo{margin-top:18px;height:auto;background:#fff;}
.hww-frame.ai-seo img{height:auto;object-fit:contain;}
.hww-frame.ai-seo figcaption{background:rgba(8,6,13,.82);}
.hww-frame{border-radius:14px;overflow:hidden;border:1px solid rgba(160,148,245,.32);background:#0d0a16;position:relative;min-height:0;}
.hww-frame img{width:100%;height:100%;object-fit:cover;display:block;}
.hww-frame figcaption{position:absolute;left:10px;bottom:8px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--paper);background:rgba(8,6,13,.72);padding:4px 8px;border-radius:6px;backdrop-filter:blur(6px);}
@media(max-width:1040px){
  .hww .hcard.wide{width:100%;}
  .hww .hcard.ai-card{width:100%;display:flex;}
  .hww .hcard.ai-card .hww-frame.ai-seo{height:auto;margin-top:18px;}
  .hww .hcard.ai-card .hww-frame.ai-seo img{height:auto;}
  .hww .hcard.result-card{width:100%;display:flex;}
  .hww .hcard.result-card .hww-analytics{height:auto;grid-template-columns:1fr;margin-top:18px;}
  .hww .hcard.result-card .hww-frame{height:200px;}
  .hww-analytics{grid-template-columns:1fr;}
  .hww-frame{height:200px;}
}

/* ============================================================
   Make magic happen
   ============================================================ */
.magic{position:relative;padding:clamp(80px,12vh,140px) 0;text-align:center;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 35%,rgba(98,57,184,.22),transparent 62%);}
.magic h2{font-family:var(--disp);font-weight:700;font-size:clamp(38px,6.5vw,76px);letter-spacing:-.025em;line-height:1.02;}
.magic .sub{color:var(--paper-60);margin-top:16px;font-size:17px;}
.magic-cluster{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin:56px auto 0;max-width:660px;}
.magic-tile{width:84px;height:84px;border-radius:20px;display:grid;place-items:center;color:var(--paper);position:relative;
  background:linear-gradient(155deg,rgba(44,32,82,.92),rgba(20,16,40,.96));
  border:1px solid rgba(160,148,245,.32);
  box-shadow:0 18px 44px -14px rgba(98,57,184,.65),0 0 26px -6px rgba(110,150,255,.4),inset 0 1px 0 rgba(255,255,255,.1);
  transition:transform .3s,box-shadow .3s;animation:magicfloat 5.5s ease-in-out infinite;}
.magic-tile svg{width:38px;height:38px;}
.magic-tile:hover{transform:translateY(-7px);box-shadow:0 26px 56px -14px rgba(98,57,184,.8),0 0 40px -4px rgba(120,90,240,.7),inset 0 1px 0 rgba(255,255,255,.14);}
.magic-tile:nth-child(2){animation-delay:.4s;} .magic-tile:nth-child(3){animation-delay:.8s;}
.magic-tile:nth-child(4){animation-delay:1.2s;} .magic-tile:nth-child(5){animation-delay:1.6s;}
.magic-tile:nth-child(6){animation-delay:2s;} .magic-tile:nth-child(7){animation-delay:2.4s;}
.magic-tile:nth-child(8){animation-delay:2.8s;}
@keyframes magicfloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
@media (prefers-reduced-motion:reduce){.magic-tile{animation:none;}}
@media(max-width:1040px){.magic-tile{width:68px;height:68px;border-radius:16px;}.magic-tile svg{width:32px;height:32px;}}
@keyframes livedot{0%,100%{opacity:1;}50%{opacity:.3;}}

.hellas-dots{display:flex;gap:9px;justify-content:center;align-items:center;margin-top:28px;}
.hellas-dots button{width:30px;height:5px;border-radius:5px;border:0;padding:0;background:var(--paper-12);cursor:pointer;
  transition:background .35s,width .35s;}
.hellas-dots button.active{background:var(--grad);width:48px;}
.hellas-hint{text-align:center;margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--paper-40);display:flex;align-items:center;justify-content:center;gap:10px;}
.hellas-hint .ar{animation:hintnudge 1.8s ease-in-out infinite;}
@keyframes hintnudge{0%,100%{transform:translateX(0);opacity:.5;}50%{transform:translateX(5px);opacity:1;}}

@media(max-width:1040px){
  .hellas-sticky{position:static;height:auto;padding:90px 0 10px;}
  .hellas-head{flex-direction:column;align-items:flex-start;}
  .hellas-track{flex-direction:column;transform:none!important;gap:18px;padding:24px 24px 0;}
  .hcard{width:100%;height:auto;min-height:0;max-height:none;padding:32px !important;}
  .hcard h3{font-size:clamp(22px,2.5vw,32px) !important;line-height:1.3 !important;}
  .hcard .hdesc{font-size:14px !important;line-height:1.5 !important;}
  .hcard .step{overflow:visible !important;}
  .hcard .step-row{width:100% !important;height:auto !important;}
  .hcard .viz{margin-top:24px;}
  .viz.paper .frame{transform:none;width:70%;}
  .hellas-dots,.hellas-hint{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .hcard.is-active .viz.scan .beam{animation:none;}
}

/* ---------------- Team ---------------- */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.member{border:1px solid var(--paper-12);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,rgba(22,3,23,.7),rgba(8,0,4,.5));
  transition:transform .45s cubic-bezier(.16,.84,.44,1),border-color .4s,box-shadow .45s;display:flex;flex-direction:column;}
.member:hover{transform:translateY(-8px);border-color:rgba(248,226,126,.45);box-shadow:0 40px 90px -40px rgba(98,57,184,.65);}
.member .ph{position:relative;aspect-ratio:1/1;overflow:hidden;background:linear-gradient(160deg,var(--aubergine),var(--indigo));}
.member .ph img,.member .ph image-slot{width:100%;height:100%;object-fit:cover;display:block;}
.member .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,0,4,.7));}
.member .loc{position:absolute;top:14px;left:14px;z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--paper);background:rgba(8,0,4,.5);border:1px solid var(--paper-12);padding:5px 10px;border-radius:999px;backdrop-filter:blur(6px);}
.member .body{padding:24px;flex:1;display:flex;flex-direction:column;}
.member .nm{font-family:var(--disp);font-size:22px;}
.member .ti{font-size:14px;color:var(--rose);margin-top:4px;font-weight:500;}
.member .bio{font-size:14px;color:var(--paper-60);margin-top:14px;line-height:1.55;}
.member .skills{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px;}
.member .skills span{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--paper-60);
  border:1px solid var(--paper-12);border-radius:6px;padding:4px 8px;}
.member .ln{margin-top:auto;padding-top:18px;display:flex;gap:16px;}
.member .ln a{font-size:13px;color:var(--violet-lt);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;display:inline-flex;gap:7px;align-items:center;transition:color .2s;}
.member .ln a:hover{color:var(--rose);}
@media(max-width:920px){.team-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.team-grid{grid-template-columns:1fr;}}

/* ---------------- Clients ---------------- */
.clients{padding:90px 0;border-top:1px solid var(--paper-12);border-bottom:1px solid var(--paper-12);background:rgba(11,1,6,.4);}
.clients .lead{text-align:center;font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--paper-40);margin-bottom:50px;}
.logo-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.logo-track{display:flex;align-items:center;gap:96px;width:max-content;animation:marq var(--logo-dur,40s) linear infinite;}
.logo-track:hover{animation-play-state:paused;}
.logo-track .cl{display:flex;align-items:center;height:60px;opacity:.55;transition:opacity .3s,transform .3s;filter:saturate(0);}
.logo-track .cl a{display:flex;align-items:center;height:100%;}
.logo-track .cl:hover{opacity:1;transform:scale(1.05);filter:saturate(1);}
.logo-track .cl img{height:50px;width:auto;}
.logo-track .cl img.badge{height:64px;border-radius:50%;}
.logo-track .cl img.keep-color{filter:none;}
.logo-track .cl:has(img.keep-color){filter:none;}
.logo-track .cl .word{font-family:var(--disp);font-size:38px;font-weight:600;letter-spacing:-.01em;color:var(--paper);white-space:nowrap;}
@media (prefers-reduced-motion:reduce){.logo-track{animation:none;flex-wrap:wrap;justify-content:center;}}

/* ---------------- CTA ---------------- */
.cta{padding:140px 0;text-align:center;position:relative;overflow:hidden;}
.cta .glow{position:absolute;left:50%;top:50%;width:900px;height:900px;transform:translate(-50%,-50%);z-index:0;
  background:radial-gradient(circle,rgba(98,57,184,.4),rgba(40,6,61,.1) 45%,transparent 68%);filter:blur(6px);opacity:var(--glow-op,1);animation:breathe 10s ease-in-out infinite;}
.cta-in{position:relative;z-index:2;max-width:820px;margin:0 auto;}
.cta h2{font-size:clamp(36px,6vw,76px);}
.cta p{color:var(--paper-60);font-size:20px;margin:24px auto 40px;max-width:560px;}
.cta-book{margin:0 auto 32px;font-size:16px;padding:15px 30px;}
.contacts{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.contacts-email{display:flex;justify-content:center;margin-top:16px;}
.tg{display:inline-flex;align-items:center;gap:12px;border:1px solid var(--paper-12);border-radius:14px;padding:16px 22px;background:rgba(40,6,61,.3);transition:border-color .3s,transform .3s,background .3s;}
.tg:hover{border-color:var(--violet-lt);transform:translateY(-3px);background:rgba(245,213,71,.16);}
.tg .who{text-align:left;}
.tg .who .nm{font-weight:600;font-size:15px;margin-right:8px;}
.tg .who .hd{font-family:var(--mono);font-size:12px;color:var(--rose);}
.tg .ic{width:38px;height:38px;border-radius:10px;background:var(--grad);display:grid;place-items:center;color:var(--ink);flex:none;}

/* ---------------- Footer ---------------- */
footer{padding:70px 0 50px;border-top:1px solid var(--paper-12);}
.foot-in{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;}
.foot-in img{height:30px;}
.foot-in .cr{font-family:var(--mono);font-size:12px;color:var(--paper-40);letter-spacing:.06em;}
.foot-tag{font-size:15px;color:var(--paper-60);max-width:320px;}
.foot-legal{margin-top:46px;padding-top:26px;border-top:1px solid var(--paper-12);text-align:center;}
.foot-legal p{font-family:var(--mono);font-size:12px;color:var(--paper-40);letter-spacing:.06em;}
.foot-social{display:flex;gap:14px;align-items:center;}
.foot-social a{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:var(--paper-60);border:1px solid var(--paper-12);transition:color .2s,border-color .2s,background .2s;}
.foot-social a:hover{color:var(--ink);background:var(--grad);border-color:transparent;}

/* ============================================================
   THORChain client exhibit — reuses .hellas / .hcard
   ============================================================ */
.tc-logo{height:60px;margin-left:0;opacity:1;}
.hellas-head .he{gap:6px;}
.hellas-head .he .tc-logo{margin-bottom:2px;}

/* card 1 — X profile screenshot */
.viz.tc-shot{flex:1;min-height:0;display:flex;margin-top:20px;}
.viz.tc-shot .shot{flex:1;position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--paper-12);
  box-shadow:0 34px 80px -34px rgba(0,0,0,.85);}
.viz.tc-shot .shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.viz.tc-shot .live{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:7px;z-index:2;
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper);
  background:rgba(8,0,4,.66);border:1px solid var(--paper-12);padding:5px 10px;border-radius:999px;backdrop-filter:blur(6px);}
.viz.tc-shot .live .d{width:7px;height:7px;border-radius:50%;background:#6fe39a;box-shadow:0 0 8px #6fe39a;animation:livedot 1.6s ease-in-out infinite;}

/* card 2 — key stats */
.viz.tc-stats{margin-top:28px;display:flex;flex-direction:column;gap:16px;}
.tc-hero{display:flex;align-items:flex-end;gap:18px;}
.tc-bignum{font-family:var(--disp);font-weight:700;font-size:clamp(56px,8vw,92px);line-height:.82;letter-spacing:-.03em;}
.tc-biglabel{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-40);
  line-height:1.4;padding-bottom:8px;}
.tc-subgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.tc-stat{border:1px solid var(--paper-12);border-radius:14px;background:rgba(8,0,4,.32);padding:14px 14px;
  display:flex;flex-direction:column;gap:5px;}
.tc-stat b{font-family:var(--disp);font-weight:600;font-size:clamp(17px,1.9vw,23px);letter-spacing:-.01em;color:var(--paper);}
.tc-stat span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--paper-40);}
.tc-tags{display:flex;flex-wrap:wrap;gap:8px 22px;}
.tc-tags span{position:relative;font-size:14px;color:var(--paper-60);padding-left:17px;}
.tc-tags span::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:7px;height:7px;border-radius:50%;background:var(--violet-lt);box-shadow:0 0 10px rgba(245,213,71,.6);}

/* card 3 — data insights, full image */
.viz.tc-full{flex:1;min-height:0;margin-top:20px;border-radius:16px;overflow:hidden;border:1px solid var(--paper-12);
  background:#0a1414;box-shadow:0 30px 70px -34px rgba(0,0,0,.85);}
.viz.tc-full img{width:100%;height:100%;object-fit:contain;display:block;}
/* card 1 — full X profile */
.viz.tc-full.tc-profile{background:#000;}

/* card 4 — data updates, two TCY images */
.viz.tc-duo{flex:1;min-height:0;margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.viz.tc-duo .tc-frame{border-radius:14px;overflow:hidden;border:1px solid var(--paper-12);
  background:#0a1414;display:grid;place-items:center;min-height:0;box-shadow:0 24px 60px -34px rgba(0,0,0,.85);}
.viz.tc-duo .tc-frame img{width:100%;height:100%;object-fit:contain;display:block;}

/* card 5 — integration logos on light tiles */
.viz.tc-logos{flex:1;min-height:0;margin-top:22px;display:flex;flex-direction:column;justify-content:center;gap:16px;}
.tc-logotile{display:grid;place-items:center;height:104px;padding:18px 28px;border-radius:16px;overflow:hidden;
  background:#FAF7F0;border:1px solid rgba(250,247,240,.2);box-shadow:0 20px 50px -28px rgba(0,0,0,.7);}
.tc-logotile img{height:46px;width:auto;max-width:74%;object-fit:contain;display:block;}

@media(max-width:1040px){
  .viz.tc-full,.viz.tc-duo{height:340px;flex:none;}
  .tc-logotile{height:120px;}
}


/* ===== LIGHT THEME ===== */
/* ============================================================
   Lemur Labs — Full Light Theme
   White background throughout.
   Default accent: Comet Cash orange #1C1C1C
   THORChain sections: #00C8D4 (teal-blue)
   Hellas/Research sections: #5C6470 (grey)
   ============================================================ */

/* Inter Display + Fragment Mono for light theme */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Inter+Display:wght@600;700&family=Fragment+Mono&family=Space+Grotesk:wght@400;500;600&display=swap');

/* ------------------------------------------------------------------
   ACCENT TOKENS
   ------------------------------------------------------------------ */
:root {
  --disp: "Inter Display","Inter",system-ui,sans-serif !important;
  --sans: "Inter",system-ui,sans-serif !important;
  --mono: "Space Grotesk","Inter",system-ui,sans-serif !important;
  /* base palette — neutrals */
  --void:        #FFFFFF;
  --ink:         #F8F7F5;   /* used for card surfaces etc */
  --plum:        #F3F2EF;
  --aubergine:   #ECEAE6;
  --indigo:      #E2E0DA;

  /* primary accent: orange (Comet Cash) */
  --violet:      #1C1C1C !important;
  --violet-lt:   #1C1C1C !important;
  --rose:        #555555 !important;
  --ember:       #999999 !important;
  --paper:       #141414 !important;
  --paper-60:    rgba(20,20,20,.58) !important;
  --paper-40:    rgba(20,20,20,.36) !important;
  --paper-12:    rgba(20,20,20,.09) !important;
  --grad:        linear-gradient(98deg,#3A4A5A 0%,#7A8FA0 55%,#C0CDD8 100%) !important;

  /* section accent vars (toggled per section) */
  --acc:         #1C1C1C;
  --acc2:        #555555;
  --acc-soft:    rgba(28,28,28,.1);
  --acc-border:  rgba(28,28,28,.35);
  --acc-glow:    rgba(28,28,28,.22);
}

/* ------------------------------------------------------------------
   BASE
   ------------------------------------------------------------------ */
body { background: #FFFFFF; color: #141414; }
::selection { background: #1C1C1C; color: #fff; }

/* ------------------------------------------------------------------
   NAV — frosted pill (Comet Cash style)
   ------------------------------------------------------------------ */
.nav {
  top: 14px;
  left: 50%; right: auto;
  transform: translateX(-50%);
  width: calc(100% - 64px);
  max-width: var(--maxw);
  background: rgba(220,218,214,.56);
  backdrop-filter: blur(22px) saturate(1.5);
  -webkit-backdrop-filter: blur(22px) saturate(1.5);
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.7);
  box-shadow: 0 4px 24px rgba(0,0,0,.07);
}
.nav.scrolled {
  background: rgba(220,218,214,.72);
  backdrop-filter: blur(28px) saturate(1.6);
  border-bottom-color: transparent;
}
.nav-links a { color: rgba(20,20,20,.52); }
.nav-links a:hover { color: #141414; }
.nav-links a::after { background: var(--grad); }
.menu-btn { color: #141414; }
.mobile-menu { background: transparent; }
.mobile-menu a { color: rgba(20,20,20,.6); border-bottom-color: rgba(20,20,20,.1); }
.mobile-menu a:hover { color: #141414; }
.mobile-menu a.btn, .mobile-menu a.btn:hover { color: #FFFFFF; }
.nav.menu-open { background: rgba(255,255,255,.98); backdrop-filter: blur(28px) saturate(1.6); box-shadow: 0 12px 40px rgba(0,0,0,.14); }

/* Primary CTA button */
.btn-primary { background: #141414; color: #FFFFFF; box-shadow: none; }
.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(20,20,20,.22);
}
.btn-ghost { border-color: rgba(20,20,20,.14); color: #141414; background: transparent; }
.btn-ghost:hover { border-color: #1C1C1C; background: rgba(28,28,28,.06); }

/* ------------------------------------------------------------------
   HERO
   ------------------------------------------------------------------ */
.hero { background: #FAFAF8; }

/* fades: left, top, bottom (starts lower) + curved corners on image */
.hero-figure::after {
  background:
    linear-gradient(90deg,  #FAFAF8 0%, rgba(250,250,248,.9) 8%, rgba(250,250,248,.4) 18%, transparent 30%),
    linear-gradient(0deg,   #FAFAF8 0%, rgba(250,250,248,.88) 6%, rgba(250,250,248,.35) 14%, transparent 24%);
}

/* section boundaries blend via large soft overlapping fades — decoupled from section height so the transition reads as a genuine dissolve, not a color-stop ramp */
.clients {
  background: #F8F7F4 !important;
  border: none !important;
}
.clients::before, .clients::after {
  content: ""; position: absolute; left: 0; right: 0; height: 220px; pointer-events: none; z-index: 1;
}
.clients::before { top: -220px; background: linear-gradient(180deg, rgba(248,247,244,0) 0%, rgba(248,247,244,.55) 55%, #F8F7F4 100%); }
.clients::after { bottom: -220px; background: linear-gradient(180deg, #F8F7F4 0%, rgba(248,247,244,.55) 45%, rgba(248,247,244,0) 100%); }
.hellas { border-top: none; }
.sec#thorchain-client, .sec#work, .sec#how-we-work { border-top: none; }
.sec#how-we-work { background: #fff; position: relative; z-index: 5; }
.sec#bridge { background: #FAFAF8; }
.sec#bridge::before, .sec#bridge::after {
  content: ""; position: absolute; left: 0; right: 0; height: 220px; pointer-events: none; z-index: 1;
}
.sec#bridge::before { top: -220px; background: linear-gradient(180deg, rgba(250,250,248,0) 0%, rgba(250,250,248,.55) 55%, #FAFAF8 100%); }
.sec#bridge::after { bottom: -220px; background: linear-gradient(180deg, #FAFAF8 0%, rgba(250,250,248,.55) 45%, rgba(250,250,248,0) 100%); }

/* rays enabled — desaturated warm, now animated (see below) */

/* shift image lower to match text position */
.hero-figure img { top: 52%; left: 50%; right: auto; border-radius: 20px; clip-path: inset(8% 0 0 0 round 20px); filter: hue-rotate(-16deg) saturate(1.2) brightness(1.02); animation: heroBreatheLight 3.2s ease-in-out infinite; }
@keyframes heroBreatheLight {
  0%, 100% { filter: hue-rotate(-16deg) saturate(1.0) brightness(0.88); }
  50% { filter: hue-rotate(-16deg) saturate(1.7) brightness(1.35); }
}
.figure-bloom { mix-blend-mode: multiply; opacity: .75; animation: heroBloomPulse 3s ease-in-out infinite; }
@keyframes heroBloomPulse {
  0%, 100% { opacity: .35; transform: scale(.92); }
  50% { opacity: 1; transform: scale(1.22); }
}
.figure-rays { animation: heroRaysSway 6s ease-in-out infinite; }
@keyframes heroRaysSway {
  0%, 100% { opacity: .6; transform: rotate(-4deg) scale(.95); }
  50% { opacity: 1; transform: rotate(4deg) scale(1.12); }
}
.hero-figure { --mx: 50%; --my: 50%; }
.hero-spotlight {
  position: absolute; inset: 0; pointer-events: none; z-index: 3;
  background: radial-gradient(360px 360px at var(--mx) var(--my), rgba(255,205,120,.55), transparent 70%);
  mix-blend-mode: screen; opacity: 0; transition: opacity .4s ease;
}
.hero-figure:hover .hero-spotlight { opacity: 1; }
.hero-figure img, .figure-rays, .figure-bloom { transition: transform .25s ease-out; }
@media (prefers-reduced-motion: reduce) {
  .hero-figure img, .figure-bloom, .figure-rays { animation: none !important; }
  .hero-spotlight { display: none !important; }
}

/* hero highlight word — orange box behind text */
.hero .highlight-word {
  background: #141414;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  padding: 0 10px 4px;
  border-radius: 6px;
  display: inline-block;
}

/* hero flares — bloom + image breathing re-enabled with a subtler, warm-light tune */
#hero-canvas { display: none !important; }
.hero-glow, .hero-glow.ember { display: none !important; }

/* rays & sparks → desaturated warm */
.figure-rays {
  background: conic-gradient(
    from 0deg,
    transparent 0deg, rgba(28,28,28,.09) 8deg, transparent 18deg,
    transparent 40deg, rgba(255,160,80,.07) 52deg, transparent 64deg,
    transparent 96deg, rgba(28,28,28,.08) 106deg, transparent 120deg,
    transparent 168deg, rgba(28,28,28,.07) 180deg, transparent 196deg,
    transparent 248deg, rgba(255,160,80,.07) 262deg, transparent 276deg,
    transparent 318deg, rgba(28,28,28,.08) 330deg, transparent 344deg
  );
}
.figure-bloom {
  background: radial-gradient(circle at 50% 50%,
    rgba(255,180,80,.22) 0%, rgba(255,120,50,.12) 28%, transparent 58%);
}
.figure-sweep {
  background: linear-gradient(108deg,
    transparent 38%, rgba(28,28,28,.07) 47%,
    rgba(255,160,80,.14) 50%, rgba(28,28,28,.06) 53%, transparent 62%);
  background-size: 260% 100%;
}
.figure-sparks, .figure-sparks.two {
  background-image:
    radial-gradient(2px 2px at 12% 30%, rgba(255,100,30,.7), transparent 60%),
    radial-gradient(1.5px 1.5px at 28% 62%, rgba(255,140,60,.65), transparent 60%),
    radial-gradient(2px 2px at 44% 22%, rgba(255,100,30,.7), transparent 60%),
    radial-gradient(1.5px 1.5px at 58% 70%, rgba(255,160,80,.7), transparent 60%),
    radial-gradient(2.5px 2.5px at 70% 40%, rgba(255,100,30,.75), transparent 60%),
    radial-gradient(1.5px 1.5px at 82% 58%, rgba(255,140,60,.6), transparent 60%),
    radial-gradient(2px 2px at 36% 84%, rgba(255,100,30,.65), transparent 60%),
    radial-gradient(1.5px 1.5px at 64% 14%, rgba(255,160,80,.7), transparent 60%),
    radial-gradient(2px 2px at 90% 30%, rgba(255,140,60,.6), transparent 60%);
}

/* fix Marketing text clip */
.hero h1 .line { overflow: visible !important; }

/* kill shooting star sparks */
.figure-sparks, .figure-sparks.two { display: none !important; }
.hero p.sub { color: rgba(20,20,20,.55); text-shadow: none; }
.hero h1, .hero h1 .line span { text-shadow: none !important; }
/* hero text — flush left */
/* push hero content lower to fill bottom space */
.hero { align-items: center !important; padding-top: 100px !important; padding-bottom: 40px !important; }
.hero .hero-in { margin-left: clamp(32px, 6vw, 90px) !important; max-width: 44vw !important; }

@media(max-width:700px){
  .hero{padding-top:170px !important;}
  .hero .hero-in{max-width:100% !important;margin-left:24px !important;margin-right:24px !important;}
  .hero-figure img{display:none !important;}
  .hero-figure::after{display:none;}
  .hcard,.hcard *,.tc-spec-text,.tc-spec-text *{max-width:100% !important;}
  .contacts{grid-template-columns:1fr !important;max-width:340px;margin-left:auto;margin-right:auto;}
  .hero-gap{font-size:clamp(30px,8vw,40px) !important;line-height:1.15 !important;}
  .mag3d{margin-left:0 !important;animation:none !important;transform:scale(1.2) !important;}
  .dive-open{width:100% !important;}
  .dive-stage{justify-content:center !important;width:100% !important;min-height:260px !important;}
  .sec-head h2{font-size:clamp(22px,6vw,30px) !important;line-height:1.15 !important;}
  .hww-kpi-card,.hww-kpi-page{max-width:100% !important;width:100% !important;min-height:0 !important;padding:20px 16px 18px !important;box-sizing:border-box !important;}
  .hww-kpi-card *{box-sizing:border-box !important;max-width:100% !important;}
  .hww-kpi-stats{gap:6px !important;}
  .hww-kpi-stat{padding:9px 8px !important;}
  .hww-kpi-stat .v{font-size:15px !important;}
  .hww-kpi-stat .l,.hww-kpi-stat .chg{font-size:10px !important;}
  .result-card .hww-analytics{padding:0 !important;}
  .hcard .viz.tc-full{height:auto !important;min-height:0 !important;}
  .hcard .viz.tc-full img{height:auto !important;width:100% !important;object-fit:contain !important;display:block !important;}
  .pros-cons-viz{height:auto !important;min-height:0 !important;padding:8px !important;display:block !important;}
  .pros-cons-viz img{height:auto !important;width:100% !important;object-fit:contain !important;display:block !important;}
  .tc-audit-viz{height:auto !important;min-height:0 !important;padding:8px !important;display:block !important;}
  .tc-audit-viz img{height:auto !important;width:100% !important;object-fit:contain !important;display:block !important;}
  .hcard h3,.hcard .hdesc,.tc-spec-text h3,.tc-spec-text p{width:auto !important;height:auto !important;overflow-wrap:break-word !important;word-break:normal !important;}
}


/* ------------------------------------------------------------------
   SECTION BACKGROUNDS
   ------------------------------------------------------------------ */
.sec { background: transparent; }
.clients { background: #F8F7F4; border-color: rgba(20,20,20,.08); }
.clients .lead { color: rgba(20,20,20,.35); }

/* ------------------------------------------------------------------
   BRIDGE DIAGRAM
   ------------------------------------------------------------------ */
.bnode {
  background: #FFFFFF;
  border-color: rgba(20,20,20,.1);
  box-shadow: 0 2px 16px rgba(0,0,0,.05);
}
.bnode .k { font-family: var(--sans); font-weight: 700; letter-spacing: .1em; color: rgba(20,20,20,.5); }
.bnode .t { color: #141414; }
.bnode .d { color: rgba(20,20,20,.55); }
.bnode .ntags span {
  font-family: var(--sans); font-weight: 700;
  background: #E4E2DB; border: 1px solid rgba(20,20,20,.22); color: rgba(20,20,20,.72);
  box-shadow: 0 2px 0 rgba(20,20,20,.14), 0 3px 5px rgba(20,20,20,.12), inset 0 1px 0 rgba(255,255,255,.55);
}

.bnode.dev { border: 1px solid rgba(255,255,255,.18); background: radial-gradient(120% 90% at 30% 0%, rgba(255,255,255,.22), transparent 55%), linear-gradient(160deg, #2b2b2b 0%, #161616 60%, #0a0a0a 100%); backdrop-filter: blur(2px) saturate(1.2); -webkit-backdrop-filter: blur(2px) saturate(1.2); box-shadow: 0 4px 24px rgba(0,0,0,.1); }
.bnode.dev .k { color: rgba(255,255,255,.55); }
.bnode.dev .t { color: #FFFFFF; }
.bnode.dev .d { color: rgba(255,255,255,.72); }
.bnode.dev .ntags span { border: 1px solid rgba(255,255,255,.22); color: rgba(255,255,255,.85); background: rgba(255,255,255,.1); box-shadow: 0 2px 0 rgba(20,20,20,.14), 0 3px 5px rgba(20,20,20,.12), inset 0 1px 0 rgba(255,255,255,.55); }

.bnode.comm { border: 1px solid rgba(255,255,255,.18); background: radial-gradient(120% 90% at 70% 0%, rgba(255,255,255,.22), transparent 55%), linear-gradient(160deg, #2b2b2b 0%, #161616 60%, #0a0a0a 100%); backdrop-filter: blur(2px) saturate(1.2); -webkit-backdrop-filter: blur(2px) saturate(1.2); box-shadow: 0 4px 24px rgba(0,0,0,.1); }
.bnode.comm .k { color: rgba(255,255,255,.55); }
.bnode.comm .t { color: #FFFFFF; }
.bnode.comm .d { color: rgba(255,255,255,.72); }
.bnode.comm .ntags span { border: 1px solid rgba(255,255,255,.22); color: rgba(255,255,255,.85); background: rgba(255,255,255,.1); box-shadow: 0 2px 0 rgba(20,20,20,.14), 0 3px 5px rgba(20,20,20,.12), inset 0 1px 0 rgba(255,255,255,.55); }

.bnode.core {
  border-color: rgba(184,134,11,.7);
  background: radial-gradient(120% 150% at 50% -10%, #3a2c0f 0%, #241c0c 30%, #16130c 55%, #0a0a0a 100%);
  box-shadow: 0 0 0 1px rgba(28,28,28,.4), 0 0 60px -6px rgba(28,28,28,.5), inset 0 0 40px -20px rgba(255,255,255,.08);
    0 0 60px -6px rgba(28,28,28,.55),
    0 0 110px -20px rgba(255,140,50,.35),
    inset 0 0 50px -20px rgba(255,200,100,.3);
  animation: corePulseOrange 4.5s ease-in-out infinite;
}
@keyframes corePulseOrange {
  0%,100% {
    box-shadow: 0 0 0 1px rgba(28,28,28,.4),0 0 55px -10px rgba(28,28,28,.45),inset 0 0 50px -22px rgba(255,200,100,.22);
  }
  50% {
    box-shadow: 0 0 0 1px rgba(255,120,50,.6),0 0 80px 0 rgba(28,28,28,.65),inset 0 0 60px -14px rgba(255,200,100,.45);
  }
}
.core-burst {
  background: conic-gradient(
    from 0deg at 50% 38%,
    transparent 0deg, rgba(255,200,100,.4) 10deg, transparent 24deg,
    transparent 70deg, rgba(255,140,50,.35) 84deg, transparent 100deg,
    transparent 150deg, rgba(255,200,100,.4) 166deg, transparent 184deg,
    transparent 244deg, rgba(255,140,50,.32) 262deg, transparent 280deg,
    transparent 320deg, rgba(255,200,100,.38) 336deg, transparent 352deg
  );
}
.bnode.core img {
  animation: coreMarkOrange 4.5s ease-in-out infinite;
}
@keyframes coreMarkOrange {
  0%,100% { filter: drop-shadow(0 0 12px rgba(255,200,100,.6)); }
  50%      { filter: drop-shadow(0 0 22px rgba(255,220,120,1)); }
}
.bnode.core .t { text-shadow: 0 0 20px rgba(255,200,100,.5); color: #FFFFFF; }
.bnode.core .d { color: rgba(255,255,255,.78); }

.blink { background: rgba(184,134,11,.18); }
.blink::after { background: #B8860B; box-shadow: 0 0 12px 3px rgba(184,134,11,.5); }
.blink.r2 { background: rgba(20,20,20,.12); }
.blink.r2::after { background: #1C1C1C; box-shadow: 0 0 12px 3px rgba(20,20,20,.35); }

/* audience cards */
.acard { background: #FFFFFF; border-color: rgba(20,20,20,.1); box-shadow: 0 2px 16px rgba(0,0,0,.05); }
.acard:hover { border-color: rgba(28,28,28,.4); box-shadow: 0 16px 48px rgba(28,28,28,.12); }
.acard .icon { background: rgba(28,28,28,.1); border-color: rgba(28,28,28,.3); }
.acard h3 { color: #141414; }
.acard .row .lab { color: #1C1C1C; }
.acard .row.get .lab { color: #555555; }
.acard .row p { color: rgba(20,20,20,.6); }
.acard hr { border-color: rgba(20,20,20,.08); }

/* ------------------------------------------------------------------
   HELLAS EXHIBIT — light card base (all sections)
   ------------------------------------------------------------------ */
.hellas { background: #F8F7F4; }
.hellas-head .ht { color: #141414; }
.hellas-counter { color: rgba(20,20,20,.3); }

.hcard {
  background: #FFFFFF;
  border-color: rgba(20,20,20,.08);
  box-shadow: 0 4px 28px rgba(0,0,0,.06);
}
.hcard::before {
  background: radial-gradient(120% 80% at 50% 0%, var(--acc-soft), transparent 60%);
}
.hcard.is-active {
  border-color: var(--acc-border);
  box-shadow: 0 8px 48px var(--acc-glow);
}
.hcard.is-active::before { opacity: 1; }
.hcard:hover { border-color: var(--acc-border); }
.hcard .step { color: var(--acc); }
.hcard .step .num { border-color: rgba(20,20,20,.1); color: #141414; }
.hcard h3 { color: #141414; }
.hcard .hdesc { color: rgba(20,20,20,.58); }
.hcard.rt-intro .hdesc { color: rgba(20,20,20,.6); }

/* dots */
.hellas-dots button { background: rgba(20,20,20,.1); }
.hellas-dots button.active { background: var(--acc); }
.hellas-hint { color: rgba(20,20,20,.3); }
.hellas-hint .ar { color: rgba(20,20,20,.5); }

/* scan viz */
.viz.scan { background: #F8F7F4; border-color: rgba(20,20,20,.1); }
.viz.scan .ln { background: rgba(20,20,20,.1); }
.viz.scan .ln.hl { background: var(--grad); box-shadow: 0 0 12px var(--acc-glow); }
.viz.scan .ln.note::after { color: var(--acc); background: #fff; border-color: var(--acc-border); }
.viz.scan .beam {
  background: linear-gradient(180deg,transparent,var(--acc-soft),transparent);
  border-top-color: var(--acc);
}

/* angle viz */
.angle { background: #FAFAFA; border-color: rgba(20,20,20,.1); color: rgba(20,20,20,.6); }
.angle .x { color: rgba(20,20,20,.3); }
.angle.pick { border-color: var(--acc-border); background: rgba(28,28,28,.06); color: #141414; }
.angle.pick .x { color: var(--acc); }
.arc span { border-color: rgba(20,20,20,.1); color: rgba(20,20,20,.3); }

/* logos */
.viz.tc-logos .tc-logotile { background: #F3F2EF; border-color: rgba(20,20,20,.08); }

/* article card */
.viz.article .shot { border-color: rgba(20,20,20,.08); }
.viz.article .live { background: rgba(255,255,255,.9); border-color: rgba(20,20,20,.1); color: #141414; }
.read-link { background: #FAFAFA; border-color: rgba(20,20,20,.1); color: #141414; }
.read-link:hover { border-color: var(--acc); background: rgba(28,28,28,.06); }

/* report open */
.report-open { background: #FAFAFA; border-color: rgba(20,20,20,.1); }
.report-open:hover { border-color: var(--acc-border); box-shadow: 0 12px 40px var(--acc-glow); }
.report-open .report-cta { color: var(--acc); }

/* postlink */
.tc-postlink { color: var(--acc); border-bottom-color: var(--acc-border); }
.tc-postlink:hover { color: #141414; }

/* ------------------------------------------------------------------
   THORCHAIN SECTIONS — blue accent #00C8D4
   ------------------------------------------------------------------ */
.sec#thorchain,
.hellas[aria-label*="THORChain"] {
  --acc:        #00B8D4;
  --acc2:       #00D4E8;
  --acc-soft:   rgba(0,184,212,.08);
  --acc-border: rgba(0,184,212,.35);
  --acc-glow:   rgba(0,184,212,.18);
}

.hellas[aria-label*="THORChain"] { background: #D6F3F8; }
.hellas[aria-label*="THORChain"]::before, .hellas[aria-label*="THORChain"]::after {
  content: ""; position: absolute; left: 0; right: 0; height: 220px; pointer-events: none; z-index: 1;
}
.hellas[aria-label*="THORChain"]::before { top: -220px; background: linear-gradient(180deg, rgba(214,243,248,0) 0%, rgba(214,243,248,.55) 55%, #D6F3F8 100%); }
.hellas[aria-label*="THORChain"]::after { bottom: -220px; background: linear-gradient(180deg, #D6F3F8 0%, rgba(214,243,248,.55) 45%, rgba(214,243,248,0) 100%); }
.hellas[aria-label*="THORChain"] .hcard { background: #BDEAF3; border-color: rgba(0,184,212,.28); }
.sec#thorchain, .sec#thorchain-client { background: #D6F3F8; position: relative; z-index: 2; }

/* override --grad for thorchain grad-text */
.hellas[aria-label*="THORChain"] .grad-text,
.sec#thorchain .grad-text,
.sec#thorchain-client .grad-text {
  background: linear-gradient(98deg,#00B8D4,#00E5F5);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hellas[aria-label*="THORChain"] .hellas-counter b { color: #00B8D4; }
.hellas[aria-label*="THORChain"] .hellas-dots button.active { background: #00B8D4; }
.hellas[aria-label*="THORChain"] .tc-logotile { background: #EBF9FB; border-color: rgba(0,184,212,.18); }
.hellas[aria-label*="THORChain"] .tc-postlink { color: #00B8D4; border-bottom-color: rgba(0,184,212,.3); }

/* gitlab pill — use tc blue */
.step-gitlab { background: #00B8D4; box-shadow: 0 4px 16px rgba(0,184,212,.3); }

/* magnifying glass handle — blue ring */
.mag-lens {
  box-shadow:
    0 0 0 10px #00B8D4,
    0 0 0 11px rgba(0,120,150,.6),
    0 16px 44px -12px rgba(0,0,0,.5),
    inset 0 3px 10px rgba(255,255,255,.15),
    inset 0 -8px 18px rgba(0,0,0,.4);
}
.mag-handle {
  background: linear-gradient(90deg,#007a90,#00B8D4 45%,#5DE5F4 60%,#007a90);
}

/* ------------------------------------------------------------------
   HELLAS / RESEARCH SECTIONS — yellow accent
   ------------------------------------------------------------------ */
.sec#work,
.hellas[aria-label*="Hellas"] {
  --acc:        #B8930A;
  --acc2:       #D4AA20;
  --acc-soft:   rgba(184,147,10,.12);
  --acc-border: rgba(184,147,10,.35);
  --acc-glow:   rgba(184,147,10,.15);
}
.hellas[aria-label*="Hellas"] { background: #FAF6DE; }
.hellas[aria-label*="Hellas"]::before, .hellas[aria-label*="Hellas"]::after {
  content: ""; position: absolute; left: 0; right: 0; height: 220px; pointer-events: none; z-index: 1;
}
.hellas[aria-label*="Hellas"]::before { top: -220px; background: linear-gradient(180deg, rgba(250,246,222,0) 0%, rgba(250,246,222,.55) 55%, #FAF6DE 100%); }
.hellas[aria-label*="Hellas"]::after { bottom: -220px; background: linear-gradient(180deg, #FAF6DE 0%, rgba(250,246,222,.55) 45%, rgba(250,246,222,0) 100%); }
.hellas[aria-label*="Hellas"] .hcard { background: #FDFBEF; border-color: rgba(184,147,10,.22); }
.hellas[aria-label*="Hellas"] .grad-text,
.sec#work .grad-text {
  background: linear-gradient(98deg,#B8930A,#E8C820);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hellas[aria-label*="Hellas"] .hellas-counter b { color: #B8930A; }
.hellas[aria-label*="Hellas"] .hellas-dots button.active { background: #B8930A; }

/* ------------------------------------------------------------------
   HOW WE WORK — orange
   ------------------------------------------------------------------ */
.hellas.hww { background: #FFFFFF; --acc: #B8860B; --acc-soft: rgba(184,134,11,.14); --acc-border: rgba(184,134,11,.4); --acc-glow: rgba(184,134,11,.22); }
.hellas.hww::before, .hellas.hww::after {
  content: ""; position: absolute; left: 0; right: 0; height: 220px; pointer-events: none; z-index: 1;
}
.hellas.hww::before { top: -650px; height: 650px; background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,.55) 88%, #FFFFFF 100%); }
.hellas.hww::after { bottom: -220px; background: linear-gradient(180deg, #FFFFFF 0%, rgba(255,255,255,.55) 45%, rgba(255,255,255,0) 100%); }
.hww-chip.on { background: linear-gradient(98deg,#B8860B,#E8B923); color: #1C1C1C; }
.hww-chip:not(.on) { border-color: rgba(20,20,20,.12); color: rgba(20,20,20,.55); background: rgba(255,255,255,.35); }
.hww-social { border-color: rgba(20,20,20,.12); color: rgba(20,20,20,.55); }
.hww-social:hover { color: #141414; border-color: rgba(20,20,20,.4); }
.hww-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:26px;}
.hww-type{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:18px 12px;border-radius:16px;border:1px solid rgba(20,20,20,.1);background:rgba(255,255,255,.45);font-family:var(--sans);font-size:13.5px;font-weight:600;color:rgba(20,20,20,.55);}
.hww-type.on{border-color:rgba(184,134,11,.4);background:rgba(255,255,255,.75);color:#141414;box-shadow:0 8px 24px -12px rgba(184,134,11,.35);}
.hww-type-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(184,134,11,.12);color:#B8860B;}
.hww-type-ic svg{width:20px;height:20px;}
.hww-type i{font-style:normal;opacity:.6;}
.hww-app-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-top:30px;}
.hww-app{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:26px 14px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#FFF3C4;
  animation:hwwPop .5s cubic-bezier(.2,1.4,.4,1) both;animation-delay:calc(var(--d,0) * 70ms);}
.hww-app svg{width:26px;height:26px;}
.hww-app b{font-family:var(--sans);font-size:12px;font-weight:600;color:rgba(255,248,224,.75);}
.hcard[data-title="Channels"] .hww-app[data-d="1"]{--d:1;} .hcard[data-title="Channels"] .hww-app[data-d="2"]{--d:2;}
.hcard[data-title="Channels"] .hww-app[data-d="3"]{--d:3;} .hcard[data-title="Channels"] .hww-app[data-d="4"]{--d:4;}
.hcard[data-title="Channels"] .hww-app[data-d="5"]{--d:5;} .hcard[data-title="Channels"] .hww-app[data-d="6"]{--d:6;}
@keyframes hwwPop{0%{opacity:0;transform:scale(.5);}100%{opacity:1;transform:scale(1);}}
@media(prefers-reduced-motion:reduce){.hww-app{animation:none;}}
.hww-frame { border-color: rgba(20,20,20,.1); background: #F0EFEC; }
.hww-divider { background: rgba(20,20,20,.12); }
.hww-label { color: rgba(20,20,20,.35); }
.hww-flow { color: rgba(20,20,20,.5); }
.hww-flow i { color: #1C1C1C; }
.hww-stat { color: #141414; }
.hww-frame figcaption { background: rgba(255,255,255,.85); color: rgba(20,20,20,.5); }

/* Services — vertical stack (step 2) + circular KPI loop diagram (step 3) */
.svc-step-label{display:flex;align-items:baseline;gap:16px;font-family:var(--disp);font-weight:700;font-size:44px;color:#141414;letter-spacing:-.01em;}
.svc-step-label i{font-style:normal;font-weight:500;color:rgba(20,20,20,.45);font-size:30px;}
.svc-vstack{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:18px;margin-top:36px;row-gap:34px;}
.svc-vstack .hcard.hww-pin-card{width:300px !important;flex:0 0 300px;height:380px !important;min-height:0;max-height:none;}
.svc-vstack .hcard.hww-pin-card--gold{order:1;margin-top:34px;}
.svc-vstack .hcard.hww-pin-card--blue{order:2;margin-top:0;transform:scale(1.06);z-index:2;box-shadow:0 30px 60px -18px rgba(4,30,36,.4) !important;}
.svc-vstack .hcard.hww-pin-card--purple{order:3;margin-top:34px;}
.svc-vstack .hcard.hww-pin-card--green{order:4;margin-top:34px;}
.svc-vstack .hcard.hww-pin-card--orange{order:5;margin-top:0;transform:scale(1.06);z-index:2;box-shadow:0 30px 60px -18px rgba(40,26,4,.4) !important;}
.svc-vstack .hcard.hww-pin-card--red{order:6;margin-top:34px;}
.svc-vstack .hww-pin-card h3{font-size:32px !important;}
.svc-vstack .hww-pin-list{flex-direction:column;gap:16px;}
.svc-vstack .hww-pin-item{opacity:1;transform:none;max-height:none;border-bottom:none;padding:0;display:flex;align-items:center;gap:10px;width:100%;min-width:0;}
.svc-vstack .hww-pin-item .item-label{flex:1 1 auto !important;min-width:0;font-size:15px;white-space:normal;overflow-wrap:break-word;line-height:1.2;}
.svc-vstack .hww-pin-item .svc-check{margin-left:auto !important;flex:none !important;}
.svc-vstack .hww-pin-item .hww-pin-pill-icon{flex:none;width:28px;height:28px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;}
.svc-vstack .hww-pin-item .hww-pin-pill-icon svg{width:15px;height:15px;}
.svc-check{flex:none;width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:rgba(20,20,20,.14);animation:svcCheckPop .4s cubic-bezier(.2,1.4,.4,1) both;}
.svc-check svg{width:13px;height:13px;}
.svc-check-x{background:rgba(180,40,40,.16) !important;color:#8a2020;}
@keyframes svcCheckPop{0%{transform:scale(.4);opacity:0;}100%{transform:scale(1);opacity:1;}}
.hww-pin-card--gold .svc-check{background:rgba(122,75,10,.22);color:#7A4B0A;}
.hww-pin-card--blue .svc-check{background:rgba(5,97,111,.22);color:#05616F;}
.hww-pin-card--purple .svc-check{background:rgba(74,46,134,.22);color:#4A2E86;}
.hww-pin-card--green .svc-check{background:rgba(46,107,69,.22);color:#2E6B45;}
.hww-pin-card--orange .svc-check{background:rgba(154,84,10,.22);color:#9A540A;}
.hww-pin-card--red .svc-check{background:rgba(138,32,32,.22);color:#8A2020;}
@media(max-width:700px){
  .svc-step-label{font-size:clamp(28px,7vw,44px) !important;flex-wrap:wrap;}
  .hww-block[style*="position:relative"]{padding-right:0 !important;min-height:0 !important;}
  .hww-analysis-ic{display:none;}
  .hww-vstack .hcard.hww-pin-card{width:100% !important;}
}

.kpi-side-by-side{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap;margin-top:36px;}
.kpi-side-by-side .kpi-circle{margin:0;flex:none;}
.kpi-side-by-side .hcard.wide{flex:1 1 380px;max-width:460px;margin-top:0 !important;}
.kpi-circle{position:relative;width:min(504px,100%);height:408px;}
.kpi-circle-svg{position:absolute;inset:0;width:100%;height:100%;}
.kpi-loop-node{position:absolute;display:flex;flex-direction:column;align-items:center;gap:5px;padding:19px 24px;border-radius:20px;font-weight:700;font-size:18px;color:#1C1C1C;min-width:134px;text-align:center;box-shadow:0 4px 0 rgba(255,255,255,.5) inset, 0 14px 26px -12px rgba(20,14,4,.25);}
.kpi-loop-node .k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.55;font-weight:600;}
.kpi-loop-node.gold{background:linear-gradient(135deg,#FCF0C9,#F5DD8E);}
.kpi-loop-node.blue{background:linear-gradient(135deg,#BDEAF3,#6FD2E8);}
.kpi-loop-node.purple{background:linear-gradient(135deg,#DCCCF2,#B79AE6);}
.kpi-loop-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(20,20,20,.4);text-align:center;line-height:1.5;}

/* ------------------------------------------------------------------
   MARQUEE CHIPS
   ------------------------------------------------------------------ */
.chip { background: #F3F2EF; border-color: rgba(20,20,20,.1); color: rgba(20,20,20,.55); }

/* ------------------------------------------------------------------
   WORK CARDS
   ------------------------------------------------------------------ */
.wcard { background: #F0EFEC; border-color: rgba(20,20,20,.08); }
.wcard:hover { border-color: rgba(28,28,28,.4); box-shadow: 0 20px 60px rgba(28,28,28,.1); }
.wcard .ov { background: linear-gradient(180deg,transparent 40%,rgba(20,20,20,.75)); }
.wcard .tag, .tag.floaty { color: #1C1C1C; }
.tag.floaty { background: rgba(255,255,255,.8); border-color: rgba(20,20,20,.1); backdrop-filter: blur(6px); }

/* ------------------------------------------------------------------
   MAGIC SECTION
   ------------------------------------------------------------------ */
.magic { background: #FAFAF8; }
.magic h2 { color: #141414; }
.magic .sub { color: rgba(20,20,20,.5); }
.magic-tile {
  background: linear-gradient(155deg,#F3F2EF,#ECEAE6);
  border-color: rgba(20,20,20,.1);
  color: #141414;
  box-shadow: 0 6px 24px rgba(0,0,0,.07), inset 0 1px 0 rgba(255,255,255,.9);
}
.magic-tile:hover {
  box-shadow: 0 12px 36px rgba(28,28,28,.15), inset 0 1px 0 rgba(255,255,255,.9);
  border-color: rgba(28,28,28,.35);
}

/* ------------------------------------------------------------------
   TEAM
   ------------------------------------------------------------------ */
.member { background: #FFFFFF; border-color: rgba(20,20,20,.09); }
.member:hover { border-color: rgba(28,28,28,.35); box-shadow: 0 20px 60px rgba(28,28,28,.1); }
.member .ph { background: #F5EFC8; display: flex; align-items: center; justify-content: center; }
.member .ph img, .member .ph image-slot { width: 92%; height: 92%; object-fit: contain; border-radius: 16px; filter: grayscale(1) contrast(1.05); }
.member .ph::before { content: ""; position: absolute; inset: 0; background: #F5EFC8; mix-blend-mode: color; pointer-events: none; z-index: 1; }
.member .ph::after { background: linear-gradient(180deg,transparent 55%,rgba(245,239,200,.5)); z-index: 2; }
.member .nm { color: #141414; }
.member .ti { color: #1C1C1C; }
.member .bio { color: rgba(20,20,20,.6); }
.member .skills span { background: #F5F4F1; border-color: rgba(20,20,20,.1); color: rgba(20,20,20,.6); }
.member .ln a { color: #1C1C1C; }
.member .ln a:hover { color: #141414; }

/* ------------------------------------------------------------------
   CLIENTS LOGO STRIP
   ------------------------------------------------------------------ */
.logo-track .cl { filter: none; opacity: .9; }
.logo-track .cl:hover { opacity: 1; }
.logo-track .cl img { filter: none !important; }
.logo-track .cl img[alt="Hellas"] { filter: invert(1) !important; }
.logo-track .cl img[alt="Denario"] { filter: brightness(0) !important; }
.logo-track .cl img[alt="THORWallet"] { filter: brightness(0) !important; }
.logo-track .cl img[alt="THORChain"] { filter: none !important; }

/* ------------------------------------------------------------------
   CTA SECTION
   ------------------------------------------------------------------ */
.cta { background: #F8F7F4; }
.cta .eyebrow::before { display: none !important; }
.cta h2 { color: #141414; }
.cta p { color: rgba(20,20,20,.55); }
.cta .glow { background: radial-gradient(circle,rgba(28,28,28,.12),rgba(255,140,50,.06) 45%,transparent 68%); }
.tg { background: rgba(28,28,28,.06); border-color: rgba(28,28,28,.2); border-radius: 16px; }
.tg:hover { border-color: rgba(28,28,28,.5); background: rgba(28,28,28,.1); transform: translateY(-3px); box-shadow: 0 14px 30px -14px rgba(20,20,20,.28); }
.tg .who .nm { color: #141414; }
.tg .who .hd { color: #1C1C1C; }
.tg .ic {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--grad); color: #fff;
  border: 1px solid rgba(255,255,255,.4);
  box-shadow: 0 3px 8px rgba(20,20,20,.18), inset 0 1px 0 rgba(255,255,255,.35);
  transition: transform .3s ease;
}
.tg:hover .ic { transform: scale(1.07); }
.contacts { display: grid; grid-template-columns: repeat(2, minmax(260px, 340px)); gap: 16px 24px; justify-content: center; }
.contact-col { display: flex; flex-direction: column; gap: 16px; }
.contact-col .tg { width: 100%; box-sizing: border-box; }
.tg-gold .ic { background: radial-gradient(120% 150% at 50% -10%, #3a2c0f 0%, #241c0c 40%, #16130c 70%, #0a0a0a 100%); color: #fff; border-color: rgba(255,200,100,.3); box-shadow: 0 3px 8px rgba(20,20,20,.28), inset 0 1px 0 rgba(255,200,100,.25); }
.tg-gold:hover { border-color: rgba(184,134,11,.5); background: rgba(184,134,11,.1); }

/* ------------------------------------------------------------------
   FOOTER
   ------------------------------------------------------------------ */
footer { background: #F5F4F1; border-top-color: rgba(20,20,20,.08); }
.foot-in .cr { color: rgba(20,20,20,.35); }
.foot-tag { color: rgba(20,20,20,.55); }
.foot-legal p { color: rgba(20,20,20,.3); }
.foot-legal { border-top-color: rgba(20,20,20,.08); }
.foot-social a { border-color: rgba(20,20,20,.1); color: rgba(20,20,20,.45); }
.foot-social a:hover { color: #fff; background: #1C1C1C; border-color: transparent; }

/* ------------------------------------------------------------------
   REPORT READER
   ------------------------------------------------------------------ */
.reader { background: rgba(248,247,244,.92); }
.reader-bar { background: rgba(20,20,20,.08); }
.reader-close { color: #141414; background: rgba(255,255,255,.85); border-color: rgba(20,20,20,.12); }
.reader-close:hover { border-color: #1C1C1C; background: rgba(28,28,28,.08); }
.report-head { border-bottom-color: rgba(20,20,20,.1); }
.report-head h1 { color: #141414; }
.report-eyebrow { color: rgba(20,20,20,.5); }
.report-dek { color: rgba(20,20,20,.6); }
.report-meta { color: rgba(20,20,20,.35); }
.report-meta span::after { background: rgba(20,20,20,.15); }
.report-hero { border-color: rgba(20,20,20,.08); }
.report-lead { color: #141414; }
.report h2 { color: #141414; }
.report h3 { color: #1C1C1C; }
.report p { color: rgba(20,20,20,.6); }
.report p b,.report-lead b { color: #141414; }
.report-list { color: rgba(20,20,20,.6); }
.report-list li b { color: #141414; }
.report-chart { background: #FAFAFA; border-color: rgba(20,20,20,.1); }
.report-chart figcaption { color: rgba(20,20,20,.35); border-top-color: rgba(20,20,20,.1); }
.report-takeaways { border-color: rgba(28,28,28,.22); background: rgba(28,28,28,.05); }
.report-takeaways p { color: #141414; }
.report-source { color: rgba(20,20,20,.35); }
.report-origin { color: rgba(20,20,20,.55); }
.report-origin code { color: #1C1C1C; }
.report-pull { color: #141414; }
.report-foot { color: rgba(20,20,20,.35); }
.report-invite { border-color: rgba(34,197,94,.3); background: rgba(34,197,94,.05); }
.report-invite:hover { border-color: rgba(34,197,94,.6); box-shadow: 0 14px 40px rgba(34,197,94,.1); }
.report-invite-k { color: #141414; }
.report-invite-t { color: rgba(20,20,20,.6); }

/* ------------------------------------------------------------------
   SEC HEADS (all intro sections)
   ------------------------------------------------------------------ */
.sec-head h2 { color: #141414; }
.sec-head p { color: rgba(20,20,20,.55); }
.eyebrow { color: #1C1C1C; font-family: 'Space Grotesk', system-ui, sans-serif !important; letter-spacing: .12em !important; }
.eyebrow::before { background: #1C1C1C; }

/* ------------------------------------------------------------------
   SMART STATS GRID
   ------------------------------------------------------------------ */
.scard { background: #FFFFFF; border-color: rgba(20,20,20,.09); }
.scard::before { background: radial-gradient(120% 80% at 50% 0%,rgba(28,28,28,.08),transparent 70%); }
.scard:hover { border-color: rgba(28,28,28,.35); }
.scard .n { background: var(--grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.scard h3 { color: #141414; }
.scard p { color: rgba(20,20,20,.55); }

/* ------------------------------------------------------------------
   LOGO MARQUEE (clients)
   ------------------------------------------------------------------ */
.logo-track .cl { opacity: .9; }
.logo-track .cl:hover { opacity: 1; }
.logo-track .cl img { filter: none !important; }
.logo-track .cl img[alt="Hellas"] { filter: invert(1) !important; }
.logo-track .cl img[alt="Denario"] { filter: brightness(0) !important; }
.logo-track .cl img[alt="THORWallet"] { filter: brightness(0) !important; }
.logo-track .cl img[alt="THORChain"] { filter: none !important; }

/* step num circle — grey fill, white numbers */
.hcard .step .num { background: #888 !important; border-color: #888 !important; color: #FFFFFF !important; font-weight: 700; }

/* Hellas slides — bigger text */
.hellas[aria-label*="Hellas"] .hcard h3 { font-size: clamp(28px,3.4vw,44px) !important; }
.hellas[aria-label*="Hellas"] .hcard .hdesc { font-size: 17px !important; }
.hellas[aria-label*="Hellas"] .hcard.rt-intro h3 { font-size: clamp(34px,4vw,52px) !important; }

/* The Lemurs eyebrow — remove dash, distinctive font */
.lemurs-eyebrow { font-family: 'Space Grotesk',system-ui,sans-serif !important; letter-spacing: -0.01em !important; font-style: normal !important; text-transform: none !important; font-weight: 600 !important; white-space: nowrap !important; width: auto !important; }
.lemurs-eyebrow::before { display: none !important; }

/* mono-role labels — keep tracking/size but drop the all-caps look */
.eyebrow, .bnode .k, .bnode .ntags span, .hcard .step, .report-meta, .report-eyebrow,
.chip, .wcard .tag, .tag.floaty, .hellas-counter, .member .skills span, .member .loc,
.member .ln a, .clients .lead, .foot-in .cr, .foot-legal p, .hww-label, .hww-chip,
.hww-advisory-k, .tc-flow-k, .dive-label, .hellas-hint, .scan-tag, .paper-badges span,
.angle .x, .arc span, .viz.article .live, .report-chart figcaption, .report-chart .ph span,
.report-source, .report-invite-cta, .tg .who .hd, .reader-close, .hero-scroll,
.hww-kpi-live, .hww-kpi-subhead {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-stretch: normal !important;
}
.tc-logo, img[alt="THORChain"], .hellas-logo { filter: none !important; }
.hellas-head img[alt="Hellas"] { filter: brightness(0) !important; }

/* step label — bigger, darker */
.hcard .step { font-size: 14px !important; color: #1C1C1C !important; font-weight: 600; }
.hcard .step .num { border-color: rgba(20,20,20,.25) !important; color: #1C1C1C !important; font-size: 13px !important; width: 32px !important; height: 32px !important; }

/* THORChain exhibit — dark blue circles, white numbers */
[aria-label="THORChain client exhibit"] .hcard .step .num { background: #1D6FA8 !important; border-color: #1D6FA8 !important; color: #fff !important; width: 40px !important; height: 40px !important; font-size: 16px !important; }

/* GEO/PR and ADR flow steps — light theme */
.tc-flow-thumb { background: #0F2027; }
.tc-flow-icon { color: rgba(20,20,20,.35); border-color: rgba(20,20,20,.1); background: rgba(20,20,20,.02); }
.tc-flow-k { color: #141414; }
.tc-flow-d { color: rgba(20,20,20,.58); }
.tc-flow-arr { color: rgba(20,20,20,.25); }

/* howwework chips */
.hww-chip.on { color: #fff; }
.hww-analysis-ic { display: inline-flex; align-items: center; justify-content: center; width: 190px; height: 190px; border-radius: 50%; background: rgba(90,90,90,.12); color: #5A5A5A; position: absolute; right: 0; bottom: 0; overflow: hidden; }
.hww-analysis-ic svg { width: 96px; height: 96px; position: relative; z-index: 1; }
.hww-type-cursor { display: inline-block; margin-left: 2px; color: #7A7A7A; font-weight: 700; animation: hww-caret 0.85s step-end infinite; }
.hww-type-cursor.done { opacity: 0; }
@keyframes hww-caret { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
.hww-type-reveal { opacity: 0; transform: translateY(8px); transition: opacity .5s ease, transform .5s ease; }
.hww-type-reveal.in { opacity: 1; transform: none; }
.hww-ic-scan { display: none; }
@media (prefers-reduced-motion: reduce) {
  .hww-type-cursor { animation: none; opacity: 0; }
  .hww-ic-scan.run { animation: none; }
}

/* How we work — vertical flow (no scroll-jack) */
.hww-vstack { padding: 140px 32px 100px; display: flex; flex-direction: column; align-items: center; gap: 72px; max-width: 1200px; margin: 0 auto; width: 100%; }
.hww-block { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; width: 100%; }
.hww-block.in { opacity: 1; transform: none; }
.hww-block h3 { font-size: clamp(34px, 4.4vw, 58px); font-weight: 800; line-height: 1.08; color: #8B5A2B; margin: 0; max-width: 90%; }
@media (prefers-reduced-motion: reduce) { .hww-block { opacity: 1; transform: none; transition: none; } }
.hww-block[style*="position:relative"] { min-height: 220px; padding-right: 220px; }
.hww-intro h3 { font-size: clamp(38px, 5vw, 66px); max-width: 700px; color: #141414; }
.hww-intro-sub { margin-top: -46px; }
.hww-intro-sub h3 { font-size: clamp(24px, 2.8vw, 34px); font-weight: 600; color: #141414; }
.hww-block .grad-text { background: var(--grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* pinned title + accumulating scroll-linked list */
.hww-pin { position: relative; }
.hww-pin:first-of-type { margin-top: 30vh; }
.hww-pin-head { position: sticky; top: 50%; transform: translateY(-50%); z-index: 1; padding: 0 0 8px; display: flex; flex-direction: column; }
.hww-pin-head h3 { font-size: clamp(34px, 4.4vw, 58px); font-weight: 800; line-height: 1.14; color: #8B5A2B; margin: 0; max-width: 900px; }
.hww-pin-card { background: linear-gradient(135deg,#FCF0C9,#F5DD8E); border-radius: 32px; padding: 40px 46px 34px; box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(20,14,4,.38), 0 14px 26px -12px rgba(20,14,4,.28); }
.hww-pin-card h3 { color: #1C1C1C; }
.hww-pin-card--blue { background: linear-gradient(135deg,#BDEAF3,#6FD2E8); box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(4,30,36,.35), 0 14px 26px -12px rgba(4,30,36,.25); }
.hww-pin-card--purple { background: linear-gradient(135deg,#DCCCF2,#B79AE6); box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(30,14,50,.35), 0 14px 26px -12px rgba(30,14,50,.25); }
.hww-pin-card--gold .hww-pin-item { color: #7A4B0A; }
.hww-pin-card--gold .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-card--blue .hww-pin-item { color: #05616F; }
.hww-pin-card--blue .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-card--purple .hww-pin-item { color: #4A2E86; }
.hww-pin-card--purple .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-card--green { background: linear-gradient(135deg,#DCEFCD,#9FDD86); box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(10,40,16,.35), 0 14px 26px -12px rgba(10,40,16,.25); }
.hww-pin-card--orange { background: linear-gradient(135deg,#FBDEC0,#F5A85E); box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(40,26,4,.35), 0 14px 26px -12px rgba(40,26,4,.25); }
.hww-pin-card--red { background: linear-gradient(135deg,#F6CFCB,#EF9088); box-shadow: 0 4px 0 rgba(255,255,255,.5) inset, 0 30px 60px -20px rgba(40,10,10,.35), 0 14px 26px -12px rgba(40,10,10,.25); }
.hww-pin-card--green .hww-pin-item { color: #2E6B45; }
.hww-pin-card--green .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-card--orange .hww-pin-item { color: #9A540A; }
.hww-pin-card--orange .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-card--red .hww-pin-item { color: #8A2020; }
.hww-pin-card--red .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
.hww-pin-list { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 24px; }
.hww-pin-item {
  display: flex; align-items: center; gap: 12px;
  padding: 9px 4px; border-radius: 0;
  font-size: clamp(15px, 1.5vw, 18px); font-weight: 700; letter-spacing: -0.01em;
  opacity: 0; transform: translateY(14px) scale(.94); max-height: 0; overflow: hidden;
  transition: opacity .4s ease, transform .4s cubic-bezier(.2,1.1,.3,1), max-height .4s ease, padding .35s ease, font-size .35s ease;
  background: none; color: #1C1C1C; border-bottom: 1px solid rgba(28,28,28,.12);
}
.hww-pin-item:last-child { border-bottom: none; }
.hww-pin-item.shown { opacity: 1; transform: none; max-height: 80px; }
.hww-pin-item.active {
  font-size: clamp(22px, 2.4vw, 30px); padding: 13px 4px;
}
.hww-pin-item .hww-pin-pill-icon { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 10px; background: rgba(255,255,255,.5); flex: none; }
.hww-pin-item.active .hww-pin-pill-icon { width: 38px; height: 38px; }
.hww-pin-item.c-gold { color: #8B5A0F; }
.hww-pin-item.c-teal { color: #046B7D; }
.hww-pin-item.c-slate { color: #33414F; }
.hww-pin-item.c-green { color: #2E6B45; }
.hww-pin-item.c-gold .hww-pin-pill-icon { background: rgba(184,134,11,.22); }
.hww-pin-item.c-teal .hww-pin-pill-icon { background: rgba(0,168,192,.22); }
.hww-pin-item.c-slate .hww-pin-pill-icon { background: rgba(58,74,90,.22); }
.hww-pin-item.c-green .hww-pin-pill-icon { background: rgba(63,143,91,.22); }

.hww-pin-item.c-gold { color: #8B5A0F; }
.hww-pin-item.c-teal { color: #046B7D; }
.hww-pin-item.c-slate { color: #33414F; }
.hww-pin-item.c-green { color: #2E6B45; }
.hww-pin-item.c-gold .hww-pin-pill-icon { background: rgba(184,134,11,.22); }
.hww-pin-item.c-teal .hww-pin-pill-icon { background: rgba(0,168,192,.22); }
.hww-pin-item.c-slate .hww-pin-pill-icon { background: rgba(58,74,90,.22); }
.hww-pin-item.c-green .hww-pin-pill-icon { background: rgba(63,143,91,.22); }

/* Channels pie chart */
.hww-pie-card { padding: 40px 46px 46px; }

/* Content Types exhibit — original big pin-card look, sized to its own content and arranged horizontally */
.content-types-rail .hellas-track { align-items: stretch; }
.hcard.hww-pin-card { width: min(640px, 86vw); height: 460px; min-height: 0; max-height: none; overflow: visible; }
.hww-pin-card h3 { font-size: clamp(30px, 4vw, 46px); font-weight: 800; line-height: 1.14; margin: 0; }
.hww-pie-wrap { display: flex; align-items: center; justify-content: center; gap: 60px; margin-top: 20px; flex-wrap: wrap; }
.hww-pie-ring { position: relative; width: 220px; height: 220px; flex: none; }
.hww-pie { width: 100%; height: 100%; border-radius: 50%; background: rgba(28,28,28,.08); transition: background .5s ease; }
.hww-pie-hole { position: absolute; inset: 34px; border-radius: 50%; background: linear-gradient(135deg,#FCF0C9,#F5DD8E); }
.hww-pie-legend { flex: 1; min-width: 340px; max-width: 460px; margin-top: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; row-gap: 4px; align-items: start; }
.hww-pie-legend .hww-pin-item { color: #1C1C1C; }
.hww-pie-legend .hww-pin-item .hww-pin-pill-icon { background: rgba(255,255,255,.55); }
@media (max-width: 620px) {
  .hww-pie-wrap { flex-direction: column; align-items: center; }
  .hww-pie-legend { grid-template-columns: 1fr; }
}

/* Nav panels — Case Studies / Team open as full-screen overlays,
   removed from normal document flow so the main scroll goes
   Clients -> How we work directly */
.nav-panel { display: none; }
.nav-panel.open {
  display: block; position: fixed; inset: 0; z-index: 55;
  background: #fff; overflow-y: auto; -webkit-overflow-scrolling: touch;
}
body.panel-lock { overflow: hidden; }
.nav-panel-bar { display: none; }
.nav-panel-scroll { padding-top: 96px; }
.nav-panel-close {
  border: 1px solid rgba(28,28,28,.18); background: #fff; border-radius: 999px;
  padding: 10px 18px; font-size: 14px; font-weight: 600; cursor: pointer; color: #1C1C1C;
}
.nav-panel-close:hover { border-color: rgba(28,28,28,.4); }
.result-card .hww-analytics { display: flex; align-items: center; justify-content: center; }
.hww-kpi-card { position: relative; background: linear-gradient(165deg,#1B1A22,#111017); border-radius: 20px; padding: 26px 26px 20px; width: 100%; max-width: 460px; box-shadow: 0 30px 60px -24px rgba(0,0,0,.55), 0 1px 0 rgba(255,255,255,.06) inset; border: 1px solid rgba(255,255,255,.06); overflow: hidden; }
.hww-kpi-card::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background: radial-gradient(120% 60% at 15% 0%, rgba(46,168,232,.16), transparent 60%),
              radial-gradient(90% 50% at 100% 0%, rgba(233,58,224,.14), transparent 60%);
}
.hww-kpi-card > * { position: relative; z-index: 1; }
.hww-kpi-divider { height: 1px; background: linear-gradient(90deg, rgba(255,255,255,.1), rgba(255,255,255,.02)); margin: 16px 0; }
.hww-kpi-head { display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px; }
.hww-kpi-live { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #4DDCEC; }
.hww-kpi-live .dot { width: 6px; height: 6px; border-radius: 50%; background: #4DDCEC; box-shadow: 0 0 6px 1px rgba(77,220,236,.7); animation: kpi-live-pulse 1.6s ease-in-out infinite; }
@keyframes kpi-live-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
.hww-kpi-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 0; }
.hww-kpi-stat { background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 12px 12px 11px; display: flex; flex-direction: column; gap: 3px; }
.hww-kpi-stat .v { color: #fff; font-size: 18px; font-weight: 700; }
.hww-kpi-stat .l { color: rgba(255,255,255,.4); font-size: 11px; }
.hww-kpi-stat .chg { font-size: 10.5px; font-weight: 700; margin-top: 3px; }
.hww-kpi-stat .chg.up { color: #4ADE80; }
.hww-kpi-chart-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10px; }
.hww-kpi-chart-head span:first-child { color: rgba(255,255,255,.55); font-size: 12px; font-weight: 600; }
.hww-kpi-axis { color: rgba(255,255,255,.28); font-size: 10px; letter-spacing: .02em; }
.hww-kpi-label { color: #fff; font-weight: 700; font-size: 17px; }
.hww-kpi-month { color: rgba(255,255,255,.45); font-size: 14px; font-weight: 600; }
.hww-kpi-panel { background: rgba(255,255,255,.025); border: 1px solid rgba(255,255,255,.06); border-radius: 14px; padding: 16px; }
.hww-kpi-subhead { color: rgba(255,255,255,.4); font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; margin-bottom: 12px; }
.hww-kpi-big { color: #fff; font-size: 19px; font-weight: 600; line-height: 1.4; margin: 0 0 22px; max-width: 38ch; }
.hww-kpi-page { max-width: 380px; min-height: 560px; display: flex; flex-direction: column; padding: 32px 30px 24px; }
.hww-kpi-donut-wrap { width: 120px; height: 120px; flex: none; }
.hww-kpi-donut { width: 100%; height: 100%; }
.hww-kpi-donut .seg { stroke-dasharray: 251.2; stroke-dashoffset: 251.2; transition: none; }
.result-card.in .hww-kpi-donut .seg-f, .hww-kpi-card.in .hww-kpi-donut .seg-f { animation: kpi-fill-f 2s ease .1s forwards; }
.result-card.in .hww-kpi-donut .seg-nf, .hww-kpi-card.in .hww-kpi-donut .seg-nf { animation: kpi-fill-nf 2s ease .5s forwards; }
@keyframes kpi-fill-f { from { stroke-dashoffset: 251.2; } to { stroke-dashoffset: 229.1; } }
@keyframes kpi-fill-nf { from { stroke-dashoffset: 0; stroke-dasharray: 0 251.2; } to { stroke-dasharray: 229.1 251.2; stroke-dashoffset: -22.1; } }
.hww-kpi-legend { display: flex; flex-direction: column; gap: 10px; font-size: 14px; color: rgba(255,255,255,.6); }
.hww-kpi-legend b { color: #fff; margin-left: 6px; }
.hww-kpi-legend .dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 8px; }
.hww-kpi-legend .dot.f { background: #2EA8E8; }
.hww-kpi-legend .dot.nf { background: #E93AE0; }
.hww-kpi-bars { display: flex; align-items: flex-end; gap: 5px; height: 90px; position: relative; background-image: repeating-linear-gradient(0deg, rgba(255,255,255,.07) 0, rgba(255,255,255,.07) 1px, transparent 1px, transparent 30px); background-position: bottom; }
.hww-kpi-bars span { flex: 1; height: 0; border-radius: 3px 3px 0 0; background: linear-gradient(180deg,#4DDCEC,#2EA8E8); opacity: 0; transition: none; }
.result-card.in .hww-kpi-bars span, .hww-kpi-card.in .hww-kpi-bars span { animation: kpi-bar 1.3s ease forwards; animation-delay: calc(var(--i, 0) * 70ms + .5s); }
.hww-kpi-bars span:nth-child(1) { --i: 1; } .hww-kpi-bars span:nth-child(2) { --i: 2; } .hww-kpi-bars span:nth-child(3) { --i: 3; } .hww-kpi-bars span:nth-child(4) { --i: 4; }
.hww-kpi-bars span:nth-child(5) { --i: 5; } .hww-kpi-bars span:nth-child(6) { --i: 6; } .hww-kpi-bars span:nth-child(7) { --i: 7; } .hww-kpi-bars span:nth-child(8) { --i: 8; }
.hww-kpi-bars span:nth-child(9) { --i: 9; } .hww-kpi-bars span:nth-child(10) { --i: 10; } .hww-kpi-bars span:nth-child(11) { --i: 11; } .hww-kpi-bars span:nth-child(12) { --i: 12; }
.hww-kpi-bars span:nth-child(13) { --i: 13; } .hww-kpi-bars span:nth-child(14) { --i: 14; } .hww-kpi-bars span:nth-child(15) { --i: 15; } .hww-kpi-bars span:nth-child(16) { --i: 16; }
@keyframes kpi-bar { from { height: 0; opacity: 0; } to { height: var(--h); opacity: 1; } }
.hww-kpi-lines { display: flex; flex-direction: column; gap: 16px; flex: 1; }
.hww-kpi-lines--top { margin-bottom: 22px; }
.hww-kpi-highlights { display: flex; flex-direction: column; gap: 11px; flex: 1; }
.hww-kpi-highlights div { display: flex; align-items: flex-start; gap: 9px; font-size: 12.5px; line-height: 1.45; color: rgba(255,255,255,.62); }
.hww-kpi-hl-dot { width: 6px; height: 6px; border-radius: 50%; background: #2EA8E8; margin-top: 5px; flex: none; }
.hww-kpi-hl-dot.alt { background: #E93AE0; }
.hww-kpi-lines span { display: block; height: 2px; border-radius: 2px; background: repeating-linear-gradient(90deg, #2EA8E8 0 6px, transparent 6px 11px); opacity: 0; transform: translateX(-6px); }
.result-card.in .hww-kpi-lines span, .hww-kpi-card.in .hww-kpi-lines span { animation: kpi-line 1s ease forwards; animation-delay: calc(var(--i, 0) * 120ms + .5s); }
.hww-kpi-lines span:nth-child(1) { --i: 1; } .hww-kpi-lines span:nth-child(2) { --i: 2; } .hww-kpi-lines span:nth-child(3) { --i: 3; } .hww-kpi-lines span:nth-child(4) { --i: 4; }
@keyframes kpi-line { from { opacity: 0; transform: translateX(-6px); } to { opacity: 1; transform: none; } }
.hww-kpi-page-foot { text-align: right; color: rgba(255,255,255,.35); font-size: 12px; letter-spacing: .06em; margin-top: 18px; }
.hcard .hdesc.hww-result-lead { font-size: 28px; font-weight: 500; color: rgba(20,20,20,.55); max-width: 46ch; line-height: 1.55; opacity: 0; transform: translateY(22px); transition: opacity 1.1s ease, transform 1.1s ease; }
.hcard .hdesc.hww-result-lead.in { opacity: 1; transform: none; }
.hww-result-title { display: block; font-family: var(--disp); font-size: clamp(32px, 3vw, 42px); font-weight: 800; letter-spacing: -0.02em; text-transform: none; color: #141414; margin-bottom: 20px; line-height: 1.15; max-width: 26ch; }
@media (prefers-reduced-motion: reduce) {
  .hww-kpi-donut .seg { animation: none !important; }
  .hww-kpi-donut .seg-f { stroke-dashoffset: 229.1; }
  .hww-kpi-donut .seg-nf { stroke-dasharray: 229.1 251.2; stroke-dashoffset: -22.1; }
  .hww-kpi-bars span { animation: none !important; height: var(--h); opacity: 1; }
  .hww-kpi-lines span { animation: none !important; opacity: 1; transform: none; }
}
.hww-pin-item .hww-pin-pill-icon svg { width: 17px; height: 17px; }
.hww-pin-item.active .hww-pin-pill-icon svg { width: 22px; height: 22px; }
.hww-pin-trigger { height: 42vh; }
.hww-pin-trigger:first-child { height: 20vh; }
.hww-pin-trigger:last-child { height: 20vh; }
@media (max-width: 1040px) {
  .hww-pin-head { top: 50%; }
  .hww-pin-trigger { height: 34vh; }
}

/* horizontal marquee — channel logos in brand colors */
.hww-app-marquee { margin-top: 28px; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.hww-app-track { display: flex; align-items: center; gap: 56px; width: max-content; animation: marq 26s linear infinite; }
.hww-app-track:hover { animation-play-state: paused; }
.hww-app2 { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.hww-app2 svg { width: 40px; height: 40px; flex: none; }
.hww-app2 b { font-size: 26px; font-weight: 700; color: #141414; }
@media (prefers-reduced-motion: reduce) { .hww-app-track { animation: none; } }
@media (max-width: 1040px) {
  .hww-vstack { gap: 52px; padding: 44px 20px 80px; }
}

/* stat numbers in bridge cards */
.tc-stat { background: #FAFAFA; border-color: rgba(20,20,20,.1); }
.tc-stat b { color: #141414; }
.tc-stat span { color: rgba(20,20,20,.4); }
.tc-tags span { color: rgba(20,20,20,.6); }
.tc-tags span::before { background: #00B8D4; box-shadow: 0 0 8px rgba(0,184,212,.4); }

/* report-chart placeholder */
.report-chart .ph { background-image: repeating-linear-gradient(135deg,rgba(20,20,20,.04) 0 10px,transparent 10px 20px); }
.report-chart .ph span { color: rgba(20,20,20,.3); }

/* ---- force Inter Display on all headings ---- */
h1,h2,h3,
.report-head h1,
.report h2,
.report h3,
.hcard h3,
.bnode .t,
.member .nm,
.sec-head h2,
.magic h2,
.cta h2 {
  font-family: "Inter Display","Inter",system-ui,sans-serif !important;
}

/* ---- back compat: keep logo white by adding filter inversion ---- */
.brand img { filter: none; }
/* if only white logo exists, invert it */
