:root{
  --navy:#123d63;
  --teal:#209a9e;
  --teal-deep:#0f7781;
  --ink:#1f3650;
  --muted:#718095;
  --line:#dfe8ef;
  --surface:#ffffff;
  --page:#eef7fb;
  --shadow:0 16px 45px rgba(25,61,92,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:320px;
  color:var(--ink);
  background:var(--page);
  font-family:Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
}
button,input{font:inherit}
.page-shell{min-height:100svh;padding:28px 14px 34px;display:flex;justify-content:center}
.card{
  width:min(100%,650px);
  background:var(--surface);
  border-radius:34px;
  box-shadow:var(--shadow);
  overflow:hidden;
  padding:68px 48px 28px;
}
.brand{text-align:center}
.brand h1{
  margin:0;
  color:var(--navy);
  font-size:clamp(38px,9vw,66px);
  line-height:1;
  letter-spacing:.045em;
  font-weight:800;
}
.brand b{color:var(--teal);font-weight:800}
.illustration-wrap{margin:68px auto 72px;width:min(100%,565px)}
.illustration-wrap img{
  display:block;width:100%;height:auto;border-radius:24px;
}
.hero-copy{text-align:center}
.eyebrow{
  margin:0 0 48px;
  color:#2a9b9f;
  font-size:clamp(21px,4.7vw,31px);
  line-height:1.55;
  font-weight:800;
  letter-spacing:.30em;
}
.hero-copy h2{
  margin:0;
  color:#13798a;
  font-size:clamp(62px,15vw,108px);
  line-height:.92;
  letter-spacing:.025em;
  font-weight:900;
}
.lead{
  margin:76px 0 0;
  color:var(--navy);
  font-size:clamp(25px,6vw,39px);
  line-height:1.18;
  font-weight:800;
}
.sublead{
  margin:48px auto 0;
  max-width:510px;
  color:var(--muted);
  font-size:clamp(18px,4.2vw,25px);
  line-height:1.45;
}
.notify{
  margin:52px auto 0;
  max-width:500px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fbfdff;
}
.notify-head{text-align:left}
.notify h3{margin:0;color:var(--navy);font-size:25px}
.notify-head p{margin:7px 0 20px;color:var(--muted)}
form{display:grid;gap:9px}
label{font-size:14px;font-weight:700;color:var(--ink)}
input{
  width:100%;
  min-height:50px;
  border:1px solid #cfdce6;
  border-radius:13px;
  padding:0 15px;
  color:var(--ink);
  background:#fff;
  outline:none;
}
input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(32,154,158,.14)}
button{
  min-height:52px;
  margin-top:7px;
  border:0;
  border-radius:13px;
  color:#fff;
  background:var(--teal-deep);
  font-weight:800;
  cursor:pointer;
}
button:hover{filter:brightness(.96)}
button:disabled{opacity:.65;cursor:wait}
.form-message{min-height:20px;margin:3px 0 0;font-size:14px;line-height:1.4}
.form-message.success{color:#14714f}
.form-message.error{color:#a33b3b}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.nuggets{margin:48px auto 0;max-width:560px}
.nuggets h3{margin:0 0 16px;color:var(--navy);font-size:23px;text-align:center}
.nugget-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nugget-grid article{
  min-height:100px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fff;
}
.nugget-grid strong{display:block;color:var(--navy);font-size:15px;line-height:1.25}
.nugget-grid span{display:block;margin-top:6px;color:var(--muted);font-size:13px;line-height:1.4}
footer{
  margin-top:44px;
  padding-top:22px;
  border-top:1px solid var(--line);
  text-align:center;
  color:#7b8998;
  font-size:13px;
}
@media(max-width:520px){
  .page-shell{padding:30px 0 0}
  .card{border-radius:32px 32px 0 0;padding:58px 22px 25px;box-shadow:none}
  .illustration-wrap{margin:55px auto 58px}
  .eyebrow{letter-spacing:.22em;margin-bottom:39px}
  .lead{margin-top:60px}
  .sublead{margin-top:35px}
  .notify{padding:22px;margin-top:40px}
  .nuggets{margin-top:40px}
}
@media(max-width:390px){
  .nugget-grid{grid-template-columns:1fr}
  .brand h1{font-size:37px}
}
