:root {
  --bs-font-sans-serif: 'Lato', sans-serif;
  --bs-link-color: #bc1c5fff;
  --bs-link-hover-color: #bc1c5fff;
  --bs-body-bg: #f2f2f2;
  --bs-dark-rgb: 17, 17, 17;
  --bs-dark-rgb-lite: 23, 23, 23;
  --bg-body: #f2f2f2;
  --bs-light-rgb: 242, 242, 242;
  --navbar-height: 100px;
  --navbar-height-slim: 40px;
}

a:not([class]) {
  text-decoration: none;
}

.logo-brand img,
.logo-brand object {
  max-height: 100%;
  width: auto;
  pointer-events: none;
}

.navbar {
  --bs-navbar-color: rgba(0, 0, 0, 0.95);
  --bs-navbar-hover-color: rgba(0, 0, 0, 1);
  --bs-navbar-toggler-focus-width: 0;
  --bs-navbar-nav-link-padding-x: 1.5rem;
}

.navbar-height {
  height: var(--navbar-height);
}

.navbar-height-slim {
  height: var(--navbar-height-slim);
}

.navbar-dark {
  --bs-navbar-color: rgba(255, 255, 255, 0.9);
  --bs-navbar-hover-color: rgba(255, 255, 255, 1);
}



.btn-primary {
  --bs-btn-bg: transparent;
  --bs-btn-border-color: var(--bs-link-color);
  --bs-btn-hover-bg: rgb(var(--bs-dark-rgb-lite));
  --bs-btn-hover-border-color: var(--bs-link-color);
  --bs-btn-active-bg: rgb(var(--bs-dark-rgb-lite));
  --bs-btn-active-border-color: rgb(var(--bs-dark-rgb-lite));
  transition: transform 0.3s ease;
}

.btn-dark {
  transition: transform 0.3s ease;
}

.btn-primary:hover,
.btn-dark:hover {
  transform: scale(1.2);
}
/* ===== HEADER EDITORIAL OVERLAY ===== */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}

#navbar_top {
  pointer-events: auto;
  height: var(--navbar-height);
  background: transparent;
  transition: 
    background-color 0.4s ease,
    height 0.3s ease,
    box-shadow 0.3s ease;
  pointer-events: auto;
}

/* Cuando scrolleas */
#navbar_top.navbar-scrolled {
  background: rgba(0, 0, 0, 0.92);
  backdrop-filter: blur(10px);
  height: 70px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}

#bolsa_khimera {
  padding-top: 100px;
}

/* Links del navbar cuando se hace scroll */
#navbar_top.navbar-scrolled .nav-link {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Hover elegante */
#navbar_top.navbar-scrolled .nav-link:hover {
  color: #ffffff !important;
}

/* Link activo (ej. Conócenos) */
#navbar_top.navbar-scrolled .nav-link.active,
#navbar_top.navbar-scrolled .nav-link[aria-current="page"] {
  color: #bc1c5f !important;
}

/* FORZAR COLOR DE LINKS AL SCROLLEAR */
#navbar_top.navbar.navbar-dark.navbar-scrolled .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.95);
}

#navbar_top.navbar.navbar-dark.navbar-scrolled .navbar-nav .nav-link:hover {
  color: #ffffff;
}

/* Link activo */
#navbar_top.navbar.navbar-dark.navbar-scrolled .navbar-nav .nav-link.active,
#navbar_top.navbar.navbar-dark.navbar-scrolled .navbar-nav .nav-link[aria-current="page"] {
  color: #bc1c5f;
}

/* ===== FORZADO FINAL COLORES NAVBAR ===== */

/* Todos los links del menú */
#navbar_top .navbar-nav > li > a.nav-link {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* Hover */
#navbar_top .navbar-nav > li > a.nav-link:hover {
  color: #ffffff !important;
}

/* Botón Contáctanos */
#navbar_top .btn-primary {
  color: #bc1c5f !important;
  border-color: #bc1c5f !important;
}

/* ===== BOTÓN CONTACTANOS ROSA SIEMPRE ===== */
#navbar_top .btn-primary {
  color: #bc1c5f !important;
  border-color: #bc1c5f !important;
  background: transparent !important;
}

#navbar_top .btn-primary:hover {
  background: rgba(189, 54, 111, 0.1) !important;
  transform: scale(1.08);
}

#navbar_top .btn-primary {
  color: #bc1c5f !important;
  border-color: #bc1c5f !important;
  background: transparent !important;
}

