/* ------------------------------------------------------------------- */
/* -------------------- CSS PARA LPS DE LAS CLINICAS ----------------- */
/* ------------------------------------------------------------------- */


#page-container {
	display: flex !important;
	flex-direction: column !important;
}


/* ---- TOPBAR ---- */
#topbar {
	padding: 0px;
	padding-block: 0.2rem;
	background-color: #C8205E !important;
	margin-bottom: 0.8rem;
    z-index: 99999 !important;
}

#topbar div {
	padding: 0px;
	font-size: 1rem !important;
	color: #FFFFFF !important;
	vertical-align: middle !important;
	white-space: nowrap !important;
}

#topbar a {
	color: #FFFFFF !important;
	vertical-align: middle !important;
}

@media (max-width: 800px) {
	#topbarcols > div:nth-child(2),
	#topbarcols > div:nth-child(3) {
		display: none !important;
	}
	#topbarcols > div:nth-child(4) {
		margin-left: auto !important;
	}
  	#topbarcols{
		display: block !important;
	}
	#topbar.et_pb_section {
  		padding-top: 0.15rem !important;
  		padding-bottom: 0.15rem !important;
	}	
}


#topbar .et_pb_column {
	margin-bottom: .15rem !important;
}

/* Topbar: altura ajustada + sin salto de línea en mobile */
#topbar .et_pb_column {
  margin-bottom: 0 !important;
  width: auto !important;
}

#topbarcols {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
}

#topbarcols > div {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  width: auto !important;
  float: none !important;
}

/* Topbar: alineación vertical de módulos */
#topbarcols .et_pb_module {
  display: flex !important;
  align-items: center !important;
  margin-bottom: 0 !important;
}

#topbarcols .et_pb_blurb_content,
#topbarcols .et_pb_blurb_container {
  display: flex !important;
  align-items: center !important;
}

/* Topbar: centrado vertical de iconos en blurbs */
#topbarcols .et_pb_blurb_content {
  align-items: center !important;
}

#topbarcols .et_pb_main_blurb_image {
  display: flex !important;
  align-items: center !important;
  align-self: center !important;
  margin: 0 4px 0 0 !important;
}
/* ---- /TOPBAR ---- */



/* ------------------------------------ */
/* -------- SELECT DE CLINICAS -------- */
#topbarclinica {
	position: relative;
	z-index: 1000 !important;
	cursor: pointer;
}

#topbarclinica span {
	font-size: 1.2rem !important;
}

#topbarclinica:hover #selectclinica {
	display: block;
}

#selectclinica {
	display: none;
	position: absolute;
	padding-top: 0.7rem !important;
	top: 1.45rem !important;
	left: -0.4rem;
	z-index: 990009999 !important;
	list-style-type: none;
	width: stretch !important;
    min-width: 100% !important;
	background-color: #C8205E !important;
	border-radius: 0 0 0.3rem 0.3rem;
}

#selectclinica ul {
	width: stretch !important;
	padding-top: 2.7rem !important;
}

#selectclinica a:hover {
	text-decoration: underline !important;
}

/* Columna del selector de clínica — por encima del logo */
.et_pb_column_5 {
	position: relative !important;
	z-index: 100 !important;
}

/* Bajar z-index de la columna del logo para que no tape el dropdown */
.et_pb_column_0_tb_header {
	z-index: 1 !important;
}
/* -------- /SELECT DE CLINICAS -------- */
/* ------------------------------------- */




/* ------------------------------------ */
/* ----- MOVER TOPBAR AL COMIENZO ----- */
#et-boc,
.et-l--header,
#et-main-area,
#main-content,
#main-content-wrapper,  /* AÑADIR ESTA LÍNEA CON TAG MAIN */
article,
.entry-content,
.et-l--post,
.et_builder_inner_content {
	display: contents !important;
}

#page-container {
	display: flex !important;
	flex-direction: column !important;
}

#topbar {
	order: -1 !important;
}
/* ----- /MOVER TOPBAR AL COMIENZO ---- */
/* ------------------------------------ */


#topbarcols {
	display: grid;
	grid-template-columns: auto auto auto auto;
	justify-content: space-between;
}

#topbarcols > div {
	display: grid;
	grid-template-columns: 1fr;
	min-width: fit-content !important;
}






/* ---------- BREADCRUMBS ---------- */
#crumbs-blade{
  background-color: #e5f0f8!important;
  padding:0 !important;
  margin:0 !important;
}
  
