@font-face{font-family:Figtree;font-weight:800;font-display:swap;src:url(fuentes/Figtree-ExtraBold.ttf)}
@font-face{font-family:Figtree;font-weight:500;font-display:swap;src:url(fuentes/Figtree-Medium.ttf)}
@font-face{font-family:Plex;font-weight:400;font-display:swap;src:url(fuentes/IBMPlexMono-Regular.ttf)}
@font-face{font-family:Plex;font-weight:600;font-display:swap;src:url(fuentes/IBMPlexMono-SemiBold.ttf)}

:root{--tinta:#1f2430;--papel:#e7e7e3;--blanco:#fbfbf9;--gris:#c8ccd3;--grisosc:#6b717c;--rojo:#e5484d;--rojoosc:#c9363b}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:Figtree,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--tinta);background:var(--papel);
 background-image:linear-gradient(rgba(31,36,48,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(31,36,48,.06) 1px,transparent 1px);
 background-size:28px 28px;font-size:17px;line-height:1.5}
a{color:inherit}
img{max-width:100%;display:block}
.envoltorio{max-width:1040px;margin:0 auto;padding:0 20px}
.mono{font-family:Plex,ui-monospace,monospace}

/* cabecera */
.cabecera{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0}
.logo{background:var(--tinta);color:var(--blanco);padding:12px 16px 11px;line-height:1;text-decoration:none;display:inline-block}
.logo b{display:block;font-size:20px;font-weight:800;letter-spacing:.02em}
.logo i{display:block;font-style:normal;font-size:20px;font-weight:800;color:var(--rojo)}
nav{display:flex;gap:18px;flex-wrap:wrap;font-family:Plex,monospace;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
nav a{text-decoration:none;color:var(--grisosc)}
nav a:hover{color:var(--tinta)}

/* portada */
.portada{padding:40px 0 30px}
.portada h1{font-size:clamp(38px,7vw,68px);font-weight:800;line-height:1.02;letter-spacing:-.015em;max-width:15ch}
.portada h1 em{font-style:normal;color:var(--rojo)}
.portada p{font-size:clamp(18px,2.2vw,21px);max-width:38em;margin-top:18px}
.botones{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.boton{display:inline-block;padding:12px 18px;border:2px solid var(--tinta);background:var(--blanco);box-shadow:3px 3px 0 var(--tinta);
 text-decoration:none;font-weight:800;transition:transform .08s,box-shadow .08s}
.boton:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--tinta)}
.boton.rojo{background:var(--rojo);color:var(--blanco)}

/* cifras */
.cifras{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 10px}
.cifra{background:var(--blanco);border:2px solid var(--tinta);box-shadow:3px 3px 0 var(--tinta);padding:16px 16px 14px}
.cifra b{display:block;font-size:clamp(26px,3.6vw,36px);font-weight:800;line-height:1}
.cifra span{display:block;font-family:Plex,monospace;font-size:12px;color:var(--grisosc);margin-top:8px;text-transform:uppercase;letter-spacing:.05em}
.nota{font-family:Plex,monospace;font-size:12px;color:var(--grisosc)}

/* secciones */
section{padding:44px 0 6px}
h2{font-family:Plex,monospace;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--grisosc);
 padding-bottom:8px;border-bottom:1px solid var(--gris);margin-bottom:20px}
h3{font-size:24px;font-weight:800;line-height:1.15;margin-bottom:10px}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.tarjeta{background:var(--blanco);border:2px solid var(--tinta);box-shadow:3px 3px 0 var(--tinta);padding:22px}
.tarjeta p+p{margin-top:10px}
ul.marcas{list-style:none;margin-top:12px}
ul.marcas li{position:relative;padding-left:24px;margin-bottom:8px}
ul.marcas li::before{content:"✓";position:absolute;left:0;color:var(--rojo);font-weight:800}

/* vídeos */
.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.video{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}
.video img{width:96px;aspect-ratio:9/16;object-fit:cover;border:2px solid var(--tinta);box-shadow:3px 3px 0 var(--tinta);background:var(--blanco)}
.video b{display:block;font-size:22px;font-weight:800;line-height:1}
.video small{display:block;font-family:Plex,monospace;font-size:12px;color:var(--grisosc);margin:6px 0 8px;text-transform:uppercase;letter-spacing:.05em}
.video p{font-size:15px;line-height:1.4}

/* guía */
.precio{font-family:Plex,monospace;font-weight:600;color:var(--rojo);font-size:15px;margin-bottom:6px}

/* contacto */
.contacto{background:var(--tinta);color:var(--blanco);padding:30px;margin-top:10px}
.contacto h3{color:var(--blanco)}
.contacto a.correo{font-size:clamp(22px,4vw,34px);font-weight:800;color:var(--blanco);text-decoration-color:var(--rojo);text-underline-offset:6px;word-break:break-word}
.contacto p{margin-top:10px;color:var(--gris)}
.redes{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px;font-family:Plex,monospace;font-size:14px}
.redes a{color:var(--blanco)}

/* inglés */
.ingles{font-size:15px;color:var(--grisosc)}
.ingles p+p{margin-top:8px}

/* pie */
footer{margin-top:50px;border-top:2px solid var(--tinta);padding:18px 0 34px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
 font-family:Plex,monospace;font-size:13px;color:var(--grisosc)}
footer a{color:var(--grisosc)}
footer nav{font-size:13px;text-transform:none;letter-spacing:0}

/* páginas legales */
.legal{max-width:760px;padding:30px 0 10px}
.legal h1{font-size:clamp(30px,5vw,44px);font-weight:800;line-height:1.08;margin-bottom:8px}
.legal .fecha{font-family:Plex,monospace;font-size:13px;color:var(--grisosc);margin-bottom:26px}
.legal h2{margin-top:34px}
.legal p,.legal li{margin-bottom:10px}
.legal ul{padding-left:22px}
.legal hr{border:0;border-top:2px solid var(--tinta);margin:44px 0 10px}

@media (max-width:820px){
 .cifras{grid-template-columns:1fr 1fr}
 .dos{grid-template-columns:1fr;gap:22px}
 .videos{grid-template-columns:1fr}
}
@media (max-width:480px){
 body{font-size:16px}
 .cabecera{flex-direction:column;align-items:flex-start}
 .contacto{padding:22px}
}
