@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--blue:#15325b;--blue-soft:#1e4478;--blue-glow:#15325b73;--grey:#4e4e4e;--grey-soft:#6a6a6a;--black:#05070b;--white:#f4f6f9;--font-display:"Space Grotesk", sans-serif;--font-body:"IBM Plex Sans", sans-serif;--radius:2px;--header-h:76px;--ease:cubic-bezier(.22, 1, .36, 1);--container:min(1140px, calc(100% - 2.5rem))}html[data-theme=dark]{--bg:#0b1018;--bg-elevated:#141b26;--bg-muted:#101722;--bg-header:#0e141ee0;--text:#e8edf4;--text-muted:#9aa5b5;--heading:#f3f6fb;--border:#e8edf41f;--accent:#7ea0cc;--accent-strong:#a8c2e0;--btn-bg:#1e4478;--btn-text:#f4f6f9;--hero-overlay:linear-gradient(120deg, #080c12e6 8%, #080c12ad 48%, #15325b80 100%);--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 4px 12px #00000047, 0 1px 3px #00000059;--shadow:0 12px 28px #00000061, 0 4px 10px #00000047;--shadow-lg:0 24px 48px #00000073, 0 10px 20px #0000004d;--shadow-btn:0 8px 20px #15325b73, 0 2px 6px #00000059;--shadow-inset:inset 0 1px 0 #ffffff0a}html[data-theme=light]{--bg:#e8eef5;--bg-elevated:#fff;--bg-muted:#dce5f0;--bg-header:#ffffffe6;--text:#2f3640;--text-muted:#4e4e4e;--heading:#15325b;--border:#15325b24;--accent:#15325b;--accent-strong:#0f2444;--btn-bg:#15325b;--btn-text:#f4f6f9;--hero-overlay:linear-gradient(120deg, #080c12db 10%, #080c128c 50%, #15325b52 100%);--shadow-xs:0 1px 2px #15325b0f;--shadow-sm:0 4px 12px #15325b14, 0 1px 3px #15325b0f;--shadow:0 14px 32px #15325b1f, 0 4px 10px #15325b14;--shadow-lg:0 28px 56px #15325b29, 0 10px 22px #15325b1a;--shadow-btn:0 10px 22px #15325b47, 0 3px 8px #15325b2e;--shadow-inset:inset 0 1px 0 #fffc}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{min-width:320px;font-family:var(--font-body);color:var(--text);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}h1,h2,h3,h4{font-family:var(--font-display);color:var(--heading);margin:0;line-height:1.15}p{margin:0}#root{min-height:100vh}.container{width:var(--container);margin-inline:auto}.section{padding:clamp(4.5rem,9vw,7rem) 0}.section__header{max-width:40rem;margin-bottom:clamp(2.5rem,5vw,3.5rem)}.section__title{letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.9rem,3.4vw,2.75rem)}.section__subtitle{color:var(--text-muted);max-width:38rem;font-size:1.05rem}.eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:.85rem;font-size:.78rem;font-weight:600}.btn{border-radius:var(--radius);font-family:var(--font-display);letter-spacing:.02em;transition:transform .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);cursor:pointer;border:1px solid #0000;align-items:center;gap:.55rem;padding:.9rem 1.25rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--btn-bg);color:var(--btn-text);box-shadow:var(--shadow-btn), var(--shadow-inset)}.btn--primary:hover{background:var(--blue-soft);box-shadow:var(--shadow-lg)}.btn--ghost{background:color-mix(in srgb, var(--bg-elevated) 70%, transparent);border-color:var(--border);color:var(--heading);box-shadow:var(--shadow-xs)}.btn--ghost:hover{border-color:var(--accent);color:var(--accent-strong);box-shadow:var(--shadow-sm)}.header{z-index:50;height:var(--header-h);background:var(--bg-elevated);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);transition:box-shadow .3s var(--ease);position:fixed;inset:0 0 auto}.header--scrolled{box-shadow:var(--shadow-sm)}.header__inner{width:var(--container);justify-content:space-between;align-items:center;gap:1rem;height:100%;margin-inline:auto;display:flex}.header__brand{flex-shrink:0;align-items:center;line-height:0;display:flex}.logo{object-fit:contain;object-position:left center;-webkit-user-select:none;user-select:none;width:auto;height:44px;display:block}.logo--header{height:42px}.logo--footer{height:52px;margin-bottom:.85rem}.logo--about{max-width:100%;height:clamp(56px,8vw,72px)}.header__nav{align-items:center;gap:1.4rem;display:flex}.header__link{font-family:var(--font-display);color:var(--text-muted);font-size:.92rem;font-weight:500;transition:color .2s}.header__link:hover{color:var(--heading)}.header__cta{padding:.7rem 1rem;font-size:.88rem}.header__controls{align-items:center;gap:.65rem;display:flex}.lang-switch{border:1px solid var(--border);border-radius:var(--radius);display:inline-flex;overflow:hidden}.lang-switch--mobile{display:none}.lang-switch button{color:var(--text-muted);cursor:pointer;font-family:var(--font-display);letter-spacing:.06em;background:0 0;border:0;padding:.45rem .65rem;font-size:.78rem;font-weight:600}.lang-switch button.is-active{background:var(--btn-bg);color:var(--btn-text)}.theme-toggle{border-radius:var(--radius);border:1px solid var(--border);background:color-mix(in srgb, var(--bg-elevated) 80%, transparent);width:38px;height:38px;color:var(--heading);cursor:pointer;box-shadow:var(--shadow-xs);place-items:center;display:grid}.menu-toggle{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;z-index:70;background:0 0;place-items:center;gap:5px;width:42px;height:42px;padding:0;display:none;position:relative}.menu-toggle span{background:var(--heading);width:18px;height:1.5px;transition:transform .28s var(--ease), opacity .28s var(--ease);transform-origin:50%;display:block}.menu-toggle.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu{display:none}.hero{min-height:calc(100vh - var(--header-h));min-height:calc(100svh - var(--header-h));margin-top:var(--header-h);align-items:center;padding:clamp(3rem,7vw,5rem) 0 clamp(3.5rem,8vw,5rem);display:grid;position:relative;overflow:hidden}.hero__media{position:absolute;inset:0;overflow:hidden}.hero__gradient{background:radial-gradient(55% 70% at 85% 20%,#1e447873,#0000 60%),radial-gradient(40% 50% at 10% 90%,#4e4e4e1f,#0000 55%),linear-gradient(118deg,#eef3f8 0%,#e2eaf3 22%,#c5d4e6 48%,#1e4478 72%,#15325b 88%,#0f2444 100%);position:absolute;inset:0}html[data-theme=dark] .hero__gradient{background:radial-gradient(50% 60% at 88% 18%,#6e93c738,#0000 58%),radial-gradient(45% 55% at 8% 85%,#4e4e4e33,#0000 50%),linear-gradient(118deg,#141b26 0%,#1a2433 24%,#15325b 55%,#0f2444 78%,#0b1018 100%)}.hero__glow{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#8eafd859,#0000 68%);border-radius:50%;width:min(58vw,560px);animation:10s ease-in-out infinite hero-glow;position:absolute;top:8%;right:-6%}html[data-theme=dark] .hero__glow{background:radial-gradient(circle,#7ea0cc47,#0000 68%)}.hero__grid{pointer-events:none;opacity:.85;background-image:linear-gradient(#15325b12 1px,#0000 1px),linear-gradient(90deg,#15325b12 1px,#0000 1px);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#000 0% 40%,#0000 75%);mask-image:linear-gradient(115deg,#000 0% 40%,#0000 75%)}html[data-theme=dark] .hero__grid{opacity:.55;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);-webkit-mask-image:linear-gradient(115deg,#0000 0%,#000 35% 100%);mask-image:linear-gradient(115deg,#0000 0%,#000 35% 100%)}.hero__grain{opacity:.12;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}@keyframes hero-glow{0%,to{opacity:.75;transform:scale(1)translate(0)}50%{opacity:1;transform:scale(1.08)translate(-2%,3%)}}.hero__content{z-index:1;width:var(--container);margin-inline:auto;position:relative}.hero__copy{max-width:36rem}.hero__brand-block{align-items:center;width:fit-content;margin-bottom:1.35rem;display:flex}.logo--hero{max-width:min(540px,92vw);height:clamp(78px,12vw,112px)}.hero__rule{background:var(--blue);width:3rem;height:2px;margin-bottom:1.25rem;display:block}.hero__title{letter-spacing:-.03em;max-width:13ch;color:var(--blue);margin-bottom:1rem;font-size:clamp(2.05rem,4.6vw,3.4rem);line-height:1.08}html[data-theme=dark] .hero__title{color:#f3f6fb}html[data-theme=dark] .hero__rule{background:#7ea0cc}.hero__subtitle{color:var(--grey);max-width:34rem;margin-bottom:1.85rem;font-size:clamp(1rem,1.45vw,1.12rem);line-height:1.65}html[data-theme=dark] .hero__subtitle{color:#9aa5b5}.hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}.hero__btn-ghost{color:var(--blue);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff73;border-color:#15325b38}.hero__btn-ghost:hover{border-color:var(--blue);color:var(--blue);background:#ffffffbf}html[data-theme=dark] .hero__btn-ghost{color:#f3f6fb;background:#141b2673;border-color:#e8edf438}html[data-theme=dark] .hero__btn-ghost:hover{color:#fff;background:#141b26b3;border-color:#8eafd8}.hero__scroll{z-index:1;border:1px solid #15325b47;border-radius:999px;justify-items:center;width:22px;height:34px;padding-top:7px;display:grid;position:absolute;bottom:1.35rem;left:50%;transform:translate(-50%)}html[data-theme=dark] .hero__scroll{border-color:#e8edf438}.hero__scroll span{background:var(--blue);width:3px;height:8px;animation:scroll-dot 1.8s var(--ease) infinite;border-radius:999px}html[data-theme=dark] .hero__scroll span{background:#7ea0cc}@keyframes scroll-dot{0%{opacity:1;transform:translateY(0)}80%{opacity:0;transform:translateY(10px)}to{opacity:0}}.stats{border-block:1px solid var(--border);background:var(--bg-elevated);box-shadow:var(--shadow-inset), 0 10px 30px #00000014;padding:2.5rem 0}.stats__grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}.stats__item{background:color-mix(in srgb, var(--bg) 55%, var(--bg-elevated));border:1px solid var(--border);box-shadow:var(--shadow-xs), var(--shadow-inset);transition:transform .25s var(--ease), box-shadow .25s var(--ease);border-radius:4px;padding:.85rem .9rem}.stats__item:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stats__value{font-family:var(--font-display);color:var(--accent);margin-bottom:.35rem;font-size:clamp(1.8rem,3vw,2.3rem);display:block}.stats__label{margin-bottom:.35rem;font-size:1rem}.stats__detail{color:var(--text-muted);font-size:.92rem}.services{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--bg-muted) 55%, transparent)), var(--bg)}.services__list{gap:clamp(3.5rem,8vw,6rem);display:grid}.service-block{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);display:grid;overflow:hidden}.service-block--reverse{grid-template-columns:.85fr 1.15fr}.service-block--reverse .service-block__media{order:2}.service-block--reverse .service-block__content{order:1}.service-block__media{min-width:0}.service-block__frame{border:1px solid var(--border);background:var(--bg-muted);aspect-ratio:16/11;box-shadow:var(--shadow-lg), var(--shadow-inset);position:relative;overflow:hidden}.service-block__content{max-width:34rem}.service__index{font-family:var(--font-display);color:var(--accent);letter-spacing:.12em;margin-bottom:.9rem;font-size:.85rem;display:block}.service-block__title{letter-spacing:-.02em;margin-bottom:.9rem;font-size:clamp(1.55rem,2.6vw,2.1rem)}.service-block__text{color:var(--text-muted);font-size:1.05rem;line-height:1.7}.carousel{width:100%;height:100%;position:relative}.carousel__viewport{background:#0a1018;width:100%;height:100%;position:relative;overflow:hidden}.carousel__image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.carousel__shade{pointer-events:none;background:linear-gradient(#0000,#05070b8c);height:38%;position:absolute;inset:auto 0 0}.carousel__controls{z-index:2;gap:.4rem;display:flex;position:absolute;bottom:.85rem;right:.85rem}.carousel__nav{color:#f3f6fb;border-radius:var(--radius);cursor:pointer;width:38px;height:38px;font-family:var(--font-display);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);background:#05070b8c;border:1px solid #f3f6fb59;box-shadow:0 6px 16px #00000059}.carousel__nav:hover{background:#15325bd9;border-color:#8eafd8b3;box-shadow:0 10px 22px #0006}.carousel__dots{z-index:2;gap:.4rem;display:flex;position:absolute;bottom:1rem;left:.9rem}.carousel__dot{cursor:pointer;width:8px;height:8px;transition:width .25s var(--ease), background .25s var(--ease);background:#f3f6fb59;border:0;border-radius:999px;padding:0}.carousel__dot.is-active{background:#8eafd8;width:22px}.about{background:var(--bg-elevated)}.about__layout{grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.about__panel{border:1px solid var(--border);min-height:360px;box-shadow:var(--shadow-lg), var(--shadow-inset);background:radial-gradient(circle at 30% 30%,#1e447873,#0000 45%),linear-gradient(145deg,#0c121b,#15325b 70%,#2a3545);flex-direction:column;justify-content:space-between;gap:1.5rem;padding:1.75rem;display:flex;position:relative;overflow:hidden}html[data-theme=light] .about__panel{background:radial-gradient(circle at 28% 30%,#15325b47,#0000 48%),linear-gradient(145deg,#0c121b,#15325b 70%,#2a3545)}.about__brand{z-index:1;width:fit-content;line-height:0;position:relative}.about__highlight{z-index:1;font-family:var(--font-display);color:#f4f6f9;max-width:18ch;font-size:1.2rem;font-weight:600;line-height:1.3;position:relative}.about__content p+p{margin-top:1rem}.about__content p{color:var(--text-muted)}.contact__layout{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.contact__form{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow), var(--shadow-inset);grid-template-columns:1fr 1fr;gap:1rem;padding:clamp(1.25rem,3vw,1.75rem);display:grid}.field{flex-direction:column;gap:.45rem;display:flex}.field--full{grid-column:1/-1}.field span{font-family:var(--font-display);color:var(--heading);font-size:.85rem;font-weight:600}.field em{color:var(--accent);font-style:normal}.field input,.field textarea{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:var(--radius);box-shadow:var(--shadow-xs), inset 0 1px 2px #0000000f;resize:vertical;outline:none;padding:.85rem .95rem;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent), var(--shadow-sm)}.contact__footer{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;display:flex}.contact__hint,.contact__privacy{color:var(--text-muted);font-size:.85rem}.contact__privacy{grid-column:1/-1}.contact__email{font-family:var(--font-display);margin-top:1rem;font-weight:600}.contact__email a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.contact__success,.contact__error{font-family:var(--font-display);grid-column:1/-1;font-weight:600}.contact__success{color:var(--accent-strong)}.contact__error{color:#c45c5c}.contact__form .btn:disabled{opacity:.7;cursor:wait;transform:none}.legal{margin-top:var(--header-h);min-height:calc(100svh - var(--header-h) - 12rem);background:var(--bg)}.legal__inner{max-width:720px}.legal__title{letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.9rem,3.5vw,2.6rem)}.legal__intro{color:var(--text-muted);max-width:40rem;margin-bottom:2.5rem;font-size:1.05rem}.legal__sections{gap:1.75rem;display:grid}.legal__block h2{margin-bottom:.65rem;font-size:1.15rem}.legal__block p{color:var(--text-muted);font-size:.98rem;line-height:1.7}.legal__block p+p{margin-top:.75rem}.legal__back{margin-top:2.75rem}.footer{border-top:1px solid var(--border);background:var(--bg-muted);padding:3rem 0 1.5rem;box-shadow:inset 0 12px 28px #00000014}.footer__grid{grid-template-columns:1.4fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem;display:grid}.footer__brand p,.footer p,.footer a{color:var(--text-muted)}.footer h3{margin-bottom:.85rem;font-size:.95rem}.footer a{margin-top:.35rem;transition:color .2s;display:block}.footer a:hover{color:var(--heading)}.footer__bottom{border-top:1px solid var(--border);padding-top:1.1rem;font-size:.88rem}.scroll-top{z-index:60;border:1px solid var(--border);border-radius:var(--radius);background:var(--btn-bg);width:48px;height:48px;color:var(--btn-text);cursor:pointer;box-shadow:var(--shadow-btn), var(--shadow-lg);place-items:center;display:grid;position:fixed;bottom:1.25rem;right:1.25rem}.scroll-top:hover{background:var(--blue-soft)}.scroll-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=900px){:root{--header-h:68px;--container:min(1140px, calc(100% - 2rem))}.header{z-index:80}.logo--header{height:34px}.header__controls{gap:.45rem}.lang-switch button{padding:.4rem .55rem}.theme-toggle,.menu-toggle{width:42px;height:42px}.menu-toggle{display:grid}.header__nav--desktop{display:none}.mobile-menu{z-index:70;pointer-events:none;display:block;position:fixed;inset:0}.mobile-menu.is-open{pointer-events:auto}.mobile-menu__backdrop{opacity:0;transition:opacity .3s var(--ease);cursor:pointer;background:#05070b8c;border:0;padding:0;position:absolute;inset:0}.mobile-menu.is-open .mobile-menu__backdrop{opacity:1}.mobile-menu__panel{background:var(--bg-elevated);border-left:1px solid var(--border);width:min(86vw,320px);padding:calc(var(--header-h) + 1rem) 1.35rem calc(1.5rem + env(safe-area-inset-bottom));transition:transform .35s var(--ease);box-shadow:-20px 0 50px #0006, var(--shadow-inset);flex-direction:column;gap:.35rem;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.mobile-menu.is-open .mobile-menu__panel{transform:translate(0)}.mobile-menu__links{flex-direction:column;display:flex}.mobile-menu__link{font-family:var(--font-display);color:var(--heading);border-bottom:1px solid var(--border);padding:1.05rem .1rem;font-size:1.15rem;font-weight:600}.mobile-menu__cta{justify-content:center;width:100%;margin-top:1.25rem}.lang-switch--mobile{width:100%;margin-top:auto;display:inline-flex}.lang-switch--mobile button{flex:1;padding:.85rem}.section{padding:clamp(3.25rem,10vw,5rem) 0}.hero{min-height:calc(100svh - var(--header-h));padding:2rem 0 calc(3.25rem + env(safe-area-inset-bottom));align-items:end}.hero__title{max-width:16ch;font-size:clamp(1.75rem,8vw,2.4rem)}.hero__actions{width:100%}.hero__actions .btn{flex:100%;justify-content:center}.hero__scroll{display:none}.stats{padding:1.75rem 0}.stats__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.1rem}.services__list{gap:2.75rem}.service-block,.service-block--reverse{grid-template-columns:1fr;gap:1.15rem}.service-block--reverse .service-block__media,.service-block--reverse .service-block__content{order:initial}.service-block__frame{aspect-ratio:4/3}.service-block__title{font-size:clamp(1.35rem,5.5vw,1.75rem)}.carousel__nav{width:42px;height:42px}.about__layout,.contact__layout,.footer__grid{grid-template-columns:1fr}.about__panel{min-height:280px}.contact__form{padding:1.1rem}.contact__footer{flex-direction:column;align-items:stretch}.contact__footer .btn{justify-content:center;width:100%}.scroll-top{right:max(.85rem, env(safe-area-inset-right));bottom:max(.85rem, env(safe-area-inset-bottom));width:46px;height:46px}}@media (width<=640px){:root{--container:min(1140px, calc(100% - 1.25rem));--header-h:64px}.logo--hero{max-width:min(100%,320px);height:clamp(58px,16vw,78px)}.logo--footer,.logo--about{height:42px}.hero__subtitle{font-size:.98rem}.hero__title{max-width:15ch}.stats__grid{grid-template-columns:1fr 1fr;gap:1.15rem .85rem}.stats__item{padding:0}.stats__value{font-size:1.55rem}.stats__label{font-size:.92rem}.stats__detail{font-size:.82rem}.section__title{font-size:clamp(1.55rem,7vw,2rem)}.contact__form{grid-template-columns:1fr}.field input,.field textarea{padding:.9rem;font-size:16px}.footer{padding:2.25rem 0 1.25rem}.footer__grid{gap:1.5rem}}@media (width<=420px){.stats__grid{grid-template-columns:1fr}.lang-switch--desktop{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
