/* CocheScout — hoja única de la web pública. Sin fuentes ni recursos externos.
   Tema OSCURO PREMIUM: dorado sobre azul casi negro, a juego con el logo VIP
   (lupa dorada con un coche). Todo el CSS vive aquí; el HTML no lleva estilos. */

:root{
  /* fondos */
  --fondo:#0e1430;          /* base muy oscura azulada */
  --fondo-2:#0f162e;
  --superficie:#161d3a;     /* tarjetas y paneles */
  --superficie-2:#1b2344;   /* realce sutil (filas, hover) */
  --superficie-3:#212a52;

  /* líneas doradas translúcidas */
  --linea:rgba(224,182,74,.16);
  --linea-suave:rgba(224,182,74,.10);
  --linea-fria:rgba(154,163,192,.16);

  /* texto */
  --marfil:#eef1f8;         /* texto principal (≈16:1 sobre el fondo) */
  --marfil-apagado:#cdd3e6; /* variante ligeramente atenuada, aún AA */
  --suave:#9aa3c0;          /* secundario (≈7.2:1 sobre el fondo) */

  /* acento dorado */
  --oro:#e0b64a;
  --oro-2:#d79c2c;
  --oro-claro:#f0cf7a;      /* enlaces y texto pequeño dorado (≈12:1) */
  --oro-tenue:rgba(224,182,74,.12);
  --tinta-oro:#1a1205;      /* texto oscuro sobre el dorado */

  /* señales */
  --verde:#39b57e;
  --rojo:#ff6b6b;
  --rojo-fondo:rgba(255,107,107,.10);

  --foco:#8ab4ff;

  --ancho:820px;
  --radio:15px;
  --radio-s:10px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;
  background:var(--fondo);
  background-image:radial-gradient(1100px 520px at 50% -10%, rgba(224,182,74,.07), rgba(224,182,74,0) 62%);
  background-repeat:no-repeat;
  background-attachment:fixed;
  color:var(--marfil);
  font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.envoltorio{max-width:var(--ancho);margin:0 auto;padding:0 22px}
.envoltorio.ancho{max-width:940px}

/* --- saltar al contenido (teclado) --- */
.saltar{
  position:absolute;left:-9999px;top:0;background:var(--oro);color:var(--tinta-oro);
  padding:10px 16px;border-radius:0 0 10px 0;z-index:10;text-decoration:none;font-weight:700;
}
.saltar:focus{left:0}

/* --- navegación + filete dorado --- */
.navegacion{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px;
  padding:20px 0 14px;margin-bottom:2px;font-size:15px;
  border-bottom:1px solid var(--linea);
}
.navegacion .marca{margin:0;flex:0 0 auto}
.navegacion a{color:var(--suave);text-decoration:none;transition:color .15s ease}
.navegacion a:hover,.navegacion a:focus{color:var(--marfil);text-decoration:underline}
.navegacion a[aria-current="page"]{color:var(--oro-claro);font-weight:600}

header{padding:44px 0 8px}
.marca{
  font-size:13px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--oro);font-weight:700;margin:0 0 14px;
}
.marca a{color:inherit;text-decoration:none}

/* --- hero de la portada --- */
.hero{
  padding:52px 0 12px;
  position:relative;
}
.hero .logo-marca{
  display:block;width:76px;height:76px;margin:0 0 26px;
  filter:drop-shadow(0 6px 18px rgba(224,182,74,.20));
}
@media (min-width:720px){
  .hero{padding:66px 0 16px}
  .hero .logo-marca{width:88px;height:88px}
}
.logo-marca .lente{fill:none;stroke:var(--oro);stroke-width:4}
.logo-marca .mango{stroke:var(--oro);stroke-width:6;stroke-linecap:round}
.logo-marca .coche-cuerpo{fill:var(--oro)}
.logo-marca .rueda{fill:var(--fondo);stroke:var(--oro);stroke-width:1.6}

