
:root{
  --bg:#0b3d5c;
  --bg-deep:#072a3f;
  --brand:#0e6ba8;
  --brand-2:#2cb3ff;
  --light:#ffffff;
  --muted:#d7eefb;
  --shadow:0 10px 25px rgba(0,0,0,.15);
  --radius:18px;
  --max:1100px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Montserrat, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--light);
  background: linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);
  line-height:1.6;
}

.container{max-width:var(--max);margin:0 auto;padding:0 20px}

.site-header{
  position:sticky; top:0; z-index:1000;
  background: rgba(7,42,63,0.9); backdrop-filter: blur(6px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--light);font-weight:700}
.brand-logo{font-size:26px}
.brand-text{font-family: "Playfair Display", serif; font-size:20px; letter-spacing:.2px}

.nav{display:flex;gap:14px;align-items:center}
.nav-link{color:var(--muted);text-decoration:none;padding:10px 8px;border-radius:10px}
.nav-link:hover{color:var(--light);background:rgba(255,255,255,.06)}
.cta{background:var(--brand);color:#00233a;text-decoration:none;padding:10px 14px;border-radius:999px;font-weight:700;box-shadow:var(--shadow)}
.nav-toggle{display:none;background:none;border:none;color:var(--light);font-size:26px}

.hero{
  position:relative;min-height:72vh;display:grid;place-items:center;
  background-image:url('https://images.unsplash.com/photo-1501594907352-04cda38ebc29?q=80&w=1400&auto=format&fit=crop');
  background-size:cover;background-position:center;
}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(7,42,63,.6), rgba(7,42,63,.8))}
.hero-inner{position:relative;text-align:center;padding:80px 0}
.hero h1{font-family:"Playfair Display",serif;font-size:clamp(36px,5vw,64px);margin:0 0 10px}
.hero .accent{color:var(--brand-2)}
.hero p{max-width:720px;margin:0 auto 30px;color:var(--muted);font-size:clamp(16px,2vw,20px)}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

.btn{display:inline-block;padding:12px 20px;border-radius:12px;background:var(--brand-2);color:#062136;text-decoration:none;font-weight:800;box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px)}
.btn.outline{background:transparent;color:var(--light);border:2px solid var(--light)}
.btn.light{background:var(--light)}

.trust{padding:50px 0}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.trust-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}

.cta-band{background:linear-gradient(90deg, var(--brand) , var(--brand-2));color:#052131}
.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 0;font-weight:700}
.cta-band .btn.light{color:#052131}

.badges{padding:40px 0 60px}
.badge-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;padding:0;margin:0}
.badge-list li{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:10px 14px;text-align:center}

.site-footer{background:#061a27;margin-top:60px;border-top:1px solid rgba(255,255,255,.1)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;padding:30px 0}
.site-footer h3, .site-footer h4{margin:.2em 0}
.tagline{color:var(--muted);margin-top:6px}
.contact-list{list-style:none;padding:0;margin:0}
.contact-list a{color:var(--muted);text-decoration:none}
.legal{border-top:1px solid rgba(255,255,255,.08);padding:14px 0;text-align:center;color:var(--muted)}

.page{padding:40px 0 60px}
.page h1{font-family:"Playfair Display",serif;font-size:42px;margin-top:0}
.two-col{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:start}
.card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.promo{width:100%;border-radius:var(--radius);margin-top:16px;border:1px solid rgba(255,255,255,.15)}

.service-block{margin:26px 0}
.service-list{columns:2;gap:30px}
.service-list li{margin:6px 0}

.pricing-note{margin-top:20px;text-align:center}
.pricing-note .btn{margin-top:8px}

.contact-form{display:grid;gap:12px}
.contact-form label{display:grid;gap:6px;font-weight:600}
.contact-form input,.contact-form textarea,.contact-form select{
  width:100%;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.05);color:var(--light)
}
.alt-contact{color:var(--muted)}

.map-embed iframe{width:100%;height:300px;border:0;border-radius:12px}
.map-embed small{display:block;margin-top:6px;color:var(--muted)}

@media (max-width: 900px){
  .trust-grid{grid-template-columns:1fr}
  .badge-list{grid-template-columns:repeat(2,1fr)}
  .two-col{grid-template-columns:1fr}
  .service-list{columns:1}
  .footer-grid{grid-template-columns:1fr 1fr}
  .nav{display:none;position:absolute;right:20px;top:64px;background:#061f30;padding:10px;border-radius:12px;flex-direction:column;width:max-content;border:1px solid rgba(255,255,255,.1)}
  .nav.show{display:flex}
  .nav-toggle{display:block}
}
@media (max-width: 560px){
  .footer-grid{grid-template-columns:1fr}
  .badge-list{grid-template-columns:1fr}
}
.contact-form form p {
  margin-bottom: 15px;
}

.contact-form form label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}

.contact-form form input,
.contact-form form select {
  width: 100%;
  padding: 8px;
  box-sizing: border-box;
}

.contact-form button {
  background: #00aaff;
  color: white;
  border: none;
  padding: 10px 20px;
  font-size: 16px;
  cursor: pointer;
}

