/* Recordal — warm paper, light serif, gold accents, deep-teal bands. */
:root{
  --bg:#f7f4ed; --bg-2:#f1ede3; --card:#fcfaf6; --ink:#191c1d; --ink-2:#3d403f; --muted:#62625f; --line:#e4e0d6; --line-2:#d9d4c7;
  --gold:#b59062; --gold-2:#c9a474; --gold-deep:#8a6638;
  --teal:#3e5b58; --teal-2:#2f4744; --teal-3:#233634; --teal-ink:#f7f4ed; --teal-muted:#c3d2ce;
  --allow:#2d7a4e; --allow-bg:#e3f0e6; --review:#a8621f; --review-bg:#f6ead9; --deny:#a83a3a; --deny-bg:#f6e1df; --pending:#3c64a3; --pending-bg:#e3eaf6;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:16px; --shadow:0 1px 2px rgba(25,28,29,.04),0 12px 32px -8px rgba(25,28,29,.10);
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--serif);font-weight:340;line-height:1.08;margin:0;text-wrap:balance;font-variation-settings:"opsz" 72}
h1{font-size:clamp(42px,5.6vw,74px);letter-spacing:-.03em}
h2{font-size:clamp(32px,3.9vw,52px);letter-spacing:-.022em}
h3{font-size:clamp(21px,1.8vw,25px);letter-spacing:-.01em;font-weight:420;font-variation-settings:"opsz" 36}
h4{font-size:21px;font-weight:420;font-variation-settings:"opsz" 36;letter-spacing:-.01em}
p,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}
.mono{font-family:var(--mono)}
.wrap{max-width:1180px;margin:0 auto;padding-inline:clamp(20px,4vw,40px)}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;text-decoration:none}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;border-radius:6px}

