/* #Media Queries
================================================== */
/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {  }

/* Optimización para pantallas entre 1200px y 1400px */
@media screen and (min-width : 1200px) and (max-width : 1400px) {
	/* Navbar - Reducir gaps y padding */
	.navbar-nav {
		gap: 8px;
	}
	
	.navbar-nav .nav-link {
		font-size: 14px;
		padding: 0 8px;
	}
	.reviews-slider{
		padding: 0;
	}
	.slick-next{
		right: -37px;
	}
	.slick-prev{
		left: -37px;
	}
	
	/* CTA Header - Ajustar para que no se parta en dos líneas */
	.header-nav .cta-primary {
		font-size: 14px;
		padding: 10px 16px;
		white-space: nowrap;
		line-height: 1.2;
	}
	
	/* Espacio entre logo, nav y CTA */
	.header-nav .container {
		gap: 20px;
		justify-content: space-between;
		padding-left: 15px;
		padding-right: 15px;
	}
	
	.navbar-brand {
		flex-shrink: 0;
		margin-right: 15px;
	}
	
	.navbar-brand img {
		max-width: 90%;
	}
	
	.navbar-collapse {
		flex: 1;
		margin: 0;
	}
	
	/* Asegurar que el CTA no se contraiga */
	.header-nav .cta-primary {
		flex-shrink: 0;
	}
	
	/* About Content - Optimizar espaciado */
	.about-content {
		gap: 40px;
	}
	
	.about-title {
		font-size: 42px;
		line-height: 1.1;
	}
	
	.about-content-text {
		font-size: 15px;
		line-height: 26px;
	}
}

@media screen and (min-width : 991px) and (max-width : 1200px) {
	.cta-section__title{
		line-height: 42px;
	}

	.cta-section__content{
		padding: 20px;
	}
	.hero-left .left-content{
		padding: 0 50px 0 75px;
	}
	.header-cta-desktop{
		display: none;
	}
	.cta-section__wrapper{
		flex-direction: column;
	}
	.cta-section__right{
		margin-left: 0;
	}
	.navbar-brand img{
		max-width: 85%;
	}
	
	/* About Content - Optimizar espaciado */
	.about-content {
		gap: 35px;
		padding: 35px;
	}
	
	.about-title{
		font-size: 35px;
		line-height: 1.1;
	}

	.about-content-text{
		font-size: 14px;
		line-height: 24px;
	}

	.about-content-text p{
		margin-bottom: 10px;
	}

	.about-content-text p:last-child{
		margin-bottom: 0;
	}
	.top-content{
		align-items: flex-start;
		flex-direction: column;
	}
	.financing-content{
		flex-direction: column;
	}
}