#crumbs-blade > DIV{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}

.crumbs A,
.crumbs A:visited,
.crumbs A:active,
.crumbs A:hover{
  font-size:1rem !important;  
}
.crumbs A:hover{
text-decoration:underline !important;
}

.crumbs,
.crumbs A,
.crumbs SPAN{
  font-size:1rem !important;  
  font-weight:600 !important;
}
/* ---------- /BREADCRUMBS ---------- */






/* ---------- HERO CONTAINER ---------- */

#hero{
/* padding-block:2rem !important; */
   background-color: #e5f0f8 !important;
}

div:has(> div > #herofoto) {
	padding-bottom: 2rem !important;
}

div:has(> div > div > div > div > H1) {
	padding-top: 0.66rem !important;
}

div:has(> div > h1) {
	margin-bottom: 0 !important;
}

h1 {
	color: black !important;
	font-size: 2.8rem !important;
	line-height: 2.3rem !important;
}

h1 > span {
	display:inline-block;
	color: black !important;
	font-size: 2.1rem !important;
    padding-top:0.8rem;
	line-height: 2rem !important;
}


h2 {
	font-size: 2.2rem !important;
	text-align:center;
	margin-bottom:1rem;
}


#parrafo1,
#parrafo2 {
	color: black !important;
	font-size: 1.4rem !important;
	font-weight: 500 !important;
	margin-block: 1rem !important;
	text-wrap: pretty !important;
}
#parrafo2 {
	margin-bottom: 1.8rem !important;
}

#parrafo1 STRONG,
#parrafo2 STRONG{
	font-weight:600;
}

#parrafo1 STRONG{
	white-space:nowrap;
}

#parrafo1 A,
#parrafo2 A{
	text-decoration:underline;
	color: black !important;
    text-decoration-thickness: from-font;
    text-underline-offset: 0.15rem;
}

div:has(> #cta1),
div:has(> #cta2) {
	display: inline-block !important;
}

#cta1,
#cta2 {
	margin-right: 2rem;
	padding-inline: 2rem !important;
	font-size: 1.3rem !important;
}

#cta1{
    color: #FFFFFF!important;
    border-width: 0px!important;
    border-color: RGBA(0,0,0,0);
    border-radius: 100px;
    letter-spacing: 2px;
    font-size: 22px;
    font-weight: 700!important;
    background-color: #d50956;
    }
    
#cta2 {
    color: #E01F45!important;
    border-width: 0rem!important;
    border-color: RGBA(255,255,255,0);
    border-radius: 100px;
    letter-spacing: 2px;
    font-size: 22px;
    font-weight: 700!important;
    background-color: #FFFFFF;
}



div:has(> #herofoto) {
	background-color: white !important;
	overflow: hidden !important;
	noborder: solid 0.3rem white !important;
	border-radius: 0.4rem !important;
}


.et_pb_image_0 {
    transform: scaleX(1.05) scaleY(1.05) !important;
    transform-origin: 50% 100%;
    text-align: center;
}



@media (max-width: 980px) {
	#hero{
    	padding-top:0 !important;
    }
}
/* ---------- /HERO CONTAINER ---------- */







/* --------------- LANDMARKS --------------- */
#landmarks-blade{
padding-top:1.5rem !important;
}

.et_pb_row:has(.landmark) .et_pb_column {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.landmark {
	display: flex;
	align-items: center !important;
	gap: 1rem;
	width: 100% !important;
	justify-content: center !important;
}
.landmark-icon {
	height:5.5rem !important;
	width:5.5rem !important;
}
.landmark-icon-svg {
	height:5.5rem !important;
	width:5.5rem !important;
    opacity:.65;
}

.landmark-text {
	font-size: 1.1rem;
	font-weight: 700;
}
div:has(P.landmarks) {
	padding-top: 0;
}

P.landmarks {
	text-align: center;
	text-wrap: pretty;
}

@media (max-width: 600px) {
	.landmarks {
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
	}
	.landmark {
		width: 100% !important;
		justify-content: center !important;
	}
}

@media (max-width: 980px) {

	#landmarks-blade>DIV{
		padding-top:3rem;
	}
    
	#landmarks-blade>DIV:first-of-type{
		display:none;
	}
}

/* --------------- /LANDMARKS --------------- */




/* --------------- TRUSTBAR --------------- */