.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}
.eyebrow .num{font-family:var(--mono);font-weight:500;letter-spacing:0;color:var(--gold-deep);font-size:12px;padding:2px 7px;border:1px solid var(--line-2);border-radius:999px}
.k{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}
.sub{font-size:17.5px;color:var(--muted);max-width:56ch;line-height:1.6}
.src{font-size:12px;color:var(--muted);opacity:.85;line-height:1.5}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;background:var(--gold-2);color:#1b1a17;text-decoration:none;font-weight:600;font-size:14.5px;border:1px solid transparent;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px);background:#d3b083;box-shadow:0 10px 24px -8px rgba(181,144,98,.55)}
.btn span{transition:transform .2s var(--ease)}
.btn:hover span{transform:translateX(3px)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn.ghost:hover{border-color:var(--ink);box-shadow:none}
.btn.sm{padding:9px 16px;font-size:13.5px}

/* header */
header.top{position:sticky;top:0;z-index:50;background:rgba(247,244,237,.82);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
header.top.scrolled{border-bottom-color:var(--line)}
.bar{display:flex;align-items:center;gap:24px;min-height:68px}
.brand{display:flex;align-items:center;flex:none}
.logo{height:26px;width:144px;color:#111a22;display:block}
.nav{display:flex;gap:4px;margin-inline:auto}
.nav a{text-decoration:none;font-size:14px;font-weight:500;color:var(--ink-2);padding:8px 12px;border-radius:999px;transition:background .2s,color .2s}
.nav a:hover,.nav a.active{background:rgba(25,28,29,.06);color:var(--ink)}
.bar-cta{display:flex;align-items:center;gap:8px}
.menu{display:none;width:42px;height:42px;border-radius:999px;border:1px solid var(--line-2);background:transparent;cursor:pointer;position:relative}
.menu span{position:absolute;left:12px;right:12px;height:1.6px;background:var(--ink);transition:transform .25s var(--ease)}
.menu span:first-child{top:16px}.menu span:last-child{top:24px}
.menu[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}

/* hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(1200px 600px at 85% 10%,rgba(201,164,116,.16),transparent 60%),linear-gradient(180deg,var(--teal) 0%,var(--teal-2) 100%);color:var(--teal-ink);padding-block:clamp(56px,8vw,104px) clamp(170px,18vw,230px)}
.hero .field{position:absolute;inset:0;pointer-events:none}
.hero .field svg{position:absolute;right:-6%;top:-12%;height:130%;width:auto;min-width:60%;opacity:.32}
.beam{stroke-dasharray:6 10;animation:beam 18s linear infinite}
@keyframes beam{to{stroke-dashoffset:-320}}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(32px,5vw,72px);align-items:center}
.copy{display:flex;flex-direction:column;gap:26px}
.pill{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;font-size:13px;font-weight:500;color:var(--teal-ink);background:rgba(247,244,237,.08);border:1px solid rgba(247,244,237,.18);padding:7px 14px;border-radius:999px}
.dot{width:7px;height:7px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 4px rgba(201,164,116,.22);animation:pulse 2.6s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(201,164,116,0)}}
.hero h1{color:var(--teal-ink);max-width:15ch}
.hero .lead{font-size:clamp(17px,1.4vw,19px);color:var(--teal-muted);max-width:50ch;line-height:1.6}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.hero .btn.ghost,.close .btn.ghost{color:var(--teal-ink);border-color:rgba(247,244,237,.32)}
.hero .btn.ghost:hover,.close .btn.ghost:hover{border-color:var(--teal-ink);background:rgba(247,244,237,.06)}
.fine{font-size:13.5px;color:var(--teal-muted);opacity:.85}

/* decision record */
.record{margin:0;background:var(--card);color:var(--ink);border-radius:18px;padding:22px 22px 18px;display:flex;flex-direction:column;gap:14px;min-width:0;box-shadow:0 30px 80px -20px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.06);position:relative}
.rec-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.rec-k{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.rec-meta{font-size:11.5px;color:var(--muted)}
.rec-head{display:flex;gap:16px;align-items:center}
.verdict{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:.01em;padding:6px 14px;border-radius:10px;flex:none;font-variation-settings:"opsz" 144;transition:background .4s,color .4s}
.verdict.review{color:var(--review);background:var(--review-bg)}
.verdict.allow{color:var(--allow);background:var(--allow-bg)}
.verdict.deny{color:var(--deny);background:var(--deny-bg)}
.verdict.pending{color:var(--pending);background:var(--pending-bg)}
.rec-what{display:flex;flex-direction:column;gap:2px;min-width:0}
.rec-what b{font-weight:600;font-size:15px;line-height:1.35}
.rec-what span{font-size:13px;color:var(--muted)}
.instr{border-left:3px solid var(--review);padding:10px 14px;background:var(--review-bg);border-radius:4px 10px 10px 4px;font-size:14px;line-height:1.5;color:var(--ink-2);transition:background .4s,border-color .4s}
.record[data-v="allow"] .instr{border-color:var(--allow);background:var(--allow-bg)}
.record[data-v="deny"] .instr{border-color:var(--deny);background:var(--deny-bg)}
.record[data-v="pending"] .instr{border-color:var(--pending);background:var(--pending-bg)}
.rec-k.sm{font-size:10.5px;margin-top:2px}
.rules{display:flex;flex-direction:column;gap:6px;min-height:150px}
.rule{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13.5px;line-height:1.4;padding:9px 10px;border-radius:10px;background:var(--bg);color:var(--ink-2);opacity:0;transform:translateY(6px);transition:opacity .45s var(--ease),transform .45s var(--ease),background .4s}
.rule.in{opacity:1;transform:none}
.rule code{font-family:var(--mono);font-size:11px;border:1px solid var(--line);border-radius:6px;padding:2px 6px;white-space:nowrap;background:var(--card);color:var(--ink)}
.rule em{font-style:normal;font-weight:600;font-size:10.5px;letter-spacing:.08em;white-space:nowrap}
.rule em.review{color:var(--review)}.rule em.deny{color:var(--deny)}.rule em.allow,.rule em.pass{color:var(--allow)}.rule em.pending{color:var(--pending)}
.rule.lit{background:var(--review-bg)}
.record[data-v="deny"] .rule.lit{background:var(--deny-bg)}
.record[data-v="pending"] .rule.lit{background:var(--pending-bg)}
.hash{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);border-top:1px dashed var(--line-2);padding-top:12px;flex-wrap:wrap}
.rec-cap{font-size:11.5px;color:var(--muted)}
.rec-dots{display:flex;gap:6px;flex-wrap:wrap}
.rec-dots button{font:600 10.5px/1 var(--sans);letter-spacing:.08em;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;transition:all .2s}
.rec-dots button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--card)}
.rec-dots button:hover{border-color:var(--ink-2)}

