/* Portal Patrimonial (Circuito Cultural y Patrimonial). Se carga después de general-port.css */

@font-face {font-family: productsansbold; src: url("/prontus_unap/font/productsans/productsansbold.ttf") format("truetype"); font-display: swap;}
@font-face {font-family: productsansregular; src: url("/prontus_unap/font/productsans/productsansregular.ttf") format("truetype"); font-display: swap;}

:root {
    --pp-azul: #026ab2;
    --pp-gris: #45546a;
    --pp-turquesa: #079498;
    --pp-naranja: #ce692c;
    --pp-rojo: #e63c16;
    --pp-amarillo: #f4ba08;
    --pp-borde: #e3e8ee;
}

/* general-port.css está afinado a base 10px (1rem=10px) */
html {font-size: 62.5%;}
body {font-family: productsansregular, sans-serif; font-size: 1.6rem; line-height: 1.5; color: var(--pp-gris);}
main a {color: var(--pp-azul); text-decoration: none;}
main a:hover {color: var(--pp-gris);}

/* la portada se oculta cuando se abre otra sección */
html[data-p]:not([data-p="inicio"]) #pp-inicio {display: none;}

/* cabecera y menú */
.pp-cabecera {padding-top: 12px; padding-bottom: 10px; border-bottom: 1px solid #eee;}
.pp-cabecera img {max-height: 72px; width: auto;}
.pp-nav {padding: 0; background-color: #fff; border-bottom: 1px solid var(--pp-borde);}
.pp-nav .nav-link {padding: 12px 14px; font-size: 1.5rem; color: var(--pp-gris); border-bottom: 3px solid transparent;}
.pp-nav .nav-link:hover, .pp-nav .nav-link:focus {color: var(--pp-azul);}
.pp-nav .nav-link.active {color: var(--pp-azul); border-bottom-color: var(--pp-azul);}
.pp-nav .dropdown-menu {font-size: 1.5rem;}
.pp-nav .dropdown-item.active {color: #fff; background-color: var(--pp-azul);}
.pp-nav .navbar-toggler {margin: 8px 12px;}

/* carrusel y franja */
.pp-carrusel img {display: block; width: 100%;}
.pp-banda {display: flow-root; color: #fff; background-color: #029296;} /* flow-root: el artículo usa float */
.pp-banda img {max-width: 100%; height: auto;}

/* títulos de sección */
.pp-titulo {margin: 0 0 14px; padding-bottom: 6px; font-family: productsansbold, sans-serif; font-size: 1.6rem; letter-spacing: 2px; text-transform: uppercase; color: var(--pp-gris); border-bottom: 1px solid var(--pp-azul);}
.pp-seccion {margin-top: 44px; scroll-margin-top: 16px;}
.pp-seccion:first-child {margin-top: 0;}
.pp-mas {display: flex; justify-content: space-between; gap: 16px; margin-top: 14px; font-size: 1.4rem;}

/* portada */
.pp-portada {margin-top: 28px; margin-bottom: 48px;}
.pp-destacado img {display: block; width: 100%; height: auto; border-radius: 8px;}
.pp-destacado h2 {margin: 14px 0 8px; font-family: productsansregular, sans-serif; font-size: 2.6rem; line-height: 1.2;}
.pp-resumen {font-size: 1.5rem;}

/* tarjetas */
.pp-tarjeta {display: flex; flex-direction: column; height: 100%; overflow: hidden; background-color: #fff; border: 1px solid var(--pp-borde); border-radius: 8px;}
.pp-tarjeta img.pp-tarjeta-foto {display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover;}
.pp-tarjeta-txt {padding: 12px 14px; font-size: 1.5rem; line-height: 1.3;}
.pp-tarjeta-bajada {margin-top: 8px; font-size: 1.3rem; color: var(--pp-gris);}
.pp-tarjeta-fecha {display: flex; gap: 6px; margin-top: 8px; font-size: 1.3rem;}
.pp-tarjeta-fecha img {flex: none; width: 16px; height: 16px; margin-top: 2px;}
.pp-tarjeta-lugar {display: flex; align-items: center; gap: 4px; margin-top: auto; padding: 0 14px 10px; font-size: 1.3rem;}
.pp-tarjeta-lugar .btn {padding: 0; font-size: 1.3rem;}
.pp-circuito {border-bottom: 6px solid var(--pp-azul);}
.pp-video iframe {display: block; width: 100%; height: auto; aspect-ratio: 16 / 9;}
.pp-video p {margin-top: 8px; font-size: 1.4rem;}
.modal iframe {display: block; width: 100%; height: 375px; border: 0;}

/* columna lateral */
.pp-columna {display: flex; gap: 10px; padding-bottom: 14px; margin-bottom: 14px; font-size: 1.5rem; line-height: 1.3; border-bottom: 1px solid var(--pp-borde);}
.pp-columna img {flex: none; width: 80px; height: auto; border-radius: 4px;}
.pp-columna small {display: block; margin-top: 4px; font-size: 1.3rem;}
.pp-doc {display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 64px; margin-bottom: 10px; padding: 8px 12px; color: #fff; border-radius: 6px;}
.pp-doc a {color: #fff;}
.pp-doc a:hover {color: #fff; text-decoration: underline;}
.pp-doc img {flex: none; width: 40px; height: auto;}
.pp-docs > .pp-doc:nth-child(6n+1) {background-color: var(--pp-azul);}
.pp-docs > .pp-doc:nth-child(6n+2) {background-color: var(--pp-turquesa);}
.pp-docs > .pp-doc:nth-child(6n+3) {background-color: var(--pp-naranja);}
.pp-docs > .pp-doc:nth-child(6n+4) {background-color: var(--pp-rojo);}
.pp-docs > .pp-doc:nth-child(6n+5) {background-color: #a87f00;}
.pp-docs > .pp-doc:nth-child(6n) {background-color: var(--pp-naranja);}
.pp-sitio {display: block; margin-bottom: 12px; padding: 6px; background-color: #fff; border-radius: 6px; box-shadow: 0 1px 6px rgba(0, 0, 0, .14);}
.pp-sitio img {display: block; width: 100%; height: auto;}

/* artículo abierto */
.pp-articulo {margin-top: 28px; margin-bottom: 48px;}
.pp-articulo h1 {margin-bottom: 8px; font-family: productsansregular, sans-serif; font-size: 3rem; line-height: 1.2; color: var(--pp-azul);}
.pp-articulo header {margin-bottom: 18px; text-align: center;}
.pp-volver {display: inline-block; margin-bottom: 12px; font-size: 1.5rem;}
.pp-cuerpo {padding: 20px; border: 1px solid var(--pp-borde); border-radius: 8px;}
.pp-cuerpo img, .pp-cuerpo iframe, .pp-panel img, .pp-panel iframe, .pp-portadilla img, .pp-bloque img, .pp-bloque iframe {max-width: 100%;}
.pp-cuerpo img, .pp-panel img, .pp-portadilla img, .pp-bloque img {height: auto;}

/* espacios y agrupaciones */
.pp-espacio {margin-top: 20px; margin-bottom: 48px;}
.pp-espacio-tit {margin: 20px 0 16px; font-family: productsansregular, sans-serif; font-size: 3rem; color: var(--pp-azul);}
.pp-portadilla {text-align: center;}
.pp-tabs {display: flex; flex-direction: column; gap: 10px;}
.pp-tab {display: block; width: 100%; padding: 7px; color: #fff; background-color: var(--pp-azul); border: 0; border-radius: 6px; opacity: .75;}
.pp-tab:hover, .pp-tab.activo {opacity: 1;}
.pp-tab.activo {outline: 3px solid var(--pp-gris); outline-offset: 1px;}
.pp-tab img {display: block; width: 100%; height: auto;}
.pp-tabs > .pp-tab:nth-child(6n+2) {background-color: var(--pp-turquesa);}
.pp-tabs > .pp-tab:nth-child(6n+3), .pp-tabs > .pp-tab:nth-child(6n+4) {background-color: var(--pp-naranja);}
.pp-tabs > .pp-tab:nth-child(6n+5) {background-color: var(--pp-amarillo);}
.pp-tabs > .pp-tab:nth-child(6n) {background-color: var(--pp-rojo);}
.pp-panel {display: none;}
.pp-panel.activo {display: block;}
.pp-bloque {margin-top: 40px;}
.pp-foto {margin: 0 0 12px;}
.pp-foto img {display: block; width: 100%; max-width: 800px; height: auto; margin: 0 auto; border-radius: 8px;}
.pp-foto figcaption {margin-top: 6px; font-size: 1.4rem; text-align: center;}
.pp-miniaturas {display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;}
.pp-miniaturas button {padding: 0; background: none; border: 3px solid transparent; border-radius: 6px;}
.pp-miniaturas button.activo {border-color: var(--pp-azul);}
.pp-miniaturas img {display: block; width: 100px; height: 67px; object-fit: cover; border-radius: 3px;}
.pp-info {padding: 16px 20px 24px; color: #fff; background-color: var(--pp-azul); border-radius: 8px;}
.pp-info-tit {display: flex; align-items: center; gap: 10px; margin: 14px 0 6px; padding-bottom: 5px; border-bottom: 1px solid #009ca6;}
.pp-info-tit img {flex: none;}
.pp-contacto {margin-top: 48px; margin-bottom: 96px;}

/* cierre: el crédito se une visualmente con el footer gris */
.pp-credito {padding-top: 24px; text-align: center; background-color: var(--pp-gris);}
.pp-credito img {max-width: 100%; height: auto;}

@media (max-width: 767px) {
    .pp-cabecera img {max-height: 52px;}
    .pp-tabs {flex-direction: row; flex-wrap: wrap;}
    .pp-tab {width: calc(50% - 5px);}
    .pp-mas {flex-wrap: wrap;}
}
