:root{
  --navy:#0b1b3a;
  --navy-2:#0f2652;
  --gold:#c8a14a;
  --ink:#0f172a;
  --muted:#64748b;
  --bg:#f6f8fb;
  --card:#ffffff;
  --ring:rgba(200,161,74,.22);
}

html{scroll-behavior:smooth;}
body{
  font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;
  color:var(--ink);
  background:var(--bg);
  line-height:1.65;
  letter-spacing:.01em;
}

.navbar{
  box-shadow:0 14px 40px rgba(15,23,42,.05);
  backdrop-filter:blur(10px);
}
.navbar-brand{
  font-weight:800;
  letter-spacing:.2px;
}
.brand-logo{
  height:34px;
  width:auto;
  display:block;
  max-width:190px;
  object-fit:contain;
}
.nav-link{font-weight:700;color:rgba(11,27,58,.84)!important}
.nav-link:hover{color:var(--navy)!important}

.btn-gold{
  background:linear-gradient(135deg,var(--gold),#e1c06f);
  border:none;
  color:#1b1b1b;
  font-weight:800;
  box-shadow:0 10px 25px rgba(200,161,74,.25);
}
.btn-gold:hover{filter:saturate(1.05);transform:translateY(-1px);}
.btn-navy{
  background:rgba(11,27,58,.04);
  border:1px solid rgba(11,27,58,.14);
  color:var(--navy);
  font-weight:800;
  box-shadow:none;
}
.btn-navy:hover{
  transform:translateY(-1px);
  background:rgba(11,27,58,.08);
  color:var(--navy);
  border-color:rgba(11,27,58,.22);
}
.btn-soft{
  background:#fff;
  border:1px solid rgba(15,23,42,.12);
  color:var(--navy);
  font-weight:700;
}
.btn-soft:hover{
  transform:translateY(-1px);
  border-color:rgba(200,161,74,.45);
  color:var(--navy);
}

.hero{
  position:relative;
  background: radial-gradient(1200px circle at 20% 10%, rgba(200,161,74,.18), transparent 55%),
              radial-gradient(900px circle at 80% 20%, rgba(11,27,58,.18), transparent 52%),
              linear-gradient(180deg,#ffffff 0%, #f3f6fb 70%, #f6f8fb 100%);
  overflow:hidden;
}
.hero::after{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(700px circle at 70% 30%, rgba(200,161,74,.12), transparent 60%);
  pointer-events:none;
}
.hero-card{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 30px 70px rgba(2,6,23,.12);
  backdrop-filter: blur(10px);
  border-radius:18px;
}
.hero-visual{
  min-height:440px;
  border-radius:24px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(11,27,58,.06), rgba(11,27,58,.56)),
    linear-gradient(135deg, rgba(11,27,58,.95), rgba(15,38,82,.72)),
    url("https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1200&q=80") center/cover no-repeat;
  box-shadow:0 40px 90px rgba(2,6,23,.22);
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
}
.hero-visual::before{
  content:"";
  position:absolute;
  inset:auto -80px -120px auto;
  width:320px;
  height:320px;
  background:radial-gradient(circle, rgba(200,161,74,.42), transparent 60%);
}
.hero-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  pointer-events:none;
}
.hero-visual .hero-overlay-card{
  position:relative;
  background:rgba(255,255,255,.12);
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(12px);
  border-radius:18px;
  box-shadow:0 18px 45px rgba(0,0,0,.14);
}
.hero-overlay-top{
  z-index:2;
}
.hero-overlay-top > .d-flex{
  flex-wrap:wrap;
  row-gap:.6rem;
}
.hero-overlay-bottom{
  display:flex;
  gap:12px;
  align-items:stretch;
  justify-content:space-between;
  flex-wrap:wrap;
  z-index:2;
}
.hero-overlay-bottom .hero-overlay-card{
  flex:1 1 220px;
  max-width:none;
}
.hero-overlay-left{
}
.hero-overlay-right{
}
.hero-overlay-card .mini{
  color:rgba(255,255,255,.72);
  font-size:.9rem;
}
.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.5rem .75rem;
  border-radius:999px;
  background:rgba(11,27,58,.06);
  border:1px solid rgba(11,27,58,.12);
  color:var(--navy);
  font-weight:700;
}

.section-title{
  font-weight:900;
  letter-spacing:-.55px;
  color:var(--navy);
  line-height:1.15;
}
.section-kicker{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
  color:rgba(11,27,58,.7);
  font-size:.82rem;
}
.text-muted-2{color:var(--muted)!important}

.card-premium{
  background:var(--card);
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  box-shadow:0 18px 40px rgba(2,6,23,.06);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  position:relative;
  overflow:hidden;
}
.card-premium::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg, rgba(200,161,74,.88), rgba(200,161,74,0));
}
.card-premium:hover{
  transform:translateY(-4px);
  box-shadow:0 26px 70px rgba(2,6,23,.10);
  border-color:rgba(200,161,74,.35);
}
.icon-pill{
  width:46px;height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(200,161,74,.12);
  border:1px solid rgba(200,161,74,.25);
  color:var(--navy);
  font-size:1.25rem;
}

.stat{
  background:linear-gradient(135deg, rgba(11,27,58,.04), rgba(200,161,74,.08));
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  padding:16px;
  min-height:92px;
}
.stat .num{
  font-weight:950;
  font-size:1.9rem;
  color:var(--navy);
  letter-spacing:-.5px;
}
.stat .label{
  color:rgba(15,23,42,.7);
  font-weight:700;
  margin-top:2px;
}

.section-alt{
  background:linear-gradient(180deg, rgba(255,255,255,.75), rgba(255,255,255,.4));
}

