:root{--blue:#0879da;--navy:#0c2444;--muted:#6d7d91;--line:#e4eaf2}*{box-sizing:border-box}html{background:#fff}body{margin:0;color:var(--navy);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}.app{min-height:100dvh;display:flex;flex-direction:column}.topbar{height:60px;padding:0 clamp(14px,3vw,40px);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#fff}.brand{font-weight:850;letter-spacing:.055em;font-size:15px;display:flex;align-items:center;gap:9px}.brand strong{color:var(--blue)}.brand-symbol{font-size:25px;color:var(--blue)}button{font:inherit;cursor:pointer}.top-cta{border:1px solid #b9d8f5;color:var(--blue);background:#f2f9ff;border-radius:24px;padding:9px 15px;font-weight:700;font-size:12px}.stage{flex:1;min-height:0;display:flex;justify-content:center;align-items:flex-start;padding:16px 12px 8px}.sheet{position:relative;width:min(100%, min(58vh, 600px));max-width:600px;aspect-ratio:2/3;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 35px rgba(13,41,74,.10);background:#fff;overflow:hidden}.sheet img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}.missing{height:100%;width:100%;padding:12%;background:linear-gradient(160deg,#eaf5ff,#fff 60%);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.missing[hidden]{display:none}.missing-number{font-weight:900;color:var(--blue);letter-spacing:.14em}.missing h1{font-size:clamp(19px,3vw,30px)}.missing p{font-size:14px;line-height:1.6;color:var(--muted)}.controls{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:clamp(10px,3vw,32px);padding:11px 12px calc(11px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);backdrop-filter:blur(12px)}.nav-button{min-height:43px;min-width:126px;padding:0 15px;border:1px solid #d8e5f1;background:white;border-radius:12px;color:var(--navy);font-size:13px;font-weight:750}.nav-button.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.nav-button:disabled{opacity:.35;cursor:not-allowed}.progress-wrap{width:100px;text-align:center}.counter{font-weight:800;font-size:12px;letter-spacing:.1em;margin-bottom:8px}.progress{height:3px;border-radius:4px;background:#e4eaf2;overflow:hidden}.progress span{display:block;background:var(--blue);height:100%;transition:width .25s}.footer{text-align:center;padding:9px;color:#9caabc;font-size:9px;font-weight:700;letter-spacing:.14em}.footer span{color:var(--blue)}.contact{width:min(100%,650px);padding:clamp(18px,5vw,50px);border:1px solid var(--line);box-shadow:0 8px 35px rgba(13,41,74,.08);border-radius:18px;margin:14px auto 30px}.contact[hidden]{display:none}.contact-eyebrow{color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.12em}.contact h1{font-size:clamp(26px,5vw,43px);line-height:1.12;margin:15px 0}.contact h1 span{color:var(--blue)}.intro{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact label{display:block;font-size:12px;font-weight:700;margin-bottom:15px}.contact input:not([type=checkbox]),.contact select,.contact textarea{display:block;width:100%;margin-top:7px;border:1px solid #d8e1ec;background:#fff;border-radius:9px;padding:12px 11px;font-size:14px;color:var(--navy);font-family:inherit}.contact input:focus,.contact textarea:focus,.contact select:focus{outline:2px solid #a6d8ff;border-color:var(--blue)}.privacy{display:flex!important;gap:10px;align-items:flex-start;font-size:12px!important;line-height:1.6;font-weight:400!important;color:#56677b}.privacy input{margin-top:4px}.privacy a{color:var(--blue)}.submit{width:100%;background:var(--blue);border:0;border-radius:10px;color:white;padding:16px;font-weight:800}.submit span{margin-left:8px}.form-status{font-size:13px;line-height:1.5}.honeypot{position:absolute;left:-9999px;opacity:0}@media(max-width:520px){.topbar{height:52px}.top-cta{font-size:11px;padding:8px 11px}.stage{padding:5px 0 0;align-items:flex-start}.sheet{width:100%;max-width:none;box-shadow:none}.controls{gap:8px;padding:9px 8px calc(9px + env(safe-area-inset-bottom))}.nav-button{min-width:108px;padding:0 9px;font-size:12px}.progress-wrap{width:76px}.footer{font-size:8px;padding:7px}.contact{border-radius:0;border-left:0;border-right:0;box-shadow:none;margin:0;padding:25px 18px}.form-grid{grid-template-columns:1fr;gap:0}}@media(max-width:350px){.nav-button{min-width:43px}.nav-button span{display:none}.progress-wrap{width:90px}}@media(min-width:800px){.sheet{width:min(60vh,620px)}.stage{padding-top:22px}}

/* v2: all 13 actual slides, final form is a standalone, fully scrollable screen */
[hidden]{display:none!important}
.on-form .stage{display:block;width:100%;padding:12px 18px 22px;flex:1 0 auto}
.on-form .contact{width:min(100%,920px);max-width:920px;margin:0 auto 12px;padding:clamp(20px,2.5vw,30px) clamp(20px,3vw,38px);box-shadow:0 8px 35px rgba(13,41,74,.07)}
.on-form .contact h1{font-size:clamp(26px,3.1vw,36px);margin:8px 0}
.on-form .intro{margin:8px 0 17px;font-size:13px;line-height:1.5}
.on-form .form-grid{gap:8px 16px}
.on-form .contact label{margin-bottom:8px}
.on-form .contact input:not([type=checkbox]),.on-form .contact select,.on-form .contact textarea{margin-top:5px;padding:10px 12px}
.on-form .contact textarea{min-height:65px;max-height:150px}
.on-form .privacy{margin-top:6px;margin-bottom:12px}
.on-form .submit{padding:13px}
.form-status{border-radius:12px;padding:13px 15px;font-size:14px;font-weight:700;margin:12px 0 0;line-height:1.5}
.form-status.success{background:#eaf9f1;color:#146a40;border:1px solid #9cdec0}
.form-status.error{background:#fff0f0;color:#a01e2d;border:1px solid #f0afb6}
.submit:disabled{opacity:.65;cursor:wait}
@media(max-width:520px){.on-form .stage{padding:0 0 12px}.on-form .contact{padding:19px 18px;border-radius:0;border-left:0;border-right:0}.on-form .form-grid{grid-template-columns:1fr}.on-form .contact h1{font-size:28px}.on-form .contact label{margin-bottom:12px}}

.demo-details{font-size:12px;font-weight:500;color:var(--muted);line-height:1.5;margin:5px 0 14px;letter-spacing:0}
@media(max-width:520px){.demo-details{font-size:11px;margin-bottom:12px}}

.demo-disclaimer{margin:16px 0 0;color:#6d7d91;font-size:12px;line-height:1.6;text-align:center;}
.on-form .contact h1 span{text-transform:none;}
