:root {
    --scrollbar-width: 0px;
    --bianco: #ffffff;
    --nero: #000000;
    --rosso: #ff0000;
    --grigio_link: #808080;
    --grigio_deli: #fafafa;
    --grigio_dove: #808080;
    --vh: 1vh;
    --vw: 1vw;
    --vw-n: tan(atan2(var(--vw), 1px)); /* 19.2 on a 1920 viewport */
    --page-width: 1920px;
}

* {
  scrollbar-color: var(--bianco) var(--nero);
  scrollbar-width: thin;
  cursor: url('../img/cursor_inv.svg')  15 15, auto !important;
}
a, button,
a *, button * {
    cursor: url('../img/cursor.svg')  15 15, auto !important;
}
html {
    width: 100%;
    min-height: 100%;
    float: left;
    margin: 0px;
    padding: 0px;
    color: var(--bianco);
    background-color: var(--nero);
    font-family: 'Switzer', sans-serif;
}

body {
    border: none;
    padding: 0px;
    margin: 0px;
    width: 100%;
    float: left;
    -webkit-text-size-adjust: 100%;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: var(--bianco);
    background-color: var(--nero);
    position: relative;
/*     overflow-x: hidden; */
}

td {
    border: none;
    text-align: left;
    margin: 0px;
    padding: 0px;
}

div,
p,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
footer,
header,
nav,
article,
main,
aside,
section,
form,
fieldset,
marquee,
figure,
figcation {
    float: left;
    margin: 0px;
    padding: 0px;
    width: 100%;
    text-align: left;
    text-decoration: none;
    -webkit-text-size-adjust: 100%;
}

img {
    text-decoration: none;
    border: none;
    vertical-align: middle;
    height: auto;
}

svg {
    border: none;
    border-image-width: 0;
    stroke-width: 0px;
}

iframe {
    margin: 0px;
    padding: 0px;
    border: none;
    /*    height: auto;
    width: 100%;*/
}

