:root {
  --cream: #f7f4ed;
  --navy: #102a5e;
  --navy-deep: #071d45;
  --yellow: #ffd52f;
  --coral: #ff6a4a;
  --soft-line: #d9d7cf;
}
body { background: var(--cream); color: var(--navy-deep); }
h1, h2, h3 { color: var(--navy); }
.site-header {
  position: sticky; top: 14px; z-index: 50;
  max-width: calc(var(--max) + 56px); width: calc(100% - 36px);
  height: 72px; margin: 14px auto -86px; padding: 0 18px 0 22px;
  background: rgba(250,248,243,.95); border: 1px solid #dedbd3;
  border-radius: 40px; box-shadow: 0 8px 22px rgba(16,42,94,.09);
  backdrop-filter: blur(14px);
}
.site-header .brand img { width: 260px; height: 68px; }
.footer-brand img { width: 235px; height: 72px; }
.site-header nav { gap: 27px; }
.site-header nav > a:not(.nav-cta) { color: #3e4452; font-weight: 500; }
.nav-cta { background: var(--navy); border-radius: 24px; padding: 11px 20px; }
.nav-cta span, .button span { color: inherit; }
.hero {
  min-height: auto; padding-top: 160px; padding-bottom: 42px;
  background: radial-gradient(circle at 12% 72%,rgba(255,213,47,.19),transparent 23%), var(--cream);
  color: var(--navy-deep); grid-template-columns: 1fr; text-align: center;
}
.hero-copy { max-width: 1040px; margin: 0 auto; }
.hero-badges { display: flex; justify-content: center; gap: 10px; margin-bottom: 26px; }
.hero-badges span { padding: 7px 16px; border: 2px solid var(--navy); border-radius: 24px; font: 700 .72rem Manrope; letter-spacing: .08em; }
.hero-badges span:first-child { background: var(--yellow); }
.hero-badges span:last-child { border-color: var(--coral); color: var(--coral); background: #fff8f2; }
.hero h1 { max-width: 980px; margin: 0 auto 24px; color: var(--navy); font-size: clamp(3.7rem,7.4vw,7rem); line-height: .92; letter-spacing: -.065em; }
.hero h1 em { display: block; color: #3d4050; font: italic 400 .88em Georgia,serif; letter-spacing: -.045em; margin-top: 12px; }
.hero-lede { max-width: 720px; margin: 0 auto; color: #65636a; font-size: 1.18rem; }
.hero-actions { justify-content: center; }
.button { border-radius: 9px; }
.button.primary { background: var(--yellow); color: var(--navy-deep); border: 2px solid var(--yellow); box-shadow: 0 4px 0 var(--navy); }
.button.primary:hover { background: #ffe263; transform: translateY(-2px); }
.button.text { color: var(--navy); border: 2px solid var(--navy); border-radius: 9px; padding: 13px 20px; }
.trust-row { max-width: 860px; margin: 46px auto 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 0; color: var(--navy-deep); border: 1px solid var(--soft-line); border-radius: 18px; background: rgba(255,255,255,.7); overflow: hidden; }
.trust-row span { padding: 18px; border-right: 1px solid var(--soft-line); font-weight: 600; }
.trust-row span:last-child { border-right: 0; }
.trust-row b { display: block; font: 800 1.35rem Manrope; color: var(--navy); }
.hero-visual { max-width: 1050px; width: 100%; margin: 30px auto 0; min-height: 390px; }
.orb { display: none; }
.dash-card { background: #fff; color: var(--navy-deep); border: 1px solid var(--soft-line); box-shadow: 0 18px 50px rgba(16,42,94,.1); }
.main-card { max-width: 760px; transform: none; border-radius: 24px; }
.card-top small,.metric-grid small,.floating-card small { color: #72727a; }
.card-top strong,.metric-grid b,.floating-card b { color: var(--navy); }
.live { color: var(--navy); background: var(--yellow); }
.live i { background: var(--navy); }
.metric-grid > div { background: var(--cream); border: 1px solid var(--soft-line); }
.metric-grid span,.floating-card .up { color: #19805f; }
.chart { border-color: #d2d3d6; background: linear-gradient(#eceae4 1px,transparent 1px); background-size: 100% 33%; }
.chart span { background: linear-gradient(var(--yellow),#ef9f2f); }
.floating-card { background: var(--coral); border: none; }
.floating-card small,.floating-card b,.floating-card .up { color: #fff; }
.icon-chip { background: var(--navy); }
.marquee { background: var(--navy); color: #fff; }
.marquee i { color: var(--yellow); }
.section { background: var(--cream); }
.eyebrow.dark { color: var(--navy); }
.eyebrow.dark > span { background: var(--yellow); height: 7px; border-radius: 8px; }
.section h2,.problem-band h2,.contact h2 { color: var(--navy); }
.section h2 em,.problem-band h2 em { color: #43434c; font-family: Georgia,serif; font-weight: 400; }
.services-grid { border: 0; gap: 18px; }
.service { min-height: 390px; background: #fff; border: 1px solid var(--soft-line); border-radius: 22px; }
.service:hover { box-shadow: 0 16px 35px rgba(16,42,94,.12); }
.service-icon { background: var(--yellow); color: var(--navy); border-radius: 50%; }
.service.featured { background: var(--navy); border-color: var(--navy); }
.service.featured h3 { color: #fff; }
.service.featured .service-icon { background: var(--yellow); }
.service-cta { background: var(--coral); border-color: var(--coral); }
.service-cta h3 { color: #fff; }
.service-cta a { color: var(--navy-deep); background: var(--yellow); width: max-content; padding: 10px 15px; border-radius: 8px; }
.problem-band { background: var(--navy); }
.problem-band h2,.problem-list h3 { color: #fff; }
.problem-band h2 em { color: var(--yellow); }
.problem-list > div { border-color: rgba(255,255,255,.24); }
.problem-list > div > span { color: var(--yellow); }
.process-track i:before { background: var(--yellow); border-color: #fff0a4; }
.process-track b { color: var(--navy); }
.proof-panel { background: #fff; border: 1px solid var(--soft-line); border-radius: 22px; }
.big-star { color: var(--yellow); text-shadow: 1px 1px 0 var(--navy); }
.contact { background: var(--cream); color: var(--navy-deep); }
.contact h2 { color: var(--navy); }
.contact-copy > p:not(.eyebrow) { color: #63636a; }
.contact .eyebrow { color: var(--navy); }
.contact .eyebrow > span { background: var(--yellow); }
.contact-details a { border-color: var(--navy); }
.contact-details a:hover { background: #fff; border-color: var(--coral); }
.contact-details small { color: #75747c; }
.contact-details b { color: var(--navy); }
.contact-note { border-color: var(--soft-line); }
.contact-note i { color: var(--coral); }
.contact-note span { color: #6a6870; }
.contact-note b { color: var(--navy); }
.contact form { border: 1px solid var(--soft-line); border-radius: 22px; box-shadow: 0 18px 48px rgba(16,42,94,.09); }
footer { background: var(--navy-deep); }
@media(max-width:980px) {
  .site-header { top: 9px; height: 68px; margin-bottom: -82px; }
  .site-header nav { top: 76px; border-radius: 20px; }
  .hero { padding-top: 135px; }
  .services-grid { grid-template-columns: repeat(2,1fr); }
}
@media(max-width:640px) {
  .site-header { width: calc(100% - 20px); height: 64px; padding: 0 12px 0 15px; margin-bottom: -78px; }
  .site-header .brand img { width: 198px; height: 56px; }
  .footer-brand img { width: 205px; height: 62px; }
  .hero { padding: 125px 20px 45px; }
  .hero h1 { font-size: 3.45rem; }
  .hero-badges { flex-wrap: wrap; }
  .hero-actions { align-items: stretch; }
  .hero-actions .button { width: 100%; }
  .trust-row { grid-template-columns: 1fr; }
  .trust-row span { border-right: 0; border-bottom: 1px solid var(--soft-line); }
  .trust-row span:last-child { border-bottom: 0; }
  .hero-visual { min-height: 330px; }
  .floating-card { position: relative; margin: -12px auto 0; }
  .services-grid { grid-template-columns: 1fr; }
}
