:root{--ink:#15283a;--blue:#0c83bd;--bright:#15afe1;--navy:#123b5e;--sky:#eaf7fc;--mist:#f5f8fa;--line:#dbe6eb;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,96px);background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.logo-link img{width:150px;height:78px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600;color:#456173}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--blue)}.header-contact{background:var(--navy);color:#fff!important;padding:14px 21px;border-radius:5px}.language-switch{display:flex;align-items:center;gap:3px;padding-left:10px;border-left:1px solid var(--line)}.language-switch a{display:grid;place-items:center;min-width:32px;height:32px;border-radius:4px;font-size:12px;font-weight:800;color:#607786}.language-switch a:hover,.language-switch a.active{background:var(--sky);color:var(--blue)}.menu-button{display:none;background:0;border:0;padding:10px}.menu-button span:not(.sr-only){display:block;width:25px;height:2px;background:var(--navy);margin:5px}
.hero{min-height:680px;display:grid;grid-template-columns:1.02fr .98fr;align-items:stretch;background:linear-gradient(135deg,#fff 0,#f7fcfe 62%,#edf9fd 100%);overflow:hidden}.hero-copy{padding:clamp(76px,9vw,135px) clamp(24px,6vw,96px);align-self:center;position:relative;z-index:2}.overline,.section-label{font-size:12px;line-height:1.2;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin:0 0 24px}.hero h1{font-size:clamp(52px,6.3vw,92px);line-height:.98;letter-spacing:-.055em;margin:0;color:var(--navy);font-weight:750}.hero h1 span{color:var(--blue)}.hero-text{max-width:600px;font-size:19px;line-height:1.65;color:#526b7d;margin:32px 0}.hero-actions{display:flex;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:5px;padding:17px 25px;font-weight:700;transition:.25s}.button-main{background:var(--blue);color:#fff;box-shadow:0 12px 28px rgba(12,131,189,.22);animation:button-pulse 3.6s ease-in-out infinite}.button-main:hover{background:#096f9f;transform:translateY(-2px);animation:none}.quiet-link{font-weight:700;color:var(--navy)}.quiet-link span{color:var(--blue);margin-left:10px;display:inline-block;animation:arrow-bob 1.8s ease-in-out infinite}.trust-line{display:flex;gap:24px;flex-wrap:wrap;margin-top:48px;font-size:13px;color:#698090}.hero-visual{position:relative;min-height:600px;overflow:hidden}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center;animation:hero-zoom 12s ease-in-out infinite alternate}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.2),transparent 30%)}.blue-shape{position:absolute;z-index:2;right:-70px;bottom:-110px;width:260px;height:260px;border:42px solid rgba(21,175,225,.84);transform:rotate(45deg);animation:shape-float 6s ease-in-out infinite}.visual-label{position:absolute;z-index:3;left:34px;bottom:34px;background:#fff;padding:18px 23px;box-shadow:0 12px 35px rgba(17,55,82,.16);border-radius:4px;animation:label-float 4s ease-in-out infinite}.visual-label strong{display:block;color:var(--blue);font-size:22px}.visual-label span{font-size:13px;color:#607789}
.intro{padding:120px clamp(24px,6vw,96px);display:grid;grid-template-columns:.65fr 2fr .85fr;gap:clamp(34px,6vw,90px);align-items:start}.intro h2,.services-heading h2,.process h2,.contact h2{font-size:clamp(38px,4.6vw,66px);line-height:1.08;letter-spacing:-.045em;color:var(--navy);margin:0}.intro-copy>p{font-size:18px;line-height:1.7;color:#5c7282;max-width:680px;margin:28px 0 0}.intro aside{background:var(--sky);padding:30px;border-left:4px solid var(--bright)}.intro aside span{font-weight:800;color:var(--navy)}.intro aside p{font-size:15px;line-height:1.65;color:#5c7282;margin:13px 0 0}
.services{padding:115px clamp(24px,6vw,96px);background:var(--mist)}.services-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:58px}.services-heading h2{text-align:right}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-grid article{background:#fff;padding:32px;min-height:310px;border:1px solid #e3ecef;border-radius:7px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}.service-grid article:hover{transform:translateY(-8px);box-shadow:0 22px 55px rgba(24,65,88,.11);border-color:#b9dfec}.service-grid article>span{font-size:12px;font-weight:700;color:#8da2ae}.service-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--sky);color:var(--blue);font-size:22px;margin:38px 0 25px}.service-grid h3{font-size:22px;color:var(--navy);margin:0 0 13px}.service-grid p{font-size:15px;line-height:1.65;color:#657b89;margin:0}
.team-banner{margin:0;position:relative;height:clamp(430px,52vw,720px);overflow:hidden}.team-banner img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.team-banner.visible img{transform:scale(1.035)}.team-banner figcaption{position:absolute;left:clamp(24px,7vw,110px);bottom:clamp(25px,6vw,75px);background:rgba(255,255,255,.94);padding:25px 30px;box-shadow:0 18px 55px rgba(20,61,84,.18);border-left:5px solid var(--bright)}.team-banner figcaption strong{display:block;color:var(--navy);font-size:22px}.team-banner figcaption span{display:block;color:#637b8b;font-size:15px;margin-top:7px}.process{display:grid;grid-template-columns:.9fr 1.1fr;min-height:760px}.process-image{overflow:hidden}.process-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}.process.visible .process-image img{transform:scale(1.04)}.process-copy{padding:110px clamp(38px,8vw,125px);background:var(--navy);color:#fff}.process-copy .section-label{color:#74d5f2}.process-copy h2{color:#fff}.process ol{list-style:none;padding:0;margin:55px 0 0;border-top:1px solid rgba(255,255,255,.18)}.process li{display:grid;grid-template-columns:54px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.18);opacity:0;transform:translateX(22px);transition:.55s ease}.process.visible li{opacity:1;transform:none}.process.visible li:nth-child(2){transition-delay:.12s}.process.visible li:nth-child(3){transition-delay:.24s}.process li>span{width:34px;height:34px;border:1px solid #54bde0;border-radius:50%;display:grid;place-items:center;color:#7ddcf5;font-size:12px}.process h3{margin:2px 0 6px;font-size:20px}.process li p{margin:0;color:#abc0cf;line-height:1.55;font-size:15px}
.contact{padding:120px clamp(24px,7vw,110px);background:linear-gradient(135deg,#e9f8fc,#fff);display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:center}.contact-card{background:#fff;padding:38px 42px;border-radius:8px;box-shadow:0 20px 65px rgba(19,67,92,.12)}.contact-card>p{font-size:17px;line-height:1.6;color:#5d7484;margin:0 0 25px}.contact-card>a,.contact-card address{display:block;padding:18px 0;border-top:1px solid var(--line);font-style:normal}.contact-card small{display:block;color:#78909e;margin-bottom:5px}.contact-card strong{font-size:18px;color:var(--navy)}footer{padding:55px clamp(24px,6vw,96px) 30px;background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:start;color:#607786;font-size:14px}footer>img{width:135px;height:78px;object-fit:contain}footer>p{margin:8px 0}footer>div{display:flex;flex-direction:column;gap:10px}footer>div a:hover{color:var(--blue)}footer>small{grid-column:1/-1;padding-top:24px;border-top:1px solid var(--line)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.hero-copy>*{animation:arrive .7s both}.hero-copy>:nth-child(2){animation-delay:.08s}.hero-copy>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4){animation-delay:.24s}.hero-copy>:nth-child(5){animation-delay:.32s}.service-grid article{opacity:0;transform:translateY(22px)}.services.visible .service-grid article{opacity:1;transform:none}.services.visible .service-grid article:nth-child(1){transition-delay:.08s}.services.visible .service-grid article:nth-child(2){transition-delay:.16s}.services.visible .service-grid article:nth-child(3){transition-delay:.24s}.services.visible .service-grid article:nth-child(4){transition-delay:.32s}.site-header.scrolled{position:sticky;top:0;box-shadow:0 10px 35px rgba(18,59,94,.09);animation:header-in .35s ease both}@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes hero-zoom{from{transform:scale(1)}to{transform:scale(1.045)}}@keyframes shape-float{0%,100%{transform:rotate(45deg) translate(0)}50%{transform:rotate(45deg) translate(-12px,-12px)}}@keyframes label-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes button-pulse{0%,100%{box-shadow:0 12px 28px rgba(12,131,189,.22)}50%{box-shadow:0 14px 38px rgba(12,131,189,.4)}}@keyframes arrow-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes header-in{from{transform:translateY(-100%)}to{transform:none}}
@media(max-width:1000px){.site-header nav{gap:18px}.hero{grid-template-columns:1fr}.hero-visual{min-height:470px}.intro{grid-template-columns:1fr 2fr}.intro aside{grid-column:2}.service-grid{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1.2fr}}
@media(max-width:720px){.site-header{height:82px;padding:0 20px}.logo-link img{width:125px;height:68px}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.hero-copy{padding-top:72px;padding-bottom:62px}.hero h1{font-size:clamp(47px,15vw,68px)}.hero-visual{min-height:390px}.trust-line{gap:11px;flex-direction:column}.intro,.contact{grid-template-columns:1fr}.intro{padding-top:85px;padding-bottom:85px}.intro aside{grid-column:auto}.services{padding-top:85px;padding-bottom:85px}.services-heading{align-items:start;flex-direction:column}.services-heading h2{text-align:left}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:auto}.process{grid-template-columns:1fr}.process-image{height:480px}.process-copy{padding:75px 28px}.contact{padding-top:85px;padding-bottom:85px}.contact-card{padding:28px}footer{grid-template-columns:1fr 1fr}footer>img{grid-column:1/-1}}
.service-grid article{transition:opacity .55s ease,transform .55s ease,box-shadow .3s ease,border-color .3s ease}.resources{padding:115px clamp(24px,6vw,96px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,9vw,140px);background:#fff}.resources-intro h2{font-size:clamp(38px,4.4vw,64px);line-height:1.07;letter-spacing:-.045em;color:var(--navy);margin:0}.resources-intro>p:last-child{font-size:17px;line-height:1.65;color:#637a89;max-width:450px;margin-top:25px}.resource-links{border-top:1px solid var(--line)}.resource-links>a{display:grid;grid-template-columns:44px 1fr auto;gap:22px;align-items:center;padding:27px 8px;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.resource-links>a:hover{padding-left:20px;background:var(--sky)}.resource-number{font-size:12px;font-weight:800;color:var(--blue)}.resource-links small{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#7f96a3}.resource-links h3{font-size:22px;color:var(--navy);margin:5px 0}.resource-links p{font-size:14px;line-height:1.5;color:#687f8e;margin:0}.resource-links>a>strong{font-size:24px;color:var(--blue);font-weight:400;transition:transform .25s}.resource-links>a:hover>strong{transform:translate(4px,-4px)}.resource-links .calendar-download:hover>strong{transform:translateY(4px)}@media(max-width:1000px){.resources{grid-template-columns:1fr}}@media(max-width:720px){.resources{padding:85px 24px}.resource-links>a{grid-template-columns:32px 1fr auto;gap:13px;padding:23px 4px}.resource-links p{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.service-grid article,.process li{opacity:1;transform:none}}
.service-grid article{transition:opacity .55s ease,transform .55s ease,box-shadow .3s ease,border-color .3s ease}.resources{padding:115px clamp(24px,6vw,96px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,9vw,140px);background:#fff}.resources-intro h2{font-size:clamp(38px,4.4vw,64px);line-height:1.07;letter-spacing:-.045em;color:var(--navy);margin:0}.resources-intro>p:last-child{font-size:17px;line-height:1.65;color:#637a89;max-width:450px;margin-top:25px}.resource-links{border-top:1px solid var(--line)}.resource-links>a{display:grid;grid-template-columns:44px 1fr auto;gap:22px;align-items:center;padding:27px 8px;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.resource-links>a:hover{padding-left:20px;background:var(--sky)}.resource-number{font-size:12px;font-weight:800;color:var(--blue)}.resource-links small{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#7f96a3}.resource-links h3{font-size:22px;color:var(--navy);margin:5px 0}.resource-links p{font-size:14px;line-height:1.5;color:#687f8e;margin:0}.resource-links>a>strong{font-size:24px;color:var(--blue);font-weight:400;transition:transform .25s}.resource-links>a:hover>strong{transform:translate(4px,-4px)}.resource-links .calendar-download:hover>strong{transform:translateY(4px)}@media(max-width:1000px){.resources{grid-template-columns:1fr}}@media(max-width:720px){.resources{padding:85px 24px}.resource-links>a{grid-template-columns:32px 1fr auto;gap:13px;padding:23px 4px}.resource-links p{font-size:14px}.language-switch{justify-content:center;padding:14px 0 0;border-left:0;border-top:1px solid var(--line)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.service-grid article,.process li{opacity:1;transform:none}}
