body {
    z-index: 1; /* Assicura che il contenuto rimanga interattivo */
}

p{
    color:#74787C;
}
a{
    text-decoration: underline;
}
.imgRadius50 img, img.imgRadius50 {border-radius: 100%; width: 80%;}

.video-embed-ext {
    position: relative; width: 100%;
}
.video-embed-int {
    height: 0; padding-bottom: 56%; position: relative; width: 100%;
}
.video-embed-int iframe { 
    height: 100% !important; left: 0; position: absolute; top: 0; width: 100%  !important;
}


header.header-1 .branding{
    background: none;
}
.topbar-information .infor-list{
    display: none;
}

.gsc-icon-box.left.v1 .button-action a{
    background: rgba(125, 178, 174, 0.1);
}
header.header-1, header.header-2{
    background: rgba(255, 255, 255, 0.8);
}
header.header-1 .main-menu, header.header-2 .main-menu {
    width: auto;
    padding: 0 15px;
}
header.header-1 .branding, header.header-2 .branding{
    width: auto;
    padding: 0 15px;
}
.noLinkMenu a:first-child {pointer-events: none;}
.noLinkMenu a span.nav-plus, .noLinkMenu ul li a {pointer-events:initial !important;}

header.header-1 .branding img, header.header-2 .branding img{
    max-width: 100%;
}

.capslock {
    text-transform: uppercase;
}

.highlights-home .gsc-icon-box.left.v1{
    padding:0 20px 0 0;
    display: flex;
    align-items: center;
}
header a,
.highlights-home a{
    text-decoration: none;
}
.menu-bar{
    top:45px;
}
.gavias_sliderlayer .tp-bullets{
    top:inherit !important;
    bottom:50px;
}
.gsc-images-parallax.style-v1.left .image-1{
    max-width: 100%;
}
.box-info-farnetti .gsc-heading.align-left.style-1{
    padding-bottom: 20px;
}
.bg-funziona{
    background: rgba(238, 227, 183, 0.2);
}
.gsc-tabs-content.box-info-funziona{
    padding:0;
}
.gsc-tabs-content.box-info-funziona .nav-tabs{
    display: none;
}
.gsc-tabs-content.box-info-funziona  .tab-content {
    padding: 0;
    background: rgba(238, 227, 183, 0.2); 
}
.gsc-tabs-content.box-info-funziona .tab-content .tab-content-inner h2{
    font-size: 52px;
    letter-spacing: -1.56px;
    line-height: 1.15;
    font-weight: 800;
    position: relative;
    margin-bottom: -10px;
    color:#1a1a1a;
}
.gsc-tabs-content.box-info-funziona .tab-content-inner::before{
    display: none;
}
.gsc-tabs-content.box-info-funziona .tab-content-inner .images{
    float: right;
    order: 2;
}
.gsc-tabs-content.box-info-funziona .tab-content-inner .content-inner{
    order: 1;
    padding-left: 0;
    padding-right: 30px;
}
.container-magazine .gsc-heading.align-left.style-1{
    max-width: 100% !important;
    padding-bottom: 30px;
}


header .navigation .gva_menu > li:nth-last-child(3) > a,
header .navigation .gva_menu > li:nth-last-child(4) > a
{
    background: rgba(125, 178, 174, 0.15);
    border-radius: 7px;
    padding:20px;
    margin: 0 10px 0 10px;
}
.book-position{
    position: absolute;
    right: 20px;
    top: -200px;
}

/* Sfondo a tutta larghezza della sezione che ospita il banner */
.container-prenota{
    display:block; position:relative; width:100%;
    background:url("/sites/default/files/2026-08/back.png") center/cover no-repeat !important;
    overflow:hidden; text-decoration:none; container-type:inline-size;
}

/* Il banner vero e proprio: senza questa regola l'<a> è inline e alto zero,
   i figli in position:absolute escono dal flusso e la dottoressa (height:98%)
   si riduce a nulla. NON rinominare questo selettore. */
