/* ========================================================
   Legal pages (Termos / Privacidade) — shared layout
   ======================================================== */

.legal-page{
    background:#f6f8fb;
    padding:120px 0 80px;
    min-height:100vh;
    color:#1f2630;
    font-family:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
    line-height:1.7;
}

.legal-page .container{
    max-width:820px;
    padding:0 22px;
}

/* Hero */
.legal-hero{
    margin-bottom:40px;
    padding-bottom:28px;
    border-bottom:1px solid #e3e7ee;
}
.legal-eyebrow{
    display:inline-block;
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#6c63ff;
    font-weight:700;
    margin-bottom:14px;
}
.legal-hero h1{
    font-size:34px;
    line-height:1.2;
    margin:0 0 14px;
    color:#1a1f2b;
    font-weight:800;
    letter-spacing:-.01em;
}
.legal-lead{
    color:#4b5567;
    font-size:16px;
    margin:0 0 22px;
}
.legal-pills{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.legal-pills a{
    display:inline-block;
    padding:8px 16px;
    background:#fff;
    border:1px solid #dde2eb;
    border-radius:999px;
    color:#3a4252;
    font-size:13px;
    font-weight:600;
    text-decoration:none;
    transition:all .15s ease;
}
.legal-pills a:hover{
    border-color:#6c63ff;
    color:#6c63ff;
}

/* Section titles */
.legal-page section{margin:40px 0}
.legal-page h2{
    font-size:24px;
    font-weight:800;
    color:#1a1f2b;
    margin:0 0 8px;
    letter-spacing:-.01em;
}
.legal-intro{
    color:#4b5567;
    font-size:15px;
    margin:0 0 22px;
}

/* Cards */
.legal-card{
    background:#fff;
    border:1px solid #e6eaf1;
    border-radius:14px;
    padding:22px 24px 6px;
    margin:14px 0;
    box-shadow:0 1px 2px rgba(20,30,55,.04);
}
.legal-card h3{
    font-size:16px;
    font-weight:700;
    color:#6c63ff;
    margin:0 0 12px;
    letter-spacing:.005em;
}
.legal-card p{
    margin:0 0 14px;
    color:#2e3543;
    font-size:15px;
}
.legal-card ul{
    margin:0 0 16px;
    padding-left:0;
    list-style:none;
}
.legal-card li{
    position:relative;
    padding:5px 0 5px 20px;
    color:#2e3543;
    font-size:15px;
}
.legal-card li::before{
    content:"";
    position:absolute;
    left:4px;top:13px;
    width:6px;height:6px;
    border-radius:50%;
    background:#6c63ff;
    opacity:.75;
}
.legal-card a{
    color:#6c63ff;
    text-decoration:none;
    word-break:break-word;
}
.legal-card a:hover{text-decoration:underline}
.legal-card strong{color:#1a1f2b;font-weight:700}

/* Email chip */
.legal-email{
    display:inline-block;
    background:#f1f3f8;
    border:1px solid #e0e4ec;
    color:#1a1f2b !important;
    padding:8px 14px;
    border-radius:8px;
    font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
    font-size:14px;
    text-decoration:none !important;
}

/* Divider */
.legal-divider{
    border:0;
    height:1px;
    background:#e3e7ee;
    margin:50px 0 30px;
}

/* Last updated */
.legal-updated{
    margin-top:46px;
    padding:16px 20px;
    background:#fff;
    border:1px solid #e6eaf1;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
}
.legal-updated .label{
    font-size:11px;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#7a8294;
    font-weight:700;
}
.legal-updated .date{
    color:#1a1f2b;
    font-weight:700;
    font-variant-numeric:tabular-nums;
}

/* Mobile */
@media (max-width:640px){
    .legal-page{padding:100px 0 60px}
    .legal-hero h1{font-size:26px}
    .legal-page h2{font-size:20px}
    .legal-card{padding:18px 18px 4px}
    .legal-card p,
    .legal-card li{font-size:14.5px}
}