video[poster] {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

video {
    max-width: 100%;
    height: auto;
}

table,
td,
tr {
    margin: 0px;
    padding: 0px;
    border: none;
}

table {
    float: left;
}

label {
    cursor: pointer;
}

a {
    outline: none;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.4s;
    -webkit-transition: color 0.4s;
    color: var(--grigio_link);
    /*font-weight: 700;
    text-decoration: underline;*/
}

li {
    outline: none;
}

i,
em,
.italic {
    font-style: italic;
    font-weight: inherit;
}

i strong,
em strong {
    font-style: italic;
}

.underline {
    text-decoration: underline;
}

*::placeholder {
    color: var(--grigio);
}

button::-moz-focus-inner {
    border: 0;
}

a:focus {
    outline: none;
}

*:focus::placeholder {
    color: transparent;
}


input,
textarea,
select,
button {
    outline: none;
    border: none;
    padding: 0px;
    -webkit-border-radius: 0px;
}

select {
    -webkit-appearance: none;
    background-image: url("data:image/jpeg;base64,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dAAAAAAAAAAAAAAAAFNjbCBVbnRGI1ByY0BZAAAAAAAAAAAAEGNyb3BXaGVuUHJpbnRpbmdib29sAAAAAA5jcm9wUmVjdEJvdHRvbWxvbmcAAAAAAAAADGNyb3BSZWN0TGVmdGxvbmcAAAAAAAAADWNyb3BSZWN0UmlnaHRsb25nAAAAAAAAAAtjcm9wUmVjdFRvcGxvbmcAAAAAADhCSU0D7QAAAAAAEABgAAAAAQACAGAAAAABAAI4QklNBCYAAAAAAA4AAAAAAAAAAAAAP4AAADhCSU0EDQAAAAAABAAAAB44QklNBBkAAAAAAAQAAAAeOEJJTQPzAAAAAAAJAAAAAAAAAAABADhCSU0nEAAAAAAACgABAAAAAAAAAAI4QklNA/UAAAAAAEgAL2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEAMgAAAAEAWgAAAAYAAAAAAAEANQAAAAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP////////////////////////////8D6AAAAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP////////////////////////////8D6AAAOEJJTQQIAAAAAAAQAAAAAQAAAkAAAAJAAAAAADhCSU0ERAAAAAAAEAAAAAIAAAJAAAACQAAAAAA4QklNBEkAAAAAAAQAAAAAOEJJTQQeAAAAAAAEAAAAADhCSU0EGgAAAAADZwAAAAYAAAAAAAAAAAAAABYAAAALAAAAGQBwAGgAbwB0AG8AXwAyADAAMgA2AC0AMQAwAC0AMAA3AF8AMQA0AC0ANAAzAC0ANQAxAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAALAAAAFgAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABAAAAABAAAAAAAAbnVsbAAAAAIAAAAGYm91bmRzT2JqYwAAAAEAAAAAAABSY3QxAAAABAAAAABUb3AgbG9uZwAAAAAAAAAATGVmdGxvbmcAAAAAAAAAAEJ0b21sb25nAAAAFgAAAABSZ2h0bG9uZwAAAAsAAAAGc2xpY2VzVmxMcwAAAAFPYmpjAAAAAQAAAAAABXNsaWNlAAAA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cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBNTTpEb2N1bWVudElEPSJERENFRDlDNDBBQjQ1RTM4MEU0REEzOTNFNTJEQjczNSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxYzE3N2UwZC0yYWVlLTQ3OTktODM5MS1mODIxZDE4OTMxNTIiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0iRERDRUQ5QzQwQUI0NUUzODBFNERBMzkzRTUyREI3MzUiIGRjOmZvcm1hdD0iaW1hZ2UvanBlZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMTAtMDdUMTQ6NDM6NTErMDI6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjYtMTAtMDdUMTQ6NDM6NTkrMDI6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTEwLTA3VDE0OjQzOjU5KzAyOjAwIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MWMxNzdlMGQtMmFlZS00Nzk5LTgzOTEtZjgyMWQxODkzMTUyIiBzdEV2dDp3aGVuPSIyMDI2LTEwLTA3VDE0OjQzOjU5KzAyOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjcuMTEgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/eHBhY2tldCBlbmQ9InciPz7/7gAhQWRvYmUAZEAAAAABAwAQAwIDBgAAAAAAAAAAAAAAAP/bAIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAwMDAwMDAwMDAwEBAQEBAQEBAQEBAgIBAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD/8IAEQgAFgALAwERAAIRAQMRAf/EAIEAAAEFAAAAAAAAAAAAAAAAAAAHCAkKCwEBAAAAAAAAAAAAAAAAAAAAABAAAQMFAQAAAAAAAAAAAAAAByABCQAQAwYWFxEAAAQEAwcFAQAAAAAAAAAAAQIFBgMEFQcWFwgQESESFCQYACIyEyYJEgEAAAAAAAAAAAAAAAAAAAAg/9oADAMBAQIRAxEAAADP/As9DBSNgSY//9oACAECAAEFAFf/2gAIAQMAAQUAV//aAAgBAQABBQC0KIojO2cUeQw99WOGKr5K/9oACAECAgY/AF//2gAIAQMCBj8AX//aAAgBAQEGPwDZq5WLr371BSN8Iv8AO3WPnWyZLT6zFxhWwtLyp6cuXDtQ9lF8ipvF8pLcCSm5GUm5NH71QjywcIHUTH0eY+srBOb1DrnhyyK5kxktUcW9Lnjy1zyC/O0rfzYd7j5cPTzG04vksctt3UNwC27OuFOe11IIV8leQt6DFDAAI/uWagJU0xd4RhLwDZ//2Q==");
    background-position: calc(100% - 15px) 50%;
    background-repeat: no-repeat;
    background-size: 11px 22px;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="date"] {
    -moz-appearance: textfield;
}

button {
    cursor: pointer;
    -webkit-appearance: none;
    background-color: transparent;
    font-family: 'Noto Sans', sans-serif;
}

input[type="checkbox"] {
    -webkit-appearance: checkbox;
    -webkit-border-radius: auto;
    vertical-align: middle;
}

input[type="radio"] {
    /*    -webkit-appearance: checkbox;
    -webkit-border-radius: auto;*/
    vertical-align: middle;
}

input[type="submit"] {
    -webkit-border-radius: 0px;
    -webkit-appearance: none;
}

.merriweather {
    font-family: 'Merriweather', serif;
}

.hidden {
    display: none;
}

.vis_hidden {
    visibility: hidden;
}

.over_hidden {
    overflow: hidden;
}

.block {
    display: block;
}

.flex {
    display: flex;
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.flex-right {
    display: flex;
    justify-content: flex-end;
}

.flex-left {
    display: flex;
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}

.justify-left {
    justify-content: flex-start;
}

.mobile {
    display: none;
}

.opacity_0 {
    opacity: 0;
}

.opacity_1 {
    opacity: 1;
}

.inline-block {
    display: inline-block;
}

.inline-desktop {
    display: inline;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.pointer {
    cursor: pointer;
}

.wait {
    cursor: wait;
}

.left {
    float: left;
}

.right {
    float: right;
}

.none {
    float: none;
}

.clear {
    clear: both;
}

.v_top {
    vertical-align: top;
}

.text_top {
    vertical-align: text-top;
}

.v_middle {
    vertical-align: middle;
}

.v_bottom {
    vertical-align: bottom;
}

.m_auto {
    margin: 0px auto;
}

.w_auto {
    width: auto;
}

.w_100pe {
    width: 100%;
}

.w_50pe {
    width: 50%;
}

.max_w100pe {
    max-width: 100%;
}

.max_w50pe {
    max-width: 50%;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-justify {
    text-align: justify;
}

.text-truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.extralight {
    font-weight: 200;
}

.light {
    font-weight: 300;
}

.normal {
    font-weight: 400;
}

.style-normal {
    font-style: normal;
}

.strike {
    text-decoration: line-through;
}

.medium {
    font-weight: 500;
}

.bold,
strong,
b {
    font-weight: 700;
}
.red {
    color: red;
}

.black,
.nero {
    color: var(--nero);
}

.white,
.bianco {
    color: var(--bianco);
}

.grigio-dove {
    color: var(--grigio_dove);
}
.cover {
    background-size: 100% 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.cover-left {
    background-size: 100% 100%;
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
}

.cover-picture {
    border-radius: 10px;
    overflow: hidden;
}

.cover-picture img,
.cover-picture-full img {
    object-fit: cover;
    width: 100%;
}

.cover-picture img {
    border-radius: 10px;
}

.cover-picture-center {
    text-align: center;
    overflow: hidden;

}

.cover-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cover-picture img {
    height: auto;
}

.cover-picture-full img {
    height: 100%;
}

.picture-full {
    display: block;
    float: left;
    width: 100%;
}

.picture-full img {
    width: 100%;
}

.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.capitalize {
    text-transform: capitalize;
}

.two-column {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
}

.ritch-cont a {
    color: var(--grigio_link);
}

.ritch-cont ul {
    width: 100%;
    box-sizing: border-box;
    list-style-type: disc;
    padding-left: 20px;
    display: block;
}

.ritch-cont ol {
    width: 100%;
    box-sizing: border-box;
    list-style-type: decimal;
    padding-left: 20px;
}

.ritch-cont li {
    float: left;
    width: 100%;
}

.ritch-cont img {
    max-width: 100% !important;
    height: auto !important;
}

.ritch-cont blockquote {
    display: block;
    float: left;
    width: 100%;
    font-weight: bold;
    font-style: italic;
    padding: 0px 40px 0px 30px;
    border-left: 2px solid var(--bianco);
    font-size: clamp(15px, (20 / 1880) * 100vw, 20px);
    line-height: clamp(20px, (25 / 1880) * 100vw, 25px);
    box-sizing: border-box;
}

.gen-text-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.flex-reverse-row {
    flex-direction: row-reverse;
}

.video-cover-image {
    display: none !important;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

/* Honey POT anti SPAM */
.hnpt {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    background-color: transparent;
    height: 100%;
    z-index: 100;
}

#over-box {
    display: none;
    position: fixed;
    z-index: 9998;
    background-color: rgba(0, 0, 0, 0.90);
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

#over-box.show {
    display: block;
}

.over-hidden {
    overflow: hidden;
}

.noscroll {
    position: fixed !important;
    /*    overflow-y: scroll;*/
}

.modal-box {
    display: none;
    position: fixed;
    /*background-color: var(--bianco);
    color: var(--nerino);*/
    text-align: center;
    z-index: 9999;
    top: -500px;
    opacity: 1;
    width: 680px;
    min-height: 355px;
    left: 50%;
    margin-left: -340px;
    border-radius: 10px;
    box-shadow: 0px 0px 25px 0px rgb(0 0 0 / 15%);
    max-height: calc(70 * var(--vh));
}

input:autofill,
input:auto-fill,
input:-webkit-autofill,
input:-webkit-auto-fill {
    background-color: transparent !important;
    background-image: none !important;
}

.form-half-input-cont {
    width: calc(50% - 5px);
    float: left;
}

.form-half-input-cont:last-child {
    float: right;
}

.form-third-input-cont {
    width: calc((100% - 20px) / 3);
}

.form-input {
    display: inline-block;
    width: 100%;
    height: 60px;
    line-height: 59.5px;
    color: var(--bianco);
    background-color: var(--nero);
    font-size: 12px;
    padding: 0px 20px;
    box-sizing: border-box;
    /*border: 0.5px solid var(--nero);*/
    border: 0.5px solid var(--grigio_link);
    font-style: normal;
    border-top-left-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
}
.form-textarea {
    display: inline-block;
    width: 100%;
    color: var(--bianco);
    background-color: var(--nero);
    font-size: 12px;
    line-height: 18px;
    padding: 10px 20px;
    box-sizing: border-box;
    border: 0.5px solid var(--grigio_link);
    font-style: normal;
    border-top-left-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
}
.form-input:focus,
.form-textarea:focus {
    border: 1px solid var(--bianco);
}
.form-input:focus {
    line-height: 59px;
}

.privacy-label-cont {
    display: flex;
    float: left;
    max-width: calc(100% - 200px);
    height: 60px;
    gap: 5px;
    padding: 10px 0px;
    box-sizing: border-box;
    align-items: center;
}

.form-error .form-input,
input.form-error,
textarea.form-error {
    border: 0.5px solid red;
}

label.form-error {
    border-bottom: 1px solid red;
}

.form-error-span {
    display: inline-block;
    float: left;
    margin-top: 10px;
    font-size: 15px;
    line-height: 20px;
    font-weight: bold;
    box-sizing: border-box;
    padding: 0px 15px;
    color: red;
}

.checkbox-label {
    font-size: 12px;
}

.checkbox-label a {
    display: inline-block;
    width: auto;
    font-size: 12px;
    font-weight: 500;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    color: var(--marrone);
    font-weight: bold;
}

.radio-form-error label {
    border-color: red;
    background-color: #ffdcdc;
}

.text-form-error {
    border-color: red;
    background-color: #ffdcdc;
}

.checkbox-form-error {
    border-bottom: 1px solid red;
}

.btn.block {
    display: block;
}

.btn {
    min-width: 200px;
    height: 60px;
    padding: 20px;
    font-size: 12px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.5px;
    letter-spacing: 50%;
    box-sizing: border-box;
    text-align: center;
    border: 0.5px solid var(--bianco);
    background-color: var(--nero);
    color: var(--bianco);
    text-decoration: unset;
    font-style: normal;
    border-top-left-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.btn.btn-noborder {
    border: unset;
    border-top-left-radius: unset;
    border-bottom-right-radius: unset;

}
.btn.btn-nohover {
    transition: unset;
    -webkit-transition: unset;
    background-color: transparent;
}
.careers-position-lnk.open .btn {
    color: var(--nero);
}
.cover-full-cont {
    position: relative;
}

.cover-full-cont picture,
.cover-full-cont img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}
.font_40_46,
.font_40_46_300 {
    font-size: clamp(28px, (40 / 1880) * 100vw, 40px);
    line-height: clamp(34px, (46 / 1880) * 100vw, 46px);
}
.font_30_35,
.font_30_35_300 {
    font-size: clamp(23px, (30 / 1880) * 100vw, 30px);
    line-height: clamp(33px, (35 / 1880) * 100vw, 35px);
}
.font_30_35_300,
.font_40_46_300 {
    font-weight: 300;
}
.font_12_16_400 {
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
}
/* Main */
.page,
.page-small {
    max-width: 1920px;
    float: none;
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
    box-sizing: border-box;
}
.page-small {
    max-width: 1140px;
}
#header {
    top: 0px;
    left: 0px;
    position: fixed;
    height: 70px;
    z-index: 9900;
}
#header-bg {
    background-color: black;
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    transition: height 0.4s;
    z-index: 5;
}
#header.transparent #header-bg {
    height: 0%;
    transition: height 0.4s;
}
#header #nav {
    display: flex;
    justify-content: space-between;
    height: 70px;
    position: relative;
    z-index: 10;
}
#btn-burger-mobile {
    display: none;
}
#nav-logo-lnk {
    display: block;
    float: left;
    height: 70px;
    width: 77px;
    position: relative;
}
#nav-logo-lnk svg {
    height: 100%;
    width: auto;
    position: absolute;
    z-index: 666;
    display: none;
}
#header.transparent #nav-logo-lnk svg {
    display: block;
}
#header.transparent #nav-logo-lnk picture {
    display: none;
}
#nav-logo-lnk picture {
    display: block;
    float: left;
    height: 70px;
    width: 100px;
    position: absolute;
}
#nav-logo-lnk picture img {
    height: 70px;
}
#nav-links-cont,
#nav-workcategories-cont {
    display: flex;
    gap: 30px;
    height: 30px;

}
#nav-links-cont {
    float: right;
    margin: 20px 0px;
    justify-content: flex-end;
}
#nav-links-cont li,
#nav-workcategories-cont li {
    display: block;
    float: left;
    width: auto;
}
#nav-links-cont a {
    display: block;
    float: left;
    height: 30px;
    box-sizing: border-box;
    padding: 5px 0px 5px 0px;
    position: relative;
    color: var(--bianco);
    font-weight: 400;
    text-decoration: unset;
}