.sanb{
    display:block; position:relative; width:100%;
    aspect-ratio:1920 / 771;
    overflow:hidden; text-decoration:none; container-type:inline-size;
}
.sanb__doctor{ position:absolute; left:0; bottom:0; height:98%; width:auto; pointer-events:none; }
.sanb__content{
    position:absolute; top:0; right:5%; left:48%; height:100%;
    display:flex; flex-direction:column; justify-content:center; gap:2.2cqw; color:#f7f5ee;
}
.sanb__logo{ width:13cqw; height:auto; }
.sanb__text{ margin:0; font-size:2.5cqw; line-height:1.32; font-weight:500; }
.sanb__text strong{ font-weight:700; color:#fff; }
.sanb__cta{ margin:0; font-size:2.7cqw; line-height:1.28; font-weight:700; color:#fff; }
.sanb__btn{
    align-self:flex-start; background:#111; color:#fff; font-size:2cqw; font-weight:600;
    padding:.62em 1.7em; border-radius:999px; line-height:1;
}
.sanb:hover .sanb__btn{ background:#000; }
/* MOBILE: impilamento verticale, tutto centrato */
@media (max-width:767px){
    .sanb{ aspect-ratio:auto; display:flex; flex-direction:column; align-items:center; padding:26px 20px 30px; text-align:center; }
    .sanb__doctor{ position:static; height:auto; width:58%; max-width:220px; margin:0 auto 6px; }
    .sanb__content{ position:static; left:auto; right:auto; top:auto; height:auto; width:100%; align-items:center; gap:12px; }
    .sanb__logo{ width:130px; }
    .sanb__text{ font-size:15px; }
    .sanb__cta{ font-size:17px; }
    .sanb__btn{ align-self:center; font-size:15px; padding:.7em 1.8em; }
}

.testimonial-node-1{
    border: 1px solid #efefef;
    -webkit-box-shadow: 0px 6px 20px 3px rgba(239, 239, 239, 0.8);
    box-shadow: 0px 6px 20px 3px rgba(239, 239, 239, 0.8);
    height: 240px;
}
.testimonial-node-1 .avatar {
    width: 170px;
    height: 240px;
}
.testimonial-node-1 .content-body .content-inner .quote{
    line-height: 26px;
}
.container-prenota .popup-video.link-video{
    display: none;
}
.container-prenota.el-3621375 > .bb-inner{
    padding: 100px 0 0;
}
.gsc-image-content.skin-v3 .image:before{
    background: rgba(0, 0, 12, 0.5);
}
.gsc-image-content.skin-v3 .title a {
    text-decoration: none;
}
#footer{
    background-image: none;
    background-color:#3A3E53;
}
#footer a, #footer a:hover, #footer a:focus, #footer a:active {
    text-decoration: none;
    color:#fff;
}
#footer ul.menu a {
    padding-left: 18px;
}
#footer .contextual-links a{
    color:#000;
}
.contact-info ul {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
}

.contact-info ul li{
    float: left;
    display: inline-block;
    margin: 0 5px 15px 0;
}
footer .copyright p{
    color:#fff;
    font-size: 15px;
    margin:0;
}
footer .copyright a{
    color:#fff !important;
    font-size: 15px;
    text-decoration: underline !important;
}
.breadcrumbs{
    clear: both;
    float: left;
    width: 100%;
    padding-top: 173px;
}
.post-block .post-title a{
    text-decoration: none;
}
.breadcrumb-content-inner .gva-parallax-background{
    height: 280px;
}
.breadcrumb-content-inner .gva-block-breadcrumb .page-title{
    /* display: none; */
}
.sticky-wrapper{
    clear: both;
    float: left;
    width: 100%;
    height: 120px !important;
    padding: 10px 0px;
}
.highlights-home .highlight-icon{
    line-height: 0;
}
.post-block .post-meta span + span{
    display: none;
}
ul li, ol li{
    color:#74787C;
}

div .text-gray{
    color:#74787C !important;
}

.pager ul.pager__items > li.pager__item--last{
    display: none !important;
}

