/*
*
* AIVOX CSS 24/06/2025
* ing. Nicolò Chiellini n.chiellini@4sigma.it
*
*/

:root {
    --scrollbar-width: 0px;
    --vh: 1vh;
    --vw: 1vw;
    --bianco: #ffffff;
    --nero: #000000;
    --blue-scuro: #101820;
    /* Background */
    --blue-scuro: #0f0f0f;
    --beige: #e2ccbc;
    --azzurro: #bba3d2;
    --grigio: #06c5ba
}

html {
    width: 100%;
    min-height: 100%;
    margin: 0px;
    float: left;
    padding: 0px;
    font-family: 'Inter';
    overflow-x: hidden;
    background-color: var(--nero);
}

/*color: #d9c7b5;
  background-image: linear-gradient(90deg, #d9c7b5 , #026577 50%, #53bbb2 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  */
body {
    border: none;
    padding: 0px;
    margin: 0px;
    width: 100%;
    float: left;
    -webkit-text-size-adjust: 100%;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    position: relative;
    color: var(--bianco);
    overflow-x: hidden;
    position: relative;
}

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;
}

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

iframe {
    margin: 0px;
    padding: 0px;
    border: none;
}

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

video {
    max-width: 100%;
}

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

table {
    float: left;
}

label {
    cursor: pointer;
}

a,
.btn_a {
    outline: none;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.2s;
    -webkit-transition: color 0.2s;
    color: var(--beige);
}

button {
    /*   color: var(--nerino); */
}

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-iifm);
}

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;
    /* font-family: 'Inter'; */
}

select {
    -webkit-appearance: none;
    background-position: calc(100% - 15px) 50%;
    background-repeat: no-repeat;
    background-size: 11px 22px;
    font-family: 'Inter';
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAWCAYAAAAW5GZjAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ2MCwgMjAyMC8wNS8xMi0xNjowNDoxNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozYWZiZjdlZi01YWI5LTQxOTgtYWM4NS03NjY3MTY0OTY4MzUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUFGNzc5RkEzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUFGNzc5RjkzNjI0MTFFQkEyMjdCNDFBRUE1NjNBNkUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGRUM3M0JFODJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGRUM3M0JFOTJEOTYxMUVCQThENkYzNzEzNEFCMjA0NCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PivKHYoAAACeSURBVHjaYvz//z8DsYCJgQQwSBSzgAhGLU9ksQwgngDEBUA8Ayb4/9p2iGIkkAnE06Ds6SBzoDSGM5AVwsA0qDiKYmwKMTTAFHcT8Fs33INAoAnEwngUv0VW/BiKCQcdEMgSYfJjmOLrQMyNR/FXIOaBebCUgAtKkUMDFPBZOBRmwSIGOVKwacjCFYMwDaAI+AmlpyNLMg7BnAIQYADcuSEq6NODFQAAAABJRU5ErkJggg==);
}

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: 'JetBrains Mono' !important;
}

input[type=checkbox] {
    cursor: pointer;
    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;
}

.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;
}

.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;
}

.max_w100pe {
    max-width: 100%;
}

.max_w80pe {
    max-width: 80%;
}

.max_w75pe {
    max-width: 75%;
}

.max_w70pe {
    max-width: 70%;
}

.max_w60pe {
    max-width: 60%;
}

.max_w50pe {
    max-width: 50%;
}

.max_w40pe {
    max-width: 40%;
}

.w_33pe {
    width: 33.333333%;
}

.maxw_100pe {
    max-width: 100%;
}

.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;
}

.semibold {
    font-weight: 600;
}

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

.bold2extrabold b,
.bold2extrabold strong {
    font-weight: 900;
}

.extrabold {
    font-weight: 900;
}

.red {
    color: red;
}

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

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

.grigio {
    color: var(--grigio);
}

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

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

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

.cover-picture-abs {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    border-radius: 10px;
}

.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 {
    /*   text-decoration: underline; */
}

.ritch-cont ul {
    display: block;
    width: 100%;
    list-style-type: "> ";
    padding-left: 20px;
    box-sizing: border-box;
    text-transform: uppercase;
    box-sizing: border-box;
    font-family: 'JetBrains Mono';
}

.ritch-cont ul .text-big,
.ritch-cont ul .text-small,
.ritch-cont ul p {
    font-family: 'JetBrains Mono';
}

.ritch-cont ol {
    width: 100%;
    box-sizing: border-box;
    list-style-type: decimal;
    text-transform: uppercase;
    padding-left: 30px;
    box-sizing: border-box;
    font-family: 'JetBrains Mono';

}

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

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

.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;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
}

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

.modal-box-cont {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 9999;
    opacity: 0;
    width: 100%;
    height: calc(100 * var(--vh));
}

.modal-box-cont.show {
    display: flex;
    top: 0px;
    left: 0px;
    opacity: 0;
    animation: fade-in 1s forwards;
}

.modal-box {
    display: none;
    position: relative;
    z-index: 10;
    padding: 30px;
    box-sizing: border-box;
    max-width: 740px;
    min-height: 200px;
    max-height: calc(100 * var(--vh) - 80px);
    overflow: auto;
    border-radius: 5px;
}

.modal-box.show {
    display: block;
}

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);
}

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

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

label.form-half-input-cont {
    display: block;
    float: left;
}

label.form-full-input-cont,
.label-full {
    display: block;
    float: left;
    width: 100%;
}

.text-label-full {
    padding: 0px 20px;
    box-sizing: border-box;
}

.label-inrow {
    display: inline-block;
    margin: 0px 10px 20px 0px;
}

.form-input:-webkit-autofill,
.form-input:-webkit-autofill:hover,
.form-input:-webkit-autofill:focus,
.form-input:autofill,
.form-input:autofill:hover,
.form-input:autofill:focus,
.form-input-textarea:-webkit-autofill,
.form-input-textarea:-webkit-autofill:hover,
.form-input-textarea:-webkit-autofill:focus,
.form-input-textarea:autofill,
.form-input-textarea:autofill:hover,
.form-input-textarea:autofill:focus {
    /*    -webkit-box-shadow: 0 0 0px 40rem var(--grigio-input) inset;
    border: 0.5px solid var(--blu-scuro);*/
    box-sizing: border-box;
}

.form-input,
.span-input {
    display: inline-block;
    width: 100%;
    height: 50px;
    line-height: 49px;
    background-color: var(--nero);
    border: 0.5px solid var(--bianco);
    border-radius: 5px;
    font-size: 15px;
    font-family: 'JetBrains Mono';
    color: var(--bianco);
    padding: 0px 20px;
    box-sizing: border-box;
}

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

