@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{
  --navy:#0b1f44;
  --blue:#2563eb;
  --blue-soft:#8cb7ff;
  --text:#162947;
  --muted:#596a80;
  --light:#f5f8fc;
  --line:#d9e4ef;
  --white:#ffffff;
  --font:'Manrope',Arial,sans-serif;
  --shadow:0 24px 60px rgba(11,31,68,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:var(--font);color:var(--text);background:#fff;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button{font:inherit}
address{font-style:normal}
.container{width:min(1160px,calc(100% - 72px));margin:0 auto}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px;z-index:999}

.site-header{position:sticky;top:0;z-index:50;height:86px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(11,31,68,.07)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center}
.brand-logo{display:block;width:198px;height:auto}
.desktop-nav{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:700}
.desktop-nav a:hover,.button-link:hover{color:var(--blue)}
.nav-button{background:var(--navy);color:#fff;padding:14px 20px;border-radius:4px;box-shadow:0 14px 28px rgba(11,31,68,.14)}
.nav-button span{margin-left:12px;color:var(--blue-soft)}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0}
.mobile-nav{padding:14px 36px 22px;border-bottom:1px solid var(--line);background:#fff}
.mobile-nav a{display:block;padding:12px 0;font-weight:700}

.eyebrow{margin:0;font-size:10px;letter-spacing:.28em;font-weight:800;color:#7d96bb;text-transform:uppercase}.eyebrow-blue{color:var(--blue)}
.rule{display:block;width:72px;height:3px;background:var(--blue);margin:0 0 28px}

.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 12%,rgba(37,99,235,.08),transparent 28%),linear-gradient(130deg,#fff 0%,#fff 43%,#eff4ff 100%)}
.hero-shape{position:absolute;transform:rotate(45deg);border:54px solid rgba(37,99,235,.035)}
.hero-shape-1{width:340px;height:340px;left:-140px;bottom:-180px}
.hero-shape-2{width:420px;height:420px;right:-100px;top:-200px}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:62px;align-items:center;min-height:720px;padding:72px 0 64px}
.hero-copy{position:relative;z-index:2}
.hero h1{margin:24px 0 24px;font-size:clamp(48px,5.4vw,80px);line-height:1.04;letter-spacing:-.07em;color:var(--navy);font-weight:800;max-width:700px}
.hero-text{max-width:540px;font-size:17px;line-height:1.85;color:#405472;margin:0 0 34px}
.hero-actions{display:flex;flex-wrap:wrap;gap:18px 26px;align-items:center}
.button{display:inline-flex;align-items:center;gap:20px;padding:18px 24px;border-radius:4px;font-size:12px;font-weight:800;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--blue);color:#fff;box-shadow:0 18px 36px rgba(37,99,235,.24)}
.button-primary:hover{background:#154fd7}
.button-link{font-size:12px;font-weight:800}
.hero-media{position:relative;height:590px;overflow:hidden;border-radius:4px;box-shadow:28px 28px 0 rgba(37,99,235,.08),var(--shadow)}
.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,68,0) 48%,rgba(11,31,68,.46) 100%)}
.media-badge{position:absolute;left:24px;bottom:24px;z-index:1;font-size:10px;font-weight:800;letter-spacing:.2em;color:#fff}
.hero-strip{display:flex;gap:36px;border-top:1px solid var(--line);padding:24px 0 30px;color:#6981a5;font-size:10px;font-weight:800;letter-spacing:.18em}

.section{padding:120px 0}.section-soft{background:var(--light)}
.section-intro h2,.expertise-header h2,.approach-copy h2,.contact-copy h2{margin:18px 0 26px;font-size:clamp(34px,4.1vw,58px);line-height:1.14;letter-spacing:-.055em;color:var(--navy);font-weight:800}
.lead{font-size:16px;line-height:1.9;color:var(--muted);max-width:840px;margin:0}
.intro-layout{display:grid;gap:56px}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.card{background:#fff;border:1px solid var(--line);padding:30px 26px;box-shadow:0 10px 30px rgba(11,31,68,.05)}
.icon-plate{display:grid;place-items:center;width:62px;height:62px;border-radius:999px;background:#eef4fb}
.line-icon{width:29px;height:29px;color:var(--navy)}
.card h3{margin:22px 0 10px;font-size:17px;color:var(--navy)}
.card p{margin:0;font-size:13px;line-height:1.85;color:var(--muted)}

.expertise-header{display:grid;grid-template-columns:1.04fr .76fr;gap:72px;align-items:end}
.expertise-layout{display:grid;grid-template-columns:1fr .82fr;gap:56px;align-items:stretch;margin-top:40px}
.expertise-item{display:grid;grid-template-columns:58px 50px 1fr;gap:16px;align-items:start;padding:30px 0;border-top:1px solid var(--line)}
.expertise-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:999px;background:#e6eef8}
.expertise-num{font-size:13px;color:var(--blue);font-weight:800;margin-top:8px}
.expertise-item h3{margin:0 0 10px;font-size:19px;color:var(--navy)}
.expertise-item p{margin:0;max-width:370px;font-size:13px;line-height:1.9;color:var(--muted)}
.editorial-image{min-height:520px;border-radius:4px;overflow:hidden;box-shadow:var(--shadow)}
.editorial-image img{width:100%;height:100%;object-fit:cover}
.emphasis-block{margin-top:62px;display:flex;gap:28px;align-items:center;justify-content:space-between;background:#e9f1fc;padding:36px 42px;border-radius:4px}
.emphasis-line{display:block;width:4px;height:68px;background:var(--blue);flex-shrink:0}
.emphasis-block p{margin:0 auto 0 0;font-size:27px;line-height:1.45;letter-spacing:-.05em;color:var(--navy)}
.emphasis-block strong{color:var(--blue)}
.emphasis-block small{font-size:9px;letter-spacing:.18em;color:#6f86a7;font-weight:800}

.approach-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:84px;align-items:center}
.approach-media{height:650px;overflow:hidden;border-radius:4px;box-shadow:var(--shadow)}
.approach-media img{width:100%;height:100%;object-fit:cover}
.steps{display:grid}
.step{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}
.step-num{font-size:32px;line-height:1;color:var(--blue);letter-spacing:-.05em;min-width:54px}
.step h3{margin:0 0 8px;font-size:16px;color:var(--navy)}
.step p{margin:0;font-size:13px;line-height:1.85;color:var(--muted)}

.contact-section{padding:96px 0;background:linear-gradient(135deg,#09172f 0%,#0b1f44 50%,#12316d 100%);color:#fff}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:96px;align-items:center}
.lead-light{font-size:15px;line-height:1.9;color:#c4d4ea;max-width:560px;margin:0 0 30px}
.button-light{background:#fff;color:var(--navy);box-shadow:0 14px 30px rgba(0,0,0,.12)}
.contact-panel{padding-left:44px;border-left:1px solid rgba(255,255,255,.18)}
.contact-item{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.contact-label{display:block;margin-bottom:12px;font-size:10px;font-weight:800;letter-spacing:.16em;color:#8fb1df}
.contact-item a,.contact-item address{font-size:14px;line-height:1.7;color:#fff;overflow-wrap:anywhere}

.site-footer{padding:34px 0;background:#071630;color:#9dadc5}
.footer-inner{display:flex;justify-content:space-between;gap:40px}
.footer-brand{margin:0 0 6px;font-size:23px;line-height:1;font-weight:800;letter-spacing:-.06em;color:#fff}
.site-footer p,.site-footer a{margin:0;font-size:11px;line-height:1.85}
.footer-right{text-align:right}

@media (max-width: 980px){
  .container{width:min(100% - 44px,1160px)}
  .hero-grid,.expertise-layout,.approach-layout,.contact-grid,.expertise-header{gap:32px}
  .hero-grid{grid-template-columns:1fr;min-height:auto;padding:64px 0 34px}
  .hero-media{height:460px}
  .cards-grid{grid-template-columns:1fr}
  .expertise-header,.expertise-layout,.approach-layout,.contact-grid{grid-template-columns:1fr}
  .contact-panel{padding-left:0;border-left:0}
  .editorial-image,.approach-media{height:360px;min-height:0}
}
@media (max-width: 680px){
  .container{width:calc(100% - 38px)}
  .desktop-nav{display:none}.menu-toggle{display:block}
  .site-header{height:74px}.brand-logo{width:165px}
  .section,.contact-section{padding:72px 0}
  .hero h1{font-size:clamp(42px,10vw,62px)}
  .hero-text,.lead,.lead-light{font-size:14px}
  .hero-media{height:330px;box-shadow:10px 10px 0 rgba(37,99,235,.08),var(--shadow)}
  .hero-actions{display:block}.button-link{display:inline-block;margin-top:18px}
  .hero-strip{flex-wrap:wrap;gap:14px 20px;font-size:8px}
  .expertise-item{grid-template-columns:48px 34px 1fr;gap:12px}.expertise-icon{width:48px;height:48px}
  .emphasis-block{padding:24px;gap:18px;align-items:flex-start}.emphasis-block p{font-size:21px}.emphasis-block small{display:none}
  .step-num{font-size:26px;min-width:42px}
  .footer-inner{display:block}.footer-right{text-align:left;margin-top:18px}
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.button{transition:none}}
