/*
 * EENDA
 * Marketing, Desarrollo & Consulting
 * www.eenda.com
 * © 2026
 *
 * centroemocionarse.es · Front-End · Breakpoints
 * Complementa a style.css. Solo lo que cambia por tamaño de pantalla.
 */


/* ==========================================================================
   ≥ lg (992px): escritorio
   ========================================================================== */

@media (min-width: 992px){

	/* Desplegables del menú al pasar el ratón, sin esperar al clic */
	.main-nav .dropdown:hover > .dropdown-menu{
		display: block;
	}

	.main-nav .dropdown:hover > .dropdown-menu-columns{
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0 .5rem;
	}

	.main-nav .dropdown:hover > .nav-link::after{
		transform: scaleX(1);
	}

	/* El mega menú de tratamientos se centra bajo la barra */
	.dropdown-mega{
		position: static;
	}

	.dropdown-mega .dropdown-menu-columns{
		left: 50%;
		transform: translateX(-50%);
	}
}


/* ==========================================================================
   < lg (991px): tablet y móvil
   ========================================================================== */

@media (max-width: 991.98px){

	section{
		padding-block: 4rem;
	}

	.header .navbar-brand img{
		width: 170px;
	}

	.header .btn-teal span{
		display: none;
	}

	.header .btn-teal{
		--bs-btn-padding-x: .8rem;
	}

	.hero{
		padding-block: 3rem 3.5rem;
	}

	.hero-media{
		margin-top: 1rem;
	}

	.hero-media::before{
		inset: auto -.75rem -.75rem auto;
	}

	.hero-badge{
		left: .75rem;
		bottom: .75rem;
	}

	.section-sticky{
		position: static;
	}

	.equipo-grid .col-sm-6:nth-child(even){
		margin-top: 0;
	}

	.centro-map,
	.centro-map iframe{
		min-height: 20rem;
	}

	.page-hero{
		padding-bottom: 2.5rem;
	}

	.galeria-grid{
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: 11rem;
	}

	.galeria-item:nth-child(6n+1),
	.galeria-item:nth-child(6n+4){
		grid-column: span 1;
		grid-row: span 1;
	}

	.galeria-item:nth-child(4n+1){
		grid-column: span 2;
	}

	.post-card{
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.form-card{
		padding: 1.75rem 1.5rem;
	}

	.centro-body{
		padding: 1.75rem 1.5rem 2rem;
	}

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

	.cta-actions{
		align-items: center;
	}

	.cta-actions .btn{
		width: 100%;
		max-width: 22rem;
	}
}


/* ==========================================================================
   < md (767px): móvil
   ========================================================================== */

@media (max-width: 767.98px){

	body{
		font-size: 1rem;
	}

	section{
		padding-block: 3.25rem;
	}

	.hero-title{
		font-size: 2.35rem;
	}

	.hero-text{
		font-size: 1.05rem;
	}

	.hero-actions .btn{
		flex: 1 1 100%;
	}

	.hero-img{
		aspect-ratio: 4 / 3;
		border-top-right-radius: 3.5rem;
	}

	.hero-badge{
		position: static;
		margin-top: 1rem;
		width: 100%;
	}

	.hero-media::before{
		display: none;
	}

	.boxes{
		margin-top: 0;
		padding-top: 0;
	}

	.box{
		padding: 1.5rem 1.35rem;
	}

	.section-title{
		font-size: 1.85rem;
	}

	.section-header{
		margin-bottom: 2rem;
		text-align: left;
	}

	.accordion-faqs .accordion-button{
		font-size: 1.05rem;
	}

	.centro-card .d-flex.justify-content-between{
		flex-direction: column;
		align-items: flex-start !important;
		gap: .5rem;
	}

	.footer{
		padding-top: 3.5rem;
	}

	.footer-bottom{
		flex-direction: column;
		align-items: flex-start;
	}

	.btn-scroll-top{
		right: .75rem;
		bottom: .75rem;
	}

	.page-title{
		font-size: 1.9rem;
	}

	.page-hero-img{
		aspect-ratio: 16 / 10;
		border-top-right-radius: 3rem;
	}

	.page-actions .btn{
		flex: 1 1 100%;
	}

	.page-content{
		padding-block: 3rem;
	}

	.prose{
		font-size: 1rem;
	}

	.post-titulo,
	.post-card-destacado .post-titulo{
		font-size: 1.4rem;
	}

	.post-entradilla{
		font-size: 1.1rem;
	}

	.enfoque-card{
		flex-direction: column;
		gap: 1rem;
		padding: 1.5rem;
	}

	.centro-ficha{
		padding: 1.5rem;
	}

	.errorpage{
		padding-block: 3.5rem;
	}

	.errorpage-codigo{
		font-size: 4rem;
	}

	.lightbox-prev,
	.lightbox-next{
		top: auto;
		bottom: 4rem;
		transform: none;
	}
}