.pager ul.pager__items > .pager__item--first{
    display: none !important;
}

.testimonial-node-1 .avatar img
{
   position: relative !important;
   right: 30px !important;
   max-width: 145%  !important;
}

.testimonial-content .job {
    line-height: 1.5;
    margin-top: 10px;
    font-size: 15px;
}

ul.contact-info-list img {
    max-width: 70% !important;
}

ul.contact-info-list li:first-child img {
    max-width: 58% !important;
}

.pubblication_view .post-meta {
    display: none;
}


.pubblication_view .post-block .post-desc {
    min-height: 130px !important;
}

.post-style-grid .post-block .launch_article{
    height: 350px !important;
}

.row_block_view .bb-inner.default {
    padding-top: 40px !important;
}

.gsc-image-content.skin-v1 .title_testimonial {
    font-size: 22px;
    letter-spacing: -0.66px;
    margin: 0 0 0px;
    font-weight: 700;
}

.gsc-image-content.skin-v1 .job_testimonial {
    margin-bottom: 5px;
}
	
.bg-longevita{
    clear: both;
    float: left;
    width: 100%;
    background-image: url("../images/bg-green.png");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    padding: 120px 0;
}
.bg-longevita h2{
    color:#000;
    text-align: center;
    font-size: 48px;
    font-weight: 700;
}
.single-grey-block{
    clear: both;
    float: left;
    width: 100%;
    position: relative;
    padding: 20px;
    margin-bottom: 30px;
    min-height: 500px;
    background-color: #F4F4F5;
}
.single-grey-block .imgs{
    position: relative;
    width: 50px;
    margin-bottom: 10px;
}
 .single-grey-block .imgs:before {
    content: "";
    position: absolute;
    top: 0;
    left: -20px;
    width: 3px;
    height: 100%;
    background: #7DB2AE;
}
.single-grey-block h3{
    color: #7DB2AE;
    font-size: 32px;
    margin: 0 0 30px 0;
}
.gb-short {
    min-height: 350px;
}

.cont-grey-block{
    margin-top: -30px;
    clear: both;
    float: left;
    width: 100%;
    margin-bottom:50px;
}
.cont-tests{
    clear: both;
    float: left;
    width: 100%;
    position: relative;
    background: rgba(238, 227, 183, 0.2);
}
.cont-tests ul.nav-tabs{
    margin-top:-50px;
}

.cont-tests .tab-content{
    clear: both;
    float: left;
    width: 100%;
    position: relative;
    padding: 40px 0;
}
.cont-tests ul.nav-tabs li{
    padding:0 2px;
}
.cont-tests .nav-tabs .nav-link {
    color: #495057;
    background: rgba(125, 178, 174, 0.15);
    border: 0;
    border-bottom: 1px solid #7DB2AE;
    color:#7DB2AE;
    height: 50px;
    text-align: center;
    font-weight: 700;
    line-height: 32px;
    text-decoration: none;
    text-transform: uppercase;
}
.cont-tests .nav-tabs .nav-link.active, .cont-tests .nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background: rgba(125, 178, 174, 1);
    border: 0;
    color:#fff;
    /* -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); 
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); */
}

.cont-tests .nav-tabs .nav-link.active::before, .cont-tests .nav-tabs .nav-item.show .nav-link::before{
    position: absolute;
    content: "";
    width: calc(100% - 4px);
    top: -5px;
    height: 10px;
    left: 2px;
    background-color: #7DB2AE;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.img-tabs{
    width:100%;
    position: absolute;
    left: 0;
}
.hd-fullpage .breadcrumb-content-inner{
    margin-bottom: 0;
}
.hd-fullpage .block.block-system-breadcrumb-block{
    margin-bottom: 0;
}
.breadcrumb-content-inner .breadcrumb-style:before{
    background: rgba(0, 0, 12, 0.5);
}