/* showcase frame */
.showcase{margin-top:calc(-1 * clamp(130px,14vw,180px));position:relative;z-index:2;padding-bottom:clamp(56px,7vw,88px)}
.frame{background:#fbf9f4;border-radius:18px;padding:10px;box-shadow:0 40px 100px -30px rgba(20,32,30,.45),0 0 0 1px rgba(25,28,29,.06)}
.frame-bar{display:flex;align-items:center;gap:7px;padding:4px 6px 10px;min-width:0}
.frame-bar i{width:10px;height:10px;border-radius:50%;background:var(--line-2);flex:none}
.frame-bar .url{margin-left:8px;font-size:12px;color:var(--muted);background:var(--bg-2);border-radius:7px;padding:4px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.tabs{display:flex;gap:4px;margin-left:auto;background:var(--bg-2);padding:3px;border-radius:999px;flex:none}
.tabs button{font:500 13px/1 var(--sans);padding:8px 14px;border-radius:999px;border:0;background:transparent;color:var(--muted);cursor:pointer;transition:background .2s,color .2s;white-space:nowrap}
.tabs button[aria-selected="true"]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.panels{border-radius:10px;overflow:hidden;border:1px solid var(--line);aspect-ratio:16/10;background:var(--bg)}
.panel img{width:100%;height:100%;object-fit:cover;object-position:top}
.panel:not([hidden]){animation:fadein .45s var(--ease)}
@keyframes fadein{from{opacity:0;transform:scale(.995)}to{opacity:1;transform:none}}
.captions{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;margin-top:22px;align-items:start}
.cap{font-size:15.5px;color:var(--ink-2);line-height:1.6;max-width:62ch}
.cap b{font-weight:600;color:var(--ink)}
.note{font-size:12.5px;color:var(--muted);border-left:2px solid var(--line-2);padding-left:12px}

/* connectors */
.connectors{padding-block:8px 72px}
.connectors .wrap{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.conn-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.conn-list li{font-size:14.5px;font-weight:500;color:var(--ink-2);padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:var(--card)}
.conn-note{font-size:14px;color:var(--muted)}

/* sections */
section{padding-block:clamp(72px,9vw,120px)}
.tint{background:var(--bg-2)}
.sec-head{display:flex;flex-direction:column;gap:16px;margin-bottom:clamp(36px,4.5vw,56px);max-width:780px}
.sec-head.center{align-items:center;text-align:center;margin-inline:auto}
.sec-head.center .eyebrow{justify-content:center}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;display:flex;flex-direction:column;gap:12px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card p:not(.k){font-size:15px;color:var(--muted)}

.rulebooks{margin-top:clamp(48px,6vw,72px);background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(24px,3.5vw,40px)}
.rb-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.rb-head h3{font-size:clamp(24px,2.4vw,32px);font-weight:340;font-variation-settings:"opsz" 72}
.rb-head p{color:var(--muted);font-size:15px;max-width:44ch}
.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.timeline li{padding:20px 20px 22px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px;position:relative}
.timeline li:not(:nth-child(3n+1)){padding-left:20px;border-left:1px solid var(--line)}
.timeline time{font-family:var(--mono);font-size:12px;color:var(--gold-deep)}
.timeline b{font-weight:600;font-size:15.5px}
.timeline p{font-size:14px;color:var(--muted);line-height:1.55}
.rulebooks .src{margin-top:20px}

.beat{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(32px,5vw,72px);align-items:start}
.beat h2{margin-top:16px;max-width:15ch}
.beat .sub{margin-top:18px}
.sticky{position:sticky;top:110px}
.stat-block{display:flex;flex-direction:column;gap:18px}
.stat{font-family:var(--serif);font-weight:320;font-size:clamp(84px,12vw,148px);line-height:.88;letter-spacing:-.04em;color:var(--ink);font-variation-settings:"opsz" 144;background:linear-gradient(180deg,var(--ink) 40%,var(--gold-deep));-webkit-background-clip:text;background-clip:text;color:transparent}
.statline{font-size:17px;color:var(--ink-2);max-width:54ch}
.found{display:grid;gap:8px}
.found li{position:relative;padding-left:22px;font-size:15px;color:var(--muted)}
.found li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:1.5px;background:var(--gold)}
.lives{margin-top:clamp(56px,7vw,88px)}
.lives-title{font-size:clamp(24px,2.4vw,32px);font-weight:340;font-variation-settings:"opsz" 72;margin-bottom:22px}
.lane{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:10px}
.lane p:not(.k){font-size:15px;color:var(--muted)}
.punch{margin-top:28px;font-family:var(--serif);font-weight:340;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.01em;line-height:1.2}
.punch span{color:var(--gold-deep);font-style:italic}
.lives .src{margin-top:12px}

/* product */
.legend{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.chip{font:600 11.5px/1 var(--sans);letter-spacing:.1em;padding:8px 12px;border-radius:8px}
.chip.allow{color:var(--allow);background:var(--allow-bg)}.chip.review{color:var(--review);background:var(--review-bg)}.chip.deny{color:var(--deny);background:var(--deny-bg)}.chip.pending{color:var(--pending);background:var(--pending-bg)}
.points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;position:relative;counter-reset:p}
.points::before{content:"";position:absolute;left:8%;right:8%;top:51px;height:1px;background:repeating-linear-gradient(90deg,var(--line-2) 0 6px,transparent 6px 12px);z-index:0}
.point{position:relative;z-index:1;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;display:flex;flex-direction:column;gap:10px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.point:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.point .ic{width:46px;height:46px;color:var(--gold-deep);margin-bottom:8px;background:var(--bg);border-radius:12px;display:grid;place-items:center}
.point .ic svg{width:32px;height:32px}
.point p:not(.k){font-size:15px;color:var(--muted)}
.nocustody{margin:28px auto 0;max-width:820px;display:flex;gap:16px;align-items:center;padding:18px 22px;border-radius:14px;border:1px solid var(--line-2);background:var(--bg)}
.nocustody svg{width:28px;height:28px;color:var(--gold-deep);flex:none}
.nocustody p{font-size:15.5px;color:var(--ink-2)}
.nocustody b{color:var(--ink);font-weight:600}

/* dark how */
.dark{background:radial-gradient(900px 500px at 10% 0%,rgba(201,164,116,.10),transparent 60%),var(--teal-3);color:var(--teal-ink)}
.dark .eyebrow{color:var(--teal-muted)}
.dark .eyebrow .num,.band .eyebrow .num,.close .eyebrow .num{color:var(--gold-2);border-color:rgba(247,244,237,.2)}
.dark .sub{color:var(--teal-muted)}
.dark .k,.band .k{color:var(--gold-2)}
.flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}
.flow li{position:relative;background:rgba(247,244,237,.04);border:1px solid rgba(247,244,237,.12);border-radius:var(--r);padding:22px 20px;display:flex;flex-direction:column;gap:8px}
.flow li:not(:last-child)::after{content:"";position:absolute;right:-12px;top:34px;width:10px;height:10px;border-top:1.5px solid var(--gold-2);border-right:1.5px solid var(--gold-2);transform:rotate(45deg);opacity:.8;z-index:2}
.flow .step{font-size:11.5px;color:var(--gold-2)}
.flow b{font-family:var(--serif);font-weight:400;font-size:21px;letter-spacing:-.01em}
.flow p{font-size:14px;color:var(--teal-muted);line-height:1.55}
.flow li.hl{background:var(--card);color:var(--ink);border-color:transparent;box-shadow:0 20px 50px -20px rgba(0,0,0,.5)}
.flow li.hl p{color:var(--muted)}.flow li.hl .step{color:var(--gold-deep)}
.panel-card{background:rgba(247,244,237,.04);border:1px solid rgba(247,244,237,.12);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:14px}
.panel-card > p:not(.k){color:var(--teal-muted);font-size:15px}
.tiers{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tiers span{font-size:13.5px;font-weight:500;padding:7px 12px;border-radius:999px;background:rgba(247,244,237,.08);border:1px solid rgba(247,244,237,.14)}
.tiers i{font-style:normal;color:var(--gold-2)}
.ticks{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.ticks li{position:relative;padding-left:24px;font-size:14.5px}
.ticks li::before{content:"";position:absolute;left:2px;top:.35em;width:12px;height:7px;border-left:1.6px solid var(--gold-2);border-bottom:1.6px solid var(--gold-2);transform:rotate(-45deg)}

/* props */
.props{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.prop{padding:26px 24px 28px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.prop:nth-child(even){padding-left:24px;padding-right:0;border-left:1px solid var(--line)}
.prop h3{display:flex;align-items:center;gap:10px}
.prop h3::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--gold);flex:none;transform:rotate(45deg)}
.prop p{font-size:15px;color:var(--muted)}

/* AI band */
.band{background:linear-gradient(180deg,var(--teal) 0%,var(--teal-2) 100%);color:var(--teal-ink)}
.band .eyebrow{color:var(--teal-muted)}
.ai3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}
.ai3 article{border-radius:var(--r);padding:26px;border:1px solid rgba(247,244,237,.16);display:flex;flex-direction:column;gap:12px}
.ai3 article p:not(.k){color:var(--teal-muted);font-size:15px}
.ai3 .mid{background:var(--card);color:var(--ink);border-color:transparent;box-shadow:0 24px 60px -24px rgba(0,0,0,.5)}
.ai3 .mid p:not(.k){color:var(--ink-2)}.ai3 .mid .k{color:var(--gold-deep)}
.assists{border-radius:var(--r);border:1px solid rgba(247,244,237,.16);overflow:hidden}
.as-row{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr) minmax(0,1fr);gap:24px;padding:18px 24px;border-top:1px solid rgba(247,244,237,.12);align-items:baseline}
.as-row:first-child{border-top:0}
.as-h{background:rgba(0,0,0,.12);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-muted);padding-block:12px}
.as-row b{font-family:var(--serif);font-weight:400;font-size:19px}
.as-row p{font-size:14.5px;color:var(--teal-muted)}
.as-row .cut{color:var(--gold-2)}

/* who */
.who{display:grid;grid-template-columns:1fr;gap:clamp(24px,4vw,48px);align-items:start}
.who-list{display:flex;flex-direction:column}
.who-list article{display:flex;gap:20px;padding:26px 0;border-top:1px solid var(--line)}
.who-list article:last-child{border-bottom:1px solid var(--line)}
.idx{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);color:var(--gold-deep);font-size:13px}
.who-list h3{margin-bottom:8px}
.who-list p{color:var(--muted);font-size:15.5px;max-width:56ch}
.ground{background:var(--teal-3);color:var(--teal-ink);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden}
.ground::after{content:"";position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(201,164,116,.35);box-shadow:0 0 0 30px rgba(201,164,116,.05),0 0 0 60px rgba(201,164,116,.03)}
.ground .k{color:var(--gold-2)}
.ground h3{font-size:clamp(28px,2.8vw,36px);font-weight:340;font-variation-settings:"opsz" 72}
.ground ul{display:grid;gap:10px;position:relative;z-index:1}
.ground li{position:relative;padding-left:20px;color:var(--teal-muted);font-size:15px}
.ground li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--gold-2)}
.ground .src{color:var(--teal-muted);position:relative;z-index:1}

