*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
--brand-dark:#0a1628;
--brand-navy:#0d2137;
--brand-blue:#0e7cc0;
--brand-lightblue:#1da1f2;
--brand-cyan:#00bcd4;
--brand-glow:#4fc3f7;
--brand-grey:#6b7280;
--brand-lightgrey:#9ca3af;
--brand-silver:#d1d5db;
--brand-offwhite:#f3f4f6;
--brand-white:#ffffff;
--brand-section:#3a3f47;
--brand-sectionalt:#4a4f57;
--brand-accent:#2196f3;
--brand-darkcard:#111827;
--brand-footerbg:#060e1a;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}

body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background-color:var(--brand-dark);color:var(--brand-white);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}

h1,h2,h3,h4,h5,h6{font-family:'Merriweather','Georgia',serif;line-height:1.25;font-weight:700}

a{text-decoration:none;color:inherit;transition:color .25s ease}

img{max-width:100%;height:auto;display:block}

button,input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit}

.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}

@media(min-width:640px){
.container{padding-left:1.5rem;padding-right:1.5rem}
}

@media(min-width:1024px){
.container{padding-left:2.5rem;padding-right:2.5rem}
}

::selection{background-color:var(--brand-blue);color:var(--brand-white)}

:focus-visible{outline:2px solid var(--brand-cyan);outline-offset:2px}

input,textarea{-webkit-appearance:none;appearance:none}

input::placeholder,textarea::placeholder{color:var(--brand-grey);opacity:1}

.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}

@keyframes fadeIn{
0%{opacity:0}
100%{opacity:1}
}

@keyframes slideUp{
0%{transform:translateY(20px);opacity:0}
100%{transform:translateY(0);opacity:1}
}

@keyframes slideDown{
0%{transform:translateY(-10px);opacity:0}
100%{transform:translateY(0);opacity:1}
}

@keyframes pulseGlow{
0%,100%{opacity:.4}
50%{opacity:.8}
}

@keyframes scaleIn{
0%{transform:scale(.95);opacity:0}
100%{transform:scale(1);opacity:1}
}

.animate-fade-in{animation:fadeIn .5s ease-in both}
.animate-slide-up{animation:slideUp .6s ease-out both}
.animate-slide-down{animation:slideDown .4s ease-out both}
.animate-scale-in{animation:scaleIn .3s ease-out both}
.animate-pulse-glow{animation:pulseGlow 3s ease-in-out infinite}

.gradient-text{background:linear-gradient(135deg,var(--brand-blue),var(--brand-cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

.card-hover{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.card-hover:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(14,124,192,.15)}

.btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:var(--brand-blue);color:var(--brand-white);padding:.75rem 2rem;border-radius:.5rem;font-weight:600;font-size:1rem;transition:all .25s ease;border:none;cursor:pointer}
.btn-primary:hover{background-color:var(--brand-lightblue);box-shadow:0 8px 24px rgba(14,124,192,.3)}

.btn-outline{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--brand-lightblue);padding:.75rem 2rem;border-radius:.5rem;font-weight:500;font-size:1rem;transition:all .25s ease;border:1px solid rgba(14,124,192,.5);cursor:pointer}
.btn-outline:hover{border-color:var(--brand-cyan);color:var(--brand-cyan)}

.section-divider{width:5rem;height:.25rem;background-color:var(--brand-blue);margin-left:auto;margin-right:auto}

.glass{background:rgba(13,33,55,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(14,124,192,.2)}

.form-input{width:100%;background:rgba(13,33,55,.8);border:1px solid rgba(14,124,192,.2);border-radius:.5rem;padding:.75rem 1rem;color:var(--brand-white);transition:border-color .25s ease,box-shadow .25s ease}
.form-input:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(14,124,192,.15);outline:none}

.form-input.error{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.15)}

.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}
.badge-blue{background:rgba(14,124,192,.15);color:var(--brand-lightblue)}
.badge-cyan{background:rgba(0,188,212,.15);color:var(--brand-cyan)}

.overlay-dark{position:relative}
.overlay-dark::before{content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--brand-dark),rgba(10,22,40,.8),transparent);z-index:1;pointer-events:none}

.text-balance{text-wrap:balance}

.link-underline{position:relative;display:inline-block}
.link-underline::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--brand-cyan);transition:width .3s ease}
.link-underline:hover::after{width:100%}

.faq-icon{transition:transform .3s ease}

.cookie-banner-enter{animation:slideUp .4s ease-out both}

.scroll-hidden{overflow:hidden}

::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--brand-dark)}
::-webkit-scrollbar-thumb{background:var(--brand-navy);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:var(--brand-blue)}

@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}

@media(max-width:639px){
h1{font-size:2rem}
h2{font-size:1.75rem}
}

@media print{
body{background:#fff;color:#000}
header,footer,.cookie-banner,#cookieBanner,#cookiePrefsPanel,#mobileMenu{display:none !important}
}