:root {
  --dark:#0b090d; --dark-surface:#161217; --paper:#f9f8f9; --ink:#171318;
  --peach:#f7b797; --lilac:#c3abdf; --accent:#885973;
  --gradient:linear-gradient(112deg,#fac6a8 0%,#edb2a7 46%,#c5afe2 100%);
  --line:#e9e4e8; --wrap:1200px; --narrow:980px;
  --hatch:repeating-linear-gradient(45deg,transparent 0 3px,#4e2b5910 3px 4px,transparent 4px 5px);
  --dark-dots:radial-gradient(#dfb7e52f .55px,transparent .8px);
  --text-small:clamp(11px,.97222vw,14px);
  --text-medium:clamp(13px,1.11111vw,16px);
  --text-large:clamp(14px,1.25vw,18px);
  font-family:Geist,Arial,sans-serif;
  line-height:1.4; letter-spacing:-.007em;
  color:#faf8fb; background:var(--dark); font-synthesis:none;
}
*,*::before,*::after { box-sizing:border-box }
[hidden] { display:none !important }
html { scroll-behavior:smooth; scroll-padding-top:88px }
body { margin:0; min-width:0 }
a { color:inherit; text-decoration:none }
button { color:inherit; font:inherit }
img { display:block; max-width:100% }
h1,h2,h3,p,figure,blockquote { margin:0 }
ul { margin:0; padding:0; list-style:none }
:focus-visible { outline:2px solid #9767ae; outline-offset:4px }
.wrap,.narrow { width:min(var(--wrap),calc(100% - 48px)); margin-inline:auto }
.narrow { width:min(var(--narrow),calc(100% - 48px)) }
.icon { display:inline-block; width:1em; height:1em; flex:none; vertical-align:-.15em; fill:none; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round }
.skip-link { position:fixed; z-index:20; top:8px; left:8px; padding:10px 14px; background:#fff; color:#111; transform:translateY(-160%) }
.skip-link:focus { transform:none }
.site-header { position:fixed; inset:0 0 auto; z-index:10; color:#faf8fb; background:#0b090dd9; backdrop-filter:blur(16px) }
.site-header.on-light { color:var(--ink); background:#f9f8f9e8 }
.nav { min-height:84px; display:flex; align-items:center; gap:26px; position:relative }
.brand { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; font:600 22px/1.1 "Instrument Sans",Arial,sans-serif; letter-spacing:-.035em; align-self:start }
.nav .brand { align-self:center }
.brand img { border-radius:5px }
.main-menu { flex:1; display:flex; align-items:center; gap:8px; font-size:var(--text-small); letter-spacing:normal }
.main-menu > a {
  padding:7px 11px; border-radius:13px; white-space:nowrap;
  transition:background-color .18s ease,color .18s ease;
}
.main-menu > a:hover,.main-menu > a:focus-visible { background:#ffffff13 }
.on-light .main-menu > a:hover,.on-light .main-menu > a:focus-visible { background:#2117270d }
.faq-list summary { cursor:pointer; list-style:none }
summary::-webkit-details-marker { display:none }
.menu-toggle {
  display:none; border:1px solid #ffffff16; border-radius:14px; background:#fff1;
  box-shadow:inset 0 1px #ffffff0e,0 4px 12px #0003;
  transition:background-color .18s ease,color .18s ease;
}
.menu-toggle:hover { background:#bca1c62b }
.on-light .menu-toggle { border-color:#1e132016; background:#1e132008; box-shadow:inset 0 1px #fff,0 3px 8px #33233d0d }

.hero { position:relative; isolation:isolate; text-align:center; padding:144px 0 90px }
.hero::before {
  content:""; position:absolute; z-index:-1; inset:120px 0 auto; height:485px;
  background:radial-gradient(ellipse at 50% 52%,#b582b313,transparent 65%);
}
.hero-inner { position:relative }
.hero-inner::before,.hero-inner::after {
  content:""; position:absolute; z-index:-1; inset:0 0 auto; height:465px; pointer-events:none;
}
.hero-inner::before {
  background:radial-gradient(#dfb7e554 .65px,transparent .95px) center/4px 4px;
  mask-image:radial-gradient(ellipse 22% 70% at 24% 54%,#000 12%,transparent 100%),
             radial-gradient(ellipse 22% 70% at 76% 54%,#000 12%,transparent 100%),
             radial-gradient(ellipse 24% 47% at 50% 65%,#0009 10%,transparent 100%);
}
.hero-inner::after {
  border-inline:1px solid #eebde338;
  background:linear-gradient(to right,transparent calc(6% - 1px),#eebde329 6%,transparent calc(6% + 1px),transparent calc(94% - 1px),#eebde329 94%,transparent calc(94% + 1px));
  mask-image:linear-gradient(transparent,#000 30%,#000 60%,transparent);
}
.proof-pill { display:inline-flex; gap:10px; align-items:center; padding:5px 13px 5px 7px; font-size:var(--text-small); font-weight:500; background:#ffffff11; border:1px solid #ffffff10; border-radius:999px; min-height:34px; box-shadow:inset 0 1px #ffffff12,inset 0 0 12px #ffffff09,0 5px 14px #0006,0 0 20px #ba89b31c }
.avatar-stack { display:flex; padding-left:2px }
.avatar-stack img { width:21px; height:21px; border-radius:50%; object-fit:cover; border:1px solid var(--dark) }
.avatar-stack img + img { margin-left:-6px }
h1,h2 { font-family:"Instrument Sans",Arial,sans-serif; font-weight:600; letter-spacing:-.042em; line-height:1.1; text-wrap:balance }
.hero h1 { margin:17px auto 19px; font-size:clamp(38px,4.72222vw,68px); font-weight:550; letter-spacing:-.025em; line-height:1.04; max-width:1060px }
.hero h1 em { font-style:normal; color:var(--peach); background:var(--gradient); background-clip:text; -webkit-text-fill-color:transparent }
.hero-intro { font-size:var(--text-large); line-height:1.4; color:#c4bdc6 }
.primary { display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:7px 8px 7px 17px; min-height:48px; border:1px solid #fff6; border-radius:17px; background:var(--gradient); box-shadow:inset 0 0 8px #fff4,0 6px 36px #e0a4c337; color:#271825; font-size:var(--text-medium); font-weight:600; white-space:nowrap; transition:transform .18s,box-shadow .18s }
.nav-cta.primary { min-height:46px; padding:7px 9px 7px 17px; gap:13px; border-radius:15px; font-size:14px; box-shadow:inset 0 0 8px #fff4,0 4px 16px #e0a4c32b }
.nav-cta.primary > span { width:30px; height:30px; flex:none; border-radius:9px }
.hero .primary { margin-top:32px; min-width:clamp(216px,16vw,232px); padding-left:21px; gap:17px; font-size:clamp(15.5px,1.2vw,17px) }
.primary:hover { transform:translateY(-2px); box-shadow:inset 0 0 8px #fff5,0 8px 35px #e0a4c364 }
.primary > span { width:32px; height:32px; border:1px solid #fff6; background:#fff4; display:grid; place-items:center; border-radius:11px }
.primary > span::before { content:""; border:solid currentColor; border-width:0 1.5px 1.5px 0; width:7px; height:7px; transform:translateX(-1px) rotate(-45deg) }
.home-film { width:min(var(--narrow),100%); margin:60px auto 0; border:1px solid #ffffff17; border-radius:36px; background:#fff1; padding:10px }
.film-screen { position:relative; aspect-ratio:16/9; border-radius:26px; overflow:hidden; background:#221925 }
.film-screen iframe { position:absolute; inset:0; width:100%; height:100%; border:0 }
.film-sound,.film-fallback { position:absolute; right:16px; top:16px; border:1px solid #fff5; border-radius:999px; background:#221a24cf; padding:6px 11px; cursor:pointer; font-size:14px }
.film-sound,.film-fallback { display:inline-flex; align-items:center; gap:6px }
.home-film.is-ready .film-fallback { display:none }
.areas { padding:32px 0 36px; color:#c4bdc6 }
.areas ul { display:flex; justify-content:center; flex-wrap:wrap; gap:23px; margin-top:13px; color:#fff }
.areas li .icon { color:var(--peach); margin-right:4px }
.featured-stories,.story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; text-align:left }
.quote { display:flex; flex-direction:column; gap:16px; min-width:0; border:1px solid #ffffff14; border-radius:26px; background:linear-gradient(135deg,#201a23,#141016); padding:20px; box-shadow:inset 0 1px 14px #fff1 }
.quote figcaption { display:flex; gap:12px; align-items:center; font-size:var(--text-small); line-height:1.4 }
.quote figcaption img,.initials { width:48px; height:48px; flex:0 0 48px; border-radius:12px; object-fit:cover }
.initials { display:grid; place-items:center; background:#efdeeb; font-weight:650 }
.quote figcaption strong,.quote figcaption div span { display:block }
.quote figcaption div span { color:#b3aab6; margin-top:3px }
.quote blockquote { font-size:var(--text-medium); line-height:1.4 }
.quote p { margin-top:auto; padding-top:12px; color:var(--peach); border-top:1px solid #ffffff17; font-size:14px }

.light { background:var(--paper); color:var(--ink); margin:0 8px; border-radius:32px; overflow:clip }
.feature,.process,.faq,.stories { padding:100px 0 75px }
.feature { --feature-width:min(var(--wrap),84%); padding-bottom:0 }
#delivery { --feature-width:min(1056px,74%) }
.feature > .wrap {
  display:flow-root; width:var(--feature-width);
  border-inline:1px solid var(--line);
  border-image:linear-gradient(transparent,var(--line) 60%) 1;
}
.feature-band {
  display:grid; grid-template-columns:minmax(0,1fr) var(--feature-width) minmax(0,1fr);
  border-block:1px solid var(--line);
}
.feature-band::before,.feature-band::after { content:""; background:var(--hatch) }
.feature-band > * { min-width:0; border-inline:1px solid var(--line) }
.feature-band-points { border-top:0 }
.feature-band-points > .feature-points { margin-top:0; padding:16px 12px }
#delivery .delivery-demo { width:100%; margin:0; border-block:0; border-radius:0 }
.section-heading { text-align:center; max-width:720px; margin:0 auto 60px }
.tag { display:inline-block; font:400 var(--text-small)/1.4 "Geist Mono",monospace; color:#504652; letter-spacing:-.007em }
.tag::before,.tag::after { color:var(--accent) }
.tag::before { content:"[ " }
.tag::after { content:" ]" }
h2 { font-size:clamp(32px,3.61111vw,52px) }
.light h2 { margin:20px 0 16px }
.light .section-heading > p,.process-heading p,.faq-layout > div > p { color:#534a56; font-size:var(--text-medium); line-height:1.4 }
.section-heading .primary { margin-top:28px }
.feature-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px }
.feature-card { border:1px solid var(--line); background:#fff; border-radius:23px; overflow:hidden }
.card-art { position:relative; min-height:325px; padding:36px clamp(20px,4vw,60px); display:grid; align-items:center; background:radial-gradient(ellipse at 75% 15%,#f3ddee,#f9f0f1 60%,#f9f7fa); overflow:hidden }
.discovery {
  background:repeating-radial-gradient(circle at 50% 77%,transparent 0 30px,#9d68962a 31px 32px,transparent 33px 49px),
             radial-gradient(ellipse at 50% 30%,#f2deec,#fbf6fa 74%);
}
.outreach,.workflow { background:radial-gradient(ellipse at 38% 40%,#eadcf6,#f7f0fa 65%,#fcf8fa) }
.mini-app,.demo-window,.prompt { background:#fff; border:1px solid #e9e2eb; border-radius:16px; padding:15px; box-shadow:0 10px 28px #63426516 }
.app-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; border-bottom:1px solid #eee9ef; padding:3px 0 13px; font-size:14px }
.app-bar span { color:#6b576e; font-size:11px }
.chip-line { display:flex; flex-wrap:wrap; gap:6px; padding:12px 0 9px }
.chip-line span,.record > span { padding:3px 8px; border-radius:6px; font-size:11px; background:#f4edf6; color:#664a6b }
.record { display:flex; align-items:center; gap:8px; font-size:13px; border-bottom:1px solid #f2eef3; padding:7px 0 }
.record:last-child { border:0 }
.record i { display:grid; place-items:center; flex:0 0 28px; height:28px; border-radius:7px; background:#f4e3ed; color:#775568; font-style:normal }
.record > span { margin-left:auto; white-space:nowrap }
.record small,.document-grid small { display:block; color:#6c626e; margin-top:3px }
.floating-note { position:absolute; bottom:22px; right:18px; background:#2c2032; color:#fff; padding:9px 13px; border-radius:9px; box-shadow:0 6px 18px #4c36553b; font-size:13px }
.steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:14px 0 }
.steps div { background:#f8f3fb; padding:9px 6px; text-align:center; border-radius:8px; font-size:12px }
.steps b { color:#8b637c; display:block }
.message { border:1px solid #f0e9f0; padding:11px 12px; border-radius:9px; font-size:13px }
.message p { margin:5px 0 9px; color:#5f5364; line-height:1.35 }
.message span { color:#775077 }
.card-copy { padding:25px 28px 28px }
.card-copy h3 { font-size:var(--text-large); font-weight:500; line-height:1.4 }
.card-copy p { margin-top:8px; font-size:var(--text-medium); color:#5b515e; line-height:1.4 }
.feature-points { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); text-align:center; gap:10px; margin-top:22px; color:#66516a; font-size:14px }
.delivery-demo { width:min(1056px,100%); margin:auto; border:1px solid var(--line); border-radius:23px; overflow:hidden }
.demo-content {
  padding:clamp(18px,5vw,72px);
  background:linear-gradient(#7d578719 1px,transparent 1px) center/100% 48px,
             linear-gradient(90deg,#7d578719 1px,transparent 1px) center/68px 100%,
             radial-gradient(ellipse at 18% 60%,#eddaf4,transparent 58%),
             radial-gradient(ellipse at 84% 30%,#f9e1d6,transparent 55%),#faf4f8;
}
.demo-window { min-height:265px; max-width:750px; margin:auto; padding:20px }
.board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:20px 0 4px }
.board article { background:#faf5fb; border:1px solid #eee2ef; padding:15px 12px; border-radius:12px }
.board h3 { font-size:15px }
.board p { font-size:13px; line-height:1.4; margin:6px 0 12px; color:#625569 }
.board small { font-size:11px; color:#755479 }
.board small .icon,.message .icon,.floating-note .icon,.feature-points .icon { margin-right:3px }
.demo-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:#fff; padding:19px }
.demo-tabs button { padding:13px 21px; display:grid; text-align:left; gap:6px; border:0; border-left:2px solid var(--line); background:transparent; cursor:pointer; color:#645967 }
.demo-tabs button[aria-selected=true] { color:var(--ink); border-color:#bb85a6 }
.demo-tabs button:hover { background:#f9f4f9 }
.demo-tabs button > .icon { color:#865b7e }
.demo-tabs button strong { font-size:var(--text-medium); font-weight:500 }
.demo-tabs button small { font-size:14px; line-height:1.4 }
.document-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px }
.document-grid > div { background:#fff; border:1px solid #e9dfeb; border-radius:13px; padding:16px; color:#795576; box-shadow:0 6px 15px #6e537010 }
.document-grid .icon,.roadmap-items .icon { width:17px; height:17px }
.document-grid b { display:block; margin-top:6px; color:var(--ink); font-size:14px }
.process-heading { display:flex; align-items:end; justify-content:space-between; gap:22px }
.process-heading p { max-width:565px }
.secondary { padding:13px 18px; white-space:nowrap; border:1px solid var(--line); border-radius:15px; background:#eeeaef; font-weight:600; cursor:pointer; display:inline-block }
.secondary:hover { background:#e8deeb }
.roadmap-demo { position:relative; isolation:isolate; max-width:555px; margin:65px auto 20px }
.roadmap-demo::before,.roadmap-demo::after {
  content:""; position:absolute; z-index:-1; pointer-events:none;
}
.roadmap-demo::before {
  inset:-55px 15% -45px; border-inline:1px solid #6a467525;
  mask-image:linear-gradient(transparent,#000 25%,#000 76%,transparent);
}
.roadmap-demo::after {
  top:50%; left:50%; width:min(90vw,960px); height:1px; transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,#6a467535 24%,#6a467535 76%,transparent);
}
.roadmap-items { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px }
.roadmap-items > span { padding:12px 8px; background:#fff; border:1px solid var(--line); border-radius:12px; color:#805479 }
.roadmap-items b,.roadmap-items small { display:block; margin-top:6px; font-size:12px; color:#4f4254 }
.roadmap-items small { font-size:11px; color:#726377 }
.prompt { margin-top:8px; padding:20px }
.prompt > div { margin-top:22px; display:flex; justify-content:space-between; align-items:center }
.prompt > div span { display:inline-flex; align-items:center; gap:5px; background:#f3eaf5; padding:4px 8px; border-radius:20px; font-size:13px }
.prompt a { display:grid; place-items:center; width:34px; height:34px; background:var(--gradient); border-radius:50%; font-size:20px }
.roadmap-steps { margin-top:30px; text-align:center; font-size:14px; color:#635768 }
.roadmap-steps .icon { color:#865b7e; margin:0 6px }
.faq .tag,.stories .tag { color:#c4b7c7 }
.faq .tag::before,.faq .tag::after,.stories .tag::before,.stories .tag::after { color:var(--peach) }
.faq h2,.stories h2 { margin:20px 0 16px }
.faq-layout { display:grid; grid-template-columns:.9fr 1.2fr; gap:60px }
.faq-layout p a,.faq-list p a { text-decoration:underline; text-underline-offset:3px }
.faq-list details { border-bottom:1px dashed #e9d2e626 }
.faq-list summary { padding:20px 34px 20px 0; position:relative; font-size:var(--text-medium); font-weight:500 }
.faq-list summary::after { content:"+"; position:absolute; top:18px; right:4px; font-weight:400 }
.faq-list details[open] summary::after { content:"−" }
.faq-list details p { padding:0 28px 20px 0; color:#c4bdc6; line-height:1.5 }
.stories { text-align:center; padding-top:70px }
.stories .section-heading > p,.faq-layout > div > p { color:#c4bdc6 }
.stories .section-heading { margin-bottom:42px }
.story-grid .quote { justify-content:space-between }
.story-grid .initials { color:#4c304a }
.stories-toggle { margin-top:22px; border-color:#fff2; background:#fff1 }
.stories-toggle:hover { background:#fff2 }
.closing {
  position:relative; isolation:isolate; text-align:center; padding:104px 0 0;
  background:radial-gradient(ellipse at 50% 70%,#251829,transparent 66%);
}
.closing::before {
  content:""; position:absolute; z-index:-1; inset:0 max(0px,calc((100% - 1200px)/2)); pointer-events:none;
  background:var(--dark-dots) center/4px 4px;
  mask-image:radial-gradient(ellipse 24% 61% at 24% 62%,#000 8%,transparent 100%),
             radial-gradient(ellipse 24% 61% at 76% 62%,#000 8%,transparent 100%);
}
.closing .primary { margin:25px 0 47px }
.closing-demo { max-width:880px; margin:auto; padding:20px 20px 0; display:grid; grid-template-columns:65px minmax(0,1fr); border:1px solid #ffffff1c; border-bottom:0; border-radius:10px 10px 0 0; text-align:left; background:#1a141c }
.closing-sidebar { display:flex; flex-direction:column; align-items:center; gap:17px; font-size:10px; color:#d7cbd9; padding:15px 5px }
.closing-screen { background:#fff; color:var(--ink); border-radius:9px 9px 0 0; padding:15px }
.closing-record { display:grid; grid-template-columns:1.5fr .6fr 1.2fr; gap:10px; border-top:1px solid var(--line); padding:12px 4px; font-size:13px; line-height:1.3 }
.footer { padding:56px 0 26px }
.footer-grid { display:grid; grid-template-columns:1.3fr repeat(3,1fr); gap:22px }
.footer-grid > div { display:grid; align-content:start; gap:11px }
.footer h2 { font:600 var(--text-small)/1.4 Geist,Arial,sans-serif; letter-spacing:0 }
.footer a:not(.brand),.footer-bottom { font-size:14px; color:#c1b7c5 }
.footer a:hover { color:#fff }
.footer-bottom { display:flex; gap:17px; border-top:1px solid #ffffff1c; padding-top:22px; margin-top:40px }
.footer-bottom span { margin-right:auto }

@media (min-width:901px) {
  .nav { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) }
  .nav .brand { justify-self:start }
  .nav-cta { justify-self:end }
}
@media (max-width:1060px) {
  .nav { gap:16px }
  .main-menu { gap:4px }
}
@media (max-width:900px) {
  .nav { min-height:70px; gap:8px }
  .nav .brand { margin-right:auto }
  .nav-cta.primary { padding:6px 12px; font-size:13px; min-height:44px }
  .nav-cta.primary > span { display:none }
  .menu-toggle { position:relative; z-index:2; display:grid; place-items:center; width:40px; height:40px; padding:0; cursor:pointer }
  .menu-toggle span { width:17px; height:7px; border-block:1.5px solid currentColor }
  .menu-toggle[aria-expanded=true] { color:#fff; background:#161218 }
  .menu-toggle[aria-expanded=true] span { position:relative; height:16px; border:0 }
  .menu-toggle[aria-expanded=true] span::before,.menu-toggle[aria-expanded=true] span::after {
    content:""; position:absolute; top:7px; left:0; width:17px; height:1.5px; background:currentColor; transform:rotate(45deg)
  }
  .menu-toggle[aria-expanded=true] span::after { transform:rotate(-45deg) }
  .main-menu {
    display:grid; position:absolute; top:calc(100% - 5px); right:0; z-index:1; padding:6px;
    width:min(216px,100%); max-height:calc(100dvh - 78px); gap:2px; align-content:start;
    color:var(--ink); background:var(--paper); border:1px solid #33243c14;
    border-radius:16px; box-shadow:0 12px 32px #0b081073; overflow:auto; overscroll-behavior:contain; font-size:14px;
    opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-6px);
    transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s;
  }
  .main-menu.is-open { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); transition-delay:0s }
  .main-menu > a { display:block; padding:12px 10px; border-radius:9px }
  .main-menu > a:hover,.main-menu > a:focus-visible { background:#3020370b }
  body:has(.main-menu.is-open) { overflow:hidden }
  .hero { padding-top:120px }
}
@media (max-width:660px) {
  :root { --text-small:14px; --text-medium:16px; --text-large:18px }
  html { scroll-padding-top:75px }
  .wrap,.narrow { width:calc(100% - 36px) }
  .nav .brand { font-size:clamp(17px,5vw,22px); gap:6px }
  .nav .brand img { width:21px; height:21px }
  .desktop-break { display:none }
  .hero { padding:108px 0 55px }
  .hero h1 { font-size:38px; margin:17px auto 16px }
  .proof-pill { font-size:12px }
  /* Keep the copy and CTA inside the decorative rails on small screens. */
  .hero-intro { width:min(32ch,calc(88% - 24px)); margin-inline:auto; font-size:16px; text-wrap:pretty }
  .hero .primary { margin-top:24px; width:auto; min-width:0; max-width:calc(88% - 24px); padding-left:17px; gap:12px; white-space:normal }
  .hero .primary > span { flex-shrink:0 }
  .home-film { margin-top:40px; padding:5px; border-radius:20px }
  .film-screen { border-radius:15px }
  .film-sound,.film-fallback { top:8px; right:8px; min-height:35px; font-size:12px }
  .areas { padding:23px 0 28px; font-size:14px }
  .areas ul { gap:13px }
  .featured-stories { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; padding:0 0 9px }
  .featured-stories .quote { flex:0 0 min(82%,320px); scroll-snap-align:start }
  .light { margin:0 4px; border-radius:21px }
  .feature,.process,.faq,.stories { padding:61px 0 48px }
  .feature,#delivery { --feature-width:calc(100% - 28px); padding-bottom:0 }
  .feature-band-points > .feature-points { padding:11px 6px }
  .section-heading { margin-bottom:34px }
  .light h2 { margin:14px 0 }
  .light .section-heading > p,.process-heading p,.faq-layout > div > p { font-size:16px }
  .feature-pair,.faq-layout,.story-grid { grid-template-columns:1fr }
  .faq-layout { gap:25px }
  .card-art { min-height:255px; padding:24px 15px }
  .card-copy { padding:21px }
  .feature-points { grid-template-columns:repeat(2,minmax(0,1fr)); font-size:13px }
  .demo-content,.demo-window { padding:10px }
  .demo-window { min-height:0 }
  .board { gap:5px; padding-top:10px }
  .board article { padding:8px 5px; overflow-wrap:anywhere }
  .board h3 { font-size:13px }
  .board p,.board small { font-size:11px }
  .demo-tabs { padding:8px 4px }
  .demo-tabs button { padding:8px 6px; overflow-wrap:anywhere }
  .demo-tabs button strong { font-size:13px }
  .demo-tabs button small { font-size:11px }
  .process-heading { display:grid }
  .process-heading > a { justify-self:start }
  .roadmap-demo { margin-top:30px }
  .roadmap-items { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .prompt { padding:13px }
  .roadmap-steps { font-size:12px }
  .roadmap-steps .icon { margin:0 2px }
  .closing { padding-top:66px }
  .closing-demo { grid-template-columns:1fr; padding:7px 7px 0 }
  .closing-sidebar { display:none }
  .closing-screen { padding:9px }
  .closing-record { font-size:11px; gap:5px }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .footer-grid .brand { grid-column:1 / -1 }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto }
  *,*::before,*::after { transition:none !important }
}
