html, body {

    font-family: "Quattrocento Sans", sans-serif;

    background-color: #C5B9A0;

    overflow-x: hidden;
    overflow-y: scroll;

    width: 100vw;

    transition: .5s;
    display: flex;
    flex-direction: column;
}

/* Estilo para elementos desabilitados */
.img-container.disabled,
.img-scnd-container.disabled {
    filter: grayscale(100%);
    opacity: 0.5;
    pointer-events: none; /* impede clique */
    position: relative;   /* necessário para o ::after */
}

/* Texto "Indisponível" sobreposto */
.img-container.disabled::after,
.img-scnd-container.disabled::after {
    content: "Indisponível";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    background-color: rgba(0,0,0,0.6);
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 1rem;
    text-align: center;
    white-space: nowrap;
}


.main-div{
  flex: 1;
}


label {

    font-family: "Agbalumo", system-ui;

}

.btn-link{cursor: pointer;}

form input:focus{

    color:#FFF;

}

/* Estilo para as divs com fundo e efeito hover */

.img-container {

    width: 100%;

    height: 100vh;

    border-radius: 2px;

    position: relative;

    background-size: cover;

    background-position: center;

    -webkit-filter: grayscale(100%); /* Safari */

    transition: filter 1s ease, -webkit-filter 1s ease, width .5s ease,height .5s ease,transform 0.5s ease;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);

}



.img-scnd-container

{

    width: 100%;

    height: 31.6vh;

    border-radius: 2px;

    position: relative;

    background-size: cover;

    background-position: bottom;

    -webkit-filter: grayscale(100%); /* Safari */

    transition: filter 1s ease, -webkit-filter 1s ease, width .5s ease,height .5s ease,transform 0.5s ease;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);

}



.img-container.active ,.img-scnd-container.active{

    filter: grayscale(0%);

    -webkit-filter: grayscale(0%);

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.6);



}



.img-container:hover, .img-scnd-container:hover {

    filter: grayscale(0%);

    cursor: pointer;

}



.img-text {

    font-family: "Agbalumo", system-ui;

    letter-spacing: 2px;

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

    font-size: 24px;

    color: white;

    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);

    text-align: center;

}



.full-height {

    height: 100vh;

    display: flex;

    justify-content: center;

    align-items: center;

    position: absolute;

    top: 0;

    left: 0;

}



#lang-choose {

    height: 100vh;

    display: flex;

    position: absolute;

    top: 0;

    left: 0;

    width: 100vw;

}



.half-screen {

    transition: .5s;

    flex: 1;

    display: flex;

    justify-content: center;

    align-items: center;

    text-align: center;

    height: 100%;

}



.half-screen button{

    color:black;

}



.left-column:hover,

.right-column:hover {

    background-color: #201F1F;

    color: #C5B9A0;

}



.left-column:hover button,

.right-column:hover button

{

    color: #C5B9A0;

}





.left-column, .right-column {

    height: 100%;

    width: 100%; /* Garantir que ambas ocupem o mesmo espaço */

    display: flex;

    justify-content: center;

    align-items: center;

}



#form-container {

    background-color: #C5B9A0;

    position: absolute;

    top: 0;

    left: 0;

}



.container-fluid {

    overflow: hidden;

}



/* FORM CONTROL */

.form-control,

.form-select {

    /*background-color: #C5B9A0;*/

    border: 0px solid;

}



.form-control:focus {

    outline: 0 !important;

    background-color: rgba(0, 0, 0, 0.7);

    color: #FFF;

    box-shadow: none;

}



.form-control:active {

    outline: 0 !important;

}



.main-logo {

    height: 150px;

    position: absolute;

    top: 0;

    left: 50%;

    transform: translateX(-50%);

}



.main-content {

    margin-top: 100px;

}



#pessoas-icon {

    padding-left: 5px;

}



/* Estilos para as colunas do formulário */

.col-form {

    width:700px;

    min-width: 700px;

    padding: 15px;

}



.logo-start{

    position: absolute;

    top:50%;

    left:50%;

    transform: translate(-50%,-50%);

    z-index: 998;

    border-radius: 100%;

}



.sendMessage

{

    width:200px;

    border: 0px solid;

    padding:10px;

    background-color: rgba(0, 0, 0, 0.3);

    transition: .5s;

    border-radius: 5px;

}



.sendMessage:hover{

    color:#C5B9A0;

    background-color:#201F1F ;



}



#response-text{
    font-weight: bold;
    display: none;
    padding: 10px;
    border-radius: 5px;
    color: #FFF;
}





.cookies {

    position: fixed;

    bottom: 0;

    left: 0;

    width: 100%;

    background-color: #201F1F;

    color: #fff;

    padding: 10px;

    text-align: center;

    font-size: 14px;

    height: 100px;

    z-index: 999;

}



.cookies a {

    color: #fff;

    text-decoration: underline;

}