/* --- tipografía --- */
h1{
  font-size:34px;line-height:1.14;margin:0 0 18px;letter-spacing:-.025em;
  color:#fbfcff;font-weight:800;
}
.hero h1{font-size:40px}
@media (min-width:720px){
  h1{font-size:40px}
  .hero h1{font-size:50px}
}
.entradilla{font-size:20px;line-height:1.55;color:var(--marfil-apagado);margin:0 0 8px;max-width:60ch}
h2{font-size:23px;margin:48px 0 15px;letter-spacing:-.015em;color:var(--marfil);font-weight:700}
h3{font-size:16px;margin:28px 0 8px;color:var(--marfil);font-weight:700}
p{margin:0 0 15px}
ul,ol{margin:0 0 15px;padding-left:22px}
li{margin-bottom:9px}
li::marker{color:var(--oro-2)}
a{color:var(--oro-claro);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--oro)}
strong{font-weight:700;color:var(--marfil)}
.fecha{font-size:14px;color:var(--suave);margin:0 0 18px}
.fecha a{color:var(--oro-claro)}

:focus-visible{outline:3px solid var(--foco);outline-offset:2px;border-radius:6px}

/* --- cajas y avisos --- */
.caja{
  background:var(--superficie);
  border:1px solid var(--linea);
  border-radius:var(--radio);
  padding:28px;margin:32px 0;
  box-shadow:0 12px 34px rgba(0,0,0,.28);
}
.aviso{
  border-left:3px solid var(--oro);
  background:var(--oro-tenue);
  padding:12px 16px;border-radius:0 var(--radio-s) var(--radio-s) 0;
  color:var(--marfil-apagado);font-size:15px;margin:0 0 16px;
}
.aviso strong{color:var(--marfil)}
.nota{font-size:14px;color:var(--suave);margin-top:12px}
.nota a{color:var(--oro-claro)}

/* --- las tres puertas de la portada --- */
.puertas{list-style:none;padding:0;margin:34px 0;display:grid;gap:18px}
@media (min-width:720px){.puertas{grid-template-columns:repeat(3,1fr)}}
.puertas li{margin:0}
.puerta{
  display:flex;flex-direction:column;height:100%;
  background:var(--superficie);
  border:1px solid var(--linea);
  border-radius:var(--radio);
  padding:24px;
  text-decoration:none;color:inherit;
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.puerta:hover,.puerta:focus{
  border-color:var(--oro);
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(0,0,0,.34);
}
.puerta h2{margin:0 0 8px;font-size:19px;color:var(--marfil)}
.puerta p{margin:0;color:var(--suave);font-size:15px;line-height:1.6}
.puerta .etiqueta{
  display:inline-block;margin-bottom:12px;font-size:11.5px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--oro);
}
/* la puerta VIP, destacada */
.puerta.destacada{
  border-color:rgba(224,182,74,.42);
  background:linear-gradient(165deg, rgba(224,182,74,.10), var(--superficie) 55%);
}
.puerta.destacada .etiqueta{
  color:var(--tinta-oro);background:linear-gradient(180deg,var(--oro),var(--oro-2));
  padding:3px 9px;border-radius:999px;
}
.puerta.destacada:hover,.puerta.destacada:focus{border-color:var(--oro)}

/* --- botones --- */
.boton{
  display:inline-block;
  background:linear-gradient(180deg,var(--oro),var(--oro-2));
  color:var(--tinta-oro);text-decoration:none;
  border:0;padding:14px 30px;border-radius:var(--radio-s);font-weight:700;margin-top:14px;
  font-size:16px;font-family:inherit;cursor:pointer;
  box-shadow:0 8px 22px rgba(224,182,74,.20);
  transition:filter .15s ease, transform .15s ease, box-shadow .15s ease;
}
.boton:hover{filter:brightness(1.08);transform:translateY(-1px);color:var(--tinta-oro)}
.boton:active{transform:translateY(0)}
.boton.secundario{
  background:transparent;color:var(--oro-claro);
  border:1px solid var(--linea);box-shadow:none;
}
.boton.secundario:hover{
  background:var(--oro-tenue);border-color:var(--oro);color:var(--oro);filter:none;
}
.boton[disabled]{opacity:.55;cursor:progress;filter:none;transform:none}

