:root { --accent: #67c294; --accent-hero: #82d5aa; --v-bg: #091315; --v-panel: #101d1f; --v-mint: #78d4aa; --v-paper: #edf0e9; }
.vaettir-page { background: #eef0eb; color: #152124; }
.vaettir-page nav.site { background: rgba(237,240,235,.94); }
.vaettir-page nav.site .wrap { max-width: 76rem; }
.v-wide { width: min(100% - 3rem,72rem); margin-inline:auto; }
.vaettir-page main section { padding: clamp(4.5rem,8vw,7.5rem) 0; }
.vaettir-page .eyebrow { color:#285f43; }
.vaettir-page h2 { font-size:clamp(2rem,4.4vw,3.7rem); line-height:1.02; letter-spacing:-.035em; max-width:18ch; }

header.vaettir-hero { min-height:48rem; padding:0; text-align:left; position:relative; overflow:hidden; background:#071113 url('/vaettir/evidence-field-v1.webp') center/cover no-repeat; }
header.vaettir-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,14,16,.97) 0%,rgba(5,14,16,.84) 42%,rgba(5,14,16,.36) 100%); }
.hero-layout { min-height:48rem; display:grid; grid-template-columns:.8fr 1.2fr; gap:4rem; align-items:center; position:relative; z-index:1; }
.vaettir-hero h1 { font-size:clamp(4.4rem,9vw,7.5rem); line-height:.85; letter-spacing:-.07em; margin:0 0 2rem; }
.hero-line { color:#e6efe8; font:500 clamp(1.7rem,3vw,2.65rem)/1.05 "Fraunces",serif; margin:0 0 1.4rem; }
.vaettir-hero p.lede { margin:0 0 1.8rem; max-width:34rem; color:#a9b9b3; }
.vaettir-hero .hero-actions { justify-content:flex-start; }
.vaettir-hero .hero-launch { background:var(--v-mint); border-radius:2px; }

.trace-map { min-height:26rem; display:grid; grid-template-columns:12rem 1fr 12rem; align-items:center; position:relative; }
.trace-column { display:grid; gap:.75rem; z-index:2; }
.trace-label { color:#79958b; font:.56rem "JetBrains Mono",monospace; letter-spacing:.12em; text-transform:uppercase; margin-bottom:.15rem; }
.trace-node { padding:.85rem; background:rgba(11,23,25,.9); border:1px solid rgba(115,202,159,.23); display:grid; grid-template-columns:auto 1fr; gap:.1rem .65rem; box-shadow:0 18px 35px rgba(0,0,0,.25); }
.trace-node i { grid-row:1/3; width:1.6rem;height:1.6rem;display:grid;place-items:center;background:#183331;color:#76c6a2;font:normal .52rem "JetBrains Mono",monospace; }
.trace-node b { font:.68rem "JetBrains Mono",monospace;color:#dfe9e3; }.trace-node small { color:#70817b;font:.5rem "JetBrains Mono",monospace; }
.trace-node.verified i { border-radius:50%; background:#1d4a38; }.trace-node.verified b { color:#bde6cf; }
.trace-lines { width:100%;height:250px;overflow:visible; }.trace-lines path { fill:none;stroke:rgba(99,208,156,.55);stroke-width:1; }.trace-lines circle { fill:#7ee0b0;filter:drop-shadow(0 0 5px #5bc594); }

.intro-grid { display:grid;grid-template-columns:1.1fr .9fr;gap:6rem;align-items:end;margin-bottom:3rem; }.intro-grid h2 { margin-bottom:0; }.intro-grid>p { color:#5a6864;line-height:1.7;margin:0; }
.flow-board { display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;background:#0d191b;border:1px solid #203638;box-shadow:0 28px 60px rgba(10,25,26,.17);color:#e5eee8; }
.flow-board article { padding:2rem;min-height:17rem; }.flow-board .step { color:#68c799;font:.55rem "JetBrains Mono",monospace; }.flow-board small { display:block;color:#81958e;font:.55rem "JetBrains Mono",monospace;text-transform:uppercase;margin:.7rem 0 1rem; }.flow-board h3 { font:500 1.25rem "Fraunces",serif;margin:0 0 1.5rem; }.flow-arrow { align-self:center;color:#5ec797;font:1.4rem "JetBrains Mono",monospace; }
.flow-board pre,.gherkin,.control-badge { background:#081113;border:1px solid #263b3d;padding:1rem;color:#91ada2;font:.61rem/1.7 "JetBrains Mono",monospace;white-space:normal; }.gherkin b { color:#7ad0a6; }.control-badge { display:flex;justify-content:space-between;align-items:center;font-size:.75rem; }.control-badge b { color:#ccebdd; }.verified-row { color:#72c59c;font:.55rem "JetBrains Mono",monospace;margin-top:1rem; }.verified-row::before { content:"●";margin-right:.45rem; }

.evidence-section { background:#dfe6df; }.feature-layout { display:grid;grid-template-columns:.72fr 1.28fr;gap:5rem;align-items:center; }.feature-copy p { color:#5c6864;line-height:1.7; }.feature-copy ul { list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:.8rem;font:.67rem "JetBrains Mono",monospace; }.feature-copy li::before { content:"↳";color:#32805b;margin-right:.7rem; }
.evidence-ui { background:#0c1719;color:#dfe9e4;box-shadow:0 30px 65px rgba(7,24,24,.23); }.ui-top { height:3rem;padding:0 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #253638;font:.58rem "JetBrains Mono",monospace; }.live { color:#6dd19f; }.live::before { content:"●";margin-right:.4rem; }.ui-grid { display:grid;grid-template-columns:8.5rem 1fr;min-height:22rem; }.ui-grid aside { border-right:1px solid #253638;padding:1rem .7rem;display:flex;flex-direction:column;gap:.4rem; }.ui-grid aside span { padding:.6rem;color:#81958e;font:.52rem "JetBrains Mono",monospace; }.ui-grid aside .selected { color:#bde6d1;background:#15292a;border-left:2px solid #69cc9b; }
.graph { position:relative;overflow:hidden;background-image:linear-gradient(#183033 1px,transparent 1px),linear-gradient(90deg,#183033 1px,transparent 1px);background-size:2rem 2rem; }.graph svg { position:absolute;inset:0;width:100%;height:100%; }.graph path { fill:none;stroke:#4da379;stroke-width:1; }.graph-node { position:absolute;z-index:2;padding:.65rem .75rem;background:#112326;border:1px solid #31524a;font:.52rem "JetBrains Mono",monospace;box-shadow:0 8px 20px rgba(0,0,0,.25); }.graph-node.code { left:1rem;top:2rem; }.graph-node.case { left:38%;top:5rem; }.graph-node.control { right:1rem;top:2rem; }.graph-node.result { right:1rem;bottom:2rem;color:#79d1a5; }

.controls-section { background:#f0f2ed; }.controls-section h2 { max-width:21ch; }.control-grid { display:grid;grid-template-columns:repeat(4,1fr);margin-top:3rem;border:1px solid #c8d0ca; }.control-grid article { padding:1.5rem;border-right:1px solid #c8d0ca;display:grid;gap:.7rem; }.control-grid article:last-child { border:0; }.control-grid span,.control-grid small { color:#58635f;font:.56rem "JetBrains Mono",monospace; }.control-grid b { font:500 2.3rem "Fraunces",serif;color:#1b4434; }.control-grid i { height:.22rem;background:linear-gradient(90deg,#4e9b72 var(--fill),#ced7d1 var(--fill)); }
.proof-section { background:#081315;color:#e5ede8; }.proof-section .eyebrow { color:#6fd0a0; }.proof-layout { display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center; }.proof-layout p { color:#8da09a;line-height:1.7; }.proof-stack { border-top:1px solid #2a3c3d; }.proof-stack div { display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #2a3c3d; }.proof-stack span { color:#6e827b;font:.57rem "JetBrains Mono",monospace;text-transform:uppercase; }.proof-stack b { color:#bfe8d3;font:.68rem "JetBrains Mono",monospace; }
.edge-section { background:#e2e7e1; }.edge-grid { display:grid;grid-template-columns:1fr 1fr;margin-top:3rem;border:1px solid #bdc7c0; }.edge-grid article { padding:2.2rem; }.edge-grid article+article { border-left:1px solid #bdc7c0; }.edge-grid small { color:#58645f;font:.57rem "JetBrains Mono",monospace;text-transform:uppercase; }.edge-grid h3 { font:500 1.55rem "Fraunces",serif;margin:.8rem 0; }.edge-grid p { color:#5d6864;line-height:1.65; }.edge-grid .vaettir-edge { background:#102022;color:#e4eee8; }.edge-grid .vaettir-edge small { color:#70c89d; }.edge-grid .vaettir-edge p { color:#8da29b; }
.name-section { background:#eef0eb;padding-block:4rem!important; }.v-mark { width:2.2rem;height:2.2rem;display:grid;place-items:center;background:#102022;color:#70c89d;font:600 1rem "Fraunces",serif;flex:none; }.v-mark.small { width:1.4rem;height:1.4rem;font-size:.65rem; }

@media(max-width:900px){.hero-layout{grid-template-columns:1fr;gap:1rem;padding:4.5rem 0}.trace-map{min-height:24rem}.intro-grid,.feature-layout,.proof-layout{grid-template-columns:1fr;gap:2.5rem}.flow-board{grid-template-columns:1fr}.flow-board article{min-height:0}.flow-arrow{transform:rotate(90deg);justify-self:center;margin:-.5rem}.control-grid{grid-template-columns:1fr 1fr}.control-grid article:nth-child(2){border-right:0}.control-grid article:nth-child(-n+2){border-bottom:1px solid #c8d0ca}}
@media(max-width:620px){.v-wide,.hero-layout{width:min(100% - 2rem,72rem)}.vaettir-page main section{padding:4rem 0}.vaettir-hero h1{font-size:4.7rem}.trace-map{grid-template-columns:1fr;gap:.6rem}.trace-lines{display:none}.trace-column{gap:.45rem}.trace-column.evidence{margin-top:1rem}.trace-node{padding:.65rem}.intro-grid{gap:1.5rem}.ui-grid{grid-template-columns:1fr}.ui-grid aside{display:none}.graph{min-height:18rem}.control-grid{grid-template-columns:1fr}.control-grid article{border-right:0;border-bottom:1px solid #c8d0ca}.edge-grid{grid-template-columns:1fr}.edge-grid article+article{border-left:0;border-top:1px solid #bdc7c0}.nav-links a:first-child{display:none}}
