:root{
    --blue:#062b63;
    --blue-dark:#041d42;
    --gold:#d6b238;
    --black:#101010;
    --white:#ffffff;
    --light:#f4f5f7;
    --text:#1d1d1f;
    --muted:#666666;
    --shadow:0 14px 35px rgba(0,0,0,.16);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--light);color:var(--text)}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* TOPBAR */
.topbar{background:var(--blue-dark);color:var(--white);font-weight:700;font-size:14px}
.topbar-inner{max-width:1360px;margin:0 auto;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:22px}
.topbar a:hover{color:var(--gold)}

/* HEADER */
.brand-header{background:var(--white);border-bottom:5px solid var(--gold);display:grid;grid-template-columns:320px minmax(280px,1fr) 320px;align-items:center;gap:34px;padding:26px 42px}
.header-adv{height:90px;border:1px dashed #bdbdbd;background:#eeeeee;display:flex;align-items:center;justify-content:center;color:#777777;font-size:13px;text-transform:uppercase;overflow:hidden}
.header-adv img{width:100%;height:100%;object-fit:cover}
.logo-area{text-align:center;min-width:0}
.logo-link{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;max-width:100%}
.custom-logo-link{display:inline-flex;align-items:center;justify-content:center}
.custom-logo{width:min(680px,100%);max-height:138px;object-fit:contain}
.text-logo{color:var(--blue);font-weight:900;font-size:50px;letter-spacing:-1px;text-transform:uppercase}
.site-tagline{margin-top:6px;color:#111111;font-size:18px;font-weight:700}

/* MENU */
.category-nav{position:sticky;top:0;z-index:50;background:var(--blue);display:flex;align-items:center;justify-content:space-between;padding:0 42px;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.category-links{display:flex;align-items:center;flex-wrap:wrap}
.category-links a,.category-links .menu-item>a{display:block;color:var(--white);font-weight:900;text-transform:uppercase;padding:18px 15px;font-size:15px}
.category-links a:hover,.category-links .menu-item>a:hover{background:var(--gold);color:#111111}
.mobile-menu-btn{display:none;border:0;background:var(--gold);color:#111111;font-weight:900;padding:11px 14px;cursor:pointer;gap:8px;align-items:center}
.hamburger-icon{font-size:20px;line-height:1}
.search-area{margin-left:auto}
.search-form{display:flex;align-items:center}
.search-form input{height:38px;width:250px;border:0;padding:0 14px;outline:none}
.search-form button{height:38px;border:0;background:var(--gold);color:#111111;font-weight:900;padding:0 18px;cursor:pointer}


/* MENU CATEGORIE CON SOTTOCATEGORIE */
.category-links .lr-menu-parent{
    position:relative;
    display:flex;
    align-items:stretch;
}
.category-links .lr-menu-parent > a::after{
    content:"▾";
    display:inline-block;
    margin-left:7px;
    font-size:12px;
}
.lr-submenu{
    position:absolute;
    top:100%;
    left:0;
    min-width:210px;
    background:var(--blue-dark);
    box-shadow:0 12px 28px rgba(0,0,0,.25);
    border-top:3px solid var(--gold);
    display:none;
    z-index:80;
}
.lr-submenu a{
    white-space:nowrap;
    border-bottom:1px solid rgba(255,255,255,.10);
    padding:14px 16px!important;
}
.lr-submenu a span{
    display:block;
    margin-top:2px;
    color:rgba(255,255,255,.72);
    font-size:12px;
    font-weight:700;
}
.category-links .lr-menu-parent:hover .lr-submenu,
.category-links .lr-menu-parent:focus-within .lr-submenu{
    display:block;
}

/* SLIDER */
.hero-slider{position:relative;background:#000000;min-height:520px;overflow:hidden}
.slides-wrapper,.slide{min-height:520px}
.slides-wrapper{position:relative;overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .9s ease,visibility .9s ease}
.slide.active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.02)}
.slide.no-photo .slide-bg{background:linear-gradient(135deg,#111111,#292929)}
.slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.68) 42%,rgba(0,0,0,.22) 100%)}
.slide-content{position:absolute;left:5vw;bottom:64px;width:min(760px,86vw);color:#ffffff;z-index:2}
.category-pill{display:inline-flex;align-items:center;background:var(--gold);color:#111111;font-weight:900;padding:8px 12px;margin-bottom:14px;text-transform:none}
.category-pill.small{font-size:12px;padding:6px 9px;margin-bottom:10px}
.slide-content h1{margin:0 0 15px;font-size:46px;line-height:1.08;font-weight:900;letter-spacing:-.8px}
.slide-content h1 a:hover{color:var(--gold)}
.slide-content p{font-size:18px;line-height:1.35;max-width:720px}
.read-more{display:inline-flex;background:var(--gold);color:#111111;font-weight:900;padding:12px 18px;margin-top:10px}
.read-more:hover{filter:brightness(.95)}
.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:52px;height:66px;border:0;background:rgba(0,0,0,.62);color:#ffffff;font-size:48px;line-height:1;cursor:pointer}
.slider-btn:hover{background:var(--gold);color:#111111}
.slider-btn.prev{left:18px}
.slider-btn.next{right:18px}

/* AUTORI */
.author-line{display:flex;align-items:center;gap:10px;color:#ffffff;font-size:15px;font-weight:800;margin:0 0 12px}
.author-avatar img{width:34px;height:34px;border-radius:999px;border:2px solid var(--gold)}
.author-line-small{color:#444444;font-size:13px;margin:0 0 10px}
.author-line-small .author-avatar img{width:24px;height:24px;border-width:1px}
.single-meta .author-line{color:#333333;margin:0}

/* LAYOUT */
.home-categories,.archive-page,.single-page,.static-page{width:min(1200px,92%);margin:42px auto}
.section-title{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:3px solid var(--blue);margin:0 0 22px;gap:16px}
.section-title h2{background:var(--blue);color:#ffffff;margin:0;padding:12px 18px;text-transform:uppercase;font-size:22px;display:inline-block}
.section-kicker{margin:7px 0 8px;color:var(--muted);font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.04em}
.section-title a{color:var(--blue);font-weight:900;margin-bottom:12px;white-space:nowrap}

.article-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-bottom:44px}
.article-card{background:#ffffff;box-shadow:var(--shadow);overflow:hidden}
.card-image{display:block;height:190px;background-size:cover;background-position:center}
.card-image.no-photo,.list-image.no-photo{background:linear-gradient(135deg,#111111,#333333)}
.article-card-content{padding:16px}
.article-card h3{margin:0 0 12px;color:var(--blue);font-size:20px;line-height:1.18}
.article-card h3 a:hover{color:#000000}
.article-card p{color:#444444;line-height:1.45}
.empty-category{grid-column:1/-1;background:#ffffff;padding:18px}

.archive-heading{background:#ffffff;border-left:8px solid var(--gold);padding:30px;box-shadow:var(--shadow);margin-bottom:28px}
.archive-heading h1{margin:0;color:var(--blue);font-size:42px;text-transform:none}
.archive-heading p{margin-bottom:0;color:#444444}
.article-list{display:grid;gap:24px}
.list-article{display:grid;grid-template-columns:320px 1fr;gap:24px;background:#ffffff;box-shadow:var(--shadow);padding:18px}
.list-image{display:block;min-height:210px;background-size:cover;background-position:center}
.list-content h2{margin:0 0 12px;color:var(--blue);font-size:30px;line-height:1.1}
.list-content p{line-height:1.55;color:#444444}
.archive-empty{background:#ffffff;padding:20px;box-shadow:var(--shadow)}

/* ARTICOLO */
.single-article,.page-content{background:#ffffff;box-shadow:var(--shadow);padding:38px}
.single-article h1{margin:14px 0 18px;color:var(--blue);font-size:50px;line-height:1.04}
.single-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #dddddd;border-bottom:1px solid #dddddd;padding:14px 0;margin-bottom:24px;color:#555555}
.single-featured-image{margin:0 0 28px}
.single-featured-image img{width:100%;max-height:620px;object-fit:cover}
.share-box{display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-top:1px solid #dddddd;border-bottom:1px solid #dddddd;padding:14px 0;margin:22px 0}
.share-box span{font-weight:900}
.share-box a{background:var(--blue);color:#ffffff;font-weight:800;padding:8px 12px}
.article-content{font-size:19px;line-height:1.82}
.article-content p{margin:0 0 1.25em}
.post-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:34px}
.post-navigation a{background:var(--blue);color:#ffffff;padding:12px 15px;font-weight:800}
.related-posts{margin-top:36px}
.related-row{grid-template-columns:repeat(3,minmax(0,1fr))}

/* FOOTER */
.site-footer{background:var(--blue-dark);color:#ffffff;text-align:center;padding:38px 24px;margin-top:50px}
.footer-inner{width:min(980px,92%);margin:0 auto}
.footer-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
.footer-links a,.footer-links .menu-item>a{color:var(--gold);font-weight:800}

/* NASCONDE CORRELATI DUPLICATI AUTOMATICI */
.jp-relatedposts,
#jp-relatedposts,
.jetpack-related-posts,
.wp-block-jetpack-related-posts,
.sharedaddy.sd-like-enabled + #jp-relatedposts{
    display:none!important;
}

/* TABLET */
@media(max-width:1100px){
    .brand-header{grid-template-columns:1fr;gap:18px;padding:24px}
    .header-adv{display:none}
    .custom-logo{width:min(560px,92vw);max-height:112px}
    .text-logo{font-size:42px}
    .category-nav{padding:10px 22px;flex-wrap:wrap;gap:12px}
    .mobile-menu-btn{display:inline-flex}
    .category-links{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;background:var(--blue-dark)}
    .category-links.is-open{display:flex}
    .category-links a,.category-links .menu-item>a{padding:15px 18px;border-top:1px solid rgba(255,255,255,.12)}

    .category-links .lr-menu-parent{display:block;width:100%}
    .category-links .lr-menu-parent > a{width:100%}
    .category-links .lr-menu-parent > a::after{content:""}
    .lr-submenu{position:static;display:block;box-shadow:none;border-top:0;background:rgba(0,0,0,.16);min-width:0;width:100%}
    .lr-submenu a{padding-left:34px!important;font-size:14px}
    .search-area{margin-left:auto}
    .article-row{grid-template-columns:repeat(2,minmax(0,1fr))}
    .list-article{grid-template-columns:260px 1fr}
    .hero-slider,.slides-wrapper,.slide{min-height:500px}
    .slide-content h1{font-size:40px}
}

/* MOBILE */
@media(max-width:700px){
    .topbar-inner{padding:9px 14px;display:block}
    .topbar-left,.topbar-right{justify-content:center;gap:13px;flex-wrap:wrap;margin:4px 0;font-size:12px}
    .brand-header{padding:18px 14px}
    .custom-logo{width:min(360px,94vw);max-height:90px}
    .text-logo{font-size:32px}
    .site-tagline{font-size:15px}
    .category-nav{padding:10px 12px}
    .search-area{width:100%;order:2;margin:0}
    .search-form{width:100%}
    .search-form input{width:100%;flex:1}
    .hero-slider,.slides-wrapper,.slide{min-height:560px}
    .slide-bg{background-position:center}
    .slide-shade{background:linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 58%,rgba(0,0,0,.35) 100%)}
    .slide-content{left:22px;right:22px;bottom:92px;width:auto}
    .slide-content h1{font-size:31px;line-height:1.12}
    .slide-content p{font-size:15px}
    .slider-btn{top:auto;bottom:18px;transform:none;width:46px;height:52px;font-size:38px}
    .slider-btn.prev{left:22px}
    .slider-btn.next{right:22px}
    .home-categories,.archive-page,.single-page,.static-page{width:94%;margin:28px auto}
    .section-title h2{font-size:18px}
    .article-row,.related-row{grid-template-columns:1fr}
    .card-image{height:215px}
    .list-article{grid-template-columns:1fr}
    .list-image{min-height:220px}
    .single-article,.page-content{padding:24px 18px}
    .single-article h1{font-size:34px}
    .single-meta{align-items:flex-start;flex-direction:column}
    .article-content{font-size:17px}
    .post-navigation{flex-direction:column}
}


/* PAGINAZIONE ARCHIVI - VERSIONE DEFINITIVA */
.lr-pagination {
    margin: 38px auto 48px;
    padding: 24px 18px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.08);
    text-align: center;
    max-width: 100%;
}

.lr-pagination-info {
    display: inline-block;
    margin-bottom: 16px;
    padding: 7px 14px;
    border-radius: 999px;
    background: #f4f6f9;
    color: #062b63;
    font-weight: 800;
    font-size: 14px;
}

.lr-pagination .page-numbers {
    margin: 0;
    padding: 0;
}

.lr-pagination ul.page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
}

.lr-pagination ul.page-numbers li {
    margin: 0;
    padding: 0;
}

.lr-pagination a.page-numbers,
.lr-pagination span.page-numbers {
    min-width: 44px;
    min-height: 44px;
    padding: 11px 15px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef2f7;
    color: #062b63;
    font-weight: 800;
    text-decoration: none;
    border: 1px solid rgba(6, 43, 99, 0.10);
    transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.lr-pagination a.page-numbers:hover {
    background: #062b63;
    color: #ffffff;
    transform: translateY(-2px);
}

.lr-pagination span.page-numbers.current {
    background: #d4af37;
    color: #111111;
    border-color: #d4af37;
}

.lr-pagination .prev,
.lr-pagination .next {
    min-width: 150px;
    background: #062b63 !important;
    color: #ffffff !important;
}

.lr-pagination .dots {
    background: transparent !important;
    border-color: transparent !important;
    min-width: 24px;
    padding-left: 4px;
    padding-right: 4px;
}

@media (max-width: 700px) {
    .lr-pagination {
        margin: 28px 0 34px;
        padding: 20px 12px;
        border-radius: 12px;
    }

    .lr-pagination ul.page-numbers {
        gap: 8px;
    }

    .lr-pagination a.page-numbers,
    .lr-pagination span.page-numbers {
        min-width: 40px;
        min-height: 40px;
        padding: 9px 12px;
        font-size: 14px;
    }

    .lr-pagination .prev,
    .lr-pagination .next {
        width: 100%;
        min-width: 0;
    }
}

/* PAGINE ISTITUZIONALI: REDAZIONE, CONTATTI, PRIVACY */
.lr-institutional-page .page-content{
    padding:0;
    overflow:hidden;
}
.lr-page-hero{
    background:linear-gradient(135deg,var(--blue-dark),var(--blue));
    color:#ffffff;
    padding:48px 46px;
    border-bottom:6px solid var(--gold);
}
.lr-kicker{
    display:inline-flex;
    background:var(--gold);
    color:#111111;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
    padding:8px 12px;
    margin-bottom:16px;
    font-size:13px;
}
.lr-page-hero h1{
    margin:0 0 12px;
    font-size:48px;
    line-height:1.04;
}
.lr-page-hero p{
    margin:0;
    max-width:850px;
    font-size:19px;
    line-height:1.55;
    color:rgba(255,255,255,.92);
}
.lr-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    padding:36px 38px 18px;
}
.lr-info-card,
.lr-values-section,
.lr-editorial-section,
.lr-form-section,
.lr-policy-section,
.lr-extra-content{
    background:#ffffff;
    border:1px solid #e6e8ec;
    padding:28px;
}
.lr-info-card h2,
.lr-values-section h2,
.lr-editorial-section h2,
.lr-form-section h2,
.lr-policy-section h2{
    margin:0 0 15px;
    color:var(--blue);
    font-size:28px;
    line-height:1.15;
}
.lr-info-card p,
.lr-values-section p,
.lr-editorial-section p,
.lr-form-section p,
.lr-policy-section p{
    color:#444444;
    line-height:1.65;
}
.lr-highlight-card{
    border-left:7px solid var(--gold);
    background:#fbfcff;
}
.lr-clean-list{
    margin:0;
    padding:0;
    list-style:none;
}
.lr-clean-list li{
    padding:10px 0;
    border-bottom:1px solid #eceff3;
    line-height:1.45;
}
.lr-clean-list li:last-child{border-bottom:0}
.lr-clean-list a,
.lr-editorial-section a,
.lr-privacy-check a{
    color:var(--blue);
    font-weight:900;
}
.lr-values-section,
.lr-editorial-section,
.lr-form-section,
.lr-policy-section,
.lr-extra-content{
    margin:24px 38px;
}
.lr-values-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
.lr-values-grid div{
    background:var(--light);
    padding:20px;
    border-top:5px solid var(--gold);
}
.lr-values-grid h3{
    margin:0 0 8px;
    color:var(--blue);
}
.lr-button,
.lr-contact-form button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    background:var(--gold);
    color:#111111;
    font-weight:900;
    padding:13px 18px;
    cursor:pointer;
}
.lr-contact-form{
    display:grid;
    gap:18px;
    margin-top:22px;
}
.lr-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.lr-contact-form label{
    display:grid;
    gap:8px;
    color:#222222;
    font-weight:900;
}
.lr-contact-form input,
.lr-contact-form select,
.lr-contact-form textarea{
    width:100%;
    border:1px solid #cfd6df;
    background:#ffffff;
    padding:13px 14px;
    font:inherit;
    color:#111111;
}
.lr-contact-form textarea{
    resize:vertical;
}
.lr-privacy-check{
    display:flex!important;
    grid-template-columns:none!important;
    align-items:flex-start;
    gap:10px!important;
    font-weight:700!important;
    line-height:1.45;
}
.lr-privacy-check input{
    width:auto;
    margin-top:3px;
}
.lr-form-message{
    margin:28px 38px 0;
    padding:16px 18px;
    font-weight:900;
}
.lr-form-success{
    background:#e8f6ee;
    color:#136c33;
    border-left:6px solid #136c33;
}
.lr-form-error{
    background:#fff0f0;
    color:#9d1515;
    border-left:6px solid #9d1515;
}
.lr-policy-note{
    background:#fbfcff;
    border-left:7px solid var(--gold);
}

@media(max-width:900px){
    .lr-info-grid,
    .lr-values-grid,
    .lr-form-row{
        grid-template-columns:1fr;
    }
    .lr-page-hero{
        padding:38px 28px;
    }
    .lr-page-hero h1{
        font-size:40px;
    }
    .lr-info-grid{
        padding:28px 24px 10px;
    }
    .lr-values-section,
    .lr-editorial-section,
    .lr-form-section,
    .lr-policy-section,
    .lr-extra-content{
        margin:20px 24px;
    }
}

@media(max-width:700px){
    .lr-page-hero{
        padding:30px 20px;
    }
    .lr-page-hero h1{
        font-size:34px;
    }
    .lr-page-hero p{
        font-size:16px;
    }
    .lr-info-grid{
        padding:20px 16px 4px;
    }
    .lr-info-card,
    .lr-values-section,
    .lr-editorial-section,
    .lr-form-section,
    .lr-policy-section,
    .lr-extra-content{
        padding:21px 18px;
    }
    .lr-values-section,
    .lr-editorial-section,
    .lr-form-section,
    .lr-policy-section,
    .lr-extra-content{
        margin:16px;
    }
    .lr-form-message{
        margin:20px 16px 0;
    }
}
