:root{
  --black:#0A0A0A;
  --charcoal:#1A1A1A;
  --steel:#262626;
  --orange:#FF7A00;
  --orange-deep:#E55F00;
  --orange-glow:#FF9A3D;
  --white:#FFFFFF;
  --bone:#EDEAE3;
  --mute:#8C8C8C;
  --line:#2B2B2B;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--black);
  color:var(--white);
  font-family:'Inter',sans-serif;
  font-size:16px;
  line-height:1.65;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
h1,h2,h3,h4{font-family:'Anton',sans-serif;font-weight:400;letter-spacing:0.01em;text-transform:uppercase;}
a{color:inherit}
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem;}
section{padding:6rem 0;position:relative;}
@media(max-width:700px){section{padding:4rem 0;}}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.1rem 1.5rem;
  background:rgba(10,10,10,0.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, background .3s;
}
nav.scrolled{border-bottom-color:var(--line);background:rgba(10,10,10,0.97);}
.logo{font-family:'Anton',sans-serif;font-size:1.5rem;letter-spacing:0.04em;text-decoration:none;display:flex;align-items:baseline;gap:0.3rem;}
.logo .f1{color:var(--white);}
.logo .f2{color:var(--orange);}
.nav-links{display:flex;gap:2.2rem;list-style:none;}
.nav-links a{
  font-size:13px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;
  text-decoration:none;color:var(--bone);position:relative;padding-bottom:4px;
  transition:color .25s;
}
.nav-links a::after{
  content:'';position:absolute;left:0;bottom:0;height:2px;width:0;
  background:var(--orange);transition:width .25s;
}
.nav-links a:hover{color:var(--orange);}
.nav-links a:hover::after{width:100%;}
.nav-cta{
  background:var(--orange);color:var(--black);
  padding:0.6rem 1.4rem;border-radius:2px;
  font-size:13px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;
  text-decoration:none;transition:background .2s, transform .2s;
}
.nav-cta:hover{background:var(--orange-glow);transform:translateY(-1px);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:0.4rem;}
.burger span{width:24px;height:2px;background:var(--white);}
@media(max-width:880px){
  .nav-links{display:none;}
  .nav-cta{display:none;}
  .burger{display:flex;}
}

/* mobile menu */
.mobile-menu{
  position:fixed;inset:0;background:var(--black);z-index:199;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.2rem;
  transform:translateY(-100%);transition:transform .35s cubic-bezier(.16,1,.3,1);
}
.mobile-menu.open{transform:translateY(0);}
.mobile-menu a{font-family:'Anton',sans-serif;font-size:2rem;text-decoration:none;color:var(--white);text-transform:uppercase;}
.mobile-menu a:hover{color:var(--orange);}
.mobile-close{position:absolute;top:1.3rem;right:1.5rem;background:none;border:none;color:var(--white);font-size:2rem;cursor:pointer;line-height:1;}

/* ── HERO ── */
.hero{
  min-height:100vh;
  display:flex;align-items:flex-end;
  position:relative;
  padding:0;
}
.hero-bg{
  position:absolute;inset:0;
  background-image:linear-gradient(180deg, rgba(10,10,10,0.35) 0%, rgba(10,10,10,0.55) 55%, var(--black) 100%), url('https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=1800&q=80');
  background-size:cover;background-position:center 25%;
}
.hero-content{
  position:relative;z-index:2;
  width:100%;
  padding:0 1.5rem 5rem;
  max-width:1200px;margin:0 auto;
}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:0.5rem;
  font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--orange);margin-bottom:1.2rem;
}
.hero-eyebrow::before{content:'';width:28px;height:2px;background:var(--orange);}
.hero h1{
  font-size:clamp(3.2rem, 11vw, 8.5rem);
  line-height:0.92;
  color:var(--white);
  margin-bottom:1.3rem;
}
.hero h1 span{color:var(--orange);}
.hero-sub{
  font-family:'Anton',sans-serif;
  font-size:clamp(1.1rem,2.4vw,1.6rem);
  text-transform:none;
  color:var(--bone);
  max-width:640px;
  margin-bottom:1.2rem;
  letter-spacing:0;
}
.hero-text{
  max-width:520px;color:var(--mute);font-size:1rem;margin-bottom:2.4rem;
}
.btn-primary{
  display:inline-block;background:var(--orange);color:var(--black);
  padding:1rem 2.4rem;font-weight:800;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;
  text-decoration:none;border-radius:2px;transition:background .2s, transform .2s;
}
.btn-primary:hover{background:var(--orange-glow);transform:translateY(-2px);}
.btn-outline{
  display:inline-block;border:1.5px solid var(--bone);color:var(--white);
  padding:1rem 2.4rem;font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;
  text-decoration:none;border-radius:2px;transition:border-color .2s, color .2s, transform .2s;
}
.btn-outline:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px);}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;}
.scroll-cue{
  position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:0.5rem;
  z-index:2;color:var(--mute);font-size:11px;letter-spacing:0.15em;text-transform:uppercase;
}
.scroll-cue .line{width:1px;height:36px;background:linear-gradient(var(--orange), transparent);animation:scrollpulse 1.8s ease-in-out infinite;}
@keyframes scrollpulse{0%{opacity:0.2;}50%{opacity:1;}100%{opacity:0.2;}}

