/*
Theme Name: 	Executive
Description: 	Responsive WordPress Theme based on Boostrap and Font Awesome.
Version:     	2.0
Author:     	Alberto Cattani
Author URI:     https://albertocattani.com
Site:           https://albertocattani.com
Text Domain: 	executive
Domain Path: 	/languages
Tags:        	grid-layout, blog, custom-menu, featured-images, right-sidebar
License:    	GNU General Public License v3.0
License URI:	http://www.gnu.org/licenses/gpl-3.0.html

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* ------------------------------------------------------------------------- *
/* ! Fonts */
/* ------------------------------------------------------------------------- */



@font-face {
    font-family: 'Merriweather';
    src: url('fonts/Merriweather-Bold.woff2') format('woff2'),
        url('fonts/Merriweather-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Merriweather';
    src: url('fonts/Merriweather-Black.woff2') format('woff2'),
        url('fonts/Merriweather-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('fonts/Inter-Medium.woff2') format('woff2'),
        url('fonts/Inter-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('fonts/Inter-Regular.woff2') format('woff2'),
        url('fonts/Inter-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('fonts/Inter-Light.woff2') format('woff2'),
        url('fonts/Inter-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('fonts/Inter-Bold.woff2') format('woff2'),
        url('fonts/Inter-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


/* ------------------------------------------------------------------------- *
/* ! Var */
/* ------------------------------------------------------------------------- */

:root {
    --blue: rgb(37, 54, 124);
    --dblue:#071023;
    --grey: #F7F3E7;
    --white:#ffffff;
    --black: #000000;
    --red: rgb(211, 22, 22);
    --dblue:#1b2f43;
    --cyan: #47BEDB;
    --green: #13a74e;
    --lgreen:#44C554;
    --yellow:#F4AD00;
    --wp--style--global--content-size:max-width:1350px;
}



/* ------------------------------------------------------------------------- *
/* ! Base */
/* ------------------------------------------------------------------------- */


/* ! Body */
body {
    font-family: 'Inter';
    font-weight: normal;
    font-style: normal;
    font-size: 15px;
    background: #fff;
    margin: 0;
    padding: 0;
    line-height: 1.75;
    overflow-x: hidden;

}
img{max-width: 100%;height: auto;}

strong {
    font-weight: 700;
}


/* h1,h2,h3,h4,h5,h6{font-family: "Recife Display";font-weight: bold;} */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Merriweather';
    font-weight: 900;
    font-style: normal;
}

a {
    color: var(--blue);
    text-decoration: none;
    font-weight: 700;
}
/* ------------------------------------------------------------------------- *
/* ! Utility */
/* ------------------------------------------------------------------------- */

.text-center {
    text-align: center;
}
.my-2{margin-top: 2rem;margin-bottom: 2rem;}
.my-3{margin-top: 2rem;margin-bottom: 2rem;}
.py-2{padding-top: 2rem;padding-bottom: 2rem;}

/* ------------------------------------------------------------------------- *
/* ! Animation */
/* ------------------------------------------------------------------------- */

.watch {
    opacity: 0;
    transform: translateY(10vh);
    transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.watch.in-page {
    opacity: 1;
    transform: translateY(0vh);
}



/* ! Buttons */
a.wp-block-button__link,
a.button,
.slider a.button,
.button
{
  position: relative;
  display: block;
  border-radius:0;
  border: 0;
  transition: 0.5s;
  text-align: center;
  padding: 15px;
  color: #fff;
  width: auto;
  text-transform: uppercase;
  font-size: 1.2rem;
  margin: 20px 0;
  background: transparent;
  z-index: 1;
  border: 2px solid #fff;
  transition: 0.6s;
}

a.wp-block-button__link em{display: block;font-size: 1rem;}
a.wp-block-button__link{background: var(--blue);}
a.wp-block-button__link:hover{background: var(--red);}

.slider a.button:hover,
.button:hover{
  background: var(--green);
  border: 2px solid var(--green);
}

.wpcf7 .wpcf7-submit:disabled{
  opacity: 0.5;
}
.page-template-page-contatti input.button {
    background: var(--blue);
    padding: 15px;
}

/* ------------------------------------------------------------------------- *
/* ! breadcrumbs */
/* ------------------------------------------------------------------------- */
.breadcrumbs{margin-top: 25px;margin-bottom: 25px;}
.breadcrumbs span a { padding: 5px;background: var(--blue);color:#fff;}


/* ------------------------------------------------------------------------- *
/* ! Form standard formattazione */
/* ------------------------------------------------------------------------- */
.form-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

textarea {
    resize: vertical;
}

textarea.form-control {
    height: auto;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
}

/* ! honeypot */
.hp-campo {
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}
/* ------------------------------------------------------------------------- *
/* ! Header*/
/* ------------------------------------------------------------------------- */
header{width:100%;position:  relative;background: #fff;z-index: 999;transition: 0.6s;}
header .header__container{display: flex;flex-direction: row;align-items: center;justify-content: space-between;padding:15px;transition: 0.6s;}

/* span animation */
header span.header__span{width: 0;height: 0;display: block; transition: all 1s cubic-bezier(.215, .61, .355, 1);}
body.is-scrolled header span.header__span{background: linear-gradient(to right,var(--red) 0,var(--blue));width: 100%;height: 2px;}

/* is-scrolled header */

body.is-scrolled header{position: fixed; top: 0; left: 0;background: rgba(255, 255, 255, 0.85);}
body.is-scrolled header .header__container{padding-bottom:0; padding-top: 5px;}
body.admin-bar.is-scrolled header{top: 32px;}


/* ------------------------------------------------------------------------- *
/* ! Header logo*/
/* ------------------------------------------------------------------------- */
header .header__container .header__logo img{width: 300px;height: auto;padding: 10px;transition: 0.6s;}

/* is-scrolled logo */
body.is-scrolled header .header__container .header__logo img{width: 200px;height: auto;padding: 5px;}


/* ------------------------------------------------------------------------- *
/* ! Header Nav*/
/* ------------------------------------------------------------------------- */
header .header__container .header__nav ul{display: flex;list-style-type: none;flex-direction: row;}
header .header__container .header__nav ul li{margin: 10px;position: relative;cursor: pointer;}
header .header__container .header__nav ul li a{text-transform: uppercase;font-size: 1rem;color: var(--blue);display: block;padding: 10px;}
header .header__container .header__nav ul li.current-menu-item a{text-transform: uppercase;font-size: 1rem;color: var(--red);display: block;padding: 10px;}
header .header__container .header__nav ul li:last-child a{background: var(--blue);color: var(--white);border-radius: 5px;}


header .header__container .header__nav ul li.menu-item-has-children a{display: block;}

/* Freccia sottomenu */
header .header__container .header__nav ul li.menu-item-has-children a::after{  
    position: absolute;  
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color: var(--blue);
    padding-left: 3px;
    text-align: left;
    display: inline-block;
    line-height: 30px;
}
/* Freccia sottomenu active*/
header .header__container .header__nav ul li.menu-item-has-children.active a::after{ 
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    line-height: 35px;
    color: var(--red);
}
header .header__container .header__nav ul li.menu-item-has-children ul.sub-menu{display:none ;margin: 0;padding: 0;}
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu{position: absolute;background: #fff;left: 0;display: none;z-index: 9999;border-bottom: 4px solid var(--red); display: flex;flex-direction: column;}
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu li {margin:0; }
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu li a {background: linear-gradient(to right,#fff, #f7f7f7);color: var(--blue); margin:0; transition: 0.6s;border-radius: 0;border-bottom:1px solid #f8f8f8;padding: 7px;width: 200px;}
header .header__container .header__nav ul li.menu-item-has-children.active:nth-child(3) ul.sub-menu li a,
header .header__container .header__nav ul li.menu-item-has-children.active:nth-child(5) ul.sub-menu li a{width: 300px;}
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu li a:hover {background: var(--red);color: #fff;}
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu li:last-child a {border-bottom: 0}
header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu li a::after{display: none;}

/*-- Header landing */
body header .header__nav ul li.temp,
body footer li.temp{display: none;}
body.home header .header__nav ul li.temp,
body.home footer li.temp{display: block;}

/* ------------------------------------------------------------------------- *
/* ! Language Nav*/
/* ------------------------------------------------------------------------- */
header .header__container .language__nav{font-size: 1rem;font-weight: 400;position: fixed;top: 0;right: 30px;}
header .header__container .language__nav ul{font-size: 1rem;font-weight: 400;list-style: none;margin: 0;padding: 0;display: flex;flex-direction: row;height: 30px;position: relative;background: #fff;overflow-y: hidden;}
header .header__container .language__nav ul li{border: 1px solid var(--grey);border-top: none;border-radius: 0 0 5px 5px;margin-left: 10px;padding-right: 5px;}

header .header__container .language__nav ul li a{padding:5px;padding-right: 30px;color:var(--black);}

header .header__container .language__nav ul li.it a{background: url(img/flag/it.png);background-position: right;background-repeat: no-repeat;background-size: 20px;}
header .header__container .language__nav ul li.en a{background: url(img/flag/en.png);background-position: right;background-repeat: no-repeat;background-size: 20px;}
header .header__container .language__nav ul li a::before{
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color: var(--blue);
    padding-right: 10px;
    text-align: left;
}
header .header__container .language__nav ul li.active a::before{
    color:var(--green);
}

.admin-bar header .header__container .language__nav{position: fixed;top: 32px;}
.is-scrolled header .header__container .language__nav{top: -50px;}

@media (max-width: 1380px) {
    header .header__container .header__nav ul{padding-inline-start:0;}
}

@media (max-width: 1350px) {
    body header .header__nav {
        position: absolute;
        left: 0;
        top: 0px;
        background-color: #1d1d1f;
        width: 80%;
        height: 0vh;
        overflow: hidden;
        transition: all 1s cubic-bezier(.215, .61, .355, 1);
        z-index: 999;
        align-items: flex-start;
    }

    body header .header__nav nav ul:nth-child(1) {
        margin-top: 80px;
        display: flex;
        flex-direction: column;
    }
    header .header__container .header__nav{
        position: absolute;
        left: 0;
        top: 0;
        background: linear-gradient(to top, var(--red), var(--blue));
        width: 100%;
        height: 0;
        overflow: hidden;
        transition: all 1s cubic-bezier(.215,.61,.355,1);
        z-index: 999;
        align-items: flex-start;
        text-align: center;
        }

    header .header__container .header__nav ul li{
        max-width: 300px;
        margin: 0 auto;
    }
    header .header__container .header__nav ul li a {
        color: #fff;
        margin: 0;
    }

    header .header__nav nav ul li.menu-item-has-children a span::after {
        color: #fff;
    }

    body.menu-open header .header__nav {
        height: 100vh;
        overflow: visible;
        padding: 3%;
    }

    .header__nav {
        margin: 0;
    }

    header .header__container .header__nav ul li.menu-item-has-children.active ul.sub-menu {
        position: relative;
        border-bottom: none;
        margin: 0;
        top: 0;
        left: 0;
        width: auto;
        margin: 0 auto;
    }

    header .header__nav nav ul li.menu-item-has-children.open__child li {
        width: 100%;
    }

    header .header__nav nav ul li.menu-item-has-children ul.sub-menu li a {
        text-align: center;
        padding: 10px 5px;
        color: #fff;
        background: #333;
        margin: 0;
        border: none;


    }

    header .header__nav nav ul li.menu-item-has-children.open__child li a {
        text-align: center;
        margin: 0;
    }

    header .header__container .header__nav ul li.menu-item-has-children a::after{
        color: #fff;
    }


    /* Tasto richiedi preventivo*/
    header .header__nav nav ul li:last-child a {
        margin: 0 auto;
        width: 300px


    }



}

/* ------------------------------------------------------------------------- *
/* ! Navbar */
/* ------------------------------------------------------------------------- */
.navbar{
    position: relative;
    top: 5px;
    right: 15px;
    width: 50px;
    height: 50px;
    display: none;
    z-index:999;
}

.navbar span {
    transition: all .6s cubic-bezier(.215, .61, .355, 1);
    margin: 0 auto;
    height: 2px;
    width: 35px;
    background: var(--blue);
    position: relative;
    display: block;
    margin-top: 9px;
    z-index: 9999;

}

@media (max-width: 1350px) {
    .navbar{display: block;}

    body.menu-open .navbar span{background: #fff;}

    body.menu-open .navbar span:nth-child(1) { 
        transform: rotate(45deg) translateY(15px);
        
    }

    body.menu-open .navbar span:nth-child(2) {
        background-color: transparent;
        }

    body.menu-open .navbar span:nth-child(3) {
        transform: rotate(-45deg) translateY(-15px);
    }


   

}

/* ------------------------------------------------------------------------- *
/* ! Slider*/
/* ------------------------------------------------------------------------- */
.slider{margin: 0;}
.main-carousel .carousel-cell{width: 100%; height: calc( 100vh - 128px );margin-right: 30px;display: flex;}
.main-carousel .carousel__caption{display: none;}
.main-carousel .is-selected .carousel__caption{display: block;width: 45%;position: absolute;bottom: 60px;margin: 10px auto;background:linear-gradient(to bottom ,rgba(255,255,255,0.9), rgba(255,255,255,0.5)) ;color: var(--black);border-radius: 10px;}

/* bordo del caption e bottone*/
.main-carousel .carousel__caption.border-1{border: 2px solid var(--green);right: 50px;}
.main-carousel .carousel__caption.border-2{border: 2px solid var(--yellow);left: 50px;}
.main-carousel .carousel__caption.border-3{border: 2px solid var(--cyan);left: 50px;}
.main-carousel .carousel__caption.border-4{border: 2px solid var(--blue);right: 50px;}
.main-carousel .carousel__caption a.button{padding: 3px;width: 180px;margin-right: 20px;}
.main-carousel .carousel__caption a.button span{display: block;border: 1px solid #fff;padding: 5px;}
.main-carousel .carousel__caption a.button{border: 2px solid transparent;}
.main-carousel .carousel__caption a.button i{font-size: 0;transition: 0.6s;}
.main-carousel .carousel__caption.border-1 a.button{color: #fff; background: var(--green);}
.main-carousel .carousel__caption.border-2 a.button{color: #fff; background: var(--yellow);}
.main-carousel .carousel__caption.border-3 a.button{color: #fff; background: var(--cyan);}
.main-carousel .carousel__caption.border-4 a.button{color: #fff; background: var(--blue);}
.main-carousel .carousel__caption a.button:hover{background: var(--red);}
.main-carousel .carousel__caption a.button:hover i{font-size: 1.25rem;}



/* ! Servizi executive */
.main-carousel .carousel__caption .servizi-executive ul{list-style: none;padding-inline-start: 10px;}
.main-carousel .carousel__caption .servizi-executive ul li {text-transform: uppercase;font-weight: 500;font-size: 1.15rem;line-height:1.5rem;}
.main-carousel .carousel__caption .servizi-executive ul li img{height: 16px; width: auto;}
.main-carousel .carousel__caption .seo-title-target {text-align: left;font-size: 2rem;font-weight: 700;text-transform: uppercase;margin-bottom: -0.5rem;}
.main-carousel .carousel__caption.border-1{color: var(--green);}
.main-carousel .carousel__caption.border-2{color: var(--yellow);}
.main-carousel .carousel__caption.border-3{color: var(--cyan);}
.main-carousel .carousel__caption.border-4{color: var(--blue);}
.main-carousel .carousel__caption .ask{font-size: 1.1rem; font-weight: 500;max-width: 90%;text-transform: uppercase;color: #333;}
.main-carousel .carousel__caption .content{text-align: left;text-transform: none;font-size: 1.15rem;font-weight: 400;line-height: 2rem;max-width: 80%;color: #333;}
.main-carousel .carousel__caption .checked{margin-top: 15px;margin-bottom: 15px; text-align: center;color: #333;padding-right:5px;font-size: 1rem;}
.main-carousel .carousel__caption .checked i{font-size: 1.25rem;color: var(--green);}
.main-carousel .carousel__caption .icona{margin-top: 10px; text-align: center;}
.main-carousel .carousel__caption .icona .icona-field{padding-bottom: 5px;}
.main-carousel .carousel__caption .icona .icona-field i{font-size:2rem;}
.main-carousel .carousel__caption .icona .icona-field span{display: block;color:#333;font-size: 1rem;}

/* ---- page dots ---- */
.main-carousel .flickity-page-dots .dot {width: 15px;height: 15px;border-radius: 15px;bottom: 10px;background: transparent;}
.main-carousel .flickity-page-dots .dot:nth-child(1){border: 2px solid var(--green);}
.main-carousel .flickity-page-dots .dot:nth-child(2){border: 2px solid var(--yellow);}
.main-carousel .flickity-page-dots .dot:nth-child(3){border: 2px solid var(--cyan);}
.main-carousel .flickity-page-dots .dot:nth-child(4){border: 2px solid var(--blue);}
.main-carousel .flickity-page-dots .dot.is-selected {opacity: 1;}
.main-carousel .flickity-page-dots .dot.is-selected:nth-child(1){background: var(--green);}
.main-carousel .flickity-page-dots .dot.is-selected:nth-child(2){background: var(--yellow);}
.main-carousel .flickity-page-dots .dot.is-selected:nth-child(3){background: var(--cyan);}
.main-carousel .flickity-page-dots .dot.is-selected:nth-child(4){background: var(--blue);}
@media (max-width:768px)  {
    .main-carousel .carousel__caption .content{
        display: none;
    }
    .main-carousel .carousel__caption .checked{
        text-align: left;
        margin:0;
    }
    
}

@media (max-width: 601px) {
  body.admin-bar.is-scrolled header .container__fluid{top: 46px;}
  .main-carousel .carousel__caption.border-1,
  .main-carousel .carousel__caption.border-2,
  .main-carousel .carousel__caption.border-3,
  .main-carousel .carousel__caption.border-4{right: 10%; left: 10%;}
  .main-carousel .carousel__caption.animated.zoomInDown.border-1,
  .main-carousel .carousel__caption.animated.zoomInDown.border-2,
  .main-carousel .carousel__caption.animated.zoomInDown.border-3,
  .main-carousel .carousel__caption.animated.zoomInDown.border-4{width: 80%;}
  .main-carousel .carousel__caption .content p{display: none;}


}




/* ! numbers */
.home .card{border: 2px solid var(--grey);}
.home .numbers{margin:40px auto;}
.home .numbers .card .text strong{display: block;font-size: 3rem;color: var(--blue);font-weight: bold;line-height: 4rem;}
.home .numbers .card {text-align: center;color: #fff;background: #fff;margin-top: 20px;}
.home .numbers .card .text{margin: 0;color:var(--blue);text-transform: uppercase;font-size: 1.5rem;}
.home .numbers .card .text i{color: var(--blue);display: block;font-size: 4rem;margin-top: 10px;}
.home .numbers .card strong{display: block;font-size: 3rem;color: var(--blue);font-weight: bold;line-height: 4rem;}
.home .numbers .card em{font-size: 1.5rem; display: block;background: linear-gradient(to right,var(--blue),var(--dblue));text-transform: none;padding: 5px;color: #fff;font-style: normal;}

/* ! feature */
section.feature .card-text{padding-left: 15px;padding-right: 15px;}
section.feature .card-text h3{font-size: 1.5rem;margin-bottom: 1.5rem;}

/* !  servizi */
section.servizi{background: var(--grey);padding-top: 100px;padding-bottom: 100px;margin-top: 50px;}
section.servizi .card-text{padding-left: 15px;padding-right: 15px;}
section.servizi .card-text h3{font-size: 1.5rem;margin-bottom: 1.5rem;}

/* ! Sedi */
section.sedi{padding: 25px 0;color:#fff;}
section.sedi .caption{padding: 15px;position: relative;height: 400px;}
section.sedi .cover{min-height: 400px;}

section.sedi .cover a{color:#fff;height: auto;margin: 0;display: block;}
section.sedi .cover h3{margin: 0;text-transform: uppercase;}
section.sedi .cover .subtitle{margin: 0;}
section.sedi .cover .buttons{position: absolute;bottom: 20px;}
section.sedi .cover .buttons a.button{width: auto;display: inline-block;background:linear-gradient(to right,rgba(211,22,22,0),rgba(37,54,124,0));border: 1px solid #ccc; font-weight: normal;}
section.sedi .cover .buttons a.button:hover{width: auto;display: inline-block;background:linear-gradient(to right,rgba(211,22,22,1),rgba(37,54,124,1));border:1px solid #ccc;}
section.sedi .cover .buttons a.button span{display: none;}

section.sedi .button {padding: 5px;margin: 0;font-size: 1rem;display: flex;}

section.sedi .informazioni_sede{color: #000000;text-align: center;}

section.sedi .col-sm-6 .informazioni_sede .col-6:nth-child(1) {border-right: 1px dotted var(--red);}
section.sedi .col-sm-6:nth-child(1) .informazioni_sede  h3{background: var(--red);font-family: 'inter';font-size: 1.5rem;color: #fff;text-transform: uppercase;}
section.sedi .col-sm-6:nth-child(2) .informazioni_sede  h3{background: var(--blue);font-family: 'inter';font-size: 1.5rem;color: #fff;text-transform: uppercase;}
section.sedi .col-sm-6:nth-child(1) .informazioni_sede .col-6 h4{color: var(--red);font-family:'inter';font-size: 1.25rem;}


section.sedi .col-sm-6:nth-child(2) .informazioni_sede .col-6 h4{color: var(--blue);font-family:'inter';font-size: 1.25rem;}

section.sedi .informazioni_sede .col-sm-6:nth-child(2) p:nth-child(2) {font-style: italic;}

/* ------------------------------------------------------------------------- *
/* ! Partner */
/* ------------------------------------------------------------------------- */
section.partner .col-6{margin-top: 15px;}
section.partner .border{ 
    -webkit-box-shadow: 0 5px 6px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 5px 6px rgba(0, 0, 0, 0.1);
         box-shadow: 0 5px 6px rgba(0, 0, 0, 0.1);
         min-height: 180px;
        }
section.partner .border img{padding: 15px;}   
section.partner .flex {padding: 15px;}
@media (max-width: 768px) {
    section.partner .border{height: auto;}
}


/* ------------------------------------------------------------------------- *
/* ! Footer*/
/* ------------------------------------------------------------------------- */

footer{background: linear-gradient(to right,var(--blue),var(--dblue));color:#fff;border-top: 2px solid var(--red);padding: 40px 0px;}
footer .footer__logo img{width: 350px; height:auto;}
footer a{color:#fff}

footer .claim{color: #fff; text-transform: uppercase;width: 350px;max-width: 100%;}
footer .claim p{margin: 0;padding: 5px;text-align: center;}
footer .sede__1,
footer .sede__2{text-align: center;padding-bottom: 50px;}
footer .sede__1 h5 span,
footer .sede__2 h5 span{
    background:  var(--red);
    padding: 5px;
    text-transform: uppercase;
}


/* ------------------------------------------------------------------------- *
/* ! Nav footer */
/* ------------------------------------------------------------------------- */

.nav__footer ul{list-style-type: none;margin: 0;margin-top: 10px;background:linear-gradient(to left,rgba(37,54,124,0.3), rgba(27,47,67,0.3)); padding-inline-start:20px }
.nav__footer ul ul.sub-menu{margin: 0;background: none;margin-top: -5px;margin-bottom: 15px;}
.nav__footer ul li a{text-align:left;padding: 5px;text-align: left;display: block;font-size: 1rem;}
.nav__footer ul li a:before{
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: .6s;
    color: var(--red);
    padding-right: 3px;
    text-align: left;
    display: inline-block;
    line-height: 30px;
}

.social__menu{text-align: center;width: 100%;}
.social__menu p{margin:0;}
.social__menu ul{list-style-type: none;display: flex;margin: 0 auto;padding-inline-start: 0;justify-content: center;}
.social__menu ul li{margin: 0;padding: 0;margin-left:10px;}
.social__menu ul li a{text-align:left;padding: 10px;display: block;font-size: 1.25rem; text-align: center;margin: 0;line-height: 16px;}


/* ------------------------------------------------------------------------- *
/* ! Credits */
/* ------------------------------------------------------------------------- */

footer .ottomedia {
    text-align: right;
    padding-top: 50px;
    padding-bottom: 10px;
    font-size: 15px;
    font-weight: 400;
    display: block;
    width: 100%;
    border-radius: 15px;
}

footer .ottomedia a span.logo {
    color: var(--green);
}

footer .ottomedia a img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    margin-left: -10px;
    width: 150px;
    height: auto;
}


/* ------------------------------------------------------------------------- *
/* ! Contact footer */
/* ------------------------------------------------------------------------- */
footer #form-contact{margin-top: -100px;margin-bottom: 100px;}
footer h5.title__contact__footer{text-transform: uppercase;margin-top: 50px;margin-left: 15px;}
footer .menu__contact__footer  {display: flex;background: transparent;justify-content:flex-start;}
footer .menu__contact__footer  {width: 100%;margin: 10px 0;padding: 10px;transition: .6s;}
footer .menu__contact__footer nav ul{list-style: none;margin: 0; padding: 0;display: flex;flex-direction: row;}
footer .menu__contact__footer nav ul li {margin: 0 10px;}
footer .menu__contact__footer nav ul li a{color: #fff;}
footer .menu__contact__footer nav ul li a strong{display: block;font-size: 0.8rem;text-transform: none;font-weight: 400;}
footer .menu__contact__footer nav ul li.green a{color: var(--lgreen);}

/* ------------------------------------------------------------------------- *
/* ! Form footer */
/* ------------------------------------------------------------------------- */

footer ul.nav-pills{display: flex; flex-direction: row;border-bottom: 2px solid var(--red);margin: 0; padding: 0;list-style: none;cursor: pointer;}
footer ul.nav-pills li{padding:10px 15px;text-transform: uppercase;border-radius: 5px 0 0 0;transition: 0.6s;font-size: 1rem;}
footer ul.nav-pills li.active{background: var(--red);color: #fff;}
footer .form-group {margin-bottom: 1rem;}
footer .form-contact-info{display: none;transition: 0.6s; }
footer .form-preventivo{display: none;transition: 0.6s; }
footer .form-visita{display: none;transition: 0.6s; }
footer .form-contact-info.active{display: block;}
footer .form-preventivo.active{display: block;}
footer .form-visita.active{display: block;}
footer .form-contact-info h5,
footer .form-preventivo h5,
footer .ti-chiamiammo-noi h5,
footer .form-visita h5{text-transform: uppercase;padding: 10px;border-radius: 10px 0 0 0;font-size: 1rem;color: #fff;margin: 0;font-family: 'Inter';font-weight: normal;font-style: normal;font-size: 16px;}
footer h5.form__title{text-transform: uppercase;background: var(--green);padding:15px 10px;border-radius: 5px 5px 0 0;}
footer form label {display: inline-block!important;}
footer form .form-group {margin: 0;}
footer form .col-xl-4,
footer form .col-md-6,
footer form .col-12
{padding-left: 5px;padding-right: 5px;}

/* ------------------------------------------------------------------------- *
/* ! Back-to-top */
/* ------------------------------------------------------------------------- */

.back-to-top {
    display: block;
    position: fixed;
    line-height: 1rem;
    left: calc(50% - 27px);
    bottom: 5px;
    visibility: hidden;
    width: 50px;
    height: 50px;
    font-size: 1.5rem;
    text-align: center;
    padding: 0;
    border-radius: 99px;
    border: 2px solid transparent;
    transition: 0.5s;
    background: var(--red);
    opacity: 0.7;
    z-index: 9;
}

.back-to-top:hover {
    opacity: 1;
    box-shadow: 0 0 0 1px #fff;
    -webkit-box-shadow: 0 0 0 1px var(--red);
    width: 56px;
    height: 56px;
    left: calc(50% - 28px);
    border: 2px solid #fff;
}

.display-top .back-to-top {
    visibility: visible;
    z-index: 99;
}

.back-to-top a {
    color: #fff;
    padding: 0;
}

.back-to-top a .top-up {
    position: absolute;
    top: 10px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transition: 0.5s;
}

.back-to-top:hover a .top-up {
    top: 8px;
}

.back-to-top a .top-down {
    position: absolute;
    top: 10px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transition: 0.5s;
}

.back-to-top:hover a .top-down {
    top: 22px;
}


/* ! Modal */
.box__modal {
    position: fixed;
    width: 80%;
    height: auto;
    top: -155%;
    right: 10%;
    left: 10%;
    background: #f6f6f6;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5);
    transition: 0.6s;
    z-index: 9999999;
    transform: perspective(1000px) rotateY(270deg) scale(0);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    overflow-y: scroll;
}
.box__modal .logo {
    width: 80%;
    padding-left: 10px;
}
.box__modal .logo img{
    max-width: 100%;
    height: auto;
}

.box__modal .close {
    width: 20%;
    color: var(--red);
    padding-bottom: 10px;
    text-align: right;
    font-size: 35px;
    padding-right: 10px;
}



.box__modal.active {
    transform: perspective(1000px) rotateY(0deg) scale(1);
    top:5%;
}



.box__modal .content {

    width: 100%;
    height: 100%;
    padding: 2%;
}

.box__modal .content h5 {
    text-transform: uppercase;
    padding-top: 10px;
    text-align: center;
    color: var(--blue);
    
}

.box__modal .content .button {
    border: 2px solid var(--blue);
    color: #fff;
    transition: 0.6s;
    background: var(--blue);
}

.box__modal .content .button:hover {
    color: #fff;
    background: var(--red);
    border: 2px solid var(--red);
}
@media (max-width: 768px) {
    .box__modal{width: 100%;height:100%;right: 0;left: 0;top: 0;}
}
/* ------------------------------------------------------------------------- *
/* ! Uffici e domiciliazioni */
/* ------------------------------------------------------------------------- */


.title__mosaico{
    
    max-width: 1350px;
    margin: 0 auto;
    margin-top: 50px;
    padding: 0 4%;
}
.title__mosaico h2{
    margin-bottom: 1rem;
    margin-top: 2rem;
}
.title__mosaico h3{
    margin-bottom: 1rem;
    margin-top: 0;
    font-size: 1.5rem;
    font-weight: 400;
}
.title__mosaico h3:after{
 
content: "";
    width: 120px;
    height: 2px;
    background: linear-gradient(to right,var(--red) 0,var(--blue));
    margin: 20px 0;
    display: block;
}

.above-the-fold {
    height: 100vh;
}



.above-the-fold .mosaico {
    display: flex;
    height: 100vh;
    overflow: hidden;
}

.above-the-fold .mosaico .flex-1-col,
.above-the-fold .mosaico .flex-2-col {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}

.above-the-fold .mosaico .flex-2-col .flex-1-box,
.above-the-fold .mosaico .flex-2-col .flex-2-box,
.above-the-fold .mosaico .flex-2-col .flex-3-box,
.above-the-fold .mosaico .flex-2-col .flex-4-box {
    width: 50%;
    height: 50%;
    position: relative;
}



.above-the-fold .mosaico .flex-1-col::after,
.above-the-fold .mosaico .flex-2-col .flex-1-box::after,
.above-the-fold .mosaico .flex-2-col .flex-2-box::after,
.above-the-fold .mosaico .flex-2-col .flex-3-box::after,
.above-the-fold .mosaico .flex-2-col .flex-4-box::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    background: linear-gradient(180deg, rgba(193, 39, 45, 0) 0%, rgba(0, 0, 0, 0.1) 60%, rgba(0, 0, 0, 0.5) 70%, rgba(31, 46, 86, 0.7) 100%);
}

.above-the-fold .mosaico img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    min-height: 100%;
    transition: all .5s cubic-bezier(.215, .61, .355, 1);
    top: 50%;
    left: 50%;
}

.above-the-fold a:hover img {
    height: 105%;
    width: 105%;
    min-height: 105%;
}

.above-the-fold .caption {
    position: absolute;
    padding: 15px;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    color: #fff;
}

.above-the-fold .caption h3 span {
    text-transform: uppercase;
    color: #333;
    background: #fff;
    font-size: 1.5rem;
    padding: 5px;
    font-weight: 700;
    transition: 0.6s;
}

.above-the-fold a:hover .caption h3 span {
    background: var(--blue);
    color: #fff;
}

.above-the-fold .caption p {
    font-weight: 500;
    margin-bottom: 0;
    font-size: 1.1rem;
}

.above-the-fold .caption p.prezzo {
    font-weight: 400;
    font-style: italic;
    margin-top: 0;
    font-size: 0.8rem;
}


@media (max-width: 997px) {
    .above-the-fold {
        height: auto
    }

    .above-the-fold .mosaico {
        display: flex;
        height: auto;
        overflow: hidden;
        flex-direction: column;
    }

    .above-the-fold .mosaico .flex-1-col,
    .above-the-fold .mosaico .flex-2-col {
        width: 100%;
        display: flex
    }

    .above-the-fold .mosaico .flex-2-col .flex-1-box,
    .above-the-fold .mosaico .flex-2-col .flex-2-box,
    .above-the-fold .mosaico .flex-2-col .flex-3-box,
    .above-the-fold .mosaico .flex-2-col .flex-4-box {
        width: 100%;
        height: 50%;
        position: relative;
    }



    .above-the-fold .mosaico .flex-1-col::after,
    .above-the-fold .mosaico .flex-2-col .flex-1-box::after,
    .above-the-fold .mosaico .flex-2-col .flex-2-box::after,
    .above-the-fold .mosaico .flex-2-col .flex-3-box::after,
    .above-the-fold .mosaico .flex-2-col .flex-4-box::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .6;

    }

    .above-the-fold .mosaico img {
        object-fit: cover;
        height: 100%;
        width: 100%;
        min-height: 100%;
        transition: all .5s cubic-bezier(.215, .61, .355, 1);
        top: 50%;
        left: 50%;
    }

    .above-the-fold a:hover img {
        height: 105%;
        width: 105%;
        min-height: 105%;
    }

    .above-the-fold .caption {
        position: absolute;
        padding: 15px;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 1;
        color: #fff;
    }

    .above-the-fold .caption h3 span {
        text-transform: uppercase;
        color: #333;
        background: #fff;
        font-size: 1.5rem;
        padding: 5px;
        font-weight: 700;
        transition: 0.6s;
    }

    .above-the-fold a:hover .caption h3 span {
        background: var(--green);
        color: #fff;
    }

    .above-the-fold .caption p {
        font-weight: 500;
        margin-bottom: 0;
        font-size: 1.1rem;
    }

    .above-the-fold .caption p.prezzo {
        font-weight: 400;
        font-style: italic;
        margin-top: 0;
        font-size: 0.8rem;
    }

}

/* ! Media & text home */
.home section.virtual__office,
.home section.segretariato,
.home section.traduzioni {
    margin-top: 25px;
    position: relative;
}

.home section.virtual__office h2 strong,
.home section.segretariato h2 strong,
.home section.traduzioni h2 strong,
.home section.chi_siamo h2 strong{
    background: linear-gradient(to right, var(--red) 0%, var(--blue));
    color: #fff;
    text-transform: uppercase;
    font-size: 1.5rem;
    padding: 5px;
}

.home section.virtual__office h3,
.home section.segretariato h3,
.home section.traduzioni h3,
.home section.chi_siamo h3{
    font-size: 1.25rem;
}

.home section.virtual__office h3:after,
.home section.segretariato h3::after,
.home section.traduzioni h3:after,
.home section.cta h3:after,
.home section.chi_siamo h3:after {
    content: "";
    width: 120px;
    height: 2px;
    background: linear-gradient(to right, var(--red) 0%, var(--blue));
    margin: 20px 0;
    display: block;
}

.home section.virtual__office .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content,
.home section.segretariato .wp-block-media-text .wp-block-media-text__content,
.home section.traduzioni .wp-block-media-text .wp-block-media-text__content{
    position: absolute;
    width: 60%;
    top: 10%;
    opacity: .9;
}

.home .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content,
.home .wp-block-media-text .wp-block-media-text__content {
    background: #fff;
    padding: 50px;
    z-index: 1;
    opacity: 0.9;

}

.home section.segretariato .wp-block-media-text .wp-block-media-text__content {
    right: 15px;
}

.home .wp-block-button a {
    font-weight: 500;
    border:none;
    color: #fff;
    background: linear-gradient(to right, var(--blue) 0%, var(--blue));
    transition: 1s;
}


.home .wp-block-button:last-child a {
    background: linear-gradient(to right, var(--red) 0%, var(--red));
}

.home .wp-block-button a:hover {
    background: linear-gradient(to right, var(--red) 0%, var(--blue));
    color: #fff;
    border: none;
}

.home .wp-block-button a strong {
    display: block;
    font-size: 0.8rem;
    font-weight: 400;
}



.home section.cta{padding-top: 150px;padding-bottom: 150px;margin-top: 50px;margin-bottom: 50px;}
.home section.cta .wp-block-group__inner-container{max-width: 1350px;}
.home section.cta .wp-block-group__inner-container h2{text-transform: uppercase;}
.home section.cta .wp-block-group__inner-container h3{font-size: 1.25rem;}

/* ! News home */

.news{margin-top: 50px;margin-bottom: 50px;}
.news a{color: var(--black);}
.news .card-text{padding-left: 15px;padding-right: 15px;}
.news .card-text h3{font-size: 1.25rem;}
.news .card-text h3:after{
    content: "";
    width: 120px;
    height: 2px;
    background: linear-gradient(to right, var(--red) 0%, var(--blue));
    margin: 20px 0;
    display: block;
}

.time-blog {
    position: absolute;
    top: 20px;
    right: 22px;
    background: #fff;
    height: 85px;
    width: 40px;
    padding-top: 2px;
    z-index: 99;
}
.time-blog .date-day, .time-blog .date-month, .time-blog .date-year{
    display: block;
    text-align: center;
    font-size: 12px;
    margin: 0 auto;
    font-weight: 700;
    line-height: 1.25rem;
}
.time-blog .line {
    border-bottom: 2px solid var(--red);
    width: 20px;
    display: block;
    margin: 3px auto 6px auto;
}



@media (max-width: 768px) {

    .home section.virtual__office h2 strong,
    .home section.segretariato h2 strong,
    .home section.traduzioni h2 strong{
        background: #333;
        color: #fff;
        text-transform: uppercase;
        font-size: 1rem;
        padding: 5px;
    }

    .home section.virtual__office h3,
    .home section.segretariato h3,
    .home section.traduzioni h3 {
        font-size: 1.25rem;
    }

    .home section.virtual__office h3:after,
    .home section.segretariato h3::after,
    .home section.traduzioni h3:after {
        content: "";
        width: 120px;
        height: 2px;
        background: linear-gradient(to right, var(--green) 0%, var(--blue));
        margin: 20px 0;
        display: block;
    }


    .home section.virtual__office .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content,
    .home section.segretariato .wp-block-media-text .wp-block-media-text__content,
    .home section.traduzioni .wp-block-media-text .wp-block-media-text__content {
        position: static;
        width: 100%;
        padding: 0;

    }

}

/* ! 404 & Search */
form.searchform {
    width: 100%;
    background: #eee;
    display: flex;
    padding: 15px;
}

/* ! Main Carousel Blog*/
.blog .main-carousel .carousel-cell{width: 100%; height: 80vh;min-height: 600px;text-align: center;margin-right: 30px;display: flex;}
.blog .main-carousel .carousel__caption{width: 80%;position: absolute;bottom: 15%;left: 10%;margin: 0 auto;background: transparent;}
.blog .main-carousel .carousel__caption .container{display: flex;flex-wrap: wrap;}
.blog .main-carousel .carousel-cell .seo-title-target {color: #fff;text-align: left;font-size: 3.5rem;font-weight: 700;width: 100%;text-shadow: 0 0 2px var(--blue);width: 100%;}
.blog .main-carousel .carousel-cell h3{display: block;width: 100%;margin-bottom: 1rem;}

.blog .main-carousel .carousel-cell h2,
.blog .main-carousel .carousel-cell h3{color: #fff;text-align: left;text-transform: none;font-size: 1.5rem;font-weight: 400;}
.blog .main-carousel .carousel-cell h3{font-weight: 300;}

@media (max-width: 997px) {
  section.slider, section.slider_blog{margin-top: 60px;}
  .blog .main-carousel .carousel-cell .seo-title-target {font-size: 2rem;}
  .blog .main-carousel .carousel-cell h2,
  .blog .main-carousel .carousel-cell h3{font-size: 1.25rem;}
}
section.slider, section.slider_blog{margin-top: 0}
.cornice {max-width: 300px;margin: 0 auto;}
.blog__title{
    text-align: center;
}
.blog__title h1{
    margin: 0;
    font-size: 2.25rem;
    color: #333;
    
}
.blog__title h2{
    margin: 0;
    font-size: 1.25rem;
    color: #85868c;
}

.blog__grey{
    padding: 0 15px 15px;
    margin-bottom:25px;
    background: #f8f8f8;
    position: relative;
}
.blog__grey a h3{
   color: var(--black);
   font-size: 1.15rem;
   margin-bottom: 1rem;
}
.category-blog{
    margin-bottom: 1rem;
}

.blog .blog__grey a.button{
    background: var(--blue);
    padding: 8px;
    width: auto;
    margin: 0;
    transition: 1s;
    border: none;
}
.blog .blog__grey a.button:hover{

    background: var(--red);
}
/* ------------------------------------------------------------------------- *
/* ! Page */
/* ------------------------------------------------------------------------- */
.jumbotron__fluid{
    padding-top: 200px;
    padding-bottom: 150px;
    color: #fff;
    
}
.button__cta{
    background: linear-gradient(to right,var(--red) 0,var(--blue));
    color: #fff;
    padding: 5px;
    border: 1px solid #fff;
    font-size: 1rem;
    padding: 10px;

}
.trattino{

    width: 100px;
    height: 4px;
    background: linear-gradient(to right,var(--red) 0,var(--blue));
    margin-bottom:20px;
    Margin-top:20px;
}


.jumbotron__fluid h1{
    font-size: 3rem;
    color: #fff;
    text-transform: uppercase;
    margin: 0;
    
}
h2.cta-subtitle{font-size: 2rem;font-weight: 500;}

.page-template-default article h2,
.page-template-page-wide article h2,
.page-template-page-contatti article h2{
    font-size: 2rem;
    margin: 0;
}
.page-template-default article h3,
.page-template-page-wide article h3,
.page-template-page-contatti article h3{
    font-size: 1.25rem;
    
}


article h3::after{
    content: "";
    margin: 10px 0;
    width: 120px;
    height: 2px;
    background: linear-gradient(to right, var(--red), var(--blue));;
    display: block;
}
.page-template-page-wide article .wp-block-cover.alignfull{padding: 0;margin-top: 25px;margin-bottom:25px;}
.page-template-page-wide article .wp-block-cover.alignfull h3::after{
    display: none;
}

.page-template-page-wide article .wp-block-cover.alignfull a.wp-block-button__link{background: transparent;}
.page-template-page-wide article .wp-block-cover.alignfull a.wp-block-button__link:hover{background: var(--red);}

.wp-block-separator{
    border: none;
    margin-top: 30px;
    margin-bottom: 35px;
    background: linear-gradient(to right, var(--red), var(--blue));height: 3px;border-radius: 5px;
}
.wp-block-media-text .wp-block-media-text__content{margin: 15px 0;}

article .schede_uffici{background: var(--grey);margin-left: -15px;margin-right: -15px;padding: 15px;margin-top: 25px;}
article .schede_uffici h2{text-align: right;opacity: 0.5;font-size: 1.5rem;text-transform: uppercase;}
article .schede_uffici h3{text-align: right;opacity: 0.5;font-size: 1.25rem;}
article .schede_uffici h3::after{ display: none;}

article .schede_uffici .wp-block-columns h4{border-bottom: 2px solid rgba(0,0,0,0.5); color:rgba(0,0,0,0.5);font-size: 1.25rem;text-transform: uppercase;}
article .schede_uffici .wp-block-columns h5{color:rgba(0,0,0,0.5);font-size: 1.1rem;margin-bottom: 0.5rem;}
article .schede_uffici .wp-block-columns a{color:rgba(0,0,0,0.5);}
article .schede_uffici .wp-block-columns .wp-block-column:nth-child(3){position: relative;}
article .schede_uffici .wp-block-columns .wp-block-column:nth-child(3) h4:after{
    position: absolute;
    content: "\f1da";     
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color:rgba(0,0,0,0.5);
    font-size: 5rem;
    right :50px;
    top: 30px;
}


article ul.comprese,
article ul.opzionali,
article ul.configurazioni,
article ul.orari{list-style: none;padding-inline-start: 5px;}

article ul.comprese li::before{
    content: "\f560";     
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color: var(--lgreen);
    padding-right: 3px;
    text-align: left;
    display: inline-block;
    line-height: 30px;
}
article ul.opzionali li::before{
    content: "\f013";     
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color: var(--red);
    padding-right: 3px;
    text-align: left;
    display: inline-block;
    line-height: 30px;
}
article ul.configurazioni li::before{
    content: "\f054";     
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    transition: 0.6s;
    color:rgba(0,0,0,0.5);
    padding-right: 3px;
    text-align: left;
    display: inline-block;
    line-height: 30px;
}


/* ! Schede riassuntive */

.wp-block-group.scheda .wp-block-details summary{font-size: 1.1rem;padding: 15px;margin-right:5px; color: #fff; background: var(--blue);border: 1px solid #fff;}
.wp-block-group.scheda .wp-block-details:nth-child(2) summary{background: var(--red);}
.wp-block-group.scheda .wp-block-details ul{background: var(--grey);}



.wp-block-group.grey{background: var(--grey);padding-top: 25px;padding-bottom: 25px;}
.wp-block-group.red{background: var(--red);padding-top: 15px;padding-bottom: 15px; margin-top: 25px;margin-bottom:25px; color: #fff;}
.wp-block-group.red p{text-align: center;font-size: 1.25rem; margin: 0;}

/* Contatti blocco */
.contatti__veloci{background:linear-gradient(to right, var(--red), var(--blue));color: #fff; padding:5px 15px;margin-top: 15px;margin-bottom: 15px;margin-left: -15px;margin-right: -15px;}
.contatti__veloci h4{margin:0;text-align: right;opacity: 0.5; font-size: 1.5rem;}
.contatti__veloci a{color: #fff; }

/* ! FAQ Yoast  */
section.faq{background: #f7f7f7; border-top: 2px solid #ddd; border-bottom:2px solid #ddd;margin:30px -15px; padding: 15px;}
section.faq h2{position: relative;cursor: pointer;font-size: 2.5rem;color: var(--blue);}
section.faq h2::after {content: "\f0d7 ";font-family: "Font Awesome 5 Free";font-weight: 900;display: inline-block;position: absolute;transition: 0.6s;color: var(--blue);bottom: -2px;left: 85px;cursor: pointer;}
section.faq h3::after{display: none;}
section.faq h3{text-align: right;color: #ccc;margin-top: -50px;font-size: 1rem;}
section.faq h3 em{text-transform: uppercase;color:#ddd;font-size: 1.25rem;}

p.FAQ{background: VAR(--green); color: #fff;padding: 5px;width: 200px;text-transform: uppercase;font-size: 0.9rem;text-align: center;}
h3.FAQ{font-weight: 400;}
h3.FAQ strong em{color: VAR(--green);font-weight: 500;font-style: normal;}
.schema-faq.wp-block-yoast-faq-block .schema-faq-question{background: #f7f7f7;margin-bottom: 10px;display: block;border-bottom: 1px solid #ccc; padding: 5px 20px;font-weight: 500;position: relative;}
.schema-faq.wp-block-yoast-faq-block .schema-faq-question:before{content: "\f0da ";font-family: "Font Awesome 5 Free";font-weight: 900;color: var(--green);padding-right:2px;}
.schema-faq.wp-block-yoast-faq-block .schema-faq-question:after{position: absolute;content: "\f067";font-family: "Font Awesome 5 Free";font-weight: 900;color: var(--green);right: 5px;bottom: 5px;transition: 0.6s;}
.schema-faq.wp-block-yoast-faq-block div.active .schema-faq-question:after{-ms-transform: rotate(45deg);transform: rotate(45deg);color: var(--yellow);}
.schema-faq.wp-block-yoast-faq-block div.schema-faq-section p.schema-faq-answer{display:none;transition: 0.6s;padding:5px;}
.schema-faq.wp-block-yoast-faq-block div.schema-faq-section.active p.schema-faq-answer{display:block;}


/* ! Template Contatti */

.page-template-page-contatti .wp-block-column .wp-block-group__inner-container{width: 450px;display: flex;width: 100%;flex-direction:column; height: 450px;justify-content: center;background: linear-gradient(to right, var(--red), var(--blue));color: #fff;}
.page-template-page-contatti .wp-block-column .wp-block-group__inner-container h2{color: #fff;margin-bottom: 1rem;}
.page-template-page-contatti .wp-block-column .wp-block-group__inner-container p{color: #fff;margin-bottom: 1rem;}
.page-template-page-contatti .wp-block-column .wp-block-group__inner-container p a{color: #fff;margin-bottom: 1rem;}



/* ! Single */
.single .jumbotron__fluid{display: flex;align-items: center;color: #fff;margin-top: -119px;position: relative;}
.single .jumbotron__fluid .container{padding: 100px 15px;}
.single .jumbotron__fluid h1{font-size: 2.25rem; margin-top: 1rem;text-transform: uppercase ;}
.single .jumbotron__fluid h2{font-size: 1.25rem;font-weight: normal;}
.single .container.white{margin-top: 50px;}
.single .no__tumb{color: #fff;max-width: 1350px;padding: 4%;margin: 0 auto;text-align: center;background: linear-gradient(to right,var(--red) 0,var(--blue));}
.single .no__tumb .writed__by h1{text-transform: uppercase;}
.single .no__tumb ul{list-style: none;padding-inline-start:0;display: inline-block;}
.single .no__tumb ul li{text-align: center;border: 1px solid #fff;padding: 5px;background: #fff;}
.single .no__tumb ul li a{display: block;text-transform: uppercase;}
.single .category ul{list-style: none;padding-inline-start:0;}
.single .category ul li a{background: linear-gradient(to right,var(--red) 0,var(--blue)); color:#fff; text-transform: uppercase;padding: 5px;border: 1px solid #fff;font-size: 1.25rem;}
.single .writed__by{width: auto;padding: 5px; color:#fff;font-size: 1rem;}
.single .writed__by span{font-style: italic;font-weight: 700;}


.single article{padding-top: 0;}
.single article h2{margin-top: 2rem;margin-bottom: 2rem;}

.evidence{position: relative;}
.time-single{position: absolute;top: 20px;right: 20px; background: linear-gradient(to right,var(--red) 0,var(--blue));height: 85px;width: 40px;padding-top: 2px;line-height: 1.25rem;color: #fff;border: 1px solid #fff;}
.time-single .date-year,
.time-single .date-month,
.time-single .date-day{display: block;text-align: center;font-size: 12px;margin: 0 auto;font-weight: bold;}
.time-single .date-day{font-size: 22px;}
.time-single .line{border-bottom: 2px solid #fff;width: 20px;display: block;margin: 3px auto 6px auto;}

blockquote {
    margin-top: 15px;
    margin-bottom: 15px;
    display: block;
    margin-block-start: 0;
    margin-block-end:0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    background: #f7f7f7;
    font-style: italic;
    padding: 20px;
    font-weight: 500;
}

/* ! Widget */
aside .widget_search{border: 1px solid var(--text);margin-bottom: 25px;}
aside h3.wp-block-heading{color: var(--text);}
aside .wp-block-latest-posts__list li{margin-bottom: 20px;}

/* ! Search */
.wp-block-search__button-inside{border: 1px solid var(--grey);}
.wp-block-search__button-inside .wp-block-search__button{background: var(--blue);color: #fff;}

/* ! single widget lastest post */
.wp-block-latest-posts__list.has-dates.wp-block-latest-posts li{border: 1px solid var(--grey);min-height: 80px;}
.wp-block-latest-posts__featured-image.alignleft {
    float: left;
    margin-right: 1em;
    
    
}
.wp-block-latest-posts__featured-image.alignleft img{
    max-width: 75px;
}


/* ! Author */
/* ============================================================
   Box autore (EEAT) – Executive Service Network
   ============================================================ */
 
.author-box {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    margin: 2.5rem 0;
    padding: 1.75rem;
    background: #f7f7f7;
    border: 1px solid #e6e8ec;
    border-radius: 10px;
}
.author a.button{background: var(--blue);border: none;}
.author a.button:hover{background: var(--red);}
 
/* Avatar */
.author-image {
    flex: 0 0 auto;
}
 
.author-image img {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}
 
/* Testo */
.author-info {
    flex: 1 1 auto;
    min-width: 0;
}
 
.author-name {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.4rem;
    color: #1a1a1a;
}
 
.author-meta {
    font-size: 0.95rem;
    line-height: 1.55;
    color: #4a4a4a;
    margin-bottom: 0.9rem;
}
 
/* Link social */
.author-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}
 
.author-social__link {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    padding: 0.4rem 0.85rem;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    background: #fff;
    color: #333;
    transition: all 0.15s ease;
}
 
.author-social__link svg {
    flex: 0 0 auto;
}
 
.author-social__link:hover {
    border-color: #0a66c2;
    color: #0a66c2;
}
 
.author-social__link--linkedin:hover {
    background: #0a66c2;
    border-color: #0a66c2;
    color: #fff;
}
 
.author-social__link--web:hover {
    background: #333;
    border-color: #333;
    color: #fff;
}
 
/* Responsive: su mobile impila avatar e testo */
@media (max-width: 575.98px) {
    .author {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 1.5rem 1.25rem;
    }
 
    .author-social {
        justify-content: center;
    }
}
/* ============================================================
   Pagina archivio autore (author.php) – Executive
   Intestazione profilo. Le classi .author-social* sono
   condivise col box autore di single.php: se hai già quel CSS,
   incolla solo il blocco .author-archive-header qui sotto.
   ============================================================ */

.author-archive-header {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 2rem;
    background-color: #f7f7f7;
    border-radius: 15px;
    padding: 15px;
}

.author-archive-header__avatar {
    flex: 0 0 auto;
}

.author-archive-header__avatar img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}

.author-archive-header__body {
    flex: 1 1 auto;
    min-width: 0;
}

.author-archive-header__eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.8rem;
    color: #888;
    margin: 0 0 0.2rem;
}

.author-archive-header__name {
    margin: 0 0 0.6rem;
    line-height: 1.15;
}

.author-archive-header__bio {
    font-size: 1rem;
    line-height: 1.6;
    color: #4a4a4a;
    margin-bottom: 1rem;
}

.author-archive-header__bio p {
    margin: 0 0 0.6rem;
}

/* --- Link social (condiviso con il box autore di single.php) --- */
.author-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.author-social__link {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    padding: 0.4rem 0.85rem;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    background: #fff;
    color: #333;
    transition: all 0.15s ease;
}

.author-social__link:hover {
    border-color: #0a66c2;
    color: #0a66c2;
}

.author-social__link--linkedin:hover {
    background: #0a66c2;
    border-color: #0a66c2;
    color: #fff;
}

.author-social__link--web:hover {
    background: #333;
    border-color: #333;
    color: #fff;
}

/* Responsive */
@media (max-width: 575.98px) {
    .author-archive-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .author-social {
        justify-content: center;
    }
}



/* ! Flickity v2.2.2 */

.flickity-enabled {position: relative;}
.flickity-enabled:focus { outline: none; }
.flickity-viewport {overflow: hidden;position: relative;height: 100%}
.flickity-slider {position: absolute;width: 100%;height: 100%;}

/* draggable */
.flickity-enabled.is-draggable {-webkit-tap-highlight-color: transparent;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;}
.flickity-enabled.is-draggable .flickity-viewport {cursor: move;cursor: -webkit-grab;cursor: grab;}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {cursor: -webkit-grabbing;cursor: grabbing;}

/* ---- flickity-button ---- */
.flickity-button {position: absolute;background: hsla(0, 0%, 100%, 0.75);border: none;color: #333;}
.flickity-button:hover {background: white;cursor: pointer;}
.flickity-button:focus {outline: none;box-shadow: 0 0 0 5px #19F;}
.flickity-button:active {opacity: 0.6;}
.flickity-button:disabled {opacity: 0.3;cursor: auto;pointer-events: none;}
.flickity-button-icon {fill: currentColor;}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {top: 50%;width: 44px;height: 44px;border-radius: 50%;transform: translateY(-50%);}
.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {left: auto;right: 10px;}
.flickity-rtl .flickity-prev-next-button.next {right: auto;left: 10px;}
.flickity-prev-next-button .flickity-button-icon {position: absolute;left: 20%;top: 20%;width: 60%;height: 60%;}

/* ---- page dots ---- */
.flickity-page-dots {position: absolute;width: 100%;bottom: 25px;padding: 0;margin: 0;list-style: none;text-align: center;line-height: 1;}
.flickity-rtl .flickity-page-dots { direction: rtl; }
.flickity-page-dots .dot {display: inline-block;width: 20px;height: 4px;margin: 0 8px;background:#ddd;opacity: 0.5;cursor: pointer;border-radius: 5px;}
.flickity-page-dots .dot.is-selected {opacity: 1;}
/* End Flickity */



/* ! Gutenberg */
section.wp-block-group__inner-container{max-width: 1350px;margin: 25px auto;}
.wp-block-gallery.has-nested-images figure.wp-block-image {margin-bottom: 25px;}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{background: transparent;color: #000;bottom: -20px;}