@import url('./tokens.css');

@font-face {
  font-family:Manrope;
  font-style:normal;
  font-weight:200 800;
  font-display:swap;
  src:url('fonts/manrope-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
  font-family:Manrope;
  font-style:normal;
  font-weight:200 800;
  font-display:swap;
  src:url('fonts/manrope-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
  font-family:var(--font-family);
  font-synthesis:none;
  color:var(--text);
  background:var(--canvas);
  scroll-behavior:smooth;
  scroll-padding-top:var(--space-6);
}
* { box-sizing:border-box; }
body { margin:0; }
button,input,textarea { font:inherit; }
button,a,input,textarea,summary { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
button,summary { cursor:pointer; touch-action:manipulation; }
button:disabled { cursor:not-allowed; }
p,h1,h2,h3 { margin:0; }
p { line-height:var(--line-body); }
ul,ol { margin:0; padding:0; }
img,svg { display:block; max-width:100%; }
[hidden] { display:none!important; }
::selection { color:var(--on-brand); background:var(--brand); }
input,textarea { caret-color:var(--brand); }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:var(--focus-width) solid var(--focus); outline-offset:var(--focus-offset); }
[id] { scroll-margin-top:var(--space-6); }
.wrap { width:min(var(--layout-content),calc(100% - 96px)); margin-inline:auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; left:20px; top:12px; transform:translateY(-200%); padding:var(--space-3) var(--space-5); z-index:100; background:var(--surface); border:2px solid var(--brand); }
.skip-link:focus { transform:translateY(0); }
.site-header { height:84px; display:flex; align-items:center; gap:36px; }
.brand { display:inline-flex; align-items:center; flex-shrink:0; padding:9px; margin-left:-9px; }
.brand img { width:156px; height:auto; }
.site-header nav { display:flex; gap:28px; margin-left:auto; font-size:var(--type-small); font-weight:650; }
.site-header nav a { padding-block:14px; }
.site-header nav a:hover { color:var(--brand); text-decoration:underline; text-underline-offset:5px; }
.language { display:flex; gap:3px; border:1px solid var(--border); padding:var(--space-1); border-radius:10px; }
.language a { font-size:var(--type-label); font-weight:700; padding:9px 10px; border-radius:6px; min-width:38px; text-align:center; }
.language a[aria-current] { background:var(--brand); color:var(--on-brand); }
.hero { padding-top:28px; }
.hero-copy { text-align:center; max-width:850px; margin:0 auto 36px; }
.status { display:inline-flex; gap:var(--space-2); align-items:center; font-size:var(--type-label); color:var(--muted); margin-bottom:21px; }
.status span { width:6px; height:6px; border-radius:50%; background:var(--brand); }
h1 { font-size:clamp(44px,4.05vw,var(--type-display)); font-weight:650; line-height:1.09; letter-spacing:-.045em; text-wrap:balance; }
.intro { font-size:var(--type-lead); color:var(--muted); margin:var(--space-5) auto 0; max-width:740px; }
.hero-actions { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:var(--space-3); margin-top:26px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-4); min-height:50px; padding:13px 22px; border:1px solid transparent; border-radius:var(--radius-control); font-size:var(--type-small); font-weight:700; line-height:1.5; transition:background-color var(--motion-fast); }
.button svg { width:20px; height:20px; flex-shrink:0; }
.primary { background:var(--brand); color:var(--on-brand); }
.primary:hover { background:var(--brand-hover); }
.secondary { background:transparent; color:var(--brand); border-color:var(--control-border); }
.secondary:hover { background:var(--brand-soft); }
.demo-scene { min-width:0; }
.browser-frame { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-surface); overflow:hidden; box-shadow:var(--shadow-frame); }
.browser-bar { height:36px; display:flex; align-items:center; justify-content:center; position:relative; background:var(--surface-subtle); border-bottom:1px solid var(--border); font-size:10px; color:var(--muted); padding-inline:65px; }
.browser-dots { position:absolute; left:17px; display:flex; gap:5px; }
.browser-dots i { width:6px; height:6px; border-radius:50%; background:var(--control-border); }
.business-header { display:flex; justify-content:space-between; align-items:center; padding:21px 36px; gap:var(--space-4); border-bottom:1px solid var(--border); }
.business-brand { display:flex; gap:9px; align-items:center; font-size:var(--type-lead); font-weight:800; color:var(--brand); }
.business-brand svg { width:28px; height:28px; }
.business-location { font-size:var(--type-label); color:var(--muted); text-align:right; }
.business-stage { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,440px); align-items:center; gap:56px; padding:30px 36px 34px; }
.business-copy { min-width:0; }
.business-copy h2 { font-size:36px; line-height:1.15; letter-spacing:-.035em; font-weight:750; max-width:340px; }
.business-copy>p { font-size:var(--type-small); color:var(--muted); margin-top:15px; max-width:330px; }
.business-cta { display:inline-flex; align-items:center; gap:14px; border:0; padding:0; min-height:42px; background:transparent; color:var(--brand); font-size:var(--type-label); font-weight:750; margin-top:13px; text-decoration:underline; text-underline-offset:5px; }
.business-cta:hover { color:var(--brand-hover); }
.business-cta svg { width:18px; height:18px; }
.service-photo { width:100%; height:220px; object-fit:cover; object-position:35% center; border-radius:6px; margin-top:18px; }
.service-tags { display:flex; flex-wrap:wrap; gap:var(--space-3) var(--space-5); list-style:none; margin-top:15px; font-size:var(--type-caption); font-weight:650; color:var(--muted); }
.service-tags li { display:flex; align-items:center; gap:6px; }
.service-tags svg { width:15px; height:15px; color:var(--brand); }
.chat-placement { min-width:0; min-height:460px; display:flex; align-items:flex-end; justify-content:flex-end; }
.chat { width:100%; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-dialog); box-shadow:var(--shadow-chat); overflow:hidden; }
.chat-header { display:flex; align-items:center; gap:var(--space-3); padding:var(--space-5) var(--space-5) 13px; }
.chat-header>img { flex-shrink:0; }
.chat-header h2 { font-size:var(--type-lead); font-weight:750; line-height:1.4; letter-spacing:-.02em; }
.icon-button { display:flex; align-items:center; justify-content:center; border:0; background:transparent; width:34px; height:34px; margin-left:auto; color:var(--muted); border-radius:6px; flex-shrink:0; }
.icon-button:hover { background:var(--surface-subtle); }
.icon-button svg { width:20px; height:20px; }
.chat-log { height:240px; overflow-y:auto; overscroll-behavior:contain; padding:22px var(--space-5) var(--space-4); scrollbar-width:thin; scrollbar-color:var(--control-border) transparent; }
.chat-log:focus-visible { outline-offset:-4px; }
.message { font-size:var(--type-body); line-height:var(--line-body); margin-bottom:var(--space-6); overflow-wrap:anywhere; }
.message p { white-space:pre-wrap; line-height:var(--line-body); }
.message.user { width:fit-content; max-width:92%; margin-left:auto; background:var(--brand-soft); color:var(--text); border-radius:16px 16px 4px 16px; padding:11px 15px; }
.message.assistant { padding-block:var(--space-1); }
.message-author { display:block; font-size:var(--type-label); font-weight:750; margin-bottom:var(--space-2); }
.message-author span { color:var(--muted); font-weight:400; }
.message:last-child { margin-bottom:0; }
.source-note { display:block; margin-top:var(--space-2); color:var(--muted); font-size:10px; }
.chat-bottom { padding:0 var(--space-4) var(--space-3); }
.human-action { display:flex; width:100%; justify-content:space-between; align-items:center; gap:var(--space-3); border:0; border-radius:var(--radius-control); background:var(--surface-subtle); color:var(--brand); text-align:left; padding:var(--space-3) 14px; margin:0 0 14px; font-size:var(--type-label); font-weight:700; min-height:42px; }
.human-action:hover { background:var(--brand-soft); }
.human-action svg { width:16px; height:16px; flex-shrink:0; }
.composer { display:flex; align-items:flex-end; gap:var(--space-2); padding:6px; border:1px solid var(--control-border); border-radius:var(--radius-composer); background:var(--surface); scroll-margin-block:var(--space-3); }
.composer:focus-within { outline:var(--focus-width) solid var(--focus); outline-offset:3px; }
#chat-input { padding:9px 0 var(--space-2) var(--space-3); width:100%; min-height:40px; height:40px; max-height:100px; resize:none; border:0; outline:none; border-radius:0; font-size:var(--type-body); line-height:22px; background:transparent; }
#chat-input::placeholder { color:var(--muted); opacity:1; }
.composer button { display:flex; align-items:center; justify-content:center; border:0; border-radius:50%; width:40px; height:40px; background:var(--brand); color:var(--on-brand); flex-shrink:0; }
.composer button:disabled { background:var(--surface-subtle); color:var(--muted); }
.composer button svg { width:22px; height:22px; }
.chat-footnote { color:var(--muted); font-size:10px; text-align:center; margin-top:11px; }
.chat-launcher { display:flex; align-items:center; gap:14px; padding:17px 22px; border-radius:30px; border:1px solid var(--control-border); background:var(--surface); box-shadow:0 8px 24px -12px color-mix(in srgb,var(--brand) 30%,transparent); color:var(--brand); font-size:var(--type-body); font-weight:700; }
.chat-launcher img { margin:7px; }
.demo-footer { display:flex; align-items:center; gap:var(--space-6); justify-content:space-between; padding:14px var(--space-6); background:var(--surface-subtle); border-top:1px solid var(--border); }
.demo-footer p { font-size:var(--type-caption); color:var(--muted); line-height:1.6; max-width:710px; }
.reset { display:flex; align-items:center; gap:7px; flex-shrink:0; min-height:36px; border:0; background:transparent; padding:6px; color:var(--brand); border-radius:6px; font-size:var(--type-caption); font-weight:700; }
.reset:hover { background:var(--brand-soft); }
.reset svg { width:17px; height:17px; }
.nojs { padding:var(--space-4); font-size:var(--type-label); color:var(--muted); }
.handoff-card { margin-top:var(--space-3); background:var(--human-soft); border-radius:var(--radius-control); padding:14px; color:var(--human); }
.handoff-card strong,.handoff-card p { font-size:var(--type-label); }
.handoff-card p { margin-top:5px; }
.demo-contact { display:inline-block; font-size:var(--type-label); font-weight:650; color:var(--brand); padding-block:var(--space-3); text-decoration:underline; text-underline-offset:4px; }
h2 { font-size:clamp(30px,3vw,var(--type-section)); font-weight:650; line-height:1.18; letter-spacing:-.035em; text-wrap:balance; }
.information-section { padding-block:var(--space-24); }
.section-heading { text-align:center; max-width:680px; margin:0 auto 36px; }
.section-heading p { font-size:15px; color:var(--muted); max-width:570px; margin:17px auto 0; }
.information-flow { display:grid; grid-template-columns:1fr 160px 1.08fr; align-items:center; border-radius:var(--radius-panel); background:var(--brand-soft); padding:var(--space-10) 46px; }
.source-document { background:var(--surface); border:1px solid var(--border); border-radius:8px; padding:var(--space-6); box-shadow:5px 5px 0 var(--surface-subtle),6px 6px 0 var(--border); }
.document-heading { display:flex; gap:var(--space-3); align-items:center; font-size:var(--type-body); }
.document-heading svg { width:30px; height:30px; color:var(--brand); flex-shrink:0; }
.source-document dl { margin:var(--space-6) 0 0; }
.source-document dl>div { padding-block:10px; border-top:1px solid var(--border); }
.source-document dt { font-size:var(--type-caption); color:var(--muted); }
.source-document dd { margin:var(--space-1) 0 0; font-size:var(--type-small); font-weight:650; line-height:1.6; }
.flow-connector { display:flex; align-items:center; justify-content:center; color:var(--brand); }
.flow-connector>span { width:24px; height:1px; background:var(--control-border); }
.flow-connector>div { text-align:center; padding:0 9px; }
.flow-connector img { margin:9px auto; }
.flow-connector b { font-size:var(--type-label); font-weight:700; }
.flow-connector>svg { width:24px; height:24px; flex-shrink:0; }
.answer-preview { display:flex; gap:var(--space-3); align-items:flex-start; background:var(--surface); border-radius:16px 16px 16px 3px; padding:var(--space-6); }
.answer-preview p { font-size:var(--type-lead); font-weight:600; }
.answer-symbol { color:var(--brand); }
.answer-symbol svg { width:20px; height:20px; margin-top:3px; }
.branch-line { display:block; width:1px; height:30px; background:var(--control-border); margin-left:34px; }
.team-preview { display:flex; align-items:center; gap:14px; padding:19px 23px; border:1px solid var(--control-border); border-radius:11px; }
.team-preview>svg { width:30px; height:30px; flex-shrink:0; color:var(--brand); }
.team-preview strong { display:block; font-size:var(--type-small); line-height:1.6; }
.team-preview p { font-size:var(--type-caption); color:var(--muted); margin-top:var(--space-1); }
.start-section { padding-bottom:var(--space-18); }
.start-panel { display:grid; grid-template-columns:.95fr 1.05fr; background:var(--brand); border-radius:var(--radius-panel); padding:42px; gap:var(--space-12); align-items:center; }
.start-copy { color:var(--on-brand); }
.start-copy h2 { max-width:390px; }
.start-copy>p { font-size:15px; color:var(--brand-soft); margin-top:18px; max-width:340px; }
.pilot-path { list-style:none; margin-top:var(--space-8); }
.pilot-path li { position:relative; display:flex; align-items:center; gap:15px; font-size:var(--type-body); font-weight:650; padding-bottom:22px; }
.pilot-path li:last-child { padding-bottom:0; }
.pilot-path li:not(:last-child)::after { content:''; position:absolute; left:19px; top:40px; height:22px; width:1px; background:var(--brand-soft); }
.step-icon { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid var(--brand-soft); border-radius:10px; }
.step-icon svg { width:24px; height:24px; }
.start-copy>p.pricing { font-size:var(--type-label); margin-top:28px; }
.contact-panel { background:var(--surface); padding:26px; border-radius:12px; min-width:0; }
/* Shared primitive states. Native disabled controls remain non-interactive. */
.button:disabled,.button[aria-disabled="true"] { opacity:.5; }
.button[aria-disabled="true"] { cursor:not-allowed; }
input:disabled,textarea:disabled { background:var(--surface-subtle); color:var(--muted); cursor:not-allowed; }
input[aria-invalid="true"],textarea[aria-invalid="true"] { border-color:var(--danger); }
.field-help { margin-top:var(--space-2); color:var(--muted); font-size:var(--type-label); }
.field-help--error { color:var(--danger); }
.notice { padding:var(--space-4); border-radius:var(--radius-control); font-size:var(--type-body); line-height:var(--line-body); }
.notice>strong { display:block; margin-bottom:var(--space-1); }
.notice>p { font-size:inherit; line-height:inherit; }
.notice--warning { color:var(--warning); background:var(--warning-soft); }
.notice--human { color:var(--human); background:var(--human-soft); }
.notice--info { color:var(--brand); background:var(--brand-soft); }
.notice--danger { color:var(--danger); background:var(--danger-soft); }
.form-notice { padding:10px var(--space-3); background:var(--warning-soft); color:var(--warning); font-size:var(--type-caption); line-height:1.6; border-radius:6px; margin-bottom:var(--space-2); }
fieldset { margin:0; padding:0; border:0; min-width:0; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
label { display:block; margin:17px 0 7px; font-size:var(--type-label); font-weight:700; }
input,textarea { width:100%; padding:11px var(--space-3); border:1px solid var(--control-border); border-radius:var(--radius-input); background:var(--surface); color:var(--text); font-size:var(--type-small); line-height:1.5; }
input { min-height:44px; }
textarea { min-height:96px; resize:vertical; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
fieldset .button { width:100%; margin-top:14px; }
.required { font-size:10px; color:var(--muted); margin-top:var(--space-2); }
.form-result h3 { margin:14px 0 10px; font-size:18px; line-height:1.5; }
.form-result>p { font-size:var(--type-small); color:var(--muted); }
.form-result dl { font-size:var(--type-small); margin:22px 0; }
.form-result dt { font-size:var(--type-caption); font-weight:700; color:var(--muted); margin-top:15px; }
.form-result dd { margin:5px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.form-result .button { width:100%; }
.faq-list { max-width:860px; margin:var(--space-8) auto 0; }
details { border-bottom:1px solid var(--border); }
summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-6); list-style:none; font-size:var(--type-body); font-weight:700; padding:19px 0; }
summary::-webkit-details-marker { display:none; }
summary>span { font-size:22px; font-weight:400; color:var(--brand); flex-shrink:0; }
details[open] summary>span { transform:rotate(45deg); }
details>p { padding:0 var(--space-8) 22px 0; color:var(--muted); font-size:var(--type-body); max-width:700px; }
.site-footer { display:flex; align-items:center; gap:var(--space-8); border-top:1px solid var(--border); padding-block:27px; color:var(--muted); }
.site-footer .brand img { width:140px; }
.site-footer p { margin-left:auto; font-size:var(--type-caption); }
.site-footer>a:last-child { font-size:var(--type-caption); padding-block:var(--space-3); }
@media (max-width:1050px) {
  .wrap { width:calc(100% - 64px); }
  .business-stage { grid-template-columns:minmax(0,1fr) minmax(0,390px); gap:30px; padding:26px; }
  .business-header { padding-inline:26px; }
  .business-copy h2 { font-size:31px; }
  .service-photo { height:190px; }
  .information-flow { grid-template-columns:1fr 110px 1.08fr; padding:var(--space-8); }
  .flow-connector>span { width:10px; }
  .flow-connector>div { padding-inline:5px; }
  .flow-connector>svg { width:18px; }
  .start-panel { gap:30px; padding:30px; }
  .contact-panel { padding:22px; }
  .form-row { grid-template-columns:1fr; gap:0; }
}
@media (max-width:800px) {
  .site-header { gap:var(--space-5); }
  .site-header nav { gap:var(--space-4); font-size:var(--type-label); }
  .brand img { width:140px; }
  .hero { padding-top:30px; }
  h1 { font-size:48px; }
  .hero-copy { margin-bottom:36px; }
  .business-stage { grid-template-columns:1fr 1.15fr; gap:22px; padding:22px; align-items:start; }
  .business-copy h2 { font-size:28px; }
  .chat-header { padding:17px 14px var(--space-3); gap:9px; }
  .chat-header h2 { font-size:var(--type-body); }
  .chat-header>img { width:24px; height:24px; }
  .chat-log { padding:17px 14px; height:230px; }
  .message { font-size:var(--type-small); }
  .chat-bottom { padding-inline:var(--space-3); }
  #chat-input { font-size:var(--type-small); padding-left:9px; }
  .information-section { padding-block:var(--space-18); }
  .information-flow { grid-template-columns:1fr 90px 1fr; padding:26px; }
  .source-document,.answer-preview { padding:19px; }
  .document-heading { font-size:var(--type-label); gap:6px; }
  .answer-preview p { font-size:var(--type-body); }
  .team-preview { padding:15px; gap:10px; }
  .team-preview>svg { width:24px; }
  .start-panel { grid-template-columns:1fr; gap:30px; }
  .start-copy { display:grid; grid-template-columns:1fr 1fr; column-gap:var(--space-8); align-items:start; }
  .start-copy h2 { grid-column:1; }
  .start-copy>p { grid-column:1; }
  .pilot-path { grid-column:2; grid-row:1 / span 3; margin-top:0; }
  .start-copy>p.pricing { margin-top:var(--space-4); }
  .form-row { grid-template-columns:1fr 1fr; gap:18px; }
}
@media (max-width:620px) {
  .wrap { width:calc(100% - 40px); }
  .site-header { height:82px; justify-content:space-between; }
  .site-header nav { display:none; }
  .hero { padding-top:26px; }
  .hero-copy { text-align:left; margin-bottom:var(--space-8); }
  .status { font-size:var(--type-caption); margin-bottom:var(--space-5); }
  h1 { font-size:42px; line-height:1.1; text-wrap:initial; }
  .intro { font-size:15px; margin-top:var(--space-5); }
  .hero-actions { justify-content:flex-start; gap:10px; margin-top:var(--space-6); }
  .hero-actions .button { font-size:var(--type-label); padding:var(--space-3) 15px; min-height:46px; }
  .browser-frame { border-radius:12px; }
  .browser-bar { font-size:9px; padding-inline:45px var(--space-3); justify-content:flex-end; }
  .browser-dots { left:13px; gap:var(--space-1); }
  .browser-dots i { width:5px; height:5px; }
  .business-header { padding:17px var(--space-4); }
  .business-brand { font-size:var(--type-small); gap:7px; }
  .business-brand svg { width:23px; height:23px; }
  .business-location { font-size:10px; max-width:100px; }
  .business-stage { grid-template-columns:1fr; padding:var(--space-5) 14px; gap:var(--space-6); }
  .business-copy { display:grid; grid-template-columns:1.5fr 1fr; column-gap:15px; align-items:start; padding-inline:2px; }
  .business-copy h2 { grid-column:1; font-size:25px; max-width:230px; }
  .business-copy>p { display:none; }
  .business-cta { grid-column:1; font-size:var(--type-caption); gap:var(--space-2); margin-top:13px; text-align:left; }
  .service-photo { grid-column:2; grid-row:1 / span 3; height:150px; margin:0; object-position:32% center; }
  .service-tags { grid-column:1; gap:6px 10px; font-size:9px; margin-top:var(--space-3); }
  .service-tags svg { display:none; }
  .chat-placement { min-height:0; }
  .chat { border-radius:var(--radius-surface); }
  .chat-header { padding:17px var(--space-4) var(--space-3); }
  .chat-header h2 { font-size:15px; }
  .chat-log { height:230px; padding:18px var(--space-4); }
  .message { font-size:var(--type-body); }
  .message-author { font-size:var(--type-caption); }
  .chat-bottom { padding:0 var(--space-3) var(--space-3); }
  #chat-input { font-size:var(--type-lead); padding-left:9px; }
  .composer { gap:var(--space-1); }
  .composer button { width:38px; height:38px; }
  .chat-footnote { font-size:10px; }
  .demo-footer { display:block; padding:13px 15px; }
  .demo-footer p { font-size:10px; }
  .reset { margin:var(--space-2) 0 -3px -6px; }
  .chat-launcher { font-size:var(--type-small); padding:var(--space-3) 17px; }
  .information-section { padding-block:62px; }
  .section-heading { text-align:left; margin-bottom:27px; }
  h2 { font-size:32px; }
  .section-heading p { margin-top:var(--space-4); font-size:var(--type-body); }
  .information-flow { grid-template-columns:1fr; padding:var(--space-6); }
  .source-document { padding:22px; }
  .source-document dl { margin-top:17px; }
  .source-document dl>div { display:grid; grid-template-columns:70px 1fr; gap:10px; align-items:baseline; }
  .source-document dd { margin:0; font-size:var(--type-label); }
  .document-heading { font-size:var(--type-body); gap:11px; }
  .flow-connector { height:100px; flex-direction:column; }
  .flow-connector>span { height:14px; width:1px; }
  .flow-connector>div { display:flex; align-items:center; gap:var(--space-2); padding:0; }
  .flow-connector img { width:26px; height:26px; margin:7px; }
  .flow-connector>svg { transform:rotate(90deg); width:22px; height:22px; }
  .answer-preview { padding:var(--space-5); }
  .answer-preview p { font-size:15px; }
  .team-preview { padding:17px; }
  .start-section { padding-bottom:42px; }
  .start-panel { padding:26px var(--space-5) var(--space-5); border-radius:15px; gap:var(--space-6); }
  .start-copy { display:block; }
  .start-copy>p { font-size:var(--type-body); margin-top:var(--space-4); }
  .pilot-path { margin-top:var(--space-6); }
  .pilot-path li { font-size:var(--type-small); padding-bottom:var(--space-4); }
  .pilot-path li:not(:last-child)::after { height:16px; }
  .start-copy>p.pricing { font-size:var(--type-caption); margin-top:22px; }
  .contact-panel { padding:18px; }
  .form-row { grid-template-columns:1fr; gap:0; }
  input,textarea { font-size:var(--type-lead); }
  .form-notice { font-size:10px; }
  .faq-list { margin-top:18px; padding-inline:var(--space-1); }
  summary { font-size:var(--type-small); padding-block:17px; }
  details>p { font-size:var(--type-small); padding-right:15px; }
  .site-footer { flex-wrap:wrap; gap:var(--space-3) var(--space-4); padding-block:22px; }
  .site-footer>a:last-child { margin-left:auto; }
}
@media (max-width:370px) {
  .wrap { width:calc(100% - 32px); }
  h1 { font-size:36px; }
  .hero-actions { align-items:stretch; flex-direction:column; }
  .business-copy h2 { font-size:22px; }
  .service-photo { height:145px; }
  .business-stage { padding-inline:10px; }
  .business-header { padding-inline:13px; }
  .business-brand { font-size:var(--type-label); }
  .business-location { max-width:85px; font-size:9px; }
  .chat-header { padding-inline:13px; }
  .chat-log { padding-inline:13px; }
  .chat-header h2 { font-size:var(--type-body); }
  .information-flow { padding:18px; }
  .source-document { padding:17px; }
  .start-panel { padding:var(--space-6) var(--space-4) var(--space-4); }
  .contact-panel { padding:15px; }
}
@media (prefers-reduced-motion:reduce) {
  :root { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; }
}

.contact-email a { color:var(--on-brand); text-underline-offset:4px; }
.form-result .button + .button { margin-top:12px; }
