/*
Theme Name: Productividad con Paul
Theme URI: https://productividadconpaul.com
Author: Paul
Description: Tema propio del blog del canal Productividad con Paul. Rápido, sin dependencias, un solo CSS. Motivo de la casa: la tecla roja.
Version: 1.0.0
Requires PHP: 7.4
License: Proprietary
Text Domain: productividadconpaul
*/

:root{
  --papel:#FAF7F1;
  --hoja:#FFFEFB;
  --tinta:#1B1B1F;
  --tinta-suave:#5A5B63;
  --linea:#E7E2D9;
  --tecla:#E23A2E;
  --tecla-oscura:#B02A20;
  --tecla-fondo:#FCEEEC;
  --crema:#F6F2EA;
  --notion-gris:#F1F0EC;
  --notion-borde:#DFDEDC;
  --ui:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  color:var(--tinta);
  font-family:'Newsreader',Georgia,serif;
  font-size:1.175rem;
  line-height:1.68;
  background-color:var(--papel);
  background-image:
    radial-gradient(55% 38% at 50% -6%, rgba(226,58,46,.09), transparent 70%),
    radial-gradient(circle, rgba(27,27,31,.07) 1px, transparent 1.4px);
  background-size:100% 100%, 22px 22px;
  background-attachment:fixed;
}
::selection{background:var(--tecla);color:#fff}
a{color:var(--tecla);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:2px solid var(--tecla);outline-offset:3px;border-radius:2px}
img{max-width:100%;height:auto}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--tinta);color:#fff;padding:.6rem 1rem;z-index:100;font-family:var(--ui)}
.skip-link:focus{left:0}

/* ---------- LA TECLA ---------- */
.keycap{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#F05C50 0%,var(--tecla) 55%);
  color:#fff;
  border:1px solid var(--tecla-oscura);
  border-bottom-width:4px;
  border-radius:9px;
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  box-shadow:0 1px 0 rgba(0,0,0,.08);
  user-select:none;
}
a.keycap, button.keycap{
  cursor:pointer;text-decoration:none;color:#fff;
  transition:transform .06s ease, border-bottom-width .06s ease;
}
a.keycap:hover, button.keycap:hover{filter:brightness(1.05)}
a.keycap:active, button.keycap:active,
.keycap.pulsada{transform:translateY(3px);border-bottom-width:1px}

/* ---------- botones estilo Notion ---------- */
.notion-btn{
  display:inline-flex;align-items:center;gap:.35rem;
  font-family:var(--ui);font-size:.83rem;font-weight:500;color:var(--tinta);
  background:#fff;border:1px solid var(--notion-borde);border-radius:6px;
  padding:.32rem .7rem;box-shadow:0 1px 2px rgba(15,15,15,.05);
  cursor:pointer;white-space:nowrap;
}
.notion-btn:hover{background:#F5F4F1}
.notion-btn.azul{background:#2383E2;border-color:#2383E2;color:#fff}
.notion-btn.azul:hover{background:#1B74CB}

/* ---------- header ---------- */
.site-header{
  position:sticky;top:0;z-index:20;
  background:rgba(250,247,241,.82);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--linea);
  padding:.9rem 1.5rem;
  display:flex;justify-content:space-between;align-items:center;
  font-family:'Bricolage Grotesque',sans-serif;
}
.logo{
  display:flex;align-items:center;gap:.65rem;
  font-weight:800;font-size:1.12rem;letter-spacing:-0.02em;
  color:var(--tinta);text-decoration:none;
}
.logo .keycap{width:34px;height:34px;font-size:1.05rem}
.logo .tld{color:var(--tinta-suave);font-weight:400}
.site-nav{display:flex;align-items:center}
.site-nav a{
  font-size:.9rem;font-weight:600;color:var(--tinta);text-decoration:none;margin-left:1.4rem;
}
.site-nav a:hover:not(.keycap){color:var(--tecla)}
.site-nav .keycap{padding:.42rem .95rem;font-size:.85rem;letter-spacing:.01em}

/* ---------- artículo (el contenido trae este markup) ---------- */
.articulo{max-width:44rem;margin:0 auto;padding:3.5rem 1.5rem 2rem}
.miga{
  font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tinta-suave);margin-bottom:1.4rem;
}
.miga a{color:var(--tinta-suave)}
.articulo h1{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  font-size:clamp(2rem,5.5vw,3rem);line-height:1.08;letter-spacing:-0.025em;
  margin-bottom:1.1rem;
}
.articulo h1 .acento{color:var(--tecla)}
.autor-chip{
  display:flex;align-items:center;gap:.75rem;margin:1.6rem 0 2.4rem;
  padding-bottom:1.6rem;border-bottom:1px solid var(--linea);
}
.autor-chip .keycap{width:44px;height:44px;font-size:1.15rem;border-radius:11px}
.autor-chip .meta{font-family:'Bricolage Grotesque',sans-serif;font-size:.88rem;line-height:1.35}
.autor-chip .meta strong{font-weight:600}
.autor-chip .meta span{color:var(--tinta-suave)}
.articulo h2{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  font-size:1.6rem;letter-spacing:-0.02em;line-height:1.15;
  margin:3rem 0 1rem;
}
.articulo h3{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:600;
  font-size:1.15rem;margin:2rem 0 .7rem;
}
.articulo p{margin-bottom:1.2rem}
.articulo ul,.articulo ol{margin:0 0 1.2rem 1.4rem}
kbd{
  font-family:'IBM Plex Mono',monospace;font-size:.85em;
  background:#fff;border:1px solid var(--linea);border-bottom-width:2px;
  border-radius:5px;padding:.08em .45em;white-space:nowrap;
}

.en-corto{background:var(--crema);border-radius:10px;padding:1.4rem 1.6rem;margin:0 0 2.2rem}
.en-corto .etiqueta,
.sigue .etiqueta{
  font-family:'IBM Plex Mono',monospace;font-size:.75rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--tinta-suave);display:block;margin-bottom:.6rem;
}
.en-corto p{font-size:1.05rem;margin-bottom:0}