/* ===== FIX DEFINITIVO BOTÓN CONTACTANOS ===== */
#navbar_top .btn-primary,
#navbar_top.navbar-scrolled .btn-primary {
  --bs-btn-color: #bc1c5f !important;
  --bs-btn-border-color: #bc1c5f !important;
  --bs-btn-hover-color: #bc1c5f !important;
  --bs-btn-hover-border-color: #bc1c5f !important;
  --bs-btn-bg: transparent !important;
  --bs-btn-hover-bg: rgba(189, 54, 111, 0.1) !important;

  color: #bc1c5f !important;
  border-color: #bc1c5f !important;
  background: transparent !important;
}
/* ===== CONTÁCTANOS ROSA SIEMPRE ===== */
#navbar_top .nav-link.link-primary {
  color: #bc1c5f !important;
  font-weight: 600;
}

/* Hover elegante */
#navbar_top .nav-link.link-primary:hover {
  color: #d63a7d !important;
}

#navbar_top .nav-link.link-primary {
  border: 1px solid #bc1c5f;
  padding: 0.4rem 0.9rem;
}
/* ===== CONTÁCTANOS ROSA REAL (BOOTSTRAP FIX) ===== */
#navbar_top .nav-link.link-primary {
  --bs-nav-link-color: #bc1c5f;
  --bs-nav-link-hover-color: #d63a7d;
  color: #bc1c5f !important;
  border: 1px solid #bc1c5f;
  padding: 0.4rem 0.9rem;
  font-weight: 600;
}
#navbar_top.navbar-scrolled .nav-link.link-primary {
  background: rgba(188, 28, 95, 0.08);
}

#navbar_top .navbar-nav > li > a.nav-link.link-primary {
  color: #bc1c5f !important;
}


/* Parallax */
.parallax-1 {
  padding-top: 100px;
}

.parallax-romanticismo {
  min-height: 80vh;
  background-image: url("../img/Bolsa_de_mano_para_mujer.webp");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;

  display: flex;
  align-items: flex-end;
}

/* CONTENEDOR DEL TEXTO */
.parallax-content {
  width: 100%;
  padding: 2rem 3rem;
  background: rgba(0, 0, 0, 0.55);
}

/* TEXTO */
.parallax-content h1 {
  margin: 0;
  color: #ffffff;
  font-weight: 300;
  letter-spacing: 0.05em;
}


.parallax-romanticismo {
  position: relative;
  z-index: 1;
}



.parallax-modelos {
  background-image: url("../img/Bolsas_de_mano_para_mujer.webp");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  min-height: 80vh;
  padding: 120px 0;
}


#parallax-2 {
  padding-top: 150px;
  padding-bottom: 150px;
  background: url("../img/Cobertura-Brentara.webp");
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/********/


.text-primary,
.link-primary {
  color: var(--bs-link-color) !important;
}

.link-primary:hover {
  color: var(--bs-link-hover-color) !important;
}

.bg-dark-lite {
  background-color: rgb(var(--bs-dark-rgb-lite));
}

.opacity-92 {
  opacity: 0.92;
}
.bg-opacity-92 {
  opacity: 0.92;
}

.phone {
  color: var(--bs-link-color);
}

/* Fix font awesome */
.fa-xs {
  vertical-align: 0;
}

/* Extra */
.width-30 {
  width: 30px;
}

.container-xl {
  --bs-gutter-x: 0;
}

.z-index-1 {
  z-index: 1;
}

.text-shadow {
  text-shadow: 0 0.25rem 0.5rem rgb(178, 39, 39), 0 1rem 1.5rem rgba(57, 157, 70, 0.982);
}

w

/* Carousel */
.carousel-item img {
  max-height: 460px;
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: auto;
}

#List-1.list-group {
  --bs-list-group-bg: transparent;
  --bs-list-group-border-color: none;
  --bs-list-group-active-bg: transparent;
  --bs-list-group-active-border-color: transparent;
  --bs-list-group-border-radius: 0;
  --bs-list-group-item-padding-y: 1rem;
}

.list-group-item-action {
  color: rgba(255, 255, 255, 0.2);
}

#List-1 .list-group-item {
  border-top: 3px solid rgba(255, 255, 255, 0.2);
}

#List-1 .list-group-item.active {
  border-color: rgba(255, 255, 255, 1);
}


/* Boxes */
.proteccion-box,
.featured-box {
  overflow: hidden;
  position: relative;
  min-height: 460px;
  height: auto;
}

.featured-box {
  min-height: 390px;
}

.proteccion-box {
  position: relative;
  overflow: hidden;
  min-height: 460px;
}

/* Imagen base */
.bolsa-base {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: opacity 0.6s ease, transform 0.8s ease;
}

/* Imagen editorial hover */
.bolsa-hover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.9s ease;
  transform: scale(1.03);
}

/* Texto */
.overlay-texto {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 3;
}

/* Hover effects */
.proteccion-box:hover .bolsa-base {
  opacity: 0;
  transform: scale(0.98);
}