.contact-link-external {
    display: block;
    width: 100%;
    height: 100%;



    .contact-link {
        display: block;
        background: url("https://www.sarafarnetti.it/sites/default/files/2026-08/banner-sanage-2.jpg") no-repeat bottom center;
        color: #fff;
        padding: 40px;
        border-radius: 7px;
        -webkit-border-radius: 7px;
        -moz-border-radius: 7px;
        -ms-border-radius: 7px;
        -o-border-radius: 7px;
        overflow: hidden;
        min-height: 475px;
        width: 330px;
        background-size: cover;
    }
}


.webform-managed-file-preview-wrapper, .webform-managed-file-preview-wrapper.form-item {
    border: 0px !important;
    float: left;
}

.webform-submission-form .form-item input[type="radio"], input[type="checkbox"] {
    height: 25px !important;
    margin-top: 10px !important;
    width: 5% !important;
}

.webform-submission-form .form-item input
{
    padding-left: 20px !important;
}

.webform-submission-form .form-item input[type="date"]
{
    padding-right: 10px !important;
}

.webform-submission-form input[type="submit"] {
    margin-bottom: 20px;
}
.webform-submission-form .form-item {
    margin-bottom: 10px !important;
}

.form_upload_list input[type="checkbox"] {
    width: 40% !important;
}

.header_dati_personali {
    margin-bottom: -2em;
}

.form_upload_list input[type="submit"] {
    clear: both;
    width: 180px;
    float: left;
}

.form_upload_list .js-hide {
    display: none !important;
}

.anamnesi_form_section .bb-inner.default {
    padding-top: 0px;
}

.consulto_section_form_contatti .bb-inner {
    padding-left: 30px;
    padding-top: 20px;
}

.sideLeft { 
    position: absolute;
    left: 0;
    top: 0;
    width: 48%;
}
.sideRight { 
    position: absolute;
    right: 0;
    top: 0;
    width: 48%;
    left: inherit;
}

.row-categories .field-content {
    padding: 2px 10px;
    width: max-content;
    -webkit-border-radius: 5px;
    background-color: #f4f4f5;
    overflow: hidden;
    font-size: 15px;
    display: inline-block;
    transition: all 0.35s;
    font-weight: 400;
    color: #1a1a1a;
    font-size: 15px;
}

.row-categories .field-content a {
    color: #1a1a1a;
}

.row-categories .field-content:hover {
    background: var(--conbiz-theme-color);
} 

.row-categories .field-content a:hover {
    color: #fff;
}

.row-categories .field-content a:active {
    background: var(--conbiz-theme-color);
    color: #fff;
}

.row-categories.selected span a {
    color: #fff;
}

.row-categories.selected span {
    background: var(--conbiz-theme-color);
}

.menu_categories .gva_menu li {
    padding: 2px 10px;
    width: max-content;
    -webkit-border-radius: 5px;
    background-color: #f4f4f5;
    overflow: hidden;
    font-size: 15px;
    display: inline-block;
    transition: all 0.35s;
    font-weight: 400;
    color: #1a1a1a;
    font-size: 15px;
    margin-right: 30px;
}

.menu_categories .gva_menu li a {
    padding: 0px;
    font-size: 15px;
    font-weight: normal;
    color: #1a1a1a !important;
}

.menu_categories .gva_menu li:hover {
    background: var(--conbiz-theme-color);
} 

.menu_categories .gva_menu li a:hover {
    color: #fff !important;
}

.menu_categories {
    margin-bottom: 40px !important;
}



.menu_categories .gva_menu li.menu-item--active-trail {
    background: var(--conbiz-theme-color);
} 

.menu_categories .gva_menu li.menu-item--active-trail a {
    color: #fff !important;
}

.type--video .video-embed-field-responsive-video{
    max-width: 800px !important;
}



.views-view-grid .row-categories {
    width: auto !important;
    float: left;
    margin-right: 10px;
}

.block .block_categories_view {
    margin-bottom: 40px !important;
    margin-left: -15px;
}

.item.tags-content-sb {
    float: left;
    width: auto;
    text-align: center;
    margin: 0 5px 10px 5px;
    border-radius: 5px;
    background-color: #eee;
    font-size: 15px;
}

