/*
Theme Name: INTRA 2025
Theme URI: https://studiointra.it/
Author: Katia Coppo
Author URI: https://katiacoppo.it/
Description: Tema proprietario di INTRA s.n.c.
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: intra_2025
Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, theme-options, translation-ready

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.
*/


/* --------------------------------------------------------------
/* TABLE OF CONTENTS:
/* --------------------------------------------------------------
0.0 Fonts and Variables
1.0 Backgrounds
2.0 Alignments
3.0 Typography
4.0 Forms
5.0 Formatting
6.0 Elements
7.0 Navigation
8.0 Layout
   -> Page Template Default
   -> Front Page
   -> Chi siamo
   -> Sezione Servizi
   -> Newsletter
   -> Contatti
   -> Singolo articolo
   -> Archivi blog e ricerca
   -> Footer e Sidebars
   -> 404
9.0 Widgets
   -> Iubenda

---------------------------------------------------------------- */


/* --- DA TOGLIERE --- QUANDO PUBBLICHIAMO LA LINGUA TEDESCA CORRETTA --- */
.wpml-ls-item-de {
    display: none;
}
html[lang="de-DE"] body *:not(#german-alert-banner) {
    word-break: break-all;
    hyphens: auto;
}
#german-alert-banner {
    background-color: var(--acid-green);
    background-color: rgba(164, 185, 55, 0.95);
    color: var(--light-color-text);
    padding: 15px 48px;
    font-weight: bold;
    position: fixed;
    left: 0;
    width: 100%;
    z-index: 9999;
    top: 120px;
    max-width: 380px;
    border-radius: 0 24px 24px 0;
}
#german-alert-banner h4 {
    color: #000;
    font-size: 1.6666666666em;
    margin-bottom: 1em;
}
#german-alert-banner p a {
    margin-top: 1em;
    color: inherit;
}
#german-alert-banner p a:hover {
    color: #111;
}
#german-alert-banner p a.button:hover {
    color: inherit;
}



