/*
Theme Name: Bebé Periodista
Theme URI: https://bebeperiodista.com
Author: Carolina Castilla
Description: Tema a medida de Bebé Periodista. La portada, el blog, los posts y las páginas comparten el mismo diseño: crema, lila y coral. Maternidad sin filtro. Obvio.
Version: 2.4
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bebeperiodista
Tags: blog, one-column, custom-colors, custom-menu, featured-images, translation-ready
*/

/* ============ TIPOGRAFÍAS (locales: la web funciona sin depender de Google) ============ */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 900;font-display:swap;
  src:url("fonts/fraunces-latin-ext.woff2") format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 900;font-display:swap;
  src:url("fonts/fraunces-latin.woff2") format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url("fonts/inter-latin-ext.woff2") format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url("fonts/inter-latin.woff2") format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Sacramento';font-style:normal;font-weight:400;font-display:swap;
  src:url("fonts/sacramento-latin-ext.woff2") format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Sacramento';font-style:normal;font-weight:400;font-display:swap;
  src:url("fonts/sacramento-latin.woff2") format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* ============ PALETA ============ */
:root{
  --crema:#FAF4EC;
  --papel:#FFFDF9;
  --tinta:#2E2A26;
  --suave:#5B534B;
  --tenue:#8B8178;
  --lila:#C4B2E8;
  --lila-fuerte:#8B6BC4;
  --lila-pastel:#EFE7F9;
  --coral:#F2A48F;
  --coral-fuerte:#D9694A;
  --rosa:#F6E3E6;
  --arena:#F8EDD5;
  --linea:#E6DBCB;
  --sombra:rgba(46,42,38,.16);
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mano:'Sacramento',cursive;
  --ancho:min(1120px,92vw);
  --radio:18px;
}

/* ============ BASE ============ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  background:var(--crema);color:var(--tinta);
  font-family:var(--sans);font-size:1rem;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
:focus-visible{outline:3px solid var(--lila-fuerte);outline-offset:3px;border-radius:6px;}
.wrap{width:var(--ancho);margin-inline:auto;}
.solo-lectores,.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.saltar{position:absolute;left:-9999px;top:0;background:var(--tinta);color:var(--crema);padding:12px 18px;z-index:100;border-radius:0 0 10px 0;}
.saltar:focus{left:0;}

/* ============ BOTONES ============ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sans);font-weight:700;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;
  text-decoration:none;padding:15px 28px;border:none;border-radius:999px;cursor:pointer;
  background:var(--lila);color:var(--tinta);
  box-shadow:0 14px 26px -14px rgba(139,107,196,.85);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
  min-height:48px;text-align:center;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 20px 32px -14px rgba(139,107,196,.9);}
.btn:active{transform:translateY(0);}
.btn--coral{background:var(--coral);box-shadow:0 14px 26px -14px rgba(217,105,74,.8);}
.btn--coral:hover{box-shadow:0 20px 32px -14px rgba(217,105,74,.9);}
.btn--linea{background:var(--papel);border:1.5px solid var(--tinta);box-shadow:none;}
.btn--linea:hover{background:var(--arena);box-shadow:none;}
.btn--chico{padding:12px 22px;font-size:.74rem;}

/* ============ BARRA ============ */
.barra{
  position:sticky;top:0;z-index:50;
  background:rgba(250,244,236,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid transparent;transition:border-color .25s ease,box-shadow .25s ease;
}
.barra.pegada{border-bottom-color:var(--linea);box-shadow:0 6px 20px -18px var(--sombra);}
.barra .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;}
.marca{text-decoration:none;line-height:.95;flex:none;}
.marca b{display:block;font-weight:900;font-size:1.05rem;letter-spacing:.01em;}
.barra nav{display:flex;align-items:center;gap:22px;}
.barra nav a.enlace{
  font-weight:700;font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;
  text-decoration:none;padding:6px 0;position:relative;color:var(--suave);white-space:nowrap;
}
.barra nav a.enlace::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--lila-fuerte);transform:scaleX(0);transform-origin:left;transition:transform .22s ease;
}
.barra nav a.enlace:hover{color:var(--tinta);}
.barra nav a.enlace:hover::after,.barra nav a.enlace[aria-current="page"]::after{transform:scaleX(1);}
.barra nav a.enlace[aria-current="page"]{color:var(--tinta);}
/* Si algún día arma el menú desde Apariencia → Menús, se ve exactamente igual */
.barra nav ul.menu-principal{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0;}
.barra nav ul.menu-principal li{margin:0;}
/* El botón de arriba a la derecha cambia según el tamaño de la pantalla:
   en el celular dice "Mis favoritos" (es el único link que queda a la vista),
   en pantalla grande dice "Se vienen cositas" porque el menú ya está ahí. */
