/* A dedicated, spacious introduction with an email-first request form. */
.demo-request-page{width:min(1280px,90vw);margin:80px auto 110px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(44px,6vw,90px);align-items:start;font-family:SproutGeist,var(--sans)}
.demo-request-eyebrow{margin:0 0 24px;color:#888;font-size:12px;font-weight:500;letter-spacing:.08em}
.demo-request-intro h1{max-width:550px;margin:0;font:450 clamp(44px,4.7vw,68px)/1.035 SproutGeist,var(--sans);letter-spacing:-.05em;text-wrap:balance;color:#303030}
.demo-request-description{max-width:450px;margin:30px 0 0;color:#777;font-size:18px;line-height:1.55;letter-spacing:-.015em}
.demo-request-features{margin-top:48px}
.demo-request-features>p{margin:0 0 17px;color:#909090;font-size:14px}
.demo-request-features ul{display:grid;gap:16px;padding:0;margin:0;list-style:none}
.demo-request-features li{display:flex;gap:12px;align-items:baseline;color:#555;font-size:16px;line-height:1.4}
.demo-request-features li>span{color:#999}
.demo-request-panel{padding:32px;min-height:360px;border:1px solid #ecece9;border-radius:14px;background:#f7f7f5;color:#333}
.demo-request-panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:30px}
.demo-request-panel-heading h2{margin:0;font:500 clamp(23px,2.5vw,29px)/1.2 SproutGeist,var(--sans);letter-spacing:-.035em}
.demo-request-progress{flex-shrink:0;font-size:13px;color:#888;font-variant-numeric:tabular-nums}
.demo-request-form{display:grid;gap:20px}
.demo-request-fields{display:grid;gap:23px;margin:0;padding:0;border:0;min-width:0}
.demo-request-fields label{display:block;font-size:14px;font-weight:400;line-height:1.4;color:#555}
.demo-request-fields label>span{color:#999}
.demo-request-fields input,.demo-request-fields textarea{display:block;width:100%;min-width:0;min-height:49px;margin-top:10px;padding:13px 14px;border:1px solid #cececa;border-radius:6px;background:#fff;color:#333;font:400 16px/1.4 SproutGeist,var(--sans);box-sizing:border-box}
.demo-request-fields textarea{min-height:104px;resize:vertical}
.demo-request-fields input::placeholder,.demo-request-fields textarea::placeholder{color:#999}
.demo-request-fields input:focus-visible,.demo-request-fields textarea:focus-visible{outline:2px solid #8b8b8b;outline-offset:2px}
.demo-email-summary{margin:0;color:#888;font-size:14px;overflow-wrap:anywhere}
.demo-request-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:26px}
.demo-request-next,.demo-request-submit{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:45px;padding:12px 21px;border:0;border-radius:999px;background:#252525;color:#fff;font:500 15px/1.3 SproutGeist,var(--sans)}
.demo-request-next:hover,.demo-request-submit:hover{background:#404040}
.demo-request-back{margin-right:auto;padding:10px 0;background:none;color:#777;font-size:14px}
.demo-request-actions button:disabled{opacity:.5;cursor:wait}
.demo-request-note{margin:2px 0 0;color:#8c8c8c;font-size:12px;line-height:1.5}
.demo-request-status{margin:0;font-size:14px;line-height:1.5;color:#555}
.demo-request-status:empty{display:none}
.demo-request-status[data-state=error]{color:#b64e55}
.demo-request-fallback{font-size:14px;text-decoration:underline;text-underline-offset:3px}
.demo-request-contact{margin:30px 0 0;text-align:center;color:#8c8c8c;font-size:13px;line-height:1.5}
.demo-request-contact a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.demo-request-page{width:min(660px,calc(100% - 40px));margin:48px auto 70px;grid-template-columns:1fr;gap:40px}.demo-request-intro h1{font-size:clamp(42px,7.5vw,60px);max-width:600px}.demo-request-description{max-width:550px;margin-top:22px}.demo-request-features{margin-top:27px}.demo-request-features ul{gap:10px}.demo-request-features li{font-size:14px}.demo-request-panel{min-height:340px}}
@media(max-width:500px){.demo-request-page{margin-top:34px}.demo-request-panel{padding:26px 22px}.demo-request-panel-heading{margin-bottom:26px}.demo-request-description{font-size:16px}.demo-request-actions{margin-top:16px}}
@media(prefers-color-scheme:dark){
 .demo-request-intro h1{color:#eeeeee}
 .demo-request-eyebrow,.demo-request-features>p{color:#999}
 .demo-request-description{color:#b1b1b1}
 .demo-request-features li{color:#d0d0d0}
 .demo-request-panel{background:#151515;border-color:#2b2b2b;color:#eee}
 .demo-request-fields label{color:#d4d4d4}
 .demo-request-fields input,.demo-request-fields textarea{background:#202020;color:#eee;border-color:#555}
 .demo-request-fields input::placeholder,.demo-request-fields textarea::placeholder{color:#777}
 .demo-request-next,.demo-request-submit{background:#eee;color:#222}
 .demo-request-next:hover,.demo-request-submit:hover{background:#d9d9d9}
 .demo-request-back,.demo-email-summary{color:#a0a0a0}
 .demo-request-note,.demo-request-contact,.demo-request-progress{color:#939393}
 .demo-request-status{color:#ccc}
 .demo-request-status[data-state=error]{color:#ef9ca1}
}

/* Return beneath the form; general inquiries sit at the end of the page. */
.demo-request-body[data-demo-request-page]{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.demo-request-body[data-demo-request-page] .site-header.sprout-header{flex:0 0 auto;grid-template-columns:auto 1fr}
.demo-request-body[data-demo-request-page] .header-tools{grid-column:2}
.demo-request-body[data-demo-request-page] .demo-request-page{margin-bottom:48px}
.demo-request-return{display:block;width:fit-content;margin:20px auto 0;color:#888;font-size:14px;line-height:1.5;text-decoration:none}
.demo-request-return:hover{text-decoration:underline;text-underline-offset:4px}
.demo-request-return:focus-visible{outline:1px solid currentColor;outline-offset:4px}
.demo-request-page-footer{margin-top:auto;padding:24px 20px 30px;text-align:center}
.demo-request-page-footer .demo-request-contact{margin:0;font-size:12px}
@media(max-width:760px){.demo-request-body[data-demo-request-page] .demo-request-page{margin-bottom:32px}.demo-request-return{font-size:13px;margin-top:18px}.demo-request-page-footer{padding:24px 20px}}
@media(prefers-color-scheme:dark){.demo-request-return{color:#aaa}}
