@import "https://fonts.googleapis.com/css?family=Montserrat:300,400,500,600,700|Roboto:400";

.rubik-<uniquifier> {
  font-family: "Rubik", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.montserrat-<uniquifier> {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}


:root {
  font-size: 16px;
  --solid_red: #E13636;
  --solid_light_red: #EA5B5E;
  --solid_dark_anthracite_41: #292929;
  --solid_ultralight_grey_248: #F8F8F8;
  --solid_anthracite_84: #545454;
  --solid_medium_anthracite_114: #727272;
  --solid_light_anthracite_147: #939393;
  --solid_light_light_anthracite: #adacac;

  /* colori logo */
  --logo_yellow: #FBD300;
  --logo_orange: #FA8E00;
  --logo_red: #F84900;
  --logo_blue: #5190C0;

  --input_gradient: linear-gradient(180deg, #ffffff 0%, #f3f3f3f3 100%);
  --footer_gradient: linear-gradient(45deg, #292929 0%, #484848 100%);
  --card-transition-time: 0.6s;

  --hero_background: url('static/img/hero_image.jpg');
  }


  html {
    scroll-behavior:smooth;
  }

  .parallax {
    z-index: 1000;
    background-attachment: fixed; 
    background-size: cover;
    background-repeat: repeat;
  }

  p,
  .bridge h2, 
  .bridge h3,
  .card h4,
  h4, 
  h5,
  a,
  label {
    font-family: Montserrat, sans-serif;
  }

  h1, h2, h3, #team h4 {
    font-family: Rubik, sans-serif;

  }




* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}


.row::after {
  content: "";
  clear: both;
  display: block;
}

[class*="col-"] {
  float: left;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 15px;
}

.row {
  margin: auto;
  max-width: 1600px;
}

[class*="col-"] {
  width: 100%;
}

a {
  text-decoration: none;
  text-decoration-style: none;
  color: inherit;
}

h1 {
  font-weight: 700;
}



a {
  font-weight: 400;
}



h2 {
  color: var(--solid_light_red)
}

.dark h1 {
  color: var(--solid_dark_anthracite_41);
}

h2 {
  font-weight: 600;
  font-size: 1.8125rem;

}

h2,
h3,
h4,
p {
  padding-bottom: 1rem;
}

h3 {

  font-weight: 500;
  font-size: 0.8125rem;
  letter-spacing: 0.12rem;
  text-transform: uppercase;
}



p {
  font-size: 0.875rem;
  line-height: 1.88rem;
  font-weight: 300;
}

label {
  font-size: 0.875rem;
  font-weight: 300;
}




.dark h3 {
  color: var(--solid_medium_anthracite_114);
}

.dark p {
  color: var(--solid_medium_anthracite_114);
}

.white h3,
.white p {
  color: var(--solid_ultralight_grey_248);
}

.overflow_x_hidden {
  overflow-x: hidden;
}

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




body {
  position: relative;
  text-align: center;
  background-color: var(--solid_ultralight_grey_248);
}


.header-container {
  background-color: var(--solid_red);
  height: calc(2rem + 7vw);
  width: 100%;
  position: fixed;
  z-index: 10000;
}

.scrolled.header-container {
  background-color: white;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  transition: background-color 0.5s ease-in-out;
}


.svg-curve {
  display: none;
}

.svg-curve #Path {
  fill: var(--solid_red);
}
.desktop {
  display: none;
}



#logo-img {
  width: calc(5.9em + 8vw);
  position: fixed;
  top: calc(0.3em + 2vw);
  left: 20px;
  z-index: 99999;
  transition: all 0.5s ease;

  /* Sempre in primo piano */
}


/* Stili generali per la navigazione su mobile */
.navigation {
  opacity: 0.9;
  position: fixed;
  top: 0;
  left: 0;
  padding-top: calc(2.1rem + 5.6vw);
  padding-right: 3em;
  background-color: var(--solid_dark_anthracite_41);
  color: var(--solid_ultralight_grey_248);
  width: 100vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: baseline;
  transform: translateX(-100%);
  transition: all var(--transition-medium) ease-in-out;
  z-index: 9999;
  visibility: hidden;
}

#menu-toggle {
  display: none;

}

/* Mostra il menu quando il checkbox è selezionato */
#menu-toggle:checked~.navigation {
  transform: translateX(0);
  visibility: visible;
}

/* Gestione dei link nel menu */
.navigation li {
  width: 110%;
}

.navigation ul {
  list-style: none;
  text-align: left;
  width: 100%;
}