.barra .solo-movil{display:none;}
@media (max-width:940px){
  .barra nav a.enlace{display:none;}
  .barra nav ul.menu-principal{display:none;}
  .barra .solo-escritorio{display:none;}
  .barra .solo-movil{display:inline-flex;}
}

/* La barra de administración de WordPress no debe tapar la barra del sitio */
body.admin-bar .barra{top:32px;}
@media (max-width:782px){body.admin-bar .barra{top:46px;}}

/* ============ HERO ============ */
.hero .wrap{
  display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;
  padding:clamp(32px,6vw,68px) 0 clamp(40px,6vw,76px);
}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:36px;}}
.antetitulo{
  display:inline-flex;align-items:center;gap:9px;
  font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--suave);margin-bottom:20px;
}
.antetitulo span{width:26px;height:1.5px;background:var(--coral);display:inline-block;}
.hero h1{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(2.4rem,5.4vw,4rem);line-height:1.04;letter-spacing:-.03em;
  margin-bottom:22px;text-wrap:balance;
}
.subrayado{position:relative;display:inline-block;white-space:nowrap;color:var(--lila-fuerte);}
.subrayado svg{position:absolute;left:0;right:0;bottom:-.14em;width:100%;height:.32em;overflow:visible;}
.entrada{
  font-family:var(--serif);font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.5;
  color:var(--suave);max-width:40ch;margin-bottom:14px;
}
.entrada strong{color:var(--tinta);font-weight:600;}
.entrada--2{font-family:var(--sans);font-size:1rem;max-width:44ch;margin-bottom:30px;}
.fila-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.nota-cta{font-size:.82rem;color:var(--tenue);}

.hero-foto{position:relative;padding:0 0 46px 30px;}
.hero-foto .marco{
  border-radius:22px;overflow:hidden;aspect-ratio:4/5;max-height:480px;
  background:var(--lila-pastel);box-shadow:0 34px 60px -34px rgba(46,42,38,.5);
}
.hero-foto .marco img{width:100%;height:100%;object-fit:cover;}
.hueco{
  width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;text-align:center;padding:22px 22px 38%;color:var(--lila-fuerte);
  border:2px dashed var(--lila-fuerte);border-radius:inherit;
  font-size:.8rem;font-weight:700;letter-spacing:.04em;
}
.hueco em{font-style:normal;font-size:1.7rem;}
.polaroid{
  position:absolute;left:0;bottom:0;width:min(210px,48%);
  background:var(--papel);padding:9px 9px 30px;border-radius:12px;
  box-shadow:0 26px 44px -24px rgba(46,42,38,.5);transform:rotate(-4deg);
}
.polaroid .foto{aspect-ratio:1/1;border-radius:7px;overflow:hidden;background:var(--rosa);}
.polaroid .foto img{width:100%;height:100%;object-fit:cover;}
.polaroid figcaption{
  font-family:var(--mano);font-size:1.35rem;color:var(--lila-fuerte);
  text-align:center;line-height:1;padding-top:8px;
}
@media (max-width:900px){.hero-foto{padding:0 0 40px 0;}.polaroid{width:150px;}}

/* ============ FRANJA COMUNIDAD ============ */
.comunidad{
  width:var(--ancho);margin:0 auto;background:var(--papel);border-radius:var(--radio);
  box-shadow:0 22px 46px -32px var(--sombra);padding:18px clamp(18px,4vw,34px);
  display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;text-align:center;
}
.caritas{display:flex;flex:none;}
.caritas i{
  width:42px;height:42px;border-radius:50%;border:3px solid var(--papel);
  display:block;font-style:normal;font-size:1.15rem;line-height:36px;text-align:center;
}
.caritas i+i{margin-left:-13px;}
.comunidad p{font-family:var(--serif);font-size:1.05rem;margin:0;max-width:44ch;}
.redes-comunidad{display:flex;gap:14px;flex:none;}
.redes-comunidad a{
  display:flex;align-items:center;justify-content:center;width:40px;height:40px;
  border-radius:50%;background:var(--lila-pastel);color:var(--lila-fuerte);
  transition:transform .18s ease,background .18s ease,color .18s ease;
}
.redes-comunidad a:hover{transform:translateY(-2px);background:var(--lila);color:var(--tinta);}
.redes-comunidad svg{width:20px;height:20px;display:block;}

/* ============ TÍTULOS DE SECCIÓN ============ */
.seccion{padding:clamp(48px,7vw,86px) 0;}
.titulo{
  font-family:var(--serif);font-weight:600;
  font-size:clamp(1.7rem,3.6vw,2.5rem);line-height:1.15;letter-spacing:-.01em;
  margin-bottom:10px;text-wrap:balance;
}
.bajada{color:var(--suave);font-size:1.02rem;max-width:54ch;margin-bottom:34px;}
.centrado{text-align:center;}
.centrado .bajada{margin-inline:auto;}

