/* Páginas legales — Adrian Cerrajeros Mataró */

/* Tema único claro: fondo blanco, tinta petróleo, naranja de acción. */
:root{
  --paper:#FFFFFF;
  --surface:#F7FBFA;
  --tint:#E8F4F2;
  --tint-2:#CFE7E2;
  --ink:#0D2B36;
  --ink-2:#31525C;
  --muted:#5F7C86;
  --line:#DDE8E8;
  --line-2:#BDD0D1;
  --deep:#0D2B36;
  --deep-ink:#EAF1F1;
  --deep-muted:#8FA9B0;
  --signal:#E2551F;
  --on-signal:#FFFFFF;
  --teal:#0E9384;
  --aqua:#4FD1C5;
  --ring:#F2622E;
}

*{box-sizing:border-box}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Public Sans","Helvetica Neue",Arial,sans-serif;
  font-size:17px;line-height:1.66;-webkit-font-smoothing:antialiased;
}
a{color:inherit}
.wrap{width:min(1160px,100% - 2.8rem);margin-inline:auto}
.prose{width:min(70ch,100% - 2.8rem);margin-inline:auto}

h1,h2,h3{
  font-family:"Bricolage Grotesque","Public Sans",Arial,sans-serif;
  font-weight:700;line-height:1.06;letter-spacing:-.025em;text-wrap:balance;margin:0;
}
h1{font-weight:800;font-size:clamp(2.1rem,4.4vw,3rem)}
h2{font-size:1.4rem;margin-top:2.6rem}
h3{font-size:1.05rem;margin-top:1.8rem}
p,ul,ol{margin:.9rem 0 0}
ul,ol{padding-left:1.2rem}
li{margin-top:.35rem}
strong{font-weight:700}

.label{font-weight:700;font-size:.7rem;letter-spacing:.19em;text-transform:uppercase;color:var(--signal);margin:0 0 .9rem}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:"Bricolage Grotesque",Arial,sans-serif;font-weight:700;font-size:1rem;
  padding:.9rem 1.6rem;border-radius:999px;border:2px solid var(--signal);
  background:var(--signal);color:var(--on-signal);text-decoration:none;white-space:nowrap;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
:where(a,button):focus-visible{outline:3px solid var(--ring);outline-offset:3px}
.tel{font-variant-numeric:tabular-nums}

/* cabecera */
.hdr{background:var(--paper);border-bottom:1px solid var(--line)}
.hdr__in{display:flex;align-items:center;gap:1.2rem;padding:.8rem 0;min-height:68px}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;margin-right:auto}
.brand svg{width:34px;height:34px;flex:none}
.brand b{
  display:block;font-family:"Bricolage Grotesque",Arial,sans-serif;font-weight:800;
  font-size:1.08rem;line-height:1.02;letter-spacing:-.03em;white-space:nowrap;
}
.brand em{
  display:block;font-style:normal;font-size:.66rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin-top:.2rem;white-space:nowrap;
}
@media (max-width:560px){.hdr .btn{display:none}}

/* documento */
.doc{padding:clamp(2.6rem,5vw,4.4rem) 0 clamp(3rem,6vw,5rem)}
.doc__meta{color:var(--muted);font-size:.94rem;margin-top:1rem}
.doc p,.doc li{color:var(--ink-2)}

.card{
  background:var(--tint);border:1px solid var(--tint-2);border-radius:16px;
  padding:1.6rem 1.7rem;margin-top:1.6rem;
}
.card dl{display:grid;grid-template-columns:auto 1fr;gap:.6rem 1.6rem;margin:0}
.card dt{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);padding-top:.3rem}
.card dd{margin:0;color:var(--ink)}
.card a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--signal)}
.card a:hover{color:var(--signal)}
.card--flag{border-color:var(--signal);background:#FDEDE6}
@media (max-width:560px){.card dl{grid-template-columns:1fr;gap:.15rem}.card dd{margin-bottom:.8rem}}

.backline{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--line);display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center}
.backline a.text{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line-2)}
.backline a.text:hover{color:var(--signal);border-color:var(--signal)}

/* pie */
.ftr{background:var(--deep);color:var(--deep-ink);padding:2.6rem 0 2rem}
.ftr__in{display:flex;justify-content:space-between;gap:1.2rem;flex-wrap:wrap;align-items:center}
.ftr p{color:var(--deep-muted);font-size:.9rem;margin:0}
.ftr a{color:var(--deep-ink);text-decoration:none}
.ftr a:hover{color:var(--aqua)}
.ftr__links{display:flex;gap:1.4rem;flex-wrap:wrap;font-size:.9rem}
.ftr__links a{color:var(--deep-muted);border-bottom:1px solid rgba(234,241,241,.2);padding-bottom:1px}
.ftr__links a:hover{color:var(--aqua);border-color:var(--aqua)}