/* ── SECTION HEADER ── */
.sec-head{margin-bottom:3rem;max-width:680px;}
.sec-eyebrow{
  display:inline-flex;align-items:center;gap:0.5rem;
  font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--orange);margin-bottom:0.9rem;
}
.sec-eyebrow::before{content:'';width:28px;height:2px;background:var(--orange);}
.sec-title{font-size:clamp(2.4rem,5.5vw,4rem);line-height:0.98;margin-bottom:0.8rem;}
.sec-sub{color:var(--mute);font-size:1.05rem;max-width:540px;}

/* ── AD SLOTS ── */
.ad-wrap{padding:2rem 1.5rem;max-width:1200px;margin:0 auto;text-align:center;}
.ad-label{font-size:10px;letter-spacing:0.15em;text-transform:uppercase;color:#444;margin-bottom:0.5rem;}

/* ── TABS ── */
.tabs{display:flex;gap:0.6rem;flex-wrap:wrap;margin-bottom:2.8rem;}
.tab-btn{
  display:flex;align-items:center;gap:0.5rem;
  padding:0.65rem 1.3rem;border-radius:2px;
  border:1px solid var(--line);background:transparent;color:var(--mute);
  font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;
  cursor:pointer;transition:all .25s;
}
.tab-btn:hover{border-color:var(--orange);color:var(--white);}
.tab-btn.active{background:var(--orange);border-color:var(--orange);color:var(--black);}
.tab-panel{display:none;}
.tab-panel.active{display:block;animation:fadeIn .4s ease;}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}

.cat-banner{
  display:flex;align-items:center;gap:1.5rem;
  background:var(--charcoal);border:1px solid var(--line);border-radius:4px;
  padding:1.5rem 1.8rem;margin-bottom:1.8rem;
  overflow:hidden;position:relative;
}
.cat-banner img{width:100px;height:100px;object-fit:cover;border-radius:3px;flex-shrink:0;}
.cat-banner h3{font-size:1.6rem;color:var(--white);margin-bottom:0.3rem;}
.cat-banner p{color:var(--mute);font-size:14px;}

.workout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.1rem;}
.workout-card{
  background:var(--charcoal);border:1px solid var(--line);border-radius:4px;
  overflow:hidden;transition:transform .25s, border-color .25s;
  display:flex;flex-direction:column;
}
.workout-card:hover{transform:translateY(-5px);border-color:var(--orange);}
.workout-img{width:100%;height:150px;object-fit:cover;}
.workout-body{padding:1.1rem 1.2rem 1.3rem;flex:1;display:flex;flex-direction:column;}
.workout-num{font-family:'Anton',sans-serif;font-size:0.75rem;color:var(--orange);letter-spacing:0.1em;margin-bottom:0.4rem;}
.workout-body h4{font-family:'Inter',sans-serif;text-transform:none;font-size:0.98rem;font-weight:700;color:var(--white);letter-spacing:0;line-height:1.3;}

