:root{--color-primary: #0078c1;--color-primary-dark: #005b94;--color-primary-darker: #003f68;--color-secondary: #00adee;--color-secondary-light: #e3f6fd;--color-accent: #f59e0b;--color-accent-dark: #b45309;--color-sand: #fff7ea;--color-sea-deep: #004e7c;--color-lagoon: #1fb5c9;--color-coral: #e2574c;--color-forest: #0f766e;--color-leaf: #65a30d;--color-indigo: #312e81;--color-sun: #fbbf24;--color-ink: #0b2239;--color-body: #3b4b5c;--color-muted: #5d6f80;--color-border: #d8e6f0;--color-background: #ffffff;--color-surface: #f3f9fd;--color-surface-alt: #eaf4fb;--color-white: #ffffff;--color-success: #15803d;--color-error: #c62828;--color-focus: #ffb020;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(76px + 1rem)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}body{margin:0;min-height:100dvh;font-family:Open Sans,system-ui,-apple-system,Segoe UI,sans-serif;font-size:1rem;line-height:1.65;color:var(--color-body);background:var(--color-background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3,h4{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--color-ink);line-height:1.15;text-wrap:balance}p{margin:0;text-wrap:pretty}ul,ol{margin:0;padding:0}img,svg,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}::selection{background:var(--color-secondary);color:var(--color-ink)}.skip-link{position:absolute;top:.5rem;left:.5rem;z-index:1000;padding:.75rem 1rem;border-radius:8px;background:var(--color-ink);color:var(--color-white);font-weight:600;transform:translateY(-200%);transition:transform .16s cubic-bezier(.22,1,.36,1)}.skip-link:focus{transform:translateY(0)}.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}
