/* Flat, typographic entry page. All decoration is a small inline vector. */
.nh-landing { --landing-width:1320px; --landing-ink:#22242a; --landing-paper:#f4f1eb; --landing-violet:#ad9bd9; --landing-lime:#a8bda0; }
.landing-shell { width:min(var(--landing-width),calc(100% - 80px)); margin-inline:auto; }
.landing-header { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); }
.landing-brand { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:22px; font-weight:800; line-height:1; letter-spacing:-.05em; white-space:nowrap; text-decoration:none; }
.landing-brand:hover { color:var(--text); }
.landing-brand .brand-mark { display:inline-block; width:25px; height:28px; flex-basis:25px; }
.landing-dot { color:var(--accent); }
.landing-header nav { display:flex; flex-shrink:0; align-items:center; gap:29px; font:12px/1.5 var(--mono); }
.landing-header nav a { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.landing-nav-enter { gap:24px; border-bottom:2px solid var(--accent); }
.landing-nav-enter span { color:var(--mint); font:23px/1 Arial,Helvetica,sans-serif; }
.landing-main { overflow:clip; }
.landing-hero { padding-top:24px; }
.landing-running-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 18px; font:12px/1.5 var(--mono); letter-spacing:.025em; color:var(--muted); }
.landing-running-head > span:last-child { display:flex; align-items:center; gap:22px; }
.landing-running-head b { color:var(--mint); font:24px/1 Arial,Helvetica,sans-serif; }
.landing-hero-stage { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:end; gap:40px; padding-block:36px 31px; }
.landing-hero h1 { font-family:Arial,Helvetica,sans-serif; font-weight:900; font-size:clamp(90px,16.5vw,232px); line-height:.83; letter-spacing:-.072em; text-wrap:initial; margin-left:-.045em; }
.landing-hero h1 > span { display:block; }
.landing-hero h1 > span + span { margin-top:17px; }
.landing-title-stop { color:var(--accent); letter-spacing:-.08em; }
.landing-symbol-panel { min-width:0; border-left:1px solid var(--line); padding-left:25px; padding-bottom:6px; }
.landing-symbol-index { display:block; font:12px/1.6 var(--mono); color:var(--muted); margin-bottom:16px; }
.landing-asterisk { display:block; width:100%; height:auto; color:var(--accent); margin-block:13px 28px; }
.landing-symbol-panel p { font:12px/1.8 var(--mono); color:var(--mint); letter-spacing:.02em; margin:0; }
.landing-hero-support { display:grid; grid-template-columns:minmax(0,1fr) 310px; align-items:end; gap:32px; border-top:1px solid var(--line); padding-top:25px; }
.landing-hero-statement { max-width:26ch; font-size:clamp(26px,2.7vw,38px); line-height:1.15; letter-spacing:-.04em; font-weight:650; margin:0; text-wrap:initial; }
.landing-hero-statement span { color:var(--muted); }
.landing-hero-caption { max-width:56ch; margin:15px 0 0; font-size:14px; line-height:1.65; color:var(--muted); }
.landing-hero-actions { display:flex; flex-direction:column; gap:10px; }
.landing-primary { display:flex; align-items:center; justify-content:space-between; gap:22px; min-height:62px; padding:17px 20px; border:1px solid var(--mint); border-radius:0; background:var(--mint); color:var(--bg); text-decoration:none; font-size:14px; font-weight:700; line-height:1.3; }
.landing-button-arrow { font:32px/1 Arial,Helvetica,sans-serif; font-weight:400; }
.landing-secondary { display:flex; align-items:center; justify-content:space-between; gap:22px; min-height:52px; padding:12px 20px; border:1px solid var(--control-line); color:var(--text); text-decoration:none; font-size:14px; font-weight:600; line-height:1.3; }
.landing-secondary > span:last-child { font:24px/1 Arial,Helvetica,sans-serif; color:var(--accent); }
.landing-text-link { display:flex; align-items:center; justify-content:space-between; min-height:44px; gap:20px; color:var(--muted); font:12px/1.5 var(--mono); text-decoration:none; }
.landing-text-link span:last-child { font:20px/1 Arial,Helvetica,sans-serif; color:var(--text); }
.landing-hero-base { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px 24px; padding-block:24px; margin-top:20px; border-bottom:1px solid var(--line); color:var(--muted); font:12px/1.6 var(--mono); letter-spacing:.01em; }
.landing-hero-base > span:last-child { color:var(--accent); }
.landing-base-end > span > span { margin-left:18px; }
.landing-forms-link { display:inline-flex; align-items:center; gap:16px; min-height:44px; color:var(--muted); text-decoration:none; }
.landing-forms-link > span { color:var(--accent); font:20px/1 Arial,Helvetica,sans-serif; }
.landing-manifest { margin-top:55px; padding-block:35px 64px; color:var(--landing-ink); background:var(--landing-paper); }
.landing-section-top { display:flex; justify-content:space-between; align-items:center; gap:20px; font:12px/1.5 var(--mono); letter-spacing:.025em; }
.landing-section-top p { margin:0; }
.landing-section-top > span { font:29px/1 Arial,Helvetica,sans-serif; }
.landing-manifest-grid { display:grid; grid-template-columns:.8fr 1.5fr; gap:50px; align-items:start; margin-top:42px; }
.landing-question { font:bold clamp(110px,15vw,215px)/1 Arial,Helvetica,sans-serif; letter-spacing:-.095em; padding-top:8px; color:var(--landing-violet); -webkit-text-stroke:2px var(--landing-ink); }
.landing-manifest h2 { color:var(--landing-ink); font-size:clamp(43px,5.7vw,80px); line-height:1.02; letter-spacing:-.055em; font-weight:750; text-wrap:initial; }
.landing-manifest h2 span { text-decoration:underline; text-decoration-color:var(--landing-violet); text-decoration-thickness:.11em; text-underline-offset:.09em; }
.landing-manifest-lead { max-width:36ch; font-size:21px; line-height:1.5; letter-spacing:-.02em; margin:32px 0 0; }
.landing-manifest-notes { display:grid; grid-template-columns:1fr 1.1fr; gap:24px; border-top:1px solid #22242a55; margin-top:32px; padding-top:24px; }
.landing-manifest-notes p { font-size:14px; line-height:1.6; margin:0; }
.landing-manifest-notes span { display:block; font:12px/1.6 var(--mono); margin-bottom:12px; }
.landing-channels { background:var(--landing-violet); color:var(--landing-ink); padding-block:35px 0; }
.landing-channel-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:35px; padding-block:35px 38px; }
.landing-channel-heading h2 { color:var(--landing-ink); font-size:clamp(43px,6.4vw,90px); font-weight:800; line-height:.94; letter-spacing:-.06em; text-wrap:initial; }
.landing-channel-heading > p { font-size:15px; line-height:1.6; margin:0 40px 0 0; }
.landing-channel { display:grid; grid-template-columns:70px minmax(0,1.25fr) minmax(0,.8fr) 46px; align-items:center; gap:24px; min-height:128px; border-top:1px solid #22242a75; padding:24px 0; color:var(--landing-ink); text-decoration:none; }
.landing-channel-no { font:38px/1 Arial,Helvetica,sans-serif; font-weight:500; letter-spacing:-.06em; }
.landing-channel-name { font-size:clamp(28px,3.35vw,47px); font-weight:600; line-height:1.1; letter-spacing:-.055em; }
.landing-channel-description { font-size:15px; line-height:1.65; }
.landing-channel-arrow { font:46px/.9 Arial,Helvetica,sans-serif; justify-self:end; }
.landing-channel:focus-visible { outline:3px solid var(--landing-ink); outline-offset:-3px; color:var(--landing-ink); background:var(--landing-lime); }
.landing-invitation { padding-block:37px 64px; }
.landing-invitation .landing-section-top > span { color:var(--mint); }
.landing-invitation-kicker { font:12px/1.7 var(--mono); color:var(--muted); margin:37px 0 23px; letter-spacing:.025em; }
.landing-invitation h2 { font-family:Arial,Helvetica,sans-serif; font-size:clamp(70px,13.2vw,184px); line-height:.83; letter-spacing:-.07em; font-weight:800; margin-left:-.04em; text-wrap:initial; }
.landing-invitation h2 span { color:var(--accent); }
.landing-submission-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:35px 80px; margin-top:42px; }
.landing-submission-grid > p { max-width:40ch; margin:0; font-size:19px; line-height:1.65; letter-spacing:-.015em; }
.landing-submission-steps { display:grid; gap:23px; margin:0; padding-left:2.2em; list-style:decimal-leading-zero; font-size:15px; line-height:1.65; }
.landing-submission-steps li { padding-left:10px; }
.landing-submission-steps li::marker { color:var(--accent); font:12px/1.6 var(--mono); }
.landing-submission-steps strong { font-size:16px; font-weight:650; }
.landing-submission-steps p { margin:5px 0 0; color:var(--muted); }
.landing-submission-steps a { color:var(--text); overflow-wrap:anywhere; text-underline-offset:3px; }
.landing-final-link { display:flex; align-items:center; justify-content:space-between; gap:25px; min-height:84px; margin-top:38px; padding-block:17px; border-top:2px solid var(--text); border-bottom:2px solid var(--text); font-size:clamp(23px,3vw,40px); line-height:1.2; letter-spacing:-.04em; font-weight:600; text-decoration:none; }
.landing-final-link > span:last-child { font:55px/1 Arial,Helvetica,sans-serif; color:var(--mint); }
.landing-footer { border-top:1px solid var(--line); padding-block:30px 20px; }
.landing-footer-top { display:flex; justify-content:space-between; align-items:flex-start; gap:25px; }
.landing-footer-brand { display:inline-block; font-size:23px; line-height:1.2; font-weight:800; letter-spacing:-.05em; text-decoration:none; }
.landing-footer-brand span { color:var(--accent); }
.landing-footer p { font-size:14px; line-height:1.6; color:var(--muted); margin:7px 0 0; }
.landing-footer-links { display:flex; align-items:flex-start; flex-wrap:wrap; gap:10px 25px; }
.landing-footer-links a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; line-height:1.6; color:var(--muted); text-decoration:none; }
.landing-footer-links .theme-toggle { border-radius:0; font-size:12px; }
.landing-footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px 20px; border-top:1px solid var(--line); margin-top:29px; padding-top:14px; color:var(--muted); font:12px/1.7 var(--mono); }
.landing-footer-bottom a { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.nh-landing .landing-primary:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
@media(hover:hover) and (pointer:fine) {
 .landing-primary:hover { background:var(--accent); border-color:var(--accent); color:var(--bg); }
 .landing-secondary:hover { border-color:var(--accent); background:var(--surface); }
 .landing-text-link:hover,.landing-about-link:hover,.landing-submit-link:hover,.landing-forms-link:hover { color:var(--text); text-decoration:underline; }
 .landing-channel:hover { color:var(--landing-ink); background:var(--landing-lime); }
 .landing-final-link:hover { color:var(--accent); border-color:var(--accent); }
 .landing-footer-links a:hover { color:var(--text); text-decoration:underline; }
}
@media(max-width:1080px) {
 .landing-shell { width:calc(100% - 56px); }
 .landing-hero-stage { grid-template-columns:minmax(0,1fr) 185px; gap:24px; }
 .landing-hero h1 { font-size:clamp(90px,16.3vw,178px); }
 .landing-symbol-panel { padding-left:18px; }
 .landing-symbol-panel p { font-size:12px; }
 .landing-hero-support { grid-template-columns:minmax(0,1fr) 265px; gap:24px; }
 .landing-channel { grid-template-columns:56px minmax(0,1.3fr) minmax(0,.9fr) 35px; gap:16px; }
 .landing-channel-arrow { font-size:38px; }
 .landing-channel-no { font-size:30px; }
 .landing-channel-name { font-size:clamp(25px,3.6vw,36px); }
 .landing-channel-description { font-size:15px; }
 .landing-channel-heading > p { margin-right:0; }
 .landing-manifest-grid { grid-template-columns:.65fr 1.6fr; gap:32px; }
 .landing-manifest-lead { font-size:19px; }
}
@media(max-width:720px) {
 .landing-shell { width:calc(100% - 40px); }
 .landing-header { min-height:68px; gap:12px; }
 .landing-brand { font-size:19px; gap:9px; }
 .landing-brand .brand-mark { width:22px; flex-basis:22px; height:26px; }
 .landing-header nav { gap:18px; font-size:12px; }
 .landing-nav-enter { gap:12px; }
 .landing-nav-enter span { font-size:21px; }
 .landing-hero { padding-top:19px; }
 .landing-running-head { font-size:12px; gap:8px 12px; letter-spacing:0; }
 .landing-running-head > span:last-child { gap:10px; }
 .landing-running-head b { font-size:20px; }
 .landing-hero-stage { display:block; padding-block:31px 25px; }
 .landing-hero h1 { font-size:clamp(70px,24vw,148px); letter-spacing:-.08em; line-height:.84; }
 .landing-hero h1 > span + span { margin-top:10px; }
 .landing-symbol-panel { display:none; }
 .landing-hero-support { grid-template-columns:1fr; gap:22px; padding-top:20px; }
 .landing-hero-statement { font-size:28px; line-height:1.18; }
 .landing-hero-caption { display:block; margin-top:12px; }
 .landing-hero-actions { width:100%; gap:10px; }
 .landing-primary { min-height:57px; padding:13px 18px; font-size:14px; }
 .landing-text-link { font-size:12px; }
 .landing-hero-base { margin-top:7px; padding-block:14px; gap:8px; flex-wrap:wrap; font-size:12px; }
 .landing-base-end > span > span { margin-left:10px; }
 .landing-manifest { margin-top:32px; padding-block:25px 38px; }
 .landing-section-top { font-size:12px; letter-spacing:0; }
 .landing-section-top > span { font-size:25px; }
 .landing-manifest-grid { display:block; margin-top:26px; }
 .landing-question { display:none; }
 .landing-manifest h2 { font-size:clamp(39px,9.7vw,60px); }
 .landing-manifest-lead { font-size:18px; line-height:1.45; margin-top:25px; }
 .landing-manifest-notes { grid-template-columns:1fr 1.15fr; gap:16px; margin-top:25px; padding-top:18px; }
 .landing-manifest-notes p { font-size:14px; }
 .landing-manifest-notes span { font-size:12px; margin-bottom:9px; }
 .landing-channels { padding-top:25px; }
 .landing-channel-heading { display:block; padding-block:27px; }
 .landing-channel-heading h2 { font-size:clamp(37px,9.6vw,62px); line-height:.98; }
 .landing-channel-heading > p { margin-top:17px; font-size:15px; }
 .landing-channel-heading > p br { display:none; }
 .landing-channel { grid-template-columns:34px minmax(0,1fr) 29px; min-height:115px; gap:8px 12px; padding-block:22px; }
 .landing-channel-no { font-size:25px; align-self:start; margin-top:3px; }
 .landing-channel-name { font-size:clamp(23px,6.3vw,33px); line-height:1.1; }
 .landing-channel-description { grid-column:2; grid-row:2; font-size:15px; line-height:1.55; }
 .landing-channel-description br { display:none; }
 .landing-channel-arrow { grid-column:3; grid-row:1/3; font-size:32px; }
 .landing-invitation { padding-block:26px 39px; }
 .landing-invitation-kicker { font-size:12px; margin-block:28px 24px; letter-spacing:0; }
 .landing-invitation h2 { font-size:clamp(54px,17vw,115px); line-height:.88; }
 .landing-submission-grid { grid-template-columns:minmax(0,1fr); gap:28px; margin-top:28px; }
 .landing-submission-grid > p { font-size:18px; }
 .landing-submission-steps { gap:20px; }
 .landing-final-link { margin-top:25px; min-height:72px; font-size:23px; }
 .landing-final-link > span:last-child { font-size:40px; }
 .landing-footer { padding-block:26px 14px; }
 .landing-footer-top { flex-direction:column; gap:16px; }
 .landing-footer-brand { font-size:22px; }
 .landing-footer-links { gap:4px 19px; }
 .landing-footer-links a { font-size:14px; }
 .landing-footer-bottom { align-items:flex-start; flex-wrap:wrap; gap:8px 16px; margin-top:20px; padding-top:15px; font-size:12px; }
 .landing-footer-bottom > span:nth-child(2) { order:3; width:100%; }
 .landing-footer-bottom a { margin-left:auto; min-height:44px; }
}
@media(max-width:600px) { .landing-header { flex-wrap:wrap; gap:2px 12px; padding-top:8px; } .landing-header nav { width:100%; justify-content:space-between; gap:10px; } }
@media(max-width:359px) { .landing-shell { width:calc(100% - 32px); } .landing-brand { font-size:17px; } .landing-header nav { font-size:12px; } .landing-nav-enter { gap:9px; } .landing-running-head { font-size:12px; gap:8px; letter-spacing:0; } .landing-running-head > span:last-child { gap:6px; } .landing-running-head b { font-size:17px; } .landing-hero-statement { font-size:26px; } .landing-channel-name { font-size:22px; } }
@media(prefers-reduced-motion:reduce) { .nh-landing *, .nh-landing *::before, .nh-landing *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
@media print { .landing-header,.landing-footer,.landing-primary,.landing-hero-actions,.landing-symbol-panel { display:none; } .landing-shell { width:100%; } .landing-hero-stage,.landing-manifest-grid { display:block; } .landing-hero h1 { font-size:72px; } .landing-manifest,.landing-channels { color:#000;background:#fff; } .landing-invitation h2 { font-size:62px; } }
