

:root {
  --ink: #eaf3ff;
  --muted: #9eb2c9;
  --navy-950: #06101f;
  --line: rgba(151, 194, 235, 0.18);
  --cyan: #35c6f4;
  --violet: #846df5;
  --surface: rgba(14, 37, 65, 0.72);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--navy-950); }
body {
  margin: 0;
  color: var(--ink);
  background: radial-gradient(circle at 12% 8%, rgba(53,198,244,.12), transparent 31rem), radial-gradient(circle at 82% 22%, rgba(132,109,245,.1), transparent 32rem), var(--navy-950);
  font-family: var(--font-geist-sans), system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.72;
  min-height: 100vh;
}
a { color: inherit; }

.site-header {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}
.brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 650; letter-spacing: -.01em; text-decoration: none; }
.brand-mark {
  width: 32px; height: 32px; display: flex; align-items: flex-end; justify-content: center; gap: 3px; padding: 7px 6px;
  border: 1px solid rgba(108,205,255,.35); border-radius: 9px;
  background: linear-gradient(145deg, rgba(53,198,244,.14), rgba(132,109,245,.15));
}
.brand-mark span { width: 4px; border-radius: 4px; background: linear-gradient(180deg, var(--cyan), var(--violet)); }
.brand-mark span:nth-child(1) { height: 10px; }
.brand-mark span:nth-child(2) { height: 17px; }
.brand-mark span:nth-child(3) { height: 13px; }
.header-label { color: var(--muted); font-size: .88rem; letter-spacing: .08em; text-transform: uppercase; }

.page-shell {
  width: min(1120px, calc(100% - 40px)); margin: 0 auto; padding: 88px 0 112px;
  display: grid; grid-template-columns: minmax(250px,.72fr) minmax(0,1.45fr); gap: clamp(60px,9vw,130px); align-items: start;
}
.summary { position: sticky; top: 52px; }
.summary-icon {
  width: 54px; height: 54px; display: grid; place-items: center; margin-bottom: 24px; color: var(--cyan);
  background: linear-gradient(145deg, rgba(53,198,244,.12), rgba(132,109,245,.1));
  border: 1px solid rgba(83,189,239,.22); border-radius: 16px;
}
.eyebrow, .section-number { margin: 0 0 10px; color: var(--cyan); font-size: .77rem; font-weight: 700; letter-spacing: .12em; line-height: 1.2; text-transform: uppercase; }
h1, h2, p { margin-top: 0; }
h1 { max-width: 470px; margin-bottom: 22px; font-size: clamp(2.4rem,5vw,4.4rem); font-weight: 680; letter-spacing: -.055em; line-height: .98; }
.summary-copy { max-width: 430px; margin-bottom: 34px; color: var(--muted); font-size: 1.04rem; }
dl { margin: 0; display: grid; gap: 14px; }
dl div { display: grid; grid-template-columns: 88px 1fr; gap: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
dt { color: var(--muted); font-size: .8rem; text-transform: uppercase; letter-spacing: .07em; }
dd { margin: 0; color: #d7e6f7; font-size: .92rem; }
.policy { min-width: 0; }
.intro {
  margin-bottom: 28px; padding: clamp(26px,5vw,44px); border: 1px solid rgba(110,190,231,.2); border-radius: 24px;
  background: linear-gradient(145deg, rgba(20,55,91,.72), rgba(12,31,55,.82)); box-shadow: 0 24px 80px rgba(0,0,0,.16);
}
h2 { margin-bottom: 16px; font-size: clamp(1.4rem,3vw,1.85rem); font-weight: 640; letter-spacing: -.03em; line-height: 1.15; }
.intro > p:last-child, .policy-section p, .contact p { color: #b8cbe0; }
.intro > p:last-child { margin-bottom: 0; font-size: 1.06rem; }
.policy-section { padding: 44px 4px; border-bottom: 1px solid var(--line); scroll-margin-top: 24px; }
.section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.section-heading .section-number { margin: 0; }
.section-icon { width: 36px; height: 36px; display: grid; place-items: center; color: var(--cyan); border: 1px solid var(--line); border-radius: 10px; background: rgba(53,198,244,.05); }
.section-body, .policy-section.compact > p, .contact p { max-width: 68ch; }
.section-body p:last-child, .policy-section.compact > p:last-child, .contact p:last-child { margin-bottom: 0; }
strong { color: #eaf3ff; font-weight: 650; }
.policy-section.compact { padding-top: 38px; padding-bottom: 38px; }
.contact { margin-top: 42px; padding: 32px; border-left: 3px solid transparent; border-image: linear-gradient(var(--cyan),var(--violet)) 1; background: var(--surface); }
footer {
  width: min(1180px, calc(100% - 40px)); min-height: 88px; margin: 0 auto; display: flex; align-items: center;
  justify-content: space-between; gap: 20px; color: var(--muted); font-size: .86rem; border-top: 1px solid var(--line);
}

@media (max-width: 780px) {
  .page-shell { padding-top: 56px; grid-template-columns: 1fr; gap: 50px; }
  .summary { position: static; }
  .summary-copy { max-width: 60ch; }
  dl { max-width: 480px; }
}
@media (max-width: 520px) {
  .site-header, .page-shell, footer { width: min(100% - 28px, 1120px); }
  .site-header { min-height: 68px; }
  .header-label { display: none; }
  .page-shell { padding: 42px 0 76px; }
  h1 { font-size: 2.7rem; }
  .intro { border-radius: 18px; }
  .policy-section { padding: 36px 2px; }
  .contact { padding: 26px 22px; }
  footer { padding: 22px 0; flex-direction: column; align-items: flex-start; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.page-shell {padding-top:56px; gap:clamp(36px,6vw,88px)}
h1 {font-size:clamp(2.4rem,4vw,3.5rem);line-height:1.05}
.form-card {padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(20,55,91,.72),rgba(12,31,55,.82))}
.field {margin-bottom:22px} label {display:block;margin-bottom:7px;font-weight:600} input,select,textarea {font:inherit;color:var(--ink);background:#091a30;border:1px solid #486078;border-radius:10px;padding:11px 13px;width:100%;min-width:0} textarea{resize:vertical;min-height:180px} select{color-scheme:dark} input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px} .pair{display:grid;grid-template-columns:1fr 1fr;gap:18px} .help{color:#b8cbe0;font-size:.92rem;margin:8px 0 22px} .optional {color:var(--muted);font-weight:400;font-size:.88rem} button {border:0;border-radius:10px;padding:13px 22px;background:linear-gradient(110deg,#35c6f4,#a195ff);color:#06101f;font:inherit;font-weight:700;cursor:pointer}button:disabled{opacity:.55;cursor:wait} .status{color:#ffd1d1;margin-top:18px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden} [hidden]{display:none!important} .success{padding:22px 0}.success h2{font-size:2rem}.success p{color:#b8cbe0}.form-card h2{margin-bottom:24px} .small-link{color:#b8cbe0} #challenge{margin-bottom:20px;min-height:65px} @media(max-width:520px){.pair{grid-template-columns:1fr;gap:0}.page-shell{gap:28px}.summary-copy{margin-bottom:20px}}