#nav-workcategories-cont a {
    display: block;
    float: left;
    height: 30px;
    line-height: 30px;
    font-size: 12px;
    box-sizing: border-box;
    padding: 5px 0px 5px 0px;
    position: relative;
    color: var(--grigio_link);
    font-weight: 400;
    text-decoration: unset;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}


#header.transparent #nav-links-cont a {
    color: var(--bianco);
}
#header.transparent #nav-logo-lnk .logo-zest-svg .cls-1 {
    fill: var(--bianco);
}
#nav-links-cont .line-hover {
    position: absolute;
    bottom: 0px;
    left: 0px;
    height: 0.5px;
    width: 0px;
    background-color: var(--bianco);
    transition: width 0.4s;
    -webkit-transition: width 0.4s;
}
#nav-workcategories-cont .sel {
    color: var(--bianco);
    font-weight: bold;
}
#header.transparent #nav-links-cont .line-hover {
    background-color: var(--bianco);
}

#nav-links-cont a.sel .line-hover {
    width: 100%;
    transition: width 0.4s;
    -webkit-transition: width 0.4s;
}

footer {
    min-height: calc(100vh - 70px);
    font-size: 12px;
    line-height: 20px;
}
#footer-ext {
/*     min-height: calc(100vh - 110px - 70px); */

    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}
