/* The message becomes a working document. One ink, one fold, a clear handoff. */
.diagram-label { font-size:11px; line-height:1.5; color:var(--muted); }
.route-sheet { background:#fff; border:0; border-left:4px solid var(--accent); border-radius:0; box-shadow:none; }
.sheet-heading { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--ink); }
.sheet-heading>.icon { width:16px; height:16px; color:var(--accent); }
.sheet-heading>span { margin-left:auto; font-size:10px; color:var(--muted); }

/* The screen illustrates; normal-sized controls live outside the photograph. */
.screen-ui { background:#f3f5f9; }
.app-top { height:62px; padding:17px 32px; border-bottom:1px solid #dce2ed; color:#647084; font-size:18px; }
.app-brand { font-size:24px; gap:10px; }
.app-brand>.icon { width:28px; height:28px; }
.app-layout { display:block; min-height:0; }
.app-content { position:relative; display:grid; grid-template-columns:.97fr 1.03fr; gap:54px; padding:35px 34px; height:473px; }
.app-input { min-width:0; padding:8px 4px 0 0; }
.app-content h2 { margin:0; font-size:50px; line-height:1.06; letter-spacing:-2px; }
.app-query { display:block; margin-top:44px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; color:var(--ink); }
.app-query>small { display:block; font-size:20px; line-height:1.4; color:var(--muted); margin-bottom:13px; }
#screen-query { display:block; font-size:31px; line-height:1.25; letter-spacing:-.6px; }
.app-document { display:flex; flex-direction:column; padding:20px 24px 0; position:relative; min-width:0; }
.app-document::after { content:""; position:absolute; right:0; top:0; width:24px; height:24px; background:linear-gradient(45deg,#dce5f8 50%,#f3f5f9 50%); }
.app-document .sheet-heading { font-size:20px; padding-bottom:4px; }
.app-document .sheet-heading>.icon { width:21px; height:21px; }
#screen-operation { flex:1; width:auto; font:inherit; color:inherit; }
.app-tags { display:flex; flex-direction:column; gap:0; margin:0; text-align:left; }
.app-tags>span { display:block; border-bottom:1px solid var(--line); padding:14px 0; border-radius:0; transition:color 180ms ease,background-color 180ms ease; }
.app-tags>span::before { content:none; }
.app-tags small { display:block; font-size:20px; line-height:1.3; color:var(--muted); }
.app-tags b { display:block; margin-top:6px; font-size:27px; line-height:1.2; font-weight:500; color:var(--ink); }
.app-tags>span.is-current { background:#edf2ff; }
.app-tags>span.is-current b { color:var(--accent); }
.app-outcome { display:flex; margin:auto -24px 0; padding:19px 24px; border:0; border-radius:0; background:var(--graphite); color:white; gap:12px; min-height:136px; }
.app-outcome small { font-size:18px; line-height:1.3; color:#b4c4e2; }
.app-outcome strong { color:white; font-size:27px; line-height:1.2; font-weight:500; margin-top:7px; }
.app-outcome p { color:#c9d3e6; font-size:20px; line-height:1.3; margin-top:8px; }
.app-outcome>.icon { color:#98b3ff; flex-shrink:0; width:22px; height:22px; }
.app-transfer { position:absolute; left:calc(48.5% - 18px); top:244px; display:grid; place-items:center; width:43px; height:40px; color:var(--accent); z-index:2; }
.app-transfer>.icon { width:34px; height:34px; }
.hero-demo-controls { position:absolute; left:max(56px,calc((100% - 1320px)/2)); bottom:27px; width:583px; }
.hero-directions { position:static; gap:9px; }
.hero-directions>button { flex:1; width:auto; min-height:78px; font-size:13px; padding:13px 15px; }
.hero-directions .direction-icon { width:19px; height:19px; }
.hero-directions .direction-icon>.icon { width:13px; height:13px; }
.hero-demo-footer { display:flex; align-items:center; gap:18px; margin-top:14px; }
.app-send { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; gap:10px; width:auto; height:auto; min-height:44px; margin:0; padding:11px 16px; border:1px solid #8290a9; border-radius:6px; color:white; background:#151922; font-size:14px; line-height:20px; }
.app-send .icon { width:12px; height:12px; }
.hero-caption { position:static; font-size:13px; line-height:1.5; color:#d8e1f1; letter-spacing:0; text-shadow:0 1px 4px #0008; }
.hero-caption>small { display:block; font-size:12px; line-height:1.5; color:#bdcbe2; }
/* One route sheet: words on the left become the fields in its centre. */
.engine-canvas { display:grid; grid-template-columns:1.03fr 1.12fr .91fr; align-items:stretch; gap:0; padding:41px 39px 0; border:0; border-radius:8px; background:#f3f5f9; min-height:410px; overflow:hidden; }
.route-origin { position:relative; padding:17px 41px 20px 0; }
.route-origin blockquote { margin:33px 0 0; font-size:28px; letter-spacing:-1px; line-height:1.36; }
.route-origin em { font-style:normal; color:var(--accent); text-decoration:none; }
.route-origin>p { margin-top:31px; font-size:12px; line-height:1.65; color:var(--muted); }
.route-origin::after { content:""; position:absolute; top:153px; right:-1px; height:3px; width:30px; background:var(--accent); }
.route-origin::before { content:""; position:absolute; top:148px; right:0; width:11px; height:11px; border-right:3px solid var(--accent); border-top:3px solid var(--accent); rotate:45deg; }
.engine-console { padding:23px 27px 0; min-width:0; }
.engine-console h3 { font-size:35px; font-weight:500; line-height:1.1; letter-spacing:-1.2px; margin-top:28px; }
.route-fields { margin-top:19px; }
.route-fields>div { display:grid; grid-template-columns:76px 1fr; gap:15px; border-top:1px solid var(--line); padding:15px 0; align-items:baseline; }
.route-fields dt { font-size:11px; color:var(--muted); }
.route-fields dd { margin:0; font-size:14px; line-height:1.45; color:var(--ink); }
.console-bottom { padding:12px 0 18px; border-top:1px solid var(--line); min-height:55px; }
.console-bottom>span { font-size:10px; max-width:none; color:var(--muted); }
.result-toggle { height:31px; width:31px; border-radius:50%; flex-shrink:0; }
.engine-result { width:auto; max-width:none; align-self:stretch; border:0; border-radius:0; padding:23px 27px; background:var(--graphite); box-shadow:none; color:#fff; }
.engine-result .diagram-label { color:#b6c5e2; }
.human-mark { width:48px; height:48px; display:grid; place-items:center; border:1px solid #657492; border-radius:50%; margin-top:25px; }
.human-mark .icon { width:23px; height:23px; color:#a0baff; }
.engine-result h3 { margin-top:16px; font-size:24px; font-weight:500; letter-spacing:-.7px; }
.engine-result>p { color:#d2dbee; font-size:12px; letter-spacing:0; line-height:1.7; margin-top:10px; }
.engine-result>.human-boundary { border-top:1px solid #ffffff29; padding-top:17px; margin-top:22px; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#bccdec; font-size:11px; line-height:1.5; }
.human-boundary>.icon { width:24px; height:24px; color:#91adff; }
.engine-route-caption { grid-column:1/-1; display:grid; grid-template-columns:1.03fr 1.12fr .91fr; min-height:50px; align-items:center; color:#647084; font-size:10px; }
.engine-route-caption>span:nth-child(2),.engine-route-caption>span:nth-child(3) { padding-left:28px; }
.engine-note { font-size:11px; line-height:1.6; }

/* Folded edge labels belong to the image instead of floating over it. */
.service-slip { display:grid; grid-template-columns:.92fr 25px 1.15fr; align-items:center; position:absolute; left:0; right:0; bottom:0; min-height:125px; background:#fff; border-top:3px solid var(--accent); padding:18px 19px; gap:13px; }
.slip-input { font-size:14px; line-height:1.5; color:var(--muted); letter-spacing:-.25px; }
.slip-fold { height:33px; display:grid; place-items:center; color:var(--accent); }
.slip-fold>.icon { width:17px; height:17px; transition:transform 220ms var(--ease); }
.slip-output small { display:block; font-size:10px; line-height:1.5; color:var(--muted); margin-bottom:5px; }
.slip-output strong { display:block; font-size:21px; font-weight:500; line-height:1.18; color:var(--ink); letter-spacing:-.65px; }

/* The blue bracket marks the assistant's remit. The perforation is the human gate. */
.principle-visual { display:block; min-height:580px; padding:29px 32px 25px; border:0; border-radius:8px; background:#f3f5f9; }
.principle-heading { display:flex; justify-content:space-between; gap:20px; }
.principle-heading>.diagram-label { font-size:10px; }
#principle-caption { margin-top:28px; font-size:29px; font-weight:500; line-height:1.13; letter-spacing:-1px; white-space:pre-line; min-height:66px; }
.principle-sheet { margin-top:25px; background:white; position:relative; }
.principle-auto { padding:21px 32px 23px; min-height:169px; position:relative; }
.principle-auto>.diagram-label { font-size:11px; }
#principle-data { display:block; margin-top:14px; font-size:36px; line-height:1.08; font-weight:500; letter-spacing:-1.3px; color:var(--accent); white-space:pre-line; }
.boundary-bracket { position:absolute; top:20px; bottom:22px; right:23px; width:24px; border:4px solid var(--accent); border-left:0; }
.principle-gate { position:relative; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px 32px; border-top:1px dashed #a4b5d5; color:var(--muted); font-size:10px; }
.principle-gate::before,.principle-gate::after { content:""; width:14px; height:14px; border-radius:50%; background:#f3f5f9; position:absolute; top:-7px; left:-7px; }
.principle-gate::after { left:auto; right:-7px; }
.principle-gate>.icon { width:13px; height:13px; rotate:90deg; color:var(--accent); }
.principle-person { background:var(--graphite); padding:19px 25px 21px 32px; display:flex; align-items:center; gap:18px; color:white; min-height:89px; }
.principle-person>.icon { width:24px; height:24px; color:#94b1ff; flex-shrink:0; }
.principle-person small { font-size:10px; color:#bdcce8; }
.principle-person strong { display:block; font-size:15px; line-height:1.4; font-weight:400; margin-top:6px; }
.principle-output { display:block; max-width:none; width:auto; border:0; padding:19px 0 0; box-shadow:none; background:none; border-radius:0; }
.principle-output strong { font-size:12px; color:var(--ink); font-weight:500; margin:0; }
.principle-output p { font-size:11px; line-height:1.6; color:var(--muted); margin-top:5px; }
[data-principle="human"] .principle-gate { color:var(--accent); border-top-color:var(--accent); }
[data-principle="check"] #principle-data { font-size:29px; }

@media(hover:hover) and (pointer:fine) {
  .app-send:hover { background:#253149; border-color:#b0c5f3; }
  .solution-card:hover .slip-fold>.icon { transform:translateX(3px); }
}
@media(max-width:1250px) and (min-width:701px) {
  .engine-canvas { padding:30px 25px 0; grid-template-columns:1fr 1.2fr 1fr; }
  .route-origin { padding-right:28px; }
  .route-origin blockquote { font-size:23px; }
  .engine-console,.engine-result { padding:22px 20px 0; }
  .sheet-heading { gap:5px; font-size:11px; }
  .sheet-heading>span { font-size:9px; }
  .route-fields>div { grid-template-columns:1fr; gap:6px; padding:12px 0; }
  .engine-result h3 { font-size:20px; }
  .engine-result>.human-boundary { margin-top:17px; padding-bottom:20px; }
  .service-slip { padding:14px 12px; gap:9px; grid-template-columns:1fr 24px 1.12fr; }
  .slip-input { font-size:12px; }
  .slip-fold { height:26px; }
  .slip-output strong { font-size:17px; }
  .slip-output small { font-size:9px; }
  .principle-visual { padding-inline:24px; }
  .principle-heading { gap:15px; }
  #principle-caption { font-size:25px; min-height:57px; }
  #principle-data { font-size:32px; }
  .principle-auto,.principle-person,.principle-gate { padding-inline:24px; }
  .boundary-bracket { right:18px; width:17px; }
}
@media(max-width:1000px) and (min-width:701px) {
  .engine-canvas { padding:26px 21px 0; grid-template-columns:.92fr 1.1fr 1fr; }
  .route-origin blockquote { font-size:21px; letter-spacing:-.6px; }
  .sheet-heading { flex-wrap:wrap; }
  .sheet-heading>span { margin:0; width:100%; }
  .engine-console h3 { margin-top:18px; font-size:30px; }
  .engine-result,.engine-console { padding-inline:17px; }
  .console-bottom>span { font-size:9px; }
  .engine-route-caption { font-size:9px; }
  .slip-output strong { font-size:15px; }
  .slip-input { font-size:11px; }
  .service-slip { gap:8px; padding-inline:10px; grid-template-columns:1fr 19px 1.15fr; }
  .slip-fold { height:23px; }
  .slip-fold>.icon { width:13px; height:13px; }
  .principle-visual { padding-inline:20px; }
  .principle-heading { flex-direction:column; gap:2px; }
  #principle-caption { font-size:24px; }
  #principle-data { font-size:30px; }
  [data-principle="check"] #principle-data { font-size:25px; }
  .principle-auto,.principle-person,.principle-gate { padding-inline:20px; }
  .principle-person strong { font-size:13px; }
}
@media(max-width:700px) {
  .engine-canvas { display:grid; grid-template-columns:1fr; padding:28px 22px 0; gap:0; }
  .route-origin { padding:0 0 36px; }
  .route-origin blockquote { margin-top:20px; font-size:29px; }
  .route-origin>p { margin-top:22px; }
  .route-origin::after { top:auto; bottom:0; left:0; height:25px; width:4px; }
  .route-origin::before { display:none; }
  .engine-console { width:100%; max-width:none; padding:24px 22px 0; }
  .engine-console h3 { font-size:34px; margin-top:23px; }
  .sheet-heading { gap:6px; font-size:12px; }
  .sheet-heading>span { font-size:9px; }
  .route-fields>div { grid-template-columns:70px 1fr; gap:10px; }
  .route-fields dd { font-size:13px; }
  .engine-result { width:100%; padding:23px 26px; border-left:4px solid var(--accent); }
  .human-mark { float:right; width:38px; height:38px; margin:26px 0 0 10px; }
  .human-mark>.icon { width:19px; height:19px; }
  .engine-result h3 { font-size:26px; }
  .engine-result>p { font-size:13px; }
  .engine-result>.human-boundary { margin-top:20px; font-size:11px; }
  .engine-route-caption { display:none; }
  .engine-note { font-size:10px; }
  .service-slip { padding:18px 19px; min-height:120px; gap:13px; }
  .slip-output strong { font-size:22px; }
  .principle-visual { min-height:0; padding:26px 23px; }
  .principle-heading { gap:13px; }
  .principle-heading>.diagram-label { font-size:9px; }
  #principle-caption { font-size:27px; margin-top:24px; }
  .principle-auto,.principle-person,.principle-gate { padding-inline:23px; }
  #principle-data { font-size:34px; }
  [data-principle="check"] #principle-data { font-size:27px; }
  .boundary-bracket { width:19px; right:19px; }
  .principle-person strong { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .solution-card:hover .slip-fold>.icon { transform:none; }
}

/* Visual audit: readable content, clear actions, and a quieter secondary level. */
.pill { min-height:46px; padding:12px 20px; font-size:14px; }
.nav>a { font-size:14px; }
.header-contact { min-height:44px; font-size:14px; padding:11px 17px; }
.hero-copy { top:208px; }
.hero-kicker { font-size:13px; }
.hero-description { font-size:16px; }
.hero-cta { font-size:14px; }
.hero-contact-note { margin-top:14px; font-size:13px; line-height:1.5; color:#c5d2eb; }
.eyebrow { font-size:12px; }
.section-intro>p,.center-intro>p:last-child,.principles-description { font-size:16px; }
.context-strip>p { font-size:13px; }
.diagram-label,.sheet-heading>span,.route-fields dt { font-size:13px; }
.sheet-heading { font-size:14px; flex-wrap:wrap; }
.sheet-heading>span { margin:0; width:100%; }
.engine-canvas { padding-bottom:35px; min-height:420px; }
.route-origin>p { font-size:14px; }
.route-fields dd { font-size:16px; }
.console-bottom { padding-block:12px 20px; }
.result-toggle { display:inline-flex; align-items:center; justify-content:space-between; gap:18px; width:auto; height:auto; min-height:44px; padding:10px 14px; border:1px solid #c5d3f1; border-radius:6px; background:#edf2ff; color:#244fc4; font-size:14px; line-height:20px; }
.result-toggle>span { font-size:22px; line-height:1; }
.engine-result>p { font-size:14px; }
.engine-result>.human-boundary { font-size:13px; }
.engine-note { font-size:13px; color:#59677d; gap:25px; }
.engine-note>p { max-width:760px; }
.example-link { font-size:14px; min-height:44px; flex-shrink:0; }
.example-details>div>span,.example-disclaimer { font-size:13px; }
.example-details>div>p { font-size:15px; }
.solution-label { font-size:14px; padding:13px 15px; gap:9px; }
.solution-label .direction-icon { width:19px; height:19px; }
.solution-label .icon { width:13px; height:13px; }
.solution-card { display:flex; flex-direction:column; }
.solution-photo { flex-shrink:0; }
.solution-copy { display:flex; flex-direction:column; flex:1; padding:22px 20px 24px; }
.solution-copy h3 { font-size:22px; line-height:1.28; letter-spacing:-.65px; min-height:0; }
.solution-copy>p { font-size:15px; line-height:1.65; min-height:0; }
.solution-link { font-size:14px; min-height:56px; margin-top:auto; padding-top:16px; }
.slip-output small { font-size:12px; }
.slip-output strong { font-size:18px; letter-spacing:-.35px; }
.slip-input { font-size:14px; }
.solutions-note { font-size:13px; line-height:1.6; }
.principle-tabs>button { opacity:1; padding:10px 14px 10px 18px; border-radius:0 6px 6px 0; }
.principle-tabs>button[aria-selected="true"] { background:#f0f4fc; }
.principle-tabs strong { font-size:16px; color:#303b4f; font-weight:500; }
.principle-tabs>button[aria-selected="true"] strong { color:#2857cf; }
.principle-tabs span { font-size:14px; color:#59677d; }
.principle-heading>.diagram-label,.principle-auto>.diagram-label { font-size:12px; }
.principle-gate { font-size:12px; }
.principle-person small { font-size:13px; }
.principle-person strong { font-size:16px; }
.principle-output strong { font-size:14px; }
.principle-output p { font-size:13px; }
.founder-copy .eyebrow { font-size:12px; }
.founder-copy h2 { margin-top:22px; }
.founder-byline { position:static; margin-top:22px; gap:3px; }
.founder-byline>span { font-size:20px; line-height:1.3; color:white; }
.founder-byline>small { font-size:14px; color:#d2dcef; line-height:1.5; }
.founder-copy>p:not(.eyebrow) { font-size:15px; line-height:1.5; margin-top:17px; }
.founder-copy>.pill { margin-top:20px; min-height:44px; padding:11px 17px; font-size:14px; }
.contact-inner .eyebrow { font-size:13px; }
.contact-inner>p:not(.eyebrow) { font-size:16px; line-height:1.6; }
.contact-inner>p:not(.eyebrow) { max-width:560px; margin-inline:auto; }
.contact-actions>.pill { min-height:46px; font-size:14px; padding:12px 18px; }
.contact-inner>small { font-size:13px; line-height:1.6; color:#c5d2eb; }
.footer-brand>p,.footer-column,.footer-column>span { font-size:13px; }
.footer-bottom { font-size:11px; }
@media(hover:hover) and (pointer:fine) {
  .result-toggle:hover { background:#dfe9ff; border-color:#9ab6f5; }
  .principle-tabs>button:hover { background:#f6f8fc; }
  .principle-tabs>button[aria-selected="true"]:hover { background:#eaf0fc; }
}
@media(min-width:701px) and (max-width:1250px) {
  .header { gap:22px; }
  .nav { gap:23px; }
  .nav>a { font-size:13px; }
  .header-contact { font-size:13px; padding-inline:15px; }
  .hero-demo-controls { left:41px; width:555px; }
  .section-intro>p { font-size:14px; }
  .service-slip { grid-template-columns:1fr 20px 1.1fr; padding-inline:12px; gap:8px; }
  .slip-input { font-size:12px; }
  .slip-output small { font-size:11px; }
  .slip-output strong { font-size:16px; }
  .solution-copy h3 { font-size:21px; min-height:54px; }
  .solution-copy>p { min-height:0; }
  .principles { gap:50px; }
  .principle-tabs span { font-size:14px; }
  .founder-copy { padding:38px 38px; }
  .founder-copy h2 { font-size:36px; max-width:520px; }
  .founder-byline { margin-top:18px; }
}
@media(min-width:701px) and (max-width:1100px) {
  .hero { display:grid; grid-template-columns:minmax(0,1fr) 280px; height:auto; min-height:0; max-height:none; }
  .header { grid-column:1/-1; grid-row:1; height:82px; }
  .hero-copy { position:static; grid-column:1; grid-row:2; width:auto; margin:32px 24px 37px 41px; }
  .hero h1 { font-size:clamp(38px,5vw,52px); letter-spacing:-1.9px; }
  .hero-kicker { font-size:12px; margin-bottom:20px; }
  .hero-description { font-size:15px; line-height:1.6; margin-top:23px; }
  .hero-description br { display:none; }
  .hero-demo-controls { position:static; grid-column:2; grid-row:2; width:auto; margin:27px 35px 33px 0; align-self:center; }
  .hero-directions { flex-direction:column; gap:8px; }
  .hero-directions>button { width:100%; flex-direction:row; align-items:center; min-height:55px; font-size:13px; padding:13px; gap:10px; }
  .hero-demo-footer { flex-direction:column; align-items:stretch; gap:12px; margin-top:15px; }
  .hero-caption { font-size:13px; }
  .hero-caption>small { font-size:12px; }
  .hero-visual { position:relative; grid-column:1/-1; grid-row:3; top:auto; bottom:auto; width:100%; height:470px; }
  .hero-shade { background:none; }
  .hero-photo { object-position:100% 50%; }
}
@media(min-width:701px) and (max-width:900px) {
  .hero { grid-template-columns:minmax(0,1fr) 238px; }
  .hero-copy { margin-left:28px; margin-right:18px; }
  .hero-demo-controls { margin-right:27px; }
  .hero-directions>button { font-size:12px; padding-inline:11px; }
  .hero-caption { font-size:12px; }
  .nav { gap:15px; }
  .header { gap:15px; }
  .header-contact { font-size:12px; padding-inline:12px; }
  .nav>a { font-size:12px; }
  .solution-grid { grid-template-columns:1fr; gap:23px; }
  .solution-card { display:grid; grid-template-columns:1fr 1fr; }
  .solution-label { grid-column:1/-1; }
  .solution-photo { aspect-ratio:1.16; }
  .solution-copy { display:flex; flex-direction:column; }
  .solution-copy h3,.solution-copy>p { min-height:0; }
  .solution-link { margin-top:auto; padding-top:14px; }
  .slip-output strong { font-size:18px; }
  .slip-input { font-size:13px; }
  .principles { gap:28px; }
  .principle-tabs strong { font-size:15px; }
  .principle-tabs span { font-size:13px; }
  .principle-visual { padding-inline:20px; }
  .principle-heading { flex-direction:column; gap:3px; }
  .principle-person strong { font-size:14px; }
  .founder-copy { padding-inline:30px; }
  .founder-copy h2 { font-size:32px; }
  .founder-byline>small { max-width:300px; font-size:13px; }
}
@media(max-width:700px) {
  .hero { display:flex; flex-direction:column; height:auto; min-height:0; max-height:none; }
  .header { order:0; flex-shrink:0; }
  .hero-copy { position:static; order:1; width:auto; margin:38px 23px 0; }
  .hero h1 { font-size:38px; letter-spacing:-1.5px; }
  .hero-kicker { font-size:11px; margin-bottom:22px; }
  .hero-description { font-size:15px; line-height:1.65; }
  .hero-cta { margin-top:24px; font-size:14px; }
  .hero-demo-controls { position:static; order:2; width:auto; margin:30px 23px 23px; }
  .hero-directions { gap:7px; }
  .hero-directions>button { min-height:82px; padding:11px 10px; font-size:11px; gap:10px; }
  .hero-demo-footer { flex-direction:column; align-items:stretch; gap:12px; }
  .hero-caption { font-size:13px; text-shadow:none; }
  .hero-caption>small { font-size:12px; }
  .hero-visual { position:relative; order:3; inset:auto; height:350px; width:100%; flex-shrink:0; }
  .hero-shade { background:none; }
  .app-top { font-size:25px; }
  .app-brand { font-size:30px; }
  .app-content h2 { font-size:58px; }
  .app-query { margin-top:46px; }
  .app-query>small { font-size:26px; }
  #screen-query { font-size:38px; }
  .app-document .sheet-heading { display:none; }
  .app-tags small { font-size:26px; }
  .app-tags b { font-size:34px; }
  .app-tags>span { padding-block:22px; }
  .app-outcome { min-height:140px; }
  .app-outcome small { display:none; }
  .app-outcome strong { font-size:38px; }
  .app-outcome p { display:none; }
  .context-strip>p { font-size:12px; }
  .section-intro>p,.center-intro>p:last-child,.principles-description { font-size:15px; }
  .engine-canvas { padding-bottom:24px; }
  .route-fields>div { grid-template-columns:72px 1fr; }
  .route-fields dd { font-size:15px; }
  .engine-note { font-size:13px; gap:9px; }
  .sheet-heading>span { font-size:12px; }
  .example-details>div>p { font-size:14px; }
  .example-disclaimer { font-size:12px; }
  .solution-copy h3,.solution-copy>p { min-height:0; }
  .solution-copy h3 { font-size:22px; }
  .solution-copy>p { font-size:15px; }
  .solution-link { margin-top:15px; }
  .slip-output strong { font-size:18px; }
  .slip-input { font-size:13px; }
  .solutions-note { font-size:12px; }
  .principle-tabs { gap:12px; margin-top:26px; }
  .principle-tabs strong { font-size:16px; }
  .principle-tabs span { font-size:14px; }
  .principle-heading { flex-direction:column; gap:2px; }
  .principle-person strong { font-size:15px; }
  .principle-gate { font-size:12px; }
  .founder-scene { height:auto; background:#151922; }
  .founder-copy { padding:33px 27px 466px; }
  .founder-copy h2 { font-size:31px; }
  .founder-byline { margin-top:20px; }
  .founder-byline>span { font-size:20px; }
  .founder-byline>small { font-size:13px; }
  .founder-copy>p:not(.eyebrow) { font-size:14px; }
  .founder-shade { top:auto; bottom:0; height:465px; background:linear-gradient(180deg,#151922 0%,#151922 30px,transparent 195px); }
  .contact-inner>p:not(.eyebrow) { font-size:15px; }
  .contact-actions>.pill { width:100%; max-width:260px; min-height:46px; font-size:14px; }
  .contact-inner>small { font-size:12px; max-width:280px; }
  .footer-column,.footer-column>span { font-size:13px; }
  .footer-column:last-child>span { font-size:12px; }
  .footer-brand>p { font-size:11px; }
  .footer-bottom { font-size:10px; }
}
@media(max-width:370px) {
  .hero h1 { font-size:35px; }
  .hero-copy { margin-inline:20px; }
  .hero-demo-controls { margin-inline:20px; }
  .hero-directions>button { font-size:10px; padding-inline:8px; }
  .founder-copy h2 { font-size:28px; }
}