/* ============ SE VIENEN COSITAS (la estrella) ============ */
#cositas{background:var(--lila-pastel);scroll-margin-top:76px;}
.expediente{
  position:relative;background:var(--papel);border-radius:24px;
  box-shadow:0 34px 70px -40px rgba(46,42,38,.55);
  padding:clamp(28px,5vw,54px);max-width:760px;margin-inline:auto;
}
.sello{
  position:absolute;top:26px;right:26px;transform:rotate(9deg);
  border:3px double var(--coral-fuerte);color:var(--coral-fuerte);
  font-weight:900;font-size:.72rem;letter-spacing:.2em;
  padding:6px 13px;border-radius:6px;opacity:.85;
}
@media (max-width:680px){.sello{position:static;display:inline-block;transform:rotate(-2deg);margin-bottom:16px;}}
.exp-ante{
  font-weight:700;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--tenue);margin-bottom:16px;
}
.exp-titulo{
  font-family:var(--sans);font-weight:900;
  font-size:clamp(2.2rem,6vw,3.5rem);line-height:.98;letter-spacing:-.035em;margin-bottom:6px;
}
.exp-titulo em{font-style:normal;color:var(--lila-fuerte);}
.exp-bajada{
  font-family:var(--serif);font-size:clamp(1.15rem,2.4vw,1.5rem);font-weight:500;
  margin-bottom:26px;color:var(--tinta);
}
.exp-bajada b{font-weight:600;background:linear-gradient(transparent 62%,var(--coral) 62%);padding:0 2px;}

.explico{color:var(--suave);font-size:1.02rem;max-width:50ch;margin-bottom:14px;}
.explico b{color:var(--tinta);font-weight:600;}
.chiste-copucha{
  font-family:var(--serif);font-size:1.08rem;color:var(--tinta);
  margin-bottom:26px;max-width:48ch;
}

/* expediente censurado — tocar para "revelar" */
.censurado{list-style:none;margin-bottom:28px;background:var(--crema);border-radius:14px;padding:6px 20px;}
.censurado li{
  display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px 0;
  border-bottom:1px dashed var(--linea);
}
.censurado li:last-child{border-bottom:none;}
.censurado .campo-exp{
  flex:none;min-width:150px;font-weight:700;font-size:.68rem;letter-spacing:.13em;
  text-transform:uppercase;color:var(--tenue);
}
.tachado{
  background:var(--tinta);color:transparent;border-radius:5px;padding:3px 12px;
  font-size:.95rem;cursor:pointer;user-select:none;
  transition:color .18s ease,background .18s ease;
}
.tachado:hover,.tachado:focus-visible,.tachado.abierto{color:var(--crema);}
@media (max-width:520px){.censurado .campo-exp{min-width:0;width:100%;}}

.captura{border-top:1px solid var(--linea);padding-top:28px;}
.captura h3{font-family:var(--serif);font-weight:600;font-size:clamp(1.25rem,2.6vw,1.6rem);margin-bottom:8px;}
.captura > p{color:var(--suave);font-size:.98rem;max-width:46ch;margin-bottom:20px;}
.form{display:flex;gap:12px;flex-wrap:wrap;}
.form input[type=email]{
  font-family:var(--sans);font-size:1rem;padding:15px 22px;flex:1 1 240px;min-width:0;
  border:1.5px solid var(--linea);border-radius:999px;background:var(--crema);color:var(--tinta);
  min-height:48px;transition:border-color .18s ease,background .18s ease;
}
.form input::placeholder{color:var(--tenue);}
.form input[type=email]:focus{border-color:var(--lila-fuerte);background:var(--papel);}
.form .btn{flex:0 0 auto;}
@media (max-width:520px){.form .btn{width:100%;}}
.recado{margin-top:14px;font-size:.88rem;color:var(--tenue);}
.recado:empty{display:none;}
.exito{display:none;margin-top:18px;background:var(--arena);border-radius:14px;padding:18px 22px;font-weight:600;}
.exito.visible{display:block;}
.exito small{display:block;font-weight:400;color:var(--suave);margin-top:4px;}
.remate{margin-top:28px;font-family:var(--serif);font-weight:600;font-size:clamp(1.05rem,2.2vw,1.3rem);line-height:1.35;}
.remate em{font-style:normal;color:var(--lila-fuerte);}