/* ── ACORDEÓN WORKOUT ── */
.workout-card{cursor:pointer;}
.workout-toggle{
  margin-top:0.7rem;display:flex;align-items:center;gap:0.4rem;
  font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--orange);
}
.workout-toggle .arrow{transition:transform .3s;font-size:10px;}
.workout-card.open .workout-toggle .arrow{transform:rotate(180deg);}
.workout-detail{
  max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1);
}
.workout-card.open .workout-detail{max-height:900px;}
.workout-detail-inner{padding-top:0.9rem;margin-top:0.9rem;border-top:1px solid var(--line);}
.wd-stats{display:flex;gap:0.6rem;flex-wrap:wrap;margin-bottom:0.8rem;}
.wd-stat{background:var(--steel);border-radius:3px;padding:0.35rem 0.7rem;font-size:11px;color:var(--bone);display:flex;align-items:center;gap:0.3rem;}
.wd-stat b{color:var(--orange);}
.wd-block{margin-bottom:0.8rem;}
.wd-block:last-child{margin-bottom:0;}
.wd-block h5{font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:0.06em;font-size:10.5px;color:var(--mute);margin-bottom:0.35rem;}
.wd-block p, .wd-block li{font-size:13px;color:var(--bone);line-height:1.55;}
.wd-block ul{padding-left:1.1rem;}
.wd-block li{margin-bottom:0.25rem;}
.wd-tip{
  background:rgba(255,122,0,0.08);border-left:3px solid var(--orange);
  padding:0.6rem 0.8rem;border-radius:0 3px 3px 0;font-size:13px;color:var(--bone);
}
.wd-tip b{color:var(--orange);}

/* ── RECETAS ── */
.recipe-subhead{
  display:flex;align-items:center;gap:0.8rem;margin:3rem 0 1.4rem;
}
.recipe-subhead:first-of-type{margin-top:0;}
.recipe-subhead h3{font-size:1.3rem;color:var(--orange);}
.recipe-subhead .rule{flex:1;height:1px;background:var(--line);}
.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.2rem;}
.recipe-card{
  background:var(--charcoal);border:1px solid var(--line);border-radius:4px;
  overflow:hidden;transition:transform .25s, border-color .25s;
}
.recipe-card:hover{transform:translateY(-5px);border-color:var(--orange);}
.recipe-img{width:100%;height:160px;object-fit:cover;}
.recipe-body{padding:1.1rem 1.2rem 1.3rem;}
.recipe-body h4{font-family:'Inter',sans-serif;text-transform:none;letter-spacing:0;font-size:1rem;font-weight:700;color:var(--white);margin-bottom:0.7rem;}
.macros{display:grid;grid-template-columns:repeat(4,1fr);gap:0.4rem;}
.macro-pill{text-align:center;background:var(--steel);border-radius:3px;padding:0.4rem 0.2rem;}
.macro-pill .val{display:block;font-family:'Anton',sans-serif;font-size:0.95rem;color:var(--orange);}
.macro-pill .lbl{display:block;font-size:9px;color:var(--mute);text-transform:uppercase;letter-spacing:0.04em;margin-top:1px;}

/* ── ACORDEÓN RECETA ── */
.recipe-card{cursor:pointer;}
.recipe-toggle{
  margin-top:0.8rem;display:flex;align-items:center;gap:0.4rem;
  font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--orange);
}
.recipe-toggle .arrow{transition:transform .3s;font-size:10px;}
.recipe-card.open .recipe-toggle .arrow{transform:rotate(180deg);}
.recipe-detail{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1);}
.recipe-card.open .recipe-detail{max-height:1000px;}
.recipe-detail-inner{padding-top:0.9rem;margin-top:0.9rem;border-top:1px solid var(--line);}
.rd-block{margin-bottom:0.8rem;}
.rd-block:last-child{margin-bottom:0;}
.rd-block h5{font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:0.06em;font-size:10.5px;color:var(--mute);margin-bottom:0.4rem;}
.rd-block ul{padding-left:1.1rem;}
.rd-block li{font-size:13px;color:var(--bone);margin-bottom:0.3rem;line-height:1.5;}
.rd-block ol{padding-left:1.2rem;}
.rd-block ol li{font-size:13px;color:var(--bone);margin-bottom:0.5rem;line-height:1.55;}
.rd-time{font-size:11px;color:var(--mute);margin-bottom:0.6rem;display:flex;gap:1rem;flex-wrap:wrap;}
.rd-time b{color:var(--orange);}

