/* ═══════════════════════════════════════════════════════════════════════
   LOVE MILES TRAVEL · páginas legais

   Documento para ler, não para impressionar. Coluna estreita, tipografia
   do site, hierarquia clara e tabelas que se percebem no telemóvel.
   ═══════════════════════════════════════════════════════════════════════ */

.pag-legal{ background:var(--areia, #F7F3EC) }

.lg__topo{
  background:var(--ink, #04222A); color:#fff;
  padding:1rem 1.2rem;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.lg__marca{ display:flex; align-items:center; gap:.6rem; text-decoration:none; color:#fff }
.lg__marca img{ height:34px; width:auto }
.lg__voltar{
  font-family:var(--f-mono, ui-monospace, monospace); font-size:.74rem; letter-spacing:.06em;
  color:rgba(255,255,255,.8); text-decoration:none;
}
.lg__voltar:hover{ color:#fff }

.lg{ padding:3.2rem 1.2rem 4.5rem }
.lg__in{ max-width:720px; margin:0 auto }

.lg h1{
  font-family:var(--f-serif, Georgia, serif);
  font-size:clamp(2rem, 5vw, 2.9rem); line-height:1.12; font-weight:400;
  color:var(--ink, #04222A); margin:.6rem 0 .8rem;
}
.lg__data{
  font-family:var(--f-mono, ui-monospace, monospace); font-size:.74rem;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ink-3, #6B7C7F);
  margin:0 0 2.4rem;
}
.lg__lede{
  font-size:1.05rem; line-height:1.7; color:var(--ink-2, #27454B);
  border-left:2px solid var(--olive, #7C8B3F); padding-left:1.1rem; margin:0 0 2.6rem;
}

.lg h2{
  font-family:var(--f-serif, Georgia, serif); font-weight:400;
  font-size:1.45rem; line-height:1.25; color:var(--ink, #04222A);
  margin:2.8rem 0 .9rem; padding-top:1.6rem;
  border-top:1px solid rgba(4,34,42,.1);
}
.lg h3{
  font-size:1rem; font-weight:600; color:var(--ink, #04222A); margin:1.6rem 0 .5rem;
}
.lg p, .lg li{ font-size:.95rem; line-height:1.72; color:var(--ink-2, #27454B) }
.lg p{ margin:0 0 1rem }
.lg ul{ margin:0 0 1.2rem; padding-left:1.1rem }
.lg li{ margin:0 0 .5rem }
.lg a{ color:var(--ink, #04222A); text-underline-offset:3px }
.lg strong{ color:var(--ink, #04222A) }

.lg__tbl{ width:100%; border-collapse:collapse; margin:0 0 1.6rem; font-size:.88rem }
.lg__tbl th, .lg__tbl td{
  text-align:left; vertical-align:top; padding:.7rem .8rem;
  border-bottom:1px solid rgba(4,34,42,.1); color:var(--ink-2, #27454B);
}
.lg__tbl th{
  font-family:var(--f-mono, ui-monospace, monospace); font-size:.7rem;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ink-3, #6B7C7F);
  font-weight:500; border-bottom-width:1.5px;
}

.lg__nota{
  background:#fff; border:1px solid rgba(4,34,42,.1); border-radius:12px;
  padding:1.1rem 1.2rem; margin:0 0 1.6rem;
}
.lg__nota p:last-child{ margin-bottom:0 }

.lg__porconfirmar{
  background:#FFF6E5; border:1px solid #E6C77A; border-radius:12px;
  padding:1rem 1.2rem; margin:0 0 1.6rem;
}
.lg__porconfirmar p{ margin:0; color:#6B4E00; font-size:.88rem }

.lg__pe{
  margin-top:3.5rem; padding-top:1.6rem; border-top:1px solid rgba(4,34,42,.1);
  font-family:var(--f-mono, ui-monospace, monospace); font-size:.76rem;
  color:var(--ink-3, #6B7C7F); display:flex; flex-wrap:wrap; gap:.4rem 1.2rem;
}
.lg__pe a{ color:var(--ink-3, #6B7C7F) }

@media (max-width:620px){
  .lg{ padding:2.4rem 1.1rem 3.5rem }
  .lg__tbl, .lg__tbl tbody, .lg__tbl tr, .lg__tbl td{ display:block; width:100% }
  .lg__tbl thead{ display:none }
  .lg__tbl tr{ border-bottom:1px solid rgba(4,34,42,.12); padding:.6rem 0 }
  .lg__tbl td{ border:0; padding:.2rem 0 }
  .lg__tbl td[data-r]::before{
    content:attr(data-r); display:block;
    font-family:var(--f-mono, ui-monospace, monospace); font-size:.66rem;
    letter-spacing:.08em; text-transform:uppercase; color:var(--ink-3, #6B7C7F);
    margin-bottom:.1rem;
  }
}