.footer-int {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.footer-col {
    width: calc((100% - 60px) / 4);
}
.footer-col-nologo {
    padding-top: 120px;
}
.footer-col-titolo {
    font-size: 14px;
    line-height: 18px;
    color: var(--bianco);
}
.footer-col a {
    text-decoration: unset;
    font-weight: 400;
}
.footer-col i[class*="fa-"] {
    width: 1.25em;
    margin-right: 0px;
    text-align: center;
}
#footer-nav ul,
#footer-nav li,
#footer-nav a {
    display: block;
    float: left;
    width: 100%;
}

#footer-social-cont {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 15px;
    margin-top: 10px;
}
#footer-social-cont a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    font-size: 12px;
    width: 30px;
    height: 30px;
    border: 0.5px solid var(--nero);
    background-color: var(--bianco);
    color: var(--grigio_link);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}
.social-footer-btn {
    display: inline-block;
    font-size: 20px;
    line-height: 20px;
    color: var(--nero);
    text-decoration: unset;
    padding-right: 10px;
}
.fascia-grigia {
    padding: 20px 0px;
    background-color: var(--nero);
    z-index: 10;
}
.fascia-grigia .page {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#zest-img-animation {
    position: fixed;
    z-index: 100;
    display: block;
    float: left;
/*     width: 100px; */
    height: 50px;
    aspect-ratio: 10/7;
    top: 85%;
    right: 0px;
    transform: translateY(-85%);
}
#zest-img-animation picture {
    display: block;
    float: left;
    height: 50px;
    aspect-ratio: 10/7;
    position: absolute;
}
#zest-img-animation img {
    width: 100%;
}