/* ── MOTIVACIÓN ── */
.quote-hero{
  position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;
  text-align:center;overflow:hidden;margin-bottom:1.2rem;
}
.quote-hero-bg{
  position:absolute;inset:0;
  background-image:linear-gradient(180deg, rgba(10,10,10,0.5), rgba(10,10,10,0.75)), url('https://images.unsplash.com/photo-1571019613454-1cb2f99b2d8b?auto=format&fit=crop&w=1800&q=75');
  background-size:cover;background-position:center;
}
.quote-hero blockquote{
  position:relative;z-index:1;font-family:'Anton',sans-serif;
  font-size:clamp(1.8rem,5vw,3.6rem);line-height:1.05;max-width:900px;
  padding:0 1.5rem;color:var(--white);text-transform:uppercase;
}
.quote-hero blockquote span{color:var(--orange);}

.quote-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem;}
.quote-card{
  position:relative;min-height:280px;border-radius:4px;overflow:hidden;
  display:flex;align-items:flex-end;padding:1.6rem;
  background-size:cover;background-position:center;
  transition:transform .3s;
}
.quote-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(10,10,10,0.15) 0%, rgba(10,10,10,0.9) 100%);
}
.quote-card:hover{transform:scale(1.02);}
.quote-card p{
  position:relative;z-index:1;font-family:'Anton',sans-serif;
  font-size:1.2rem;line-height:1.2;color:var(--white);text-transform:uppercase;
}
.quote-card .qmark{position:relative;z-index:1;color:var(--orange);font-size:2.5rem;font-family:'Anton',sans-serif;line-height:0.5;margin-bottom:0.6rem;display:block;}

/* ── FOOTER ── */
footer{
  background:var(--black);border-top:1px solid var(--line);
  padding:3rem 1.5rem 2rem;text-align:center;
}
footer .logo{justify-content:center;font-size:1.7rem;margin-bottom:0.8rem;}
footer .tagline{color:var(--mute);font-size:0.95rem;font-style:italic;margin-bottom:1.5rem;}
footer .copy{color:#444;font-size:12px;letter-spacing:0.04em;}

/* ── BLOG SPECIFIC ── */
.blog-hero{padding:9rem 0 3rem;text-align:center;}
.blog-hero h1{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:0.8rem;}
.blog-hero p{color:var(--mute);max-width:600px;margin:0 auto;}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.6rem;padding:2rem 0 5rem;}
.blog-card{
  background:var(--charcoal);border:1px solid var(--line);border-radius:6px;overflow:hidden;
  text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .25s,border-color .25s;
}
.blog-card:hover{transform:translateY(-4px);border-color:var(--orange);}
.blog-card img{width:100%;height:200px;object-fit:cover;}
.blog-card-body{padding:1.4rem;display:flex;flex-direction:column;gap:0.6rem;flex:1;}
.blog-card-tag{font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--orange);font-weight:700;}
.blog-card h3{font-size:1.2rem;line-height:1.2;}
.blog-card p{color:var(--mute);font-size:14px;line-height:1.6;flex:1;}
.blog-card-meta{font-size:12px;color:var(--mute);}