.navigation a {
  display: block;
  padding: calc(1em + 2vw);
  color: var(--solid_ultralight_grey_248);
  text-decoration: none;
  font-weight: 500;
}

.navigation a:hover {
  background-color: var(--solid_ultralight_grey_248);
  color: var(--solid_dark_anthracite_41);
}

.navigation a.no-hover:hover {
  background-color: transparent; /* Cambia lo stile per l'hover disabilitato */
}

.navigation a:active, .navigation a:focus {
  outline: none;
  background-color: var(--solid_ultralight_grey_248);
  color: var(--solid_dark_anthracite_41);
}

.menu-icon {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 25px;
  height: 20px;
  cursor: pointer;
  z-index: 10000; /* Aumentato z-index per essere sopra al menu */
  /* Sempre in primo piano */
  position: fixed;
  top: calc(0.6em + 3vw);
  right: 20px;
}

.menu-icon.menu-open {
  /* Assicura che l'icona del menu sia visibile quando è aperta */
  z-index: 10001;
}

.menu-icon span {
  display: block;
  width: 100%;
  height: 3px;
  background-color: var(--solid_ultralight_grey_248);
  transition: all var(--transition-medium) ease-in-out;
}

.scrolled .menu-icon span {
  background-color: var(--solid_anthracite_84);
}

.menu-icon.menu-open span,
.scrolled .menu-icon.menu-open span {
  background-color: var(--solid_ultralight_grey_248);
}

/* Animazione: trasforma le tre linee in una X */
#menu-toggle:checked+.menu-icon span:nth-child(1) {
  transform: rotate(45deg) translate(6px, 6.5px);
  background-color: var(--solid_ultralight_grey_248);
}

#menu-toggle:checked+.menu-icon span:nth-child(2) {
  opacity: 0;
  /* Nascondi la seconda linea */
  background-color: var(--solid_ultralight_grey_248);
}

#menu-toggle:checked+.menu-icon span:nth-child(3) {
  transform: rotate(-45deg) translate(5.5px, -6.5px);
  background-color: var(--solid_ultralight_grey_248);
}

.scrolled #menu-toggle:checked+.menu-icon span:nth-child(1) {
  transform: rotate(45deg) translate(6px, 6.5px);
  background-color: var(--solid_ultralight_grey_248);
}

.scrolled #menu-toggle:checked+.menu-icon span:nth-child(2) {
  background-color: var(--solid_ultralight_grey_248);
  opacity: 0;
  /* Nascondi la seconda linea */
}

.scrolled #menu-toggle:checked+.menu-icon span:nth-child(3) {
  background-color: var(--solid_ultralight_grey_248);
  transform: rotate(-45deg) translate(5.5px, -6.5px);
}


.hero-text-large {
  display: none;
}

.hero-content {
  position: relative;
  font-size: 1.6em;
  line-height: 2.4em;
  padding-top: calc(4em + 7vw);
  padding-bottom: 6em;
  color: var(--solid_ultralight_grey_248);
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 0% 100%);
  z-index: 0;
}

.hero-text-small {
  font-size: calc(1em + 3.5vw);
  line-height: 1.5em;
}

.hero-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  background-image: linear-gradient(173deg, rgba(0, 0, 0, 0.61) 0%, rgba(0, 0, 0, 0.61) 74%, #000000 94%), var(--hero_background);
  background-size: cover;
  background-position: center;
}

.oblique-divider {
  display: none;
}

.homepage-section {
  padding-top: 1rem;
  position: relative;

}

#services {
  padding-top: 10vw;
  padding-bottom: 20px;
  scroll-margin-top: 30px;
}

#services::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  background-image: url(/static/img/Moveo_M_monochrome_svg.svg);
  background-repeat: no-repeat;
  background-size: 85%;
  background-position: center 9rem;
  opacity: 0.18;
  /* Imposta l'opacità desiderata */
  z-index: -1;
  /* Posiziona il pseudo-elemento dietro al contenuto */
}



.col-card {
  padding-top: 0rem;
}


.div-for-two-card {
  padding: 3vw;
  gap: 5vw;
  align-items: stretch;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-shrink: 1;
}

.card {
  min-width: 140px;
  flex-grow: 1;
  aspect-ratio: 1/1;
  padding: 0.4rem 0.3rem;
  width: 46%;
  background-color: #FFFFFF;
  box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.13);
  border-radius: 10px;
  transition: all var(--transition-medium) ease; /* Transizione per un effetto graduale */

}

.card:hover{
  background-color: var(--solid_light_light_anthracite);
}

.card:hover h4{
  color: var(--solid_ultralight_grey_248);
  font-weight: 600;
}