#aplusa-video-anim {
    cursor: pointer;
    width: 50px;
    height: 50px;
    position: fixed;
    z-index: 9991 !important;
    top: calc(85 * var(--vh) - 50px);
    right: 20px;
}
#aplusa-video-anim video {
    display: block;
    float: left;
    width: 100%;
    height: 100%;
    object-fit: cover;

}
.active-el {
    opacity: 1 !important;
}

.work-category-dove-quando {
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: var(--bianco);
}
.work-titolo {
    font-size: 30px;
    line-height: 36px;
    font-style: normal;
    font-weight: 300;
    margin: 5px 0px;
    position: relative;
    color: var(--bianco);
}
.figcaption_abs {
    position: absolute;
    padding: 10px;
    box-sizing: border-box;
    display: block;
    float: left;
    bottom: 0px;
    left: 0px;
}
#fixed-arrow-left {
    display: flex;
    align-items: center;
    gap: 5px;
    float: left;
    left: 20px;

    font-size: 15px;
    line-height: 25px;
    text-decoration: unset;
    font-weight: 300;
}
#fixed-arrow-left.arrow_fixed {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
}
#fixed-arrow-left.arrow_absolute {
    position: absolute;
    bottom: calc(50 * var(--vh) - 12.5px);
}
#fixed-arrow-left .arrow-left-svg {
    height: 12px;
    display: inline-block;
}

