:root{--ink:#0a0b0c;--paper:#ecebe7;--muted:#9b9c9d;--red:#e22b31;--line:#2b2c2e}
body{background:var(--ink);color:var(--paper)}
.site-header{background:var(--ink)}
.brand b{color:var(--red)}
.nav a{color:#bbb}
.nav a:hover{color:#fff}
.hero{position:relative;border-bottom:1px solid var(--line)}
.hero h1{max-width:920px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero .lede{color:#b7b8b9}
.thesis{font-size:clamp(1.7rem,3vw,3.2rem);max-width:940px;line-height:1.3}
.thesis strong{color:var(--red)}
.section{border-bottom:1px solid var(--line)}
.section .eyebrow{color:var(--red)}
.products{background:#111214}
.products-grid{margin-top:70px;background:var(--line)}
.product-card{background:#111214;min-height:360px;display:flex;flex-direction:column;justify-content:space-between}
.product-card h3{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.05em;margin:.2em 0}
.product-card a{font:12px Mono,monospace;text-transform:uppercase}
.principle{background:var(--paper);color:var(--ink)}
.principle .eyebrow{color:#9e1e24}
.logic{margin-top:60px;background:#c7c6c2}
.logic .card{background:var(--paper)}
.invest{background:#0d0e0f}
.proof{margin-top:70px;background:var(--line)}
.proof .card{background:#0d0e0f}
.form-section{background:#f0efeb;color:#111}
.form-section .button{background:#111;color:#fff}
.field input,.field select,.field textarea{border-color:#9a9995}
.site-footer{color:#aaa}
.footer-row>p{margin:0}
.route-hero{padding-block:90px 70px}
.route-hero h1{font-size:clamp(3.3rem,7vw,7rem)}
.press-list{background:var(--line)}
.press-list article{background:#0d0e0f}
.press-list time{font:11px Mono,monospace;color:#aaa}
.press-list h2{font-size:clamp(1.8rem,3vw,3rem)}

@media(max-width:800px){.product-card{min-height:280px}
}


/* Founder-aligned OBVIC banner: one canonical mark treatment. */
.obvic-banner{display:flex;align-items:center;gap:10px;padding:5px 12px 5px 6px;border:1px solid #34373a;background:#0d0e0f;letter-spacing:0}

.obvic-banner img{display:block;width:36px;height:36px}

.obvic-banner span{font-size:14px;letter-spacing:.2em}

.obvic-banner b{color:#d7ef9a}


@media(max-width:800px){
  .obvic-banner{gap:9px;padding:5px 10px 5px 5px}

  .obvic-banner img{width:38px;height:38px}

  .obvic-banner span{font-size:15px}

  .eyebrow{font-size:14px;line-height:1.45;letter-spacing:.1em}

}

/* Founder-supplied canonical hero: ambiguity resolves once, then remains still. */
.canonical-hero{display:block;min-height:0;padding:0;overflow:hidden;background:#000}
.hero-visual{position:relative;width:min(100%,1920px);margin-inline:auto;overflow:hidden;background:#000}
.hero-visual picture{display:block;width:100%;height:clamp(520px,44vw,700px);overflow:hidden}
.hero-visual img{display:block;width:100%;height:100%}
.hero-visual img{object-fit:cover}
.hero-curtain{position:absolute;z-index:2;inset:0 0 auto;height:clamp(520px,44vw,700px);overflow:hidden;pointer-events:none}
.hero-curtain:before,.hero-curtain:after{content:"";position:absolute;animation-duration:3.2s;animation-timing-function:cubic-bezier(.22,.61,.36,1);animation-fill-mode:both;will-change:opacity}
.hero-curtain:before{inset:0;background:#000;animation-name:curtain-fade}
.hero-curtain:after{top:0;bottom:0;left:83.45%;width:2px;background:#ef2028;box-shadow:0 0 18px #e22b31;animation-name:aperture-line}
.hero-copy{position:relative;z-index:1;padding-top:clamp(54px,6vw,86px);padding-bottom:clamp(72px,8vw,112px);color:#f1efea;background:#0a0b0c}
.hero-copy h1{max-width:980px;font-size:clamp(3.2rem,6.2vw,7rem);text-wrap:balance}
.hero-copy .lede{max-width:610px}
.hero-copy .button{background:#070809cc;backdrop-filter:blur(4px)}

@keyframes curtain-fade{0%,14%{opacity:1}42%{opacity:.86}68%{opacity:.32}100%{opacity:0}}
@keyframes aperture-line{0%,8%{opacity:0}14%,42%{opacity:1}72%,100%{opacity:0}}

@media(max-width:700px){
  .canonical-hero{overflow:hidden}
  .hero-visual{aspect-ratio:auto;overflow:visible}
  .hero-visual picture{height:auto;aspect-ratio:16/9;overflow:hidden;background:#000}
  .hero-visual img{height:100%;transform:scale(1.1);transform-origin:50% 58%}
  .hero-curtain{height:56.25vw}
  .hero-copy{position:relative;inset:auto;padding-top:34px;padding-bottom:64px;background:#0a0b0c}
  .hero-copy h1{font-size:min(2.75rem,12vw)!important;margin-top:.3em}
  .hero-copy .lede{font-size:1rem}
}

@media(prefers-reduced-motion:reduce){
  .hero-curtain{display:none}
}

/* Canonical entity and answer-engine pages. */
.breadcrumbs{display:flex;gap:10px;align-items:center;padding-top:30px;color:#9b9c9d;font:11px Mono,monospace;text-transform:uppercase;letter-spacing:.08em}
.breadcrumbs a{color:#d5d5d1}
.entity-hero{padding-block:clamp(72px,9vw,126px);border-bottom:1px solid var(--line)}
.entity-hero h1{font-size:clamp(3.2rem,7.2vw,7.4rem);max-width:1120px}
.entity-answer{font-size:clamp(1.35rem,2.7vw,2.5rem);line-height:1.35;letter-spacing:-.035em;max-width:1040px}
.entity-hero>p:not(.eyebrow):not(.entity-answer):not(.article-meta){max-width:800px;color:#b7b8b9;font-size:1.1rem}
.article-meta{margin-top:34px;color:#9b9c9d;font:11px Mono,monospace;text-transform:uppercase;letter-spacing:.08em}
.article-body{max-width:900px;padding-block:clamp(72px,9vw,126px)}
.article-body h2{font-size:clamp(1.9rem,3.4vw,3.3rem);margin:2em 0 .55em}
.article-body h2:first-child{margin-top:0}
.article-body p,.article-body li{font-size:clamp(1.05rem,1.6vw,1.25rem);color:#c1c1bd;line-height:1.75}
.article-body strong{color:#f2f1ed}
.article-body li{margin-block:.55em}
.status-note{margin-top:64px;padding:clamp(26px,4vw,46px);border:1px solid #5a2225;background:#111214}
.status-note h2{margin-top:0}
.entity-cards{margin-top:60px;background:var(--line)}
.entity-cards .card{background:#111214}
.entity-cards h3{font-size:clamp(1.7rem,3vw,3rem)}
.fact-grid dl{display:grid;grid-template-columns:minmax(150px,.35fr) 1fr;margin:0;border-top:1px solid var(--line)}
.fact-grid dt,.fact-grid dd{margin:0;padding:18px 0;border-bottom:1px solid var(--line)}
.fact-grid dt{color:#9b9c9d;font:11px Mono,monospace;text-transform:uppercase;letter-spacing:.08em}
.fact-grid dd{font-size:1.05rem}
@media(max-width:700px){.fact-grid dl{grid-template-columns:1fr}.fact-grid dt{padding-bottom:4px;border-bottom:0}.fact-grid dd{padding-top:0}.entity-hero h1{font-size:min(3.6rem,17vw)!important}.article-body h2{overflow-wrap:normal}}
