/* ============================================================
   RIIA Inteligencia · hoja de estilos del blog
   Depende de /styles.css (tokens, nav, botones, pie).
   Todo va bajo `.blog` para no tocar el resto de riia.cl.
   Portada: oscura y tecnológica. Lectura: clara y editorial.
   ============================================================ */

/* ---------- Colores por categoría ---------- */
.blog [data-cat]{ --cat:var(--cyan); }
.blog [data-cat="ia-inmobiliaria"]{ --cat:var(--cyan); }
.blog [data-cat="captacion"]{ --cat:var(--lobo); }
.blog [data-cat="operaciones"]{ --cat:var(--buho); }
.blog [data-cat="marketing"]{ --cat:var(--zorro); }
.blog [data-cat="tendencias"]{ --cat:var(--cuervo); }

/* ---------- Navegación: el blog muestra sus enlaces también en móvil ---------- */
.blog .nav__links{ display:flex; gap:1rem; }
.blog .nav__links a.is-current{ color:var(--white); }
.blog .nav__links a.is-current::after{ transform:scaleX(1); }
@media (max-width:479px){ .blog .nav__links a[data-opcional]{ display:none; } }
@media (min-width:900px){ .blog .nav__links{ gap:1.35rem; } }
.blog .brand__tag{ letter-spacing:.2em; }

/* ---------- Chip de categoría ---------- */
.bcat{
  display:inline-flex; align-items:center; gap:.45rem;
  font-family:var(--f-mono); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--cat); font-weight:500; white-space:nowrap;
}
.bcat::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--cat); box-shadow:0 0 10px var(--cat); flex:none; }

/* ---------- Meta (autor · fecha · lectura) ---------- */
.bmeta{
  display:flex; flex-wrap:wrap; align-items:center; gap:.45rem .7rem;
  font-family:var(--f-mono); font-size:.66rem; letter-spacing:.08em; color:var(--muted); text-transform:uppercase;
}
.bmeta b{ color:var(--soft); font-weight:500; }
.bmeta i{ font-style:normal; opacity:.45; }
.bmeta__foto{ width:26px; height:26px; border-radius:50%; overflow:hidden; flex:none; box-shadow:0 0 0 1px var(--line-2); }
.bmeta__foto img{ width:100%; height:100%; object-fit:cover; }

/* ============================================================
   PORTADA
   ============================================================ */
