/* CdGM Core · estilos de los bloques propios. Usa las variables de color y tamaño del tema (theme.json). */

/* Ficha del proyecto */
.cdgm-ficha{margin:0;width:100%;box-sizing:border-box;border-top:1px solid var(--wp--preset--color--tinta,#171717);container-type:inline-size}
.cdgm-ficha__fila{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:8px 16px;padding:14px 0;border-bottom:1px solid var(--wp--preset--color--linea,#E4E4E4);min-width:0}
.cdgm-ficha dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--piedra,#5C5C5C);padding-top:3px;min-width:0;overflow-wrap:anywhere}
.cdgm-ficha dd{margin:0;font-size:16px;line-height:1.5;min-width:0;overflow-wrap:anywhere}
.cdgm-ficha dd a{display:inline-block;margin:0 10px 4px 0}
@container (max-width:280px){
	.cdgm-ficha__fila{grid-template-columns:1fr;gap:4px}
}
.cdgm-aviso{padding:16px;border:1px dashed var(--wp--preset--color--linea-media,#D4D4D4);font-size:14px}

/* Compartir */
.cdgm-compartir{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;font-size:14px}
.cdgm-compartir__titulo{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--wp--preset--color--piedra,#5C5C5C)}
.cdgm-compartir__enlaces{display:flex;flex-wrap:wrap;gap:4px 16px}
.cdgm-compartir a{min-height:44px;display:inline-flex;align-items:center}

/* Migas */
.cdgm-migas ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--wp--preset--color--piedra,#5C5C5C)}
.cdgm-migas li+li::before{content:"/";margin:0 10px}
.cdgm-migas a{color:inherit;text-decoration:none}
.cdgm-migas a:hover,.cdgm-migas a:focus-visible{text-decoration:underline}
.has-tinta-background-color .cdgm-migas ol,.has-noche-background-color .cdgm-migas ol{color:var(--wp--preset--color--plata,#D4D4D4)}

/* Filtro de tipos */
.cdgm-filtro{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px}
.cdgm-filtro a{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1px solid var(--wp--preset--color--linea-media,#D4D4D4);font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--wp--preset--color--tinta,#171717)}
.cdgm-filtro a:hover{border-color:var(--wp--preset--color--tinta,#171717)}
.cdgm-filtro a[aria-current]{background:var(--wp--preset--color--tinta,#171717);border-color:var(--wp--preset--color--tinta,#171717);color:#fff}

/* Formulario */
.cdgm-form form{display:flex;flex-direction:column;gap:22px}
.cdgm-form__fila{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.cdgm-form p{margin:0}
.cdgm-form__campo{display:flex;flex-direction:column;gap:8px}
.cdgm-form label,.cdgm-form legend{font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.cdgm-form input[type=text],.cdgm-form input[type=email],.cdgm-form input[type=tel],.cdgm-form select,.cdgm-form textarea{font:inherit;font-size:17px;letter-spacing:normal;text-transform:none;color:inherit;background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:10px 0;min-height:44px;width:100%;box-sizing:border-box}
.cdgm-form textarea{min-height:120px;resize:vertical}
.cdgm-form select option{color:#171717}
.cdgm-form input:is(:focus,:focus-visible),.cdgm-form select:is(:focus,:focus-visible),.cdgm-form textarea:is(:focus,:focus-visible){
	outline:none;
	box-shadow:none;
	border-bottom-width:2px
}
.cdgm-form .wp-element-button:is(:focus,:focus-visible){
	outline:none;
	box-shadow:0 3px 0 -1px currentColor;
	text-decoration:none
}
.cdgm-form a:is(:focus,:focus-visible){
	outline:none;
	text-decoration:underline;
	text-underline-offset:.2em
}
.cdgm-form__opciones{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px}
.cdgm-form__opciones legend{width:100%;margin-bottom:12px}
.cdgm-form__opciones label{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-transform:none;letter-spacing:normal;font-size:16px}
.cdgm-form__privacidad label{text-transform:none;letter-spacing:normal;font-size:15px;display:flex;gap:10px;align-items:flex-start}
.cdgm-form__privacidad input{margin-top:4px;width:18px;height:18px}
.cdgm-form__acciones{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.cdgm-form__legal{font-size:13px;line-height:1.6;opacity:.8}
.cdgm-form__trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cdgm-form__ok,.cdgm-form__error{padding:22px 24px;border:1px solid currentColor}
.cdgm-form__error{margin-bottom:22px}
.cdgm-form--oscuro{color:#fff}
.cdgm-form--oscuro .wp-element-button{background:#fff;color:#171717;border-color:#fff}
.cdgm-form--oscuro a{color:#fff}

/* Tarjetas de proyecto en los listados (Query Loop) */
.cdgm-tarjeta .wp-block-post-featured-image{margin:0 0 18px;overflow:hidden}
.cdgm-tarjeta .wp-block-post-featured-image img{transition:transform .6s ease}
.cdgm-tarjeta:hover .wp-block-post-featured-image img{transform:scale(1.03)}
.cdgm-tarjeta .wp-block-post-title a{text-decoration:none}
@media (prefers-reduced-motion:reduce){.cdgm-tarjeta .wp-block-post-featured-image img{transition:none}}

/* Mapa Leaflet: contacto a sangre; en Oviedo, a la altura de la columna */
.cdgm-contacto-mapa,
.cdgm-mapa-columna{
	padding:0!important;
}
.cdgm-contacto-mapa .map_block_leaflet,
.cdgm-contacto-mapa .leaflet-container,
.cdgm-mapa-columna .map_block_leaflet,
.cdgm-mapa-columna .leaflet-container{
	margin:0;
	width:100%;
	background:#eee;
}
html.bloqs-scheme-dark .cdgm-contacto-mapa .map_block_leaflet,
html.bloqs-scheme-dark .cdgm-contacto-mapa .leaflet-container,
html.bloqs-scheme-dark .cdgm-mapa-columna .map_block_leaflet,
html.bloqs-scheme-dark .cdgm-mapa-columna .leaflet-container{
	background:#27272a;
}
html.bloqs-scheme-dark .cdgm-contacto-mapa .leaflet-bar a,
html.bloqs-scheme-dark .cdgm-mapa-columna .leaflet-bar a{
	background:#333;
	color:#fafafa;
	border-bottom-color:#3f3f46;
}
html.bloqs-scheme-dark .cdgm-contacto-mapa .leaflet-bar a:hover,
html.bloqs-scheme-dark .cdgm-contacto-mapa .leaflet-bar a:focus,
html.bloqs-scheme-dark .cdgm-mapa-columna .leaflet-bar a:hover,
html.bloqs-scheme-dark .cdgm-mapa-columna .leaflet-bar a:focus{
	background:#3f3f46;
}
@media (min-width:782px){
	.cdgm-seccion-estudio-mapa > .wp-block-columns{
		align-items:stretch;
	}
	.cdgm-col-mapa{
		display:flex!important;
		flex-direction:column;
	}
	.cdgm-col-mapa > .cdgm-mapa-columna{
		flex:1 1 auto;
		display:flex;
		flex-direction:column;
		min-height:280px;
	}
	.cdgm-col-mapa .cdgm-mapa-columna .map_block_leaflet,
	.cdgm-col-mapa .cdgm-mapa-columna .leaflet-container{
		flex:1 1 auto;
		height:100%!important;
		min-height:280px;
	}
}
.cdgm-mapa-pin{
	background:none!important;
	border:0!important;
	color:#171717;
}
html.bloqs-scheme-dark .cdgm-mapa-pin{
	color:#e4e4e7;
}
.cdgm-mapa-pin svg{
	display:block;
	filter:drop-shadow(0 1px 2px rgba(0,0,0,.25));
}
.cdgm-contacto-mapa .leaflet-marker-shadow,
.cdgm-mapa-columna .leaflet-marker-shadow{
	display:none;
}

/* Texto solo para lectores de pantalla (los temas de bloques no lo traen) */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