/* bloque de vídeo */
.video-bloque{margin:0 0 2.6rem}
.video-marco{
  position:relative;display:block;border-radius:12px;overflow:hidden;
  border:1px solid var(--linea);box-shadow:0 12px 30px -18px rgba(27,27,31,.35);
}
.video-marco img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}
.video-marco .play{
  position:absolute;inset:0;margin:auto;width:76px;height:58px;
  font-size:1.5rem;border-radius:14px;border-bottom-width:5px;
}
.video-marco:hover .play{filter:brightness(1.07)}
.video-embebido{aspect-ratio:16/9;background:#000}
.video-embebido iframe{width:100%;height:100%;display:block;border:0}
.video-pie{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  margin-top:.8rem;flex-wrap:wrap;
}
.video-pie .nota{font-family:'Bricolage Grotesque',sans-serif;font-size:.88rem;color:var(--tinta-suave)}
.video-pie .keycap{padding:.5rem 1.05rem;font-size:.88rem}

/* pasos con tecla numerada */
.paso{display:flex;gap:1.1rem;margin:1.8rem 0}
.paso .keycap{
  flex-shrink:0;width:46px;height:46px;font-size:1.25rem;border-radius:11px;margin-top:.2rem;
  transition:transform .12s ease, border-bottom-width .12s ease;
}
.paso h3{margin:.15rem 0 .45rem}
.paso p{margin-bottom:0;font-size:1.08rem}

/* mini-maqueta de la interfaz de Notion */
.mock-notion{
  border:1px solid var(--notion-borde);border-radius:10px;background:#fff;
  margin:1rem 0 .4rem;overflow:hidden;
  box-shadow:0 8px 20px -14px rgba(27,27,31,.25);
}
.mock-notion .barra{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  padding:.55rem .8rem;font-family:var(--ui);font-size:.8rem;color:var(--tinta-suave);
}
.mock-notion .cuerpo{
  border-top:1px solid #EFEDE8;padding:.9rem .9rem 1rem;
  font-family:var(--ui);font-size:.8rem;color:#B9B7B1;
}
.mock-notion .fake-linea{height:8px;border-radius:4px;background:#F1EFEA;margin-bottom:.55rem}
.mock-notion .fake-linea.corta{width:55%}
.mock-notion .dup-wrap{position:relative}
.mock-notion .dup-wrap .flecha{
  position:absolute;top:calc(100% + .2rem);right:8px;
  font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:.78rem;color:var(--tecla);
  white-space:nowrap;
}
.mock-notion .notion-btn.senalado{outline:2px solid var(--tecla);outline-offset:2px}
.pie-figura{
  font-family:'Bricolage Grotesque',sans-serif;font-size:.85rem;color:var(--tinta-suave);
  margin-bottom:1.4rem;
}

/* callout estilo Notion */
.notion-callout{
  display:flex;gap:.9rem;background:var(--notion-gris);
  border-radius:8px;padding:1.1rem 1.2rem;margin:1.8rem 0;
}
.notion-callout .emoji{font-size:1.3rem;line-height:1.4}
.notion-callout p{font-size:1.02rem;margin-bottom:0}
.notion-callout.rojo{background:var(--tecla-fondo)}
.notion-callout.rojo strong{color:var(--tecla)}

/* tabla */
.tabla-wrap{overflow-x:auto;margin:1.6rem 0 2.2rem}
.articulo table{border-collapse:collapse;width:100%;font-size:1rem}
.articulo th{
  font-family:'IBM Plex Mono',monospace;font-size:.75rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tinta-suave);text-align:left;
  padding:.6rem .8rem;border-bottom:2px solid var(--tinta);
}
.articulo td{padding:.7rem .8rem;border-bottom:1px solid var(--linea);vertical-align:top}
.articulo td:first-child{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:.95rem}
.tag{
  font-family:'IBM Plex Mono',monospace;font-size:.78rem;background:var(--tecla-fondo);
  color:var(--tecla);padding:.15rem .5rem;border-radius:4px;white-space:nowrap;
}
.tag.gris{background:var(--crema);color:var(--tinta-suave)}

/* newsletter — la tecla Enter */
.newsletter{
  position:relative;overflow:hidden;
  background:var(--tinta);color:var(--papel);border-radius:14px;
  padding:2.2rem 2rem;margin:3rem 0 2rem;
  display:grid;grid-template-columns:1fr auto;gap:1.6rem;align-items:center;
}
.newsletter::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(45% 60% at 85% 20%, rgba(226,58,46,.22), transparent 70%),
    radial-gradient(circle, rgba(255,255,255,.05) 1px, transparent 1.4px);
  background-size:100% 100%, 22px 22px;
}
.newsletter>*{position:relative}
.newsletter .etiqueta{
  font-family:'IBM Plex Mono',monospace;font-size:.75rem;letter-spacing:.08em;
  text-transform:uppercase;color:#A9AAB3;display:block;margin-bottom:.7rem;
}
.newsletter h2,.newsletter .titulo{margin:0 0 .6rem;font-size:1.55rem;color:#fff;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;letter-spacing:-0.02em;line-height:1.2}
.newsletter p{font-family:'Bricolage Grotesque',sans-serif;font-size:.98rem;color:#C9CAD1;margin-bottom:1.2rem}
.newsletter form{display:flex;gap:.7rem;flex-wrap:wrap}
.newsletter input[type=email]{
  flex:1;min-width:220px;
  font-family:'Bricolage Grotesque',sans-serif;font-size:.95rem;
  background:#26262B;border:1px solid #3A3A41;border-radius:9px;
  color:#fff;padding:.8rem 1rem;
}
.newsletter input::placeholder{color:#8B8C95}
.newsletter input:focus-visible{outline:2px solid var(--tecla);outline-offset:2px}
.newsletter .keycap{padding:.8rem 1.4rem;font-size:.95rem;gap:.5rem}
.newsletter .enter-simbolo{font-weight:400;font-size:1.05rem}
.newsletter .tecla-decorativa{
  width:120px;height:120px;font-size:2.6rem;border-radius:22px;border-bottom-width:8px;
  transform:rotate(6deg);
}
.newsletter .mini{font-size:.78rem;color:#8B8C95;margin:.9rem 0 0;font-family:'Bricolage Grotesque',sans-serif;line-height:1.5}
.newsletter .gracias{font-size:1rem;color:#fff}
.newsletter .consentimiento{
  display:flex;align-items:flex-start;gap:.5rem;width:100%;flex-basis:100%;
  font-family:'Bricolage Grotesque',sans-serif;font-size:.82rem;color:#C9CAD1;
  margin-top:.4rem;cursor:pointer;line-height:1.45;
}
.newsletter .consentimiento input{margin-top:.3rem;accent-color:var(--tecla);cursor:pointer}
.newsletter .consentimiento a{color:#fff}

/* sigue leyendo */
.sigue{border:1px solid var(--linea);border-radius:10px;padding:1.4rem 1.6rem;margin:2.6rem 0 2rem}
.sigue ul{list-style:none;margin:0}
.sigue li{margin-bottom:.55rem;font-family:'Bricolage Grotesque',sans-serif;font-size:.98rem}
.sigue li::before{content:"→ ";color:var(--tecla)}

/* caja de autor */
.caja-autor{
  display:flex;gap:1.2rem;background:var(--crema);border-radius:10px;
  padding:1.5rem 1.6rem;margin:2.5rem 0;align-items:flex-start;
}
.caja-autor .keycap{flex-shrink:0;width:64px;height:64px;font-size:1.5rem;border-radius:14px}
.caja-autor p{font-size:1rem;margin-bottom:.4rem}
.caja-autor .nombre{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:1.05rem}

/* ---------- home + archivos: galería ---------- */
.pcp-wrap{max-width:66rem;margin:0 auto;padding:0 1.5rem}
.pcp-hero{padding:4.2rem 0 2.6rem;text-align:center}
.pcp-hero h1{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05;letter-spacing:-0.03em;
  max-width:22ch;margin:0 auto 1.1rem;
}
.pcp-hero h1 .acento{color:var(--tecla)}
.pcp-hero .sub{
  font-family:'Bricolage Grotesque',sans-serif;font-size:1.08rem;color:var(--tinta-suave);
  max-width:52ch;margin:0 auto 1.8rem;line-height:1.55;
}
.pcp-hero .ctas{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;align-items:center}
.pcp-hero .ctas .keycap{padding:.7rem 1.3rem;font-size:.95rem}
.pcp-hero .ctas .secundario{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:.95rem;
}
.pcp-sec{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:1.5rem;
  letter-spacing:-0.02em;margin:2.6rem 0 .4rem;
}
.pcp-sec-sub{font-family:'Bricolage Grotesque',sans-serif;color:var(--tinta-suave);font-size:.95rem;margin-bottom:1.4rem}
.pcp-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:1.4rem;margin:0 0 2.5rem;
}
.pcp-card{
  display:block;background:var(--hoja);border:1px solid var(--linea);border-radius:12px;
  overflow:hidden;text-decoration:none;color:var(--tinta);
  box-shadow:0 10px 24px -18px rgba(27,27,31,.25);
  transition:transform .12s ease, box-shadow .12s ease;
}
.pcp-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px -18px rgba(27,27,31,.35)}
.pcp-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.pcp-card .cuerpo{padding:1.1rem 1.2rem 1.25rem}
.pcp-card h3{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:1.08rem;
  letter-spacing:-0.015em;line-height:1.25;margin-bottom:.45rem;
}
.pcp-card p{font-family:'Bricolage Grotesque',sans-serif;font-size:.88rem;color:var(--tinta-suave);line-height:1.5;margin:0}
.pcp-card .mini{
  font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--tecla);display:block;margin-bottom:.5rem;
}
.pcp-archivo{padding:2.6rem 0 1rem}
.pcp-archivo .cab h1{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  font-size:clamp(1.7rem,4.5vw,2.4rem);letter-spacing:-0.025em;margin:.4rem 0 .6rem;
}
.pcp-archivo .cab p{font-family:'Bricolage Grotesque',sans-serif;color:var(--tinta-suave);font-size:.98rem;margin-bottom:1.8rem}
.crumbs{
  font-family:'IBM Plex Mono',monospace;font-size:.75rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tinta-suave);
}
.crumbs a{color:var(--tinta-suave)}
.navigation.pagination{font-family:'Bricolage Grotesque',sans-serif;margin:0 0 2.5rem}
.navigation.pagination .nav-links{display:flex;gap:.5rem;flex-wrap:wrap}
.navigation.pagination .page-numbers{
  padding:.4rem .8rem;border:1px solid var(--linea);border-radius:8px;text-decoration:none;
  color:var(--tinta);font-weight:600;font-size:.9rem;background:var(--hoja);
}
.navigation.pagination .page-numbers.current{background:var(--tecla);border-color:var(--tecla-oscura);color:#fff}

/* búsqueda */
.pcp-search input[type=search]{
  width:100%;max-width:26rem;font-family:'Bricolage Grotesque',sans-serif;font-size:.95rem;
  background:#fff;border:1px solid var(--linea);border-radius:9px;padding:.7rem 1rem;
}
.pcp-search button{margin-left:.5rem;padding:.7rem 1.2rem;font-size:.9rem}

/* ---------- landing (a lo ancho, estilo de la casa) ---------- */
.ld{font-family:'Bricolage Grotesque',sans-serif}
.ld .ld-wrap{max-width:66rem;margin:0 auto;padding:0 1.5rem}
.ld-hero{padding:4.5rem 0 3rem;text-align:center}
.ld-hero .miga{margin-bottom:1.2rem}
.ld-hero h1{
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05;letter-spacing:-0.03em;
  max-width:24ch;margin:0 auto 1.1rem;
}
.ld-hero h1 .acento{color:var(--tecla)}
.ld-hero .sub{font-size:1.1rem;color:var(--tinta-suave);max-width:56ch;margin:0 auto 1.8rem;line-height:1.55}
.ld-hero .ctas{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap}
.ld-hero .ctas .keycap{padding:.85rem 1.5rem;font-size:1rem}
.ld-hero .ctas .secundario{font-weight:600;font-size:.95rem}
.ld-badge{
  display:flex;gap:1.6rem;justify-content:center;flex-wrap:wrap;
  margin-top:2.2rem;font-size:.88rem;color:var(--tinta-suave);font-weight:600;
}
.ld-badge span::before{content:"✓ ";color:var(--tecla);font-weight:800}
.ld-sec{padding:3.2rem 0}
.ld-sec.alt{background:var(--crema);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.ld-sec h2{
  font-weight:800;font-size:clamp(1.5rem,3.5vw,2rem);letter-spacing:-0.02em;line-height:1.15;
  text-align:center;max-width:30ch;margin:0 auto .5rem;
}
.ld-sec .sec-sub{text-align:center;color:var(--tinta-suave);font-size:.98rem;max-width:52ch;margin:0 auto 2.2rem;line-height:1.55}
.ld-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem}
.ld-card{
  background:var(--hoja);border:1px solid var(--linea);border-radius:12px;
  padding:1.5rem 1.4rem;box-shadow:0 10px 24px -18px rgba(27,27,31,.2);
}
.ld-sec.alt .ld-card{background:#fff}
.ld-card .keycap{width:42px;height:42px;font-size:1.15rem;border-radius:10px;margin-bottom:.9rem}
.ld-card h3{font-weight:800;font-size:1.05rem;letter-spacing:-0.015em;margin-bottom:.45rem}
.ld-card p{font-size:.92rem;color:var(--tinta-suave);line-height:1.55;margin:0}
.ld-pasos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;counter-reset:ldpaso}
.ld-dolor{max-width:44rem;margin:0 auto;font-family:'Newsreader',Georgia,serif;font-size:1.15rem;line-height:1.68}
.ld-dolor p{margin-bottom:1.1rem}
.ld-faq{max-width:44rem;margin:0 auto}
.ld-faq details{
  background:var(--hoja);border:1px solid var(--linea);border-radius:10px;
  padding:1rem 1.2rem;margin-bottom:.7rem;
}
.ld-faq summary{font-weight:600;font-size:.98rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.ld-faq summary::-webkit-details-marker{display:none}
.ld-faq summary::after{content:"+";color:var(--tecla);font-weight:800;font-size:1.2rem;flex-shrink:0}
.ld-faq details[open] summary::after{content:"–"}
.ld-faq details p{margin:.7rem 0 0;font-size:.93rem;color:var(--tinta-suave);line-height:1.6}
.ld-cierre{
  position:relative;overflow:hidden;background:var(--tinta);color:var(--papel);
  border-radius:14px;padding:2.6rem 2rem;text-align:center;margin:3rem auto;
}
.ld-cierre::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(50% 70% at 50% 0%, rgba(226,58,46,.25), transparent 70%),
    radial-gradient(circle, rgba(255,255,255,.05) 1px, transparent 1.4px);
  background-size:100% 100%, 22px 22px;
}
.ld-cierre>*{position:relative}
.ld-cierre h2{color:#fff;font-weight:800;font-size:clamp(1.5rem,4vw,2.1rem);letter-spacing:-0.02em;margin-bottom:.7rem}
.ld-cierre p{color:#C9CAD1;font-size:1rem;max-width:50ch;margin:0 auto 1.5rem;line-height:1.55}
.ld-cierre .keycap{padding:.9rem 1.6rem;font-size:1rem}
.ld-cierre .mini{font-size:.8rem;color:#8B8C95;margin-top:1rem}

/* footer */
.site-footer{
  border-top:1px solid var(--linea);margin-top:3rem;padding:2.5rem 1.5rem 3rem;
  font-family:'Bricolage Grotesque',sans-serif;font-size:.9rem;color:var(--tinta-suave);
}
.site-footer .inner{max-width:44rem;margin:0 auto}
.site-footer p{margin-bottom:1rem;line-height:1.6}
.site-footer nav a{color:var(--tinta-suave);margin-right:1.2rem}

/* aparición suave */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease, transform .5s ease}
.reveal.visible{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

@media (max-width:640px){
  .site-nav a:not(.keycap){display:none}
  body{font-size:1.08rem}
  .newsletter{grid-template-columns:1fr}
  .newsletter .tecla-decorativa{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  a.keycap, button.keycap, .paso .keycap, .pcp-card{transition:none}
  .reveal{opacity:1;transform:none;transition:none}
}
