*,:before,:after{box-sizing:border-box}:root{--ground:#0a1d33;--surface:#102a45;--surface-2:#16334f;--surface-3:#1c3d5c;--line:#23496e;--line-strong:#2f5c86;--ink:#f4f8fc;--ink-2:#a9c0d8;--ink-3:#7993b2;--accent:#e0ae59;--accent-hover:#f0c47a;--accent-ink:#04121f;--accent-wash:#2a2010;--accent-soft:#132b47;--good:#48c494;--good-wash:#0e3326;--warn:#e2a93f;--warn-wash:#33280f;--bad:#ec7c72;--bad-wash:#381c1a;--gold:#f5c245;--gold-dim:#36506e;--cs-ink:#0f1720;--cs-veil:#0000002e;--brand-gold:#cc994a;--brand-gold-lift:#e0ae59;--hero:#102a45;--hero-line:#2a5480;--hero-ink:#fff;--hero-ink-2:#a9c0d8;--pick-hire:#d9a74e;--pick-work:#1e5a8f;--tel:#4cc999;--tel-w:#13382b;--pow:#f07c73;--pow-w:#3d201d;--wat:#5aa9f5;--wat-w:#173349;--gas:#f0c24b;--gas-w:#3c3217;--civ:#e39a62;--civ-w:#3c2918;--oth:#9aa8b8;--oth-w:#273443;--tm:#b98cf0;--tm-w:#2f2140;--shadow-1:0 1px 2px #00000080, 0 6px 16px #00000059;--shadow-2:0 2px 6px #0000008c, 0 20px 48px #0000008c;--display:ui-rounded,"SF Pro Rounded","Segoe UI Variable Display","Avenir Next",system-ui,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--r:16px;--r-sm:11px}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:15.5px;line-height:1.5;overflow-x:clip}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer}:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:6px}.header{z-index:40;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-1);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.header-inner{flex-wrap:nowrap;align-items:center;gap:12px;max-width:1180px;margin:0 auto;padding:12px 20px;display:flex}.brand{white-space:nowrap}.brand i{color:var(--accent);font-style:normal}.brand:hover{text-decoration:none}.pilot{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-wash);white-space:nowrap;border-radius:99px;padding:5px 11px;font-size:11px;font-weight:700}.who{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:26ch;font-size:13px;overflow:hidden}.grow{flex:1}.pilot-strip{background:linear-gradient(180deg,var(--brand-gold-lift),var(--brand-gold));border-bottom:1px solid #8e6726}.pilot-strip-inner{color:#04121f;max-width:1180px;margin:0 auto;padding:9px 20px;font-size:12.5px}.pilot-line{display:block}.pilot-bar{background:#04121f38;border-radius:99px;height:3px;margin-top:6px;overflow:hidden}.pilot-bar span{background:#04121f;border-radius:99px;height:100%;display:block}.pilot-strip-inner b{font-weight:700}@media (max-width:900px){.pilot-strip-inner{padding:8px 14px;font-size:12px}}.app{grid-template-columns:236px minmax(0,1fr);gap:28px;max-width:1180px;margin:0 auto;padding:26px 20px 90px;display:grid}.app.no-side{grid-template-columns:minmax(0,1fr);max-width:820px}.main{min-width:0;max-width:760px}.sidebar{align-self:start;position:sticky;top:86px}.side{flex-direction:column;gap:4px;display:flex}.nav-item{border-radius:var(--r-sm);color:var(--ink-2);border:1.5px solid #0000;align-items:center;gap:11px;padding:11px 13px;font-size:14.5px;font-weight:600;display:flex}.nav-item:hover{background:var(--surface);color:var(--ink);text-decoration:none}.nav-item.on{background:var(--accent-wash);color:var(--accent);border-color:var(--accent)}.nav-mark{background:var(--surface-3);border-radius:7px;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.nav-item.on .nav-mark{background:var(--accent);color:var(--accent-ink)}@media (max-width:900px){.header-inner{gap:9px;padding:10px 14px}.brand{font-size:21px}.who{display:none}.app{grid-template-columns:minmax(0,1fr);gap:0;padding:0 14px 90px}.main{max-width:none;padding-top:18px}.sidebar{top:calc(58px + env(safe-area-inset-top,0px));z-index:30;background:var(--ground);border-bottom:1px solid var(--line);margin:0 -14px;padding:9px 14px;position:sticky}.side{scrollbar-width:none;flex-direction:row;gap:8px;overflow-x:auto}.side::-webkit-scrollbar{display:none}.nav-item{background:var(--surface);border-color:var(--line);flex:none;padding:9px 14px;font-size:13.5px}}@media (max-width:430px){.pilot{display:none}}h1{font-family:var(--display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 8px;font-size:30px;line-height:1.15}h2{font-family:var(--display);letter-spacing:-.02em;margin:26px 0 12px;font-size:20px}.lede{color:var(--ink-2);max-width:56ch;margin:0 0 20px}.eyebrow{color:var(--ink-2);margin:0 0 9px;font-size:12px;font-weight:700}.muted{color:var(--ink-2)}.small{font-size:13.5px}.tiny{font-size:12px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.row{align-items:center;gap:11px;display:flex}.row.between{justify-content:space-between}.wrap{flex-wrap:wrap;gap:8px}.stack{flex-direction:column;gap:4px;display:flex}hr.rule{border:none;border-top:1px solid var(--line);margin:18px 0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);margin-bottom:13px;padding:17px}.card.flat{box-shadow:none;background:var(--surface-2)}.card.tap{color:inherit;transition:transform .14s,box-shadow .14s,border-color .14s;display:block}.card.tap:hover{border-color:var(--accent);box-shadow:var(--shadow-2);text-decoration:none;transform:translateY(-2px)}.btn{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-1);border:none;border-radius:99px;justify-content:center;align-items:center;gap:9px;padding:14px 22px;font-size:16px;font-weight:600;display:inline-flex}.btn:hover{background:var(--accent-hover)}.btn.block{width:100%}.btn.ghost{background:var(--surface);color:var(--ink);border:1.5px solid var(--line-strong);box-shadow:none}.btn.ghost:hover{background:var(--surface-2);border-color:var(--accent);color:var(--accent)}.btn.sm{padding:9px 16px;font-size:14px}.field{flex-direction:column;gap:7px;margin-bottom:14px;display:flex}.field label{color:var(--ink-2);font-size:13px;font-weight:600}.input{background:var(--surface-2);border:1.5px solid var(--line);border-radius:var(--r-sm);font:inherit;color:var(--ink);width:100%;padding:13px 14px}.input:focus{border-color:var(--accent);outline:none}.grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cols{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:13px;display:grid}@media (max-width:560px){.grid2{grid-template-columns:1fr}}.pill{border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex}.pill .dot{background:currentColor;border-radius:99px;width:7px;height:7px}.pill.green{background:var(--good-wash);color:var(--good)}.pill.amber{background:var(--warn-wash);color:var(--warn)}.pill.red{background:var(--bad-wash);color:var(--bad)}.pill.neutral{background:var(--surface-3);color:var(--ink-2);font-weight:500}.pill.blue{background:var(--accent-wash);color:var(--accent)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line);color:var(--ink-2);background:var(--surface);-webkit-user-select:none;user-select:none;border-radius:99px;align-items:center;gap:7px;padding:7px 13px;font-size:13px;display:inline-flex}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip input{opacity:0;width:0;height:0;position:absolute}.chip.on{background:var(--accent-wash);border-color:var(--accent);color:var(--accent);font-weight:600}.sectors{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}@media (max-width:420px){.sectors{grid-template-columns:repeat(2,1fr)}}.sector{border:1.5px solid var(--c);border-radius:var(--r-sm);color:var(--c);-webkit-user-select:none;user-select:none;cursor:pointer;background:0 0;flex-direction:column;align-items:center;gap:8px;padding:13px 6px 12px;font-size:12.5px;font-weight:600;transition:background .12s,color .12s,transform .12s;display:flex;position:relative}.sector:hover{background:var(--cw);transform:translateY(-1px)}.sector.on{background:var(--cs);border-color:var(--cs);color:var(--cs-ink);box-shadow:var(--shadow-1)}.sector:has(:checked){background:var(--cs);border-color:var(--cs);color:var(--cs-ink);box-shadow:var(--shadow-1)}.sector.on:hover{background:var(--cs)}.sector:has(:checked):hover{background:var(--cs)}.sector:has(:focus-visible){outline:2px solid var(--c);outline-offset:2px}.sector .dotmark{background:var(--cw);width:34px;height:34px;color:var(--c);border-radius:99px;place-items:center;font-size:15px;display:grid}.sector.on .dotmark{background:var(--cs-veil);color:var(--cs-ink)}.sector:has(:checked) .dotmark{background:var(--cs-veil);color:var(--cs-ink)}.sector.on:after{content:"✓";opacity:.85;font-size:11px;line-height:1;position:absolute;top:6px;right:8px}.sector:has(:checked):after{content:"✓";opacity:.85;font-size:11px;line-height:1;position:absolute;top:6px;right:8px}.s-telecoms{--c:var(--tel);--cw:var(--tel-w);--cs:#0b7a55}.s-power{--c:var(--pow);--cw:var(--pow-w);--cs:#b92e25}.s-water{--c:var(--wat);--cw:var(--wat-w);--cs:#135faf}.s-gas{--c:var(--gas);--cw:var(--gas-w);--cs:#8f6200}.s-civils{--c:var(--civ);--cw:var(--civ-w);--cs:#8f4f20}.s-other{--c:var(--oth);--cw:var(--oth-w);--cs:#556475}.s-traffic{--c:var(--tm);--cw:var(--tm-w);--cs:#6d3c9c}.s-telecoms{--cs:var(--tel)}.s-power{--cs:var(--pow)}.s-water{--cs:var(--wat)}.s-gas{--cs:var(--gas)}.s-civils{--cs:var(--civ)}.s-other{--cs:var(--oth)}.s-traffic{--cs:var(--tm)}.hush{filter:blur(6px);-webkit-user-select:none;user-select:none}.score{align-items:center;gap:9px;display:flex}.score .num{font-family:var(--mono);font-size:13.5px;font-weight:600}.meter{background:var(--surface-3);border-radius:99px;width:46px;height:6px;overflow:hidden}.meter i{background:var(--accent);height:100%;display:block}.score.part .meter i{background:var(--warn)}.score.part .num{color:var(--warn)}.fresh{color:var(--ink-2);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.fresh.stale{color:var(--bad);font-weight:600}.notice{background:var(--accent-soft);border:1px solid var(--accent-wash);border-radius:var(--r-sm);color:var(--ink-2);margin-bottom:14px;padding:13px 14px;font-size:13px}.notice.warm{background:var(--warn-wash);border-color:#0000}.notice.bad{background:var(--bad-wash);color:var(--bad);border-color:#0000;font-weight:600}.check{color:var(--ink-2);align-items:flex-start;gap:11px;margin-bottom:12px;font-size:13px;display:flex}.check input{width:19px;height:19px;accent-color:var(--accent);flex:none;margin:1px 0 0}.spinner{vertical-align:-3px;opacity:.85;border:2px solid;border-top-color:#0000;border-radius:99px;flex:none;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}.spinner.dark{border-color:var(--accent);border-top-color:#0000;width:22px;height:22px}@keyframes spin{to{transform:rotate(360deg)}}button[disabled]{opacity:.72;cursor:progress}.waiting{align-items:center;gap:11px;padding:28px 0;display:flex}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stars-field{border:0;margin:0 0 14px;padding:0}.stars-field legend{color:var(--ink-2);margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.stars{align-items:center;gap:2px;display:flex}.star{cursor:pointer;color:var(--gold-dim);padding:2px 1px;font-size:27px;line-height:1;transition:color .12s,transform .12s}.star input{opacity:0;width:1px;height:1px;position:absolute}.star.lit{color:var(--gold)}.star:active{transform:scale(.92)}.stars:has(:focus-visible) .star.lit{color:var(--gold)}.star:has(:focus-visible){outline:2px solid var(--accent);outline-offset:1px;border-radius:4px}.stars-word{color:var(--ink-3);margin-left:10px;font-weight:600}.held{border-left:3px solid var(--warn)}.steps{color:var(--ink-2);margin:0;padding-left:20px}.steps li{margin-bottom:6px}.steps li::marker{color:var(--accent);font-weight:700}.nav-head{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin:14px 0 4px;padding:0 11px;font-size:10.5px;font-weight:700}.nav-head:first-child{margin-top:0}.nav-item.add{color:var(--ink-3);font-weight:500}.nav-item.add:hover{color:var(--accent)}.prose{color:var(--ink-2);max-width:62ch;font-size:14px;line-height:1.62}.prose h2{color:var(--ink);margin:26px 0 8px;font-size:17px}.prose h3{color:var(--ink);margin:20px 0 6px;font-size:14.5px}.prose p{margin:0 0 11px}.prose ul,.prose ol{margin:0 0 12px;padding-left:20px}.prose li{margin-bottom:5px}.prose strong{color:var(--ink)}.prose a{color:var(--accent)}.prose code{font-family:var(--mono);background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:12.5px}.footer{border-top:1px solid var(--line);padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));margin-top:34px}.footer-inner{flex-wrap:wrap;align-items:center;gap:16px;max-width:1060px;margin:0 auto;padding:14px 18px 0;display:flex}.footer-inner a{color:var(--ink-2);font-weight:600;text-decoration:none}.footer-inner a:hover{color:var(--accent)}.hero{background:var(--hero);border:1px solid var(--hero-line);border-radius:var(--r);text-align:center;margin:0 0 26px;padding:34px 26px 30px}.no-side .hero{border:0;border-bottom:1px solid var(--hero-line);border-radius:0;margin-bottom:30px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:44px max(20px,50vw - 340px) 40px}.hero-inner{max-width:660px;margin:0 auto}.hero h1{color:var(--hero-ink);letter-spacing:-.033em;margin:0 0 12px;font-size:clamp(27px,5.4vw,42px);line-height:1.1}.hero .lede{color:var(--hero-ink-2);max-width:50ch;margin:0 auto 24px;font-size:15px}.picks{text-align:left;grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:600px){.picks{grid-template-columns:1fr}}.pick{border-radius:var(--r);color:#fff;box-shadow:var(--shadow-1);padding:20px 20px 22px;transition:transform .14s,box-shadow .14s;display:block}.pick:hover{box-shadow:var(--shadow-2);color:#fff;text-decoration:none;transform:translateY(-2px)}.pick:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.pick.hire{background:var(--pick-hire);color:#04121f}.pick.hire:hover{color:#04121f}.pick.hire .pick-eyebrow{opacity:.72}.pick.work{background:var(--pick-work)}.pick .pick-eyebrow{letter-spacing:.1em;text-transform:uppercase;opacity:.85;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.pick b{font-family:var(--display);letter-spacing:-.02em;font-size:22px;line-height:1.15;display:block}.pick span.pick-sub{margin-top:8px;font-size:13.5px;line-height:1.45;display:block}.pick .pick-go{margin-top:12px;font-size:13px;font-weight:700;display:inline-block}.hero-how{text-align:left;border-top:1px solid var(--hero-line);grid-template-columns:1fr 1fr;gap:26px;margin-top:30px;padding-top:24px;display:grid}@media (max-width:600px){.hero-how{grid-template-columns:1fr;gap:20px}}.hero-how .eyebrow{color:var(--hero-ink);letter-spacing:.04em;font-size:13px}.hero-how .steps{color:var(--hero-ink);padding-left:22px;font-size:15px;font-weight:500;line-height:1.5}.hero-how .steps.small{font-size:15px}.hero-how .steps li{margin-bottom:8px}.hero-how .steps li::marker{color:var(--accent);font-weight:800}.hero-back{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@media (min-width:901px){.no-side .hero{margin-top:-26px}}@media (max-width:600px){.hero,.no-side .hero{margin-bottom:22px;padding:32px 18px 30px}.hero .lede,.hero-how .steps,.hero-how .steps.small{font-size:14.5px}}.placed{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink-2);margin-bottom:14px;padding:10px 13px;font-size:13px}.placed summary{cursor:pointer;font-weight:600}.placed summary b{color:var(--ink)}.placed[open] summary{margin-bottom:2px}.card.tile{color:inherit;text-decoration:none;display:block}.card.tile:hover b{color:var(--accent)}h2[id]{scroll-margin-top:92px}.brand{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand-mark{white-space:nowrap;width:42px;height:34px;font-family:var(--display);letter-spacing:-.09em;background:linear-gradient(160deg,#0a2742,#04182c);border:1px solid #163b5e;border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:17px;font-weight:800;display:inline-flex;box-shadow:0 2px 8px #00000073}.brand-mark .r1{background:linear-gradient(150deg,#f7dca2,#e0ae59 45%,#a67933);color:#0000;-webkit-background-clip:text;background-clip:text}.brand-mark .r2{background:linear-gradient(150deg,#9fd0ff,#4e93da 45%,#1e5b96);color:#0000;-webkit-background-clip:text;background-clip:text}.brand-word{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:18px;font-weight:800;line-height:1}.brand-word .four{background:linear-gradient(180deg,#f3ce84,var(--brand-gold));color:#0000;-webkit-background-clip:text;background-clip:text}.brand-word i{color:var(--ink-2);font-style:normal;font-weight:700}@media (max-width:430px){.brand-word{font-size:16px}.brand-mark{width:36px;height:30px;font-size:14px}}h2{border-top:1px solid var(--line);padding-top:16px}h2:first-of-type{border-top:0;padding-top:0}.ticks{color:var(--hero-ink);margin:0;padding:0;list-style:none}.ticks li{margin-bottom:8px;padding-left:24px;line-height:1.45;position:relative}.ticks li:before{content:"✓";color:var(--accent);font-weight:800;position:absolute;top:0;left:0}.sector-row{flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;display:flex}.sector-chip{color:var(--c);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.sector-chip-mark{border:1.5px solid var(--c);background:var(--cw);border-radius:99px;place-items:center;width:36px;height:36px;font-size:15px;display:grid}.sects{flex-wrap:wrap;gap:5px;display:inline-flex}.sect{color:var(--c);border:1px solid var(--c);background:var(--cw);white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:2px 9px;font-size:11px;font-weight:700;line-height:1.5;display:inline-flex}.partner{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-sm);margin:18px 0 0;padding:16px 18px}.partner .eyebrow{color:var(--accent);margin-bottom:7px}.partner-head{font-family:var(--display,inherit);color:var(--ink);margin:0 0 8px;font-size:17px;font-weight:700}.partner .small{color:var(--ink-2)}@media (max-width:520px){.partner{padding:14px 15px}.partner-head{font-size:16px}}.partner .btn:hover{text-decoration:none}
