html{
	scroll-behavior: smooth;
}

.hero-m{
	margin-top: 100px;
}

@font-face {
  font-family: 'sinkregular';
  src: url('../fonts/sink-webfont.woff2') format('woff2'),
       url('../fonts/sink-webfont.woff') format('woff');  
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

.navbar-logos {
  display: flex;
  align-items: center;
  gap: 12px; /* espacio entre logo y separador */
}

.logo-divider {
  width: 2px; /* grosor */
  height: 32px; /* o "100%" si querés que abarque todo */
  background-color: #006466;
}

.module {
  opacity: 0;
  transform: translateY(50px);
}

.dm-sans-<uniquifier> {
  font-family: "DM Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6{	
	font-family: "sinkregular";
}

p, li, a{	
	font-family: "DM Sans";
	color: #353535;
}

.btn-flotante{
	position: fixed;
	right: 25px;
	bottom: 25px;
	z-index: 9;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}

#hero-home{
	position: relative;
}

.hero-content-home{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

footer{
	background-color: #006466;
	padding: 40px 20px;
}

.logo-semana21-footer{
	max-height: 40px;
}

.logo-siglo21-footer{
	max-height: 40px;
}

.bottom-footer{
	background-color: #005656;
	padding: 10px 20px;
}

.bottom-footer p {
	color: #fff;
	text-align: center;
	margin-bottom: 0;
}

.cstm-ta-1{
	text-align: right;
}

.fullscreen-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../../imagenes/fondo-menu.webp') no-repeat center center/cover;
  background-size: contain;
  background-repeat: repeat;
  background-position: top center;
  display: flex;
  flex-direction: column;
  z-index: 9999;
  overflow-y: auto;
}

.fullscreen-menu .nav-link {
  max-width: 300px;
  font-family: "sinkregular";
  font-size: 4em;
  color: #353535;
  text-transform: uppercase;
  line-height: 0.8;
}

.lh-0 {
    line-height: 0.4 !important;
    margin-top: 20px;
}
.fullscreen-menu .nav-link span{
	font-size: 25px;
}

.menu-header {
  padding: 40px 40px 0 40px;
}

.btn-close-menu {
  background: none;
  border: none;
  font-size: 3.5rem;
  line-height: 1;
  color: #006466;
}

.menu-logo{
	max-height: 50px;
}

.navbar-toggler {
  border: none; 
  box-shadow: none !important;
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgb(0,100,102)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.section-nav{
	background-color: #fff6f5;
	position: fixed;
	z-index: 999;
	width: 100%;
	top: 0;
	min-height: 100px;
	display: flex;
	align-items: center;
}

a.cstm-btn-0 {
    padding: 8px 25px;
    background-color: #006466;
    border-radius: 100px;
    display: inline-block;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    border: 0;
    font-family: 'Dm Sans';
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: 4px;
    transition: color 0.8s ease;
    position: relative;
    z-index: 2;
    margin: 0 20px;
    display: inline-flex;
    align-items: center; /* centra verticalmente */
    justify-content: center; /* centra horizontalmente */
    gap: 8px; /* espacio entre texto e imagen */
}

a.cstm-btn-0::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #fff; 
  opacity: 0;
  transition: opacity 0.8s ease;
  border-radius: 50px;
  border: 1px solid #fff;
  z-index: -1;
}

a.cstm-btn-0 {
  color: #fff;
}

	
a.cstm-btn-0:hover::before {
  opacity: 1;
}

a.cstm-btn-0:hover {
  color: #006466;
}

.cstm-btn-0 img {
  display: block; 
}

a.btn-menu-ins{
	margin-top: 20px;
	font-size: 25px;
}

.flecha-btn-0{
	height: 25px;
}

.menu-logo-1{
	height: 35px;
}

.menu-logo-2{
	height: 30px;
	margin-left: 20px;
}

.logo-semana21-top{
	height: 35px;
}

.logo-semana21-top-menu{
	height: 50px;
	margin-bottom: -50px;
}

