/* Páginas legales de Camayoc: Términos, Privacidad y Libro de Reclamaciones */
:root{
  --grafito:#121618;--acero:#1A2124;--acero-2:#242D31;--linea:#2A3438;--linea-2:#3C484D;
  --humo:#8B979C;--humo-2:#B9C2C6;--hueso:#F4F3F0;--naranja:#F26B1D;--naranja-alto:#FF8438;
  --disp:'Schibsted Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Consolas,monospace;
  --gut:clamp(20px,4vw,48px);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--grafito);color:var(--hueso);font-family:var(--disp);font-size:16.5px;line-height:1.65}
a{color:var(--naranja)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--naranja);outline-offset:3px}
.top{border-bottom:1px solid var(--linea);position:sticky;top:0;background:rgba(18,22,24,.92);backdrop-filter:blur(10px);z-index:5}
.top-in{max-width:900px;margin:0 auto;padding:16px var(--gut);display:flex;justify-content:space-between;align-items:center;gap:16px}
.logo{font-weight:900;letter-spacing:-.02em;font-size:20px;color:var(--hueso);text-decoration:none}
.top nav{display:flex;gap:20px;font-size:14.5px}
.top nav a{color:var(--humo-2);text-decoration:none}
.top nav a:hover{color:var(--hueso)}
main{max-width:900px;margin:0 auto;padding:56px var(--gut) 96px}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--naranja);margin:0 0 14px}
h1{font-size:clamp(2rem,5vw,3rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 14px}
h2{font-size:1.32rem;letter-spacing:-.02em;margin:44px 0 12px;padding-top:24px;border-top:1px solid var(--linea)}
h3{font-size:1.05rem;margin:22px 0 8px}
p,li{color:var(--humo-2)}
p{margin:0 0 14px}
ul,ol{padding-left:22px;margin:0 0 16px}
li{margin-bottom:6px}
b,strong{color:var(--hueso)}
.meta{font-family:var(--mono);font-size:12.5px;color:var(--humo);letter-spacing:.04em}
.caja{border:1px solid var(--linea);border-left:3px solid var(--naranja);background:var(--acero);padding:18px 22px;margin:22px 0}
.caja p:last-child{margin:0}
table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:15px}
th,td{border:1px solid var(--linea);padding:10px 12px;text-align:left;vertical-align:top;color:var(--humo-2)}
th{background:var(--acero);color:var(--hueso);font-weight:600}
.indice{columns:2;column-gap:28px;padding-left:20px}
@media (max-width:640px){.indice{columns:1}}
footer{border-top:1px solid var(--linea);color:var(--humo);font-size:13.5px}
footer .in{max-width:900px;margin:0 auto;padding:26px var(--gut);display:flex;flex-wrap:wrap;gap:10px 22px}
footer a{color:var(--humo-2)}

/* Formulario del Libro de Reclamaciones */
.form{display:grid;gap:16px;margin-top:10px}
.form fieldset{border:1px solid var(--linea);background:var(--acero);padding:20px 22px 22px;margin:0;display:grid;gap:14px}
.form legend{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--naranja);padding:0 8px}
.campo{display:grid;gap:6px}
.campo label{font-size:14px;color:var(--hueso);font-weight:600}
.campo small{color:var(--humo);font-size:12.5px}
.fi{width:100%;background:var(--grafito);border:1px solid var(--linea-2);color:var(--hueso);font:inherit;font-size:16px;padding:12px 14px;border-radius:0}
textarea.fi{min-height:130px;resize:vertical}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){.dos{grid-template-columns:1fr}}
.tipos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:640px){.tipos{grid-template-columns:1fr}}
.tipo{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--linea-2);padding:12px 14px;cursor:pointer;font-size:14px;color:var(--humo-2)}
.tipo b{display:block;font-size:15.5px}
.tipo input{accent-color:#F26B1D;margin-top:5px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--humo-2);cursor:pointer}
.check input{width:18px;height:18px;margin-top:3px;accent-color:#F26B1D;flex:none}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--naranja);color:#111;border:0;font:inherit;font-weight:700;font-size:16px;padding:15px 26px;cursor:pointer}
.btn:disabled{opacity:.6;cursor:default}
.msg{min-height:1.2em;font-size:14.5px;margin:0}
.msg.err{color:var(--naranja-alto)}
.ok-box{border:1px solid #3FB37F;background:#14231C;padding:22px 24px}
.ok-box h2{border:0;padding:0;margin:0 0 10px}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
