
:root{
 --navy:#0a2747; --blue:#1e5f96; --sky:#eaf6ff; --sky2:#dcefff;
 --paper:#f8fcff; --line:#c9dbe9; --gold:#b58c4a; --muted:#61778a;
 --white:#fff; --max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--navy);font-family:Inter,Arial,sans-serif;line-height:1.6}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.05;letter-spacing:-.025em;margin:0}
p{margin:0 0 18px}a{color:inherit;text-decoration:none}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
header{position:sticky;top:0;z-index:30;background:rgba(239,248,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(10,39,71,.08)}
nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px}.brand img{width:42px;height:42px;object-fit:contain}
.brand-text{font-weight:800;letter-spacing:.18em;font-size:16px}.brand-text small{display:block;font-size:7px;letter-spacing:.17em;font-weight:700;margin-top:2px}
.navlinks{display:flex;gap:22px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.navlinks a:hover{color:var(--blue)}.menu{display:none}
.hero{background:linear-gradient(135deg,#f8fcff 0%,#e8f6ff 54%,#cfe9fb 100%);padding:105px 0 92px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-5%;top:-20%;width:52%;height:145%;background:linear-gradient(155deg,rgba(255,255,255,.75),rgba(45,105,150,.16));clip-path:polygon(45% 0,100% 0,100% 100%,0 100%);border-left:1px solid rgba(10,39,71,.12)}
.hero .wrap{position:relative;z-index:2}.hero h1{font-size:clamp(58px,7vw,104px);max-width:760px}
.hero .lead{font-size:20px;max-width:590px;color:#234963;margin:28px 0 34px}
.eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.17em;margin-bottom:24px;display:flex;align-items:center;gap:12px}
.eyebrow:after{content:"";width:42px;height:1px;background:var(--gold)}
.btn{display:inline-flex;align-items:center;gap:18px;padding:14px 19px;border:1px solid var(--navy);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.btn.primary{background:var(--navy);color:white}.btn:hover{transform:translateY(-1px)}
.btnrow{display:flex;gap:13px;flex-wrap:wrap}
.section{padding:90px 0;border-top:1px solid var(--line)}
.soft{background:#edf7ff}.lighter{background:#f9fdff}.blueband{background:linear-gradient(90deg,#d8efff,#eef9ff)}
.grid2{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.display{font-size:clamp(42px,5vw,70px)}.sub{font-size:17px;color:#234963;max-width:780px}
.card{padding:32px 26px 28px 0;border-right:1px solid var(--line)}.card:not(:first-child){padding-left:26px}.card:last-child{border-right:0}
.card .num{font-family:Georgia,serif;color:var(--gold);font-size:22px}.card h3{font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin:24px 0 12px}
.card p,.small{font-size:13px;color:#294b65}
.list{display:grid;gap:0;border-top:1px solid var(--line)}
.list div{padding:17px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:24px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}
.metric{padding:22px 12px;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;font-weight:900;letter-spacing:.08em}
.metric b{display:block;font-size:27px;font-weight:500;margin-bottom:9px}
.callout{padding:34px;border-left:2px solid var(--gold);background:rgba(255,255,255,.54)}
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.step{padding:20px 14px;text-align:center}.step strong{display:block;font-family:Georgia,serif;font-size:31px;font-weight:500}.step span{font-size:10px;font-weight:900;letter-spacing:.09em}
.step p{font-size:12px;color:#294b65;margin-top:10px}
form{display:grid;gap:14px}.field{display:grid;gap:7px}.field label{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.field input,.field textarea,.field select{width:100%;padding:13px 14px;border:1px solid var(--line);background:white;color:var(--navy);font:inherit}
.field textarea{min-height:130px;resize:vertical}
footer{padding:48px 0 30px;background:#e9f5fe;border-top:1px solid var(--line)}
.foot{display:grid;grid-template-columns:1.15fr .8fr 1fr 1.45fr;gap:30px}
footer h4{font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}.foot p,.foot a{font-size:12px;color:#294b65}
.disclaimer{font-size:10px!important}.copyright{margin-top:27px;padding-top:17px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
@media(max-width:900px){.navlinks{display:none}.menu{display:block;font-size:11px;font-weight:800}.grid2,.foot{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.grid4{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr}.hero:after{opacity:.3}}
@media(max-width:560px){.wrap{width:min(var(--max),calc(100% - 28px))}.section{padding:64px 0}.hero{padding:82px 0 70px}.hero h1{font-size:54px}.grid4{grid-template-columns:1fr}.card,.card:not(:first-child){padding:27px 0;border-right:0;border-bottom:1px solid var(--line)}.brand-text{font-size:13px}}


/* Final homepage refinements */
.hero-home{
  min-height:calc(100vh - 78px);
  display:flex;
  align-items:center;
  padding:92px 0 78px;
}
.hero-home .wrap{width:min(var(--max),calc(100% - 48px))}
.hero-kicker{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:26px}
.hero-kicker:before{content:"";width:42px;height:1px;background:var(--gold)}
.hero-home h1{font-size:clamp(62px,7.2vw,112px);max-width:780px}
.hero-home .lead{max-width:570px}
.hero-meta-line{
  margin-top:54px;padding-top:18px;border-top:1px solid rgba(10,39,71,.18);
  display:flex;justify-content:space-between;gap:24px;max-width:760px;
  font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#35566f
}
.section-title-row{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:38px}
.section-title-row .display{max-width:780px}
.section-note{max-width:420px;font-size:13px;color:#294b65}
.expertise-final .card{min-height:330px}
.expertise-final .card p{min-height:76px}
.service-link{display:inline-block;margin-top:14px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}
.portfolio-final .grid2{align-items:center}
.portfolio-copy .sub{margin:22px 0 28px}
.metric{transition:background .2s ease,transform .2s ease}
.metric:hover{background:rgba(255,255,255,.38);transform:translateY(-2px)}
.research-final .list div{font-size:15px}
.statement{
  background:var(--navy);color:white;padding:78px 0;border-top:0
}
.statement h2{font-size:clamp(40px,4.6vw,66px);max-width:900px}
.statement p{max-width:760px;color:#d6e6f1;font-size:16px;margin-top:24px}
.statement .eyebrow{color:#d7e5ef}.statement .eyebrow:after{background:var(--gold)}
.why-final{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.why-final article{padding:25px 18px;border-left:1px solid var(--line)}
.why-final article:first-child{border-left:0}
.why-final .num{font-family:Georgia,serif;font-size:26px;color:var(--gold)}
.why-final h3{font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;margin:18px 0 10px}
.why-final p{font-size:12px;color:#294b65}
.final-cta{padding:82px 0;background:linear-gradient(90deg,#d7ecfb,#eef9ff)}
.final-cta .grid2{align-items:end}
.final-cta .btn{white-space:nowrap}
.mobile-nav{display:none}
@media(max-width:900px){
  .hero-home{min-height:auto;padding:82px 0 70px}
  .section-title-row{align-items:start;flex-direction:column}
  .why-final{grid-template-columns:1fr 1fr}
  .hero-meta-line{flex-direction:column;gap:6px}
}
@media(max-width:560px){
  .hero-home .wrap{width:min(var(--max),calc(100% - 28px))}
  .hero-home h1{font-size:54px}
  .why-final{grid-template-columns:1fr}
  .why-final article,.why-final article:first-child{border-left:0;border-top:1px solid var(--line)}
  .why-final article:first-child{border-top:0}
}