a.cstm-btn-1{
	padding: 15px 35px;
	background-color: #fff;
	border-radius: 100px;
	display: inline-block;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	margin-top: 20px;
	border: 0;
	font-family: 'Dm Sans';
	font-size: 25px;
	font-weight: 700;
	text-decoration: none;
	letter-spacing: 5px;
  transition: color 0.8s ease;
  position: relative;
  z-index: 2; 
}

a.cstm-btn-1::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #008080; 
  opacity: 0;
  transition: opacity 0.8s ease;
  border-radius: 50px;
  border: 1px solid #008080;
  z-index: -1;
}

	
a.cstm-btn-1:hover::before {
  opacity: 1;
}

a.cstm-btn-1:hover {
  color: #fff;
}


.flecha-btn{
	height: 33px;
	padding-bottom: 5px;
}

.marquee {
  width: 100%;
  overflow: hidden;
  background: #149d8e;
  padding: 5px 0;
  margin-top: -6px;
}

.marquee-content {
  display: inline-block;
  white-space: nowrap;
  font-size: 1rem;
  animation: marquee 30s linear infinite;
}

.marquee-content span {
  margin-right: 1rem;
  color: #ffe3e0;
  letter-spacing: 1px;
  font-family: "sinkregular";
  font-size: 35px;

}



@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); } /* sin saltos, loop continuo */
}

.content-home-1{
	padding: 80px 20px 0px 20px;
}

.forma-1{
	width: 50%;
	margin-bottom: -30px;
}

.cstm-box-1 {
  background-color: #ffefee;
  padding: 80px 30px 15px 30px;
  position: relative;
  border-radius: 30px;
  z-index: 2;
  height: 100%;
}

.icono-ejes{
	position: absolute;
	max-height: 50px;
	right: 30px;
	top: 30px;
}

.cstm-box-1 h3{
	font-size: 45px;
	line-height: 1.1;
}

.cstm-box-1 p{
	line-height: 1.2;
}

.cstm-title-1{
	color: #006466;
}

.cstm-title-2{
	color: #b61979;
}

.cstm-title-3{
	color: #e29509;
}

.cstm-title-4{
	text-align: center;
	font-size: 60px;
	margin-bottom: 50px;
}

.cstm-m-1{
	margin: 50px 0 80px 0;
}

.content-home-2{
	background-image: url("../../imagenes/bg-img-slider-home.webp");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
	padding: 120px 20px;
	position: relative;
}

.forma-2{
	position: absolute;
	left: 0;
	top: 70%;
	max-height: 200px;
}

.forma-3{
	position: absolute;
	right: 0;
	top: 95%;
	max-height: 200px;
	z-index: 3;
}

.max-w-900{
	max-width: 900px;
	margin: 0 auto;
}

.cstm-text-1{
	font-size: 40px;
	letter-spacing: 2px;
	color: #fff;
}

.p-relative{
	position: relative;
}

.forma-4{
	position: absolute;
	top: -70px;
	right: -50px;
	height: 100px;
}

.carousel-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  width: 100%;
  height: 400px;
}

.carousel-track {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.carousel-item {
  position: absolute;
  left: 50%;               /* Siempre parten desde el centro */
  transform: translateX(-50%) scale(0.7); 
  border: 2px solid #fff;
  border-radius: 30px;
  overflow: hidden;
  opacity: 0.6;
  transition: transform 0.5s, opacity 0.5s;
  display: block;
  width: 320px; 
  height: 320px;
}

.carousel-item img {
  display: block;
  width: 100%;   
  height: auto;
}

.carousel-arrow {
  background: none;
  border: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
}

.carousel-arrow img {
  width: 40px;
  height: 40px;
}

.carousel-arrow.prev { left: 20px; }
.carousel-arrow.next { right: 20px; }

.carousel-item.active {
  opacity: 1;
  transform: scale(1);
  z-index: 5;
}

.carousel-item .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.6) 30%, rgba(0,0,0,0) 100%);
  z-index: 1;
  pointer-events: none;
}


.content-home-3{
	background-image: url("../../imagenes/bg-img-estudiante.webp");
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 80px 20px;
	position: relative;
}

