
:root{
  --bg:#07111f;
  --bg2:#0e1726;
  --card:#101b2d;
  --blue:#0a84ff;
  --blue2:#38bdf8;
  --text:#f8fafc;
  --muted:#cbd5e1;
  --light:#f8fafc;
  --darkText:#0f172a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#fff;color:var(--darkText);line-height:1.7}
a{color:inherit}
.site-nav{background:rgba(7,17,31,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.18)}
.nav-logo{height:42px;width:auto;filter:drop-shadow(0 0 10px rgba(56,189,248,.65))}
.navbar-brand span{font-weight:800;letter-spacing:.02em}
.nav-link{font-weight:600;color:rgba(255,255,255,.82)!important}
.nav-link:hover{color:#7dd3fc!important}
.btn{border-radius:999px;font-weight:700;padding:.75rem 1.2rem}
.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));border:0;color:white}
.btn-outline-primary{border-color:var(--blue);color:var(--blue)}
.btn-outline-primary:hover{background:var(--blue);border-color:var(--blue);color:white}
.glow-btn{box-shadow:0 0 20px rgba(10,132,255,.35)}
.hero{position:relative;background:var(--bg);color:var(--text);overflow:hidden}
.hero-bg{position:absolute;inset:0;background:
  radial-gradient(circle at 20% 20%,rgba(10,132,255,.34),transparent 32%),
  radial-gradient(circle at 85% 35%,rgba(56,189,248,.22),transparent 30%),
  linear-gradient(135deg,#07111f,#0e1726 55%,#07111f);
}
.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 85%)}
.hero-content{position:relative;z-index:2}
.hero h1,.page-hero h1{font-weight:800;letter-spacing:-.055em;line-height:1.02}
.hero h1{font-size:clamp(2.6rem,6vw,5.7rem)}
.hero .lead{color:var(--muted);font-size:1.2rem;max-width:720px}
.eyebrow{display:inline-flex;color:#7dd3fc;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;margin-bottom:1rem}
.logo-card{background:rgba(255,255,255,.06);border:1px solid rgba(125,211,252,.25);border-radius:32px;padding:2rem;box-shadow:0 0 60px rgba(10,132,255,.25)}
.hero-logo{max-width:min(360px,90%);filter:drop-shadow(0 0 25px rgba(56,189,248,.55))}
.section{padding:90px 0}
.dark-section{background:var(--bg);color:var(--text)}
.dark-section p{color:var(--muted)}
.stats-strip{padding:34px 0;background:#f1f5f9}
.stat{background:white;border-radius:22px;padding:28px;box-shadow:0 12px 35px rgba(2,8,23,.08)}
.stat strong{display:block;font-size:2rem;color:var(--blue);font-weight:800}
.stat span{font-weight:700;color:#334155}
h2{font-size:clamp(2rem,4vw,3.4rem);font-weight:800;letter-spacing:-.04em;line-height:1.08;margin-bottom:1rem}
h3{font-weight:800;letter-spacing:-.025em}
.feature-panel,.contact-card,.wide-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:28px;padding:34px;box-shadow:0 16px 45px rgba(2,8,23,.06)}
.check-list{padding-left:0;list-style:none;margin:1rem 0 0}
.check-list li{margin:.7rem 0;padding-left:1.9rem;position:relative}
.check-list li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:900}
.service-card{height:100%;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(125,211,252,.18);border-radius:26px;padding:30px;transition:.25s ease;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.service-card:hover,.wide-card:hover{transform:translateY(-5px);border-color:rgba(56,189,248,.55)}
.service-card .icon{font-size:2rem;margin-bottom:1rem}
.preview-gallery,.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.preview-gallery img,.gallery-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;box-shadow:0 12px 35px rgba(2,8,23,.16);border:1px solid #e2e8f0;background:#f8fafc}
.cta-section{background:linear-gradient(135deg,var(--blue),#0752a3);color:white}
.cta-section p{max-width:760px;margin:0 auto 1.5rem;color:rgba(255,255,255,.88)}
.page-hero{padding:150px 0 80px;background:
  radial-gradient(circle at 20% 20%,rgba(10,132,255,.28),transparent 32%),
  linear-gradient(135deg,#07111f,#111827);color:white}
.page-hero p{max-width:760px;color:var(--muted);font-size:1.18rem}
.gallery-card{display:block;text-decoration:none;color:var(--darkText);background:#fff;border-radius:24px;padding:12px;border:1px solid #e2e8f0;box-shadow:0 14px 35px rgba(2,8,23,.08);height:100%;transition:.25s ease}
.gallery-card:hover{transform:translateY(-5px);color:var(--blue)}
.gallery-card span{display:block;font-weight:800;padding:14px 8px 6px}
.small-muted{color:#64748b}
.contact-form .form-control,.contact-form .form-select{border-radius:16px;padding:.9rem 1rem;border:1px solid #cbd5e1}
.map-box iframe{width:100%;height:320px;border:0;border-radius:28px;filter:saturate(.95)}
.footer{background:#050b14;color:rgba(255,255,255,.78);padding:70px 0 28px}
.footer-logo{max-width:160px;filter:drop-shadow(0 0 15px rgba(56,189,248,.5))}
.footer h5{color:white;font-weight:800}
.footer a{display:block;color:rgba(255,255,255,.78);text-decoration:none;margin:.4rem 0}
.footer a:hover{color:#7dd3fc}
.footer hr{border-color:rgba(255,255,255,.14);margin:34px 0}
.floating-call{position:fixed;right:18px;bottom:18px;z-index:20;background:linear-gradient(135deg,var(--blue),var(--blue2));color:white;text-decoration:none;padding:13px 18px;border-radius:999px;font-weight:800;box-shadow:0 0 25px rgba(10,132,255,.45)}
.narrow{max-width:850px}
@media (max-width:991px){
  .navbar-collapse{padding:1rem 0}
  .section{padding:64px 0}
  .hero .row{padding-top:70px}
}
@media (max-width:575px){
  .preview-gallery,.gallery-grid{grid-template-columns:1fr}
  .hero h1{font-size:2.55rem}
  .floating-call{left:18px;text-align:center}
}
