/*
Theme Name: PL Native
Template: filmways-lite
Version: 0.3.0
Text Domain: pl-native
*/

html,body{margin:0;padding:0}
.wp-site-blocks{padding:0}
.wp-site-blocks>*{margin-block-start:0}

/* HEADER */
.pl-native-header{background:#fff;color:#123b66;border-bottom:1px solid #eee}
.pl-native-userbar{max-width:1770px;margin:0 auto;min-height:34px;padding:6px 28px 0;text-align:right;font-size:16px}
.pl-native-userbar a{color:#123b66;text-decoration:none;font-weight:600}
.pl-native-header-inner{max-width:1770px;min-height:170px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:42px}
.pl-native-logo img{display:block;width:500px;max-width:36vw;height:auto}
.pl-native-nav{margin-left:auto}
.pl-native-menu{display:flex;align-items:center;gap:42px;margin:0;padding:0;list-style:none}
.pl-native-menu li{position:relative;margin:0}
.pl-native-menu a{color:#123b66;text-decoration:none;font-size:17px;font-weight:700;white-space:nowrap}
.pl-native-menu a:hover{text-decoration:underline}
.pl-native-menu .sub-menu{display:none;position:absolute;z-index:1000;top:100%;left:0;min-width:220px;margin:0;padding:12px 0;list-style:none;background:#fff;border:1px solid #ddd}
.pl-native-menu li:hover>.sub-menu{display:block}
.pl-native-menu .sub-menu a{display:block;padding:8px 18px;color:#123b66}
.pl-native-menu .menu-item-has-children>a:after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border-right:2px solid #123b66;border-bottom:2px solid #123b66;transform:rotate(45deg) translateY(-3px)}

/* TITLE */
.pl-native-title-band{background:#ededed;padding:10px 28px 14px}
.pl-native-title-inner{max-width:1770px;margin:0 auto}
.pl-native-title-band .wp-block-post-title{margin:0;color:#173d67;font-size:clamp(32px,3.5vw,62px);font-weight:400;line-height:1.28}

/* ARTICLE + NEWSLETTER */
.pl-native-content-wrap{max-width:1640px;margin:0 auto;padding:72px 30px 0;display:grid;grid-template-columns:minmax(0,2.15fr) minmax(330px,.85fr);gap:90px;align-items:start}
.pl-native-main{min-width:0;margin:0;padding:0}
.pl-native-main .wp-block-post-content{margin:0;max-width:none}
.pl-native-main .elementor{width:100%}
.pl-native-main .elementor-section:first-child,
.pl-native-main .e-con:first-child{margin-top:0!important}

.pl-native-newsletter{margin:0;padding:0;min-width:0}
.pl-native-newsletter h2{margin:0 0 32px;color:#123b66;font-size:31px;font-weight:700;line-height:1.2}
.pl-native-newsletter .wpcf7{width:100%}
.pl-native-newsletter input,
.pl-native-newsletter textarea{box-sizing:border-box;width:100%;max-width:100%}

/* FOOTER */
.pl-native-footer{margin-top:60px;background:#123b66;color:#fff}
.pl-native-footer-main{max-width:1640px;margin:0 auto;padding:28px 30px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;font-size:14px}
.pl-native-footer a{color:#fff}
.pl-native-footer-copy{padding:14px 24px;text-align:center;background:#0d2e50;font-size:13px}

@media(max-width:1050px){
 .pl-native-header-inner{min-height:auto;padding-top:18px;padding-bottom:18px;align-items:flex-start;flex-direction:column}
 .pl-native-logo img{width:430px;max-width:80vw}
 .pl-native-nav{width:100%;margin:0}
 .pl-native-menu{flex-wrap:wrap;gap:16px 24px}
 .pl-native-content-wrap{grid-template-columns:1fr;gap:45px;padding-top:45px}
}

@media(max-width:650px){
 .pl-native-userbar{padding-left:18px;padding-right:18px}
 .pl-native-header-inner{padding-left:18px;padding-right:18px}
 .pl-native-menu{flex-direction:column;align-items:flex-start}
 .pl-native-menu .sub-menu{position:static;display:block;padding:4px 0 4px 18px;border:0}
 .pl-native-title-band{padding-left:18px;padding-right:18px}
 .pl-native-content-wrap{padding-left:18px;padding-right:18px}
}

/* CONTROLLI DIMENSIONE TESTO ARTICOLO */
.pl-font-controls{
    display:flex;
    align-items:center;
    gap:7px;
    margin:0 0 22px;
    color:#123b66;
}
.pl-font-label{
    margin-right:5px;
    font-size:14px;
    font-weight:600;
}
.pl-font-controls button{
    min-width:39px;
    height:35px;
    padding:0 9px;
    border:1px solid #123b66;
    border-radius:4px;
    background:#fff;
    color:#123b66;
    font-weight:700;
    cursor:pointer;
}
.pl-font-controls button:hover,
.pl-font-controls button:focus{
    background:#123b66;
    color:#fff;
}
.pl-font-reset{
    min-width:55px!important;
    font-size:12px;
}

/* PL: il wrapper nativo gestisce lo spazio superiore dell'articolo */
.pl-native-main .elementor > .elementor-section:first-child{
    padding-top:0 !important;
}

/* PL: allineamento desktop all'header storico Oxygen */
@media (min-width:1051px){
    .pl-native-header{
        position:relative;
        height:175px;
        box-sizing:border-box;
    }

    .pl-native-userbar{
        position:absolute;
        z-index:3;
        top:6px;
        right:78px;
        max-width:none;
        min-height:0;
        margin:0;
        padding:0;
    }

    .pl-native-header-inner{
        position:relative;
        max-width:none;
        width:100%;
        height:175px;
        min-height:0;
        margin:0;
        padding:0;
    }

    .pl-native-logo{
        position:absolute;
        top:50px;
        left:30px;
    }

    .pl-native-logo img{
        width:400px;
        max-width:none;
        height:auto;
    }

    .pl-native-nav{
        position:absolute;
        top:92px;
        right:80px;
        margin:0;
    }

    .pl-native-menu{
        gap:37px;
    }

    .pl-native-menu a{
        font-size:18px;
        font-weight:700;
    }
}

/* PL: menu desktop centrato verticalmente nell'header */
@media (min-width:1051px){
    .pl-native-nav{
        top:50%;
        transform:translateY(-50%);
    }
}

/* PL: logo desktop centrato verticalmente nell'header */
@media (min-width:1051px){
    .pl-native-logo{
        top:50%;
        transform:translateY(-50%);
    }
}

/* PL: header desktop ridotto di 20px */
@media (min-width:1051px){
    .pl-native-header{
        height:155px;
    }

    .pl-native-header-inner{
        height:155px;
    }
}

/* PL: distanza fascia titolo -> contenuto ridotta di 40px */
.pl-native-content-wrap{
    padding-top:32px;
}

/* PL: Ropa Sans locale, coerente con il frontend storico Oxygen */
@font-face{
    font-family:'Ropa Sans';
    font-style:normal;
    font-weight:400;
    font-display:swap;
    src:url('./assets/fonts/RopaSans-Regular.ttf') format('truetype');
}
@font-face{
    font-family:'Ropa Sans';
    font-style:italic;
    font-weight:400;
    font-display:swap;
    src:url('./assets/fonts/RopaSans-Italic.ttf') format('truetype');
}

body,
.pl-native-header,
.pl-native-title-band,
.pl-native-footer{
    font-family:'Ropa Sans',sans-serif;
}

.pl-native-menu a{
    font-family:'Ropa Sans',sans-serif;
    font-size:18px;
    font-weight:700;
    line-height:40px;
    text-transform:uppercase;
    letter-spacing:normal;
}

/* PL: dropdown sempre sopra fascia titolo e contenuto */
.pl-native-header{
    position:relative;
    z-index:1000;
    overflow:visible;
}

.pl-native-nav{
    z-index:1010;
}

.pl-native-menu,
.pl-native-menu li{
    overflow:visible;
}

.pl-native-menu .sub-menu{
    z-index:1100;
    background:#fff;
    border:1px solid #d9d9d9;
}

.pl-native-title-band,
.pl-native-content-wrap{
    position:relative;
    z-index:1;
}

/* PL responsive: tablet compatto, desktop >=1051 invariato */
@media (min-width:651px) and (max-width:1050px){
    .pl-native-userbar{
        min-height:28px;
        padding:5px 22px 0;
        font-size:14px;
    }

    .pl-native-header-inner{
        min-height:0;
        padding:8px 22px 12px;
        flex-direction:column;
        align-items:center;
        justify-content:flex-start;
        gap:10px;
    }

    .pl-native-logo img{
        width:340px;
        max-width:60vw;
    }

    .pl-native-nav{
        width:100%;
        margin:0;
    }

    .pl-native-menu{
        justify-content:center;
        flex-wrap:nowrap;
        gap:clamp(12px,2.4vw,24px);
    }

    .pl-native-menu a{
        font-size:15px;
        line-height:34px;
    }
}

/* Pulsanti responsive invisibili fuori dallo smartphone */
.pl-mobile-menu-toggle,
.pl-sub-toggle{
    display:none;
}

@media (max-width:650px){
    .pl-native-userbar{
        min-height:26px;
        padding:5px 14px 0;
        font-size:14px;
    }

    .pl-native-header-inner{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        justify-content:normal;
        gap:8px 12px;
        min-height:0;
        padding:10px 14px 12px;
    }

    .pl-native-logo{
        position:static;
        transform:none;
    }

    .pl-native-logo img{
        width:min(265px,72vw);
        max-width:100%;
    }

    .pl-mobile-menu-toggle{
        display:inline-flex;
        width:44px;
        height:42px;
        padding:8px;
        border:1px solid #123b66;
        border-radius:4px;
        background:#fff;
        flex-direction:column;
        justify-content:center;
        gap:5px;
        cursor:pointer;
    }

    .pl-mobile-menu-toggle span{
        display:block;
        width:100%;
        height:2px;
        background:#123b66;
    }

    .pl-native-nav{
        grid-column:1 / -1;
        width:100%;
        margin:0;
        display:none;
    }

    .pl-native-header.pl-mobile-open .pl-native-nav{
        display:block;
    }

    .pl-native-menu{
        flex-direction:column;
        align-items:stretch;
        gap:0;
        width:100%;
        padding-top:6px;
    }

    .pl-native-menu > li{
        display:grid;
        grid-template-columns:minmax(0,1fr) 44px;
        align-items:center;
        width:100%;
        border-top:1px solid #e2e2e2;
    }

    .pl-native-menu > li:first-child{
        border-top:0;
    }

    .pl-native-menu a{
        padding:0 4px;
        font-size:18px;
        line-height:44px;
    }

    .pl-native-menu .menu-item-has-children > a:after{
        display:none;
    }

    .pl-sub-toggle{
        display:inline-flex;
        width:40px;
        height:40px;
        padding:0;
        border:0;
        background:transparent;
        align-items:center;
        justify-content:center;
        cursor:pointer;
    }

    .pl-sub-toggle span{
        width:9px;
        height:9px;
        border-right:2px solid #123b66;
        border-bottom:2px solid #123b66;
        transform:rotate(45deg) translate(-2px,-2px);
        transition:transform .15s ease;
    }

    .pl-sub-open > .pl-sub-toggle span{
        transform:rotate(225deg) translate(-1px,-1px);
    }

    .pl-native-menu .sub-menu{
        grid-column:1 / -1;
        position:static;
        display:none;
        min-width:0;
        width:100%;
        margin:0;
        padding:4px 0 8px 18px;
        border:0;
        border-top:1px solid #eee;
        background:#fafafa;
        box-sizing:border-box;
    }

    .pl-native-menu li.pl-sub-open > .sub-menu{
        display:block;
    }

    .pl-native-menu .sub-menu li{
        display:block;
    }

    .pl-native-menu .sub-menu a{
        padding:0 10px;
        font-size:16px;
        line-height:38px;
    }

    .pl-native-title-band{
        padding:8px 16px 10px;
    }

    .pl-native-title-band .wp-block-post-title{
        font-size:34px;
        line-height:1.15;
    }

    .pl-native-content-wrap{
        padding:24px 16px 0;
        gap:34px;
    }

    .pl-font-controls{
        flex-wrap:wrap;
    }
}

/* PL: eliminazione altezze residue responsive */
@media (max-width:1050px){
    .pl-native-header,
    .pl-native-header-inner{
        height:auto !important;
        min-height:0 !important;
    }
}

/* PL: mobile, logo e hamburger sulla stessa riga */
@media (max-width:650px){
    .pl-native-header-inner{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) 44px;
        grid-template-rows:auto;
    }

    .pl-native-logo{
        grid-column:1;
        grid-row:1;
        align-self:center;
        justify-self:start;
    }

    .pl-mobile-menu-toggle{
        grid-column:2;
        grid-row:1;
        align-self:center;
        justify-self:end;
    }

    .pl-native-nav{
        grid-column:1 / -1;
        grid-row:2;
    }
}

/* PL responsive: eliminazione spazio verticale residuo del logo */
@media (max-width:1050px){
    .pl-native-logo,
    .pl-native-logo a{
        height:auto !important;
        min-height:0 !important;
        margin:0 !important;
        padding:0 !important;
        line-height:0 !important;
    }

    .pl-native-logo{
        display:flex !important;
        align-items:center !important;
    }

    .pl-native-logo a{
        display:flex !important;
        align-items:center !important;
    }

    .pl-native-logo img{
        display:block !important;
        margin:0 !important;
    }
}

/* Tablet */
@media (min-width:651px) and (max-width:1050px){
    .pl-native-header-inner{
        display:grid !important;
        grid-template-columns:1fr;
        grid-template-rows:auto auto;
        justify-items:center;
        align-items:center;
        padding:6px 22px 8px !important;
        gap:5px !important;
    }

    .pl-native-logo{
        grid-row:1;
        justify-self:center;
    }

    .pl-native-nav{
        grid-row:2;
        width:100%;
        margin:0 !important;
        align-self:center;
    }

    .pl-native-menu{
        margin:0 !important;
    }

    .pl-native-menu a{
        line-height:30px;
    }
}

/* Smartphone */
@media (max-width:650px){
    .pl-native-header-inner{
        padding:6px 12px 8px !important;
        gap:6px 10px !important;
    }

    .pl-native-logo{
        justify-self:start !important;
    }

    .pl-mobile-menu-toggle{
        margin:0 !important;
    }
}

/* PL responsive: rifinitura spazio superiore */
@media (max-width:1050px){
    .pl-native-userbar{
        min-height:24px !important;
        padding-top:3px !important;
    }

    .pl-native-header-inner{
        padding-top:2px !important;
    }
}

@media (max-width:650px){
    .pl-native-userbar{
        min-height:23px !important;
    }
}

/* PL responsive: contenuto articolo piu largo e fondo compatto */
@media (max-width:1050px){
    .pl-native-main .elementor > .elementor-section:first-child{
        padding-bottom:0 !important;
        margin-bottom:0 !important;
    }

    .pl-native-main .elementor-section > .elementor-container{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }

    .pl-native-main .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
    .pl-native-main .elementor-widget-wrap{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .pl-native-main .elementor,
    .pl-native-main .elementor-section:last-child{
        margin-bottom:0 !important;
        padding-bottom:0 !important;
    }
}

@media (max-width:650px){
    .pl-native-content-wrap{
        padding-left:12px !important;
        padding-right:12px !important;
    }
}

@media (min-width:651px) and (max-width:1050px){
    .pl-native-content-wrap{
        padding-left:24px !important;
        padding-right:24px !important;
    }
}

/* PL native: rimozione padding legacy finale articolo a tutte le larghezze */
.pl-native-main .elementor > .elementor-section:first-child{
    padding-bottom:0 !important;
    margin-bottom:0 !important;
}

/* PL native: fondo pagina piu compatto */
.pl-native-content-wrap{
    padding-bottom:32px !important;
}

/* PL responsive: rimozione rientro legacy Elementor */
@media (max-width:1050px){
    .pl-native-main .elementor > .elementor-section:first-child{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .pl-native-content-wrap{
        padding-bottom:24px !important;
    }
}

/* PL native: riduzione spazio inutile prima del footer */
.pl-native-footer{
    margin-top:16px !important;
}

@media (max-width:1050px){
    .pl-native-footer{
        margin-top:0 !important;
    }
}

/* PL native: contrasto pulsante newsletter */
.pl-native-newsletter input[type="submit"],
.pl-native-newsletter button[type="submit"]{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
}

/* PL native: footer definitivo */
.pl-native-footer{
    margin-top:16px !important;
    border-top:1px solid #e2e2e2;
}

.pl-native-footer-main{
    max-width:1200px;
    margin:0 auto;
    padding:26px 24px 14px;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    gap:8px 18px;
    text-align:center;
    font-size:14px;
    line-height:1.45;
}

.pl-native-footer-main a{
    color:#123b66;
    text-decoration:none;
}

.pl-native-footer-main a:hover,
.pl-native-footer-main a:focus{
    text-decoration:underline;
}

.pl-native-footer-copy{
    padding:10px 24px 22px;
    text-align:center;
    font-size:13px;
    line-height:1.4;
}

@media (min-width:651px) and (max-width:1050px){
    .pl-native-footer{
        margin-top:0 !important;
    }

    .pl-native-footer-main{
        padding:22px 20px 12px;
        gap:7px 14px;
    }

    .pl-native-footer-copy{
        padding:9px 20px 18px;
    }
}

@media (max-width:650px){
    .pl-native-footer{
        margin-top:0 !important;
    }

    .pl-native-footer-main{
        padding:20px 16px 12px;
        flex-direction:column;
        gap:6px;
        font-size:14px;
    }

    .pl-native-footer-copy{
        padding:9px 16px 18px;
        font-size:12px;
    }
}

/* PL native: link footer leggibili sul fondo blu */
.pl-native-footer-main a,
.pl-native-footer-main a:visited{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-decoration:underline;
}

.pl-native-footer-main a:hover,
.pl-native-footer-main a:focus{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-decoration-thickness:2px;
}

/* PL native: footer mobile definitivo */
.pl-native-footer-main > br{
    display:none !important;
}

@media (max-width:650px){
    .pl-native-footer-main{
        display:grid !important;
        grid-template-columns:1fr 1fr;
        align-items:center;
        justify-items:center;
        gap:8px 10px !important;
        padding:16px 12px 14px !important;
        text-align:center;
    }

    .pl-native-footer-main > span,
    .pl-native-footer-main > a{
        margin:0 !important;
        padding:0 !important;
        line-height:1.35 !important;
    }

    .pl-native-footer-main > a[href*="/materiale-associativo/"]{
        grid-column:1 / -1;
        white-space:nowrap;
    }
}

/* PL native Home: fascia introduttiva compatta */
.pl-native-home-main .elementor-element-1a34101{
    padding-top:40px !important;
    padding-bottom:40px !important;
}

@media (max-width:1050px){
    .pl-native-home-main .elementor-element-1a34101{
        padding-top:32px !important;
        padding-bottom:32px !important;
    }
}

/* PL native Home: fascia introduttiva definitiva */
.pl-native-home-main .elementor-element-1a34101{
    padding-top:14px !important;
    padding-bottom:14px !important;
}

.pl-native-home-main .elementor-element-17fb263,
.pl-native-home-main .elementor-element-17fb263 .elementor-widget-container{
    margin:0 !important;
    padding:0 !important;
}

.pl-native-home-main .elementor-element-17fb263 h4{
    margin:0 !important;
    padding:0 !important;
    font-size:32px !important;
    line-height:1.15 !important;
}

/* tablet */
@media (min-width:651px) and (max-width:1050px){
    .pl-native-home-main .elementor-element-1a34101{
        padding-top:12px !important;
        padding-bottom:12px !important;
    }

    .pl-native-home-main .elementor-element-17fb263 h4{
        font-size:24px !important;
        line-height:1.2 !important;
    }
}

/* smartphone */
@media (max-width:650px){
    .pl-native-home-main .elementor-element-1a34101{
        padding-top:12px !important;
        padding-bottom:12px !important;
    }

    .pl-native-home-main .elementor-element-17fb263 h4{
        font-size:18px !important;
        line-height:1.22 !important;
    }
}

/* PL native Home: fascia blu compatta */
.pl-native-home-main .elementor-element-77038f6 > .elementor-container{
    min-height:0 !important;
}

.pl-native-home-main .elementor-element-77038f6{
    padding-top:24px !important;
    padding-bottom:24px !important;
}

.pl-native-home-main .elementor-element-77038f6 .elementor-column > .elementor-widget-wrap{
    align-content:center !important;
    align-items:center !important;
}

/* stemma PL principale */
.pl-native-home-main .elementor-element-783f961 img{
    width:100% !important;
    max-width:430px !important;
    height:auto !important;
}

/* immagine Telegram */
.pl-native-home-main .elementor-element-4ef3e3c img{
    width:100% !important;
    max-width:230px !important;
    height:auto !important;
}

@media (min-width:651px) and (max-width:1050px){
    .pl-native-home-main .elementor-element-77038f6{
        padding-top:20px !important;
        padding-bottom:20px !important;
    }

    .pl-native-home-main .elementor-element-783f961 img{
        max-width:330px !important;
    }

    .pl-native-home-main .elementor-element-4ef3e3c img{
        max-width:200px !important;
    }
}

@media (max-width:650px){
    .pl-native-home-main .elementor-element-77038f6{
        padding-top:18px !important;
        padding-bottom:18px !important;
    }

    .pl-native-home-main .elementor-element-783f961 img{
        max-width:250px !important;
    }

    .pl-native-home-main .elementor-element-4ef3e3c img{
        max-width:180px !important;
    }

    .pl-native-home-main .elementor-element-059e601{
        font-size:16px !important;
        line-height:1.35 !important;
    }
}

/* PL native Home v1: sostituzione intro + vecchia fascia blu */
body.pl-native-home-preview .elementor-element-1a34101,
body.pl-native-home-preview .elementor-element-77038f6{
    display:none !important;
}

.pl-native-home-intro{
    background:#fff;
    border-bottom:1px solid #ececec;
}

.pl-native-home-intro-inner{
    max-width:1280px;
    margin:0 auto;
    padding:16px 24px;
    text-align:center;
    font-family:"Ropa Sans",sans-serif;
    font-size:30px;
    font-weight:700;
    line-height:1.15;
    color:#06366d;
}

.pl-native-home-hero{
    position:relative;
    overflow:hidden;
    background-color:#123f75;
    background-size:cover;
    background-position:center;
    color:#fff;
}

.pl-native-home-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(3,34,76,.92) 0%,
        rgba(3,34,76,.70) 48%,
        rgba(3,34,76,.45) 100%
    );
}

.pl-native-home-hero-inner{
    position:relative;
    z-index:1;
    max-width:1280px;
    min-height:335px;
    margin:0 auto;
    padding:34px 34px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    align-items:center;
    gap:48px;
}

.pl-native-home-hero-copy{
    max-width:600px;
}

.pl-native-home-hero-copy h1{
    margin:0 0 12px;
    color:#fff;
    font-family:"Ropa Sans",sans-serif;
    font-size:46px;
    line-height:.98;
    font-weight:700;
    text-transform:uppercase;
}

.pl-native-home-hero-copy p{
    margin:0 0 18px;
    color:#fff;
    font-size:18px;
    line-height:1.35;
}

.pl-native-home-hero-cta{
    display:inline-block;
    padding:11px 17px;
    background:#f5c421;
    color:#082e61 !important;
    font-weight:700;
    text-decoration:none;
    border-radius:3px;
}

.pl-native-home-socials{
    display:flex;
    gap:8px;
    margin-top:18px;
}

.pl-native-home-socials a{
    display:flex;
    width:40px;
    height:40px;
    align-items:center;
    justify-content:center;
    border-radius:4px;
    background:rgba(255,255,255,.16);
    color:#fff !important;
    font-size:21px;
    text-decoration:none;
}

.pl-native-home-telegram{
    justify-self:end;
    width:230px;
    padding:15px;
    box-sizing:border-box;
    background:#fff;
    color:#123f75;
    text-align:center;
    border-radius:8px;
    box-shadow:0 4px 16px rgba(0,0,0,.18);
}

.pl-native-home-telegram-head{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-size:15px;
    line-height:1.15;
}

.pl-native-home-telegram-icon{
    font-size:24px;
}

.pl-native-home-telegram img{
    display:block;
    width:118px;
    height:auto;
    margin:10px auto 8px;
}

.pl-native-home-telegram p{
    margin:0;
    font-size:13px;
    line-height:1.25;
}

@media (max-width:1050px){
    .pl-native-home-intro-inner{
        font-size:24px;
        padding:13px 20px;
    }

    .pl-native-home-hero-inner{
        grid-template-columns:minmax(0,1fr) 220px;
        min-height:300px;
        padding:28px 24px;
        gap:28px;
    }

    .pl-native-home-hero-copy h1{
        font-size:38px;
    }

    .pl-native-home-telegram{
        width:205px;
    }
}

@media (max-width:650px){
    .pl-native-home-intro-inner{
        padding:12px 16px;
        font-size:18px;
        line-height:1.18;
    }

    .pl-native-home-hero-overlay{
        background:rgba(3,34,76,.77);
    }

    .pl-native-home-hero-inner{
        display:block;
        min-height:0;
        padding:24px 18px 22px;
    }

    .pl-native-home-hero-copy{
        max-width:none;
    }

    .pl-native-home-hero-copy h1{
        font-size:31px;
        line-height:1;
    }

    .pl-native-home-hero-copy p{
        font-size:16px;
    }

    .pl-native-home-socials{
        margin-top:14px;
    }

    .pl-native-home-telegram{
        width:100%;
        max-width:280px;
        margin:18px auto 0;
        padding:12px;
    }

    .pl-native-home-telegram img{
        width:100px;
    }
}

/* PL native Home V2: claim realmente compatto */
.pl-native-home-intro{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
}

.pl-native-home-intro-inner{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 auto !important;
    padding:8px 20px !important;
    font-size:30px !important;
    line-height:1.1 !important;
}

/* PL native Home V2: sfondo fotografico reale */
.pl-native-home-hero{
    background-image:url('/main/wp-content/uploads/2025/02/HOME-AP-L-sfondo.jpg') !important;
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
}

.pl-native-home-hero-inner{
    min-height:300px !important;
    padding-top:26px !important;
    padding-bottom:26px !important;
}

@media (min-width:651px) and (max-width:1050px){
    .pl-native-home-intro-inner{
        padding:7px 18px !important;
        font-size:24px !important;
    }

    .pl-native-home-hero-inner{
        min-height:280px !important;
        padding-top:22px !important;
        padding-bottom:22px !important;
    }
}

@media (max-width:650px){
    .pl-native-home-intro-inner{
        padding:7px 14px !important;
        font-size:18px !important;
        line-height:1.15 !important;
    }

    .pl-native-home-hero-inner{
        min-height:0 !important;
        padding-top:22px !important;
        padding-bottom:20px !important;
    }

    .pl-native-home-hero{
        background-position:center center !important;
    }
}

/* PL native Home: Perche associarsi */
.pl-home-why{
    background:#fff;
    border-bottom:1px solid #e3e9ef;
}

.pl-home-why-inner{
    max-width:1180px;
    margin:0 auto;
    padding:30px 28px 32px;
}

.pl-home-why-head{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:end;
    margin-bottom:25px;
}

.pl-home-why-head h2{
    margin:0;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:31px;
    line-height:1.05;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-why-head h2:after{
    content:"";
    display:block;
    width:54px;
    height:4px;
    margin-top:9px;
    background:#f4c21d;
}

.pl-home-why-head p{
    margin:0;
    color:#183963;
    font-size:16px;
    line-height:1.4;
}

.pl-home-why-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
}

.pl-home-why-item{
    padding:8px 30px 4px;
    border-right:1px solid #dbe3eb;
}

.pl-home-why-item:first-child{
    padding-left:0;
}

.pl-home-why-item:last-child{
    padding-right:0;
    border-right:0;
}

.pl-home-why-icon{
    width:54px;
    height:54px;
    margin-bottom:10px;
    color:#082f70;
}

.pl-home-why-icon svg{
    width:100%;
    height:100%;
    fill:none;
    stroke:currentColor;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.pl-home-why-item h3{
    margin:0 0 7px;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:21px;
    line-height:1.15;
    font-weight:700;
}

.pl-home-why-item p{
    margin:0;
    color:#263e5b;
    font-size:15px;
    line-height:1.4;
}

@media (max-width:1050px){
    .pl-home-why-inner{
        padding:26px 22px 28px;
    }

    .pl-home-why-head{
        gap:25px;
    }

    .pl-home-why-item{
        padding-left:20px;
        padding-right:20px;
    }
}

@media (max-width:650px){
    .pl-home-why-inner{
        padding:24px 18px 26px;
    }

    .pl-home-why-head{
        display:block;
        margin-bottom:20px;
    }

    .pl-home-why-head h2{
        font-size:26px;
    }

    .pl-home-why-head p{
        margin-top:12px;
        font-size:14px;
    }

    .pl-home-why-grid{
        display:block;
    }

    .pl-home-why-item,
    .pl-home-why-item:first-child,
    .pl-home-why-item:last-child{
        display:grid;
        grid-template-columns:48px 1fr;
        column-gap:14px;
        padding:13px 0;
        border-right:0;
        border-bottom:1px solid #e2e7ec;
    }

    .pl-home-why-item:last-child{
        border-bottom:0;
    }

    .pl-home-why-icon{
        grid-row:1 / 3;
        width:44px;
        height:44px;
        margin:0;
    }

    .pl-home-why-item h3{
        font-size:19px;
        margin-bottom:4px;
    }

    .pl-home-why-item p{
        font-size:14px;
    }
}

/* PL Home: hero piu compatto per quadro d'insieme */
.pl-native-home-hero-inner{
    min-height:235px !important;
    padding-top:18px !important;
    padding-bottom:18px !important;
}

.pl-native-home-hero-copy h1{
    margin-bottom:8px !important;
    font-size:40px !important;
    line-height:.96 !important;
}

.pl-native-home-hero-copy p{
    margin-bottom:12px !important;
    line-height:1.25 !important;
}

.pl-native-home-socials{
    margin-top:10px !important;
}

.pl-native-home-telegram{
    width:185px !important;
    padding:10px !important;
}

.pl-native-home-telegram img{
    width:82px !important;
    margin:6px auto !important;
}

.pl-native-home-telegram-head{
    font-size:12px !important;
}

.pl-native-home-telegram p{
    font-size:10px !important;
}

/* PL Home: Perche associarsi senza vuoti eccessivi */
.pl-home-why-inner{
    padding-top:16px !important;
    padding-bottom:18px !important;
}

.pl-home-why-head{
    margin-bottom:12px !important;
    align-items:center !important;
}

.pl-home-why-head h2{
    font-size:27px !important;
}

.pl-home-why-head h2:after{
    margin-top:5px !important;
}

.pl-home-why-item{
    padding-top:4px !important;
    padding-bottom:2px !important;
}

.pl-home-why-icon{
    width:46px !important;
    height:46px !important;
    margin-bottom:5px !important;
}

.pl-home-why-item h3{
    margin-bottom:3px !important;
}

/* tablet */
@media (min-width:651px) and (max-width:1050px){
    .pl-native-home-hero-inner{
        min-height:220px !important;
        padding-top:16px !important;
        padding-bottom:16px !important;
    }

    .pl-native-home-hero-copy h1{
        font-size:35px !important;
    }

    .pl-home-why-inner{
        padding:14px 20px 16px !important;
    }
}

/* smartphone */
@media (max-width:650px){
    .pl-native-home-hero-inner{
        padding:18px 16px 16px !important;
    }

    .pl-native-home-hero-copy h1{
        font-size:27px !important;
        line-height:.98 !important;
    }

    .pl-native-home-hero-copy p{
        margin-bottom:10px !important;
        font-size:14px !important;
    }

    .pl-native-home-socials{
        margin-top:8px !important;
    }

    .pl-native-home-telegram{
        width:190px !important;
        margin-top:10px !important;
        padding:8px !important;
    }

    .pl-native-home-telegram img{
        width:72px !important;
        margin:4px auto !important;
    }

    .pl-home-why-inner{
        padding:14px 14px 15px !important;
    }

    .pl-home-why-head{
        margin-bottom:8px !important;
    }

    .pl-home-why-head h2{
        font-size:23px !important;
    }

    .pl-home-why-head p{
        margin-top:7px !important;
    }

    .pl-home-why-item,
    .pl-home-why-item:first-child,
    .pl-home-why-item:last-child{
        padding-top:8px !important;
        padding-bottom:8px !important;
    }
}

/* PL native Home: neutralizza padding verticale globale del tema */
body.pl-native-home-preview .pl-native-home-hero,
body.pl-native-home-preview .pl-home-why{
    padding-top:0 !important;
    padding-bottom:0 !important;
}

body.pl-native-home-preview
.pl-native-home-main
.elementor > .elementor-section{
    padding-top:0 !important;
    padding-bottom:0 !important;
}

/* PL native Home: servizi e aree principali */
.pl-home-services{
    background:#f3f6f8;
    padding:0 !important;
}

.pl-home-services-inner{
    max-width:1180px;
    margin:0 auto;
    padding:18px 28px 22px;
}

.pl-home-services-head{
    margin-bottom:13px;
}

.pl-home-services-head h2{
    margin:0;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:28px;
    line-height:1.05;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-services-head h2:after{
    content:"";
    display:block;
    width:54px;
    height:4px;
    margin-top:6px;
    background:#f4c21d;
}

.pl-home-services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}

.pl-home-service-card{
    min-width:0;
    padding:18px 16px 16px;
    background:#fff;
    border:1px solid #dde5ec;
    border-radius:6px;
    text-align:center;
}

.pl-home-service-icon{
    width:52px;
    height:52px;
    margin:0 auto 8px;
    color:#082f70;
}

.pl-home-service-icon svg{
    width:100%;
    height:100%;
    fill:none;
    stroke:currentColor;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.pl-home-service-card h3{
    margin:0 0 6px;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:21px;
    line-height:1.1;
    font-weight:700;
}

.pl-home-service-card p{
    min-height:56px;
    margin:0 0 12px;
    color:#324b68;
    font-size:14px;
    line-height:1.35;
}

.pl-home-service-card a{
    display:inline-block;
    min-width:84px;
    padding:7px 12px;
    border:1px solid #082f70;
    border-radius:3px;
    color:#082f70 !important;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
}

.pl-home-service-card a:hover,
.pl-home-service-card a:focus{
    background:#082f70;
    color:#fff !important;
}

@media (min-width:651px) and (max-width:1050px){
    .pl-home-services-inner{
        padding:17px 20px 20px;
    }

    .pl-home-services-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .pl-home-service-card p{
        min-height:0;
    }
}

@media (max-width:650px){
    .pl-home-services-inner{
        padding:15px 14px 16px;
    }

    .pl-home-services-head h2{
        font-size:23px;
    }

    .pl-home-services-grid{
        display:block;
    }

    .pl-home-service-card{
        display:grid;
        grid-template-columns:46px 1fr auto;
        grid-template-rows:auto auto;
        gap:2px 10px;
        align-items:center;
        margin-bottom:7px;
        padding:10px 11px;
        text-align:left;
    }

    .pl-home-service-card:last-child{
        margin-bottom:0;
    }

    .pl-home-service-icon{
        grid-row:1 / 3;
        width:40px;
        height:40px;
        margin:0;
    }

    .pl-home-service-card h3{
        margin:0;
        font-size:18px;
    }

    .pl-home-service-card p{
        grid-column:2;
        min-height:0;
        margin:0;
        font-size:12px;
    }

    .pl-home-service-card a{
        grid-column:3;
        grid-row:1 / 3;
        min-width:0;
        padding:6px 8px;
        font-size:11px;
    }
}

/* PL Home: sostituzione blocco editoriale Elementor */
body.pl-native-home-preview .elementor-element-b2fd3c9{
    display:none !important;
}

.pl-home-editorial{
    padding:0 !important;
    background:#fff;
}

.pl-home-editorial-inner{
    max-width:1180px;
    margin:0 auto;
    padding:18px 28px 22px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.pl-home-editorial-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:10px;
}

.pl-home-editorial-head h2{
    margin:0;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:28px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-editorial-head h2:after{
    content:"";
    display:block;
    width:46px;
    height:4px;
    margin-top:6px;
    background:#f4c21d;
}

.pl-home-editorial-head > a{
    margin-bottom:4px;
    color:#0765bd !important;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

.pl-home-editorial-list{
    display:grid;
    gap:8px;
}

.pl-home-editorial-card{
    display:grid;
    grid-template-columns:120px 1fr;
    min-height:104px;
    overflow:hidden;
    background:#fff;
    border:1px solid #d6dee6;
    border-radius:7px;
}

.pl-home-editorial-card:not(:has(.pl-home-editorial-thumb)){
    grid-template-columns:1fr;
}

.pl-home-editorial-thumb{
    display:block;
    overflow:hidden;
}

.pl-home-editorial-thumb img{
    display:block;
    width:100%;
    height:100%;
    min-height:104px;
    object-fit:cover;
}

.pl-home-editorial-body{
    min-width:0;
    padding:9px 11px;
}

.pl-home-editorial-body time{
    display:block;
    margin-bottom:3px;
    color:#6e7f91;
    font-size:10px;
}

.pl-home-editorial-body h3{
    margin:0 0 4px;
    font-family:"Ropa Sans",sans-serif;
    font-size:17px;
    line-height:1.08;
    font-weight:700;
}

.pl-home-editorial-body h3 a{
    color:#082f70 !important;
    text-decoration:none;
}

.pl-home-editorial-body p{
    margin:0 0 5px;
    color:#344b64;
    font-size:11px;
    line-height:1.3;
}

.pl-home-editorial-more{
    color:#0765bd !important;
    font-size:10px;
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
}

@media (max-width:1050px){
    .pl-home-editorial-inner{
        padding:17px 20px 20px;
        gap:14px;
    }

    .pl-home-editorial-card{
        grid-template-columns:95px 1fr;
    }
}

@media (max-width:650px){
    .pl-home-editorial-inner{
        display:block;
        padding:15px 14px 18px;
    }

    .pl-home-editorial-column + .pl-home-editorial-column{
        margin-top:20px;
    }

    .pl-home-editorial-head{
        margin-bottom:8px;
    }

    .pl-home-editorial-head h2{
        font-size:23px;
    }

    .pl-home-editorial-card{
        grid-template-columns:82px 1fr;
        min-height:88px;
    }

    .pl-home-editorial-thumb img{
        min-height:88px;
    }

    .pl-home-editorial-body{
        padding:7px 8px;
    }

    .pl-home-editorial-body h3{
        font-size:15px;
    }

    .pl-home-editorial-body p{
        display:none;
    }
}

/* PL Home - Video e approfondimenti */
body.pl-native-home-preview .elementor-element-564337b,
body.pl-native-home-preview .elementor-element-799b3ac{
    display:none !important;
}

.pl-home-videos{
    padding:0 !important;
    background:#082f70;
}

.pl-home-videos-inner{
    max-width:1180px;
    margin:0 auto;
    padding:20px 28px 24px;
}

.pl-home-videos-head{
    margin-bottom:14px;
}

.pl-home-videos-head h2{
    margin:0;
    color:#fff;
    font-family:"Ropa Sans",sans-serif;
    font-size:29px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-videos-head h2:after{
    content:"";
    display:block;
    width:48px;
    height:4px;
    margin-top:7px;
    background:#f4c21d;
}

.pl-home-videos-head p{
    margin:7px 0 0;
    color:#dbe7f5;
    font-size:12px;
}

.pl-home-videos-grid{
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(260px,.85fr);
    grid-template-rows:1fr 1fr;
    gap:10px;
}

.pl-home-video-card{
    min-width:0;
    overflow:hidden;
    border-radius:8px;
    background:#fff;
}

.pl-home-video-card.is-empty{
    display:none;
}

.pl-home-video-slot-1{
    grid-row:1 / span 2;
}

.pl-home-video-open{
    display:block;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:#fff;
    text-align:left;
    cursor:pointer;
}

.pl-home-video-media{
    position:relative;
    display:block;
    overflow:hidden;
    aspect-ratio:16 / 9;
    background:#031b42;
}

.pl-home-video-slot-1 .pl-home-video-media{
    min-height:250px;
}

.pl-home-video-media img,
.pl-home-video-media video{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.pl-home-video-play{
    position:absolute;
    left:50%;
    top:50%;
    display:flex;
    width:48px;
    height:48px;
    align-items:center;
    justify-content:center;
    transform:translate(-50%,-50%);
    border-radius:50%;
    background:rgba(255,255,255,.94);
    color:#082f70;
    font-size:20px;
    box-shadow:0 3px 14px rgba(0,0,0,.22);
}

.pl-home-video-featured{
    position:absolute;
    left:12px;
    top:12px;
    padding:5px 8px;
    border-radius:3px;
    background:#f4c21d;
    color:#082f70;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-video-copy{
    display:block;
    padding:10px 12px 12px;
}

.pl-home-video-copy strong{
    display:block;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:18px;
    line-height:1.08;
}

.pl-home-video-slot-1 .pl-home-video-copy strong{
    font-size:23px;
}

.pl-home-video-category{
    display:block;
    margin-bottom:3px;
    color:#64798e;
    font-size:9px;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-video-description{
    display:block;
    margin-top:5px;
    color:#40566e;
    font-size:11px;
    line-height:1.3;
}

.pl-home-video-modal[hidden]{
    display:none !important;
}

.pl-home-video-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:22px;
}

.pl-home-video-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,18,45,.88);
}

.pl-home-video-dialog{
    position:relative;
    z-index:1;
    width:min(900px,94vw);
    max-height:90vh;
    overflow:auto;
    border-radius:8px;
    background:#fff;
}

.pl-home-video-close{
    position:absolute;
    right:8px;
    top:7px;
    z-index:3;
    width:36px;
    height:36px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.94);
    color:#082f70;
    font-size:26px;
    cursor:pointer;
}

.pl-home-video-player{
    aspect-ratio:16 / 9;
    background:#000;
}

.pl-home-video-player iframe,
.pl-home-video-player video{
    display:block;
    width:100%;
    height:100%;
    border:0;
}

.pl-home-video-modal-copy{
    padding:13px 16px 16px;
}

.pl-home-video-modal-copy h3{
    margin:0 0 4px;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:23px;
}

.pl-home-video-modal-copy p{
    margin:0;
    color:#40566e;
    font-size:13px;
}

@media (max-width:760px){
    .pl-home-videos-inner{
        padding:17px 14px 19px;
    }

    .pl-home-videos-head h2{
        font-size:24px;
    }

    .pl-home-videos-grid{
        display:block;
    }

    .pl-home-video-card + .pl-home-video-card{
        margin-top:9px;
    }

    .pl-home-video-slot-1 .pl-home-video-media{
        min-height:0;
    }

    .pl-home-video-slot-2 .pl-home-video-open,
    .pl-home-video-slot-3 .pl-home-video-open{
        display:grid;
        grid-template-columns:112px 1fr;
    }

    .pl-home-video-slot-2 .pl-home-video-media,
    .pl-home-video-slot-3 .pl-home-video-media{
        height:100%;
        min-height:82px;
        aspect-ratio:auto;
    }

    .pl-home-video-slot-2 .pl-home-video-description,
    .pl-home-video-slot-3 .pl-home-video-description{
        display:none;
    }
}

/* PL_NATIVE_HOME_VIDEOS_COMPACT_V2 */

/*
 * Fascia video più compatta.
 * Con 2 video: featured + secondario.
 * Con 3 video: featured + 2 secondari.
 */

.pl-home-videos-inner{
    max-width:920px;
    padding-top:16px;
    padding-bottom:18px;
}

.pl-home-videos-head{
    margin-bottom:10px;
}

.pl-home-videos-head h2{
    font-size:27px;
}

.pl-home-videos-head p{
    margin-top:5px;
}

.pl-home-videos-grid{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.78fr);
    grid-template-rows:auto;
    align-items:start;
    gap:10px;
}

.pl-home-videos-grid:has(.pl-home-video-slot-3:not(.is-empty)){
    grid-template-columns:minmax(0,1.1fr) minmax(0,.72fr) minmax(0,.72fr);
}

.pl-home-video-slot-1{
    grid-row:auto;
}

.pl-home-video-media{
    aspect-ratio:16 / 7.4;
}

.pl-home-video-slot-1 .pl-home-video-media{
    min-height:0;
    aspect-ratio:16 / 7.2;
}

.pl-home-video-copy{
    padding:8px 10px 9px;
}

.pl-home-video-copy strong{
    font-size:16px;
}

.pl-home-video-slot-1 .pl-home-video-copy strong{
    font-size:19px;
}

.pl-home-video-description{
    margin-top:3px;
    font-size:10px;
    line-height:1.22;
}

.pl-home-video-play{
    width:42px;
    height:42px;
    font-size:17px;
}

.pl-home-video-featured{
    left:9px;
    top:9px;
    padding:4px 7px;
    font-size:9px;
}

/* Tablet */
@media (max-width:900px) and (min-width:761px){
    .pl-home-videos-inner{
        max-width:760px;
        padding-left:20px;
        padding-right:20px;
    }

    .pl-home-videos-grid{
        grid-template-columns:minmax(0,1.05fr) minmax(0,.75fr);
    }

    .pl-home-videos-grid:has(.pl-home-video-slot-3:not(.is-empty)){
        grid-template-columns:minmax(0,1fr) minmax(0,.7fr) minmax(0,.7fr);
    }
}

/* Mobile */
@media (max-width:760px){
    .pl-home-videos-inner{
        max-width:none;
        padding:14px 14px 16px;
    }

    .pl-home-videos-head{
        margin-bottom:9px;
    }

    .pl-home-videos-head h2{
        font-size:23px;
    }

    .pl-home-videos-head p{
        font-size:11px;
    }

    .pl-home-video-slot-1 .pl-home-video-media{
        aspect-ratio:16 / 6.6;
    }

    .pl-home-video-slot-1 .pl-home-video-copy{
        padding:8px 10px 9px;
    }

    .pl-home-video-slot-1 .pl-home-video-copy strong{
        font-size:18px;
    }

    .pl-home-video-slot-1 .pl-home-video-description{
        font-size:10px;
    }

    .pl-home-video-slot-2 .pl-home-video-open,
    .pl-home-video-slot-3 .pl-home-video-open{
        grid-template-columns:92px 1fr;
    }

    .pl-home-video-slot-2 .pl-home-video-media,
    .pl-home-video-slot-3 .pl-home-video-media{
        min-height:68px;
    }

    .pl-home-video-slot-2 .pl-home-video-copy,
    .pl-home-video-slot-3 .pl-home-video-copy{
        padding:7px 9px;
    }

    .pl-home-video-slot-2 .pl-home-video-copy strong,
    .pl-home-video-slot-3 .pl-home-video-copy strong{
        font-size:15px;
    }

    .pl-home-video-play{
        width:36px;
        height:36px;
        font-size:14px;
    }
}

/* PL_NATIVE_HOME_DENSITY_V3 */

/* NEWS / COMUNICATI: miniature proporzionate al testo più corto */
.pl-home-editorial-card{
    grid-template-columns:94px 1fr;
    min-height:88px;
}

.pl-home-editorial-thumb img{
    min-height:88px;
}

.pl-home-editorial-body{
    padding:7px 9px;
}

.pl-home-editorial-body h3{
    margin-bottom:3px;
}

.pl-home-editorial-body p{
    margin-bottom:4px;
    line-height:1.22;
}

/* VIDEO: fascia volutamente più piccola e subordinata alla Home */
.pl-home-videos-inner{
    max-width:680px;
    padding-top:14px;
    padding-bottom:15px;
}

.pl-home-videos-head{
    margin-bottom:9px;
}

.pl-home-videos-head h2{
    font-size:25px;
}

.pl-home-videos-head p{
    margin-top:4px;
    font-size:11px;
}

.pl-home-videos-grid{
    grid-template-columns:minmax(0,1.1fr) minmax(0,.78fr);
    gap:8px;
}

.pl-home-videos-grid:has(.pl-home-video-slot-3:not(.is-empty)){
    grid-template-columns:minmax(0,1.05fr) minmax(0,.72fr) minmax(0,.72fr);
}

.pl-home-video-slot-1 .pl-home-video-media{
    aspect-ratio:16 / 6.1;
}

.pl-home-video-slot-2 .pl-home-video-media,
.pl-home-video-slot-3 .pl-home-video-media{
    aspect-ratio:16 / 6.4;
}

.pl-home-video-copy{
    padding:6px 8px 7px;
}

.pl-home-video-copy strong{
    font-size:14px;
}

.pl-home-video-slot-1 .pl-home-video-copy strong{
    font-size:17px;
}

.pl-home-video-description{
    margin-top:2px;
    font-size:9px;
    line-height:1.18;
}

.pl-home-video-play{
    width:35px;
    height:35px;
    font-size:14px;
}

.pl-home-video-featured{
    left:7px;
    top:7px;
    padding:3px 6px;
    font-size:8px;
}

@media (max-width:760px){

    .pl-home-editorial-card{
        grid-template-columns:70px 1fr;
        min-height:76px;
    }

    .pl-home-editorial-thumb img{
        min-height:76px;
    }

    .pl-home-editorial-body{
        padding:6px 7px;
    }

    .pl-home-videos-inner{
        max-width:380px;
        margin-left:auto;
        margin-right:auto;
        padding:13px 12px 14px;
    }

    .pl-home-videos-head h2{
        font-size:22px;
    }

    .pl-home-video-slot-1 .pl-home-video-media{
        aspect-ratio:16 / 6;
    }

    .pl-home-video-slot-2 .pl-home-video-open,
    .pl-home-video-slot-3 .pl-home-video-open{
        grid-template-columns:80px 1fr;
    }

    .pl-home-video-slot-2 .pl-home-video-media,
    .pl-home-video-slot-3 .pl-home-video-media{
        min-height:60px;
        aspect-ratio:auto;
    }

    .pl-home-video-slot-1 .pl-home-video-copy strong{
        font-size:16px;
    }

    .pl-home-video-slot-2 .pl-home-video-copy strong,
    .pl-home-video-slot-3 .pl-home-video-copy strong{
        font-size:14px;
    }

    .pl-home-video-play{
        width:32px;
        height:32px;
        font-size:13px;
    }
}

/* PL_NATIVE_HOME_EDITORIAL_NO_EXCERPT_V5 */

.pl-home-editorial-card{
    grid-template-columns:82px 1fr;
    min-height:76px;
}

.pl-home-editorial-thumb img{
    min-height:76px;
}

.pl-home-editorial-body{
    padding:7px 9px;
}

.pl-home-editorial-body h3{
    margin-bottom:6px;
}

.pl-home-editorial-body p{
    display:none !important;
}

@media (max-width:650px){
    .pl-home-editorial-card{
        grid-template-columns:64px 1fr;
        min-height:70px;
    }

    .pl-home-editorial-thumb img{
        min-height:70px;
    }

    .pl-home-editorial-body{
        padding:6px 7px;
    }
}

/* PL_NATIVE_HOME_EDITORIAL_COMPACT_V6 */

/* Desktop: riferimento = titolo su 2 righe */
.pl-home-editorial-card{
    grid-template-columns:70px 1fr;
    min-height:64px;
}

.pl-home-editorial-thumb img{
    min-height:64px;
}

.pl-home-editorial-body{
    padding:5px 7px;
}

.pl-home-editorial-body time{
    margin-bottom:1px;
    line-height:1.05;
}

.pl-home-editorial-body h3{
    margin:0 0 2px;
    line-height:1.03;
}

.pl-home-editorial-more{
    display:inline-block;
    margin:0;
    line-height:1;
}

.pl-home-editorial-list{
    gap:6px;
}

/* Mobile: riferimento = titolo su 3 righe */
@media (max-width:650px){

    .pl-home-editorial-card{
        grid-template-columns:56px 1fr;
        min-height:66px;
    }

    .pl-home-editorial-thumb img{
        min-height:66px;
    }

    .pl-home-editorial-body{
        padding:4px 6px;
    }

    .pl-home-editorial-body time{
        margin-bottom:1px;
        font-size:9px;
    }

    .pl-home-editorial-body h3{
        margin-bottom:2px;
        line-height:1.02;
    }

    .pl-home-editorial-more{
        margin:0;
        line-height:1;
    }

    .pl-home-editorial-list{
        gap:6px;
    }
}

/* PL_NATIVE_HOME_EDITORIAL_COMPACT_V7 */

/*
 * L'immagine non determina più l'altezza della card.
 * Desktop: riferimento titolo 2 righe.
 */
.pl-home-editorial-card{
    grid-template-columns:66px minmax(0,1fr) !important;
    min-height:0 !important;
    height:auto !important;
    align-items:start !important;
}

.pl-home-editorial-thumb{
    width:60px !important;
    height:60px !important;
    margin:5px 0 5px 5px !important;
    align-self:start !important;
}

.pl-home-editorial-thumb img{
    display:block !important;
    width:60px !important;
    height:60px !important;
    min-height:0 !important;
    object-fit:cover !important;
}

.pl-home-editorial-body{
    padding:5px 7px 5px 6px !important;
}

.pl-home-editorial-body time{
    margin:0 0 1px !important;
    line-height:1 !important;
}

.pl-home-editorial-body h3{
    margin:0 0 3px !important;
    line-height:1.02 !important;
}

.pl-home-editorial-more{
    display:inline-block !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
}

.pl-home-editorial-list{
    gap:5px !important;
}

/*
 * Mobile: riferimento titolo 3 righe.
 */
@media (max-width:650px){

    .pl-home-editorial-card{
        grid-template-columns:58px minmax(0,1fr) !important;
        min-height:0 !important;
        height:auto !important;
    }

    .pl-home-editorial-thumb{
        width:52px !important;
        height:52px !important;
        margin:5px 0 5px 5px !important;
    }

    .pl-home-editorial-thumb img{
        width:52px !important;
        height:52px !important;
        min-height:0 !important;
    }

    .pl-home-editorial-body{
        padding:4px 6px 4px 5px !important;
    }

    .pl-home-editorial-body time{
        margin:0 0 1px !important;
        line-height:1 !important;
    }

    .pl-home-editorial-body h3{
        margin:0 0 2px !important;
        line-height:1 !important;
    }

    .pl-home-editorial-more{
        margin:0 !important;
        padding:0 !important;
        line-height:1 !important;
    }
}

/* PL_NATIVE_HOME_EDITORIAL_V8 */

/* Card senza immagine: nessuna falsa colonna-thumbnail */
.pl-home-editorial-card:not(:has(.pl-home-editorial-thumb)){
    grid-template-columns:minmax(0,1fr) !important;
}

.pl-home-editorial-card:not(:has(.pl-home-editorial-thumb)) .pl-home-editorial-body{
    grid-column:1 / -1 !important;
}

/* Riduzione reale dello spazio attorno a LEGGI TUTTO */
.pl-home-editorial-thumb{
    margin:3px 0 3px 4px !important;
}

.pl-home-editorial-body{
    padding:3px 6px 2px 5px !important;
}

.pl-home-editorial-body time{
    margin:0 0 1px !important;
}

.pl-home-editorial-body h3{
    margin:0 !important;
}

.pl-home-editorial-more{
    display:block !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    line-height:1 !important;
}

/* Anche lo spazio fra le card viene leggermente ridotto */
.pl-home-editorial-list{
    gap:4px !important;
}

@media (max-width:650px){

    .pl-home-editorial-thumb{
        margin:3px 0 3px 4px !important;
    }

    .pl-home-editorial-body{
        padding:3px 5px 2px 5px !important;
    }

    .pl-home-editorial-body h3{
        margin:0 !important;
    }

    .pl-home-editorial-more{
        margin-top:1px !important;
    }
}

/* PL_NATIVE_HOME_VIDEOS_COMPACT_V4 */

/* Desktop: fascia realmente secondaria rispetto al resto della Home */
.pl-home-videos-inner{
    max-width:560px !important;
    padding:12px 16px 13px !important;
}

.pl-home-videos-head{
    margin-bottom:7px !important;
}

.pl-home-videos-head h2{
    font-size:22px !important;
}

.pl-home-videos-head h2:after{
    width:38px !important;
    height:3px !important;
    margin-top:5px !important;
}

.pl-home-videos-head p{
    margin-top:4px !important;
    font-size:10px !important;
}

.pl-home-videos-grid{
    gap:7px !important;
}

.pl-home-video-slot-1 .pl-home-video-media{
    min-height:0 !important;
    aspect-ratio:16 / 5.2 !important;
}

.pl-home-video-slot-2 .pl-home-video-media,
.pl-home-video-slot-3 .pl-home-video-media{
    min-height:0 !important;
    aspect-ratio:16 / 5.4 !important;
}

.pl-home-video-copy{
    padding:5px 7px 6px !important;
}

.pl-home-video-copy strong{
    font-size:13px !important;
    line-height:1.03 !important;
}

.pl-home-video-slot-1 .pl-home-video-copy strong{
    font-size:15px !important;
}

.pl-home-video-description{
    margin-top:2px !important;
    font-size:8px !important;
    line-height:1.15 !important;
}

.pl-home-video-play{
    width:30px !important;
    height:30px !important;
    font-size:12px !important;
}

.pl-home-video-featured{
    left:6px !important;
    top:6px !important;
    padding:3px 5px !important;
    font-size:7px !important;
}

/* Mobile */
@media (max-width:760px){

    .pl-home-videos-inner{
        max-width:340px !important;
        padding:11px 10px 12px !important;
    }

    .pl-home-videos-head h2{
        font-size:20px !important;
    }

    .pl-home-videos-head p{
        font-size:9px !important;
    }

    .pl-home-video-slot-1 .pl-home-video-media{
        aspect-ratio:16 / 5.1 !important;
    }

    .pl-home-video-slot-1 .pl-home-video-copy{
        padding:5px 7px 6px !important;
    }

    .pl-home-video-slot-1 .pl-home-video-copy strong{
        font-size:15px !important;
    }

    .pl-home-video-slot-2 .pl-home-video-open,
    .pl-home-video-slot-3 .pl-home-video-open{
        grid-template-columns:68px minmax(0,1fr) !important;
    }

    .pl-home-video-slot-2 .pl-home-video-media,
    .pl-home-video-slot-3 .pl-home-video-media{
        min-height:50px !important;
        height:100% !important;
        aspect-ratio:auto !important;
    }

    .pl-home-video-slot-2 .pl-home-video-copy,
    .pl-home-video-slot-3 .pl-home-video-copy{
        padding:5px 6px !important;
    }

    .pl-home-video-slot-2 .pl-home-video-copy strong,
    .pl-home-video-slot-3 .pl-home-video-copy strong{
        font-size:13px !important;
    }

    .pl-home-video-play{
        width:28px !important;
        height:28px !important;
        font-size:11px !important;
    }
}

/* PL_NATIVE_HOME_LOWER_CLEANUP_V1 */
body.pl-native-home-preview .elementor-element-95dde5d,
body.pl-native-home-preview .elementor-element-0ce7a77,
body.pl-native-home-preview .elementor-element-4d13208{
    display:none !important;
}

/* PL_NATIVE_HOME_PARTNERS_PREP_V1 */

/* Duplicati già ricostruiti nei Servizi nativi */
body.pl-native-home-preview .elementor-element-4fea158,
body.pl-native-home-preview .elementor-element-6dcf51d{
    display:none !important;
}

/* Materiale dei corsi 0a638fd resta volutamente intatto */

/* PL_NATIVE_HOME_PARTNERS_V1 */

/* Nasconde solo Academy/partner legacy; Materiale dei corsi resta intatto */
body.pl-native-home-preview .elementor-element-0635a04,
body.pl-native-home-preview .elementor-element-46b8bb9,
body.pl-native-home-preview .elementor-element-6b6796b,
body.pl-native-home-preview .elementor-element-52e74a3,
body.pl-native-home-preview .elementor-element-b619098{
    display:none !important;
}

.pl-home-partners{
    padding:0 !important;
    background:#f3f5f7;
}

.pl-home-partners-inner{
    max-width:920px;
    margin:0 auto;
    padding:17px 24px 19px;
}

.pl-home-partners-head{
    margin-bottom:11px;
    text-align:center;
}

.pl-home-partners-head h2{
    margin:0;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:24px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-partners-head h2:after{
    content:"";
    display:block;
    width:42px;
    height:3px;
    margin:6px auto 0;
    background:#f4c21d;
}

.pl-home-partners-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.pl-home-partner-card{
    display:flex;
    min-width:0;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:10px 12px 9px;
    border:1px solid #d9e0e7;
    border-radius:7px;
    background:#fff;
    text-decoration:none !important;
}

.pl-home-partner-image{
    display:flex;
    width:100%;
    height:82px;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.pl-home-partner-image img{
    display:block;
    max-width:100%;
    max-height:72px;
    width:auto;
    height:auto;
    object-fit:contain;
}

.pl-home-partner-card strong{
    display:block;
    margin-top:7px;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:15px;
    line-height:1;
    text-align:center;
}

@media (max-width:650px){

    .pl-home-partners-inner{
        padding:14px;
    }

    .pl-home-partners-head h2{
        font-size:21px;
    }

    .pl-home-partners-grid{
        grid-template-columns:1fr;
        gap:7px;
    }

    .pl-home-partner-card{
        display:grid;
        grid-template-columns:96px minmax(0,1fr);
        padding:7px 9px;
    }

    .pl-home-partner-image{
        height:58px;
    }

    .pl-home-partner-image img{
        max-height:52px;
    }

    .pl-home-partner-card strong{
        margin:0;
        padding-left:10px;
        font-size:15px;
        text-align:left;
    }
}

/* PL_NATIVE_HOME_NEWSLETTER_CONVENTIONS_V2 */

body.pl-native-home-preview .elementor-element-59a9923,
body.pl-native-home-preview .elementor-element-125e78f{
    display:none !important;
}

.pl-home-newsletter{
    padding:0 !important;
    background:#f3f5f7;
}

.pl-home-newsletter-inner{
    max-width:920px;
    margin:0 auto;
    padding:18px 24px;
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:28px;
    align-items:center;
}

.pl-home-newsletter-copy h2{
    margin:0 0 5px;
    color:#082f70;
    font-family:"Ropa Sans",sans-serif;
    font-size:25px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-newsletter-copy h2:after{
    content:"";
    display:block;
    width:42px;
    height:3px;
    margin-top:6px;
    background:#f4c21d;
}

.pl-home-newsletter-copy p{
    margin:8px 0 0;
    color:#40566e;
    font-size:12px;
    line-height:1.3;
}

.pl-home-newsletter-form .wpcf7{
    width:100%;
}

.pl-home-newsletter-form p{
    margin:0 0 6px;
}

.pl-home-newsletter-form input,
.pl-home-newsletter-form textarea,
.pl-home-newsletter-form select{
    box-sizing:border-box;
    max-width:100%;
}

.pl-home-newsletter-form input[type="text"],
.pl-home-newsletter-form input[type="email"]{
    width:100%;
    min-height:36px;
    padding:6px 9px;
    border:1px solid #c8d2dc;
    border-radius:4px;
    background:#fff;
}

.pl-home-newsletter-form input[type="submit"],
.pl-home-newsletter-form button[type="submit"]{
    min-height:34px;
    padding:6px 16px;
    border:0;
    border-radius:4px;
    background:#082f70;
    color:#fff;
    font-weight:700;
    cursor:pointer;
}

.pl-home-conventions{
    padding:0 !important;
    background-image:
        linear-gradient(rgba(8,47,112,.92),rgba(8,47,112,.92)),
        url("/main/wp-content/uploads/2025/02/HOME-AP-L-sfondo.jpg");
    background-position:center;
    background-size:cover;
}

.pl-home-conventions-inner{
    max-width:920px;
    margin:0 auto;
    padding:20px 24px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}

.pl-home-conventions-copy h2{
    margin:0 0 5px;
    color:#fff;
    font-family:"Ropa Sans",sans-serif;
    font-size:25px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-conventions-copy p{
    margin:0;
    color:#e6eef8;
    font-size:12px;
}

.pl-home-conventions-actions{
    display:flex;
    gap:8px;
    flex-shrink:0;
}

.pl-home-conventions-actions a{
    display:inline-flex;
    min-height:34px;
    align-items:center;
    justify-content:center;
    padding:6px 12px;
    border-radius:4px;
    font-size:11px;
    font-weight:700;
    text-decoration:none !important;
    text-transform:uppercase;
}

.pl-home-conventions-primary{
    background:#f4c21d;
    color:#082f70 !important;
}

.pl-home-conventions-secondary{
    border:1px solid rgba(255,255,255,.75);
    color:#fff !important;
}

@media (max-width:650px){
    .pl-home-newsletter-inner{
        display:block;
        padding:15px 14px;
    }

    .pl-home-newsletter-copy{
        margin-bottom:11px;
    }

    .pl-home-newsletter-copy h2{
        font-size:22px;
    }

    .pl-home-conventions-inner{
        display:block;
        padding:16px 14px;
    }

    .pl-home-conventions-copy h2{
        font-size:22px;
        line-height:1.05;
    }

    .pl-home-conventions-actions{
        margin-top:11px;
        display:grid;
        grid-template-columns:1fr;
    }

    .pl-home-conventions-actions a{
        width:100%;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_V1 */

.pl-home-registration{
    padding:0 !important;
    background:#fff;
}

.pl-home-registration-inner{
    max-width:920px;
    margin:0 auto;
    padding:14px 24px 18px;
}

.pl-home-registration-inner a{
    display:block;
    text-decoration:none !important;
}

.pl-home-registration-inner img{
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    margin:0 auto;
}

@media (max-width:650px){
    .pl-home-registration-inner{
        padding:10px 14px 14px;
    }
}

/* PL_NATIVE_HOME_HERO_V3 */

/*
 * Fotografia separata dal contenuto:
 * viene schiarita senza alterare testi, CTA e Telegram.
 */
.pl-native-home-hero{
    position:relative !important;
    isolation:isolate;
    overflow:hidden;
    background-image:none !important;
}

.pl-native-home-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background-image:url('/main/wp-content/uploads/2025/02/HOME-AP-L-sfondo.jpg');
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    filter:brightness(1.38) contrast(.96);
    transform:scale(1.01);
}

.pl-native-home-hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:rgba(4,38,87,.12);
    pointer-events:none;
}

.pl-native-home-hero-inner{
    position:relative;
    z-index:1;
}

/* Due sole righe logiche su desktop */
.pl-native-home-hero-copy h1 span{
    white-space:nowrap;
}

@media (max-width:760px){
    /*
     * Su schermi stretti lasciamo al browser la possibilità di adattare
     * la frase senza provocare overflow.
     */
    .pl-native-home-hero-copy h1 span{
        white-space:normal;
    }

    .pl-native-home-hero::before{
        filter:brightness(1.30) contrast(.97);
    }
}

/* PL_NATIVE_HOME_HERO_SOCIAL_TELEGRAM_V4 */

/*
 * Sequenza visiva:
 * testo -> social -> CTA.
 * Le classi vengono applicate da home-hero.js
 * senza duplicare o ricreare i link esistenti.
 */
.pl-native-home-hero-copy .pl-hero-social-row{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    margin:10px 0 8px !important;
}

.pl-native-home-hero-copy .pl-hero-cta-row{
    margin-top:0 !important;
}

/* Telegram: card compatta come nel mockup */
.pl-native-home-hero .pl-hero-telegram-wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
}

.pl-native-home-hero img.pl-hero-telegram-image{
    display:block !important;
    width:185px !important;
    max-width:185px !important;
    height:auto !important;
    margin:0 auto !important;
    border-radius:9px !important;
    box-shadow:0 4px 14px rgba(0,0,0,.16) !important;
}

/* Desktop: mantiene la card discreta sulla destra */
@media (min-width:761px){
    .pl-native-home-hero .pl-hero-telegram-wrap{
        width:205px !important;
        max-width:205px !important;
    }
}

/* Mobile: social prima del pulsante, Telegram sotto e compatto */
@media (max-width:760px){
    .pl-native-home-hero-copy .pl-hero-social-row{
        margin:9px 0 7px !important;
        gap:9px !important;
    }

    .pl-native-home-hero img.pl-hero-telegram-image{
        width:180px !important;
        max-width:180px !important;
    }

    .pl-native-home-hero .pl-hero-telegram-wrap{
        width:100% !important;
        max-width:none !important;
        margin-top:12px !important;
    }
}

/* PL_NATIVE_HOME_HERO_V5 */

/* Social + CTA sulla stessa linea */
.pl-native-home-actions,
.pl-native-home-actions.pl-hero-social-row,
.pl-native-home-actions.pl-hero-cta-row{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:10px !important;
    margin:12px 0 0 !important;
}

.pl-native-home-actions .pl-native-home-socials{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:8px !important;
    margin:0 !important;
    flex:0 0 auto;
}

.pl-native-home-actions .pl-native-home-socials a{
    display:flex !important;
    width:48px !important;
    height:48px !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
}

.pl-native-home-actions .pl-native-home-hero-cta{
    display:inline-flex !important;
    min-height:48px !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    white-space:nowrap !important;
}

/* Telegram: vera card, non QR gigante */
.pl-native-home-telegram,
.pl-native-home-telegram.pl-hero-telegram-wrap{
    box-sizing:border-box !important;
    display:flex !important;
    width:185px !important;
    max-width:185px !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    padding:10px 10px 9px !important;
    margin:0 !important;
    border-radius:9px !important;
    background:#fff !important;
    box-shadow:0 4px 14px rgba(0,0,0,.15) !important;
    color:#082f70 !important;
    text-align:center !important;
}

.pl-native-home-telegram-head{
    display:flex !important;
    width:100% !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:6px !important;
    margin:0 0 6px !important;
    color:#082f70 !important;
    font-size:12px !important;
    line-height:1.05 !important;
    text-align:left !important;
}

.pl-native-home-telegram-icon{
    display:block !important;
    margin-top:-1px !important;
    color:#082f70 !important;
    font-size:20px !important;
    line-height:1 !important;
}

.pl-native-home-telegram img,
.pl-native-home-telegram img.pl-hero-telegram-image{
    display:block !important;
    width:92px !important;
    max-width:92px !important;
    height:auto !important;
    margin:0 auto 5px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.pl-native-home-telegram p{
    margin:0 !important;
    padding:0 !important;
    color:#082f70 !important;
    font-size:10px !important;
    line-height:1.15 !important;
    text-align:center !important;
}

/* Neutralizza le vecchie regole JS/CSS V4 sulla card */
.pl-native-home-hero .pl-hero-telegram-wrap{
    width:185px !important;
    max-width:185px !important;
    background:#fff !important;
}

@media (max-width:760px){

    .pl-native-home-actions,
    .pl-native-home-actions.pl-hero-social-row,
    .pl-native-home-actions.pl-hero-cta-row{
        gap:7px !important;
        margin-top:10px !important;
    }

    .pl-native-home-actions .pl-native-home-socials{
        gap:6px !important;
    }

    .pl-native-home-actions .pl-native-home-socials a{
        width:40px !important;
        height:40px !important;
    }

    .pl-native-home-actions .pl-native-home-hero-cta{
        min-height:40px !important;
        padding-left:11px !important;
        padding-right:11px !important;
        font-size:14px !important;
    }

    .pl-native-home-telegram,
    .pl-native-home-telegram.pl-hero-telegram-wrap,
    .pl-native-home-hero .pl-hero-telegram-wrap{
        width:180px !important;
        max-width:180px !important;
        margin:14px auto 0 !important;
        padding:9px !important;
    }

    .pl-native-home-telegram img,
    .pl-native-home-telegram img.pl-hero-telegram-image{
        width:82px !important;
        max-width:82px !important;
    }
}

/* PL_NATIVE_HOME_TELEGRAM_V6 */

.pl-native-home-telegram,
.pl-native-home-telegram.pl-hero-telegram-wrap{
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) 92px !important;
    grid-template-rows:auto auto auto !important;
    grid-template-areas:
        "icon title qr"
        "handle handle qr"
        "text text text" !important;

    width:330px !important;
    max-width:330px !important;
    min-height:0 !important;

    align-items:center !important;
    column-gap:9px !important;
    row-gap:5px !important;

    margin:0 !important;
    padding:12px 13px 11px !important;

    border:1px solid rgba(8,47,112,.16) !important;
    border-radius:11px !important;

    background:#fff !important;
    box-shadow:0 5px 16px rgba(0,0,0,.16) !important;

    color:#082f70 !important;
    text-decoration:none !important;
}

.pl-native-home-telegram-icon{
    grid-area:icon !important;

    display:flex !important;
    width:44px !important;
    height:44px !important;

    align-items:center !important;
    justify-content:center !important;

    margin:0 !important;

    border-radius:50% !important;
    background:#229ed9 !important;
    color:#fff !important;

    font-size:23px !important;
    line-height:1 !important;
}

.pl-native-home-telegram-title{
    grid-area:title !important;

    display:block !important;
    margin:0 !important;

    color:#082f70 !important;
    font-size:15px !important;
    line-height:1.05 !important;
    text-align:left !important;
}

.pl-native-home-telegram-title strong{
    font-weight:700 !important;
}

.pl-native-home-telegram img.pl-native-home-telegram-qr,
.pl-native-home-telegram img.pl-hero-telegram-image{
    grid-area:qr !important;

    display:block !important;
    width:92px !important;
    max-width:92px !important;
    height:92px !important;

    margin:0 !important;
    padding:0 !important;

    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:none !important;

    object-fit:contain !important;
}

.pl-native-home-telegram-handle{
    grid-area:handle !important;

    display:block !important;
    margin:0 !important;

    color:#188ee8 !important;
    font-size:15px !important;
    line-height:1 !important;
    text-align:left !important;
}

.pl-native-home-telegram-text{
    grid-area:text !important;

    display:block !important;
    margin:2px 0 0 !important;

    color:#082f70 !important;
    font-size:11px !important;
    line-height:1.15 !important;
    text-align:left !important;
}

/* Elimina qualsiasi effetto residuo del vecchio layout Telegram */
.pl-native-home-telegram-head,
.pl-native-home-telegram > p{
    display:none !important;
}

@media (max-width:760px){

    .pl-native-home-telegram,
    .pl-native-home-telegram.pl-hero-telegram-wrap,
    .pl-native-home-hero .pl-hero-telegram-wrap{
        grid-template-columns:40px minmax(0,1fr) 78px !important;

        width:300px !important;
        max-width:calc(100vw - 44px) !important;

        margin:13px auto 0 !important;
        padding:10px !important;

        column-gap:8px !important;
        row-gap:4px !important;
    }

    .pl-native-home-telegram-icon{
        width:38px !important;
        height:38px !important;
        font-size:20px !important;
    }

    .pl-native-home-telegram-title{
        font-size:13px !important;
    }

    .pl-native-home-telegram img.pl-native-home-telegram-qr,
    .pl-native-home-telegram img.pl-hero-telegram-image{
        width:78px !important;
        max-width:78px !important;
        height:78px !important;
    }

    .pl-native-home-telegram-handle{
        font-size:13px !important;
    }

    .pl-native-home-telegram-text{
        font-size:10px !important;
    }
}

/* PL_NATIVE_HOME_SERVICE_IMAGES_V1 */
.pl-home-services-with-photos .pl-home-service-card-photo{
    overflow:hidden !important;
}

.pl-home-services-with-photos .pl-home-service-card-photo svg,
.pl-home-services-with-photos .pl-home-service-card-photo [class*="service-icon"]{
    display:none !important;
}

.pl-home-services-with-photos .pl-home-service-photo{
    display:block !important;
    width:100% !important;
    height:108px !important;
    margin:0 0 10px !important;
    overflow:hidden !important;
    border-radius:7px 7px 0 0 !important;
    background:#dfe7ef !important;
}

.pl-home-services-with-photos .pl-home-service-photo img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

@media (max-width:760px){
    .pl-home-services-with-photos .pl-home-service-photo{
        height:82px !important;
        margin-bottom:8px !important;
    }
}

/* PL_NATIVE_HOME_SERVICES_MOBILE_V3 */

@media (max-width:650px){

    .pl-home-services-with-photos .pl-home-services-grid{
        display:block !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo{
        display:flex !important;
        grid-template-columns:none !important;
        grid-template-rows:none !important;
        flex-direction:column !important;
        align-items:stretch !important;

        width:100% !important;
        min-height:0 !important;
        height:auto !important;

        margin:0 0 10px !important;
        padding:0 0 11px !important;

        overflow:hidden !important;
        border-radius:7px !important;
        background:#fff !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo:last-child{
        margin-bottom:0 !important;
    }

    .pl-home-services-with-photos .pl-home-service-photo{
        display:block !important;
        grid-column:auto !important;
        grid-row:auto !important;

        width:100% !important;
        height:118px !important;

        margin:0 0 9px !important;
        padding:0 !important;

        border-radius:7px 7px 0 0 !important;
        overflow:hidden !important;
    }

    .pl-home-services-with-photos .pl-home-service-photo img{
        display:block !important;
        width:100% !important;
        height:100% !important;
        max-width:none !important;

        margin:0 !important;
        object-fit:cover !important;
        object-position:center center !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo h3{
        grid-column:auto !important;
        grid-row:auto !important;

        margin:0 12px 5px !important;

        font-size:19px !important;
        line-height:1.05 !important;
        text-align:center !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo p{
        grid-column:auto !important;
        grid-row:auto !important;

        min-height:0 !important;
        margin:0 14px 9px !important;

        font-size:13px !important;
        line-height:1.25 !important;
        text-align:center !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo > a,
    .pl-home-services-with-photos .pl-home-service-card-photo .pl-home-service-link{
        grid-column:auto !important;
        grid-row:auto !important;
        align-self:center !important;

        min-width:94px !important;
        margin:0 auto !important;
    }

    .pl-home-services-with-photos .pl-home-service-card-photo .pl-home-service-icon{
        display:none !important;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V2 */

.pl-home-registration-mobile{
    display:none;
}

@media (max-width:650px){

    .pl-home-registration-inner{
        padding:10px 14px 14px !important;
    }

    .pl-home-registration-desktop{
        display:none !important;
    }

    .pl-home-registration-mobile{
        display:flex !important;
        flex-direction:column;
        align-items:flex-start;
        gap:14px;

        padding:20px 18px;

        border-top:6px solid #f4c900;
        border-radius:7px;

        background:#263a70;
        color:#fff;
    }

    .pl-home-registration-mobile-copy{
        width:100%;
    }

    .pl-home-registration-mobile-kicker{
        display:block;
        margin:0 0 5px;

        color:#f4c900;

        font-family:"Ropa Sans",sans-serif;
        font-size:22px;
        line-height:1;
        font-weight:700;
        text-transform:uppercase;
    }

    .pl-home-registration-mobile-copy strong{
        display:block;
        margin:0 0 7px;

        color:#fff;

        font-family:"Ropa Sans",sans-serif;
        font-size:17px;
        line-height:1.15;
        font-weight:700;
    }

    .pl-home-registration-mobile-copy p{
        margin:0 !important;

        color:#fff !important;

        font-size:13px !important;
        line-height:1.35 !important;
    }

    .pl-home-registration-mobile-cta{
        display:inline-flex !important;
        align-items:center;
        justify-content:center;

        min-width:112px;
        min-height:36px;

        padding:7px 18px;

        border-radius:5px;

        background:#f4c900;
        color:#082f70 !important;

        font-family:"Ropa Sans",sans-serif;
        font-size:14px;
        line-height:1;
        font-weight:700;
        text-transform:uppercase;
        text-decoration:none !important;
    }
}

/* PL_NATIVE_HOME_NEWSLETTER_REGISTRATION_V3 */

@media (max-width:650px){

    /* Newsletter: blocco autonomo e chiaramente separato dall'adesione PL */
    .pl-home-newsletter{
        box-sizing:border-box !important;
        margin:12px 14px 18px !important;
        padding:18px !important;

        background:#fff !important;
        border:1px solid #d4dde6 !important;
        border-radius:8px !important;
    }

    .pl-home-newsletter-inner{
        max-width:none !important;
        margin:0 !important;
        padding:0 !important;
    }

    .pl-home-newsletter h2{
        margin-top:0 !important;
    }

    .pl-home-newsletter .wpcf7 form,
    .pl-home-newsletter .wpcf7-form{
        margin-bottom:0 !important;
    }

    .pl-home-newsletter .wpcf7-form > p:last-of-type{
        margin-bottom:0 !important;
    }

    /* Box iscrizione PL */
    .pl-home-registration-mobile{
        position:relative !important;
        overflow:visible !important;
    }

    .pl-home-registration-mobile-copy p span{
        display:block;
    }

    .pl-home-registration-mobile-copy p span + span{
        margin-top:2px;
    }

    /*
     * Tessera ricavata dal banner originale:
     * il background viene ingrandito e centrato esclusivamente
     * sulla porzione contenente la tessera.
     */
    .pl-home-registration-mobile-card{
        position:absolute;
        z-index:1;

        right:-7px;
        bottom:12px;

        width:120px;
        height:78px;

        border-radius:10px;

        background-image:url("https://www.a-pl.it/main/wp-content/uploads/2025/03/A-PL-REGISTRATI-1.png");
        background-repeat:no-repeat;
        background-size:400% auto;
        background-position:49% center;

        transform:rotate(7deg);
        transform-origin:center center;

        box-shadow:0 5px 12px rgba(0,0,0,.20);

        pointer-events:none;
    }

    .pl-home-registration-mobile-cta{
        position:relative;
        z-index:2;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V4 */

@media (max-width:650px){

    .pl-home-registration-mobile-copy p{
        line-height:1.32 !important;
    }

    .pl-home-registration-mobile-copy p br{
        display:block !important;
        content:"" !important;
        margin:0 !important;
    }

    /*
     * Una sola tessera.
     * Il ritaglio elimina il fondino blu del banner sorgente.
     */
    .pl-home-registration-mobile-card{
        right:10px !important;
        bottom:14px !important;

        width:118px !important;
        height:72px !important;

        border-radius:0 !important;

        background-size:515% auto !important;
        background-position:49.5% 51% !important;

        transform:rotate(-11deg) !important;
        transform-origin:center center !important;

        clip-path:polygon(
            5% 8%,
            96% 0,
            100% 91%,
            3% 100%
        ) !important;

        box-shadow:none !important;
        overflow:hidden !important;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V5 */

@media (max-width:650px){

    .pl-home-registration-mobile-card{
        position:absolute !important;
        z-index:1 !important;

        right:10px !important;
        bottom:14px !important;

        width:122px !important;
        height:auto !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 !important;

        background:none !important;
        border:0 !important;
        border-radius:0 !important;

        clip-path:none !important;

        transform:rotate(-11deg) !important;
        transform-origin:center center !important;

        box-shadow:none !important;

        object-fit:contain !important;

        pointer-events:none !important;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V6 */

@media (max-width:650px){
    .pl-home-registration-mobile-card{
        bottom:-8px !important;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V7 */

@media (max-width:650px){
    .pl-home-registration-mobile-card{
        width:88% !important;
        max-width:200px !important;
    }

    .pl-home-registration-mobile-card img{
        width:100% !important;
        height:auto !important;
        display:block !important;
    }
}

/* PL_NATIVE_HOME_REGISTRATION_MOBILE_V8 */

@media (max-width:650px){
    .pl-home-registration-mobile-card{
        width:107px !important;
        max-width:none !important;
    }
}

/* PL_NATIVE_HOME_HIGHLIGHT_V1 */

.pl-home-highlight{
    padding:0 !important;
    background:#ffcf00;
    color:#082f70;
}

.pl-home-highlight-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;

    max-width:1180px;
    margin:0 auto;
    padding:15px 28px;
}

.pl-home-highlight-copy{
    min-width:0;
}

.pl-home-highlight-title{
    display:block;
    margin:0 0 2px;

    font-family:"Ropa Sans",sans-serif;
    font-size:22px;
    line-height:1.1;
    font-weight:700;
    text-transform:uppercase;
}

.pl-home-highlight-text,
.pl-home-highlight-text p{
    margin:0 !important;
    color:#082f70 !important;
    font-size:15px;
    line-height:1.3;
}

.pl-home-highlight-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;

    min-height:38px;
    padding:8px 18px;

    border:2px solid #082f70;
    border-radius:5px;

    background:#082f70;
    color:#fff !important;

    font-family:"Ropa Sans",sans-serif;
    font-size:14px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
    text-decoration:none !important;
}

@media (max-width:650px){

    .pl-home-highlight-inner{
        display:block;
        padding:14px 18px 16px;
    }

    .pl-home-highlight-title{
        font-size:20px;
    }

    .pl-home-highlight-text,
    .pl-home-highlight-text p{
        font-size:14px;
    }

    .pl-home-highlight-cta{
        margin-top:11px;
    }
}


/* PL_NATIVE_ARCHIVE_V1 */
.pl-native-archive-wrap{max-width:1640px;margin:0 auto;padding:60px 30px 0}
.pl-native-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pl-native-archive-card{border:1px solid #e2e2e2;background:#fff}
.pl-native-archive-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#eee}
.pl-native-archive-image img{display:block;width:100%;height:100%;object-fit:cover}
.pl-native-archive-copy{padding:22px}
.pl-native-archive-copy h2{margin:0 0 14px;font-size:24px;line-height:1.25}
.pl-native-archive-copy h2 a{color:#123b66;text-decoration:none}
.pl-native-archive-excerpt{line-height:1.6}
.pl-native-archive-more{display:inline-block;margin-top:12px;color:#123b66;font-weight:700}
.pl-native-archive-pagination{margin-top:45px}
.pl-native-archive-pagination .nav-links{display:flex;flex-wrap:wrap;gap:10px}
.pl-native-archive-pagination .page-numbers{padding:7px 11px;border:1px solid #123b66;text-decoration:none}
.pl-native-archive-pagination .current{background:#123b66;color:#fff}

@media(max-width:1050px){
 .pl-native-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 .pl-native-archive-wrap{padding:35px 18px 0}
 .pl-native-archive-grid{grid-template-columns:1fr}
}
