*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,dl,dd{margin:0}body{min-width:20rem}img,svg{display:block;max-width:100%}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.22em}address{font-style:normal}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto !important;transition-duration:.01ms !important}}:root{color-scheme:light;font-family:Inter,Arial,Helvetica,sans-serif}body{color:#101820;background:#f5f7f8;font-size:1rem;line-height:1.6}h1,h2,h3{font-weight:750;line-height:1.06;letter-spacing:-0.035em;text-wrap:balance}h1{max-width:16ch;font-size:clamp(2.65rem,4.2vw,4.35rem)}h2{max-width:17ch;font-size:clamp(2rem,3.6vw,3.4rem)}h3{font-size:clamp(1.3rem,1.8vw,1.65rem)}p{color:#34424f}a,button,summary{-webkit-tap-highlight-color:rgba(0,0,0,0)}:focus-visible{outline:.2rem solid #06c;outline-offset:.2rem}.container{width:min(100% - 2rem,76rem);margin-inline:auto}.section{padding-block:clamp(4rem,7vw,5rem)}.section,.hero{scroll-margin-top:4.75rem}.eyebrow{margin-bottom:1rem;color:#06c;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.section-heading>p:last-child{max-width:36rem;margin-top:1.25rem;font-size:1.08rem}.section-heading--split{display:flex;align-items:end;justify-content:space-between;gap:3rem}.section-heading--split>p{margin:0 0 .35rem}.skip-link{position:fixed;z-index:100;top:.5rem;left:.5rem;padding:.65rem 1rem;color:#fff;background:#004f9f;transform:translateY(-160%)}.skip-link:focus{transform:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;padding:0;border:0;margin:-1px;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.button-group{display:flex;flex-wrap:wrap;gap:.75rem}.button{display:inline-flex;min-height:3.35rem;align-items:center;justify-content:center;padding:.8rem 1.3rem;border:.1rem solid rgba(0,0,0,0);border-radius:.75rem;font-weight:750;line-height:1.2;text-align:center;text-decoration:none;transition:background 180ms ease,border-color 180ms ease,color 180ms ease,transform 180ms ease}.button:hover{text-decoration:none;transform:translateY(-0.12rem)}.button--primary{color:#fff;background:#06c}.button--primary:hover{background:#004f9f}.button--light{color:#101820;background:#fff;border-color:rgba(255,255,255,.5)}.button--light:hover{background:#f5f7f8}.button--outline{color:#004f9f;border-color:#06c;background:rgba(0,0,0,0)}.button--outline:hover{color:#fff;background:#06c}.button--compact{min-height:2.8rem;padding:.65rem 1rem}.icon-link{display:inline-flex;align-items:center;gap:.5rem}.icon-link svg{width:1.15rem;height:1.15rem;flex:0 0 auto;fill:currentColor}.max-contact{display:inline-flex;align-items:center;gap:.5rem}.max-contact svg{width:1.15rem;height:1.15rem;flex:0 0 auto;fill:currentColor}.text-link{display:inline-flex;gap:.5rem;margin-top:1.5rem;color:#004f9f;font-weight:750}@media(max-width: 48rem){.section-heading--split{display:block}.section-heading--split>p{margin-top:1.25rem}}.contact-bar{color:#fff;background:#101820;font-size:.78rem}.contact-bar__inner{display:flex;min-height:2.25rem;align-items:center;justify-content:space-between;gap:1rem}.contact-bar a{color:rgba(255,255,255,.82);text-decoration:none}.contact-bar a:hover{color:#fff;text-decoration:underline;text-underline-offset:.2rem}.contact-bar__links{display:flex;gap:1.25rem}.site-header{position:sticky;z-index:10;top:0;border-bottom:.0625rem solid rgba(16,24,32,.08);background:#f5f7f8}.site-header__inner{display:flex;min-height:4.75rem;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;text-decoration:none}.brand:hover{text-decoration:none}.brand__mark{display:block;width:13rem;height:3rem;overflow:hidden}.brand__mark img{width:100%;height:100%;object-fit:contain;object-position:left center}.site-nav{display:flex;margin-left:auto;gap:clamp(1rem,2.4vw,2.25rem)}.site-nav a{color:#34424f;font-size:.92rem;font-weight:650;text-decoration:none}.site-nav a:hover{color:#004f9f}.mobile-menu{display:none;margin-left:auto}.mobile-menu summary{position:relative;z-index:31;display:grid;width:3rem;height:3rem;cursor:pointer;list-style:none;place-content:center;gap:.3rem;border:.0625rem solid #d7e0e6;border-radius:50%;background:#f5f7f8}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{width:1.15rem;height:.1rem;background:#101820;transition:transform 180ms ease,opacity 180ms ease}.mobile-menu[open] summary span:first-child{transform:translateY(0.4rem) rotate(45deg)}.mobile-menu[open] summary span:nth-child(2){opacity:0}.mobile-menu[open] summary span:last-child{transform:translateY(-0.4rem) rotate(-45deg)}.mobile-menu nav{position:fixed;z-index:30;inset:0;display:flex;min-height:100dvh;flex-direction:column;justify-content:center;padding:4rem max(1rem,(100vw - 76rem)/2);background:#f5f7f8}.mobile-menu nav>a,.mobile-menu nav>.mobile-menu__contact{width:100%;padding:1rem 0;border-bottom:.0625rem solid #d7e0e6;color:#101820;font-size:clamp(1.5rem,8vw,2.4rem);font-weight:750;text-decoration:none}.mobile-menu nav .mobile-menu__contact{color:#004f9f;font-size:1rem}body:has(.mobile-menu[open]){overflow:hidden}@media(max-width: 62rem){.site-nav,.header-request{display:none}.mobile-menu{display:block}}@media(max-width: 36rem){.contact-bar__inner{min-height:2rem}.contact-bar__address{display:none}.contact-bar__links{width:100%;justify-content:space-between}.contact-bar__messenger-value{display:none}.site-header__inner{min-height:4.35rem}.brand__mark{width:10.5rem;height:2.5rem}}.hero{position:relative;overflow:hidden;color:#fff;background:#101820}.hero::before{position:absolute;inset:0;background:radial-gradient(circle at 78% 20%, rgba(0, 102, 204, 0.42), transparent 34%),linear-gradient(120deg, transparent 54%, rgba(255, 255, 255, 0.025) 54% 55%, transparent 55%);content:""}.hero__grid{position:relative;display:grid;min-height:clamp(31rem,68svh,40rem);align-items:center;grid-template-columns:minmax(0, 1.05fr) minmax(20rem, 0.95fr);gap:2rem;padding-block:clamp(3rem,6vw,4.5rem)}.hero .eyebrow{color:rgba(255,255,255,.78)}.hero__lead{max-width:41rem;margin-block:1.5rem 2rem;color:rgba(255,255,255,.78);font-size:clamp(1.05rem,2vw,1.25rem)}.hero__location{display:flex;align-items:center;gap:.5rem;margin-top:2rem;color:rgba(255,255,255,.78);font-size:.92rem}.hero__location svg{width:1.2rem;fill:#06c}.hero__visual{position:relative;min-height:26rem}.hero__line{position:absolute;right:0;bottom:1.5rem;width:min(100%,36rem);stroke:rgba(255,255,255,.42);stroke-width:2.2;vector-effect:non-scaling-stroke}@media(max-width: 52rem){.hero__grid{min-height:auto;grid-template-columns:1fr}.hero__visual{min-height:15rem}.hero__line{right:0;max-height:14rem}}@media(max-width: 36rem){.hero__grid{padding-block:3rem}.hero__visual{display:none}.button-group{display:grid}.button{width:100%}}.services{background:#fff}.service-grid{display:grid;margin-top:clamp(2rem,4vw,2.5rem);grid-template-columns:repeat(3, 1fr);gap:1rem}.service-card{display:flex;min-height:24rem;flex-direction:column;padding:clamp(1.5rem,3vw,2.25rem);border:.0625rem solid #d7e0e6;border-radius:1.25rem;background:#f5f7f8;transition:transform 180ms ease,box-shadow 180ms ease}.service-card:hover{transform:translateY(-0.25rem);box-shadow:0 1.5rem 4rem rgba(16,24,32,.12)}.service-card h3{max-width:15ch}.service-card p{margin-top:1.25rem}.service-card__footer{margin-top:auto;padding-top:2.5rem}.service-card .service-card__price{margin-top:0;color:#101820;font-size:1.75rem;font-weight:850;letter-spacing:-0.03em}.service-card__price span{margin-right:.25rem;color:#34424f;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.service-card__action{width:100%;margin-top:1rem;cursor:pointer}.service-card--accent{color:#fff;border-color:#101820;background:#101820}.service-card--accent p,.service-card--accent .service-card__price,.service-card--accent .service-card__price span{color:#fff}@media(max-width: 62.5rem){.service-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 52rem){.service-grid{grid-template-columns:1fr}.service-card{min-height:20rem}}.about{background:#f5f7f8}.about__content>h2{margin-bottom:clamp(2rem,4vw,2.5rem)}.about__text{display:grid;width:100%;gap:3rem}.about__text h3{font-size:clamp(1.35rem,2.3vw,2rem)}.about__text p{width:100%;margin-top:1.25rem;font-size:1.05rem}.about-section__body{position:relative}.about-section__body.is-collapsed{max-height:11.5rem;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom, #000 72%, transparent 100%);mask-image:linear-gradient(to bottom, #000 72%, transparent 100%)}.about-section__toggle{margin-top:.75rem;padding:0;border:0;color:#004f9f;background:rgba(0,0,0,0);font:inherit;font-weight:750;cursor:pointer}.about-section__toggle:hover{text-decoration:underline}.about-section__toggle[hidden]{display:none}.features{margin-top:4rem}.features>h3{margin-bottom:clamp(2rem,4vw,2.5rem);font-size:clamp(1.6rem,2.6vw,2.25rem)}.feature-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:2rem}.feature-card{display:flex;min-width:0;align-items:center;gap:1rem}.feature-card svg{width:2.5rem;height:2.5rem;flex:0 0 auto;fill:none;stroke:#06c;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.feature-card p{color:#101820;font-size:1.12rem;font-weight:750;letter-spacing:-0.01em;line-height:1.25}@media(max-width: 52rem){.feature-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 30rem){.feature-grid{gap:1.5rem 1rem}.feature-card{align-items:flex-start}}.reviews{color:#fff;background:#101820}.reviews .eyebrow{color:rgba(255,255,255,.78)}.reviews .section-heading>p:last-child{color:rgba(255,255,255,.76)}.reviews__grid{display:grid;align-items:start;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,5rem)}.review-links{display:grid;border-top:.0625rem solid rgba(255,255,255,.18)}.review-links a{display:grid;align-items:center;padding-block:1rem;grid-template-columns:2.5rem 1fr auto;gap:1rem;border-bottom:.0625rem solid rgba(255,255,255,.18);font-size:1.1rem;font-weight:700;text-decoration:none}.review-links a>span{display:grid;width:2.25rem;aspect-ratio:1;place-items:center;border-radius:50%;color:#101820;background:#fff;font-weight:850}.review-links a>b{color:rgba(255,255,255,.78);font-size:1.35rem}.review-links a:hover{color:#fff}@media(max-width: 48rem){.reviews__grid{grid-template-columns:1fr}}.consent-banner{position:fixed;z-index:50;right:1.25rem;bottom:1.25rem;display:grid;width:min(100% - 2rem,40rem);padding:1.5rem;border:.0625rem solid #d7e0e6;border-radius:1.25rem;background:#fff;box-shadow:0 1.5rem 4rem rgba(16,24,32,.12);gap:1.25rem}.consent-banner[hidden]{display:none}.consent-banner p{font-size:.92rem}.consent-banner p a{color:#004f9f;font-weight:700}.consent-banner__actions{display:flex;flex-wrap:wrap;gap:.75rem}.footer-consent-settings{padding:0;border:0;color:rgba(255,255,255,.78);background:rgba(0,0,0,0);font:inherit;cursor:pointer}.footer-consent-settings:hover{color:#fff;text-decoration:underline}@media(max-width: 36rem){.consent-banner{right:1rem;bottom:1rem;width:calc(100% - 2rem)}.consent-banner__actions{display:grid}}.request-dialog{width:min(100% - 2rem,43rem);padding:clamp(1.25rem,4vw,2.5rem);border:0;border-radius:1.25rem;color:#101820;background:#fff;box-shadow:0 1.5rem 4rem rgba(16,24,32,.12)}.request-dialog::backdrop{background:rgba(16,24,32,.72);backdrop-filter:blur(0.2rem)}.request-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}.request-dialog__header h2{font-size:clamp(2rem,5vw,3rem)}.request-dialog>p{max-width:34rem;margin-top:1rem}.dialog-close{display:grid;width:2.8rem;aspect-ratio:1;flex:0 0 auto;cursor:pointer;place-items:center;border:.0625rem solid #d7e0e6;border-radius:50%;color:#101820;background:#f5f7f8;font-size:1.75rem;line-height:1}.request-form{margin-top:2rem}.request-form label{display:grid;gap:.35rem;color:#34424f;font-size:.8rem;font-weight:750}.request-form>label{margin-top:1rem}.form-row{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem}.request-form input,.request-form textarea{width:100%;padding:.85rem .9rem;border:.0625rem solid #d7e0e6;border-radius:.5rem;color:#101820;background:#f5f7f8;resize:vertical}.request-form .button{margin-top:1.25rem}.errorlist{margin:0;padding:0;color:#101820;font-size:.78rem;font-weight:700;list-style:none}.form-errors{margin-top:1rem;padding:1rem;border:.0625rem solid #d7e0e6;border-left:.25rem solid #06c;border-radius:.75rem;color:#101820;background:#f5f7f8}.form-success{margin-top:1.25rem;color:#101820;font-size:1.1rem;font-weight:700}.form-consent{display:grid !important;grid-template-columns:auto 1fr;gap:.65rem !important;align-items:start}.request-form .form-consent input{width:1.1rem;height:1.1rem;margin-top:.15rem}@media(max-width: 36rem){.form-row{grid-template-columns:1fr}}.contacts{background:#fff}.contacts__heading{margin-bottom:clamp(2rem,4vw,2.5rem)}.contacts__grid{display:grid;align-items:stretch;grid-template-columns:minmax(18rem, 0.72fr) minmax(0, 1.28fr);gap:clamp(2rem,5vw,4rem)}.contacts__details{display:flex;flex-direction:column}.contact-item{padding-block:1rem 1.25rem;border-top:.0625rem solid #d7e0e6}.contact-item>span{color:#004f9f;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-item address,.contact-item p{margin-top:.55rem;color:#101820;font-size:1.05rem;font-weight:650;line-height:1.55}.contact-item address{max-width:23ch}.contact-actions{display:grid;align-items:start;gap:.75rem;margin-top:.75rem}.contact-actions a,.contact-actions .max-contact{width:fit-content;color:#101820;font-size:1.05rem;font-weight:650}.contact-actions svg{color:#06c}.contacts__details .button-group{margin-top:auto;padding-top:1.5rem}.map-card{overflow:hidden;border:.0625rem solid #d7e0e6;border-radius:1.25rem;background:#f5f7f8}.map-card iframe{display:block;width:100%;min-height:27rem;border:0}.map-links{display:grid;grid-template-columns:repeat(3, 1fr);border-top:.0625rem solid #d7e0e6;background:#fff}.map-links a{padding:.85rem;color:#004f9f;font-size:.88rem;font-weight:750;text-align:center;text-underline-offset:.2rem}.map-links a+a{border-left:.0625rem solid #d7e0e6}@media(max-width: 52rem){.contacts__grid{grid-template-columns:1fr}.map-card iframe{min-height:23rem}}@media(max-width: 36rem){.map-card iframe{min-height:20rem}}.site-footer{color:#fff;background:#101820}.site-footer__grid{display:grid;padding-block:4rem;grid-template-columns:minmax(15rem, 1.4fr) .7fr minmax(16rem, 1fr);gap:4rem}.footer-brand{align-self:start;width:min(100%,20rem);padding:1rem;border-radius:.75rem;background:#fff}.footer-brand:hover{text-decoration:none}.footer-brand img{width:100%;height:3.5rem;object-fit:contain}.footer-nav,.footer-contacts{display:flex;align-items:flex-start;flex-direction:column;gap:.75rem}.footer-nav strong,.footer-contacts strong{margin-bottom:.5rem;color:#fff;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.footer-nav a,.footer-contacts a,.footer-contacts .max-contact{color:rgba(255,255,255,.78)}.footer-contacts .icon-link svg{color:#fff}.site-footer__bottom{display:flex;justify-content:space-between;gap:2rem;padding-block:1.5rem;border-top:.0625rem solid rgba(255,255,255,.16)}.site-footer__bottom p{color:rgba(255,255,255,.58);font-size:.8rem}@media(max-width: 52rem){.site-footer__grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width: 36rem){.site-footer__grid{grid-template-columns:1fr;gap:2.5rem}.footer-brand{grid-column:auto}.site-footer__bottom{display:grid}}.simple-header{border-bottom:.0625rem solid #d7e0e6;background:#f5f7f8}.simple-header__inner{display:flex;min-height:5rem;align-items:center;justify-content:space-between;gap:2rem}.simple-header .brand__mark{width:13rem}.simple-header__back{color:#004f9f;font-weight:700}.content-page{min-height:60vh;padding-block:clamp(4rem,7vw,5rem);background:#fff}.content-page h1{max-width:22ch;font-size:clamp(2.4rem,5vw,4rem)}.content-page__body{max-width:52rem;margin-top:clamp(2rem,4vw,2.5rem)}.content-page__body p+p{margin-top:1.25rem}.status-page{display:grid;min-height:100vh;place-items:center;padding:2rem;background:#f5f7f8;text-align:center}.status-page__inner{max-width:44rem}.status-page h1{margin-inline:auto}.status-page p{margin-top:1.25rem}.status-page .button{margin-top:2rem}
