*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; background: #fff; color: #0f172a; }
:root {
  --navy: #0A1628; --blue: #1D4ED8; --blue-light: #3B82F6;
  --cyan: #06B6D4; --white: #ffffff; --gray-50: #F8FAFC;
  --gray-100: #F1F5F9; --gray-200: #E2E8F0; --gray-400: #94A3B8;
  --gray-600: #475569; --gray-800: #1E293B; --border: 0.5px solid #E2E8F0;
}
.nav { display: flex; align-items: center; justify-content: space-between; padding: 0 48px; height: 68px; background: rgba(10,22,40,0.97); backdrop-filter: blur(12px); position: sticky; top: 0; z-index: 100; border-bottom: 0.5px solid rgba(255,255,255,0.08); }
.nav-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.nav-logo-mark { width: 32px; height: 32px; background: linear-gradient(135deg,#1D4ED8,#06B6D4); border-radius: 8px; display: flex; align-items: center; justify-content: center; }
.nav-logo-mark span { color: #fff; font-size: 14px; font-weight: 700; }
.nav-logo-text { font-size: 15px; font-weight: 600; color: #fff; letter-spacing: -0.3px; }
.nav-links { display: flex; gap: 4px; }
.nav-links a { font-size: 14px; color: rgba(255,255,255,0.7); text-decoration: none; padding: 6px 14px; border-radius: 6px; transition: all 0.15s; }
.nav-links a:hover, .nav-links a.active { color: #fff; background: rgba(255,255,255,0.1); }
.nav-phone { font-size: 13px; color: rgba(255,255,255,0.55); margin-right: 8px; text-decoration: none; }
.nav-cta { background: linear-gradient(135deg,#1D4ED8,#06B6D4); color: #fff; font-size: 13px; padding: 8px 20px; border-radius: 6px; border: none; cursor: pointer; font-weight: 500; text-decoration: none; }
.btn-primary { background: linear-gradient(135deg,#1D4ED8,#06B6D4); color: #fff; padding: 14px 32px; border-radius: 8px; font-size: 15px; font-weight: 600; border: none; cursor: pointer; text-decoration: none; display: inline-block; }
.btn-primary:hover { opacity: 0.9; }
.btn-outline { background: transparent; color: #fff; padding: 14px 32px; border-radius: 8px; font-size: 15px; font-weight: 500; border: 1.5px solid rgba(255,255,255,0.35); cursor: pointer; text-decoration: none; display: inline-block; }
.btn-outline:hover { background: rgba(255,255,255,0.08); }
.section-label { font-size: 11px; font-weight: 700; letter-spacing: 2.5px; color: #06B6D4; text-transform: uppercase; margin-bottom: 12px; }
.section-title { font-family: Georgia,'Times New Roman',serif; font-size: 38px; font-weight: 700; color: #0A1628; line-height: 1.15; margin-bottom: 16px; }
.section-lead { font-size: 17px; color: #475569; line-height: 1.75; max-width: 580px; margin-bottom: 48px; }
.page-hero { padding: 72px 48px 64px; background: #0A1628; position: relative; overflow: hidden; }
.page-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 70% 50%,rgba(6,182,212,0.15) 0%,transparent 70%); pointer-events:none; }
.page-hero .section-title { font-size: 46px; max-width: 640px; color: #fff; margin-bottom: 16px; }
.page-hero .section-lead { color: rgba(255,255,255,0.65); margin-bottom: 0; }
.footer-cta { background: #0A1628; padding: 80px 48px; text-align: center; position: relative; overflow: hidden; }
.footer-cta::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 100%,rgba(29,78,216,0.3) 0%,transparent 70%); pointer-events:none; }
.footer-cta-title { font-family:Georgia,serif; font-size:38px; font-weight:700; color:#fff; margin-bottom:14px; line-height:1.2; position:relative; }
.footer-cta-sub { font-size:16px; color:rgba(255,255,255,0.6); margin-bottom:36px; position:relative; }
.footer-cta-actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; position:relative; }
.footer { padding: 48px; background: #060e1a; display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; }
.footer-brand p { font-size:13px; color:#94A3B8; line-height:1.7; margin-top:12px; }
.footer-col-title { font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:#94A3B8; margin-bottom:16px; }
.footer-col a, .footer-col span { display:block; font-size:13px; color:rgba(255,255,255,0.45); text-decoration:none; margin-bottom:8px; }
.footer-col a:hover { color:#fff; }
.footer-bottom { padding:20px 48px; background:#060e1a; border-top:0.5px solid rgba(255,255,255,0.06); display:flex; justify-content:space-between; align-items:center; }
.footer-bottom span { font-size:12px; color:#94A3B8; }
@media(max-width:900px){
  .nav{padding:0 20px;} .nav-links,.nav-phone{display:none;}
  .page-hero{padding:48px 24px;} .page-hero .section-title{font-size:32px;}
  .footer{grid-template-columns:1fr 1fr;padding:32px 24px;}
  .footer-bottom{padding:16px 24px;flex-direction:column;gap:8px;text-align:center;}
}
