@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&family=Merriweather:wght@400;700&display=swap');
:root{--brand-50:#eef9ff;--brand-100:#d6f2ff;--brand-300:#7bd0ff;--brand-500:#33A8FF;--brand-700:#1877c9;--focus-offset:3px}
html{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{line-height:1.5;color:#1f2937;background-color:#ffffff;-webkit-text-size-adjust:100%}
h1,h2,h3,h4,h5,h6{font-family:Merriweather, serif}
img,video{max-width:100%;height:auto;display:block;object-fit:cover}
.container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}
.iconify{display:inline-flex;vertical-align:middle;line-height:1}
a,button{transition:transform .15s ease,box-shadow .15s ease}
a:hover,button:hover{transform:translateY(-2px)}
button[disabled],.btn-disabled{opacity:.6;cursor:not-allowed;pointer-events:none}
input,textarea,select{border-radius:.5rem;padding:.5rem .75rem;border:1px solid #e5e7eb;min-height:44px;font-size:1rem;background-color:#fff;color:#111827}
:focus-visible{outline:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:0 0 0 var(--focus-offset) rgba(51,168,255,0.18);border-radius:.5rem}
.focus-ring{box-shadow:0 0 0 var(--focus-offset) rgba(51,168,255,0.15);border-radius:.5rem}
#mobileMenu[aria-hidden="true"]{opacity:0;pointer-events:none;transition:opacity .22s ease}
#mobileMenu[aria-hidden="false"]{opacity:1;pointer-events:auto}
#mobileOverlay{transition:opacity .28s ease}
#mobileMenu.open #mobileOverlay{opacity:1}
#mobileMenu .animate-slide-up{animation:slide-up .45s cubic-bezier(.2,.9,.3,1) both}
@keyframes slide-up{0%{transform:translateY(12px);opacity:0}100%{transform:translateY(0);opacity:1}}
#cookieBanner{transition:transform .28s ease,opacity .28s ease;border-radius:0.75rem}
#cookieBanner.hidden{transform:translateY(12px);opacity:0;pointer-events:none}
.card-img{max-height:280px;object-fit:cover}
.hero-gradient{background-image:radial-gradient(circle at 20% 10%, rgba(51,168,255,0.08), transparent 12%),linear-gradient(180deg,var(--brand-50),#ffffff)}
.header-backdrop{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.btn-primary{background-image:linear-gradient(90deg,var(--brand-300),var(--brand-500));color:#ffffff;padding:.625rem 1.25rem;border-radius:0.75rem;display:inline-flex;align-items:center;gap:.5rem}
.btn-secondary{background-color:transparent;border:1px solid var(--brand-300);color:var(--brand-700);padding:.625rem 1.25rem;border-radius:0.75rem}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}}