.item.tags-content-sb span.field-content {
    padding: 5px 8px;
}

.item.tags-content-sb a {
    color: #1a1a1a;
}

.item.tags-content-sb:hover {
    background: var(--conbiz-theme-color);
} 

.item.tags-content-sb a:hover {
    color: #fff;
}

.menu_cat_right .gva_menu li.menu-item a:hover{
    background: var(--conbiz-theme-color);
    color: #fff;
    padding-left: 10px !important;
}

.menu_cat_right .gva_menu li.menu-item a{
    padding: 2px 10px;
    -webkit-border-radius: 5px;
    background-color: #f4f4f5;
    overflow: hidden;
    font-size: 15px;
    display: inline-block;
    font-weight: 400;
    color: #1a1a1a;
}

.menu_cat_right ul.gva_menu li{
    margin-bottom: 5px !important;
    display: inline-block;
    float: left;
    width: auto;
    margin-right: 10px !important;
}

.menu_cat_right .gva_menu li.menu-item {
    margin: 0 0 30px;
    overflow: hidden;
    list-style-type: none;
}   

.nlmodal .modal-dialog {
    position: fixed;
    right: 20px;
    bottom: 20px;
    margin: 0;
}

.modal {
    position: relative !important;
}

.modal-dialog .block-content h3 {
    font-size: 18px;
}

.modal-dialog .webform-submission-form .form-item input {
    line-height: 10px;
    height: 50px;
}


.modal-dialog .webform-flexbox {
    margin: 0;
}

.modal-dialog p {
    margin: 0;
    font-size: 12px !important;
}

.modal-dialog .webform-submission-form .form-item label {
    font-size: 14px !important;
    margin-top: 4px !important;
    margin-bottom: 0px !important;
}

.webform-submission-form .form-item {
    margin-bottom: 0px !important;
}

.modal-dialog .webform-submission-form .form-item input[type="checkbox"] {
    height: 18px !important;
    margin-top: 5px !important;
    width: 5% !important;
}

.modal-dialog .webform-submission-form input[type="submit"] {
    margin-bottom: 0px !important;
    padding: 10px 25px !important;
}

.modal-header {
    background-color: rgba(125, 178, 174, 0.15);;
    padding: 5px;
}

.modal-footer {
padding: 0 !important;
border-top: none !important;
}

.page_form_nl .nl_form_txt_header{
    display: none;
}

.captcha-box {
    padding-top: 30px;
}

.captcha-box legend {
    display: none;
}

.captcha__description {
    font-size: 10px;
}

@media  (max-width:992px) {
    .sideLeft, .sideRight { 
        width: 100%;
        position: relative;
        right: inherit;
            top: inherit;
        left: inherit; 
        clear: both;
        float: left;
        margin: 30px 0;
    }
}

@media (max-width:1515px) {
    .navigation .gva_menu > li > a{
    padding: 14px 8px;
}
header .navigation .gva_menu > li:last-child > a, header .navigation .gva_menu > li:nth-last-child(2) > a{
    padding: 10px;
}
header.header-1, header.header-2{
    background: (255, 255, 255, 1);
}
.sticky-wrapper{
    height: auto !important;
}
.breadcrumbs {
    padding-top: 131px;
}
}

@media (max-width:1294px) {
    .breadcrumbs {
        padding-top: 185px;
    }
}

@media (max-width:1199px) {
    .gavias_sliderlayer .tp-caption.title-header{
        font-size: 56px !important;
        line-height: 66px !important;
    }



}	

@media (max-width:1100px) {
.gavias_sliderlayer .tp-caption.title-header {
    font-size: 45px !important;
    line-height: 55px !important;
}
}