.trustbar {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0rem;
	width: 100% !important;
	margin-block:0 !important;
}

.trustbar-icon {
	margin-bottom: 0.5rem;
}

.trustbar-icon-svg {
	height: auto;
	width: 4rem;
	filter: brightness(0) saturate(100%) invert(33%) sepia(93%) saturate(912%) hue-rotate(169deg) brightness(98%) contrast(103%);
	filter: brightness(0) saturate(100%) invert(20%) sepia(100%) saturate(3057%) hue-rotate(325deg) brightness(80%) contrast(111%);
}

.trustbar-text {
	font-size: 1.3rem;
	font-weight: 600;
	white-space: nowrap;
}

.trustbar-text-bold {
	display:block;
    padding-top:0.3rem;
	font-size: 1.4rem;
	font-weight: 700;
	white-space: nowrap;
}

div:has(P.trustbars) {
	padding-top: 0;
}

P.trustbars {
	text-align: center;
	text-wrap: pretty;
}
/* --------------- /TRUSTBARS --------------- */







/* ---------- SERVICIOS ---------- */
#servicios-clinica-dental {
	margin-block: 6rem !important;
}

#servicios-clinica-dental P{font-weight:300;}
#servicios-clinica-dental P B{font-weight:600;}

#servicios-clinica-dental .servicio {
	margin-block: 6rem !important;
	display: flex;
	flex-direction: row;
	gap: 2rem;
	justify-content: flex-start;
}

#servicios-clinica-dental .servicio > div:first-child {
	width: 26% !important;
	min-width: 10rem !important;
	flex-shrink: 0 !important;
}

#servicios-clinica-dental .servicio-imagen {
	width: 100% !important;
	display: block !important;
	aspect-ratio: 3/2;
	object-fit: cover;
	object-position: center;
	border-radius:0.6rem;
}


@media (max-width: 760px) {
	#servicios-clinica-dental .servicio {
		flex-direction: column !important;
	}
	#servicios-clinica-dental .servicio > div:first-child {
		width: 100% !important;
		min-width: unset !important;
	}
	#servicios-clinica-dental .servicio-imagen {
		height: 7rem !important;
		aspect-ratio: unset !important;
	}
}
/* ---------- /SERVICIOS ---------- */







/* ---------- EQUIPO DENTISTAS ---------- */
#equipo-dentistas {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	margin-block: 5rem;
}

#equipo-dentistas P{font-weight:300;}
#equipo-dentistas P B{font-weight:600;}

#equipo-dentistas .galeria {
	margin-top: 2rem;
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

#equipo-dentistas .galeria-dentistas {
	margin-top: 0.6rem;
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 3 * 2rem) / 4);
	gap: 2rem;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-inline: 1rem;
}

#equipo-dentistas .galeria-dentistas::-webkit-scrollbar {
	display: none;
}

#equipo-dentistas article.dentista {
	display: flex !important;
	flex-direction: column !important;
}

#equipo-dentistas .dentista-img {
	width: 100%;
	height: auto;
	display: block;
}

#equipo-dentistas .galeria-scroll-left,
#equipo-dentistas .galeria-scroll-right {
	flex-shrink: 0;
	position: sticky;
	top: 50%;
	margin-block: 5rem;
	width: 2.5rem;
	height: 2.5rem;
	background: #C8205E;
	color: white;
	border-radius: 50%;
	display: flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 1.2rem;
	font-weight: bold;
	user-select: none;
}

#equipo-dentistas .galeria-scroll-left:hover,
#equipo-dentistas .galeria-scroll-right:hover {
	background: #a01a4c;
}

#equipo-dentistas .dentista h3 {
	font-size: 18px !important;
	font-weight: 500 !important;
	color: #D50956 !important;
	letter-spacing: 2px !important;
	margin-top: 12px !important;
	margin-bottom: 4px !important;
	text-transform: uppercase !important;
}

#equipo-dentistas .dentista [itemprop="jobTitle"],
#equipo-dentistas .dentista p:not(:has(span)) {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #000000 !important;
	letter-spacing: normal !important;
	margin: 0 !important;
	text-transform: uppercase !important;
	padding-bottom: 0;
    line-height:1.3rem !important;
}

.dentista a {
	font-size: 13px !important;
	font-weight: 400;
}

#equipo-dentistas .dentista p:has(span) {
	font-size: 13px !important;
	font-weight: 400 !important;
	color: #666666 !important;
	margin-top: 4px !important;
	text-transform: none !important;
    line-height:1.3rem !important;
}

