/* smolsi — image-led, compact technical layout. See DESIGN.md. */
:root {
  --paper:#0e0e0e; --paper-2:#141414; --white:#1a1a1a;
  --ink:#f4f4f4; --text:#b2b2b2; --muted:#999;
  --line:#292929; --line-soft:#222; --line-strong:#555;
  --accent:#b2d393; --accent-soft:#253022;
  --fs-label:11px; --fs-note:13px; --max:1600px;
  --sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
  color-scheme:dark;
}
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-behavior:smooth; scroll-padding-top:88px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; }
body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
img,svg { max-width:100%; }
h1,h2,h3,p,ul,ol { margin:0; }
button,input,textarea { font:inherit; }
button { color:inherit; cursor:pointer; background:none; border:0; }
button:disabled { cursor:wait; opacity:.65; }
::selection { background:var(--accent); color:var(--paper); }
:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.shell { width:calc(100% - 48px); max-width:var(--max); margin-inline:auto; }
.skip { position:fixed; top:-80px; left:20px; z-index:100; background:var(--ink); color:var(--paper); padding:12px 20px; }
.skip:focus { top:12px; }
.eyebrow,.row-label,.figure-caption { font-family:var(--mono); font-size:11px; line-height:1.5; letter-spacing:.035em; text-transform:uppercase; font-weight:400; color:var(--muted); }
.section { position:relative; padding-block:64px; }
.anchor-target { position:absolute; top:0; scroll-margin-top:88px; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:36px; padding:8px 13px; border:1px solid transparent; border-radius:0; font-family:var(--mono); font-size:11px; line-height:1.5; text-transform:uppercase; transition:background .18s,color .18s; }
.btn.primary { background:var(--ink); color:#111; border-color:var(--ink); }
.btn.primary:hover { background:var(--accent); border-color:var(--accent); }
.btn.arrow span { font-size:14px; line-height:1; }
.text-link { display:inline-flex; align-items:center; min-height:44px; gap:20px; font-size:13px; color:var(--ink); }
.text-link:hover { color:var(--accent); }
/* Compact navigation follows the reference's left-aligned utility tabs. */
.topbar { position:sticky; top:0; z-index:40; background:#0e0e0e; border-bottom:1px solid var(--line); }
.topbar-inner { max-width:none; height:64px; display:flex; align-items:center; gap:12px; }
.brand-home { display:inline-flex; align-items:center; gap:8px; font-size:23px; line-height:1; font-weight:550; letter-spacing:-.055em; white-space:nowrap; }
.brand-mark { height:24px; width:24px; color:var(--ink); }
.brand-parent { font-family:var(--mono); color:var(--muted); font-size:9px; white-space:nowrap; }
.nav { display:flex; gap:4px; margin-left:20px; }
.nav a { display:flex; align-items:center; justify-content:space-between; gap:24px; min-width:124px; min-height:32px; padding:7px 10px; background:#292929; color:#ddd; font-family:var(--mono); font-size:11px; text-transform:uppercase; }
.nav a span { color:#aaa; font-size:10px; }
.nav a:hover { background:#3a3a3a; }
.topbar-actions { margin-left:auto; display:flex; align-items:center; gap:20px; }
.nav-about { font-family:var(--mono); font-size:11px; text-transform:uppercase; padding-block:12px; }
.nav-contact { display:inline-flex; align-items:center; gap:12px; padding:7px 11px; min-height:32px; background:var(--ink); color:#111; font-family:var(--mono); font-size:11px; text-transform:uppercase; }
.nav-contact:hover { background:var(--accent); }
.nav-short { display:none; }
.menu-btn { display:none; flex-direction:column; justify-content:center; align-items:center; gap:6px; width:44px; height:44px; }
.menu-btn span { width:20px; height:1px; background:var(--ink); transition:transform .2s; }
.menu-btn[aria-expanded=true] span:first-child { transform:translateY(3.5px) rotate(45deg); }
.menu-btn[aria-expanded=true] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
.mobile-nav { display:none; }
/* The image carries the scale; headline, support and action stay together. */
.hero { position:relative; height:clamp(560px,71svh,680px); overflow:hidden; isolation:isolate; }
.hero-view-switch { position:absolute; top:20px; right:24px; background:var(--paper); z-index:1; }
.hero-view-switch a { min-height:38px; padding-inline:16px; }
.hero-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:65% 50%; z-index:-2; }
.hero-shade { position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,#0e0e0e 0%,rgb(14 14 14 / .78) 8%,transparent 45%),linear-gradient(90deg,rgb(14 14 14 / .42),transparent 65%); }
.hero-inner { height:100%; display:flex; align-items:flex-end; padding-bottom:52px; }
.hero-copy { max-width:500px; }
.hero .eyebrow { margin-bottom:12px; color:#c0c8be; font-size:12px; }
.hero h1 { font-size:38px; line-height:1.12; letter-spacing:-.035em; font-weight:400; }
.hero-description { color:#c1c1c1; font-size:18px; line-height:1.5; max-width:470px; margin-top:18px; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:24px; }
.hero-explore { display:inline-flex; gap:16px; align-items:center; min-height:44px; font-family:var(--mono); font-size:11px; color:#ddd; }
.hero-explore:hover { color:var(--accent); }
.system-strip { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid var(--line); font-family:var(--mono); font-size:11px; color:var(--muted); }
.availability { display:flex; align-items:center; flex-wrap:wrap; gap:12px; min-height:44px; }
.availability i,.response-note i { display:inline-block; width:5px; height:5px; background:var(--accent); flex-shrink:0; }
.availability span { color:#c4c4c4; padding-left:12px; border-left:1px solid var(--line-strong); }
.system-strip>a:last-child { display:flex; align-items:center; min-height:44px; gap:16px; }
/* Shared technical canvas, with figures above concise explanations. */
.section-heading { margin-bottom:28px; }
.section-heading>.eyebrow { margin-bottom:14px; }
.section-heading h2 { font-size:30px; line-height:1.25; letter-spacing:-.025em; font-weight:400; }
.section-heading h2 span { color:var(--muted); }
.section-heading>p:not(.eyebrow) { margin-top:14px; color:var(--text); font-size:16px; max-width:650px; }
.capability-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); }
.capability+.capability { border-left:1px solid var(--line); }
.capability-figure { position:relative; padding:12px 20px 0; height:256px; background:#101110; display:flex; align-items:center; justify-content:center; }
.figure-caption { position:absolute; top:16px; left:20px; font-size:10px; }
.capability-figure svg { display:block; width:100%; height:220px; max-width:400px; margin-top:12px; }
.figure-lines { fill:none; stroke:#626a60; stroke-width:1; }
.figure-lines .figure-node { fill:#101110; }
.figure-lines .figure-connector,.figure-arrow { fill:none; stroke:#87917f; stroke-width:1; stroke-linecap:round; stroke-linejoin:round; }
.figure-lines .figure-focus { stroke:#a5b79a; }
.figure-labels { fill:#a7aca4; font-family:var(--mono); font-size:11px; text-anchor:middle; }
.figure-labels .figure-bright { fill:#e5eae0; }
.figure-labels .figure-small { font-size:9px; }
.figure-signal { fill:var(--accent); }
.figure-lines .figure-chart { stroke:#a5b79a; }
.capability-copy { padding:24px; border-top:1px solid var(--line); }
.capability h3 { font-size:21px; font-weight:400; letter-spacing:-.025em; line-height:1.3; }
.capability h3 span { font-size:17px; color:var(--muted); margin-right:4px; }
.capability-copy>p { font-size:16px; color:var(--text); margin-top:14px; min-height:78px; max-width:385px; }
.capability .row-label { display:block; margin-top:24px; padding-top:16px; border-top:1px solid var(--line); font-size:10px; }
.model-families { padding-top:28px; }
.model-list { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:24px; list-style:none; padding:24px 0; }
.model-list li { display:flex; align-items:center; gap:10px; font-size:15px; white-space:nowrap; }
.model-list img { filter:invert(1); flex-shrink:0; object-fit:contain; opacity:.85; }
.model-families>p { padding-top:16px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); }
.model-families>p span { color:var(--text); }
.model-families>p a { display:inline-block; color:var(--ink); padding-block:8px; margin-left:12px; }
.model-families>p a:hover { color:var(--accent); }
/* One connected workflow makes the local components' roles concrete. */
.agent-workflows { border-top:1px solid var(--line); }
.agent-perimeter { border:1px solid var(--line-strong); background:#101110; }
.agent-boundary { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; padding:18px 24px; border-bottom:1px solid var(--line); }
.agent-boundary>span:last-child { display:flex; align-items:center; gap:8px; color:var(--muted); font-family:var(--mono); font-size:10px; }
.agent-boundary i { width:5px; height:5px; background:var(--accent); }
.agent-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; padding:24px 28px 32px; list-style:none; }
.agent-flow>li { position:relative; min-width:0; }
.agent-flow>li+li::before { content:''; position:absolute; top:40px; left:calc(-50% + 32px); width:calc(100% - 96px); height:1px; background:var(--line-strong); }
.agent-flow>li+li::after { content:''; position:absolute; top:37px; left:calc(50% - 68px); width:6px; height:6px; border-top:1px solid var(--line-strong); border-right:1px solid var(--line-strong); transform:rotate(45deg); }
.agent-step-art { height:80px; display:flex; justify-content:center; margin-bottom:28px; }
.agent-step-art svg { width:128px; height:80px; fill:none; stroke:#8b8f88; stroke-width:1.2; }
.agent-step-art .agent-svg-accent { stroke:var(--accent); }
.agent-flow .row-label { font-size:10px; }
.agent-flow h3 { font-size:19px; line-height:1.35; letter-spacing:-.02em; font-weight:400; margin-top:10px; }
.agent-flow p { font-size:14px; color:var(--text); margin-top:10px; max-width:280px; }
.agent-example { display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid var(--line); padding:18px 24px; }
.agent-example p { font-size:14px; color:var(--text); }
.agent-example .row-label { display:block; font-size:10px; margin-bottom:5px; }
.agent-example .text-link { flex-shrink:0; }
.agent-reader { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; padding-top:14px; font-size:12px; }
.agent-reader p,.agent-reader>a:last-child { color:var(--muted); }
.agent-reader>a:last-child { display:inline-flex; align-items:center; min-height:44px; }
.agent-reader>a:hover { color:var(--accent); }
.view-switch { display:inline-flex; align-items:center; border:1px solid var(--line-strong); font-family:var(--mono); font-size:10px; }
.view-switch a { display:flex; align-items:center; justify-content:center; min-height:32px; padding:6px 12px; }
.view-switch a[aria-current=page] { background:#292929; color:var(--ink); }
.view-switch a:hover { color:var(--accent); }
/* The machine view reads without JavaScript; copying is a small enhancement. */
.machine-header { border-bottom:1px solid var(--line); }
.machine-header .shell { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.machine-header .view-switch a { min-height:44px; }
.machine-main { max-width:780px; padding-block:40px 64px; }
.machine-meta { display:flex; flex-wrap:wrap; gap:8px 16px; font-family:var(--mono); font-size:11px; color:var(--muted); }
.machine-meta span { padding-left:16px; border-left:1px solid var(--line-strong); }
.machine-files { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; margin-top:16px; }
.machine-files a { font-family:var(--mono); font-size:11px; display:flex; align-items:center; min-height:44px; text-decoration:underline; text-underline-offset:5px; }
.machine-copy { display:flex; flex-wrap:wrap; gap:8px; }
.machine-copy button { font-family:var(--mono); font-size:11px; padding:10px 14px; min-height:44px; border:1px solid var(--line-strong); }
.machine-copy button:hover { border-color:var(--accent); }
.copy-status { font-size:12px; color:var(--muted); min-height:24px; margin-top:8px; }
.machine-content { margin-top:24px; padding-top:28px; border-top:1px solid var(--line); font-family:var(--mono); font-size:13px; line-height:1.9; color:#c7c7c7; overflow-wrap:anywhere; }
.machine-content h1 { color:var(--ink); font-size:28px; line-height:1.3; font-weight:500; margin-bottom:24px; }
.machine-content h2 { color:var(--ink); font-size:17px; line-height:1.5; font-weight:500; margin:40px 0 16px; }
.machine-content h3 { color:var(--ink); font-size:14px; font-weight:500; margin:28px 0 12px; }
.machine-content p { margin-block:16px; }
.machine-content ul,.machine-content ol { padding-left:24px; margin-block:16px; }
.machine-content li { margin-block:10px; padding-left:4px; }
.machine-content strong { color:var(--ink); font-weight:600; }
.machine-content a { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.machine-content a:hover { color:var(--accent); }
.machine-content blockquote { margin:0 0 24px; padding-left:20px; border-left:2px solid var(--line-strong); color:var(--text); }
.machine-content table { border-collapse:collapse; width:100%; margin-block:24px; font-size:12px; }
.machine-content th,.machine-content td { text-align:left; vertical-align:top; padding:12px; border:1px solid var(--line); }
.machine-content th { color:var(--ink); font-weight:500; background:var(--paper-2); }
.machine-footer { padding-top:20px; font-size:12px; color:var(--muted); }
.machine-footer a { text-decoration:underline; text-underline-offset:4px; }
/* Deployment illustrations show the difference in who shares the hardware. */
.deployment { border-top:1px solid var(--line); }
.deployment-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); }
.deployment-option { display:flex; flex-direction:column; min-width:0; }
.deployment-option+.deployment-option { border-left:1px solid var(--line); }
.deployment-figure { display:flex; align-items:center; justify-content:center; height:200px; padding:12px 24px; background:#101110; border-bottom:1px solid var(--line); }
.deployment-figure img { display:block; width:100%; max-width:400px; height:100%; object-fit:contain; }
.deployment-copy { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:24px; gap:22px; min-height:220px; }
.deployment-option h3 { font-size:22px; font-weight:400; letter-spacing:-.025em; }
.deployment-option p { max-width:340px; font-size:16px; color:var(--text); margin-top:10px; }
.status { font-family:var(--mono); font-size:11px; color:var(--accent); margin-top:auto; }
.status::before { content:''; display:inline-block; vertical-align:middle; width:5px; height:5px; margin-right:8px; background:currentColor; }
.status.muted { color:var(--muted); }
.status.muted::before { background:transparent; border:1px solid currentColor; }
.ownership-strip { position:relative; padding-block:24px; display:flex; align-items:center; justify-content:space-between; gap:28px; border-bottom:1px solid var(--line); }
.ownership-strip>p { font-size:16px; }
.ownership-strip>p br { display:none; }
.ownership-strip strong { margin-left:4px; font-weight:400; }
.ownership-strip>span:not(.anchor-target) { font-size:12px; color:var(--muted); }
.security-note { position:relative; display:grid; grid-template-columns:1fr 2fr; gap:32px; padding-top:28px; }
.security-note>.eyebrow { padding-top:5px; }
.security-note>div>p:first-child { font-size:20px; letter-spacing:-.02em; }
.security-description { font-size:14px; color:var(--text); margin-top:10px; max-width:640px; }
.security-note details { font-size:13px; margin-top:10px; }
summary { display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; cursor:pointer; }
summary::-webkit-details-marker { display:none; }
summary:hover { color:var(--accent); }
summary span { flex-shrink:0; font-size:20px; font-weight:300; color:var(--muted); transition:transform .18s; }
details[open]>summary span { transform:rotate(45deg); }
.security-note summary { justify-content:flex-start; min-height:44px; }
.security-details { max-width:640px; color:var(--text); }
.security-details p { margin-top:14px; }
.security-details a { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
/* Compliance sits with deployment controls, using the same quiet typography. */
.compliance-note { margin-top:36px; padding-top:28px; border-top:1px solid var(--line); }
.compliance-heading { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:12px 24px; }
.compliance-heading h3 { font-size:20px; line-height:1.4; letter-spacing:-.02em; font-weight:400; }
.compliance-heading p { color:var(--muted); font-size:13px; }
.compliance-list { display:flex; flex-wrap:wrap; gap:24px 32px; justify-content:space-between; padding:28px 0; list-style:none; }
.compliance-list li { font-family:var(--mono); font-size:20px; line-height:1.4; letter-spacing:-.04em; color:#d3d3d3; }
.compliance-detail { display:flex; align-items:center; justify-content:space-between; gap:16px 32px; padding-top:14px; border-top:1px solid var(--line); }
.compliance-detail p { color:var(--muted); font-size:12px; max-width:630px; }
.compliance-detail a { flex-shrink:0; }
/* The evaluation keeps its existing validation and recovery behavior. */
.closing { border-top:1px solid var(--line); }
.closing-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding:32px; border:1px solid var(--line); background:#111; }
.closing h2 { font-size:32px; font-weight:400; letter-spacing:-.035em; line-height:1.2; margin-top:20px; }
.closing-description { font-size:16px; color:var(--text); max-width:400px; margin-top:20px; }
.response-note { font-size:12px; color:var(--muted); display:flex; align-items:center; gap:10px; margin-top:24px; }
.eval-form { position:relative; display:grid; align-content:start; }
.eval-form>label { display:flex; justify-content:space-between; font-family:var(--mono); font-size:10px; text-transform:uppercase; margin-bottom:8px; }
.eval-form>label>span { color:var(--muted); }
.eval-form input,.eval-form textarea { width:100%; min-width:0; padding:11px 13px; background:var(--paper); color:var(--ink); border:1px solid var(--line-strong); border-radius:0; font-size:14px; outline-offset:3px; }
.eval-form input { min-height:44px; margin-bottom:20px; }
.eval-form textarea { resize:vertical; min-height:90px; }
.eval-form :is(input,textarea)::placeholder { color:var(--muted); opacity:1; }
.eval-form input[aria-invalid=true] { border-color:#e49e9e; }
.eval-form .btn { margin-top:20px; justify-self:start; }
.form-note { margin-top:16px; font-size:12px; color:var(--muted); }
.form-note a,.eval-done a,.no-script-contact a { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.eval-form .hp { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); margin:0; padding:0; }
.eval-done { padding:24px; border:1px solid var(--accent); }
.eval-done h3 { font-size:26px; line-height:1.25; font-weight:400; margin-top:16px; }
.eval-done p:not(.eyebrow) { font-size:14px; color:var(--text); margin-top:16px; }
.eval-done-email { overflow-wrap:anywhere; }
.faq-layout { display:grid; grid-template-columns:1fr 2fr; gap:32px; margin-top:40px; }
.faq-layout>.eyebrow { padding-top:16px; }
.faq details { border-bottom:1px solid var(--line); }
.faq details:first-child { border-top:1px solid var(--line); }
.faq summary { min-height:58px; padding-block:16px; font-size:14px; }
.faq details p { padding:0 24px 24px 0; color:var(--text); font-size:14px; line-height:1.7; }
.footer { border-top:1px solid var(--line); padding-block:32px 20px; }
.footer-top { display:flex; justify-content:space-between; gap:32px; }
.footer-top .brand-home { font-size:25px; }
.footer-top p { font-size:12px; color:var(--muted); margin-top:12px; }
.footer-links { display:flex; align-items:flex-start; gap:28px; font-size:12px; }
.footer-links a { min-height:44px; display:flex; align-items:center; }
.footer-links a:hover,.footer-bottom a:hover { color:var(--accent); }
.footer-bottom { margin-top:28px; padding-top:20px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:24px; color:var(--muted); font-size:10px; }
.footer-bottom>div { display:flex; gap:24px; }
.footer-bottom a { display:inline-block; padding-block:4px; }
@media(min-width:1800px) { .hero-copy { padding-left:8px; } }
@media(max-width:1100px) {
  .brand-parent { display:none; }
  .nav { margin-left:12px; }
  .nav a { min-width:110px; }
  .capability-copy { padding:20px; }
  .capability-copy>p { min-height:104px; }
  .closing-inner { gap:48px; }
}
@media(max-width:960px) {
  .model-list { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .nav { display:none; }
  .brand-parent { display:inline; }
  .menu-btn { display:flex; }
  .mobile-nav { position:fixed; inset:64px 0 auto; max-height:calc(100svh - 64px); overflow-y:auto; display:flex; flex-direction:column; padding:20px 24px 28px; background:var(--paper); border-bottom:1px solid var(--line-strong); }
  .mobile-nav>a { display:flex; gap:20px; align-items:center; min-height:60px; border-top:1px solid var(--line); color:var(--muted); font-family:var(--mono); font-size:12px; }
  .mobile-nav>a span { flex:1; font-family:var(--sans); color:var(--ink); font-size:18px; }
  .hero { height:600px; }
  .hero-inner { padding-bottom:42px; }
  .hero-copy { max-width:450px; }
  .hero-description { font-size:17px; }
  .system-strip>p { display:none; }
  .capability-figure { height:210px; padding-inline:12px; }
  .capability-figure svg { height:190px; }
  .capability-copy>p { font-size:15px; min-height:140px; }
  .capability h3 { font-size:19px; }
  .capability h3 span { display:block; margin-bottom:6px; font-family:var(--mono); font-size:11px; }
  .deployment-copy { padding:20px; min-height:240px; }
  .deployment-option p { font-size:15px; }
  .ownership-strip { flex-wrap:wrap; gap:14px 28px; }
  .closing-inner { gap:32px; padding:24px; }
  .closing h2 { font-size:28px; }
  .agent-flow { grid-template-columns:1fr; gap:28px; padding:24px; }
  .agent-flow>li { display:grid; grid-template-columns:92px minmax(0,1fr); column-gap:24px; }
  .agent-step-art { grid-column:1; grid-row:1 / span 3; width:92px; height:80px; margin:0; align-self:center; }
  .agent-flow .row-label,.agent-flow h3,.agent-flow p { grid-column:2; }
  .agent-flow h3 { margin-top:5px; }
  .agent-flow p { margin-top:6px; max-width:540px; }
  .agent-flow>li+li::before { width:1px; height:22px; left:46px; top:-25px; }
  .agent-flow>li+li::after { left:43.5px; top:-8px; transform:rotate(135deg); }
  .agent-example { align-items:flex-start; }
}
@media(min-width:601px) and (max-width:960px) {
  .capability-list { grid-template-columns:1fr; }
  .capability { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); }
  .capability+.capability { border-left:0; border-top:1px solid var(--line); }
  .capability-figure { height:100%; min-height:236px; }
  .capability-figure svg { height:220px; }
  .capability-copy { border-top:0; border-left:1px solid var(--line); }
  .capability-copy>p { min-height:0; }
  .capability h3 span { display:inline; font-family:var(--sans); font-size:16px; }
  .capability .row-label { margin-top:20px; }
  .deployment-options { grid-template-columns:1fr; }
  .deployment-option { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); }
  .deployment-option+.deployment-option { border-left:0; border-top:1px solid var(--line); }
  .deployment-figure { height:100%; min-height:220px; padding:16px; border-bottom:0; border-right:1px solid var(--line); }
  .deployment-copy { min-height:220px; }
}
@media(max-width:600px) {
  .shell { width:calc(100% - 32px); }
  .section { padding-block:44px; }
  .topbar-inner { height:60px; gap:8px; }
  .brand-home { font-size:22px; }
  .brand-parent,.nav-about,.nav-long { display:none; }
  .nav-short { display:inline; }
  .topbar-actions { gap:10px; }
  .nav-contact { font-size:10px; padding:7px 10px; }
  .mobile-nav { top:60px; max-height:calc(100svh - 60px); padding-inline:16px; }
  .hero { height:650px; }
  .hero-art { height:440px; object-position:74% 45%; }
  .hero-shade { background:linear-gradient(0deg,#0e0e0e 25%,rgb(14 14 14 / .92) 37%,transparent 75%); }
  .hero-inner { padding-bottom:30px; }
  .hero-copy { width:100%; max-width:400px; }
  .hero .eyebrow { font-size:11px; margin-bottom:12px; }
  .hero h1 { font-size:32px; line-height:1.12; }
  .hero-description { max-width:330px; font-size:16px; margin-top:16px; }
  .hero-actions { gap:12px 22px; margin-top:22px; }
  .btn { min-height:44px; font-size:10px; gap:16px; }
  .hero-explore { font-size:10px; gap:12px; }
  .system-strip { min-height:70px; gap:10px; font-size:10px; }
  .system-strip>a:last-child { display:none; }
  .availability { gap:10px; }
  .section-heading h2 { font-size:26px; }
  .section-heading h2 span { display:block; margin-top:4px; }
  .section-heading>p:not(.eyebrow) { font-size:15px; }
  .capability-list { grid-template-columns:1fr; }
  .capability+.capability { border-left:0; border-top:1px solid var(--line); }
  .capability-figure { height:200px; }
  .capability-figure svg { max-width:350px; }
  .capability h3 { font-size:21px; }
  .capability h3 span { display:inline; font-size:16px; margin-right:4px; font-family:var(--sans); }
  .capability-copy { padding:20px; }
  .capability-copy>p { min-height:0; max-width:340px; }
  .capability .row-label { margin-top:20px; padding-top:14px; }
  .hero-view-switch { top:16px; right:16px; }
  .hero-view-switch a { min-height:44px; }
  .model-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 20px; }
  .model-list li { font-size:14px; }
  .model-list img { width:24px; height:24px; }
  .model-families>p { font-size:11px; }
  .model-families>p a { margin-left:0; display:block; }
  .agent-boundary { padding:16px; gap:8px; }
  .agent-flow { padding:24px 16px; gap:28px; }
  .agent-flow>li { grid-template-columns:56px minmax(0,1fr); column-gap:14px; }
  .agent-step-art { width:56px; }
  .agent-flow h3 { font-size:18px; }
  .agent-flow p { font-size:13px; }
  .agent-flow>li+li::before { left:28px; }
  .agent-flow>li+li::after { left:25.5px; }
  .agent-example { flex-direction:column; padding:16px; gap:8px; }
  .agent-reader { gap:0 20px; }
  .agent-reader p { width:100%; margin-top:4px; }
  .machine-main { padding-block:32px; }
  .machine-content { font-size:12px; }
  .machine-content h2 { font-size:16px; }
  .machine-content table,.machine-content tbody { display:block; font-size:12px; }
  .machine-content thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .machine-content tbody tr { display:block; border:1px solid var(--line); margin-bottom:16px; }
  .machine-content tbody th,.machine-content tbody td { display:block; border:0; padding:12px 16px; }
  .machine-content tbody th { font-size:14px; }
  .machine-content td::before { content:attr(data-label); display:block; color:var(--muted); font-size:10px; margin-bottom:4px; }
  .deployment-options { grid-template-columns:1fr; }
  .deployment-copy { min-height:0; gap:18px; }
  .deployment-figure { height:180px; padding:12px 20px; }
  .deployment-option+.deployment-option { border-left:0; border-top:1px solid var(--line); }
  .deployment-option h3 { font-size:21px; }
  .ownership-strip { align-items:flex-start; gap:16px; }
  .ownership-strip>p,.ownership-strip>span:not(.anchor-target) { width:100%; }
  .ownership-strip>p br { display:block; }
  .ownership-strip strong { margin-left:0; }
  .security-note { grid-template-columns:1fr; gap:18px; }
  .security-note>div>p:first-child { font-size:20px; }
  .compliance-note { margin-top:28px; padding-top:24px; }
  .compliance-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 16px; padding-block:24px; }
  .compliance-list li { font-size:18px; }
  .compliance-detail { flex-direction:column; align-items:flex-start; gap:8px; }
  .closing-inner { grid-template-columns:1fr; gap:32px; padding:20px; }
  .closing h2 { font-size:28px; }
  .closing-description { font-size:15px; }
  .response-note { font-size:11px; }
  .eval-form input,.eval-form textarea { font-size:16px; }
  .eval-form .btn { width:100%; justify-content:space-between; }
  .faq-layout { grid-template-columns:1fr; gap:20px; margin-top:32px; }
  .faq-layout>.eyebrow { padding:0; }
  .faq summary,.faq details p { font-size:13px; }
  .footer-top { flex-direction:column; gap:24px; }
  .footer-links { flex-wrap:wrap; gap:8px 20px; font-size:11px; }
  .footer-bottom { flex-wrap:wrap; gap:12px 20px; }
  .footer-bottom>span:last-child { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition-duration:0s!important; animation-duration:0s!important; }
}
@media print {
  .topbar,.skip,.hero-art,.hero-shade,.eval-form { display:none!important; }
  .hero { height:auto; padding-block:32px; }
  .shell { width:100%; } .section { padding-block:32px; }
  details>* { display:block!important; }
}