.card:hover p{
  color: var(--solid_ultralight_grey_248);
  font-weight: 400;
}

.card:hover .image-circle{
  background-color: var(--solid_light_light_anthracite);
}

.card:hover .image-circle img {
  filter: brightness(3)  ;
  transition: all var(--transition-medium) ease;
  width: 74%;
}

.image-circle {
  position: relative;
  width: 44%;
  padding-top: 44%;
  background-color: var(--solid_ultralight_grey_248);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;


}

.image-circle img {
  position: absolute;
  width: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


.card h4 {
  padding: 0.5rem;
  padding-bottom: 0.2rem;
  font-weight: 400;
  font-size: 1rem;
  color: var(--solid_dark_anthracite_41);
  text-align: center;
}

.card p {
  padding: 0;
  font-weight: 300;
  font-size: calc(0.5rem + 1vw);
  color: var(--solid_anthracite_84);
  text-align: center;
  line-height: calc(0.8rem + 1.2vw);
  display: -webkit-box;
  line-clamp: 5;
  -webkit-line-clamp: 5;
  /* Numero massimo di linee che vuoi mostrare */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.bridge {
  font-size: 1rem;
  color: var(--solid_ultralight_grey_248);
  background-color: var(--solid_red);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-evenly;
  border-radius: 1.49vw;
  width: 84vw;
  height: 6.78vw;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.28);
  margin: auto;
}

.bridge h2 {
  padding: 0;
  font-size: calc(0.5rem + 0.7vw);
  font-weight: 400;
  color: var(--solid_ultralight_grey_248);
}

.bridge h3 {
  padding: 1vw;
  font-size: 10px;
  font-weight: 600;
  font-size: calc(0.4rem + 0.3vw);
  color: var(--solid_ultralight_grey_248);
  letter-spacing: 0.12px;
  text-align: right;
  border: 1px solid var(--solid_ultralight_grey_248);
  border-radius: 1vw;
}



.bridge h3::before {
  content: "";
}

#about{
  scroll-margin-top: 30px;
}


.mission-image {
  opacity: 0.07;
  position: absolute;
  top: 65px;
  width: 100%;
  height: 90%;
  background-image: url('static/img/lamp@2x.png');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}



.process-container {
  padding-top: 10vw;
  position: relative;
  background-color: var(--solid_dark_anthracite_41);
  clip-path: polygon(0 0, 100% 7%, 100% 100%, 0 100%);
}

.process-container .row {
  padding-top: calc(2rem + 2vw);
  padding-bottom: calc(6rem + 6vw);

}

.process-bottom {
  background-image: linear-gradient(-90deg, var(--solid_red) 0%,var(--solid_light_red) 100%, var(--solid_ultralight_grey_248) 100%);
  position: relative;
  clip-path: polygon(0 0, 100% 60%, 100% 100%, 0 100%);
  width: 100%;
  min-height: 14vw;
  z-index: 1;
}

.process-container::after {
  opacity: 0.5;
  position: absolute;
  content: "";
  width: 50%;
  height: 50%;
  bottom: 1vw;
  left: 6vw;
  background-image: url('/static/img/Moveo_M_monochrome_svg.svg');
  filter: brightness(1.4);
  background-size: 86%;
  background-repeat: no-repeat;
  background-position: 0 100%;
  z-index: 1;
}

.process-container::before{
  content: "";
  background-color: var(--solid_light_anthracite_147);
  background-repeat: no-repeat;
  background-position: 0 0;
  opacity: 0.23;
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  z-index: 1;
  clip-path: polygon(55% 45%, 100% 28%, 100% 93%, 55% 45%);
}

#team {
  padding-top: 10vw;
  scroll-margin-top: 30px;
}



.team-image{
  position: relative;
  width: 26vw;
  padding-top: 26vw;
  margin: auto;
  border: 1px solid var(--solid_dark_anthracite_41);
  border-radius: 50%;
  overflow: hidden;
}

.team-image img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.col-team-detail {
  justify-content: flex-start;
  gap: 1rem;
}

#team p {
  padding-top: 0;
  padding-bottom: 0;
}

.col-team-detail h4 {
  font-size: calc(1rem + 0.5vw);
  padding:0;
  font-weight: 500;

}

#team{
  padding-bottom: 5rem;
  position: relative;
}

#team::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: 0 0;
  background-image: linear-gradient(169deg, rgba(147, 147, 147, 0.12) 2%, rgba(227,227,227,0.00) 94%);
  clip-path: polygon(0 0, 18% 0%, 100% 80%, 0 80%);
}

