@import url("https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css") (prefers-reduced-motion: no-preference);
/* Extracted public shell: Inspinia Pixel, Sora and existing portal layout. */
*{box-sizing:border-box}body{margin:0;font:400 16px/1.5 Sora,Arial,sans-serif;background:#fff;color:#111}.shell{width:min(1180px,92%);margin-inline:auto}h1,h2,p{font-family:inherit}.estate-site-header{position:sticky;top:0;z-index:1035;background:#fff;padding:4px 0 2px;border-bottom:1px solid #e4e9e4;box-shadow:0 2px 12px #11111108}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74.8px}.site-brand-logo{display:block;position:relative;width:147.41px;max-width:100%;aspect-ratio:281/61;flex-shrink:0;box-shadow:0 2px 7px #11111112}.site-brand-logo img{display:block;width:100%;height:auto;max-height:32px;object-fit:contain}.estate-site-header .site-brand-logo::after{content:"";position:absolute;inset:0 auto 0 0;width:15%;background:#fff;opacity:0;pointer-events:none;transition:opacity .2s ease}.estate-site-header .site-brand-logo:focus-visible::after{opacity:.12}@media(hover:hover){.estate-site-header .site-brand-logo:hover::after{opacity:.12}}@media(prefers-reduced-motion:reduce){.estate-site-header .site-brand-logo::after{transition:none}}.header-actions{display:flex;align-items:center;gap:18px}.btn.btn-outline-dark{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;min-height:38px;border:1px solid #111;border-radius:5px;background:transparent;color:#111;font:600 14px/20px Sora,Arial,sans-serif;white-space:nowrap;box-shadow:none}.btn.btn-outline-dark:hover,.btn.btn-outline-dark:focus-visible{background:#111;color:#fff;border-color:#111}.hero{background:url('asset.php?file=backgrounds%2FMain%20Composition%20%28103%29.jpg') center center/cover no-repeat;color:#fff;padding:54px 0 80px;min-height:calc(228.75px + clamp(107.52px,16.8vw,194.88px))}.hero-intro{text-align:left}.hero h1{max-width:650px;margin:18px 0;font-size:clamp(32px,5vw,58px);line-height:1.12;font-weight:600;color:inherit}.hero p{font-size:27px;line-height:1.25;font-weight:400;margin:0;color:#fff}.estate-site-footer{background:#fff;color:#111;padding:40px 0;margin:0}.estate-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px}.estate-footer-intro{min-width:0}.estate-footer-intro .site-brand-logo{width:147.41px}.estate-footer-intro p{font-size:12px;line-height:1.45;font-weight:400;margin:0}.estate-footer-links{display:grid;grid-template-columns:repeat(3,1fr);width:max-content;justify-self:end;align-items:start;gap:28px;position:relative;isolation:isolate;padding-top:8px}.estate-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0}.estate-footer-column h2{font-size:14px;line-height:24px;font-weight:700;color:#111;margin:0 0 16px}.estate-footer-column span{font-size:12px;line-height:1.6;font-weight:400;margin-bottom:10px}.estate-footer-divider{margin:28px 0 20px;border:0;border-top:1px solid #1111111a;opacity:1}.estate-footer-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;font-size:12px}.estate-footer-domain{color:#008cff}.estate-footer-bottom strong{font-weight:700}
@media(max-width:991px){.estate-footer-grid{grid-template-columns:minmax(0,1fr);gap:24px}.estate-footer-links{padding-top:0}}
@media(max-width:580px){.topbar{flex-wrap:nowrap;gap:12px;min-height:61.2px;padding:10px 0}.site-brand-logo{width:min(132.67px,calc(100% - 64px));flex-shrink:1}.header-actions{width:auto;flex-shrink:0;gap:12px}.btn.btn-outline-dark{font-size:13px;padding:8px 13px}.hero{padding:30px 0 42px;min-height:275.37px}.hero h1{font-size:34px}.hero p{font-size:22.5px}.estate-footer-links{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.estate-footer-column:last-child{grid-column:1/-1}.estate-footer-bottom{flex-direction:column;gap:8px}}

/* Header logo +10%; footer retains its existing size. */
.estate-site-header .site-brand-logo{width:162.15px}
.estate-site-header .site-brand-logo img{max-height:35.2px}
@media(max-width:580px){.estate-site-header .site-brand-logo{width:min(145.94px,calc(100% - 64px))}}
/* Portal navigation, vertically aligned with the existing logo. */
.portal-main-menu{display:flex;align-items:center;flex:1;min-width:0;gap:24px}
.portal-menu-primary,.portal-menu-secondary{display:flex;align-items:center;gap:24px}
.portal-menu-item{font-family:Sora,Arial,sans-serif;line-height:1.25;color:#111;white-space:nowrap;cursor:pointer}
.portal-menu-secondary{margin-left:auto}.portal-menu-item{text-decoration:none}
@media(max-width:850px){
 .estate-site-header .topbar{flex-wrap:wrap;gap:12px 20px;padding-block:10px}
 .portal-main-menu{order:3;flex-basis:100%;gap:12px;flex-wrap:wrap}
 .portal-menu-primary,.portal-menu-secondary{gap:16px;flex-wrap:wrap}
 .portal-main-menu .portal-menu-item{font-size:var(--theme-font-size-md)!important}
 .estate-site-header .header-actions{margin-left:auto}
}
/* Responsive equivalents of system fs-md / fs-sm; desktop uses fs-xl. */
@media(max-width:380px){.portal-main-menu .portal-menu-item{font-size:var(--theme-font-size-sm)!important}}
/* Swap the label for a small logo without changing navigation geometry. */
.portal-menu-logo-swap{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:35.2px;overflow:hidden}
.portal-menu-logo-swap .portal-menu-label{transition:opacity .18s ease}
.portal-menu-hover-logo{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;height:auto;opacity:0;pointer-events:none;transition:opacity .18s ease}
@media(hover:hover) and (pointer:fine){
 .portal-menu-logo-swap:hover .portal-menu-label{opacity:0}
 .portal-menu-logo-swap:hover .portal-menu-hover-logo{opacity:1}
}
.portal-menu-logo-swap:focus-visible .portal-menu-label{opacity:0}
.portal-menu-logo-swap:focus-visible .portal-menu-hover-logo{opacity:1}
@media(prefers-reduced-motion:reduce){.portal-menu-logo-swap .portal-menu-label,.portal-menu-hover-logo{transition:none}}


/* Latest local news: four cards per desktop row, two on tablets, one on phones. */
.local-news-sections{padding-block:32px}
.local-news-section+.local-news-section{margin-top:32px}
.local-news-card{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:5px;background:#16436a;color:#fff;text-decoration:none}
.local-news-card>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.local-news-card-caption{position:absolute;inset:0;display:flex;align-items:flex-end;padding:16px;background:linear-gradient(180deg,transparent 15%,rgba(0,0,0,.35) 45%,rgba(0,0,0,.85));color:#fff}
.local-news-card-caption h3{color:inherit;line-height:1.35;text-shadow:0 1px 3px #0009}
.local-news-card:focus-visible{outline:3px solid #008cff;outline-offset:3px}
@media(hover:hover){a.local-news-card:hover .local-news-card-caption{background:linear-gradient(180deg,transparent,rgba(0,0,0,.9))}}
.local-news-heading{display:flex;align-items:center;gap:.5em}
.local-news-city-icon{width:1.2em;height:1.2em;flex-shrink:0;color:#008cff}

/* News occupies 9 columns; the advertising sidebar occupies 3. */
.local-news-sidebar-ad img{display:block;width:100%;max-width:350px;height:auto;border-radius:5px}
.local-news-sidebar-ad a{display:block}
@media(max-width:991px){.local-news-sidebar-ad{max-width:350px;margin-inline:auto}}
/* Subtle photo zoom within the existing card bounds. */
.local-news-card>img{transition:transform .25s ease}
@media(hover:hover) and (pointer:fine){a.local-news-card:hover>img{transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.local-news-card>img{transition:none}a.local-news-card:hover>img{transform:none}}
/* Keep news blocks, photos and sidebar images nearly square. */
.local-news-section.card,.local-news-card,.local-news-sidebar-ad img{border-radius:2px}
.local-news-card>img{border-radius:0}
/* Subtle separation above the footer, matching the header shadow. */
.estate-site-footer{box-shadow:0 -2px 12px #11111108}

/* Match the large photo to the full height of the two stacked photos. */
@media(min-width:768px){
 .local-news-featured-main{display:flex}
 .local-news-featured-main>.local-news-card{width:100%;aspect-ratio:auto}
 .local-news-featured-main>.local-news-card>img{position:absolute;inset:0}
}
/* Equal top and bottom edges; the smaller photos share the remaining height. */
@media(min-width:768px){
 .local-news-featured-main>.local-news-card{aspect-ratio:16/9}
 .local-news-featured-secondary{position:relative}
 .local-news-featured-stack{position:absolute;inset:0 calc(var(--theme-gutter-x,1.25rem)*.5);display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:.5rem}
 .local-news-featured-stack>.local-news-card{aspect-ratio:auto;min-height:0}
 .local-news-featured-stack>.local-news-card>img{position:absolute;inset:0}
}

/* Per-municipality layouts depend only on today's published posts. */
.local-news-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.local-news-carousel-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.local-news-carousel-button{display:inline-flex;align-items:center;justify-content:center;min-width:1.8em;height:1.8em;padding:0;border:0;background:transparent;color:#111;cursor:pointer}
.local-news-carousel-button:disabled{color:var(--theme-secondary-color,#8a969c);opacity:.4;cursor:default}
.local-news-carousel-button:focus-visible{outline:2px solid #008cff;outline-offset:2px}
.local-news-carousel-viewport{position:relative;display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.local-news-carousel-viewport::-webkit-scrollbar{display:none}
.local-news-carousel-item{flex:0 0 calc((100% - 1rem)/2);min-width:0;scroll-snap-align:start}

@media(max-width:767px){
 .local-news-carousel-item{flex-basis:100%}
 
}
/* Compact arrows next to the municipality heading; retain system fs-xl. */
.local-news-carousel-controls{gap:.125rem}
.local-news-carousel-button{min-width:1.25em}

.local-news-heading-divider{padding-bottom:.125rem;border-bottom:1px solid var(--theme-border-color,#e4e9e4)}

/* Advertising images remain static on hover. */
.article-custom-ad img,.article-custom-ad:hover img,.local-news-sidebar-ad img,.local-news-sidebar-ad:hover img,.article-page> .row>aside img,.article-page> .row>aside a:hover img{transform:none!important;scale:none!important;transition:none!important;box-shadow:none!important}
/* Center section pagination and retain the shared black outline buttons. */
.portal-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;width:100%}
.portal-pagination .btn-outline-dark:hover,.portal-pagination .btn-outline-dark:focus-visible{background:#111;color:#fff;border-color:#111}

/* County dropdown: no arrow, opens below the parent label. */
.portal-menu-dropdown{position:relative;display:flex;align-items:center}
.portal-submenu{display:none;position:absolute;inset:100% auto auto 0;z-index:1040;min-width:260px;max-height:65vh;overflow-y:auto;margin:0;padding:.5rem;list-style:none;background:#fff;border:1px solid #e4e9e4;border-radius:2px;box-shadow:0 4px 12px #11111112}
.portal-menu-dropdown:focus-within>.portal-submenu,.portal-menu-dropdown.is-open>.portal-submenu{display:block}
@media(hover:hover){.portal-menu-dropdown:hover>.portal-submenu{display:block}}
.portal-submenu a{display:block;padding:.45rem .65rem;color:#111;text-decoration:none;white-space:nowrap}
.portal-submenu a:hover,.portal-submenu a:focus-visible{font-weight:700;background:#f4f5f6}
@media(max-width:580px){.portal-submenu{min-width:min(260px,84vw);max-height:55vh}}
.local-news-card-caption h3{text-align:left!important}
.county-listing-row{margin-bottom:1rem}
.local-news-carousel-button[aria-disabled=true]{opacity:.35;pointer-events:none}

.news-road-wrapper{position:relative;width:100%;height:100%}.news-road-wrapper>.local-news-card{height:100%}

@media(min-width:768px){.local-news-featured-main>.news-road-wrapper>.local-news-card{aspect-ratio:auto;min-height:100%}.local-news-featured-main>.news-road-wrapper>.local-news-card>img{position:absolute;inset:0}}

.news-card-target{position:absolute;inset:0;z-index:1}.news-card-linked-caption{z-index:2;pointer-events:none}.news-card-municipality{display:inline-block;color:#fff;text-decoration:none;pointer-events:auto}.news-card-municipality:hover{color:#fff;text-decoration:underline}.news-card-red-rule{border:0;border-top:2px solid #dc2626;opacity:1;margin:.4rem 0 .5rem}.local-news-card:has(.news-card-target):hover>img{transform:scale(1.035)}@media(prefers-reduced-motion:reduce){.local-news-card:has(.news-card-target):hover>img{transform:none}}

/* Municipality, divider and title occupy separate lines on TwojeInfo24 cards. */
body[data-portal="twojeinfo24"] .local-news-card-caption{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}
body[data-portal="twojeinfo24"] .news-card-municipality{display:inline-block;width:auto;max-width:100%;background:#dc2626;color:#fff;padding:.15em .5em;border-radius:2px;line-height:1.4}
body[data-portal="twojeinfo24"] .news-card-red-rule{display:block;flex-shrink:0}
body[data-portal="twojeinfo24"] .local-news-card-caption h3{display:block;width:100%}
.local-news-location-link{color:inherit;text-decoration:none;cursor:pointer;font-weight:400}.local-news-location-link:hover{text-decoration:none;font-weight:700}.local-news-location-link:focus-visible{outline:2px solid currentColor;outline-offset:3px}




/* Horizontal cards for the lobez24 news listing only. */
.news-list-card{border-radius:2px;overflow:hidden}
.news-list-image{display:block;aspect-ratio:16/9;overflow:hidden}
.news-list-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.news-list-image:hover img{transform:scale(1.03)}
.news-list-card h2{line-height:1.25}
.news-list-card h2 a{text-decoration:none}
.news-list-card h2 a:hover{font-weight:700}

.news-list-lead{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@media(min-width:768px){
.news-list-card>.row{position:relative}
.news-list-card>.row>.col-md-9{position:absolute;inset:0 0 0 auto;height:100%;overflow:hidden}
.news-list-card .news-list-body{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:.5rem .75rem}
.news-list-card h2{flex-shrink:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.news-list-card .news-list-lead{min-height:0;line-height:1.4;-webkit-line-clamp:2}
}
@media(min-width:768px){.news-list-card .news-list-body{padding-top:0}}

.news-list-body{padding:1rem}
@media(min-width:768px){.news-list-card .news-list-body{padding:0 .75rem .5rem}}

.portal-menu-secondary .portal-submenu{left:auto;right:0}

.portal-menu-item.fw-normal:hover,.portal-menu-item.fw-normal:focus-visible{font-weight:700!important}

.news-list-municipality{text-decoration:none}.news-list-municipality:hover,.news-list-municipality:focus-visible{font-weight:700!important;text-decoration:none}

/* Keep photo overlays black across both portals; category accents remain on labels and rules below. */
body[data-portal="lobez24"] .local-news-card--signal>.local-news-card-caption,body[data-portal="twojeinfo24"] .local-news-card--signal>.local-news-card-caption,body[data-portal="twojeinfo24"] .local-news-card:not(.local-news-card--signal)>.local-news-card-caption{background:linear-gradient(180deg,transparent 15%,rgba(0,0,0,.35) 45%,rgba(0,0,0,.85))}
body[data-portal="twojeinfo24"] .local-news-card:not(.local-news-card--signal) .news-card-municipality{background:#008cff;color:#fff}
body[data-portal="twojeinfo24"] .local-news-card:not(.local-news-card--signal) .news-card-red-rule{border-top-color:#008cff}
body[data-portal="twojeinfo24"] .local-news-card--signal .news-card-municipality{background:#dc2626;color:#fff}
body[data-portal="twojeinfo24"] .local-news-card--signal .news-card-red-rule{border-top-color:#dc2626}

/* Brand only editorial media on TwojeInfo24. Source photos stay unchanged. */
.media-brand-frame{display:block;position:relative;line-height:0}
body[data-portal="twojeinfo24"].article-detail-page :is(.media-brand-frame,.article-poster-player){position:relative}
body[data-portal="twojeinfo24"].article-detail-page.article-media-brand-enabled :is(.article-gallery-tile,.media-brand-frame,.article-poster-player)::after{content:"";position:absolute;left:6%;bottom:0;margin-bottom:6%;width:clamp(48px,22%,180px);aspect-ratio:266/54;background:url('asset.php?file=logos%2Ftwojeinfo24.svg') center/contain no-repeat;z-index:3;pointer-events:none}
body[data-portal="twojeinfo24"].article-detail-page.article-media-brand-enabled .article-poster-player::after{bottom:2.25rem}
body[data-portal="twojeinfo24"].article-detail-page .gallery-lightbox .media-brand-frame{width:fit-content;max-width:100%;margin-inline:auto}
body[data-portal="twojeinfo24"].article-detail-page.article-media-brand-enabled .gallery-lightbox .media-brand-frame::after{width:clamp(80px,22%,220px)}


/* Municipality labels and captions on the portal homepages. */
body[data-portal] .portal-home .local-news-card .local-news-card-caption {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}
body[data-portal] .portal-home .local-news-card-caption h3 {
    width: 100%;
}
body[data-portal] .portal-home .local-news-card-caption .news-card-municipality {
    background: transparent;
    padding: 0;
    line-height: 1.4;
}
body[data-portal] .portal-home .local-news-card-caption .news-card-red-rule {
    display: block;
    flex-shrink: 0;
}


@media (max-width: 991.98px) {
    .portal-home .local-news-card-caption h3.h1 {
        font-size: clamp(var(--theme-font-size-xl), 3vw, 1.5rem) !important;
    }
}
@media (max-width: 767.98px) {
    .portal-home .local-news-card-caption h3.fs-xl {
        font-size: var(--theme-font-size-lg) !important;
    }
    .portal-home .local-news-card-caption h3.fs-lg {
        font-size: var(--theme-font-size-md) !important;
    }
}


.portal-home :is(.home-latest-news, .local-news-sections) .local-news-card .news-card-red-rule {
    border-top-color: #008cff;
}
.portal-home :is(.home-latest-news, .local-news-sections) .local-news-card.local-news-card--signal .news-card-red-rule {
    border-top-color: #dc2626;
}

.estate-site-header .portal-estate-dropdown { position: static; }
.portal-submenu.portal-estate-preview { width: 100%; left: 50%; transform: translateX(-50%); top: 100%; overflow: visible; padding: .25rem; max-height: none; }
.portal-estate-preview::before { content: ""; position: absolute; inset: -1.5rem 0 100%; }
.portal-estate-preview iframe { display: block; width: 100%; height: min(19rem, 55vh); border: 0; }


.estate-site-header:has(.portal-estate-dropdown:is(.is-open, :hover, :focus-within))::after {
    content: "";
    position: absolute;
    inset: 100% 0 auto;
    height: 100vh;
    background: rgb(0 0 0 / 40%);
    pointer-events: none;
    z-index: 1039;
}


.portal-estate-dropdown:is(.is-open, :hover, :focus-within) > .portal-menu-logo-swap .portal-menu-label { opacity: 0; }
.portal-estate-dropdown:is(.is-open, :hover, :focus-within) > .portal-menu-logo-swap .portal-menu-hover-logo {
    opacity: 1;
}


.estate-site-footer .estate-footer-column :is(a, .portal-legal-link):is(:hover, :focus-visible),
.estate-site-footer [aria-labelledby="footer-contact"] > span:hover {
    font-weight: 700 !important;
}


.estate-site-header .portal-estate-dropdown > .portal-estate-preview {
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-50%) translateY(-8px) scaleY(.97);
    transform-origin: top center;
    transition: opacity 280ms ease, transform 280ms ease, visibility 0s linear 280ms;
}
.estate-site-header .portal-estate-dropdown:is(.is-open, :hover, :focus-within) > .portal-estate-preview {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0) scaleY(1);
    transition-delay: 0s;
}
@media (prefers-reduced-motion: reduce) {
    .estate-site-header .portal-estate-dropdown > .portal-estate-preview {
        transition: none;
    }
}


@media (prefers-reduced-motion: no-preference) {
    .estate-site-header .portal-estate-dropdown:is(.is-open, :hover, :focus-within) > .portal-estate-preview {
        animation: fadeIn 420ms ease-out;
    }
}