.article-wrap{max-width:760px;margin:0 auto;padding:9rem 1.5rem 4rem;}
.article-eyebrow{color:var(--orange);font-size:13px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;}
.article-wrap h1{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(2rem,5vw,3rem);line-height:1.05;margin:0.8rem 0 1rem;}
.article-meta{color:var(--mute);font-size:13px;margin-bottom:2rem;}
.article-cover{width:100%;border-radius:6px;margin-bottom:2.2rem;}
.article-body{font-size:17px;line-height:1.8;color:var(--bone);}
.article-body h2{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:1.6rem;color:var(--white);margin:2.4rem 0 1rem;letter-spacing:0.01em;}
.article-body h3{font-family:'Inter',sans-serif;font-weight:700;font-size:1.15rem;color:var(--white);margin:1.8rem 0 0.8rem;}
.article-body p{margin-bottom:1.2rem;}
.article-body ul, .article-body ol{margin:0 0 1.2rem 1.3rem;}
.article-body li{margin-bottom:0.5rem;}
.article-body a{color:var(--orange);text-decoration:underline;}
.article-body blockquote{
  border-left:3px solid var(--orange);padding:0.4rem 0 0.4rem 1.2rem;margin:1.6rem 0;
  font-style:italic;color:var(--white);font-size:1.05rem;
}
.article-cta{
  background:var(--charcoal);border:1px solid var(--line);border-radius:6px;
  padding:1.6rem;margin:2.2rem 0;text-align:center;
}
.article-cta a{display:inline-block;margin-top:0.8rem;}
.related-posts{max-width:760px;margin:3rem auto 0;padding:2rem 1.5rem 0;border-top:1px solid var(--line);}
.related-posts h4{font-size:13px;letter-spacing:0.08em;text-transform:uppercase;color:var(--mute);margin-bottom:1.2rem;}
.related-links{display:flex;flex-direction:column;gap:0.6rem;}
.related-links a{color:var(--white);text-decoration:none;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:0.6rem;}
.related-links a:hover{color:var(--orange);}

/* ── BANNER DE ARTÍCULO (sustituye a foto de portada) ── */
.article-banner{
  width:100%;border-radius:6px;margin-bottom:2.2rem;overflow:hidden;position:relative;
  display:flex;align-items:center;justify-content:center;min-height:220px;
}
.article-banner::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(255,122,0,0.22),transparent 65%);}
.article-banner-emoji{font-size:5rem;line-height:1;position:relative;z-index:1;filter:drop-shadow(0 6px 14px rgba(0,0,0,0.45));}

/* ── TABLA DE RUTINA SEMANAL ── */
.week-table{width:100%;border-collapse:collapse;margin:1.6rem 0;font-size:14px;}
.week-table th{
  background:var(--charcoal);color:var(--orange);text-align:left;padding:0.7rem 0.9rem;
  font-size:11px;letter-spacing:0.06em;text-transform:uppercase;border-bottom:1px solid var(--line);
}
.week-table td{padding:0.8rem 0.9rem;border-bottom:1px solid var(--line);color:var(--bone);vertical-align:top;}
.week-table tr:last-child td{border-bottom:none;}
.week-table td.day-cell{color:var(--white);font-weight:700;white-space:nowrap;}
.week-table td.rest-cell{color:var(--mute);font-style:italic;}

/* ── TARJETAS DE COMPARACIÓN (2 columnas) ── */
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.6rem 0;}
.compare-card{background:var(--charcoal);border:1px solid var(--line);border-radius:6px;padding:1.3rem;}
.compare-card h4{color:var(--orange);font-size:14px;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:0.8rem;}
.compare-card ul{margin:0;padding-left:1.1rem;}
.compare-card li{font-size:14px;color:var(--bone);margin-bottom:0.5rem;line-height:1.5;}
@media(max-width:600px){.compare-grid{grid-template-columns:1fr;}}

/* ── GRID DE TARJETAS ICONO + STAT (principios, pasos) ── */
.icon-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:1.6rem 0;}
.icon-stat-card{background:var(--charcoal);border:1px solid var(--line);border-radius:6px;padding:1.2rem;text-align:center;}
.icon-stat-card .ic-emoji{font-size:2.2rem;display:block;margin-bottom:0.5rem;}
.icon-stat-card .ic-title{font-weight:700;color:var(--white);font-size:13px;margin-bottom:0.3rem;}
.icon-stat-card .ic-desc{font-size:12px;color:var(--mute);line-height:1.4;}

