@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#152a4f;--navy-deep:#102141;--navy-darker:#0d1b35;--steel:#4d7082;--muted:#677386;--ink:#18263e;--white:#fff;--canvas:#f7f9fc;--line:#e5eaf1;--soft-blue:#edf3f8;--radius:16px;--shadow:0 20px 60px rgba(13,34,68,.09)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--white);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{outline-offset:4px}
button{cursor:pointer}
.container{width:min(1172px,calc(100% - 52px));margin-inline:auto}
.skip-link{position:absolute;left:20px;top:-70px;z-index:100;background:var(--white);padding:12px 20px}
.skip-link:focus{top:20px}
.utility-bar{background:var(--navy-deep);color:#c9d4e4;font-size:12px;letter-spacing:.025em}
.utility-inner{min-height:37px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.utility-inner a{color:#e6edf7;transition:color .2s}
.utility-inner a:hover{color:#fff}
.site-header{background:rgba(255,255,255,.97);position:sticky;top:0;z-index:50;border-bottom:1px solid #eef0f5;backdrop-filter:blur(14px)}
.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:36px}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:230px}
.brand-mark{width:58px;height:56px;display:grid;place-items:center;overflow:hidden}
.brand-mark img{width:63px;height:49px;object-fit:contain}
.brand-copy,.footer-brand-line span{display:flex;flex-direction:column;line-height:1.2}
.brand-copy strong,.footer-brand-line strong{font:800 20px/1.15 'Manrope',sans-serif;letter-spacing:.055em;color:var(--navy)}
.brand-copy small,.footer-brand-line small{font:700 9px/1.6 'Manrope',sans-serif;letter-spacing:.15em;color:var(--steel)}
.navigation{display:flex;align-items:center;gap:34px}
.navigation>a{font-size:13px;font-weight:700;color:#3d4b5f;transition:color .2s}
.navigation>a:hover{color:var(--navy)}
.navigation .nav-contact{background:var(--navy);padding:14px 20px;border-radius:6px;color:#fff}
.navigation .nav-contact:hover{background:#263f69;color:#fff}
.nav-contact span{margin-left:12px}
.nav-toggle{display:none}
.hero{overflow:hidden;background:linear-gradient(113deg,#fff 22%,#f5f8fb 74%,#edf2f8 100%);position:relative}
.hero::after{content:'';position:absolute;inset:auto -5% -195px auto;width:500px;height:500px;border-radius:50%;border:1px solid rgba(84,119,143,.11);pointer-events:none}
.hero-grid{min-height:648px;display:grid;grid-template-columns:1.01fr .99fr;align-items:center;gap:70px;padding-block:65px 91px}
.hero-copy{position:relative;z-index:2}
.eyebrow,.section-kicker,.specialty-kicker{display:flex;align-items:center;gap:12px;font-weight:800;font-size:11px;letter-spacing:.16em;color:#567486}
.eyebrow-line,.section-kicker>span{height:2px;width:30px;background:var(--steel);display:inline-block;flex-shrink:0}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:'Manrope',sans-serif}
h1{font-size:clamp(38px,4.23vw,60px);line-height:1.17;letter-spacing:-.055em;color:var(--navy-deep);font-weight:800;margin:25px 0 23px;max-width:640px}
h1 span{color:#658294}
.hero-description{max-width:560px;color:#647084;font-size:16px;line-height:1.85;margin-bottom:28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px}
.button{min-height:51px;border-radius:6px;padding:12px 23px;display:inline-flex;align-items:center;justify-content:center;gap:26px;font-size:13px;font-weight:700;line-height:1.3;border:1px solid transparent;transition:background .2s,transform .2s,border-color .2s;color:inherit}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--navy);color:#fff}
.button-primary:hover{background:#27436e}
.button-outline{border-color:#cbd3dd;background:transparent;color:var(--navy)}
.button-outline:hover{background:#fff;border-color:#8ba0b8}
.hero-points{display:flex;flex-wrap:wrap;gap:24px;margin-top:37px;font-size:12px;font-weight:700;color:#657387}
.hero-points>span{display:flex;align-items:center;gap:8px}
.check-circle{height:21px;width:21px;border-radius:50%;background:#e9f0f5;color:var(--steel);display:inline-grid;place-items:center;font-size:11px}
.hero-visual{position:relative;min-height:450px;display:grid;place-items:center}
.hero-orbit{position:absolute;border:1px solid rgba(53,88,120,.13);border-radius:50%}
.orbit-one{inset:-55px -52px -70px -20px}
.orbit-two{inset:-23px -11px -32px 22px}
.hero-panel{position:relative;background:linear-gradient(145deg,#203b64 0%,#101f3d 96%);width:min(100%,468px);height:426px;border-radius:13px;box-shadow:0 25px 50px rgba(19,41,77,.20);padding:28px 30px 22px;color:white;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.hero-panel::after{content:'';width:250px;height:250px;border:1px solid rgba(255,255,255,.10);border-radius:50%;position:absolute;top:45px;right:-120px}
.hero-panel-top,.hero-panel-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1}
.hero-panel-label{font-weight:800;letter-spacing:.14em;font-size:10px;color:#c3d6e7}
.hero-panel-star{font-size:20px;color:#9eb6c8}
.logo-display{width:228px;height:230px;border-radius:110px;align-self:center;display:grid;place-items:center;background:#fff;box-shadow:0 20px 80px rgba(0,0,0,.11);overflow:hidden;position:relative;z-index:1}
.logo-display img{width:198px;height:auto}
.hero-panel-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:19px;font:600 12px/1.5 'Manrope',sans-serif}
.hero-panel-arrow{border:1px solid rgba(255,255,255,.3);height:34px;width:34px;display:grid;place-items:center;border-radius:50%;font-size:19px;flex-shrink:0}
.floating-note{position:absolute;bottom:-13px;left:-48px;background:#fff;box-shadow:0 14px 40px rgba(17,40,74,.1);border:1px solid #eaf0f6;padding:16px 20px;display:flex;align-items:center;gap:11px;border-radius:7px;font-size:11px;color:#5a6678;font-weight:700;z-index:2}
.floating-note strong{color:var(--navy)}
.floating-dot{width:9px;height:9px;background:#678ca2;border-radius:100%;flex-shrink:0}
.focus-strip{background:var(--navy-deep);color:#fff}
.focus-content{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.focus-content p{margin:0;color:#dce6ef;font:700 13px 'Manrope',sans-serif}
.focus-content>div{display:flex;gap:38px;font-size:10px;font-weight:800;color:#bed0df;letter-spacing:.09em}
.section{padding-block:104px}
.section-kicker{margin-bottom:17px}
.section h2{font-size:clamp(31px,3.2vw,43px);line-height:1.28;letter-spacing:-.043em;font-weight:800;color:var(--navy-deep);margin-bottom:24px}
.section-intro>p{max-width:545px;color:var(--muted);font-size:15px;line-height:1.92;margin-bottom:14px}
.about-grid{display:grid;grid-template-columns:1fr .91fr;gap:100px;align-items:start}
.section-intro h2{max-width:540px}
.text-link{display:inline-flex;gap:30px;margin-top:15px;font-weight:800;font-size:13px;color:var(--navy);border-bottom:1px solid #8196a8;padding-bottom:8px}
.about-aside{display:grid;gap:15px}
.about-card{border-radius:12px;background:var(--navy);color:#fff;padding:30px 36px;position:relative;overflow:hidden}
.about-card:after{content:'';position:absolute;width:145px;height:145px;right:-85px;bottom:-95px;border:20px solid rgba(255,255,255,.08);border-radius:50%}
.about-card-index{display:block;color:#aebfd4;letter-spacing:.13em;font-size:10px;font-weight:800;margin-bottom:12px}
.about-card h3{font-size:19px;line-height:1.4;margin-bottom:9px}
.about-card p{font-size:13px;line-height:1.9;color:#d5e0ed;margin:0}
.about-card-light{background:#eff3f7;color:var(--navy)}
.about-card-light .about-card-index{color:#73869b}
.about-card-light p{color:#607186}
.section-services{background:var(--canvas)}
.section-heading{margin-bottom:42px}
.section-heading h2{margin:0;max-width:620px}
.section-heading-split{display:flex;align-items:end;justify-content:space-between;gap:55px}
.section-heading-split>p{max-width:320px;color:var(--muted);font-size:14px;line-height:1.9;margin:0 0 5px}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{padding:27px 27px 26px;border-radius:10px;background:white;border:1px solid #e7edf4;min-height:308px;display:flex;flex-direction:column;position:relative;transition:box-shadow .25s,transform .25s,border-color .25s;overflow:hidden}
.service-card:hover{box-shadow:var(--shadow);border-color:#d6e2ed;transform:translateY(-3px)}
.service-index{position:absolute;right:27px;top:30px;color:#a5b3c1;font-size:12px;font-weight:800}
.service-media{margin:-5px 0 18px;border-radius:12px;overflow:hidden;background:#f4f8fb;border:1px solid #edf2f6}
.service-media img{display:block;width:100%;height:164px;object-fit:cover}
.service-icon{height:56px;width:56px;border-radius:12px;background:#edf3f8;display:grid;place-items:center;color:#25476c;margin-bottom:23px}
.service-icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{font-size:17px;line-height:1.4;letter-spacing:-.025em;color:var(--navy);margin-bottom:11px}
.service-card p{font-size:13px;line-height:1.85;color:#68798a;margin-bottom:21px;flex:1}
.service-tag{font-size:10px;color:#547083;font-weight:800;border-top:1px solid #ecf0f4;padding-top:14px}
.specialty-panel{background:var(--navy);border-radius:10px;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:22px;padding:37px 43px}
.specialty-kicker{color:#bdccdd;margin-bottom:12px}
.specialty-panel h3{font-size:22px;max-width:370px;line-height:1.4;margin-bottom:12px;letter-spacing:-.03em}
.specialty-panel p{color:#b3c4d6;font-size:13px;line-height:1.75;margin:0}
.specialty-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.specialty-panel li{padding-left:24px;position:relative;color:#e0e9f3;font-size:13px;line-height:1.6}
.specialty-panel li:before{content:'↗';position:absolute;left:0;color:#9dbbd4;font-weight:800}
.values-heading{max-width:620px}
.values-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:19px;border-top:1px solid #dae3ec;padding-top:29px}
.value-item{padding-right:9px}
.value-item>span{font-size:12px;color:#7991a5;font-weight:800}
.value-item h3{color:var(--navy);font-size:16px;margin:20px 0 9px;line-height:1.4}
.value-item p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}
.section-contact{background:var(--navy-deep);overflow:hidden;position:relative}
.section-contact:before{content:'';position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.06);top:65px;left:-260px}
.contact-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:87px;align-items:start;position:relative}
.section-kicker-light{color:#bbccdc}
.section-kicker-light>span{background:#9eb9d1}
.contact-info h2{color:#fff;max-width:470px;font-size:clamp(32px,3.1vw,43px);margin-bottom:22px}
.contact-info>p{color:#c3d0de;max-width:460px;font-size:14px;line-height:1.95;margin-bottom:43px}
.contact-list{display:grid;gap:0}
.contact-list>a,.contact-list>div{display:flex;align-items:flex-start;gap:16px;min-width:0;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.contact-list>a>span:nth-child(2),.contact-list>div>span:nth-child(2){flex:1;min-width:0}
.contact-list-icon{height:40px;width:40px;flex-shrink:0;border:1px solid rgba(255,255,255,.17);border-radius:9px;display:grid;place-items:center;color:#d8e6f5;font-size:18px}
.contact-list small{display:block;color:#a4b7c9;letter-spacing:.1em;font-size:10px;font-weight:800;margin-bottom:3px}
.contact-list strong{display:block;font-weight:600;font-size:13px;color:#fff;line-height:1.6;overflow-wrap:anywhere}
.contact-list>a>span:last-child{font-size:20px;color:#9cb5cc}
.contact-form-card{background:#fff;border-radius:13px;padding:36px 38px 37px;box-shadow:0 30px 70px rgba(1,13,29,.18)}
.form-heading{display:flex;align-items:center;gap:15px;margin-bottom:26px}
.form-icon{height:46px;width:46px;background:var(--soft-blue);color:var(--navy);font-size:23px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}
.form-heading h3{font-size:21px;letter-spacing:-.035em;line-height:1.4;margin:0 0 1px;color:var(--navy)}
.form-heading p{font-size:12px;color:var(--muted);margin:0}
#contactForm{display:grid;gap:14px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
#contactForm label{display:grid;gap:6px;color:#39495c;font-size:12px;font-weight:800}
#contactForm label>span:not(.privacy-checkbox span){color:#b44b5b}
#contactForm input:not([type=checkbox]),#contactForm textarea,#contactForm select{display:block;width:100%;min-width:0;background:#fafbfd;border:1px solid #dae2ea;border-radius:5px;padding:12px 13px;font-weight:500;font-size:13px;color:var(--ink);transition:border-color .2s,box-shadow .2s}
#contactForm input:not([type=checkbox]):focus,#contactForm textarea:focus,#contactForm select:focus{outline:none;border-color:#486c95;box-shadow:0 0 0 3px rgba(71,110,152,.12)}
#contactForm textarea{resize:vertical;min-height:112px}
#contactForm input::placeholder,#contactForm textarea::placeholder{color:#9ba8b7}
#contactForm .privacy-checkbox{display:flex;align-items:flex-start;gap:10px;line-height:1.65;font-weight:500;color:#607083;font-size:11px;margin-top:2px}
.privacy-checkbox input{accent-color:var(--navy);height:15px;width:15px;margin:2px 0 0;flex-shrink:0}
.privacy-checkbox a{text-decoration:underline;text-underline-offset:2px;color:var(--navy);font-weight:800}
.submit-button{width:100%;border:none;margin-top:1px;justify-content:space-between;font-size:13px}
#contactForm .form-fineprint{font-size:11px;text-align:center;color:#8b97a6;margin:0;line-height:1.6}
.spam-field{position:absolute!important;left:-9999px!important;height:1px;width:1px;overflow:hidden}
.footer{background:#f8fafc}
.footer-main{display:grid;grid-template-columns:1.4fr .65fr 1fr;gap:80px;padding-block:64px 60px}
.footer-brand-line{display:flex;align-items:center;gap:10px}
.footer-brand-line img{width:59px;height:45px;object-fit:contain}
.footer-brand>p{max-width:325px;color:#748297;font-size:13px;line-height:1.8;margin:18px 0 0}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-links h3{font-size:13px;color:var(--navy);margin:0 0 8px}
.footer-links>a,.footer-links>span{font-size:12px;color:#66798a;overflow-wrap:anywhere}
.footer-links>a:hover{color:var(--navy);text-decoration:underline}
.footer-bottom{border-top:1px solid #e4ebf1;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:63px;color:#8a99a9;font-size:11px}
.footer-bottom a:hover{text-decoration:underline;color:var(--navy)}
.subpage-hero{background:linear-gradient(115deg,#f6f9fc,#ecf3f9);padding:86px 0 58px}
.subpage-hero h1{font-size:44px;margin:18px 0 12px}
.subpage-hero p{max-width:690px;color:var(--muted)}
.legal-content{padding:56px 0 94px;max-width:840px;margin:auto}
.legal-content h2{font-size:21px;color:var(--navy);margin:30px 0 8px}
.legal-content p,.legal-content li{color:#58697c;font-size:14px;line-height:1.9}
.legal-content a{text-decoration:underline;color:var(--navy)}
.success-content{min-height:50vh;display:grid;align-content:center;justify-items:center;text-align:center;padding-block:95px}
.success-icon{width:78px;height:78px;background:#e8f1f7;border-radius:50%;display:grid;place-items:center;color:var(--navy);font-size:35px;margin-bottom:18px}
.success-content h1{font-size:38px;line-height:1.25}
.success-content p{max-width:520px;color:var(--muted)}
.success-content .button{margin-top:18px}
@media(max-width:1040px){.hero-grid{gap:39px}.about-grid{gap:55px}.contact-grid{gap:45px}.floating-note{left:-20px}.navigation{gap:20px}.values-grid{gap:13px}}
@media(max-width:820px){.container{width:min(100% - 38px,660px)}.utility-bar{display:none}.nav-inner{height:75px}.brand{min-width:0}.nav-toggle{height:44px;width:44px;background:#f3f6f9;border:1px solid #dde5ec;border-radius:6px;display:grid;align-content:center;justify-content:center;gap:5px}.nav-toggle span{height:2px;width:21px;background:var(--navy);display:block;transition:transform .2s}.navigation{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;padding:16px 19px 22px;box-shadow:0 20px 30px rgba(14,33,57,.09);border-bottom:1px solid #e4ebf1;flex-direction:column;align-items:stretch;gap:0}.navigation.is-open{display:flex}.navigation>a{padding:13px 7px;font-size:14px}.navigation .nav-contact{margin-top:8px;padding:14px 17px;text-align:center}.hero-grid{grid-template-columns:1fr;padding-block:69px 71px;min-height:0;gap:53px}.hero-description{max-width:590px}.hero-visual{min-height:420px}.hero-panel{height:410px;width:min(100%,480px)}.floating-note{left:13px}.focus-content{flex-direction:column;align-items:flex-start;justify-content:center;padding-block:23px;gap:12px}.focus-content>div{flex-wrap:wrap;gap:15px 27px}.section{padding-block:73px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:36px}.about-aside{grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading-split{align-items:start;flex-direction:column;gap:17px}.section-heading-split>p{max-width:600px}.values-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px}.contact-grid{gap:45px}.contact-info>p{margin-bottom:18px}.footer-main{grid-template-columns:1.4fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.subpage-hero{padding:55px 0 38px}}
@media(max-width:560px){.container{width:calc(100% - 34px)}.brand-mark{width:45px;height:45px}.brand-mark img{width:48px;height:40px}.brand{gap:8px}.brand-copy strong{font-size:16px}.brand-copy small{font-size:8px}.hero-grid{padding-block:51px 62px;gap:38px}.eyebrow,.section-kicker{font-size:10px}.hero h1{font-size:39px;letter-spacing:-.047em}.hero-description{font-size:14px}.hero-actions{gap:10px}.hero-actions .button{width:100%}.hero-points{margin-top:25px;gap:14px;font-size:11px}.hero-visual{min-height:342px}.hero-panel{height:330px;padding:22px 23px}.logo-display{width:182px;height:185px}.logo-display img{width:169px}.hero-panel-bottom{font-size:10px}.hero-panel-label{font-size:9px}.floating-note{bottom:-16px;left:9px;right:9px;justify-content:center;padding:13px 10px;font-size:10px}.orbit-one{inset:-15px -12px -28px -12px}.orbit-two{inset:7px 4px -12px 10px}.focus-content>div{font-size:9px;gap:10px 14px}.section h2{font-size:31px}.about-aside{grid-template-columns:1fr}.about-card{padding:25px}.services-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:26px}.service-media img{height:172px}.specialty-panel{grid-template-columns:1fr;padding:27px 24px;gap:20px}.specialty-panel h3{font-size:20px}.values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.value-item h3{font-size:14px;margin:11px 0 6px}.value-item p{font-size:12px}.contact-form-card{padding:23px 18px 25px}.contact-info h2{font-size:35px}.form-row{grid-template-columns:1fr}.form-heading h3{font-size:18px}.footer-main{grid-template-columns:1fr 1fr;gap:31px;padding-block:48px}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;gap:7px;padding-block:17px}.subpage-hero h1{font-size:34px}.legal-content{padding:34px 0 65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
