:root{
  --navy:#21418A;--blue:#2E6AB2;--ink:#152a55;--muted:#566783;--line:#d9e2ef;--tint:#eaf1fa;--page:#f6f8fc;--err:#b3261e;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.55}
a{color:var(--blue)}
:focus-visible{outline:3px solid #f2b705;outline-offset:2px;border-radius:4px}
.soon-wrap{max-width:1120px;margin:0 auto;padding:0 20px}

.soon-top{background:#fff;border-bottom:1px solid var(--line)}
.soon-top .soon-wrap{display:flex;align-items:center;min-height:84px}
.soon-top img{height:52px;width:auto;display:block}

.soon-main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start;padding-top:56px;padding-bottom:72px}

.soon-intro h1{font-size:clamp(30px,4.6vw,52px);line-height:1.08;letter-spacing:-.02em;font-weight:800;margin:0 0 18px;color:var(--navy);max-width:16ch}
.soon-lead{font-size:clamp(17px,1.8vw,20px);color:var(--muted);margin:0 0 28px;max-width:52ch}

.soon-who{margin:0 0 36px;border-top:2px solid var(--navy)}
.soon-who>div{display:grid;grid-template-columns:190px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.soon-who dt{font-weight:700;color:var(--navy)}
.soon-who dd{margin:0;color:var(--muted)}

.soon-need{background:var(--tint);border-radius:18px;padding:22px 24px}
.soon-need h2{font-size:19px;margin:0 0 10px;color:var(--navy)}
.soon-need ul{margin:0 0 12px;padding-left:20px}
.soon-need li{margin:4px 0}
.soon-need p{margin:0;color:var(--muted);font-size:15px}

.soon-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 30px 24px;box-shadow:0 18px 40px -24px rgba(33,65,138,.35);position:sticky;top:20px}
.soon-card h2{font-size:clamp(22px,2.6vw,28px);line-height:1.2;margin:0 0 6px;color:var(--navy)}
.soon-sub{margin:0 0 22px;color:var(--muted)}
.soon-field{margin:0 0 16px}
.soon-field label{display:block;font-weight:600;margin-bottom:6px;font-size:16px}
.soon-opt{font-weight:400;color:var(--muted);font-size:14px}
.soon-field input[type=text],.soon-field input[type=email],.soon-field input[type=tel],.soon-field textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--page);border:1px solid transparent;border-radius:12px;padding:12px 14px}
.soon-field input:focus,.soon-field textarea:focus{background:#fff;border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(46,106,178,.18)}
.soon-field [aria-invalid=true]{border-color:var(--err);background:#fff}
.soon-two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.soon-hint{display:block;font-size:14px;color:var(--muted);margin-top:5px}
.soon-err{display:block;color:var(--err);font-size:14px;font-weight:600;margin-top:6px}
.soon-consent label{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:15px;color:var(--muted)}
.soon-consent input{margin-top:5px;flex:none}
.soon-alert{background:#fdecea;color:var(--err);border:1px solid #f3c1bd;border-radius:12px;padding:12px 16px;margin:0 0 18px;font-weight:600}
.soon-btn{display:block;width:100%;font:inherit;font-weight:700;font-size:17px;background:var(--navy);color:#fff;border:0;border-radius:12px;padding:15px 20px;cursor:pointer}
.soon-btn:hover{background:var(--blue)}
.soon-alt{margin:18px 0 0;font-size:15px;color:var(--muted)}
.soon-done h2{margin-bottom:10px}
.soon-done p{margin:0;color:var(--muted)}
.dgr-hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.dgr-note{color:var(--muted);font-size:14px;margin:0 0 12px}

.soon-foot{border-top:1px solid var(--line);background:#fff;font-size:15px;color:var(--muted)}
.soon-foot .soon-wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;padding-bottom:26px}
.soon-foot a{color:var(--muted)}

@media (max-width:900px){
  .soon-main{grid-template-columns:minmax(0,1fr);gap:0;padding-top:36px}
  .soon-intro{display:contents}
  .soon-intro h1{order:1;max-width:none}
  .soon-lead{order:2}
  .soon-card{order:3;position:static;margin-bottom:36px}
  .soon-who{order:4}
  .soon-need{order:5}
  .soon-who>div{grid-template-columns:1fr;gap:2px}
}
@media (max-width:480px){
  .soon-two{grid-template-columns:1fr}
  .soon-card{padding:24px 18px 20px}
  .soon-top img{height:42px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