.cookies button {

    background-color: #4CAF50;

    color: #fff;

    border: none;

    padding: 5px 10px;

    margin: 0 5px;

    cursor: pointer;

}



.cookies button:hover {

    background-color: #45a049;

}





.contain{

    overflow: hidden;

}










.language-option {

    padding: 100px;

    font-size: 2em;

    background-color: transparent;

    cursor: pointer;

    border: none;

}



.div-form, .div-img{

    overflow:hidden;

}



/*.div-img{

    height:calc(100vh - 70px);

}*/



.div-form{

    padding:11rem 4rem 0rem 4rem;

}



#first-step-img1,#scnd-step-img1{

    background-image: url('../IMG/inside.webp');

}



#first-step-img2,#scnd-step-img2{

    background-image: url('../IMG/terrace.webp');

}



#first-step-img3, #scnd-step-img3

{

    background-image: url('../IMG/outside.webp');

}



.error{
   background-color: #E46D58!important;
}


.success{
    background-color: #2e7d32!important;
}


#preloader {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background: #fff; /* ou fundo escuro */

    z-index: 9999;

    display: flex;

    align-items: center;

    justify-content: center;

}



.loader {

    width: 50px;

    height: 50px;

    border: 5px solid #ccc;

    border-top: 5px solid #E46D58; /* ou outra cor */

    border-radius: 50%;

    animation: spin 1s linear infinite;

}



@keyframes spin {

    0% { transform: rotate(0deg); }

    100% { transform: rotate(360deg); }

}





.full-container

{

    width: 100vw;

}



#consent-overlay {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    z-index: 9999;

}

#consentCheckbox{
    background-color: rgba(0,0,0,0.4);
}

.overlay-bg {

    position: absolute;

    top: 0;

    left: 0;

    background-color: rgba(0, 0, 0, 0.7);

    width: 100%;

    height: 100%;

    backdrop-filter: blur(5px);

}



.consent-box {

    position: relative;

    z-index: 10000;

    background-color: #fff;

    border-radius: 8px;

    max-width: 500px;

    margin: 10% auto;

    padding: 30px;

    text-align: left;

    box-shadow: 0 0 20px #C5B9A0;

}







footer {

    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;

    width: 100%;

    background-color: #201F1F; 

    padding: 10px 0; 

    font-size: 12px;

    z-index: 998;



}



footer a{

    font-weight: bold;

    text-decoration:none;

    color:#FFF;

}



footer a:hover{

    color:#cccccc;

}



.footer p {

    margin: 0px 20px;

    color:#FFF;

}

.footer img{
     width: 30px;
}

@media screen and (max-width: 768px) {

    body{

        overflow-y: scroll;

    }

    .half-screen {

        flex-direction: column;

    }



    .language-option {

        font-size: 1.2em;

        padding: 30px;

    }



    .logo-start {

        width: 100px;

    }



    /* Ajustar as colunas do formulário */

    .div-form {

        padding: 3rem;

    }



    .col-6 {

        width: 100%;

        padding: 10px;

    }



    .sendMessage {

        width: 100%;

        padding: 15px;

    }



    .form-control,

    .form-select {

        width: 100%;

    }



    /* Ajuste de imagem em telas menores */

    .img-container,

    .img-scnd-container {

        height: 50vh;

    }



    .img-text {

        font-size: 20px;

    }

    #response-text{
        margin-bottom:50px;
    }

}



@media screen and (max-width: 799px) {



    .logo-start {

        top:40%;

        width: 90px!IMPORTANT;

        height: auto!important;

    }



    .language-option {

        font-size: 1em;

        padding: 20px;

    }



    /* Ajustes de padding e margens */

    .div-form {

        min-height: 100vh;

        max-height: 120vh;

        padding: 2rem;

        padding-top: 100px;

    }



    .sendMessage {

        width: 100%;

        padding: 12px;

    }



    .form-control,

    .form-select {

        width: 100%;

    }



    .img-container,

    .img-scnd-container {

        height: 31vh;

    }



    .img-text {

        font-size: 18px;

    }



    .footer{

        
        height: auto;

        padding:10px;

    }



    .cookies{

        height: 140px;

    }

}





@media screen and (min-width: 800px) and (max-width: 1024px) {

    .div-form{

        padding: 10rem 2rem;
        font-size:12px;
    }

    .form-control{font-size:12px;}
    .footer{bottom:-10px;height:80px
    }

    .logo-start{height: 150px;width:auto;}
}

@media (max-height: 750px) {
  .logo-start {
    width:auto!important;
    height: 100px!important;
  }

  .div-form {
    font-size: 13px;
    padding-top:100px!important;
    padding-bottom:0px!important;
  }

  footer{
    bottom:0px;
    font-size:10px;
    margin-top:0!important;
  }

  body{
    overflow-y: scroll;
  }

  .div-img{
    height: 100vh;
  }

  .img-scnd-container{height: 33vh;}
}
