/* Direct Components — Flagship design system */
:root{
  --abyss:#04161B; --ink:#061E25; --navy:#0F3A44; --navy-2:#134850; --navy-3:#1A5A63;
  --teal:#17A2A0; --teal-2:#0E7C7B; --glow:#2ED3C6; --mint:#7FD6D4; --ice:#D9F3F1;
  --paper:#F3F7F8; --line:#DCE6E9; --text:#0B2229; --muted:#4F6670; --muted-2:#8AA1AA;
  --on-dark:#E6F1F3; --on-dark-2:#A9C1C8;
  --signal:#E8583A;
  --r:18px; --r-lg:28px;
  --max:1280px;
  --display:"Space Grotesk",Inter,system-ui,sans-serif; --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--teal-2);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--display);line-height:1.04;letter-spacing:-.025em;margin:0 0 .45em;font-weight:700}
h1{font-size:clamp(2.8rem,7.4vw,7rem)} h2{font-size:clamp(2.1rem,4.6vw,4.2rem)} h3{font-size:clamp(1.25rem,1.8vw,1.6rem);letter-spacing:-.015em}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:8px 14px;z-index:999;border-radius:8px}.skip:focus{left:8px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 .74rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--teal-2);margin-bottom:22px}
.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}
.dark .eyebrow,.eyebrow.light{color:var(--mint)}
.lead{font-size:clamp(1.08rem,1.4vw,1.32rem);line-height:1.6;color:var(--muted);max-width:720px}
.dark .lead{color:var(--on-dark-2)}
.grad{background:linear-gradient(100deg,#fff 0%,#BFF4EE 40%,var(--glow) 75%,#8FE3FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.grad-dark{background:linear-gradient(100deg,var(--navy) 0%,var(--teal-2) 60%,var(--teal) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font:600 .95rem/1 var(--sans);padding:16px 24px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background .25s,border-color .25s,box-shadow .25s;white-space:nowrap}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn svg{width:16px;height:16px;transition:transform .25s var(--ease)} .btn:hover svg{transform:translateX(3px)}
.btn-glow{background:linear-gradient(135deg,var(--teal) 0%,#109A97 100%);color:#fff;box-shadow:0 10px 30px rgba(23,162,160,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-glow:hover{box-shadow:0 14px 40px rgba(46,211,198,.45)}
.btn-line{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(6px)}
.btn-line:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-dark{background:var(--ink);color:#fff} .btn-dark:hover{background:var(--navy)}
.btn-ghost{border-color:var(--line);color:var(--text)} .btn-ghost:hover{border-color:var(--teal);color:var(--teal-2)}
.link-arrow{font-weight:600;display:inline-flex;gap:8px;align-items:center}
.link-arrow:after{content:"→";transition:transform .25s var(--ease)} .link-arrow:hover:after{transform:translateX(4px)}

/* header */
.hdr{position:fixed;top:0;left:0;right:0;z-index:80;transition:background .35s,box-shadow .35s,backdrop-filter .35s,transform .35s}
.hdr .wrap{display:flex;align-items:center;gap:28px;height:84px}
.hdr.solid{background:rgba(4,22,27,.82);backdrop-filter:blur(14px) saturate(140%);box-shadow:0 1px 0 rgba(255,255,255,.07)}
.hdr.light-page:not(.solid){background:linear-gradient(180deg,rgba(4,22,27,.7),rgba(4,22,27,0))}
.brand{display:flex;align-items:center;gap:12px;color:#fff;font-family:var(--display);font-weight:700;letter-spacing:.06em;font-size:.98rem;line-height:1.05}
.brand:hover{text-decoration:none}
.brand img{width:46px;height:46px;filter:drop-shadow(0 4px 12px rgba(46,211,198,.25))}
.brand small{display:block;font:500 .64rem/1.4 var(--sans);letter-spacing:.24em;color:var(--mint);text-transform:uppercase}
.nav{display:flex;gap:4px;margin-left:auto;list-style:none;padding:0;margin-top:0;margin-bottom:0}
.nav a{display:block;color:#D6E6EA;font-size:.92rem;font-weight:500;padding:10px 13px;border-radius:999px;transition:.2s}
.nav a:hover,.nav a[aria-current=page]{color:#fff;background:rgba(255,255,255,.08);text-decoration:none}
.hdr .cta{margin-left:8px;padding:12px 18px}
.burger{display:none;margin-left:auto;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.05);color:#fff;cursor:pointer;position:relative}
.burger span,.burger span:before,.burger span:after{position:absolute;left:14px;right:14px;height:2px;background:#fff;border-radius:2px;transition:.3s var(--ease);content:""}
.burger span{top:23px} .burger span:before{top:-7px;left:0;right:0} .burger span:after{top:7px;left:0;right:0}
.menu-open .burger span{background:transparent} .menu-open .burger span:before{top:0;transform:rotate(45deg)} .menu-open .burger span:after{top:0;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:70;background:radial-gradient(900px 600px at 90% 0%,rgba(23,162,160,.35),transparent 60%),var(--abyss);padding:110px 28px 40px;display:flex;flex-direction:column;gap:6px;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;overflow-y:auto}
.mobile-menu a{color:#fff;font-family:var(--display);font-size:clamp(1.7rem,7vw,2.4rem);font-weight:600;padding:6px 0;letter-spacing:-.02em;border-bottom:1px solid rgba(255,255,255,.08)}
.mobile-menu a small{font:500 .8rem var(--sans);color:var(--mint);margin-left:8px;letter-spacing:.06em}
.mobile-menu .btn{margin-top:24px;font-size:1rem;justify-content:center;border-bottom:0}
.menu-open .mobile-menu{opacity:1;visibility:visible}
.menu-open{overflow:hidden}

/* hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:var(--abyss);overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:-4%;background-size:cover;background-position:center 70%;transform:scale(1.06);animation:kenburns 26s var(--ease) infinite alternate;z-index:-3}
.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,27,.92) 0%,rgba(4,22,27,.45) 38%,rgba(4,22,27,.25) 62%,rgba(4,22,27,.92) 100%),linear-gradient(90deg,rgba(4,22,27,.75) 0%,rgba(4,22,27,0) 60%)}
.hero-tint{position:absolute;inset:0;z-index:-2;background:radial-gradient(1200px 700px at 75% 80%,rgba(23,162,160,.35),transparent 60%);mix-blend-mode:screen}
#field{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:.75}
@keyframes kenburns{from{transform:scale(1.06) translate3d(0,0,0)}to{transform:scale(1.16) translate3d(-1.5%,-2%,0)}}
.hero .wrap{width:100%;padding-top:150px;padding-bottom:110px}
.hero h1{max-width:13ch;margin-bottom:.3em;text-shadow:0 10px 60px rgba(0,0,0,.35)}
.hero .lead{color:#C9DDE2;max-width:640px;margin-bottom:36px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.hero-meta{display:flex;gap:42px;flex-wrap:wrap;margin-top:64px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);max-width:980px}
.hero-meta div{min-width:150px} .hero-meta b{display:block;font:700 clamp(1.7rem,2.6vw,2.4rem)/1 var(--display);color:#fff;letter-spacing:-.02em}
.hero-meta span{font-size:.82rem;color:var(--on-dark-2);letter-spacing:.02em}
.scroll-cue{position:absolute;right:28px;bottom:36px;writing-mode:vertical-rl;font:600 .7rem var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--on-dark-2);display:flex;align-items:center;gap:14px}
.scroll-cue:after{content:"";width:1px;height:70px;background:linear-gradient(var(--mint),transparent);animation:cue 2.2s infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.page-hero{min-height:78vh;min-height:78svh}
.page-hero .wrap{padding-bottom:90px}
.page-hero h1{font-size:clamp(2.6rem,6.2vw,5.6rem);max-width:16ch}
.crumbs{font-size:.8rem;color:var(--on-dark-2);margin-bottom:26px;letter-spacing:.04em}.crumbs a{color:var(--on-dark-2)}

/* marquee */
.marquee{background:var(--ink);color:var(--mint);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);overflow:hidden;white-space:nowrap;padding:20px 0}
.marquee-track{display:inline-flex;gap:56px;animation:marquee 38s linear infinite;font:600 .95rem var(--display);letter-spacing:.2em;text-transform:uppercase}
.marquee-track span{display:inline-flex;align-items:center;gap:56px} .marquee-track span:after{content:"✦";color:var(--teal)}
@keyframes marquee{to{transform:translateX(-50%)}}

/* sections */
section{position:relative}
.sec{padding:clamp(90px,11vw,160px) 0}
.sec-sm{padding:clamp(60px,7vw,100px) 0}
.dark{background:var(--abyss);color:var(--on-dark)}
.dark h2,.dark h3{color:#fff}
.tealfield{background:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1.3px) 0 0/24px 24px,radial-gradient(1200px 640px at 90% -10%,rgba(23,162,160,.32),transparent 60%),radial-gradient(900px 520px at -10% 110%,rgba(23,162,160,.2),transparent 60%),linear-gradient(160deg,#0F3A44 0%,#0B2E37 55%,#06222A 100%);color:var(--on-dark)}
.paper{background:var(--paper)}
.head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:64px}
.head p{margin:0}
.head.solo{grid-template-columns:1fr;max-width:860px}
.num{font:700 .8rem var(--display);color:var(--teal);letter-spacing:.14em}

/* statement */
.statement{font:600 clamp(1.8rem,3.6vw,3.3rem)/1.18 var(--display);letter-spacing:-.025em;max-width:22ch;color:var(--text)}
.statement em{font-style:normal;color:var(--teal-2)}
.dark .statement{color:#fff}.dark .statement em{color:var(--mint)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}
.split.top{align-items:start}
.split-7-5{grid-template-columns:7fr 5fr}.split-5-7{grid-template-columns:5fr 7fr}

/* cards */
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:34px;transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s;overflow:hidden}
.card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -20px rgba(6,30,37,.25);border-color:transparent}
.card h3{margin-top:18px}
.card p{color:var(--muted);margin:0}
.card .tag{position:absolute;top:26px;right:26px}
.glass{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);color:var(--on-dark);backdrop-filter:blur(8px)}
.glass p{color:var(--on-dark-2)} .glass h3{color:#fff}
.glass:hover{border-color:rgba(127,214,212,.45);box-shadow:0 30px 70px -20px rgba(0,0,0,.6)}
.icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(23,162,160,.18),rgba(23,162,160,.05));color:var(--teal-2);border:1px solid rgba(23,162,160,.25)}
.glass .icon{color:var(--mint)}
.icon svg{width:26px;height:26px}
.tag{display:inline-flex;align-items:center;gap:7px;font:600 .68rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:8px 12px;border-radius:999px;background:var(--ice);color:var(--teal-2)}
.tag.dim{background:#EEF2F4;color:var(--muted)}
.tag.amber{background:#FFF1DC;color:#8A5300}
.dark .tag,.tealfield .tag{background:rgba(127,214,212,.12);color:var(--mint)}
.tag .dot{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(46,211,198,.18)}

/* big tech cards */
.tech{position:relative;min-height:520px;border-radius:var(--r-lg);overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:38px;isolation:isolate;background:var(--ink)}
.tech img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s var(--ease)}
.tech:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,22,27,.1) 0%,rgba(4,22,27,.35) 40%,rgba(4,22,27,.94) 100%)}
.tech:hover img{transform:scale(1.06)}
.tech h3{font-size:clamp(1.6rem,2.4vw,2.2rem);color:#fff}
.tech p{color:#C8DBE0;max-width:46ch;margin-bottom:18px}
.tech .tag{position:absolute;top:28px;left:28px}
.tech a.cover{position:absolute;inset:0;z-index:1}
.tech .link-arrow{color:var(--mint)}
.tech.feature{grid-column:span 2;min-height:600px}

/* samaritan feature */
.sam{overflow:hidden}
.sam-visual{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;box-shadow:0 60px 120px -40px rgba(0,0,0,.7)}
.sam-visual img{width:100%;height:100%;object-fit:cover}
.sam-logo{position:absolute;left:24px;bottom:24px;width:96px;background:rgba(255,255,255,.92);border-radius:18px;padding:10px}
.float-chip{position:absolute;right:-12px;top:42px;background:rgba(4,22,27,.82);backdrop-filter:blur(10px);border:1px solid rgba(127,214,212,.3);border-radius:18px;padding:18px 20px;color:#fff;max-width:220px}
.float-chip b{display:block;font:700 1.8rem/1 var(--display);color:var(--mint)} .float-chip span{font-size:.8rem;color:var(--on-dark-2)}
.steps{counter-reset:s;display:grid;gap:0;margin:34px 0}
.steps li{list-style:none;counter-increment:s;display:grid;grid-template-columns:64px 1fr;gap:18px;padding:20px 0;border-top:1px solid rgba(255,255,255,.12)}
.steps li:before{content:"0" counter(s);font:700 .9rem var(--display);color:var(--mint);letter-spacing:.1em;padding-top:4px}
.steps b{display:block;color:#fff;font:600 1.2rem var(--display);margin-bottom:2px}
.steps span{color:var(--on-dark-2);font-size:.96rem}
.steps.light li{border-color:var(--line)}.steps.light b{color:var(--text)}.steps.light span{color:var(--muted)}.steps.light li:before{color:var(--teal-2)}
.reg{font-size:.82rem;color:var(--on-dark-2);border-left:2px solid var(--teal);padding-left:14px;max-width:640px}
.reg.light{color:var(--muted)}

/* counters band */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12)}
.stats div{padding:40px 28px 0 0;border-right:1px solid rgba(255,255,255,.08);padding-left:28px}
.stats div:first-child{padding-left:0}.stats div:last-child{border-right:0}
.stats b{display:block;font:700 clamp(2.6rem,5vw,4.6rem)/1 var(--display);letter-spacing:-.04em;color:#fff}
.stats b i{font-style:normal;color:var(--mint)}
.stats span{display:block;margin-top:12px;color:var(--on-dark-2);font-size:.92rem;max-width:24ch}
.stats.light{border-color:var(--line)}.stats.light div{border-color:var(--line)}.stats.light b{color:var(--text)}.stats.light b i{color:var(--teal)}.stats.light span{color:var(--muted)}

/* IP table */
.ip-list{border-top:1px solid var(--line)}
.ip-row{display:grid;grid-template-columns:220px 1fr 160px 120px;gap:24px;align-items:center;padding:24px 4px;border-bottom:1px solid var(--line);transition:background .3s,padding .3s}
.ip-row:hover{background:linear-gradient(90deg,var(--ice),transparent);padding-left:16px}
.ip-row .no{font:700 1rem var(--display);color:var(--text);letter-spacing:.01em}
.ip-row .t{color:var(--text);font-weight:500}.ip-row .t small{display:block;color:var(--muted);font-weight:400;font-size:.84rem;margin-top:2px}
.ip-row .fam{font-size:.86rem;color:var(--muted)}
.dark .ip-list,.tealfield .ip-list{border-color:rgba(255,255,255,.12)}
.tealfield .ip-row{border-color:rgba(255,255,255,.1)} .tealfield .ip-row .no,.tealfield .ip-row .t{color:#fff} .tealfield .ip-row .t small,.tealfield .ip-row .fam{color:var(--on-dark-2)}
.tealfield .ip-row:hover{background:linear-gradient(90deg,rgba(127,214,212,.1),transparent)}

/* practice areas */
.area{display:grid;grid-template-columns:90px 1fr auto;gap:28px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line);transition:.4s var(--ease)}
.area:first-child{border-top:1px solid var(--line)}
.area .n{font:700 1rem var(--display);color:var(--teal)}
.area h3{margin:0 0 6px;font-size:clamp(1.5rem,2.6vw,2.4rem)}
.area p{margin:0;color:var(--muted);max-width:62ch}
.area:hover{padding-left:14px}
.area .tag{justify-self:end}

/* leaders */
.leader{border-radius:var(--r-lg);overflow:hidden;background:#fff;border:1px solid var(--line);transition:.4s var(--ease)}
.leader:hover{transform:translateY(-6px);box-shadow:0 30px 60px -24px rgba(6,30,37,.3)}
.leader .ph{aspect-ratio:1/1;overflow:hidden;background:var(--paper)} .leader .ph img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(.15) contrast(1.05);transition:transform .8s var(--ease)}
.leader:hover .ph img{transform:scale(1.05)}
.leader .tx{padding:22px 24px 26px}.leader h3{font-size:1.2rem;margin:0 0 4px}.leader .role{font-size:.82rem;color:var(--teal-2);font-weight:600;letter-spacing:.02em}.leader p{font-size:.92rem;color:var(--muted);margin:10px 0 0}
.leader.big{display:grid;grid-template-columns:1fr 1.2fr}.leader.big .ph{aspect-ratio:auto;min-height:420px}.leader.big .tx{padding:48px;align-self:center}.leader.big h3{font-size:clamp(1.8rem,3vw,2.6rem)}.leader.big p{font-size:1.02rem}

/* news */
.post{display:flex;flex-direction:column;gap:14px;padding:30px;border-radius:var(--r-lg);border:1px solid var(--line);background:#fff;transition:.4s var(--ease);color:var(--text);min-height:300px}
.post:hover{text-decoration:none;transform:translateY(-6px);box-shadow:0 30px 60px -24px rgba(6,30,37,.25)}
.post .meta{font-size:.78rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;display:flex;gap:10px;align-items:center}
.post h3{font-size:1.45rem;margin:0}.post p{color:var(--muted);margin:0}.post .link-arrow{margin-top:auto;color:var(--teal-2)}
.article{max-width:760px;margin:0 auto}.article p{font-size:1.12rem;line-height:1.8;color:#22393F}

/* cta */
.cta-xl{position:relative;border-radius:36px;overflow:hidden;padding:clamp(48px,7vw,110px);color:#fff;isolation:isolate;background:var(--ink)}
.cta-xl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.55}
.cta-xl:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(900px 500px at 85% 20%,rgba(23,162,160,.45),transparent 60%),linear-gradient(100deg,rgba(4,22,27,.95) 0%,rgba(4,22,27,.6) 70%,rgba(4,22,27,.4) 100%)}
.cta-xl h2{max-width:16ch}
.cta-xl .lead{color:#C9DDE2}

/* forms */
.form{display:grid;gap:16px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form label{font-size:.82rem;font-weight:600;color:var(--on-dark-2);display:grid;gap:8px;letter-spacing:.02em}
.form input,.form select,.form textarea{font:inherit;color:#fff;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:15px 16px;transition:border-color .2s,background .2s}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--mint);background:rgba(255,255,255,.08)}
.form select option{color:#000}
.form-msg{color:var(--mint);font-weight:600}
.contact-card{display:grid;gap:4px;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.contact-card span{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-2)}
.contact-card a,.contact-card b{color:#fff;font:600 1.3rem var(--display)}

/* footer */
.ftr{background:var(--abyss);color:var(--on-dark-2);padding:110px 0 36px;position:relative;overflow:hidden}
.ftr:before{content:"";position:absolute;inset:auto -10% -60% -10%;height:120%;background:radial-gradient(closest-side,rgba(23,162,160,.22),transparent);pointer-events:none}
.ftr-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;position:relative}
.ftr h4{font:600 .74rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#fff;margin-bottom:18px}
.ftr ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.ftr a{color:var(--on-dark-2)}.ftr a:hover{color:#fff}
.ftr-word{font:700 clamp(3rem,13vw,13rem)/.85 var(--display);letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1px rgba(127,214,212,.22);margin:90px 0 30px;white-space:nowrap;position:relative}
.ftr-legal{display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.08);padding-top:26px;font-size:.82rem;position:relative}
.preview-flag{position:fixed;left:16px;bottom:16px;z-index:60;font:600 .7rem var(--sans);letter-spacing:.12em;text-transform:uppercase;background:rgba(4,22,27,.85);color:var(--mint);border:1px solid rgba(127,214,212,.35);border-radius:999px;padding:9px 14px;backdrop-filter:blur(8px)}

/* media frame / video placeholder */
.frame{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/9;background:var(--ink);box-shadow:0 50px 100px -40px rgba(0,0,0,.6)}
.frame img{width:100%;height:100%;object-fit:cover}
.frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,27,.15),rgba(4,22,27,.75))}
.frame .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:rgba(23,162,160,.9);color:#fff;border:2px solid rgba(255,255,255,.8);box-shadow:0 0 0 0 rgba(46,211,198,.5);animation:pulse 2.4s infinite}
.frame .play svg{width:32px;height:32px;margin-left:5px}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(46,211,198,.45)}70%{box-shadow:0 0 0 28px rgba(46,211,198,0)}100%{box-shadow:0 0 0 0 rgba(46,211,198,0)}}
.frame .cap{position:absolute;left:28px;right:28px;bottom:24px;z-index:2;display:flex;justify-content:space-between;gap:16px;align-items:flex-end;color:#fff}
.frame .cap b{font:600 1.2rem var(--display)} .frame .cap span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(255,255,255,.14);padding:7px 11px;border-radius:999px;white-space:nowrap}
.frame .ph-tag{position:absolute;top:20px;left:20px;z-index:2}

/* timeline */
.timeline{position:relative;display:grid;gap:0}
.tl{display:grid;grid-template-columns:140px 1fr;gap:30px;padding:30px 0;border-top:1px solid rgba(255,255,255,.1)}
.tl b{font:700 1.6rem var(--display);color:var(--mint)} .tl h3{color:#fff;margin-bottom:6px;font-size:1.3rem} .tl p{color:var(--on-dark-2);margin:0}

/* reveal */
.reveal{opacity:0;transform:translate3d(0,40px,0);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}
.split-words .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em}
.split-words .w>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease)}
.split-words.in .w>span{transform:none}
.parallax{will-change:transform}
.no-js .reveal{opacity:1;transform:none}.no-js .split-words .w>span{transform:none}

/* responsive */
@media (max-width:1180px){.nav a{padding:9px 9px;font-size:.88rem}.hdr .cta{display:none}}
@media (max-width:1000px){
  .nav{display:none}.burger{display:block}
  .head,.split,.split-7-5,.split-5-7{grid-template-columns:1fr;gap:40px}
  .g3,.g4{grid-template-columns:1fr 1fr}
  .tech.feature{grid-column:auto}
  .stats{grid-template-columns:1fr 1fr}.stats div{padding:30px 20px 30px 0!important;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .stats.light div{border-color:var(--line)}
  .ftr-top{grid-template-columns:1fr 1fr}
  .ip-row{grid-template-columns:1fr auto;gap:6px 20px}.ip-row .fam{grid-column:1}.ip-row .tag{grid-row:1;grid-column:2}
  .leader.big{grid-template-columns:1fr}.leader.big .ph{min-height:340px}
  .float-chip{right:12px}
}
@media (max-width:640px){
  body{font-size:16px}.wrap{padding:0 20px}
  .hdr .wrap{height:72px}.brand img{width:40px;height:40px}.brand{font-size:.86rem}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .hero .wrap{padding-top:120px;padding-bottom:80px}
  .hero-meta{gap:22px 28px;margin-top:44px}.hero-meta div{min-width:40%}
  .scroll-cue{display:none}
  .tech{min-height:440px;padding:28px}
  .card{padding:28px}
  .area{grid-template-columns:1fr;gap:10px}.area .tag{justify-self:start}
  .form .row{grid-template-columns:1fr}
  .ftr-top{grid-template-columns:1fr}
  .tl{grid-template-columns:1fr;gap:6px}
  .frame .play{width:70px;height:70px}.frame .cap{left:18px;right:18px;bottom:16px}.frame .cap b{font-size:1rem}
  .stats{grid-template-columns:1fr}
  .cta-xl{border-radius:26px}
  .preview-flag{left:10px;bottom:10px}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.split-words .w>span{transform:none}}
/* fixes */
.sam-visual .sam-logo{width:96px;height:auto;object-fit:contain}
.tealfield .lead{color:var(--on-dark-2)} .tealfield h2,.tealfield h3{color:#fff} .tealfield .eyebrow{color:var(--mint)}
.stats b span{display:inline;font-size:inherit;margin:0;color:inherit;max-width:none}
.preview-flag{left:auto;right:16px}
.scroll-cue{bottom:96px}
/* ---- v2: products dropdown, product pages ---- */
.nav .has-dd{position:relative;display:flex;align-items:center}
.nav .dd-btn{background:none;border:0;color:#D6E6EA;padding:8px 6px 8px 0;margin-left:-8px;cursor:pointer;border-radius:999px}
.nav .dd-btn:hover,.nav .dd-btn:focus-visible{color:#fff}
.nav .dd{position:absolute;top:calc(100% + 10px);left:-20px;width:min(980px,86vw);background:rgba(4,22,27,.97);backdrop-filter:blur(16px);border:1px solid rgba(127,214,212,.18);border-radius:20px;padding:26px 28px 20px;box-shadow:0 30px 80px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;z-index:90}
.nav .has-dd:hover .dd,.nav .has-dd:focus-within .dd,.nav .has-dd.open .dd{opacity:1;visibility:visible;transform:none}
.nav .has-dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.dd-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.dd h5{margin:0 0 10px;font:600 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}
.dd ul{list-style:none;margin:0;padding:0}
.nav .dd a{padding:6px 0;border-radius:0;font-size:.88rem;color:#D6E6EA;background:none}
.nav .dd a:hover{color:#fff;background:none;text-decoration:underline}
.nav .dd .dd-all{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);color:var(--glow);font-weight:600}
.mm-dd summary{color:#fff;font-family:var(--display);font-size:clamp(1.7rem,7vw,2.4rem);font-weight:600;padding:6px 0;letter-spacing:-.02em;border-bottom:1px solid rgba(255,255,255,.08);cursor:pointer;list-style:none}
.mm-dd summary::after{content:" +";color:var(--mint)}.mm-dd[open] summary::after{content:" –"}
.mobile-menu a.mm-sub{font:500 1rem var(--sans);letter-spacing:0;padding:8px 0 8px 14px;color:#D6E6EA}
.mm-h{display:block;margin:16px 0 4px 14px;font:600 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}
.phero{position:relative;background:radial-gradient(1000px 600px at 85% 20%,rgba(23,162,160,.28),transparent 60%),linear-gradient(180deg,var(--abyss),var(--ink));color:#fff;padding:150px 0 90px;overflow:hidden}
.phero #field{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.phero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.phero h1{font-size:clamp(2.6rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.035em;margin:14px 0 22px}
.phero .lead{color:var(--on-dark-2);max-width:56ch}
.phero .crumbs a{color:var(--mint)}
.phero-visual{border-radius:28px;overflow:hidden;aspect-ratio:1/1;box-shadow:0 40px 100px rgba(0,0,0,.45),0 0 0 1px rgba(127,214,212,.18)}
.phero-visual img{width:100%;height:100%;object-fit:cover}
.phero-visual.contain{background:radial-gradient(circle at 50% 40%,#16505a,#061E25 70%)}
.phero-visual.contain img{object-fit:contain;padding:28px}
.feat-img{border-radius:24px;overflow:hidden;box-shadow:0 30px 70px rgba(6,30,37,.22)}
.feat-img img{width:100%;height:auto;display:block;max-height:640px;object-fit:cover}
.feat-img.contain{background:linear-gradient(160deg,#EAF3F4,#D7E7EA);padding:26px}
.feat-img.contain img{object-fit:contain;max-height:560px}
.dark .feat-img.contain,.tealfield .feat-img.contain{background:radial-gradient(circle at 50% 40%,#16505a,#061E25 70%)}
.checks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}
.checks li{position:relative;padding:14px 16px 14px 46px;border-radius:14px;background:rgba(15,58,68,.06);border:1px solid rgba(15,58,68,.1);color:var(--muted)}
.checks li b{color:var(--ink)}
.checks li::before{content:"";position:absolute;left:16px;top:17px;width:18px;height:18px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8l3 3 5-6' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") center/12px no-repeat}
.checks.light li{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:var(--on-dark-2)}
.checks.light li b{color:#fff}
.pgroup{margin-top:46px}.pgroup:first-child{margin-top:0}
.pgroup-h{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:0 0 18px;font-family:var(--sans);font-weight:600}
.dark .pgroup-h,.tealfield .pgroup-h{color:var(--mint)}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pcard{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px 16px 22px;border-radius:20px;background:#fff;border:1px solid rgba(15,58,68,.1);color:var(--ink);text-decoration:none;transition:transform .3s,box-shadow .3s}
.pcard:hover{transform:translateY(-6px);box-shadow:0 26px 60px rgba(6,30,37,.18);text-decoration:none}
.pcard .pimg{display:block;aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#16505a,#061E25 70%)}
.pcard .pimg img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pcard:hover .pimg img{transform:scale(1.05)}
.pcard h3{font-size:1.12rem;margin:2px 0 0}.pcard p{color:var(--muted);font-size:.92rem;margin:0;flex:1}
.pcard .tag{align-self:flex-start}
.dark .pcard,.tealfield .pcard{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);color:#fff}
.dark .pcard p,.tealfield .pcard p{color:var(--on-dark-2)}
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gal figure{margin:0}.gal figure>div{aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(15,58,68,.1)}
.gal img{width:100%;height:100%;object-fit:contain}
.gal figcaption{font-size:.85rem;color:var(--muted);margin-top:8px}
.dark .gal figcaption{color:var(--on-dark-2)}
.dark .gal figure>div{background:#0B2E37;border-color:rgba(255,255,255,.1)}
.usecard{border-radius:20px;overflow:hidden;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);padding-bottom:22px}
.usecard .ph{aspect-ratio:4/3;overflow:hidden}.usecard .ph img{width:100%;height:100%;object-fit:cover}
.usecard h3{color:#fff;margin:18px 20px 8px}.usecard p{color:var(--on-dark-2);margin:0 20px;font-size:.95rem}
.pvid{width:100%;border-radius:20px;background:#000;aspect-ratio:9/16;max-height:640px;object-fit:contain}
.cap-s{font-size:.85rem;color:var(--on-dark-2);margin-top:8px}
@media (max-width:1180px){.dd-grid{grid-template-columns:repeat(3,1fr)}.pgrid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1000px){.phero-grid{grid-template-columns:1fr}.phero-visual{max-width:520px}.pgrid,.gal{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.phero{padding:120px 0 64px}.pgrid{grid-template-columns:1fr}.gal{grid-template-columns:repeat(2,1fr)}}
.g5{grid-template-columns:repeat(5,1fr)}@media (max-width:1000px){.g5{grid-template-columns:1fr 1fr}}@media (max-width:640px){.g5{grid-template-columns:1fr}}
.nav a{white-space:nowrap}.nav{gap:0}
@media (max-width:1440px){.nav a{padding:10px 10px;font-size:.9rem}.hdr .wrap{gap:18px}}
@media (max-width:1280px){.brand small{display:none}}
.hdr .wrap{position:relative}
.nav .has-dd{position:static}
.nav .has-dd::after{display:none}
.nav .dd{left:24px;right:24px;width:auto;top:74px}
.nav .dd::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px}
.mobile-menu a.mm-sub{display:block}
.mm-dd[open]{padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}
.lineup{position:relative;display:grid;grid-template-columns:1.15fr .85fr;min-height:88vh;background:var(--abyss);color:#fff;overflow:hidden;border-top:1px solid rgba(127,214,212,.12)}
.lineup.flip{grid-template-columns:.85fr 1.15fr;background:radial-gradient(900px 600px at 20% 30%,rgba(23,162,160,.22),transparent 60%),var(--ink)}
.lineup.flip .lineup-media{order:2}
.lineup-media{position:relative;overflow:hidden}
.lineup-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04)}
.lineup-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,var(--abyss))}
.lineup.flip .lineup-media::after{background:linear-gradient(270deg,transparent 55%,var(--ink))}
.lineup-media.contain{background:radial-gradient(circle at 50% 45%,#1d6370,#061E25 70%)}
.lineup-media.contain img{object-fit:contain;padding:8%}
.lineup-tx{display:flex;flex-direction:column;justify-content:center;padding:90px clamp(28px,6vw,96px)}
.lineup-tx h2{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.035em;margin:14px 0 22px}
.lineup-tx .lead{color:var(--on-dark-2)}
.lineup-stats{display:flex;gap:36px;flex-wrap:wrap;margin:26px 0 34px}
.lineup-stats b{display:block;font:700 clamp(1.6rem,2.4vw,2.2rem) var(--display);color:var(--glow);letter-spacing:-.02em}
.lineup-stats span{font-size:.82rem;color:var(--on-dark-2);text-transform:uppercase;letter-spacing:.1em}
.lineup-intro{background:var(--abyss);color:#fff;padding:110px 0 70px}
.lineup-intro h2{color:#fff}.lineup-intro .lead{color:var(--on-dark-2)}
@media (max-width:1000px){.lineup,.lineup.flip{grid-template-columns:1fr;min-height:0}.lineup.flip .lineup-media{order:0}.lineup-media{height:58vw;min-height:300px}.lineup-media::after,.lineup.flip .lineup-media::after{background:linear-gradient(180deg,transparent 60%,var(--abyss))}.lineup-tx{padding:40px 24px 70px}}
/* ---- v3: S-DA 750 battle axe centerpiece ---- */
.axe{position:relative;overflow:hidden;color:#fff;padding:120px 0 110px;background:linear-gradient(180deg,var(--abyss),#03242b 55%,var(--abyss));border-top:1px solid rgba(127,214,212,.14)}
.axe-glow{position:absolute;inset:-20% -10% auto;height:900px;background:radial-gradient(700px 520px at 28% 40%,rgba(46,211,198,.22),transparent 65%),radial-gradient(600px 400px at 85% 10%,rgba(232,88,58,.12),transparent 60%);pointer-events:none}
.axe .wrap{position:relative}
.axe-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:center}
.axe-media{position:relative;aspect-ratio:1/1;border-radius:var(--r-lg);background:radial-gradient(circle at 50% 45%,#e9f4f4 0,#bcd8da 38%,#1d6370 72%,#061E25 100%);box-shadow:0 40px 120px rgba(0,0,0,.55),inset 0 0 0 1px rgba(127,214,212,.25);display:flex;align-items:center;justify-content:center}
.axe-media>img:not(.axe-sub){width:82%;height:82%;object-fit:contain;filter:drop-shadow(0 30px 40px rgba(0,0,0,.45))}
.axe-sub{position:absolute;right:-22px;bottom:-30px;width:26%;max-height:62%;object-fit:contain;background:radial-gradient(circle,#e9f4f4,#9cc5c8);border-radius:20px;padding:12px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.axe-badge{position:absolute;top:22px;left:22px;z-index:2;font:700 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;background:var(--signal);color:#fff;padding:9px 14px;border-radius:999px}
.axe-tx h2{font-size:clamp(2.8rem,6vw,5.6rem);line-height:.98;letter-spacing:-.04em;margin:14px 0 16px;color:#fff}
.axe-kicker{font:600 .9rem var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:22px}
.axe-tx .lead{color:#fff;font-size:clamp(1.1rem,1.5vw,1.35rem)}
.axe-tx p{color:var(--on-dark-2)}
.axe-stats{display:flex;gap:34px;flex-wrap:wrap;margin:24px 0 30px;padding-top:22px;border-top:1px solid rgba(127,214,212,.18)}
.axe-stats b{display:block;font:700 clamp(1.5rem,2.3vw,2.1rem) var(--display);color:var(--glow)}
.axe-stats span{font-size:.78rem;color:var(--on-dark-2);text-transform:uppercase;letter-spacing:.12em}
.axe-ben{margin-top:100px;display:grid;grid-template-columns:.7fr 2fr;gap:40px;align-items:start}
.axe-ben-h h3{font-size:clamp(1.8rem,3vw,2.6rem);color:#fff;margin-top:12px}
.axe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.axe-grid.compact{grid-column:1/-1;grid-template-columns:repeat(6,1fr)}
.axe-ben:has(.compact){margin-top:70px;grid-template-columns:1fr}
.axe-card{padding:26px 24px;border-radius:var(--r);background:linear-gradient(160deg,rgba(23,162,160,.14),rgba(255,255,255,.03));border:1px solid rgba(127,214,212,.18);transition:transform .3s var(--ease),border-color .3s}
.axe-card:hover{transform:translateY(-4px);border-color:var(--glow)}
.axe-card span{font:700 .8rem var(--display);color:var(--signal);letter-spacing:.14em}
.axe-card h4{font:700 1.2rem var(--display);color:#fff;margin:10px 0 8px;letter-spacing:-.01em}
.axe-card p{font-size:.93rem;color:var(--on-dark-2);margin:0}
.axe-grid.compact .axe-card h4{font-size:1rem;margin-bottom:0}
.axe-sys{margin-top:100px}
.axe-sys-h{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:34px}
.axe-sys-h h3{font-size:clamp(1.8rem,3vw,2.6rem);color:#fff;margin:12px 0 0}
.axe-sys-h p{color:var(--on-dark-2);margin:0}
.axe-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,1fr);gap:14px;position:relative}
.axe-strip::before{content:"";position:absolute;left:4%;right:4%;top:72px;height:2px;background:linear-gradient(90deg,var(--signal),var(--glow) 25%,rgba(46,211,198,.25));z-index:0}
.axe-node{position:relative;z-index:1;text-align:center}
.axe-node-img{height:144px;border-radius:16px;background:radial-gradient(circle at 50% 45%,#eef6f6,#a8cbce 70%);display:flex;align-items:center;justify-content:center;padding:12px;border:1px solid rgba(127,214,212,.25);transition:transform .3s var(--ease)}
.axe-node:hover .axe-node-img{transform:translateY(-4px)}
.axe-node-img img{max-height:100%;max-width:100%;object-fit:contain}
.axe-node b{display:block;margin-top:12px;font:700 1rem var(--display);color:#fff}
.axe-node span{font-size:.74rem;color:var(--on-dark-2);text-transform:uppercase;letter-spacing:.1em}
.axe-node.core .axe-node-img{background:radial-gradient(circle at 50% 45%,#fff,#f3c2b5 75%);border:2px solid var(--signal);box-shadow:0 0 0 6px rgba(232,88,58,.18),0 20px 50px rgba(0,0,0,.45)}
.axe-node.core b{color:var(--signal)}
.axe-gal-w{margin-top:100px}
.axe-gal{margin-top:20px;grid-template-columns:repeat(4,1fr)}
.axe-gal figure div{background:radial-gradient(circle at 50% 45%,#eef6f6,#a8cbce 75%)}
.axe-gal figure img{object-fit:contain}
.axe-gal figcaption{color:var(--on-dark-2)}
.axe-pills{list-style:none;padding:0;margin:4px 0 30px;display:flex;flex-wrap:wrap;gap:10px}
.axe-pills li{font-size:.84rem;padding:8px 14px;border-radius:999px;border:1px solid rgba(127,214,212,.3);color:var(--ice);background:rgba(23,162,160,.1)}
.axe-band{padding:110px 0}
@media (max-width:1100px){.axe-strip{grid-template-columns:repeat(4,1fr);row-gap:30px}.axe-strip::before{display:none}.axe-grid.compact{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1000px){.axe-hero{grid-template-columns:1fr}.axe-media{max-width:560px;width:100%}.axe-ben{grid-template-columns:1fr;margin-top:70px}.axe-sys-h{grid-template-columns:1fr;gap:14px}.axe-sys,.axe-gal-w{margin-top:70px}.axe-gal{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.axe{padding:80px 0}.axe-grid,.axe-grid.compact{grid-template-columns:1fr 1fr}.axe-card{padding:18px 16px}.axe-strip{grid-template-columns:repeat(2,1fr)}.axe-node-img{height:120px}.axe-sub{right:-8px;bottom:-18px;width:30%}.axe-stats{gap:22px}}
.axe-gal figure>div{aspect-ratio:4/3;border-color:rgba(127,214,212,.2)}
@media (max-width:640px){.axe-grid{grid-template-columns:1fr}.axe-grid.compact{grid-template-columns:1fr 1fr}.axe-tx h2{font-size:2.6rem}}
/* ---- v4: Chimera animations ---- */
.cv-sec{background:radial-gradient(900px 500px at 70% 0%,rgba(23,162,160,.18),transparent 60%),var(--abyss);color:#fff;padding:110px 0}
.cv-sec h2{color:#fff}.cv-sec .lead{color:var(--on-dark-2)}.cv-sec p{color:var(--on-dark-2)}
.cv-frame{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(127,214,212,.22);box-shadow:0 40px 120px rgba(0,0,0,.55);background:#020b0e}
.cv-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#020b0e}
.cv-frame figcaption{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:14px 18px;background:rgba(4,22,27,.92);border-top:1px solid rgba(127,214,212,.15)}
.cv-frame figcaption span{font:600 .74rem var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:6px 11px;border-radius:999px;border:1px solid rgba(127,214,212,.3);color:var(--ice)}
.cv-frame figcaption span:nth-child(1){border-color:#9a5cff;color:#cdb2ff}
.cv-frame figcaption span:nth-child(2){border-color:#ff4a3d;color:#ffb3ab}
.cv-frame figcaption span:nth-child(3){border-color:#3dff6a;color:#b4ffc6}
.cv-frame figcaption em{margin-left:auto;font-style:normal;font-size:.78rem;color:var(--muted-2)}
.cv-trip{background:radial-gradient(800px 500px at 80% 60%,rgba(46,211,100,.12),transparent 60%),#03120f}
.cv-split{grid-template-columns:.85fr 1.15fr;align-items:center}
.lineup-media.has-vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:1000px){.cv-sec{padding:80px 0}.cv-split{grid-template-columns:1fr}}
.lineup-media.has-vid{background:#03100f}
.lineup-media.has-vid video{object-fit:contain}
@media (max-width:1000px){.lineup-media.has-vid{height:auto;min-height:0;aspect-ratio:16/9}.lineup-media.has-vid video{object-fit:cover}}
/* ---- v5: cinematic concept renders ---- */
.cine{background:radial-gradient(900px 500px at 20% 10%,rgba(46,211,198,.12),transparent 60%),#020d10}
.cine-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cine-tile{margin:0}
.cine-v{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(127,214,212,.2);box-shadow:0 30px 90px rgba(0,0,0,.5);background:#020b0e}
.cine-v video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.cine-badge{position:absolute;left:14px;top:14px;font:600 .68rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:rgba(230,241,243,.85);background:rgba(4,22,27,.6);border:1px solid rgba(255,255,255,.18);padding:6px 10px;border-radius:999px;backdrop-filter:blur(6px)}
.cine-tile figcaption{padding:18px 4px 0}
.cine-tile h3{color:#fff;font-size:1.25rem;margin-bottom:6px}
.cine-tile p{color:var(--on-dark-2);font-size:.95rem;margin:0}
@media (max-width:800px){.cine-grid{grid-template-columns:1fr}}
/* ---- Samaritan demo videos: theater, framed gallery, lightbox ---- */
:root{--sv-a:#2ED3C6;--sv-a2:#17A2A0;--sv-bg:#04161B;--sv-tx:#E6F1F3;--sv-tx2:#A9C1C8}
.sv-sec{position:relative;overflow:hidden;background:radial-gradient(1100px 600px at 85% -10%,color-mix(in srgb,var(--sv-a) 22%,transparent),transparent 60%),radial-gradient(900px 500px at -10% 110%,color-mix(in srgb,var(--sv-a2) 18%,transparent),transparent 60%),var(--sv-bg);color:var(--sv-tx)}
.sv-sec h2,.sv-sec h3{color:#fff}
.sv-sec .lead{color:var(--sv-tx2)}
.sv-theater{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start;margin-top:10px}
.sv-bezel{position:relative;border-radius:30px;padding:12px;background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.02) 40%,rgba(255,255,255,.08));box-shadow:0 0 0 1px color-mix(in srgb,var(--sv-a) 45%,transparent),0 0 60px -10px color-mix(in srgb,var(--sv-a) 55%,transparent),0 60px 120px -40px rgba(0,0,0,.8)}
.sv-bezel:before{content:"";position:absolute;inset:-1px;border-radius:31px;padding:1px;background:linear-gradient(120deg,var(--sv-a),transparent 35%,transparent 65%,var(--sv-a2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:svglow 6s linear infinite}
@keyframes svglow{0%,100%{opacity:.55}50%{opacity:1}}
.sv-bar{display:flex;align-items:center;gap:14px;padding:4px 10px 12px;font:600 .68rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--sv-tx2)}
.sv-dots{display:flex;gap:6px}.sv-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.18)}.sv-dots i:first-child{background:var(--sv-a)}
.sv-bar-t{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv-live{display:flex;align-items:center;gap:7px;color:#fff}.sv-live i{width:7px;height:7px;border-radius:50%;background:var(--sv-a);box-shadow:0 0 10px var(--sv-a);animation:svpulse 1.6s infinite}
@keyframes svpulse{50%{opacity:.35}}
.sv-screen{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:16/9;background:#000;isolation:isolate}
.sv-screen:before{content:"";position:absolute;inset:-30px;background:var(--bgp) center/cover;filter:blur(28px) brightness(.45) saturate(1.2);z-index:-1}
.sv-screen video{width:100%;height:100%;display:block;object-fit:contain;background:transparent}
.sv-screen.sv-h video{object-fit:cover}
.sv-big{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:104px;height:104px;border-radius:50%;border:2px solid rgba(255,255,255,.85);background:color-mix(in srgb,var(--sv-a) 85%,transparent);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 0 color-mix(in srgb,var(--sv-a) 60%,transparent);animation:svring 2.4s infinite;transition:transform .25s var(--ease,ease)}
.sv-big:hover{transform:translate(-50%,-50%) scale(1.06)}.sv-big svg{width:38px;height:38px;margin-left:6px}
@keyframes svring{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--sv-a) 55%,transparent)}70%{box-shadow:0 0 0 26px transparent}100%{box-shadow:0 0 0 0 transparent}}
.sv-screen.playing .sv-big{opacity:0;pointer-events:none}
.sv-veil{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;background:rgba(2,10,14,.55);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);color:#fff}
.sv-veil p{margin:0;color:var(--sv-tx2)}
.sv-veil-tag{font:700 .7rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#ffb4a2;border:1px solid rgba(255,180,162,.5);padding:7px 12px;border-radius:999px}
.sv-veil-btn{margin-top:6px;font:600 .95rem var(--sans);color:#fff;background:transparent;border:1px solid rgba(255,255,255,.6);padding:12px 22px;border-radius:999px;cursor:pointer}
.sv-veil-btn:hover{background:rgba(255,255,255,.1)}
.sv-meta{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:20px 12px 8px}
.sv-meta em,.sv-ch em,.sv-tile figcaption em{font:600 .7rem var(--sans);letter-spacing:.18em;text-transform:uppercase;font-style:normal;color:var(--sv-a)}
.sv-meta h3{margin:8px 0 6px;font-size:clamp(1.3rem,2vw,1.8rem)}
.sv-meta p{margin:0;color:var(--sv-tx2);max-width:640px}
.sv-m-n{font-size:.85rem;margin-top:6px!important;opacity:.8}
.sv-ctl{display:flex;gap:10px;align-items:center;flex-shrink:0}
.sv-m-d{font:600 .78rem var(--sans);letter-spacing:.1em;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff}
.sv-theatre-btn{display:inline-flex;align-items:center;gap:8px;font:600 .82rem var(--sans);color:#fff;background:color-mix(in srgb,var(--sv-a) 22%,transparent);border:1px solid color-mix(in srgb,var(--sv-a) 60%,transparent);padding:9px 14px;border-radius:999px;cursor:pointer}
.sv-theatre-btn svg{width:16px;height:16px}.sv-theatre-btn:hover{background:color-mix(in srgb,var(--sv-a) 38%,transparent)}
.sv-chapters{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:640px;overflow:auto;scrollbar-width:thin}
.sv-ch{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center;width:100%;text-align:left;padding:10px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:var(--sv-tx);cursor:pointer;transition:.25s}
.sv-ch:hover{background:rgba(255,255,255,.07)}
.sv-ch.on{border-color:color-mix(in srgb,var(--sv-a) 70%,transparent);background:color-mix(in srgb,var(--sv-a) 12%,transparent);box-shadow:0 0 30px -12px var(--sv-a)}
.sv-ch-th{position:relative;display:block;border-radius:12px;overflow:hidden;aspect-ratio:16/10;background:#000}
.sv-ch-th img{width:100%;height:100%;object-fit:cover}
.sv-g{position:absolute;inset:0;display:grid;place-items:center;font:700 .6rem var(--sans);letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:#fff;background:rgba(2,10,14,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.sv-ch-tx b{display:block;font:600 .98rem/1.25 var(--display);color:#fff;margin:4px 0 2px}
.sv-ch-tx small{color:var(--sv-tx2);font-size:.78rem}
.sv-ch em{font-size:.6rem}
.sv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:70px}
.sv-tile{margin:0}
.sv-open{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left}
.sv-tframe{position:relative;display:block;border-radius:22px;overflow:hidden;aspect-ratio:16/10;background:#000;border:1px solid color-mix(in srgb,var(--sv-a) 30%,transparent);box-shadow:0 30px 70px -30px rgba(0,0,0,.8);transition:transform .4s var(--ease,ease),box-shadow .4s,border-color .4s}
.sv-tframe:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.6));pointer-events:none}
.sv-tframe img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease,ease)}
.sv-t-v .sv-tframe img,.sv-t-v .sv-tframe{object-position:center 35%}
.sv-tframe.is-graphic img{filter:blur(16px) brightness(.7);transform:scale(1.1)}
.sv-open:hover .sv-tframe,.sv-open:focus-visible .sv-tframe{transform:translateY(-6px);border-color:var(--sv-a);box-shadow:0 0 0 1px var(--sv-a),0 0 50px -8px var(--sv-a),0 40px 80px -30px rgba(0,0,0,.8)}
.sv-open:hover .sv-tframe img{transform:scale(1.05)}
.sv-tplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:#fff;background:color-mix(in srgb,var(--sv-a) 80%,transparent);border:1.5px solid rgba(255,255,255,.8)}
.sv-tplay svg{width:24px;height:24px;margin-left:4px}
.sv-tno{position:absolute;left:14px;top:12px;z-index:2;font:700 .75rem var(--display);letter-spacing:.1em;color:#fff;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.25);padding:5px 9px;border-radius:999px}
.sv-tdur{position:absolute;right:14px;bottom:12px;z-index:2;font:600 .72rem var(--sans);letter-spacing:.08em;color:#fff;background:rgba(0,0,0,.55);padding:5px 9px;border-radius:999px}
.sv-tg{position:absolute;left:14px;bottom:12px;z-index:2;font:700 .62rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#ffb4a2}
.sv-tile figcaption{padding:18px 4px 0}
.sv-tile h3{font-size:1.2rem;margin:6px 0 6px}
.sv-tile p{font-size:.93rem;color:var(--sv-tx2);margin:0}
.sv-tile small{display:block;margin-top:6px;font-size:.78rem;color:var(--sv-tx2);opacity:.8}
.sv-lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:4vh 4vw;background:rgba(1,6,8,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.sv-lb[hidden]{display:none}
.sv-lb-in{width:min(1280px,100%);display:flex;flex-direction:column;gap:16px}
.sv-lb .sv-bezel{padding:10px}
.sv-lb .sv-screen{aspect-ratio:16/9;max-height:76vh}
.sv-lb-cap{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;color:#fff}
.sv-lb-cap h3{margin:4px 0 4px;color:#fff;font-size:clamp(1.1rem,2vw,1.6rem)}.sv-lb-cap p{margin:0;color:#b9cdd3;font-size:.92rem}
.sv-lb-cap em{font:600 .68rem var(--sans);letter-spacing:.18em;text-transform:uppercase;font-style:normal;color:var(--sv-a)}
.sv-lb-nav{display:flex;gap:8px;flex-shrink:0}
.sv-lb button.sv-x,.sv-lb-nav button{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.06);color:#fff;font-size:1.3rem;cursor:pointer;display:grid;place-items:center}
.sv-lb button.sv-x{position:absolute;right:22px;top:18px}
.sv-lb-nav button:hover,.sv-lb button.sv-x:hover{background:rgba(255,255,255,.16)}
.sv-theater.solo{grid-template-columns:1fr;max-width:1100px;margin-left:auto;margin-right:auto}
.sv-reg{margin-top:40px;font-size:.82rem;color:var(--sv-tx2);max-width:900px;opacity:.9}
.sv-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sv-band .sv-tile h3{font-size:1rem}.sv-band .sv-tile p{display:none}
@media (max-width:1100px){.sv-theater{grid-template-columns:1fr}.sv-chapters{flex-direction:row;overflow-x:auto;max-height:none;padding-bottom:6px;scroll-snap-type:x mandatory}.sv-chapters li{flex:0 0 280px;scroll-snap-align:start}.sv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-band{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.sv-bezel{padding:7px;border-radius:22px}.sv-bezel:before{border-radius:23px}.sv-screen{border-radius:15px}.sv-bar{padding:2px 6px 8px;font-size:.58rem}.sv-big{width:76px;height:76px}.sv-big svg{width:28px;height:28px}.sv-meta{flex-direction:column;align-items:flex-start;padding:16px 6px 4px}.sv-grid{grid-template-columns:1fr;gap:34px;margin-top:50px}.sv-chapters li{flex-basis:240px}.sv-ch{grid-template-columns:84px 1fr}.sv-lb{padding:10px}.sv-lb-cap{flex-direction:column;align-items:flex-start}.sv-lb button.sv-x{right:10px;top:10px}}