.btn-youtube-solo{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.btn-youtube-solo img {
	max-height: 80px;
}

.flecha-amarilla{
	max-height: 80px;
	margin-right: 25px;
}

.btn-youtube{
	max-height: 200px;
}

.cstm-a-1{
	text-align: right;
}

.cstm-title-5{
	font-family: "DM Sans";
	color: #fff;
	font-size: 40px;
	line-height: 1.1;
	font-weight: 300;
}

.cstm-title-5 span{
	font-weight: 700;
}

.cstm-p-1{
	display: flex;
	align-items: center;
}

.content-inspira21-0{
	background-color: #fff;
	padding: 80px 20px;
}

.content-inspira21-0 p{
	color: #353535;
}

.content-inspira21-0 h2{
	color: #353535;
	text-transform: uppercase;
}

.logo-dinnova{
	max-height: 200px;
}

.content-inspira21-1{
	background-color: #008080;
	padding: 80px 20px;
}

.cstm-title-6{
	color: #fff;
	font-size: 45px;
	line-height: 1;
	text-transform: uppercase;
}

.cstm-txt-1{
	color: #fff;
}

.logo-inspira21{
	max-height: 275px;
}

.logo-rally-creativo{
	max-height: 275px;
	padding: 20px;
}

.logo-estar-de-moda{
	max-height: 350px;
}

.sombra-1{
	position: absolute;
	right: -25px;
	top: 50%;
	transform: translate(-50%, -50%);
}

.p-relative{
	position: relative;
}

.content-inspira21-2{
	background-color: #b61979;
	padding: 80px 20px;	
	position: relative;
}

.forma-5 {
    position: absolute;
    right: 0;
    top: -50px;
    max-height: 165px;
}	

.forma-6 {
    position: absolute;
    left: 0;
    top: -80px;
    max-height: 170px;
}

.logos-ausp-rally{
	max-height: 40px;
	margin-top: 35px;
	margin-bottom: 20px;
}

.content-inspira21-3{
	background-color: #e29509;
	padding: 80px 20px;	
	margin-top: -2px;
}

.thumb-wrapper {
  width: 100%;
  aspect-ratio: 1 / 1;        
  border-radius: 30px;
  overflow: hidden;            
}

.thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;      
  transition: transform 0.3s;
  cursor: pointer;
}

.thumb:hover {
  transform: scale(1.05); 
}

.cstm-m-2{
	margin: 50px 0;
}

.fotosModaSwiper{
	margin-top: 50px;
}

.content-feria21-1{
	padding: 80px 20px;
}

.bajada-feria-21{
	margin-left: -50px;
}

.cstm-box-3{
	margin: 50px 0 100px 0;
	padding: 40px;
	border-radius: 30px;
	position: relative;
	background-color: #ffefee;
}

.cstm-box-3 p{
	font-size: 18px;
	font-weight: 700;
}

.forma-7{
	position: absolute;
	top: -20px;
	max-height: 60px;
	left: 100px;
	z-index: -1;
}

.sombra-2 {
    position: absolute;
    bottom: -100px;
    left: 0;
    z-index: -1;
    mix-blend-mode: multiply;
    opacity: 0.6;
}

.sombra-3 {
    position: absolute;
    bottom: -75px;
    left: 0;
    z-index: -1;
    mix-blend-mode: multiply;
    opacity: 0.6;
}

.swiper.mySwiper2 {
  overflow: visible;
  padding: 30px 15px;
  padding: 30px 15px;
  height: 400px; /* alto fijo */
}

  .swiper-slide {
  display: flex;
  flex-direction: column;
  height: 100%; /* se ajusta al contenedor */
}

.mySwiper2 .card-slide {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  display: flex;
  flex-direction: column;
  height: 100%;
}


.mySwiper2 .card-slide img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  object-position: top;
  display: block;
}

.mySwiper2 .card-text {
  padding: 25px 30px;
  font-size: 1rem;
  line-height: 1.4;
  flex-grow: 1;       /* ocupa todo el espacio disponible */
  display: flex;       /* para centrar el texto */
  align-items: center;
  justify-content: center;
	color: #fff;
	line-height: 1.2;
	font-family: "DM Sans", sans-serif;
}