/* --- precio --- */
.precio{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.precio .cifra{font-size:44px;font-weight:800;letter-spacing:-.03em;color:var(--oro);line-height:1}
.precio .periodo{color:var(--suave);font-size:17px}
.precio-pie{margin:0;color:var(--suave)}

/* --- pasos numerados --- */
.pasos{counter-reset:paso;list-style:none;padding:0}
.pasos li{counter-increment:paso;padding-left:44px;position:relative;margin-bottom:16px}
.pasos li::marker{content:none}
.pasos li::before{
  content:counter(paso);position:absolute;left:0;top:0;width:30px;height:30px;
  background:linear-gradient(180deg,var(--oro),var(--oro-2));color:var(--tinta-oro);
  border-radius:50%;display:grid;place-items:center;
  font-size:14px;font-weight:800;
}

/* --- formulario de la calculadora --- */
.formulario{display:grid;gap:22px;margin:0}
fieldset{
  border:1px solid var(--linea);border-radius:var(--radio);
  padding:24px;margin:0;display:grid;gap:20px;
  background:var(--superficie);
  box-shadow:0 10px 30px rgba(0,0,0,.24);
}
legend{
  font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--oro-claro);
  padding:0;margin:0;float:left;width:100%;
  border-bottom:1px solid var(--linea-suave);padding-bottom:12px;margin-bottom:4px;
}
.campo{display:grid;gap:6px}
.campo label{font-weight:600;font-size:15px;color:var(--marfil)}
.campo .ayuda{font-size:13.5px;color:var(--suave);margin:0;line-height:1.5}
.campo input,.campo select{
  width:100%;font:inherit;color:var(--marfil);background:var(--fondo-2);
  border:1px solid var(--linea-fria);border-radius:9px;padding:12px 13px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.campo input::placeholder{color:#6c7492}
.campo input:hover,.campo select:hover{border-color:rgba(224,182,74,.35)}
.campo input:focus,.campo select:focus{
  border-color:var(--oro);outline:none;box-shadow:0 0 0 3px rgba(224,182,74,.18);
}
.campo select{
  appearance:none;-webkit-appearance:none;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%23e0b64a" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9l6 6 6-6"/></svg>');
  background-repeat:no-repeat;background-position:right 13px center;padding-right:38px;
}
.campo.casilla{grid-template-columns:auto 1fr;align-items:start;gap:4px 12px}
.campo.casilla input{width:18px;height:18px;margin:4px 0 0;justify-self:start;accent-color:var(--oro-2)}
.campo.casilla label{grid-column:2}
.campo.casilla .ayuda{grid-column:2}
.pareja{display:grid;gap:20px}
@media (min-width:560px){.pareja{grid-template-columns:1fr 1fr}}

/* --- resultado --- */
.resultado{margin:36px 0 0}
.resultado[hidden]{display:none}
.tabla-envoltorio{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--linea);border-radius:var(--radio);
  background:var(--superficie);
}
table{border-collapse:collapse;width:100%;font-size:15px;min-width:420px}
caption{text-align:left;font-size:13.5px;color:var(--suave);padding:16px 16px 10px;caption-side:top}
th,td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--linea-fria);vertical-align:top}
th{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--oro-claro);font-weight:700}
td{color:var(--marfil-apagado)}
tbody tr:nth-child(even){background:rgba(255,255,255,.022)}
td.importe,th.importe{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--marfil)}
tbody tr:last-child td{border-bottom:0}
.horquilla{display:block;font-size:13px;color:var(--suave);font-weight:400}
.concepto-nota{display:block;font-size:13px;color:var(--suave);margin-top:3px}

