/*
*
* 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(--blue-scuro);
/*     background-color: var(--bianco); */
/*     scroll-behavior: smooth; */
}

/*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(5, 1fr) 2fr;
}

#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 20px 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(25px, 2.125vw, 50px);
    line-height: clamp(28px, 2.125vw, 53px);
    font-weight: 100;
}
.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 {
    background-color: #d0bba5;
    color: #d0bba5;
/*     background-image: linear-gradient(90deg, #e2ccbc, #06c5ba); */
    background-image: linear-gradient(90deg, #d0bba5 , #a58acc 50%, #59c7af 100%);
/*     background-size: 100%; */
    background-clip: text;
    -webkit-background-clip: text;
    -moz-background-clip: text;
    -webkit-text-fill-color: transparent;
    -moz-text-fill-color: transparent;
    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: 5px;
}
.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: 5px;
}
/** 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: 5px;
}

.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: 5px;
}

/** 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: calc(100% - 40px);
    max-width: 1920px;
    border-radius: 5px;
    float: none;
    margin: 0px auto;
    position: absolute;
    top: 20px;
    height: calc(100vh - 40px);
    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-scroller {
/*     background-color: red; */
    position: absolute;
    width: calc((100% - 40px) * 0.3);
    max-width: calc((1920px - 40px) * 0.3);
    top: 0px;
    left: calc((100% - 40px) * 3 / 5);
    padding: 60px 20px 20px 20px;
    box-sizing: border-box;
    height: 400px;
    z-index: 10;
}
#hp-how-title-cont {
    height: clamp(40px, 5.208vw, 100px);
}
#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: 5px;
  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: 5px;
  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: 5px;
  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: 5px;
  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: 5px;
  overflow: hidden;
}
.img-square-uno-quinto-cont {
  display: block;
  max-width: 20%;
  aspect-ratio: 1 / 1;
  border-radius: 5px;
  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: 5px;
  overflow: hidden;
}
.img-square-due-quinti-cont {
  display: block;
  max-width: calc((100% - 10px ) / 5 * 2);
  aspect-ratio: 1 / 1;
  border-radius: 5px;
  overflow: hidden;
}
.img-landascape-cont {
  display: block;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 5px;
  overflow: hidden;
}
.img-square-quattro-quinti-cont {
  display: block;
  max-width: calc((100% - 10px )/ 7 * 3);
  aspect-ratio: 1 / 1;
  border-radius: 5px;
  overflow: hidden;
}
.img-portrait-cont {
  display: block;
  max-width: calc((100% - 10px ) / 2);
  aspect-ratio: 9 / 16;
  border-radius: 5px;
  overflow: hidden;
}
.img-tre-quinti-square-cont {
  display: block;
  max-width: calc((100% - 10px ) / 2);
  aspect-ratio: 1 / 1;
  border-radius: 5px;
  overflow: hidden;
}
.img-tre-quinti-landscape-cont {
  display: block;
  max-width: calc((100% / 9) * 8);
  aspect-ratio: 16 / 9;
  border-radius: 5px;
  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: 5px;
}
#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: 5px;
}
#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: 5px;
}
.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: 5px;
}
#sviluppo-prodotto-text {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 1;
    align-self: center;
}
#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%;
  }
}