/* Contenedor de flechas abajo */
  .swiper-controls {
    display: flex;
    gap: 15px;
    margin-top: 15px;
    margin-left: 15px; /* alineado a la izquierda */
  }

  /* Botones personalizados */
  .swiper-button-prev,
  .swiper-button-next {
    position: static; /* para que no queden sobre el carrusel */
    width: 40px;
    height: 40px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
    background-color: transparent !important;
  }

  .swiper-button-prev {
    background-image: url("../../imagenes/flecha-slider-feria21.webp");
    filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
  }

  .swiper-button-next {
    background-image: url("../../imagenes/flecha-slider-feria21.webp");
    transform: rotate(180deg);      
      filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
  }

  /* Ocultar pseudo-elementos default de Swiper */
  .swiper-button-prev::after,
  .swiper-button-next::after {
    display: none;
  }

.cstm-title-7{
	border-left: 15px solid #b61979;
	padding-left: 40px;
	font-size: 65px;
	text-transform: uppercase;
	line-height: 1;
}

.slide-feria-1{
	background-color: #006466;
}

.slide-feria-2{
	background-color: #b61979;
}

.slide-feria-3{
	background-color: #e29509;
}

.slide-feria-4{
	background-color: #008080;
}

.slide-feria-5{
	background-color: #149d8e;
}

.content-feria21-2{
	background: url('../../imagenes/fondo-menu.webp') no-repeat center center/cover;
	background-size: cover;
	background-position: top center;
	padding: 100px 0;
}

.content-ciencia21-1{
	padding: 80px 20px;
}

.cstm-box-4 {
  background-color: #fff6f5;
  border-radius: 20px;
  padding: 40px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center; /* opcional, centra mejor el texto */
  transition: background-color 0.8s, padding 0.8s, transform 0.8s;
}

.cstm-box-4 p {
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 0;
  text-align: center;
  transition: color 0.8s; /* transición suave del color */
}

/* Hover en el cuadrado afecta también al texto */
.cstm-box-4:hover {
  background-color: #008080;
  padding: 40px;
}

.cstm-box-4:hover p {
  color: #fff;  
  font-weight: 600;
}

.cstm-box-6{
	max-width: 750px;
	margin: 50px auto 50px auto;
	background: #FFF;
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(229, 229, 229, 1) 100%);
	border-radius: 30px;
	padding: 50px;
	position: relative;
	text-align: center;
}

.cstm-title-8{
	font-size: 55px;
	font-family: 'sinkregular';
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 0;
	color: #353535;
}

.cstm-title-9{
	display: inline-block;
	padding: 0 15px;
	line-height: 1.2;
	border-radius: 20px;
	background-color: #b61979;
	color: #fff;
	text-transform: uppercase;
	font-size: 70px;
	font-family: 'sinkregular';
	text-align: center;
	margin-bottom: 0;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
}

.cstm-title-10{
	font-size: 25px;
	text-align: center;
	margin-bottom: 0;
	line-height: 1;
	color: #353535;
	margin-top: 20px;
}

.cstm-box-7{
	padding: 50px;
	background-image: url('../../imagenes/bg-cont-ciencia-21.webp');
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	position: relative;
	margin-top: 80px;
	border-radius: 30px;
}

.forma-8{
	position: absolute;
	top: -80px;
	left: -80px;
	max-height: 150px;
}

.cstm-box-8{
	padding: 50px;
	height: 100%;
	background-color: #006466;
	position: relative;
	 border-radius: 30px;
}

.icono-ciencia{
	position: absolute;
	top: 25px;
	right: 25px;
	max-height: 40px;
}

.cstm-txt-2{
	margin-bottom: 0;
	color: #fff;
	font-size: 18px;
	line-height: 1.1;
	max-width: 90%;
}

.cstm-m-3{
	margin-top: 35px;
}

.cstm-m-4{
	margin: 35px 0;
}

.cstm-box-9{
	padding: 50px;
	height: 100%;
	background-color: #e29509;
	position: relative;
	 border-radius: 30px;
}