/* start */
.start{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:start}
.steps{display:flex;flex-direction:column;gap:12px}
.steps li{display:flex;gap:20px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px}
.steps li > span{font-size:13px;color:var(--gold-deep);padding-top:4px;flex:none}
.steps h3{margin-bottom:6px}
.steps p{color:var(--muted);font-size:15px}
.questions{background:var(--ink);color:#f3f0e8;border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:20px;position:sticky;top:100px}
.questions .k{color:var(--gold-2)}
.questions ol{counter-reset:q;display:grid;gap:16px}
.questions li{counter-increment:q;display:flex;gap:14px;font-family:var(--serif);font-weight:340;font-size:20px;line-height:1.3;letter-spacing:-.005em}
.questions li::before{content:counter(q);font-family:var(--mono);font-size:12px;color:var(--gold-2);border:1px solid rgba(201,164,116,.4);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;flex:none;margin-top:2px}
.questions .btn{align-self:flex-start;margin-top:4px}

/* team */
.team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.person{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:6px}
.avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:19px;color:var(--teal-ink);background:linear-gradient(135deg,var(--teal),var(--teal-3));margin-bottom:12px}
.person h3{font-size:26px;font-weight:380;font-variation-settings:"opsz" 48}
.role{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep)}
.person p:not(.role){font-size:15px;color:var(--muted);margin-top:8px}

