.eg-n20pf {
  --n20-bg:#f2f5f8;
  --n20-surface:#ffffff;
  --n20-elev:#f8fafc;
  --n20-text:#102133;
  --n20-text2:#3f5163;
  --n20-muted:#687a8c;
  --n20-border:#d6dee7;
  --n20-accent:#3d7cf4;
  --n20-accent2:#16a0a0;
  --n20-selected-bg:#e8f0ff;
  --n20-selected-text:#0b2d63;
  --n20-selected-border:#3d7cf4;
  --n20-result:#0f1d2c;
  --n20-result-text:#f7fbff;
  --n20-result-muted:#c7d4e2;
  --n20-warning:#a64b00;
  --n20-focus:#8fc0ff;
  color:var(--n20-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  margin:32px 0;
}
.eg-n20pf * { box-sizing:border-box; }
.eg-n20pf__shell { background:var(--n20-bg); border:1px solid var(--n20-border); border-radius:28px; overflow:hidden; box-shadow:0 24px 70px rgba(18,38,63,.16); }
.eg-n20pf__hero { position:relative; min-height:480px; isolation:isolate; overflow:hidden; }
.eg-n20pf__hero-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-3; }
.eg-n20pf__hero-scrim { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(4,12,22,.94) 0%,rgba(4,12,22,.84) 36%,rgba(4,12,22,.35) 64%,rgba(4,12,22,.12) 100%),linear-gradient(0deg,rgba(4,12,22,.42),transparent 42%); }
.eg-n20pf__hero-copy { width:min(680px,62%); padding:50px 48px 44px; color:#fff; }
.eg-n20pf__badges { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:44px; }
.eg-n20pf__badges span,.eg-n20pf__chips span { display:inline-flex; align-items:center; border-radius:999px; border:1px solid rgba(255,255,255,.34); background:rgba(8,20,33,.48); color:#fff; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.eg-n20pf__badges span { padding:8px 12px; font-size:13px; font-weight:800; letter-spacing:.02em; }
.eg-n20pf__eyebrow { margin:0 0 10px; color:#8ed6ff; font-size:14px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.eg-n20pf__title { margin:0; color:#fff !important; font-size:clamp(54px,7.4vw,96px) !important; line-height:.84 !important; letter-spacing:-.055em !important; font-weight:950 !important; text-shadow:0 4px 24px rgba(0,0,0,.32); }
.eg-n20pf__lede { max-width:620px; margin:22px 0 20px; color:#eef5fb !important; font-size:18px; line-height:1.58; font-weight:600; }
.eg-n20pf__chips { display:flex; flex-wrap:wrap; gap:8px; }
.eg-n20pf__chips span { padding:8px 11px; font-size:12px; font-weight:800; }
.eg-n20pf__content { padding:30px; }
.eg-n20pf__form,.eg-n20pf__results { display:grid; gap:20px; }
.eg-n20pf__results[hidden] { display:none !important; }
.eg-n20pf__step { background:var(--n20-surface); border:1px solid var(--n20-border); border-radius:20px; padding:24px; box-shadow:0 10px 26px rgba(18,38,63,.06); }
.eg-n20pf__step-head { display:flex; gap:14px; align-items:flex-start; margin-bottom:18px; }
.eg-n20pf__step-head--compact { margin-bottom:14px; }
.eg-n20pf__step-no { flex:0 0 auto; width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#0f1d2c; color:#fff; font-weight:900; }
.eg-n20pf h3 { margin:0 0 6px !important; color:var(--n20-text) !important; font-size:22px !important; line-height:1.18 !important; font-weight:900 !important; }
.eg-n20pf__step-head p,.eg-n20pf__microcopy { margin:0; color:var(--n20-text2) !important; font-size:14px; line-height:1.55; }
.eg-n20pf__options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.eg-n20pf__option,.eg-n20pf__checks label,.eg-n20pf__segmented label { position:relative; cursor:pointer; }
.eg-n20pf__option input,.eg-n20pf__checks input,.eg-n20pf__segmented input { position:absolute; opacity:0; pointer-events:none; }
.eg-n20pf__option span,.eg-n20pf__checks span,.eg-n20pf__segmented span { display:block; border:1px solid var(--n20-border); background:var(--n20-elev); color:var(--n20-text); border-radius:15px; transition:.18s ease; }
.eg-n20pf__option span { min-height:88px; padding:16px; }
.eg-n20pf__option strong,.eg-n20pf__checks strong { display:block; color:inherit; font-size:15px; line-height:1.25; font-weight:900; }
.eg-n20pf__option small,.eg-n20pf__checks small { display:block; margin-top:6px; color:var(--n20-text2); font-size:12.5px; line-height:1.4; }
.eg-n20pf__option input:checked + span,.eg-n20pf__checks input:checked + span,.eg-n20pf__segmented input:checked + span { background:var(--n20-selected-bg); border-color:var(--n20-selected-border); color:var(--n20-selected-text); box-shadow:0 0 0 2px rgba(61,124,244,.14); }
.eg-n20pf__option input:focus-visible + span,.eg-n20pf__checks input:focus-visible + span,.eg-n20pf__segmented input:focus-visible + span, .eg-n20pf select:focus-visible, .eg-n20pf button:focus-visible { outline:3px solid var(--n20-focus); outline-offset:2px; }
.eg-n20pf__segmented { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.eg-n20pf__segmented span { padding:13px 12px; text-align:center; font-weight:900; }
.eg-n20pf__grid2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.eg-n20pf__field-label { display:block; margin-bottom:7px; color:var(--n20-text) !important; font-size:13px; font-weight:900; }
.eg-n20pf select { width:100%; min-height:48px; padding:0 42px 0 14px; border:1px solid var(--n20-border); border-radius:12px; background:var(--n20-elev); color:var(--n20-text) !important; font:inherit; font-weight:750; color-scheme:light; }
.eg-n20pf select option { background:#fff; color:#102133; }
.eg-n20pf__checks { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.eg-n20pf__checks span { min-height:84px; padding:15px; }
.eg-n20pf__actions { display:grid; grid-template-columns:auto 1fr; gap:16px; align-items:center; padding:4px 4px 0; }
.eg-n20pf button { appearance:none; -webkit-appearance:none; border:0; cursor:pointer; font:inherit; font-weight:900; }
.eg-n20pf__primary { min-height:50px; padding:0 20px; border-radius:13px; background:linear-gradient(135deg,#2f6deb,#4a8cff); color:#fff !important; box-shadow:0 10px 24px rgba(61,124,244,.26); }
.eg-n20pf__primary:hover { filter:brightness(1.05); }
.eg-n20pf__secondary { min-height:50px; padding:0 20px; border-radius:13px; background:var(--n20-elev); color:var(--n20-text) !important; border:1px solid var(--n20-border); }
.eg-n20pf__results { margin-top:26px; }
.eg-n20pf__result-head { display:flex; align-items:end; justify-content:space-between; gap:16px; background:var(--n20-surface); border:1px solid var(--n20-border); border-radius:20px; padding:22px 24px; }
.eg-n20pf__eyebrow--dark { color:#2768d5 !important; }
.eg-n20pf__status { display:inline-flex; border-radius:999px; padding:8px 11px; background:#e9f7f5; color:#0f6a64 !important; font-size:12px; font-weight:900; border:1px solid #b7e5de; }
.eg-n20pf__result-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.eg-n20pf__pick { background:var(--n20-result); color:var(--n20-result-text); border-radius:18px; padding:22px; min-height:210px; border:1px solid rgba(255,255,255,.1); box-shadow:0 12px 30px rgba(7,17,28,.17); }
.eg-n20pf__pick-kicker { margin:0 0 8px; color:#8ed6ff !important; font-size:12px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.eg-n20pf__pick h4 { margin:0 0 12px !important; color:#fff !important; font-size:24px !important; line-height:1.1 !important; font-weight:950 !important; }
.eg-n20pf__pick p { margin:0 0 10px; color:var(--n20-result-muted) !important; font-size:13px; line-height:1.5; }
.eg-n20pf__meta { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; }
.eg-n20pf__meta span { border:1px solid rgba(255,255,255,.16); border-radius:999px; padding:6px 8px; color:#fff !important; font-size:11px; font-weight:850; }
.eg-n20pf__setting-card { background:var(--n20-surface); border:1px solid var(--n20-border); border-radius:20px; padding:24px; }
.eg-n20pf__setting-card h4 { margin:0 0 8px !important; color:var(--n20-text) !important; font-size:20px !important; font-weight:950 !important; }
.eg-n20pf__setting-card p { margin:0 0 12px; color:var(--n20-text2) !important; line-height:1.55; }
.eg-n20pf__setting-card ul { margin:0; padding-left:20px; color:var(--n20-text) !important; }
.eg-n20pf__setting-card li { margin:7px 0; color:var(--n20-text) !important; line-height:1.5; }
.eg-n20pf__result-actions { display:flex; flex-wrap:wrap; gap:10px; }

@media (max-width:820px) {
  .eg-n20pf__hero { min-height:540px; }
  .eg-n20pf__hero-copy { width:74%; padding:38px 30px; }
  .eg-n20pf__title { font-size:clamp(48px,10vw,74px) !important; }
  .eg-n20pf__content { padding:22px; }
  .eg-n20pf__result-grid { grid-template-columns:1fr; }
  .eg-n20pf__checks { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  .eg-n20pf__shell { border-radius:20px; }
  .eg-n20pf__hero { min-height:620px; }
  .eg-n20pf__hero-img { object-position:62% center; }
  .eg-n20pf__hero-scrim { background:linear-gradient(180deg,rgba(4,12,22,.9) 0%,rgba(4,12,22,.76) 52%,rgba(4,12,22,.55) 100%); }
  .eg-n20pf__hero-copy { width:100%; padding:28px 22px 30px; }
  .eg-n20pf__badges { margin-bottom:150px; }
  .eg-n20pf__lede { font-size:16px; }
  .eg-n20pf__content { padding:14px; }
  .eg-n20pf__step { padding:18px; border-radius:16px; }
  .eg-n20pf__options,.eg-n20pf__grid2,.eg-n20pf__segmented,.eg-n20pf__actions { grid-template-columns:1fr; }
  .eg-n20pf__microcopy { padding:0 2px; }
}

@media (prefers-color-scheme: dark) {
  .eg-n20pf {
    --n20-bg:#0d141d;
    --n20-surface:#131e29;
    --n20-elev:#182532;
    --n20-text:#f3f7fb;
    --n20-text2:#c4d0db;
    --n20-muted:#9fb0bf;
    --n20-border:#2b3a49;
    --n20-selected-bg:#15335f;
    --n20-selected-text:#f4f8ff;
    --n20-selected-border:#73a6ff;
    --n20-focus:#a8caff;
  }
  .eg-n20pf select { color-scheme:dark; background:#182532; color:#f3f7fb !important; border-color:#354657; }
  .eg-n20pf select option { background:#182532; color:#f3f7fb; }
  .eg-n20pf__status { background:#123633; color:#b8fff4 !important; border-color:#275a55; }
  .eg-n20pf__eyebrow--dark { color:#8fc0ff !important; }
}
