/* Import the font */
@import url('https://fonts.googleapis.com/css2?family=Anek+Kannada:wght@400;700&display=swap');

/* Galeria de imagens responsiva */
.galeria {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
}


/* Tipografia responsiva */
h1 {
    font-size: 2rem;
}

/* Hero section (Texto principal) */
.hero {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40vh;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 14.32%, rgba(130, 155, 163, 0.16) 43.81%, rgba(255, 255, 255, 0.16) 67.18%, rgba(255, 255, 255, 0.4) 100%);
    font-family: 'Anek Kannada', sans-serif; /* Apply the font here */
    text-align: center;
    position: relative;
    z-index: 1;
}

.hero h1 {
    font-family: 'Anek Kannada', sans-serif; /* Apply the font here */
    font-size: 50px;
    font-weight: 700;
    line-height: 56px;
    text-align: center;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
}

/* Galeria */


/* Estilo para a galeria principal */
.main-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Define three columns */
    gap: 0; /* Remove space between items */
    padding: 40px; /* Add space around the gallery */
    box-sizing: border-box;
}

.gallery-box {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 0.8; /* Ensure all boxes have the same aspect ratio */
}

.gallery-image {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensure the image covers the entire box without distortion */
    transition: transform 0.3s ease;
}

.gallery-box:hover .gallery-image {
    transform: scale(1.05); /* Slight zoom effect */
    box-shadow: 0px 10px 30px -12px rgba(0, 0, 0, 0.3);
}

.gallery-box:hover .overlay {
    opacity: 1;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(130, 155, 163, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.overlay-text {
    font-family: 'Anek Kannada', sans-serif;
    font-size: 25px;
    font-weight: 700;
    line-height: 41.75px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #fff; /* White color for better contrast */
}

.photo {
    width: 100%;
    height: calc(100vw / 3); /* Altura dinâmica com base na largura */
    background-size: cover;
    background-position: center;
    margin: 0; /* Remove margens */
}

/* Hover desativado */
.photo:hover {
    transform: none; /* Desativa o efeito de aumento */
}

.about {
    padding: 50px 20px;
    text-align: center;
    transform: translateY(50px); /* Para começar mais abaixo */

}

.about h2 {
    font-family: 'Inter', sans-serif;
    font-size: 26px;
    color: #829BA3;
    margin: 0;
    font-weight: normal; /* Letras mais finas */
}
.about p {
    font-family: 'Anek Kannada', sans-serif; /* Apply the font here */
    font-size: 50px;
    font-weight: bold;
    color: #1c1c1c;
    line-height: 1.2;
    margin: 0;
}

.about-container {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 20px;
    margin-top: 30px;
    padding: 20px;
}

.about-box {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    padding: 20px;
    width: 300px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: none; /* Remove as linhas de fora que delineiam os containers */
}

.about-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
}

.icon-container {
    font-size: 40px;
    color: #829BA3;
    margin-bottom: 15px;
}

.about-box h3 {
    font-family: 'Anek Kannada', sans-serif;
    font-size: 30px;
    color: #333;
    margin-bottom: 10px;
}

.about-box p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #1C1C1C;
    line-height: 1.5;
    font-weight: normal;
}

.quote-section {
    position: relative;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 50px 20px;
    margin: 30px auto;
    max-width: 1000px;
}

.quote-text {
    position: absolute;
    margin-bottom: 10px;
}

.quote-section p {
    font-family: 'Anek Kannada', sans-serif;
    font-size: 40px;
    font-weight: bold;
    color: #1C1C1C;
    line-height: 1.6;
    margin: 0;
}

.quote-image {
    display: block;
    margin: 0 auto;
    width: 130%;
}

.icon{
    width: 20%;
}

.contact {
    display: flex;
    flex-direction: column;
    padding: 100px 20px;
    background-color: #ffffff; /* Fundo branco */
    align-items: flex-start; /* Alinhar à esquerda */
    margin-bottom: -480px;
}

.contact h2 {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    color: #829BA3;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: left; /* Alinhar texto à esquerda */
    padding-left: 15%; /* Ajuste o valor conforme necessário */
}

.contact p {
    font-family: 'Anek Kannada', sans-serif;
    font-size: 52px;
    font-weight: bold;
    color: #1c1c1c;
    margin: 0;
    line-height: 1.2;
    text-align: left;
    padding-left: 15%; /* Ajuste o valor conforme necessário */
}

.contact h1 {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: normal;
    color: #1c1c1c;
    line-height: 1.8;
    max-width: 600px;
    margin: -7% 0 0px 60%; /* Ajuste o valor conforme necessário */
    text-align: left;
}


.btn-gallery2 {
    font-family: 'Inter', sans-serif;
    font-size: 23px;
    font-weight: bold;
    color: #1c1c1c;
    line-height: 1.8;
    max-width: 600px;
    margin: 3% 0 0px 60%; /* Ajuste o valor conforme necessário */
    text-align: left;
    transition: transform 0.3s ease, color 0.3s ease;
}