.form-select {
    width: 100%;
    height: 50px;
    line-height: 49px;
    border-radius: 25px;
    color: var(--nero);
    background-color: var(--bianco);
    border: 0.5px solid var(--nero);
    font-size: 16px;
    padding: 0px 20px;
    box-sizing: border-box;
}

.form-input-textarea {
    width: 100%;
    height: 100px;
    border-radius: 5px;
    color: var(--bianco);
    background-color: var(--nero);
    border: 0.5px solid var(--bianco);
    font-family: 'JetBrains Mono';
    font-size: 15px;
    line-height: 20px;
    padding: 15px 20px;
    box-sizing: border-box;
    resize: none;
    position: relative;
    z-index: 10;
}

.textarea-cont {
    position: relative;
    overflow: hidden;
}

#privacy-label {
    display: inline-block;
    width: 75%;
    float: left;
    padding: 10px 0px;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 18px;
    color: var(--bianco);
    font-family: 'JetBrains Mono';
    padding-top: 10px;
}

.span-input-textarea {
    width: 100%;
    border-radius: 25px;
    color: var(--nero);
    background-color: var(--bianco);
    border: 0.5px solid var(--nero);
    font-size: 16px;
    line-height: 20px;
    padding: 15px 20px;
    box-sizing: border-box;
    display: inline-block;
}

.form-error-span {
    display: inline-block;
    padding: 10px 20px;
    color: red;
    width: 100%;
}

.form-file-input-cont {
    position: relative;
    width: 200px;
    height: 50px;
    display: block;
    float: left;
    overflow: hidden;
}

.form-file-input-cont input {
    visibility: hidden;
}

.fset-radio {
    cursor: pointer;
}

.form-file-input-cont .btn-file-upload {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
}

.form-hidden-upload-filename {
    height: 50px;
    line-height: 50px;
    display: block;
    float: right;
    width: calc(100% - 210px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.btn-eye-password {
    position: absolute;
    right: 0px;
    top: 0px;
    height: 50px;
    line-height: 50px;
    width: 50px;
    text-align: center;
    display: block;
    color: var(--grigio-iifm);
}

.label-fake-checkbox-cont {
    position: relative;
    padding-left: 40px;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 16px;
}

.label-fake-checkbox-cont input {
    position: absolute;
    left: 10px;
    top: 10px;
    visibility: hidden;
}

input:checked+.fake-checkbox-int {
    display: block;
}

.label-fake-checkbox {
    display: block;
    float: left;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    border: 0.5px solid var(--nero);
    background-color: var(--bianco);
    position: absolute;
    z-index: 10;
    box-sizing: border-box;
    left: 0px;
    top: 0px;
}

.fake-checkbox-int {
    position: absolute;
    display: none;
    float: left;
    width: 15px;
    height: 15px;
    border-radius: 10px;
    top: 7px;
    left: 6.9px;
    background-color: var(--nero);
}

.btn,
.btn-square {
    min-width: 100px;
    height: 35px;
    line-height: 35px;
    border-radius: 5px;
    font-size: 12px;
    padding: 0px 15px;
    font-family: 'JetBrains Mono';
    box-sizing: border-box;
    font-weight: 400;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}

.btn-square {
    min-width: 35px;
    width: 35px;
    padding: 0px;
    text-align: center;
}

.btn-chiaro {
    background-color: var(--beige);
    color: var(--blue-scuro);
    border: 0.5px solid var(--blue-scuro);
    line-height: 34px;
}

.btn-scuro {
    background-color: var(--blue-scuro);
    color: var(--beige);
    border: 0.5px solid var(--beige);
    line-height: 34px;
}

.btn-scuro.sel {
    background-color: var(--grigio);
    color: var(--blue-scuro);
    border: 0.5px solid var(--beige);
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}

.page {
    float: none;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.page {
    max-width: 1640px;
    padding-left: 20px;
    padding-right: 20px;
}

.page-small {
    max-width: 1120px;
    float: none;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
}

/* Header */
#header {
    position: fixed;
    top: 20px;
    border-radius: 5px;
    z-index: 9999;
}

#logo-top,
#logo-footer {
    display: block;
    float: left;
    height: 35px;
}

#logo-top .aivox-logo-svg,
#logo-footer .aivox-logo-svg {
    height: 100%;
}

#payoff-top {
    color: var(--grigio);
    font-size: 14px;
    line-height: 35px;
    font-family: 'JetBrains Mono';
    display: block;
    float: left;
    margin-left: 40px;
}

#header-mask {
    position: absolute;
    width: 100%;
    height: 70px;
    top: 0px;
    left: 0px;
    background-color: var(--nero);
    z-index: 9;
    border-radius: 5px;
}

#header-int {
    padding: 17.5px 20px;
    box-sizing: border-box;
    float: none;
    border-radius: 5px;
    position: relative;
    z-index: 10;
}

#header .video-html5-cover {
    position: absolute;
    top: 0px;
    left: 0px;
    display: none;
    float: left;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 5px;

    opacity: 0;
    display: none;
    z-index: 8;
}

#header-nav {
    box-sizing: border-box;
    float: none;
    margin: 0px auto;
    box-sizing: border-box;
    padding: 55px 20px 20px 20px;
    position: relative;

    opacity: 0;
    display: none;
    z-index: 8;
}

#header-nav-int {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 10px;
}

#header.open #header-nav {
    display: block;
    -webkit-animation: openmenu_nav 1s forwards;
    animation: openmenu_nav 1s forwards;
}

#header.open #header-mask {
    -webkit-animation: openmenu_mask 1s forwards;
    animation: openmenu_mask 1s forwards;
}

#header.open .video-html5-cover {
    display: block;
    z-index: 8;
    opacity: 0;
    -webkit-animation: openmenu_video 1s forwards;
    animation: openmenu_video 1s forwards;
}

#header.open {
    border-radius: 5px;
    overflow: hidden;
}

#header.open #header-int {
    background-color: transparent;
}

#header.open #btn-toggle-menu {
    background-color: var(--grigio);
    color: var(--blue-scuro);
    border: 0.5px solid var(--beige);
}

.hp-accordion-btn {
    display: block;
    float: left;
    width: 100%;
    text-align: left;
}

.hp-accordion-btn.text-right {
    text-align: right;
}