/* Sitcky Elements per scorriment overtifcale */
.sticky-el {
    position: sticky;
    background-color: var(--nero);
    float: none;
    clear: both;
}
/* Qui vanno gli eventi di Hover. Non metterli da altre parti!!!!! */
@media (hover: hover) and (pointer: fine) {
    a:hover {
        color: var(--bianco);
        transition: color 0.4s;
        -webkit-transition: color 0.4s;
    }
    .btn:hover {
        color: var(--nero);
        background-color: var(--bianco);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    .btn.btn-nohover:hover {
        background-color: transparent;
        color: var(--bianco);
        transition: unset;
        -webkit-transition: unset;
    }

    .ritch-cont a:hover {
/*         color: var(--arancio); */
    }
    #nav-workcategories-cont a:hover {
        color: var(--bianco);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
    #nav-links-cont a:hover .line-hover {
        width: 100%;
        transition: width 0.4s;
        -webkit-transition: width 0.4s;
    }
    #footer-nav a:hover {
        font-weight: 400;
        text-decoration: unset;
        font-style: normal;
/*        transition: all 0.4s;
        -webkit-transition: all 0.4s;*/
    }
    #fixed-arrow-left:hover .arrow-left-svg .cls-1 {}
    #footer-social-cont a:hover {
        border: 0.5px solid var(--nero);
        background-color: var(--nero);
        color: var(--bianco);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
}

/* Tablet Landscape */
@media only screen and (min-width:1024px) and (max-width:1279px) {
    .page {
        padding-left: 40px;
        padding-right: 40px;
    }
}

/* Tablet Portrait + Mobile */
@media only screen and (min-width:220px) and (max-width:1023px) {
}

/* Tablet Portrait */
@media only screen and (min-width:768px) and (max-width:1023px) {
    .page {
        padding-left: 40px;
        padding-right: 40px;
    }
}