.cstm-box-10{
	padding: 50px;
	height: 100%;
	background-color: #149d8e;
	position: relative;
	 border-radius: 30px;
}

.cstm-box-11{
	padding: 50px;
	height: 100%;
	background-color: #b61979;
	position: relative;
	 border-radius: 30px;
}

.cstm-box-8,
.cstm-box-9,
.cstm-box-10,
.cstm-box-11 {
  display: flex;
  align-items: center;      
  height: 100%;
}

.cstm-title-12{
	font-size: 55px;
	line-height: 1;
	text-transform: uppercase;
}

.cstm-title-12 span{
	color: #14a798;
}

.cstm-txt-3{
	font-weight: 700;
}

.listado-posters{
	margin-top: 50px;
}

.listado-posters .filter-buttons{
	margin-bottom: 50px;
}

.listado-posters .filter-buttons button {
    background-color: #fff6f5;
    border: 0;
    border-radius: 5px;
    padding: 6px 10px;
    margin-bottom: 15px;
    margin-left: 15px;
}

.listado-posters .filter-buttons button.active-filter {
  background-color: #006466; 
  color: white;
}

.listado-posters  .item-box{
	margin-bottom: 40px;
}

.poster-carrera{
	margin-top: 15px;
	margin-bottom: 5px;
	font-size: 12px;
	line-height: 1.1;
}

.poster-title{
	margin-bottom: 5px;
	line-height: 1.1;
}

.listado-posters a {
  text-decoration: none !important;
}

.poster-autor{	
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.1;
}

.listado-posters .item-box img {
	max-height: 240px;
}

.countdown {
  display: flex;
  gap: 20px;
  justify-content: center;

}
.time-box {
  font-size: 4rem;
  font-weight: bold;
  position: relative;
  color: #fff;
}
.time-box span {
  display: block;
  font-size: 0.9rem;
  font-weight: normal;
  margin-top: 5px;
  border-top: 1px solid #fff;
  padding-top: 5px;
}

#minutes, #hours, #days{
    font-family: 'sinkregular';
    font-weight: 500;
    line-height: 1;
}

.separador-cuenta{
  font-family: 'sinkregular';
  display: block;
  font-size: 4rem;
  font-weight: normal;
  margin-top: -20px;
  color: #fff;
}

.cstm-title-13{
	display: inline-block;
	padding: 0 15px;
	line-height: 1.2;
	border-radius: 20px;
	background-color: #b61979;
	color: #fff;
	text-transform: uppercase;
	font-size: 5rem;
	font-family: 'sinkregular';
	text-align: center;
	margin-bottom: 20px;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
}

.cstm-title-14{
	text-align: center;
	color: #ffffff;
	font-size: 2.2rem;
	margin-bottom: 30px;
	font-weight: 700;
}

.cstm-box-2 {
  padding: 25px;
  border-radius: 30px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  background: #FFF;
  background: linear-gradient(270deg, rgba(255, 255, 255, 1) 0%, rgba(229, 229, 229, 1) 100%);
  max-width: 900px;
  margin: 0 auto;
  margin-top: -235px;
  margin-bottom: 50px;
}

.cstm-btn-2 {
  background-color: #fff;
  padding: 8px 20px;
  border-radius: 50px;
  display: inline-block;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  margin: 0 25px;
  text-decoration: none;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 700;
  display: inline-flex;
  align-items: center; 
  justify-content: center; 
  gap: 8px; 
}

.cstm-btn-2 img {
  display: block;
}

.flecha-btn-2 {
    height: 25px;
    float: right;
}

.logo-carrusel-home {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 110px;
    max-width: 74%;
    z-index: 2;
}

.logo-carrusel-home-2 {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 110px;
    max-width: 74%;
    z-index: 2;
}

.speakers{
	margin-bottom: 200px;
}

.speakers-card {
  width: 100%; 
  border-radius: 20px;
  background-size: cover;
  background-position: top center;
  position: relative;
}

.cadr-size-1{
  height: 420px;	
}

.cadr-size-2{
  height: 280px;	
}

/* PRIMERA FILA */
.speakers-simple .speakers-overlay {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 15px;
  background: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0));
  color: white;  
  border-radius: 0 0 20px 20px;
}