@media (max-width:1023px) {

    .breadcrumbs {
        padding-top: 0;
    }

    .gavias_sliderlayer .tp-caption.title-header {
        font-size: 38px !important;
        line-height: 48px !important;
    }
    .gavias_sliderlayer .tp-caption.types{
        color:#7db2ae !important;
    }
    header.header-2 .main-menu{
        display: none;
    }
    header.header-1 .header-inner, header.header-2 .header-inner{
        flex-wrap: inherit;
    }
    .gsc-tabs-content.box-info-funziona .tab-content .tab-content-inner h2{
        font-size: 38px;
        line-height: 50px;
    }
    header.header-1 .branding, header.header-2 .branding,
    header.header-1 .main-menu, header.header-2 .main-menu{
        width: 50%;
    }
    .book-position img{
        width: 250px !important;
    }
    .book-position {
        top: -100px;
    }
}



@media (max-width:991px) {

    .single-grey-block{
		min-height: auto;
	}
	.cont-grey-block{
		margin-top: 0;
	}
	.bg-longevita{
		padding: 80px 0;
	}
	.bg-longevita h2{
		font-size: 32px;
	}
    .gavias_sliderlayer .tp-caption.btn-header {
            top:inherit !important;
            bottom:0 !important;
    }
	.gavias_sliderlayer .tp-caption.title-header {
        font-size: 32px !important;
        line-height: 42px !important;
    }
    .gsc-tabs-content.box-info-funziona .tab-content-inner .images{
        float: left;
        width: 100%;
        clear: both;
        order: 1;
    }
    .gsc-tabs-content.box-info-funziona .tab-content-inner .content-inner{
        float: left;
        width: 100%;
        clear: both;
        order: 2;
    }
    
}
		
@media (max-width:767px) {

    .gsc-icon-box.left.v1{
        justify-content: inherit;
    }

    .container-prenota.el-3621375 > .bb-inner{
        padding:80px 0 0;
    }

    .gavias_sliderlayer .tp-caption.title-header {
        width: 100%;
        padding: 20px !important;
        background: rgba(255, 255, 255, 0.5);
    }
    .gavias_sliderlayer .tp-caption br:nth-child(odd){
        display: none;
    }
    .gsc-tabs-content.box-info-funziona .tab-content .tab-content-inner h2{
        font-size: 30px;
        line-height: 40px;
    }
    .menu-bar{
        top:32px;
    }
    .book-position img {
        width: 200px !important;
    }
    .book-position  {
        
    }
}	
@media (max-width:680px) {
    .testimonial-node-1{
        height: auto;
    }
	.testimonial-node-1 .avatar {
        height: auto;
    }

}	
@media (max-width:575px) {
    .gavias_sliderlayer .tp-caption.title-header {        
        padding: 10px !important;
    }
	.book-position {
        top: -51px;
        right: 20px;
    }

}	
@media (max-width:480px) {
    .bg-book{
        height: 600px;
    }
    .book-position {
        top: inherit;
        right: inherit;
        clear: both;
        float: left;
        width:200px;
        margin-top: 20px;
    }

}	
@media (max-width:420px) {
    .gavias_sliderlayer .tp-caption.title-header {
        font-size: 24px !important;
        line-height: 32px !important;
    }
    .gavias_sliderlayer .tp-caption.btn-header {
        top:inherit !important;
        bottom:0px !important;
    }
    .gavias_sliderlayer .tp-caption.btn-header a{
        padding: 5px 12px !important;
    }

}	
@media (max-width:375px) {

	

}	
@media (max-width:360px) {

	

}	
@media (max-width:320px) {

	

}	
@media (max-width:300px) {

	

}

@media (min-width: 1200px) {
    #footer .column-center {
        padding: 0 40px !important;
    }
}


/* ==========================================================================
   HERO SANAGE — slide dello Slider 1 in home
   Lo slider Gavias NON ha un campo "immagine mobile": lo sfondo dello slide
   viene sostituito qui, con media query, in base al breakpoint.
   I selettori agganciano il nome del file, non un id di slide: se cambi
   l'immagine desktop cambia solo la stringa "sanage-hero-desktop".
   Percorsi: file versionati nel tema. Se invece le carichi via IMCE in
   /sites/default/files/2026-08/, sostituisci le due url() qui sotto.
   ========================================================================== */

