/* PortugalHoy V2: exclusivamente a pagina de inicio; no afecta a entradas ni admin. */
body.phh2-home-page{margin:0!important;background:#f4f7f5!important;color:#15372e!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important}
body.phh2-home-page *,body.phh2-home-page *::before,body.phh2-home-page *::after{box-sizing:border-box}
body.phh2-home-page .phh2-page{min-height:100vh;line-height:1.5;max-width:100%;overflow-x:clip}
body.phh2-home-page .phh2-page a{text-decoration:none;color:inherit}
body.phh2-home-page .phh2-page h1,body.phh2-home-page .phh2-page h2,body.phh2-home-page .phh2-page h3{letter-spacing:-.035em;margin:0;line-height:1.17;font-family:inherit;font-weight:770}
.phh2-container{width:min(1310px,calc(100% - 56px));margin-left:auto;margin-right:auto}
.phh2-skip{position:absolute;left:-9999px;top:10px;z-index:2000;background:#fff;padding:12px 18px}
.phh2-skip:focus{left:10px}
.phh2-preview-banner{background:#fff2c9;color:#78520e;text-align:center;font-weight:750;padding:11px 16px;font-size:13px}
.phh2-topbar{background:#073d30;color:#e8f4ed;font-size:11px;letter-spacing:.11em;font-weight:750}
.phh2-topbar-inner{display:flex;justify-content:space-between;gap:12px;padding:8px 0}
.phh2-header{background:#fff;border-bottom:1px solid #e2e8e4;position:relative;z-index:25;box-shadow:0 2px 10px rgba(4,48,29,.035)}
.phh2-header-row{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:106px;padding:16px 0}
.phh2-brand{display:flex!important;align-items:center;flex:0 0 auto;max-width:290px;min-width:170px}
body.phh2-home-page .phh2-brand img{display:block;width:clamp(210px,21vw,285px)!important;height:auto!important;max-width:100%;object-fit:contain;border:0;box-shadow:none}
.phh2-navigation{display:flex;align-items:center;justify-content:flex-end;gap:19px;min-width:0;flex:1 1 auto}
.phh2-navigation ul,.phh2-navigation ul.phh2-nav-list{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;list-style:none!important;gap:4px 17px;margin:0!important;padding:0!important}
.phh2-navigation li{display:list-item;margin:0!important;padding:0!important;list-style:none!important}
body.phh2-home-page .phh2-navigation a{display:inline-flex;padding:12px 0;color:#1b3a30!important;font-size:14px;font-weight:700;line-height:1.2;transition:color .15s}
body.phh2-home-page .phh2-navigation a:hover,body.phh2-home-page .phh2-navigation a:focus-visible{color:#af291f!important}
.phh2-search{margin:0!important;display:flex;align-items:center;position:relative;width:150px;flex:0 1 150px;height:38px;border:1px solid #dbe6dc;background:#f6f9f7;border-radius:9px;overflow:hidden}
.phh2-search input[type=search]{width:100%!important;min-width:0!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:none;color:#173c30!important;padding:9px 2px 9px 10px!important;font-size:12px!important;height:36px!important;line-height:18px!important}
.phh2-search button{background:transparent!important;border:0!important;box-shadow:none!important;color:#245847!important;font-size:27px!important;line-height:1!important;min-width:35px;padding:0 5px!important;margin:0!important;cursor:pointer}
.phh2-visually-hidden{border:0!important;clip:rect(0,0,0,0)!important;height:1px!important;overflow:hidden!important;position:absolute!important;width:1px!important;white-space:nowrap!important}
.phh2-menu-toggle{display:none;border:1px solid #dce6df;background:#fff;padding:10px;border-radius:9px;width:43px;height:42px;flex:0 0 auto;cursor:pointer}
.phh2-menu-toggle span{display:block;width:21px;height:2px;background:#124332;margin:4px auto;border-radius:2px}
.phh2-main{padding-top:31px;padding-bottom:58px}
.phh2-intro{display:flex;align-items:center;justify-content:space-between;position:relative;min-height:164px;gap:22px;background:#e5efe8;border:1px solid #dbe9df;border-radius:18px;padding:29px 35px;overflow:hidden}
.phh2-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.17em;font-weight:850;color:#28674e;margin-bottom:13px}
.phh2-eyebrow i{display:inline-block;width:8px;height:8px;background:#b72b25;border-radius:50%}
body.phh2-home-page .phh2-intro h2{font-size:clamp(25px,3vw,38px)!important;letter-spacing:-.045em;color:#103d2b}
.phh2-intro p{font-size:14px;margin:10px 0 0!important;color:#527265}
.phh2-intro-symbol{font-size:120px;line-height:1;font-weight:900;color:rgba(18,91,60,.10);letter-spacing:-.13em;transform:rotate(-7deg);margin-right:25px;user-select:none}
.phh2-section{margin-top:36px}
.phh2-section-title{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid #dfe7e1;padding-bottom:13px;margin-bottom:19px;gap:16px}
body.phh2-home-page .phh2-section-title h2{font-size:24px!important;color:#112f27;position:relative;padding-left:17px}
.phh2-section-title h2::before{content:"";position:absolute;top:3px;bottom:3px;left:0;background:#b32525;width:4px;border-radius:2px}
.phh2-section-title>span{font-size:12px;color:#77867c}
.phh2-featured-grid{width:100%;max-width:none;display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:18px;align-items:stretch}
.phh2-featured-side{min-width:0;display:grid;grid-template-rows:1fr 1fr;gap:18px}
.phh2-card{background:#fff;border:1px solid #e2e9e4;border-radius:14px;min-width:0;width:100%;max-width:none;display:flex;position:relative;overflow:hidden;box-shadow:0 5px 22px rgba(20,54,38,.035);transition:transform .16s,box-shadow .16s}
.phh2-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,54,38,.075)}
.phh2-card-body{display:flex;flex-direction:column;align-items:flex-start;min-width:0;width:100%;padding:27px 28px}
.phh2-card-category{display:inline-flex;font-size:10px!important;font-weight:850!important;letter-spacing:.10em;text-transform:uppercase;color:#a12221!important;background:#faeded;border-radius:5px;padding:5px 8px!important;margin-bottom:15px}
.phh2-card-title{width:100%;overflow-wrap:anywhere}
body.phh2-home-page .phh2-card-title a{color:#152f28!important}
body.phh2-home-page .phh2-card-title a:hover{color:#9b2621!important}
body.phh2-home-page .phh2-card--lead .phh2-card-title{font-size:clamp(29px,3vw,43px)!important;line-height:1.12;max-width:650px}
body.phh2-home-page .phh2-card--side .phh2-card-title{font-size:clamp(18px,1.8vw,23px)!important;line-height:1.22}
body.phh2-home-page .phh2-card--standard .phh2-card-title{font-size:21px!important;line-height:1.26}
.phh2-card-excerpt{font-size:14px!important;line-height:1.65;color:#64766d;margin:15px 0 0!important;max-width:61ch}
.phh2-card-meta{margin-top:auto;padding-top:20px;width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;font-size:11px;color:#88968c}
body.phh2-home-page .phh2-card-more{font-size:11px;color:#1c694c!important;font-weight:800;white-space:nowrap}
.phh2-card-more span{margin-left:4px}
.phh2-card--lead{min-height:382px;background:linear-gradient(117deg,#fff 0%,#fff 66%,#e6f3e9 100%)}
.phh2-card--lead .phh2-card-body{padding:35px 38px;position:relative;z-index:2;max-width:86%}
.phh2-lead-decor{position:absolute;right:-23px;bottom:-49px;width:224px;height:224px;border:32px solid rgba(17,111,75,.08);border-radius:50%;display:grid;place-items:center;pointer-events:none}
.phh2-lead-decor span{font-size:72px;letter-spacing:-.16em;font-weight:900;color:rgba(19,102,64,.12);transform:translate(-13px,-5px)}
.phh2-card--side{min-height:182px}
.phh2-card--side .phh2-card-body{padding:22px 24px}
.phh2-card--side .phh2-card-category{margin-bottom:10px}
.phh2-card--side .phh2-card-excerpt{display:none}
.phh2-card--side .phh2-card-meta{padding-top:11px}
.phh2-feed-grid{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.phh2-card--standard{min-height:249px}
.phh2-card--standard .phh2-card-body{padding:24px}
.phh2-card--standard .phh2-card-excerpt{font-size:13px!important;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.phh2-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.phh2-home-page .phh2-categories a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;border-radius:11px;background:#fff;border:1px solid #dfe7e1;color:#1f4737!important;font-weight:750;font-size:13px}
.phh2-categories a span{color:#b82e26}
.phh2-empty{margin:30px 0;padding:60px;text-align:center;background:white;border-radius:16px}
.phh2-footer{background:#073c30;color:#e5f0e9;border-top:4px solid #af2927}
.phh2-footer-content{padding:31px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}
.phh2-footer strong{font-size:23px;color:#fff;letter-spacing:-.05em}.phh2-footer strong span{color:#f2a19e}
.phh2-footer p{color:#afc8ba;margin:6px 0 0;font-size:12px}
.phh2-footer-content>div:last-child{display:flex;align-items:center;gap:18px;font-size:12px;color:#bcd2c7}
@media(max-width:1120px){.phh2-navigation{gap:10px}.phh2-navigation ul{gap:3px 11px!important}.phh2-navigation a{font-size:12px!important}.phh2-search{flex-basis:105px;width:105px}.phh2-card--lead .phh2-card-body{max-width:96%}}
@media(max-width:880px){.phh2-header-row{min-height:88px}.phh2-brand{min-width:140px}.phh2-brand img{width:220px!important}.phh2-menu-toggle{display:block!important}.phh2-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 12px 22px rgba(4,40,27,.12);border-top:1px solid #e1e7e2;padding:15px 25px 21px;z-index:30}.phh2-navigation.phh2-nav-open{display:flex;flex-direction:column;align-items:stretch;gap:14px}.phh2-navigation ul,.phh2-navigation ul.phh2-nav-list{flex-direction:column;align-items:stretch;gap:0!important}.phh2-navigation li{border-bottom:1px solid #edf1ed}.phh2-navigation a{width:100%;padding:13px 6px!important;font-size:14px!important}.phh2-search{width:100%;flex-basis:42px;height:42px}.phh2-featured-grid{grid-template-columns:1fr}.phh2-featured-side{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.phh2-card--side{min-height:230px}.phh2-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phh2-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.phh2-container{width:calc(100% - 28px)}.phh2-topbar{font-size:9px}.phh2-topbar-inner span:last-child{display:none}.phh2-header-row{padding:10px 0;min-height:78px}.phh2-brand img{width:190px!important}.phh2-main{padding-top:17px;padding-bottom:30px}.phh2-intro{padding:23px;min-height:126px;border-radius:12px}.phh2-intro h2{font-size:26px!important}.phh2-intro p{font-size:12px!important}.phh2-intro-symbol{display:none}.phh2-section{margin-top:27px}.phh2-section-title{margin-bottom:13px}.phh2-section-title h2{font-size:21px!important}.phh2-section-title>span{display:none}.phh2-featured-grid{gap:12px}.phh2-featured-side{grid-template-columns:1fr;gap:12px}.phh2-card--lead{min-height:300px}.phh2-card--lead .phh2-card-body{padding:26px 23px;max-width:100%}.phh2-card--lead .phh2-card-title{font-size:28px!important}.phh2-card--side{min-height:165px}.phh2-card--side .phh2-card-body{padding:21px}.phh2-feed-grid{grid-template-columns:1fr;gap:12px}.phh2-card--standard{min-height:200px}.phh2-card--standard .phh2-card-body{padding:22px}.phh2-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.phh2-categories a{font-size:12px!important;padding:13px!important}.phh2-footer-content{flex-direction:column;align-items:flex-start}.phh2-footer-content>div:last-child{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.phh2-card{transition:none}}

/* PortugalHoy V2.1 — reparar interferencias del tema en la cabecera.
   Se aplica SOLO al HTML con phh2-home-page, no modifica otras páginas. */
body.phh2-home-page .phh2-page > .phh2-header {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
    background: #fff !important;
}
body.phh2-home-page .phh2-page .phh2-header .phh2-header-row {
    display: grid !important;
    grid-template-columns: minmax(205px, 290px) minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: space-between !important;
    column-gap: 42px !important;
    width: min(1310px, calc(100% - 56px)) !important;
    max-width: 1310px !important;
    height: 96px !important;
    max-height: 96px !important;
    min-height: 96px !important;
    padding: 10px 0 !important;
    margin: 0 auto !important;
    float: none !important;
    clear: both !important;
}
body.phh2-home-page .phh2-header .phh2-brand {
    display: flex !important;
    position: static !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 290px !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
    transform: none !important;
}
body.phh2-home-page .phh2-header .phh2-brand img {
    display: block !important;
    width: min(100%, 270px) !important;
    max-height: 70px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.phh2-home-page .phh2-header .phh2-navigation {
    display: flex !important;
    position: static !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 20px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
    transform: none !important;
}
body.phh2-home-page .phh2-header .phh2-navigation > ul,
body.phh2-home-page .phh2-header .phh2-navigation > ul.phh2-nav-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
}
body.phh2-home-page .phh2-header .phh2-navigation > ul > li {
    display: list-item !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    line-height: normal !important;
    list-style: none !important;
}
body.phh2-home-page .phh2-header .phh2-navigation > ul > li > a {
    display: inline-flex !important;
    flex-direction: row !important;
    width: auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    line-height: 1.35 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}
body.phh2-home-page .phh2-header .phh2-search {
    display: flex !important;
    flex: 0 0 145px !important;
    width: 145px !important;
    min-width: 0 !important;
    max-width: 145px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    float: none !important;
}
body.phh2-home-page .phh2-header .phh2-menu-toggle { display: none !important; }
/* Apilar el menú únicamente en tablet/móvil: no dejarlo en 2 o 3 filas. */
@media (max-width: 1160px) {
    body.phh2-home-page .phh2-page .phh2-header .phh2-header-row {
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 16px !important;
        height: 82px !important;
        min-height: 82px !important;
        max-height: 82px !important;
        padding: 10px 0 !important;
    }
    body.phh2-home-page .phh2-header .phh2-brand { max-width: 250px !important; }
    body.phh2-home-page .phh2-header .phh2-brand img { width: min(100%, 235px) !important; max-height: 62px !important; }
    body.phh2-home-page .phh2-header .phh2-menu-toggle {
        display: block !important;
        width: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 10px !important;
        position: static !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    body.phh2-home-page .phh2-header .phh2-navigation {
        display: none !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: none !important;
        padding: 14px max(18px, calc((100vw - 1310px) / 2)) 20px !important;
        margin: 0 !important;
        height: auto !important;
        max-height: min(75vh, 520px) !important;
        overflow-y: auto !important;
        z-index: 900 !important;
        background: #fff !important;
        box-shadow: 0 12px 25px rgba(2, 47, 28, .15) !important;
        border-top: 1px solid #e0ebe3 !important;
    }
    body.phh2-home-page .phh2-header .phh2-navigation.phh2-nav-open { display: flex !important; }
    body.phh2-home-page .phh2-header .phh2-navigation > ul,
    body.phh2-home-page .phh2-header .phh2-navigation > ul.phh2-nav-list {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100% !important;
        margin: 0 !important;
    }
    body.phh2-home-page .phh2-header .phh2-navigation > ul > li {
        width: 100% !important;
        padding: 0 !important;
        border-bottom: 1px solid #edf1ee !important;
    }
    body.phh2-home-page .phh2-header .phh2-navigation > ul > li > a {
        width: 100% !important;
        white-space: normal !important;
        padding: 11px 4px !important;
        font-size: 14px !important;
    }
    body.phh2-home-page .phh2-header .phh2-search {
        flex: 0 0 42px !important;
        width: 100% !important;
        max-width: none !important;
        height: 42px !important;
    }
}
@media (max-width: 600px) {
    body.phh2-home-page .phh2-page .phh2-header .phh2-header-row {
        width: calc(100% - 28px) !important;
        height: 74px !important;
        min-height: 74px !important;
        max-height: 74px !important;
    }
    body.phh2-home-page .phh2-header .phh2-brand img { width: min(100%, 205px) !important; max-height: 54px !important; }
}

/* PortugalHoy V2.2: imágenes REALES de las entradas. No se generan fotografías falsas. */
body.phh2-home-page .phh2-card--has-image {
    background: #fff !important;
}
body.phh2-home-page .phh2-card-media {
    display: block !important;
    position: relative !important;
    flex-shrink: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #e5eee8 !important;
}
body.phh2-home-page .phh2-card-media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    transition: transform .25s ease;
}
body.phh2-home-page .phh2-card-media:hover img {transform: scale(1.035)}
/* Reportaje principal: texto a izquierda + imagen a derecha. */
body.phh2-home-page .phh2-card--lead.phh2-card--has-image {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    min-height: 385px;
}
body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-body {
    width: 58% !important;
    max-width: 58% !important;
    min-width: 0 !important;
    flex: 1 1 58% !important;
}
body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-media {
    width: 42% !important;
    align-self: stretch !important;
    flex: 0 0 42% !important;
}
/* Noticias de la derecha: fotografía compacta a la derecha. */
body.phh2-home-page .phh2-card--side.phh2-card--has-image {
    display: flex !important;
    flex-direction: row !important;
}
body.phh2-home-page .phh2-card--side.phh2-card--has-image .phh2-card-body {
    order: 0 !important;
    flex: 1 1 62% !important;
    width: 62% !important;
}
body.phh2-home-page .phh2-card--side.phh2-card--has-image .phh2-card-media {
    order: 1 !important;
    width: 38% !important;
    flex: 0 0 38% !important;
}
/* Sección últimas noticias: imagen 16:9 encima y texto debajo. */
body.phh2-home-page .phh2-card--standard.phh2-card--has-image {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0;
}
body.phh2-home-page .phh2-card--standard.phh2-card--has-image .phh2-card-media {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    flex: 0 0 auto !important;
}
body.phh2-home-page .phh2-card--standard.phh2-card--has-image .phh2-card-body {
    flex: 1 1 auto !important;
}
@media (max-width: 1050px) {
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-body { width: 60% !important; max-width: 60% !important; flex-basis: 60% !important; }
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-media { width: 40% !important; flex-basis: 40% !important; }
}
@media (max-width: 700px) {
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image {
        flex-direction: column-reverse !important;
    }
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-body,
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-media {
        width: 100% !important; max-width: 100% !important; flex-basis: auto !important;
    }
    body.phh2-home-page .phh2-card--lead.phh2-card--has-image .phh2-card-media {
        height: auto !important; aspect-ratio: 16 / 9 !important;
    }
}
@media (max-width: 560px) {
    body.phh2-home-page .phh2-card--side.phh2-card--has-image {flex-direction: column-reverse !important}
    body.phh2-home-page .phh2-card--side.phh2-card--has-image .phh2-card-body,
    body.phh2-home-page .phh2-card--side.phh2-card--has-image .phh2-card-media {
        width: 100% !important;flex-basis: auto !important;
    }
    body.phh2-home-page .phh2-card--side.phh2-card--has-image .phh2-card-media {
        height: auto !important; aspect-ratio: 16 / 9 !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.phh2-home-page .phh2-card-media img {transition: none !important}
}
