*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Inter',sans-serif;
background:#f4f7fc;
color:#071735;
overflow-x:hidden;
}

img{
max-width:100%;
display:block;
}

/* HEADER */

.site-header{
background:#fff;
border-bottom:1px solid #e2e8f0;
}

.header-inner{
width:min(96%,1680px);
margin:auto;
display:grid;
grid-template-columns:280px 1fr 520px;
align-items:center;
gap:30px;
padding:20px 0;
}

.main-logo img{
height:140px;
width:auto;
}

.desktop-nav{
display:flex;
justify-content:center;
gap:30px;
}

.desktop-nav a{
text-decoration:none;
font-size:18px;
font-weight:800;
color:#071735;
}

.ecosystem-logos{
display:flex;
align-items:center;
justify-content:flex-end;
gap:28px;
}

.ecosystem-logos img{
display:block;
}

.ecosystem-logos a:first-child img{
height:145px;
}

.ecosystem-logos a:last-child img{
height:90px;
}

.divider{
width:1px;
height:90px;
background:#dbe3ef;
}

/* HERO */

.hero-section{
background:linear-gradient(135deg,#001d6b 0%,#0045c7 100%);
padding:55px 0;
}

.hero-inner{
width:min(96%,1680px);
margin:auto;
display:grid;
grid-template-columns:1fr 760px;
gap:40px;
align-items:center;
}

.hero-copy h1{
font-size:84px;
line-height:.96;
font-weight:900;
color:white;
letter-spacing:-4px;
margin-bottom:26px;
max-width:720px;
}

.hero-copy h1 span{
display:block;
color:#57e357;
}

.hero-copy p{
font-size:23px;
line-height:1.7;
color:#dbe6ff;
margin-bottom:34px;
max-width:700px;
}

.eyebrow{
display:inline-flex;
align-items:center;
padding:14px 22px;
border-radius:999px;
background:rgba(255,255,255,.10);
border:1px solid rgba(255,255,255,.15);
font-size:14px;
font-weight:900;
color:white;
margin-bottom:30px;
}

.hero-buttons{
display:flex;
gap:18px;
margin-bottom:28px;
flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
display:inline-flex;
align-items:center;
justify-content:center;
padding:20px 34px;
border-radius:16px;
font-size:18px;
font-weight:900;
text-decoration:none;
}

.btn-primary{
background:#41c851;
color:white;
}

.btn-secondary{
background:rgba(255,255,255,.08);
border:2px solid rgba(255,255,255,.16);
color:white;
}

.hero-points{
display:flex;
gap:26px;
flex-wrap:wrap;
color:white;
font-size:17px;
font-weight:700;
}

/* ADVISOR CARD */

.advisor-card{
background:white;
border-radius:34px;
padding:30px;
box-shadow:0 30px 60px rgba(0,0,0,.18);
}

.advisor-top{
display:flex;
justify-content:space-between;
align-items:flex-start;
margin-bottom:24px;
}

.advisor-top h2{
font-size:38px;
font-weight:900;
color:#005bd6;
margin-bottom:8px;
}

.advisor-top p{
color:#64748b;
font-size:17px;
}

.advisor-top span{
background:#dcfce7;
color:#16a34a;
padding:12px 16px;
border-radius:999px;
font-size:13px;
font-weight:900;
}

.advisor-grid{
display:grid;
grid-template-columns:1fr 1fr 1fr;
gap:16px;
}

.score-card{
grid-row:span 2;
border:1px solid #dbe3ef;
border-radius:22px;
padding:24px;
text-align:center;
}

.score-card h3{
font-size:24px;
margin-bottom:18px;
}

.score-ring{
width:150px;
height:150px;
border-radius:50%;
border:14px solid #36c34b;
display:flex;
align-items:center;
justify-content:center;
font-size:60px;
font-weight:900;
color:#36c34b;
margin:0 auto 20px;
}

.score-card strong{
display:block;
font-size:34px;
margin-bottom:10px;
color:#16a34a;
}

.score-card p{
font-size:18px;
color:#64748b;
line-height:1.5;
}

.mini-card{
border:1px solid #dbe3ef;
border-radius:22px;
padding:22px;
min-height:170px;
}

.mini-card h4{
font-size:18px;
margin-bottom:14px;
}

.mini-card strong{
display:block;
font-size:38px;
font-weight:900;
margin-bottom:10px;
}

.mini-card p{
font-size:16px;
color:#64748b;
}

.green{
color:#16a34a;
}

.orange{
color:#ea580c;
}

.insight-box{
margin-top:18px;
background:#eff6ff;
padding:18px;
border-radius:16px;
font-size:17px;
line-height:1.6;
}

/* TRUST BAR */

.trust-bar{
background:white;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
padding:34px 7%;
border-radius:0 0 24px 24px;
box-shadow:0 8px 18px rgba(0,0,0,.06);
}

.trust-bar div{
font-size:21px;
font-weight:800;
}

/* CALCULATORS */

.calculators-section{
padding:70px 0;
background:white;
}

.section-inner{
width:min(92%,1250px);
margin:auto;
text-align:center;
}

.section-inner h2{
font-size:48px;
font-weight:900;
margin-bottom:14px;
}

.section-inner p{
font-size:20px;
color:#64748b;
margin-bottom:34px;
}

.calculator-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:24px;
}

.calculator-card{
background:white;
border:1px solid #dbe3ef;
border-radius:24px;
padding:30px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.icon{
width:76px;
height:76px;
border-radius:20px;
background:#dbeafe;
display:flex;
align-items:center;
justify-content:center;
font-size:38px;
margin:0 auto 18px;
}

.calculator-card h3{
font-size:24px;
margin-bottom:14px;
}

.calculator-card a{
text-decoration:none;
font-size:18px;
font-weight:900;
color:#005bd6;
}

/* MOBILE */

@media(max-width:1200px){

.hero-inner{
grid-template-columns:1fr;
}

.hero-copy{
text-align:center;
}

.hero-copy h1{
margin:auto auto 26px;
}

.hero-copy p{
margin:auto auto 34px;
}

.hero-buttons,
.hero-points{
justify-content:center;
}

}

@media(max-width:980px){

.header-inner{
display:flex;
flex-direction:column;
padding:20px;
}

.desktop-nav{
flex-wrap:wrap;
}

.hero-copy h1{
font-size:52px;
}

.advisor-grid,
.calculator-grid,
.trust-bar{
grid-template-columns:1fr;
}

.hero-buttons{
flex-direction:column;
}

.btn-primary,
.btn-secondary{
width:100%;
}

}