@media (max-width: 900px) {
	#equipo-dentistas .galeria-dentistas {
		grid-auto-columns: calc((100% - 2 * 2rem) / 3); /* 3 visibles */
	}
}

@media (max-width: 700px) {
	#equipo-dentistas .galeria-dentistas {
		grid-auto-columns: calc((100% - 1 * 2rem) / 2); /* 2 visibles */
	}
}

@media (max-width: 600px) {
	#equipo-dentistas .galeria-dentistas {
		grid-auto-columns: 100%; /* 1 visible */
	}
}
/* ---------- /EQUIPO DENTISTAS ---------- */







/* ---------- FAQ ---------- */
#preguntas-frecuentes {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	margin-block: 4rem;
}

#preguntas-frecuentes .preguntas {
	margin-top: 2rem;
}

.faq-item {
	border-bottom: 1px solid #e0e0e0;
	padding-inline: 1.5rem;
}

.faq-item:has(.faq-pregunta[aria-expanded="true"]) {
	background-color: #FDF5F8;
	border-radius: 0.3rem;
	padding-inline: 1.5rem;
	padding-block:1rem;
	padding-bottom:1.2rem;
}

.faq-pregunta {
	width: 100% !important;
	background: none !important;
	border: none !important;
	padding: 1.2rem 0 !important;
	text-align: left !important;
	font-size: 1.4rem !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: 1rem !important;
	box-shadow: none !important;
}

.faq-pregunta:hover,
.faq-pregunta[aria-expanded="true"] {
	color: #C8205E !important;
}

.faq-icono {
	font-size: 1.8rem;
	font-weight: 300;
	color: #C8205E;
	flex-shrink: 0;
	transition: transform 0.3s ease;
}

.faq-pregunta[aria-expanded="true"] .faq-icono {
	transform: rotate(45deg);
}

.faq-respuesta {
	display: none;
	padding-bottom: 1.2rem;
	color: #444;
	font-size: 1.3rem;
	font-weight:400;
	line-height: 1.4;
}

.faq-respuesta.abierta {
	display: block;
}
/* ---------- /FAQ ---------- */





  
/* ---------- RESEÑAS CARRUSEL ---------- */
#resenas {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  margin-block: 0rem;
}
DIV:has(>DIV>DIV>DIV>DIV>#resenas){
  padding-top: 1rem !important;
  padding-bottom: 5rem !important;
}

#resenas .resenas-cabecera {
  text-align: center;
  margin-bottom: 2rem;
  padding: 0;
}

#resenas .resenas-titulo {
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 2px;
  margin: 0;
  line-height: 1;
  padding-bottom:0 !important;
}

#resenas .resenas-estrellas-header {
  font-size: 2.5rem;
  color: #F9A825;
  letter-spacing: 4px;
  line-height: 1.2;
  margin: 0 0 0.1rem 0;
}

#resenas .resenas-total,
#resenas .resenas-total A {
  font-size: 0.95rem;
  color: #444;
  margin: 0;
}

#resenas .resenas-carrusel-wrapper {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#resenas .resenas-carrusel {
  overflow: hidden;
  flex: 1;
  min-width: 0;
}

#resenas .resenas-track {
  display: flex;
  gap: 1rem;
  transition: transform 0.4s ease;
  align-items: stretch;
}

#resenas .resena {
  flex: 0 0 calc((100% - 2 * 1rem) / 3);
  min-width: 0;
  background: #f5f5f5;
  border-radius: 0.5rem;
  padding: 1.2rem;
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem;
}

#resenas .resena-header {
  display: flex;
  align-items: center;
  gap: 0.7rem;
}

#resenas .resena-avatar {
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 1.1rem;
  font-weight: 700;
  flex-shrink: 0;
}

#resenas .resena-meta {
  flex: 1;
  min-width: 0;
}

#resenas .resena-nombre {
  font-size: 0.9rem;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 !important;
  line-height: 1.5 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-bottom:0 !important;
}

#resenas .resena-fecha {
  font-size: 0.78rem;
  color: #888;
  margin: 0 !important;
  line-height: 1.5 !important !important;
}

#resenas .resena-stars {
  color: #F9A825;
  font-size: 1.5rem;
  letter-spacing: 2px;
  line-height: 1;
  margin: 0;
}