.hp-accordion-btn span {
    display: inline-block;
    width: 8px;
}

.hp-accordion-btn.close span:last-child {
    display: none;
}

.hp-accordion-btn.open span:first-child {
    display: none;
}

.hp-accordion-text {
    display: block;
    float: left;
    width: 100%;
    padding-left: 12px;
    box-sizing: border-box;
    margin-bottom: 10px;
}

button.close~.hp-accordion-text {
    display: none;
}

@keyframes openmenu_nav {
    0% {
        opacity: 0;
    }

    40% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes openmenu_mask {
    0% {
        height: 70px;
        opacity: 1;
        top: 0px;
    }

    40% {
        height: 100%;
        opacity: 1;
        top: 0px;
    }

    80% {
        opacity: 1;
        top: 100%;
        height: 100%;
    }

    99% {
        top: 100%;
        opacity: 0;
        height: 100%;
    }

    100% {
        opacity: 0;
        height: 0%;
    }
}

@keyframes openmenu_video {
    0% {
        opacity: 0;
    }

    40% {
        opacity: 0;
    }

    41% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}

#header.close .video-html5-cover {
    -webkit-animation: closemenu_video 1s forwards;
    animation: closemenu_video 1s forwards;
}

#header.close #header-nav {
    -webkit-animation: closemenu_nav 1s forwards;
    animation: closemenu_nav 1s forwards;
}

#header.close #header-mask {
    -webkit-animation: closemenu_mask 1s forwards;
    animation: closemenu_mask 1s forwards;
}

@keyframes closemenu_mask {
    0% {
        opacity: 1;
        height: 0%;
        top: 100%;
    }

    50% {
        opacity: 1;
        height: 100%;
        top: 0px;
    }

    100% {
        opacity: 1;
        height: 70px;
    }
}

@keyframes closemenu_video {
    0% {
        display: block;
        opacity: 1;
    }

    50% {
        display: block;
        opacity: 1;
    }

    51% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

@keyframes closemenu_nav {
    0% {
        display: block;
        opacity: 1;
    }

    50% {
        display: block;
        opacity: 1;
    }

    51% {
        display: block;
        opacity: 0;
    }

    100% {
        display: none;
        opacity: 0;
    }
}

.nav-column {
    position: relative;
    padding: 40px 0px 40px 0px;
    box-sizing: border-box;
    width: auto;
}

.nav-column-x2 {
    width: auto;
}

#nav-contact-updates-cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.nav-main-lnk {
    font-family: 'JetBrains Mono';
    display: block;
    float: left;
    width: 100%;
    font-size: clamp(22px, calc((35 * 100 / 1920) * 1vw), 35px);
    line-height: clamp(25px, calc((38 * 100 / 1920) * 1vw), 38px);
    font-weight: bold;
    color: var(--bianco);
}

.nav-lnk {
    display: block;
    float: left;
    width: 100%;
    font-size: clamp(11px, 0.729vw, 14px);
    line-height: clamp(16px, 1.145vw, 22px);
    text-transform: uppercase;
    margin-top: 10px;
}

#nav-legal {
    font-size: clamp(11px, 0.729vw, 14px);
    line-height: clamp(16px, 1.145vw, 22px);
    margin-top: clamp(40px, 5.2vw, 100px);
}

#footer {
    margin: 80px 0px 20px 0px;
}

#footer-int {
    min-height: 100px;
    background-color: var(--nero);
    border-radius: 5px;
    padding: 32.5px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.page,
.page-abs {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 0px auto;
}

.page-abs {
    left: 20px;
}

