:root {
    --branco: #f2f2f2;
    --preto: #262626;
    --cinza: #727272;
    --verde-escuro: #089590;
    --verde-claro: #6adbd9;
    --cinza-form: #e6e4e4;
    --preto-form: #979696;
    --degrade: linear-gradient(135deg, #6adbd9, #0abfb9);
}

@font-face {
    font-family: 'Magistral';
    src: url('assets/fonts/Magistral-Regular.ttf') format('truetype');
    font-weight: normal;
}

@font-face {
    font-family: 'LT Amber';
    src: url('assets/fonts/LT Amber Regular.otf') format('opentype');
    font-weight: normal;
}

/* Layout principal */
html, body {
    /* height: 100%; */
    margin: 0;
    padding: 0;
    font-family: 'Magistral', sans-serif;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: var(--cinza);
    color: var(--preto);
}

.main-container {
    width: 80%;
    margin: 2rem auto;
    background-color: white;
    border-radius: 1rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    flex: 1;
}

/* Tipografia */
h1, h2, h3, h4 {
    font-family: 'LT Amber', sans-serif;
    font-weight: bold;
}

h1 {
    font-size: 5.5rem;
    margin-bottom: 1.5rem;
}

.text-dark-green {
    color: var(--verde-escuro);
}

.text-degrade {
    background: var(--degrade);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Seções */
.logo{
    background: var(--preto);
    text-align: center;
    padding: 50px 20px 10px 20px;
}

.hero {
    padding: 50px 20px 10px 20px;
    text-align: center;
}

.info-section {
    padding: 50px 20px;
}

.form-section {
    background-color: var(--cinza-form);
    padding: 50px 20px;
    color: var(--preto-form);
}

.footer {
    background: var(--preto);
    color: white;
    padding: 2rem;
    text-align: center;
}

/* Botões */
.btn-custom {
    background: var(--degrade);
    border: none;
    color: white;
    transition: all 0.3s ease;
    border-radius: 1rem;
    padding: 0.75rem 1.5rem;
    font-weight: bold;
}

.btn-custom:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(10, 191, 185, 0.4);
    color: white;
}

.btn-verde-escuro {
    background: var(--verde-escuro);
    border: none;
    color: white;
    transition: all 0.3s ease;
    border-radius: 1rem;
    padding: 0.75rem 1.5rem;
    font-weight: bold;
}

.btn-verde-escuro:hover {
    background: var(--verde-escuro);
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(4, 68, 65, 0.782);
    color: white;
}

.btn-verde-claro {
    background: var(--verde-claro);
    border: none;
    color: white;
    transition: all 0.3s ease;
    border-radius: 1rem;
    padding: 0.75rem 1.5rem;
    font-weight: bold;
}

.btn-verde-claro:hover {
    background: var(--verde-claro);
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(4, 68, 65, 0.782);
    color: white;
}

/* Ícones */
.icon {
    font-size: 2rem;
    color: var(--verde-escuro);
    transition: transform 0.3s ease;
}

.icon:hover {
    transform: rotate(20deg);
}

::selection {
    background: var(--verde-escuro);
    color: var(--preto);
}

/* Responsividade */
@media (max-width: 992px) {
    .main-container {
        width: 85%;
    }
}

@media (max-width: 768px) {
    .main-container {
        width: 95%;
        margin: 1rem auto;
    }
    
    h1 {
        font-size: 2rem;
    }
    
    .hero, .info-section, .form-section, .enquanto-isso-section {
        padding: 2rem 1rem;
    }
}