/* ── PIRÁMIDE DE PRIORIDADES ── */
.priority-pyramid{display:flex;flex-direction:column;gap:0.5rem;margin:1.8rem 0;}
.pyramid-row{
  background:linear-gradient(90deg,var(--orange),#cc5e00);color:var(--black);
  padding:0.9rem 1.2rem;border-radius:4px;font-weight:700;font-size:14px;
  display:flex;justify-content:space-between;align-items:center;
}
.pyramid-row span.pr-rank{font-family:'Anton',sans-serif;font-size:1.2rem;margin-right:0.8rem;}
.pyramid-row:nth-child(1){width:100%;}
.pyramid-row:nth-child(2){width:90%;align-self:center;opacity:0.92;}
.pyramid-row:nth-child(3){width:80%;align-self:center;opacity:0.84;}
.pyramid-row:nth-child(4){width:70%;align-self:center;opacity:0.76;}
.pyramid-row:nth-child(5){width:60%;align-self:center;opacity:0.68;}
@media(max-width:600px){.pyramid-row, .pyramid-row:nth-child(2), .pyramid-row:nth-child(3), .pyramid-row:nth-child(4), .pyramid-row:nth-child(5){width:100%;}}

/* ── BADGE DE STATS RÁPIDOS (kcal, tiempo, nivel) ── */
.stat-badges{display:flex;gap:1.2rem;flex-wrap:wrap;margin:1.4rem 0;padding:1rem 1.2rem;background:var(--charcoal);border:1px solid var(--line);border-radius:6px;}
.stat-badges .sb-item{font-size:13px;color:var(--bone);}
.stat-badges .sb-item b{color:var(--orange);display:block;font-size:1.3rem;font-family:'Anton',sans-serif;}

/* ── BLOQUES DE FASE/SEMANA PARA PLANES ── */
.plan-phase{margin:2.2rem 0;}
.plan-phase-head{display:flex;align-items:center;gap:0.9rem;margin-bottom:0.9rem;flex-wrap:wrap;}
.plan-phase-num{background:var(--orange);color:var(--black);font-family:'Anton',sans-serif;font-size:1rem;padding:0.35rem 0.9rem;border-radius:3px;white-space:nowrap;}
.plan-phase-title{font-weight:700;color:var(--white);font-size:1.05rem;}
.plan-phase-focus{color:var(--mute);font-size:13px;width:100%;margin-top:-0.4rem;}

/* ── RESUMEN DE STATS DEL PLAN (cabecera) ── */
.plan-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0.9rem;margin:1.6rem 0 2rem;}
.plan-overview-item{background:var(--charcoal);border:1px solid var(--line);border-radius:6px;padding:1.1rem 0.9rem;text-align:center;}
.plan-overview-item .po-val{font-family:'Anton',sans-serif;font-size:1.6rem;color:var(--orange);display:block;line-height:1.1;}
.plan-overview-item .po-lbl{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:0.05em;margin-top:0.3rem;display:block;}

/* ── ICONOS VISUALES (sustituyen a imagen) ── */
.icon-visual{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.icon-visual::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(255,122,0,0.18),transparent 65%);}
.icon-visual-emoji{font-size:3rem;line-height:1;position:relative;z-index:1;filter:drop-shadow(0 4px 10px rgba(0,0,0,0.4));}

/* ── BIBLIOTECA DE EJERCICIOS ── */
.muscle-tags{display:flex;flex-wrap:wrap;gap:0.35rem;margin-top:0.5rem;}
.muscle-tag{
  background:var(--steel);color:var(--bone);font-size:10.5px;font-weight:600;
  padding:0.25rem 0.55rem;border-radius:20px;letter-spacing:0.02em;
}
.ex-search-row{display:flex;gap:0.8rem;flex-wrap:wrap;margin-bottom:2rem;}
.ex-search-row input{
  flex:1 1 280px;background:var(--charcoal);border:1px solid var(--line);border-radius:3px;
  color:var(--white);padding:0.8rem 1rem;font-family:'Inter',sans-serif;font-size:15px;outline:none;transition:border-color .2s;
}
.ex-search-row input:focus{border-color:var(--orange);}
.ex-count-badge{font-size:13px;color:var(--mute);margin-bottom:1.5rem;}
.ex-count-badge b{color:var(--orange);}
.ex-no-results{color:var(--mute);font-size:14px;padding:2rem 0;text-align:center;}
