/* ==================================================
   LEGALS
================================================== */

.legal-page{
    padding:180px 0 120px;
    background:#F8F5F1;
    min-height:100vh;
}

.legal-container{
    max-width:1150px;
    margin:0 auto;
}

/* HERO */

.legal-hero{
    text-align:center;
    margin-bottom:70px;
}

.legal-tag{
    display:inline-block;
    margin-bottom:18px;

    color:var(--primary);

    font-size:13px;
    font-weight:700;

    letter-spacing:2px;
    text-transform:uppercase;
}

.legal-hero h1{
    font-size:clamp(2.8rem,5vw,4.5rem);
    color:#111827;
    line-height:1.1;
    margin-bottom:22px;
}

.legal-hero p{
    max-width:760px;
    margin:0 auto;

    color:#6B7280;

    font-size:18px;
    line-height:1.9;
}

/* CARD */

.legal-content{

    background:#fff;

    border-radius:28px;

    padding:70px;

    box-shadow:
    0 20px 60px rgba(0,0,0,.06);

    border:1px solid #ece8e3;

}

/* SECÇÕES */

.legal-section{

    margin-bottom:70px;

}

.legal-section:last-child{

    margin-bottom:0;

}

.legal-section h2{

    font-size:34px;

    color:#111827;

    margin-bottom:22px;

    position:relative;

    padding-bottom:14px;

}

.legal-section h2::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:70px;
    height:4px;

    background:var(--primary);

    border-radius:20px;

}

.legal-section h3{

    margin-top:35px;
    margin-bottom:15px;

    color:#111827;

    font-size:24px;

}

.legal-section p{

    color:#5F6678;

    line-height:1.95;

    font-size:17px;

    margin-bottom:20px;

}

/* LISTAS */

.legal-section ul{

    margin:20px 0 25px 20px;

}

.legal-section li{

    margin-bottom:14px;

    color:#5F6678;

    line-height:1.8;

    font-size:16px;

}

/* GRID */

.legal-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

    margin-top:35px;

}

/* CARDS */

.legal-card{

    background:#F8F5F1;

    border:1px solid #ECECEC;

    border-radius:20px;

    padding:30px;

    transition:.3s ease;

}

.legal-card:hover{

    transform:translateY(-5px);

    box-shadow:
    0 15px 40px rgba(0,0,0,.06);

}

.legal-card h3{

    margin:0 0 12px;

    font-size:22px;

}

.legal-card p{

    margin:0;

    font-size:15px;

}

/* CONTACTO */

.contact-box{

    margin-top:30px;

    padding:35px;

    border-radius:22px;

    background:#F8F5F1;

    border:1px solid #ECECEC;

}

.contact-box p{

    margin-bottom:12px;

}

.contact-box p:last-child{

    margin-bottom:0;

}

.contact-box strong{

    color:#111827;

}

/* TABELAS */

.legal-table{

    width:100%;

    border-collapse:collapse;

    margin:35px 0;

}

.legal-table th{

    background:var(--primary);

    color:#fff;

    text-align:left;

    padding:18px;

    font-weight:600;

}

.legal-table td{

    padding:18px;

    border-bottom:1px solid #ECECEC;

    color:#5F6678;

}

.legal-table tr:nth-child(even){

    background:#FAFAFA;

}

/* ALERTA */

.legal-note{

    margin-top:35px;

    background:#FEF2F2;

    border-left:5px solid var(--primary);

    padding:25px;

    border-radius:14px;

}

.legal-note p{

    margin:0;

}

/* LINKS */

.legal-content a{

    color:var(--primary);

    text-decoration:none;

    font-weight:600;

}

.legal-content a:hover{

    text-decoration:underline;

}

/* RESPONSIVO */

@media(max-width:992px){

    .legal-content{

        padding:45px;

    }

    .legal-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .legal-page{

        padding:150px 0 80px;

    }

    .legal-content{

        padding:30px;

        border-radius:20px;

    }

    .legal-hero{

        margin-bottom:45px;

    }

    .legal-hero h1{

        font-size:2.3rem;

    }

    .legal-section{

        margin-bottom:50px;

    }

    .legal-section h2{

        font-size:28px;

    }

    .legal-section h3{

        font-size:21px;

    }

    .legal-section p,
    .legal-section li{

        font-size:16px;

    }

    .contact-box{

        padding:25px;

    }

}
/* ==========================
   ÍNDICE
========================== */

.legal-index{

    margin-bottom:60px;

}

.legal-index h3{

    font-size:28px;

    margin-bottom:28px;

    color:#111827;

    font-weight:800;

}

.legal-index ul{

    list-style:none;

    padding:0;
    margin:0;

    display:flex;

    flex-wrap:wrap;

    gap:14px;

}

.legal-index li{

    margin:0;

}

.legal-index a{

    display:inline-flex;
    align-items:center;

    padding:12px 18px;

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:12px;

    color:#4B5563;

    text-decoration:none;

    font-size:15px;
    font-weight:600;

    transition:all .25s ease;
}

.legal-index a:hover{

    background:#FAFAFA;

    border-color:#D1D5DB;

    color:#111827;

    transform:translateY(-2px);

    box-shadow:0 10px 25px rgba(0,0,0,.05);

}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px; /* ajusta à altura do teu header */
}
html {
  scroll-behavior: smooth;
}

.legal-section {
  scroll-margin-top: 140px;
}