/* ========================================  0.0 Fonts and Variables  ======================================== */
@font-face {
    font-family: 'Trade Gothic';
    src: url('assets/font/trade_gothic_lt_std_condensed_no._18-webfont.woff2') format('woff2'),
         url('assets/font/trade_gothic_lt_std_condensed_no._18-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Trade Gothic';
    src: url('assets/font/trade_gothic_bold_condensed_no._20-webfont.woff2') format('woff2'),
         url('assets/font/trade_gothic_bold_condensed_no._20-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

/*
@font-face {
    font-family: 'Trade Gothic LT Std Bold Condensed No. 20';
    src: local('Trade Gothic LT Std Bold Condensed No. 20'), url('trade-gothic-lt-std-bold-condensed-no-20.woff') format('woff');
    font-style: normal;
    font-weight: normal;
}
@font-face {
    font-family: 'Trade Gothic LT Std Regular';
    src: local('Trade Gothic LT Std Regular'), url('trade-gothic-lt-std.woff') format('woff');
    font-style: normal;
    font-weight: normal;
}
*/

:root {
    --acid-green: #a4b937; /* verde acido */
    --teal-blue: #576a6b; /* verde acqua */

    --color-text: #000;
    --menu-color-text: #090b0b;

    --light-color-text: #fff;
    
    --intro-text: #727272;
    
    --light-blue-background: #f0f4f2;
    --light-acid-green-background: rgba(172, 200, 27, 0.62);  /* originale schiarito: rgba(164, 185, 55, 0.65); per l'evidenziazione dei testi '*/
    
    --border-radius: 26px;
    --form-border-color: #ddd;
    
    --footer-dark-grey-background: #333;
    --footer-light-grey-text: #e8e8e8;
    
    --footer-light-grey-background: #e8e8e8;
    
    --site-font: 'Trade Gothic', sans-serif;
    --title-weight: bold;
    
    --archive-padding: 30px; /* metà dello spazio tra articoli, negli archivi */
}



/* ============================================   1.0 Backgrounds  ============================================ */

/* ---- FORSE MEGLIO SPOSTARLI NELLE IMPOSTAZIONI DELLE VARIE PAGINE ---- */
.home_intro,
.home_who,
.chisiamo_intro,
.central_image_container,
.intro_servizi,
.newsletter_intro,
.esempio_newsletter_container,
.archivio_singola_area .intro_area {
    position: relative;
}

.home_intro::before,
.home_who::before,
.chisiamo_intro:before,
.central_image_container::before,
.intro_servizi::before,
.newsletter_intro::before,
.esempio_newsletter_container::before,
.archivio_singola_area .intro_area::before {
    content: '';
    position: absolute;
    left: 0;
}
@media(min-width: 576px) {
    .home_intro::before,
    .home_who::before,
    .chisiamo_intro:before,
    .central_image_container::before,
    .intro_servizi::before,
    .newsletter_intro::before,
    .esempio_newsletter_container::before,
    .archivio_singola_area .intro_area::before {
        left: calc(50% - 50vw);
    }
}
.home_intro::before,
.home_who::before,
.chisiamo_intro:before,
.central_image_container::before,
.intro_servizi::before,
.newsletter_intro::before,
.esempio_newsletter_container::before,
.archivio_singola_area .intro_area::before {
    z-index: -1;
}
.home_intro::before,
.chisiamo_intro:before,
.intro_servizi::before,
.archivio_singola_area .intro_area::before {
    background-repeat: no-repeat, no-repeat;
}
.home_who::before,
.central_image_container::before,
.newsletter_intro::before,
.esempio_newsletter_container::before {
    background-repeat: no-repeat;
}

/* intro home e chi siamo */
.home_intro::before,
.chisiamo_intro:before {
    background-image: url('assets/img/striscia_main_blue.svg'), url('assets/img/striscia_main_green.svg');
    width: 100vw;
    height: 100%;
}
.home_intro::before {
    background-position: center calc(100% - 130px), center calc(100% - 135px);
    bottom: 0;
}
.chisiamo_intro:before {
    background-position: center calc(100% - 467px), center calc(100% - 463px);
    top: 10px;
}
@media(min-width: 480px) {
    .chisiamo_intro:before {
        background-position: center calc(100% - 600px), center calc(100% - 550px);
    }
}
@media(min-width: 576px) {
    .chisiamo_intro:before {
        background-position: center calc(100% - 685px), center calc(100% - 640px);
    }
}
@media(min-width: 1200px) {
    .home_intro::before,
    .chisiamo_intro:before {
        background-size: 100% auto;
    }
    .home_intro::before {
        background-position: center calc(100% - 100px), center calc(100% - 28px);
    }
    .chisiamo_intro:before {
        background-position: center calc(100% - 646px), center calc(100% - 584px);
    }
}
.home_who::before {
    background-image: url('assets/img/striscia_main_bluechisiamo.svg');
    background-size: 100% auto;
    width: 80%;
    height: 80%;
    
    background-position: bottom left;
    bottom: 40px;
}
.home_blog {
    background-image: url('assets/img/striscia_main_blueblog.svg');
    background-repeat: no-repeat;
    background-size: auto;
    background-position: right 94px;
}
@media(min-width: 1200px) {
    .home_blog {
        background-size: 100% auto;
        background-position: 0 94px;
    }
}
.central_image_container::before {
    background-image: url('assets/img/striscia_chisiamo_blue.svg');
    width: 90vw;
    height: 100vh; /* provare 100% */
    background-size: 100% auto;
    background-position: left 232px;   
}


/* servizi main */
.intro_servizi::before {
    background-image: url('assets/img/striscia_servizi_blue.svg'), url('assets/img/striscia_servizi_green.svg');
    width: 90vw;
    height: 100%; /* deve riferirsi all'altezza del blocco e non della viewport */
    background-size: auto, auto;
    background-position: right calc(100% - 400px), right calc(100% - 290px);
}
/* singola area di servizi */
.archivio_singola_area .intro_area::before {
    background-image: url('assets/img/striscia_servizi_aree_blue.svg'), url('assets/img/striscia_servizi_aree_green.svg');
    width: 100vw;
    height: 100%; /* deve riferirsi all'altezza del blocco e non della viewport */
    background-size: auto;
    background-position: center calc(100% - 270px), center calc(100% - 160px);
}
@media(min-width: 768px) {
    .intro_servizi::before {
        width: 80vw;
        background-size: 100% auto, 72% auto;
        background-position: left 140px, left 214px;
    }
    .archivio_singola_area .intro_area::before {
        background-position: left calc(100% - 380px), center calc(100% - 260px);
    }
}
@media(min-width: 1200px) {
    .intro_servizi::before {
        background-position: left 45px, left 165px;
    }
    .archivio_singola_area .intro_area::before {
        background-size: 100% auto;
        background-position: center calc(100% - 380px), center calc(100% - 260px);
    }
}

/* newsletter */
.newsletter_intro::before {
    background-image: url('assets/img/striscia_newsletter_blue.svg');
    width: 68vw;
    height: 100%;
    background-size: 100% auto;
    background-position: left 260px;
}
.esempio_newsletter_container::before {
    background-image: url('assets/img/striscia_newsletter_grey.svg');
    background-size: auto;
    width: 100vw;
    height: 100%;
    background-position: right;
}
@media(min-width: 992px) {
    .esempio_newsletter_container::before {
        background-size: 100% auto;
        background-position: bottom center;
        bottom: 0;
    }
}
@media(min-width: 1400px) {
    .esempio_newsletter_container::before {
        width: 100vw;
        background-size: cover;
        background-position: 0 center;
        height: 100%;
    }
}


::-moz-selection {
    color: var(--light-color-text);
    background-color: var(--light-acid-green-background);
}
::selection {
    color: var(--color-text);
    background-color: var(--light-acid-green-background);
}



/* ============================================   2.0 - Alignments  ============================================ */
.align-center {
    text-align: center;
}
.align-left {
    text-align: left;
}
.align-right {
    text-align: right;
}


/* ============================================   3.0 - Typography  ============================================ */

body {
    font-family: var(--site-font);
    /* Smoothing */
    text-rendering: geometricPrecision;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    
    font-size: 1.125em;
    line-height: 1.5em;
}
body b, body strong {
    font-weight: bold;
}
/* TITOLI */
h1, h2, h3, h4, h5, h6,
.home_intro h2 {
    font-family: var(--site-font);
    font-weight: var(--title-weight);
    letter-spacing: -0.01em;
}

/* ------------------------ DA VERIFICARE --------------------------------- */
h1,
.home_intro h2 {
    font-size: 3.77777778em;
    line-height: 1.0666666em;
    color: var(--teal-blue);
    text-transform: uppercase;
    text-align: center;
}
.logo h1 {
    margin: 0;
}
h2 {
    font-size: 2.3333333em;
    line-height: 1em;
}
h3 {
    color: var(--acid-green);
    font-size: 1.7777777em;
    line-height: 1.2em;
}
h4 {
    font-size: 1.3333333em;
    line-height: 1.125em;
}
h5 {
    font-size: 1.1666666em; 
    line-height: 1.3333333em;
}
h6 {
    font-size: 1em;
    line-height: 1.5em;
}
p, ul {
    letter-spacing: 0;
    line-height: 1.3333333em;
}
p, ul {
    font-size: 1.3333333em;
}
ul p,
ul ul,
.lista_aree p,
.lista_aree ul,
.lista_servizi p,
.lista_servizi ul {
    font-size: inherit;
}
p:not(.page_intro) {
    margin-top: 0;
    margin-bottom: 1.3333333em;
}
.blog-page p, /* caso specifico degli articoli del blog */
.blog-page ul,
.archivio-blog .lista_risultati p {
    font-size: 1.16666667em;
    letter-spacing: 0;
    line-height: 1.3333333em;
    margin-bottom: 1em;
}
.blog-page ul p,
.blog-page ul ul,
.archivio-blog ul p,
.archivio-blog ul ul {
    font-size: inherit;
}
p + h1, p + h2, p + h3, p + h4, p + h5, p + h6 {
    margin-top: 1em;
}

/* TESTO GENERICO */
a {
    color: #000;
    text-decoration: underline;
}
a:hover {
    color: var(--acid-green);
}
nav a, nav a:hover {
    text-decoration: none;
}

/* Blockquote */
blockquote {
    border-left: 8px solid rgba(87, 106, 107, 0.6); /* --teal-blue schiarito */
    display: block;
    padding: 16px;
    margin: 1em 0;
    background-color: rgba(87, 106, 107, 0.18); /* --teal-blue schiarito */
    border-radius: 0 18px 18px 0;
}
/*
cite {
    text-transform: uppercase;
    font-style: normal;
    font-size: 0.888888888em;
    letter-spacing: 0.02em;
}
*/
blockquote p, .blog-page blockquote p {
    margin: 0;
}

/* ---------------------------- VERIFICA --------------------------- */

/* IMAGGINI e IFRAME */
img {
    max-width: 100%;
    height: fit-content;
}
iframe {
    width: 100%;
}



/* ============================================   4.0 - Forms  ============================================ */
form br {
    display: none;
}
input, textarea {
    border-radius: var(--border-radius);
    border: 4px solid var(--form-border-color);
    padding: 9px 30px;
    margin: 16px 0 0 0;
    line-height: 1em;
    font-size: 0.875em;
    box-sizing: border-box;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="submit"],
input[type="search"],
textarea {
    width: 100%;
}
input[type="submit"] {
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom-right-radius: 0;
    border: 0 solid var(--acid-green);
    background-color: var(--acid-green);
    color: var(--light-color-text);
    transition: all 120ms ease;
}
input[type="submit"]:hover {
    border-top-right-radius: 0;
    border-bottom-right-radius: var(--border-radius);
    transition: all 120ms ease;
}

label.show.privacy {
    display: block;
    font-size: 0.85em;
}
input[type="checkbox"], [type="radio"] {
    margin: 24px 8px 8px 0;
}
input[type="checkbox"] + span,
[type="radio"] + span {
    font-size: 0.875em;
}
input[type="checkbox"] + span,
input[type="checkbox"] + span > a,
[type="radio"] + span,
[type="radio"] + span > a {
    color: #555;
}
input[type="text"]:focus-visible,
input[type="password"]:focus-visible,
input[type="email"]:focus-visible,
input[type="url"]:focus-visible,
input[type="tel"]:focus-visible,
input[type="submit"]:focus-visible,
input[type="search"]:focus-visible,
textarea:focus-visible,
textarea:focus-visible,
button:focus-visible {
    outline: 2px solid var(--teal-blue);
}

/* CF7 */
div.wpcf7-response-output {
    border-width: 12px;
    margin: 1em 0em 2em;
    padding: 1em;
}
span.wpcf7-list-item {
    margin: 0;
}
.wpcf7-mail-sent-ok,
span.wpcf7-not-valid-tip {
    color: #fff;
    margin-top: 6px;
    margin-bottom: 10px;
    padding: 1px 32px;
    border-radius: 24px;
    font-size: 0.8em;
    font-weight: bold;
}
div.wpcf7-validation-errors,
span.wpcf7-not-valid-tip {
    background-color: #ec5c6e;
}
.wpcf7-mail-sent-ok {
    background-color: #70cc7ee5;
}




/* ============================================   5.0 - Formatting  ============================================ */
.clearfix {
    clear: both;
}
/* prima colonna e ultima senza padding 
.row > *[class^='col']:first-child {
    padding-left: 0;
}
.row > *[class^='col']:last-child {
    padding-right: 0;
}*/
/* correggo padding e margin che in alcuni casi compaiono in altri no */
.archivio_blog.container,
.home_blog .container {
    box-sizing: border-box;
}


/* Provare a vedere https://css-tricks.com/full-width-containers-limited-width-parents/ */
@media (min-width: 480px) { /* potrebbe essere necessario cambiare questa media query */
  .fullwidth {
    width: 100vw;
    margin: 0 calc(-100vw / 2 + 100% / 2);
    margin: 0 0 0 calc(-50vw + 50%);
    margin: 0 calc(-50vw + 50% -0.5em);
  }
}

.medium_content {
    max-width: 825px;
    margin: 0 auto;
}

section[class^='fascia'] {
    margin-top: 60px;
}
section.fullwidth[class^='fascia'] {
    margin-top: 120px;
}
@media(max-width: 767px) {
    section.fullwidth.fascia3 {
        margin-top: 75px;
    }
}

.container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    --bs-gutter-x: 0;
}

/* Elimino i margini dell'iframe di Spreaker */
iframe.spreaker-player {
    margin: 0;
    border-radius: 16px;
}

/* UL */
ul {
    padding: 0;
}


/* ============================================   6.0 - Elements  ============================================ */
/* Blocco intro semplice */
div.intro {
    font-weight: bold;
    text-align: center;
    max-width: 770px;
    display: block;
    margin: 0 auto 60px;
}
div.intro p {
    font-size: 1.5555556em;
    line-height: 1.142857142857143em;
    margin: 0;
}
.chisiamo_intro .intro p {
    font-size: 1.33333333em;
    line-height: 1.33333333em;
    margin: 0;
}

div.long_intro p:last-child {
    margin-bottom: 0;
}
.testo_immagine img {
    object-fit: contain;
}

/* Blocco con immagine per home */
.img_text_section img {
    object-fit: contain;
}
@media(min-width: 1000px) {
    .img_text_section {
        display: flex;
        justify-content: space-between;
    }
    .img_text_section.first_text {
        flex-flow: row;
    }
    .img_text_section.first_img {
        flex-flow: row-reverse;
    }
    .img_text_section.first_img .text_column {
        text-align: right;
    }
}


/* Evidenziazione di testo in verde chiaro */
span.primary {
    color: var(--acid-green);
}

/* Inviti all'azione */
.invito {
    margin: auto;
}

/* Filetti */
hr,
.filetto {
    content: '';
    position: relative;
    display: block;
    width: 322px;
    height: 52px;
    background-image: url("assets/img/filetto1.png");
    border: none;
    margin: 100px auto;
}
.filetto2,
.filetto3 {
    content: '';
    position: relative;
    display: block;
    width: 70%;
    height: 48px;
    background-repeat: repeat-x;
    background-position: center;
    border: none;
    margin: 100px auto;
}
.filetto2 {
    background-image: url("assets/img/filetto_verde-dot.png");
}
.filetto3 {
    background-image: url("assets/img/filetto_grigio-dot.png");
}
.filetto2::before,
.filetto3::before,
.filetto2::after,
.filetto3::after {
    position: absolute;
}
@media(min-width: 420px) {
    .filetto2::before {
        content: url("assets/img/filetto_grigio-sx.png");
        left: -170px;
    }
    .filetto2::after {
        content: url("assets/img/filetto_grigio-dx.png");
        right: -170px;
    }
    .filetto3::before {
        content: url("assets/img/filetto_verde-sx.png");
        left: -170px;
    }
    .filetto3::after {
        content: url("assets/img/filetto_verde-dx.png");
        right: -170px;
    }
}
@media(min-width: 992px) {
    .filetto2,
    .filetto3 {
        width: calc(100% - 402px);
        max-width: 1110px;
    }
    .filetto2::before,
    .filetto3::before {
        left: -201px;
    }
    .filetto2::after,
    .filetto3::after {
        right: -201px;
    }
}

/* Bottoni */
.blog-pagination a.prev.page-numbers,
.blog-pagination a.next.page-numbers,
a.button {
    display: inline-block;
    padding: 5px 75px;
    border-radius: var(--border-radius);
    font-size: 21px;
    text-decoration: none;
    transition: all 120ms ease;
}
a.button.big {
    padding: 9px 120px;
}
a.button.tall {
    padding-top: 9px;
    padding-bottom: 9px;
}
.blog-pagination a.prev.page-numbers,
.blog-pagination a.next.page-numbers,
a.button.short {
    padding-left: 50px;
    padding-right: 50px;
}
a.button.large {
    padding-left: 120px;
    padding-right: 120px;
}
a.button,
.button.primary {
    border-top-right-radius: 0;
    background-color: var(--acid-green);
    color: var(--light-color-text);
    transition: all 120ms ease;
}
a.button:hover,
a.button.primary:hover {
    border-bottom-left-radius: 0;
    border-top-right-radius: var(--border-radius);
    transition: all 120ms ease;
}
.button.secondary {
    border-top-right-radius: var(--border-radius);
    border-bottom-left-radius: 0;
    background-color: var(--teal-blue);
    transition: all 120ms ease;
}
a.button:hover,
a.button.secondary:hover {
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--border-radius);
    transition: all 120ms ease;
}
a.button.alternative-shape {
    border-radius: var(--border-radius);
    border-bottom-right-radius: 0;
    transition: all 120ms ease;
}
a.button.alternative-shape:hover {
    border-radius: var(--border-radius);
    border-top-right-radius: 0;
    transition: all 120ms ease;
}

/* Intro Pagine */
.page_intro {
    max-width: 684px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-weight: bold;
}

/* Call to action box */
.call-to-action {
    text-align: center;
}
.call-to-action p {
    font-family: var(--site-font);
    font-weight: var(--title-weight);
    letter-spacing: -0.01em;
    font-size: 2.3333333em;
    line-height: 1em;
    color: #444;
}

/* tag <mark> */
mark {
  font-weight: inherit;
  text-decoration: inherit;
  background-color: inherit;
  color: inherit;
}




/* ============================================   7.0 - Navigation  ============================================ */



/* ------------------------ https://codepen.io/shangle/pen/rmxgh ------------------------ */

/* Topbar */
@media(max-width: 560px) {
    .topbar > .container {
        flex-direction: column;
        justify-content: center;
    }
    .topbar .container > div.smart_contacts ul {
        padding: 8px 0;
        margin: 0;
        justify-content: space-around;
        flex-wrap: wrap;
    }
    .topbar nav.contacts ul li {
        margin: 0 16px;
        min-width: 150px;
        text-align: center;
    }
    .menu-lingue-container .language_menu {
        margin: 0 0 8px;
    }
}
@media(min-width: 561px) {
    .topbar > .container {
        flex-direction: row;
        justify-content: flex-end;
    }
    .topbar nav.contacts ul li {
        margin-right: 38px;
    }
}
.topbar {
    background-color: var(--acid-green);
    color: var(--light-color-text);
}
.topbar .container {
    display: flex;
    align-items: center;
}
.topbar .container > div ul,
.topbar .container > div ul li a {
    display: flex;
    justify-content: flex-end;
}
.topbar .container > div ul li a:hover {
    text-decoration: underline;
}
.topbar nav.contacts ul li {
    display: inline-block;
    font-size: 0.666666667em;
}
.topbar a {
    color: var(--light-color-text);    
}
.topbar ul {
    margin: 4px 0 4px;
    line-height: 1.3em;
}
.topbar nav > ul,
.topbar nav .language_menu {
    list-style: none;
    font-weight: bold;
}
.topbar .contacts svg {
    margin-right: 8px;
}
.topbar .contacts .email svg {
    margin-top: 4px;
}
.topbar .contacts .tel svg {
    margin-top: 2px;
}
.topbar nav .language_menu {
    text-transform: uppercase;
}
.topbar nav .language_menu li {
    font-size: 0.77777778em;
    line-height: 1.15em;
    border-bottom: 2px solid transparent;
}
.topbar nav .language_menu li ~ li {
    margin-left: 8px;
}
.topbar nav .language_menu .menu-item:hover,
.topbar nav .language_menu .wpml-ls-current-language {
    border-bottom: 2px solid var(--light-color-text);
}

/* ------------------- DA VALUTARE SE VA BENE ANCHE PER INTRA ------------------- */

/* MENU PRINCIPALE */

.main_nav {
    padding: 20px 0;
}
.main_nav > .main_menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.intra-logo {
  width: 113px;
  height: auto;
}
.main_menu_without_logo ul.menu {
    display: flex;
    list-style: none;
    text-transform: uppercase;
    font-weight: bold;
}
.main_menu_without_logo ul.menu > li {
    margin-left: 40px;
    font-size: 0.833333333em;
}
.main_menu_without_logo ul.menu li a {
    color: var(--menu-color-text);
}

/* Sottomenu */
.main_menu ul li ul.sub-menu {
    display: none;
}
.main_menu ul li:active ul.sub-menu,
.main_menu ul li:active ul.sub-menu li,
.main_menu ul li:hover ul.sub-menu,
.main_menu ul li:hover ul.sub-menu li {
    display: block;
}
.main_menu ul li ul {
    position: absolute;
    margin: 0;
    padding: 12px 0 0 0;
    z-index: 9999;
}
.main_menu > ul > li:active > ul.sub-menu,
.main_menu > ul > li:hover > ul.sub-menu {
    margin-top: 21px;
    background-color: #ffce00;
    padding: 36px;
}
.main_menu ul li:active ul.sub-menu > li,
.main_menu ul li:hover ul.sub-menu > li {
    text-align: left;
    padding: 13px 26px 0;
    background-color: var(--rof-red);
}
.main_menu ul li:active ul.sub-menu > li > a,
.main_menu ul li:hover ul.sub-menu > li > a {
    color: #fff;
}
.main_menu ul li:active ul.sub-menu > li:last-child,
.main_menu ul li:hover ul.sub-menu > li:last-child {
    padding-bottom: 12px;
}
.main_menu ul li:active ul.sub-menu > li > a:hover,
.main_menu ul li:hover ul.sub-menu > li > a:hover {
    text-decoration: underline;
}
.main_menu ul li:active ul.sub-menu,
nav ul li:active ul.sub-menu li,
.main_menu ul li:hover ul.sub-menu,
nav ul li:hover ul.sub-menu li {
    display: block;
}

/* Burger responsive */
.burger {
    width: 28px;
    font-family: var(--site-font), sans-serif;
    text-transform: uppercase;
    font-size: 1.8em;
    margin: 0;
}
a.burger {
    display: flex;
    align-items: center;
    text-align: center;
    padding-bottom: 6px;
}
ul.burger {
    display: inline-block;
    margin-right: 0px;
}
.burger li {
    width: 28px;
    height: 4px;
    border-radius: 4px;
    margin: 3px 0 0 0;
    float: left;
    display: inline-block;
    background-color: var(--acid-green);
}
.burger:hover li,
.burger:active li {
    background-color: var(--teal-blue);
}
.burger.open li {
    background-color: #d9dde1;
}
.burger > .burger, .burger > span {
    display: inline-block;
}
.burger > span {
    color: #999;
}
@media (min-width: 992px) {
    a.burger {
        display: none;
    }
    .main_menu_without_logo .current-menu-item a,
    .main_menu_without_logo ul.menu a:hover {
        border-bottom: 3px solid var(--acid-green);
    }
}
@media (max-width: 991px) {
    .main_menu_wp_div {
        display: none;
        text-decoration: none;
    }
    .main_menu_without_logo .current-menu-item a {
        text-decoration: underline;
        width: 100%;
    }
    .main_nav {
        padding: 12px 0;
    }
    .main_menu.container {
        flex-direction: column;
    }
    .main_menu_without_logo {
        width: 100%;
        background-color: #eee;
        margin-top: 10px;
    }
    .logo {
        display: flex;
        justify-content: space-between;
        width: 100%;
    }
    .logo img {
        margin: auto;
        width: 90px;
    }
    .menu_responsive_show {
        display: block;
    }
    .menu_responsive_show > ul {
        width: 100%;
        margin: 0;
        justify-content: center;
        flex-direction: column;
    }
    .menu_responsive_show ul li {
        box-sizing: border-box;
        text-align: center;
    }
    .menu_responsive_show > ul.menu > li {
        margin-left: 0;
        padding: 8px;
        border-bottom: 5px solid #fff;
        width: 100%;
    }
    .menu_responsive_show > ul > li:hover {
        background-color: #fff
    }
    .menu_responsive_show > ul > li a,
    .menu_responsive_show > ul > li a:hover {
        border: none;
    }
    /* Sottomenu */
    .menu_responsive_show > ul > li > ul.sub-menu {
        display: none;
        padding: 0;
        margin-top: 8px;
    }
    .menu_responsive_show > ul > li:active > ul.sub-menu,
    .menu_responsive_show > ul > li:hover > ul.sub-menu {
        display: block;
    }
    .menu_responsive_show > ul > li > ul {
        position: relative;
        margin: 0;
    }
    .menu_responsive_show > ul > li:active > ul.sub-menu,
    .menu_responsive_show > ul > li:hover > ul.sub-menu {
        position: relative;
        background-color: transparent;
    }
    .menu_responsive_show > ul > li > ul.sub-menu,
    .menu_responsive_show > ul > li:active > ul.sub-menu,
    .menu_responsive_show > ul > li:hover > ul.sub-menu {
        padding: 0;
        margin-top: 16px;
    }
    .menu_responsive_show > ul > li > ul.sub-menu > li,
    .menu_responsive_show > ul > li:active > ul.sub-menu > li,
    .menu_responsive_show > ul > li:hover > ul.sub-menu > li {
        padding: 8px 16px;
        margin-top: 0;
        max-width: 100%;
        box-sizing: border-box;
        text-align: center;
    }
}

/* - end //------------------- DA VALUTARE SE VA BENE ANCHE PER INTRA ------------------- */


/* Legal menu // Footer */
.legal_menu_sidebar {
    min-height: 54px;
    box-sizing: border-box;
    display: flex;
    
    line-height: 1em;
    font-size: 1.111111111em;
    
    background-color: var(--footer-dark-grey-background);
}
.legal_menu_sidebar .widget_nav_menu ul {
    display: flex;
    justify-content: center;
    margin: 17px 0;
    font-size: inherit;
    
    list-style: none;
    text-transform: uppercase;
}
.legal_menu_sidebar .widget_nav_menu ul li {
    padding: 0 6px;
    font-size: inherit;
}
.legal_menu_sidebar .widget_nav_menu ul li ~ li:before {
    content: '•';
    display: inline;
    padding-right: 12px;
    color: var(--footer-light-grey-background);
}
.legal_menu_sidebar .widget_nav_menu ul a {
    font-size: inherit;
    text-decoration: none;
    color: var(--footer-light-grey-text);
}
.legal_menu_sidebar .widget_nav_menu ul a:hover {
    text-decoration: underline;
}


/* Archive and single pagination */
.blog-pagination .nav-links,
.naviga-tra-post {
    display: flex;
    flex-wrap: wrap;
    margin: 72px 0 94px;
}
.blog-pagination .nav-links {
    justify-content: center;    
}
.naviga-tra-post {
    justify-content: space-between;
}
.blog-pagination .nav-links .page-numbers {
    display: block;
    margin-bottom: 10px;
}

.blog-pagination a.prev.page-numbers,
.blog-pagination a.next.page-numbers {
    background-color: var(--teal-blue);
    color: var(--light-color-text);
    line-height: 1.6em;
}
.blog-pagination .page-numbers.current,
.blog-pagination a.page-numbers:not(.prev):not(.next) {
    display: inline-block;
    width: calc(1.7 * var(--border-radius));
    height: calc(1.7 * var(--border-radius));
    box-sizing: border-box;
    border-radius: var(--border-radius);
    font-size: 21px;
    line-height: 1em;
    padding: 12px 18px;

    color: var(--light-color-text);
    text-decoration: none;
    transition: all 120ms ease;
}
.blog-pagination a.page-numbers:not(.prev):not(.next) {
    background-color: var(--teal-blue);
    margin: 0 9px 4px;
}
.blog-pagination .page-numbers.current {
    background-color: var(--acid-green);
}
.blog-pagination .page-numbers.dots {
    font-size: 1.5em;
    line-height: 1.5em;
    margin: 0 10px;
    height: calc(1.7 * var(--border-radius));
}
.blog-pagination a.prev.page-numbers {
    border-bottom-left-radius: 0;
}
@media(min-width: 361px) {
    .blog-pagination a.prev.page-numbers {
        margin-right: 36px;
    }
}
@media(min-width: 361px) {
    .blog-pagination a.next.page-numbers {
        margin-left: 36px;
    }
}
.blog-pagination a.prev.page-numbers:hover,
.naviga-tra-post a[rel="prev"]:hover {
    border-radius: var(--border-radius);
    border-bottom-left-radius: 0;
}
.blog-pagination a.page-numbers:not(.prev):not(.next):hover,
.blog-pagination a.prev.page-numbers:hover,
.naviga-tra-post a[rel="prev"]:hover {
    background-color: var(--acid-green);
    -webkit-transition: background-color 120ms linear;
    -ms-transition: background-color 120ms linear;
    transition: background-color 120ms linear;
}
.blog-pagination a.next.page-numbers,
.naviga-tra-post a[rel="next"] {
    border-radius: var(--border-radius);
    border-top-right-radius: 0;
}
.blog-pagination a.next.page-numbers:hover,
.naviga-tra-post a[rel="next"]:hover {
    background-color: var(--acid-green);
    -webkit-transition: background-color 120ms linear;
    -ms-transition: background-color 120ms linear;
    transition: background-color 120ms linear;
    
    border-top-right-radius: var(--border-radius);
    border-top-right-radius: 0;
}
@media(max-width: 360px) {
    .blog-pagination .page-numbers.current,
    .blog-pagination .page-numbers.dots,
    .blog-pagination a.page-numbers:not(.prev):not(.next) {
/*        display: none;
*/    }
}



/* ============================================   8.0 - Layout  ============================================ */

/* --------------- Front Page --------------- */
/* intro */
.home_intro {
    padding-top: 48px;
}
.home_intro,
.img_text_section {
    text-align: center;
}
.img_text_section {
    box-sizing: border-box;
}
.img_text_section > * {
    margin: auto;
}
.first_img .text_column,
.first_text .text_column {
    margin-bottom: 60px;    
}
.front-page a.button {
    padding-top: 8px;
    padding-bottom: 8px;
}
article.front-page .home_intro h2 {
    margin: 0 auto 10px;
    max-width: 600px;
    font-size: 3.77777778em;
    line-height: 0.882352941176471em;
    letter-spacing: -0.01em;
}
article.front-page h2 {
    font-size: 3.111111111em;
    letter-spacing: -0.029em;
    margin-bottom: 24px;
}
.home_intro .intro {
    font-size: 1.55555556em;
}
/* who */
.home_who {
    margin: 120px auto;
}
@media (min-width: 1000px) {
    .img_text_section {
        text-align: initial;
    }
    .home_who .intro_sezione {
        max-width: 416px;
    }
}
/* what */
@media (min-width: 1000px) {
    .home_what .intro_sezione {
        max-width: 512px;
    }
}
.intro_what {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.intro_what img {
    margin: 90px 0 0 0;
    margin-left: calc(1.5rem * -1.5);
}
.home_what .areas,
.home_what .services {
    list-style: none;
}
.home_what .areas {
    padding-top: 20px;
    display: flex;
    flex-flow: column;
    flex-wrap: wrap;
    box-sizing: border-box;
    text-align: center;
}
@media(min-width: 576px) {
    .home_what .areas {
        max-height: 900px;
    }
}
.area_container {
    min-width: 210px;
    margin-bottom: 72px;
}
/*
.area_container > div > a {
    margin-bottom: 32px;
    padding: 30px 12px;
    margin-left: 15px;
    margin-right: 15px;
    border-radius: 28px;
    border: 4px solid transparent;
    border-bottom-right-radius: 0;
}
.area_container > div > a:hover {
    border: 4px solid var(--acid-green);
    box-shadow: 0 0 21px #ddd;
}*/
.areas .area {
    margin: 0 auto 24px;
    font-size: 1.16666667em;
    text-transform: uppercase;
}
.areas .area_container a {
    text-decoration: none;
}
.areas .area_container a:hover ul {
    color: var(--color-text);
}
.areas .area_container:first-child {
    margin-top: 40px;
}
.areas .services li {
  font-size: 0.875em;
  line-height: 1.2em;
}
/* -- correzioni immagini */
.area_container img {
    position: relative;
    left: 10px;
}
.area_dati_container img {
    position: relative;
    left: -4px;
}
.area_conoscenze_container img {
    position: relative;
    left: 8px;
}
/* blog */
.home_blog {
    padding: 48px 0 0;
    background-color: var(--light-blue-background);
}
.home_blog div.intro {
    margin-bottom: 100px;
}
.intro_home_blog_heading {
    text-align: center;
}
.home_blog .intro {
    color: #727272;
}

/* newsletter */
.home_newsletter {
    padding: 42px 0;
}
.home_newsletter .text_column {
    max-width: 542px;
}
.home_newsletter .intro_sezione {
    font-weight: bold;
    display: block;
    margin: 0 0 18px;
    color: #727272;
}
.home_newsletter .form_container,
.home_newsletter form,
.home_newsletter input {
    text-align: center;
}



/* --------------- Chi siamo --------------- */
.chisiamo_intro {
    text-align: center;
    padding-top: 64px;
}
.chisiamo_intro .page_intro {
    margin-bottom: 64px;
}
.chisiamo_main_content {
    margin: auto;
}
.paragrafo_chisiamo_container {
    display: flex;
    flex-flow: column;
    margin-bottom: 120px;
}
article .chisiamo_intro h1 {
    margin-top: 0;
}
.paragrafo_chisiamo_container .icona_paragrafo {
    display: flex;
    margin-bottom: 18px;
}
.paragrafo_chisiamo_container .paragrafo {
    max-width: 755px;
}
.paragrafo_chisiamo_container .paragrafo h2 {
    font-size: 3.1111111em;
    color: var(--acid-green);
    margin: 0 0 6px 0;
}
.paragrafo_chisiamo_container .paragrafo p:last-child {
    margin: 0;
}
.central_image_container {
    padding-left: 6%;
}
.chisiamo_intro .spiegazione_intra {
    margin-top: 64px;
}

.paragrafo_chisiamo_container > .paragrafo {
    position: relative;
}
.paragrafo_chisiamo_container > .paragrafo:not(.central_image_container)::before {
    position: absolute;
    top: 60px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}
@media(min-width: 992px) {
    .paragrafo_chisiamo_container:not(.no_text_container) {
        flex-flow: row;
    }
    .paragrafo_chisiamo_container .icona_paragrafo {
        margin-right: 28px;
        width: 245px;
        justify-content: flex-end;
    }
    .paragrafo_chisiamo_container .paragrafo {
        margin-left: 28px;
    }
}


.chisiamo_main_content .paragrafo_chisiamo_container:nth-of-type(6n+1) > .paragrafo::before {
    content: url('assets/img/colore_cs_1.svg');
}
.chisiamo_main_content .paragrafo_chisiamo_container:nth-of-type(6n+2) > .paragrafo::before {
    content: url('assets/img/colore_cs_2.svg');
    left: 32px;
}
.chisiamo_main_content .paragrafo_chisiamo_container:nth-of-type(6n+3) > .paragrafo::before {
    content: url('assets/img/colore_cs_3.svg');
}
.chisiamo_main_content .paragrafo_chisiamo_container:nth-of-type(6n+4) > .paragrafo::before {
    content: url('assets/img/colore_cs_4.svg');
    left: 12px;
}
.chisiamo_main_content .paragrafo_chisiamo_container:nth-of-type(6n+6) > .paragrafo::before {
    content: url('assets/img/colore_cs_5.svg');
    top: 23%;
    left: 25%;
}


/* --------------- Sezione Servizi --------------- */

/* Tutte le aree */
.intro_servizi .come_lavoriamo p {
    margin: 12px auto;
}
.blocco_singola_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.lista_aree > ul > li:nth-child(2n+1) > .blocco_singola_area {
    flex-flow: column-reverse;
}
.lista_aree > ul > li:nth-child(2n+1) > .blocco_singola_area .icona_area {
    height: 80px;
    width: auto;
}
.lista_aree > ul > li:nth-child(2n) > .blocco_singola_area {
    flex-flow: column-reverse;
}
.lista_aree > ul > li:nth-child(2n) > .blocco_singola_area .icona_area {
    height: 86px;
    width: auto;
}
@media(min-width: 992px) {
    .lista_aree > ul > li:nth-child(2n+1) > .blocco_singola_area {
        flex-flow: row;
    }
    .lista_aree > ul > li:nth-child(2n) > .blocco_singola_area {
        flex-flow: row-reverse;
        text-align: right;
    }
}
.blocco_singola_area .area_content {
    width: 386px; /* media query da fare */
}
.lista_aree ul {
    list-style: none;
}
.lista_aree > ul > li {
    margin-bottom: 190px;
}
.lista_aree .nome_singola_area {
    margin: 0 0 21px 0;
    font-size: 3.111111111em;
}
.descrizione_singola_area p {
    font-size: 1.33333333em;
}
/* Singola area */
.intro_area_titolo {
    display: flex;
    justify-content: center;
    align-items: center;
}
.title-block {
    margin-left: 18px;
}
.nome_post-type {
    text-transform: uppercase;
    color: var(--acid-green);
    font-weight: bold;
    font-size: 1.38888889em;
    margin-left: 3px;
}
h1.nome_area {
    margin: 0;
    text-align: left;
}
.intro_area_descrizione p {
    display: block;
    max-width: 610px;
    margin: 24px auto 36px;
    font-size: 1.55555556em;
    font-weight: bold;
    text-align: center;
    color: var(--teal-blue);
}
.intro_area_descrizione img {
    display: block;
    margin: auto;
}
.lista_servizi {
    list-style: none;
}
.sezione_lista_servizi {
    margin-top: 160px;
}
.lista_servizi > li {
    margin: 132px 0;
    position: relative;
}
.lista_servizi > li:after {
    position: absolute;
    bottom: -107px;
    left: calc(50vw - 50%);
}
/*
.lista_servizi > li:nth-child(2n+1):after {
    content: url('assets/img/filetto2.png');
}
.lista_servizi > li:nth-child(2n):after {
    content: url('assets/img/filetto3.png');
}
*/
.blocco_singolo_servizio {
    display: flex;
    flex-flow: column;
    align-items: center;
}
.blocco_singolo_servizio header {
    text-align: left;
    margin-bottom: 12px;
}
.descrizione_servizio {
    max-width: 700px;
}
@media(min-width: 1200px) {
    .blocco_singolo_servizio {
        align-items: flex-start;
        flex-flow: initial;
    }
    .descrizione_servizio {
        width: calc(100% - 285px);
        padding-right: 116px;
    }
    .blocco_singolo_servizio header {
        width: 260px;
        text-align: right;
        margin-right: 25px;
    }
}
@media(min-width: 1400px) {
    .blocco_singolo_servizio header {
        width: 315px;
        text-align: right;
        margin-right: 25px;
    }
}

.lista_servizi > li .descrizione_servizio {
    position: relative;
    padding: 0 25px;
}
@media(min-width: 1200px) {
    .lista_servizi > li .descrizione_servizio {
        padding-right: 0;
    }
}
.lista_servizi > li .descrizione_servizio::before {
    position: absolute;
    z-index: -1;
}
.lista_servizi > li:nth-child(6n+1) .descrizione_servizio::before { /* -------- /// 1 /// -------- */
    content: url('assets/img/colore_s_1.svg');
    top: 0;
    bottom: 0;
    left: 0;
}
.archivio_dati .lista_servizi > li:nth-child(6n+1) .descrizione_servizio::before { /* dati */
    top: -64px;
}
.lista_servizi > li:nth-child(6n+2) .descrizione_servizio::before { /* -------- /// 2 /// -------- */
    content: url('assets/img/colore_s_2.svg');
    top: 18px;
    right: 70px;
}
.archivio_esperienze .lista_servizi > li:nth-child(6n+2) .descrizione_servizio::before { /* esperienze */
    content: url('assets/img/colore_s_4.svg');
    top: -72px;
    left: 72px;
    right: initial;
}
.archivio_conoscenze .lista_servizi > li:nth-child(6n+2) .descrizione_servizio::before { /* conoscenze */
    top: -25px;
}
.lista_servizi > li:nth-child(6n+3) .descrizione_servizio::before { /* -------- /// 3 /// ------- */
    content: url('assets/img/colore_s_3.svg');
    bottom: 22px;
    left: 22px;
}
.archivio_esperienze .lista_servizi > li:nth-child(6n+3) .descrizione_servizio::before { /* esperienze */
    content: url('assets/img/colore_s_5.svg');
    left: 0;
    top: -36px;
    bottom: initial;
}
.archivio_dati .lista_servizi > li:nth-child(6n+3) .descrizione_servizio::before, /* dati */
.archivio_conoscenze .lista_servizi > li:nth-child(6n+3) .descrizione_servizio::before { /* conoscenze */
    top: -22px;
}
.lista_servizi > li:nth-child(6n+4) .descrizione_servizio::before { /* -------- /// 4 /// -------- */
    content: url('assets/img/colore_s_4.svg');
    top: 0;
    bottom: 0;
    left: 100px;
}
.archivio_esperienze .lista_servizi > li:nth-child(6n+4) .descrizione_servizio::before { /* esperienze */
    content: url('assets/img/colore_s_2.svg');
    top: -8px;
}
.archivio_dati .lista_servizi > li:nth-child(6n+4) .descrizione_servizio::before {/* dati */
    top: -64px;
}
.lista_servizi > li:nth-child(6n+5) .descrizione_servizio::before { /* -------- /// 5 /// -------- */
    content: url('assets/img/colore_s_5.svg');
    top: 42px;
    bottom: 0;
    right: 0;
}
.archivio_esperienze .lista_servizi > li:nth-child(6n+5) .descrizione_servizio::before { /* esperienze */
    content: url('assets/img/colore_s_3.svg');
    top: -42px;
}
.lista_servizi > li:nth-child(6n) .descrizione_servizio::before  { /* -------- /// 6 /// -------- */
    content: url('assets/img/colore_s_6.svg');
    top: -16px;
    bottom: 0;
    left: 80px;
}
h2.nome_servizio {
    text-transform: uppercase;
    color: var(--acid-green);
    font-weight: bold;
    font-size: 1.5em;
    margin: 0 0 12px 0;
}
.archivio_singola_area .call-to-action {
    text-align: center;
    margin-bottom: 130px;
}


/* --------------- Newsletter --------------- */
.newsletter_intro .testo_immagine {
    align-items: center;
    justify-content: space-between;
}
.newsletter_intro .testo_immagine .long_intro {
    color: #666;
    font-weight: bold;
}

.esempio_newsletter_container {
    max-width: 890px;
    border-left: 6px dotted var(--acid-green);
    border-right: 6px dotted var(--acid-green);
    padding: 42px 58px;
    margin: 0 auto;
}
.esempio_newsletter_container h3 {
    text-transform: uppercase;
    color: var(--teal-blue);
    font-size: 1.55555556em;
    margin: 0 0 4px 0;
}
.esempio_newsletter_container *:last-child {
    margin-bottom: 0;
}
.newsletter_form_iscrizione .motivo p {
    color: #444;
    font-size: 1.3333333em;
    line-height: 1.3333333em;
}
.newsletter_form_iscrizione .form_container .invito {
    font-size: 2.66666667em;
    line-height: 0.875em;
}
.newsletter_form_iscrizione .form_container,
.newsletter_form_iscrizione input {
    text-align: center;
}
.newsletter_form_iscrizione {
    margin-bottom: 90px;
}



/* --------------- Contatti --------------- */
.contatti_intro h1 {
    color: var(--acid-green);
}
.contatti_intro div.intro {
    color: var(--teal-blue);
    position: relative;
}
.contatti_intro .intro::before {
    content: url('assets/img/colore_cnt.svg');
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    z-index: -1;
}


.dati_contatto .dati_1 {
    display: flex;
    align-items: flex-end;
    margin: 60px auto 0;
    justify-content: center;
}
.dati_contatto .dati_1 img {
    object-fit: contain;
}
.lista_dati_intra { /* media query min-width: .... */
    padding-left: 68px;
}
.lista_dati_intra dt {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.33333333em;
    color: var(--acid-green);
}
.lista_dati_intra dd {
    margin: 0;
    font-size: 1.166666667em;
    line-height: 1.2em;
    margin-bottom: 42px;
}
.dati_contatto .dati_2 {
    margin: 0 auto 120px;
    text-align: center;
}

.mappa_segnaposto img {
    max-width: 100%;
    border-radius: 0 36px 36px;
    border: 5px solid transparent;
}
.mappa_segnaposto img:hover {
    border: 5px dotted var(--acid-green);
}

.form_container {
    max-width: 540px;
    margin: auto;
    position: relative;
}
.contatti_form_contatto .form_container:before {
    content: url('assets/img/Fumetto1.png');
    position: absolute;
    left: -210px;
    top: calc(50% - 112px);
}
.contatti_form_contatto .form_container:after {
    content: url('assets/img/Fumetti2.png');
    position: absolute;
    top: 28px;
    right: -190px;
}
.form_container .invito {
    text-align: center;
    font-size: 2em;
    line-height: 1em;
    font-weight: bold;
    color: var(--acid-green);
    margin-bottom: 16px;
}
.contatti_form_contatto {
    margin-bottom: 150px;
    margin-top: 120px; /* se inserita la mappa dati2 forse togliere il margin: 120px da dati2, invece di toglierlo da qua */
}



/* --------------- Singolo articolo --------------- */
.single-page .single-header {
    text-align: center;
}
.single-page .blog-category {
    margin: 30px auto 0;
    display: block;
}
.single-page .blog-category ul {
    list-style: none;
    line-height: 1em;
    margin: 0 auto;
}
.single-page .blog-category a {
    font-weight: bold;
    color: var(--acid-green);
    text-decoration: none;
    text-transform: lowercase;
}
.single-page .blog-category a:hover {
    color: var(--teal-blue);
}
.single-page .single-title {
    margin: 9px auto 48px;
    font-size: 3.77777778em;
    line-height: 0.99em;
}
.single-page .single-header > img,
.page .page-header > img { /* regola per le pagine di default */
    border-radius: 0 30px 30px;
    text-align: center;
    margin: auto;
}

.single-main-content {
    margin-top: 48px;
    display: flex;
    flex-flow: column;
}
.single-main-content dl {
    text-align: center;
    line-height: 1.26em;
}
.single-main-content dl dd {
    color: var(--teal-blue);
    text-transform: lowercase;
    margin-bottom: 8px;
}
.single-main-content dl dd ul {
    list-style: none;
    line-height: 1em;
    margin-bottom: 0;
}
.single-main-content dl dd a {
    color: var(--acid-green );
    text-decoration: none;
}
.single-main-content dl dd a:hover {
    color: var(--teal-blue);
}
.single-main-content dl dt {
    font-weight: bold;
}

@media(max-width: 991px) {
    .single-metadata {
        margin: 0 auto 48px;
    }
    .single-main-content dl {
        display: grid;
        grid-template-columns: max-content auto;
    }
    .single-main-content dt {
        grid-column-start: 1;
        text-align: right;
    }
    .single-main-content dd {
        grid-column-start: 2;
        text-align: left;
        margin-left: 12px;
    }
}

@media(min-width: 992px) {
    .single-main-content {
        justify-content: flex-start;
        flex-flow: initial;
    }
    .single-main-content .single-metadata,
    .single-main-content .single-content {
        padding-top: 10px;
    }
    .single-main-content .single-metadata {
        width: 303px;
        text-align: right;
        padding-right: 42px;
        padding-bottom: 10px;
    }
    .single-main-content dl {
        margin-top: 0;
        height: fit-content;
        border-right: 5px dotted var(--acid-green);
    }
    .single-main-content .single-content {
        max-width: 610px;
        padding-left: 42px;
        box-sizing: content-box;
    }
}
.single-main-content .single-content h4,
.single-main-content .single-content h2 {
    font-size: 24px; /* da modificare se si modificano gli h4 vecchi */
    line-height: 1em;
    text-transform: uppercase;
    display: inline-block;
    margin: 1em 0 0;
    color: var(--acid-green);
}

/* Immagini inserite nell'articolo */
.wp-block-gallery {
    max-width: 100%;
    margin: auto;
}
.wp-block-image {
    max-width: 100%;
    margin: auto;
}
.single-content img {
    max-width: 100%;
    height: auto;
}



/* --------------- Archivi blog e ricerca --------------- */
.intro_blog {
    margin-bottom: 100px;
}
.blog_nav {
    display: flex;
    justify-content: center;
}
.blog_nav .blog_intro_box {
    color: #666;
    font-weight: bold;
    font-size: 1.44444444em;
    line-height: 1.23076923em;
}
.blog_intro_box {
    background-image: url('assets/img/colore_bl.svg');
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.blog_nav .blog_intro_box p {
    font-size: inherit;
    line-height: inherit;
}
.blog_nav .archives_menu .category-menu {
    list-style: none;
    margin: 0;
    line-height: 0.8em;
}
@media(max-width: 992px) { /* step seguente 768px, oppure 992px */
    .blog_nav {
        flex-direction: column;
        align-items: center;
    }
    .blog_nav .archives_menu .category-menu {
        text-align: center;
    }
    .blog_nav .blog_intro_box {
        margin-top: 72px;
    }
}
@media(min-width: 992px) { /* step seguente 768px, oppure 992px */
    .blog_nav .archives_menu {
        max-width: 210px;
        padding-right: 21px;
    }
    .blog_nav .archives_menu .category-menu {
        text-align: right;
        padding-top: 6px;
    }
    .blog_nav .blog_intro_box {
        max-width: 550px;
        padding-left: 21px;
    }
}
.blog_nav .archives_menu .category-menu li a {
    display: inline-block;
    margin-bottom: 5px;
    
    text-transform: uppercase;
    font-size: 0.83333333em;
    font-weight: bold;
    color: var(--teal-blue);
    border-bottom: 3px solid transparent;
}
.blog_nav .archives_menu .category-menu li.current-cat a,
.blog_nav .archives_menu .category-menu li a:hover {
    border-bottom: 3px solid var(--acid-green);
}

.lista_risultati {
    display: flex;
    justify-content: flex-start;
}
.lista_risultati .single_archivio-blog {
    margin-bottom: 32px;
}
.lista_risultati .post-categories,
.lista_risultati h3 {
    margin: 0;
}
.lista_risultati .post-categories {
    list-style: none;
    font-size: 1em;
    line-height: 1em;
    font-weight: bold;
    text-transform: lowercase;
}
.lista_risultati .post-categories a {
    color: var(--teal-blue);
    text-decoration: none;
}
.lista_risultati .post-categories a:hover {
    color: var(--acid-green);
}
.lista_risultati h3 {
    font-size: 1.33333333em;
    line-height: 1.2em;
    margin-top: 8px;
}
.lista_risultati h3 a {
    text-decoration: none;
    color: var(--acid-green);
    text-transform: uppercase;
}
.lista_risultati h3 a:hover {
    color: var(--teal-blue);
}
.lista_risultati .tempo-di-lettura {
    font-size: 0.8333333em;
    color: #777;
}
.lista_risultati .excerpt_single {
    font-size: 1.166666667em;
    line-height: 1.2em;
    position: relative;
    padding-top: 21px;
}
.lista_risultati .excerpt_single:before {
    content: '';
    display: block;
    width: 13px;
    height: 2px;
    position: relative;
    top: -10px;
    background-color: var(--teal-blue);
}
.lista_risultati .excerpt_single p {
    font-size: inherit;
}
@media(min-width: 768px) {
    .lista_risultati .single_archivio-blog {
        margin-bottom: 72px;
    }
}
@media(min-width: 992px) {
    .lista_risultati .single_archivio-blog {
        padding-left: 0;
        padding-right: var(--archive-padding);
    }
}
@media(min-width: 1200px) {
    .lista_risultati .single_archivio-blog {
        margin-bottom: 90px;
    }
    .lista_risultati .single_archivio-blog:nth-of-type(3n+1) {
        padding-left: 0;
        padding-right: var(--archive-padding);
    }
    .lista_risultati .single_archivio-blog:nth-of-type(3n+2) {
        padding-left: var(--archive-padding);
        padding-right: var(--archive-padding);
    }
    .lista_risultati .single_archivio-blog:nth-of-type(3n) {
        padding-right: 0;
        padding-left: var(--archive-padding);
    }
}

.archive-category-title,
.archive-tag-title {
    margin: 4px 0 8px;
    font-size: 1.384615384615385em;
    color: var(--acid-green);
}

.search-form {
    max-width: 400px;
    margin: 0 auto 32px;
}
.search-form,
.search-form input {
    text-align: center;
    font-size: 1.16666667em;
}
.search_query {
    text-transform: uppercase;
    font-weight: bold;
    color: var(--acid-green);;
}
.search-results .blog_intro_box {
    border-left: 4px dotted var(--acid-green);
}

/* --------------- Footer e Sidebars --------------- */

body > .footer {
    background-color: var(--footer-light-grey-background);
}
.footer_sidebar {
    text-align: left;
}
body > .footer .owner_logo {
    text-align: center;
    padding: 36px 0;
}
body > .footer .info,
body > .footer .collab {
    display: flex;
}
body > .footer .collab {
    justify-content: flex-end;
}
body > .footer .info > .widget {
    width: 50%;
    margin-right: 20px;
}
body > .footer .collab > .widget {
    max-width: 38%;
    margin-right: 30px;
}
body > .footer .collab > .widget ~ .widget {
    margin-right: 0;
}
body > .footer .info span.linkedin {
    display: inline-block;
    margin-top: 12px;
}
.mini-logo {
    max-width: 156px;
    margin-top: 4px;
    display: inline-block;
    height: auto;
}
.mini-logo-plus {
    max-width: 160px;
    height: auto;
}
aside.copy_credits {
    border-top: 1px solid #b2b2b2;
    margin: 49px auto 0;
    padding-top: 34px;
    padding-bottom: 34px;
    display: flex;
    justify-content: space-between;
}


/* --------------- Page Template Default --------------- */
.page-template-default .page-header {
    max-width: 910px;
    margin: auto;
}
.page-template-default .page-content {
    max-width: 710px;
    margin: auto;
}
.page-main-content {
    margin: 48px auto 60px;
}


/* --------------- 404 --------------- */
.page-404 .page-title {
    max-width: 770px;
    margin-left: auto;
    margin-right: auto;
    color: var(--acid-green);
}
.page-404 .intro:first-child {
    font-size: 1.3em;
}
.page-404 .motivo {
    max-width: 500px;
    font-weight: normal;
}



/* ============================================   9.0 - Widgets  ============================================ */

/* General */
.widget {
    list-style: none;
    line-height: 1.166666667em;
}
.footer_content ul,
.footer_sidebar .widget {
    font-size: inherit;
}
/* Iubenda */
/* Valutare eventualmente ripescando codice da ROF */


