:root { --ink:#092a32; --cyan:#53e6dc; --lime:#d6ff5f; --sand:#f7f1e5; --white:#fffdf8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
[id] { scroll-margin-top:24px; }
body { margin:0; background:var(--white); color:var(--ink); font-family:var(--font-geist-sans,Arial),sans-serif; }
button,input { font:inherit; }
.hidden { display:none!important; }
.field-error { border-color:#df8e76!important; box-shadow:0 0 0 3px rgba(223,142,118,.18)!important; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }

.hero { position:relative; overflow:hidden; color:white; background:#030812; }
.pioneertown-backdrop { position:absolute; z-index:0; inset:0; overflow:hidden; pointer-events:none; }
.pioneertown-backdrop__image { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center top; }
.pioneertown-backdrop__stars { position:absolute; inset:0; width:100%; height:100%; }
.twinkle { opacity:.015; transition:opacity 70ms ease-out; }
.twinkle.is-on { opacity:.72; }
.twinkle .halo { fill:rgba(190,220,255,.12); filter:blur(2.3px); }
.twinkle .light { fill:rgba(240,248,255,.86); }
.shooting-star { opacity:0; }
.shooting-star__tail { stroke:url(#hero-shooting-star-tail); stroke-width:2; stroke-linecap:round; }
.shooting-star__head { fill:rgba(247,251,255,.98); filter:url(#hero-shooting-star-glow); }
.nav { position:relative; z-index:10; height:92px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.13); }
.brand { position:relative; display:inline-flex; font-size:23px; font-weight:900; letter-spacing:-.07em; }
.brand-flash { color:white; }
.brand i { position:absolute; right:-13px; top:3px; width:7px; height:7px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 5px rgba(214,255,95,.15); }
.legacy-brand { width:198px; overflow:visible; background:transparent; }
.legacy-brand img { display:block; width:100%; height:auto; filter:drop-shadow(0 0 1px rgba(255,255,255,1)) drop-shadow(0 0 3px rgba(255,255,255,.92)) drop-shadow(0 0 8px rgba(83,230,220,.36)); }
.nav-links { display:flex; gap:34px; font-size:14px; font-weight:600; color:rgba(255,255,255,.77); }
.nav-links a:hover { color:white; }
.account-link { padding:12px 17px; border:1px solid rgba(255,255,255,.24); border-radius:999px; font-size:13px; font-weight:700; }
.account-link span,button span,a span { margin-left:6px; }

.scenic-spacer { position:relative; z-index:2; min-height:clamp(440px,calc(42vw - 92px),720px); }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 24px; color:var(--lime); text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:800; }
.eyebrow span { width:28px; height:1px; background:currentColor; }
.coverage-section { padding:104px 0; background:var(--sand); }
.coverage-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:76px; align-items:center; }
.coverage-intro h1 { max-width:620px; margin:0; color:var(--ink); font-size:clamp(52px,5.5vw,78px); line-height:.94; letter-spacing:-.065em; font-weight:760; }
.coverage-intro h1 em { color:#199e96; font-style:normal; }
.coverage-intro .lede { max-width:570px; margin:28px 0 0; color:#526565; font-size:18px; line-height:1.58; }
.coverage-action { min-width:0; }
.coverage-form { width:min(670px,100%); padding:19px; border-radius:18px; background:white; color:var(--ink); box-shadow:0 18px 70px rgba(0,0,0,.24); }
.coverage-form label { display:block; margin:0 0 10px 3px; text-transform:uppercase; letter-spacing:.11em; font-size:10px; font-weight:850; }
.form-row { display:flex; gap:10px; }
.form-row input { min-width:0; flex:1; height:54px; border:1px solid #d9e1dd; border-radius:11px; padding:0 17px; color:var(--ink); background:#f8faf8; outline:none; font-size:15px; }
.form-row input:focus { border-color:#2f968f; box-shadow:0 0 0 3px rgba(83,230,220,.22); }
.form-row button { border:0; border-radius:11px; padding:0 21px; background:var(--ink); color:white; font-weight:800; cursor:pointer; }
.form-row button:hover { background:#16434b; }
.form-note { min-height:17px; margin:11px 3px 0; color:#71807c; font-size:11px; }
.form-note.success { color:#15786f; font-weight:650; }
.lead-panel { width:min(670px,100%); margin-top:12px; padding:18px; border:1px solid rgba(83,230,220,.32); border-radius:18px; background:rgba(7,27,38,.82); backdrop-filter:blur(12px); animation:reveal .28s ease-out; }
.lead-panel strong,.lead-panel small { display:block; }
.lead-panel strong { font-size:14px; }
.lead-panel small { margin-top:4px; color:rgba(255,255,255,.58); font-size:11px; }
.lead-fields { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }
.lead-fields input { min-width:0; height:44px; border:1px solid rgba(255,255,255,.17); border-radius:9px; padding:0 12px; color:white; background:rgba(255,255,255,.08); outline:none; }
.lead-fields input::placeholder { color:rgba(255,255,255,.45); }
.lead-fields input:focus { border-color:var(--cyan); }
.lead-fields button { grid-column:1/-1; height:45px; border:0; border-radius:9px; background:var(--lime); color:var(--ink); font-weight:850; cursor:pointer; }
.lead-fields button:disabled { opacity:.72; cursor:default; }
.website-field { position:absolute; left:-9999px; }
.bridge-note { margin:10px 0 0; color:#ffd492; font-size:11px; }
@keyframes reveal { from { opacity:0; transform:translateY(-7px); } to { opacity:1; transform:none; } }

.trust-strip { position:relative; z-index:5; color:white; border-top:1px solid rgba(255,255,255,.13); background:#071b26; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.trust-grid p { margin:0; padding:25px 20px; border-right:1px solid rgba(255,255,255,.12); }
.trust-grid p:first-child { padding-left:0; }
.trust-grid p:last-child { border:0; }
.trust-grid strong,.trust-grid span { display:block; }
.trust-grid strong { font-size:14px; }
.trust-grid span { margin-top:4px; color:rgba(255,255,255,.49); font-size:11px; }

.why { padding-block:120px; }
.eyebrow.dark { color:#1e8882; }
.section-heading h2,.plans h2,.closing h2 { margin:0; font-size:clamp(44px,5.5vw,72px); line-height:.98; letter-spacing:-.06em; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:65px; }
.feature-grid article { min-height:310px; padding:28px; border-radius:18px; background:var(--sand); }
.feature-grid article:nth-child(2) { background:#dff9f4; }
.feature-grid article:nth-child(3) { background:#efffc5; }
.feature-grid b { display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center; border:1px solid rgba(9,42,50,.18); border-radius:50%; font-size:11px; }
.feature-grid h3 { margin:78px 0 13px; font-size:25px; line-height:1.05; letter-spacing:-.04em; }
.feature-grid p { margin:0; color:#526565; line-height:1.6; font-size:14px; }

.plans { padding-block:115px; color:white; background:#0e5252; }
.plans-grid { display:grid; grid-template-columns:1fr .82fr; gap:100px; align-items:center; }
.plans-grid>div>p:not(.eyebrow) { max-width:550px; margin:26px 0 30px; color:rgba(255,255,255,.67); line-height:1.65; }
.button-light { display:inline-flex; padding:15px 20px; border-radius:999px; background:var(--lime); color:var(--ink); font-size:13px; font-weight:850; }
.plan-card { padding:42px; border-radius:24px; background:white; color:var(--ink); transform:rotate(1.5deg); box-shadow:18px 20px 0 #53e6dc; }
.plan-card .plan-kicker { margin:0 0 12px!important; color:#278b84!important; text-transform:uppercase; letter-spacing:.11em; font-size:10px; font-weight:850; }
.plan-card h3 { margin:0; max-width:390px; font-size:38px; line-height:1.04; letter-spacing:-.045em; }
.plan-card ul { padding:0; margin:32px 0; list-style:none; }
.plan-card li { padding:12px 0; border-bottom:1px solid #e4ebe6; font-size:14px; }
.plan-card li span { color:#218d83; font-weight:900; }
.plan-card small { color:#74817d; }

.closing { padding-block:120px; text-align:center; background:var(--sand); }
.closing p { margin:0 0 15px; text-transform:uppercase; letter-spacing:.15em; font-size:11px; font-weight:800; color:#388980; }
.closing a { display:inline-flex; margin-top:34px; padding:16px 23px; border-radius:999px; background:var(--ink); color:white; font-size:13px; font-weight:800; }

footer { padding:74px 0 26px; background:#071b26; color:white; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:50px; }
.footer-grid>div { display:flex; flex-direction:column; align-items:flex-start; gap:11px; }
.footer-grid strong { margin-bottom:7px; color:var(--cyan); text-transform:uppercase; letter-spacing:.12em; font-size:10px; }
.footer-grid a,.footer-grid p { margin:0; color:rgba(255,255,255,.58); font-size:13px; line-height:1.6; }
.footer-grid a:hover { color:white; }
.footer-brand { width:218px; margin-bottom:8px!important; color:white!important; }
.legal { display:flex; justify-content:space-between; margin-top:60px; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.38); font-size:10px; }

@media(max-width:900px){
  .pioneertown-backdrop__image{object-position:60% top}
  .nav-links{display:none}
  .scenic-spacer{min-height:440px}
  .coverage-grid{grid-template-columns:1fr;gap:44px}
  .plans-grid{grid-template-columns:1fr;gap:65px}
  .footer-grid{grid-template-columns:1.6fr 1fr 1fr}
  .footer-grid>div:last-child{display:none}
}
@media(prefers-reduced-motion:reduce){
  .twinkle{opacity:.08;transition:none}
  .shooting-star{display:none}
}
@media(max-width:640px){
  .shell{width:min(100% - 28px,1180px)}
  .nav{height:76px}
  .legacy-brand{width:156px}
  .account-link{padding:10px 13px}
  .scenic-spacer{min-height:390px}
  .coverage-section{padding:72px 0}
  .eyebrow{margin-bottom:18px}
  .coverage-intro h1{font-size:clamp(44px,12.5vw,54px)}
  .coverage-intro .lede{font-size:16px;line-height:1.48}
  .coverage-form{padding:16px}
  .form-row{flex-direction:column}
  .form-row button{height:52px}
  .lead-fields{grid-template-columns:1fr}
  .lead-fields button{grid-column:auto}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-grid p{padding:18px 12px;border-bottom:1px solid rgba(255,255,255,.12)}
  .why,.plans,.closing{padding-block:72px}
  .section-heading h2,.plans h2,.closing h2{font-size:clamp(40px,12vw,54px)}
  .feature-grid{grid-template-columns:1fr;margin-top:38px}
  .feature-grid article{min-height:220px;padding:24px}
  .feature-grid h3{margin-top:42px}
  .plans-grid{gap:48px}
  .plan-card{padding:30px 24px;transform:none;box-shadow:9px 12px 0 #53e6dc}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:first-child{grid-column:1/-1}
  .legal{gap:20px}
}