.txt-sfumato,
.txt-sfumato-no-shadow {
    background-color: #d0bba5;
    color: #d0bba5;
    background-image: linear-gradient(90deg, #d0bba5, #a58acc 50%, #59c7af 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -moz-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
}

.txt-sfumato {
    filter: drop-shadow(3px 3px 6px #000000);
}

.txt-sfumato-left-cont .txt-sfumato {
    width: auto;
    float: left;

}

.txt-sfumato-right-cont .txt-sfumato {
    width: auto;
    float: right;
}

.titolo-big {
    font-size: clamp(40px, 5.208vw, 100px);
    line-height: clamp(45px, 5.468vw, 105px);
    font-family: 'JetBrains Mono';
}

.titolo-medium {
    font-size: clamp(30px, 2.34375vw, 45px);
    line-height: clamp(39px, 2.8125vw, 54px);
    font-family: 'JetBrains Mono';
}

/* Elementi Pagina Generica */
/* TEXT */
.text-small,
.ritch-cont p {
    font-size: clamp(12px, 1.481vw, 16px);
    line-height: clamp(15px, 1.851vw, 20px);
    font-family: 'Inter';
}

.text-big,
.ritch-cont .text-big {
    font-size: clamp(16px, 1.851vw, 20px);
    line-height: clamp(20px, 2.314vw, 25px);
    font-family: 'Inter';
}

.text-link {
    font-size: clamp(16px, 1.851vw, 20px);
    line-height: clamp(20px, 2.314vw, 25px);
    font-family: 'JetBrains Mono';
}

/* TEXT + IMAGE */
.text_image-cont {
    display: flex;
    column-gap: 20px;
    /* ATTENTION Non sono sicuro */
    /*
  * align-items: center;
 */
}

.text_image-cont.align-text_left_img_right {
    flex-direction: row;
}

.text_image-cont.align-img_left_text_right {
    flex-direction: row-reverse;
}

.text_image-image {
    width: 50%;
    box-sizing: border-box;
}

.text_image-image picture {
    display: block;
    float: left;
    width: 100%;

}

.text_image-image img {
    width: 100%;
    border-radius: 0px;
}

.text_image-image figcaption {
    display: block;
    float: left;
    width: 100%;
}

.text_image-text {
    width: 50%;
    box-sizing: border-box;
}

.text_image-cont.align-text_left_img_right .text_image-text * {
    text-align: right !important;
}

/* Single IMAGE */
.image-cont {
    display: flex;
    width: 100%;
}

.image-cont picture {
    display: block;
    width: 100%;
    text-align: center;
}

.image-cont img {
    max-width: 100%;
    border-radius: 0px;
}

/** Full **/
.image-cont.align-full {
    flex-wrap: wrap;
}

.image-cont.align-full figure,
.image-cont.align-full figcation {
    width: 100%;
}

/** Left **/
.image-cont.align-left {
    align-items: flex-end;
    column-gap: 10px;
}

.image-cont.align-left picture {
    width: calc(4 * 100% / 5);
}

.image-cont.align-left figcaption {
    width: calc(1 * 100% / 5);
    /*     text-align: right; */
}

/** Center **/
.image-cont.align-center {
    align-items: flex-end;
    flex-flow: row-reverse;
    column-gap: 10px;
}

.image-cont.align-center picture {
    width: calc(3 * 100% / 5);
    margin-right: calc(1 * 100% / 5);
}

.image-cont.align-center figcaption {
    width: calc(1 * 100% / 5);
    text-align: right;
}

/** Right **/
.image-cont.align-right {
    align-items: flex-end;
    flex-flow: row-reverse;
    column-gap: 10px;
}

.image-cont.align-right picture {
    width: calc(4 * 100% / 5);
}

.image-cont.align-right figcaption {
    width: calc(1 * 100% / 5);
    text-align: right;
}

/* Two IMAGE */
.two_images-cont {
    display: flex;
    width: 100%;
    column-gap: 20px;
}

.two_images-cont picture {
    width: 100%;
    text-align: center;
}

.two_images-cont img {
    max-width: 100%;
    border-radius: 0px;
}

.two_images-cont figure {
    width: 50%;
}

/* AccordionGroup */
.accordiongroup-cont.align-center {
    padding: 0px 20%;
    box-sizing: border-box;
}

.accordiongroup-cont.align-left {
    padding: 0px 40% 0px 0px;
    box-sizing: border-box;
}

.accordiongroup-cont.align-right {
    padding: 0px 0px 0px 40%;
    box-sizing: border-box;
}

/* Download */
.download-cont {
    display: flex;
    width: 100%;
}

.download-cont.align-left {
    justify-content: flex-start;
}

.download-cont.align-center {
    justify-content: center;
}

.download-cont.align-right {
    justify-content: flex-end;
}

/* HTML Embed */
.html_embed-element {
    width: 100%;
    /* ATTENTION  - Solo per test */
    height: 500px;
    background-color: pink;
}

.html_embed-cont {
    display: flex;
}

/** Left **/
.html_embed-cont.align-left {
    align-items: flex-start;
    column-gap: 10px;
    padding-right: calc(100% / 5);
    align-items: flex-end;
}

.html_embed-cont.align-left .html_embed-element {
    width: calc(3 * 100% / 5);
}

.html_embed-cont.align-left .html_embed-caption {
    width: calc(1 * 100% / 5);
}

/** Center **/
.html_embed-cont.align-center {
    flex-flow: column;
    justify-content: center;
    align-items: center;
}

.html_embed-cont.align-center .html_embed-element {
    width: calc(3 * 100% / 5);
}

.html_embed-cont.align-center .html_embed-caption {
    width: calc(3 * 100% / 5);
}

/** Right **/
.html_embed-cont.align-right {
    align-items: flex-end;
    column-gap: 10px;
    align-items: flex-end;
    flex-flow: row-reverse;
}

.html_embed-cont.align-right .html_embed-element {
    width: calc(3 * 100% / 5);
}

.html_embed-cont.align-right .html_embed-caption {
    width: calc(100% / 5);
    text-align: right;
}

/* Three Images */
.three_images-cont {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}

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

.three_images-cont img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 0px;
}

/** N. 1 BIG SMALL SMALL **/
.three_images-cont.schema-big_small_small {
    grid-template-rows: repeat(3, calc((100vw - 80px) / 6 - 20px));
}

.three_images-cont.schema-big_small_small .three_images-img1 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 1;
    grid-row-end: 3;
}

.three_images-cont.schema-big_small_small .three_images-img2 {
    grid-column-start: 4;
    grid-column-end: 5;
    grid-row-start: 2;
    grid-row-end: 3;
}

.three_images-cont.schema-big_small_small .three_images-img3 {
    grid-column-start: 3;
    grid-column-end: 4;
    grid-row-start: 3;
    grid-row-end: 3;
}

/** N. 2 SMALL MEDIUM MEDIUM **/
.three_images-cont.schema-small_medium_medium {
    grid-template-rows: repeat(4, calc((100vw - 80px) / 6 - 20px));
}

.three_images-cont.schema-small_medium_medium .three_images-img1 {
    grid-column-start: 3;
    grid-column-end: 4;
    grid-row-start: 2;
    grid-row-end: 2;
}

.three_images-cont.schema-small_medium_medium .three_images-img2 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 3;
}

.three_images-cont.schema-small_medium_medium .three_images-img3 {
    grid-column-start: 3;
    grid-column-end: 5;
    grid-row-start: 3;
    grid-row-end: 5;
}

/** N. 3 BIG MEDIUM MEDIUM **/
.three_images-cont.schema-big_medium_medium {
    grid-template-rows: repeat(4, calc((100vw - 80px) / 6 - 20px));
}

.three_images-cont.schema-big_medium_medium .three_images-img1 {
    grid-column-start: 2;
    grid-column-end: 7;
    /* anche 6 se allineato ai box quadrati*/
    grid-row-start: 1;
    grid-row-end: 3;
}

.three_images-cont.schema-big_medium_medium .three_images-img2 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 3;
    grid-row-end: 5;
}

.three_images-cont.schema-big_medium_medium .three_images-img3 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 3;
    grid-row-end: 5;
}

/** N. 3 BIG MEDIUM BIG **/
.three_images-cont.schema-big_medium_big {
    grid-template-rows: repeat(5, calc((100vw - 80px) / 5 - 20px));
}

.three_images-cont.schema-big_medium_big .three_images-img1 {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 4;
}

.three_images-cont.schema-big_medium_big .three_images-img2 {
    grid-column-start: 3;
    grid-column-end: 5;
    grid-row-start: 2;
    grid-row-end: 4;
}

.three_images-cont.schema-big_medium_big .three_images-img3 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 4;
    grid-row-end: 6;
}


@media only screen and (min-width: 1920px) and (max-width: 10000px) {

    /* Va poi messo al posto giusto */
    .three_images-cont.schema-big_small_small {
        grid-template-rows: repeat(3, calc((1920px - 80px) / 6 - 20px));
    }

    .three_images-cont.schema-small_medium_medium {
        grid-template-rows: repeat(4, calc((1920px - 80px) / 6 - 20px));
    }

    .three_images-cont.schema-big_medium_medium {
        grid-template-rows: repeat(4, calc((1920px - 80px) / 6 - 20px));
    }

    .three_images-cont.schema-big_medium_big {
        grid-template-rows: repeat(6, calc((1920px - 80px) / 6 - 20px));
    }
}