#team::after{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: 0 0;
  background-image: linear-gradient(248deg, rgba(187,187,187,0.19) 0%, rgba(227,227,227,0.00) 100%);
  clip-path: polygon(0 35%, 100% 25%, 100% 55%, 0 55%);
  z-index: -1;
}

#contact{
  position: relative;
  padding: 4rem 0;
}


#contact h2{
  margin-bottom: 1.5rem;
}

.contact-intro {
  font-size: 1.2rem;
  margin-bottom: 2rem;
}

.contact-email {
  margin-top: 1rem;
}

.mailto-link {
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--solid_red);
  text-decoration: none;
  padding: 0.8rem 1.5rem;
  border: 2px solid var(--solid_red);
  border-radius: 5px;
  transition: all 0.3s ease;
}

.mailto-link:hover {
  background-color: var(--solid_red);
  color: white;
}


#contact .col-12{
  align-items: flex-start;
}

#contact::before{
  position: absolute;
  content: "";
  background-image: var(--footer_gradient);
  height: 120%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  clip-path: polygon(0% 0%, 100% 5%, 100% 100%, 0% 100%);
}

#contact .container{
  padding-top: 8rem;
}

form {
  width: 100%;
}
label{
  width: 100%;
  text-align: left;
  color: var(--solid_ultralight_grey_248);
}

input{
  font-family: "Montserrat", sans-serif;
  padding: 0.5rem;
  font-size: 1rem;
  width: 100%;
  height: 30px;
  background-image: var(--input_gradient);
  border: 0.56px solid var(--solid_light_anthracite_147);
  border-radius: 1.13px;
}

textarea{
  font-family: "Montserrat", sans-serif;
  padding: 0.5rem;
  font-size: 1rem;
  width: 100%;
  height: 190px;
  background-image: var(--input_gradient);
  border: 0.56px solid var(--solid_light_anthracite_147);
  border-radius: 1.13px;
}

.privacy-label {
  justify-content: flex-start;
  display: flex;
  flex-direction: row;
  flex-grow: 1;
  align-items: center;
}

#privacy-checkbox {
  width: 16px;
  height: 16px;
  margin-right: 6px;
}

#submitButton {
  font-family: "Montserrat", sans-serif;
  padding: 0;
  font-size: 1.2rem;
  font-weight: 400;
  width: 35%;
  border-radius: 5px;
  color: var(--solid_anthracite_84);
}

  /* Quando il checkbox privacy è selezionato, il pulsante submit viene abilitato */
  #privacy-checkbox:checked  #submitButton {
    opacity: 1;
    cursor: pointer;
    pointer-events: all;
}

/* Di default, il pulsante submit è disabilitato e visualizzato con opacità minore */
#submitButton:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}



.hidden {
  display: none;
}

/* Overlay inizialmente invisibile */
#confirmationOverlay {
  display: none; /* Nascondi completamente */
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8); /* Sfondo nero semiopaco */
  align-items: center;
  justify-content: center;
  z-index: 1000;
  transition: opacity 0.5s ease;
}

/* Mostra l'overlay quando è attivo */
#confirmationOverlay.show {
  display: flex; /* Diventa visibile */
  opacity: 1;
}

#confirmationBanner {
  padding: 20px 40px;
  color: var(--solid_ultralight_grey_248);
  font-size: 3rem;
  text-align: center;
}

#confirmationBanner.error {
  color: #f44336;
}



@keyframes slideInFromRight {
  from {
    transform: translateX(150%); /* Partenza da fuori schermo a destra */
    opacity: 0;
  }
  to {
    transform: translateX(0); /* Arriva in posizione normale */
    opacity: 1;
  }
}

.animate-slide-in {
  animation: slideInFromRight 0.8s ease-in-out forwards;
}






















































































































/*
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************
INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** INIZIO DESKTOP *************** 
***************************************************************************************************************************************

*/


