:root{color-scheme:dark;--primary: #3ac3f6;--primary-border: #e0f3fe;--primary-glow: rgba(103, 208, 250, .4);--background: #121212;--background-light: #1a1a1a;--background-dark: #0d0d0d;--text: #edf1fe;--text-muted: #c0c0c0;--glass: rgba(30, 30, 30, .45);--glass-solid: rgba(30, 30, 30, .95);--glass-dropdown: rgba(30, 30, 30, .95);--glass-border: rgba(255, 255, 255, .1);--gradient-strong: rgba(6, 8, 15, .9);--gradient-medium: rgba(6, 8, 15, .6);--shadow-medium: 0 8px 32px rgba(0, 0, 0, .3);--shadow-large: 0 10px 40px rgba(0, 0, 0, .3);--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--content-width: min(1200px, calc(100% - 80px - var(--safe-area-left) - var(--safe-area-right)));--deep: var(--background);--ink: var(--text);--muted: rgba(237, 241, 254, .85);--aqua: var(--primary);--teal: var(--background-light);--cream-ink: var(--text);font-family:Jost,sans-serif;font-synthesis:none}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden;scroll-behavior:smooth;overscroll-behavior:none}@media(hover:none)and (pointer:coarse){html{overscroll-behavior-y:auto}}body{position:relative;margin:0;overflow-x:hidden;color:var(--text);background:var(--background);font-family:Jost,sans-serif;font-size:16px;line-height:1.6;overscroll-behavior-x:none}body:before{position:absolute;z-index:1;right:0;bottom:100%;left:0;height:100vh;background:#00000080;content:"";pointer-events:none}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{border:0}img{display:block;max-width:100%;height:auto}.skip-link{position:fixed;z-index:20000;top:calc(8px + var(--safe-area-top));left:calc(8px + var(--safe-area-left));padding:10px 14px;color:var(--background);background:var(--primary);border-radius:8px;font-weight:600;transform:translateY(calc(-150% - var(--safe-area-top)))}.skip-link:focus{transform:translateY(0)}.floating-header{position:fixed;z-index:1000;top:calc(20px + var(--safe-area-top));left:50%;display:flex;align-items:center;justify-content:center;padding:12px 14px;opacity:0;color:var(--text);background:var(--glass);border:1px solid var(--glass-border);border-radius:50px;box-shadow:var(--shadow-medium);backdrop-filter:blur(20px);transform:translate(-50%) translateY(-100px);transition:transform .4s ease-in-out,opacity .4s ease-in-out,padding .5s ease-in-out,background .4s ease-in-out}.floating-header.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.floating-header:has(.desktop-nav.is-expanded){padding-right:40px;padding-left:40px}.floating-header.is-over-light{background:var(--glass-solid)}.desktop-nav{display:flex;gap:0;align-items:center;white-space:nowrap;transition:gap .5s ease-in-out}.desktop-nav.is-expanded{gap:20px}.desktop-nav>*:not(:first-child){opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease-in-out,visibility .4s ease-in-out}.desktop-nav.is-expanded>*:not(:first-child){opacity:1;visibility:visible;pointer-events:auto;transition-delay:.15s}.home-button{display:flex;width:32px;height:32px;align-items:center;justify-content:center;padding:6px;color:var(--text);border-radius:50%;transition:color .3s ease}.home-button svg,.footer-social svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.home-button:hover,.home-button:focus-visible{color:var(--primary)}.nav-link{position:relative;display:inline-flex;align-items:center;padding:8px 12px;color:var(--text);font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase;transition:color .3s ease}.services-dropdown>.nav-link{gap:5px}.services-dropdown>.nav-link:before{width:0;height:0;margin-left:4px;border-top:5px solid currentColor;border-right:4px solid transparent;border-left:4px solid transparent;content:"";order:2;transition:transform .3s ease}.nav-link:after{position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary);border-radius:1px;content:"";transform:translate(-50%);transition:width .3s ease}.nav-link:hover,.nav-link:focus-visible,.nav-link.is-active{color:var(--primary)}.nav-link:hover:after,.nav-link:focus-visible:after,.nav-link.is-active:after{width:calc(100% - 24px)}.services-dropdown{position:relative}.services-menu{position:absolute;z-index:1001;top:100%;left:-20px;min-width:200px;margin-top:15px;padding:15px 0;opacity:0;visibility:hidden;background:var(--glass-dropdown);border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--shadow-medium);backdrop-filter:blur(10px);transform:translateY(10px);transition:all .3s ease}.services-dropdown:hover .services-menu,.services-dropdown:focus-within .services-menu{opacity:1;visibility:visible;transform:translateY(0)}.services-dropdown:hover>.nav-link:before,.services-dropdown:focus-within>.nav-link:before{transform:rotate(180deg)}.services-menu a{display:block;padding:12px 25px;color:var(--text);font-size:13px;font-weight:500;letter-spacing:1px;text-transform:uppercase;transition:color .3s ease,transform .3s ease}.services-menu a:hover,.services-menu a:focus-visible{color:var(--primary);transform:translate(5px)}.header-social{display:none;gap:8px;align-items:center}.header-social a{display:flex;width:18px;height:18px;align-items:center;justify-content:center;color:var(--primary);transition:transform .3s ease}.header-social a:hover{transform:scale(1.2)}.header-social svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.menu-toggle,.mobile-menu,.mobile-overlay{display:none}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;border:2px solid transparent;border-radius:22px;font-size:14px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.button--primary{color:var(--background);background:radial-gradient(circle at 10% 10%,#10ace7,#3ac3f6);border-color:var(--primary)}.button--primary:hover,.button--primary:focus-visible{color:#fff;border-color:var(--primary-border);transform:translateY(-2px)}.button--secondary{color:var(--text);background:transparent;border-color:var(--glass-border)}.button--secondary:hover,.button--secondary:focus-visible{color:var(--primary);border-color:var(--primary);transform:translateY(-2px)}.site-footer{position:relative;padding:48px calc(40px + var(--safe-area-right)) calc(28px + var(--safe-area-bottom)) calc(40px + var(--safe-area-left));background:#121212;border-top:1px solid rgba(237,241,254,.12);box-shadow:0 100vh 0 100vh var(--background)}.site-footer:before{position:absolute;z-index:0;inset:0;opacity:0;background:url(/site-assets/bg_footer.avif) center / cover no-repeat;content:"";animation:fade-in .8s ease-out forwards}.site-footer:after{position:absolute;z-index:1;inset:0;background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);content:"";pointer-events:none}.footer-content{position:relative;z-index:2;max-width:1040px;margin:0 auto}.footer-columns{display:grid;grid-template-columns:minmax(0,1.4fr) auto auto;gap:32px clamp(40px,7vw,112px);align-items:start}.footer-logo{margin-bottom:10px;color:var(--text);font-size:28px;font-weight:500;letter-spacing:1px}.footer-brand>p:not(.footer-logo){max-width:34ch;margin-bottom:16px;color:#edf1fed9;font-size:15px;line-height:1.7}.footer-social{display:flex;gap:14px}.footer-social a{display:block;width:24px;height:24px;color:var(--primary);transition:transform .3s ease}.footer-social a:hover,.footer-social a:focus-visible{transform:scale(1.2)}.footer-links h2,.footer-contact h2{margin:6px 0 14px;color:var(--primary);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}.footer-links ul{display:flex;flex-direction:column;gap:10px;list-style:none}.footer-links a{color:#edf1fed9;font-size:14px;transition:color .3s ease}.footer-links a:hover,.footer-links a:focus-visible{color:var(--primary)}.footer-contact address{display:flex;flex-direction:column;gap:10px;font-style:normal}.footer-contact address small{display:block;margin-top:3px;color:var(--muted);font-size:12px}.footer-contact a{display:flex;gap:12px;align-items:center;color:#edf1fed9;font-size:14px;transition:color .3s ease}.footer-contact a svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:var(--primary);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s ease}.footer-contact a:hover,.footer-contact a:focus-visible{color:var(--primary)}.footer-contact a:hover svg{transform:scale(1.2)}.footer-meta{display:flex;gap:12px 28px;align-items:center;justify-content:center;margin-top:36px;color:#edf1fe8c;font-size:13px}.footer-meta nav{display:flex;gap:18px}.footer-meta a{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:color .3s ease,text-decoration-color .3s ease}.footer-meta a:hover,.footer-meta a:focus-visible{color:var(--primary);text-decoration-color:currentColor}.reveal{opacity:0;transform:translateY(40px)}.reveal.is-visible{animation:fade-in-up .8s ease-out var(--reveal-delay, 0s) forwards}@keyframes fade-in{to{opacity:1}}@keyframes page-parallax{to{translate:0 calc(100lvh - 100%)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px),(hover:none)and (pointer:coarse){:root{--content-width: min(100% - 40px - var(--safe-area-left) - var(--safe-area-right), 1200px)}.floating-header{right:calc(16px + var(--safe-area-right));left:auto;padding:10px 12px;transform:translateY(-100px)}.floating-header.is-visible{transform:translateY(0)}.floating-header:has(.desktop-nav.is-expanded){padding:10px 12px}.desktop-nav{display:none}.menu-toggle{position:relative;display:flex;width:34px;height:34px;align-items:center;justify-content:center;padding:5px;color:var(--text);background:transparent;cursor:pointer}.menu-toggle svg{position:absolute;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;transition:opacity .3s ease,transform .3s ease}.menu-toggle .close-icon{opacity:0;transform:rotate(90deg)}.menu-toggle[aria-expanded=true] .menu-icon{opacity:0;transform:rotate(-90deg)}.menu-toggle[aria-expanded=true] .close-icon{opacity:1;transform:rotate(0)}.mobile-menu{position:fixed;z-index:1001;top:calc(80px + var(--safe-area-top));right:calc(20px + var(--safe-area-right));left:calc(20px + var(--safe-area-left));display:flex;max-height:calc(100vh - 120px - var(--safe-area-top) - var(--safe-area-bottom));max-height:calc(100dvh - 120px - var(--safe-area-top) - var(--safe-area-bottom));flex-direction:column;gap:15px;overflow-y:auto;padding:25px;opacity:0;visibility:hidden;background:var(--glass-solid);border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--shadow-large);backdrop-filter:blur(20px);transform:translateY(-20px);transition:all .3s ease}.mobile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0)}.mobile-menu>*{flex-shrink:0}.mobile-menu>a,.mobile-services-toggle{padding:12px 0;color:var(--text);background:none;font-size:14px;font-weight:500;letter-spacing:1px;text-align:left;text-transform:uppercase}.mobile-services-toggle{display:flex;width:100%;gap:8px;align-items:center;cursor:pointer}.mobile-services-toggle:after{width:0;height:0;border-top:5px solid currentColor;border-right:4px solid transparent;border-left:4px solid transparent;content:"";transition:transform .3s ease}.mobile-services-toggle[aria-expanded=true]:after{transform:rotate(180deg)}.mobile-services{display:flex;max-height:0;flex-direction:column;overflow:hidden;padding-left:20px;transition:max-height .3s ease}.mobile-services.is-open{max-height:300px}.mobile-services a{padding:12px 25px;color:var(--text);font-size:13px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.mobile-menu a:hover,.mobile-menu a:focus-visible,.mobile-services-toggle:hover,.mobile-services-toggle:focus-visible{color:var(--primary)}.mobile-overlay{position:fixed;z-index:999;inset:0;display:block;opacity:0;visibility:hidden;background:#0006;cursor:default;transition:opacity .3s ease,visibility .3s ease}.mobile-overlay.is-open{opacity:1;visibility:visible}.site-footer{padding:32px calc(20px + var(--safe-area-right)) calc(20px + var(--safe-area-bottom)) calc(20px + var(--safe-area-left))}.footer-columns{grid-template-columns:auto minmax(0,1fr);gap:24px 28px}.footer-brand{grid-column:1 / -1}.footer-brand>p:not(.footer-logo){margin-bottom:12px}.footer-logo{font-size:24px}.footer-links h2,.footer-contact h2{margin-top:0}.footer-meta{margin-top:28px;gap:6px 18px;flex-wrap:wrap}.button{width:100%;padding:14px 24px}}@media(max-height:600px)and (min-width:769px){.header-social{display:flex}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media(min-width:769px)and (max-width:1440px)and (hover:hover)and (pointer:fine){body:has(main[data-announcement-view=article]) .floating-header{left:calc(50% + 70px);max-width:calc(100% - 220px)}body:has(main[data-announcement-view=article]) .desktop-nav.is-expanded{gap:3px}body:has(main[data-announcement-view=article]) .nav-link{padding:8px 6px;font-size:clamp(10px,1vw,14px);letter-spacing:0}body:has(main[data-announcement-view=article]) .floating-header:has(.desktop-nav.is-expanded){padding-inline:18px}}