.hp-project-title {
    font-size: clamp(12px, 0.83333vw, 16px);
    line-height: clamp(12px, 0.83333vw, 16px);
    font-family: 'JetBrains Mono';
}

/* MAIN */
main {
    padding: 90px 0px 0px 0px;
    min-height: calc(100vh);
    box-sizing: border-box;
}

.hide_mask #header-mask {
    opacity: 0;
}

#header-mask {
    opacity: 1;
}

/* HP */
/* Oggetto che scorre */
#hp-top-cover {
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0px;
    left: 0px;
    overflow: hidden;
}

/* Div per nascondere lo scorrere */
#hp-scroll-cover {
    height: 20px;
    top: 0px;
    left: 0px;
    width: 100%;
    position: fixed;
    background-color: var(--blue-scuro);
    z-index: 9998;
}

#hp-top {
    width: 100%;
}

#hp-top-cover .video-html5-cover {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

#hp-top-cover-text {
    position: absolute;
    height: 100%;
    z-index: 10;
    display: flex;
    align-items: center;
}

#hp-top-cover-text-int {
    display: grid;
    grid-template-columns: 1fr 2fr 2fr;
}

.hp-lnks {
    font-family: 'JetBrains Mono';
    font-size: 12px;
    line-height: 18px;
}

/* What */
#hp-what-cont {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 0px auto;
    margin-top: calc(100vh - 70px);
    padding: 0px 20px;
    display: grid;
    grid-template-columns: 2fr 3fr;
}

#hp-what-scroller {
    position: absolute;
    width: calc((100 * var(--vw) - 40px) * 0.4);
    max-width: calc((1920px - 40px) * 0.4);
    left: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    padding: 20px;
    box-sizing: border-box;
    z-index: 10;
}

#hp-what-title-cont {
    height: clamp(40px, 5.208vw, 100px);
}

#hp-what-title {
    position: absolute;
    z-index: 15;
    width: calc((100vw - 40px) * 4 / 5);
}

/* How */
#hp-how-cont {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 160px auto 0px auto;
    padding: 0px 20px;
    display: grid;
    grid-template-columns: 3fr 2fr;
}

#hp-how-title {
    position: absolute;
    z-index: 15;
    right: 0px;
    width: calc((100vw - 40px) * 4 / 5);
    text-align: right;
}

/* WHO */
#hp-who-cont {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 160px auto 0px auto;
    padding: 0px 20px;
    display: grid;
    grid-template-columns: 1fr 4fr;
}

#hp-who-title-cont {
    height: clamp(40px, 5.208vw, 100px);
}

#hp-who-title {
    position: absolute;
    z-index: 15;
    width: calc((100vw - 40px) * 4 / 5);
    left: 0px;
}

#hp-who-scroller {
    position: absolute;
    width: calc((100% - 40px) * 1 / 5);
    max-width: calc((1920px - 40px) * 1 / 5);
    left: 20px;
    padding: 20px;
    box-sizing: border-box;
    z-index: 10;
}

/* Vision */
#hp-vision-cont {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 160px auto 0px auto;
    padding: 0px 20px;
    display: grid;
    grid-template-columns: 4fr 1fr;
}

#hp-vision-scroller {
    position: absolute;
    width: calc((100% - 40px) * 1 / 5);
    max-width: calc((1920px - 40px) * 1 / 5);
    top: 0px;
    /*     left: calc((100% - 40px) * 4 / 5); */
    right: 0px;
    padding: 60px 20px 20px 20px;
    box-sizing: border-box;
    height: 400px;
    z-index: 10;
}

#hp-vision-title-cont {
    height: clamp(40px, 5.208vw, 100px);
}

#hp-vision-title {
    position: absolute;
    z-index: 15;
    right: 0px;
    width: calc((100vw - 40px) * 4 / 5);
    text-align: right;
}

/* Tech Lab */
#hp-techlab-cont {
    width: calc(100% - 40px);
    max-width: 1920px;
    float: none;
    margin: 160px auto 0px auto;
    padding: 0px 20px;

}

#hp-techlab-title-cont {
    height: clamp(40px, 5.208vw, 100px);
}

#hp-techlab-title {
    position: absolute;
    z-index: 15;
    width: auto;
    right: 0px;
}

.hp-techlab-row {
    min-height: 200px;
    padding: 40px 0px;
    border-top: 0.5px solid #b2b2b2;
    box-sizing: border-box;
    transition: backgroundColor 0.2s;
    -webkit-transition: backgroundColor 0.2s;
}

.hp-techlab-row-int {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    height: 120px;
    column-gap: 40px;
}

#hp-techlab-row-cont {
    border-bottom: 0.5px solid #b2b2b2;
    margin-top: 40px;
    position: relative;
}

.hp-techlab-row-title {
    font-size: clamp(20px, 1.5625vw, 30px);
    line-height: clamp(25px, 1.8229vw, 35px);
    font-family: 'JetBrains Mono';
    color: var(--beige);
}

.hp-techlab-row-btn-cont {
    display: flex;
    justify-content: center;
    align-items: center;
    /*     position: relative; */
}

.hp-techlab-row-btn-cont a {
    position: relative;
    z-index: 10;
    opacity: 0;
}

.hp-techlab-row-full-img-cover {
    position: absolute;
    width: calc((100% - 40px - 80px) / 3);
    height: 100%;
    bottom: 0px;
    right: 40px;
    display: none;
    opacity: 0;
}

.hp-techlab-row-full-img-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* UPDATES */
#hp-updates {
    margin-top: 160px;
}

#hp-updates-slider-cont {
    padding: 0px 40px;
    box-sizing: border-box;
    overflow: hidden;
}

#hp-updates-slider {
    height: 320px;
    margin-top: 40px;
}

.hp-updates-slide {
    height: 320px;
    width: 435px;
    display: block;
    box-sizing: border-box;
    padding-right: 20px;
}

.hp-updates-slide-int {
    height: 320px;
    width: 415px;
    display: block;
    box-sizing: border-box;
    border: 0.5px solid var(--beige);
    border-radius: 5px;
    padding: 40px 40px 95px 40px;
    position: relative;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    overflow: hidden;
}

.hp-updates-slide-int .btn-scuro {
    bottom: 40px;
    left: 40px;
    position: absolute;
    z-index: 5;
}