/* Stili per dispositivi con schermo più grande (desktop) */
@media screen and (min-width: 868px) {

  :root {
    font-size: 12px;
  }
  
  /* Assicura che l'hamburger menu mantenga lo stile corretto anche su desktop */
  .scrolled .menu-icon span {
    background-color: var(--solid_anthracite_84);
  }
  
  .menu-icon.menu-open span,
  .scrolled .menu-icon.menu-open span {
    background-color: var(--solid_ultralight_grey_248);
  }


  /* For desktop: */
  .col-1 {
    width: 8.33%;
  }

  .col-2 {
    width: 16.66%;
  }

  .col-3 {
    width: 25%;
  }

  .col-4 {
    width: 33.33%;
  }

  .col-5 {
    width: 41.66%;
  }

  .col-6 {
    width: 50%;
  }

  .col-7 {
    width: 58.33%;
  }

  .col-8 {
    width: 66.66%;
  }

  .col-9 {
    width: 75%;
  }

  .col-10 {
    width: 83.33%;
  }

  .col-11 {
    width: 91.66%;
  }

  .col-12 {
    width: 100%;
  }

  .row {
    flex-direction: row;
  }
  .justify-start {
    display: flex;
    justify-content: flex-start;
  }

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

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

  

  .justify-around {
    display: flex;
    justify-content: space-around;
  }

  .justify-between {
    display: flex;
    justify-content: space-between;
  }

  .justify-evenly {
    display: flex;
    justify-content: space-evenly;
  }

  .align-start {
    align-items: flex-start;
  }

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

  .align-end {
    align-items: flex-end;
  }

  .align-stretch {
    align-items: stretch;
  }

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

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

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


  #logo-img {
    margin-top: 14px;
    padding-left: 2rem;
    width: calc(11em + 7.8vw);
    position: static;
    transition: all 0.5s ease;
    z-index: 99999;
  }


  .header-container {
    position: fixed;
    background-color: white;
    height: calc(1.8em + 1.8vw);
    width: 100%;
    z-index: 1000;
    transition: background-color 0.5s ease-in-out;
  }



  .svg-curve {
    position: relative;
    z-index: -100;
    display: block;
    width: 100%;
    height: calc(8rem + 7vw);
    object-fit: fill;
    margin-top: calc(-70px - 6vw);
    transition: margin-top 0.3s ease;
    /* Posiziona l'SVG esattamente al confine dell'header */
  }




  .navigation {
    position: relative;
    transform: none;
    /* Non più fuori schermo */
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
    background-color: transparent;
    /* Rimuovi lo sfondo antracite */
    padding-top: 0;
    align-items: center;
    visibility: visible;
  }



