:root{--brand:#111; /* negro suave para tipografía/CTA */
--bg:#fffaf1; /* marfil muy claro */
--ink:#121212;
--muted:#6b6b6b;
--pill-bg:#f4f4f4;
--radius:1.25rem;

--nav-h:64px; /* altura aprox. de navbar sticky */
}


html,body{background:var(--bg); color:var(--ink); font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif}
img{max-width:100%; height:auto; display:block}
.display-4,.section-title{letter-spacing:-.02em}
.fw-black{font-weight:900}
.rounded-4{border-radius:var(--radius)!important}


.badge-pill,.pill{
display:inline-block; border:1px solid #e6e6e6; border-radius:999px;
padding:.6rem 1rem; background:var(--pill-bg); font-weight:600;
}
.feature{background:#fff;border:1px solid #eee;/*border-radius:var(--radius)*/;padding:1.25rem}
.hero-section img{object-fit:cover; object-position:center}


/* helpers */
.py-lg-6{padding-top:5rem!important; padding-bottom:5rem!important}

/* Logo navbar */
.brand-logo{ height:28px; width:auto; display:block }
@media (min-width: 992px){ .brand-logo{ height:34px } }

/* HERO VIDEO */
.hero-section {
  min-height: 100vh;
  color: #fff;
  position: relative;
}

.hero-video {
  object-fit: cover;
  z-index: 0;
  filter: brightness(0.6);
}

.hero-overlay {
  background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.6) 100%);
  z-index: 1;
}

.hero-section .container {
  z-index: 2;
  position: relative;
}

/* HERO PRODUCTO */
/* Hero productos con imagen de fondo fija y overlay sutil */
.hero-product {
  --hero-overlay: rgba(10,37,64,.90);
  /* 1) overlay de color + 2) imagen provista por --hero-bg */
  background-image: linear-gradient(var(--hero-overlay), var(--hero-overlay)), var(--hero-bg);
  background-size: auto, cover;
  background-position: 0 0, center;
  background-repeat: no-repeat, no-repeat;
  background-attachment: scroll, fixed;
  min-height: 70vh; scroll-margin-top: var(--nav-h);
}
@media (max-width: 767.98px){
  .hero-product { min-height: 60vh; }
}
.hero-product .hero-img{ max-height:42vh; object-fit:contain; display:block; margin-left:auto; margin-right:auto; }
.hero-product .carousel, .hero-product .carousel-inner, .hero-product .carousel-item{ height:100%; /*background:#f2f4f7;*/ }
.hero-product .badge{ letter-spacing:.01em; }
.hero-product .btn-hero{ border-radius:.5rem; box-shadow:0 1px 2px rgba(0,0,0,.05); }
.hero-product .hero-text{ /* max-width:520px; */ }
.hero-product .hero-title{ font-size: clamp(1.6rem, 3vw, 2.1rem); }
.hero-product .hero-text .btn-hero, .hero-product .hero-text .bt-hero{ align-self:flex-start; }
.hero-product .hero-photo{ position:relative; margin-left:auto; margin-right:auto; }
.hero-product .container{ max-width:1140px; height:100%; }
@media (min-width: 992px){
  .hero-product .row{ display:grid; grid-template-columns: 1fr 1fr; align-items:center; margin-left:0!important; margin-right:0!important; column-gap:24px; }
  .hero-product .row > [class*='col-']{ float:none; width:auto; padding:0 12px; }
  .hero-product .img-col{ justify-self:center; }
}
.hero-product .hero-photo .offer-badge{ position:absolute; top:10px; left:10px; box-shadow:0 2px 6px rgba(0,0,0,.12); }
.hero-product .carousel-indicators{
  position:absolute; left:0; right:0; bottom:-58px;
  margin:0 auto; padding:0; justify-content:center; gap:0;
}
.hero-product .carousel-indicators [data-bs-target]{
  width:8px !important; height:8px !important; border-radius:50% !important;
  padding:0 !important; margin:0 4px !important; border:0 !important;
  background-color:#c6c6c6 !important; opacity:.8; box-shadow:none !important;
}
.hero-product .carousel-indicators .active{ background-color:#111 !important; opacity:1; }
.hero-product .carousel-control-prev-icon, .hero-product .carousel-control-next-icon{ filter: invert(20%); }
.hero-product .container{ padding-top: 0; padding-bottom: 0; }

/* Overrides de tema y estilos de badges */
:root{--bg:#FBFBFB; /* fondo gris muy claro pedido */
  --muted:#585f6a; /* gris frío */
  --pill-bg:#eef2f6; /* gris claro moderno */
  --radius:0.6rem; /* radio general menor */
  --tile-radius:0.5rem; /* radio para badges cuadrados */

--nav-h:64px; /* altura aprox. de navbar sticky */
}

/* Badges cuadrados con ícono grande */
.badge-tile{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  font-weight:700;
  font-size:1.05rem;
  padding:.9rem 1.1rem;
  border:1px solid #e4e7ec;
  background:#fff;
  border-radius:var(--tile-radius);
  box-shadow: 0 1px 1px rgba(16,24,40,.04);
}
.badge-tile .bi{
  font-size:1.6rem; /* icono más grande */
  line-height:1;
  color:var(--brand);
}

/* Estilo inspirado en Axis para sección de badges */
.badges-offer .service-item{
  background:#fff;
  border:1px solid #e4e7ec;
  border-radius: .6rem;
  padding: 1.25rem 1rem;
  box-shadow: 0 1px 1px rgba(16,24,40,.04);
  transition: transform .2s ease, box-shadow .2s ease;
}
.badges-offer .service-item:hover{
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(16,24,40,.08);
}
.badges-offer .service-icon{
  width:64px; height:64px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  margin: 0 auto .5rem auto;
  background:#f2f4f7; color:var(--brand);
}
.badges-offer .service-icon .bi{ font-size:1.8rem; }
.badges-offer h3{ font-size:1.05rem; margin: .25rem 0 0; font-weight:800; }

/* Badges grandes con iconos */
.badge-pill-lg{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  font-size:1rem; /* un poco más grande */
  padding:.8rem 1.2rem;
}
.badge-pill-lg .emoji{
  font-size:1.25rem; /* icono ligeramente más grande */
  line-height:1;
}