.hp-updates-slide-data,
.hp-updates-slide-title {
    display: block;
    float: left;
    width: 100%;
    font-family: 'JetBrains Mono';
    z-index: 5;
    position: relative;
}

.hp-updates-slide-img-cover {
    display: block;
    float: left;
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 4;
    background-color: rgba(0, 0, 0, 0.5);
}

.hp-updates-slide-img .hp-updates-slide-img-cover {
    height: 100%;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}

.hp-updates-slide-data {
    font-size: 12px;
    line-height: 15px;
    color: var(--bianco);
}

.hp-updates-slide-title {
    font-size: 20px;
    line-height: 24px;
    color: var(--bianco);
    font-weight: bold;
    margin-top: 5px;
    height: 168px;
    overflow: hidden;
}

.hp-updates-slide-img picture {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
}

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

#hp-updates-slider-nav {
    position: absolute;
    display: block;
    right: 20px;
    top: 0px;
    height: clamp(40px, 5.208vw, 100px);
    line-height: clamp(40px, 5.208vw, 100px);
}

#hp-updates-slider-nav button {
    display: inline-block;
    float: none;
    color: var(--beige);
    width: 35px;
    height: 35px;
    line-height: 35px;
    border: 0.5px solid var(--beige);
    box-sizing: border-box;
    margin-left: 20px;
    border-radius: 5px;
    font-size: 12px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
}

/* PAGINA LISTA UPDATES */
.updates-lista-cont {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: calc((100% - 1740px) / 4);
}

/* PAGINA CONTATTI */
.contatti-text-cont {
    display: block;
    float: left;
    width: 100%;
    position: relative;
}

.titolo-contatti-abs {
    display: block;
    width: auto;
    position: absolute;
    bottom: 220px;
    left: 0px;
}

.contatto-singolo-cont {
    display: block;
    float: left;
    padding-left: 20px;
    box-sizing: border-box;
}

/* PAGINA REQUEST A DEMO */
.demo-cont {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
}

/*.text-demo-cont {
  display: block;
  width: calc((100% - 10px )/ 5 * 2);
  margin: 10px 0px 0px 10px;
}*/
.tre-quinti-cont-demo-text {
    max-width: calc((100% / 5) * 3);
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: start;
}

.tre-quinti-cont-demo-text img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0px;
    overflow: hidden;
}

/*  ELEMENTI PAGINA GENERICA */
.accordion-chiuso {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    flex-wrap: wrap;
    max-width: 1120px;
    width: 100%;
    height: auto;
    padding: 20px;
    box-sizing: border-box;
    border-top: 0.5px solid #b2b2b2;
    border-bottom: 0.5px solid #b2b2b2;
}

.titolo-accordion {
    width: calc(100% - 55px);
    font-size: clamp(20px, 2.777vw, 30px);
    line-height: clamp(25px, 3.240vw, 35px);
    font-family: 'JetBrains Mono';
}

.accordion-aperto {
    display: none;
    max-width: 1120px;
    height: auto;
    padding: 40px;
    box-sizing: border-box;
    border-bottom: 0.5px solid #b2b2b2;
    background-color: #283036;
}

.accordion-aperto.active {
    display: block;
}

.accordion-ico-open,
.accordion-ico-close {
    display: block;
    float: left;
    width: 35px;
    height: clamp(25px, 3.240vw, 35px);
    font-size: clamp(20px, 2.314vw, 25px);
    line-height: clamp(25px, 3.240vw, 35px);
}

.accordion-chiuso.active .accordion-ico-close,
.accordion-chiuso .accordion-ico-open {
    display: block;
}

.accordion-chiuso.active .accordion-ico-open,
.accordion-chiuso .accordion-ico-close {
    display: none;
}

/*.accordion-ico-open.hidden,
.accordion-ico-close.hidden {
  display: none;
}*/
/*.download-cont {
  max-width: 1120px;
  height: auto;
  padding: 20px;
  box-sizing: border-box;
  border-top: 0.5px solid #b2b2b2;
  border-bottom: 0.5px solid #b2b2b2;
}*/
.download-link {
    width: 100%;
    max-width: 1120px;
    height: auto;
    padding: 20px;
    box-sizing: border-box;
    border-top: 0.5px solid #b2b2b2;
    border-bottom: 0.5px solid #b2b2b2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.download-link .btn {
    width: 120px;
}

.titolo-download {
    display: block;
    float: left;
    width: 100%;
    font-size: clamp(18px, 2.134vw, 25px);
    line-height: clamp(22px, 2.777vw, 30px);
    font-family: 'JetBrains Mono';
}


.img-full-cont {
    display: block;
    float: left;
    width: 100%;
    height: auto;
    border-radius: 0px;
    overflow: hidden;
}

.img-full-cont img {
    width: 100%;
    height: 100%;
}

.img-dida-cont,
.img-box-cont {
    display: flex;
    justify-content: flex-start;
    align-items: end;
    flex-wrap: wrap;
}

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

.text-dida-cont {
    display: block;
    float: left;
    max-width: calc((100% - 1120px) / 2);
    padding: 0px 10px;
    box-sizing: border-box;
}

.text-dida {
    font-size: 12px;
    line-height: 15px;
    font-family: 'Inter';
    margin-top: 10px;
}

.img-small-center-cont {
    display: block;
    max-width: 1120px;
    height: auto;
}

.img-small-center-cont img,
.img-four-fifth-cont img,
.img-fifty-cont img {
    width: 100%;
    height: 100%;
    border-radius: 0px;
    overflow: hidden;
}

.img-four-fifth-cont {
    display: block;
    max-width: calc((100% / 5) * 4);
    height: auto;
}

.text-dida-one-fifth-cont {
    display: block;
    float: left;
    max-width: calc(100% / 5);
    padding: 0px 10px;
    box-sizing: border-box;
}

.img-fifty-cont {
    display: block;
    max-width: calc(50% - 20px);
    height: auto;
    border-radius: 0px;
    overflow: hidden;
}

.img-text-cont {
    display: flex;
    align-items: center;
}

.flex-column-center {
    display: flex;
    flex-direction: column;
    align-items: center;
}

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

.img-tre-quinti-cont {
    display: block;
    max-width: calc((100% / 5) * 3);
    aspect-ratio: 16 / 9;
    border-radius: 0px;
    overflow: hidden;
}

.img-square-uno-quinto-cont {
    display: block;
    max-width: 20%;
    aspect-ratio: 1 / 1;
    border-radius: 0px;
    overflow: hidden;
}

.tre-quinti-cont {
    max-width: calc((100% / 5) * 3);
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
}

