
:root{
  --turq:#0fb9b1;
  --yellow:#facc15;
  --green:#22c55e;
  --text:#0f172a;
  --muted:#64748b;
}
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:linear-gradient(180deg,#f9fafb 0%,#fefce8 40%,#f1f5f9 100%);
}
a{text-decoration:none;color:var(--turq);}
a:hover{text-decoration:underline;color:#05928a;}
.section-padding{padding-block:4.5rem;}
.top-bar{
  background:linear-gradient(90deg,rgba(15,185,177,.10),rgba(250,204,21,.16));
  font-size:.9rem;
  border-bottom:1px solid rgba(148,163,184,.35);
}
.navbar-glass{
  backdrop-filter:blur(18px);
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(148,163,184,.18);
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
.nav-link{color:#64748b!important;font-weight:500;}
.nav-link:hover,.nav-link.active{color:var(--text)!important;}
.navbar-call{border-radius:999px;box-shadow:0 10px 25px rgba(15,23,42,.08);}
.hero-section{padding-top:7.5rem;padding-bottom:4.5rem;}
.hero-title{font-size:clamp(2.2rem,3vw,2.8rem);font-weight:800;letter-spacing:-.04em;}
.hero-highlight{color:var(--turq);}
.hero-badge-chip{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.35rem .9rem;border-radius:999px;
  background:white;border:1px solid rgba(148,163,184,.3);
  font-size:.8rem;box-shadow:0 10px 25px rgba(15,23,42,.06);
}
.hero-slider-card{
  border-radius:1.75rem;overflow:hidden;
  box-shadow:0 18px 40px rgba(15,23,42,.10);
  background:white;
}
.hero-img{width:100%;height:360px;object-fit:cover;}
.smart-panel{
  margin-top:1.25rem;border-radius:1.75rem;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(148,163,184,.3);
  padding:1.5rem 1.75rem;
  box-shadow:0 18px 40px rgba(15,23,42,.08);
}
.smart-label{font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;}
.smart-select{border-radius:999px;font-size:.9rem;}
.btn-smart{border-radius:999px;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;}
.btn-turq{background:linear-gradient(135deg,var(--turq),#06b6d4);color:white;border:none;}
.btn-turq:hover{background:linear-gradient(135deg,#05928a,#0891b2);color:white;}
.btn-ghost{background:white;border:1px solid rgba(148,163,184,.6);color:var(--text);}
.btn-ghost:hover{background:#f8fafc;}
#brands-section{background:white;}
.brand-card{
  border-radius:1.25rem;
  background:linear-gradient(135deg,#ffffff,#f1f5f9);
  border:1px solid rgba(148,163,184,.3);
  padding:1.1rem 1rem;
  box-shadow:0 14px 30px rgba(15,23,42,.06);
  transition:.18s;
}
.brand-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(15,23,42,.14);border-color:var(--turq);}
.brand-icon-circle{
  width:34px;height:34px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;
  background:#e0fbf8;color:var(--turq);
}
.brand-tag{font-size:.78rem;text-transform:uppercase;color:var(--muted);}
.brand-name{font-weight:700;}
.brand-meta{font-size:.8rem;color:var(--muted);}
#region-section,#regions-section{background:linear-gradient(135deg,#e0fbf8,#fefce8);}
.region-card{
  border-radius:1.25rem;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(148,163,184,.35);
  padding:1.35rem 1.25rem;
  box-shadow:0 18px 40px rgba(15,23,42,.08);
}
.region-list{list-style:none;padding-left:0;margin:0;columns:2;column-gap:1.5rem;}
.region-list li{font-size:.9rem;margin-bottom:.4rem;}
.region-list i{font-size:.5rem;margin-right:.35rem;color:var(--turq);}
.price-table{border-radius:1.25rem;overflow:hidden;box-shadow:0 18px 40px rgba(15,23,42,.08);}
.price-table thead tr{background:linear-gradient(135deg,var(--turq),var(--green));color:white;}
.price-highlight{background:#fef08a;border-radius:999px;padding-inline:.35rem;}
#reviews-section{background:linear-gradient(180deg,#f9fafb 0%,#e0fbf8 60%,#f9fafb 100%);}
.review-card-main{border-radius:1.75rem;background:white;box-shadow:0 18px 40px rgba(15,23,42,.10);padding:1.75rem 1.9rem;}
.review-slide{display:none;}
.review-slide.active{display:block;}
.review-dots{display:flex;justify-content:center;gap:.4rem;margin-top:.9rem;}
.review-dots button{width:9px;height:9px;border-radius:999px;border:none;background:rgba(148,163,184,.7);}
.review-dots button.active{width:22px;background:linear-gradient(135deg,var(--turq),var(--green));}
footer{background:#020617;color:#e5e7eb;padding-top:2.5rem;}
.footer-meta{font-size:.8rem;color:#9ca3af;}
.btn-call{border-radius:999px;padding-inline:1.4rem;font-weight:700;
  background:linear-gradient(135deg,var(--turq),var(--green));border:none;color:white;}
.btn-call:hover{background:linear-gradient(135deg,#059669,#16a34a);color:white;}
@media(max-width:991.98px){
  .hero-section{padding-top:6.5rem;}
  .region-list{columns:1;}
}

/* === V2 ENHANCEMENTS === */
.mobile-bottom-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1030;
  display:flex;
  padding:.4rem .7rem .55rem;
  backdrop-filter:blur(14px);
  background:radial-gradient(circle at top,rgba(15,185,177,.85),rgba(15,23,42,.92));
  box-shadow:0 -10px 35px rgba(15,23,42,.7);
}
.mobile-bottom-bar .btn{
  border-radius:999px;
  font-size:.85rem;
  font-weight:600;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  padding:.45rem .8rem;
  box-shadow:0 10px 25px rgba(15,23,42,.55);
}
.mobile-bottom-bar .btn-call-bottom{
  background:linear-gradient(135deg,var(--turq),var(--green));
  border:none;
  color:white;
}
.mobile-bottom-bar .btn-service-bottom{
  background:linear-gradient(135deg,#facc15,#f97316);
  border:none;
  color:#0f172a;
}
@media(max-width:991.98px){
  .mobile-bottom-bar{display:flex;justify-content:space-between;gap:.6rem;}
}
#scrollTopBtn{
  position:fixed;
  right:1rem;
  bottom:4.2rem;
  width:40px;
  height:40px;
  border-radius:999px;
  border:none;
  display:none;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  cursor:pointer;
  backdrop-filter:blur(14px);
  background:radial-gradient(circle at top,#e0fbf8,#0f172a);
  color:white;
  box-shadow:0 15px 35px rgba(15,23,42,.8);
  z-index:1030;
}
#scrollTopBtn.show{display:flex;}
#scrollTopBtn:hover{
  transform:translateY(-2px);
}
/* header non-sticky on mobile */
@media(max-width:767.98px){
  header.position-sticky{position:static!important;}
}
/* footer links styling */
.footer-link-list a{
  font-size:.9rem;
  color:#e5e7eb;
}
.footer-link-list a:hover{
  color:#facc15;
  text-decoration:none;
}

/* === V3 Enhancements === */
.mobile-bottom-bar{
  justify-content:space-between;
  gap:.6rem;
}
@media(min-width:992px){
  .mobile-bottom-bar{
    max-width:720px;
    margin-inline:auto;
    border-radius:999px 999px 0 0;
  }
}
.review-google-card{
  border-radius:1.25rem;
  background:white;
  box-shadow:0 14px 30px rgba(15,23,42,.08);
  padding:1.1rem 1.25rem;
  height:100%;
}
.review-google-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
}
.review-google-user{
  display:flex;
  align-items:center;
  gap:.65rem;
}
.review-google-avatar{
  width:34px;
  height:34px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  color:white;
  background:linear-gradient(135deg,var(--turq),var(--green));
}
.review-google-stars{
  color:#facc15;
  font-size:.8rem;
}
.review-google-meta{
  font-size:.75rem;
  color:var(--muted);
}
.price-pill{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.25rem .7rem;
  border-radius:999px;
  font-size:.8rem;
  background:rgba(34,197,94,.07);
  color:#166534;
}
.price-block{
  border-radius:1.25rem;
  background:white;
  box-shadow:0 18px 40px rgba(15,23,42,.08);
  padding:1rem 1.25rem;
  margin-bottom:.75rem;
}
.price-block h6{
  font-size:.95rem;
}
.info-chip{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  border-radius:999px;
  padding:.25rem .7rem;
  background:#e0fbf8;
  font-size:.8rem;
  color:var(--text);
}
.hero-extra-section{
  background:white;
  border-top:1px solid rgba(148,163,184,.25);
}
.hero-extra-card{
  border-radius:1.25rem;
  background:linear-gradient(135deg,#ffffff,#f8fafc);
  border:1px solid rgba(148,163,184,.3);
  padding:1.1rem 1.2rem;
  height:100%;
  box-shadow:0 14px 30px rgba(15,23,42,.06);
}
.hero-extra-card h5{
  font-size:1rem;
}
.modal-service .modal-content{
  border-radius:1.5rem;
  border:1px solid rgba(148,163,184,.35);
  box-shadow:0 22px 45px rgba(15,23,42,.35);
}
.modal-service .modal-header{
  border-bottom:none;
}
.modal-service .modal-footer{
  border-top:none;
}