#resenas .resena-texto {
  font-size: 0.88rem;
  color: #444;
  line-height: 1.45 !important;
  margin: 0;
}

#resenas .resenas-btn {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  border-radius: 50%;
  background: #C8205E;
  color: white;
  border: none !important;
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
  padding: 0;
  transition: background 0.2s ease;
}

#resenas .resenas-btn:hover { background: #a01a4c; }
#resenas .resenas-btn:disabled { opacity: 0.3; cursor: default; }

#resenas .resenas-aviso {
  text-align: center;
  margin-top: 1rem !important;
  margin-bottom: 2rem !important;
}

#resenas .resenas-aviso a {
  font-size: 0.85rem;
  color: #999;
  text-decoration: underline;
}

@media (max-width: 900px) and (min-width: 761px) {
  #resenas .resena {
    flex: 0 0 calc((100% - 1rem) / 2);
  }
}

@media (max-width: 760px) {
  #resenas .resena {
    flex: 0 0 100%;
  }
}
/* ---------- /RESEÑAS CARRUSEL ---------- */





/* ---------- ENLACES RESEÑAS ---------- */
  .valorar{
    width: auto;
    display: flex;
    justify-content: center;
    gap: 5rem;
    margin-top: 3rem;
    text-align:center;
  }
  .valorar__item{
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 1.3rem;
	line-height:1.35rem;
    text-align: left;
  }
  
  .valorar__item>svg{
    width:  2.1rem !important;
    height: 2.1rem !important;
  }
  
  

@media (max-width: 558px) {
  
  .valorar__item SVG{
    display:none !important;
  }
  
  .valorar__item{
    text-align: center;
    font-size: 1.1rem;
    padding-top:1rem;
  }
  
}


@media (max-width: 800px) {
  .valorar{
    display: flex;
    justify-content: space-around;
    margin-top: 2rem;
    padding-left:0rem;
    gap: 3rem;
  }
  div:has(>div.valorar){
  	display:flex;
	justify-content:center;
  }
}
/* ---------- /ENLACES RESEÑAS ---------- */




/* ---------- FOTOS CLINICA ---------- */
#fotos-clinica {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	margin-block: 4rem;
}



#fotos-clinica P{font-weight:300;}
#fotos-clinica P B{font-weight:600;}

#fotos-clinica .galeria {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin-top: 3rem;
}

#fotos-clinica .galeria-fotos {
	display: grid;
	grid-template-rows: repeat(2, 1fr);
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 2 * 1.5rem) / 3);
	gap: 1.5rem;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

#fotos-clinica .galeria-fotos::-webkit-scrollbar {
	display: none;
}

#fotos-clinica article.foto-clinica {
	display: flex !important;
	flex-direction: column !important;
}

#fotos-clinica .foto-clinica-img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 4/3;
	object-fit: cover;
	border-radius: 0.4rem;
}

#fotos-clinica .foto-clinica figcaption {
	font-size: 0.9rem;
	color: #666;
	margin-top: 0.4rem;
	margin-bottom: 0;
}

#fotos-clinica .galeria-scroll-left,
#fotos-clinica .galeria-scroll-right {
	flex-shrink: 0;
	position: sticky;
	top: 50%;
	margin-block: 5rem;
	width: 2.5rem;
	height: 2.5rem;
	background: #C8205E;
	color: white;
	border-radius: 50%;
	display: flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 1.2rem;
	font-weight: bold;
	user-select: none;
}

#fotos-clinica .galeria-scroll-left:hover,
#fotos-clinica .galeria-scroll-right:hover {
	background: #a01a4c;
}

@media (max-width: 900px) {
	#fotos-clinica .galeria-fotos {
		grid-auto-columns: calc((100% - 1 * 1.5rem) / 2); /* 2 columnas visibles */
	    grid-template-rows: repeat(1, 1fr);
	}
}

@media (max-width: 600px) {
	#fotos-clinica .galeria-fotos {
		grid-auto-columns: 100%; /* 1 columna visible */
	    grid-template-rows: repeat(1, 1fr);
	}
}
/* ---------- /FOTOS CLINICA ---------- */








/* ---------- CÓMO LLEGAR ---------- */
#como-llegar {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  margin-block: 4rem;
}

#como-llegar P {
  font-weight: 300;
  text-align:center;
}
#como-llegar P.intro {
  font-weight: 400;
}

#como-llegar .como-llegar-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  margin-top: 4rem;
  align-items: start;
}