.bhero{
  position:relative; overflow:hidden; isolation:isolate;
  padding:clamp(7.5rem,15vw,11.5rem) 0 clamp(2.5rem,5vw,4rem);
}
.bhero__fx{ position:absolute; inset:0; z-index:-1; pointer-events:none; }
.bhero__fx::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(52% 60% at 12% 18%, rgba(34,205,240,.20), transparent 68%),
    radial-gradient(46% 55% at 88% 78%, rgba(139,92,246,.20), transparent 70%),
    radial-gradient(35% 40% at 70% 10%, rgba(59,123,255,.12), transparent 70%);
}
.bhero__fx::after{
  content:""; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(70% 80% at 50% 30%, #000 20%, transparent 80%);
          mask-image:radial-gradient(70% 80% at 50% 30%, #000 20%, transparent 80%);
}
.bhero__orb{
  position:absolute; border-radius:50%; filter:blur(52px); opacity:.55;
  animation:orbita 22s var(--e) infinite alternate;
}
.bhero__orb--a{ width:38vw; height:38vw; max-width:520px; max-height:520px; left:-8vw; top:-6vw; background:radial-gradient(circle, rgba(34,205,240,.55), transparent 65%); }
.bhero__orb--b{ width:34vw; height:34vw; max-width:460px; max-height:460px; right:-6vw; bottom:-10vw; background:radial-gradient(circle, rgba(230,61,208,.38), transparent 65%); animation-delay:-11s; animation-duration:26s; }
@keyframes orbita{ from{ transform:translate3d(0,0,0) scale(1); } to{ transform:translate3d(6vw,4vw,0) scale(1.12); } }
@media (prefers-reduced-motion:reduce){ .bhero__orb{ animation:none; } }

.bhero__kicker{ margin-bottom:1.6rem; }
.bhero__name{
  font-size:clamp(2.5rem,7vw,5.4rem); line-height:.98; letter-spacing:-.04em; font-weight:900;
}
.bhero__name em{
  font-style:normal;
  background:linear-gradient(96deg, var(--cyan) 0%, var(--blue) 40%, var(--violet) 78%, var(--magenta) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent;
}
.bhero__bajada{
  margin-top:1.3rem; font-family:var(--f-display); font-weight:600; letter-spacing:-.02em;
  font-size:clamp(1.12rem,2.1vw,1.55rem); color:var(--white); max-width:28ch; line-height:1.25;
}
.bhero__lede{ max-width:60ch; }
.bhero__linea{
  margin-top:clamp(2.2rem,5vw,3.4rem); height:1px;
  background:linear-gradient(90deg, var(--cyan), var(--violet) 45%, transparent 90%); opacity:.45;
}

/* ---------- Artículo destacado ---------- */
.bdest-sec{ padding-block:clamp(1rem,3vw,2rem) clamp(2.5rem,5vw,3.5rem); }
.bdest__label{ margin-bottom:1.1rem; }
.bdest{
  position:relative; display:grid; gap:0; overflow:hidden; border-radius:var(--r-lg);
  background:linear-gradient(135deg, var(--graphite) 0%, var(--ink-2) 60%, #0A0E1C 100%);
  box-shadow:inset 0 0 0 1px var(--line), 0 40px 90px -50px rgba(0,0,0,.9);
  transition:transform .55s var(--e-out), box-shadow .55s var(--e);
}
.bdest::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:0;
  background:radial-gradient(60% 70% at 100% 100%, color-mix(in srgb, var(--cat) 22%, transparent), transparent 70%);
  transition:opacity .6s var(--e);
}
.bdest:hover{ transform:translateY(-4px); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--cat) 45%, transparent), 0 50px 100px -50px rgba(0,0,0,.95); }
.bdest:hover::before{ opacity:1; }
.bdest__img{ position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--graphite); }
.bdest__img img{ width:100%; height:100%; object-fit:cover; transition:transform 1.4s var(--e-out); }
.bdest:hover .bdest__img img{ transform:scale(1.04); }
.bdest__img::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(to top, rgba(4,5,10,.55), transparent 55%);
}
.bdest__body{ position:relative; padding:clamp(1.5rem,3.4vw,2.8rem); display:flex; flex-direction:column; gap:1rem; justify-content:center; }
.bdest__t{ font-size:clamp(1.45rem,2.9vw,2.25rem); letter-spacing:-.033em; line-height:1.08; }
.bdest__t a{ color:var(--white); }
.bdest__t a::after{ content:""; position:absolute; inset:0; z-index:1; }
.bdest__x{ color:var(--soft); font-weight:300; font-size:clamp(.98rem,1.25vw,1.08rem); line-height:1.62; max-width:52ch; }
.bdest__leer{
  display:inline-flex; align-items:center; gap:.5rem; margin-top:.4rem; align-self:flex-start;
  font-weight:700; font-size:.9rem; color:var(--cat);
}
.bdest__leer svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; transition:transform .45s var(--e-out); }
.bdest:hover .bdest__leer svg{ transform:translateX(4px); }
@media (min-width:900px){
  .bdest{ grid-template-columns:1.18fr 1fr; }
  .bdest__img{ aspect-ratio:auto; min-height:400px; }
  .bdest__img::after{ background:linear-gradient(to right, transparent 60%, rgba(7,9,18,.7)); }
}

/* ---------- Filtros ---------- */
.bfiltros-sec{ padding-block:0 clamp(1.4rem,3vw,2rem); }
.bfiltros{
  display:flex; gap:.5rem; overflow-x:auto; padding-block:.4rem; -webkit-overflow-scrolling:touch;
  scrollbar-width:none; margin-inline:calc(var(--pad) * -1); padding-inline:var(--pad);
}
.bfiltros::-webkit-scrollbar{ display:none; }
.bfiltro{
  flex:none; display:inline-flex; align-items:center; gap:.55rem; cursor:pointer;
  padding:.62rem 1.05rem; border-radius:100px; border:1px solid var(--line-2); background:rgba(255,255,255,.03);
  font-family:var(--f-mono); font-size:.66rem; letter-spacing:.16em; text-transform:uppercase; color:var(--soft);
  transition:background .35s var(--e), border-color .35s var(--e), color .35s var(--e), transform .35s var(--e-out);
}
.bfiltro i{ font-style:normal; color:var(--muted); font-size:.6rem; }
.bfiltro:hover{ color:var(--white); border-color:color-mix(in srgb, var(--cat) 60%, transparent); transform:translateY(-1px); }
.bfiltro.is-on{ color:var(--white); border-color:var(--cat); background:color-mix(in srgb, var(--cat) 16%, transparent); box-shadow:0 0 22px -8px var(--cat); }
.bfiltro.is-on i{ color:var(--cat); }
.bfiltro[data-filtro="todos"]{ --cat:var(--white); }
.bfiltro[data-filtro="todos"].is-on{ background:rgba(255,255,255,.1); box-shadow:none; }