.quattro-quinti-cont {
    max-width: calc((100% / 5) * 4);
    height: auto;
    display: flex;
    flex-wrap: wrap;
}

.img-square-tre-quinti-cont {
    display: block;
    max-width: calc((100% - 10px)/ 5 * 3);
    aspect-ratio: 1 / 1;
    border-radius: 0px;
    overflow: hidden;
}

.img-square-due-quinti-cont {
    display: block;
    max-width: calc((100% - 10px) / 5 * 2);
    aspect-ratio: 1 / 1;
    border-radius: 0px;
    overflow: hidden;
}

.img-landascape-cont {
    display: block;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 0px;
    overflow: hidden;
}

.img-square-quattro-quinti-cont {
    display: block;
    max-width: calc((100% - 10px)/ 7 * 3);
    aspect-ratio: 1 / 1;
    border-radius: 0px;
    overflow: hidden;
}

.img-portrait-cont {
    display: block;
    max-width: calc((100% - 10px) / 2);
    aspect-ratio: 9 / 16;
    border-radius: 0px;
    overflow: hidden;
}

.img-tre-quinti-square-cont {
    display: block;
    max-width: calc((100% - 10px) / 2);
    aspect-ratio: 1 / 1;
    border-radius: 0px;
    overflow: hidden;
}

.img-tre-quinti-landscape-cont {
    display: block;
    max-width: calc((100% / 9) * 8);
    aspect-ratio: 16 / 9;
    border-radius: 0px;
    overflow: hidden;
}

.img-tre-quinti-cont img,
.img-square-uno-quinto-cont img,
.img-square-due-quinti-cont img,
.img-square-tre-quinti-cont img,
.img-landascape-cont img,
.img-square-quattro-quinti-cont img,
.img-portrait-cont img,
.img-tre-quinti-landscape-cont img,
.img-tre-quinti-square-cont img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*  fine livi */

/* Request a Demo */
#request-demo-titolo {
    display: block;
    width: auto;
    position: absolute;
    z-index: 10;
    /* Due Blocchi, 20px -> Gap, Altezza della scritta, Parametro di correzione */
    top: calc((100vw - 160px) * 2 / 5 + 20px - clamp(45px, 5.468vw, 105px) - 20px);
    /* Due Blocchi, 20px -> Gap, Parametro di correzione */
    left: calc((100vw - 160px) * 2 / 5 + 20px + 20px + 10px);
}

#request-demo-grid {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: repeat(5, calc((100% - 80px) / 5));
    gap: 20px;
}

#request-demo-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0px;
}

#request-demo-grid picture:nth-child(1) {
    width: 100%;
    aspect-ratio: 1 / 1;
    grid-column-start: 1;
    grid-column-end: 2;
    align-self: end;
}

#request-demo-grid picture:nth-child(2) {
    width: 100%;
    aspect-ratio: 1 / 1;
    grid-column-start: 2;
    grid-column-end: 4;
}

#request-demo-grid picture:nth-child(3) {
    width: 100%;
    aspect-ratio: 1 / 1;
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 2;
}

#request-demo-text-cont {
    grid-column-start: 3;
    grid-column-end: 4;
    grid-row-start: 2;
}

#request-demo-form-cont {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 2;
}

/* Contatti */
#contatti-titolo {
    display: block;
    width: auto;
    position: absolute;
    z-index: 10;
    /* Tre Blocchi, 2 * 20px -> Gap * 9 / 16,  Altezza della scritta, Parametro di correzione */
    top: calc(((100vw - 160px) * 3 / 5 + 40px) * 9 / 16 - clamp(45px, 5.468vw, 105px) - 20px);
    /* Due Blocchi, 20px -> Gap, Parametro di correzione */
    left: calc((100vw - 160px) * 1 / 5 + 20px + 10px);
}

#contatti-grid {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: repeat(5, calc((100% - 80px) / 5));
    gap: 20px;
}

#contatti-grid picture:nth-child(1) {
    width: 100%;
    aspect-ratio: 16 / 9;
    grid-column-start: 1;
    grid-column-end: 4;
    /*align-self: end;*/
}

#contatti-grid picture:nth-child(2) {
    width: 100%;
    aspect-ratio: 1 / 1;
    grid-column-start: 4;
    grid-column-end: 5;
    align-self: end;
}

#contatti-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0px;
}

#contatti-text-cont {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 2;
}

#contatti-referenti-cont {
    grid-column-start: 3;
    grid-column-end: 6;
    grid-row-start: 2;
}

.contatti-referente {
    margin-bottom: 20px;
}

.contatti-referente:last-child {
    margin-bottom: 0px;
}

/* Case Study */
.cs-list-el-cont {
    grid-template-columns: repeat(6, calc(100% / 6));
    display: grid;
    margin-bottom: 40px;
}

.cs-list-el {
    width: 100%;
    display: block;
    float: left;
}

.cs-list-el-cont:nth-child(1) .cs-list-el,
.cs-list-el-cont:nth-child(1n+4) .cs-list-el {
    grid-column-start: 1;
    grid-column-end: 4;
}

.cs-list-el-cont:nth-child(2) .cs-list-el,
.cs-list-el-cont:nth-child(2n+4) .cs-list-el {
    grid-column-start: 3;
    grid-column-end: 6;
}

.cs-list-el-cont:nth-child(3) .cs-list-el,
.cs-list-el-cont:nth-child(3n+4) .cs-list-el {
    grid-column-start: 2;
    grid-column-end: 5;
}

.cs-list-el-cont:nth-child(4) .cs-list-el,
.cs-list-el-cont:nth-child(4n+4) .cs-list-el {
    grid-column-start: 4;
    grid-column-end: 7;
}


.cs-list-el .cs-list-picture {
    width: 100%;
    display: block;
    float: left;
    text-align: center;
    margin-bottom: 10px;
}

.cs-list-el img {
    max-width: 100%;
    border-radius: 0px;
}

.cs-list-span {
    width: 100%;
    display: block;
    float: left;
}

.cs-list-tag {
    line-height: 25px;
    margin-bottom: 10px;
}

.cs-tag {
    display: inline-block;
    border-radius: 5px;
    font-family: 'JetBrains Mono';
    font-size: 12px;
    color: #000;
    background-color: var(--grigio);
    height: 25px;
    line-height: 25px;
    padding: 0px 10px;
}

