@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-300.ttf") format("truetype");font-weight:300;font-display:swap}
@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-400.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url("assets/fonts/montserrat-500.ttf") format("truetype");font-weight:500;font-display:swap}
:root{--ink:#251f37;--text:#fff;--muted:#c9c4d1;--line:rgba(255,255,255,.7);--blue:#1b50d6;--orange:#ec7a3b;--green:#62ca46;--shell:min(1160px,calc(100% - 48px));color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;font-family:Montserrat,Arial,sans-serif;font-weight:300;color:var(--text);background:var(--ink);font-size:16px;line-height:1.55;overflow-x:hidden}body.menu-open,body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}img{display:block;max-width:100%}.shell{width:var(--shell);margin-inline:auto;position:relative}.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:fixed;top:12px;left:12px;z-index:1000;background:#fff;color:#111;padding:10px 14px;transform:translateY(-150%)}.skip-link:focus{transform:none}.blue{color:var(--blue)}.orange{color:var(--orange)}.green{color:var(--green)}
.site-header{position:absolute;inset:0 0 auto;z-index:20;padding:20px 0}.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px}.brand img{width:100px;height:auto;transform:translateY(-7px)}.desktop-nav{display:flex;align-items:center;gap:48px;margin-right:130px;font-size:1.2rem}.desktop-nav a,.nav-link{opacity:.85;transition:opacity .2s,color .2s}.desktop-nav a:hover,.nav-link:hover{opacity:1;color:var(--orange)}.nav-link{border:0;background:none;padding:0;cursor:pointer}.menu-button{display:none;border:0;background:transparent;width:48px;height:48px;padding:11px;cursor:pointer}.menu-button>span:not(.sr-only){display:block;height:2px;background:#fff;margin:6px 0}.mobile-menu{position:fixed;inset:0;background:#251f37;padding:115px 24px 40px;text-align:center;z-index:-1}.mobile-menu nav{display:grid;gap:18px;font-size:2rem}.mobile-menu nav button{border:0;background:none}.mobile-menu p{max-width:360px;margin:48px auto;color:var(--muted)}
.hero{height:1310px;position:relative;overflow:hidden;padding-top:152px}.rings{position:absolute;left:50%;top:44%;width:1560px;aspect-ratio:1;border:100px solid rgba(104,91,133,.085);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 19px rgba(0,0,0,.2),inset 0 0 19px rgba(0,0,0,.23)}.rings::before,.rings::after{content:"";position:absolute;border:100px solid rgba(104,91,133,.085);border-radius:50%;box-shadow:0 0 19px rgba(0,0,0,.2),inset 0 0 19px rgba(0,0,0,.23)}.rings::before{inset:-200px}.rings::after{inset:100px}.hero-inner{text-align:center}.hero-mark{width:125px;height:auto;margin:0 auto 17px}.hero h1{margin:0;font-size:clamp(5.8rem,7.9vw,7.5rem);line-height:1.03;font-weight:300;letter-spacing:-.05em}.hero p{font-size:1.45rem;line-height:1.45;margin:55px 0 0;color:#f1edf4}
.section{position:relative}.section h2{font-size:clamp(4.7rem,6vw,7rem);font-weight:300;line-height:1;margin:0;letter-spacing:-.055em}.about{height:808px;padding:105px 0 0}.about-lead{max-width:1070px;font-size:1.2rem;margin:20px 0 43px;line-height:1.55}.about-grid{display:grid;grid-template-columns:518px 1fr;gap:42px;align-items:start}.team-image{margin:0;border-radius:3px;overflow:hidden}.team-image img{width:100%;height:auto}.values{font-size:1.14rem;line-height:1.48}.values h3{font-size:1.18rem;margin:0 0 8px;font-weight:400}.values ul{list-style:none;padding:0;margin:0}.values li{margin:.56em 0;padding-left:1.5em;position:relative}.values li::before{content:"—";position:absolute;left:0}.values strong{font-weight:400}.numbers{height:808px;padding:115px 0 0}.numbers h2{text-align:center}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:75px;position:relative}.stat-grid::before{content:"";position:absolute;left:8%;right:8%;top:50%;height:1px;background:rgba(255,255,255,.42)}.stat{min-height:250px;border:1px solid var(--line);border-radius:17px;display:grid;place-content:center;text-align:center;background:var(--ink);z-index:1}.stat strong{font-size:4rem;font-weight:300;line-height:1}.stat span{font-size:1.5rem;line-height:1.2;margin-top:18px}
.services{height:908px;overflow:hidden;padding:145px 0 0}.rings-services{width:760px;left:49%;top:53%;opacity:.76}.services-layout{position:relative}.services-head{display:grid;grid-template-columns:1.08fr .92fr;align-items:start}.services h2{font-size:7rem;white-space:nowrap}.eyebrow{font-size:1.75rem;margin:13px 0 0}.service-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:40px;margin-top:48px}.service-grid article{min-height:200px;border:1px solid var(--line);border-radius:16px;padding:38px 42px;display:flex;align-items:center;font-size:2.35rem;line-height:1.3;background:rgba(37,31,55,.87);position:relative}.service-grid article:nth-child(1){grid-column:1/8}.service-grid article:nth-child(2){grid-column:8/13}.service-grid article:nth-child(3){grid-column:1/5}.service-grid article:nth-child(4){grid-column:5/13}.service-grid article::after{content:"";position:absolute;background:rgba(255,255,255,.48)}.service-grid article:nth-child(1)::after,.service-grid article:nth-child(2)::after{width:1px;height:40px;bottom:-40px;left:50%}
.site-footer{background:#171717;padding:68px 0 64px;min-height:418px}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:60px;align-items:center}.footer-brand img{width:100px}.footer-links{display:flex;gap:36px;margin-top:30px;color:#aaa}.footer-mark{width:78px}.footer-meta{display:grid;gap:13px;justify-items:end;color:#aaa}.footer-links a:hover,.footer-meta a:hover{color:#fff}.button{border:1px solid transparent;border-radius:0;padding:13px 24px;cursor:pointer;text-transform:uppercase;font-weight:500;letter-spacing:.02em}.button-primary{background:#111;color:#fff}.button-primary:hover{background:var(--orange)}
.modal{width:min(540px,calc(100% - 30px));max-height:calc(100svh - 30px);border:0;border-radius:0;padding:46px;background:rgba(255,255,255,.78);color:#201a2b;box-shadow:0 24px 80px rgba(0,0,0,.4);overflow:auto}.modal::backdrop{background:rgba(37,31,55,.72);backdrop-filter:blur(6px)}.modal h2{font-size:2.55rem;font-weight:400;margin:0 0 8px}.modal>div>p{color:#544d5d;margin:0 0 27px}.modal-close{position:absolute;right:16px;top:8px;border:0;background:none;color:#251f37;font-size:2.5rem;font-weight:300;cursor:pointer}.form{display:grid;gap:14px}.form label:not(.consent){display:grid}.form input,.form textarea{width:100%;border:1px solid rgba(37,31,55,.32);border-radius:0;padding:13px 14px;color:#211b2e;background:rgba(255,255,255,.57)}.form input::placeholder,.form textarea::placeholder{color:#655e6b}.form input:focus,.form textarea:focus{outline:2px solid rgba(27,80,214,.22);border-color:var(--blue)}.file-field{position:relative}.file-field>span{position:absolute;z-index:1;left:14px;top:12px;color:#655e6b;pointer-events:none}.file-field input{color:transparent;min-height:50px}.file-field input::file-selector-button{float:right;border:0;background:#251f37;color:#fff;padding:7px 11px;cursor:pointer}.consent{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;color:#5d5664}.consent input{width:auto;margin-top:4px}.consent a{text-decoration:underline}.form-error{color:#a31f1f;margin:0}.form-success{text-align:center;padding:35px 10px}.form-success p{color:#544d5d}.cookie-banner{position:fixed;right:18px;bottom:18px;z-index:50;background:#fff;color:#27212e;padding:15px 18px;display:flex;align-items:center;gap:20px;box-shadow:0 12px 45px rgba(0,0,0,.3)}.cookie-banner p{margin:0}.cookie-banner button{background:#fff;color:#27212e;border:1px solid var(--orange);padding:7px 20px;cursor:pointer}
.legal-site{background:#251f37}.legal-header{position:relative;background:#251f37;padding:14px 0}.legal-header .header-inner{height:62px}.legal-header .brand img{transform:none}.legal-contact{width:200px;height:50px;border:1px solid var(--orange);border-radius:4px;background:transparent;color:#fff;padding:0;text-transform:none;font-size:1.2rem;cursor:pointer}.legal-hero{height:40vh;background:linear-gradient(rgba(0,0,0,.8),rgba(0,0,0,.8)),url("assets/legal-hero.jpg") center/cover no-repeat;display:grid;place-items:center;position:relative;text-align:center}.legal-hero h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.legal-chevron{position:absolute;bottom:48px;left:50%;width:22px;height:22px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:translateX(-50%) rotate(45deg)}.legal-page{padding:90px 0 130px}.legal-copy{position:relative;background:#fff;color:#252525;padding:30px;max-width:1160px;margin:auto;font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:1.55}.legal-copy::after{content:"×";position:absolute;right:27px;top:17px;font-size:31px;font-weight:300;color:#333}.legal-copy h2{font-family:Montserrat,Arial,sans-serif;font-size:22px;font-weight:500;margin:1.6em 0 .55em}.legal-copy h2:first-child{margin-top:0}.legal-copy p{color:#444;margin:.3em 0}.legal-copy ul{padding-left:25px}.legal-copy li{color:#444;margin:.25em 0}.legal-copy a{color:#171717;text-decoration:underline}
@media(max-width:980px){:root{--shell:min(100% - 34px,760px)}.desktop-nav{display:none}.menu-button{display:block}.hero{height:946px;padding-top:125px}.hero h1{font-size:clamp(3.7rem,9vw,5.4rem)}.hero p{font-size:1.2rem}.rings{width:850px;border-width:70px}.rings::before,.rings::after{border-width:70px}.rings::before{inset:-140px}.rings::after{inset:70px}.about{height:848px;padding-top:90px}.about-grid{grid-template-columns:1fr 1.15fr;gap:28px}.numbers{height:848px}.stat-grid{grid-template-columns:1fr 1fr}.services{height:898px;padding-top:110px}.services h2{font-size:5rem}.service-grid article{font-size:1.8rem}.footer-grid{grid-template-columns:1fr auto}.footer-mark{display:none}.footer-meta{justify-items:start}}
@media(max-width:640px){:root{--shell:calc(100% - 28px)}.site-header{padding:12px 0}.brand img{width:78px}.hero{height:808px;padding-top:115px}.hero-mark{width:66px;margin-bottom:24px}.hero h1{font-size:clamp(2.55rem,10.7vw,4rem);line-height:1.22}.hero p{font-size:1rem;margin-top:30px}.desktop-only{display:none}.rings{width:650px;border-width:55px;top:48%}.rings::before,.rings::after{border-width:55px}.rings::before{inset:-110px}.rings::after{inset:55px}.section h2{font-size:4rem}.about{height:auto;min-height:522px;padding:70px 0}.about-lead{font-size:1rem}.about-grid{grid-template-columns:1fr}.values{font-size:1rem}.numbers{height:auto;min-height:522px;padding:70px 0}.stat-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:48px}.stat-grid::before{display:none}.stat{min-height:155px}.stat strong{font-size:2.7rem}.stat span{font-size:1.18rem}.services{height:auto;min-height:590px;padding:75px 0}.services-head{grid-template-columns:1fr;gap:20px}.services h2{font-size:4.4rem}.eyebrow{margin:0}.service-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.service-grid article,.service-grid article:nth-child(n){grid-column:auto;min-height:142px;padding:22px;font-size:1.35rem}.service-grid article::after{display:none}.footer-grid{grid-template-columns:1fr;gap:36px}.footer-meta{justify-items:start}.legal-hero h1{font-size:42px}.legal-page{padding:80px 0}.legal-copy{padding:22px}.modal{padding:40px 24px 28px}.cookie-banner{left:10px;right:10px;bottom:10px;align-items:flex-start}}
@media(max-width:480px){.hero{height:736px}.about{min-height:1086px}.numbers{min-height:1086px}.stat-grid{grid-template-columns:1fr}.services{min-height:912px}.service-grid{grid-template-columns:1fr}.site-footer{min-height:418px}}
@media(max-width:360px){.hero{height:638px;padding-top:95px}.hero h1{font-size:2.35rem}.about{min-height:863px}.numbers{min-height:863px}.services{min-height:769px}.site-footer{min-height:490px}.legal-hero{min-height:300px}.legal-hero h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