.total{
  background:linear-gradient(165deg, rgba(224,182,74,.14), var(--superficie) 60%);
  border:1px solid rgba(224,182,74,.40);
  border-radius:var(--radio);
  padding:30px 26px;margin:26px 0;text-align:center;
  box-shadow:0 14px 40px rgba(0,0,0,.30);
}
.total .rotulo{font-size:12.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--oro-claro);margin:0 0 10px;font-weight:700}
.total .cifra{font-size:56px;font-weight:800;letter-spacing:-.03em;display:block;line-height:1.02;color:var(--oro)}
.total .banda{color:var(--marfil-apagado);font-size:16px;margin:12px 0 0}

.contador{font-size:14px;color:var(--suave);margin:16px 0 0}
.error-formulario{
  border-left:3px solid var(--rojo);background:var(--rojo-fondo);
  padding:12px 16px;border-radius:0 var(--radio-s) var(--radio-s) 0;
  color:#ffb3b3;font-size:15px;margin:0 0 16px;
}
.error-formulario[hidden]{display:none}
.error-formulario a{color:#ffd0d0}
.cargando{color:var(--suave);font-size:15px}

/* --- remate (bloque de cierre con CTA) --- */
.remate{
  background:linear-gradient(165deg, var(--superficie-2), var(--superficie) 70%);
  border:1px solid var(--linea);border-radius:var(--radio);
  padding:26px;margin:34px 0;
  box-shadow:0 12px 34px rgba(0,0,0,.26);
}
.remate h2{margin-top:0}
.enlaces-remate{display:flex;flex-wrap:wrap;gap:14px}
.enlaces-remate .boton{margin-top:4px}

/* --- índice de guías (tarjetas) --- */
.lista-guias{list-style:none;padding:0;margin:28px 0;display:grid;gap:16px}
.lista-guias li{
  margin:0;background:var(--superficie);
  border:1px solid var(--linea);border-radius:var(--radio);
  padding:22px 24px;
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.lista-guias li:hover{
  border-color:var(--oro);transform:translateY(-2px);
  box-shadow:0 14px 36px rgba(0,0,0,.30);
}
.lista-guias a{font-weight:700;text-decoration:none;font-size:18px;color:var(--marfil)}
.lista-guias a:hover{color:var(--oro-claro)}
.lista-guias p{margin:6px 0 0;color:var(--suave);font-size:15px;line-height:1.6}

/* --- pie de página --- */
footer{
  border-top:1px solid var(--linea);
  margin-top:64px;padding:30px 0 64px;font-size:14px;color:var(--suave);
}
footer strong{color:var(--marfil-apagado)}
footer a{color:var(--suave)}
footer a:hover{color:var(--oro-claro)}
.legal p{margin-bottom:11px;color:var(--marfil-apagado)}
.volver{margin-top:18px}

/* --- entrada VIP con Telegram: botón propio, sin el iframe del widget --- */
.boton-telegram{
  display:inline-flex;align-items:center;gap:10px;background:#2f7bb8;color:#fff;
  border:0;padding:13px 24px;border-radius:var(--radio-s);font:inherit;font-weight:700;
  cursor:pointer;margin-top:4px;
  box-shadow:0 8px 22px rgba(47,123,184,.28);
  transition:background .15s ease, transform .15s ease;
}
.boton-telegram:hover{background:#3a8fd0;transform:translateY(-1px)}
.boton-telegram[disabled]{opacity:.55;cursor:progress;transform:none}
.boton-telegram svg{width:20px;height:20px;flex:0 0 auto;fill:currentColor}

/* --- ajustes móviles --- */
@media (max-width:600px){
  h1{font-size:28px}
  .hero h1{font-size:32px}
  .entradilla{font-size:18px}
  .precio .cifra{font-size:36px}
  .total .cifra{font-size:40px}
  .caja,.remate,fieldset{padding:22px}
}
