
:root{
  --navy:#102A43;
  --navy-dark:#061827;
  --red:#C8102E;
  --gold:#D4AF37;
  --white:#F5F5F5;
  --graphite:#1F2933;
  --slate:#486581;
  --light:#F7F8FA;
  --line:#D9E2EC;
  --shadow:0 18px 45px rgba(16,42,67,.14);
  --radius:20px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Source Sans Pro",Arial,sans-serif;color:var(--graphite);background:#fff;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:min(1180px,92%);margin:0 auto}
.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:800;font-size:.78rem}
h1,h2,h3,h4{font-family:Montserrat,Arial,sans-serif;line-height:1.08;margin:0;color:var(--navy)}
h1{font-size:clamp(2.7rem,6vw,5.7rem);letter-spacing:-.05em;color:#fff}
h2{font-size:clamp(2rem,3.8vw,3.8rem);letter-spacing:-.04em}
h3{font-size:1.25rem}
p{margin:0;color:#4B5563}
.btn{display:inline-flex;align-items:center;gap:.65rem;padding:15px 22px;border-radius:999px;text-decoration:none;font-weight:800;font-family:Montserrat,Arial,sans-serif;transition:.2s ease;border:1px solid transparent}
.btn.primary{background:var(--gold);color:var(--navy)}
.btn.secondary{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.28)}
.btn.light{background:#fff;color:var(--navy)}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.18)}
.site-header{position:fixed;top:0;width:100%;z-index:20;background:rgba(16,42,67,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between}
.nav img{width:210px}
.nav-links{display:flex;gap:28px;align-items:center;color:#EAF0F6;font-family:Montserrat,Arial,sans-serif;font-size:.88rem;font-weight:700}
.nav-links a{text-decoration:none;opacity:.9}
.nav-links a:hover{color:var(--gold)}
.mobile-toggle{display:none;background:transparent;border:0;color:#fff;font-size:2rem}
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(16,42,67,.98),rgba(6,24,39,.92)),url("../img/network-bg.svg") center/cover}
.hero:after{content:"";position:absolute;right:-10%;bottom:-20%;width:60vw;height:60vw;background:radial-gradient(circle,rgba(200,16,46,.28),transparent 55%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative;z-index:2;padding-top:80px}
.hero p{font-size:1.25rem;color:#D9E2EC;max-width:760px;margin:24px 0 34px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:32px;padding:34px;box-shadow:0 30px 70px rgba(0,0,0,.32)}
.hero-card img{width:100%;filter:drop-shadow(0 24px 40px rgba(0,0,0,.28))}
.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}
.metric{background:rgba(255,255,255,.08);border-radius:18px;padding:18px}
.metric strong{display:block;color:#fff;font-size:1.15rem;font-family:Montserrat,Arial,sans-serif}
.metric span{color:#BFCBD8;font-size:.88rem}
.strip{background:#fff;border-bottom:1px solid var(--line)}
.strip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.strip-item{padding:28px;border-right:1px solid var(--line)}
.strip-item:last-child{border-right:0}
.strip-item strong{font-family:Montserrat,Arial,sans-serif;color:var(--navy);display:block}
.strip-item span{color:var(--slate);font-weight:700}
.section{padding:105px 0}
.split{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}
.visual-panel{min-height:470px;border-radius:var(--radius);background:url("../img/business-building.svg") center/cover;box-shadow:var(--shadow);position:relative;overflow:hidden}
.visual-panel:after{content:"";position:absolute;inset:auto 0 0 0;height:42%;background:linear-gradient(transparent,rgba(16,42,67,.92))}
.content-stack>*+*{margin-top:22px}
.lead{font-size:1.2rem;color:#52606D}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.value{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.value b{display:block;color:var(--navy);font-family:Montserrat,Arial,sans-serif;margin-bottom:6px}
.dark-section{background:linear-gradient(140deg,var(--navy),var(--navy-dark));color:#fff;position:relative;overflow:hidden}
.dark-section h2,.dark-section h3{color:#fff}
.dark-section p{color:#C9D5E1}
.dark-section:before{content:"";position:absolute;inset:0;background:url("../img/network-bg.svg") center/cover;opacity:.18}
.dark-section .container{position:relative}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.service-card{padding:30px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);min-height:250px}
.icon{width:54px;height:54px;border-radius:16px;background:rgba(212,175,55,.14);display:flex;align-items:center;justify-content:center;margin-bottom:22px;color:var(--gold);font-size:1.45rem;font-weight:900}
.service-card:nth-child(2n) .icon{color:var(--red);background:rgba(200,16,46,.14)}
.why-grid,.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}
.why-card,.industry-card{border:1px solid var(--line);border-radius:22px;padding:30px;background:#fff;box-shadow:0 8px 28px rgba(16,42,67,.06)}
.why-card{border-top:5px solid var(--gold)}
.industry-card{min-height:170px;background:linear-gradient(180deg,#fff,#F7F8FA)}
.industry-card h3{display:flex;align-items:center;gap:12px}
.industry-card h3:before{content:"";width:10px;height:10px;background:var(--red);border-radius:50%;box-shadow:18px 0 0 var(--gold)}
.leadership{background:var(--light)}
.leader-card{display:grid;grid-template-columns:320px 1fr;gap:38px;align-items:center;background:#fff;border-radius:28px;padding:34px;border:1px solid var(--line);box-shadow:var(--shadow)}
.portrait{height:330px;border-radius:22px;background:linear-gradient(135deg,var(--navy),var(--slate));display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;overflow:hidden;position:relative}
.portrait:before{content:"CM";font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:5rem;color:rgba(255,255,255,.18)}
.portrait:after{content:"Managing Partner";position:absolute;bottom:22px;left:0;right:0;font-family:Montserrat,Arial,sans-serif;font-weight:700;color:#fff}
.cta{padding:90px 0;background:linear-gradient(120deg,var(--navy),var(--navy-dark));color:#fff}
.cta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.cta h2{color:#fff}
.cta p{color:#D9E2EC;font-size:1.13rem}
.contact-box{background:#fff;border-radius:24px;padding:30px;color:var(--graphite)}
.contact-row{padding:16px 0;border-bottom:1px solid var(--line)}
.contact-row:last-child{border-bottom:0}
.contact-row strong{display:block;color:var(--navy);font-family:Montserrat,Arial,sans-serif}
.footer{background:#061827;color:#BFCBD8;padding:36px 0}
.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center}
.footer img{width:190px}
.page-hero{padding:160px 0 90px;background:linear-gradient(120deg,var(--navy),var(--navy-dark));color:#fff}
.page-hero h1{font-size:clamp(2.5rem,5vw,4.8rem)}
.page-hero p{color:#D9E2EC;font-size:1.18rem;max-width:850px;margin-top:18px}
.breadcrumb{color:var(--gold);font-family:Montserrat,Arial,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;margin-bottom:16px}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.detail-card{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 8px 24px rgba(16,42,67,.06)}
.form{display:grid;gap:14px}
input,textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:12px;font:inherit}
textarea{min-height:130px}
button.btn{cursor:pointer}
@media (max-width:900px){
  .mobile-toggle{display:block}
  .nav-links{position:absolute;top:78px;left:0;right:0;display:none;flex-direction:column;align-items:flex-start;background:var(--navy);padding:25px 4%;border-bottom:1px solid rgba(255,255,255,.12)}
  .nav-links.open{display:flex}
  .hero-grid,.split,.cta-grid,.leader-card{grid-template-columns:1fr}
  .services-grid,.why-grid,.industry-grid,.strip-grid,.detail-grid{grid-template-columns:1fr}
  .strip-item{border-right:0;border-bottom:1px solid var(--line)}
  .hero-card{display:none}
  .section{padding:72px 0}
  .values{grid-template-columns:1fr}
  .nav img{width:180px}
}