.logo-strip{
  background:rgba(255,255,255,.8);
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  box-shadow:0 18px 40px rgba(2,6,23,.05);
}
.logo-item{
  border:1px dashed rgba(15,23,42,.12);
  border-radius:14px;
  padding:14px 16px;
  text-align:center;
  font-weight:800;
  color:rgba(11,27,58,.76);
  background:rgba(246,248,251,.9);
}

.trust-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.65rem .85rem;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 30px rgba(2,6,23,.05);
  font-weight:700;
  color:var(--navy);
}

.service-bullets{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:.5rem;
}
.service-bullets li{
  display:flex;
  align-items:flex-start;
  gap:.55rem;
  color:var(--muted);
  font-size:.95rem;
}
.service-bullets li::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--gold);
  margin-top:.45rem;
  flex:0 0 auto;
}

.timeline-mini{
  display:grid;
  gap:1rem;
  position:relative;
}
.timeline-mini::before{
  content:"";
  position:absolute;
  left:22px;
  top:8px;
  bottom:8px;
  width:2px;
  background:linear-gradient(180deg, rgba(200,161,74,.8), rgba(11,27,58,.14));
}
.timeline-step{
  position:relative;
  display:flex;
  gap:1rem;
  align-items:flex-start;
}
.timeline-step-number{
  width:46px;
  height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(200,161,74,.35);
  color:var(--navy);
  font-weight:900;
  box-shadow:0 10px 25px rgba(2,6,23,.06);
  z-index:1;
}

.testimonial-shell{
  position:relative;
}
.ts-item{
  animation:fadeSlide .45s ease;
}
.ts-avatar{
  width:70px;
  height:70px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, rgba(200,161,74,.18), rgba(11,27,58,.12));
  border:1px solid rgba(15,23,42,.1);
  color:var(--navy);
  font-size:1.4rem;
  font-weight:900;
}
.ts-verified{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .7rem;
  background:linear-gradient(135deg,#22c55e,#16a34a);
  border:1px solid rgba(255,255,255,.18);
  color:#ffffff;
  border-radius:999px;
  font-weight:700;
  font-size:.85rem;
  box-shadow:0 14px 30px rgba(22,163,74,.22);
}
.ts-nav{
  display:flex;
  gap:.5rem;
  justify-content:center;
  margin-top:1rem;
}
.ts-dot{
  width:36px;
  height:10px;
  border:none;
  border-radius:999px;
  background:rgba(11,27,58,.12);
  transition:all .25s ease;
}
.ts-dot.active{
  width:52px;
  background:linear-gradient(90deg, var(--gold), #e1c06f);
}

.contact-trust-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:.85rem;
}
.contact-trust-item{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  padding:1rem;
  box-shadow:0 14px 30px rgba(2,6,23,.05);
}

@keyframes fadeSlide{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}

.cta-band{
  background:linear-gradient(135deg,var(--navy),#0a244f);
  border-radius:18px;
  color:#fff;
  position:relative;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(11,27,58,.22);
}
.cta-band::after{
  content:"";
  position:absolute;
  width:520px;height:520px;
  right:-240px;top:-240px;
  background: radial-gradient(circle, rgba(200,161,74,.40), transparent 62%);
}

.footer{
  background:#071126;
  color:rgba(255,255,255,.85);
}
.footer a{color:rgba(255,255,255,.85);text-decoration:none}
.footer a:hover{color:#fff;text-decoration:underline}
.footer-logo-wrap{
  display:inline-flex;
  align-items:center;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.footer-logo{
  height:40px;
  width:auto;
  display:block;
  object-fit:contain;
  max-width:220px;
}

@media (max-width: 575.98px){
  .brand-logo{height:28px;max-width:170px;}
  .footer-logo{height:34px;max-width:190px;}
}

.sticky-actions{
  position:fixed;
  right:18px;
  bottom:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  z-index:1050;
}
.sticky-actions a{
  width:48px;height:48px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  text-decoration:none;
  box-shadow:0 18px 45px rgba(2,6,23,.22);
}
.sticky-actions .call{background:linear-gradient(135deg,#0ea5e9,#0284c7);}
.sticky-actions .wa{background:linear-gradient(135deg,#22c55e,#16a34a);}

.reveal{
  opacity:0;
  transform:translateY(12px);
  transition:opacity .5s ease, transform .5s ease;
}
.reveal.show{
  opacity:1;
  transform:none;
}

.modal-backdrop.show{opacity:.65;}

.admin-shell{
  background:#0b1220;
  min-height:100vh;
}
.admin-card{
  background:#0f1a2e;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  box-shadow:0 20px 70px rgba(0,0,0,.25);
}
.admin-link{
  display:flex;
  align-items:center;
  gap:.6rem;
  padding:.6rem .8rem;
  border-radius:12px;
  color:rgba(255,255,255,.86);
  text-decoration:none;
}
.admin-link:hover{background:rgba(255,255,255,.07);color:#fff;}
.admin-link.active{background:rgba(200,161,74,.14);border:1px solid rgba(200,161,74,.22);}

@media (max-width: 991.98px){
  .hero-visual{
    min-height:auto;
    padding:18px;
  }
  .hero-overlay-card{
    position:relative;
    top:auto;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:none;
  }
  .hero-overlay-bottom{
    display:grid;
    gap:14px;
  }
  .hero-overlay-top{
    margin-bottom:2px;
  }
  .hero-overlay-top > .d-flex{
    flex-direction:column;
    align-items:flex-start !important;
  }
  .contact-trust-grid{grid-template-columns:1fr;}
}

@media (max-width: 575.98px){
  .hero-visual{
    padding:14px;
    border-radius:20px;
  }
  .hero-overlay-card{
    border-radius:16px;
  }
  .ts-verified{
    font-size:.78rem;
    padding:.4rem .6rem;
  }
}