/* FLIP CARDS */
.speakers-flip {
  perspective: 1000px;
}

.speakers-flip .speakers-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.speakers-flip:hover .speakers-inner {
  transform: rotateY(180deg);
}

.speakers-front, .speakers-back {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-size: cover;
  background-position: center;
  backface-visibility: hidden;
}

.speakers-front .speakers-overlay {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 30px;
  background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
  color: white;
  border-radius: 0 0 20px 20px;
}

.speakers-back {
  transform: rotateY(180deg);
}

.speakers-overlay-full {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  padding: 20px;
  text-align: center;
  border-radius: 20px;
}

.speakers-card.speakers-flip {
  perspective: 1000px;
  border-radius: 20px;
}

.speakers-card.speakers-flip .speakers-inner {
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.8s;
  border-radius: 20px; /* mismo que el contenedor */
}

.speakers-nombre{
	color: #ffffff;
	font-family: 'sinkregular';
	font-size: 45px;
	text-transform: uppercase;
	line-height: 1;
	margin-bottom: 0;
}

.speakers-nombre-2{
	color: #ffffff;
	font-family: 'sinkregular';
	font-size: 30px;
	text-transform: uppercase;
	line-height: 1;
	margin-bottom: 0;
}

.speakers-descripcion{
	color: #ffffff;
	line-height: 1.1;
}

.content-grilla-1{
	padding: 80px 0;
}

.box-grilla {
	background-color: #f9eeed;
	border-radius: 30px;
	position: relative;
	padding: 35px;
}

.marcador-grilla {
    position: absolute;
    height: 35px;
    top: -8px;
    right: 35px;
}

.grilla-item-titulo{
	font-family: 'sinkregular';
	font-size: 30px;
	text-transform: uppercase;
	line-height: 1;
	margin-bottom: 15px;
}

.grilla-item-descripcion{
	line-height: 1.1;
	font-weight: 600;
	margin-bottom: 15px;
}

.grilla-item-fecha{
	line-height: 1.1;
	margin-bottom: 15px;
}

.grilla-item-speakers{
	line-height: 1.1;
	margin-bottom: 15px;
}

a.btn-item-grilla{
	text-align: center;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 4px;
	border-radius: 50px;
	padding: 10px 30px;
	text-decoration: none;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
	display: inline-block;
	cursor: pointer;
}

.modal-custom-1 {
  background-color: #f9eeed; 
  border-radius: 30px;       
  border: none;
  text-align: center;
  padding: 50px;
}

.modal-custom-1 .modal-title{
	font-size: 30px;
	line-height: 1;
}

.modal-custom-1 p{
	line-height: 1.1;
}

.modal-custom-1 .modal-header .btn-close{
	position: absolute;
	top: 50px;
	right: 50px;
}



.item-skills a.btn-item-grilla{
	background-color: #c01979;
}

.item-ciencia a.btn-item-grilla{
	background-color: #14a798;
}

.item-emprendimiento a.btn-item-grilla{
	background-color: #ec9f09;
}

.item-streaming a.btn-item-grilla{
	background-color: #008080;
}

.filtros-linea{
	margin-bottom:25px;
	display:flex;
	gap:.5rem;
	flex-wrap:wrap;
	justify-content: center;
}

.filtro-btn{
	padding: 10px 30px;
	border-radius:50px;
	background:#fff;
	cursor:pointer;
	border: 0;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	font-family: 'DM Sans' sans-serif;
	font-weight: 600;
	color: #353535;
	text-transform: uppercase;
}

.filtro-btn.active{
	background:#f9eeed;
	border: 0;
	box-shadow: 0;
}

.logo-item-grilla{
	max-height: 150px;
	filter: drop-shadow(0 0 20px rgba(0, 0, 0, 1));
}

.d-none-grid{
	display:none!important;
}

#grilla {
  gap: 1.5rem;
  grid-auto-flow: dense;
  display: grid;
  grid-template-columns: repeat(1, 1fr); /* móviles */
}