/* ============ FAVORITOS (Mercado Libre) ============ */
#favoritos{background:var(--arena);scroll-margin-top:76px;}
.destacado-ml{
  background:var(--tinta);color:var(--crema);border-radius:20px;
  padding:clamp(24px,4vw,34px) clamp(24px,4vw,38px);
  display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;
  margin-bottom:30px;
}
.destacado-ml div{flex:1 1 300px;}
.destacado-ml .etiqueta-viva{
  display:inline-block;font-weight:700;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--lila);margin-bottom:10px;
}
.destacado-ml h3{font-family:var(--serif);font-weight:600;font-size:clamp(1.3rem,2.8vw,1.75rem);margin-bottom:8px;}
.destacado-ml p{color:#C9C0B6;font-size:.96rem;max-width:46ch;}
.destacado-ml .btn{background:var(--lila);flex:none;}

.rubros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;}
@media (min-width:900px){.rubros{grid-template-columns:repeat(4,1fr);gap:18px;}}
.rubro{
  display:flex;flex-direction:column;gap:8px;text-decoration:none;
  background:var(--papel);border-radius:var(--radio);padding:22px 20px;
  box-shadow:0 18px 40px -32px var(--sombra);
  transition:transform .2s ease,box-shadow .2s ease;
}
.rubro:hover{transform:translateY(-4px);box-shadow:0 26px 48px -30px rgba(46,42,38,.32);}
.rubro .icono{font-size:1.5rem;line-height:1;}
.rubro h3{font-family:var(--serif);font-weight:600;font-size:1.12rem;}
.rubro p{font-size:.9rem;color:var(--suave);flex:1;}
.rubro .flecha{font-weight:700;color:var(--lila-fuerte);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;}

/* ============ GUÍAS ============ */
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;}
.tarjeta{
  position:relative;display:flex;flex-direction:column;
  background:var(--papel);border-radius:var(--radio);padding:30px 26px 26px;
  box-shadow:0 22px 48px -32px var(--sombra);
  transition:transform .2s ease,box-shadow .2s ease;
}
.tarjeta:hover{transform:translateY(-5px);box-shadow:0 30px 56px -30px rgba(46,42,38,.3);}
.tarjeta .destello{
  position:absolute;top:-11px;left:26px;background:var(--coral);color:var(--tinta);
  font-weight:800;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;
  padding:6px 14px;border-radius:999px;
}
.tarjeta .icono{font-size:1.6rem;line-height:1;margin-bottom:14px;}
.tarjeta h3{font-family:var(--serif);font-weight:600;font-size:1.25rem;margin-bottom:10px;}
.tarjeta p{font-size:.94rem;color:var(--suave);flex:1;margin-bottom:22px;}
.tarjeta .btn{align-self:flex-start;}
.pendiente{margin-top:26px;text-align:center;font-size:.84rem;color:var(--tenue);font-style:italic;}

/* ============ TIENDA (próximamente) ============ */
#tienda{scroll-margin-top:76px;}
.tienda{
  background:var(--lila-pastel);border-radius:24px;padding:clamp(30px,5vw,52px);
  display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center;
}
@media (max-width:820px){.tienda{grid-template-columns:1fr;gap:28px;}}
.tienda .pronto{
  display:inline-block;font-weight:800;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;
  background:var(--tinta);color:var(--crema);padding:6px 14px;border-radius:999px;margin-bottom:16px;
}
.tienda h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.6rem,3.4vw,2.3rem);line-height:1.15;margin-bottom:12px;}
.tienda p{color:var(--suave);font-size:1rem;max-width:46ch;margin-bottom:22px;}
.tienda .form input[type=email]{flex:1 1 200px;}
.tienda .form input[type=email]{background:var(--papel);border-color:transparent;}
.tienda .recado{margin-bottom:0;}
.tienda .exito{background:var(--papel);margin-bottom:0;}
.vitrina{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.vitrina div{
  background:var(--papel);border-radius:14px;aspect-ratio:1/1;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--sans);font-weight:900;font-size:2.4rem;color:var(--lila);
  box-shadow:0 14px 30px -24px var(--sombra);
}
.vitrina div:nth-child(2){transform:translateY(-10px);}

/* ============ BLOG (tarjetas) ============ */
#blog{background:var(--papel);scroll-margin-top:76px;}
.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;}
.post{
  display:flex;flex-direction:column;gap:10px;text-decoration:none;
  background:var(--crema);border-radius:var(--radio);padding:24px 22px;
  box-shadow:0 18px 40px -34px var(--sombra);
  transition:transform .2s ease,box-shadow .2s ease;overflow:hidden;
}
.post:hover{transform:translateY(-4px);box-shadow:0 26px 48px -30px rgba(46,42,38,.3);}
.post .cat{
  font-weight:800;font-size:.63rem;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-fuerte);
}
.post h3{font-family:var(--serif);font-weight:600;font-size:1.14rem;line-height:1.25;}
.post p{font-size:.9rem;color:var(--suave);flex:1;}
.post .flecha{font-weight:700;color:var(--lila-fuerte);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;}
.post .miniatura{
  margin:-24px -22px 4px;aspect-ratio:16/9;overflow:hidden;background:var(--lila-pastel);
}
/* object-position arriba: si la foto es vertical, el navegador se queda con la
   parte de arriba (la cara) en vez del centro (el torso). Esto arregla también
   las fotos viejas, sin tener que volver a subirlas. */
