/* Redigia — páginas legais (privacidade, termos, consentimento).
   Mesmo sistema visual da landing: fonte auto-hospedada, tinta escura de marca,
   papel para o texto longo. Documento legal deve ser sóbrio e MUITO legível. */

@font-face{
  font-family:'Schibsted Grotesk';
  src:url('fonts/schibsted-grotesk.woff2') format('woff2');
  font-weight:400 700; font-style:normal; font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212;
}

:root{
  --ink:        oklch(0.185 0.028 196);
  --ink-3:      oklch(0.325 0.026 196);
  --on-ink:     oklch(0.965 0.008 190);
  --on-ink-mut: oklch(0.790 0.018 190);

  --paper:      oklch(0.993 0.003 190);
  --paper-2:    oklch(0.968 0.006 190);
  --line:       oklch(0.895 0.010 190);
  --text:       oklch(0.270 0.022 200);
  --muted:      oklch(0.480 0.018 200);

  --teal:       oklch(0.520 0.098 187);
  --teal-deep:  oklch(0.430 0.090 187);
  --teal-lit:   oklch(0.840 0.130 178);

  --warn-bg:    oklch(0.965 0.035 85);
  --warn-line:  oklch(0.850 0.075 80);
  --warn-ink:   oklch(0.400 0.090 62);

  --r:4px;
  --ease:cubic-bezier(.16,1,.3,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; color:var(--text); background:var(--paper);
  font-family:'Schibsted Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:1.0625rem; line-height:1.7; -webkit-font-smoothing:antialiased;
}
a{color:var(--teal-deep)}
a:hover{text-decoration:none}
:focus-visible{outline:2px solid var(--teal); outline-offset:3px; border-radius:2px}
::selection{background:var(--teal-lit); color:var(--ink)}

.wrap{max-width:72ch; margin-inline:auto; padding-inline:clamp(1.15rem,5vw,1.5rem)}

/* Cabeçalho: a mesma tinta escura da landing, para não parecer outro site */
header{background:var(--ink); color:var(--on-ink)}
.nav{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  max-width:72ch; margin-inline:auto; padding:1rem clamp(1.15rem,5vw,1.5rem);
}
.brand{
  display:inline-flex; align-items:baseline; text-decoration:none;
  font-weight:700; font-size:1.3rem; letter-spacing:-.03em; color:var(--on-ink);
  padding-block:.4rem;
}
.brand .dot{color:var(--teal-lit)}
.back{
  font-size:.9rem; font-weight:600; color:var(--on-ink); text-decoration:none;
  padding:.7rem .95rem; border:1px solid color-mix(in oklch, var(--on-ink) 28%, transparent);
  border-radius:var(--r); display:inline-flex; align-items:center; /* alvo de toque ≥44px */
  transition:border-color .25s var(--ease), background-color .25s var(--ease);
}
.back:hover{border-color:var(--on-ink); background:color-mix(in oklch, var(--on-ink) 9%, transparent); text-decoration:none}

main{padding-block:clamp(2.5rem,6vw,4rem) clamp(3.5rem,8vw,5.5rem)}
h1{
  color:var(--text); font-size:clamp(1.9rem,1.4rem+2.2vw,2.7rem);
  letter-spacing:-.03em; line-height:1.12; margin:0 0 .4rem; text-wrap:balance;
}
h2{
  color:var(--text); font-size:1.3rem; letter-spacing:-.02em; line-height:1.3;
  margin:2.6rem 0 .6rem; text-wrap:balance;
}
h3{color:var(--text); font-size:1.05rem; letter-spacing:-.01em; margin:1.6rem 0 .35rem}
p{margin:0 0 1rem; text-wrap:pretty}
ul{margin:0 0 1rem; padding-inline-start:1.35rem}
li{margin-block-end:.4rem}
b,strong{font-weight:600; color:var(--text)}

.meta{color:var(--muted); font-size:.92rem; margin-block-end:1rem}

/* Aviso de "versão preliminar" — sem tarja lateral, sem emoji decorativo */
.banner{
  background:var(--warn-bg); border:1px solid var(--warn-line); color:var(--warn-ink);
  border-radius:var(--r); padding:.85rem 1.1rem; margin:1.25rem 0 1.75rem;
  font-size:.94rem; font-weight:600; line-height:1.5;
}

table{width:100%; border-collapse:collapse; margin:0 0 1.25rem; font-size:.94rem; line-height:1.55}
th,td{border:1px solid var(--line); padding:.65rem .8rem; text-align:start; vertical-align:top}
th{background:var(--paper-2); color:var(--text); font-weight:600}

.contact{
  background:var(--ink); color:var(--on-ink); border-radius:var(--r);
  padding:1.1rem 1.3rem; margin-block-start:.5rem;
}
.contact a{color:var(--teal-lit)}

footer{
  border-block-start:1px solid var(--line); padding-block:1.25rem;
  color:var(--muted); font-size:.9rem; text-align:center;
}
footer a{
  color:var(--muted); text-decoration:none; padding:.7rem .5rem;
  display:inline-flex; align-items:center; /* alvo de toque ≥44px */
}
footer a:hover{color:var(--text); text-decoration:underline}

/* ─────────────────────────────────────────────────────────────
   Modelo de consentimento — feito para ser preenchido e impresso.
   Na tela é uma folha sobre a tinta escura; no papel, só a folha. */
.toolbar{
  background:var(--ink); color:var(--on-ink);
  display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
  padding:1rem clamp(1.15rem,5vw,1.5rem);
}
.toolbar .actions{display:flex; align-items:center; gap:.6rem; flex-wrap:wrap}
.toolbar .btn{
  font:inherit; font-size:.9rem; font-weight:700; cursor:pointer;
  background:var(--teal-lit); color:var(--ink); border:1px solid var(--teal-lit);
  border-radius:var(--r); padding:.7rem 1.05rem;
  transition:background-color .25s var(--ease);
}
.toolbar .btn:hover{background:var(--on-ink); border-color:var(--on-ink)}

.hint{max-width:80ch; margin-inline:auto; padding:1.25rem clamp(1.15rem,5vw,1.5rem) 0}

.sheet{
  max-width:80ch; margin:1.5rem auto 4rem; background:#fff;
  border:1px solid var(--line); border-radius:var(--r);
  padding:clamp(1.5rem,5vw,3rem);
  box-shadow:0 1px 1px rgb(9 26 29 /.04), 0 10px 30px -16px rgb(9 26 29 /.18);
}
.doc-title{font-size:clamp(1.35rem,1.1rem+1.1vw,1.75rem); margin:0 0 .35rem; text-wrap:balance}
.doc-sub{color:var(--muted); font-size:.95rem; margin:0 0 1.75rem}

.field{margin-block-end:1.1rem}
.field label{display:block; font-size:.85rem; font-weight:600; color:var(--muted); margin-block-end:.4rem}
.field .line{border-block-end:1px solid var(--text); block-size:1.6rem}

/* A cláusula específica é o coração jurídico do termo: precisa saltar aos olhos,
   sem tarja lateral (banida) — usa borda inteira e fundo próprio. */
.clause{
  border:1px solid var(--teal); background:var(--paper-2);
  border-radius:var(--r); padding:1.1rem 1.25rem; margin:1.75rem 0;
}
.clause h3{margin-block-start:0; color:var(--teal-deep)}
.clause ul{margin-block-end:0}

.checkline{display:flex; align-items:flex-start; gap:.7rem; margin:1.75rem 0; font-size:.97rem}
.checkbox{
  inline-size:1.05rem; block-size:1.05rem; border:1.5px solid var(--text);
  border-radius:2px; flex:none; margin-block-start:.28rem;
}

.sign{display:flex; flex-wrap:wrap; gap:2rem; margin-block-start:3rem}
.sign .col{flex:1 1 240px}
.sigline{border-block-start:1px solid var(--text); padding-block-start:.5rem; font-size:.85rem; color:var(--muted)}

.place-date{margin-block-start:2.5rem; font-size:.97rem}
.place-date .fill{display:inline-block; min-inline-size:150px; border-block-end:1px solid var(--text)}

/* Impressão — o modelo de consentimento existe para ser impresso e assinado */
@media print{
  header,footer,.back,.toolbar,.hint,.no-print{display:none !important}
  body{background:#fff; color:#000; font-size:11.5pt}
  .contact{background:#fff; color:#000; border:1px solid #999}
  .contact a{color:#000}
  .banner{border:1px solid #999; background:#fff; color:#000}
  a{color:#000; text-decoration:none}
  .wrap{max-width:none}
  .sheet{
    max-width:none; margin:0; border:0; border-radius:0; padding:0; box-shadow:none;
  }
  .clause{border:1px solid #666; background:#fff; break-inside:avoid}
  .sign,.checkline,.place-date{break-inside:avoid}
  h1,h2,h3{break-after:avoid}
}