/* ---------- Cuadrícula de tarjetas ---------- */
.bgrid-sec{ padding-block:0 clamp(3.5rem,8vw,6rem); }
.bgrid{ display:grid; gap:1.3rem; grid-template-columns:1fr; }
@media (min-width:640px){ .bgrid{ grid-template-columns:repeat(2,1fr); gap:1.4rem; } }
@media (min-width:1040px){ .bgrid{ grid-template-columns:repeat(3,1fr); gap:1.6rem; } }

.bcard{
  position:relative; display:flex; flex-direction:column; overflow:hidden; border-radius:var(--r-lg);
  background:rgba(255,255,255,.028); box-shadow:inset 0 0 0 1px var(--line);
  transition:transform .55s var(--e-out), box-shadow .55s var(--e), background .55s var(--e);
}
.bcard::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:0; z-index:0;
  background:radial-gradient(70% 60% at 50% 100%, color-mix(in srgb, var(--cat) 16%, transparent), transparent 70%);
  transition:opacity .55s var(--e);
}
.bcard:hover{ transform:translateY(-6px); background:rgba(255,255,255,.04); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--cat) 50%, transparent), 0 34px 60px -34px rgba(0,0,0,.9); }
.bcard:hover::before{ opacity:1; }
.bcard:focus-within{ box-shadow:inset 0 0 0 2px var(--cat); }
.bcard__img{ aspect-ratio:16/10; overflow:hidden; background:var(--graphite); }
.bcard__img img{ width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--e-out); }
.bcard:hover .bcard__img img{ transform:scale(1.05); }
.bcard__body{ position:relative; flex:1; display:flex; flex-direction:column; gap:.7rem; padding:1.25rem 1.35rem 1.4rem; }
.bcard__t{ font-size:1.2rem; letter-spacing:-.026em; line-height:1.18; }
.bcard__t a{ color:var(--white); transition:color .35s var(--e); }
.bcard__t a::after{ content:""; position:absolute; inset:0; z-index:1; }
.bcard__t a:focus-visible{ outline:none; }
.bcard:hover .bcard__t a{ color:color-mix(in srgb, var(--white) 80%, var(--cat)); }
.bcard__x{ color:var(--soft); font-weight:300; font-size:.93rem; line-height:1.6; }
.bcard__meta{ margin-top:auto; padding-top:.9rem; border-top:1px solid var(--line); }

.bvacio{
  padding:2.5rem 1.5rem; text-align:center; border-radius:var(--r-lg); border:1px dashed var(--line-2);
  color:var(--muted); font-size:.95rem;
}
.bvacio b{ display:block; color:var(--soft); font-family:var(--f-display); font-size:1.15rem; margin-bottom:.4rem; }

/* ============================================================
   ARTÍCULO
   ============================================================ */
.post__cab{
  position:relative; overflow:hidden; isolation:isolate;
  padding:clamp(7rem,14vw,10.5rem) 0 0;
}
.post__cab::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(48% 55% at 18% 10%, color-mix(in srgb, var(--cat) 20%, transparent), transparent 70%),
    radial-gradient(40% 50% at 90% 40%, rgba(139,92,246,.12), transparent 70%);
}
.post__cab .wrap{ max-width:900px; }
.post__miga{ margin-bottom:1.4rem; }
.post__t{ font-size:clamp(1.9rem,4.4vw,3.25rem); letter-spacing:-.035em; line-height:1.05; margin-top:1rem; }
.post__bajada{
  margin-top:1.3rem; max-width:64ch; color:var(--soft); font-weight:300;
  font-size:clamp(1.05rem,1.45vw,1.24rem); line-height:1.62;
}
.post__meta{ margin-top:1.8rem; }
.post__meta .bmeta__foto{ width:34px; height:34px; }
.post__meta b{ font-family:var(--f-body); font-size:.86rem; letter-spacing:0; text-transform:none; color:var(--white); font-weight:600; }

/* La imagen cruza la frontera entre la cabecera oscura y la lectura clara */
.post__hero{
  position:relative; z-index:2; margin:clamp(2rem,4vw,2.8rem) auto 0; padding-inline:var(--pad);
  max-width:calc(1080px + var(--pad) * 2); width:100%;
  transform:translateY(clamp(2.2rem,7vw,5.5rem));
}
.post__hero figure{ margin:0; border-radius:var(--r-lg); overflow:hidden; aspect-ratio:16/8.4; background:var(--graphite); box-shadow:0 30px 80px -30px rgba(0,0,0,.9), 0 0 0 1px var(--line); }
.post__hero img{ width:100%; height:100%; object-fit:cover; }