.post .miniatura img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .35s ease;}
.post:hover .miniatura img{transform:scale(1.04);}
.ver-todo{margin-top:30px;text-align:center;}
/* En el listado del blog las tarjetas van sobre crema, así que se invierten */
.listado .post{background:var(--papel);}

/* ============ CURSOS DE IA ============ */
#ia{background:var(--rosa);scroll-margin-top:76px;}
.ia-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start;}
@media (max-width:880px){.ia-grid{grid-template-columns:1fr;gap:32px;}}
.ia-intro .chiste{
  font-family:var(--serif);font-size:clamp(1.1rem,2.2vw,1.35rem);line-height:1.4;
  margin-bottom:22px;max-width:34ch;
}
.ia-intro .chiste em{font-style:normal;color:var(--lila-fuerte);}
.ia-intro p{color:var(--suave);font-size:.98rem;margin-bottom:14px;max-width:44ch;}
.ia-intro p b{color:var(--tinta);font-weight:600;}

.ia-form{background:var(--papel);border-radius:20px;padding:clamp(24px,4vw,34px);box-shadow:0 26px 56px -36px var(--sombra);}
.ia-form h3{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin-bottom:6px;}
.ia-form > p{color:var(--suave);font-size:.92rem;margin-bottom:22px;}
.campo{margin-bottom:20px;}
.campo > label,.campo > legend{
  display:block;font-weight:700;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--tenue);margin-bottom:10px;padding:0;
}
.campo fieldset{border:none;}
.ia-form input[type=email],.ia-form select{
  width:100%;font-family:var(--sans);font-size:1rem;padding:13px 18px;
  border:1.5px solid var(--linea);border-radius:12px;background:var(--crema);color:var(--tinta);
  min-height:48px;
}
.ia-form input[type=email]::placeholder{color:var(--tenue);}
.ia-form input[type=email]:focus,.ia-form select:focus{border-color:var(--lila-fuerte);outline:none;background:var(--papel);}
.opciones{display:flex;flex-wrap:wrap;gap:9px;}
.opciones label{
  display:inline-flex;align-items:center;cursor:pointer;
  font-size:.86rem;padding:9px 15px;border-radius:999px;
  border:1.5px solid var(--linea);color:var(--suave);transition:all .16s ease;user-select:none;
}
.opciones input{position:absolute;opacity:0;width:0;height:0;}
.opciones label:hover{border-color:var(--lila-fuerte);color:var(--tinta);}
.opciones label:has(input:checked){background:var(--lila);border-color:var(--lila);color:var(--tinta);font-weight:600;}
.opciones input:focus-visible + span{outline:3px solid var(--lila-fuerte);outline-offset:4px;border-radius:4px;}
.ia-form .btn{width:100%;margin-top:6px;}
.ia-form .recado{text-align:center;}

/* Todas las preguntas son obligatorias, y se avisa antes de que empiece
   a llenar, no después de que apriete el botón. */