/* close */
.close{position:relative;overflow:hidden;background:radial-gradient(800px 400px at 50% 120%,rgba(201,164,116,.22),transparent 70%),var(--teal-3);color:var(--teal-ink);text-align:center}
.close .wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:24px}
.close h2{max-width:22ch;color:var(--teal-ink)}
.close .sub{color:var(--teal-muted);text-align:center}
.close .cta{justify-content:center;margin-top:8px}

/* footer */
footer{padding-block:48px 28px;background:var(--bg)}
.foot{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--line)}
.foot-brand{display:flex;flex-direction:column;gap:12px}
.foot-brand p{font-size:14px;color:var(--muted)}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}
.foot-links a{font-size:14px;color:var(--ink-2);text-decoration:none}
.foot-links a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.legal{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:20px;font-size:12.5px;color:var(--muted)}

/* reveal */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .reveal.on{opacity:1;transform:none}

/* responsive */
@media (max-width:1080px){
  .nav a{padding:8px 9px}
  .flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow li:not(:last-child)::after{display:none}
  .flow li.hl{grid-column:span 2}
  .hide-sm{display:none}
}
@media (max-width:920px){
  .menu{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px clamp(20px,4vw,40px) 16px;margin:0;display:none;box-shadow:0 20px 30px -20px rgba(0,0,0,.2)}
  .nav.open{display:flex}
  .nav a{padding:14px 4px;border-radius:0;border-bottom:1px solid var(--line);font-size:16px}
  .nav a:last-child{border-bottom:0}
  .bar{position:relative;justify-content:space-between}
  .hero-grid,.beat,.who,.start,.captions{grid-template-columns:1fr}
  .sticky,.questions{position:static}
  .grid3,.points,.ai3,.team{grid-template-columns:1fr}
  .points::before{display:none}
  .timeline{grid-template-columns:1fr 1fr}
  .timeline li:not(:nth-child(3n+1)){padding-left:0;border-left:0}
  .timeline li:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}
  .as-row{grid-template-columns:1fr;gap:6px}
  .as-h{display:none}
  .hero{padding-bottom:150px}
  .record{max-width:560px}
}
@media (max-width:640px){
  body{font-size:15.5px}
  .grid2,.props,.timeline,.ticks{grid-template-columns:1fr}
  .timeline li:nth-child(even){padding-left:0;border-left:0}
  .timeline li{padding-right:0}
  .prop,.prop:nth-child(even){padding:22px 0;border-left:0}
  .flow{grid-template-columns:1fr}
  .flow li.hl{grid-column:auto}
  .frame{padding:6px;border-radius:14px}
  .frame-bar{flex-wrap:wrap;padding:4px 4px 8px}
  .frame-bar .url{display:none}
  .tabs{margin-left:0;width:100%;order:2}
  .tabs button{flex:1;padding:9px 6px;font-size:12.5px}
  .frame-bar i{display:none}
  .rule{grid-template-columns:minmax(0,1fr) auto;font-size:13px}
  .rule code{grid-column:1/-1;justify-self:start}
  .rules{min-height:0}
  .rec-head{gap:12px}
  .verdict{font-size:24px;padding:5px 11px}
  .record{padding:18px 16px 16px}
  .steps li{padding:20px;gap:14px}
  .questions,.ground{padding:26px 22px}
  .questions li{font-size:18px}
  .btn{padding:13px 20px}
  .bar-cta .btn.sm{padding:9px 14px}
  .cta .btn{flex:1 1 auto;justify-content:center}
  .nocustody{align-items:flex-start}
  .legal{flex-direction:column}
  .stat{font-size:clamp(84px,26vw,120px)}
}
@media (max-width:380px){.logo{width:120px;height:22px}.bar-cta .btn.sm{font-size:13px;padding:8px 12px}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none}
  .rule{opacity:1;transform:none}
}

.full-link{display:none;color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;margin-bottom:6px}
@media (max-width:640px){
  .hide-xs{display:none}
  .panels{aspect-ratio:4/5}
  .panel,.panel picture{height:100%}
  .panel img{object-position:var(--pos,left top);width:100%;height:100%}
  .panel picture{display:block}
  .full-link{display:block}
}