.col-full {
  grid-column: 1 / -1; display: grid;
  grid-template-columns: 70% 30%;
  border-radius: 30px;
  overflow: hidden;
  min-height: 200px;  
  padding: 0;
}

/* columna izquierda: imagen */
.columna-imagen {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* columna derecha: contenido */
.columna-contenido {
  background-color: #f9eeed;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Ocultar cualquier overlay de controles que Safari/Chrome intenten poner */
video.no-controls::-webkit-media-controls {
  display: none !important;
}

video.no-controls::-webkit-media-controls-enclosure {
  display: none !important;
}

video.no-controls::-webkit-media-controls-overlay-play-button {
  display: none !important;
}

video.no-controls {
  pointer-events: none;   
  object-fit: cover;      
}

a.cstm-btn-3 {
  display: flex;
  justify-content: space-between; 
  align-items: center;            
  gap: 8px;              
	color: #ffffff;
	padding: 10px 35px;
	background-color: transparent;
	border-radius: 100px;
	font-family: 'Dm Sans';
	font-size: 18px;
	text-decoration: none;
  transition: color 0.8s ease;
  position: relative;
  z-index: 2; 
  border: 2px solid #fff;
}

a.cstm-btn-3::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #fff; 
  opacity: 0;
  transition: opacity 0.8s ease;
  border-radius: 50px;
  border: 2px solid #008080;
  z-index: -1;
}

	
a.cstm-btn-3:hover::before {
  opacity: 1;
}

a.cstm-btn-3:hover {
  color: #008080;
}


.sponsors .logos-carousel {
  text-align: center;
  padding: 40px 0;
}

.sponsors .logos-carousel h2 {
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 30px;
}

/* Asegura que los slides no se alineen horizontalmente */
.sponsors .slick-slide {
  display: block !important;
}

/* Centrado y estilo de los dots */
.sponsors .slick-dots {
  display: flex !important;
  justify-content: center;
  gap: 10px;
  padding: 0;
  margin-top: 20px;
}

.sponsors .slick-dots li {
  list-style: none;
}

.sponsors .slick-dots button {
  font-size: 0; /* oculta los números 1,2,3 */
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: none;
  background: #ccc;
  cursor: pointer;
}

.sponsors .slick-dots .slick-active button {
  background: #005656;
}

.sponsors .logos-carousel img {
  max-width: 100%;
  height: auto;
  margin: 10px auto;
  display: block;
  max-height: 175px;
}


@media(min-width:768px){
	.hide-desktop{
		display: none !important;
	}
	
  #grilla {
    grid-template-columns: repeat(2, 1fr); /* tablets */
  }
}

@media (min-width: 992px) {
  #grilla {
    grid-template-columns: repeat(3, 1fr); /* desktop: 4 columnas fijas */
  }
}

@media (min-width: 1400px) {
  #grilla {
    grid-template-columns: repeat(4, 1fr); /* desktop: 4 columnas fijas */
  }
}


@media(max-width:1499px){
	.cstm-title-13 {
    font-size: 4rem;
	}

	.cstm-title-14 {
	    font-size: 2rem;
  	white-space: nowrap;
	}

	.fullscreen-menu .nav-link {
    font-size: 3em;
  }

  .logo-semana21-top-menu {
    height: 38px;
    margin-bottom: -50px;
	}

	.cstm-box-1 h3 {
    font-size: 40px;
    line-height: 1.1;
	}
}

@media(max-width:1199px){
	.cstm-title-13 {
    font-size: 3rem;
    margin-bottom: 0;
	}

	.cstm-title-14 {
	    font-size: 1.5rem;
    margin-bottom: 0;
	}
	.time-box{
		font-size: 3rem;
	}

	.cstm-box-1 h3 {
	    font-size: 30px;
	    line-height: 1;
	}
	
}

@media(max-width:1199px){
	.sombra-1 {
	    right: -61px;
	}

	.cstm-title-7 {
	    font-size: 50px;
	}
}

@media(max-width:991px){
	.forma-1 {
		width: 32%;
	  	max-height: 47px;
	}

	.cstm-box-1 {
    margin-bottom: 35px;
	}

	.flecha-amarilla {
	    max-height: 45px;
	}

	.cstm-title-5 {
	    font-size: 28px;
	}

	.sombra-2 {
    bottom: -64px;
	}

	.cstm-title-7 {
	    font-size: 35px;
	}
}

