/* Quiet continuation of the silver ridge. Native forms; no extra runtime. */
.v2-demo-page { color-scheme:dark; margin:0; background:#050708; color:#eef1f2; font-family:'Inter',Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.v2-demo-page *, .v2-demo-page *::before, .v2-demo-page *::after { box-sizing:border-box; }
.demo-main a,.demo-footer a { color:inherit; }
.demo-skip { position:fixed; top:8px; left:8px; z-index:1000; padding:12px 18px; color:#050708!important; background:#eef1f2; transform:translateY(-160%); }
.demo-skip:focus { transform:none; }
.demo-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.demo-main { display:grid; grid-template-columns:minmax(0,.83fr) minmax(0,1fr); align-items:start; gap:clamp(48px,7vw,112px); width:min(1240px,calc(100% - 100px)); margin:0 auto; padding:clamp(64px,6.5vw,100px) 0 100px; }
.demo-intro,.demo-form-panel,.demo-field { min-width:0; }
.demo-intro { position:sticky; top:48px; padding-top:18px; }
.demo-eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 31px; color:#a2aeb5; font-size:9px; font-weight:500; line-height:1.6; letter-spacing:.2em; }
.demo-eyebrow>span { width:5px; height:5px; flex:0 0 auto; background:#c7e0ea; box-shadow:0 0 12px #9ec1d044; }
.demo-intro h1 { margin:0; font-size:clamp(64px,6.2vw,94px); font-weight:300; letter-spacing:-.065em; line-height:1.02; }
.demo-lead { max-width:350px; margin:30px 0 0; font-size:clamp(20px,1.75vw,25px); font-weight:300; line-height:1.45; letter-spacing:-.025em; text-wrap:balance; }
.demo-description { max-width:355px; margin:16px 0 0; color:#9ba7ae; font-size:13px; line-height:1.8; }
.demo-products { display:grid; gap:13px; margin-top:29px; }
.demo-products>a { display:flex; align-items:center; gap:17px; min-height:30px; width:fit-content; font-size:12px; color:#c6cfd4; text-decoration:none; }
.demo-products>a:hover { color:#eef1f2; text-decoration:underline; text-underline-offset:5px; }
.demo-product-number { color:#82949e; font-size:9px; letter-spacing:.08em; font-variant-numeric:tabular-nums; }
.demo-ridge { position:relative; height:160px; margin:10px -24px -18px; overflow:hidden; pointer-events:none; mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent); }
.demo-ridge::after { content:''; position:absolute; inset:0; background:linear-gradient(#050708,transparent 25%,transparent 70%,#050708); }
.demo-ridge img { display:block; width:100%; height:100%; object-fit:cover; opacity:.65; }
.demo-direct { display:grid; gap:9px; margin-top:30px; padding-top:22px; border-top:1px solid #b4d1e025; font-size:12px; }
.demo-direct>span { color:#91a1aa; font-size:10px; }
.demo-direct a { display:inline-flex; align-items:center; justify-self:start; gap:22px; min-height:30px; text-decoration:none; overflow-wrap:anywhere; }
.demo-direct a:hover { color:#c6e2ee; }
.demo-form-panel { position:relative; padding:33px 34px 29px; border:1px solid #b7d1df29; border-radius:4px; background:linear-gradient(145deg,#10171970,#0b101160 40%,#0a0e0f80); }
.demo-form-panel::before { content:''; position:absolute; top:-1px; height:1px; left:12%; right:12%; background:linear-gradient(90deg,transparent,#c6e1ed65,transparent); pointer-events:none; }
.demo-form-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; padding-bottom:27px; border-bottom:1px solid #b4d1e021; margin-bottom:29px; }
.demo-form-eyebrow { margin:0 0 10px; color:#91a5b0; font-size:9px; letter-spacing:.18em; }
.demo-form-heading h2 { margin:0; font-size:26px; font-weight:350; letter-spacing:-.04em; line-height:1.2; }
.demo-required { flex:0 0 auto; margin:0 0 2px; color:#95a4ac; font-size:10px; }
.demo-group { min-width:0; margin:0; padding:0; border:0; }
.demo-group+.demo-group { margin-top:29px; }
.demo-group legend { display:flex; align-items:center; gap:11px; width:100%; margin-bottom:18px; padding:0; color:#d5dde1; font-size:12px; font-weight:500; letter-spacing:-.01em; }
.demo-group legend>span { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border:1px solid #b2cddb28; color:#9fb5c0; font-size:9px; font-weight:400; font-variant-numeric:tabular-nums; letter-spacing:.04em; }
.demo-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px 18px; }
.demo-field-full { grid-column:1 / -1; }
.demo-field label { display:flex; align-items:baseline; gap:4px; margin:0 0 8px; color:#c3cdd3; font-size:11px; font-weight:400; line-height:1.5; }
.demo-field label>span[aria-hidden] { color:#a2bac7; }
.demo-optional { margin-left:auto; color:#92a1aa; font-size:9px; }
.demo-field-hint { display:block; margin-top:7px; color:#91a1aa; font-size:10px; line-height:1.5; }
.demo-field input,.demo-field select,.demo-field textarea { display:block; width:100%; min-width:0; min-height:47px; margin:0; border:1px solid #afcbd72e; border-radius:3px; padding:12px 13px; background:#0c1113; color:#eef1f2; font-family:inherit; font-size:13px; line-height:1.5; transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease; }
.demo-field select { padding-right:38px; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%239aafb9' stroke-width='1.2'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 13px center; cursor:pointer; }
.demo-field select:required:invalid { color:#8c9ba3; }
.demo-field select option { background:#0c1113; color:#eef1f2; }
.demo-field input::placeholder,.demo-field textarea::placeholder { color:#8c9ba3; opacity:1; }
.demo-field textarea { min-height:93px; resize:vertical; }
.demo-field input:hover,.demo-field select:hover,.demo-field textarea:hover { border-color:#a3c3d258; }
.demo-field input:focus,.demo-field select:focus,.demo-field textarea:focus { outline:2px solid #b9d6e3; outline-offset:2px; border-color:#b9d6e3; background-color:#10191d; box-shadow:0 0 20px #a9cddb08; }
.demo-field input:user-invalid,.demo-field select:user-invalid,.demo-field textarea:user-invalid { border-color:#e0a89b; }
.demo-field input:-webkit-autofill { -webkit-text-fill-color:#eef1f2; box-shadow:0 0 0 1000px #10191d inset; caret-color:#eef1f2; }
.demo-form-bottom { margin-top:25px; padding-top:23px; border-top:1px solid #b4d1e021; }
.demo-privacy { margin:0 0 18px; color:#99a8b0; font-size:10px; line-height:1.7; }
.demo-privacy a { text-decoration-color:#68828f; text-underline-offset:3px; white-space:nowrap; }
.demo-submit { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; min-height:52px; border:1px solid #e5edf1; border-radius:3px; padding:14px 18px; background:#e5edf1; color:#0a1014; font:500 13px/1.5 'Inter',Arial,sans-serif; cursor:pointer; transition:background-color .18s ease,border-color .18s ease; }
.demo-submit svg { width:21px; height:21px; flex:0 0 auto; transition:transform .18s ease; }
.demo-submit:hover { background:#fff; border-color:#fff; }
.demo-submit:hover svg { transform:translate(2px,-2px); }
.demo-submit:focus-visible,.demo-direct a:focus-visible,.demo-privacy a:focus-visible,.demo-footer a:focus-visible { outline:2px solid #b9d6e3; outline-offset:5px; }
.demo-verification { margin:12px 0 0; color:#92a2ac; font-size:9px; line-height:1.7; text-align:center; }
.demo-mobile-contact { display:none; margin:18px 0 0; color:#a2b2bc; font-size:11px; line-height:1.8; text-align:center; }
.demo-mobile-contact a { display:inline-block; text-underline-offset:3px; overflow-wrap:anywhere; }
.demo-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; width:min(1240px,calc(100% - 100px)); margin:0 auto; padding:25px 0; border-top:1px solid #b4d1e021; color:#95a3ab; font-size:10px; line-height:1.8; }
.demo-footer>div { display:flex; flex-wrap:wrap; gap:25px; }
.demo-footer a { display:inline-flex; align-items:center; min-height:30px; text-decoration:none; }
.demo-footer a:hover { color:#eef1f2; }
@media (max-height:850px) and (min-width:901px) { .demo-intro { top:24px; } .demo-ridge { height:110px; margin-block:4px -18px; } .demo-direct { margin-top:20px; } }
@media (max-width:1100px) {
  .demo-main { width:calc(100% - 64px); gap:42px; grid-template-columns:minmax(0,.75fr) minmax(0,1fr); }
  .demo-form-panel { padding-inline:25px; }
  .demo-intro h1 { font-size:68px; }
  .demo-field input,.demo-field select,.demo-field textarea { font-size:16px; }
}
@media (max-width:900px) {
  .demo-main { width:min(620px,calc(100% - 48px)); display:block; padding:48px 0 64px; }
  .demo-intro { position:static; padding:0 4px 34px; }
  .demo-eyebrow { margin-bottom:20px; }
  .demo-intro h1 { font-size:62px; }
  .demo-lead { max-width:100%; margin-top:20px; font-size:20px; }
  .demo-description { max-width:100%; font-size:13px; }
  .demo-products,.demo-ridge,.demo-direct { display:none; }
  .demo-mobile-contact { display:block; }
  .demo-form-panel { padding:28px; }
  .demo-footer { width:min(620px,calc(100% - 48px)); align-items:flex-start; }
  .demo-footer>div { justify-content:flex-end; gap:6px 18px; }
}
@media (max-width:540px) {
  .demo-main { width:calc(100% - 32px); padding-top:35px; }
  .demo-intro { padding:0 6px 29px; }
  .demo-intro h1 { font-size:53px; line-height:1.04; }
  .demo-intro h1 br { display:none; }
  .demo-lead { font-size:18px; max-width:330px; text-wrap:pretty; }
  .demo-description { margin-top:11px; font-size:12px; }
  .demo-eyebrow { font-size:8px; letter-spacing:.16em; margin-bottom:17px; }
  .demo-form-panel { padding:25px 20px 24px; }
  .demo-form-heading { padding-bottom:23px; margin-bottom:25px; }
  .demo-form-heading h2 { font-size:23px; }
  .demo-required { font-size:9px; }
  .demo-fields { grid-template-columns:minmax(0,1fr); gap:18px; }
  .demo-group+.demo-group { margin-top:28px; }
  .demo-field label { font-size:12px; }
  .demo-optional { font-size:10px; }
  .demo-field input,.demo-field select,.demo-field textarea { min-height:50px; }
  .demo-verification { font-size:10px; }
  .demo-footer { width:calc(100% - 44px); font-size:10px; gap:20px; }
}
@media (max-width:360px) {
  .demo-main { width:calc(100% - 24px); }
  .demo-intro h1 { font-size:47px; }
  .demo-form-panel { padding-inline:16px; }
  .demo-form-heading { align-items:center; }
  .demo-required { max-width:50px; }
  .demo-footer { flex-direction:column; gap:10px; }
  .demo-footer>div { justify-content:flex-start; }
}
@media (prefers-reduced-motion:reduce) { .demo-field input,.demo-field select,.demo-field textarea,.demo-submit,.demo-submit svg { transition:none; } }