/* Mobile Menu - Breakpoint 992px */
@media only screen and (max-width : 992px) {
	
	/* Toggle siempre visible */
	.navbar-expand-lg .navbar-toggler {
		display: block !important;
	}
	
	.navbar-toggler {
		border: none;
		padding: 4px 8px;
	}
	
	/* CTA desktop oculta */
	.navbar-phone-cta,
	.header-cta-desktop {
		display: none !important;
	}
	
	/* Contenedor colapsado */
	#navbar-content {
		position: fixed;
		top: 160px;
		left: 0;
		width: 100vw;
		max-height: calc(100vh - 150px);
		overflow-y: auto;
		background-color: var(--red);
		z-index: 9999;
		flex-direction: column;
		align-items: flex-start;
		height: 100%;
	}
	
	.mobile-inner-cont{
		background: var(--blue);
		display: flex;
		flex-direction: column;
		gap: 10px;
		height: 100%;
		justify-content: center;
	}
	
	.navbar-collapse {
		flex-direction: column;
		align-items: flex-start;
	}
	
	.navbar-collapse.collapsing {
		transition: height .35s ease;
	}
	
	/* Lista del menú */
	.navbar-nav {
		flex-direction: column;
		width: 100%;
		margin-top: 20px;
		gap: 10px;
	}
	
	#menu-main-menu {
		width: 100%;
		gap: 0;
		border-top: 1px solid #EECDAF;
	}
	
	/* Links de nivel 1 */
	.navbar-nav .nav-link,
	.navbar-nav > li > a {
		padding: 20px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-bottom: 1px solid #EECDAF;
		font-size: 18px;
		color: white !important;
		width: 100%;
		text-decoration: none;
		background: var(--red);
		transition: all 0.3s ease;
	}
	
	/* Estado expandido */
	.navbar-nav .nav-link.show,
	.navbar-nav .dropdown.show > .nav-link,
	.navbar-nav .menu-item.show > a {
		background: radial-gradient(circle, #C7DEEE 0%, #89C5EE 100%) !important;
		color: var(--blue) !important;
	}
	
	/* Links de dropdown - position relative para anclar la flecha */
	.navbar-nav .nav-item.dropdown > .nav-link,
	.navbar-nav .menu-item-has-children > a {
		position: relative;
	}
	
	/* Ocultar flecha default de Bootstrap */
	.navbar-nav .dropdown-toggle::after {
		display: none !important;
	}
	
	/* Botón de toggle para la flecha - anclado al nav-link, no al li */
	.navbar-nav .dropdown-arrow-toggle {
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY(-50%);
		width: 50px;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		z-index: 10;
	}
	
	.navbar-nav .dropdown-arrow-toggle::after {
		color: white;
		font-size: 24px;
		transition: transform 0.3s ease;
	}
	
	/* Rotar flecha cuando está abierto */
	.navbar-nav .nav-item.show > .dropdown-arrow-toggle::after {
		transform: rotate(180deg);
	}
	
	/* Color de flecha cuando el fondo cambia */
	.navbar-nav .nav-item.show > .dropdown-arrow-toggle::after {
		color: var(--blue);
	}
	
	/* Submenús */
	.navbar-nav .dropdown-menu,
	.navbar-nav .sub-menu {
		display: none;
		position: static;
		width: 100%;
		background: rgba(255,255,255,0.1);
		backdrop-filter: blur(5px);
		border: 0;
		box-shadow: none;
		padding: 0;
		margin: 0;
	}
	
	.navbar-nav .dropdown-menu.show,
	.navbar-nav .menu-item.show > .sub-menu,
	.navbar-nav .dropdown.show > .dropdown-menu {
		display: block !important;
	}
	
	/* Items del dropdown */
	.navbar-nav .dropdown-item,
	.navbar-nav .sub-menu li a {
		padding: 15px 20px;
		border-bottom: 1px solid rgba(0,0,0,0.1);
		color: var(--blue) !important;
		display: block;
		text-decoration: none;
		font-size: 16px;
	}
	
	.navbar-nav .dropdown-item:hover,
	.navbar-nav .dropdown-item:focus,
	.navbar-nav .sub-menu li a:hover {
		background: rgba(255,255,255,0.9);
	}
	
	/* Visibilidad controlada */
	#navbar-content:not(.show) .navbar-nav .nav-item,
	#navbar-content:not(.show) .navbar-nav .menu-item {
		display: none;
	}
	
	#navbar-content.show .navbar-nav .nav-item,
	#navbar-content.show .navbar-nav .menu-item {
		display: block;
	}
	
	/* Logo móvil */
	.img-mobile-logo {
		display: block;
		width: 100vw;
		height: 120px;
		object-fit: contain;
	}
	
	/* Barra CTA fija */
	.cta-mobile-container {
		display: block;
		background-color: var(--blue);
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		z-index: 998;
		padding: 16px;
		text-align: center;
	}

	.cta-mobile-button{
		padding: 12px 80px;
		border-radius: 40px;
	}

	.coupon-slide{
		padding: 0;
	}

	.hello-bar-text, .header-cta-desktop {
		display: none;
	}
	.hello-bar-content{
		justify-content: center;
	}
	.review-logos{
		background: var(--blue);
		width: 100%;
	}


	.reviews-slider {
		padding: 0 40px;
	}

	.review-slide {
		padding: 0 8px;
	}

	.review-card{
		width: 100%;
	}

	.review-logos img{
		max-width: 90px;
	}
	.slick-dots{
		display: none !important;
	}

	.cta-section__image img {
		margin: 0;
		max-height: 200px;
		min-width: auto;
		margin-bottom: -65px;
		z-index: 1;
		max-width: 90%;
	  }
	  
	  .cta-section__content {
		padding: 1.5rem;
		align-items: center;
		text-align: center;
	  }
	.header-info{
		display: none;
	}

	.phone_mobile{
		position: fixed;
		bottom: 0;
		display: flex;
		justify-content: center;
		width: 100%;
		background: var(--blue);
		padding: 10px 0;
		z-index: 1000;
	}

	.cta-section{
		padding: 50px 0;
	}

	.cta-section__wrapper{
		flex-direction: column;
	}

	.cta-section__title{
		line-height: 40px;
	}

	.cta-section__image{
		text-align: center;
	}

	.cta-section__inner{
		padding: 25px;
	}

	.cta-section__right{
		overflow: visible;
		max-width: 100% !important;
		margin-left: 0;
		border-radius: 40px;
		padding-top: 64px;
	}
	.cta-section__review-logos{
		border-radius: 0 0 40px 40px;
		padding: 33px;
		gap: 15px;
		justify-content: space-between;
	}
	.cta-section__review-logos img{
		max-height: 42px;
	}

	.hero-content {
		flex-direction: column;
		gap: 40px;
	  }

	  .hero-right {
		display: contents;
	  }

	  .review-logos {
		order: 1;
		justify-content: center;
	  }

	  .hero-left {
		order: 2;
		display: flex;
		flex-direction: column;
	  }

	  .hero-left img {
		order: 4;
		max-height: 300px;
	  }

	  .hero-left .left-content {
		display: contents;
	  }

	  .hero-title {
		order: 1;
		font-size: 36px;
		text-align: left;
		line-height: 40px;
		padding: 0px 20px;
	  }

	  .hero-content-text {
		order: 2;
		text-align: left;
		padding: 0px 20px;
	  }

	  .hero-ctas {
		order: 3;
		display: none;
	  }

	  .coupons-hero {
		order: 3;
		width: 100%;
		padding: 0px 20px;
		align-items: center;
	  }
	  .coupon-hero-item{
		gap: 0;
	  }
	  .coupon-hero-content strong{
		font-size: 14px;
	  }
	  .coupon-hero-content{
		font-size: 12px;
	  }

	  .coupon-hero-item img{
		max-width: 146px;
	  }
	  .coupon-hero-title{
		font-size: 40px;
	  }

	  .header-content{
		justify-content: center;
	  }

	  .services-section {
		padding: 40px 0;
	  }
	  
	  .services-title {
		font-size: 36px;
	  }

	  .services-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
		row-gap: 40px;
	  }

	  .service-card {
		height: 230px;
		border: 2px solid #EBAA3F;
		overflow: visible;
	  }

	  .service-icon img{
		max-width: 60px;
	  }

	  .service-card::before {
		opacity: 0;
		background: linear-gradient(0deg, #04233B 0%, rgba(4, 35, 59, 0.00) 100%);
	  }

	  .service-overlay {
		opacity: 1;
		background: linear-gradient(0deg, #04233B 0%, rgba(4, 35, 59, 0.00) 100%);
	  }

	  .service-content {
		justify-content: flex-end;
		padding-bottom: 40px;
	  }

	  .service-cta {
		opacity: 1;
		visibility: visible;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 50%);
		z-index: 10;
		white-space: nowrap;
		padding: 12px 20px;
	  }

	  .service-card:hover::before {
		opacity: 0;
	  }

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

	  .service-card:hover .service-content {
		justify-content: flex-end;
	  }

	  .service-card:hover .service-cta {
		opacity: 1;
		visibility: visible;
		transform: translate(-50%, 50%);
	  }
	  
	  .services-slider .slick-prev {
		left: 10px;
	  }
	  
	  .services-slider .slick-next {
		right: 10px;
	  }

	  .about-us-section {
		padding: 60px 0;
	  }
	  
	  .about-content {
		flex-direction: column;
		gap: 40px;
		padding-right: 0;
		border-radius: 35px 35px 160px 160px;
		text-align: center;
		padding-bottom: 100px;
	  }
	  .about-right{
		align-items: center;
		padding: 0 15px;
	  }
	  
	  .about-title {
		font-size: 36px;
	  }

	  .logo-grid {
		flex-wrap: wrap;
		gap: 30px;
		justify-content: center;
	  }

	  .financing-section {
		padding: 105px 30px;
	  }
	  
	  .financing-content {
		flex-direction: column-reverse;
		gap: 40px;
	  }
	  
	  .financing-title {
		font-size: 36px;
	  }
	  .financing-right img{
		padding: 28px 40px;
	  }

	  .coupons-section {
		padding: 20px 0;
	  }
	  
	  .coupons-title {
		font-size: 42px;
	  }
	  
	  .coupons-slider {
		padding: 0 60px;
		position: relative;
	  }

	  .coupons-slider .slick-arrow {
		display: flex !important;
		opacity: 1 !important;
		visibility: visible !important;
	  }

	  .coupons-slider .slick-prev {
		left: 10px;
	  }

	  .coupons-slider .slick-next {
		right: 10px;
	  }
	  
	  .coupon-card {
		padding: 15px;
	  }
	  
	  .coupon-price {
		font-size: 38px;
	  }
	  
	  .coupon-title {
		font-size: 22px;
	  }
	  
	  .coupon-content-text {
		font-size: 13px;
		line-height: 18px;
	  }
	  
	  .coupon-terms {
		font-size: 10px;
		line-height: 11px;
	  }
	  
	  .cta-primary {
		font-size: 16px;
		padding: 12px 30px;
	  }

	  .footer {
		padding: 40px 0 100px;
	  }
	  
	  .footer__logo-row {
		margin-bottom: 30px;
	  }
	  
	  .footer__logo img {
		max-width: 150px;
	  }
	  
	  .footer__info-row {
		margin-bottom: 30px;
	  }
	  
	  .footer__column {
		margin-bottom: 25px;
	  }
	  
	  .footer__title {
		font-size: 16px;
		margin-bottom: 10px;
	  }
	  
	  .footer__bottom-content {
		flex-direction: column;
		text-align: center;
		gap: 15px;
	  }
	  
	  .footer__left,
	  .footer__right {
		flex-direction: column;
		gap: 10px;
	  }



	
}
/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
	.reviews-slider {
		padding: 0 40px;
	}

	.review-slide {
		padding: 0 10px;
	}
	.reviews-slider .slick-next{
		right: 0;
	}
	.reviews-slider .slick-prev{
		left: 0;
	}

	.coupons-slider {
		padding: 0 35px;
	}

	.coupons-slider .slick-arrow {
		display: flex !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.coupons-slider .slick-prev {
		left: -12px;
	}

	.coupons-slider .slick-next {
		right: -12px;
	}
	
	.coupon-card {
		padding: 8px;
	}
	
	.coupon-card-inner {
		padding: 12px;
	}
	
	.coupon-price {
		font-size: 28px;
	}
	
	.coupon-title {
		font-size: 16px;
		margin: 0 0 8px 0;
	}
	
	.coupon-content-text {
		font-size: 11px;
		line-height: 14px;
		margin-bottom: 8px;
	}
	
	.coupon-terms {
		font-size: 8px;
		line-height: 9px;
	}
}

/* Tablet Range - 768px to 992px */
@media screen and (min-width : 768px) and (max-width : 992px) {
	.coupons-hero {
		flex-direction: row;
	}
}

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 576px) {}

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 767px) {

	
}