.ia-form > p.aviso-todas{
  font-size:.85rem;color:var(--lila-fuerte);font-weight:600;
  margin-top:-16px;margin-bottom:22px;
}
/* La pregunta que quedó en blanco, cuando aprieta el botón. */
.campo.falta > label,.campo.falta > fieldset > legend{color:#C0453B;}
.campo.falta select{border-color:#C0453B;}
.campo.falta .opciones label{border-color:#E0A9A3;}
.aviso-campo{
  margin-top:8px;font-size:.85rem;color:#C0453B;
  scroll-margin-top:96px;
}
.campo:not(.falta) .aviso-campo{display:none;}
.campo.falta{scroll-margin-top:96px;}

/* ============ QUIÉN SOY ============ */
#sobre{scroll-margin-top:76px;}
.sobre{display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:center;max-width:900px;margin-inline:auto;}
@media (max-width:680px){.sobre{grid-template-columns:1fr;gap:26px;justify-items:start;}}
.retrato{width:190px;height:190px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 24px 46px -26px rgba(46,42,38,.5);}
.sobre p{font-size:1.02rem;color:var(--suave);max-width:56ch;margin-bottom:14px;}
.sobre p strong{color:var(--tinta);font-weight:600;}
.sobre .golpe{font-size:1.06rem;color:var(--tinta);}
.firma{font-family:var(--mano);font-size:2rem;color:var(--lila-fuerte);display:inline-block;transform:rotate(-2deg);margin-top:8px;}

/* ============ CIERRE ============ */
#cierre{scroll-margin-top:76px;}
.cierre{
  background:var(--coral);border-radius:24px;padding:clamp(32px,5vw,56px);
  display:grid;grid-template-columns:1.15fr 1fr;gap:36px;align-items:center;
}
@media (max-width:820px){.cierre{grid-template-columns:1fr;gap:26px;}}
.cierre h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,3.2vw,2.2rem);line-height:1.18;margin-bottom:12px;text-wrap:balance;}
.cierre p{font-size:.98rem;color:#5A3527;}
.cierre .form input[type=email]{background:var(--papel);border-color:transparent;}
.cierre .btn{background:var(--tinta);color:var(--crema);box-shadow:0 14px 26px -14px rgba(46,42,38,.7);}
.cierre .recado{color:#7A4B39;}
.cierre .exito{background:var(--papel);}

/* ============ FOOTER ============ */
.pie{background:var(--tinta);color:var(--crema);}
.pie .wrap{padding:44px 0 20px;display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between;}
.pie .marca b{color:var(--crema);}
.despedida{font-size:.96rem;color:#C9C0B6;max-width:40ch;flex:1 1 260px;}
.redes{display:flex;gap:20px;flex-wrap:wrap;}
.redes a{color:var(--crema);transition:color .18s ease;}
.redes a:hover{color:var(--lila);}
.redes svg{width:21px;height:21px;display:block;}
.legal{
  border-top:1px solid rgba(250,244,236,.14);margin-top:8px;
  padding:16px 0 26px;font-size:.74rem;color:#A79D93;
  display:flex;flex-wrap:wrap;gap:6px 22px;justify-content:center;text-align:center;
}
.legal a{color:#A79D93;}
.legal a:hover{color:var(--lila);}

/* ====================================================================== */
/* ============ PÁGINAS INTERNAS: BLOG, POSTS Y PÁGINAS ================== */
/* ====================================================================== */

/* --- Cabecera común de las páginas internas --- */
.cabecera{
  background:var(--lila-pastel);
  padding:clamp(36px,6vw,66px) 0 clamp(30px,5vw,52px);
}
.cabecera--rosa{background:var(--rosa);}
.cabecera--arena{background:var(--arena);}
.cabecera .wrap{max-width:min(820px,92vw);}
.migas{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-weight:700;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tenue);margin-bottom:16px;
}
.migas a{text-decoration:none;color:var(--lila-fuerte);}
.migas a:hover{color:var(--tinta);}
.migas span{opacity:.6;}
.titulo-grande{
  font-family:var(--serif);font-weight:600;
  font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.1;letter-spacing:-.015em;
  text-wrap:balance;margin-bottom:14px;
}
.cabecera .bajada{margin-bottom:0;}
.meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;
  font-size:.82rem;color:var(--suave);margin-top:18px;
}
.meta .punto{opacity:.45;}
.meta time{white-space:nowrap;}

/* --- Foto destacada del post --- */
.portada{width:var(--ancho);margin:clamp(-30px,-4vw,-24px) auto 0;position:relative;z-index:1;}
.portada img{
  width:100%;max-height:520px;object-fit:cover;object-position:center 22%;
  border-radius:22px;box-shadow:0 34px 66px -40px rgba(46,42,38,.55);
}

/* --- El texto del post: la parte que más importa --- */
.articulo{background:var(--papel);padding:clamp(40px,6vw,72px) 0 clamp(30px,5vw,50px);}

/* Las páginas armadas con Elementor traen su propio ancho: se dejan libres */
.articulo--ancho{padding:0;background:transparent;}
.lienzo{width:100%;}
.prosa{
  width:min(66ch,92vw);margin-inline:auto;
  font-size:clamp(1.02rem,1.2vw,1.12rem);line-height:1.78;color:var(--suave);
}
.prosa > *:first-child{margin-top:0;}
.prosa p{margin-bottom:1.3em;}
.prosa strong,.prosa b{color:var(--tinta);font-weight:600;}
.prosa em,.prosa i{font-style:italic;}
.prosa a{color:var(--lila-fuerte);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;}
.prosa a:hover{color:var(--coral-fuerte);}
.prosa h2{
  font-family:var(--serif);font-weight:600;color:var(--tinta);
  font-size:clamp(1.4rem,3vw,1.85rem);line-height:1.2;
  margin:1.9em 0 .55em;letter-spacing:-.01em;
}
.prosa h3{
  font-family:var(--serif);font-weight:600;color:var(--tinta);
  font-size:clamp(1.18rem,2.4vw,1.4rem);line-height:1.25;margin:1.7em 0 .5em;
}
.prosa h4{font-weight:800;color:var(--tinta);font-size:1.05rem;margin:1.5em 0 .4em;}
.prosa ul,.prosa ol{margin:0 0 1.3em 1.35em;}
.prosa li{margin-bottom:.55em;}
.prosa ul{list-style:none;margin-left:0;}
.prosa ul li{position:relative;padding-left:1.5em;}
.prosa ul li::before{content:"✳";position:absolute;left:0;color:var(--coral-fuerte);}
.prosa ol{list-style:decimal;}
.prosa ol li::marker{color:var(--lila-fuerte);font-weight:700;}
.prosa blockquote{
  border-left:4px solid var(--coral);padding:2px 0 2px 22px;margin:1.7em 0;
  font-family:var(--serif);font-size:clamp(1.12rem,2.2vw,1.3rem);line-height:1.45;color:var(--tinta);
}
.prosa blockquote p:last-child{margin-bottom:0;}
.prosa img{border-radius:16px;margin-inline:auto;}
.prosa figure{margin:1.8em 0;}
.prosa figcaption{font-size:.84rem;color:var(--tenue);text-align:center;margin-top:10px;}
.prosa hr{border:none;border-top:1px solid var(--linea);margin:2.4em 0;}
.prosa table{width:100%;border-collapse:collapse;margin-bottom:1.4em;font-size:.94rem;}
.prosa th,.prosa td{border:1px solid var(--linea);padding:10px 14px;text-align:left;}
.prosa th{background:var(--crema);color:var(--tinta);font-weight:700;}
.prosa code{background:var(--crema);padding:2px 7px;border-radius:6px;font-size:.9em;}
.prosa pre{background:var(--crema);padding:18px;border-radius:12px;overflow-x:auto;margin-bottom:1.4em;}
.prosa .wp-caption{max-width:100%;}
.prosa iframe,.prosa video{max-width:100%;border-radius:16px;}
.prosa .alignleft{float:left;margin:.4em 1.6em 1.2em 0;}
.prosa .alignright{float:right;margin:.4em 0 1.2em 1.6em;}
.prosa .aligncenter{margin-inline:auto;}
@media (max-width:600px){.prosa .alignleft,.prosa .alignright{float:none;margin:1.4em auto;}}

/* --- Etiquetas al final del post --- */
.etiquetas{width:min(66ch,92vw);margin:34px auto 0;display:flex;flex-wrap:wrap;gap:9px;align-items:center;}
.etiquetas .rotulo{font-weight:700;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tenue);}
.etiquetas a{
  text-decoration:none;font-size:.84rem;padding:7px 14px;border-radius:999px;
  border:1.5px solid var(--linea);color:var(--suave);transition:all .16s ease;
}
.etiquetas a:hover{border-color:var(--lila-fuerte);color:var(--tinta);background:var(--lila-pastel);}

/* --- Firma al cierre del post --- */
.firma-post{
  width:min(66ch,92vw);margin:40px auto 0;padding-top:28px;border-top:1px solid var(--linea);
  display:flex;gap:20px;align-items:center;flex-wrap:wrap;
}
.firma-post img{width:76px;height:76px;border-radius:50%;object-fit:cover;flex:none;}
.firma-post div{flex:1 1 260px;}
.firma-post b{font-family:var(--serif);font-weight:600;font-size:1.1rem;display:block;margin-bottom:4px;}
.firma-post p{font-size:.92rem;color:var(--suave);}

/* --- CTA de correo al final de cada post --- */
.cta-post{background:var(--lila-pastel);padding:clamp(36px,5vw,56px) 0;}
.cta-post .caja{
  background:var(--papel);border-radius:22px;padding:clamp(26px,4vw,40px);
  max-width:680px;margin-inline:auto;box-shadow:0 28px 60px -40px rgba(46,42,38,.5);
}
.cta-post h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.3rem,2.8vw,1.75rem);line-height:1.2;margin-bottom:10px;}
.cta-post > .wrap > .caja > p{color:var(--suave);font-size:.98rem;max-width:46ch;margin-bottom:20px;}

