@font-face{font-family:'IBM Plex Sans';src:url('/assets/fonts/IBM-Plex-Sans.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Michroma;src:url('/assets/fonts/Michroma.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--ft-azure:#1E78FF;--ft-action:#1764D8;--ft-cyan:#38CFFF;--ft-obsidian:#0B1114;--ft-ink:#1A2230;--ft-slate:#5B6675;--ft-mist:#E7ECF2;--ft-indigo:#0A3D91;--ft-white:#fff;--ft-font-primary:'IBM Plex Sans',Arial,sans-serif;--ft-font-heading:var(--ft-font-primary);--nav-h:78px;color-scheme:dark}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 22px)}
body{font-family:var(--ft-font-primary);background:var(--ft-obsidian);color:var(--ft-mist);animation:none!important}
body,button,input,textarea,select{font-family:var(--ft-font-primary)}
button,input,textarea,select{font-size:inherit}
img,svg,video{max-width:100%}
main{min-width:0}
a{color:var(--ft-cyan);text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ft-cyan);outline-offset:5px}
.skip-link{position:fixed;top:8px;left:8px;z-index:10001;padding:12px 18px;border-radius:8px;background:var(--ft-mist);color:var(--ft-obsidian);transform:translateY(-150%);font-weight:600}
.skip-link:focus{transform:none}
nav{position:fixed;inset:0 0 auto;padding:16px 28px;z-index:1000;background:rgba(11,17,20,.97);border-bottom:1px solid #223844;backdrop-filter:none;-webkit-backdrop-filter:none}
nav::before{display:none}
.nav-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;min-height:0;width:100%;margin:auto;gap:22px}
.nav-logo{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none;flex-shrink:0}
.nav-logo img.nav-mark{width:42px;height:42px;flex-shrink:0}
.nav-wm{font:13px/1.4 Michroma,Arial,sans-serif;letter-spacing:.065em;white-space:nowrap;color:var(--ft-mist)}
.nav-wm .wm-suffix,.footer-brand .fwm .wm-suffix{color:var(--ft-cyan)}
.nav-links{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0}
.nav-links a{font-size:15px;line-height:1.5;color:#B8C8D3;text-decoration:none;font-weight:500}
.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ft-cyan)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;width:36px;height:36px;position:relative;flex-shrink:0;padding:4px}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:25px;height:2px;background:var(--ft-mist);position:absolute;left:5px;transition:transform .18s}
.nav-toggle span{top:17px;transform:none}
.nav-toggle span::before,.nav-toggle span::after{content:'';left:0}
.nav-toggle span::before{top:-7px}.nav-toggle span::after{top:7px}
.nav-toggle.open span{background:transparent}.nav-toggle.open span::before{top:0;transform:rotate(45deg)}.nav-toggle.open span::after{top:0;transform:rotate(-45deg)}
.preloader{display:none!important}
.reveal,.reveal.in{opacity:1!important;transform:none!important;transition:none!important}
footer{padding:36px 24px;border-top:1px solid #223844;background:var(--ft-obsidian);margin-top:0}
.footer-inner{max-width:1200px;margin:auto;padding:0}
.footer-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px}
.footer-brand img{width:36px;height:36px}
.footer-brand .fwm{font:12px/1.5 Michroma,Arial,sans-serif;letter-spacing:.05em;white-space:nowrap;color:var(--ft-mist)}
footer p{font-size:14px!important;line-height:1.7;color:#A6BAC7!important;margin:6px auto!important}
footer a{color:var(--ft-cyan);text-decoration:none}footer a:hover{text-decoration:underline}
.content{max-width:880px;padding:calc(var(--nav-h) + 54px) 28px 64px;margin:auto}
.content h1{font-size:clamp(32px,5vw,48px);line-height:1.18;letter-spacing:-.025em;color:var(--ft-mist);background:none;-webkit-text-fill-color:currentColor;filter:none}
.content h2{color:var(--ft-cyan);font-size:25px;line-height:1.3}
.content p,.content li{font-size:17px;line-height:1.65;color:#C4D1DA}
.content .last-updated{color:#A6BAC7;font-size:14px}
.contact-email{overflow-wrap:anywhere}
.contact-phone{font-family:var(--ft-font-primary);font-weight:600;letter-spacing:-.025em}
.contact-email{color:var(--ft-cyan)}
.contact-loc{color:#A6BAC7}
.cta-button.primary,.cta-buttons .cta-button.primary,.cta-button.cta-button-primary,.err-actions .cta-button,.contact-actions .cta-button:not(.secondary){background:var(--ft-action);color:#fff}
.cta-button.primary:hover,.cta-buttons .cta-button.primary:hover,.cta-button.cta-button-primary:hover,.err-actions .cta-button:hover,.contact-actions .cta-button:not(.secondary):hover{background:#1455BA}
[hidden]{display:none!important}
@media(max-width:860px){nav{padding:14px 18px}.nav-content{gap:10px}.nav-logo{gap:9px}.nav-logo img.nav-mark{width:32px;height:32px}.nav-wm{font-size:11px;letter-spacing:.035em}.nav-toggle{display:block}.nav-links{display:none;position:fixed;top:var(--nav-h);inset-inline:0;bottom:0;background:#0B1114;flex-direction:column;justify-content:center;align-items:center;gap:32px;padding:32px;z-index:1001;overflow:auto}.nav-links.open{display:flex}.nav-links a{font-size:22px;color:var(--ft-mist)}.content{padding:calc(var(--nav-h) + 34px) 22px 48px}.footer-brand .fwm{font-size:10px}}
@media(max-width:350px){nav{padding-inline:12px}.nav-wm{font-size:10px}.nav-logo img.nav-mark{width:28px;height:28px}.footer-brand{gap:8px}.footer-brand img{width:30px;height:30px}.footer-brand .fwm{font-size:9px}.content{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Without JavaScript the mobile navigation stays available in normal flow. */
@media(max-width:860px){html:not(.js) .nav-content{flex-wrap:wrap}html:not(.js) .nav-links{display:flex;position:static;flex-direction:row;justify-content:flex-start;gap:18px;flex-basis:100%;padding:8px 0 0;background:transparent;overflow:visible}html:not(.js) .nav-links a{font-size:14px}html:not(.js) .nav-toggle{display:none}}