@media(max-width:767px){
	.hide-mobile{
		display: none !important;
	}

	.col-full {
    grid-template-columns: 1fr; /* una sola columna */
    height: auto; /* se ajusta a contenido */
  }

  .columna-imagen,
  .columna-contenido {
    width: 100%;
  }

  .columna-imagen{
  	height: 200px;
  }

	.cstm-title-14 {
	  font-size: 1.5rem;
	 	white-space: wrap;
	 	line-height: 1;
	 	margin: 15px 0;
	}

	.cstm-title-13 {
	  font-size: 3rem;
	 	white-space: nowrap;
	 	line-height: 1;
	}

	.logo-semana21-top {
	    height: 25px;
	}

	.menu-logo-1 {
	    height: 37px;
	}

	.cstm-m-1 {
	    margin: 30px 0 0 0;
	}

	.cstm-title-4 {
	    font-size: 45px;
	}

	.cstm-text-1 {
	    font-size: 25px;
	    margin-top: -50px;
	}

	a.cstm-btn-1 {
	    padding: 7px 35px;
	    font-size: 18px;
	}

	.flecha-btn {
	    height: 29px;
	    padding-bottom: 2px;
	}

	.content-home-3 {
	    padding: 39vh 20px 50px 20px;
	}

	.content-inspira21-1, .content-inspira21-2, .content-inspira21-3 {
	   text-align: center;
	}

	.logo-inspira21 {
	    max-height: 200px;
	}

	.sombra-1-mobile{
		margin-top: 30px;
		margin-bottom: -40px;
	}

	.logo-rally-creativo {
	    max-height: 200px;
	}

	.forma-6 {
	    top: 91%;
	    max-height: 115px;
	}

	footer {	
	    text-align: center;
	}

	.logo-semana21-footer {
	    max-height: 35px;
	    margin-bottom: 30px;
	}

	.cstm-ta-1{
		text-align: center;
	}

	.bajada-feria-21 {
	    margin-left: 0;
	    margin-bottom: 35px;
	}

	.content-feria21-1 {
	    padding: 50px 20px;
	}

	.sombra-2 {
	    bottom: -35px;
	}

	.cstm-title-7 {
	    font-size: 45px;
	    margin-bottom: 35px;
	}

	.cstm-title-12 {
	    font-size: 35px;
	}

	.content-ciencia21-1 {
	    padding: 50px 20px;
	}

	.cstm-box-4 {
	    padding: 20px;
	}

	.cstm-title-8 {
	    font-size: 35px
	}

	.cstm-title-9 {
	    font-size: 40px;
	}

	.cstm-title-10 {
	    font-size: 18px;
	    line-height: 1.1;
	}
	
}

@media(max-width:576px){
	.time-box{
		font-size: 2.5rem;
	}	

	.cstm-title-14 {
	  font-size: 1.2rem;
	}

	.cstm-title-13 {
	  font-size: 2.5rem;
	}

	.menu-logo-1 {
	    height: 30px;
	}

	.cstm-btn-2 {
	    letter-spacing: 1px;
	    text-align: center;
	}

	.flecha-btn-2 {
	    height: 28px;
	}

	.logo-inspira21 {
	    max-height: 160px;
	}

	.logo-rally-creativo {
	    max-height: 160px;
	}

	.cstm-title-6 {
	    font-size: 33px;
	}

	.logo-estar-de-moda {
	    max-height: 227px;
	}

	.forma-5 {
	    max-height: 111px;
	}

	.cstm-title-7 {
	    font-size: 35px;
	    margin-bottom: 35px;
	    margin-left: 16%;
	}

	.cstm-box-6 {
	    padding: 20px;
	}

	.cstm-box-7 {
	    padding: 30px;
	}

	.cstm-box-8 {
	    padding: 40px;
	}
	
}

@media(max-width:385px){
	.cstm-title-7 {
	    margin-left: 0;
	}

}
