@charset "utf-8";
/* === BÁSICOS === */
*{
	padding: 0;
	margin: 0;
}
body{
    font-family: "Poppins", sans-serif;
}
header{
    position:relative;
    
}
header.header-absolute {
    position: absolute;
    z-index:100;
	width: 100%;
}
nav{
	
}
main{
	
}
article{
	
}
aside{
	
}
footer{
	
}
.head_a{
	
}
.head_b{
  
}
.sub-head-a{
	/*background-color: #C6C3C3;*/
	padding: 3px 0;
}
.head_b-color{
 
}
.fijo{
	position:fixed; top:0; z-index: 5000;
	background: rgba(0, 0, 0, 0.9); /* Fondo inicial */
    transition: background 0.5s ease; /* Transición suave para el fondo */
}
/* === REDES SOCIALES CABECERA === */
.red-soc-top{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
}
.red-soc-top li{
	border-radius: 50%;
	width: 28px;
	height: 28px;
	display: flex;
	flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
	background: #FFFFFF;
	margin: 0 5px;
}
.red-soc-top li a{
	color: #000000;
	font-size: 0.9rem;
	text-decoration: none;
    display:flex;
}
/* === REDES SOCIALES FOOTER === */
.red-soc-foot{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
}
.red-soc-foot li{
	border-radius: 50%;
	
	
	background: #FFFFFF;
	margin: 0 5px;
}
.red-soc-foot li a{
	color: #000000;
	font-size: 0.9rem;
	text-decoration: none;
    width: 28px;
	height: 28px;
    display: flex;
	flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
/* === LOGO TOP === */
.ac-cont-logo-top{
	display: flex;
	max-width: 280px;
}
/* === BOTONES TOP === */
.ac-btn-top{
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	justify-content:flex-end;
	align-items: center;
    gap: 5px;
}
.ac-btn-top li{
	background: #DFE8ED;
	border-radius: 4px;
}
.ac-btn-top a{
	text-decoration: none;
	text-align: center;
	padding: 5px 15px;
	display: block;
}
.ac-btn-top .ac-btn-title{
	font-size: 0.85rem;
	color:#000000;
}
.ac-btn-top .ac-btn-desc{
	font-size: 0.8rem;
	color:#C6C3C3;
}
#cont_slider{
background:#FFFFFF;
position:relative;
}  
#ac-cont-certificacion{
 position:absolute;
 z-index:1000;
 bottom:0;
 left:0;
}
#btns-bottom-slider{
position: absolute;
	z-index: 200;
	bottom: 0;
	width: 100%;
}
#btns-bottom-slider ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: center;
	gap: 20px; /* espacio entre botones */
}
/* El slider como referencia */
#sliderPrincipal {
    position: relative;
}
/* Overlay solo 30% superior */
#sliderPrincipal::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40%;   /* 👈 30% del ALTO del slider */
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.75) 0%,
        rgba(0, 0, 0, 0.6) 55%,
        rgba(0, 0, 0, 0) 100%
    );
    z-index: 2;
    pointer-events: none; /* no bloquea botones */
}
/* Ajustes de capas */
#sliderPrincipal .carousel-inner {
    position: relative;
    z-index: 1;
}
#sliderPrincipal .carousel-control-prev,
#sliderPrincipal .carousel-control-next,
#sliderPrincipal .carousel-caption {
    z-index: 3;
}
.num-popup_a{
	 border-radius:50%;
	 background:#0D83FD;
	 width:25px;
	 height:25px;
	 color:#ffffff;
	 display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    font-size:0.8rem;
}
/* === PIE DE PÁGINA === */
.ac-footer-title{
  font-size: 0.9rem;
  color: #FFFFFF;
  margin-bottom: 20px;
  padding-bottom: 8px;   /* espacio para el borde */
  position: relative;
    font-weight:500;
  
}
.ac-footer-title::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;        /* 🔑 pegado a la izquierda */
  width: 50%;     /* 50% del ancho */
  height: 1px;
  background: #FFFFFF;
}
.ac-footer-important{
 list-style:none;
 padding:0;
 margin:0;
}
.ac-footer-important li{
    
}
.ac-footer-important li a{
    text-decoration:none;
    color:#FFFFFF;
    font-size:0.8rem;
}
/* === FIN BÁSICOS */
/* Extra pequeño (teléfonos muy pequeños) */
@media (max-width: 360px) { }
/* Teléfonos pequeños */
@media (max-width: 480px) { }
/* Teléfonos "normales" */
@media (max-width: 576px) { }
/* Tablets vertical */
@media (max-width: 768px) { }
/* Tablets horizontal / pantallas medianas */
@media (max-width: 992px) { }
/* Laptops / pantallas grandes */
@media (max-width: 1200px) { }
/* Monitores extra grandes */
@media (max-width: 1400px) { }