/* Cellulari */
@media only screen and (min-width:220px) and (max-width:767px) {
    #header,
    #header #nav {
        height: 40px;
    }
    #nav-logo-lnk {
        height: 40px;
        width: 44px;
    }
    #nav-logo-lnk picture,
    #nav-logo-lnk picture img {
        height: 40px;
        width: 44px;
    }
    .page {
        padding-left: 20px;
        padding-right: 20px;
    }

    .mini-page {
        padding-left: 20px;
        padding-right: 20px;
    }
    .sticky-el {
        position: static;
        float: left;
    }
    .btn {
        min-width: 100%;
        height: 45px;
        padding: 10px;
        font-size: 12px;
        line-height: 25px;
        font-weight: 400;
        letter-spacing: 1.5px;
        letter-spacing: 50%;
    }
    #zest-img-animation {
        width: 50px;
        height: 35px;
    }
    #zest-img-animation picture {
        width: 50px;
        height: 35px;
    }
    .fascia-grigia .page {
        display: flex;
        flex-direction: column-reverse;
        flex-wrap: wrap;
        align-items: unset;
        justify-content: unset;
        padding: 40px 20px;
        gap: 40px;
    }
    #footer-careers.fascia-grigia .page {
        flex-direction: column;
    }
    .fascia-grigia .w_80pe {
        width: 100%;
        text-align: left;
        margin-bottom: 10px;
    }
    .footer-int {
        flex-wrap: wrap;
    }
    .footer-col {
        width: calc((100% - 20px) / 2);
    }
    #footer-ext {
        padding: 80px 0px 160px 0px;
    }
    .two-column {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
        -webkit-column-gap: unset;
        -moz-column-gap: unset;
        column-gap: unset;
    }
    #btn-burger-mobile {
        position: fixed;
        top: 0px;
        right: 0px;
        padding: 10px 20px;
        display: block;
        font-size: 20px;
        z-index: 9998;
        color: var(--bianco);
    }
    #header.transparent #btn-burger-mobile {
        color: var(--bianco);
    }
    #btn-burger-mobile i:first-child {
        display: inline-block;
    }
    #header #nav.open #btn-burger-mobile i:first-child,
    #btn-burger-mobile i:last-child {
        display: none;
    }
    #header #nav.open #btn-burger-mobile i:last-child {
        display: inline-block;
    }
    #header #nav #nav-links-cont {
        display: none;
        float: left;
        height: auto;
    }
    #header #nav.open {
        background-color: var(--nero);
        position: fixed;
        top: 0px;
        left: 0px;
        height: 100svh;
        display: block;
    }
    #header.transparent #nav.open #btn-burger-mobile {
        color: var(--nero);
    }
    #header #nav.open #nav-links-cont {
        width: 100%;
        position: absolute;
        top: 70px;
        left: 0px;
        display: block;
    }
    #header #nav.open #nav-links-cont li {
        width: 100%;
        padding: 0px 0px;
        box-sizing: border-box;
    }
    #nav-links-cont a {
        display: block;
        float: left;
        height: auto;
        font-size: 20px;
        line-height: 30px;
        padding: 0px 20px;
        margin: 15px 0px;
        width: 100%;
    }
    #header #nav.open #nav-links-cont a {
        color: var(--bianco);
    }
    #header.transparent #nav.open #nav-logo-lnk svg {
        display: none;
    }
    #header.transparent #nav.open #nav-logo-lnk picture {
        display: block;
    }
    #header.transparent #nav.open #nav-links-cont .line-hover {
        background-color: var(--bianco);
    }
}