.proteccion-box:hover .bolsa-hover {
  opacity: 1;
  transform: scale(1);
}

.proteccion-box:hover .overlay-texto {
  opacity: 1;
}



.proteccion-box {
  position: relative;
  overflow: hidden;
}

.proteccion-box:hover .overlay {
  opacity: 1;
  transform: scale(1);
}



.proteccion-box h3,
.featured-box h3,
.proteccion-box p,
.featured-box p {
  position: relative;
  z-index: 1;
  transition: color 0.5s ease-out;
}

/***** MODELOS GRID *****/

.modelo-card {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  border-radius: 18px;
  cursor: pointer;
  background: #f7f7f7;
}

/* ambas imágenes */
.modelo-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}


/* imagen principal visible */
.modelo-img.base {
  opacity: 1;
}

/* imagen hover oculta */
.modelo-img.hover {
  opacity: 0;
  transform: scale(1.05);
}

/* hover effect */
.modelo-card:hover .modelo-img.base {
  opacity: 0;
}

.modelo-card:hover .modelo-img.hover {
  opacity: 1;
  transform: scale(1);
}

/* texto overlay */
.modelo-overlay {
  position: absolute;
  inset: 0;
  z-index: 3;
  background: rgba(255, 255, 255, 0.85); /* fondo suave */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  transition: opacity 0.4s ease;
  padding: 2rem;
}


.modelo-card:hover .modelo-overlay {
  opacity: 1;
}

.modelo-overlay h3 {
  color: #8b1e3f; /* rosa editorial */
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.modelo-overlay p {
  color: #333;
  font-size: 0.95rem;
}
.modelo-card:hover .modelo-overlay {
  opacity: 1;
}

.proteccion-box:hover h3,
.featured-box:hover h3,
.proteccion-box:hover p,
.featured-box:hover p {
  color: #a42222;
}

.proteccion-box .proteccion-box-content,
.featured-box .proteccion-box-content {
  height: 100%;
  overflow: auto;
}

/* Firma */
#firma .img-fluid,
#english .img-fluid {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

/* Contacto */
#contacto::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 6rem;
  width: 100%;
  background-color: var(--bg-body);
}

#contacto .img-fluid {
  object-fit: cover;
  height: 100%;
  width: 100%;
  position: relative;
  z-index: 1;
}

.gavel {
  display: inline-block;
  background-color: rgb(var(--bs-light-rgb));
  position: absolute;
  top: -1.5rem;
  left: 50%;
  transform: translateX(-50%);
}


.bg-shield::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../img/shield.svg");
  background-size: cover;
  background-blend-mode: lighten;
  background-position: center top;
}

.badge-alt {
  position: absolute;
  font-size: 90%;
  top: 50%;
  transform: translateY(-50%);
}

.call-code {
  max-width: 140px;
}

.transition-all {
  transition: all 0.6s ease;
}

@media (min-width: 992px) {
  .logo-brand.navbar-height {
    padding-top: 0.25rem;
    padding-bottom: 1.1rem;
  }

  .logo-brand.navbar-height-slim {
    margin: 0.5rem 0;
  }

  .nav-link::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 1px;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    background-color: var(--bs-link-color);
    transition: all .3s;
  }

  .nav-link:hover::after {
    width: calc(100% - 3rem);
  }

  .h-300 {
    min-height: 300px;
  }
}

@media (max-width: 991.98px) {

  :root {
    --navbar-height: 50px;
  }

  .logo-brand.navbar-height {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }

  .navbar-toggler {
    border: 0;
  }

  .navbar {
    --bs-navbar-padding-y: 0;
  }

  /*
  .navbar-collapse {
    background-color: rgb(var(--bs-dark-rgb-lite));
  }
*/

  .dropdown-menu {
    border-radius: 0;
  }

  .dropdown-menu-p {
    padding: 1rem 1.5rem;
  }

  .carousel-lite-item img {
    height: calc(270px + var(--navbar-height));
  }

  .parallax-1 {
    height: 360px;
  }

  #parallax-2 {
    padding-top: 100px;
    padding-bottom: 100px;
    min-height: 300px;
  }

  .h-300 {
    min-height: 240px;
  }
}


@media (max-width: 768px) {
  #header-carousel .carousel-item {
    position: relative;
    min-height: 450px;
  }

  #header-carousel .carousel-item img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

@media (min-width: 768px) {
  .position-absolute-lg {
    position: absolute;
  }
}


@media (max-width: 767.98px) {
  .bg-transparent-sm {
    background-color: transparent !important;
  }

  .shadow-lg {
    box-shadow: none !important;
  }

  .text-light-sm {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
  }

  .text-white-sm {
    color: #fff !important;
  }
}
.site-header,
#navbar_top {
  z-index: 999999 !important;
}



