/* Identidad de movimiento Fénix (skill motion-design de LottieFiles).
   Personalidad: calmada y "premium": muchas alumnas tienen sensibilización central, así que nada brusco.
   - Curva única: cubic-bezier(0.4, 0, 0.2, 1) · Duraciones: 180 / 500 / 900 ms · Entrada: subir 20 px + aparecer
   - Escalonado de 60 ms con tope de 5 elementos (≤ 300 ms en total) · Sin rebotes
   - Con "reducir movimiento" activado en el dispositivo, no se anima nada. */
:root{--fx-ease:cubic-bezier(0.4,0,0.2,1);--fx-quick:180ms;--fx-std:500ms;--fx-slow:900ms;--fx-rise:20px;--fx-step:60ms}
.fx-reveal{opacity:0;transform:translateY(var(--fx-rise))}
.fx-reveal.is-in{opacity:1;transform:none;transition:opacity var(--fx-std) var(--fx-ease),transform var(--fx-std) var(--fx-ease);transition-delay:calc(min(var(--i,0),5) * var(--fx-step))}
/* Capa secundaria: la imagen se asienta 100 ms después de la tarjeta */
.fx-reveal .fx-media img{transform:scale(1.04);transition:transform var(--fx-slow) var(--fx-ease)}
.fx-reveal.is-in .fx-media img{transform:none;transition-delay:calc(min(var(--i,0),5) * var(--fx-step) + 100ms)}
/* Capa ambiental: brillo suave mientras carga */
.fx-skeleton{background:linear-gradient(100deg,#efe9dc 30%,#f8f4ea 50%,#efe9dc 70%);background-size:300% 100%;animation:fx-shimmer 1.6s ease-in-out infinite}
@keyframes fx-shimmer{from{background-position:100% 0}to{background-position:0 0}}
@media (prefers-reduced-motion: reduce){
  .fx-reveal,.fx-reveal.is-in,.fx-reveal .fx-media img{opacity:1;transform:none;transition:none}
  .fx-skeleton{animation:none}
  .fx-card{transition:none!important}
}

/* Bloque de artículos del blog */
.fx-blog{background:#f9f7f0;padding:72px 20px}
.fx-wrap{max-width:1140px;margin:0 auto}
.fx-eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#e06600;margin:0 0 10px}
.fx-blog h2{font-size:clamp(1.7rem,3.6vw,2.4rem);line-height:1.2;margin:0 0 14px;color:#141414}
.fx-lead{max-width:680px;color:#5c574c;font-size:1.08rem;line-height:1.65;margin:0 0 36px}
.fx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.fx-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.fx-grid{grid-template-columns:1fr}}
.fx-card{display:flex;flex-direction:column;background:#fff;border:1.5px solid #e7e0cf;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;
  transition:transform var(--fx-quick) var(--fx-ease),box-shadow var(--fx-quick) var(--fx-ease),opacity var(--fx-std) var(--fx-ease)}
.fx-card:hover,.fx-card:focus-visible{transform:translateY(-4px);box-shadow:0 16px 36px -18px rgba(0,0,0,.35)}
.fx-media{aspect-ratio:16/9;overflow:hidden;background:#f1ecdd}
.fx-media img{width:100%;height:100%;object-fit:cover;display:block}
.fx-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.fx-date{font-size:.8rem;color:#8a8577;letter-spacing:.04em}
.fx-title{font-size:1.08rem;font-weight:700;line-height:1.35;color:#141414;margin:0}
.fx-excerpt{font-size:.95rem;line-height:1.55;color:#5c574c;margin:0;flex:1}
.fx-cta{font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e06600}
.fx-cta::after{content:" →";display:inline-block;transition:transform var(--fx-quick) var(--fx-ease)}
.fx-card:hover .fx-cta::after{transform:translateX(4px)}
.fx-sk-card{border-radius:18px;height:340px}
.fx-more{text-align:center;margin:36px 0 0}
.fx-more a{display:inline-block;border:1.5px solid #141414;color:#141414;font-weight:700;padding:12px 26px;border-radius:999px;text-decoration:none}
.fx-msg{grid-column:1/-1;text-align:center;color:#5c574c}

/* Página de artículo */
.fx-post{max-width:760px;margin:0 auto;padding:56px 20px 24px}
.fx-back{display:inline-block;font-size:.9rem;font-weight:700;color:#e06600;text-decoration:none;margin-bottom:18px}
.fx-post-title{font-size:clamp(1.8rem,4.4vw,2.7rem);line-height:1.18;color:#141414;margin:0 0 14px}
.fx-post-meta{color:#8a8577;font-size:.95rem;margin:0 0 28px}
.fx-post-meta a{color:inherit;font-weight:700}
.fx-post-cover{margin:0 0 36px;border-radius:18px;overflow:hidden;background:#f1ecdd}
.fx-post-cover img{width:100%;height:auto;display:block}
.fx-prose{font-size:1.125rem;line-height:1.75;color:#2b2925}
.fx-prose p{margin:0 0 1.1em}
.fx-prose h2{font-size:1.55rem;line-height:1.3;color:#141414;margin:1.8em 0 .6em}
.fx-prose h3,.fx-prose h4{font-size:1.25rem;line-height:1.35;color:#141414;margin:1.5em 0 .5em}
.fx-prose a{color:#e06600;text-decoration:underline;text-underline-offset:3px}
.fx-prose ul,.fx-prose ol{margin:0 0 1.2em;padding-left:1.4em}
.fx-prose li{margin:.3em 0}
.fx-prose blockquote{margin:1.5em 0;padding:.4em 0 .4em 1.2em;border-left:4px solid #e06600;color:#5c574c}
.fx-prose figure{margin:2em auto;text-align:center}
.fx-prose img{max-width:100%;height:auto;border-radius:14px}
.fx-prose figcaption{font-size:.9rem;color:#8a8577;margin-top:8px}
.fx-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:1.6em 0}
.fx-prose a.fx-btn{display:inline-block;background:#e06600;color:#fff;text-decoration:none;font-weight:700;font-size:1rem;padding:13px 24px;border-radius:999px;text-align:center;
  transition:transform var(--fx-quick) var(--fx-ease),background-color var(--fx-quick) var(--fx-ease)}
.fx-prose a.fx-btn:hover,.fx-prose a.fx-btn:focus-visible{transform:translateY(-2px);background:#c45800}
.fx-post-orig{margin:40px 0 0;padding-top:20px;border-top:1px solid #e7e0cf;color:#8a8577;font-size:.95rem}
.fx-post-orig a{color:inherit}
.fx-post-sk .fx-skeleton{border-radius:12px}
.fx-related{padding-top:56px}
@media (prefers-reduced-motion: reduce){.fx-prose a.fx-btn{transition:none}}
.fx-prose img.fx-round{border-radius:50%}
.fx-prose img.emoji{border-radius:0;display:inline;width:1em;height:1em;vertical-align:-.1em}

/* Artículos propios del blog */
.fx-callout{margin:0 0 2em;padding:20px 24px;background:#fff7ee;border:1.5px solid #ffd7b0;border-left:5px solid #ff7300;border-radius:14px}
.fx-callout p{margin:0!important;font-size:1.05rem}
.fx-prose ul{padding-left:1.2em}
.fx-prose h3{font-size:1.15rem}
.fx-prose .fx-note{font-size:.95rem;color:#8a8577;margin-top:2em}
.fx-ctabox{margin:48px 0 0;padding:32px 28px;background:#141414;color:#f9f7f0;border-radius:20px;text-align:center}
.fx-ctabox h2{color:#f9f7f0;font-size:1.5rem;margin:0 0 10px}
.fx-ctabox p{color:#cfc8b8;margin:0 0 22px;line-height:1.6}
.fx-ctabox .fx-btn{display:inline-block;background:#ff7300;color:#141414;font-weight:700;text-decoration:none;padding:14px 26px;border-radius:999px;transition:transform var(--fx-quick) var(--fx-ease),background-color var(--fx-quick) var(--fx-ease)}
.fx-ctabox .fx-btn:hover,.fx-ctabox .fx-btn:focus-visible{transform:translateY(-2px);background:#ff8a2a}
@media (prefers-reduced-motion: reduce){.fx-ctabox .fx-btn{transition:none}}

/* Botones de los artículos (mismos colores que los originales) */
.fx-prose a.fx-btn--green{background:#1f9d55}.fx-prose a.fx-btn--green:hover,.fx-prose a.fx-btn--green:focus-visible{background:#17803f}
.fx-prose a.fx-btn--black{background:#141414}.fx-prose a.fx-btn--black:hover,.fx-prose a.fx-btn--black:focus-visible{background:#333}
.fx-prose a.fx-btn--purple{background:#7c3aed}.fx-prose a.fx-btn--purple:hover,.fx-prose a.fx-btn--purple:focus-visible{background:#6429c4}
.fx-prose a.fx-btn--blue{background:#0284c7}.fx-prose a.fx-btn--blue:hover,.fx-prose a.fx-btn--blue:focus-visible{background:#026aa2}
.fx-prose a.fx-btn{text-decoration:none}

/* Texto de los artículos justificado (con guiones automáticos para evitar huecos grandes en pantallas estrechas) */
.fx-prose p,.fx-prose li,.fx-prose blockquote{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.fx-prose .fx-buttons,.fx-prose figcaption{text-align:center}

/* Títulos de los artículos: más gruesos y con marca naranja */
.fx-prose h2,.fx-prose h3,.fx-prose h4{font-weight:700;color:#0f0f0f}
.fx-prose h2{font-size:clamp(1.45rem,2.6vw,1.8rem);line-height:1.25;margin:2.1em 0 .7em;padding-left:14px;border-left:5px solid #ff7300;scroll-margin-top:90px}
.fx-prose h3{font-size:1.25rem;margin:1.8em 0 .6em;scroll-margin-top:90px}

/* Progreso de lectura */
.fx-toc,.fx-topbar,.fx-pill,.fx-sheet{display:none;font-family:'Cabin',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
.fx-toc-pct{margin:0 0 14px;font-size:.85rem;color:#8a8577;letter-spacing:.04em}
.fx-toc-pct strong{font-size:1.5rem;color:#141414;letter-spacing:0;margin-right:2px}
.fx-toc ol,.fx-sheet ol{list-style:none;margin:0;padding:0}
.fx-toc li a,.fx-sheet li a{display:block;color:#8a8577;text-decoration:none;font-size:.85rem;line-height:1.35;padding:7px 0 7px 18px;position:relative;transition:color var(--fx-quick) var(--fx-ease)}
.fx-toc li a::before,.fx-sheet li a::before{content:"";position:absolute;left:0;top:13px;width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid #d8d0bd;box-sizing:border-box;transition:background-color var(--fx-quick) var(--fx-ease),border-color var(--fx-quick) var(--fx-ease)}
.fx-toc li.is-done a,.fx-sheet li.is-done a{color:#5c574c}
.fx-toc li.is-done a::before,.fx-sheet li.is-done a::before{background:#ff7300;border-color:#ff7300}
.fx-toc li.is-current a,.fx-sheet li.is-current a{color:#141414;font-weight:700}
.fx-toc li.is-current a::before,.fx-sheet li.is-current a::before{border-color:#ff7300;box-shadow:0 0 0 4px rgba(255,115,0,.18)}
.fx-toc li a:hover,.fx-toc li a:focus-visible,.fx-sheet li a:hover{color:#e06600}
/* raíl (escritorio ancho): ocupa el margen izquierdo, separado del borde y del texto; crece con la pantalla */
@media (min-width:1360px){
  .fx-toc{--space:calc((100vw - 720px) / 2);--w:clamp(220px,calc(var(--space) - 110px),380px);
    display:block;position:fixed;top:50%;left:max(36px,calc(var(--space) - var(--w) - 62px));width:var(--w);max-height:80vh;overflow:auto;transform:translateY(-50%);z-index:50;opacity:0;pointer-events:none;transition:opacity var(--fx-std) var(--fx-ease);padding:4px 6px 4px 0}
  .fx-reading .fx-toc{opacity:1;pointer-events:auto}
  .fx-toc .fx-toc-pct{font-size:1rem;margin-bottom:18px}
  .fx-toc .fx-toc-pct strong{font-size:2.3rem;line-height:1;font-weight:700}
  .fx-toc li a{font-size:1.02rem;line-height:1.4;padding:9px 0 9px 28px}
  .fx-toc li a::before{width:12px;height:12px;top:15px;left:0}
  .fx-toc-list{position:relative}
  .fx-toc-line{display:block;position:absolute;left:5px;top:20px;bottom:20px;width:2px;background:#e7e0cf;border-radius:2px}
  .fx-toc-line i{display:block;width:100%;height:0;background:#ff7300;border-radius:2px;transition:height 180ms var(--fx-ease)}
  .fx-toc li a::before{z-index:1}
}
/* barra superior + botón con índice (móvil y tablet) */
@media (max-width:1359px){
  .fx-topbar{display:block;position:fixed;top:0;left:0;right:0;height:4px;background:rgba(0,0,0,.06);z-index:99990;opacity:0;transition:opacity var(--fx-std) var(--fx-ease)}
  .fx-topbar i{display:block;height:100%;width:0;background:#ff7300}
  .fx-pill{display:block;position:fixed;left:14px;bottom:18px;z-index:99990;background:#141414;color:#f9f7f0;border:0;border-radius:999px;padding:10px 16px;font-size:.85rem;cursor:pointer;box-shadow:0 8px 24px -10px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity var(--fx-std) var(--fx-ease)}
  .fx-pill strong{font-size:1rem;margin-right:2px}
  .fx-reading .fx-topbar,.fx-reading .fx-pill{opacity:1}
  .fx-reading .fx-pill{pointer-events:auto}
  .fx-sheet{display:block;position:fixed;left:12px;right:12px;bottom:70px;max-height:60vh;overflow:auto;background:#fff;border:1.5px solid #e7e0cf;border-radius:18px;padding:16px 18px;z-index:99991;box-shadow:0 24px 50px -20px rgba(0,0,0,.45)}
  .fx-sheet[hidden]{display:none}
}
@media (prefers-reduced-motion: reduce){.fx-toc,.fx-topbar,.fx-pill,.fx-toc li a,.fx-toc li a::before,.fx-toc-line i{transition:none}}
/* El tema de la web estiliza todos los <button>; aquí manda el diseño del botón de progreso */
button.fx-pill{background:#141414!important;color:#f9f7f0!important;letter-spacing:0!important;text-transform:none!important;font-weight:400!important;line-height:1.2!important;min-height:0;border:0!important}
button.fx-pill strong{font-weight:700;color:#f9f7f0;margin-right:3px}