/* ---------- Cookie panel ---------- */
#cookie-fab {
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: 9998;
    width: 48px;
    height: 48px;
    border: 0.5px solid var(--bianco);
    border-radius: 50%;
    background-color: var(--nero);
    color: var(--bianco);
    font-size: 22px;
    cursor: pointer;
    box-shadow: 0px 0px 20px 5px rgba(0, 0, 0, 0.10);
    transition: all 0.4s;
    /* Bello ma a Marco non piace */
    display: none;
}
#cookie-fab:hover {
    background-color: var(--bianco);
    color: var(--nero);
}
#cookie-panel {
    position: fixed;
    left: 20px;
    bottom: 80px;
    z-index: 9999;
    width: calc(100% - 40px);
    max-width: 768px;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    box-sizing: border-box;
    background-color: var(--nero);
    color: var(--bianco);
    border-top-left-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
    box-shadow: 0px 0px 20px 5px rgba(0, 0, 0, 0.15);
    font-size: 15px;
    line-height: 1.4;
}
#cookie-panel[data-given="0"] {
    bottom: 20px;
}
#cookie-panel[hidden] {
    display: none;
}
#cookie-panel .cookie-mode {
    display: none;
}
#cookie-panel[data-mode="banner"] .cookie-mode-banner,
#cookie-panel[data-mode="status"] .cookie-mode-status,
#cookie-panel[data-mode="edit"] .cookie-mode-edit {
    display: block;
}
#cookie-panel .cookie-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
}
#cookie-panel .cookie-panel-titolo {
    font-weight: 600;
}
#cookie-panel .cookie-panel-close {
    border: none;
    background: none;
    font-size: 22px;
    cursor: pointer;
    color: inherit;
    padding: 0 4px;
}
#cookie-panel .cookie-panel-body {
    padding: 24px;
    box-sizing: border-box;
}
#cookie-panel .cookie-panel-testo p + p {
    margin-top: 12px;
}
#cookie-panel .cookie-panel-sottotitolo {
    font-weight: 600;
    margin-bottom: 10px;
}
#cookie-panel .cookie-stato li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 3px 0;
    box-sizing: border-box;
}
#cookie-panel .cookie-stato i {
    width: 18px;
    text-align: center;
}
#cookie-panel .cookie-stato li.off {
    opacity: 0.5;
}
#cookie-panel .cookie-dettagli-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    padding: 0;
    border: none;
    background: none;
    color: inherit;
    font: inherit;
    font-weight: 600;
    text-decoration: underline;
    cursor: pointer;
}
#cookie-panel .cookie-dettagli-toggle i {
    transition: transform 0.3s;
}
#cookie-panel .cookie-dettagli-toggle .nascondi,
#cookie-panel .cookie-dettagli-toggle[aria-expanded="true"] .mostra {
    display: none;
}
#cookie-panel .cookie-dettagli-toggle[aria-expanded="true"] .nascondi {
    display: inline;
}
#cookie-panel .cookie-dettagli-toggle[aria-expanded="true"] i {
    transform: rotate(180deg);
}
#cookie-panel .cookie-dettagli {
    margin-top: 16px;
    padding: 16px;
    background-color: rgba(0, 0, 0, 0.05);
    border-radius: 5px;
    font-size: 13px;
}
#cookie-panel .cookie-dettagli p + p {
    margin-top: 12px;
}
#cookie-panel .cookie-consent-id {
    word-break: break-all;
}
#cookie-panel .cookie-categoria {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.2);
}
#cookie-panel .cookie-categoria:last-child {
    border-bottom: none;
}
#cookie-panel .cookie-categoria small {
    font-size: 13px;
    opacity: 0.7;
}
#cookie-panel .cookie-categoria input {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    accent-color: var(--nero);
}
#cookie-panel .cookie-panel-foot {
    padding: 20px 24px;
    border-top: 0.5px solid rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
}
#cookie-panel .cookie-panel-foot .cookie-mode {
    display: none;
    gap: 10px;
}
#cookie-panel[data-mode="banner"] .cookie-panel-foot .cookie-mode-banner,
#cookie-panel[data-mode="status"] .cookie-panel-foot .cookie-mode-status,
#cookie-panel[data-mode="edit"] .cookie-panel-foot .cookie-mode-edit {
    display: flex;
}
#cookie-panel .cookie-btn {
    flex: 1 1 0;
    min-height: 48px;
    padding: 10px;
    font: inherit;
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    background-color: var(--nero);
    color: var(--bianco);
    border: 0.5px solid var(--bianco);
    border-top-left-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
    cursor: pointer;
    transition: all 0.4s;
}
#cookie-panel .cookie-btn:hover,
#cookie-panel .cookie-btn.cookie-btn-pieno {
    background-color: var(--bianco);
    color: var(--nero);
}
#cookie-panel .cookie-btn.cookie-btn-pieno:hover {
    background-color: var(--nero);
    color: var(--bianco);
}
@media only screen and (max-width: 767px) {
    #cookie-panel {
        left: 10px;
        width: calc(100% - 20px);
    }
    #cookie-panel .cookie-panel-foot .cookie-mode {
        flex-direction: column;
    }
}
