:root {
    --ink: #171717;
    --paper: #f3f1eb;
    --white: #fff;
    --quiet: #6e6d69;
    --line: rgba(23,23,23,.16);
    --accent: #dcff63;
    --serif: Georgia, 'Times New Roman', serif;
    --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.site-header { height: 92px; padding: 0 clamp(22px,4vw,72px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid var(--line); position: relative; z-index: 10; }
.wordmark { font: 34px/1 var(--serif); letter-spacing: -.045em; }
.site-header nav { display: flex; gap: 34px; font-size: 14px; }
.site-header nav a:hover { opacity: .55; }
.header-download { justify-self: end; font-size: 14px; font-weight: 700; display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.header-download span { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--ink); border-radius: 50%; }
.menu-toggle { display: none; background: none; border: 0; width: 40px; height: 40px; padding: 8px; }
.menu-toggle span { display: block; height: 1px; margin: 7px 0; background: currentColor; }
.hero { min-height: calc(100vh - 92px); display: grid; grid-template-columns: minmax(360px,.82fr) minmax(500px,1.18fr); border-bottom: 1px solid var(--line); }
.hero-copy { padding: clamp(72px,9vw,150px) clamp(30px,6vw,106px) 80px clamp(30px,4vw,72px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.kicker { margin: 0 0 28px; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.hero h1 { margin: 0; max-width: 720px; font-size: clamp(64px,7.2vw,126px); font-weight: 650; line-height: .83; letter-spacing: -.075em; }
.hero h1 em { font-family: var(--serif); font-weight: 400; }
.hero-lede { max-width: 560px; margin: 46px 0 40px; color: var(--quiet); font-size: clamp(18px,1.35vw,23px); line-height: 1.55; }
.hero-actions { display: flex; gap: 26px; align-items: center; flex-wrap: wrap; }
.button { min-height: 56px; padding: 0 26px; border: 0; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 15px; color: #fff; background: var(--ink); font-size: 15px; font-weight: 750; }
.button:hover { transform: translateY(-2px); }
.text-link { padding: 16px 0; border-bottom: 1px solid var(--ink); font-weight: 650; font-size: 14px; }
.text-link span { margin-left: 12px; }
.hero-visual { min-width: 0; padding: clamp(36px,5vw,88px); background: var(--ink); color: #fff; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.demo-window { aspect-ratio: 1.18; max-height: 720px; padding: clamp(26px,3vw,56px); border-radius: 38px; color: var(--ink); background: #e1e1e1; transform: rotate(1.4deg); box-shadow: 0 45px 110px rgba(0,0,0,.35); }
.demo-brand { height: 13%; font: clamp(22px,2vw,34px)/1 var(--serif); }
.demo-brand small { margin-left: 8px; font: 700 9px/1 var(--sans); letter-spacing: .17em; }
.demo-shell { height: 87%; display: grid; grid-template-columns: 54px 1fr; gap: 14px; }
.demo-shell aside { padding: 24px 0; display: flex; flex-direction: column; align-items: center; gap: 25px; background: #181818; border-radius: 28px; }
.demo-shell aside i { width: 12px; height: 12px; border: 1px solid #777; border-radius: 50%; }
.demo-shell aside i:nth-child(2) { background: var(--accent); border-color: var(--accent); }
.demo-shell section { min-width: 0; padding: clamp(18px,2.4vw,38px); background: #f8f8f8; border-radius: 28px; }
.demo-shell section > header { display: flex; justify-content: space-between; padding-bottom: 24px; border-bottom: 1px solid #ddd; }
.demo-shell section > header b { font-size: clamp(20px,2vw,32px); }
.demo-shell section > header span { color: #777; font-size: 11px; }
.demo-stats { margin-top: 20px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.demo-stats article { min-width: 0; padding: clamp(14px,2vw,28px); background: #e8e8e8; border-radius: 18px; }
.demo-stats small { display: block; color: #777; }
.demo-stats strong { display: block; margin-top: 18px; font: clamp(19px,2.4vw,42px)/1 var(--serif); }
.demo-list { margin-top: 18px; overflow: hidden; background: white; border-radius: 18px; }
.demo-list span { display: block; height: clamp(36px,5vw,72px); border-bottom: 1px solid #eee; }
.demo-list span:last-child { border: 0; }
.visual-caption { margin: 30px 0 0; align-self: flex-end; color: #aaa; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.statement { min-height: 80vh; padding: 13vw 7vw; display: flex; flex-direction: column; justify-content: center; border-bottom: 1px solid var(--line); }
.statement p { margin: 0 0 40px; color: var(--quiet); font-size: 16px; }
.statement h2 { max-width: 1300px; margin: 0; font: clamp(62px,9.5vw,174px)/.83 var(--serif); letter-spacing: -.06em; }
.platform { padding: clamp(90px,10vw,170px) clamp(22px,5vw,84px); }
.section-intro { display: grid; grid-template-columns: 1fr 2fr 1fr; gap: 40px; align-items: end; padding-bottom: 80px; }
.section-intro .kicker { align-self: start; }
.section-intro h2 { margin: 0; font-size: clamp(50px,5.5vw,94px); line-height: .95; letter-spacing: -.06em; }
.section-intro > p:last-child { color: var(--quiet); line-height: 1.6; }
.feature-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.feature-grid article { min-height: 360px; padding: clamp(28px,3vw,54px); border: 1px solid var(--line); margin: 0 -1px -1px 0; display: flex; flex-direction: column; }
.feature-grid article > span { color: var(--quiet); font-size: 12px; }
.feature-grid h3 { margin: auto 0 16px; font: clamp(40px,4vw,72px)/.95 var(--serif); letter-spacing: -.04em; }
.feature-grid p { max-width: 500px; margin: 0; color: var(--quiet); font-size: 16px; line-height: 1.55; }
.feature-grid .feature-large { grid-column: span 2; min-height: 570px; position: relative; overflow: hidden; }
.stack-art { position: absolute; width: 54%; height: 68%; top: 42px; right: 42px; }
.stack-art i { position: absolute; inset: 0; border: 1px solid var(--ink); background: var(--paper); transform: translate(-16%,14%); }
.stack-art i:nth-child(2) { transform: translate(-8%,7%); background: #e0ddd3; }
.stack-art i:nth-child(3) { transform: none; background: #fff; }
.feature-large h3, .feature-large p { max-width: 36%; position: relative; z-index: 2; }
.feature-dark { color: white; background: var(--ink); }
.feature-dark p, .feature-dark > span { color: #aaa; }
.workflow { padding: clamp(90px,11vw,190px) clamp(22px,6vw,105px); color: white; background: #20201f; }
.workflow > .kicker { color: var(--accent); }
.workflow-heading { display: grid; grid-template-columns: 2fr 1fr; gap: 80px; align-items: end; margin-bottom: 90px; }
.workflow-heading h2 { margin: 0; font: clamp(62px,7.2vw,126px)/.87 var(--serif); letter-spacing: -.06em; }
.workflow-heading p { max-width: 500px; color: #aaa; font-size: 18px; line-height: 1.65; }
.workflow ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid #555; }
.workflow li { display: grid; grid-template-columns: 10% 42% 1fr; gap: 30px; padding: 32px 0; border-bottom: 1px solid #555; align-items: start; }
.workflow li span { color: var(--accent); font-size: 12px; }
.workflow li strong { font-size: clamp(22px,2vw,32px); }
.workflow li small { color: #aaa; font-size: 15px; line-height: 1.55; }
.ownership { padding: clamp(90px,12vw,210px) clamp(22px,7vw,124px); display: grid; grid-template-columns: 1.35fr .65fr; gap: 10vw; border-bottom: 1px solid var(--line); }
.ownership h2 { margin: 0; font: clamp(58px,7vw,120px)/.88 var(--serif); letter-spacing: -.06em; }
.ownership-copy { align-self: end; }
.ownership-copy > p { color: var(--quiet); font-size: 20px; line-height: 1.55; }
.ownership ul { margin: 48px 0 0; padding: 0; list-style: none; }
.ownership li { padding: 18px 0; border-top: 1px solid var(--line); font-size: 14px; line-height: 1.4; }
.download { padding: clamp(90px,11vw,190px) clamp(22px,7vw,124px); display: grid; grid-template-columns: 1fr 1fr; gap: 10vw; background: var(--surface); }
.download h2 { margin: 0; font: clamp(58px,7vw,120px)/.85 var(--serif); letter-spacing: -.06em; }
.download-copy > p:not(.kicker) { max-width: 600px; margin: 40px 0; font-size: 18px; line-height: 1.6; }
.requirements { font-size: 14px; font-weight: 700; border-bottom: 1px solid var(--ink); padding-bottom: 8px; }
.requirements span { margin-left: 12px; }
.release-card { min-height: 500px; padding: clamp(34px,5vw,80px); border-radius: 42px; color: #fff; background: var(--ink); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.release-version span { display: block; color: #aaa; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }
.release-version strong { display: block; margin: 14px 0; font: clamp(48px,5vw,84px)/1 var(--serif); }
.release-version small { color: #aaa; }
.button-light { margin-top: 65px; color: var(--ink); background: #fff; }
.release-card > p { margin: 24px 0 0; color: #777; font-size: 11px; }
.release-card code { font: inherit; }
.site-footer { min-height: 260px; padding: 60px clamp(22px,4vw,72px); color: #fff; background: var(--ink); display: grid; grid-template-columns: 1fr 1fr auto; gap: 30px; align-items: start; }
.site-footer p { margin: 8px 0; color: #888; font-size: 13px; }
.site-footer nav { display: flex; gap: 28px; font-size: 13px; }
.site-footer small { grid-column: 3; color: #777; }
.document-page .site-header { background: var(--paper); }
.document-page main { min-height: calc(100vh - 352px); padding: clamp(70px,10vw,160px) 22px; }
.document-page article { max-width: 850px; margin: auto; }
.document-page h1 { margin: 0 0 50px; font: clamp(56px,8vw,110px)/.88 var(--serif); letter-spacing: -.055em; }
.document-page h2 { margin: 70px 0 20px; font-size: 30px; }
.document-page p, .document-page li { color: #565552; font-size: 18px; line-height: 1.7; }
.document-page code { padding: 3px 7px; background: #e4e1d8; border-radius: 5px; }
.document-page .site-footer { min-height: auto; display: block; }
@media (max-width: 1020px) {
    .hero { grid-template-columns: 1fr; }
    .hero-copy { min-height: 80vh; }
    .hero-visual { min-height: 70vh; }
    .section-intro { grid-template-columns: 1fr 2fr; }
    .section-intro > p:last-child { grid-column: 2; }
    .feature-grid { grid-template-columns: 1fr 1fr; }
    .feature-grid .feature-large { grid-column: span 2; }
    .ownership, .download { grid-template-columns: 1fr; }
    .release-card { min-height: 420px; }
}
@media (max-width: 700px) {
    .site-header { height: 72px; grid-template-columns: 1fr auto; }
    .site-header nav { display: none; position: absolute; top: 72px; left: 0; right: 0; padding: 28px 22px; color: #fff; background: var(--ink); flex-direction: column; gap: 22px; }
    .site-header.menu-open nav { display: flex; }
    .header-download { display: none; }
    .menu-toggle { display: block; }
    .wordmark { font-size: 29px; }
    .hero { min-height: auto; }
    .hero-copy { min-height: calc(100svh - 72px); padding: 80px 22px 54px; }
    .hero h1 { font-size: clamp(58px,18vw,94px); }
    .hero-lede { margin: 35px 0; font-size: 18px; }
    .hero-visual { min-height: 70svh; padding: 42px 22px; }
    .demo-window { padding: 22px; border-radius: 24px; }
    .demo-shell { grid-template-columns: 36px 1fr; gap: 8px; }
    .demo-shell section { padding: 14px; border-radius: 18px; }
    .demo-shell aside { border-radius: 18px; gap: 18px; }
    .demo-shell aside i { width: 8px; height: 8px; }
    .demo-shell section > header span { display: none; }
    .demo-stats article { padding: 10px; border-radius: 10px; }
    .demo-stats small { font-size: 8px; }
    .statement { min-height: 70svh; padding: 100px 22px; }
    .statement h2 { font-size: clamp(56px,17vw,92px); }
    .platform { padding: 100px 22px; }
    .section-intro { display: block; padding-bottom: 55px; }
    .section-intro h2 { margin-bottom: 30px; }
    .feature-grid { display: block; }
    .feature-grid article, .feature-grid .feature-large { min-height: 330px; }
    .feature-large h3, .feature-large p { max-width: 80%; }
    .stack-art { width: 60%; opacity: .2; }
    .workflow { padding: 100px 22px; }
    .workflow-heading { display: block; margin-bottom: 65px; }
    .workflow-heading p { margin-top: 35px; }
    .workflow li { grid-template-columns: 40px 1fr; }
    .workflow li small { grid-column: 2; }
    .ownership, .download { padding: 100px 22px; }
    .release-card { min-height: 380px; padding: 34px; border-radius: 28px; }
    .site-footer { display: flex; min-height: auto; flex-direction: column; padding: 55px 22px; }
    .site-footer nav { flex-wrap: wrap; }
}

/* Platform tour and purchase */
.platform-tour,.integrations { margin-top:14px; padding:clamp(80px,9vw,150px) clamp(22px,6vw,105px); border-radius:38px; background:var(--surface); }
.platform-tour .section-intro,.integrations .section-intro { margin-bottom:clamp(44px,6vw,90px); }
.public-rail { min-height:610px; display:grid; grid-template-columns:minmax(210px,25%) minmax(0,1fr); overflow:hidden; border-radius:28px; background:#eee; }
.public-rail nav { padding:18px; display:flex; flex-direction:column; gap:7px; }
.public-rail nav button { min-height:52px; padding:0 18px; border:0; border-radius:15px; color:#6d6d6d; background:transparent; font:700 15px/1 var(--sans); text-align:left; cursor:pointer; }
.public-rail nav button.active { color:#fff; background:var(--ink); }
.public-rail-panes { min-width:0; background:#fff; }
.public-rail-panes article { min-height:610px; padding:clamp(38px,6vw,88px); display:none; align-content:center; }
.public-rail-panes article.active { display:grid; }
.public-rail-panes article > span,.integration-groups article > span { color:#777; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.public-rail-panes h3 { max-width:900px; margin:22px 0; font:760 clamp(40px,5vw,78px)/.95 var(--sans); letter-spacing:-.055em; }
.public-rail-panes p { max-width:850px; color:#666; font-size:clamp(17px,1.6vw,23px); line-height:1.55; }
.public-rail-panes ul { margin:34px 0 0; padding:22px 0 0; border-top:1px solid #ddd; list-style:none; }
.public-rail-panes li { padding:8px 0; color:#444; font-size:14px; }
.integration-groups { display:grid; grid-template-columns:1.05fr 1fr 1fr; gap:14px; }
.integration-groups article { min-height:480px; padding:clamp(30px,4vw,56px); border-radius:28px; background:#f2f2f2; }
.integration-groups article:nth-child(2) { color:#fff; background:var(--ink); }
.integration-groups article:nth-child(2) > span,.integration-groups article:nth-child(2) p,.integration-groups article:nth-child(2) li { color:#bbb; }
.integration-groups h3 { margin:110px 0 22px; font:760 clamp(32px,3.5vw,54px)/.96 var(--sans); letter-spacing:-.05em; }
.integration-groups p,.integration-groups li { color:#666; font-size:15px; line-height:1.55; }
.integration-groups ul { padding:0; list-style:none; }
.integration-groups li { padding:8px 0; border-bottom:1px solid rgba(128,128,128,.25); }
.purchase-modal { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; pointer-events:none; opacity:0; transition:opacity .2s ease; }
.purchase-modal.is-open { pointer-events:auto; opacity:1; }
.purchase-backdrop { position:absolute; inset:0; border:0; background:rgba(0,0,0,.68); backdrop-filter:blur(6px); }
.purchase-modal > section { position:relative; width:min(920px,calc(100vw - 32px)); max-height:calc(100vh - 32px); display:grid; grid-template-columns:1.05fr .95fr; overflow:auto; border-radius:30px; background:#fff; box-shadow:0 24px 100px rgba(0,0,0,.35); }
.purchase-close { position:absolute; z-index:2; top:22px; right:22px; width:42px; height:42px; padding:10px; border:0; border-radius:50%; background:#eee; cursor:pointer; }
.purchase-close img { width:100%; height:100%; }
.purchase-summary { padding:clamp(36px,6vw,72px); color:#fff; background:var(--ink); }
.purchase-summary .kicker { color:var(--accent); }
.purchase-summary h2 { margin:24px 0; font:760 clamp(45px,5vw,72px)/.92 var(--sans); letter-spacing:-.06em; }
.purchase-summary h2 strong { color:var(--accent); }
.purchase-summary p,.purchase-summary li { color:#bbb; line-height:1.55; }
.purchase-summary ul { margin:32px 0 0; padding:22px 0 0; border-top:1px solid #555; list-style:none; }
.purchase-summary li { padding:7px 0; }
.purchase-modal form { padding:clamp(36px,6vw,72px); display:flex; flex-direction:column; justify-content:center; }
.purchase-modal form label { color:#555; font-size:13px; font-weight:750; }
.purchase-modal form input { width:100%; margin:10px 0 20px; padding:18px; border:1px solid #d5d5d5; border-radius:14px; font:600 16px/1.2 var(--sans); }
.purchase-modal form .button { min-height:58px; display:flex; align-items:center; justify-content:center; gap:10px; border:0; border-radius:14px; color:#fff; background:var(--ink); font-weight:800; cursor:pointer; }
.purchase-modal form .button img { width:18px; height:18px; filter:invert(1); }
.purchase-modal form small { margin-top:16px; color:#777; line-height:1.45; text-align:center; }
.purchase-honeypot { position:absolute!important; left:-10000px!important; }
body.purchase-open { overflow:hidden; }
.license-card { margin:28px 0; padding:22px; border-radius:18px; background:#eee; }
.license-card small,.license-card code { display:block; }.license-card code{margin:12px 0;font-size:18px;word-break:break-all}
@media (max-width:900px){.integration-groups{grid-template-columns:1fr}.integration-groups article{min-height:auto}.integration-groups h3{margin-top:70px}}
@media (max-width:700px){.platform-tour,.integrations{padding:70px 14px}.public-rail{display:block}.public-rail nav{overflow:auto;flex-direction:row}.public-rail nav button{flex:0 0 auto}.public-rail-panes article{min-height:560px;padding:34px 24px}.purchase-modal>section{grid-template-columns:1fr}.purchase-summary{padding-bottom:36px}.purchase-modal form{padding-top:42px}}

/* The public contact route feeds the same owner inbox as Resend receiving. */
.contact-page main { padding-block: clamp(56px,8vw,120px); }
.contact-page article { max-width: 1180px; }
.contact-page article > h1 { max-width: 900px; }
.contact-layout { display: grid; grid-template-columns: minmax(240px,.72fr) minmax(420px,1.28fr); gap: clamp(42px,7vw,110px); align-items: start; }
.contact-layout > div:first-child h2 { margin-top: 0; }
.contact-layout > div:first-child p { max-width: 520px; }
.contact-layout a:not(.button) { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.contact-form { padding: clamp(24px,4vw,48px); display: grid; gap: 20px; border-radius: var(--radius); background: var(--surface-muted); }
.contact-form label { display: grid; gap: 9px; color: var(--ink); font-size: 13px; font-weight: 750; }
.contact-form input,
.contact-form select,
.contact-form textarea { width: 100%; min-width: 0; padding: 15px 16px; border: 1px solid transparent; border-radius: var(--control-radius); outline: 0; color: var(--ink); background: var(--surface); font: 500 16px/1.45 var(--sans); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.contact-form textarea { min-height: 190px; resize: none; }
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(23,23,23,.09); }
.contact-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.contact-form .button { justify-self: start; cursor: pointer; }
.contact-form .button .endcap-icon { filter: invert(1); }
.contact-form > small { color: var(--quiet); font-size: 12px; line-height: 1.5; }
.contact-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-error { padding: 14px 16px; border-radius: var(--control-radius); color: #8a2922; background: #f6dedb; font-size: 14px; }
.contact-confirmation { min-height: 420px; padding: clamp(34px,5vw,70px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; border-radius: var(--radius); color: #fff; background: var(--ink); }
.contact-confirmation .contact-icon { width: 34px; height: 34px; filter: invert(1); }
.contact-confirmation h2 { margin: 42px 0 14px; color: #fff; }
.contact-confirmation p { max-width: 560px; color: #aaa; }
.contact-confirmation .button { margin-top: 22px; color: var(--ink); background: #fff; }

@media (max-width: 760px) {
    .contact-layout { grid-template-columns: 1fr; gap: 34px; }
    .contact-pair { grid-template-columns: 1fr; }
    .contact-form { padding: 22px; border-radius: 22px; }
}

/* One-purpose launch page used until the owner opens the full public site. */
.central-coming-soon { min-height: 100svh; padding: clamp(18px,2.4vw,36px); background: #fff; }
.central-coming-soon main { min-height: calc(100svh - clamp(36px,4.8vw,72px)); display: grid; grid-template-rows: auto minmax(0,1fr); }
.central-coming-soon .wordmark { width: max-content; font-size: clamp(30px,3vw,44px); }
.central-coming-soon section { width: min(1040px,100%); margin: auto; padding-block: clamp(26px,4vh,52px); align-self: center; }
.central-coming-soon h1 { max-width: 920px; margin: 0; font: 760 clamp(56px,7.3vw,112px)/.84 var(--sans); letter-spacing: -.07em; }
.central-coming-soon h1 em { font-family: var(--serif); font-weight: 400; }
.central-coming-soon section > p:not(.kicker) { max-width: 650px; margin: clamp(24px,3vh,34px) 0; color: var(--quiet); font-size: clamp(17px,1.65vw,22px); line-height: 1.5; }
.coming-soon-form { max-width: 880px; display: grid; grid-template-columns: 1fr 1.25fr auto; gap: 12px; align-items: end; }
.coming-soon-form label { display: grid; gap: 9px; color: var(--quiet); font-size: 12px; font-weight: 750; }
.coming-soon-form input { width: 100%; min-height: 58px; padding: 0 18px; border: 1px solid #ddd; border-radius: var(--control-radius); outline: 0; background: var(--surface-muted); font-size: 16px; }
.coming-soon-form input:focus { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(23,23,23,.09); }
.coming-soon-form .button { min-height: 58px; cursor: pointer; }
.coming-soon-form .button .endcap-icon { filter: invert(1); }
.coming-soon-form .contact-error { grid-column: 1 / -1; }
.coming-soon-confirmation { max-width: 680px; padding: 28px; border-radius: var(--radius); color: #fff; background: var(--ink); }
.coming-soon-confirmation strong { font-size: 22px; }
.coming-soon-confirmation p { margin: 8px 0 0; color: #bbb; }
@media (max-width: 760px) {
    .central-coming-soon { padding: 16px; }
    .central-coming-soon main { min-height: calc(100svh - 32px); }
    .central-coming-soon .wordmark { font-size: 28px; }
    .central-coming-soon section { padding-block: 28px; }
    .central-coming-soon .kicker { margin-bottom: 18px; }
    .central-coming-soon h1 { font-size: clamp(46px,14vw,70px); }
    .central-coming-soon section > p:not(.kicker) { margin: 22px 0; font-size: 16px; }
    .coming-soon-form { grid-template-columns: 1fr; }
    .coming-soon-form input, .coming-soon-form .button { min-height: 50px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }

/* Endcap brand system: the public story uses the same geometry and surfaces as the product. */
:root {
    --canvas: #e3e3e3;
    --surface: #fff;
    --surface-muted: #f0f0f0;
    --surface-strong: #d2d2d2;
    --paper: var(--surface-muted);
    --radius: 28px;
    --control-radius: 13px;
    --accent-ink: #171717;
}
.endcap-icon { display: block; width: 18px; height: 18px; flex: 0 0 18px; object-fit: contain; }
.public-site { padding: 0 14px 14px; background: var(--canvas); }
.site-header { height: 78px; padding-inline: clamp(10px,2vw,28px); border: 0; }
.site-header .wordmark { font-size: 38px; }
.site-header nav { gap: 28px; font-size: 13px; font-weight: 650; }
.header-download { gap: 9px; }
.header-download .endcap-icon { width: 16px; height: 16px; }
.hero,
.statement,
.platform,
.workflow,
.ownership,
.download { overflow: hidden; border: 0; border-radius: var(--radius); }
.hero { min-height: calc(100vh - 92px); gap: 14px; background: transparent; }
.hero-copy { border-radius: var(--radius); background: var(--surface-muted); }
.hero h1 { font-family: var(--sans); font-weight: 760; }
.hero h1 em { font-family: var(--serif); font-weight: 400; }
.button { border-radius: var(--control-radius); transition: transform .18s ease, background-color .18s ease, color .18s ease; }
.button .endcap-icon { width: 17px; height: 17px; }
.button:not(.button-light) .endcap-icon,
.feature-dark .endcap-icon { filter: invert(1); }
.hero-visual {
    min-width: 0;
    padding: clamp(36px,5vw,88px);
    background: var(--ink);
    color: rgb(255,255,255);
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    position: relative;
    border: 2px solid var(--ink);
    border-radius: var(--radius);
}
.hero-screenshot {
    display: block;
    width: 100%;
    height: auto;
    max-height: min(78vh, 860px);
    border-radius: clamp(16px,2vw,28px);
    position: absolute;
    top: 10%;
    left: -2%;
    height: 150%;
    width: auto;
    rotate: 9deg;
}
.inline-icon { width: 15px; height: 15px; flex-basis: 15px; }
.icon-link { display: inline-flex; align-items: center; gap: 9px; }
.text-link,
.requirements { display: inline-flex; align-items: center; gap: 10px; }
.demo-window { padding: clamp(20px,2.5vw,42px); border-radius: 24px; background: var(--canvas); transform: rotate(.65deg); }
.demo-brand { height: 12%; }
.demo-shell { height: 88%; grid-template-columns: 52px minmax(118px,.46fr) minmax(0,1.55fr); gap: 10px; }
.demo-shell aside { padding: 18px 0; border-radius: 21px; gap: 18px; color: #aaa; }
.demo-shell aside .endcap-icon { width: 15px; height: 15px; }
.demo-shell aside .endcap-icon:nth-child(2) { width: 31px; height: 31px; padding: 8px; border-radius: 10px; color: var(--accent-ink); background: var(--accent); }
.demo-context { min-width: 0; padding: clamp(16px,2vw,27px) 14px; border-radius: 21px; background: var(--surface-muted); overflow: hidden; }
.demo-context strong { display: block; font-size: clamp(14px,1.7vw,25px); line-height: 1.05; }
.demo-context p { margin: 9px 0 22px; color: var(--quiet); font-size: 9px; line-height: 1.4; }
.demo-context nav { display: grid; gap: 6px; }
.demo-context span { display: block; padding: 10px 9px; color: var(--quiet); border-radius: 10px; font-size: 9px; white-space: nowrap; }
.demo-context span.active { color: var(--ink); background: var(--surface); font-weight: 750; }
.demo-shell section { border-radius: 21px; background: var(--surface); }
.demo-main { display:flex; min-width:0; flex-direction:column; overflow:hidden; }
.demo-main .demo-tabs { display:grid; grid-template-columns:repeat(3,1fr); padding:0 !important; border:0 !important; background:var(--surface-muted); }
.demo-main .demo-tabs > * { min-width:0; padding:clamp(10px,1.5vw,18px) 8px; color:var(--quiet); text-align:center; font-size:clamp(7px,.82vw,11px); font-weight:750; }
.demo-main .demo-tabs b { color:var(--surface); background:var(--ink); }
.demo-main .demo-stats { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.demo-stats article { padding:clamp(9px,1.2vw,16px); border-radius:12px; background:var(--surface); }
.demo-stats small { overflow:hidden; font-size:clamp(6px,.62vw,9px); white-space:nowrap; text-overflow:ellipsis; }
.demo-stats strong { margin-top:clamp(9px,1.1vw,16px); font-size:clamp(13px,1.55vw,27px); }
.demo-work { min-height:0; margin-top:8px; display:grid; flex:1; grid-template-columns:1fr 1fr; gap:8px; }
.demo-work > article { min-width:0; padding:clamp(10px,1.4vw,18px); border-radius:14px; background:var(--surface); display:flex; flex-direction:column; }
.demo-work article > header { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:0 0 10px; border-bottom:1px solid var(--surface-strong); }
.demo-work header strong { font-size:clamp(7px,.82vw,12px); }
.demo-work header small { color:var(--quiet); font-size:clamp(5px,.58vw,8px); }
.demo-work article > div { min-height:0; display:flex; flex:1; align-items:center; justify-content:center; flex-direction:column; gap:5px; color:var(--quiet); text-align:center; }
.demo-work article > div b { color:var(--ink); font-size:clamp(7px,.78vw,11px); }
.demo-work article > div span { font-size:clamp(5px,.6vw,9px); line-height:1.35; }
.demo-list { border-radius: 14px; background: var(--surface-muted); }
.statement { margin-top: 14px; background: var(--surface); }
.statement h2,
.section-intro h2 { font-family: var(--sans); font-weight: 760; letter-spacing: -.065em; }
.platform { margin-top: 14px; background: var(--surface-muted); }
.feature-grid { grid-template-columns: repeat(12,minmax(0,1fr)); gap: 14px; }
.feature-grid article { grid-column: span 4; min-height: 400px; margin: 0; border: 0; border-radius: var(--radius); background: var(--surface); }
.feature-grid .feature-large { grid-column: span 8; min-height: 400px; }
.feature-grid h3 { display: flex; align-items: center; gap: 14px; font-family: var(--sans); font-weight: 760; }
.feature-large h3,
.feature-large p { max-width: 680px; }
.feature-icon { width: clamp(28px,3vw,46px); height: clamp(28px,3vw,46px); flex-basis: clamp(28px,3vw,46px); }
.feature-dark { background: var(--ink) !important; }
.workflow { margin-top: 14px; }
.workflow-heading h2 { font-family: var(--sans); font-weight: 760; }
.ownership { margin-top: 14px; background: var(--surface); }
.ownership h2,
.download h2 { font-family: var(--sans); font-weight: 760; }
.demo-invitation { margin-top:14px; padding:clamp(54px,7vw,118px); display:grid; grid-template-columns:minmax(260px,.72fr) minmax(440px,1.28fr); gap:clamp(42px,7vw,120px); overflow:hidden; border-radius:var(--radius); color:var(--ink); background:var(--accent); }
.demo-invitation-copy h2 { margin:0; max-width:720px; font-size:clamp(54px,6vw,108px); font-weight:760; line-height:.88; letter-spacing:-.065em; }
.demo-invitation-copy > p:last-child { max-width:620px; margin:36px 0 0; font-size:clamp(17px,1.25vw,21px); line-height:1.55; }
.demo-entry-grid { align-self:center; display:grid; gap:12px; }
.demo-entry-grid a { min-height:164px; padding:28px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; grid-template-rows:auto 1fr; column-gap:18px; align-items:start; border-radius:var(--radius); color:var(--white); background:var(--ink); transition:transform .18s ease; }
.demo-entry-grid a:hover { transform:translateY(-3px); }
.demo-entry-grid span { grid-row:1 / span 2; color:rgba(255,255,255,.62); font-size:12px; }
.demo-entry-grid strong { font-size:clamp(20px,2vw,30px); line-height:1.05; }
.demo-entry-grid small { max-width:560px; margin-top:12px; color:rgba(255,255,255,.68); font-size:14px; line-height:1.5; }
.demo-entry-icon { grid-column:3; grid-row:1 / span 2; width:24px; height:24px; flex-basis:24px; filter:invert(1); }
.demo-safety { grid-column:2; margin:0; color:rgba(23,23,23,.68); font-size:12px; line-height:1.5; }
.download { margin-top: 14px; }
.release-card { border-radius: var(--radius); }
.button-light:hover { color: var(--ink); background: var(--accent); }
.site-footer { margin-top: 14px; border-radius: var(--radius); }
.document-page { padding: 0 14px 14px; background: var(--canvas); }
.document-page .site-header { background: transparent; }
.document-page main { border-radius: var(--radius); background: var(--surface); }

@media (max-width: 1020px) {
    .hero { gap: 14px; }
    .feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .feature-grid article { grid-column: span 1; }
    .feature-grid .feature-large { grid-column: span 2; }
    .demo-invitation { grid-template-columns:1fr; }
    .demo-safety { grid-column:1; }
}
@media (max-width: 700px) {
    .public-site, .document-page { padding-inline: 8px; }
    .site-header { padding-inline: 14px; }
    .site-header nav { border-radius: 0 0 18px 18px; }
    .hero-copy, .hero-visual, .statement, .platform, .workflow, .ownership, .demo-invitation, .download, .site-footer { border-radius: 22px; }
    .hero-visual { min-height: 70vw; padding: 28px 14px; }
    .hero-screenshot { max-height: none; border-radius: 16px; }
    .feature-grid article { margin-bottom: 12px; border-radius: 22px; }
    .demo-invitation { padding:58px 22px; }
    .demo-entry-grid a { min-height:150px; padding:22px 18px; grid-template-columns:28px minmax(0,1fr) auto; column-gap:10px; border-radius:20px; }
    .demo-entry-grid small { font-size:13px; }
}
