/* Fonts and the few rules the compiled Tailwind sheet (site.css) does not cover: header states, menus, focus, tabs. */
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin.woff2) format("woff2")}
:root{--font-geist-sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-geist-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
html{scroll-behavior:smooth;scroll-padding-top:6rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.animate-marquee{animation:none!important}}

.skip{position:absolute;left:1rem;top:-4rem;z-index:100;border-radius:9999px;background:#fff;color:#06080f;padding:.6rem 1.1rem;font-size:14px;font-weight:500}
.skip:focus{top:1rem}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent-soft);outline-offset:3px;border-radius:.5rem}

/* header: transparent on top, frosted once scrolled */
.sv-header{transition:background-color .3s,border-color .3s,backdrop-filter .3s}
.sv-header.is-scrolled,.sv-header.menu-open{background:rgba(4,5,13,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--border-soft)}

/* dropdown panels */
.sv-drop{position:absolute;left:0;top:calc(100% + .5rem);z-index:60;min-width:17rem;padding:.5rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface);box-shadow:0 24px 60px -24px rgba(0,0,0,.9)}
.sv-drop[hidden]{display:none}
.sv-drop a{display:block;border-radius:.75rem;padding:.6rem .75rem;transition:background-color .15s}
.sv-drop a:hover,.sv-drop a:focus-visible{background:rgba(255,255,255,.05)}
.sv-drop strong{display:block;font-size:14px;font-weight:500;color:var(--ink)}
.sv-drop span{display:block;margin-top:.1rem;font-size:12.5px;color:var(--faint)}
[aria-expanded="true"]>svg:last-child{transform:rotate(180deg)}

/* mobile menu */
.sv-mobile{position:fixed;inset:0;z-index:40;overflow-y:auto;padding:5.5rem 1.5rem 2rem;background:rgba(4,5,13,.97)}
.sv-mobile[hidden]{display:none}
.sv-mobile h2{margin:1.5rem 0 .4rem;font-family:var(--font-geist-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint)}
.sv-mobile a{display:block;padding:.65rem 0;font-size:17px;color:var(--ink);border-bottom:1px solid var(--border-soft)}
.sv-mobile .sv-pill{display:inline-flex;margin-top:1.25rem;border:0;border-radius:9999px;background:#fff;color:#06080f;padding:.75rem 1.5rem;font-weight:500;font-size:15px}

/* tabs and segmented filters */
.sv-tab[aria-selected="false"] .sv-tab-bar{display:none}
.sv-tab[aria-selected="true"]{color:var(--ink)}
.sv-tab[aria-selected="false"]{color:var(--muted)}
.sv-tab[aria-selected="false"]:hover{color:var(--ink)}
.sv-row[hidden],.sv-srv[hidden]{display:none}

/* form controls inside the dedicated filter panel */
input[type=range]{accent-color:var(--accent);height:1.25rem}
input[type=checkbox]{accent-color:var(--accent)}
select option{background:#0b0f20;color:#eef1fb}

/* billing toggle */
.sv-seg{display:inline-flex;gap:.25rem;padding:.3rem;border:1px solid var(--border);border-radius:9999px;background:rgba(255,255,255,.03)}
.sv-seg button{border-radius:9999px;padding:.5rem 1.1rem;font-size:13.5px;font-weight:500;color:var(--muted);transition:background-color .2s,color .2s}
.sv-seg button[aria-pressed="true"]{background:#385fe8;color:#fff}

/* disclosure band above the footer */
.sv-notice{border:1px solid var(--border);border-radius:1rem;background:rgba(255,255,255,.03);padding:1rem 1.25rem;font-size:13.5px;line-height:1.6;color:var(--muted)}
.sv-notice strong{color:var(--ink);font-weight:500}

/* details/accordion-free utility used for plan cards */
.sv-card-hot{border-color:rgba(61,106,255,.55)!important;background:linear-gradient(180deg,rgba(61,106,255,.10),rgba(11,15,32,.6))}
.sv-noscript-note{padding:1rem;text-align:center;font-size:13px;color:var(--muted)}

/* utilities not present in the compiled sheet */
.-top-3{top:-.75rem}
.bg-\[\#10b981\]{background-color:#10b981}
.bg-\[var\(--border-soft\)\]{background-color:var(--border-soft)}
.min-h-\[min\(100vh\,860px\)\]{min-height:min(100vh,860px)}
.min-w-\[640px\]{min-width:640px}
.pb-20{padding-bottom:5rem}
.text-\[32px\]{font-size:32px}
.text-\[rgba\(231\,236\,250\,0\.55\)\]{color:rgba(231,236,250,.55)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (min-width:40rem){.sm\:grid-cols-\[88px_repeat\(4\,minmax\(0\,1fr\)\)_132px_108px\]{grid-template-columns:88px repeat(4,minmax(0,1fr)) 132px 108px}}

/* raise the faint text tone for WCAG AA contrast on the dark background */
:root{--faint:#ced6f08f}
.dark-scope{--faint:#e7ecfa9e}

/* the brand blue sits at 4.46:1 against white text; a touch deeper clears WCAG AA */
.bg-accent{background-color:#385fe8}
