/*
Theme Name: Graffiti
Theme URI: https://graffitiweb.com/
Author: Graffiti Web
Author URI: https://graffitiweb.com/
Description: Tema Graffiti - Texor
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks, accessibility-ready
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: graffiti
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.
*/

@import './styleguide.css';

@font-face {
    font-family: 'ClashDisplay';
    src: url('./fonts/ClashDisplay-Regular.eot');
    src: url('./fonts/ClashDisplay-Regular.eot?#iefix') format('embedded-opentype'),
        url('./fonts/ClashDisplay-Regular.woff2') format('woff2'),
        url('./fonts/ClashDisplay-Regular.woff') format('woff'),
        url('./fonts/ClashDisplay-Regular.ttf') format('truetype'),
        url('./fonts/ClashDisplay-Regular.svg#ClashDisplay-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'ClashDisplay';
    src: url('./fonts/ClashDisplay-Medium.eot');
    src: url('./fonts/ClashDisplay-Medium.eot?#iefix') format('embedded-opentype'),
        url('./fonts/ClashDisplay-Medium.woff2') format('woff2'),
        url('./fonts/ClashDisplay-Medium.woff') format('woff'),
        url('./fonts/ClashDisplay-Medium.ttf') format('truetype'),
        url('./fonts/ClashDisplay-Medium.svg#ClashDisplay-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'ClashDisplay';
    src: url('./fonts/ClashDisplay-Extralight.eot');
    src: url('./fonts/ClashDisplay-Extralight.eot?#iefix') format('embedded-opentype'),
        url('./fonts/ClashDisplay-Extralight.woff2') format('woff2'),
        url('./fonts/ClashDisplay-Extralight.woff') format('woff'),
        url('./fonts/ClashDisplay-Extralight.ttf') format('truetype'),
        url('./fonts/ClashDisplay-Extralight.svg#ClashDisplay-Extralight') format('svg');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('./fonts/SuisseIntl-Regular.eot');
    src: url('./fonts/SuisseIntl-Regular.eot?#iefix') format('embedded-opentype'),
        url('./fonts/SuisseIntl-Regular.woff2') format('woff2'),
        url('./fonts/SuisseIntl-Regular.woff') format('woff'),
        url('./fonts/SuisseIntl-Regular.ttf') format('truetype'),
        url('./fonts/SuisseIntl-Regular.svg#SuisseIntl-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('./fonts/SuisseIntl-Medium.eot');
    src: url('./fonts/SuisseIntl-Medium.eot?#iefix') format('embedded-opentype'),
        url('./fonts/SuisseIntl-Medium.woff2') format('woff2'),
        url('./fonts/SuisseIntl-Medium.woff') format('woff'),
        url('./fonts/SuisseIntl-Medium.ttf') format('truetype'),
        url('./fonts/SuisseIntl-Medium.svg#SuisseIntl-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('./fonts/SuisseIntl-Light.eot');
    src: url('./fonts/SuisseIntl-Light.eot?#iefix') format('embedded-opentype'),
        url('./fonts/SuisseIntl-Light.woff2') format('woff2'),
        url('./fonts/SuisseIntl-Light.woff') format('woff'),
        url('./fonts/SuisseIntl-Light.ttf') format('truetype'),
        url('./fonts/SuisseIntl-Light.svg#SuisseIntl-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('./fonts/SuisseIntl-UltraLight.eot');
    src: url('./fonts/SuisseIntl-UltraLight.eot?#iefix') format('embedded-opentype'),
        url('./fonts/SuisseIntl-UltraLight.woff2') format('woff2'),
        url('./fonts/SuisseIntl-UltraLight.woff') format('woff'),
        url('./fonts/SuisseIntl-UltraLight.ttf') format('truetype'),
        url('./fonts/SuisseIntl-UltraLight.svg#SuisseIntl-UltraLight') format('svg');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

html::-webkit-scrollbar { display: none; }
html { -ms-overflow-style: none; scrollbar-width: none; }
body { position:relative; background-color:var(--color-darkgray); }
a { -webkit-appearance:none; text-decoration:none; color:inherit; }
a:hover { color:inherit; }

:root {
    --color-black:#201A1A;
    --color-red:#D51801;
    --color-darkgray:#796B6B;
    --color-lightgray:#E3DFE0;
    --color-white:#FFFFFF;
    --color-hover-footer:#524848;

    --g2k-min-vw:767;
    --g2k-max-vw:1200;
    --g2k-min-vw-px:calc(var(--g2k-min-vw) * 1px);
    --g2k-max-vw-px:calc(var(--g2k-max-vw) * 1px);

    --g2k-h1-min-font-size:45;
    --g2k-h1-max-font-size:110;
    --g2k-h1-min-font-size-px:calc(var(--g2k-h1-min-font-size) * 1px);
    --g2k-h1-max-font-size-px:calc(var(--g2k-h1-max-font-size) * 1px);
    --g2k-h1-min-line-height:45;
    --g2k-h1-max-line-height:110;
    --g2k-h1-min-line-height-px:calc(var(--g2k-h1-min-line-height) * 1px);
    --g2k-h1-max-line-height-px:calc(var(--g2k-h1-max-line-height) * 1px);

    --g2k-h2-min-font-size:33;
    --g2k-h2-max-font-size:70;
    --g2k-h2-min-font-size-px:calc(var(--g2k-h2-min-font-size) * 1px);
    --g2k-h2-max-font-size-px:calc(var(--g2k-h2-max-font-size) * 1px);
    --g2k-h2-min-line-height:38;
    --g2k-h2-max-line-height:76;
    --g2k-h2-min-line-height-px:calc(var(--g2k-h2-min-line-height) * 1px);
    --g2k-h2-max-line-height-px:calc(var(--g2k-h2-max-line-height) * 1px);

    --g2k-h3-min-font-size:30;
    --g2k-h3-max-font-size:45;
    --g2k-h3-min-font-size-px:calc(var(--g2k-h3-min-font-size) * 1px);
    --g2k-h3-max-font-size-px:calc(var(--g2k-h3-max-font-size) * 1px);
    --g2k-h3-min-line-height:33;
    --g2k-h3-max-line-height:54;
    --g2k-h3-min-line-height-px:calc(var(--g2k-h3-min-line-height) * 1px);
    --g2k-h3-max-line-height-px:calc(var(--g2k-h3-max-line-height) * 1px);

    --g2k-h4-min-font-size:23;
    --g2k-h4-max-font-size:30;
    --g2k-h4-min-font-size-px:calc(var(--g2k-h4-min-font-size) * 1px);
    --g2k-h4-max-font-size-px:calc(var(--g2k-h4-max-font-size) * 1px);
    --g2k-h4-min-line-height:27;
    --g2k-h4-max-line-height:36;
    --g2k-h4-min-line-height-px:calc(var(--g2k-h4-min-line-height) * 1px);
    --g2k-h4-max-line-height-px:calc(var(--g2k-h4-max-line-height) * 1px);

    --buttons-height:70px;
    --buttons-width:var(--buttons-height);
    --buttons-border-width:2px;
    --buttons-border-radius:100px;

    --header-x-padding:72px;
    --header-y-padding:45px;
    --header-logo-height:125px;

    --page-single-column:calc(((100vw - (var(--header-x-padding) * 2)) / 100) * 8.33334);
    --page-x-padding:calc(var(--page-single-column) + var(--header-x-padding));
    /*--page-x-margin-indentazione:0px 8.3333% 0px 25%;*/
    --page-x-margin-indentazione:0px var(--page-single-column) 0px calc(var(--page-single-column) * 3);
}

.bg-black { background-color:var(--color-black) !important; }
.bg-red { background-color:var(--color-red) !important; }
.bg-darkgray { background-color:var(--color-darkgray) !important; }
.bg-lightgray { background-color:var(--color-lightgray) !important; }
.bg-white { background-color:var(--color-white) !important; }

.color-black { color:var(--color-black) !important; }
.color-red { color:var(--color-red) !important; }
.color-darkgray { color:var(--color-darkgray) !important; }
.color-lightgray { color:var(--color-lightgray) !important; }
.color-white { color:var(--color-white) !important; }

.font-family-primary { font-family:Verdana, Geneva, Tahoma, sans-serif; }
.font-family-secondary { font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif; }
.font-weight-300 { font-weight:300 !important; }
.font-weight-400 { font-weight:400 !important; }

h1, .h1 {   font-size:calc(var(--g2k-h1-min-font-size-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h1-max-font-size) - var(--g2k-h1-min-font-size)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            line-height:calc(var(--g2k-h1-min-line-height-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h1-max-line-height) - var(--g2k-h1-min-line-height)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            font-family:'ClashDisplay'; font-weight:400; margin-bottom:0; }
h2, .h2 {   font-size:calc(var(--g2k-h2-min-font-size-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h2-max-font-size) - var(--g2k-h2-min-font-size)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            line-height:calc(var(--g2k-h2-min-line-height-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h2-max-line-height) - var(--g2k-h2-min-line-height)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            font-family:'ClashDisplay'; font-weight:500; margin-bottom:0; }
h3, .h3 {   font-size:calc(var(--g2k-h3-min-font-size-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h3-max-font-size) - var(--g2k-h3-min-font-size)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            line-height:calc(var(--g2k-h3-min-line-height-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h3-max-line-height) - var(--g2k-h3-min-line-height)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            font-family:'SuisseIntl'; font-weight:500; margin-bottom:0; }
h4, .h4 {   font-size:calc(var(--g2k-h4-min-font-size-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h4-max-font-size) - var(--g2k-h4-min-font-size)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            line-height:calc(var(--g2k-h4-min-line-height-px) + calc(clamp(var(--g2k-min-vw-px),100vw,var(--g2k-max-vw-px)) - var(--g2k-min-vw-px)) * calc((var(--g2k-h4-max-line-height) - var(--g2k-h4-min-line-height)) / (var(--g2k-max-vw) - var(--g2k-min-vw))));
            font-family:'SuisseIntl'; font-weight:500; margin-bottom:0; }
p, .p,
li, .li {   font-size:19px; line-height:23px; margin-bottom: 0;
            font-family:'SuisseIntl'; font-weight:400; } @media screen and (min-width:767.5px) { p, .p, li, .li { font-size:18px; line-height:24px; } }
.cta, a.button {    font-size:25px;
                    font-family:'SuisseIntl'; font-weight:400; }

/* Bottoni */

a.button {
    display:inline-flex;
    justify-content: flex-end;
    align-items:center;
    height:var(--buttons-height);
    -webkit-appearance:none;
    border:0;
    background:transparent;
    cursor:pointer;
    text-decoration:none;
    color:inherit;
    line-height:calc(var(--buttons-height) - calc(var(--buttons-border-width) * 2));
    border-radius:var(--buttons-border-radius);
    position:relative;
    overflow:hidden;
    transition:0.2s ease all;
}
a.button:not(.static) { width:var(--buttons-width); }
a.button span.testo {
    margin-left:68px;
    position:relative;
    top:3px;
}
a.button img {
    aspect-ratio: 1/1;
    width:32px;
    height:32px;
    /*           w_btn bord_btn w_img   */
    margin:0 calc((70px - 4px - 32px) / 2);
    transition:0.2s ease all;
}
a.button img.hover { position:absolute; opacity:0; display:inline-flex; }
a.button.hovered img.hover,
a.button:hover img.hover { opacity:1; }
a.button.positive {
    border:var(--buttons-border-width) solid var(--color-black);
    color:var(--color-black);
}
a.button.negative {
    border:var(--buttons-border-width) solid var(--color-white);
    color:var(--color-white);
}
a.button.positive.hovered,
a.button.positive:hover {
    border:var(--buttons-border-width) solid var(--color-white);
    color:var(--color-white);
}
a.button.negative.hovered,
a.button.negative:hover {
    border:var(--buttons-border-width) solid var(--color-white);
    background-color: var(--color-white);
    color:var(--color-black);
}

input:not([type="checkbox"]),
select,
textarea {
    -webkit-appearance:none;
    background:transparent;
    cursor:pointer;
    text-decoration:none;
    color:inherit;
    border: 2px solid var(--color-darkgray);
    border-radius:100px;
    height:var(--buttons-height);
    padding:0 35px;
    transition:border-color 0.3s ease;
}
input:not([type="checkbox"]).wpcf7-not-valid,
select.wpcf7-not-valid,
textarea.wpcf7-not-valid {
    border-color:var(--color-red);
}
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff;
    transition: background-color 5000s ease-in-out 0s;
    box-shadow: inset 0 0 20px 20px #23232329;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline:0;
}

a.button.static img[src$="plus_button.svg"] {
    transition:0.7s ease-out transform;
}
a.button.static:hover img[src$="plus_button.svg"] {
    transform: rotate(180deg);
    filter:invert(1);
}

::placeholder,
input { 
    font-size:18px !important;
}

/* z-index */

.body-wrapper { z-index:2; }
header { z-index:3; }

header .logo-container { z-index:3; }
header .hamburger-open-container { z-index:1; }
header .fullscreen-menu-container .fullscreen-menu-background { z-index:-1; }

.content-container > img.immagine-header { z-index:1; }
.content-container > section { z-index:2; }

/* Menu */

header { position:fixed; top:0; left:0; width:100%; }
header .logo-container { position:absolute; top:var(--header-y-padding); left:var(--header-x-padding); }
header .logo-container img.logo { height:var(--header-logo-height); }
header .logo-container img.logo.clone { position:absolute; top:0; left:0; opacity:0; }
body:not(.home) header .logo-container img.logo:not(.clone) { opacity:0; }
body:not(.home) header .logo-container img.logo.clone { opacity:1; }
header .hamburger-open-container { position:absolute; top:var(--header-y-padding); right:var(--header-x-padding); }
header .hamburger-open-container img { padding:10px 0; }
header .hamburger-open-container svg:hover { cursor:pointer; }
header .hamburger-open-container svg path { transition:0.5s ease all; }
header .hamburger-open-container svg.aperto path:first-child { opacity:0; }
header .hamburger-open-container svg.aperto path:first-child { transform:translateY(50%); }
header .hamburger-open-container svg.aperto path:last-child { transform:translateY(-50%); }
header .fullscreen-menu-mask { display:inline-block; position:absolute; top:0; left:0; width:0; height:0; transition:1s ease-in-out opacity; overflow:hidden; opacity:0; backdrop-filter:blur(20px); }
header .fullscreen-menu-mask .fullscreen-menu-background { position:absolute; top:0; left:0; width:100%; height:100%; z-index:-1; opacity:0.35; background-color:transparent; transition:1s ease-in-out all; }
header .fullscreen-menu-mask .fullscreen-menu-container { width:100%; height:100%; opacity:0; transition:all 1s ease-in-out 1.15s; padding:var(--header-y-padding) var(--header-x-padding); }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-alta { display:flex; flex-direction:row; justify-content:flex-end; gap:50px; width:100%; padding-right:var(--page-single-column); }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-alta > * { width:calc(var(--page-single-column) * 2); }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-alta .selettore-lingua-container { text-align:right; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-alta .selettore-lingua-container .separatore { padding:0 32px; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-centrale { margin-left:var(--page-single-column); }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-centrale .menu-item { transition:color 0.2s ease-in-out; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-centrale .menu-item:hover { color:var(--color-red); }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-centrale .menu-item-number { width:var(--page-single-column); padding-right:30px; display:inline-block; text-align:right; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-bassa { position:absolute; bottom:0; left:0; width:100%;  padding:0 var(--header-x-padding) 45px; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-bassa .footer-top-container { display:flex; }
header .fullscreen-menu-mask .fullscreen-menu-container .fascia-bassa .footer-top-container > div { flex-grow:1; }
header .fullscreen-menu-mask.aperto { width:100vw; height:100dvh; opacity:1; }
header .fullscreen-menu-mask.uscendo { width:100vw; height:100dvh; }
header .fullscreen-menu-mask.aperto .fullscreen-menu-background { background-color:white; }
header .fullscreen-menu-mask.aperto .fullscreen-menu-container { opacity:1; }

/* Footer */

#fake-footer { width:1px; }
footer {
    background-color: var(--color-darkgray);
    padding:var(--header-y-padding) var(--header-x-padding);
    width:100vw; height:100dvh;
    min-height:567px;
    display:flex;
    flex-direction: column;
    justify-content: space-between;
}
footer#footer-nascosto { position:absolute; top:0; left:0; opacity:0; }
footer:not(#footer-nascosto) { position:fixed; top:0; left:0; }
footer .footer-top { display:flex; gap:158px; }
footer .footer-top .logo img { width:110px; opacity:0; }
footer .footer-top .altro { display:flex; flex-grow:1; margin-left:calc(var(--page-single-column) * 2); }
footer .footer-top .altro .menu { width:40%; display:flex; flex-direction:column; gap:42px; }
footer .footer-top .altro .contatti { width:60%; }
footer .footer-top .altro .contatti > .testo { margin-top:42px; }
footer .footer-top .altro .contatti .link { margin-top:60px; }
footer .footer-top .altro .contatti .link a.button.negative:hover { color:var(--color-darkgray); }
footer .footer-top .altro * .sottotitolo { color:white; text-transform:uppercase; }
.footer-bottom { padding-left:calc(var(--page-single-column) * 2); padding-top:110px; display:flex; }
.footer-bottom .info { width:40%; }
.footer-bottom .info p { margin-bottom:0; }
.footer-bottom .credits { width:40%; }
.footer-bottom .socials { width:20%; }
.footer-bottom .credits a,
.footer-bottom .socials a,
footer .footer-top .altro .menu .voce a { transition:color 0.2s ease-in-out; }
.footer-bottom .credits a.hovered,
.footer-bottom .socials a.hovered,
footer .footer-top .altro .menu .voce a.hovered,
.footer-bottom .credits a:hover,
.footer-bottom .socials a:hover,
footer .footer-top .altro .menu .voce a:hover { color:var(--color-hover-footer); }

/* Mouse Follower */
.mouse-follower { display:none !important; }
body .mf-cursor { top:-100px; left:150px; }
body .mf-cursor-media { width:359px; height:467px; }
body .mf-cursor.-media .mf-cursor-media-box { transform:scale(1); border-radius:30px; }
body .mf-cursor-media img { border-radius:0; }

/* Pagine */

body.page:not(.home) .content-container { padding-top:260px; }
.content-container { position:relative; }
.content-container > img.immagine-header { position:absolute; top:0; left:0; width:100%; height:auto; }
.content-container > section { position:relative; }
.content-container > section.fluid { margin:0 var(--header-x-padding); }
.content-container > section.fluid .extend { margin-left:calc(var(--header-x-padding) * -1); margin-right:calc(var(--header-x-padding) * -1); }
.content-container > section:not(.fluid) { margin:0 var(--page-x-padding); }
.content-container > section:not(.fluid) .extend { margin-left:calc(var(--page-x-padding) * -1); margin-right:calc(var(--page-x-padding) * -1); }

.content-container > section:not(:has(+ section.spaziatura)) { padding-bottom:190px; }

.content-container > section *:has(> .cerchio-bianco) { position:relative; display:flex; }
.content-container > section .cerchio-bianco { position:absolute; left:calc(var(--page-single-column) * -1); filter: drop-shadow( 0px 0px 30px rgba(255, 26, 14, .6)); }

    /* Visual */

    .content-container section.visual { background-size:cover; padding-top:540px; }
    .content-container section.visual .titolo-container .titolo { background: linear-gradient(92.23deg, #D71700 0.23%, #8F2100 99.77%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; max-width:calc(var(--page-single-column) * 8);  }
    .content-container section.visual .sottotitolo-container { margin-top:175px; margin-left:var(--page-single-column); }
    .content-container section.visual .call-to-actions-container { display:flex; justify-content:center; padding:144px var(--header-x-padding); }
    .content-container section.visual .call-to-actions-container .cta-singola-container {
        background: linear-gradient(132.36deg, rgba(255, 255, 255, 0.35) 3.6%, rgba(253, 205, 202, 0.25) 98.19%); 
        backdrop-filter: blur(20px);
        box-shadow: -32px 33px 70px 0px #00000033;
        width:calc(var(--page-single-column) * 6);
        border-radius:200px;
        padding:45px var(--page-single-column);
        transition-timing-function: ease-in-out;
        transition-property: all;
    }
    .content-container section.visual .call-to-actions-container .cta-singola-container.uscendo {
        transition-duration:500ms;
    }
    .content-container section.visual .call-to-actions-container .cta-singola-container:first-child { position:relative; top:72px; left:var(--page-single-column); }
    .content-container section.visual .call-to-actions-container .cta-singola-container:last-child { position:relative; bottom:72px; right:var(--page-single-column); }
    .content-container section.visual .call-to-actions-container .cta-singola-container:first-child .cta-singola-titolo,
    .content-container section.visual .call-to-actions-container .cta-singola-container:first-child .cta-singola-sottotitolo { max-width: calc(var(--page-single-column)* 3); }
    .content-container section.visual .call-to-actions-container .cta-singola-container .cta-singola-link { position:absolute; bottom:0; left:75%; transform:translate(-50%, 50%); }

    /* Blocco 1 */

    .content-container section.blocco_1 .voci-container { margin-top:40px; }
    .content-container section.blocco_1 .voci-container.spazio { margin-left:calc(var(--page-single-column) * 2); }
    .content-container section.blocco_1 .voci-container .voci-row { display:flex; gap:120px; align-items:center; }
    .content-container section.blocco_1 .voci-container .voci-row h3.titolo { position:relative; font-weight:300; margin-bottom:40px; }
    .content-container section.blocco_1 .voci-container .voci-row h3.titolo.one-word { white-space:nowrap; }
    .content-container section.blocco_1 .voci-container .voci-row h3.titolo:nth-child(odd):after { content:'/'; position:absolute; left:calc(100% + 60px); bottom:50%; transform:translate(-50%, 50%); font-size:90px; font-weight:200; color:var(--color-darkgray); }

    /* Steps Links */

    .content-container section.steps { position:relative; }
    .content-container section.steps .titolo-container { margin-bottom:70px; }
    .content-container section.steps .titolo-container h2.titolo { flex-grow:1; }
    .content-container section.steps .titolo-container > div.link { min-width: 234px; text-align: right; }
    .content-container section.steps .steps-container { position:relative; }
    .content-container section.steps .steps-container .step-item { display:flex; align-items:center; height:210px; border-top:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps .steps-container .step-item:hover { cursor:pointer; }
    .content-container section.steps .steps-container .step-item:last-child { border-bottom:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps .steps-container .step-item .step-numero { min-width:calc(var(--page-single-column) * 2); font-weight:200; }
    .content-container section.steps .steps-container .step-item .step-titolo { flex-grow:1; }
    
    /* Steps Links NEW */

    .content-container section.steps-new { position:relative; }
    .content-container section.steps-new .titolo-container { margin-bottom:70px; }
    .content-container section.steps-new .titolo-container h2.titolo { flex-grow:1; }
    .content-container section.steps-new .steps-container { position:relative; }
    .content-container section.steps-new .steps-container .step-item { position:relative; display:flex; align-items:center; height:210px; border-top:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-new .steps-container .step-item:hover { cursor:pointer; }
    .content-container section.steps-new .steps-container .step-item:last-child { border-bottom:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-new .steps-container .step-item .step-numero { min-width:calc(var(--page-single-column) * 2); font-weight:200; }
    .content-container section.steps-new .steps-container .step-item .step-titolo { flex-grow:1; }

    /* Steps Testo Grandi */

    .content-container section.steps-testo-grandi .steps-container .step-item { display:flex; padding:55px 0; border-top:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-testo-grandi .steps-container .step-item:last-child { border-bottom:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-numero { min-width:calc(var(--page-single-column) * 2); font-weight:200; line-height:0.75em; }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-numero.hidden { visibility:hidden; }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-titolo { padding-bottom:25px; }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-contenuto { flex-grow:1; }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-contenuto .step-testo * { font-weight:300; }
    .content-container section.steps-testo-grandi .steps-container .step-item .step-contenuto .step-testo span { color:var(--color-red) !important; }

    /* Steps Testo Piccoli */

    .content-container section.steps-testo-piccoli .steps-container .item { display:flex; padding:55px 0; border-top:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-testo-piccoli .steps-container .item:last-child { border-bottom:1px solid rgba(255,255,255,0.3); }
    .content-container section.steps-testo-piccoli .steps-container .item > * { width:50%; }
    .content-container section.steps-testo-piccoli .steps-container .item .numero-titolo { display:flex; align-items:flex-end; gap:40px; padding-right:20px; }
    .content-container section.steps-testo-piccoli .steps-container .item .numero-titolo .numero { font-weight:200; }
    .content-container section.steps-testo-piccoli .steps-container .item .numero-titolo .numero.hidden { /*visibility:hidden;*/ display:none; }
    .content-container section.steps-testo-piccoli .steps-container .item .contenuto { max-width:84%; flex-grow:1; }
    .content-container section.steps-testo-piccoli .steps-container .item .testo { font-weight:300; }

    /* Blockquote */

    .content-container section.section-blockquote .blockquote-box {
        position:relative;
        background: linear-gradient(132.36deg, rgba(255, 255, 255, 0.25) 3.6%, rgba(253, 205, 202, 0.15) 98.19%);
        border: 1px solid;
        border-image-source: linear-gradient(180deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 100%);
        backdrop-filter: blur(20px);
        box-shadow: -32px 33px 70px 0px #00000033;
        border-radius:30px;
        padding:96px var(--page-single-column);
    }
    .content-container section.section-blockquote .blockquote-box > .titolo-container { margin-left:var(--page-single-column); }
    .content-container section.section-blockquote .blockquote-box > .testo { margin-left:var(--page-single-column); font-weight:300; margin-top:55px; }
    .content-container section.section-blockquote .link { position:absolute; bottom:72px; right:72px; }

    /* Carosello */
    
    .content-container section.carosello .titolo-container h2.titolo { flex-grow:1; }
    .content-container section.carosello .titolo-container > div.link { min-width: 234px; text-align: right; }
    
    @keyframes slide { from { transform: translateX(0); } to { transform: translateX(-100%); } }
    .logos { overflow: hidden; padding: 60px 0; white-space: nowrap; position: relative; width:100vw; margin-left:calc(var(--page-x-padding) * -1); display:flex; gap:0; }
    /*.logos:hover .logos-slide { animation-play-state: paused; }*/
    .logos-slide img { height:50px; width:auto; margin:0 40px; }

    /* Blocco 2 */

    .content-container section.blocco_2 .descrizione { display:flex; margin-top:65px; }
    .content-container section.blocco_2 .descrizione .testo-link { width:40%; padding-right:10%; }
    .content-container section.blocco_2 .descrizione .testo-link .link { display:inline-block; margin-top:65px; }
    .content-container section.blocco_2 .descrizione .voci { width:60%; border-top:1px solid var(--color-lightgray); }
    .content-container section.blocco_2 .descrizione .voci .riga { display:flex; gap:120px; margin-top:65px; }
    .content-container section.blocco_2 .descrizione .voci .riga .voce { position:relative; }
    .content-container section.blocco_2 .descrizione .voci .riga .voce.one-word { white-space:nowrap; }
    .content-container section.blocco_2 .descrizione .voci .riga .voce:not(:last-child):after { content:'/'; position:absolute; left:calc(100% + 60px); font-size:90px; transform:translateY(-25%); line-height:80px; top:10px; font-weight:200; }
    .content-container section.blocco_2 .voci-mobile { display:none; }

    /* Titolo Pagina */

    .content-container section.titolo-pagina .titolo-numero { display:flex; border-bottom: 1px solid var(--color-lightgray); align-items:flex-end; padding-bottom:20px; }
    .content-container section.titolo-pagina .titolo-numero .titolo { flex-grow:1; }
    .content-container section.titolo-pagina .contenuto { padding:var(--page-x-margin-indentazione); position:relative; margin-top:66px; }
    .content-container section.titolo-pagina .contenuto.estendi { padding-right:0; }
    .content-container section.titolo-pagina .contenuto .breadcrumbs-container { position:absolute; top:0; left:0; max-width:calc(var(--page-single-column) * 3); }
    .content-container section.titolo-pagina .contenuto .sottotitolo { margin-bottom:52px; }
    .content-container section.titolo-pagina .contenuto .descrizione h3 { font-weight:300; }

    /* Testo 2 Colonne */

    .content-container section.testo-due-colonne .contenuto { margin:var(--page-x-margin-indentazione); display:flex; border-top: 1px solid rgba(255,255,255,0.3); padding-top:55px; gap:60px; }
    .content-container section.testo-due-colonne .contenuto > * { width:50%; }
    .content-container section.testo-due-colonne .contenuto h4 { font-weight:300; }

    /* Call to Action */

    .content-container section.call-to-action .contenuto { margin:var(--page-x-margin-indentazione); }
    .content-container section.call-to-action .contenuto .titolo { padding-bottom:55px; }

    /* Sottotitolo */
    
    .content-container section.sottotitolo .titolo-container h2.titolo { flex-grow:1; }
    .content-container section.sottotitolo .titolo-container > div.link { min-width: 234px; text-align: right; }
    .content-container section.sottotitolo .contenuto { display:flex; padding-top:50px; }
    .content-container section.sottotitolo .contenuto > * { width:calc(50% - var(--page-single-column)); margin-right:var(--page-single-column); }
    .content-container section.sottotitolo .contenuto h4 { font-weight:300; }
    .content-container section.sottotitolo .contenuto > .testo-sinistra:last-child { width:100%; margin-right:0; }

    /* Immagine */

    .content-container section.immagine .contenitore-img { border-radius:30px; overflow:hidden; }
    .content-container section.immagine .contenitore-img img { width:100%; height:auto; aspect-ratio:16/9; }

    /* Spaziatura */

    .content-container section.spaziatura { display:flex; margin-top:attr(xs px); }
    @media screen and (min-width:575.5px) { .content-container section.spaziatura { margin-top:attr(sm px); } }
    @media screen and (min-width:767.5px) { .content-container section.spaziatura { margin-top:attr(md px); } }
    @media screen and (min-width:991.5px) { .content-container section.spaziatura { margin-top:attr(lg px); } }
    @media screen and (min-width:1199.5px) { .content-container section.spaziatura { margin-top:attr(xl px); } }
    @media screen and (min-width:1399.5px) { .content-container section.spaziatura { margin-top:attr(xxl px); } }

    /* Form Contatti */

    .content-container section.form-contatti .contenuto { padding-left:calc(var(--page-single-column) * 2); }
    .content-container section.form-contatti .contenuto .testo { display:flex; padding:55px 0; gap:24px; }
    .content-container section.form-contatti .contenuto .testo > * { width:50%; }
    .content-container section.form-contatti .contenuto .form form { display:flex; flex-wrap:wrap; gap:24px }
    .content-container section.form-contatti .contenuto .form form > span { width:100%; }
    .content-container section.form-contatti .contenuto .form form > span > * { width:100%; }
    .content-container section.form-contatti .contenuto .form form > span[data-name="nome"],
    .content-container section.form-contatti .contenuto .form form > span[data-name="cognome"],
    .content-container section.form-contatti .contenuto .form form > span[data-name="telefono"],
    .content-container section.form-contatti .contenuto .form form > span[data-name="argomento"] { width:calc(50% - 12px); }
    .content-container section.form-contatti .contenuto .form form span.wpcf7-list-item { margin-left:0; }
    .content-container section.form-contatti .contenuto .form form select { position:relative; color:var(--color-darkgray); }
    .content-container section.form-contatti .contenuto .form form textarea { padding-top:21px; border-radius:30px; min-height:140px; resize: none; }
    .content-container section.form-contatti .contenuto .form form .graffiti-checkbox-container { display:inline-block; }
    .content-container section.form-contatti .contenuto .form form .graffiti-checkbox { width:19px; height:19px; border: 1px solid var(--color-darkgray); display:block; }
    .content-container section.form-contatti .contenuto .form form .graffiti-checkbox.active { display:none; }
    .content-container section.form-contatti .contenuto .form form .graffiti-checkbox.active:after { content:'✓'; position:relative; top:-4px; left:3px; }
    .content-container section.form-contatti .contenuto .form form > span[data-name="privacy"] label { display:flex; align-items: center; gap:6px; }
    .content-container section.form-contatti .contenuto .form form > span[data-name="argomento"]:before { content:''; width:20px; height:20px; display:block; position:absolute; background-image:url('./assets/freccia_select.png'); background-size:contain; background-repeat: no-repeat; background-position: center; right:25px; top:25px; }
    .content-container section.form-contatti .contenuto .form form .wpcf7-not-valid-tip,
    .content-container section.form-contatti .contenuto .form form .wpcf7-spinner { display:none; }
    .content-container section.form-contatti .contenuto .form form:not(.init):not(.resetting):not(.submitting) .wpcf7-response-output { margin:0; display:flex; align-items:center; }

    /* Staff */

    .content-container section.staff .contenuto { margin-left:calc(var(--page-single-column) * 3); gap:var(--page-single-column); display:flex; flex-wrap:wrap; }
    .content-container section.staff .contenuto .carta { width:calc(var(--page-single-column) * 4); }
    .content-container section.staff .contenuto .carta .immagine { display:flex; overflow:hidden; border-radius:30px; }
    .content-container section.staff .contenuto .carta .immagine img { min-height:100%; min-width:100%; width:auto; height:auto; transition:0.4s ease all; }
    .content-container section.staff .contenuto .carta .immagine:hover img { transform:scale(1.05); }
    .content-container section.staff .contenuto .carta .descrizione { margin-top:25px; display:flex; align-items: center; }
    .content-container section.staff .contenuto .carta .descrizione .nome { flex-grow:1; }

    /* Testimonials */

    .content-container section.testimonials .titolo-container { margin-left:var(--page-single-column); flex-direction:column; }
    .content-container section.testimonials .titolo-container .descrizione { margin-top:60px; font-weight:300; }
    .content-container section.testimonials .titolo-container .navigazione { position:absolute; bottom:-34px; right:0; display:flex; gap:32px; }
    .content-container section.testimonials .titolo-container .navigazione .freccia-sinistra img { transform:rotate(180deg); }
    .content-container section.testimonials .lista-container { margin-top:84px; }
    .content-container section.testimonials .lista-container .swiper { padding:0 var(--header-x-padding); }
    .content-container section.testimonials .lista-container .swiper .testimonial-container { width:calc(var(--page-single-column) * 4); padding-right:var(--page-single-column); }
    .content-container section.testimonials .lista-container .swiper .testimonial-container .testo { margin-top:23px; padding-top:40px; border-top:1px solid var(--color-darkgray); }

    /* Elenco */

    .content-container section.elenco .lista-container { border-top:1px solid rgba(255,255,255,0.3); }
    .content-container section.elenco .lista-container .lista-item { display:flex; border-bottom:1px solid rgba(255,255,255,0.3); align-items:center; min-height:124px; padding:12px 0; }
    .content-container section.elenco .lista-container .lista-item .titolo { display:flex;  align-items:center; padding-right:var(--page-single-column); }
    .content-container section.elenco .lista-container .lista-item .titolo,
    .content-container section.elenco .lista-container .lista-item .testo { min-width:50%; flex-grow:1; }
    .content-container section.elenco .lista-container .lista-item .titolo .punto-elenco.default { font-size:70px; line-height:70px; font-weight:300; height:100px; display:inline-block; margin-right:34px; }

    /* Elenco (Sponsors) */

    .content-container section.elenco-sponsor .lista-container { border-top:1px solid rgba(255,255,255,0.3); margin-left:calc(var(--page-single-column) * 2) }
    .content-container section.elenco-sponsor .lista-container .lista-item { display:flex; border-bottom:1px solid rgba(255,255,255,0.3); align-items:center; min-height:124px; padding:12px 0;}
    .content-container section.elenco-sponsor .lista-container .lista-item .logo { min-width:calc(var(--page-single-column) * 3); }
    .content-container section.elenco-sponsor .lista-container .lista-item .testo { flex-grow:1; }
    .content-container section.elenco-sponsor .lista-container .lista-item .logo img[src$=".svg"] { max-height:100px; }