:root{
  --navy:#102A43;
  --navy2:#173B5E;
  --blue:#1976D2;
  --bright:#32A8FF;
  --pale:#EAF4FF;
  --ink:#243B53;
  --muted:#627D98;
  --line:#D8E2EA;
  --bg:#F5F8FB;
  --white:#FFFFFF;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.6;
}
a{color:inherit}
.wrap{width:min(1120px,calc(100% - 40px));margin:auto}
.site-header{
  background:var(--navy);
  border-bottom:1px solid rgba(255,255,255,.08);
  position:sticky;top:0;z-index:10;
}
.nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:white;font-weight:750;letter-spacing:.01em}
.brand img{width:48px;height:48px;object-fit:contain}
.nav-contact{color:white;text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:8px 17px;border-radius:8px;font-weight:650}
.nav-contact:hover{background:rgba(255,255,255,.1)}
.hero{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 62%,#145C91 100%);
  color:white;
  overflow:hidden;
}
.hero-grid{min-height:560px;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:55px;padding-top:60px;padding-bottom:60px}
.eyebrow{margin:0 0 12px;color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.16em}
.eyebrow.light{color:#9ED5FF}
h1{font-size:clamp(3.1rem,7vw,5.8rem);line-height:.94;letter-spacing:-.055em;margin:0 0 26px;max-width:780px}
h1 span{color:#55BCFF}
.hero-copy{font-size:1.18rem;color:#D8E9F7;max-width:680px;margin:0 0 32px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.button{display:inline-block;text-decoration:none;padding:13px 20px;border-radius:9px;font-weight:750;transition:.15s ease}
.button.primary{background:var(--blue);color:white}
.button.primary:hover{background:#125FAE;transform:translateY(-1px)}
.button.secondary{border:1px solid rgba(255,255,255,.45);color:white}
.button.secondary:hover{background:rgba(255,255,255,.08)}
.hero-mark{display:flex;align-items:center;justify-content:center}
.hero-mark img{width:min(390px,100%);filter:drop-shadow(0 24px 32px rgba(0,0,0,.25))}
.section{padding:86px 0}
h2{font-size:clamp(2rem,4vw,3rem);line-height:1.08;letter-spacing:-.035em;color:var(--navy);margin:0 0 18px}
.section-intro{max-width:760px;color:var(--muted);font-size:1.08rem;margin:0 0 38px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{border:1px solid var(--line);border-radius:14px;padding:26px;background:white;box-shadow:0 8px 24px rgba(16,42,67,.05)}
.card h3{color:var(--navy);margin:0 0 9px;font-size:1.12rem}
.card p{color:var(--muted);margin:0}
.question-section{background:var(--bg);padding:38px 0 82px}
.question-box{background:var(--navy);border-radius:18px;padding:42px 46px;display:flex;align-items:center;justify-content:space-between;gap:35px;color:white;box-shadow:0 16px 40px rgba(16,42,67,.16)}
.question-box h2{color:white;margin-bottom:12px}
.question-box p{margin:0;color:#D8E9F7;max-width:750px}
.button.white{background:white;color:var(--navy);white-space:nowrap}
.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.two-col p{color:var(--muted);font-size:1.04rem;margin-top:0}
.portfolio-note{background:var(--pale);border-left:4px solid var(--blue);padding:15px 18px;border-radius:4px}
.contact-section{padding:0 0 86px}
.contact-card{text-align:center;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:54px 25px}
.contact-card p{color:var(--muted);margin:0 0 18px}
.email-link{font-size:clamp(1.2rem,3vw,1.7rem);font-weight:800;color:var(--blue);text-decoration:none}
.email-link:hover{text-decoration:underline}
footer{background:#0B2239;color:#BFD3E5;padding:28px 0}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:.9rem}
.footer-inner strong{display:block;color:white}
.footer-inner span{display:block}
@media(max-width:820px){
  .hero-grid{grid-template-columns:1fr;min-height:auto;text-align:center;padding-top:70px}
  .hero-copy{margin-left:auto;margin-right:auto}
  .hero-actions{justify-content:center}
  .hero-mark img{width:240px}
  .cards{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr;gap:20px}
  .question-box{display:block;text-align:center}
  .question-box .button{margin-top:24px}
}
@media(max-width:560px){
  .wrap{width:min(100% - 28px,1120px)}
  .brand span{font-size:.86rem}
  .nav-contact{padding:7px 12px}
  .hero-grid{gap:20px}
  h1{font-size:3.25rem}
  .hero-mark img{width:190px}
  .cards{grid-template-columns:1fr}
  .section{padding:65px 0}
  .question-box{padding:32px 22px}
  .footer-inner{display:block;text-align:center}
  .footer-inner>div+div{margin-top:12px}
}