.navigation a {
  display: inline;
  padding: 0;
}


  .navigation ul {
    width: auto;
    display: flex;
    flex-direction: row;
    gap: calc(0.8em + 4vw);
    list-style: none;
    text-align: center;
  }

  .navigation li {
    padding: 0;
    width: auto;
    background-color: transparent;
  }

  .navigation li:hover {
    background-color: transparent;
  }
  .navigation a:hover {
    background-color: transparent;
    color: var(--solid_ultralight_grey_248);
  }

  .menu-icon {
    display: none;
    /* Nascondi l'icona hamburger su desktop */
  }

  .navigation li a {
    position: relative;
    color: var(--solid_ultralight_grey_248);
    /* Colore link su desktop */
    font-size: 1.3125rem;
    background-color: transparent;
    padding-bottom: 5px;
  }



  .navigation a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Parte da zero */
    height: 2px; /* Spessore della linea sottolineata */
    background-color: var(--solid_ultralight_grey_248); /* Colore della linea */
    transition: all 0.3s ease; /* Transizione per la larghezza (animazione della sottolineatura) */
  }

  .navigation  a:hover::after {
    width: 100%; /* Espande la linea fino alla larghezza completa del link */
  }




  /* opzioni per scroll */

  .scrolled #logo-img{
    margin-top: 7px;
    padding-left: 3rem;
    width: calc(8rem + 5.8vw);
    transition: all 0.5s ease;
  }

  .scrolled .svg-curve {
    position: absolute;
    margin-top: -380px;
    transition: margin-top 2s ease;
  }

  .scrolled.header-container {
    position: fixed;
    background-color: white;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
    height: calc(2.6rem + 1.9vw);
    width: 100%;
    z-index: 1000;
  }

  .scrolled  .navigation li a {
    color: var(--solid_anthracite_84);
  }

  .scrolled ul{
    margin-top: 5px;
  }

  .scrolled   .navigation a::after {
    background-color: var(--solid_anthracite_84); /* Colore della linea */
  }

 


  /* HERO */


  .hero-text-small {
    display: none;
  }

  .hero-content {
    padding-top: calc(10rem + 10vw);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding-left: 7vw;
    color: var(--solid_dark_anthracite_41);
    text-align: left;
    clip-path: none;
    z-index: 0;
  }


  .hero-text-large {
    width: 100%;
    height: 100%;
    margin-top: -4.7em;
    padding-left: 0.3em;
    margin-right: 4rem;
    padding-right: 20px;
    display: block;
    position: static;
    text-align: left;
    font-size: calc(1.7em + 2vw);
    line-height: 1.3em;
  }


  .hero-image {
    position: static;
    float: right;
    width: 45vw;
    height: 35.5em;
    margin-top: -10rem;
    object-fit: contain;
    z-index: -1;
    background-image: var(--hero_background);
    background-size: cover;
    border-radius: 12em 0em 0em 1.6em;
  }



  .oblique-divider {
    text-align: left;
    display: block;
    position: relative;
    top: -28.5em;
    margin-bottom: -28.5em;
    background-color: var(--solid_dark_anthracite_41);
    width: 100%;
    height: 31rem;
    clip-path: polygon(0 38%, 100% 0, 100% 62%, 0 100%);
    z-index: -100;
  }

  .oblique-divider::after {
    width: 100%;
    height: 100%;
    position: absolute;
    content: "";
    color: white;
    background-image: linear-gradient(37deg, #000000 0%, rgba(143, 143, 143, 0.51) 26%, rgba(96, 95, 95, 0.51) 66%);
    clip-path: polygon(0 0, -10% 0, 36% 100%, 0 100%);
  }


  .homepage-section {
    font-size: 4em;
  }

  #services {
    padding-top: 4vw;
    padding-bottom: 6vw;
    scroll-margin-top: 180px;
  }

  #services::before {
    background-position: center 10vw;
  }




  .col-services {
    position: relative;
    top: -50px;
  }



  h2,
  h3,
  h4,
  p {
    padding: 15px;
  }

  h2 {
    font-size: 3.5625rem;
  }

  h3 {
    font-size: 1.3rem;
    padding-bottom: 5px;
    letter-spacing: 0.22rem;
  }

  p {
    font-size: 1.3125rem;
    line-height: 2.81rem;
  }

  label {
    font-size: 1.8rem;
  
  }

  h3::before {
    content: "> > > > > > > > ";
  }

  .card h4 {
    font-size: calc(0.8rem + 0.7vw);
    padding-top: 1rem;
  }

  .card p {
    font-size: calc(0.54rem + 0.4vw);
    text-align: center;
    line-height: 1.6vw;
    padding: 1rem;
    display: -webkit-box;
    line-clamp: 5;
    -webkit-line-clamp: 5 ;
    /* Numero massimo di linee che vuoi mostrare */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .col-card {
    width: 40%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;

    padding: 0;
  }

  .div-for-two-card {
    gap: 3vw;
    justify-content: center;
    padding: calc(1vw - 0.7rem);
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }


  .div-card-1 {
    position: relative;
    top: -85px;
  }




  .card {
    flex-basis: 95%;
    flex-grow: 1;
    flex-shrink: 0;
    width: 90%;
    aspect-ratio: 1/1.26;
  }

  .image-circle {
    margin-top: 0.8vw;
    position: relative;
    width: 50%;
    padding-top: 50%;

  }

  .image-circle img {
    position: absolute;
    width: 54%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .bridge {
    position: relative;
  }
  .bridge h2{
    font-size: 2.2vw;
  }

  .bridge h3 {
    font-size: 1.7vw;
    transition: all 0.5s ease;
  }

  .bridge h3:hover{
    background-color: var(--solid_medium_anthracite_114);
    border-color: var(--solid_medium_anthracite_114);
    box-shadow: 0 0 8px white ;
    padding: 1vw 3vw;
    flex-grow: 10;
    
  }

  #about {
    scroll-margin-top: 50px;
  }

  .col-lamp {
    height: 38vw;
  }

  .mission-image {
    margin: 1vw;
    opacity: 1;
    position: static;
    top: 100px;
    width: 100%;
    height: 70%;
    background-image: url('static/img/lamp@2x.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }

  .desktop{
    display: block;
  }

  .mobile{
    display: none;
  }

  .process-container {
    clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  }

  .process-container .row {
    padding-top: calc(2rem + 2vw);
    padding-bottom: calc(8rem + 8vw);
  }

  .process-container::before{
    clip-path: polygon(52% 63%, 100% 28%, 100% 100%, 70% 100%, 52% 63%);
  }


  .process-container::after {
    opacity: 0.5;
    position: absolute;
    content: "";
    width: 80%;
    height: 100%;
    bottom: 1.7vw;
    left: 3.5vw;
    background-image: url('/static/img/Moveo_M_monochrome_svg.svg');
    filter: brightness(1.5);
    background-size: 43%;
    background-repeat: no-repeat;
    background-position: 0 100%;
    z-index: 1;
  }





  #team{
    padding-top: 6vw;
  }

  .col-team-intro{
    padding-left: 10rem;
  }

  .col-team-detail h4{
    padding-top: 1rem;
    font-size: 2.3657rem;
  }

  .col-team-detail p {
    width: 70%;
  }

  #team::after{
  display: none;
  }

  #team::before{
    clip-path: polygon(0 0, 55% 0, 45% 100%, 0 100%);
  }

  .col-team-detail {
    gap: 2rem;
  }

  #team .row-intro{
    padding-bottom: 3rem;
  }

  .team-image{
    width: 22rem;
    padding-top: 22rem;
 
  }

  #contact {
    padding-top: 100px;
    scroll-margin-top: 60px;
  }

  #contact::before{
    display: none;
  }
  #contact{
    background-image:url("data:image/svg+xml;base64,Cjxzdmcgd2lkdGg9IjE2MDZweCIgaGVpZ2h0PSIxMzQ1cHgiIHZpZXdCb3g9IjAgMCAxNjA2IDEzNDUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEuMjkxMjU2NzglIiB5MT0iODUuMDY5MDA4OCUiIHgyPSIxMDAlIiB5Mj0iMTkuODM1NDUwNSUiIGlkPSJsaW5lYXJHcmFkaWVudC04ZWd0bmN5anlkLTEiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjkyOTI5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyOTI5MjkiIHN0b3Atb3BhY2l0eT0iMC44IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggZD0iTTAuMDM2NDc3NTg4NSwwIEM2OTUuOTQwMTk0LDY0LjMxNjI5NjEgMTIzMS4yNjEzNyw5MS4xOTYyNTc0IDE2MDYsODAuNjM5ODgzOSBMMTYwNS45ODEsMTI1IEwxNjA2LDEyNSBMMTYwNiwxMzQ1IEwwLDEzNDUgTDAsMTI1IEwwLjAwNiwxMjUgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LThlZ3RuY3lqeWQtMSkiPjwvcGF0aD4KICAgIDwvZz4KPC9zdmc+");
    background-size: 120%;
 
  }




  input{
    width: 100%;
    height: 50px;
    font-family: "Montserrat", sans-serif;
    padding: 1rem;
    font-size: 1.5rem;
  }

  textarea{
    height: 330px;
    font-family: "Montserrat", sans-serif;
    padding: 1rem;
    font-size: 1.5rem;
  }

  #submitButton{
    width: 18%;
    font-size: 1.8rem;
    border-radius: 10px;
    transition: all 0.5s ease;
  }

  #submitButton:not(:disabled):hover{
    width: 20%;
    border: none;
    font-size: 2rem;
    font-weight: 600;
    border-radius: 10px;
    color: var(--solid_ultralight_grey_248);
    background-color: var(--solid_red);
    opacity: 1 !important;
    background-image: none;
    cursor: pointer;
  }

  #privacy-checkbox:hover{
    cursor: pointer;
  }


  #confirmationBanner {
    font-size: 6rem;
  }








  .col-cubes {
    display: block;
    position: relative;

  }

  .single-cube {
    position: absolute;
    top: -200PX;
    width: 300px;
    height: 300px;
  }

  .single-cube:hover{
    width: 600px;

  }

  .semi-cube-front {
    position: absolute;
    background-color: var(--solid_light_anthracite_147);
    width: 249px;
    height: 196px;
    clip-path: polygon(0 15%, 50% 0%, 100% 15%, 100% 100%, 50% 85%, 0 100%);
    filter: brightness(1.1);
    z-index: 1;
  }

  .semi-cube-front::before {
    margin: 0;
    padding: 0;
    content: '';
    position: absolute;
    top: 1px;
    /* Fai in modo che il pseudo-elemento sia leggermente più grande */
    left: 1px;
    width: calc(100% - 2px);
    /* Allarga il pseudo-elemento per creare l'effetto bordo */
    height: calc(100% - 2px);
    /* Aumenta l'altezza */
    background-color: var(--logo_blue);
    clip-path: polygon(0 15%, 50% 0%, 100% 15%, 100% 100%, 50% 85%, 0 100%);
    z-index: -10;
    /* Fai in modo che resti dietro l'elemento principale */
  }




  .semi-cube-back {
    opacity: 0.9;
    position: absolute;
    top: 9.8%;
    background-color: var(--solid_light_anthracite_147);
    width: 249px;
    height: 196px;
    clip-path: polygon(0 0%, 50% 15%, 100% 0%, 100% 85%, 50% 100%, 0 85%);
    z-index: 1;
  }

  .semi-cube-back::before {
    margin: 0;
    padding: 0;
    content: '';
    position: absolute;
    top: 1px;
    /* Fai in modo che il pseudo-elemento sia leggermente più grande */
    left: 1px;
    width: calc(100% - 2px);
    /* Allarga il pseudo-elemento per creare l'effetto bordo */
    height: calc(100% - 2px);
    /* Aumenta l'altezza */
    background-color: var(--logo_blue);
    clip-path: polygon(0 0%, 50% 15%, 100% 0%, 100% 85%, 50% 100%, 0 85%);
    z-index: -10;
    /* Fai in modo che resti dietro l'elemento principale */
  }

  .CUBE-TWO .semi-cube-front::before {
    background-color: var(--logo_red)
  }

  .CUBE-TWO .semi-cube-back::before {
    background-color: var(--logo_red)
  }

  .CUBE-THREE .semi-cube-front::before {
    background-color: var(--logo_orange);
  }

  .CUBE-THREE .semi-cube-back::before {
    background-color: var(--logo_orange);
  }

  .CUBE-FOUR .semi-cube-front::before {
    background-color: var(--logo_yellow);
  }

  .CUBE-FOUR .semi-cube-back::before {
    background-color: var(--logo_yellow);
  }



  .CUBE-ONE {
    z-index: 4;
    top: -300PX;
  }

  .CUBE-TWO {
    z-index: 3;
    top: -100PX;
  }

  .CUBE-THREE {
    z-index: 2;
    top: 100px;
  }

  .CUBE-FOUR {
    z-index: 1;
    top: 300px;
  }



  .process-text-cube h2{
    color: var(--solid_light_light_anthracite);
    text-align: left;
    padding-bottom: 100px;
    font-style: italic;
  }

  .single-cube-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }


  .typewriter {
    width: 0ch; /* Lunghezza massima del testo */
    overflow: hidden; /* Nasconde il testo in eccesso */
    white-space: nowrap; /* Evita che il testo vada a capo */
    animation: typing 2s steps(25, end) forwards;
  
  }

  .cube-text-1 .typewriter{
    animation-delay: 2s;
  }
  .cube-text-2 .typewriter{
    animation-delay: 3s;
  }
  .cube-text-3 .typewriter{
    animation-delay: 4s;
  }
  .cube-text-4 .typewriter{
    animation-delay: 5s;
  }
  
  @keyframes typing {
    from {  
      width: 0;
    }
    to {
      width: 25ch; /* Mostra tutte le lettere */
    }
  }



  @keyframes fall-bounce {
    0% {
      transform: translateY(-100vh);
      /* Inizia fuori dallo schermo */
    }

    70% {
      transform: translateY(0);
      /* Arriva in posizione iniziale */
    }

    80% {
      transform: translateY(-30px);
      /* Primo rimbalzo verso l'alto */
    }

    90% {
      transform: translateY(0);
      /* Torna in posizione iniziale */
    }

    95% {
      transform: translateY(-15px);
      /* Secondo rimbalzo più piccolo */
    }

    98% {
      transform: translateY(0);
      /* Torna in posizione iniziale */
    }

    99.5% {
      transform: translateY(-5px);
      /* Piccolo rimbalzo finale */
    }

    100% {
      transform: translateY(0);
      /* Fermo alla fine */
    }
  }


  .bounce {
    opacity: 0;
    /* Inizia invisibile */
    transform: translateY(-100vh);
    /* Inizia fuori dallo schermo */
    transition: opacity 2.5s ease-out, transform 2.5s ease-out;
  }

  .bounce.show {
    opacity: 1;
    animation: fall-bounce 2.5s ease-in-out forwards,
    chenage 15s linear infinite 2.5s; /* Parte dopo 2.5s la rotazione, quando la caduta è finita */
  }

  .bounce:nth-child(4) {
    animation-delay: 0s;
    /* Terzo div inizia con 1s di ritardo */
  }

  .bounce:nth-child(3) {
    animation-delay: 0.5s;
    /* Primo div inizia subito */
  }

  .bounce:nth-child(2) {
    animation-delay: 1s;
    /* Secondo div inizia con 0.5s di ritardo */
  }

  .bounce:nth-child(1) {
    animation-delay: 1.5s;
    /* Terzo div inizia con 1s di ritardo */
  }



  @keyframes change {
    0% {
      background-color: black;
    }
    100% {
      background-color: white;
    }
  }





}

















/* TABLET    TABLET    TABLET    TABLET    TABLET    TABLET    TABLET    */

/* @media screen and (min-width: 768px) and (max-width: 1200px) {
  #services [class*="col-"] {
    width: 100%;
  }

  #services .row{
    display: flex;
    flex-direction: column;
  }
  #services .div-for-two-card {
    flex-direction: column;
    align-items: center;
    gap: 3vw;
  }

} */

/*
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 
END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END END 


*/