@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Space+Grotesk:wght@500;600&display=swap');

/* TOLLGATE landing page — self-hosted styles.
   Generated Tailwind v3 utilities (the exact class set index.html uses; the
   Tailwind Play CDN was removed so the page needs no inline <style> injection
   and no eval) + the page's two original custom <style> blocks, verbatim.
   Loaded via <link rel=stylesheet> so style-src can drop 'unsafe-inline'. */

/* ====== Tailwind preflight (minimal, page-scoped) ====== */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#334155}
::before,::after{--tw-content:''}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:'Inter',ui-sans-serif,system-ui,sans-serif}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}
p,figure{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
a{color:inherit;text-decoration:inherit}
button,input,select,textarea,optgroup{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type='button'],[type='submit']{-webkit-appearance:button;background-color:transparent;background-image:none;cursor:pointer}
:disabled{cursor:default}
img,video{max-width:100%;height:auto;display:block}
summary{display:list-item}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
:root{--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: }
@keyframes tw-pulse{50%{opacity:.5}}
@keyframes fa-spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
.fa-spin{animation:fa-spin 2s linear infinite}

/* ====== Base utilities ====== */
.-bottom-3 { bottom: -0.75rem; }
.-mt-0\.5 { margin-top: -0.125rem; }
.-right-3 { right: -0.75rem; }
.-space-x-1 > :not([hidden]) ~ :not([hidden]) { margin-right: -0.25rem; margin-left: 0px; }
.-top-3 { top: -0.75rem; }
.absolute { position: absolute; }
.active\:bg-\[\#e0f7fa\]:active { background-color: rgb(224 247 250); }
.active\:scale-\[0\.985\]:active { --tw-scale-x: 0.985; --tw-scale-y: 0.985; transform: translate(var(--tw-translate-x,0),var(--tw-translate-y,0)) rotate(var(--tw-rotate,0)) scale(var(--tw-scale-x),var(--tw-scale-y)); }
.animate-pulse { animation: tw-pulse 2s cubic-bezier(0.4,0,0.6,1) infinite; }
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.aspect-video { aspect-ratio: 16 / 9; }
.backdrop-blur-lg { --tw-backdrop-blur: blur(16px); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.bg-\[\#020617\] { background-color: rgb(2 6 23); }
.bg-\[\#020617\]\/90 { background-color: rgb(2 6 23 / 0.9); }
.bg-\[\#0A101F\] { background-color: rgb(10 16 31); }
.bg-\[\#0F172A\] { background-color: rgb(15 23 42); }
.bg-\[\#334155\] { background-color: rgb(51 65 85); }
.bg-\[\#67E8F9\] { background-color: rgb(103 232 249); }
.bg-\[\#67E8F9\]\/10 { background-color: rgb(103 232 249 / 0.1); }
.bg-\[\#67E8F9\]\/5 { background-color: rgb(103 232 249 / 0.05); }
.bg-amber-400 { background-color: rgb(251 191 36); }
.bg-amber-400\/10 { background-color: rgb(251 191 36 / 0.1); }
.bg-amber-400\/5 { background-color: rgb(251 191 36 / 0.05); }
.bg-black\/70 { background-color: rgb(0 0 0 / 0.7); }
.bg-black\/80 { background-color: rgb(0 0 0 / 0.8); }
.bg-emerald-400 { background-color: rgb(52 211 153); }
.bg-emerald-400\/10 { background-color: rgb(52 211 153 / 0.1); }
.bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)); }
.bg-gradient-to-r { background-image: linear-gradient(to right, var(--tw-gradient-stops)); }
.bg-red-400\/10 { background-color: rgb(248 113 113 / 0.1); }
.block { display: block; }
.border { border-width: 1px; }
.border-2 { border-width: 2px; }
.border-\[\#334155\] { border-color: rgb(51 65 85); }
.border-\[\#475569\] { border-color: rgb(71 85 105); }
.border-\[\#67E8F9\] { border-color: rgb(103 232 249); }
.border-\[\#67E8F9\]\/20 { border-color: rgb(103 232 249 / 0.2); }
.border-\[\#67E8F9\]\/25 { border-color: rgb(103 232 249 / 0.25); }
.border-\[\#67E8F9\]\/30 { border-color: rgb(103 232 249 / 0.3); }
.border-\[\#67E8F9\]\/40 { border-color: rgb(103 232 249 / 0.4); }
.border-amber-300\/40 { border-color: rgb(252 211 77 / 0.4); }
.border-amber-400 { border-color: rgb(251 191 36); }
.border-amber-400\/30 { border-color: rgb(251 191 36 / 0.3); }
.border-amber-400\/40 { border-color: rgb(251 191 36 / 0.4); }
.border-b { border-bottom-width: 1px; }
.border-emerald-400\/30 { border-color: rgb(52 211 153 / 0.3); }
.border-l-4 { border-left-width: 4px; }
.border-red-400\/40 { border-color: rgb(248 113 113 / 0.4); }
.border-t { border-top-width: 1px; }
.border-y { border-top-width: 1px; border-bottom-width: 1px; }
.bottom-8 { bottom: 2rem; }
.cursor-pointer { cursor: pointer; }
.drop-shadow-sm { filter: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05)); }
.fixed { position: fixed; }
.flex { display: flex; }
.flex-1 { flex: 1 1 0%; }
.flex-col { flex-direction: column; }
.flex-shrink-0 { flex-shrink: 0; }
.flex-wrap { flex-wrap: wrap; }
.focus\:absolute:focus { position: absolute; }
.focus\:bg-\[\#67E8F9\]:focus { background-color: rgb(103 232 249); }
.focus\:border-\[\#67E8F9\]:focus { border-color: rgb(103 232 249); }
.focus\:font-semibold:focus { font-weight: 600; }
.focus\:left-2:focus { left: 0.5rem; }
.focus\:not-sr-only:focus { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip: auto; white-space: normal; }
.focus\:px-4:focus { padding-left: 1rem; padding-right: 1rem; }
.focus\:py-2:focus { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.focus\:rounded-lg:focus { border-radius: 0.5rem; }
.focus\:text-\[\#020617\]:focus { color: rgb(2 6 23); }
.focus\:top-2:focus { top: 0.5rem; }
.focus\:z-\[200\]:focus { z-index: 200; }
.font-bold { font-weight: 700; }
.font-medium { font-weight: 500; }
.font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; }
.font-semibold { font-weight: 600; }
.from-\[\#0A101F\] { --tw-gradient-from: rgb(10 16 31) var(--tw-gradient-from-position); --tw-gradient-to: rgb(10 16 31 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-\[\#0F172A\] { --tw-gradient-from: rgb(15 23 42) var(--tw-gradient-from-position); --tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-\[\#67E8F9\] { --tw-gradient-from: rgb(103 232 249) var(--tw-gradient-from-position); --tw-gradient-to: rgb(103 232 249 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-amber-400 { --tw-gradient-from: rgb(251 191 36) var(--tw-gradient-from-position); --tw-gradient-to: rgb(251 191 36 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-5 { gap: 1.25rem; }
.gap-6 { gap: 1.5rem; }
.gap-x-1 { column-gap: 0.25rem; }
.gap-x-1\.5 { column-gap: 0.375rem; }
.gap-x-10 { column-gap: 2.5rem; }
.gap-x-12 { column-gap: 3rem; }
.gap-x-2 { column-gap: 0.5rem; }
.gap-x-2\.5 { column-gap: 0.625rem; }
.gap-x-3 { column-gap: 0.75rem; }
.gap-x-4 { column-gap: 1rem; }
.gap-x-6 { column-gap: 1.5rem; }
.gap-x-8 { column-gap: 2rem; }
.gap-y-1 { row-gap: 0.25rem; }
.gap-y-1\.5 { row-gap: 0.375rem; }
.gap-y-12 { row-gap: 3rem; }
.gap-y-2 { row-gap: 0.5rem; }
.gap-y-2\.5 { row-gap: 0.625rem; }
.gap-y-3 { row-gap: 0.75rem; }
.gap-y-4 { row-gap: 1rem; }
.gap-y-5 { row-gap: 1.25rem; }
.gap-y-6 { row-gap: 1.5rem; }
.gap-y-8 { row-gap: 2rem; }
.grid { display: grid; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.group:active .group-active\:translate-x-0\.5 { transform: translateX(0.125rem); }
.group:hover .group-hover\:no-underline { text-decoration-line: none; }
.group:hover .group-hover\:scale-\[1\.02\] { --tw-scale-x: 1.02; --tw-scale-y: 1.02; transform: translate(var(--tw-translate-x,0),var(--tw-translate-y,0)) rotate(var(--tw-rotate,0)) scale(var(--tw-scale-x),var(--tw-scale-y)); }
.group:hover .group-hover\:translate-x-0\.5 { transform: translateX(0.125rem); }
.group:hover .group-hover\:underline { text-decoration-line: underline; }
.group[open] .group-open\:rotate-180 { transform: rotate(180deg); }
.h-1\.5 { height: 0.375rem; }
.h-10 { height: 2.5rem; }
.h-11 { height: 2.75rem; }
.h-12 { height: 3rem; }
.h-14 { height: 3.5rem; }
.h-16 { height: 4rem; }
.h-2 { height: 0.5rem; }
.h-2\.5 { height: 0.625rem; }
.h-8 { height: 2rem; }
.h-9 { height: 2.25rem; }
.h-auto { height: auto; }
.h-full { height: 100%; }
.hidden { display: none; }
.hover\:bg-\[\#020617\]:hover { background-color: rgb(2 6 23); }
.hover\:bg-\[\#0F172A\]:hover { background-color: rgb(15 23 42); }
.hover\:bg-\[\#67E8F9\]\/5:hover { background-color: rgb(103 232 249 / 0.05); }
.hover\:bg-amber-400\/10:hover { background-color: rgb(251 191 36 / 0.1); }
.hover\:bg-white:hover { background-color: rgb(255 255 255); }
.hover\:border-\[\#67E8F9\]:hover { border-color: rgb(103 232 249); }
.hover\:border-\[\#67E8F9\]\/60:hover { border-color: rgb(103 232 249 / 0.6); }
.hover\:text-\[\#020617\]:hover { color: rgb(2 6 23); }
.hover\:text-amber-200:hover { color: rgb(253 230 138); }
.hover\:text-white:hover { color: rgb(255 255 255); }
.hover\:underline:hover { text-decoration-line: underline; }
.inline-block { display: inline-block; }
.inline-flex { display: inline-flex; }
.inset-0 { top: 0; right: 0; bottom: 0; left: 0; }
.items-center { align-items: center; }
.items-end { align-items: flex-end; }
.items-start { align-items: flex-start; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.leading-\[1\.05\] { line-height: 1.05; }
.leading-none { line-height: 1; }
.leading-relaxed { line-height: 1.625; }
.left-0 { left: 0; }
.list-decimal { list-style-type: decimal; }
.list-inside { list-style-position: inside; }
.list-none { list-style-type: none; }
.max-h-\[92vh\] { max-height: 92vh; }
.max-w-2xl { max-width: 42rem; }
.max-w-3xl { max-width: 48rem; }
.max-w-5xl { max-width: 64rem; }
.max-w-6xl { max-width: 72rem; }
.max-w-\[220px\] { max-width: 220px; }
.max-w-\[260px\] { max-width: 260px; }
.max-w-\[280px\] { max-width: 280px; }
.max-w-lg { max-width: 32rem; }
.max-w-screen-2xl { max-width: 1536px; }
.max-w-xl { max-width: 36rem; }
.max-w-xs { max-width: 20rem; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-1\.5 { margin-bottom: 0.375rem; }
.mb-10 { margin-bottom: 2.5rem; }
.mb-12 { margin-bottom: 3rem; }
.mb-14 { margin-bottom: 3.5rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-5 { margin-bottom: 1.25rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-8 { margin-bottom: 2rem; }
.mb-9 { margin-bottom: 2.25rem; }
.min-h-\[320px\] { min-height: 320px; }
.min-w-0 { min-width: 0px; }
.ml-0\.5 { margin-left: 0.125rem; }
.ml-1 { margin-left: 0.25rem; }
.ml-2 { margin-left: 0.5rem; }
.ml-4 { margin-left: 1rem; }
.mr-1 { margin-right: 0.25rem; }
.mr-1\.5 { margin-right: 0.375rem; }
.mr-2 { margin-right: 0.5rem; }
.mt-0\.5 { margin-top: 0.125rem; }
.mt-1 { margin-top: 0.25rem; }
.mt-1\.5 { margin-top: 0.375rem; }
.mt-10 { margin-top: 2.5rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-4 { margin-top: 1rem; }
.mt-5 { margin-top: 1.25rem; }
.mt-6 { margin-top: 1.5rem; }
.mt-8 { margin-top: 2rem; }
.mt-\[88px\] { margin-top: 88px; }
.mt-auto { margin-top: auto; }
.mx-auto { margin-left: auto; margin-right: auto; }
.my-8 { margin-top: 2rem; margin-bottom: 2rem; }
.normal-case { text-transform: none; }
.object-cover { object-fit: cover; }
.outline-none { outline: 2px solid transparent; outline-offset: 2px; }
.overflow-auto { overflow: auto; }
.overflow-hidden { overflow: hidden; }
.p-10 { padding: 2.5rem; }
.p-12 { padding: 3rem; }
.p-4 { padding: 1rem; }
.p-6 { padding: 1.5rem; }
.p-7 { padding: 1.75rem; }
.p-8 { padding: 2rem; }
.pb-12 { padding-bottom: 3rem; }
.pb-16 { padding-bottom: 4rem; }
.pb-20 { padding-bottom: 5rem; }
.pb-6 { padding-bottom: 1.5rem; }
.pr-1 { padding-right: 0.25rem; }
.pt-1 { padding-top: 0.25rem; }
.pt-10 { padding-top: 2.5rem; }
.pt-16 { padding-top: 4rem; }
.pt-3 { padding-top: 0.75rem; }
.pt-4 { padding-top: 1rem; }
.pt-5 { padding-top: 1.25rem; }
.pt-8 { padding-top: 2rem; }
.px-1\.5 { padding-left: 0.375rem; padding-right: 0.375rem; }
.px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-3\.5 { padding-left: 0.875rem; padding-right: 0.875rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-7 { padding-left: 1.75rem; padding-right: 1.75rem; }
.px-8 { padding-left: 2rem; padding-right: 2rem; }
.px-9 { padding-left: 2.25rem; padding-right: 2.25rem; }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-12 { padding-top: 3rem; padding-bottom: 3rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-3\.5 { padding-top: 0.875rem; padding-bottom: 0.875rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.py-px { padding-top: 1px; padding-bottom: 1px; }
.relative { position: relative; }
.resize-y { resize: vertical; }
.right-0 { right: 0; }
.right-6 { right: 1.5rem; }
.right-8 { right: 2rem; }
.rounded { border-radius: 0.25rem; }
.rounded-2xl { border-radius: 1rem; }
.rounded-3xl { border-radius: 1.5rem; }
.rounded-full { border-radius: 9999px; }
.rounded-lg { border-radius: 0.5rem; }
.rounded-r-2xl { border-top-right-radius: 1rem; border-bottom-right-radius: 1rem; }
.rounded-xl { border-radius: 0.75rem; }
.shadow-2xl { box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); }
.shadow-black\/40 { box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.4); }
.shadow-black\/50 { box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.5); }
.shadow-cyan-500\/10 { box-shadow: 0 25px 50px -12px rgb(6 182 212 / 0.1); }
.shadow-cyan-500\/20 { box-shadow: 0 25px 50px -12px rgb(6 182 212 / 0.2); }
.shadow-lg { box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); }
.shadow-xl { box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); }
.space-y-2 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.5rem; margin-bottom: 0px; }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.75rem; margin-bottom: 0px; }
.space-y-3\.5 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.875rem; margin-bottom: 0px; }
.space-y-5 > :not([hidden]) ~ :not([hidden]) { margin-top: 1.25rem; margin-bottom: 0px; }
.space-y-\[13px\] > :not([hidden]) ~ :not([hidden]) { margin-top: 13px; margin-bottom: 0px; }
.space-y-px > :not([hidden]) ~ :not([hidden]) { margin-top: 1px; margin-bottom: 0px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border-width: 0; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.text-5xl { font-size: 3rem; line-height: 1; }
.text-6xl { font-size: 3.75rem; line-height: 1; }
.text-\[\#020617\] { color: rgb(2 6 23); }
.text-\[\#64748B\] { color: rgb(100 116 139); }
.text-\[\#67E8F9\] { color: rgb(103 232 249); }
.text-\[\#67E8F9\]\/70 { color: rgb(103 232 249 / 0.7); }
.text-\[\#94A3B8\] { color: rgb(148 163 184); }
.text-\[\#CBD5E1\] { color: rgb(203 213 225); }
.text-\[\#F1F5F9\] { color: rgb(241 245 249); }
.text-\[10px\] { font-size: 10px; line-height: 1; }
.text-\[9px\] { font-size: 9px; line-height: 1; }
.text-amber-200 { color: rgb(253 230 138); }
.text-amber-300 { color: rgb(252 211 77); }
.text-amber-400 { color: rgb(251 191 36); }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-center { text-align: center; }
.text-emerald-400 { color: rgb(52 211 153); }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-red-400 { color: rgb(248 113 113); }
.text-right { text-align: right; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-white { color: rgb(255 255 255); }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.to-\[\#020617\] { --tw-gradient-to: rgb(2 6 23) var(--tw-gradient-to-position); }
.to-\[\#0A101F\] { --tw-gradient-to: rgb(10 16 31) var(--tw-gradient-to-position); }
.to-\[\#22D3EE\] { --tw-gradient-to: rgb(34 211 238) var(--tw-gradient-to-position); }
.to-yellow-400 { --tw-gradient-to: rgb(250 204 21) var(--tw-gradient-to-position); }
.top-0 { top: 0; }
.tracking-\[1\.5px\] { letter-spacing: 1.5px; }
.tracking-normal { letter-spacing: 0em; }
.tracking-tight { letter-spacing: -0.025em; }
.tracking-tighter { letter-spacing: -0.05em; }
.tracking-wider { letter-spacing: 0.05em; }
.tracking-widest { letter-spacing: 0.1em; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4,0,0.2,1); transition-duration: 150ms; }
.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4,0,0.2,1); transition-duration: 150ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4,0,0.2,1); transition-duration: 150ms; }
.underline { text-decoration-line: underline; }
.uppercase { text-transform: uppercase; }
.via-\[\#0F172A\] { --tw-gradient-to: rgb(15 23 42 / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), rgb(15 23 42) var(--tw-gradient-via-position), var(--tw-gradient-to); }
.w-1\.5 { width: 0.375rem; }
.w-10 { width: 2.5rem; }
.w-11 { width: 2.75rem; }
.w-12 { width: 3rem; }
.w-14 { width: 3.5rem; }
.w-16 { width: 4rem; }
.w-2 { width: 0.5rem; }
.w-4 { width: 1rem; }
.w-5 { width: 1.25rem; }
.w-8 { width: 2rem; }
.w-9 { width: 2.25rem; }
.w-\[18px\] { width: 18px; }
.w-\[65\%\] { width: 65%; }
.w-auto { width: auto; }
.w-full { width: 100%; }
.whitespace-nowrap { white-space: nowrap; }
.z-50 { z-index: 50; }
.z-\[100\] { z-index: 100; }
.z-\[110\] { z-index: 110; }
.z-\[200\] { z-index: 200; }

@media (min-width:640px){
.sm\:flex-row { flex-direction: row; }
.sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sm\:inline-flex { display: inline-flex; }
.sm\:items-center { align-items: center; }
}

@media (min-width:768px){
.md\:flex { display: flex; }
.md\:flex-row { flex-direction: row; }
.md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.md\:grid-cols-\[1fr\,auto\] { grid-template-columns: 1fr auto; }
.md\:grid-cols-\[auto\,1fr\] { grid-template-columns: auto 1fr; }
.md\:h-12 { height: 3rem; }
.md\:inline-flex { display: inline-flex; }
.md\:items-center { align-items: center; }
.md\:items-end { align-items: flex-end; }
.md\:justify-between { justify-content: space-between; }
.md\:mb-6 { margin-bottom: 1.5rem; }
.md\:mt-\[96px\] { margin-top: 96px; }
.md\:mx-0 { margin-left: 0px; margin-right: 0px; }
.md\:p-10 { padding: 2.5rem; }
.md\:p-16 { padding: 4rem; }
.md\:p-8 { padding: 2rem; }
.md\:pb-20 { padding-bottom: 5rem; }
.md\:pt-12 { padding-top: 3rem; }
.md\:px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }
.md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.md\:text-5xl { font-size: 3rem; line-height: 1; }
.md\:text-7xl { font-size: 4.5rem; line-height: 1; }
.md\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
}

@media (min-width:1024px){
.lg\:col-span-5 { grid-column: span 5 / span 5; }
.lg\:col-span-6 { grid-column: span 6 / span 6; }
.lg\:col-span-7 { grid-column: span 7 / span 7; }
.lg\:grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
.lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* ====== Custom component styles (from the page's original <style> blocks) ====== */
:root {
            --bg: #020617;
            --card: #0F172A;
            --border: #334155;
            --accent: #67E8F9;
            --text: #F1F5F9;
            --text-muted: #94A3B8;
        }
        
        body {
            font-family: 'Inter', system-ui, sans-serif;
        }
        
        .font-display {
            font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif;
            font-weight: 600;
            letter-spacing: -0.025em;
        }

        .section-header {
            font-size: 2.25rem;
            line-height: 2.5rem;
            font-weight: 700;
            letter-spacing: -0.04em;
        }

        .cyber-grid {
            background-image: 
                linear-gradient(rgba(103, 232, 249, 0.03) 1px, transparent 1px),
                linear-gradient(90deg, rgba(103, 232, 249, 0.03) 1px, transparent 1px);
            background-size: 60px 60px;
        }

        .nav-scrolled {
            background-color: rgba(2, 6, 23, 0.95);
            backdrop-filter: blur(12px);
        }

        .premium-card {
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .premium-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
            border-color: #67E8F9;
        }

        .checklist-item {
            transition: all 0.2s ease;
        }

        .metric-value {
            font-variant-numeric: tabular-nums;
        }

        .step-number {
            width: 2.75rem;
            height: 2.75rem;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
            font-size: 1.125rem;
            border: 2px solid #67E8F9;
            color: #67E8F9;
        }

        .problem-card {
            border-left: 3px solid #f87171;
        }

        .tollgate-check {
            color: #67E8F9;
        }

        .modal {
            animation: modalPopIn 0.2s ease-out forwards;
        }

        @keyframes modalPopIn {
            from {
                opacity: 0;
                transform: translateY(20px) scale(0.98);
            }
            to {
                opacity: 1;
                transform: translateY(0) scale(1);
            }
        }

        /* Subtle pulsing cyan glow for hero video - cinematic but professional */
        .hero-video-glow {
            position: relative;
        }
        
        .hero-video-glow::after {
            content: '';
            position: absolute;
            inset: -4px;
            border-radius: 1.75rem; /* slightly larger than rounded-3xl */
            border: 1px solid rgba(103, 232, 249, 0.5);
            box-shadow: 
                0 0 12px rgba(103, 232, 249, 0.35),
                0 0 24px rgba(103, 232, 249, 0.15);
            animation: pulse-cyan-glow 4s ease-in-out infinite;
            pointer-events: none;
            z-index: -1;
            opacity: 0.7;
        }

        @keyframes pulse-cyan-glow {
            0%, 100% { 
                opacity: 0.55; 
                box-shadow: 0 0 12px rgba(103, 232, 249, 0.35), 0 0 24px rgba(103, 232, 249, 0.15);
                border-color: rgba(103, 232, 249, 0.45);
            }
            50% { 
                opacity: 0.85; 
                box-shadow: 0 0 22px rgba(103, 232, 249, 0.55), 0 0 40px rgba(103, 232, 249, 0.25);
                border-color: rgba(103, 232, 249, 0.7);
            }
        }

        .status-pass { color: #4ade80; }
        .status-warn { color: #fbbf24; }
        .status-fail { color: #f87171; }

        .nav-link {
            transition: color 0.1s ease;
        }
        
        .nav-link:hover {
            color: #67E8F9;
        }

        .section-divider {
            height: 1px;
            background: linear-gradient(to right, transparent, #334155, transparent);
        }

        .pricing-card.recommended {
            border-color: #67E8F9;
            box-shadow: 0 0 0 1px #67E8F9;
        }

        .hero-video-container {
            box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.4);
            border: 1px solid #334155;
        }

        .logo-glow {
            filter: drop-shadow(0 0 8px rgba(103, 232, 249, 0.3));
        }
    


      body { font-feature-settings: "kern" "liga" "tnum"; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
      h1, h2, h3, h4 { font-weight: 700; letter-spacing: -0.025em; line-height: 1.15; }
      h2 { margin-top: 2.75rem; margin-bottom: 1.1rem; }
      section { padding-top: 2.25rem; padding-bottom: 2.25rem; }
      .pricing-card, [class*="pricing"], .tier, .plan-card { background-color: #020617; border: 1px solid #1f2937; border-radius: 14px; transition: transform .2s cubic-bezier(0.4,0,0.2,1), box-shadow .2s cubic-bezier(0.4,0,0.2,1), border-color .2s ease; }
      .pricing-card:hover, [class*="pricing"]:hover, .tier:hover, .plan-card:hover, .premium-card:hover { transform: translateY(-3px); box-shadow: 0 20px 25px -5px rgb(0 0 0 / .12), 0 8px 10px -6px rgb(0 0 0 / .1); border-color: #67E8F9; }
      .pricing-card.recommended, [class*="pricing"].recommended, .tier.recommended, .plan-card.recommended, .premium-card { border-color: #67E8F9; box-shadow: 0 0 0 1px #67E8F9; }
      .checkpoint, [class*="checkpoint"] { border: 1px solid #1f2937; border-radius: 10px; padding: 1rem 1.25rem; margin-bottom: 0.65rem; transition: border-color .2s ease, background-color .2s ease; }
      .checkpoint:hover, [class*="checkpoint"]:hover { border-color: #67E8F9; background-color: #0a1428; }
      button, .btn, [class*="cta"], a.button, a[href*="preflight"], a[href*="quote"] { transition: transform .2s ease, box-shadow .2s ease; font-weight: 600; }
      button:hover, .btn:hover, [class*="cta"]:hover { transform: translateY(-1px); box-shadow: 0 10px 15px -3px rgb(103 232 249 / .15); }
      @media (max-width: 640px) { section { padding-top: 1.75rem; padding-bottom: 1.75rem; } .pricing-card, [class*="pricing"], .tier, .plan-card { margin-bottom: 1rem; } }
      button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible { outline: 2px solid #67E8F9; outline-offset: 2px; }

/* Honeypot field — was inline style="" on the intake-form decoy div.
   Visually hidden off-screen; real users never see/fill it, bots that
   auto-fill all fields will. */
.tg-honeypot { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