/* --- Navegación entre posts --- */
.navega{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:clamp(30px,5vw,50px) 0;}
@media (max-width:640px){.navega{grid-template-columns:1fr;}}
.navega a{
  display:block;text-decoration:none;background:var(--papel);border-radius:var(--radio);
  padding:20px 24px;box-shadow:0 18px 40px -34px var(--sombra);
  transition:transform .2s ease,box-shadow .2s ease;
}
.navega a:hover{transform:translateY(-3px);box-shadow:0 26px 48px -30px rgba(46,42,38,.3);}
.navega .rotulo{
  display:block;font-weight:700;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--lila-fuerte);margin-bottom:7px;
}
.navega b{font-family:var(--serif);font-weight:600;font-size:1.02rem;line-height:1.3;color:var(--tinta);}
.navega .der{text-align:right;}

/* --- Listado del blog --- */
.listado{padding:clamp(40px,6vw,70px) 0 clamp(48px,7vw,86px);}
.paginacion{margin-top:44px;}
.paginacion .nav-links{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;
}
.paginacion .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:46px;min-height:46px;padding:0 14px;border-radius:999px;
  text-decoration:none;font-weight:700;font-size:.88rem;
  background:var(--papel);color:var(--suave);border:1.5px solid var(--linea);
  transition:all .16s ease;
}
.paginacion .page-numbers:hover{border-color:var(--lila-fuerte);color:var(--tinta);}
.paginacion .page-numbers.current{background:var(--lila);border-color:var(--lila);color:var(--tinta);}
.paginacion .dots{border:none;background:transparent;}

