:root{
  --ifix-primary:#0ea5e9;
  --ifix-primary-rgb:14,165,233;
  --ifix-dark:#0b1220;
  --ifix-muted:#94a3b8;
  --ifix-surface:#0f172a;
}
body{font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:#0b1220;}
h1,h2,h3,.section-title,.navbar-brand{font-family:Sora, Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;}
.container{max-width:1140px;}
.navbar-brand{font-weight:800; letter-spacing:.3px;}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#0b1220,#111827);color:#fff;font-weight:800;}
.topbar{background:linear-gradient(180deg,#0b1220,#0f172a);color:#e2e8f0;}
.topbar-link{color:#e2e8f0;text-decoration:none;}
.topbar-link:hover{color:#fff;}
.navbar{transition: box-shadow .25s ease, border-color .25s ease, background .25s ease;}
.navbar.is-scrolled{box-shadow:0 10px 30px rgba(2,6,23,.10); border-color:rgba(2,6,23,.06)!important;}
.nav-link{font-weight:600;}
.btn{font-weight:700;}
.btn-glow{box-shadow:0 12px 30px rgba(var(--ifix-primary-rgb),.25);}
.btn-outline-dark:hover{transform:translateY(-1px);}
.btn-dark:hover{transform:translateY(-1px);}
.btn-dark, .btn-outline-dark{transition:transform .15s ease, box-shadow .15s ease;}

.hero{
  background: radial-gradient(1200px 500px at 10% 20%, rgba(var(--ifix-primary-rgb),.25), transparent 60%),
              radial-gradient(900px 400px at 80% 10%, rgba(99,102,241,.18), transparent 55%),
              linear-gradient(180deg, #0b1220, #0f172a);
  color:#fff;
}
.hero .btn{border-radius:999px; padding:.9rem 1.25rem;}
.hero .lead{max-width:60ch;}
.hero .hero-card{backdrop-filter: blur(10px);}
.hero .hero-kpis{border-top:1px solid rgba(255,255,255,.10)}

.page-hero{
  background:
    radial-gradient(1100px 450px at 10% 20%, rgba(var(--ifix-primary-rgb),.18), transparent 60%),
    radial-gradient(800px 350px at 85% 15%, rgba(99,102,241,.12), transparent 55%),
    linear-gradient(180deg, #0b1220, #0f172a);
  color:#fff;
}

.section-title{font-weight:800;}
.card{border:1px solid rgba(2,6,23,.08); border-radius:18px;}
.card-hover{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.card-hover:hover{transform:translateY(-4px); box-shadow:0 18px 40px rgba(2,6,23,.10); border-color:rgba(var(--ifix-primary-rgb),.20);}
.badge-soft{background: rgba(var(--ifix-primary-rgb),.12); color:#0369a1; border:1px solid rgba(var(--ifix-primary-rgb),.22)}
.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;text-decoration:none;font-weight:700;}
.pill:hover{background:rgba(255,255,255,.10);color:#fff;}

.soft-bg{background:linear-gradient(180deg, rgba(2,6,23,.03), rgba(2,6,23,.01));}
.divider{height:1px;background:rgba(2,6,23,.08);}

.form-control,.form-select{border-radius:14px; padding:.75rem .9rem;}
.input-group-text{border-radius:14px;}

.footer{background:#0b1220; color:#cbd5e1;}
.footer a{color:#cbd5e1; text-decoration:none;}
.footer a:hover{color:#fff;}
.sticky-cta{position:fixed;right:max(14px, env(safe-area-inset-right));left:auto!important;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.sticky-cta a{display:inline-flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;box-shadow:0 10px 25px rgba(2,6,23,.25);text-decoration:none;font-weight:700}.cta-book{background:var(--ifix-primary); color:#fff;}.cta-wa{background:#16a34a; color:#fff;}
.small-muted{color:var(--ifix-muted);}

/* Bootstrap carousel polish */
.carousel .carousel-item{min-height:480px;}
.carousel .carousel-item img{object-fit:cover; width:100%; height:480px; filter:contrast(1.05) saturate(1.05);}
.carousel-overlay{position:absolute; inset:0; background:linear-gradient(90deg, rgba(2,6,23,.85), rgba(2,6,23,.35), rgba(2,6,23,.20));}
.carousel-caption{left:0; right:0; bottom:auto; top:0; padding:0; text-align:left;}

@media (max-width: 991.98px){
  .carousel .carousel-item{min-height:520px;}
  .carousel .carousel-item img{height:520px;}
}
.model-thumb{
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.model-thumb-img{
  max-height: 90px;
  width: auto;
  max-width: 100%;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  object-fit: contain;
}

.icon-pill{
  width:44px;
  height:44px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(var(--ifix-primary-rgb),.12);
  border:1px solid rgba(var(--ifix-primary-rgb),.22);
  color:var(--ifix-primary);
  flex:0 0 auto;
}

body{overflow-x:hidden;}
main,section{position:relative;}
.card{overflow:hidden;}
.section-title{letter-spacing:-.03em;}
.img-card-cover{width:100%;aspect-ratio:4/3;object-fit:cover;}
.img-card-contain{width:100%;aspect-ratio:4/3;object-fit:contain;background:linear-gradient(180deg,#fff,#f8fafc);padding:18px;}
.product-gallery-image{width:100%;max-height:520px;object-fit:contain;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(2,6,23,.06);border-radius:24px;padding:20px;}
.model-hero-image{height:84px;width:auto;max-width:220px;object-fit:contain;}
.pagination{gap:.35rem;flex-wrap:wrap;}
.pagination .page-link{border-radius:12px!important;border-color:rgba(2,6,23,.08);color:#0f172a;padding:.6rem .85rem;}
.pagination .active>.page-link,.pagination .page-link.active{background:var(--ifix-primary);border-color:var(--ifix-primary);}
/* Floating WhatsApp Button */

.floating-whatsapp{
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 58px;
    height: 58px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.25);
    z-index: 9999;
    transition: all 0.25s ease;
}
a{text-decoration: none;}

.floating-whatsapp:hover{
    background:#20b857;
    transform: scale(1.08);
}