.post__cuerpo{
  background:#FBFCFE; color:#1B2130;
  padding:clamp(5rem,13vw,10rem) 0 clamp(3rem,6vw,4.5rem);
}
.post__prosa{
  max-width:calc(720px + var(--pad) * 2); margin-inline:auto; padding-inline:var(--pad);
  font-size:clamp(1.04rem,1.25vw,1.16rem); line-height:1.78; font-weight:400;
}
.post__prosa > p{ margin-bottom:1.55rem; }
.post__prosa > p:first-child{ font-size:1.1em; color:#0D111B; }
.post__prosa h2{
  font-size:clamp(1.5rem,2.7vw,1.95rem); letter-spacing:-.03em; line-height:1.14; color:#0D111B;
  margin:2.9rem 0 1rem; font-weight:800;
}
.post__prosa h3{ font-size:clamp(1.18rem,1.7vw,1.32rem); letter-spacing:-.022em; line-height:1.22; color:#0D111B; margin:2.2rem 0 .8rem; font-weight:700; }
.post__prosa h2 + h3{ margin-top:1.2rem; }
.post__prosa a{
  color:#0B8FB0; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;
  text-decoration-color:rgba(11,143,176,.45); transition:color .3s var(--e), text-decoration-color .3s var(--e);
}
.post__prosa a:hover{ color:#076F89; text-decoration-color:currentColor; }
.post__prosa strong{ color:#0D111B; font-weight:700; }
.post__prosa em{ font-style:italic; }
.post__prosa ul, .post__prosa ol{ margin:0 0 1.55rem; padding-left:1.4rem; }
.post__prosa ul{ list-style:disc; }
.post__prosa ol{ list-style:decimal; }
.post__prosa li{ margin-bottom:.55rem; padding-left:.25rem; }
.post__prosa li::marker{ color:#0B8FB0; font-weight:700; }
.post__prosa blockquote{
  margin:2.3rem 0; padding:1.35rem 1.6rem 1.35rem 1.8rem; position:relative;
  border-left:3px solid var(--cat); background:#F1F5FA; border-radius:0 16px 16px 0;
  font-family:var(--f-display); font-weight:600; font-size:clamp(1.14rem,1.6vw,1.28rem); letter-spacing:-.018em; line-height:1.4; color:#0D111B;
}
.post__prosa blockquote p{ margin:0; }
.post__prosa blockquote p + p{ margin-top:.8rem; }
.post__prosa figure{ margin:2.3rem 0; }
.post__prosa figure img{ width:100%; border-radius:14px; box-shadow:0 20px 50px -30px rgba(13,17,27,.5); }
.post__prosa figcaption{ margin-top:.7rem; font-family:var(--f-mono); font-size:.7rem; letter-spacing:.08em; color:#6E7789; }
.post__prosa code{ font-family:var(--f-mono); font-size:.88em; background:#EDF1F7; padding:.12em .4em; border-radius:6px; color:#0D111B; }
.post__prosa hr{ border:0; height:1px; background:#E3E8EF; margin:2.6rem 0; }

/* Bloque destacado: tinta oscura sobre el papel claro */
.post__destacado{
  position:relative; margin:2.4rem 0; padding:1.5rem 1.7rem 1.5rem 1.9rem; border-radius:18px; overflow:hidden;
  background:linear-gradient(135deg, #0D111B 0%, #141A2B 100%); color:var(--white);
  font-size:clamp(1.02rem,1.3vw,1.12rem); line-height:1.6; font-weight:500;
  box-shadow:0 24px 60px -34px rgba(13,17,27,.75);
}
.post__destacado::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(to bottom, var(--cyan), var(--violet));
}
.post__destacado::after{
  content:""; position:absolute; right:-20%; top:-40%; width:60%; height:160%; pointer-events:none;
  background:radial-gradient(circle, color-mix(in srgb, var(--cat) 26%, transparent), transparent 60%);
}
.post__destacado > *{ position:relative; z-index:1; }
.post__destacado p{ margin:0; }
.post__destacado p + p{ margin-top:.8rem; }
.post__destacado strong{ color:var(--cyan); }
.post__destacado a{ color:var(--cyan); text-decoration-color:rgba(34,205,240,.5); }
.post__destacado .post__clave{
  display:block; font-family:var(--f-mono); font-size:.6rem; letter-spacing:.24em; text-transform:uppercase;
  color:var(--cat); margin-bottom:.6rem; font-weight:500;
}

/* Compartir */
.post__compartir{
  max-width:calc(720px + var(--pad) * 2); margin:2.6rem auto 0; padding-inline:var(--pad);
  display:flex; flex-wrap:wrap; align-items:center; gap:.7rem;
}
.post__compartir > span{ font-family:var(--f-mono); font-size:.64rem; letter-spacing:.2em; text-transform:uppercase; color:#6E7789; margin-right:.3rem; }
.post__red{
  display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:12px;
  border:1px solid #DFE5EE; color:#3E4757; background:#fff;
  transition:color .3s var(--e), border-color .3s var(--e), transform .3s var(--e-out), box-shadow .3s var(--e);
}
.post__red svg{ width:18px; height:18px; fill:currentColor; }
.post__red:hover{ color:#0D111B; border-color:#0B8FB0; transform:translateY(-2px); box-shadow:0 10px 24px -14px rgba(11,143,176,.6); }

/* Ficha del autor */
.post__autor{
  max-width:calc(720px + var(--pad) * 2); margin:2.8rem auto 0; padding:2rem var(--pad) 0;
  border-top:1px solid #E3E8EF; display:flex; gap:1.2rem; align-items:flex-start;
}
.post__autor__foto{ width:68px; height:68px; border-radius:50%; overflow:hidden; flex:none; box-shadow:0 0 0 1px #DFE5EE, 0 14px 30px -18px rgba(13,17,27,.5); }
.post__autor__foto img{ width:100%; height:100%; object-fit:cover; }
.post__autor__k{ font-family:var(--f-mono); font-size:.6rem; letter-spacing:.24em; text-transform:uppercase; color:#6E7789; margin-bottom:.35rem; }
.post__autor__n{ font-family:var(--f-display); font-size:1.12rem; letter-spacing:-.022em; color:#0D111B; font-weight:800; }
.post__autor__c{ font-family:var(--f-mono); font-size:.68rem; letter-spacing:.1em; color:#0B8FB0; margin-top:.2rem; text-transform:uppercase; }
.post__autor__b{ margin-top:.65rem; font-size:.96rem; line-height:1.62; color:#3E4757; }
.post__autor__b a{ color:#0B8FB0; text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(11,143,176,.45); }

/* Bloque CTA RIIA */
.post__cta{ position:relative; padding-block:clamp(3.5rem,8vw,6rem); overflow:hidden; isolation:isolate; }
.post__cta::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(55% 70% at 50% 100%, rgba(34,205,240,.14), transparent 70%);
}
.post__cta__box{
  position:relative; max-width:880px; margin-inline:auto; text-align:center; overflow:hidden;
  padding:clamp(2.4rem,6vw,4rem) clamp(1.4rem,4vw,3rem); border-radius:26px;
  background:linear-gradient(140deg, var(--graphite) 0%, var(--ink-2) 55%, #0B0F1D 100%);
  box-shadow:inset 0 0 0 1px var(--line-2), 0 50px 100px -50px rgba(0,0,0,.9);
}
.post__cta__box::before{
  content:""; position:absolute; inset:-1px; pointer-events:none; border-radius:inherit; padding:1px;
  background:linear-gradient(120deg, rgba(34,205,240,.6), rgba(139,92,246,.35) 50%, rgba(230,61,208,.45));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
          mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:.55;
}
.post__cta__box::after{
  content:""; position:absolute; left:50%; top:-30%; width:60%; aspect-ratio:1; transform:translateX(-50%); pointer-events:none;
  background:radial-gradient(circle, rgba(34,205,240,.22), transparent 62%); filter:blur(10px);
}
.post__cta__box > *{ position:relative; z-index:1; }
.post__cta__t{ font-size:clamp(1.6rem,3.4vw,2.5rem); letter-spacing:-.033em; line-height:1.08; }
.post__cta__t em{ font-style:normal; background:linear-gradient(96deg, var(--cyan), var(--blue) 50%, var(--violet)); -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent; }
.post__cta__p{ margin:1.1rem auto 0; max-width:52ch; color:var(--soft); font-weight:300; font-size:clamp(1rem,1.3vw,1.1rem); line-height:1.62; }
.post__cta .btn{ margin-top:1.8rem; }

/* Seguir leyendo */
.post__mas{ padding-block:0 clamp(3.5rem,8vw,6rem); }
.post__mas__k{ margin-bottom:1.3rem; }

/* Red de seguridad: pase lo que pase con main.js, a los 3,6 s todo es visible */
.js.reveal-todo [data-reveal]{ opacity:1; transform:none; }

/* Página de blog: nada de scroll horizontal por las tarjetas anchas */
.blog main{ overflow-x:clip; }