/* --- Comentarios --- */
.comentarios{width:min(66ch,92vw);margin:0 auto;padding:clamp(30px,5vw,48px) 0;}
.titulo-comentarios{
  font-family:var(--serif);font-weight:600;font-size:clamp(1.3rem,2.8vw,1.7rem);
  margin-bottom:22px;
}
.lista-comentarios{list-style:none;margin:0 0 30px;padding:0;}
.lista-comentarios ol.children{list-style:none;margin:16px 0 0 clamp(14px,4vw,34px);padding:0;}
.lista-comentarios li.comment,.lista-comentarios li.pingback{
  background:var(--papel);border-radius:var(--radio);padding:22px 24px;margin-bottom:16px;
  box-shadow:0 18px 40px -34px var(--sombra);
}
.lista-comentarios .comment-author{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.lista-comentarios .comment-author img{border-radius:50%;flex:none;}
.lista-comentarios .comment-author .fn{font-weight:700;font-style:normal;font-size:.98rem;}
.lista-comentarios .comment-author .says{display:none;}
.lista-comentarios .comment-metadata{font-size:.76rem;color:var(--tenue);margin-bottom:12px;}
.lista-comentarios .comment-metadata a{text-decoration:none;}
.lista-comentarios .comment-content{font-size:.98rem;color:var(--suave);}
.lista-comentarios .comment-content p{margin-bottom:.9em;}
.lista-comentarios .comment-content p:last-child{margin-bottom:0;}
.lista-comentarios .reply{margin-top:12px;}
.lista-comentarios .reply a{
  font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--lila-fuerte);text-decoration:none;
}
.lista-comentarios .comment-awaiting-moderation{font-size:.84rem;color:var(--coral-fuerte);font-style:italic;}
.cerrado{font-size:.9rem;color:var(--tenue);font-style:italic;margin-bottom:24px;}

.comment-respond{background:var(--papel);border-radius:20px;padding:clamp(24px,4vw,32px);box-shadow:0 22px 48px -36px var(--sombra);}
.comment-respond label{
  display:block;font-weight:700;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--tenue);margin-bottom:8px;
}
.comment-respond input[type=text],
.comment-respond input[type=email],
.comment-respond input[type=url],
.comment-respond textarea{
  width:100%;font-family:var(--sans);font-size:1rem;padding:13px 18px;
  border:1.5px solid var(--linea);border-radius:12px;background:var(--crema);color:var(--tinta);
}
.comment-respond textarea{border-radius:16px;line-height:1.6;resize:vertical;}
.comment-respond input:focus,.comment-respond textarea:focus{border-color:var(--lila-fuerte);outline:none;background:var(--papel);}
.comment-respond p{margin-bottom:18px;}
.comment-respond .comment-form-cookies-consent{display:flex;align-items:center;gap:10px;}
.comment-respond .comment-form-cookies-consent label{margin:0;text-transform:none;letter-spacing:0;font-size:.86rem;font-weight:400;color:var(--suave);}
.comment-respond .comment-form-cookies-consent input{width:auto;}
.comment-respond .form-submit{margin-bottom:0;}
.comment-reply-title small{font-size:.7rem;font-weight:400;}
.comment-reply-title small a{color:var(--coral-fuerte);}
.logged-in-as{font-size:.86rem;color:var(--tenue);}

/* --- Buscador --- */
.buscador{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.buscador input[type=search]{
  font-family:var(--sans);font-size:1rem;padding:14px 22px;flex:1 1 220px;min-width:0;
  border:1.5px solid var(--linea);border-radius:999px;background:var(--papel);color:var(--tinta);min-height:48px;
}
.buscador input[type=search]:focus{border-color:var(--lila-fuerte);outline:none;}

/* --- Vacío / 404 --- */
.vacio{text-align:center;padding:clamp(50px,8vw,90px) 0;}
.vacio .emoji{font-size:3rem;line-height:1;margin-bottom:18px;}
.vacio h1{font-family:var(--serif);font-weight:600;font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:12px;}
.vacio p{color:var(--suave);max-width:44ch;margin:0 auto 26px;}

/* ============ ANIMACIÓN DE ENTRADA ============ */
.js [data-aparece]{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;}
.js [data-aparece].visto{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{transition:none !important;animation:none !important;}
  .js [data-aparece]{opacity:1;transform:none;}
}

/* ============ IMPRESIÓN ============ */
@media print{
  .barra,.pie,.cta-post,.navega,.comunidad,.saltar{display:none !important;}
  body{background:#fff;}
  .prosa{width:100%;color:#000;}
}
