:root{
    /* --bg-color:#FFFAE0; */
    /* --bg-input: #FAECCD; */
    --bg-color: #242424;
    --bg-input: #272727;
    --base-font-color:#fff;

}



/* Mobile */
@media (max-width: 480px) {
    body {
        background-image: url("../img/cuorevero-background-tablet-smartphone-portrait.webp");
    }
}

/* Tablet */
@media (min-width: 481px) and (max-width: 1024px) {
    body {
        background-image: url("../img/cuorevero-background-tablet-retina.webp");
    }
}


/* Desktop */
@media (min-width: 1025px) and (max-width: 1920px) {
    body {
        background-image: url('../img/cuorevero-background-desktop.webp');
    }
}

/* QHD/Retina */
@media (min-width: 1440px) {
    body {
        background-image: url("../img/cuorevero-background-land-hq-2560x1440.webp");
    }
}

/* 4K “luxury” (opzionale, solo hero importanti) */
@media (min-width: 2560px) and (min-resolution: 2dppx) {
    body {
        background-image: url("../img/cuorevero-background-hero-3840x2160.webp");
    }
}


/* Ultrawide dedicato */
@media (min-aspect-ratio: 21/9) and (min-width: 1440px) {
    body {
        background-image: url("../img/cuorevero-background-ultra-3440x1440.webp");
    }
}



body {
    background-color: var(--bg-color);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    font-family: 'Montserrat',Arial, Helvetica, sans-serif;
    
    /* color: #707070; */
    color: var(--base-font-color);
    
}


@keyframes fadeIn {
    0% {
        opacity: 0;
        scale: 0;
    }

    100% {
        opacity: 1;
        scale: 1;
    }
}

.content{
    align-items: center;
    text-align: center;
    max-width: 1100px;
    margin: 0 auto;
    animation: fadeIn 1200ms;
}

.logo{
    position: relative;
    max-width: 201px;
    top: 70px;
    animation: fadeIn 1000ms;
}

h1{
    font-weight: 400;
    font: normal normal normal 50px/61px Montserrat;
    margin-bottom: 11px;
}

h3 {
    font-weight: 300!important;
    font: 23px/28px Montserrat;
    margin-bottom: 23px;
}

p {
    font: 14px/18px Montserrat;
    
}

.subtitletext{
    max-width: 600px;
    margin: 0 auto;
}

.presentazione{
    position: relative;
    top: 70px;
}

.form-container{
    display: grid;
    grid-template-columns: auto auto;
}

.form-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}

.form-group-checkbox{
    position: relative;
    text-align: left;
}

.condizionitxt{
    position:absolute;
    margin-top: 5px;
    padding-left: 5px;
}

@media (max-width: 600px) {
    .condizionitxt {
            position: absolute;
            padding-left: 5px;
        }
}

@media (max-width: 900px) {
    .form-container {
        grid-template-columns: 1fr;
    }
}

 input[type="text"],
 input[type="email"] {
     width: 90%;
     /* background: #FAECCD 0% 0% no-repeat padding-box; */
     background: var(--base-font-color) 0% 0% no-repeat padding-box;
     border-radius: 38px;
     height: 65px;
     border: none;
     padding-left: 2rem;
     color: #606060;
    font: 14px/18px Montserrat;
 }

  input[type="checkbox"] {
    border-bottom-color: #595858!important;
    width: 17px;
    height: 17px;
    border: none;
    
  }

input[type="checkbox" i] {
    cursor: default;
  
}


  input:focus-visible {
    /* outline-color: #E3D7BA; */
    outline-color: var(--bg-input);
  }

 label {
     display: block;
     margin-bottom: 5px;
     text-align: left;
     font: normal normal normal 11px Montserrat;
     padding-left: 20px;
     text-transform: uppercase;
 }

 button {
    height: 45px;
    width: 122px;
    background: var(--base-font-color) 0% 0% no-repeat padding-box;
    border-radius: 38px;
    border: none;
    font: 16px/19px Montserrat;
    text-transform: uppercase;
    color: #707070;
    margin-top: 70px;
 }
 
 button:hover{
    /* background-color: #E3D7BA; */
    background-color: var(--bg-input);
    border: 1px solid var(--base-font-color);
    color: var(--base-font-color);
 }

 footer{
    position: relative;
    top: 120px;
    padding: 40px;
    font: 12px Montserrat;
 }

@keyframes pulse-ring {
    0% {
        transform: scale(.33);
    }

    80%,
    100% {
        opacity: 0;
    }
}

@keyframes pulse-dot {
    0% {
        transform: scale(.8);
    }

    50% {
        transform: scale(1);
    }

    100% {
        transform: scale(.8);
    }
}

.logo{
    animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -.4s infinite;
}