.btn-gallery {
    transition: transform 0.3s ease, color 0.3s ease; /* Adicione transição suave */
}

.btn-gallery:hover {
    color: #A9A9A9;
    transform: scale(1.1); /* Use transform para o efeito de zoom */
}

.btn-gallery2:hover {
    color: #A9A9A9;
    transform: scale(1.1); /* Use transform para o efeito de zoom */
}


/* Para tablets grandes e laptops */
@media (max-width: 1024px) { 
    /* Ajustes específicos */
    .contact{
        padding-bottom: 50%;
    }

    .contact h1 {
        margin-top:-15%;
        margin-bottom: 10px;
        line-height: 1.4;
    }
    .quote-section p {
        font-size: 30px; /* Ajustar o tamanho da fonte */
    }
}

/* Para tablets pequenos */
@media (max-width: 768px) {
    .about-container {
        flex-direction: column; /* Empilhar os itens verticalmente */
        align-items: center; /* Centralizar os itens */
        gap: 10px; /* Ajustar o espaço entre os itens */
        padding: 10px; /* Ajustar o padding */
    }

    .quote-section {
        padding: 30px 15px;
    }

    .quote-text {
        font-size: 25px;
    }

    .quote-text {
        font-size: 28px;
    }

    .quote-section p {
                        flex-direction: column; /* Empilhar os itens verticalmente */
        align-items: center;
        font-size: 25px; /* Ajustar o tamanho da fonte */
    }
    .contact{
        padding: 50px 20px;
        margin-bottom: -200px;
        font-size: 35px;
    }

    .contact h2 {
        font-size: 16px; /* Ajustar o tamanho da fonte */
        margin-left:-10%;
    }
    .contact p {
        font-size: 40px; /* Ajustar o tamanho da fonte */
        margin-left:-10%;
    }
    .contact h1 {
        font-size: 18px; /* Ajustar o tamanho da fonte */
        margin-bottom: 10px;
        line-height: 1.4;
    }
    .contact a{
        font-size: 25px;
        margin-bottom: 250px;
    }
    
}

/* Para telemóveis médios */
@media (max-width: 600px) { 
    /* Ajustes específicos */
        .quote-section {
        padding: 20px 10px;
    }

    .quote-text {
        font-size: 22px;
    }
}

/* Para telemóveis pequenos */
@media (max-width: 480px) {
    .quote-section {
        padding: 15px 5px;
    }

    .quote-text {
        font-size: 18px;
    }
    .quote-section p {
                        flex-direction: column; /* Empilhar os itens verticalmente */
        align-items: center;
        font-size: 20px; /* Tamanho de fonte menor para telas muito pequenas */
    }
    .contact{
        padding: 50px 20px;
        margin-bottom: -300px;
        font-size: 2px;
    }
    
    .contact h2 {
        font-size: 16px; /* Ajustar o tamanho da fonte */
        margin-left:-15%;
        margin-bottom: 0px;
    }
    .contact p {
        font-size: 25px; /* Ajustar o tamanho da fonte */
        margin-left:-15%;
    }
    .contact h1 {
        font-size: 10px; /* Ajustar o tamanho da fonte */
        margin-bottom: 10px;
        line-height: 1.4;
    }
    .contact a{
        font-size: 20px;
        margin-bottom: 250px;
    }

}

/* Para dispositivos muito pequenos (ex: relógios inteligentes) */
@media (max-width: 320px) { 
    /* Ajustes específicos */
        .quote-section{
                flex-direction: column; /* Empilhar os itens verticalmente */
        align-items: center;
    }
    .quote-section p {
                        flex-direction: column; /* Empilhar os itens verticalmente */
        align-items: center;
        font-size: 20px; /* Tamanho de fonte menor para telas muito pequenas */
    }
}
@media (max-width: 1440px) {
    .contact {
        margin-bottom: -130px;
    }
}

@media (max-width: 1024px) {
    .contact {
        margin-bottom: -470px;
    }
}

@media (max-width: 912px) {
    .contact {
        margin-bottom: -500px;
    }
}

@media (max-width: 820px) {
    .contact {
        margin-bottom: -330px;
    }
}

@media (max-width: 768px) {
    .contact {
        margin-bottom: -130px;
    }

    .contact p {
        margin-left: -20px;
    }

    .contact h2 {
        margin-left: -20px;
    }
}

@media (max-width: 540px) {
    .contact {
        margin-bottom: -80px;
        margin-left: 50px;
    }

    .contact h1 {
        margin-top: 10px;
        margin-left: 20px;
    }

    .contact p {
        margin-left: -35px;
    }

    .contact h2 {
        margin-left: -35px;
    }

    .contact-btn {
        margin-top: 45px;
        margin-left: 20px;
    }
}

@media (max-width: 430px) {
    .contact {
        margin-bottom: -60px;
    }

    .contact h1 {
        margin-top: 10px;
        margin-left: 20px;
    }

    .contact p {
        margin-left: -35px;
    }

    .contact h2 {
        margin-left: -35px;
    }

    .contact-btn {
        margin-top: 45px;
        margin-left: 20px;
    }
}