.cs-list-titolo {
    font-family: 'JetBrains Mono';
    font-weight: 900;
    font-size: 16px;
    line-height: 20px;
    color: var(--beige);
    margin-bottom: 10px;
}

.cs-list-abstract {
    color: var(--bianco);
}

/* Sviluppo */
.sviluppo-pg-anchor {
    position: absolute;
    top: -100px;
}

/** Prodotto **/
.sviluppo-grid-section {
    display: grid;
    grid-template-columns: repeat(5, calc((100% - 80px) / 5));
    gap: 20px;
}

.sviluppo-grid-section img {
    border-radius: 0px;
}

#sviluppo-prodotto-text {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 1;
    /*     align-self: center; */
    padding-top: 80px;
}

#sviluppo-prodotto-image1 {
    grid-column-start: 3;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 1;
    align-self: center;
}

#sviluppo-prodotto-image2 {
    grid-column-start: 3;
    grid-column-end: 6;
    grid-row-start: 2;
    grid-row-end: 2;
    align-self: center;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

#sviluppo-prodotto-image2 picture {
    width: calc(100% * 2 / 3);
    padding-left: 10px;
    box-sizing: border-box;
}

#sviluppo-prodotto-image2 figcaption {
    width: calc(100% * 1 / 3);
    padding-right: 10px;
    box-sizing: border-box;
    text-align: right;
}

#sviluppo-prodotto-image3 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 3;
    grid-row-end: 3;
}

#sviluppo-prodotto-image4 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 3;
    grid-row-end: 3;
}

/** Strumenti **/
#sviluppo-strumenti-text {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 1;
}

#sviluppo-strumenti-image1 {
    grid-column-start: 1;
    grid-column-end: 6;
    grid-row-start: 2;
    grid-row-end: 2;
}

#sviluppo-strumenti-image2 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 3;
    grid-row-end: 3;
}

#sviluppo-strumenti-image3 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 3;
    grid-row-end: 3;
}

#sviluppo-strumenti-image4 {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: 4;
    grid-row-end: 4;
    align-self: center;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
}

#sviluppo-strumenti-image4 picture {
    width: 50%;
    padding-left: 10px;
    box-sizing: border-box;
}

#sviluppo-strumenti-image4 figcaption {
    width: 50%;
    padding-left: 25%;
    padding: 0px 10px 0px 25%;
    box-sizing: border-box;
    text-align: right;
}

/** Processo **/
#sviluppo-processo-text {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 1;
    align-self: center;
}

#sviluppo-processo-image1 {
    grid-column-start: 3;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 1;
}

#sviluppo-processo-image2 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 2;
    grid-row-end: 2;
    display: flex;
    flex-flow: column;
}

#sviluppo-processo-image3 {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 2;
    grid-row-end: 2;
}

#sviluppo-metodologia-text {
    grid-column-start: 4;
    grid-column-end: 6;
    grid-row-start: 1;
    grid-row-end: 1;
}

#sviluppo-metodologia-html {
    grid-column-start: 1;
    grid-column-end: 6;
    grid-row-start: 2;
    grid-row-end: 2;
}

#sviluppo-metodologia-html iframe {
    width: 100%;
}

@media only screen and (min-width: 1940px) and (max-width: 10000px) {
    .page-abs {
        left: calc((100vw - 1920px) / 2);
    }

    .hp-techlab-row-full-img-cover {
        width: calc((1920px - 40px - 80px) / 3);
        right: calc((100vw - 1880px) / 2);
    }

    #request-demo-titolo {
        /* Due Blocchi, 20px -> Gap, Altezza della scritta, Parametro di correzione */
        top: calc(1920px * 2 / 5 - clamp(45px, 5.468vw, 105px) - 40px);
        /* Due Blocchi, Parametro di correzione */
        left: calc(1920px * 2 / 5 + 10px);
    }

    #contatti-titolo {
        /* Tre Blocchi, 2 * 20px -> Gap * 9 / 16,  Altezza della scritta, Parametro di correzione */
        top: calc((1920px * 3 / 5) * 9 / 16 - clamp(45px, 5.468vw, 105px) - 20px);
        /* Due Blocchi, 20px -> Gap, Parametro di correzione */
        left: calc(1920px * 1 / 5 + 10px);
    }
}

/* Qui vanno gli eventi di Hover. Non metterli da altre parti!!!!! */
@media only screen and (min-width: 1201px) and (max-width: 10000px) {

    a:hover,
    .btn_a:hover {
        transition: color 0.2s;
        -webkit-transition: color 0.2s;
        color: var(--grigio);
    }

    .btn-scuro:hover,
    #hp-updates-slider-nav button:hover {
        background-color: var(--grigio);
        color: var(--blue-scuro);
        border: 0.5px solid var(--beige);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }

    .btn-chiaro:hover {
        background-color: var(--grigio);
        color: var(--blue-scuro);
        border: 0.5px solid var(--blue-scuro);
    }

    .btn:hover {
        transition: all 0.2s;
        -webkit-transition: all 0.2s;
    }

    .hp-techlab-row:hover {
        background-color: var(--nero);
        transition: backgroundColor 0.2s;
        -webkit-transition: backgroundColor 0.2s;
    }

    .hp-techlab-row:hover .hp-techlab-row-btn-cont a {
        position: relative;
        z-index: 10;
        opacity: 1;
    }

    .hp-techlab-row:hover .hp-techlab-row-full-img-cover {
        -webkit-animation: show_img_techlab 0.5s forwards;
        animation: show_img_techlab 0.5s forwards;
        display: block;
    }

    .hp-updates-slide-int:hover {
        background-color: var(--nero);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }

    .hp-updates-slide-int:hover .btn-scuro {
        background-color: var(--grigio);
        color: var(--blue-scuro);
        border: 0.5px solid var(--beige);
    }

    .hp-updates-slide-int:hover .hp-updates-slide-img-cover {
        background-color: rgba(0, 0, 0, 1);
        transition: all 0.4s;
        -webkit-transition: all 0.4s;
    }
}

@keyframes show_img_techlab {
    0% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

/* Tablet Landscape */
@media only screen and (min-width: 1024px) and (max-width: 1279px) {
    #updates-titolo-intro .max_w75pe {
        max-width: 100%;
    }
}

/* Tablet Portrait */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #updates-titolo-intro .max_w75pe {
        max-width: 100%;
    }
}

/* Cellulari */
@media only screen and (min-width: 220px) and (max-width: 767px) {
    #updates-titolo-intro .max_w75pe {
        max-width: 100%;
    }
}
