/* NOTICIAS: OBRAS ADJUDICADAS (/noticias/). Usa las variables de style.css */
.apartado_obras h1{margin: 0px; font-weight: normal;}

.tabla_obras{width: 100%; border-collapse: collapse; font-family: var(--font_opensans_regular); color: var(--color_azul_marino); font-size: 14px; line-height: 1.45;}
.tabla_obras thead th{text-align: left; vertical-align: bottom; padding: 0px 18px 14px; color: var(--color_gris_oscuro); font-family: var(--font_opensans_semibold); font-weight: normal; font-size: 12px; text-transform: uppercase; letter-spacing: 0.04em; border-bottom: 3px solid var(--color_amarillo);}
.tabla_obras thead th span{text-transform: none; letter-spacing: 0px;}
.tabla_obras tbody td{padding: 20px 18px; vertical-align: top; border-bottom: 1px solid #E6E6E6;}
.tabla_obras tbody tr:nth-child(even){background-color: var(--color_gris);}
.tabla_obras .col_codigo{width: 80px; color: var(--color_gris_oscuro); font-family: var(--font_opensans_semibold); white-space: nowrap;}
.tabla_obras .obra_nombre{display: block; font-family: var(--font_opensans_semibold);}
.tabla_obras .obra_expediente{display: block; margin-top: 6px; color: var(--color_gris_oscuro); font-size: 13px;}
.tabla_obras .col_admin{width: 26%;}
.tabla_obras .col_importe{width: 170px; text-align: right; white-space: nowrap; font-family: var(--font_opensans_bold);}
.apartado_obras .nohay{color: var(--color_gris_oscuro); font-family: var(--font_opensans_regular); font-size: 16px; line-height: 24px;}

/* Móvil: cada obra en una tarjeta */
@media only screen and (max-width: 850px){
    .tabla_obras thead{position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0);}
    .tabla_obras, .tabla_obras tbody, .tabla_obras tr, .tabla_obras td{display: block; width: auto !important;}
    .tabla_obras tbody tr{border-top: 3px solid var(--color_amarillo); border-bottom: 1px solid #E6E6E6; padding: 16px 0px; margin: 0px 0px 18px; background-color: var(--color_blanco) !important;}
    .tabla_obras tbody td{border: 0px; padding: 4px 4px; text-align: left !important;}
    .tabla_obras tbody td.col_obra{padding: 8px 4px 10px;}
    .tabla_obras tbody td[data-titulo]{display: flex; gap: 12px; white-space: normal;}
    .tabla_obras tbody td[data-titulo]::before{content: attr(data-titulo); flex: 0 0 112px; color: var(--color_gris_oscuro); font-family: var(--font_opensans_semibold); font-size: 12px; text-transform: uppercase; padding-top: 1px;}
    .tabla_obras tbody td.col_codigo{order: -1;}
}

/* Enlaces de la tabla a cada artículo */
.tabla_obras a.obra_enlace{color: var(--color_azul_marino); text-decoration: none;}
.tabla_obras a.obra_enlace:hover{text-decoration: underline; text-decoration-color: var(--color_amarillo); text-underline-offset: 3px;}
.tabla_obras .obra_leer{display: inline-block; margin-top: 8px; color: var(--color_azul_marino); font-family: var(--font_opensans_bold); font-size: 12px; text-transform: uppercase; letter-spacing: 0.04em; text-decoration: none; border-bottom: 2px solid var(--color_amarillo);}

/* ARTÍCULO DE UNA OBRA (/noticias/<url>/) */
.articulo_obra .migas{font-family: var(--font_opensans_regular); font-size: 13px; color: var(--color_gris_oscuro); margin-bottom: 18px;}
.articulo_obra .migas a{color: var(--color_amarillo); font-family: var(--font_opensans_bold); text-decoration: none; text-transform: uppercase;}
.articulo_obra h1.titulo2{max-width: 1050px; line-height: 1.2;}
.articulo_obra .obra_fecha{display: block; margin-top: 16px; font-family: var(--font_opensans_semibold); font-size: 13px; color: var(--color_gris_oscuro);}
.articulo_obra .obra_entradilla{max-width: 900px; margin: 24px 0px 0px; font-family: var(--font_opensans_semibold); font-size: calc(16px + (19 - 16) * ((100vw - 300px) / (1920 - 300))); line-height: 1.55; color: var(--color_azul_marino);}
.obra_layout{display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 60px; align-items: start; margin-top: 44px;}
.obra_texto{color: #4A4A4A;}
.obra_texto p{margin: 0px 0px 20px;}
.obra_texto h2{margin: 36px 0px 14px; font-family: var(--font_opensans_bold); font-weight: normal; font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (1920 - 300))); color: var(--color_azul_marino);}
.obra_texto ul{margin: 0px 0px 20px; padding-left: 20px;}
.obra_texto li{margin-bottom: 8px;}
.obra_texto li::marker{color: var(--color_amarillo);}
.obra_texto strong{font-family: var(--font_opensans_bold); font-weight: normal; color: var(--color_azul_marino);}
.obra_imagen{display: block; width: 100%; height: auto; margin-bottom: 28px;}
.obra_ficha{position: sticky; top: 120px; background-color: var(--color_gris); border-top: 4px solid var(--color_amarillo); padding: 26px 26px 28px; font-family: var(--font_opensans_regular); color: var(--color_azul_marino);}
.obra_ficha_titulo{font-family: var(--font_opensans_bold); font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 18px;}
.obra_ficha dl{margin: 0px;}
.obra_ficha dt{font-family: var(--font_opensans_semibold); font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color_gris_oscuro); margin-top: 14px;}
.obra_ficha dd{margin: 3px 0px 0px; font-size: 14px; line-height: 1.45;}
.obra_ficha .obra_ficha_importe{font-family: var(--font_opensans_bold); font-size: 22px;}
.obra_ficha .obra_ficha_importe span{font-family: var(--font_opensans_regular); font-size: 12px; color: var(--color_gris_oscuro);}
.obra_ficha_contacto{display: block; margin-top: 24px; padding: 13px 16px; text-align: center; background-color: var(--color_amarillo); color: var(--color_azul_marino); font-family: var(--font_opensans_bold); font-size: 13px; text-transform: uppercase; text-decoration: none;}
.obra_ficha_contacto:hover{background-color: var(--color_azul_marino); color: var(--color_blanco);}
.obra_otras{margin-top: 70px; padding-top: 30px; border-top: 1px solid #E6E6E6;}
.obra_otras_titulo{font-family: var(--font_opensans_bold); color: var(--color_azul_marino); font-size: 20px; margin-bottom: 20px;}
.obra_otras ul{list-style: none; margin: 0px; padding: 0px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0px 40px;}
.obra_otras li{padding: 14px 0px; border-bottom: 1px solid #E6E6E6;}
.obra_otras li a{display: block; color: var(--color_azul_marino); font-family: var(--font_opensans_semibold); font-size: 15px; line-height: 1.4; text-decoration: none;}
.obra_otras li a:hover{text-decoration: underline; text-decoration-color: var(--color_amarillo);}
.obra_otras li span{display: block; margin-top: 4px; font-family: var(--font_opensans_regular); font-size: 13px; color: var(--color_gris_oscuro);}
.obra_volver{display: inline-block; margin-top: 36px; color: var(--color_azul_marino); font-family: var(--font_opensans_bold); font-size: 13px; text-transform: uppercase; text-decoration: none; border-bottom: 2px solid var(--color_amarillo);}

@media only screen and (max-width: 1000px){
    .obra_layout{grid-template-columns: minmax(0, 1fr); gap: 36px;}
    .obra_ficha{position: static;}
    .obra_otras ul{grid-template-columns: minmax(0, 1fr);}
}
