:root{--bg: #020408;--bg-elevated: #070d14;--bg-card: #0a1522;--ink: #f0f9ff;--ink-muted: #94b8d9;--border: rgb(0 174 239 / .22);--accent: #00aeef;--accent-mid: #0056d2;--accent-deep: #001a3d;--accent-hover: #33c4ff;--accent-soft: rgb(0 174 239 / .14);--glow-cyan: rgb(0 174 239 / .22);--glow-violet: rgb(139 92 246 / .12);--glow-blue: rgb(0 86 210 / .2);--gradient-brand: linear-gradient( 135deg, #00aeef 0%, #0056d2 55%, #001a3d 100% );--gradient-cta: linear-gradient(135deg, #00aeef 0%, #0056d2 100%);--radius: 14px;--radius-sm: 10px;--shadow: 0 4px 24px rgb(0 86 210 / .12), 0 1px 2px rgb(0 0 0 / .4);--space-section: clamp(3.25rem, 7vw, 5.5rem);--space-block: clamp(1.25rem, 3vw, 2rem);--content-max: min(40rem, 100%);--space-hero: clamp(3rem, 8vw + 1rem, 6rem);--space-contact-y: clamp(1.25rem, 3vw, 2rem);--font-sans: "Source Sans 3", ui-sans-serif, system-ui, sans-serif;--font-display: "Fraunces", ui-serif, Georgia, serif;--measure: 65ch;--measure-wide: 72ch;--tap-target: 2.75rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:clamp(3.5rem,10vw,4.5rem);-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-backdrop{animation:none!important}}body{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;padding-inline:env(safe-area-inset-left) env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}@media(min-width:480px){body{font-size:1.0625rem;line-height:1.65}}.site-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse 120% 90% at 10% -10%,rgb(0 174 239 / .2),transparent 58%),radial-gradient(ellipse 80% 70% at 90% 5%,rgb(99 102 246 / .14),transparent 55%),radial-gradient(ellipse 70% 55% at 75% 95%,rgb(0 86 210 / .18),transparent 52%),radial-gradient(ellipse 55% 45% at 5% 85%,rgb(168 85 247 / .09),transparent 48%),radial-gradient(ellipse 60% 50% at 50% 50%,rgb(0 26 61 / .35),transparent 65%),#020408}.site-backdrop:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 30% 40%,rgb(0 174 239 / .08),transparent 45%),radial-gradient(circle at 70% 60%,rgb(99 102 246 / .06),transparent 40%);animation:backdrop-drift 22s ease-in-out infinite alternate}.site-backdrop:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(0 174 239 / .05) 1px,transparent 1px),linear-gradient(90deg,rgb(0 174 239 / .05) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 75% 60% at 50% 42%,#000 20%,transparent 72%);opacity:.55}@keyframes backdrop-drift{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(2%,-1.5%) scale(1.04);opacity:.92}}.site-header,.page-main,.site-footer{position:relative;z-index:1}.page-main{flex:1;width:100%}.page-main--onepager{display:flex;flex-direction:column}img,svg{max-width:100%;height:auto}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}@media(hover:hover)and (pointer:fine){a:hover{color:var(--accent-hover)}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.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}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{position:fixed;left:max(1rem,env(safe-area-inset-left));top:max(1rem,env(safe-area-inset-top));width:auto;height:auto;padding:.75rem 1rem;background:var(--bg-elevated);color:var(--ink);border:1px solid var(--border);z-index:100;border-radius:8px}.wrap{width:min(960px,100% - clamp(1rem,4vw + .5rem,2.75rem));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;padding-top:env(safe-area-inset-top);background:#020408d1;backdrop-filter:blur(12px) saturate(1.15);border-bottom:1px solid rgb(0 174 239 / .1)}.site-header .wrap{width:min(960px,100% - clamp(1rem,4vw,2rem))}.site-header__inner{display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding-block:.5rem .55rem;min-height:0;line-height:1.2}.logo{display:inline-flex;align-items:center;gap:.5rem;min-height:var(--tap-target);padding:.35rem .5rem .35rem 0;margin:-.35rem 0 -.35rem -.25rem;border-radius:var(--radius-sm);text-decoration:none;color:var(--ink);flex-shrink:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(hover:hover)and (pointer:fine){.logo:hover{color:var(--accent-hover)}.logo:hover .logo__wordmark{color:var(--ink)}}.logo__img{display:block;height:1.8125rem;width:auto;max-width:min(9rem,38vw);object-fit:contain}.logo__wordmark{font-family:var(--font-display);font-weight:600;font-size:1.125rem;letter-spacing:-.02em;color:var(--ink);line-height:1}.nav{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;align-items:center;justify-content:flex-end;row-gap:.35rem}.nav a{font-size:.9rem;font-weight:600;letter-spacing:.01em;color:var(--ink-muted);text-decoration:none;padding:.35rem 0;border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease}@media(hover:hover)and (pointer:fine){.nav a:hover{color:var(--accent);border-bottom-color:#00aeef59}}.eyebrow{margin:0 0 .65rem;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.section__inner{display:flex;flex-direction:column;align-items:stretch;gap:0}.section__head{max-width:var(--measure-wide);margin-bottom:var(--space-block)}.section__head--center{margin-left:auto;margin-right:auto;text-align:center}.section__head--center .section__lead{margin-left:auto;margin-right:auto}.section__head h2{font-family:var(--font-display);font-size:clamp(1.65rem,3.2vw,2.2rem);line-height:1.18;margin:0 0 1rem;letter-spacing:-.025em;color:var(--ink)}.section__lead{margin:0;font-size:1.08rem;line-height:1.65;color:var(--ink-muted);max-width:var(--measure)}.section__lead--tight-bottom{margin-bottom:1.5rem}.section__copy{margin:0 0 var(--space-block);max-width:var(--measure-wide);color:var(--ink-muted)}.section__copy:last-of-type{margin-bottom:0}.section__grid{margin-top:clamp(1.75rem,4vw,2.75rem)}.section__grid--contact{align-items:stretch}.hero{position:relative;padding-block:var(--space-hero);border-bottom:1px solid rgb(0 174 239 / .08)}.page-main--tight .hero--minimal{padding-top:clamp(2.5rem,6vw + 1rem,5rem);padding-bottom:clamp(.65rem,1.75vw,1rem)}.page-main--tight .hero__title{margin-bottom:1.125rem}.page-main--tight .hero__lead{font-size:1rem;line-height:1.58}@media(min-width:480px){.page-main--tight .hero__lead{font-size:1.0625rem;line-height:1.62}}.hero--minimal:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 85% 65% at 50% 0%,rgb(0 174 239 / .07),transparent 60%);z-index:0}.hero__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;max-width:var(--content-max)}.hero__title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.55rem,5.5vw + .65rem,2.85rem);line-height:1.12;letter-spacing:-.03em;margin:0 0 1.5rem;background:linear-gradient(180deg,#fff,#c8e0f5);-webkit-background-clip:text;background-clip:text;color:transparent}.hero__title--wide{max-width:var(--content-max)}.hero__lead{margin:0;max-width:min(38rem,100%);color:#a0bedceb;font-size:1.0625rem;line-height:1.62;font-weight:400}.hero__lead--tight{max-width:min(36rem,100%)}.hero__lead+.hero__lead{margin-top:.65rem}.hero__actions{margin:1.35rem 0 0}.hero__jump{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-target);padding:.25rem 0;font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--accent);border-bottom:1px solid rgb(0 174 239 / .4);transition:color .15s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(hover:hover)and (pointer:fine){.hero__jump:hover{color:var(--accent-hover);border-bottom-color:var(--accent)}}.hero__cta{margin:2rem 0 0}.hero__cta-link{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#b4cde6e6;text-decoration:none;padding-bottom:.35rem;border-bottom:1px solid rgb(0 174 239 / .35);transition:color .15s ease,border-color .15s ease}@media(hover:hover)and (pointer:fine){.hero__cta-link:hover{color:var(--accent);border-bottom-color:var(--accent)}}.section{padding-block:var(--space-section)}.section--contact{scroll-margin-top:.5rem;padding-top:var(--space-contact-y);padding-bottom:max(clamp(2.75rem,7vw,4.25rem),calc(env(safe-area-inset-bottom,0px) + 1.25rem))}.contact-layout{max-width:var(--content-max);margin-inline:auto}.contact-layout__head{margin-bottom:clamp(1.5rem,3vw,1.85rem);text-align:center}@media(min-width:540px){.contact-layout__head{text-align:left}}.contact-layout__title{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.45rem);font-weight:600;letter-spacing:-.02em;color:var(--ink)}.contact-layout__intro{margin:0;font-size:.9375rem;line-height:1.55;max-width:38rem;color:#96b4d2e6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--tap-target);padding:.75rem 1.35rem;font-family:var(--font-sans);font-size:1rem;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background .18s ease,color .18s ease,transform .15s ease,box-shadow .18s ease}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--gradient-cta);color:#fff;box-shadow:0 2px 20px #00aeef61}@media(hover:hover)and (pointer:fine){.btn--primary:hover{background:linear-gradient(135deg,#33c4ff,#0066e8);color:#fff;box-shadow:0 6px 32px #00aeef7a}.btn--ghost:hover{border-color:#00aeef8c;background:#00aeef1a;color:var(--accent)}}.btn--ghost{background:#00aeef0f;color:var(--ink);border:1px solid rgb(0 174 239 / .28)}.btn--full{width:100%;margin-top:.25rem}.grid-2{display:grid;gap:clamp(1.25rem,3vw,1.75rem)}@media(min-width:768px){.grid-2{grid-template-columns:1fr 1fr;gap:1.75rem 2rem;align-items:stretch}}.card{display:flex;flex-direction:column;background:#0a1522a6;border:1px solid rgb(0 174 239 / .18);border-radius:var(--radius);padding:clamp(1.5rem,3vw,1.85rem);box-shadow:var(--shadow);backdrop-filter:blur(8px)}.card--stretch{height:100%;min-height:100%}.card--accent-edge{border-color:#00aeef47;box-shadow:var(--shadow),inset 0 1px #00aeef1f}.card h3{font-family:var(--font-display);font-size:1.22rem;margin:0 0 1rem;color:var(--ink);letter-spacing:-.02em}.card__text,.card p{font-size:.98rem;line-height:1.62}.card__text{margin:0;color:var(--ink-muted);flex:1}.card__email{margin:0;font-size:1.05rem}.card__email a{font-weight:600}.list-check{margin:0;padding:0;list-style:none;color:var(--ink-muted);font-size:.98rem;flex:1}.list-check li{position:relative;padding-left:1.65rem;margin-bottom:.7rem;line-height:1.5}.list-check li:last-child{margin-bottom:0}.list-check li:before{content:"";position:absolute;left:0;top:.5em;width:.55rem;height:.55rem;border-radius:50%;background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.contact-form{position:relative;display:flex;flex-direction:column;width:100%}.contact-form--premium{gap:0}.contact-form__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.contact-form__panel{position:relative;z-index:1;padding:clamp(1.4rem,3.25vw,1.65rem);border-radius:var(--radius);background:#0a1522b8;border:1px solid rgb(0 174 239 / .22);box-shadow:var(--shadow),inset 0 1px #00aeef1a;backdrop-filter:blur(10px);transition:border-color .22s ease,box-shadow .22s ease,opacity .22s ease}.contact-form[data-state=sending] .contact-form__panel{opacity:.94;pointer-events:none}.contact-form[data-state=success] .contact-form__panel{border-color:#00aeef6b;box-shadow:0 4px 28px #00aeef2e,inset 0 1px #00aeef24}.contact-form[data-state=error] .contact-form__panel{border-color:#ff786459}.contact-form__fields{display:flex;flex-direction:column;gap:1.05rem}.contact-form[data-state=sending] .contact-form__fields input,.contact-form[data-state=sending] .contact-form__fields textarea{opacity:.62}.contact-form__row{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:520px){.contact-form__row{grid-template-columns:1fr 1fr}}.contact-form__field{display:flex;flex-direction:column;gap:.4rem;margin:0}.contact-form__field--full{grid-column:1 / -1}.contact-form__label{display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap;font-size:.71875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#96b2d2e6}@media(min-width:480px){.contact-form__label{font-size:.6875rem;letter-spacing:.12em}}.contact-form__req{font-size:.85em;color:var(--accent);letter-spacing:0}.contact-form__opt{font-size:.58rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7896b9a6}.contact-form input,.contact-form textarea{width:100%;padding:.8125rem .9rem;font:inherit;font-size:1rem;line-height:1.45;border:1px solid rgb(0 174 239 / .18);border-radius:var(--radius-sm);background:#02060e8c;color:var(--ink);-webkit-tap-highlight-color:transparent;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.contact-form input{min-height:var(--tap-target)}.contact-form textarea{min-height:8rem;resize:vertical;line-height:1.55}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6482a880}@media(hover:hover)and (pointer:fine){.contact-form input:hover,.contact-form textarea:hover{border-color:#00aeef47}}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#00aeef8c;background:#020812bf;box-shadow:0 0 0 1px #00aeef33,0 0 24px #00aeef14}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-form input:invalid:not(:focus):not(:placeholder-shown),.contact-form textarea:invalid:not(:focus):not(:placeholder-shown){border-color:#ff8c7859}.contact-form__feedback{margin:1.15rem 0 0;min-height:0;padding:0;font-size:.875rem;line-height:1.5;border-radius:var(--radius-sm);transition:padding .2s ease,min-height .2s ease,background .2s ease,border-color .2s ease}.contact-form__feedback:not(:empty){min-height:2.65rem;padding:.65rem .85rem}.contact-form__feedback--loading{color:#a0d2f5f2;background:#00aeef14;border:1px solid rgb(0 174 239 / .22)}.contact-form__feedback--success{color:#aae6fffa;background:#00aeef1a;border:1px solid rgb(0 174 239 / .32)}.contact-form__feedback--error{color:#ffc8befa;background:#b4281e1f;border:1px solid rgb(255 120 100 / .35)}.contact-form__actions{margin-top:1.1rem}.contact-form__submit{position:relative;margin-top:0;padding-block:.85rem;min-height:calc(var(--tap-target) + .125rem);font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase}.contact-form__submit--hero{--cta-hero-fg: #f8fcff;--cta-hero-glow: rgb(0 200 255 / .55);isolation:isolate;overflow:hidden;margin-top:0;padding-block:1rem;padding-inline:1.35rem;min-height:3.35rem;font-size:.8125rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cta-hero-fg);border-radius:999px;border:1px solid rgb(255 255 255 / .22);background:linear-gradient(180deg,rgb(255 255 255 / .22) 0%,transparent 42%,rgb(0 40 90 / .35) 100%),linear-gradient(135deg,#2ad4ff,#0080ff 42%,#003d99);background-size:100% 100%,180% 180%;background-position:center,0% 50%;box-shadow:0 0 0 1px #00aeef59,0 1px #ffffff47 inset,0 -18px 36px #00287859 inset,0 8px 28px #0064dc61,0 0 48px var(--cta-hero-glow);transition:transform .22s cubic-bezier(.33,1,.68,1),box-shadow .28s ease,filter .22s ease,border-color .22s ease,background-position .5s ease}.contact-form__submit--hero:before{content:"";position:absolute;inset:-35% -40%;background:linear-gradient(105deg,transparent 0%,transparent 42%,rgb(255 255 255 / .55) 50%,transparent 58%,transparent 100%);transform:translate(-58%) skew(-16deg);opacity:.85;animation:contact-cta-shine 3.2s ease-in-out infinite;pointer-events:none}.contact-form__submit--hero:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #001e5073;mix-blend-mode:soft-light;opacity:.55;pointer-events:none}@keyframes contact-cta-shine{0%{transform:translate(-62%) skew(-16deg)}45%{transform:translate(42%) skew(-16deg)}to{transform:translate(42%) skew(-16deg)}}.contact-form__submit--hero .contact-form__submit-inner{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:.6rem}.contact-form__submit--hero .contact-form__submit-label{text-shadow:0 1px 0 rgb(0 40 100 / .35)}.contact-form__submit--hero .contact-form__submit-arrow{flex-shrink:0;opacity:.95;filter:drop-shadow(0 1px 0 rgb(0 40 100 / .35));transition:transform .22s cubic-bezier(.33,1,.68,1),opacity .2s ease}@media(hover:hover)and (pointer:fine){.contact-form__submit--hero:hover{transform:translateY(-2px) scale(1.012);border-color:#ffffff61;background-position:center,100% 50%;box-shadow:0 0 0 1px #00c8ff73,0 1px #ffffff59 inset,0 -18px 40px #00328266 inset,0 14px 40px #0078ff7a,0 0 64px #00d2ff8c}.contact-form__submit--hero:hover .contact-form__submit-arrow{transform:translate(3px);opacity:1}}.contact-form__submit--hero:active{transform:translateY(0) scale(.992);box-shadow:0 0 0 1px #00aeef66,0 1px #fff3 inset,0 -12px 28px #001e5073 inset,0 4px 18px #0050c859,0 0 36px #00aeef66}.contact-form__submit--hero:focus-visible{outline:2px solid rgb(180 235 255 / .95);outline-offset:3px}.contact-form__submit--hero .contact-form__btn-busy,.contact-form__submit--hero .contact-form__btn-success{position:relative;z-index:1}.contact-form__btn-success--hero{gap:.45rem}.contact-form__submit--hero .contact-form__submit-check{flex-shrink:0;opacity:.95}@media(prefers-reduced-motion:reduce){.contact-form__submit--hero:before{animation:none;transform:translate(-8%) skew(-16deg);opacity:.22}.contact-form__submit--hero,.contact-form__submit--hero .contact-form__submit-arrow{transition-duration:.01ms}}.contact-form__submit--hero:disabled:before{animation:none;opacity:.1}.contact-form__submit:disabled{cursor:not-allowed;opacity:.88;filter:saturate(.92)}.contact-form__btn-busy{display:none;align-items:center;justify-content:center;gap:.55rem}.contact-form__btn-success{display:none;align-items:center;justify-content:center;gap:.35rem;color:#beebfffa}.contact-form[data-state=sending] .contact-form__btn-text{display:none}.contact-form[data-state=sending] .contact-form__btn-busy{display:inline-flex}.contact-form[data-state=success] .contact-form__btn-text,.contact-form[data-state=success] .contact-form__btn-busy{display:none}.contact-form[data-state=success] .contact-form__btn-success{display:inline-flex}.contact-form__spinner{width:1rem;height:1rem;border-radius:50%;border:2px solid rgb(255 255 255 / .25);border-top-color:#fff;animation:contact-spin .65s linear infinite}@media(prefers-reduced-motion:reduce){.contact-form__spinner{animation:none;border-color:#ffffff8c;border-top-color:transparent}}@keyframes contact-spin{to{transform:rotate(360deg)}}.form-note,.contact-form__note{font-size:.75rem;line-height:1.55;color:#82a0c3d9;margin-top:1.35rem;margin-bottom:0}.contact-form__note a{color:#b4d2f0f2;font-weight:500}.banner-success{padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-hover);font-weight:600;margin-bottom:1.25rem;border:1px solid rgb(0 174 239 / .28)}.site-footer{margin-top:auto;border-top:1px solid rgb(0 174 239 / .1);padding-top:clamp(1.75rem,4vw,2.25rem);padding-bottom:max(clamp(1.75rem,4vw,2.25rem),calc(env(safe-area-inset-bottom,0px) + 1rem));font-size:.9rem;color:var(--ink-muted)}.site-footer--tight{padding-top:clamp(1rem,3vw,1.35rem);padding-bottom:max(clamp(1rem,3vw,1.35rem),calc(env(safe-area-inset-bottom,0px) + .75rem))}.site-footer__inner{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}@media(min-width:480px){.site-footer__inner{flex-direction:row;align-items:center;justify-content:space-between;gap:1.5rem}}.site-footer__line{margin:0;overflow-wrap:anywhere}.site-footer a{font-weight:500}main code{padding:.15em .4em;border-radius:6px;font-size:.9em;background:var(--bg-elevated);border:1px solid var(--border);color:var(--accent)}.page-title{font-family:var(--font-display);font-size:clamp(1.5rem,4vw + .5rem,2.25rem);line-height:1.2;margin:0 0 1rem;letter-spacing:-.02em;background:linear-gradient(180deg,#f8fcff,#b8d4f0);-webkit-background-clip:text;background-clip:text;color:transparent}