/* Tablet (778–1024px) */
@media (max-width: 1024px) {
    .rev_slider .tp-bgimg[style*="sanage-hero-desktop"] {
        background-image: url("/themes/custom/conbiz_sub/images/sanage/sanage-hero-tablet.jpg") !important;
    }
}

/* Mobile (< 768px) */
@media (max-width: 767px) {
    .rev_slider .tp-bgimg[style*="sanage-hero-desktop"] {
        background-image: url("/themes/custom/conbiz_sub/images/sanage/sanage-hero-mobile.jpg") !important;
    }
}

/* Layer di testo del banner: a capo morbidi e nessun taglio a fine riga.
   ATTENZIONE: qui serve `width`, NON `max-width`. I layer di Revolution sono
   una catena di elementi in position:absolute senza larghezza definita: con
   `white-space:normal` e sola max-width il box collassa alla parola più lunga
   (blocchi di testo strettissimi). Con width esplicita il testo va a capo
   dove previsto. In alternativa si può valorizzare il campo *Width* del layer. */
.tp-caption.sanage-hero-text,
.tp-caption.sanage-hero-cta {
    white-space: normal !important;
    width: 470px !important;
    max-width: none !important;
}
@media (max-width: 1024px) {
    .tp-caption.sanage-hero-text,
    .tp-caption.sanage-hero-cta { width: 378px !important; }
}
@media (max-width: 767px) {
    .tp-caption.sanage-hero-text,
    .tp-caption.sanage-hero-cta { width: 300px !important; }
}
/* i wrapper generati da Revolution non devono ritagliare il layer */
.rev_slider .tp-mask-wrap:has(> .sanage-hero-text),
.rev_slider .tp-mask-wrap:has(> .sanage-hero-cta),
.rev_slider .tp-mask-wrap:has(> .sanage-hero-logo) { overflow: visible !important; }

/* --- Isolamento dalle regole scritte per la VECCHIA slide ---------------
   Il tema applica stili a TUTTI i .tp-caption dello slider (padding forzato,
   <br> nascosti su mobile, pulsante verde .btn-slide/.btn-header). Lo slide
   Sanage è il n. 25: i suoi layer hanno id slide-25-layer-N, quindi qui si
   neutralizzano quelle regole SOLO su questo slide, senza toccare l'altro.
   Se cambi/duplichi lo slide aggiorna il numero, oppure metti nei layer le
   Custom class sanage-hero-* al posto di btn-header/btn-slide. */
.gavias_sliderlayer .tp-caption[id^="slide-25-layer-"] {
    padding: 0 !important;
}
.gavias_sliderlayer .tp-caption[id^="slide-25-layer-"] br {
    display: block !important;
}
@media (max-width: 991px) {
    .gavias_sliderlayer .tp-caption[id^="slide-25-layer-"] {
        top: auto !important;
        bottom: auto !important;
    }
}

/* Pulsante "Iscriviti" del banner (lo stile sta anche inline nel layer,
   così funziona pure se questo CSS non viene deployato) */
.tp-caption.sanage-hero-btn a,
.gavias_sliderlayer .tp-caption[id="slide-25-layer-4"] a {
    display: inline-block !important;
    background: #111 !important;
    color: #fff !important;
    font-weight: 700;
    font-size: 17px !important;
    line-height: 1 !important;
    padding: 16px 40px !important;
    border-radius: 999px !important;
    text-decoration: none;
}
.tp-caption.sanage-hero-btn a:hover,
.gavias_sliderlayer .tp-caption[id="slide-25-layer-4"] a:hover { background: #000 !important; color: #fff !important; }
/* il tema aggiunge una freccia ::after dentro .btn-slide a span: qui non serve */
.gavias_sliderlayer .tp-caption[id="slide-25-layer-4"] a span:after { content: none !important; }
@media (max-width: 767px) {
    .tp-caption.sanage-hero-btn a,
    .gavias_sliderlayer .tp-caption[id="slide-25-layer-4"] a { padding: 11px 26px !important; }
}