#como-llegar .como-llegar-mapa iframe {
  width: 100%;
  height: 350px;
  border-radius: 0.4rem;
}

#como-llegar .como-llegar-info{
  display:flex;
  flex-direction:column;
}



#como-llegar .como-llegar-bloque h3 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  margin-bottom: 0.6rem !important;
  padding-bottom: 0.3rem !important;
  margin-top: 2rem !important;
  color: #333333 !important;
}

#como-llegar address {
  font-style: normal;
  font-size: 1.2rem;
  line-height: 1.5;
}

#como-llegar address a {
  color: #C8205E;
  font-weight: 600;
}
#como-llegar #NAP {
  font-size: 1rem;
  font-weight: 500;
}



.como-llegar-bloque P{
text-align:left !important;
font-size: 1rem;
}


.como-llegar-bloque B,
.como-llegar-bloque STRONG{
font-weight:500 !important; 
}



/* Horario clínica */
.horario-clinica {
  margin-top: 20px;
}

.horario-clinica h3 {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #1a1a1a;
}

.horario-clinica dl {
  margin: 0;
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 4px 12px;
  font-size: 14px;
  line-height: 1.6;
}

.horario-clinica dt {
  font-weight: 600;
  color: #333;
}

.horario-clinica dd {
  margin: 0;
  color: #555;
}

.horario-clinica dd.cerrado {
  color: #999;
  font-style: italic;
}







@media (max-width: 760px) {
  #como-llegar .como-llegar-grid {
    grid-template-columns: 1fr;
  }
}

#como-llegar .como-llegar-mapa {
    height: 100%;
}

#como-llegar .como-llegar-mapa iframe {
    width: 100%;
    height: 100%;
    min-height: 300px;
    border-radius: 0.4rem;
}

#como-llegar .como-llegar-grid {
    align-items: stretch; /* ← clave: estira ambas columnas a la misma altura */
}
/* ---------- /CÓMO LLEGAR ---------- */








/* ---------- FORMULARIO ---------- */

@media (max-width: 500px) {
	#formulario>DIV {
		margin-inline:1rem;
    	width:auto;
	}
}

#formulario .et_pb_text_inner P{
  padding-inline: 2rem;
  font-weight:400;
}

#formulario .et_pb_contact p input, .et_pb_contact p textarea,
.et_pb_contact p input[type=checkbox]+label i, .et_pb_contact p input[type=radio]+label i
{
  background-color: #f7f7f7 !important;
}

.et_pb_contact_field_options_title{
  display:none !important;
}

LABEL[for="et_pb_contact_estudio3d_4_0"],
LABEL[for="et_pb_contact_estudio3d_3_0"]{
 font-size:1.1rem !important;
}

LABEL[for="et_pb_contact_política_de_privacidad_5_0"]{
 font-size:0.9rem !important;
}


LABEL[for="et_pb_contact_política_de_privacidad_5_0"]{
  margin-bottom:2rem !important;
}


@media (max-width: 767px) {

  .et_contact_bottom_container{
      float: none;
      text-align: center;
      display: flex;
      justify-content: center;
  }

  .et_contact_bottom_container{
    float:none;
  }
  
}



/* ---------- REORDENAR FORMULARIO ---------- */
@media (min-width: 768px) {
  #formulario .et_pb_contact_form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.8rem !important;
    align-items: start !important;
  }
  .et_pb_contact_field[data-id="nombre_y_apellidos"] {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  .et_pb_contact_field[data-id="email"] {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .et_pb_contact_field[data-id="teléfono"] {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
  .et_pb_contact_field[data-id="mensaje"] {
    grid-column: 2 !important;
    grid-row: 2 / 4 !important;
  }
  .et_pb_contact_field[data-id="mensaje"] textarea {
    height: 100% !important;
    min-height: 9rem !important;
    resize: none !important;
  }
  .et_pb_contact_field[data-id="estudio3d"] {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }
  .et_pb_contact_field[data-id="política_de_privacidad"] {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
  }
  .et_pb_contact_submit_wrapper {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
  }
  #formulario .et_pb_contact_field {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}
/* ---------- /REORDENAR FORMULARIO ---------- */


/* ---------- /FORMULARIO ---------- */






P{line-height:1.7rem !important;}


/* -------------------------------------------------------------------- */
/* -------------------- /CSS PARA LPS DE LAS CLINICAS ----------------- */
/* -------------------------------------------------------------------- */