/* Human in Beta — sovereign, self-hosted design tokens. No CDNs. */
:root {
  color-scheme: light;
  --brand-gold: #D4AF37;
  --brand-gold-deep: #B98722;
  --brand-gold-soft: #F2D590;
  --brand-charcoal: #1A1A1A;
  --brand-lavender: #8B7CF6;
  --status-success: #14975C;
  --status-warning: #BF7900;
  --status-error: #DC4C4C;
  --canvas: #F8F8F8;
  --surface: #FFFFFF;
  --surface-alt: #F1EFE9;
  --surface-elevated: #FFFFFF;
  --ink: #191919;
  --ink-muted: #63636B;
  --ink-soft: #85858B;
  --border: #E5E2DC;
  --border-strong: #CDC7BA;
  --gold: #D4AF37;
  --gold-highlight: #EAC460;
  --gold-ink: #AD7920;
  --gold-button-ink: #141414;
  --gold-glow: rgba(224, 170, 65, .18);
  --lavender-soft: #EFEBFF;
  --nav-glass: rgba(248,248,248,.88);
  --shadow: 0 17px 46px rgba(46,37,22,.06);
  --shadow-heavy: 0 35px 85px rgba(28,23,16,.12);
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 28px;
  --max-width: 1340px;
}
html[data-theme="dark"] {
  color-scheme: dark;
  --canvas: #0B0C0E;
  --surface: #161719;
  --surface-alt: #202125;
  --surface-elevated: #242427;
  --ink: #F8F7F3;
  --ink-muted: #ADADB3;
  --ink-soft: #88888E;
  --border: #2D2D32;
  --border-strong: #555152;
  --gold: #E0B54B;
  --gold-highlight: #F2CA67;
  --gold-ink: #EBC15A;
  --gold-glow: rgba(226,166,48,.15);
  --lavender-soft: #29213E;
  --nav-glass: rgba(11,12,14,.88);
  --shadow: 0 17px 46px rgba(0,0,0,.20);
  --shadow-heavy: 0 35px 85px rgba(0,0,0,.40);
}
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; background:var(--canvas); color:var(--ink); font-family:Inter,"Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden; transition:background .3s ease,color .3s ease; }
body:has(dialog[open]) { overflow:hidden; }
button,input { font:inherit; }
button { cursor:pointer; }
button,a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
svg { display:block; }
::selection { color:#181818; background:#F5D477; }
:focus-visible { outline:3px solid var(--brand-lavender); outline-offset:4px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:-100px; left:20px; background:var(--gold); color:#111; padding:12px 22px; z-index:100; border-radius:12px; }
.skip-link:focus { top:20px; }
.container { width:min(calc(100% - 88px),var(--max-width)); margin-inline:auto; }
.site-shell { overflow:hidden; }
.site-header { height:88px; position:sticky; top:0; z-index:25; background:var(--nav-glass); border-bottom:1px solid var(--border); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
.nav-wrap { height:100%; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:11px; min-width:220px; flex:none; }
.brand img { width:46px; height:46px; }
.brand-type { font-size:17px; font-weight:900; letter-spacing:-.045em; white-space:nowrap; line-height:1; }
.brand-type em { font-style:normal; color:var(--gold-ink); }
.brand-sub { display:block; margin-top:7px; font-size:8px; font-weight:750; letter-spacing:.2em; color:var(--ink-soft); }
.main-nav { display:flex; align-items:center; gap:31px; }
.main-nav a { color:var(--ink-muted); font-size:13px; font-weight:650; white-space:nowrap; transition:color .15s ease; }
.main-nav a:hover,.main-nav a:focus-visible { color:var(--gold-ink); }
.nav-actions { display:flex; align-items:center; gap:13px; }
.icon-button,.language-switch,.theme-switch,.menu-button { display:inline-grid; place-items:center; height:39px; color:var(--ink); background:transparent; border:0; }
.icon-button { width:35px; }
.icon-button svg,.search-input-wrap svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.language-switch { display:flex; align-items:center; gap:5px; padding:0 10px; border:1px solid var(--border); border-radius:20px; font-weight:800; font-size:11px; }
.language-switch svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.theme-switch { border:1px solid var(--border); width:67px; border-radius:25px; position:relative; display:flex; justify-content:space-between; padding:0 9px; color:var(--ink-soft); font-size:15px; }
.switch-thumb { width:23px; height:23px; border-radius:50%; background:var(--gold); position:absolute; left:4px; top:7px; box-shadow:0 2px 8px rgba(0,0,0,.12); transition:transform .25s ease; }
html[data-theme="dark"] .switch-thumb { transform:translateX(35px); }
.nav-cta { background:var(--gold); color:#17130B; border-radius:40px; padding:13px 19px; font-size:12px; font-weight:800; white-space:nowrap; transition:transform .2s ease,background .2s ease; }
.nav-cta span { margin-left:9px; font-size:15px; }
.nav-cta:hover { transform:translateY(-2px); background:var(--gold-highlight); }
.menu-button { display:none; width:39px; border:1px solid var(--border); border-radius:12px; gap:4px; align-content:center; }
.menu-button span { width:16px; height:2px; background:var(--ink); border-radius:2px; }
.hero { min-height:651px; display:grid; grid-template-columns:48% 52%; align-items:center; position:relative; padding-top:49px; padding-bottom:64px; }
.hero-copy { position:relative; z-index:3; max-width:610px; padding-bottom:6px; }
.eyebrow,.section-kicker { color:var(--gold-ink); font-size:10px; font-weight:800; letter-spacing:.215em; display:flex; align-items:center; gap:11px; }
.pulse-dot { width:8px; height:8px; display:inline-block; border-radius:50%; background:var(--gold); box-shadow:0 0 0 5px var(--gold-glow); }
.hero-version { margin-top:34px; color:var(--ink-soft); font-size:10px; letter-spacing:.19em; font-weight:800; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:23px; margin-top:17px; font-size:clamp(59px,6.2vw,99px); line-height:.985; font-weight:850; letter-spacing:-.076em; white-space:nowrap; }
.gold-ink { color:var(--gold-ink); }
.hero-lede { color:var(--ink-muted); font-size:clamp(15px,1.4vw,18px); line-height:1.8; max-width:515px; margin-bottom:29px; }
.hero-buttons { display:flex; align-items:center; gap:13px; flex-wrap:wrap; }
.button { border:1px solid transparent; border-radius:999px; font-weight:750; font-size:13px; display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:51px; padding:0 24px; transition:transform .2s ease,background .2s ease,box-shadow .2s ease; }
.button:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.button-primary { background:var(--gold); color:#111; }
.button-primary:hover { background:var(--gold-highlight); }
.button-outline { background:var(--surface); color:var(--ink); border-color:var(--border-strong); }
.btn-arrow { font-size:18px; font-weight:450; }
.play-icon { background:var(--gold-glow); color:var(--gold-ink); width:28px; height:28px; display:grid; place-items:center; border-radius:50%; }
.hero-fineprint { display:flex; gap:15px; align-items:center; margin-top:34px; max-width:410px; font-size:11px; font-weight:600; line-height:1.5; color:var(--ink-soft); }
.fine-avatars { flex:none; display:flex; align-items:center; }
.fine-avatars img,.little-bot { width:34px; height:34px; border-radius:50%; border:2px solid var(--canvas); object-fit:cover; }
.little-bot { margin-left:-9px; display:grid; place-items:center; background:#191919; color:var(--gold); font-size:17px; }
.hero-visual { min-height:570px; position:relative; isolation:isolate; display:flex; align-items:center; justify-content:center; }
.hero-glow { position:absolute; inset:7% 1% 5% 5%; z-index:-2; border-radius:50%; background:radial-gradient(circle at 50% 50%,var(--gold-glow),transparent 70%); filter:blur(18px); }
.art-panel { width:100%; max-width:674px; position:relative; height:520px; background:linear-gradient(128deg,var(--surface-alt),var(--surface)); border:1px solid var(--border); border-radius:47% 24% 25% 26% / 26% 24% 30% 34%; padding:12px; transform:rotate(-2deg); box-shadow:var(--shadow-heavy); overflow:hidden; }
.art-panel::after { content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(110deg,rgba(255,255,255,.10),transparent 70%); pointer-events:none; }
.art-panel img { width:100%; height:100%; object-fit:cover; object-position:53% center; border-radius:inherit; transform:scale(1.19) rotate(2deg); filter:saturate(1.06); }
html[data-theme="dark"] .art-panel { background:linear-gradient(120deg,#242022,#121317); }
.orbit { position:absolute; border:1px solid color-mix(in srgb,var(--gold) 30%,transparent); border-radius:50%; pointer-events:none; z-index:-1; }
.orbit-one { width:110%; height:73%; transform:rotate(-27deg); left:-6%; top:12%; }
.orbit-two { width:82%; height:104%; transform:rotate(32deg); left:14%; top:-3%; }
.orbit-dot { position:absolute; background:var(--gold); border-radius:100%; box-shadow:0 0 0 8px var(--gold-glow); }
.dot-a { width:15px; height:15px; right:1%; top:15%; }
.dot-b { width:9px; height:9px; left:8%; bottom:23%; }
.floating-note { position:absolute; z-index:3; box-shadow:var(--shadow-heavy); border:1px solid var(--border); background:var(--surface-elevated); backdrop-filter:blur(14px); border-radius:14px; font-weight:850; }
.note-top { display:flex; align-items:center; gap:9px; top:12%; left:-9%; padding:14px 17px; font-size:10px; letter-spacing:.08em; transform:rotate(-5deg); }
.tiny-symbol { color:var(--gold-ink); font-size:20px; }
.note-bottom { bottom:7%; right:-2%; padding:15px 19px; display:grid; gap:6px; transform:rotate(4deg); }
.note-code { font:11px ui-monospace,SFMono-Regular,Consolas,monospace; color:var(--ink-soft); }
.note-bottom strong { font-size:20px; letter-spacing:-.04em; color:var(--gold-ink); }
.cursor { animation:blink 1s infinite; }
@keyframes blink { 50% { opacity:0; } }
.visual-side-label { position:absolute; font-size:9px; letter-spacing:.27em; color:var(--ink-soft); font-weight:800; right:-27px; top:50%; transform:translateY(-50%) rotate(90deg); white-space:nowrap; }
.visual-side-label span { color:var(--gold-ink); }
.ticker { overflow:hidden; height:58px; display:flex; align-items:center; background:var(--brand-charcoal); color:#EBC25F; border-block:1px solid var(--border); }
.ticker-content { display:flex; gap:30px; white-space:nowrap; align-items:center; width:max-content; font-size:10px; font-weight:800; letter-spacing:.2em; animation:marquee 48s linear infinite; }
.ticker-content span { color:#E8E5DF; }
@keyframes marquee { to { transform:translateX(-40%); } }
.section { padding-top:110px; padding-bottom:100px; }
.section-kicker { gap:14px; }
.kicker-line { display:inline-block; width:26px; height:2px; background:var(--gold); }
.section-heading { margin:23px 0 34px; }
.section-heading h2,.manifesto h2,.community h2,.about-section h2 { letter-spacing:-.068em; font-weight:820; }
.section-heading h2 { font-size:clamp(36px,4vw,55px); line-height:1.12; margin-bottom:0; }
.split-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; }
.split-heading p { max-width:335px; color:var(--ink-muted); font-size:15px; line-height:1.65; margin:0 0 5px; }
.pathway-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.pathway-card { appearance:none; display:flex; flex-direction:column; align-items:start; min-height:335px; text-align:left; border:1px solid var(--border); background:var(--surface); color:var(--ink); border-radius:var(--radius-lg); padding:27px 25px 24px; position:relative; overflow:hidden; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.pathway-card::after { content:""; position:absolute; width:150px; height:150px; border-radius:50%; background:var(--gold-glow); top:28px; right:-76px; transition:transform .3s ease; }
.pathway-card:hover { transform:translateY(-8px); border-color:var(--gold); box-shadow:var(--shadow); }
.pathway-card:hover::after { transform:scale(1.5); }
.pathway-no { font-size:9px; letter-spacing:.17em; color:var(--ink-soft); font-weight:850; }
.pathway-graphic { display:grid; place-items:center; margin:24px 0 22px; width:86px; height:86px; background:var(--gold-glow); border-radius:26px; transform:rotate(-6deg); }
.pathway-graphic svg { width:56px; height:56px; fill:none; stroke:var(--gold-ink); stroke-width:2.3; stroke-linecap:round; stroke-linejoin:round; transform:rotate(6deg); }
.icon-hospitality { background:#F6E1C8; } .icon-hospitality svg { stroke:#AF6D38; }
.icon-experiments { background:var(--lavender-soft); } .icon-experiments svg { stroke:var(--brand-lavender); }
.icon-humor { background:#F9E9AD; } .icon-humor svg { stroke:#AB7C21; }
.pathway-title { font-size:22px; letter-spacing:-.04em; font-weight:850; }
.pathway-description { font-size:13px; line-height:1.6; color:var(--ink-muted); margin:11px 0 21px; }
.pathway-link { margin-top:auto; font-size:12px; font-weight:850; color:var(--gold-ink); }
.stories-section { background:var(--surface-alt); border-block:1px solid var(--border); }
.story-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; }
.story-heading p { color:var(--ink-muted); font-size:15px; margin:18px 0 0; }
.filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; padding-bottom:5px; max-width:550px; }
.filter-chip { background:var(--surface); border:1px solid var(--border); border-radius:40px; color:var(--ink-muted); padding:10px 15px; font-size:11px; font-weight:750; }
.filter-chip:hover { border-color:var(--gold); }
.filter-chip.active { color:#17130A; background:var(--gold); border-color:var(--gold); }
.stories-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.story-card { display:flex; flex-direction:column; text-align:left; border:1px solid var(--border); border-radius:24px; padding:0; overflow:hidden; color:var(--ink); background:var(--surface); transition:transform .2s ease,box-shadow .2s ease; }
.story-card:hover { transform:translateY(-6px); box-shadow:var(--shadow); }
.story-cover { height:215px; position:relative; overflow:hidden; isolation:isolate; }
.story-cover::before,.story-cover::after { content:""; position:absolute; border-radius:50%; }
.cover-tech { background:radial-gradient(circle at 75% 20%,#F5D481,#A86F2A 85%); }
.cover-tech::before { width:250px; height:250px; background:#292323; left:-35px; bottom:-135px; box-shadow:0 0 0 32px rgba(252,232,189,.23); }
.cover-tech::after { width:100px; height:100px; background:rgba(255,255,255,.62); right:47px; top:38px; box-shadow:-35px 55px 0 -28px #171717; }
.cover-hospitality { background:linear-gradient(130deg,#D9C29F,#866B51); }
.cover-hospitality::before { width:280px; height:280px; background:rgba(255,244,224,.6); bottom:-220px; left:-90px; box-shadow:210px -80px 0 -55px rgba(55,39,26,.75); }
.cover-hospitality::after { width:87px; height:87px; background:#3C342C; top:40px; right:65px; box-shadow:20px 18px 0 -16px #FFF7E5; }
.cover-experiments { background:linear-gradient(135deg,#DCD5F3,#9183BD); }
.cover-experiments::before { width:235px; height:235px; border:30px solid rgba(255,255,255,.48); right:-40px; top:4px; }
.cover-experiments::after { width:62px; height:62px; background:#4F436D; bottom:28px; left:50px; box-shadow:95px -63px 0 -13px #FCDB8D; }
.cover-humor { background:radial-gradient(circle at 35% 40%,#FFF0B9,#DE9C35); }
.cover-humor::before { width:190px; height:190px; background:rgba(28,28,28,.92); right:-35px; bottom:-125px; }
.cover-humor::after { width:60px; height:60px; background:#FFDE83; top:28px; left:28px; box-shadow:240px 70px 0 -20px #171717; }
.story-cover-icon { position:absolute; z-index:1; top:50%; left:50%; transform:translate(-50%,-50%); font-size:75px; color:rgba(255,255,255,.8); font-weight:900; text-shadow:0 7px 30px rgba(0,0,0,.15); }
.story-cover-label { position:absolute; z-index:1; bottom:19px; left:22px; font:750 10px ui-monospace,monospace; letter-spacing:.22em; color:#FFF; text-shadow:0 2px 8px rgba(0,0,0,.4); }
.story-content { display:flex; flex-direction:column; align-items:start; flex:1; padding:24px; }
.story-tag { font-size:10px; font-weight:850; text-transform:uppercase; letter-spacing:.13em; color:var(--gold-ink); }
.story-title { display:block; font-size:24px; line-height:1.2; letter-spacing:-.045em; font-weight:820; margin-top:14px; }
.story-desc { font-size:13px; line-height:1.75; color:var(--ink-muted); margin:11px 0 26px; }
.story-bottom { width:100%; display:flex; align-items:center; justify-content:space-between; margin-top:auto; border-top:1px solid var(--border); padding-top:17px; font-size:10px; letter-spacing:.08em; color:var(--ink-soft); font-weight:800; }
.story-arrow { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:var(--gold-glow); font-size:19px; color:var(--gold-ink); }
.stories-bottom { display:flex; justify-content:space-between; align-items:center; padding-top:30px; color:var(--ink-muted); font-size:13px; }
.stories-bottom p { margin:0; }
.text-button { background:transparent; border:0; color:var(--gold-ink); font-weight:850; display:inline-flex; align-items:center; gap:11px; font-size:13px; padding:8px 0; }
.text-button:hover { text-decoration:underline; }
.manifesto { padding-block:112px; }
.manifesto-card { border:1px solid #4A3723; background:#1C1C1D; color:#FBF9F5; border-radius:36px; min-height:490px; display:grid; grid-template-columns:53% 47%; overflow:hidden; }
.manifesto-copy { padding:67px 0 65px 69px; z-index:1; }
.manifesto h2 { font-size:clamp(42px,4.8vw,67px); line-height:1.08; margin:29px 0 21px; }
.manifesto h2 em { font-style:normal; color:#F1BE52; }
.manifesto-copy p { max-width:520px; color:#B6B2AB; font-size:15px; line-height:1.8; margin-bottom:29px; }
.button-dark { color:#1A160C; background:#DCAF3E; }
.manifesto-visual { min-height:490px; position:relative; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at 50% 45%,rgba(215,157,48,.11),transparent 55%); }
.progress-orbit { width:340px; height:340px; border:1px solid rgba(241,184,70,.40); transform:rotate(-30deg); border-radius:50%; display:grid; place-items:center; box-shadow:0 0 0 31px rgba(216,159,69,.05),0 0 0 90px rgba(220,169,64,.035); }
.progress-orbit::before { content:""; width:18px; height:18px; border-radius:50%; background:#E4BB5C; position:absolute; top:17px; left:70px; box-shadow:0 0 22px #E2AE52; }
.progress-orbit-inner { width:220px; height:220px; border:38px solid rgba(220,172,75,.25); border-top-color:#DCAA43; border-bottom-color:#DCAA43; transform:rotate(45deg); border-radius:50%; display:grid; place-items:center; }
.progress-star { transform:rotate(-15deg); font-size:95px; color:#F1C866; }
.progress-code { position:absolute; bottom:41px; left:26px; display:grid; gap:8px; color:#A99878; font:10px ui-monospace,monospace; letter-spacing:.1em; }
.progress-stamp { position:absolute; top:36px; right:36px; font-weight:900; font-size:11px; color:#E2BF79; letter-spacing:.18em; }
.progress-stamp span { font-size:22px; }
.community { padding-block:66px 100px; }
.community-top { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.community h2 { font-size:clamp(43px,5.3vw,78px); line-height:1.03; margin:26px 0 24px; }
.community-top p { font-size:16px; line-height:1.75; color:var(--ink-muted); max-width:570px; }
.community-sticker { min-width:290px; min-height:272px; background:var(--gold); color:#221B0D; border-radius:50%; display:grid; place-items:center; text-align:center; transform:rotate(10deg); box-shadow:var(--shadow-heavy); align-content:center; position:relative; }
.community-sticker::before { content:""; position:absolute; inset:-12px; border:1px dashed var(--gold-ink); border-radius:50%; }
.community-sticker span:nth-child(2) { font-size:24px; line-height:1.15; letter-spacing:-.055em; font-weight:900; }
.sticker-sparkle { font-size:32px; padding-bottom:10px; }
.sticker-smile { font-size:24px; font-weight:900; padding-top:10px; }
.community-bar { margin-top:65px; padding:25px 30px; display:flex; align-items:center; gap:24px; border-top:1px solid var(--border); border-bottom:1px solid var(--border); font-size:11px; font-weight:900; letter-spacing:.18em; }
.community-bar-symbol { color:var(--gold-ink); font-size:28px; }
.community-bar a { margin-left:auto; font-weight:850; color:var(--gold-ink); white-space:nowrap; letter-spacing:0; font-size:13px; }
.about-section { border-top:1px solid var(--border); padding-block:100px; }
.about-grid { display:grid; grid-template-columns:48% 52%; gap:30px; }
.about-grid h2 { font-size:clamp(39px,4.8vw,67px); line-height:1.07; margin:23px 25px 0 0; }
.about-grid p { max-width:590px; color:var(--ink-muted); font-size:15px; line-height:1.9; }
.about-grid .about-lead { color:var(--ink); font-size:21px; font-weight:600; line-height:1.62; }
.about-signature { margin-top:34px; display:flex; align-items:center; flex-wrap:wrap; gap:13px; font-size:12px; font-weight:900; letter-spacing:.1em; }
.about-signature span { color:var(--gold-ink); font-size:24px; }
.about-signature small { font-size:10px; color:var(--ink-soft); }
.site-footer { background:#151515; color:#FFF; }
.footer-main { padding-block:65px; display:flex; justify-content:space-between; align-items:center; gap:35px; }
.footer-brand { display:flex; align-items:center; gap:13px; }
.footer-brand strong { font-size:24px; letter-spacing:-.05em; }
.footer-brand strong span { color:#E2B850; }
.footer-brand p { color:#A7A7A7; font-size:12px; margin:8px 0 0; }
.footer-links { display:flex; gap:24px; font-size:12px; font-weight:650; color:#B8B8B8; }
.footer-links a:hover { color:#EAC460; }
.footer-bottom { border-top:1px solid #343434; padding-block:22px; color:#8D8D8D; font-size:11px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.footer-bottom a { color:#E2B850; }
/* Dialogs share the exact theme tokens with the website. */
dialog { color:var(--ink); border:1px solid var(--border); border-radius:25px; background:var(--surface); box-shadow:var(--shadow-heavy); max-width:calc(100vw - 24px); }
dialog::backdrop { background:rgba(8,8,10,.73); backdrop-filter:blur(5px); }
.search-dialog { width:min(620px,calc(100vw - 24px)); padding:27px; max-height:min(75vh,700px); }
.dialog-top { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:24px; }
.dialog-top strong { font-size:20px; letter-spacing:-.04em; }
.close-button { width:36px; height:36px; display:grid; place-items:center; color:var(--ink); background:var(--surface-alt); border:1px solid var(--border); border-radius:50%; font-size:24px; line-height:1; }
.search-input-wrap { border:1px solid var(--border-strong); background:var(--canvas); border-radius:14px; display:flex; align-items:center; padding:0 15px; gap:11px; }
.search-input-wrap svg { flex:none; }
.search-input-wrap input { width:100%; padding:18px 0; background:transparent; border:0; outline:0; color:var(--ink); font-size:14px; }
.search-results { max-height:380px; overflow-y:auto; margin-top:20px; }
.search-hit { width:100%; text-align:left; padding:15px 8px; display:flex; flex-direction:column; gap:6px; color:var(--ink); border:0; border-bottom:1px solid var(--border); background:transparent; }
.search-hit:hover { background:var(--surface-alt); }
.search-hit b { font-size:15px; }
.search-hit small { color:var(--ink-muted); }
.search-empty { font-size:14px; color:var(--ink-muted); padding:25px 5px; }
.search-hint { color:var(--ink-soft); font-size:11px; margin:15px 0 0; }
.article-dialog { width:min(760px,calc(100vw - 28px)); padding:0; max-height:86vh; overflow-y:auto; }
.article-dialog-inner { position:relative; padding:clamp(26px,5vw,62px); }
.article-close { position:absolute; right:26px; top:24px; }
.article-meta { color:var(--gold-ink); font-size:11px; letter-spacing:.17em; text-transform:uppercase; font-weight:850; padding-right:54px; }
.article-dialog h2 { font-size:clamp(32px,4.8vw,56px); letter-spacing:-.07em; line-height:1.08; margin:20px 0 15px; }
.article-deck { font-size:19px; line-height:1.6; font-weight:550; color:var(--ink-muted); padding-bottom:25px; border-bottom:1px solid var(--border); }
.article-body p { color:var(--ink-muted); font-size:16px; line-height:1.85; margin:0 0 24px; }
.article-body strong { color:var(--ink); }
.article-end { margin-top:32px; padding-top:24px; border-top:1px solid var(--border); display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:12px; color:var(--ink-soft); }
@media (max-width:1180px) { .container { width:min(calc(100% - 56px),var(--max-width)); } .brand { min-width:185px; } .main-nav { gap:18px; } .nav-cta { padding:11px 14px; } .nav-actions { gap:7px; } .hero { grid-template-columns:49% 51%; } h1 { font-size:clamp(54px,6.4vw,82px); } .art-panel { height:460px; } .hero-visual { min-height:520px; } .note-top { left:-3%; } .visual-side-label { display:none; } .pathway-card { padding:23px 20px; } }
@media (max-width:930px) { .site-header { height:74px; } .brand { min-width:auto; } .main-nav { display:none; position:absolute; top:74px; left:0; right:0; padding:20px 28px 27px; background:var(--surface); border-bottom:1px solid var(--border); box-shadow:var(--shadow); flex-direction:column; align-items:stretch; gap:0; } .main-nav.open { display:flex; } .main-nav a { font-size:16px; padding:13px 10px; border-bottom:1px solid var(--border); } .menu-button { display:grid; } .nav-cta { display:none; } .hero { padding-top:60px; grid-template-columns:1fr; gap:25px; min-height:auto; } .hero-copy { max-width:710px; } h1 { font-size:clamp(60px,10vw,93px); } .hero-visual { width:min(100%,650px); margin:auto; min-height:520px; } .art-panel { height:480px; } .note-top { left:-2%; } .pathway-grid { grid-template-columns:repeat(2,1fr); } .story-heading { align-items:start; flex-direction:column; } .filter-row { justify-content:start; } .stories-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .stories-grid .story-card:last-child:nth-child(odd) { display:none; } .manifesto-card { grid-template-columns:1fr 1fr; } .manifesto-copy { padding:52px 0 52px 40px; } .progress-orbit { width:250px; height:250px; } .progress-orbit-inner { width:150px; height:150px; border-width:25px; } .progress-star { font-size:65px; } .community-sticker { min-width:235px; min-height:235px; } }
@media (max-width:650px) { .container { width:min(calc(100% - 36px),var(--max-width)); } .brand img { width:37px; height:37px; } .brand-type { font-size:14px; } .brand-sub { font-size:7px; margin-top:5px; } .nav-actions { gap:5px; } .icon-button { width:31px; } .theme-switch { width:55px; height:35px; font-size:12px; } .switch-thumb { width:20px; height:20px; top:6px; } html[data-theme="dark"] .switch-thumb { transform:translateX(25px); } .language-switch { padding:0 8px; height:35px; } .menu-button { width:35px; height:35px; } .hero { padding-top:46px; padding-bottom:42px; gap:15px; } .eyebrow { font-size:8px; letter-spacing:.1em; } .hero-version { margin-top:26px; font-size:9px; } h1 { font-size:clamp(46px,10vw,70px); letter-spacing:-.075em; margin-top:13px; } .hero-lede { font-size:15px; line-height:1.65; } .hero-buttons { gap:10px; } .button { padding-inline:19px; gap:10px; min-height:49px; font-size:12px; } .hero-fineprint { margin-top:26px; } .hero-visual { min-height:365px; } .art-panel { height:332px; width:96%; border-radius:35% 21% 24% 25% / 24% 25% 29% 33%; } .art-panel img { transform:scale(1.27) rotate(2deg); } .note-top { top:3%; left:-1%; padding:9px 10px; font-size:8px; } .tiny-symbol { font-size:15px; } .note-bottom { right:0; bottom:2%; padding:11px 13px; } .note-code { font-size:9px; } .note-bottom strong { font-size:15px; } .orbit { display:none; } .ticker { height:47px; } .ticker-content { font-size:9px; } .section { padding-top:68px; padding-bottom:70px; } .section-heading h2 { font-size:clamp(33px,9vw,46px); } .split-heading { flex-direction:column; align-items:start; gap:15px; } .pathway-grid { gap:12px; } .pathway-card { border-radius:19px; min-height:280px; padding:16px; } .pathway-no { font-size:7px; letter-spacing:.08em; } .pathway-graphic { margin:18px 0 16px; width:63px; height:63px; border-radius:18px; } .pathway-graphic svg { width:42px; height:42px; } .pathway-title { font-size:20px; } .pathway-description { font-size:12px; } .pathway-link { font-size:11px; } .stories-grid { grid-template-columns:1fr; gap:16px; } .stories-grid .story-card:last-child:nth-child(odd) { display:flex; } .story-cover { height:190px; } .story-content { padding:21px; } .story-title { font-size:22px; } .stories-bottom { gap:18px; } .manifesto-card { border-radius:26px; grid-template-columns:1fr; } .manifesto-copy { padding:38px 29px 12px; } .manifesto h2 { font-size:clamp(38px,10vw,54px); } .manifesto-visual { min-height:290px; } .progress-orbit { width:218px; height:218px; } .progress-code { font-size:8px; bottom:20px; left:25px; } .progress-stamp { top:10px; } .community-top { flex-direction:column; align-items:start; } .community h2 { font-size:clamp(43px,9vw,65px); } .community-sticker { min-width:180px; min-height:180px; align-self:center; } .community-sticker span:nth-child(2) { font-size:18px; } .community-bar { padding-inline:0; flex-wrap:wrap; gap:13px; } .community-bar a { width:100%; margin-left:0; padding-left:40px; } .about-grid { grid-template-columns:1fr; gap:20px; } .about-grid h2 { font-size:clamp(40px,9vw,60px); } .about-grid .about-lead { font-size:18px; } .footer-main { flex-direction:column; align-items:start; } .footer-links { flex-wrap:wrap; gap:14px 24px; } .footer-bottom { flex-wrap:wrap; } .article-end { flex-direction:column; align-items:start; } }
@media (max-width:385px) { .search-trigger { display:none; } .hero-buttons .button { width:100%; } .note-top { left:1%; font-size:7px; } .brand-type { font-size:12px; } .brand-sub { font-size:6px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }

/* Version 2 — contrast-aware official orbital H mark */
.brand-orbit { display:inline-flex; flex:none; width:52px; height:52px; align-items:center; justify-content:center; }
.brand-orbit img { display:block; object-fit:contain; width:100%; height:100%; }
html[data-theme="dark"] .brand-orbit { filter:drop-shadow(0 0 2px rgba(250,218,154,.23)); }
.beta-lab { border-top:1px solid var(--border); }
.lab-layout { display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,5vw,80px);align-items:center; }
.lab-intro h2 { font-size:clamp(36px,4vw,65px);line-height:1.07;letter-spacing:-.055em;white-space:pre-line;margin:17px 0 20px; }
.lab-intro p { max-width:500px;color:var(--text-muted);line-height:1.7;margin-bottom:28px; }
.lab-console { border:1px solid var(--border); border-radius:22px; overflow:hidden; background:var(--brand-charcoal);color:#FCFAF4; box-shadow:var(--shadow); }
.lab-console-top { display:flex;align-items:center;gap:20px;padding:17px 20px;border-bottom:1px solid #474747;font-size:10px;letter-spacing:.12em; }
.console-lights { display:flex;gap:5px; }.console-lights b {width:8px;height:8px;border-radius:50%;background:#D9A839}.console-lights b:nth-child(2){background:#a09d98}.console-lights b:nth-child(3){background:#716f6a}
.lab-count { margin-left:auto;color:#D9A839; }
.lab-console-body { padding:34px 28px;min-height:245px;display:flex;flex-direction:column;justify-content:space-between;gap:22px; }
.lab-label,.lab-footer {font-size:10px;letter-spacing:.14em;color:#C8B88D}.lab-footer{color:#aaa}
#lab-result {font-size:clamp(21px,2.4vw,33px);font-weight:700;line-height:1.3;letter-spacing:-.035em; }
@media(max-width:700px){.lab-layout{grid-template-columns:1fr}.brand-orbit{width:40px;height:40px}.lab-console-body{min-height:220px}.lab-console-top{font-size:8px}}
