/* laboiq.com — hoja compartida para las páginas legales.
   Mismo sistema visual que la landing, tratamiento de documento. */

:root{
  --bg:#050506; --bg-1:#0B0C0E; --bg-2:#131519;
  --ink:#F2F1EC; --ink-2:#A8AAAF; --ink-3:#6A6D73;
  --accent:#FF4A1C; --live:#D6FF3F;
  --line:rgba(242,241,236,.12); --line-2:rgba(242,241,236,.06);
  --display:'Bricolage Grotesque','Arial Narrow',system-ui,sans-serif;
  --body:'Inter Tight',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--body); font-weight:350; font-size:16.5px; line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }

.wrap{ max-width:820px; margin:0 auto; padding:0 clamp(20px,5vw,44px); }

/* barra superior */
.top{
  border-bottom:1px solid var(--line); background:var(--bg-1);
  position:sticky; top:0; z-index:5;
}
.top__in{
  max-width:820px; margin:0 auto; padding:14px clamp(20px,5vw,44px);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.top a{
  font-family:var(--mono); font-size:11px; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase; color:var(--ink-2);
  text-decoration:none; border-bottom:1px solid transparent; padding-bottom:2px;
}
.top a:hover{ color:var(--ink); border-bottom-color:var(--accent); }
.top__lang{ display:flex; gap:12px; align-items:center; }
.top__lang .on{ color:var(--ink); border-bottom-color:var(--accent); }

/* cabecera del documento */
header.doc{ padding:clamp(44px,7vw,80px) 0 clamp(26px,3.5vw,38px); border-bottom:1px solid var(--line); }
.eyebrow{
  font-family:var(--mono); font-size:11px; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3);
  display:flex; align-items:center; gap:9px; margin:0;
}
.eyebrow::before{ content:''; width:7px; height:7px; border-radius:50%; background:var(--accent); flex:none; }
h1{
  font-family:var(--display); font-weight:700; letter-spacing:-.03em;
  font-size:clamp(34px,6vw,60px); line-height:1; margin:18px 0 0; text-wrap:balance;
}
.stamp{ margin:18px 0 0; font-family:var(--mono); font-size:11.5px; letter-spacing:.05em; color:var(--ink-3); }
.intro{ margin:20px 0 0; font-size:17px; line-height:1.55; color:var(--ink-2); max-width:64ch; }
.intro b{ color:var(--ink); font-weight:500; }

/* cuerpo */
main{ padding:clamp(30px,4.5vw,52px) 0 clamp(56px,8vw,96px); }
section{ padding:26px 0; border-bottom:1px solid var(--line-2); }
section:last-of-type{ border-bottom:0; }
h2{
  font-family:var(--display); font-weight:500; letter-spacing:-.02em;
  font-size:clamp(20px,2.4vw,27px); line-height:1.15; margin:0 0 12px; text-wrap:balance;
}
h2 .n{
  font-family:var(--mono); font-size:12px; font-weight:500; letter-spacing:.1em;
  color:var(--accent); margin-right:12px; vertical-align:3px;
}
p{ margin:0 0 12px; max-width:66ch; color:var(--ink-2); }
p:last-child{ margin-bottom:0; }
strong,b{ color:var(--ink); font-weight:500; }
a{ color:var(--ink); text-decoration:none; border-bottom:1px solid var(--accent); }
a:hover{ color:var(--accent); }
ul{ margin:0 0 12px; padding-left:0; list-style:none; max-width:66ch; }
li{ position:relative; padding-left:20px; margin-bottom:8px; color:var(--ink-2); }
li::before{ content:'—'; position:absolute; left:0; color:var(--accent); }
li:last-child{ margin-bottom:0; }

/* datos de la entidad */
.addr{
  margin:14px 0 0; padding:14px 16px; background:var(--bg-1);
  border-left:2px solid var(--accent); font-style:normal;
  font-family:var(--mono); font-size:13px; line-height:1.75;
  letter-spacing:.02em; color:var(--ink-2); max-width:52ch;
}
.addr b{ color:var(--ink); font-weight:500; }
.addr a{ border-bottom-color:var(--line); }
.addr a:hover{ border-bottom-color:var(--accent); }

/* bloque destacado */
.callout{
  margin:16px 0 0; padding:18px 20px; background:var(--bg-1);
  border-left:3px solid var(--live); max-width:70ch;
}
.callout p{ color:var(--ink-2); }
.callout p:first-child{ margin-top:0; }

/* tabla de encargados */
.scroll{ overflow-x:auto; margin:14px 0 0; border:1px solid var(--line); }
table{ border-collapse:collapse; width:100%; min-width:460px; background:var(--bg-1); }
th,td{ text-align:left; padding:11px 15px; border-bottom:1px solid var(--line-2); font-size:14.5px; line-height:1.45; vertical-align:top; }
th{
  font-family:var(--mono); font-size:10.5px; font-weight:500; letter-spacing:.13em;
  text-transform:uppercase; color:var(--ink-3); background:var(--bg-2); white-space:nowrap;
}
td{ color:var(--ink-2); }
td b{ color:var(--ink); }
tr:last-child td{ border-bottom:0; }

/* pie */
footer{ border-top:1px solid var(--line); padding:26px 0 44px; }
.foot{
  font-family:var(--mono); font-size:11px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ink-3);
  display:flex; flex-wrap:wrap; gap:8px 18px;
}
.foot a{ color:var(--ink-3); border-bottom:1px solid var(--line); }
.foot a:hover{ color:var(--ink); border-bottom-color:var(--accent); }

@media (prefers-reduced-motion:reduce){ *{ animation:none!important; transition:none!important; } }
