:root{color-scheme:light}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#faf9f5;color:#141413}img{max-width:100%}
/* ============ HOME v2 additions ============ */
.block.authority-strip{padding:6px 0 42px;}
.astat-row{display:flex; gap:40px; flex-wrap:wrap; align-items:baseline; margin-top:10px;}
.astat{display:flex; align-items:baseline; gap:8px;}
.astat .num{font-family:'Space Grotesk'; font-weight:700; font-size:22px; color:var(--fares-glow);}
.astat .lbl{font-size:12px; color:var(--text-muted);}
@media (max-width:640px){.astat-row{gap:20px;}}

.carousel{display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; padding:28px 40px 12px; scrollbar-width:none; -webkit-overflow-scrolling:touch;}
.carousel::-webkit-scrollbar{display:none;}
.cslide{scroll-snap-align:start; flex:0 0 auto; width:320px; border-radius:16px; overflow:hidden; position:relative; aspect-ratio:3/2; border:1px solid var(--fares-glass-border); transition:transform .3s ease;}
.cslide img{width:100%; height:100%; object-fit:cover; display:block;}
.cslide::after{content:""; position:absolute; bottom:0; left:0; width:100%; height:100%; background:linear-gradient(to top, rgba(14,14,17,.7) 0%, transparent 45%); pointer-events:none; z-index:1;}
.cslide:hover{transform:translateY(-6px);}
.cslide .cap{position:absolute; left:0; right:0; bottom:0; z-index:2; padding:14px; background:linear-gradient(0deg, rgba(0,0,0,.78), transparent); font-size:12px; font-weight:600; color:#fff; font-family:'Space Grotesk';}
@media (max-width:640px){.carousel{padding-left:20px; padding-right:20px;}}

.block.light{background:#FBF8FC; color:#241a29;}

/* ============ Transición redonda oscuro -> claro (Inicio: exp-section -> stats) ============ */
.exp-section + .block.light{position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding-top:calc(clamp(72px,9vw,120px) + 48px);}
@media (max-width:768px){.exp-section + .block.light{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(72px,9vw,120px) + 28px);}}
.block.light h2, .block.light h3, .block.light h4{color:#241a29;}
.block.light .eyebrow{color:var(--fares-purple);}
.block.light .lede{color:#5b5462;}
.block.light .quote-block{color:#241a29; border-left-color:var(--fares-purple);}
.block.light .quote-block cite{color:#8a8290;}
.block.light .rci .c{background:#fff; border:1px solid rgba(128,0,176,.15); border-top:3px solid var(--fares-purple); box-shadow:0 4px 18px rgba(128,0,176,.06);}
.block.light .rci .c h4{color:#241a29;}
.block.light .rci .c p{color:#5b5462;}
.block.light .profile-statement{background:linear-gradient(135deg, rgba(128,0,176,.10), rgba(128,0,176,.03)); border:1px solid rgba(128,0,176,.18);}
.block.light .profile-statement p{color:#241a29;}
.block.light .profile-statement p b{color:var(--fares-purple);}
.block.light .rating-badge .n{color:var(--fares-purple);}
.block.light .rating-badge .c{color:#5b5462;}
.block.light .tcard{background:#fff; border:1px solid rgba(128,0,176,.15); box-shadow:0 4px 14px rgba(128,0,176,.05);}
.block.light .tcard p{color:#3a3340;}
.block.light .tcard .who{color:#8a8290;}

.progrid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:32px;}
@media (max-width:1000px){.progrid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.progrid{grid-template-columns:1fr;}}
.progcard{position:relative; border-radius:20px 20px 20px 48px; overflow:hidden; aspect-ratio:3/4; border:1px solid var(--fares-glass-border); transition:transform .25s ease;}
.progcard:hover{transform:translateY(-4px);}
.progcard img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;}
.progcard::before{content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.92) 0%, rgba(14,14,17,.45) 50%, rgba(14,14,17,.10) 100%); z-index:1;}
.progcard .pc-content{position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:20px 18px;}
.progcard .pc-eyebrow{display:flex; align-items:center; gap:7px; font-size:10.5px; letter-spacing:2px; text-transform:uppercase; font-weight:700; color:#fff;}
.progcard .pc-eyebrow .dot{width:7px; height:7px; border-radius:50%; flex-shrink:0;}
.progcard h4{font-size:20px; margin-top:8px; color:#fff; line-height:1.2; font-family:'Space Grotesk';}
.block.light .progcard h4{color:#fff;}
.progcard .pc-slogan{font-style:normal; font-size:13px; color:#e4e0e8; margin-top:6px; line-height:1.5;}
.progcard ul{list-style:none; margin:10px 0 0; padding:0; font-size:11.5px; color:#d8d3dd;}
.progcard ul li{padding:2px 0;}
.progcard a.link{color:#fff; border-bottom-color:#fff; margin-top:12px; font-size:11.5px; display:inline-block;}

.cta-final{position:relative; background:#0E0E11; overflow:hidden;}
.block.cta-final{padding-top:clamp(80px,10vw,140px); padding-bottom:clamp(80px,10vw,140px);}
.cta-final .wrap{position:relative; z-index:2;}
.cta-final h2{font-size:clamp(28px,4.5vw,44px); max-width:720px; margin-left:auto; margin-right:auto;}
.cta-final .btn-espectro{
  background-color:#17171B;
  background-image:linear-gradient(#17171B,#17171B), linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
  background-origin:border-box;
  background-clip:padding-box, border-box;
  border-radius:999px;
  padding:14px 36px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:500;
  font-size:16px;
  color:#F8F8F8;
  border:1.5px solid transparent;
  box-shadow:0 8px 28px -6px rgba(180,77,255,.45), 0 12px 24px -8px rgba(230,120,50,.30), 0 12px 24px -4px rgba(60,220,140,.22);
  transition:box-shadow 250ms ease, transform 250ms ease;
}
.cta-final .btn-espectro::before, .cta-final .btn-espectro::after{content:none;}
.cta-final .btn-espectro:hover{
  box-shadow:0 8px 28px -6px rgba(180,77,255,.61), 0 12px 24px -8px rgba(230,120,50,.41), 0 12px 24px -4px rgba(60,220,140,.30);
  transform:translateY(-2px);
}

/* ============ Transición redonda claro -> oscuro (Inicio: testimonios -> cta-final) ============ */
#page-inicio .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-inicio .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}

.reveal{overflow:hidden;}
.reveal > *{transform:translateY(18px); transition:transform .6s ease;}
.reveal.in-view > *{transform:translateY(0);}
@media (prefers-reduced-motion: reduce){.reveal > *{transform:none; transition:none;}}

/* ============ HOME v3 additions ============ */
.navleft{display:flex; align-items:center; gap:40px;}

.astat .lbl{color:#e9e6ec !important;}

.logostrip{overflow:hidden; margin-top:24px; -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);}
.logotrack{display:flex; gap:56px; align-items:center; width:max-content; animation:scrollRight 26s linear infinite;}
.logotrack img{height:24px; width:auto; object-fit:contain; opacity:.8; filter:brightness(0) invert(1); transition:opacity .2s;}
.logotrack img:hover{opacity:1;}
.logostrip:hover .logotrack{animation-play-state:paused;}
@keyframes scrollLeft{from{transform:translateX(0);} to{transform:translateX(-50%);}}
@keyframes scrollRight{from{transform:translateX(-50%);} to{transform:translateX(0);}}

.block.exp-section{padding-top:0;}
.exp-title{font-family:'Inter'; font-weight:400; font-size:13px; line-height:1.5; color:var(--text-muted); max-width:420px; margin:16px auto 0;}
@media (max-width:640px){.exprow.row2{display:none;} .exprow.row1{margin-bottom:0;}}
.expwrap{overflow:hidden; padding:12px 0 8px; -webkit-mask-image:linear-gradient(to right, transparent 0%, black 12.5%, black 87.5%, transparent 100%); mask-image:linear-gradient(to right, transparent 0%, black 12.5%, black 87.5%, transparent 100%);}
.exprow{display:flex; gap:16px; width:max-content;}
.exprow.row1{animation:scrollLeft 46s linear infinite; margin-bottom:16px;}
.exprow.row2{animation:scrollRight 40s linear infinite;}
.exprow:hover{animation-play-state:paused;}
@media (prefers-reduced-motion: reduce){.logotrack, .exprow{animation:none;}}
@media (max-width:640px){.navleft{gap:22px;}}

/* ============ Promesa de marca additions ============ */
.pillars{display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; margin-top:26px;}
.pillar{display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600;}
.pillar .dot{width:9px; height:9px; border-radius:50%; flex-shrink:0;}
.video-frame{border-radius:16px; overflow:hidden; border:1px solid var(--fares-glass-border); aspect-ratio:9/16; background:#000; width:100%;}
@media (min-width:901px){.video-frame{max-height:480px;}}
.video-frame video{width:100%; height:100%; object-fit:cover; object-position:center 28%; display:block;}
@media (max-width:900px){.video-frame{margin-top:24px;}}
.block.light .stat{background:#fff; border-color:rgba(128,0,176,.15); box-shadow:0 4px 18px rgba(128,0,176,.06);}
.block.light .stat .lbl{color:#5b5462;}

/* ============ Promesa de marca -> tarjeta unica estilo 30X ============ */
.method-card{background:#fff; border-radius:24px; padding:44px 40px; border:1px solid rgba(128,0,176,.10); box-shadow:0 20px 50px rgba(80,40,110,.08);}
@media (max-width:640px){.method-card{padding:28px 22px; border-radius:18px;}}

/* ============ "Mente de Rey, corazón de siervo" — card, título, pilares, botón, video ============ */
.method-card:has(.promo-split){
  background:#FFFFFF;
  box-shadow:0 2px 4px rgba(128,0,176,.04), 0 8px 24px rgba(128,0,176,.08), 0 32px 64px rgba(128,0,176,.06);
  border-radius:28px;
  border:1px solid rgba(128,0,176,.08);
}
@media (max-width:768px){.method-card:has(.promo-split){border-radius:20px; padding:28px 22px;}}

.promo-split h2{font-size:clamp(32px,4.5vw,52px); font-weight:700; line-height:1.15; color:#1A1A1E;}

.promo-split .pillars .dot{width:8px; height:8px; border-radius:50%;}
.promo-split .pillars .pillar:nth-child(1) .dot{box-shadow:0 0 8px 2px rgba(128,0,176,.5);}
.promo-split .pillars .pillar:nth-child(2) .dot{box-shadow:0 0 8px 2px rgba(180,77,255,.5);}
.promo-split .pillars .pillar:nth-child(3) .dot{box-shadow:0 0 8px 2px rgba(230,120,50,.5);}
.promo-split .pillars .pillar:nth-child(4) .dot{box-shadow:0 0 8px 2px rgba(50,130,180,.5);}
.promo-split .pillars .pillar:nth-child(5) .dot{box-shadow:0 0 8px 2px rgba(60,220,140,.5);}
.promo-split .pillars .pillar:nth-child(6) .dot{box-shadow:0 0 8px 2px rgba(50,170,170,.5);}
.promo-split .pillars .pillar{font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(14px,1.6vw,16px); color:#2D2D35;}
@media (max-width:768px){
  .promo-split .pillars .pillar:nth-child(1) .dot{box-shadow:0 0 4px 1px rgba(128,0,176,.35);}
  .promo-split .pillars .pillar:nth-child(2) .dot{box-shadow:0 0 4px 1px rgba(180,77,255,.35);}
  .promo-split .pillars .pillar:nth-child(3) .dot{box-shadow:0 0 4px 1px rgba(230,120,50,.35);}
  .promo-split .pillars .pillar:nth-child(4) .dot{box-shadow:0 0 4px 1px rgba(50,130,180,.35);}
  .promo-split .pillars .pillar:nth-child(5) .dot{box-shadow:0 0 4px 1px rgba(60,220,140,.35);}
  .promo-split .pillars .pillar:nth-child(6) .dot{box-shadow:0 0 4px 1px rgba(50,170,170,.35);}
}

.promo-split .aurora{
  background:linear-gradient(135deg,#8000B0 0%,#9B00D4 100%);
  border-radius:999px;
  padding:14px 28px !important;
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:15px !important;
  box-shadow:0 8px 24px rgba(128,0,176,.35);
  transition:transform 200ms ease, box-shadow 200ms ease;
}
.promo-split .aurora:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 32px rgba(128,0,176,.45);
}

.promo-split .video-frame{border-radius:20px 20px 20px 40px; overflow:hidden; border:none; outline:none; box-shadow:none;}
@media (max-width:768px){.promo-split .video-frame{border-radius:20px 20px 20px 40px;}}
.stats-plain{display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:40px;}
.block.light .stats-plain .stat{background:none; box-shadow:none; border-radius:0; border:none; padding:0 24px;}
.stats-plain .stat:first-child{padding-left:0;}
.stats-plain .stat:last-child{padding-right:0;}
.stats-plain .stat:not(:last-child){border-right:1px solid rgba(128,0,176,.12);}
.stats-plain .stat::before{content:""; display:block; width:48px; border-top:2px solid rgba(128,0,176,.20); margin-bottom:12px;}
.stats-plain{text-align:left;} .stats-plain .num{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(36px,5vw,56px); color:#8000B0; letter-spacing:-.01em; line-height:1;}
.stats-plain .lbl{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:#6B6B7A; margin-top:10px; line-height:1.4;}
@media (max-width:768px){.stats-plain .num{font-size:28px;}}

.sub-statement{font-family:'Space Grotesk'; font-weight:500; font-size:19px; color:#4a4152; margin-top:14px; line-height:1.4; max-width:520px;}

/* ============ Programas: 2x2 estilo 30X, seccion clara ============ */
.progrid2{display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:32px;}
@media (max-width:800px){.progrid2{grid-template-columns:1fr;} .progrid2 .progcard{aspect-ratio:auto !important; min-height:420px; width:100% !important;}}
.progrid2 .progcard{aspect-ratio:4/3; border:1px solid rgba(128,0,176,.12); box-shadow:0 14px 34px rgba(80,40,110,.08);}

/* ============ Testimonios estilo Carmona (rating glow + tarjetas con borde degradado) ============ */
.rating-badge2{position:relative; display:flex; flex-direction:column; align-items:center; gap:5px; width:fit-content; margin:28px auto 0; text-align:center; padding:10px 40px;}
.rating-badge2::before{content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(55% 120%, rgba(128,0,176,.12) 0%, transparent 68%);}
.rb-number{font-family:'Space Grotesk'; font-weight:700; font-size:42px; background:linear-gradient(135deg,var(--fares-purple),var(--fares-glow) 60%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.rb-stars{font-size:21px; letter-spacing:.15em; background:linear-gradient(90deg,var(--fares-orange),#c99a00); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.rb-count{font-size:13.5px; color:#5b5462;}
.testimonios-grid{display:grid; grid-template-columns:1fr; gap:26px; margin-top:48px;}
@media (min-width:860px){.testimonios-grid{grid-template-columns:repeat(3,1fr);}}
.testimonio-card{border:1px solid transparent; border-radius:20px; padding:32px 26px 26px; text-align:left; background-image:linear-gradient(#fff,#fff), linear-gradient(135deg, rgba(230,120,50,.38), rgba(128,0,176,.48), rgba(50,170,170,.32)); background-origin:border-box; background-clip:padding-box, border-box; box-shadow:0 10px 30px rgba(80,40,110,.07); transition:transform .3s, box-shadow .3s;}
.testimonio-card:hover{transform:translateY(-5px); box-shadow:0 14px 40px rgba(128,0,176,.16);}
.testimonio-mark{display:block; font-family:'Space Grotesk'; font-size:60px; line-height:1; margin-bottom:2px; background:linear-gradient(135deg,var(--fares-purple),var(--fares-glow)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.testimonio-text{font-style:italic; font-size:15px; color:#3a3340; line-height:1.6;}
.testimonio-cite{display:block; margin-top:19px; font-style:normal; font-size:12.8px; color:#8a8290;}

/* ============ v17 additions ============ */
.method-card h2 .hl{color:var(--fares-purple);}

.btn-ghost-light{background:transparent; color:var(--fares-purple); font-weight:600; font-size:13.5px; padding:11px 22px; border-radius:22px; border:1.5px solid rgba(128,0,176,.35); text-decoration:none; display:inline-block; transition:background .2s, border-color .2s;}
.btn-ghost-light:hover{background:rgba(128,0,176,.06); border-color:var(--fares-purple);}

.progcard .pc-btn{align-self:flex-start; margin-top:14px; display:inline-block; padding:10px 24px; border:1px solid rgba(255,255,255,.25); border-radius:999px; background:rgba(255,255,255,.08); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); color:#F8F8F8; font-family:'Inter'; font-size:14px; font-weight:500; text-decoration:none; transition:background 250ms, border-color 250ms, box-shadow 250ms;}
.progcard .pc-btn:hover{background:rgba(255,255,255,.15); border-color:rgba(180,77,255,.6); box-shadow:0 0 18px rgba(180,77,255,.30);}
.pc-badge-new{position:absolute; top:14px; right:14px; z-index:3; background:linear-gradient(135deg,var(--fares-purple),var(--fares-glow)); color:#fff; font-size:9.5px; font-weight:700; letter-spacing:.4px; text-transform:uppercase; padding:5px 10px; border-radius:20px; box-shadow:0 2px 10px rgba(128,0,176,.4);}
.progcard--r12{box-shadow:0 0 0 2px var(--fares-glow), 0 14px 34px rgba(80,40,110,.08);}
.pc-eyebrow--r12{display:flex; align-items:center; gap:7px;}
.progcard .pc-r12-logo{position:static; inset:auto; width:auto; height:16px; object-fit:unset; z-index:auto; display:inline-block;}

.testimonio-person{display:flex; align-items:center; gap:12px; margin-top:19px;}
.testimonio-avatar{width:40px; height:40px; border-radius:50%; object-fit:cover; flex-shrink:0; display:block;}
.testimonio-name{font-size:13px; font-weight:700; color:#241a29;}
.testimonio-person .testimonio-cite{margin-top:2px; display:block;}


@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/space-grotesk.woff2) format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/inter.woff2) format('woff2');}

:root{
  --fares-bg:#0E0E11;
  --fares-surface:#17171B;
  --fares-elevated:#202024;
  --fares-white:#F8F8F8;
  --fares-purple:#8000B0;
  --fares-glow:#B44DFF;
  --fares-orange:#E67832;
  --fares-red:#DC3228;
  --fares-cyan:#32AAAA;
  --fares-blue:#3282B4;
  --fares-green:#3CDC8C;
  --fares-glass:rgba(255,255,255,.05);
  --fares-glass-border:rgba(255,255,255,.12);
  --fares-glow-shadow:0 0 24px rgba(180,77,255,.55);
  --text-muted:#a8a3ad;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; font-family:'Inter',sans-serif; background:var(--fares-bg); color:var(--fares-white); overflow-x:hidden;}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif; font-weight:700; text-wrap:balance; margin:0; letter-spacing:-.01em;}
p{margin:0;}
a{color:inherit;}
img{max-width:100%; display:block;}
button{font-family:inherit; cursor:pointer;}
:focus-visible{outline:2px solid var(--fares-glow); outline-offset:3px;}

.eyebrow{font-family:'Inter'; font-size:11px; letter-spacing:2.5px; text-transform:uppercase; font-weight:600; color:var(--fares-glow);}
.badge-tag{display:inline-block; font-size:9.5px; font-weight:700; letter-spacing:.5px; padding:2px 7px; border-radius:6px; margin-left:6px; vertical-align:middle;}
.badge-adn{background:rgba(128,0,176,.22); color:#d199e8;}
.badge-nuevo{background:rgba(60,220,140,.18); color:#6be3a8;}

/* ============ NAV — glass ============ */
nav.topnav{position:sticky; top:0; z-index:100; background:rgba(14,14,17,.95); border-bottom:none; display:flex; align-items:center; justify-content:space-between; padding:16px 40px; transition:background 300ms ease, backdrop-filter 300ms ease;}
nav.topnav::after{content:''; position:absolute; bottom:0; left:0; right:0; height:1.5px; background:linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C); opacity:1; pointer-events:none;}
nav.topnav.navbar--scrolled{background:rgba(14,14,17,.97); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border-bottom:none;}
#programas{scroll-margin-top:80px;}
nav.topnav .brand{display:flex; align-items:center; gap:10px; cursor:pointer;}
nav.topnav .brand img{height:clamp(32px,4vw,44px); width:auto;}
nav.topnav .brand span{font-family:'Space Grotesk'; font-weight:700; font-size:18px; color:var(--fares-white);}
nav.topnav ul{list-style:none; display:flex; gap:22px; margin:0; padding:0;}
nav.topnav ul#navlist{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:1;}
.hamburger{display:none; flex-direction:column; gap:5px; background:none; border:none; padding:8px; cursor:pointer; position:relative; z-index:260;}
.hamburger span{display:block; width:24px; height:2px; background:#fff; border-radius:2px; transition:transform .25s ease, opacity .2s ease;}
.hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger.active span:nth-child(2){opacity:0;}
.hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.navlist-mobile-cta{display:none;}
body.menu-open{overflow:hidden;}
@media (max-width:900px){
  .hamburger{display:flex;}
  nav.topnav .navcta-desktop{display:none;}
  nav.topnav ul#navlist{position:fixed; inset:0; top:0; left:0; width:100%; height:100vh; margin:0; padding:90px 20px 40px; box-sizing:border-box; overflow-y:auto; transform:none; background:var(--fares-bg); flex-direction:column; align-items:center; justify-content:center; gap:26px; display:none; z-index:250;}
  nav.topnav ul#navlist.open{display:flex;}
  nav.topnav ul#navlist li{width:100%; text-align:center;}
  nav.topnav ul#navlist a{font-size:26px; font-weight:600;}
  .has-submenu > a{justify-content:center;}
  .navlist-mobile-cta{display:block; margin-top:10px;}
  .navlist-mobile-cta .btn-espectro{width:auto; display:inline-flex; align-items:center; padding:10px 24px; font-size:14px; margin-top:8px;}
}
nav.topnav ul li a{font-size:12.5px; font-weight:500; color:#cfc9d6; text-decoration:none; padding-bottom:4px; border-bottom:2px solid transparent; transition:color .15s, border-color .15s;}
nav.topnav ul li a:hover{color:#fff;}
nav.topnav ul li a.active{color:#fff; border-bottom-color:var(--fares-glow);}
.aurora{background:linear-gradient(135deg,var(--fares-purple),var(--fares-glow)); color:#fff; font-weight:600; font-size:13px; padding:10px 20px; border-radius:24px; border:none; text-decoration:none; white-space:nowrap; box-shadow:var(--fares-glow-shadow); transition:box-shadow .2s, transform .2s;}
.aurora:hover{box-shadow:0 0 34px rgba(180,77,255,.75); transform:translateY(-1px);}

.wrap{max-width:1160px; margin-inline:auto; padding-inline:clamp(20px,5vw,48px);}

.hero{position:relative; padding:130px 0 44px; margin-bottom:clamp(32px,5vw,56px); overflow:hidden; text-align:center;}
.hero::after{content:""; position:absolute; left:0; right:0; bottom:0; height:160px; background:linear-gradient(180deg, transparent, var(--fares-bg)); pointer-events:none; z-index:1;}
.hero .wrap{position:relative; z-index:2; max-width:760px; margin:0 auto;}
.hero h1{font-size:clamp(2.3rem,7vw,4.2rem); line-height:1.08; margin-top:16px;}
.hero h1 .accent{color:var(--fares-glow); text-shadow:0 0 28px rgba(180,77,255,.5);}
.hero .sub{font-family:'Space Grotesk'; font-weight:400; font-size:clamp(1.1rem,2.4vw,1.5rem); color:var(--dark-text-soft, rgba(248,248,248,.62)); margin-top:16px; max-width:600px; margin-left:auto; margin-right:auto; line-height:1.5;}
.hero .ctas{display:flex; gap:14px; margin-top:32px; flex-wrap:wrap; justify-content:center;}

.orb-field{position:absolute; inset:0; overflow:hidden; z-index:0; pointer-events:none;}
.orb{position:absolute; border-radius:50%; animation:orb-breathe 8s ease-in-out infinite;}
.orb--purple{background:radial-gradient(circle, rgba(128,0,176,.38) 0%, rgba(128,0,176,0) 68%); width:70vw; height:70vw; top:-30vw; right:-22vw; animation-duration:10s; animation-delay:-3s;}
.orb--teal{background:radial-gradient(circle, rgba(120,150,155,.15) 0%, rgba(120,150,155,0) 68%); width:45vw; height:45vw; bottom:-24vw; left:-14vw; animation-duration:6s; animation-delay:-1.5s;}
@keyframes orb-breathe{0%,100%{opacity:.55; transform:scale(1);} 50%{opacity:.9; transform:scale(1.08);}}
@media (prefers-reduced-motion: reduce){.orb{animation:none;}}

.hero-mariposa{position:absolute; right:-60px; top:50%; transform:translateY(-50%); width:520px; height:auto; opacity:.06; pointer-events:none; filter:brightness(0) invert(1); z-index:0; animation:hero-mariposa-float 6s ease-in-out infinite;}
@keyframes hero-mariposa-float{0%,100%{transform:translateY(-50%);} 50%{transform:translateY(calc(-50% - 12px));}}
@media (max-width:768px){.hero-mariposa{width:280px; right:-80px; opacity:.04;}}
@media (prefers-reduced-motion: reduce){.hero-mariposa{animation:none;}}

.btn-espectro{position:relative; display:inline-flex; align-items:center; justify-content:center; padding:15px 30px; border-radius:14px; border:none; background:rgba(10,8,20,.6); cursor:pointer; font-family:'Space Grotesk'; font-weight:700; font-size:15px; color:#fff; letter-spacing:.02em; text-decoration:none; transition:background .3s;}
.btn-espectro::before{content:""; position:absolute; inset:0; border-radius:14px; padding:1.5px; background:linear-gradient(90deg,#ff6b35,#cc2244,#8000b0,#4d7cff,#00c896); -webkit-mask:linear-gradient(#fff 0 0) content-box exclude, linear-gradient(#fff 0 0); mask:linear-gradient(#fff 0 0) content-box exclude, linear-gradient(#fff 0 0);}
.btn-espectro::after{content:""; position:absolute; bottom:-18px; left:10%; width:80%; height:18px; background:linear-gradient(90deg,#ff6b35,#cc2244,#8000b0,#4d7cff,#00c896); filter:blur(12px); opacity:.55; border-radius:50%; z-index:-1; transition:opacity .3s;}
.btn-espectro:hover{background:rgba(128,0,176,.15);}
.btn-espectro:hover::after{opacity:.8;}

.hero__trust-gold{color:#E8C766; font-weight:600;}
.btn-ghost{background:transparent; color:#fff; font-weight:600; font-size:14px; padding:13px 26px; border-radius:24px; border:1.5px solid var(--fares-glass-border); text-decoration:none; display:inline-block; transition:border-color .2s, background .2s;}
.btn-ghost:hover{border-color:var(--fares-glow); background:var(--fares-glass);}
.hero .trust{margin-top:28px; font-size:12.5px; color:var(--text-muted); display:flex; gap:8px; align-items:center; justify-content:center; flex-wrap:wrap;}
.hero .trust b{color:#fff;}

.inner-hero{position:relative; padding:70px 0 50px; overflow:hidden; border-bottom:1px solid var(--fares-glass-border);}
.inner-hero::before{content:""; position:absolute; top:-200px; left:10%; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle, rgba(180,77,255,.28), transparent 70%); filter:blur(10px);}
.inner-hero .wrap{position:relative; z-index:2;}
.inner-hero h1{font-size:clamp(28px,4vw,40px); margin-top:10px;}
.inner-hero p.sub{font-family:'Inter'; font-size:15px; color:var(--text-muted); margin-top:12px; max-width:640px; line-height:1.6;}

section.block{padding-top:clamp(72px,9vw,120px); padding-bottom:clamp(72px,9vw,120px);}
section.block.alt{background:var(--fares-surface);}
section.block.tight{padding-top:0;}
.block h2{font-size:clamp(24px,3.2vw,32px); color:var(--fares-white); margin-bottom:clamp(32px,5vw,56px);}
.block .lede{color:var(--text-muted); font-size:15px; margin-top:10px; max-width:640px; line-height:1.6;}

.stats{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:32px;}
.stat{background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-radius:16px; padding:22px 20px;}
.stat .num{font-family:'Space Grotesk'; font-weight:700; font-size:28px; color:var(--fares-glow);}
.stat .lbl{font-size:12px; color:var(--text-muted); margin-top:6px; line-height:1.4;}
@media (max-width:900px){.stats{grid-template-columns:1fr 1fr;}}

.grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:32px;}
.grid2{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:32px;}
.grid4{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:32px;}
@media (max-width:900px){.grid3{grid-template-columns:1fr;} .grid2{grid-template-columns:1fr;} .grid4{grid-template-columns:1fr 1fr;}}
.card{background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-radius:16px; padding:24px 22px;}
.card h3{font-size:17px; margin-bottom:9px; font-family:'Space Grotesk'; font-weight:500;}
.card h3 .mini{font-family:'Inter'; font-weight:400; font-style:italic; font-size:12px; color:var(--text-muted); display:block; margin-top:4px;}
.card p{color:var(--text-muted); font-size:13.5px; line-height:1.65;}
.card ul{margin:10px 0 0; padding-left:18px; font-size:13px; color:var(--text-muted); line-height:1.9;}
.card a.link{display:inline-block; margin-top:12px; font-size:12.5px; font-weight:600; color:var(--fares-glow); text-decoration:none; border-bottom:1.5px solid var(--fares-glow);}

/* subject/pillar cards — accent top-bar, 5% rule */
.subjcard{border-radius:14px; padding:20px 18px; background:var(--fares-surface); border:1px solid var(--fares-glass-border); position:relative; overflow:hidden;}
.subjcard::before{content:""; position:absolute; top:0; left:0; width:100%; height:2px;}
.subjcard h4{font-family:'Space Grotesk'; font-weight:600; font-size:15px; margin-bottom:4px; color:#fff;}
.block.light .subjcard h4{color:#fff;}
.subjcard .tagline{font-size:11.5px; font-style:italic; color:var(--text-muted); margin-bottom:10px; display:block;}
.subjcard ul{list-style:none; font-size:12px; color:var(--text-muted); line-height:2; margin:0; padding:0;}
.sc1::before{background:var(--fares-purple);}
.sc2::before{background:var(--fares-cyan);}
.sc3::before{background:var(--fares-orange);}
.sc4::before{background:var(--fares-blue);}
.sc5::before{background:var(--fares-green);}
.sc6::before{background:var(--fares-red);}
.sc7::before{background:var(--fares-purple);}

.rci{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:28px;}
@media (max-width:900px){.rci{grid-template-columns:1fr;}}
.rci .c{border-radius:16px; padding:24px 20px; background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-top:2px solid var(--fares-purple);}
.rci .c h4{font-family:'Space Grotesk'; font-weight:700; font-size:18px; margin-bottom:10px; color:#fff;}
.rci .c p{font-size:13px; color:var(--text-muted); line-height:1.65;}
.profile-statement{margin-top:28px; background:linear-gradient(135deg, rgba(128,0,176,.18), rgba(180,77,255,.08)); border:1px solid rgba(180,77,255,.3); border-radius:18px; padding:28px 26px;}
.profile-statement .eyebrow{color:var(--fares-glow);}
.profile-statement p{font-family:'Space Grotesk'; font-weight:600; font-size:19px; color:#fff; line-height:1.4; margin-top:10px;}
.profile-statement p b{color:var(--fares-glow);}
.closing-line{font-family:'Space Grotesk'; font-weight:500; font-size:19px; color:var(--fares-glow); margin-top:22px;}

.quote-block{border-left:3px solid var(--fares-glow); padding-left:20px; margin:22px 0; font-family:'Space Grotesk'; font-weight:500; font-size:17px; color:var(--fares-white); line-height:1.5;}
.quote-block cite{display:block; font-family:'Inter'; font-style:normal; font-weight:400; font-size:12px; color:var(--text-muted); margin-top:8px;}

.timeline{display:flex; flex-direction:column; gap:0; margin-top:32px;}
.tl-row{display:flex; gap:24px; padding:20px 0; border-bottom:1px solid var(--fares-glass-border);}
.tl-row:first-child{border-top:1px solid var(--fares-glass-border);}
.tl-year{font-family:'Space Grotesk'; font-weight:700; font-size:19px; color:var(--fares-glow); width:110px; flex-shrink:0;}
.tl-txt{font-size:13.5px; color:var(--text-muted); line-height:1.65; padding-top:2px;}
.tl-txt b{color:var(--fares-white);}

.photo-frame{border-radius:16px; overflow:hidden; border:1px solid var(--fares-glass-border);}
.photo-frame img{width:100%; height:100%; object-fit:cover;}
.split{display:grid; grid-template-columns:1.2fr 1fr; gap:32px; align-items:center; margin-top:18px;}
@media (max-width:900px){.split{grid-template-columns:1fr;}}
@media (min-width:901px){.promo-split{grid-template-columns:1fr 1fr;}}

.rating-badge{display:flex; align-items:baseline; gap:10px; margin-top:6px;}
.rating-badge .n{font-family:'Space Grotesk'; font-weight:700; font-size:28px; color:var(--fares-glow);}
.rating-badge .stars{color:var(--fares-orange); font-size:15px;}
.rating-badge .c{font-size:12px; color:var(--text-muted);}
.tgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:26px;}
@media (max-width:900px){.tgrid{grid-template-columns:1fr;}}
.tcard{background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-radius:14px; padding:18px 16px;}
.tcard p{font-size:12.5px; font-style:italic; color:#e4e0e8; line-height:1.6;}
.tcard .who{margin-top:10px; font-size:11px; color:var(--text-muted); font-style:normal; font-weight:600;}

.allies{display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
.allychip{border:1.5px solid var(--fares-glass-border); color:var(--fares-white); background:var(--fares-surface); font-weight:500; font-size:12.5px; padding:9px 16px; border-radius:12px;}
.highlight-line{margin-top:18px; font-size:14px; color:var(--fares-glow); font-weight:600;}

.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:32px;}
@media (max-width:900px){.steps{grid-template-columns:1fr;}}
.step{background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-radius:16px; padding:24px 20px;}
.step .stepnum{font-family:'Space Grotesk'; font-weight:700; font-size:13px; width:32px; height:32px; border-radius:50%; background:var(--fares-purple); box-shadow:var(--fares-glow-shadow); color:#fff; display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.step h4{font-size:17px; margin-bottom:7px; font-family:'Space Grotesk'; font-weight:500;}
.step p{font-size:13px; color:var(--text-muted); line-height:1.6;}

.costwrap{margin-top:28px; border:1px solid var(--fares-glass-border); border-radius:14px; overflow:hidden;}
.costrow{display:grid; grid-template-columns:2fr 1fr 1fr; padding:15px 20px; align-items:center; border-bottom:1px solid var(--fares-glass-border); background:var(--fares-surface);}
.costrow:last-child{border-bottom:none;}
.costrow.head{background:var(--fares-elevated); color:var(--text-muted); font-size:10.5px; text-transform:uppercase; letter-spacing:1px; font-weight:600;}
.costrow .label{font-size:13.5px; font-weight:600; color:#fff;}
.costrow .note{font-size:10.5px; color:var(--text-muted); font-weight:400; margin-top:2px;}
.costrow .v26{font-family:'Space Grotesk'; font-weight:600; font-size:15px; color:var(--text-muted);}
.costrow .v27{font-family:'Space Grotesk'; font-weight:700; font-size:18px; color:var(--fares-glow);}

.formcard{background:var(--fares-surface); border:1px solid var(--fares-glass-border); border-radius:18px; padding:32px; margin-top:8px;}
.formgrid{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:20px;}
@media (max-width:640px){.formgrid{grid-template-columns:1fr;}}
.field{display:flex; flex-direction:column; gap:6px;}
.field.full{grid-column:1 / -1;}
.field label{font-size:11.5px; font-weight:600; color:var(--text-muted);}
.field input, .field select{font-family:'Inter'; font-size:13.5px; padding:11px 13px; border-radius:10px; border:1.5px solid var(--fares-glass-border); background:var(--fares-elevated); color:#fff;}
.field input::placeholder{color:#75707c;}
.field input:focus, .field select:focus{border-color:var(--fares-glow); outline:none;}
.formnote{font-size:11.5px; color:var(--text-muted); margin-top:14px;}
.formstatus{margin-top:14px; font-size:13px; font-weight:600; color:var(--fares-glow); display:none;}
.formstatus.show{display:block;}

.faq details{border-bottom:1px solid var(--fares-glass-border); padding:15px 0;}
.faq summary{font-weight:600; font-size:14px; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; font-family:'Space Grotesk'; font-size:17px; color:var(--fares-glow);}
.faq details[open] summary::after{content:"–";}
.faq p{margin-top:10px; font-size:13px; color:var(--text-muted); line-height:1.6;}

.tabbar{display:flex; gap:10px; margin-top:28px; flex-wrap:wrap;}
.tabbtn{background:var(--fares-surface); border:1.5px solid var(--fares-glass-border); color:#fff; font-weight:600; font-size:12.5px; padding:9px 18px; border-radius:20px;}
.tabbtn.active{background:var(--fares-purple); border-color:var(--fares-purple); box-shadow:var(--fares-glow-shadow);}
.tabpanel{display:none; margin-top:24px;}
.tabpanel.active{display:block;}
.level-theme{background:linear-gradient(135deg, rgba(128,0,176,.15), transparent); border:1px solid var(--fares-glass-border); border-radius:16px; padding:24px 22px; margin-bottom:24px;}
.level-theme .eyebrow{color:var(--fares-glow);}
.level-theme p{font-size:14px; color:#ddd8e2; line-height:1.7; margin-top:10px;}
.level-theme p b{color:#fff;}

footer{
  background: #0E0E11;
  position: relative;
  overflow: hidden;
}

.footer-inner{
  max-width: 1160px;
  margin-inline: auto;
  padding: clamp(40px,6vw,72px) clamp(20px,5vw,48px) clamp(28px,4vw,48px);
  display: grid;
  grid-template-columns: 1.2fr 1.4fr 1fr;
  gap: clamp(24px,4vw,56px);
  align-items: start;
}

/* ── MARCA ── */
.footer-logo{
  width: clamp(80px,10vw,110px);
  height: auto;
  margin-bottom: 12px;
  display: block;
}
.footer-tagline{
  font-family: 'Inter', sans-serif;
  font-size: clamp(11px,1.2vw,13px);
  color: rgba(248,248,248,.45);
  line-height: 1.6;
  margin: 0 0 16px;
}
.footer-social{
  display: flex;
  gap: 10px;
}
.footer-social-btn{
  width: 34px; height: 34px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  display: flex; align-items: center;
  justify-content: center;
  color: rgba(248,248,248,.55);
  transition: border-color 200ms, color 200ms;
  text-decoration: none;
}
.footer-social-btn:hover{
  border-color: rgba(180,77,255,.45);
  color: #F8F8F8;
}
.footer-social-btn svg{
  width: 15px; height: 15px;
}

/* ── NAV ── */
.footer-nav{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.footer-nav-title{
  font-family: 'Space Grotesk', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(248,248,248,.35);
  margin: 0 0 12px;
}
.footer-nav-list{
  list-style: none;
  padding: 0; margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.footer-nav-list a{
  font-family: 'Inter', sans-serif;
  font-size: clamp(12px,1.3vw,14px);
  color: rgba(248,248,248,.55);
  text-decoration: none;
  transition: color 200ms;
}
.footer-nav-list a:hover{
  color: #F8F8F8;
}

/* ── CONTACTO ── */
.footer-contact-item{
  font-family: 'Inter', sans-serif;
  font-size: clamp(12px,1.3vw,13px);
  color: rgba(248,248,248,.45);
  margin: 0 0 6px;
  line-height: 1.5;
}
/* ── BARRA INFERIOR ── */
.footer-bottom{
  max-width: 1160px;
  margin-inline: auto;
  padding: 14px clamp(20px,5vw,48px) 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-top: 1px solid rgba(255,255,255,.07);
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  color: rgba(248,248,248,.28);
  flex-wrap: wrap;
}

/* ── AURORA ── */
.footer-aurora{
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
}
.footer-aurora::after{
  content: '';
  position: absolute;
  inset: -6px 0 0;
  background: inherit;
  filter: blur(8px);
  opacity: .40;
}

/* ── MÓVIL ── */
@media (max-width:768px){
  .footer-inner{
    grid-template-columns: repeat(3,1fr);
    gap: 28px 14px;
  }
  .footer-brand{
    grid-column: 1 / -1;
  }
  .footer-nav{
    display: contents;
  }
  .footer-nav-col:nth-child(1){
    grid-column: 1;
  }
  .footer-nav-col:nth-child(2){
    grid-column: 2;
  }
  .footer-contact{
    grid-column: 3;
  }
  .footer-contact-item{
    word-break: break-word;
  }
  .footer-wa-number{
    display: block;
  }
}

@media (max-width:480px){
  .footer-bottom{
    flex-direction: column;
    text-align: center;
    gap: 4px;
  }
}
.wa-float{position:fixed; bottom:26px; right:26px; background:#25D366; color:#fff; width:54px; height:54px; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 20px rgba(0,0,0,.4); font-size:24px; text-decoration:none; z-index:200;}

/* ============ Submenu "Programas" en el nav ============ */
.has-submenu{position:relative;}
.has-submenu > a{display:flex; align-items:center; gap:4px;}
.has-submenu .caret{font-size:9px; transition:transform .2s ease;}
.has-submenu:hover .caret, .has-submenu:focus-within .caret{transform:rotate(180deg);}
nav.topnav ul.submenu{position:absolute; top:100%; left:50%; transform:translateX(-50%); z-index:1; flex-direction:column; gap:2px; min-width:190px; background:rgba(20,18,26,.98); border:1px solid var(--fares-glass-border); border-radius:14px; padding:16px 10px 10px; margin-top:0; box-shadow:0 18px 40px rgba(0,0,0,.45); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .15s ease, visibility .15s;}
.has-submenu:hover .submenu, .has-submenu:focus-within .submenu{opacity:1; visibility:visible; pointer-events:auto;}
nav.topnav ul.submenu li{width:100%;}
nav.topnav ul.submenu a{display:block; padding:9px 14px; border-radius:8px; border-bottom:none;}
nav.topnav ul.submenu a:hover{background:rgba(128,0,176,.18); color:#fff;}
@media (max-width:900px){
  nav.topnav ul#navlist .submenu{position:static; opacity:1; visibility:visible; pointer-events:auto; transform:none; box-shadow:none; background:none; border:none; padding:0; margin:16px 0 0; min-width:0; align-items:center; gap:16px;}
  nav.topnav ul#navlist .submenu a{font-size:17px; padding:0; color:#b8b1c2;}
  .has-submenu .caret{display:none;}
}

/* ============ Página Nosotros: hero con foto ============ */
.hero-photo{background-size:cover; background-position:center 28%; padding:170px 0 90px;}
.hero-photo-overlay{position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(14,14,17,.32) 0%, rgba(14,14,17,.68) 60%, var(--fares-bg) 100%);}
.hero-photo .wrap{position:relative; z-index:2;}
@media (max-width:640px){.hero-photo{padding:130px 0 70px;} .hero-photo{background-position:center 20%;}}

/* ============ Página Nosotros: manifiesto (firma) ============ */
.manifiesto-firma{margin-top:32px; padding-top:20px; border-top:1px solid rgba(128,0,176,.15);}
.manifiesto-firma span{display:block; font-family:'Space Grotesk'; font-weight:600; font-size:16px; color:var(--fares-purple);}
.manifiesto-firma small{display:block; margin-top:2px; font-size:12px; color:#8a8290;}

/* ============ Página Nosotros: valores (dentro de method-card, sin fondo propio) ============ */
.values-row{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:36px;}
.value-item{text-align:center;}
.value-icon{margin:0 auto 16px; width:36px; height:36px; display:flex; align-items:center; justify-content:center;}
.block.light .value-item h3{font-family:'Space Grotesk'; font-weight:500; font-size:17px; margin-bottom:8px;}
.block.light .value-item p{color:#5b5462; font-size:13.5px; line-height:1.65; max-width:260px; margin-left:auto; margin-right:auto;}
@media (max-width:900px){.values-row{grid-template-columns:1fr; gap:20px;}}
.value-tag{display:block; font-family:'Inter'; font-weight:600; font-size:10.5px; letter-spacing:.09em; text-transform:uppercase; color:var(--fares-glow); margin-bottom:8px;}
.block.light .value-tag{color:var(--fares-purple);}

/* ============ Página Nosotros: equipo (foto-tile con barra inferior) ============ */
.team-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:32px;}
@media (max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr);}}
.team-photo{aspect-ratio:4/5; border-radius:16px; overflow:hidden; position:relative; display:flex; align-items:flex-end; background:var(--fares-surface);}
.team-photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top;}
.team-avatar-big{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk'; font-weight:700; font-size:40px; color:rgba(255,255,255,.5);}
.team-info{position:relative; z-index:2; width:100%; padding:16px 14px; background:linear-gradient(180deg, transparent, rgba(0,0,0,.78) 85%); text-align:left;}
.team-info h4{font-size:14.5px; color:#fff;}
.block.light .team-info h4{color:#fff;}
.team-info .team-role{display:block; margin-top:2px; font-size:11px; color:rgba(255,255,255,.75);}

/* ============ Páginas de Programa (Preescolar/Primaria/Secundaria/MindsetR12) ============ */
.skill-row{display:grid; grid-template-columns:1fr 1fr; gap:30px 40px; margin-top:36px;}
@media (max-width:700px){.skill-row{grid-template-columns:1fr;}}
.skill-item{display:flex; gap:16px; align-items:flex-start;}
.skill-num{font-family:'Space Grotesk'; font-weight:700; font-size:20px; color:var(--fares-glow); flex-shrink:0; line-height:1.3;}
.skill-item h4{font-size:15.5px; margin-bottom:4px; color:var(--fares-white);}
.skill-item p{font-size:13px; color:var(--text-muted); line-height:1.55; margin:0;}
.block.light .skill-num{color:var(--fares-purple);}
.block.light .skill-item h4{color:#241a29;}
.block.light .skill-item p{color:#5b5462;}

.method-step{background:var(--fares-bg); border-radius:20px; padding:30px 26px; text-align:left;}
.method-step .step-num{font-family:'Space Grotesk'; font-weight:700; font-size:13px; color:var(--fares-glow); letter-spacing:1px;}
.method-step h3{font-family:'Space Grotesk'; font-weight:600; font-size:19px; color:#fff; margin-top:10px;}
.block.light .method-step h3{color:#fff;}
.method-step p{font-size:13.5px; color:rgba(248,248,248,.68); line-height:1.6; margin-top:8px;}

.gal-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:32px;}
.gal-grid img{width:100%; height:220px; object-fit:cover; border-radius:14px; display:block;}
@media (max-width:900px){.gal-grid{grid-template-columns:1fr 1fr;} .gal-grid img{height:170px;}}
@media (max-width:520px){.gal-grid{grid-template-columns:1fr;}}

.keyword-row{display:flex; flex-wrap:wrap; gap:14px 30px; justify-content:center; margin-top:30px;}
.keyword-row .pillar{font-size:14.5px;}

/* ============ Plan académico: bloque propio, tonalidad distinta + tarjetas por categoría ============ */
.academic-block{background:#F5F0FA;}
.academic-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:36px;}
.academic-row3{grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
@media (max-width:900px){.academic-grid{grid-template-columns:1fr;} .academic-row3{grid-template-columns:1fr;}}
.block.light .subjcard{background:#fff; border-color:rgba(128,0,176,.10); box-shadow:0 8px 22px rgba(80,40,110,.07);}
.block.light .subjcard::before{display:none;}
.block.light .subjcard h4{color:#241a29;}
.block.light .subjcard .tagline{color:#9c96a3;}
.block.light .subjcard ul{color:#5b5462;}
.subj-icon{width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.sc1 .subj-icon{background:rgba(128,0,176,.10); color:var(--fares-purple);}
.sc2 .subj-icon{background:rgba(50,170,170,.12); color:var(--fares-cyan);}
.sc3 .subj-icon{background:rgba(230,120,50,.12); color:var(--fares-orange);}
.sc4 .subj-icon{background:rgba(50,130,180,.12); color:var(--fares-blue);}
.sc5 .subj-icon{background:rgba(60,220,140,.14); color:#2ba86a;}
.sc6 .subj-icon{background:rgba(180,77,255,.14); color:var(--fares-glow);}
.block.light .badge-adn{background:rgba(128,0,176,.10); color:var(--fares-purple);}
.block.light .badge-nuevo{background:rgba(46,168,110,.14); color:#1f8f5c;}

/* ============ Pedagogía / Learning Experience: tarjetas claras con ícono ============ */
.exp-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:32px;}
.exp-card{background:#fff; border-radius:16px; padding:26px 24px; border:1px solid rgba(128,0,176,.10); box-shadow:0 6px 18px rgba(80,40,110,.06);}
.exp-card .exp-icon{width:34px; height:34px; margin-bottom:14px; display:flex; align-items:center; justify-content:center;}
.exp-card h3{font-family:'Space Grotesk'; font-weight:600; font-size:16px; color:#241a29; margin-bottom:6px;}
.exp-card p{font-size:13px; color:#5b5462; line-height:1.55;}
@media (max-width:900px){.exp-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.exp-grid{grid-template-columns:1fr;}}

/* ============ Renueva / Conecta / Impacta: panel con foto, estilo agenda 30X ============ */
.rci-tabs{display:flex; gap:12px; justify-content:center; margin-top:32px; flex-wrap:wrap;}
.rci-tabbtn{background:#fff; border:1.5px solid rgba(128,0,176,.18); color:#241a29; font-family:'Space Grotesk'; font-weight:600; font-size:13.5px; padding:11px 26px; border-radius:22px; cursor:pointer; box-shadow:0 2px 10px rgba(80,40,110,.06); transition:background .2s, border-color .2s, color .2s;}
.rci-tabbtn.active{background:var(--fares-purple); border-color:var(--fares-purple); color:#fff; box-shadow:var(--fares-glow-shadow);}
.rci-panel{position:relative; border-radius:24px; overflow:hidden; background-size:cover; background-position:center; min-height:340px; display:flex; flex-direction:column; justify-content:flex-end; margin-top:24px;}
.rci-panel::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(14,14,17,.35) 0%, rgba(14,14,17,.75) 45%, rgba(14,14,17,.96) 100%);}
.rci-panel{transition:background-image .35s ease;}
.rci-content{position:relative; z-index:2; padding:32px 32px 34px; max-width:620px; margin-top:0;}
.rci-content .eyebrow{color:#fff;}
.block.light .rci-content .eyebrow{color:#fff;}
.rci-content h3{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(20px,2.6vw,26px); color:#fff; margin-top:10px;}
.block.light .rci-content h3{color:#fff;}
.rci-content p{font-size:14.5px; color:#fff; line-height:1.65; margin-top:10px;}
.block.light .rci-content p{color:#fff;}
@media (max-width:640px){.rci-panel{min-height:auto;} .rci-content{padding:24px 22px 28px;}}

/* ============ Video de programa: zona clara, después de la descripción ============ */
/* Namespace propio (pgvideo-) para no chocar con .video-frame ya usado en "Promesa de marca" del Home */
.pgvideo-frame{border-radius:24px; overflow:hidden; aspect-ratio:16/9; border:1px solid rgba(128,0,176,.14); box-shadow:0 20px 50px rgba(80,40,110,.12); background:var(--fares-bg);}
.pgvideo-frame video{width:100%; height:100%; object-fit:cover; object-position:center 10%; display:block;}

/* ============ Carrusel "así se vive": marquee de doble fila, estilo mentores 30X ============ */
/* Namespace pgmq- para no chocar con .mq-track (gancho JS de duplicación en script.js,
   compartido con .logotrack/.exprow del Home) ni con sus estilos propios. */
.pgmq-wrap{margin-top:36px; display:flex; flex-direction:column; gap:10px; overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent, #000 12.5%, #000 87.5%, transparent); mask-image:linear-gradient(90deg, transparent, #000 12.5%, #000 87.5%, transparent);}
.pgmq-track{display:flex; gap:10px; width:max-content; animation:pgmq-scroll 46s linear infinite;}
.pgmq-track.pgmq-rev{animation-direction:reverse; animation-duration:52s;}
.pgmq-wrap:hover .pgmq-track{animation-play-state:paused;}
@keyframes pgmq-scroll{from{transform:translateX(0);} to{transform:translateX(-50%);}}
.pgmq-card{position:relative; flex:0 0 auto; width:352px; aspect-ratio:352/228; border-radius:14px; overflow:hidden;}
#page-preescolar .pgmq-wrap{overflow-x:hidden; overflow-y:visible; padding-top:12px; padding-bottom:20px;}
#page-preescolar .pgmq-card{transition:transform 300ms ease, box-shadow 300ms ease;}
#page-preescolar .pgmq-card:hover{transform:translateY(-6px) scale(1.02); box-shadow:0 12px 32px rgba(0,0,0,.25);}
.pgmq-card img{width:100%; height:100%; object-fit:cover; display:block;}
.pgmq-card::after{content:""; position:absolute; inset:0; background:linear-gradient(rgba(14,14,17,0) 50%, rgba(14,14,17,.6) 100%);}
.pgmq-cap{position:absolute; left:0; right:0; bottom:0; z-index:2; padding:24px;}
.pgmq-tag{display:block; font-family:'Inter'; font-weight:500; font-size:12px; color:#fff; margin-bottom:2px;}
.pgmq-title{display:block; font-family:'Space Grotesk'; font-weight:500; font-size:20px; color:#fff; line-height:1.25;}
@media (prefers-reduced-motion: reduce){.pgmq-track{animation:none;} .pgmq-wrap{overflow-x:auto;}}

/* ============================================================
   Página Preescolar — acento naranja de nivel (#E67832)
   Todo escopado con #page-preescolar para no tocar Home
   ni las demás páginas de programa, que comparten estas
   mismas clases (.hero-photo, .stats, .value-item, .skill-item,
   .keyword-row .pillar, .cta-final, etc.)
   ============================================================ */

/* Cambio 1 — Hero (rediseño de dos columnas, clases propias pe-hero-* para no
   heredar nada de .hero/.hero-photo/.eyebrow/.stats compartidos con otras páginas) */
.pe-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:clamp(100px,12vw,140px) clamp(20px,5vw,80px) clamp(100px,14vw,160px); background:#0E0E11; overflow:hidden;}
.pe-hero-orbs{position:absolute; inset:0; z-index:0; pointer-events:none;}
.pe-hero-orb{position:absolute; border-radius:50%;}
.pe-hero-orb--purple{width:50vw; height:50vw; top:-10vw; right:-10vw; background:radial-gradient(circle, rgba(128,0,176,.16), transparent 70%);}
.pe-hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:55% 45%; gap:48px; align-items:center;}

.pe-hero-content{text-align:left;}
.pe-hero-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(10px,1.1vw,12px); letter-spacing:.30em; color:#E67832; text-transform:uppercase; margin-bottom:16px;}
.pe-hero-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(36px,5.5vw,68px); line-height:1.08; color:#F8F8F8; margin-bottom:20px;}
.pe-hero-title .pe-hero-accent{color:#E67832;}
.pe-hero-sub{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.65); line-height:1.6; max-width:480px; margin-bottom:36px;}

.pe-hero-chips{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px;}
.pe-hero-chip{display:inline-flex; align-items:center; gap:6px; background:rgba(232,120,50,.10); border:1px solid rgba(232,120,50,.30); border-radius:999px; padding:6px 14px; font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(11px,1.2vw,13px); color:#E67832;}
.pe-hero-chip-dot{width:5px; height:5px; border-radius:50%; background:#E67832; flex-shrink:0;}

.pe-hero-btn{
  display:inline-flex; align-items:center; justify-content:center;
  background-color:#17171B;
  background-image:linear-gradient(#17171B,#17171B), linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
  background-origin:border-box;
  background-clip:padding-box, border-box;
  border-radius:999px;
  padding:14px 28px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:500;
  font-size:15px;
  color:#F8F8F8;
  border:1.5px solid transparent;
  text-decoration:none;
  box-shadow:0 8px 28px -6px rgba(180,77,255,.40), 0 12px 24px -8px rgba(232,120,50,.30), 0 12px 24px -4px rgba(60,220,140,.20);
  transition:box-shadow 250ms ease, transform 250ms ease;
}
.pe-hero-btn:hover{
  box-shadow:0 8px 28px -6px rgba(180,77,255,.52), 0 12px 24px -8px rgba(232,120,50,.39), 0 12px 24px -4px rgba(60,220,140,.26);
  transform:translateY(-2px);
}

.pe-hero-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:40px;}
.pe-hero-stat{border-top:2px solid rgba(232,120,50,.35); padding-top:14px;}
.pe-hero-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,3.5vw,40px); color:#F8F8F8;}
.pe-hero-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(11px,1.2vw,13px); color:rgba(248,248,248,.50); margin-top:6px; line-height:1.4;}

.pe-hero-visual{position:relative; height:clamp(380px,55vw,580px);}
.pe-hero-visual-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
.pe-hero-visual-orb--purple{width:50%; height:50%; bottom:5%; left:5%; background:radial-gradient(circle, rgba(128,0,176,.14) 0%, transparent 65%);}
.pe-hero-photo{width:85%; height:88%; object-fit:cover; border-radius:24px 24px 24px 52px; position:absolute; top:6%; right:0; z-index:1; box-shadow:0 20px 60px rgba(0,0,0,.35);}
.pe-hero-mariposa{position:absolute; bottom:8%; left:2%; width:clamp(60px,8vw,100px); opacity:.18; z-index:0; pointer-events:none; filter:brightness(0) invert(1);}
.pe-hero-badge{position:absolute; top:12%; left:-4%; z-index:3; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; box-shadow:0 8px 24px rgba(0,0,0,.20);}
.pe-hero-badge-dot{width:8px; height:8px; border-radius:50%; background:#E67832; flex-shrink:0;}

@media (max-width:768px){
  .pe-hero{min-height:auto; padding:clamp(100px,12vw,140px) 20px 48px;}
  .pe-hero-grid{max-width:100%; width:100%; grid-template-columns:1fr; gap:32px;}
  .pe-hero-content{min-width:0;}
  .pe-hero-visual{display:none;}
  .pe-hero-chips{flex-wrap:wrap;}
  .pe-hero-badge{display:none;}
  .pe-hero-stats{gap:16px;}
  .pe-hero-stat-num{font-size:24px;}
}

/* Cambio 2 — Video (rediseño de dos columnas: video izq., narrativa der.)
   Clases propias pe-video-* — .pgvideo-frame ya no se usa en esta sección
   (sigue intacta para Primaria/Secundaria/MindsetR12, que sí la usan). */
#page-preescolar .pe-video-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:center;}
@media (max-width:768px){#page-preescolar .pe-video-grid{grid-template-columns:1fr;}}

#page-preescolar .pe-video-col{position:relative;}
#page-preescolar .pe-video-frame{border-radius:20px 20px 20px 48px; overflow:hidden; aspect-ratio:3/4; box-shadow:0 4px 16px rgba(0,0,0,.18), 0 20px 48px rgba(0,0,0,.22), 0 0 60px rgba(128,0,176,.20), 0 8px 32px rgba(128,0,176,.12); border:none; outline:none;}
#page-preescolar .pe-video-frame video{width:100%; height:100%; object-fit:cover; display:block;}
#page-preescolar .pe-video-badge{position:absolute; top:-16px; left:-16px; z-index:2; background:rgba(14,14,17,.85); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(232,120,50,.35); border-radius:12px; padding:10px 16px; display:flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8;}
#page-preescolar .pe-video-badge-dot{width:8px; height:8px; border-radius:50%; background:#E67832; box-shadow:0 0 8px rgba(232,120,50,.6); flex-shrink:0;}
#page-preescolar .pe-video-line{position:absolute; left:-14px; top:20%; height:60%; width:3px; background:#E67832; border-radius:999px; opacity:.6;}
@media (max-width:768px){#page-preescolar .pe-video-badge{display:none;}}

#page-preescolar .pe-video-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.25em; color:#E67832; text-transform:uppercase; margin-bottom:14px;}
#page-preescolar .pe-video-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(26px,3.5vw,40px); line-height:1.15; color:#1A1A1E; margin-bottom:16px !important;}
#page-preescolar .pe-video-p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.5vw,16px); line-height:1.7; color:#4A4A5A; max-width:440px; margin-bottom:28px;}
#page-preescolar .pe-video-stat{position:relative; margin-top:28px; padding-top:16px; border-top:none;}
#page-preescolar .pe-video-stat::before{content:""; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C); border-radius:999px; opacity:.75;}
#page-preescolar .pe-video-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(32px,4vw,44px); color:#E67832;}
#page-preescolar .pe-video-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(12px,1.3vw,14px); color:#6B6B7A; margin-top:4px;}

/* Cambio 3 — Transiciones oscuro<->claro (mismo sistema del Home) */
#page-preescolar section.block.light:has(.pe-video-frame){position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding-top:calc(clamp(72px,9vw,120px) + 48px);}
@media (max-width:768px){#page-preescolar section.block.light:has(.pe-video-frame){border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(72px,9vw,120px) + 28px);}}
#page-preescolar .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-preescolar .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}

/* Ajuste — ritmo de padding entre RCI, "6 razones" y el marquee siguiente */
#page-preescolar section.block.light:has(.rci-editorial){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-preescolar section.block.light:has(.pgmq-wrap){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}

/* "Renueva, Conecta e Impacta" — cabecera (sin cambios de esta iteración) */
#page-preescolar .pe-rci-eyebrow{font-size:clamp(11px,1.2vw,13px); letter-spacing:.28em; color:#E67832; font-weight:600;}
#page-preescolar .pe-rci-heading{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E;}
#page-preescolar .pe-rci-lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.6vw,17px); max-width:560px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px); color:#4A4A5A;}

/* ===== RCI EDITORIAL (global) ===== */
.rci-editorial {
  max-width: 1160px;
  margin-inline: auto;
  padding-inline: clamp(20px,5vw,48px);
}

.rci-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(32px,5vw,72px);
  align-items: center;
  padding: clamp(40px,6vw,72px) 0;
  position: relative;
}

/* Líneas divisorias — color de acento por página */
#page-preescolar .rci-row {
  border-top: 1.5px solid rgba(232,120,50,.35);
}
#page-preescolar .rci-row:last-child {
  border-bottom: 1.5px solid rgba(232,120,50,.35);
}

#page-primaria .rci-row {
  border-top: 1.5px solid rgba(232,120,50,.35);
}
#page-primaria .rci-row:last-child {
  border-bottom: 1.5px solid rgba(232,120,50,.35);
}

#page-secundaria .rci-row {
  border-top: 1.5px solid rgba(232,120,50,.35);
}
#page-secundaria .rci-row:last-child {
  border-bottom: 1.5px solid rgba(232,120,50,.35);
}

#page-mindsetr12 .rci-row {
  border-top: 1.5px solid rgba(60,220,140,.35);
}
#page-mindsetr12 .rci-row:last-child {
  border-bottom: 1.5px solid rgba(60,220,140,.35);
}

/* Eyebrow de color por variante */
.rci-tag {
  display: inline-block;
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.rci-tag--renueva { color: #E67832; }
.rci-tag--conecta { color: #32AAAA; }
.rci-tag--impacta { color: #3CDC8C; }

/* Preescolar — tag del mismo tamaño que Primaria, todos en naranja */
#page-preescolar .rci-tag{font-size:11px;}
#page-preescolar .rci-tag--renueva, #page-preescolar .rci-tag--conecta, #page-preescolar .rci-tag--impacta{color:var(--fares-orange);}

/* Primaria y Secundaria — color uniforme del acento de cada nivel */
#page-primaria .rci-tag--renueva, #page-primaria .rci-tag--conecta, #page-primaria .rci-tag--impacta{color:var(--fares-cyan);}
#page-secundaria .rci-tag--renueva, #page-secundaria .rci-tag--conecta, #page-secundaria .rci-tag--impacta{color:var(--fares-blue);}

/* Título de cada fila */
.rci-row-title {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: clamp(26px,3.8vw,46px);
  color: #1A1A1E;
  line-height: 1.1;
  margin: 0 0 16px;
}

/* Descripción */
.rci-row-desc {
  font-family: 'Inter', sans-serif;
  font-size: clamp(14px,1.6vw,17px);
  color: #5A5A6A;
  line-height: 1.75;
  margin: 0;
  max-width: 440px;
}

/* Contenedor de foto */
.rci-row-photo {
  position: relative;
}

/* Foto con bordes asimétricos — rota por fila */
.rci-photo {
  width: 100%;
  height: clamp(260px,32vw,420px);
  object-fit: cover;
  display: block;
}

.rci-row:nth-child(1) .rci-photo {
  border-radius: 24px 24px 24px 56px;
}
.rci-row:nth-child(2) .rci-photo {
  border-radius: 24px 24px 56px 24px;
}
.rci-row:nth-child(3) .rci-photo {
  border-radius: 24px 56px 24px 24px;
}

/* Hover de la foto */
.rci-photo {
  transition: transform 400ms ease;
}
.rci-row:hover .rci-photo {
  transform: scale(1.02);
}
.rci-row-photo {
  overflow: hidden;
  border-radius: inherit;
}
.rci-row:nth-child(1) .rci-row-photo {
  border-radius: 24px 24px 24px 56px;
}
.rci-row:nth-child(2) .rci-row-photo {
  border-radius: 24px 24px 56px 24px;
}
.rci-row:nth-child(3) .rci-row-photo {
  border-radius: 24px 56px 24px 24px;
}

/* MÓVIL */
@media (max-width: 768px) {
  .rci-editorial {
    padding-inline: clamp(16px,5vw,28px);
  }

  .rci-row {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: clamp(28px,6vw,40px) 0;
  }

  .rci-row-text {
    display: flex;
    flex-direction: column;
    order: 1;
    width: 100%;
  }

  .rci-tag {
    order: 1;
    font-size: 12px;
    margin-bottom: 6px;
    text-align: left;
  }

  .rci-row-title {
    order: 2;
    font-size: clamp(22px,6vw,30px);
    margin-bottom: 10px;
    text-align: left;
  }

  .rci-row-desc {
    order: 3;
    font-size: 14px;
    line-height: 1.65;
    text-align: left;
    max-width: 100%;
    margin-bottom: 20px;
  }

  .rci-row-photo {
    order: 4;
    width: 100%;
    margin: 0;
  }

  .rci-photo {
    height: clamp(200px,52vw,280px);
    width: 100%;
    object-fit: cover;
  }

  /* Todas las fotos con el mismo radio en móvil */
  .rci-row:nth-child(1) .rci-row-photo,
  .rci-row:nth-child(2) .rci-row-photo,
  .rci-row:nth-child(3) .rci-row-photo {
    border-radius: 16px;
  }
  .rci-row:nth-child(1) .rci-photo,
  .rci-row:nth-child(2) .rci-photo,
  .rci-row:nth-child(3) .rci-photo {
    border-radius: 16px;
  }
}

/* Bento grid — reemplaza por completo las 3 cards anteriores. Clases pe-bento-*,
   no tocan .rci-tabs/.rci-panel/.rci-content, que siguen en uso en
   Primaria/Secundaria/MindsetR12. (CSS conservado sin usar; ver limpieza pendiente) */
#page-preescolar .pe-bento-grid{display:grid; grid-template-columns:1fr 1fr 1fr; grid-template-rows:auto auto; gap:16px; max-width:1160px; margin-inline:auto;}
#page-preescolar .pe-bento-cell{min-height:clamp(220px,28vw,320px); border-radius:20px; overflow:hidden; position:relative;}

#page-preescolar .pe-bento-text{display:flex; flex-direction:column; justify-content:space-between;}
#page-preescolar .pe-bento-text > div:first-child{position:relative; z-index:1;}
#page-preescolar .pe-bento-orb{position:absolute; top:-30%; right:-20%; width:70%; height:70%; pointer-events:none; z-index:0;}
#page-preescolar .pe-bento-tag{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.22em; text-transform:uppercase; margin-bottom:12px;}
#page-preescolar .pe-bento-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(20px,2.5vw,28px); color:#F8F8F8; line-height:1.2; margin-bottom:10px !important;}
#page-preescolar .pe-bento-desc{font-family:'Inter',sans-serif; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.62); line-height:1.65;}
#page-preescolar .pe-bento-bar{position:absolute; bottom:20px; left:50%; transform:translateX(-50%); width:40px; height:3px; border-radius:999px;}

#page-preescolar .pe-bento-text--renueva{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-preescolar .pe-bento-text--renueva .pe-bento-orb{background:radial-gradient(circle, rgba(232,120,50,.18) 0%, transparent 68%);}
#page-preescolar .pe-bento-text--renueva .pe-bento-tag{color:#E67832;}
#page-preescolar .pe-bento-text--renueva .pe-bento-bar{background:#E67832;}

#page-preescolar .pe-bento-text--conecta{background:#17171B; padding:clamp(24px,3vw,36px);}
#page-preescolar .pe-bento-text--conecta .pe-bento-orb{background:radial-gradient(circle, rgba(50,170,170,.18) 0%, transparent 68%);}
#page-preescolar .pe-bento-text--conecta .pe-bento-tag{color:#32AAAA;}
#page-preescolar .pe-bento-text--conecta .pe-bento-bar{background:#32AAAA;}

#page-preescolar .pe-bento-text--impacta{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-preescolar .pe-bento-text--impacta .pe-bento-orb{background:radial-gradient(circle, rgba(60,220,140,.15) 0%, transparent 68%);}
#page-preescolar .pe-bento-text--impacta .pe-bento-tag{color:#3CDC8C;}
#page-preescolar .pe-bento-text--impacta .pe-bento-bar{background:#3CDC8C;}

#page-preescolar .pe-bento-photo{background-size:cover; background-position:center; background-color:#202024;}
#page-preescolar .pe-bento-photo::after{content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(14,14,17,.15) 0%, transparent 60%);}

@media (max-width:768px){
  #page-preescolar .pe-bento-grid{grid-template-columns:1fr 1fr; grid-template-rows:auto;}
  #page-preescolar .pe-bento-cell{min-height:200px;}
  /* FIX 3 — refuerza altura explícita en las celdas de foto (divs sin contenido propio) */
  #page-preescolar .pe-bento-photo{min-height:200px; height:200px;}
}
@media (max-width:480px){
  #page-preescolar .pe-bento-grid{grid-template-columns:1fr;}
  /* Fotos 4 y 6 del bento ocultas en <480px — intencional para móvil pequeño */
  #page-preescolar .pe-bento-photo:nth-of-type(4), #page-preescolar .pe-bento-photo:nth-of-type(6){display:none;}
}

/* ===== 6 RAZONES GLOBAL ===== */

/* Sección exterior */
.razones-section {
  padding: clamp(64px,9vw,110px) clamp(20px,5vw,48px);
  background: #FBF8FC;
}

/* Cabecera centrada */
.razones-header {
  text-align: center;
  margin-bottom: clamp(32px,5vw,56px);
  max-width: 1160px;
  margin-inline: auto;
}

.razones-eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  margin: 0 0 14px;
}

.razones-titulo {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: clamp(26px,4vw,44px);
  color: #1A1A1E;
  margin: 0;
  line-height: 1.1;
}

/* Color del eyebrow por página */
#page-preescolar .razones-eyebrow { color: #E67832; }
#page-primaria .razones-eyebrow   { color: #32AAAA; }
#page-secundaria .razones-eyebrow { color: #3282B4; }
#page-mindsetr12 .razones-eyebrow { color: #8000B0; }

/* Panel contenedor */
.razones-panel {
  background: #FFFFFF;
  border-radius: 24px;
  padding: clamp(32px,5vw,56px) clamp(24px,4vw,48px);
  max-width: 1160px;
  margin-inline: auto;
  box-shadow:
    0 1px 3px rgba(0,0,0,.06),
    0 4px 16px rgba(0,0,0,.07),
    0 12px 40px rgba(0,0,0,.05);
}

/* Grid 3 columnas */
.razones-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(32px,5vw,56px) clamp(24px,4vw,48px);
}

/* Cada razón — sin card, sin borde */
.razon-item {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* Ícono cuadrado oscuro sólido */
.razon-icono {
  width: 52px;
  height: 52px;
  background: #1A1A1E;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  flex-shrink: 0;
}

.razon-icono svg {
  width: 22px;
  height: 22px;
  stroke: #F8F8F8;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Preescolar — chip de fondo de color según la naturaleza de cada ícono, línea en blanco */
#page-preescolar .razon-item:nth-child(1) .razon-icono { background: #3CDC8C; }
#page-preescolar .razon-item:nth-child(2) .razon-icono { background: #3282B4; }
#page-preescolar .razon-item:nth-child(3) .razon-icono { background: #E67832; }
#page-preescolar .razon-item:nth-child(4) .razon-icono { background: #DC3228; }
#page-preescolar .razon-item:nth-child(5) .razon-icono { background: #B44DFF; }
#page-preescolar .razon-item:nth-child(6) .razon-icono { background: #3282B4; }
#page-preescolar .razon-icono svg { stroke: #fff; }

/* Título de la razón */
.razon-titulo {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: clamp(17px,2vw,22px);
  color: #1A1A1E;
  line-height: 1.2;
  margin: 0 0 12px;
}

/* Descripción */
.razon-desc {
  font-family: 'Inter', sans-serif;
  font-size: clamp(13px,1.4vw,15px);
  color: #5A5A6A;
  line-height: 1.7;
  margin: 0;
}

/* Separador horizontal entre filas
   (solo visible entre fila 1 y fila 2) */
.razon-item:nth-child(4),
.razon-item:nth-child(5),
.razon-item:nth-child(6) {
  padding-top: clamp(28px,4vw,44px);
  border-top: 1px solid rgba(0,0,0,.10);
  margin-top: 0;
}

/* MÓVIL */
@media (max-width: 768px) {
  .razones-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px 20px;
  }
  .razon-item:nth-child(3),
  .razon-item:nth-child(4),
  .razon-item:nth-child(5),
  .razon-item:nth-child(6) {
    padding-top: 0;
    border-top: none;
  }
  .razon-item:nth-child(3),
  .razon-item:nth-child(4) {
    padding-top: clamp(20px,4vw,32px);
    border-top: 1px solid rgba(0,0,0,.10);
    margin-top: 0;
  }
}

@media (max-width: 480px) {
  .razones-grid {
    grid-template-columns: 1fr;
  }
  .razon-item:nth-child(n+2) {
    padding-top: 24px;
    border-top: 1px solid rgba(0,0,0,.08);
  }
  .razon-item:nth-child(3),
  .razon-item:nth-child(4) {
    border-top: 1px solid rgba(0,0,0,.08);
  }
  .razones-panel {
    border-radius: 16px;
    padding: 24px 20px;
  }
}

/* "6 razones" — cards oscuras individuales con ícono, sobre sección clara.
   Reemplaza por completo el grid claro anterior (.value-item / .values-row,
   que siguen intactos para Nosotros/Primaria/Secundaria/MindsetR12).
   (CSS conservado sin usar tras el rediseño a .razones-*; ver limpieza pendiente) */
#page-preescolar .pe-razones-section{padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-preescolar .pe-razones-header{margin-bottom:clamp(32px,4vw,48px);}
#page-preescolar .pe-razones-eyebrow{color:#E67832;}
#page-preescolar .pe-razones-heading{color:#1A1A1E;}

#page-preescolar .pe-razones-panel{max-width:1160px; margin-inline:auto;}

#page-preescolar .pe-razones-grid{position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
#page-preescolar .pe-razones-connector{position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); height:1px; background:linear-gradient(90deg, transparent, rgba(180,77,255,.20) 20%, rgba(180,77,255,.20) 80%, transparent); margin:4px 0; pointer-events:none; z-index:0;}

#page-preescolar .pe-razones-card{
  background:#17171B;
  border-radius:20px;
  padding:clamp(28px,3.5vw,40px);
  border:1px solid rgba(255,255,255,.07);
  display:flex; flex-direction:column; justify-content:space-between;
  min-height:clamp(240px,28vw,300px);
  position:relative; overflow:hidden;
  transition:transform 280ms ease, border-color 280ms ease, box-shadow 280ms ease;
}
#page-preescolar .pe-razones-card::before{
  content:'';
  position:absolute;
  top:-50%; right:-30%;
  width:80%; height:80%;
  background:radial-gradient(circle, rgba(128,0,176,.18) 0%, transparent 68%);
  pointer-events:none;
  opacity:0;
  transition:opacity 350ms ease;
  z-index:0;
}
#page-preescolar .pe-razones-card:hover{
  transform:translateY(-5px);
  border-color:rgba(180,77,255,.30);
  box-shadow:0 8px 32px rgba(128,0,176,.15), 0 24px 56px rgba(128,0,176,.10);
}
#page-preescolar .pe-razones-card:hover::before{opacity:1;}
#page-preescolar .pe-razones-card--1{margin-top:40px;}
#page-preescolar .pe-razones-card--2{margin-top:0;}
#page-preescolar .pe-razones-card--3{margin-top:60px;}
#page-preescolar .pe-razones-card--4{margin-top:0;}
#page-preescolar .pe-razones-card--5{margin-top:40px;}
#page-preescolar .pe-razones-card--6{margin-top:0;}

#page-preescolar .pe-razones-top{position:relative; z-index:1; flex:1;}
#page-preescolar .pe-razones-top svg{width:26px; height:26px; margin-bottom:18px; display:block;}
#page-preescolar .pe-razones-card h3{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(18px,2.2vw,24px); color:#F8F8F8; line-height:1.25; margin:0 0 16px 0 !important;}
#page-preescolar .pe-razones-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.55); line-height:1.7;}


@media (max-width:768px){
  /* FIX 2 — unifica con el resto de la página: 1 columna ya en 768px */
  #page-preescolar .pe-razones-grid{grid-template-columns:1fr;}
  #page-preescolar .pe-razones-card--1, #page-preescolar .pe-razones-card--2, #page-preescolar .pe-razones-card--3,
  #page-preescolar .pe-razones-card--4, #page-preescolar .pe-razones-card--5, #page-preescolar .pe-razones-card--6{margin-top:0;}
}

/* Cambio 5 — Chips de categorías (keyword-row) */
#page-preescolar .keyword-row .pillar{background:rgba(232,120,50,.08); border:1px solid rgba(232,120,50,.30); border-radius:999px; padding:7px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(12px,1.3vw,14px); color:#C45E00;}
#page-preescolar .keyword-row .pillar .dot{width:6px; height:6px; border-radius:50%; background:#E67832 !important; box-shadow:0 0 6px rgba(232,120,50,.5); flex-shrink:0;}

/* ===== HABILIDADES GRID (global) ===== */

.hab-section {
  background: #FFFFFF !important;
  padding: clamp(64px,9vw,110px) clamp(20px,5vw,48px);
}

.hab-header {
  text-align: center;
  margin-bottom: clamp(40px,6vw,72px);
  max-width: 1160px;
  margin-inline: auto;
}

.hab-eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  margin: 0 0 14px;
}

.hab-titulo {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: clamp(26px,4vw,44px);
  color: #1A1A1E !important;
  margin: 0;
  line-height: 1.1;
}

/* Color del eyebrow por página */
#page-preescolar .hab-eyebrow { color: #E67832; }
#page-primaria .hab-eyebrow   { color: #32AAAA; }
#page-secundaria .hab-eyebrow { color: #3282B4; }
#page-mindsetr12 .hab-eyebrow { color: #8000B0; }

/* Grid 3 columnas desktop, 2 móvil */
.hab-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(36px,5vw,64px) clamp(24px,4vw,48px);
  max-width: 1160px;
  margin-inline: auto;
  text-align: center;
}

/* Cada item */
.hab-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}

/* Ícono — grande, sin cuadrado, con color */
.hab-icono {
  margin-bottom: 20px;
}

.hab-icono svg {
  width: 40px;
  height: 40px;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  display: block;
}

/* Color del ícono por página */
#page-preescolar .hab-icono svg { stroke: #E67832; }
#page-primaria .hab-icono svg   { stroke: #32AAAA; }
#page-secundaria .hab-icono svg { stroke: #3282B4; }
#page-mindsetr12 .hab-icono svg { stroke: #8000B0; }

/* Nombre */
.hab-nombre {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: clamp(15px,1.8vw,19px);
  color: #1A1A1E !important;
  margin: 0 0 10px;
  line-height: 1.2;
}

/* Descripción */
.hab-desc {
  font-family: 'Inter', sans-serif;
  font-size: clamp(13px,1.4vw,15px);
  color: #5A5A6A;
  line-height: 1.65;
  margin: 0;
}

/* Separador horizontal entre filas */
.hab-item:nth-child(4),
.hab-item:nth-child(5),
.hab-item:nth-child(6) {
  padding-top: clamp(28px,4vw,44px);
  border-top: 1px solid rgba(0,0,0,.08);
}

/* MÓVIL */
@media (max-width: 768px) {
  .hab-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px 20px;
    text-align: center;
  }
  .hab-item:nth-child(4),
  .hab-item:nth-child(5),
  .hab-item:nth-child(6) {
    padding-top: 0;
    border-top: none;
  }
  .hab-item:nth-child(3),
  .hab-item:nth-child(4) {
    padding-top: clamp(24px,4vw,32px);
    border-top: 1px solid rgba(0,0,0,.08);
  }
}

@media (max-width: 480px) {
  .hab-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px 16px;
  }
}

/* Cambio 6 — "6 habilidades" (stage interactivo de tres zonas)
   (CSS conservado sin usar tras el rediseño a .hab-*; ver limpieza pendiente) */
#page-preescolar .pe-habilidades-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-preescolar .pe-habilidades-wrap{max-width:1160px; margin-inline:auto; padding:0;}
#page-preescolar .pe-habilidades-header{text-align:center; max-width:640px; margin:0 auto;}
#page-preescolar .pe-habilidades-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#E67832; text-transform:uppercase; margin-bottom:14px;}
#page-preescolar .pe-habilidades-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:clamp(48px,6vw,72px);}

#page-preescolar .pe-hab-stage{display:grid; grid-template-columns:180px 1fr 420px; gap:clamp(32px,5vw,64px); align-items:center; min-height:420px;}

#page-preescolar .pe-hab-left{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px;}
#page-preescolar .pe-hab-num-big{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(80px,12vw,160px); line-height:1; color:#8000B0; transition:all 400ms ease;}
#page-preescolar .pe-hab-dots{display:flex; flex-direction:column; gap:10px; align-items:center;}
#page-preescolar .pe-hab-dot{width:8px; height:8px; border-radius:50%; background:rgba(128,0,176,.20); cursor:pointer; transition:all 250ms ease; border:none; padding:0; flex-shrink:0;}
#page-preescolar .pe-hab-dot.is-active{background:#8000B0; box-shadow:0 0 12px rgba(128,0,176,.5); width:10px; height:10px;}

#page-preescolar .pe-hab-center{display:flex; flex-direction:column; justify-content:center;}
#page-preescolar .pe-hab-num-small{font-family:'Inter',sans-serif; font-weight:600; font-size:12px; letter-spacing:.20em; color:#E67832; margin-bottom:12px;}
#page-preescolar .pe-hab-title{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(24px,3.5vw,42px); color:#1A1A1E; line-height:1.15; margin:0 0 16px; transition:opacity 300ms ease, transform 300ms ease;}
#page-preescolar .pe-hab-desc{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.6vw,17px); color:#5A5A6A; line-height:1.75; max-width:440px; margin:0 0 32px; transition:opacity 300ms ease;}
#page-preescolar .pe-hab-nav{display:flex; gap:12px; align-items:center;}
#page-preescolar .pe-hab-btn{width:40px; height:40px; background:rgba(128,0,176,.06); border:1px solid rgba(128,0,176,.20); border-radius:50%; cursor:pointer; font-family:'Space Grotesk'; font-size:16px; color:#8000B0; display:flex; align-items:center; justify-content:center; transition:background 250ms ease, border-color 250ms ease;}
#page-preescolar .pe-hab-btn:hover{background:rgba(128,0,176,.12); border-color:rgba(128,0,176,.40);}
#page-preescolar .pe-hab-count{font-family:'Inter',sans-serif; font-size:13px; color:#9A9AA8;}
#page-preescolar .pe-hab-dots--mobile{display:none;}

#page-preescolar .pe-hab-right{position:relative; border-radius:24px 24px 24px 52px; overflow:hidden; height:clamp(320px,40vw,460px);}
#page-preescolar .pe-hab-photo{width:100%; height:100%; object-fit:cover; transition:opacity 400ms ease, transform 400ms ease; display:block;}
#page-preescolar .pe-hab-right::after{content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.35) 0%, transparent 50%); pointer-events:none;}
#page-preescolar .pe-hab-badge{position:absolute; bottom:20px; left:20px; right:20px; background:rgba(14,14,17,.75); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:12px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; z-index:1;}

@media (max-width:768px){
  #page-preescolar .pe-hab-stage{grid-template-columns:1fr; min-height:0;}
  #page-preescolar .pe-hab-right{order:1; height:260px;}
  #page-preescolar .pe-hab-center{order:2;}
  #page-preescolar .pe-hab-left{display:none;}
  /* FIX 1 — puntos junto a las flechas ←→ en móvil, en vez de al final del bloque */
  #page-preescolar .pe-hab-dots--mobile{display:flex; flex-direction:row; justify-content:center; gap:8px; margin-top:16px;}
  /* FIX 3 — botones ←→ al mínimo táctil recomendado */
  #page-preescolar .pe-hab-btn{width:48px; height:48px;}
}

/* Plan académico estilo "módulos" (referencia 30x.com/programas) — Preescolar */
#page-preescolar .pe-modulos-panel{background:#fff; border-radius:40px; padding:clamp(24px,3.5vw,44px); margin-top:36px; box-shadow:0 8px 32px rgba(80,40,110,.06); overflow:visible;}
/* Desktop: 2 columnas, cada una con su propia pila independiente de 3 tarjetas */
#page-preescolar .pe-modulos-stack{display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start;}
#page-preescolar .pe-modulos-col{display:flex; flex-direction:column;}
#page-preescolar .pe-modulos-col .pe-modulo-card{margin-bottom:56px;}
#page-preescolar .pe-modulos-col .pe-modulo-card:nth-child(3){margin-bottom:0;}
#page-preescolar .pe-modulos-col .pe-modulo-card:nth-child(1){top:100px; z-index:1;}
#page-preescolar .pe-modulos-col .pe-modulo-card:nth-child(2){top:124px; z-index:2;}
#page-preescolar .pe-modulos-col .pe-modulo-card:nth-child(3){top:148px; z-index:3;}
/* Mobile: 1 sola columna, las 6 tarjetas en una pila secuencial (como estaba) */
@media (max-width:900px){
  #page-preescolar .pe-modulos-panel{border-radius:24px;}
  #page-preescolar .pe-modulos-stack{display:flex; flex-direction:column; gap:0;}
  #page-preescolar .pe-modulos-col{display:contents;}
  #page-preescolar .pe-modulos-col .pe-modulo-card{margin-bottom:32px;}
  #page-preescolar .pe-modulos-col:nth-child(2) .pe-modulo-card:nth-child(3){margin-bottom:0;}
  #page-preescolar .pe-modulos-col:nth-child(1) .pe-modulo-card:nth-child(1){top:76px; z-index:1;}
  #page-preescolar .pe-modulos-col:nth-child(1) .pe-modulo-card:nth-child(2){top:92px; z-index:2;}
  #page-preescolar .pe-modulos-col:nth-child(1) .pe-modulo-card:nth-child(3){top:108px; z-index:3;}
  #page-preescolar .pe-modulos-col:nth-child(2) .pe-modulo-card:nth-child(1){top:124px; z-index:4;}
  #page-preescolar .pe-modulos-col:nth-child(2) .pe-modulo-card:nth-child(2){top:140px; z-index:5;}
  #page-preescolar .pe-modulos-col:nth-child(2) .pe-modulo-card:nth-child(3){top:156px; z-index:6;}
}
#page-preescolar .pe-modulo-card{background:#F5F0FA; border-radius:20px; padding:clamp(20px,2.5vw,28px); display:flex; flex-direction:column; align-items:center; justify-content:flex-start; text-align:center; position:sticky; top:110px; width:100%; height:265px; margin:0 auto; box-sizing:border-box; box-shadow:0 1px 22px rgba(80,40,110,.08);}
#page-preescolar .pe-modulo-tag{background:#0E0E11; color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(18px,2.2vw,24px); border-radius:14px; padding:14px 20px; width:100%; margin-bottom:20px;}
#page-preescolar .pe-modulo-copy{font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(14px,1.6vw,16px); color:#241a29; line-height:1.5; margin:0 0 16px;}
#page-preescolar .pe-modulo-chips{display:flex; flex-wrap:wrap; justify-content:center; gap:8px;}
#page-preescolar .pe-modulo-chip{display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:6px 14px; font-family:'Inter',sans-serif; font-weight:500; font-size:12px; background:#fff; border:1px solid rgba(36,26,41,.12); color:#241a29;}
#page-preescolar .pe-modulo-chip-dot{width:5px; height:5px; border-radius:50%; flex-shrink:0; background:var(--fares-purple);}
#page-preescolar .pe-modulo-chip:nth-child(6n+2) .pe-modulo-chip-dot{background:var(--fares-orange);}
#page-preescolar .pe-modulo-chip:nth-child(6n+3) .pe-modulo-chip-dot{background:var(--fares-cyan);}
#page-preescolar .pe-modulo-chip:nth-child(6n+4) .pe-modulo-chip-dot{background:var(--fares-blue);}
#page-preescolar .pe-modulo-chip:nth-child(6n+5) .pe-modulo-chip-dot{background:#DC3228;}
#page-preescolar .pe-modulo-chip:nth-child(6n+6) .pe-modulo-chip-dot{background:var(--fares-green);}
#page-preescolar .pe-modulo-reveal{opacity:0; transform:translateY(40px); box-shadow:0 24px 48px rgba(0,0,0,.28); transition:opacity .6s ease, transform .6s ease, box-shadow .6s ease;}
#page-preescolar .pe-modulo-reveal.in-view{opacity:1; transform:translateY(0); box-shadow:0 8px 24px rgba(80,40,110,.08);}
@media (prefers-reduced-motion: reduce){#page-preescolar .pe-modulo-reveal{opacity:1; transform:none; box-shadow:0 8px 24px rgba(80,40,110,.08); transition:none;}}

/* Cambio 6c — Pedagogía / Learning Experiences (exp-grid asimétrico) */
#page-preescolar .pe-exp-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-preescolar .pe-exp-header{text-align:center; max-width:640px; margin-inline:auto;}
#page-preescolar .pe-exp-header .eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#E67832; text-transform:uppercase; margin-bottom:14px;}
#page-preescolar .pe-exp-header h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:16px;}
#page-preescolar .pe-exp-header .lede{font-family:'Inter',sans-serif; font-size:clamp(14px,1.5vw,16px); color:#5A5A6A; max-width:640px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px);}
#page-preescolar .pe-exp-section .exp-grid{display:block; margin-bottom:clamp(40px,6vw,64px); margin-top:0;}

#page-preescolar .ped-row1{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:20px; margin-bottom:20px;}
#page-preescolar .ped-row2{display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:720px; margin-inline:auto;}
#page-preescolar .exp-card{min-width:0; width:100%;}
@media (max-width:768px){
  #page-preescolar .ped-row1{grid-template-columns:1fr;}
  #page-preescolar .ped-row2{grid-template-columns:1fr;}
}

#page-preescolar .exp-card{background:#FFFFFF; border-radius:20px; padding:clamp(24px,3vw,36px); border:1px solid rgba(128,0,176,.08); box-shadow:0 2px 8px rgba(128,0,176,.05), 0 8px 28px rgba(128,0,176,.08), 0 16px 40px rgba(128,0,176,.04); display:flex; flex-direction:row-reverse; align-items:flex-start; gap:16px; position:relative; overflow:hidden; transition:transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;}
#page-preescolar .exp-photo{flex:0 0 40%; min-width:0; aspect-ratio:1/1; width:auto; height:auto; object-fit:cover; border-radius:12px; position:relative; z-index:1;}
@media (min-width:769px){#page-preescolar .exp-photo{flex:0 0 100px;}}
#page-preescolar .exp-card-body{display:flex; flex-direction:column; min-width:0; flex:1; position:relative; z-index:1;}
#page-preescolar .exp-card::before{content:""; position:absolute; top:-50%; right:-30%; width:80%; height:80%; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.10) 0%, transparent 68%); opacity:0; transition:opacity 350ms ease; pointer-events:none; z-index:0;}
#page-preescolar .exp-card:hover{transform:translateY(-4px); border-color:rgba(128,0,176,.18); box-shadow:0 4px 16px rgba(128,0,176,.10), 0 16px 40px rgba(128,0,176,.13), 0 28px 56px rgba(128,0,176,.08);}
#page-preescolar .exp-card:hover::before{opacity:1;}

#page-preescolar .exp-card--hero{border:1px solid rgba(128,0,176,.15); background:linear-gradient(135deg, #FFFFFF 60%, rgba(128,0,176,.04) 100%);}
#page-preescolar .exp-card--hero::after{content:""; position:absolute; top:0; left:24px; right:24px; height:2.5px; background:linear-gradient(90deg, #E67832, rgba(232,120,50,0)); border-radius:0 0 999px 999px;}

#page-preescolar .exp-card .exp-icon{width:44px; height:44px; background:rgba(230,120,50,.08); border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:12px; position:relative; z-index:1;}
#page-preescolar .exp-card .exp-icon svg{width:22px; height:22px; color:var(--fares-orange);}

#page-preescolar .exp-card h3{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(15px,1.8vw,19px); color:#1A1A1E; margin-bottom:10px; position:relative; z-index:1;}
#page-preescolar .exp-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:#5A5A6A; line-height:1.7; position:relative; z-index:1;}

/* Cambio 7 — CTA final (el botón aurora ya es global vía .cta-final .btn-espectro) */
#page-preescolar .cta-final h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px);}
#page-preescolar .cta-final .lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); color:rgba(248,248,248,.65); max-width:480px !important;}
#page-preescolar .cta-final::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.15), transparent 70%); pointer-events:none; z-index:0;}

/* Cambio 8 — Respiración: el padding de sección y el .wrap ya son globales (definidos para todo el sitio);
   aquí solo el espaciado propio de esta página entre eyebrow/título/contenido. */
#page-preescolar .eyebrow{margin-bottom:12px;}
#page-preescolar .block h2{margin-bottom:clamp(24px,4vw,40px);}

/* ============================================================
   ===== PRIMARIA =====
   Réplica del sistema visual de #page-preescolar, prefijo pr-,
   scoping #page-primaria, acento de nivel CIAN #32AAAA
   (en vez de naranja #E67832). El morado institucional #8000B0
   y el gradiente aurora se conservan donde son elementos de
   marca transversales (btn-espectro, badges, línea aurora del
   stat de video), tal como en preescolar.
   ============================================================ */

/* Hero */
#page-primaria .pr-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:clamp(100px,12vw,140px) clamp(20px,5vw,80px) clamp(100px,14vw,160px); background:#0E0E11; overflow:hidden;}
#page-primaria .pr-hero-orbs{position:absolute; inset:0; z-index:0; pointer-events:none;}
#page-primaria .pr-hero-orb{position:absolute; border-radius:50%;}
#page-primaria .pr-hero-orb--cyan{width:50vw; height:50vw; top:-10vw; right:-10vw; background:radial-gradient(circle, rgba(50,170,170,.18), transparent 70%);}
#page-primaria .pr-hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:55% 45%; gap:48px; align-items:center;}

#page-primaria .pr-hero-content{text-align:left;}
#page-primaria .pr-hero-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(10px,1.1vw,12px); letter-spacing:.30em; color:#32AAAA; text-transform:uppercase; margin-bottom:16px;}
#page-primaria .pr-hero-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(36px,5.5vw,68px); line-height:1.08; color:#F8F8F8; margin-bottom:20px;}
#page-primaria .pr-hero-title .pr-hero-accent{color:#32AAAA;}
#page-primaria .pr-hero-sub{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.65); line-height:1.6; max-width:480px; margin-bottom:36px;}

#page-primaria .pr-hero-chips{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px;}
#page-primaria .pr-hero-chip{display:inline-flex; align-items:center; gap:6px; background:rgba(50,170,170,.10); border:1px solid rgba(50,170,170,.30); border-radius:999px; padding:6px 14px; font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(11px,1.2vw,13px); color:#32AAAA;}
#page-primaria .pr-hero-chip-dot{width:5px; height:5px; border-radius:50%; background:#32AAAA; flex-shrink:0;}

#page-primaria .pr-hero-btn{
  display:inline-flex; align-items:center; justify-content:center;
  background-color:#17171B;
  background-image:linear-gradient(#17171B,#17171B), linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
  background-origin:border-box;
  background-clip:padding-box, border-box;
  border-radius:999px;
  padding:14px 28px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:500;
  font-size:15px;
  color:#F8F8F8;
  border:1.5px solid transparent;
  text-decoration:none;
  box-shadow:0 8px 28px -6px rgba(180,77,255,.40), 0 12px 24px -8px rgba(232,120,50,.30), 0 12px 24px -4px rgba(60,220,140,.20);
  transition:box-shadow 250ms ease, transform 250ms ease;
}
#page-primaria .pr-hero-btn:hover{
  box-shadow:0 8px 28px -6px rgba(180,77,255,.52), 0 12px 24px -8px rgba(232,120,50,.39), 0 12px 24px -4px rgba(60,220,140,.26);
  transform:translateY(-2px);
}

#page-primaria .pr-hero-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:40px;}
#page-primaria .pr-hero-stat{border-top:2px solid rgba(50,170,170,.35); padding-top:14px;}
#page-primaria .pr-hero-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,3.5vw,40px); color:#F8F8F8;}
#page-primaria .pr-hero-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(11px,1.2vw,13px); color:rgba(248,248,248,.50); margin-top:6px; line-height:1.4;}

#page-primaria .pr-hero-visual{position:relative; height:clamp(380px,55vw,580px);}
#page-primaria .pr-hero-visual-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
#page-primaria .pr-hero-visual-orb--cyan{width:50%; height:50%; bottom:5%; left:5%; background:radial-gradient(circle, rgba(50,170,170,.16) 0%, transparent 65%);}
#page-primaria .pr-hero-photo{width:85%; height:88%; object-fit:cover; border-radius:24px 24px 24px 52px; position:absolute; top:6%; right:0; z-index:1; box-shadow:0 20px 60px rgba(0,0,0,.35);}
#page-primaria .pr-hero-mariposa{position:absolute; bottom:8%; left:2%; width:clamp(60px,8vw,100px); opacity:.18; z-index:0; pointer-events:none; filter:brightness(0) invert(1);}
#page-primaria .pr-hero-badge{position:absolute; top:12%; left:-4%; z-index:3; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; box-shadow:0 8px 24px rgba(0,0,0,.20);}
#page-primaria .pr-hero-badge-dot{width:8px; height:8px; border-radius:50%; background:#32AAAA; flex-shrink:0;}

@media (max-width:768px){
  #page-primaria .pr-hero{min-height:auto; padding:clamp(100px,12vw,140px) 20px 48px; overflow:hidden; max-width:100vw;}
  #page-primaria .pr-hero-grid{grid-template-columns:1fr; gap:32px; width:100%; overflow:hidden;}
  #page-primaria .pr-hero-visual{display:none;}
  #page-primaria .pr-hero-photo{width:100%; height:100%; top:0; right:0; border-radius:20px;}
  #page-primaria .pr-hero-chips{flex-wrap:wrap;}
  #page-primaria .pr-hero-badge{display:none;}
  #page-primaria .pr-hero-content{max-width:100%; overflow:hidden; padding-right:0;}
  #page-primaria .pr-hero-title{font-size:clamp(28px,8vw,38px); line-height:1.15; word-break:normal; overflow-wrap:break-word;}
  #page-primaria .pr-hero-stats{grid-template-columns:1fr 1fr; gap:16px;}
  #page-primaria .pr-hero-stat-num{font-size:24px;}
}
@media (max-width:480px){
  #page-primaria .pr-hero-stats{grid-template-columns:1fr 1fr 1fr;}
  #page-primaria .pr-hero-stat-num{font-size:clamp(22px,6vw,28px);}
}

/* Video */
#page-primaria .pr-video-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:center;}
@media (max-width:768px){#page-primaria .pr-video-grid{grid-template-columns:1fr;}}

#page-primaria .pr-video-col{position:relative;}
#page-primaria .pr-video-frame{border-radius:20px 20px 20px 48px; overflow:hidden; aspect-ratio:3/4; box-shadow:0 4px 16px rgba(0,0,0,.18), 0 20px 48px rgba(0,0,0,.22), 0 0 60px rgba(50,170,170,.20), 0 8px 32px rgba(50,170,170,.12); border:none; outline:none;}
#page-primaria .pr-video-frame video{width:100%; height:100%; object-fit:cover; display:block;}
#page-primaria .pr-video-badge{position:absolute; top:-16px; left:-16px; z-index:2; background:rgba(14,14,17,.85); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(50,170,170,.35); border-radius:12px; padding:10px 16px; display:flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8;}
#page-primaria .pr-video-badge-dot{width:8px; height:8px; border-radius:50%; background:#32AAAA; box-shadow:0 0 8px rgba(50,170,170,.6); flex-shrink:0;}
#page-primaria .pr-video-line{position:absolute; left:-14px; top:20%; height:60%; width:3px; background:#32AAAA; border-radius:999px; opacity:.6;}
@media (max-width:768px){#page-primaria .pr-video-badge{display:none;}}

#page-primaria .pr-video-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.25em; color:#32AAAA; text-transform:uppercase; margin-bottom:14px;}
#page-primaria .pr-video-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(26px,3.5vw,40px); line-height:1.15; color:#1A1A1E; margin-bottom:16px !important;}
#page-primaria .pr-video-p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.5vw,16px); line-height:1.7; color:#4A4A5A; max-width:440px; margin-bottom:28px;}
#page-primaria .pr-video-stat{position:relative; margin-top:28px; padding-top:16px; border-top:none;}
#page-primaria .pr-video-stat::before{content:""; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C); border-radius:999px; opacity:.75;}
#page-primaria .pr-video-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(32px,4vw,44px); color:#32AAAA;}
#page-primaria .pr-video-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(12px,1.3vw,14px); color:#6B6B7A; margin-top:4px;}

/* Transiciones oscuro<->claro (mismo sistema de preescolar) */
#page-primaria section.block.light:has(.pr-video-frame){position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding-top:calc(clamp(72px,9vw,120px) + 48px);}
@media (max-width:768px){#page-primaria section.block.light:has(.pr-video-frame){border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(72px,9vw,120px) + 28px);}}
#page-primaria .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-primaria .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}

#page-primaria section.block.light:has(.rci-editorial){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-primaria section.block.light:has(.pgmq-wrap){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}

/* RCI — cabecera */
#page-primaria .pr-rci-eyebrow{font-size:clamp(11px,1.2vw,13px); letter-spacing:.28em; color:var(--fares-orange); font-weight:600;}
#page-primaria .pr-rci-heading{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E;}
#page-primaria .pr-rci-lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.6vw,17px); max-width:560px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px); color:#4A4A5A;}

/* RCI — bento grid: EXACTAMENTE igual a preescolar en colores por celda
   (naranja/cian/verde) — es la filosofía del colegio, no del nivel. */
#page-primaria .pr-bento-grid{display:grid; grid-template-columns:1fr 1fr 1fr; grid-template-rows:auto auto; gap:16px; max-width:1160px; margin-inline:auto;}
#page-primaria .pr-bento-cell{min-height:clamp(220px,28vw,320px); border-radius:20px; overflow:hidden; position:relative;}

#page-primaria .pr-bento-text{display:flex; flex-direction:column; justify-content:space-between;}
#page-primaria .pr-bento-text > div:first-child{position:relative; z-index:1;}
#page-primaria .pr-bento-orb{position:absolute; top:-30%; right:-20%; width:70%; height:70%; pointer-events:none; z-index:0;}
#page-primaria .pr-bento-tag{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.22em; text-transform:uppercase; margin-bottom:12px;}
#page-primaria .pr-bento-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(20px,2.5vw,28px); color:#F8F8F8; line-height:1.2; margin-bottom:10px !important;}
#page-primaria .pr-bento-desc{font-family:'Inter',sans-serif; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.62); line-height:1.65;}
#page-primaria .pr-bento-bar{position:absolute; bottom:20px; left:50%; transform:translateX(-50%); width:40px; height:3px; border-radius:999px;}

#page-primaria .pr-bento-text--renueva{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-primaria .pr-bento-text--renueva .pr-bento-orb{background:radial-gradient(circle, rgba(232,120,50,.18) 0%, transparent 68%);}
#page-primaria .pr-bento-text--renueva .pr-bento-tag{color:#E67832;}
#page-primaria .pr-bento-text--renueva .pr-bento-bar{background:#E67832;}

#page-primaria .pr-bento-text--conecta{background:#17171B; padding:clamp(24px,3vw,36px);}
#page-primaria .pr-bento-text--conecta .pr-bento-orb{background:radial-gradient(circle, rgba(50,170,170,.18) 0%, transparent 68%);}
#page-primaria .pr-bento-text--conecta .pr-bento-tag{color:#32AAAA;}
#page-primaria .pr-bento-text--conecta .pr-bento-bar{background:#32AAAA;}

#page-primaria .pr-bento-text--impacta{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-primaria .pr-bento-text--impacta .pr-bento-orb{background:radial-gradient(circle, rgba(60,220,140,.15) 0%, transparent 68%);}
#page-primaria .pr-bento-text--impacta .pr-bento-tag{color:#3CDC8C;}
#page-primaria .pr-bento-text--impacta .pr-bento-bar{background:#3CDC8C;}

#page-primaria .pr-bento-photo{background-size:cover; background-position:center; background-color:#202024;}
#page-primaria .pr-bento-photo::after{content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(14,14,17,.15) 0%, transparent 60%);}

@media (max-width:768px){
  #page-primaria .pr-bento-grid{grid-template-columns:1fr 1fr; grid-template-rows:auto;}
  #page-primaria .pr-bento-cell{min-height:200px;}
  #page-primaria .pr-bento-photo{min-height:200px; height:200px;}
}
@media (max-width:480px){
  #page-primaria .pr-bento-grid{grid-template-columns:1fr;}
  /* Fotos 4 y 6 del bento ocultas en <480px — intencional para móvil pequeño (igual que preescolar) */
  #page-primaria .pr-bento-photo:nth-of-type(4), #page-primaria .pr-bento-photo:nth-of-type(6){display:none;}
}

/* 6 razones — cards oscuras con acento cian */
#page-primaria .pr-razones-section{padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-primaria .pr-razones-header{margin-bottom:clamp(32px,4vw,48px);}
#page-primaria .pr-razones-eyebrow{color:#32AAAA;}
#page-primaria .pr-razones-heading{color:#1A1A1E;}

#page-primaria .pr-razones-panel{max-width:1160px; margin-inline:auto;}

#page-primaria .pr-razones-grid{position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
#page-primaria .pr-razones-connector{position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); height:1px; background:linear-gradient(90deg, transparent, rgba(50,170,170,.20) 20%, rgba(50,170,170,.20) 80%, transparent); margin:4px 0; pointer-events:none; z-index:0;}

#page-primaria .pr-razones-card{
  background:#17171B;
  border-radius:20px;
  padding:clamp(28px,3.5vw,40px);
  border:1px solid rgba(255,255,255,.07);
  display:flex; flex-direction:column; justify-content:space-between;
  min-height:clamp(240px,28vw,300px);
  position:relative; overflow:hidden;
  transition:transform 280ms ease, border-color 280ms ease, box-shadow 280ms ease;
}
#page-primaria .pr-razones-card::before{
  content:'';
  position:absolute;
  top:-50%; right:-30%;
  width:80%; height:80%;
  background:radial-gradient(circle, rgba(50,170,170,.12) 0%, transparent 68%);
  pointer-events:none;
  opacity:0;
  transition:opacity 350ms ease;
  z-index:0;
}
#page-primaria .pr-razones-card:hover{
  transform:translateY(-5px);
  border-color:rgba(50,170,170,.28);
  box-shadow:0 8px 32px rgba(50,170,170,.15), 0 24px 56px rgba(50,170,170,.10);
}
#page-primaria .pr-razones-card:hover::before{opacity:1;}
#page-primaria .pr-razones-card--1{margin-top:40px;}
#page-primaria .pr-razones-card--2{margin-top:0;}
#page-primaria .pr-razones-card--3{margin-top:60px;}
#page-primaria .pr-razones-card--4{margin-top:0;}
#page-primaria .pr-razones-card--5{margin-top:40px;}
#page-primaria .pr-razones-card--6{margin-top:0;}

#page-primaria .pr-razones-top{position:relative; z-index:1; flex:1;}
#page-primaria .pr-razones-top svg{width:26px; height:26px; margin-bottom:18px; display:block;}
#page-primaria .pr-razones-card h3{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(18px,2.2vw,24px); color:#F8F8F8; line-height:1.25; margin:0 0 16px 0 !important;}
#page-primaria .pr-razones-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.55); line-height:1.7;}

@media (max-width:768px){
  #page-primaria .pr-razones-grid{grid-template-columns:1fr;}
  #page-primaria .pr-razones-card--1, #page-primaria .pr-razones-card--2, #page-primaria .pr-razones-card--3,
  #page-primaria .pr-razones-card--4, #page-primaria .pr-razones-card--5, #page-primaria .pr-razones-card--6{margin-top:0;}
}

/* 6 habilidades — stage interactivo de tres zonas */
#page-primaria .pr-habilidades-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-primaria .pr-habilidades-wrap{max-width:1160px; margin-inline:auto; padding:0;}
#page-primaria .pr-habilidades-header{text-align:center; max-width:640px; margin:0 auto;}
#page-primaria .pr-habilidades-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#32AAAA; text-transform:uppercase; margin-bottom:14px;}
#page-primaria .pr-habilidades-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:clamp(48px,6vw,72px);}

#page-primaria .pr-hab-stage{display:grid; grid-template-columns:180px 1fr 420px; gap:clamp(32px,5vw,64px); align-items:center; min-height:420px;}

#page-primaria .pr-hab-left{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px;}
#page-primaria .pr-hab-num-big{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(80px,12vw,160px); line-height:1; color:#32AAAA; transition:all 400ms ease;}
#page-primaria .pr-hab-dots{display:flex; flex-direction:column; gap:10px; align-items:center;}
#page-primaria .pr-hab-dot{width:8px; height:8px; border-radius:50%; background:rgba(50,170,170,.20); cursor:pointer; transition:all 250ms ease; border:none; padding:0; flex-shrink:0;}
#page-primaria .pr-hab-dot.is-active{background:#32AAAA; box-shadow:0 0 12px rgba(50,170,170,.5); width:10px; height:10px;}

#page-primaria .pr-hab-center{display:flex; flex-direction:column; justify-content:center;}
#page-primaria .pr-hab-num-small{font-family:'Inter',sans-serif; font-weight:600; font-size:12px; letter-spacing:.20em; color:#32AAAA; margin-bottom:12px;}
#page-primaria .pr-hab-title{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(24px,3.5vw,42px); color:#1A1A1E; line-height:1.15; margin:0 0 16px; transition:opacity 300ms ease, transform 300ms ease;}
#page-primaria .pr-hab-desc{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.6vw,17px); color:#5A5A6A; line-height:1.75; max-width:440px; margin:0 0 32px; transition:opacity 300ms ease;}
#page-primaria .pr-hab-nav{display:flex; gap:12px; align-items:center;}
#page-primaria .pr-hab-btn{width:40px; height:40px; background:rgba(50,170,170,.06); border:1px solid rgba(50,170,170,.20); border-radius:50%; cursor:pointer; font-family:'Space Grotesk'; font-size:16px; color:#32AAAA; display:flex; align-items:center; justify-content:center; transition:background 250ms ease, border-color 250ms ease;}
#page-primaria .pr-hab-btn:hover{background:rgba(50,170,170,.12); border-color:rgba(50,170,170,.40);}
#page-primaria .pr-hab-count{font-family:'Inter',sans-serif; font-size:13px; color:#9A9AA8;}
#page-primaria .pr-hab-dots--mobile{display:none;}

#page-primaria .pr-hab-right{position:relative; border-radius:24px 24px 24px 52px; overflow:hidden; height:clamp(320px,40vw,460px);}
#page-primaria .pr-hab-photo{width:100%; height:100%; object-fit:cover; transition:opacity 400ms ease, transform 400ms ease; display:block;}
#page-primaria .pr-hab-right::after{content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.35) 0%, transparent 50%); pointer-events:none;}
#page-primaria .pr-hab-badge{position:absolute; bottom:20px; left:20px; right:20px; background:rgba(14,14,17,.75); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:12px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; z-index:1;}

@media (max-width:768px){
  #page-primaria .pr-hab-stage{grid-template-columns:1fr; min-height:0;}
  #page-primaria .pr-hab-right{order:1; height:260px;}
  #page-primaria .pr-hab-center{order:2;}
  #page-primaria .pr-hab-left{display:none;}
  #page-primaria .pr-hab-dots--mobile{display:flex; flex-direction:row; justify-content:center; gap:8px; margin-top:16px;}
  #page-primaria .pr-hab-btn{width:48px; height:48px;}
}

/* Plan académico: fondo oscuro (glassmorfismo) */
#page-primaria .academic-block{background:#0E0E11; padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px); position:relative; border-radius:48px; margin-inline:clamp(16px,3vw,48px);}
@media (max-width:768px){#page-primaria .academic-block{border-radius:28px; margin-inline:12px;}}
#page-primaria .pr-academic-glow{position:absolute; inset:0; border-radius:inherit; overflow:hidden; pointer-events:none; z-index:0;}
#page-primaria .pr-academic-glow::before{content:""; position:absolute; top:-20%; right:-10%; width:55vw; height:55vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.16) 0%, transparent 68%);}
#page-primaria .pr-academic-glow::after{content:""; position:absolute; bottom:-15%; left:-8%; width:35vw; height:35vw; border-radius:50%; background:radial-gradient(circle, rgba(50,170,170,.07) 0%, transparent 65%);}
#page-primaria .academic-block .wrap{position:relative; z-index:1;}
#page-primaria .academic-block .eyebrow{color:#32AAAA;}
#page-primaria .academic-block h2{color:#F8F8F8;}
#page-primaria .academic-block .lede{color:rgba(248,248,248,.55) !important;}

#page-primaria .academic-block .subjcard{background:rgba(255,255,255,.04); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,.09); border-radius:20px; padding:clamp(24px,3vw,36px); position:relative; overflow:hidden; box-sizing:border-box; transition:border-color 300ms ease, box-shadow 300ms ease, transform 300ms ease;}
#page-primaria .academic-block .subjcard::before{content:""; position:absolute; top:-50%; right:-30%; width:80%; height:80%; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.12) 0%, transparent 68%); opacity:0; transition:opacity 350ms ease; pointer-events:none; z-index:0;}
#page-primaria .academic-block .subjcard:hover{border-color:rgba(180,77,255,.28); box-shadow:0 0 0 1px rgba(180,77,255,.10), 0 8px 32px rgba(128,0,176,.15), 0 24px 56px rgba(128,0,176,.08);}
#page-primaria .academic-block .subjcard:hover::before{opacity:1;}
#page-primaria .academic-block .subj-icon{background:rgba(50,170,170,.10);}
#page-primaria .academic-block .subj-icon svg{color:#32AAAA;}
#page-primaria .academic-block .subjcard h4{color:#F8F8F8; position:relative; z-index:1;}
#page-primaria .academic-block .subjcard .tagline{color:rgba(248,248,248,.40); font-style:normal;}
#page-primaria .academic-block .subjcard h4::after{content:""; display:block; height:0; border-bottom:1px solid rgba(255,255,255,.07); margin:14px 0 16px;}
#page-primaria .academic-block .subjcard ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; position:relative; z-index:1;}
#page-primaria .academic-block .subjcard li{display:flex; align-items:center; gap:8px; flex-wrap:wrap; color:rgba(248,248,248,.70); line-height:1.4; transition:color 200ms ease;}
#page-primaria .academic-block .subjcard li:hover{color:rgba(248,248,248,.95);}
#page-primaria .academic-block .badge-tag{margin-left:0;}
#page-primaria .academic-block .badge-adn{background:rgba(128,0,176,.15); border:1px solid rgba(180,77,255,.35); color:#C084FF;}
#page-primaria .academic-block .badge-nuevo{background:rgba(60,220,140,.12); border:1px solid rgba(60,220,140,.35); color:#3CDC8C;}

/* Pedagogía / Learning Experiences — layout asimétrico, ícono cian */
#page-primaria .pr-exp-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-primaria .pr-exp-header{text-align:center; max-width:640px; margin-inline:auto;}
#page-primaria .pr-exp-header .eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#32AAAA; text-transform:uppercase; margin-bottom:14px;}
#page-primaria .pr-exp-header h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:16px;}
#page-primaria .pr-exp-header .lede{font-family:'Inter',sans-serif; font-size:clamp(14px,1.5vw,16px); color:#5A5A6A; max-width:640px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px);}
#page-primaria .pr-exp-section .exp-grid{display:block; margin-bottom:clamp(40px,6vw,64px); margin-top:0;}

#page-primaria .ped-row1{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:20px; margin-bottom:20px;}
#page-primaria .ped-row2{display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:720px; margin-inline:auto;}
#page-primaria .exp-card{min-width:0; width:100%;}
@media (max-width:768px){
  #page-primaria .ped-row1{grid-template-columns:1fr;}
  #page-primaria .ped-row2{grid-template-columns:1fr;}
}

#page-primaria .exp-card{background:#FFFFFF; border-radius:20px; padding:clamp(24px,3vw,36px); border:1px solid rgba(50,170,170,.08); box-shadow:0 2px 8px rgba(50,170,170,.05), 0 8px 28px rgba(50,170,170,.08), 0 16px 40px rgba(50,170,170,.04); display:flex; flex-direction:row-reverse; align-items:flex-start; gap:16px; position:relative; overflow:hidden; transition:transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;}
#page-primaria .exp-photo{flex:0 0 40%; min-width:0; aspect-ratio:1/1; width:auto; height:auto; object-fit:cover; border-radius:12px; position:relative; z-index:1;}
@media (min-width:769px){#page-primaria .exp-photo{flex:0 0 100px;}}
#page-primaria .exp-card-body{display:flex; flex-direction:column; min-width:0; flex:1; position:relative; z-index:1;}
#page-primaria .exp-card::before{content:""; position:absolute; top:-50%; right:-30%; width:80%; height:80%; border-radius:50%; background:radial-gradient(circle, rgba(50,170,170,.10) 0%, transparent 68%); opacity:0; transition:opacity 350ms ease; pointer-events:none; z-index:0;}
#page-primaria .exp-card:hover{transform:translateY(-4px); border-color:rgba(50,170,170,.18); box-shadow:0 4px 16px rgba(50,170,170,.10), 0 16px 40px rgba(50,170,170,.13), 0 28px 56px rgba(50,170,170,.08);}
#page-primaria .exp-card:hover::before{opacity:1;}

#page-primaria .exp-card--hero{border:1px solid rgba(50,170,170,.15); background:linear-gradient(135deg, #FFFFFF 60%, rgba(50,170,170,.04) 100%);}
#page-primaria .exp-card--hero::after{content:""; position:absolute; top:0; left:24px; right:24px; height:2.5px; background:linear-gradient(90deg, #32AAAA, rgba(50,170,170,0)); border-radius:0 0 999px 999px;}

#page-primaria .exp-card .exp-icon{width:44px; height:44px; background:rgba(50,170,170,.08); border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:12px; position:relative; z-index:1;}
#page-primaria .exp-card .exp-icon svg{width:22px; height:22px; color:#32AAAA;}

#page-primaria .exp-card h3{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(15px,1.8vw,19px); color:#1A1A1E; margin-bottom:10px; position:relative; z-index:1;}
#page-primaria .exp-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:#5A5A6A; line-height:1.7; position:relative; z-index:1;}

/* Plan académico: Liderazgo (nuestro ADN) a todo el ancho + pila con scroll en las otras 4 */
#page-primaria .pr-modulos-stack{margin-top:36px; position:relative; z-index:1;}
#page-primaria .academic-block .pr-modulo-full{width:100%; margin-bottom:56px; position:sticky; top:100px; z-index:1;}
#page-primaria .pr-modulos-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start;}
#page-primaria .pr-modulos-col{display:flex; flex-direction:column;}
#page-primaria .pr-modulos-col .subjcard{position:sticky; height:312px; margin-bottom:56px;}
#page-primaria .pr-modulos-col .subjcard:nth-child(2){margin-bottom:0;}
#page-primaria .pr-modulos-col .subjcard:nth-child(1){top:124px; z-index:2;}
#page-primaria .pr-modulos-col .subjcard:nth-child(2){top:148px; z-index:3;}
@media (max-width:900px){
  #page-primaria .academic-block .pr-modulo-full{top:76px; margin-bottom:32px;}
  #page-primaria .pr-modulos-grid{display:flex; flex-direction:column; gap:0; align-items:stretch;}
  #page-primaria .pr-modulos-col{display:contents;}
  #page-primaria .pr-modulos-col .subjcard{margin-bottom:32px;}
  #page-primaria .pr-modulos-col:nth-child(1) .subjcard:nth-child(1){top:92px; z-index:2;}
  #page-primaria .pr-modulos-col:nth-child(1) .subjcard:nth-child(2){top:108px; z-index:3;}
  #page-primaria .pr-modulos-col:nth-child(2) .subjcard:nth-child(1){top:124px; z-index:4;}
  #page-primaria .pr-modulos-col:nth-child(2) .subjcard:nth-child(2){top:140px; z-index:5; margin-bottom:0;}
}
#page-primaria .pr-modulo-reveal{opacity:0; transform:translateY(40px); box-shadow:0 24px 48px rgba(0,0,0,.28); transition:opacity .6s ease, transform .6s ease, box-shadow .6s ease;}
#page-primaria .pr-modulo-reveal.in-view{opacity:1; transform:translateY(0); box-shadow:0 4px 16px rgba(0,0,0,.20);}
@media (prefers-reduced-motion: reduce){#page-primaria .pr-modulo-reveal{opacity:1; transform:none; box-shadow:0 4px 16px rgba(0,0,0,.20); transition:none;}}

/* CTA final — orbe cian */
#page-primaria .cta-final h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px);}
#page-primaria .cta-final .lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); color:rgba(248,248,248,.65); max-width:480px !important;}
#page-primaria .cta-final::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle, rgba(50,170,170,.12), transparent 70%); pointer-events:none; z-index:0;}

/* Respiración general — mismo espaciado de preescolar */
#page-primaria .eyebrow{margin-bottom:12px;}
#page-primaria .block h2{margin-bottom:clamp(24px,4vw,40px);}

/* ===== SECUNDARIA =====
   Réplica del sistema visual de #page-preescolar, prefijo sc-,
   scoping #page-secundaria, acento de nivel AZUL #3282B4
   (en vez de naranja #E67832). Morado institucional y gradiente
   aurora se conservan donde son elementos de marca transversales. */

/* Hero */
#page-secundaria .sc-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:clamp(100px,12vw,140px) clamp(20px,5vw,80px) clamp(100px,14vw,160px); background:#0E0E11; overflow:hidden;}
#page-secundaria .sc-hero-orbs{position:absolute; inset:0; z-index:0; pointer-events:none;}
#page-secundaria .sc-hero-orb{position:absolute; border-radius:50%;}
#page-secundaria .sc-hero-orb--blue{width:50vw; height:50vw; top:-10vw; right:-10vw; background:radial-gradient(circle, rgba(50,130,180,.18), transparent 70%);}
#page-secundaria .sc-hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:55% 45%; gap:48px; align-items:center;}

#page-secundaria .sc-hero-content{text-align:left;}
#page-secundaria .sc-hero-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(10px,1.1vw,12px); letter-spacing:.30em; color:#3282B4; text-transform:uppercase; margin-bottom:16px;}
#page-secundaria .sc-hero-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(36px,5.5vw,68px); line-height:1.08; color:#F8F8F8; margin-bottom:20px;}
#page-secundaria .sc-hero-title .sc-hero-accent{color:#3282B4;}
#page-secundaria .sc-hero-sub{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.65); line-height:1.6; max-width:480px; margin-bottom:36px;}

#page-secundaria .sc-hero-chips{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px;}
#page-secundaria .sc-hero-chip{display:inline-flex; align-items:center; gap:6px; background:rgba(50,130,180,.10); border:1px solid rgba(50,130,180,.30); border-radius:999px; padding:6px 14px; font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(11px,1.2vw,13px); color:#3282B4;}
#page-secundaria .sc-hero-chip-dot{width:5px; height:5px; border-radius:50%; background:#3282B4; flex-shrink:0;}

#page-secundaria .sc-hero-btn{
  display:inline-flex; align-items:center; justify-content:center;
  background-color:#17171B;
  background-image:linear-gradient(#17171B,#17171B), linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
  background-origin:border-box;
  background-clip:padding-box, border-box;
  border-radius:999px;
  padding:14px 28px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:500;
  font-size:15px;
  color:#F8F8F8;
  border:1.5px solid transparent;
  text-decoration:none;
  box-shadow:0 8px 28px -6px rgba(180,77,255,.40), 0 12px 24px -8px rgba(232,120,50,.30), 0 12px 24px -4px rgba(60,220,140,.20);
  transition:box-shadow 250ms ease, transform 250ms ease;
}
#page-secundaria .sc-hero-btn:hover{
  box-shadow:0 8px 28px -6px rgba(180,77,255,.52), 0 12px 24px -8px rgba(232,120,50,.39), 0 12px 24px -4px rgba(60,220,140,.26);
  transform:translateY(-2px);
}

#page-secundaria .sc-hero-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:40px;}
#page-secundaria .sc-hero-stat{border-top:2px solid rgba(50,130,180,.35); padding-top:14px;}
#page-secundaria .sc-hero-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,3.5vw,40px); color:#F8F8F8;}
#page-secundaria .sc-hero-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(11px,1.2vw,13px); color:rgba(248,248,248,.50); margin-top:6px; line-height:1.4;}

#page-secundaria .sc-hero-visual{position:relative; height:clamp(380px,55vw,580px);}
#page-secundaria .sc-hero-visual-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
#page-secundaria .sc-hero-visual-orb--blue{width:50%; height:50%; bottom:5%; left:5%; background:radial-gradient(circle, rgba(50,130,180,.16) 0%, transparent 65%);}
#page-secundaria .sc-hero-photo{width:85%; height:88%; object-fit:cover; border-radius:24px 24px 24px 52px; position:absolute; top:6%; right:0; z-index:1; box-shadow:0 20px 60px rgba(0,0,0,.35);}
#page-secundaria .sc-hero-mariposa{position:absolute; bottom:8%; left:2%; width:clamp(60px,8vw,100px); opacity:.18; z-index:0; pointer-events:none; filter:brightness(0) invert(1);}
#page-secundaria .sc-hero-badge{position:absolute; top:12%; left:-4%; z-index:3; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; box-shadow:0 8px 24px rgba(0,0,0,.20);}
#page-secundaria .sc-hero-badge-dot{width:8px; height:8px; border-radius:50%; background:#3282B4; box-shadow:0 0 8px rgba(50,130,180,.6); flex-shrink:0;}

@media (max-width:768px){
  #page-secundaria .sc-hero{min-height:auto; padding:clamp(100px,12vw,140px) 20px 48px; overflow:hidden; max-width:100vw;}
  #page-secundaria .sc-hero-grid{grid-template-columns:1fr; gap:32px; width:100%; overflow:hidden;}
  #page-secundaria .sc-hero-visual{display:none;}
  #page-secundaria .sc-hero-photo{width:100%; height:100%; top:0; right:0; border-radius:20px;}
  #page-secundaria .sc-hero-chips{flex-wrap:wrap;}
  #page-secundaria .sc-hero-badge{display:none;}
  #page-secundaria .sc-hero-content{max-width:100%; overflow:hidden; padding-right:0;}
  #page-secundaria .sc-hero-title{font-size:clamp(28px,8vw,38px); line-height:1.15; word-break:normal; overflow-wrap:break-word;}
  #page-secundaria .sc-hero-stats{grid-template-columns:1fr 1fr; gap:16px;}
  #page-secundaria .sc-hero-stat-num{font-size:24px;}
}
@media (max-width:480px){
  #page-secundaria .sc-hero-stats{grid-template-columns:1fr 1fr 1fr;}
  #page-secundaria .sc-hero-stat-num{font-size:clamp(22px,6vw,28px);}
}

/* Video */
#page-secundaria .sc-video-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:center;}
@media (max-width:768px){#page-secundaria .sc-video-grid{grid-template-columns:1fr;}}

#page-secundaria .sc-video-col{position:relative;}
#page-secundaria .sc-video-frame{border-radius:20px 20px 20px 48px; overflow:hidden; aspect-ratio:3/4; box-shadow:0 4px 16px rgba(0,0,0,.18), 0 20px 48px rgba(0,0,0,.22), 0 0 60px rgba(50,130,180,.20), 0 8px 32px rgba(50,130,180,.12); border:none; outline:none;}
#page-secundaria .sc-video-frame video{width:100%; height:100%; object-fit:cover; display:block;}
#page-secundaria .sc-video-badge{position:absolute; top:-16px; left:-16px; z-index:2; background:rgba(14,14,17,.85); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(50,130,180,.35); border-radius:12px; padding:10px 16px; display:flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8;}
#page-secundaria .sc-video-badge-dot{width:8px; height:8px; border-radius:50%; background:#3282B4; box-shadow:0 0 8px rgba(50,130,180,.6); flex-shrink:0;}
#page-secundaria .sc-video-line{position:absolute; left:-14px; top:20%; height:60%; width:3px; background:#3282B4; border-radius:999px; opacity:.6;}
@media (max-width:768px){#page-secundaria .sc-video-badge{display:none;}}

#page-secundaria .sc-video-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.25em; color:#3282B4; text-transform:uppercase; margin-bottom:14px;}
#page-secundaria .sc-video-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(26px,3.5vw,40px); line-height:1.15; color:#1A1A1E; margin-bottom:16px !important;}
#page-secundaria .sc-video-p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.5vw,16px); line-height:1.7; color:#4A4A5A; max-width:440px; margin-bottom:28px;}
#page-secundaria .sc-video-p .link{color:#3282B4; text-decoration:underline; text-underline-offset:2px;}
#page-secundaria .sc-video-stat{position:relative; margin-top:28px; padding-top:16px; border-top:none;}
#page-secundaria .sc-video-stat::before{content:""; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C); border-radius:999px; opacity:.75;}
#page-secundaria .sc-video-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(32px,4vw,44px); color:#3282B4;}
#page-secundaria .sc-video-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(12px,1.3vw,14px); color:#6B6B7A; margin-top:4px;}

/* Transiciones oscuro<->claro (mismo sistema de preescolar/primaria) */
#page-secundaria section.block.light:has(.sc-video-frame){position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding-top:calc(clamp(72px,9vw,120px) + 48px);}
@media (max-width:768px){#page-secundaria section.block.light:has(.sc-video-frame){border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(72px,9vw,120px) + 28px);}}
#page-secundaria .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-secundaria .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}

#page-secundaria section.block.light:has(.rci-editorial){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-secundaria section.block.light:has(.pgmq-wrap){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}

/* RCI — cabecera */
#page-secundaria .sc-rci-eyebrow{font-size:clamp(11px,1.2vw,13px); letter-spacing:.28em; color:var(--fares-orange); font-weight:600;}
#page-secundaria .sc-rci-heading{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E;}
#page-secundaria .sc-rci-lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.6vw,17px); max-width:560px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px); color:#4A4A5A;}

/* RCI — bento grid: EXACTAMENTE igual a preescolar/primaria en colores
   por celda (naranja/cian/verde) — filosofía del colegio, no del nivel. */
#page-secundaria .sc-bento-grid{display:grid; grid-template-columns:1fr 1fr 1fr; grid-template-rows:auto auto; gap:16px; max-width:1160px; margin-inline:auto;}
#page-secundaria .sc-bento-cell{min-height:clamp(220px,28vw,320px); border-radius:20px; overflow:hidden; position:relative;}

#page-secundaria .sc-bento-text{display:flex; flex-direction:column; justify-content:space-between;}
#page-secundaria .sc-bento-text > div:first-child{position:relative; z-index:1;}
#page-secundaria .sc-bento-orb{position:absolute; top:-30%; right:-20%; width:70%; height:70%; pointer-events:none; z-index:0;}
#page-secundaria .sc-bento-tag{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.22em; text-transform:uppercase; margin-bottom:12px;}
#page-secundaria .sc-bento-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(20px,2.5vw,28px); color:#F8F8F8; line-height:1.2; margin-bottom:10px !important;}
#page-secundaria .sc-bento-desc{font-family:'Inter',sans-serif; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.62); line-height:1.65;}
#page-secundaria .sc-bento-bar{position:absolute; bottom:20px; left:50%; transform:translateX(-50%); width:40px; height:3px; border-radius:999px;}

#page-secundaria .sc-bento-text--renueva{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-secundaria .sc-bento-text--renueva .sc-bento-orb{background:radial-gradient(circle, rgba(232,120,50,.18) 0%, transparent 68%);}
#page-secundaria .sc-bento-text--renueva .sc-bento-tag{color:#E67832;}
#page-secundaria .sc-bento-text--renueva .sc-bento-bar{background:#E67832;}

#page-secundaria .sc-bento-text--conecta{background:#17171B; padding:clamp(24px,3vw,36px);}
#page-secundaria .sc-bento-text--conecta .sc-bento-orb{background:radial-gradient(circle, rgba(50,170,170,.18) 0%, transparent 68%);}
#page-secundaria .sc-bento-text--conecta .sc-bento-tag{color:#32AAAA;}
#page-secundaria .sc-bento-text--conecta .sc-bento-bar{background:#32AAAA;}

#page-secundaria .sc-bento-text--impacta{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-secundaria .sc-bento-text--impacta .sc-bento-orb{background:radial-gradient(circle, rgba(60,220,140,.15) 0%, transparent 68%);}
#page-secundaria .sc-bento-text--impacta .sc-bento-tag{color:#3CDC8C;}
#page-secundaria .sc-bento-text--impacta .sc-bento-bar{background:#3CDC8C;}

#page-secundaria .sc-bento-photo{background-size:cover; background-position:center; background-color:#202024;}
#page-secundaria .sc-bento-photo::after{content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(14,14,17,.15) 0%, transparent 60%);}

@media (max-width:768px){
  #page-secundaria .sc-bento-grid{grid-template-columns:1fr 1fr; grid-template-rows:auto;}
  #page-secundaria .sc-bento-cell{min-height:200px;}
  #page-secundaria .sc-bento-photo{min-height:200px; height:200px;}
}
@media (max-width:480px){
  #page-secundaria .sc-bento-grid{grid-template-columns:1fr;}
  #page-secundaria .sc-bento-photo:nth-of-type(4), #page-secundaria .sc-bento-photo:nth-of-type(6){display:none;}
}

/* 6 razones — cards oscuras con acento azul */
#page-secundaria .sc-razones-section{padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-secundaria .sc-razones-header{margin-bottom:clamp(32px,4vw,48px);}
#page-secundaria .sc-razones-eyebrow{color:#3282B4;}
#page-secundaria .sc-razones-heading{color:#1A1A1E;}

#page-secundaria .sc-razones-panel{max-width:1160px; margin-inline:auto;}

#page-secundaria .sc-razones-grid{position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
#page-secundaria .sc-razones-connector{position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); height:1px; background:linear-gradient(90deg, transparent, rgba(50,130,180,.20) 20%, rgba(50,130,180,.20) 80%, transparent); margin:4px 0; pointer-events:none; z-index:0;}

#page-secundaria .sc-razones-card{
  background:#17171B;
  border-radius:20px;
  padding:clamp(28px,3.5vw,40px);
  border:1px solid rgba(255,255,255,.07);
  display:flex; flex-direction:column; justify-content:space-between;
  min-height:clamp(240px,28vw,300px);
  position:relative; overflow:hidden;
  transition:transform 280ms ease, border-color 280ms ease, box-shadow 280ms ease;
}
#page-secundaria .sc-razones-card::before{
  content:'';
  position:absolute;
  top:-50%; right:-30%;
  width:80%; height:80%;
  background:radial-gradient(circle, rgba(50,130,180,.12) 0%, transparent 68%);
  pointer-events:none;
  opacity:0;
  transition:opacity 350ms ease;
  z-index:0;
}
#page-secundaria .sc-razones-card:hover{
  transform:translateY(-5px);
  border-color:rgba(50,130,180,.28);
  box-shadow:0 8px 32px rgba(50,130,180,.15), 0 24px 56px rgba(50,130,180,.10);
}
#page-secundaria .sc-razones-card:hover::before{opacity:1;}
#page-secundaria .sc-razones-card--1{margin-top:40px;}
#page-secundaria .sc-razones-card--2{margin-top:0;}
#page-secundaria .sc-razones-card--3{margin-top:60px;}
#page-secundaria .sc-razones-card--4{margin-top:0;}
#page-secundaria .sc-razones-card--5{margin-top:40px;}
#page-secundaria .sc-razones-card--6{margin-top:0;}

#page-secundaria .sc-razones-top{position:relative; z-index:1; flex:1;}
#page-secundaria .sc-razones-top svg{width:26px; height:26px; margin-bottom:18px; display:block;}
#page-secundaria .sc-razones-card h3{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(18px,2.2vw,24px); color:#F8F8F8; line-height:1.25; margin:0 0 16px 0 !important;}
#page-secundaria .sc-razones-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.55); line-height:1.7;}

@media (max-width:768px){
  #page-secundaria .sc-razones-grid{grid-template-columns:1fr;}
  #page-secundaria .sc-razones-card--1, #page-secundaria .sc-razones-card--2, #page-secundaria .sc-razones-card--3,
  #page-secundaria .sc-razones-card--4, #page-secundaria .sc-razones-card--5, #page-secundaria .sc-razones-card--6{margin-top:0;}
}

/* 6 habilidades — stage interactivo de tres zonas */
#page-secundaria .sc-habilidades-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-secundaria .sc-habilidades-wrap{max-width:1160px; margin-inline:auto; padding:0;}
#page-secundaria .sc-habilidades-header{text-align:center; max-width:640px; margin:0 auto;}
#page-secundaria .sc-habilidades-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#3282B4; text-transform:uppercase; margin-bottom:14px;}
#page-secundaria .sc-habilidades-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:clamp(48px,6vw,72px);}

#page-secundaria .sc-hab-stage{display:grid; grid-template-columns:180px 1fr 420px; gap:clamp(32px,5vw,64px); align-items:center; min-height:420px;}

#page-secundaria .sc-hab-left{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px;}
#page-secundaria .sc-hab-num-big{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(80px,12vw,160px); line-height:1; color:#3282B4; transition:all 400ms ease;}
#page-secundaria .sc-hab-dots{display:flex; flex-direction:column; gap:10px; align-items:center;}
#page-secundaria .sc-hab-dot{width:8px; height:8px; border-radius:50%; background:rgba(50,130,180,.20); cursor:pointer; transition:all 250ms ease; border:none; padding:0; flex-shrink:0;}
#page-secundaria .sc-hab-dot.is-active{background:#3282B4; box-shadow:0 0 12px rgba(50,130,180,.5); width:10px; height:10px;}

#page-secundaria .sc-hab-center{display:flex; flex-direction:column; justify-content:center;}
#page-secundaria .sc-hab-num-small{font-family:'Inter',sans-serif; font-weight:600; font-size:12px; letter-spacing:.20em; color:#3282B4; margin-bottom:12px;}
#page-secundaria .sc-hab-title{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(24px,3.5vw,42px); color:#1A1A1E; line-height:1.15; margin:0 0 16px; transition:opacity 300ms ease, transform 300ms ease;}
#page-secundaria .sc-hab-desc{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.6vw,17px); color:#5A5A6A; line-height:1.75; max-width:440px; margin:0 0 32px; transition:opacity 300ms ease;}
#page-secundaria .sc-hab-nav{display:flex; gap:12px; align-items:center;}
#page-secundaria .sc-hab-btn{width:40px; height:40px; background:rgba(50,130,180,.06); border:1px solid rgba(50,130,180,.20); border-radius:50%; cursor:pointer; font-family:'Space Grotesk'; font-size:16px; color:#3282B4; display:flex; align-items:center; justify-content:center; transition:background 250ms ease, border-color 250ms ease;}
#page-secundaria .sc-hab-btn:hover{background:rgba(50,130,180,.12); border-color:rgba(50,130,180,.40);}
#page-secundaria .sc-hab-count{font-family:'Inter',sans-serif; font-size:13px; color:#9A9AA8;}
#page-secundaria .sc-hab-dots--mobile{display:none;}

#page-secundaria .sc-hab-right{position:relative; border-radius:24px 24px 24px 52px; overflow:hidden; height:clamp(320px,40vw,460px);}
#page-secundaria .sc-hab-photo{width:100%; height:100%; object-fit:cover; transition:opacity 400ms ease, transform 400ms ease; display:block;}
#page-secundaria .sc-hab-right::after{content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.35) 0%, transparent 50%); pointer-events:none;}
#page-secundaria .sc-hab-badge{position:absolute; bottom:20px; left:20px; right:20px; background:rgba(14,14,17,.75); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:12px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; z-index:1;}

@media (max-width:768px){
  #page-secundaria .sc-hab-stage{grid-template-columns:1fr; min-height:0;}
  #page-secundaria .sc-hab-right{order:1; height:260px;}
  #page-secundaria .sc-hab-center{order:2;}
  #page-secundaria .sc-hab-left{display:none;}
  #page-secundaria .sc-hab-dots--mobile{display:flex; flex-direction:row; justify-content:center; gap:8px; margin-top:16px;}
  #page-secundaria .sc-hab-btn{width:48px; height:48px;}
}

/* Plan académico: fondo oscuro (glassmorfismo), Liderazgo (nuestro ADN) a todo el ancho + pila con scroll en las otras 4 */
#page-secundaria .academic-block{background:#0E0E11; padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px); position:relative; border-radius:48px; margin-inline:clamp(16px,3vw,48px);}
@media (max-width:768px){#page-secundaria .academic-block{border-radius:28px; margin-inline:12px;}}
#page-secundaria .sc-academic-glow{position:absolute; inset:0; border-radius:inherit; overflow:hidden; pointer-events:none; z-index:0;}
#page-secundaria .sc-academic-glow::before{content:""; position:absolute; top:-20%; right:-10%; width:55vw; height:55vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.16) 0%, transparent 68%);}
#page-secundaria .sc-academic-glow::after{content:""; position:absolute; bottom:-15%; left:-8%; width:35vw; height:35vw; border-radius:50%; background:radial-gradient(circle, rgba(50,130,180,.07) 0%, transparent 65%);}
#page-secundaria .academic-block .wrap{position:relative; z-index:1;}
#page-secundaria .academic-block .eyebrow{color:#3282B4;}
#page-secundaria .academic-block h2{color:#F8F8F8;}
#page-secundaria .academic-block .lede{color:rgba(248,248,248,.55) !important;}

#page-secundaria .academic-block .subjcard{background:rgba(255,255,255,.04); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,.09); border-radius:20px; padding:clamp(24px,3vw,36px); position:relative; overflow:hidden; box-sizing:border-box; transition:border-color 300ms ease, box-shadow 300ms ease, transform 300ms ease;}
#page-secundaria .academic-block .subjcard::before{content:""; position:absolute; top:-50%; right:-30%; width:80%; height:80%; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.12) 0%, transparent 68%); opacity:0; transition:opacity 350ms ease; pointer-events:none; z-index:0;}
#page-secundaria .academic-block .subjcard:hover{border-color:rgba(180,77,255,.28); box-shadow:0 0 0 1px rgba(180,77,255,.10), 0 8px 32px rgba(128,0,176,.15), 0 24px 56px rgba(128,0,176,.08);}
#page-secundaria .academic-block .subjcard:hover::before{opacity:1;}
#page-secundaria .academic-block .subj-icon{background:rgba(50,130,180,.10);}
#page-secundaria .academic-block .subj-icon svg{color:#3282B4;}
#page-secundaria .academic-block .subjcard h4{color:#F8F8F8; position:relative; z-index:1;}
#page-secundaria .academic-block .subjcard .tagline{color:rgba(248,248,248,.40); font-style:normal;}
#page-secundaria .academic-block .subjcard h4::after{content:""; display:block; height:0; border-bottom:1px solid rgba(255,255,255,.07); margin:14px 0 16px;}
#page-secundaria .academic-block .subjcard ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; position:relative; z-index:1;}
#page-secundaria .academic-block .subjcard li{display:flex; align-items:center; gap:8px; flex-wrap:wrap; color:rgba(248,248,248,.70); line-height:1.4; transition:color 200ms ease;}
#page-secundaria .academic-block .subjcard li:hover{color:rgba(248,248,248,.95);}
#page-secundaria .academic-block .badge-tag{margin-left:0;}
#page-secundaria .academic-block .badge-adn{background:rgba(128,0,176,.15); border:1px solid rgba(180,77,255,.35); color:#C084FF;}
#page-secundaria .academic-block .badge-nuevo{background:rgba(60,220,140,.12); border:1px solid rgba(60,220,140,.35); color:#3CDC8C;}

#page-secundaria .sc-modulos-stack{margin-top:36px; position:relative; z-index:1;}
#page-secundaria .academic-block .sc-modulo-full{width:100%; margin-bottom:56px; position:sticky; top:100px; z-index:1;}
#page-secundaria .sc-modulos-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:start;}
#page-secundaria .sc-modulos-col{display:flex; flex-direction:column;}
#page-secundaria .sc-modulos-col .subjcard{position:sticky; height:312px; margin-bottom:56px;}
#page-secundaria .sc-modulos-col .subjcard:nth-child(2){margin-bottom:0;}
#page-secundaria .sc-modulos-col .subjcard:nth-child(1){top:124px; z-index:2;}
#page-secundaria .sc-modulos-col .subjcard:nth-child(2){top:148px; z-index:3;}
@media (max-width:900px){
  #page-secundaria .academic-block .sc-modulo-full{top:76px; margin-bottom:32px;}
  #page-secundaria .sc-modulos-grid{display:flex; flex-direction:column; gap:0; align-items:stretch;}
  #page-secundaria .sc-modulos-col{display:contents;}
  #page-secundaria .sc-modulos-col .subjcard{margin-bottom:32px;}
  #page-secundaria .sc-modulos-col:nth-child(1) .subjcard:nth-child(1){top:92px; z-index:2;}
  #page-secundaria .sc-modulos-col:nth-child(1) .subjcard:nth-child(2){top:108px; z-index:3;}
  #page-secundaria .sc-modulos-col:nth-child(2) .subjcard:nth-child(1){top:124px; z-index:4;}
  #page-secundaria .sc-modulos-col:nth-child(2) .subjcard:nth-child(2){top:140px; z-index:5; margin-bottom:0;}
}
#page-secundaria .sc-modulo-reveal{opacity:0; transform:translateY(40px); box-shadow:0 24px 48px rgba(0,0,0,.28); transition:opacity .6s ease, transform .6s ease, box-shadow .6s ease;}
#page-secundaria .sc-modulo-reveal.in-view{opacity:1; transform:translateY(0); box-shadow:0 4px 16px rgba(0,0,0,.20);}
@media (prefers-reduced-motion: reduce){#page-secundaria .sc-modulo-reveal{opacity:1; transform:none; box-shadow:0 4px 16px rgba(0,0,0,.20); transition:none;}}

/* Pedagogía / Learning Experiences — layout asimétrico, ícono azul */
#page-secundaria .sc-exp-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-secundaria .sc-exp-header{text-align:center; max-width:640px; margin-inline:auto;}
#page-secundaria .sc-exp-header .eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#3282B4; text-transform:uppercase; margin-bottom:14px;}
#page-secundaria .sc-exp-header h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:16px;}
#page-secundaria .sc-exp-header .lede{font-family:'Inter',sans-serif; font-size:clamp(14px,1.5vw,16px); color:#5A5A6A; max-width:640px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px);}
#page-secundaria .sc-exp-section .exp-grid{display:block; margin-bottom:clamp(40px,6vw,64px); margin-top:0;}

#page-secundaria .ped-row1{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:20px; margin-bottom:20px;}
#page-secundaria .ped-row2{display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:720px; margin-inline:auto;}
#page-secundaria .exp-card{min-width:0; width:100%;}
@media (max-width:768px){
  #page-secundaria .ped-row1{grid-template-columns:1fr;}
  #page-secundaria .ped-row2{grid-template-columns:1fr;}
}

#page-secundaria .exp-card{background:#FFFFFF; border-radius:20px; padding:clamp(24px,3vw,36px); border:1px solid rgba(50,130,180,.08); box-shadow:0 2px 8px rgba(50,130,180,.05), 0 8px 28px rgba(50,130,180,.08), 0 16px 40px rgba(50,130,180,.04); display:flex; flex-direction:row-reverse; align-items:flex-start; gap:16px; position:relative; overflow:hidden; transition:transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;}
#page-secundaria .exp-photo{flex:0 0 40%; min-width:0; aspect-ratio:1/1; width:auto; height:auto; object-fit:cover; border-radius:12px; position:relative; z-index:1;}
@media (min-width:769px){#page-secundaria .exp-photo{flex:0 0 100px;}}
#page-secundaria .exp-card-body{display:flex; flex-direction:column; min-width:0; flex:1; position:relative; z-index:1;}
#page-secundaria .exp-card::before{content:""; position:absolute; top:-50%; right:-30%; width:80%; height:80%; border-radius:50%; background:radial-gradient(circle, rgba(50,130,180,.10) 0%, transparent 68%); opacity:0; transition:opacity 350ms ease; pointer-events:none; z-index:0;}
#page-secundaria .exp-card:hover{transform:translateY(-4px); border-color:rgba(50,130,180,.18); box-shadow:0 4px 16px rgba(50,130,180,.10), 0 16px 40px rgba(50,130,180,.13), 0 28px 56px rgba(50,130,180,.08);}
#page-secundaria .exp-card:hover::before{opacity:1;}

#page-secundaria .exp-card--hero{border:1px solid rgba(50,130,180,.15); background:linear-gradient(135deg, #FFFFFF 60%, rgba(50,130,180,.04) 100%);}
#page-secundaria .exp-card--hero::after{content:""; position:absolute; top:0; left:24px; right:24px; height:2.5px; background:linear-gradient(90deg, #3282B4, rgba(50,130,180,0)); border-radius:0 0 999px 999px;}

#page-secundaria .exp-card .exp-icon{width:44px; height:44px; background:rgba(50,130,180,.08); border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:12px; position:relative; z-index:1;}
#page-secundaria .exp-card .exp-icon svg{width:22px; height:22px; color:#3282B4;}

#page-secundaria .exp-card h3{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(15px,1.8vw,19px); color:#1A1A1E; margin-bottom:10px; position:relative; z-index:1;}
#page-secundaria .exp-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:#5A5A6A; line-height:1.7; position:relative; z-index:1;}

/* CTA final — orbe azul */
#page-secundaria .cta-final h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px);}
#page-secundaria .cta-final .lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); color:rgba(248,248,248,.65); max-width:480px !important;}
#page-secundaria .cta-final::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle, rgba(50,130,180,.12), transparent 70%); pointer-events:none; z-index:0;}

/* Respiración general — mismo espaciado de preescolar/primaria */
#page-secundaria .eyebrow{margin-bottom:12px;}
#page-secundaria .block h2{margin-bottom:clamp(24px,4vw,40px);}

/* ===== MINDSETR12 =====
   Réplica del sistema visual de #page-preescolar, prefijo mr-,
   scoping #page-mindsetr12, acento de nivel VERDE #8000B0.
   Sin Plan académico ni Pedagogía — no aplican a este bootcamp.
   Sección propia "El método" sin equivalente en los otros 3. */

/* Hero */
#page-mindsetr12 .mr-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:clamp(100px,12vw,140px) clamp(20px,5vw,80px) clamp(100px,14vw,160px); background:#0E0E11; overflow:hidden;}
#page-mindsetr12 .mr-hero-orbs{position:absolute; inset:0; z-index:0; pointer-events:none;}
#page-mindsetr12 .mr-hero-orb{position:absolute; border-radius:50%;}
#page-mindsetr12 .mr-hero-orb--purple{width:50vw; height:50vw; top:-10vw; right:-10vw; background:radial-gradient(circle, rgba(128,0,176,.15), transparent 70%);}
#page-mindsetr12 .mr-hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:55% 45%; gap:48px; align-items:center;}

#page-mindsetr12 .mr-hero-content{text-align:left;}
#page-mindsetr12 .mr-hero-launch{display:inline-flex; align-items:center; gap:6px; background:linear-gradient(135deg,var(--fares-purple),var(--fares-glow)); color:#fff; font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(11px,1.2vw,13px); letter-spacing:.02em; padding:7px 16px; border-radius:999px; box-shadow:0 2px 14px rgba(128,0,176,.4); margin-bottom:18px;}
#page-mindsetr12 .mr-hero-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(10px,1.1vw,12px); letter-spacing:.30em; color:#8000B0; text-transform:uppercase; margin-bottom:16px;}
#page-mindsetr12 .mr-hero-logo{height:36px; width:auto; margin-bottom:16px; opacity:.9; display:block;}
#page-mindsetr12 .mr-hero-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(36px,5.5vw,68px); line-height:1.08; color:#F8F8F8; margin-bottom:20px;}
#page-mindsetr12 .mr-hero-title .mr-hero-accent{color:#8000B0;}
#page-mindsetr12 .mr-hero-sub{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.65); line-height:1.6; max-width:480px; margin-bottom:36px;}

#page-mindsetr12 .mr-hero-chips{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px;}
#page-mindsetr12 .mr-hero-chip{display:inline-flex; align-items:center; gap:6px; background:rgba(128,0,176,.10); border:1px solid rgba(128,0,176,.30); border-radius:999px; padding:6px 14px; font-family:'Inter',sans-serif; font-weight:500; font-size:clamp(11px,1.2vw,13px); color:var(--fares-white);}
#page-mindsetr12 .mr-hero-chip-dot{width:5px; height:5px; border-radius:50%; background:#8000B0; flex-shrink:0;}

#page-mindsetr12 .mr-hero-btn{
  display:inline-flex; align-items:center; justify-content:center;
  background-color:#17171B;
  background-image:linear-gradient(#17171B,#17171B), linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C);
  background-origin:border-box;
  background-clip:padding-box, border-box;
  border-radius:999px;
  padding:14px 28px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:500;
  font-size:15px;
  color:#F8F8F8;
  border:1.5px solid transparent;
  text-decoration:none;
  box-shadow:0 8px 28px -6px rgba(180,77,255,.40), 0 12px 24px -8px rgba(232,120,50,.30), 0 12px 24px -4px rgba(60,220,140,.20);
  transition:box-shadow 250ms ease, transform 250ms ease;
}
#page-mindsetr12 .mr-hero-btn:hover{
  box-shadow:0 8px 28px -6px rgba(180,77,255,.52), 0 12px 24px -8px rgba(232,120,50,.39), 0 12px 24px -4px rgba(60,220,140,.26);
  transform:translateY(-2px);
}

#page-mindsetr12 .mr-hero-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:40px;}
#page-mindsetr12 .mr-hero-stat{border-top:2px solid rgba(128,0,176,.35); padding-top:14px;}
#page-mindsetr12 .mr-hero-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,3.5vw,40px); color:#F8F8F8;}
#page-mindsetr12 .mr-hero-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(11px,1.2vw,13px); color:rgba(248,248,248,.50); margin-top:6px; line-height:1.4;}

#page-mindsetr12 .mr-hero-visual{position:relative; height:clamp(380px,55vw,580px);}
#page-mindsetr12 .mr-hero-visual-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
#page-mindsetr12 .mr-hero-visual-orb--purple{width:50%; height:50%; bottom:5%; left:5%; background:radial-gradient(circle, rgba(128,0,176,.15) 0%, transparent 65%);}
#page-mindsetr12 .mr-hero-photo{width:85%; height:88%; object-fit:cover; border-radius:24px 24px 24px 52px; position:absolute; top:6%; right:0; z-index:1; box-shadow:0 20px 60px rgba(0,0,0,.35);}
#page-mindsetr12 .mr-hero-mariposa{position:absolute; bottom:8%; left:2%; width:clamp(60px,8vw,100px); opacity:.18; z-index:0; pointer-events:none; filter:brightness(0) invert(1);}
#page-mindsetr12 .mr-hero-badge{position:absolute; top:12%; left:-4%; z-index:3; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; box-shadow:0 8px 24px rgba(0,0,0,.20);}
#page-mindsetr12 .mr-hero-badge-dot{width:8px; height:8px; border-radius:50%; background:#8000B0; box-shadow:0 0 8px rgba(128,0,176,.6); flex-shrink:0;}

@media (max-width:768px){
  #page-mindsetr12 .mr-hero{min-height:auto; padding:clamp(100px,12vw,140px) 20px 48px; overflow:hidden; max-width:100vw;}
  #page-mindsetr12 .mr-hero-grid{grid-template-columns:1fr; gap:32px; width:100%; overflow:hidden;}
  #page-mindsetr12 .mr-hero-visual{display:none;}
  #page-mindsetr12 .mr-hero-chips{flex-wrap:wrap;}
  #page-mindsetr12 .mr-hero-badge{display:none;}
  #page-mindsetr12 .mr-hero-content{max-width:100%; overflow:hidden; padding-right:0;}
  #page-mindsetr12 .mr-hero-title{font-size:clamp(28px,8vw,38px); line-height:1.15; word-break:normal; overflow-wrap:break-word;}
  #page-mindsetr12 .mr-hero-stats{grid-template-columns:1fr 1fr; gap:16px;}
  #page-mindsetr12 .mr-hero-stat-num{font-size:24px;}
}
@media (max-width:480px){
  #page-mindsetr12 .mr-hero-stats{grid-template-columns:1fr 1fr 1fr;}
  #page-mindsetr12 .mr-hero-stat-num{font-size:clamp(22px,6vw,28px);}
}

/* Video */
#page-mindsetr12 .mr-video-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:center;}
@media (max-width:768px){#page-mindsetr12 .mr-video-grid{grid-template-columns:1fr;}}

#page-mindsetr12 .mr-video-col{position:relative;}
#page-mindsetr12 .mr-video-frame{border-radius:20px 20px 20px 48px; overflow:hidden; aspect-ratio:16/9; box-shadow:0 4px 16px rgba(0,0,0,.18), 0 20px 48px rgba(0,0,0,.22), 0 0 60px rgba(128,0,176,.20), 0 8px 32px rgba(128,0,176,.12); border:none; outline:none;}
#page-mindsetr12 .mr-video-frame video, #page-mindsetr12 .mr-video-frame img{width:100%; height:100%; object-fit:cover; display:block;}
#page-mindsetr12 .mr-video-badge{position:absolute; top:-16px; left:-16px; z-index:2; background:rgba(14,14,17,.85); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(128,0,176,.35); border-radius:12px; padding:10px 16px; display:flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8;}
#page-mindsetr12 .mr-video-badge-dot{width:8px; height:8px; border-radius:50%; background:#8000B0; box-shadow:0 0 8px rgba(128,0,176,.6); flex-shrink:0;}
#page-mindsetr12 .mr-video-line{position:absolute; left:-14px; top:20%; height:60%; width:3px; background:#8000B0; border-radius:999px; opacity:.6;}
@media (max-width:768px){#page-mindsetr12 .mr-video-badge{display:none;}}

#page-mindsetr12 .mr-video-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.25em; color:#8000B0; text-transform:uppercase; margin-bottom:14px;}
#page-mindsetr12 .mr-video-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(26px,3.5vw,40px); line-height:1.15; color:#1A1A1E; margin-bottom:16px !important;}
#page-mindsetr12 .mr-video-p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.5vw,16px); line-height:1.7; color:#4A4A5A; max-width:440px; margin-bottom:28px;}
#page-mindsetr12 .mr-video-stat{position:relative; margin-top:28px; padding-top:16px; border-top:none;}
#page-mindsetr12 .mr-video-stat::before{content:""; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#E67832,#DC3228,#B44DFF,#3282B4,#3CDC8C); border-radius:999px; opacity:.75;}
#page-mindsetr12 .mr-video-stat-num{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(32px,4vw,44px); color:#8000B0;}
#page-mindsetr12 .mr-video-stat-lbl{font-family:'Inter',sans-serif; font-size:clamp(12px,1.3vw,14px); color:#6B6B7A; margin-top:4px;}

/* Transiciones oscuro<->claro (mismo sistema de los otros 3) */
#page-mindsetr12 section.block.light:has(.mr-video-frame){position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding-top:calc(clamp(72px,9vw,120px) + 48px);}
@media (max-width:768px){#page-mindsetr12 section.block.light:has(.mr-video-frame){border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(72px,9vw,120px) + 28px);}}
#page-mindsetr12 .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-mindsetr12 .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}

#page-mindsetr12 section.block.light:has(.rci-editorial){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-mindsetr12 section.block.light:has(.pgmq-wrap){padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}

/* El método — sección única, sin equivalente pe-/pr-/sc- */
#page-mindsetr12 .mr-method-wrap{background:#FBF8FC; padding:clamp(48px,6vw,72px) 0;}
#page-mindsetr12 .mr-method-section{background:transparent; padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px); position:relative; overflow:hidden;}
@media (max-width:768px){
  #page-mindsetr12 .mr-method-wrap{padding:clamp(32px,5vw,48px) 0;}
}
#page-mindsetr12 .mr-method-section::before{content:""; position:absolute; top:-20%; right:-10%; width:50vw; height:50vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.07) 0%, transparent 68%); pointer-events:none; z-index:0;}
#page-mindsetr12 .mr-method-section .wrap{position:relative; z-index:1;}
#page-mindsetr12 .mr-method-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#8000B0; text-transform:uppercase; margin-bottom:14px;}
#page-mindsetr12 .mr-method-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#241a29; margin-bottom:12px;}
#page-mindsetr12 .mr-method-lede{font-family:'Inter',sans-serif; font-size:clamp(14px,1.5vw,16px); color:#5b5462; max-width:640px; margin-inline:auto; margin-bottom:clamp(40px,6vw,64px) !important;}

#page-mindsetr12 .mr-method-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:0; position:relative; max-width:1160px; margin-inline:auto;}
#page-mindsetr12 .mr-method-grid::before{content:""; position:absolute; top:44px; left:15%; right:15%; height:1px; background:linear-gradient(90deg, transparent, rgba(128,0,176,.25) 20%, rgba(128,0,176,.25) 80%, transparent); z-index:0;}

#page-mindsetr12 .mr-method-card{background:#fff; border:1px solid rgba(128,0,176,.15); box-shadow:0 4px 18px rgba(128,0,176,.06); border-radius:20px; padding:clamp(28px,3.5vw,40px); margin:0 10px; position:relative; z-index:1; transition:border-color 300ms ease, box-shadow 300ms ease, transform 300ms ease;}
#page-mindsetr12 .mr-method-card:hover{border-color:rgba(128,0,176,.30); box-shadow:0 8px 32px rgba(128,0,176,.12), 0 24px 56px rgba(128,0,176,.08); transform:translateY(-4px);}

#page-mindsetr12 .mr-method-photo{width:100%; aspect-ratio:4/3; border-radius:14px; overflow:hidden; margin-bottom:20px; background:rgba(128,0,176,.06);}
#page-mindsetr12 .mr-method-photo img{width:100%; height:100%; object-fit:cover; display:block;}
#page-mindsetr12 .mr-method-photo--logo{background:#0B0B0D;}
#page-mindsetr12 .mr-method-photo--logo img{object-fit:contain; padding:24px; box-sizing:border-box;}
#page-mindsetr12 .mr-method-step-num{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.25em; color:#8000B0; text-transform:uppercase; margin-bottom:16px;}
#page-mindsetr12 .mr-method-circle{width:52px; height:52px; border-radius:50%; background:rgba(128,0,176,.08); border:1.5px solid rgba(128,0,176,.25); display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk'; font-weight:700; font-size:22px; color:#8000B0; margin-bottom:20px;}
#page-mindsetr12 .mr-method-title{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(18px,2.2vw,24px); color:#241a29; margin-bottom:12px;}
#page-mindsetr12 .mr-method-desc{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,15px); color:#4A4A5A; line-height:1.7;}
#page-mindsetr12 .mr-method-date{font-family:'Inter',sans-serif; font-weight:700; font-size:12px; color:#8000B0; margin-top:14px; padding-top:14px; border-top:1px solid rgba(128,0,176,.15);}

@media (max-width:768px){
  #page-mindsetr12 .mr-method-grid{grid-template-columns:1fr; gap:20px;}
  #page-mindsetr12 .mr-method-grid::before{display:none;}
  #page-mindsetr12 .mr-method-card{margin:0; border-radius:16px;}
}

/* RCI — cabecera */
#page-mindsetr12 .mr-rci-eyebrow{font-size:clamp(11px,1.2vw,13px); letter-spacing:.28em; color:#8000B0; font-weight:600;}
#page-mindsetr12 .mr-rci-heading{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E;}
#page-mindsetr12 .mr-rci-lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.6vw,17px); max-width:560px; margin-inline:auto; text-align:center; margin-bottom:clamp(40px,6vw,64px); color:#4A4A5A;}
#page-mindsetr12 .rci-tag--impacta{color:#8000B0;}

/* RCI — bento grid: EXACTAMENTE igual a los otros 3 en colores por celda */
#page-mindsetr12 .mr-bento-grid{display:grid; grid-template-columns:1fr 1fr 1fr; grid-template-rows:auto auto; gap:16px; max-width:1160px; margin-inline:auto;}
#page-mindsetr12 .mr-bento-cell{min-height:clamp(220px,28vw,320px); border-radius:20px; overflow:hidden; position:relative;}

#page-mindsetr12 .mr-bento-text{display:flex; flex-direction:column; justify-content:space-between;}
#page-mindsetr12 .mr-bento-text > div:first-child{position:relative; z-index:1;}
#page-mindsetr12 .mr-bento-orb{position:absolute; top:-30%; right:-20%; width:70%; height:70%; pointer-events:none; z-index:0;}
#page-mindsetr12 .mr-bento-tag{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.22em; text-transform:uppercase; margin-bottom:12px;}
#page-mindsetr12 .mr-bento-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(20px,2.5vw,28px); color:#F8F8F8; line-height:1.2; margin-bottom:10px !important;}
#page-mindsetr12 .mr-bento-desc{font-family:'Inter',sans-serif; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.62); line-height:1.65;}
#page-mindsetr12 .mr-bento-bar{position:absolute; bottom:20px; left:50%; transform:translateX(-50%); width:40px; height:3px; border-radius:999px;}

#page-mindsetr12 .mr-bento-text--renueva{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-mindsetr12 .mr-bento-text--renueva .mr-bento-orb{background:radial-gradient(circle, rgba(232,120,50,.18) 0%, transparent 68%);}
#page-mindsetr12 .mr-bento-text--renueva .mr-bento-tag{color:#E67832;}
#page-mindsetr12 .mr-bento-text--renueva .mr-bento-bar{background:#E67832;}

#page-mindsetr12 .mr-bento-text--conecta{background:#17171B; padding:clamp(24px,3vw,36px);}
#page-mindsetr12 .mr-bento-text--conecta .mr-bento-orb{background:radial-gradient(circle, rgba(50,170,170,.18) 0%, transparent 68%);}
#page-mindsetr12 .mr-bento-text--conecta .mr-bento-tag{color:#32AAAA;}
#page-mindsetr12 .mr-bento-text--conecta .mr-bento-bar{background:#32AAAA;}

#page-mindsetr12 .mr-bento-text--impacta{background:#0E0E11; padding:clamp(24px,3vw,36px);}
#page-mindsetr12 .mr-bento-text--impacta .mr-bento-orb{background:radial-gradient(circle, rgba(128,0,176,.15) 0%, transparent 68%);}
#page-mindsetr12 .mr-bento-text--impacta .mr-bento-tag{color:#8000B0;}
#page-mindsetr12 .mr-bento-text--impacta .mr-bento-bar{background:#8000B0;}

#page-mindsetr12 .mr-bento-photo{background-size:cover; background-position:center; background-color:#202024;}
#page-mindsetr12 .mr-bento-photo::after{content:""; position:absolute; inset:0; background:linear-gradient(135deg, rgba(14,14,17,.15) 0%, transparent 60%);}

@media (max-width:768px){
  #page-mindsetr12 .mr-bento-grid{grid-template-columns:1fr 1fr; grid-template-rows:auto;}
  #page-mindsetr12 .mr-bento-cell{min-height:200px;}
  #page-mindsetr12 .mr-bento-photo{min-height:200px; height:200px;}
}
@media (max-width:480px){
  #page-mindsetr12 .mr-bento-grid{grid-template-columns:1fr;}
  #page-mindsetr12 .mr-bento-photo:nth-of-type(4), #page-mindsetr12 .mr-bento-photo:nth-of-type(6){display:none;}
}

/* 6 razones — cards oscuras con acento verde */
#page-mindsetr12 .mr-razones-section{padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-mindsetr12 .mr-razones-header{margin-bottom:clamp(32px,4vw,48px);}
#page-mindsetr12 .mr-razones-eyebrow{color:#8000B0;}
#page-mindsetr12 .mr-razones-heading{color:#1A1A1E;}

#page-mindsetr12 .mr-razones-panel{max-width:1160px; margin-inline:auto;}

#page-mindsetr12 .mr-razones-grid{position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
#page-mindsetr12 .mr-razones-connector{position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); height:1px; background:linear-gradient(90deg, transparent, rgba(128,0,176,.20) 20%, rgba(128,0,176,.20) 80%, transparent); margin:4px 0; pointer-events:none; z-index:0;}

#page-mindsetr12 .mr-razones-card{
  background:#17171B;
  border-radius:20px;
  padding:clamp(28px,3.5vw,40px);
  border:1px solid rgba(255,255,255,.07);
  display:flex; flex-direction:column; justify-content:space-between;
  min-height:clamp(240px,28vw,300px);
  position:relative; overflow:hidden;
  transition:transform 280ms ease, border-color 280ms ease, box-shadow 280ms ease;
}
#page-mindsetr12 .mr-razones-card::before{
  content:'';
  position:absolute;
  top:-50%; right:-30%;
  width:80%; height:80%;
  background:radial-gradient(circle, rgba(60,220,140,.12) 0%, transparent 68%);
  pointer-events:none;
  opacity:0;
  transition:opacity 350ms ease;
  z-index:0;
}
#page-mindsetr12 .mr-razones-card:hover{
  transform:translateY(-5px);
  border-color:rgba(60,220,140,.28);
  box-shadow:0 8px 32px rgba(60,220,140,.15), 0 24px 56px rgba(60,220,140,.10);
}
#page-mindsetr12 .mr-razones-card:hover::before{opacity:1;}
#page-mindsetr12 .mr-razones-card--1{margin-top:40px;}
#page-mindsetr12 .mr-razones-card--2{margin-top:0;}
#page-mindsetr12 .mr-razones-card--3{margin-top:60px;}
#page-mindsetr12 .mr-razones-card--4{margin-top:0;}
#page-mindsetr12 .mr-razones-card--5{margin-top:40px;}
#page-mindsetr12 .mr-razones-card--6{margin-top:0;}

#page-mindsetr12 .mr-razones-top{position:relative; z-index:1; flex:1;}
#page-mindsetr12 .mr-razones-top svg{width:26px; height:26px; margin-bottom:18px; display:block;}
#page-mindsetr12 .mr-razones-card h3{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(18px,2.2vw,24px); color:#F8F8F8; line-height:1.25; margin:0 0 16px 0 !important;}
#page-mindsetr12 .mr-razones-card p{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(13px,1.4vw,14px); color:rgba(248,248,248,.55); line-height:1.7;}

@media (max-width:768px){
  #page-mindsetr12 .mr-razones-grid{grid-template-columns:1fr;}
  #page-mindsetr12 .mr-razones-card--1, #page-mindsetr12 .mr-razones-card--2, #page-mindsetr12 .mr-razones-card--3,
  #page-mindsetr12 .mr-razones-card--4, #page-mindsetr12 .mr-razones-card--5, #page-mindsetr12 .mr-razones-card--6{margin-top:0;}
}

/* 6 habilidades — stage interactivo de tres zonas */
#page-mindsetr12 .mr-habilidades-section{padding:clamp(72px,9vw,110px) clamp(20px,5vw,80px);}
#page-mindsetr12 .mr-habilidades-wrap{max-width:1160px; margin-inline:auto; padding:0;}
#page-mindsetr12 .mr-habilidades-header{text-align:center; max-width:640px; margin:0 auto;}
#page-mindsetr12 .mr-habilidades-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#8000B0; text-transform:uppercase; margin-bottom:14px;}
#page-mindsetr12 .mr-habilidades-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E; margin-bottom:clamp(48px,6vw,72px);}

#page-mindsetr12 .mr-hab-stage{display:grid; grid-template-columns:180px 1fr 420px; gap:clamp(32px,5vw,64px); align-items:center; min-height:420px;}

#page-mindsetr12 .mr-hab-left{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px;}
#page-mindsetr12 .mr-hab-num-big{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(80px,12vw,160px); line-height:1; color:#8000B0; transition:all 400ms ease;}
#page-mindsetr12 .mr-hab-dots{display:flex; flex-direction:column; gap:10px; align-items:center;}
#page-mindsetr12 .mr-hab-dot{width:8px; height:8px; border-radius:50%; background:rgba(128,0,176,.20); cursor:pointer; transition:all 250ms ease; border:none; padding:0; flex-shrink:0;}
#page-mindsetr12 .mr-hab-dot.is-active{background:#8000B0; box-shadow:0 0 12px rgba(128,0,176,.5); width:10px; height:10px;}

#page-mindsetr12 .mr-hab-center{display:flex; flex-direction:column; justify-content:center;}
#page-mindsetr12 .mr-hab-num-small{font-family:'Inter',sans-serif; font-weight:600; font-size:12px; letter-spacing:.20em; color:#8000B0; margin-bottom:12px;}
#page-mindsetr12 .mr-hab-title{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(24px,3.5vw,42px); color:#1A1A1E; line-height:1.15; margin:0 0 16px; transition:opacity 300ms ease, transform 300ms ease;}
#page-mindsetr12 .mr-hab-desc{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(14px,1.6vw,17px); color:#5A5A6A; line-height:1.75; max-width:440px; margin:0 0 32px; transition:opacity 300ms ease;}
#page-mindsetr12 .mr-hab-nav{display:flex; gap:12px; align-items:center;}
#page-mindsetr12 .mr-hab-btn{width:40px; height:40px; background:rgba(128,0,176,.06); border:1px solid rgba(128,0,176,.20); border-radius:50%; cursor:pointer; font-family:'Space Grotesk'; font-size:16px; color:#8000B0; display:flex; align-items:center; justify-content:center; transition:background 250ms ease, border-color 250ms ease;}
#page-mindsetr12 .mr-hab-btn:hover{background:rgba(128,0,176,.12); border-color:rgba(128,0,176,.40);}
#page-mindsetr12 .mr-hab-count{font-family:'Inter',sans-serif; font-size:13px; color:#9A9AA8;}
#page-mindsetr12 .mr-hab-dots--mobile{display:none;}

#page-mindsetr12 .mr-hab-right{position:relative; border-radius:24px 24px 24px 52px; overflow:hidden; height:clamp(320px,40vw,460px);}
#page-mindsetr12 .mr-hab-photo{width:100%; height:100%; object-fit:cover; transition:opacity 400ms ease, transform 400ms ease; display:block;}
#page-mindsetr12 .mr-hab-right::after{content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.35) 0%, transparent 50%); pointer-events:none;}
#page-mindsetr12 .mr-hab-badge{position:absolute; bottom:20px; left:20px; right:20px; background:rgba(14,14,17,.75); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:12px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; z-index:1;}

@media (max-width:768px){
  #page-mindsetr12 .mr-hab-stage{grid-template-columns:1fr; min-height:0;}
  #page-mindsetr12 .mr-hab-right{order:1; height:260px;}
  #page-mindsetr12 .mr-hab-center{order:2;}
  #page-mindsetr12 .mr-hab-left{display:none;}
  #page-mindsetr12 .mr-hab-dots--mobile{display:flex; flex-direction:row; justify-content:center; gap:8px; margin-top:16px;}
  #page-mindsetr12 .mr-hab-btn{width:48px; height:48px;}
}

/* Centrado del stage de habilidades en móvil (pe-/pr-/sc-/mr-) */
/* Escalado con prefijo #page-X para igualar la especificidad de las
   reglas base (display:grid) definidas más arriba en cada sección;
   sin el ID, display:flex nunca ganaría el empate de especificidad. */
@media (max-width:768px){
  /* Centrado del stage completo en móvil */
  #page-preescolar .pe-hab-stage, #page-primaria .pr-hab-stage,
  #page-secundaria .sc-hab-stage, #page-mindsetr12 .mr-hab-stage {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Foto: ancho completo centrada */
  #page-preescolar .pe-hab-right, #page-primaria .pr-hab-right,
  #page-secundaria .sc-hab-right, #page-mindsetr12 .mr-hab-right {
    width: 100%;
    max-width: 420px;
    margin-inline: auto;
  }

  /* Número pequeño centrado */
  #page-preescolar .pe-hab-num-small, #page-primaria .pr-hab-num-small,
  #page-secundaria .sc-hab-num-small, #page-mindsetr12 .mr-hab-num-small {
    text-align: center;
  }

  /* Título y descripción centrados */
  #page-preescolar .pe-hab-title, #page-primaria .pr-hab-title,
  #page-secundaria .sc-hab-title, #page-mindsetr12 .mr-hab-title,
  #page-preescolar .pe-hab-desc, #page-primaria .pr-hab-desc,
  #page-secundaria .sc-hab-desc, #page-mindsetr12 .mr-hab-desc {
    text-align: center;
  }

  /* Navegación ←→ y contador centrados */
  #page-preescolar .pe-hab-nav, #page-primaria .pr-hab-nav,
  #page-secundaria .sc-hab-nav, #page-mindsetr12 .mr-hab-nav {
    justify-content: center;
  }

  /* Puntos de navegación móvil centrados */
  #page-preescolar .pe-hab-dots--mobile, #page-primaria .pr-hab-dots--mobile,
  #page-secundaria .sc-hab-dots--mobile, #page-mindsetr12 .mr-hab-dots--mobile {
    justify-content: center;
    display: flex;
  }

  /* Centro (texto) sin padding lateral extra */
  #page-preescolar .pe-hab-center, #page-primaria .pr-hab-center,
  #page-secundaria .sc-hab-center, #page-mindsetr12 .mr-hab-center {
    width: 100%;
    max-width: 480px;
    margin-inline: auto;
    align-items: center;
  }
}

/* CTA final — orbe verde */
#page-mindsetr12 .cta-final h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px);}
#page-mindsetr12 .cta-final .lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); color:rgba(248,248,248,.65); max-width:480px !important;}
#page-mindsetr12 .cta-final::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.10), transparent 70%); pointer-events:none; z-index:0;}

/* Respiración general — mismo espaciado de los otros 3 */
#page-mindsetr12 .eyebrow{margin-bottom:12px;}
#page-mindsetr12 .block h2{margin-bottom:clamp(24px,4vw,40px);}

/* ===== NOSOTROS =====
   Réplica del sistema visual, prefijo nos-, scoping #page-nosotros.
   Acento MORADO INSTITUCIONAL #8000B0 / glow #B44DFF — no es un
   acento de nivel, es la página madre de la marca. Sin stats en el
   hero, sin chips. Manifiesto y Equipo son secciones únicas sin
   equivalente pe-/pr-/sc-/mr-. */

/* Hero */
#page-nosotros .nos-hero{position:relative; min-height:100vh; display:flex; align-items:center; padding:clamp(60px,7vw,90px) clamp(20px,5vw,80px) clamp(40px,5vw,70px); background:#0E0E11; overflow:hidden;}
#page-nosotros .nos-hero-orbs{position:absolute; inset:0; z-index:0; pointer-events:none;}
#page-nosotros .nos-hero-orb{position:absolute; border-radius:50%;}
#page-nosotros .nos-hero-orb--purple{width:50vw; height:50vw; top:-10vw; right:-10vw; background:radial-gradient(circle, rgba(128,0,176,.22), transparent 70%);}
#page-nosotros .nos-hero-grid{
  position:relative; z-index:1; display:grid;
  grid-template-columns:55% 45%;
  grid-template-areas:
    "eyebrow visual"
    "title visual"
    "sub visual";
  gap:48px; align-items:center;
}

#page-nosotros .nos-hero-eyebrow{grid-area:eyebrow; text-align:left; font-family:'Inter',sans-serif; font-weight:600; font-size:clamp(10px,1.1vw,12px); letter-spacing:.30em; color:#B44DFF; text-transform:uppercase; margin-bottom:16px;}
#page-nosotros .nos-hero-title{grid-area:title; text-align:left; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(36px,5.5vw,68px); line-height:1.08; color:#F8F8F8; margin-bottom:20px;}
#page-nosotros .nos-hero-title .nos-hero-accent{color:#B44DFF;}
#page-nosotros .nos-hero-sub{grid-area:sub; text-align:left; font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.65); line-height:1.6; max-width:480px;}

#page-nosotros .nos-hero-visual{grid-area:visual; position:relative;}
#page-nosotros .nos-hero-visual-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
#page-nosotros .nos-hero-visual-orb--purple{width:50%; height:50%; bottom:5%; left:5%; background:radial-gradient(circle, rgba(128,0,176,.22) 0%, transparent 65%);}
#page-nosotros .nos-hero-photo{display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:center; border-radius:24px 24px 24px 52px; position:relative; z-index:1; box-shadow:0 20px 60px rgba(0,0,0,.35);}
#page-nosotros .nos-hero-badge{position:absolute; bottom:8%; left:-4%; z-index:3; display:flex; align-items:center; gap:8px; background:rgba(255,255,255,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:500; font-size:13px; color:#F8F8F8; box-shadow:0 8px 24px rgba(0,0,0,.20);}

@media (max-width:768px){
  #page-nosotros .nos-hero{min-height:auto; padding:clamp(100px,12vw,140px) 20px 48px; overflow:hidden; max-width:100vw;}
  #page-nosotros .nos-hero-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "eyebrow"
      "title"
      "visual"
      "sub";
    gap:24px; width:100%; overflow:hidden;
  }
  #page-nosotros .nos-hero-eyebrow, #page-nosotros .nos-hero-title, #page-nosotros .nos-hero-sub{max-width:100%; overflow:hidden;}
  #page-nosotros .nos-hero-title{font-size:clamp(28px,8vw,38px); line-height:1.15; word-break:normal; overflow-wrap:break-word; margin-bottom:0;}
  #page-nosotros .nos-hero-badge{left:0;}
}

/* Manifiesto Fares — integrado a fondo claro (ajuste 2) */
#page-nosotros .nos-manifiesto-section{background:#FFFFFF; border-radius:48px 48px 0 0; margin-inline:0; margin-top:-48px; overflow:hidden; padding:calc(clamp(48px,7vw,80px) + 48px) clamp(20px,5vw,80px) clamp(48px,7vw,80px); position:relative; z-index:1;}
@media (max-width:768px){
  #page-nosotros .nos-manifiesto-section{border-radius:28px 28px 0 0; margin-top:-28px; padding:calc(clamp(32px,6vw,48px) + 28px) clamp(20px,5vw,32px) clamp(32px,6vw,48px);}
}
#page-nosotros .nos-manifiesto-section .wrap{position:relative; z-index:1;}
#page-nosotros .nos-manifiesto-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#8000B0; text-transform:uppercase; margin-bottom:14px;}
#page-nosotros .nos-manifiesto-heading{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px); color:#1A1A1E;}

#page-nosotros .nos-manifiesto-body{max-width:720px; margin-inline:auto; margin-top:clamp(32px,5vw,48px); font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); line-height:1.85; color:#3A3A4A; text-align:left;}
#page-nosotros .nos-manifiesto-body p{margin:0 0 1.6em;}
#page-nosotros .nos-manifiesto-body b{color:#1A1A1E; font-weight:600;}
#page-nosotros .nos-cita{color:rgba(0,0,0,.40);}
#page-nosotros .nos-manifiesto-lead{font-family:'Space Grotesk'; font-weight:600; font-size:clamp(18px,2.2vw,22px); color:#8000B0;}

#page-nosotros .manifiesto-firma{margin-top:48px; padding-top:32px; border-top:1px solid rgba(0,0,0,.10); display:flex; align-items:center; gap:16px;}
#page-nosotros .nos-firma-dot{width:8px; height:8px; border-radius:50%; background:#8000B0; box-shadow:0 0 12px rgba(128,0,176,.6); flex-shrink:0;}
#page-nosotros .nos-firma-text{display:block;}
#page-nosotros .nos-firma-text span{display:block; font-family:'Space Grotesk'; font-weight:500; font-size:clamp(13px,1.5vw,16px); color:#5A5A6A;}
#page-nosotros .nos-firma-text small{display:block; margin-top:2px; font-size:12px; color:#5A5A6A;}

/* Nuestros valores — mismas 3 tarjetas claras con ícono de "Renueva, Conecta e Impacta" del Home */
#page-nosotros .nos-valores-section{padding-top:clamp(48px,6vw,72px); padding-bottom:clamp(48px,6vw,72px);}
#page-nosotros .nos-valores-eyebrow{color:#B44DFF;}
#page-nosotros .nos-valores-heading{color:#1A1A1E;}
#page-nosotros .nos-valores-cita{font-style:italic; color:#9A96A0;}

/* Nuestro equipo — grid de personas sobre fondo claro */
#page-nosotros .nos-team-section{padding-top:clamp(48px,6vw,72px); padding-bottom:calc(clamp(72px,9vw,110px) + 100px);}
#page-nosotros .nos-team-eyebrow{color:#B44DFF;}
#page-nosotros .nos-team-heading{color:#1A1A1E;}
#page-nosotros .nos-team-lede{color:#5A5A6A; margin-left:auto; margin-right:auto;}

/* Equipo — pila con scroll por columna, mismo efecto del Plan académico */
#page-nosotros .nos-team-grid-new{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; max-width:1160px; margin-inline:auto; margin-top:clamp(32px,4vw,48px); align-items:start;}
#page-nosotros .nos-team-col{display:flex; flex-direction:column;}

#page-nosotros .nos-team-card{
  height:300px;
  background-size:cover;
  background-position:center top;
  border-radius:20px 20px 20px 44px;
  overflow:hidden;
  position:relative;
  cursor:default;
  box-shadow:0 10px 28px rgba(20,10,30,.14);
  transition:box-shadow 300ms ease;
}
#page-nosotros .nos-team-col .nos-team-card{position:sticky; margin-bottom:56px;}
#page-nosotros .nos-team-col .nos-team-card:last-child{margin-bottom:0;}
#page-nosotros .nos-team-col .nos-team-card:nth-child(1){top:100px; z-index:1;}
#page-nosotros .nos-team-col .nos-team-card:nth-child(2){top:124px; z-index:2;}
#page-nosotros .nos-team-col .nos-team-card:nth-child(3){top:148px; z-index:3;}
#page-nosotros .nos-team-col .nos-team-card:nth-child(4){top:172px; z-index:4;}
#page-nosotros .nos-team-card:hover{box-shadow:0 16px 36px rgba(20,10,30,.20);}
#page-nosotros .nos-team-reveal{opacity:0; transform:translateY(40px); transition:opacity .6s ease, transform .6s ease;}
#page-nosotros .nos-team-reveal.in-view{opacity:1; transform:translateY(0);}
@media (prefers-reduced-motion: reduce){#page-nosotros .nos-team-reveal{opacity:1; transform:none; transition:none;}}

@media (max-width:768px){
  #page-nosotros .nos-team-grid-new{grid-template-columns:repeat(2,1fr); gap:16px;}
  #page-nosotros .nos-team-col{display:contents;}
  #page-nosotros .nos-team-col .nos-team-card{position:static; height:clamp(200px,42vw,260px); margin-bottom:0;}
}

#page-nosotros .nos-team-overlay{position:absolute; inset:0; background:linear-gradient(to top, rgba(14,14,17,.80) 0%, rgba(14,14,17,.35) 32%, transparent 58%); display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(16px,2vw,24px);}

#page-nosotros .nos-team-tag{position:absolute; top:16px; left:16px; font-family:'Inter',sans-serif; font-weight:600; font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:#B44DFF; background:rgba(128,0,176,.20); border:1px solid rgba(180,77,255,.35); border-radius:999px; padding:3px 10px;}

#page-nosotros .nos-team-name{font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:clamp(13px,1.5vw,17px); color:#F8F8F8; margin:0 0 4px; line-height:1.2;}
#page-nosotros .nos-team-role{font-family:'Inter',sans-serif; font-weight:400; font-size:clamp(11px,1.2vw,13px); color:rgba(248,248,248,.62); margin:0;}

#page-nosotros .nos-team-card--nofoto{background-image:none; background:#17171B; border:1px solid rgba(255,255,255,.08);}
#page-nosotros .nos-team-card--nofoto .nos-team-overlay{justify-content:center; align-items:center; text-align:center;}
#page-nosotros .nos-team-initials{width:56px; height:56px; border-radius:50%; background:rgba(128,0,176,.15); border:1.5px solid rgba(128,0,176,.35); display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk'; font-weight:700; font-size:22px; color:#8000B0; margin:0 auto 12px;}

/* CTA final (reclutamiento) — orbe morado más pronunciado */
#page-nosotros .cta-final{z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:calc(clamp(80px,10vw,140px) + 48px);}
@media (max-width:768px){#page-nosotros .cta-final{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:calc(clamp(80px,10vw,140px) + 28px);}}
#page-nosotros .cta-final h2{font-family:'Space Grotesk'; font-weight:700; font-size:clamp(28px,4vw,44px);}
#page-nosotros .cta-final .lede{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,18px); color:rgba(248,248,248,.65);}
#page-nosotros .cta-final::before{content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle, rgba(128,0,176,.16), transparent 70%); pointer-events:none; z-index:0;}

/* Respiración general */
#page-nosotros .eyebrow{margin-bottom:12px;}
#page-nosotros .block h2{margin-bottom:clamp(24px,4vw,40px);}

/* ===== COMUNIDAD =====
   Réplica del sistema visual, prefijo com-, scoping #page-comunidad.
   Sin acento de nivel — morado institucional #8000B0 en todo, es la
   página utilitaria del sitio (accesos rápidos, sin narrativa). */

/* Hero interior — oscuro, sin foto, solo atmósfera de luz */
#page-comunidad .com-hero{background:#0E0E11; min-height:clamp(280px,35vw,380px); display:flex; align-items:center; justify-content:center; text-align:center; position:relative; overflow:hidden; padding:clamp(80px,10vw,120px) clamp(20px,5vw,80px);}
#page-comunidad .com-hero-orb{position:absolute; border-radius:50%; pointer-events:none; z-index:0;}
#page-comunidad .com-hero-orb--purple{top:50%; left:50%; transform:translate(-50%,-50%); width:70vw; height:70vw; background:radial-gradient(circle, rgba(128,0,176,.22) 0%, transparent 65%);}
#page-comunidad .com-hero-orb--cyan{bottom:-10%; left:-5%; width:35vw; height:35vw; background:radial-gradient(circle, rgba(50,170,170,.06) 0%, transparent 65%);}
#page-comunidad .com-hero-content{position:relative; z-index:1;}
#page-comunidad .com-hero-eyebrow{font-family:'Inter',sans-serif; font-weight:600; font-size:11px; letter-spacing:.28em; color:#B44DFF; text-transform:uppercase; margin-bottom:16px;}
#page-comunidad .com-hero-title{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:clamp(32px,5vw,60px); color:#F8F8F8; line-height:1.1; margin-bottom:16px;}
#page-comunidad .com-hero-sub{font-family:'Inter',sans-serif; font-size:clamp(15px,1.7vw,19px); color:rgba(248,248,248,.62); max-width:520px; margin-inline:auto;}

@media (max-width:768px){
  #page-comunidad .com-hero{padding:clamp(60px,10vw,90px) 20px;}
  #page-comunidad .com-hero-orb--purple{width:120vw; height:120vw;}
  #page-comunidad .com-hero-orb--cyan{width:60vw; height:60vw;}
}

/* Transición hero oscuro → sección clara */
#page-comunidad .com-access-section{background:#FFFFFF; position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; overflow:hidden; padding:calc(clamp(64px,9vw,110px) + 48px) clamp(20px,5vw,80px) clamp(64px,9vw,110px);}
@media (max-width:768px){
  #page-comunidad .com-access-section{border-radius:28px 28px 0 0; margin-top:-28px; padding:calc(clamp(48px,7vw,72px) + 28px) clamp(20px,5vw,32px) clamp(48px,7vw,72px);}
}

/* Grid de 4 cards */
#page-comunidad .com-access-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 14px;
  max-width: 1000px;
  margin-inline: auto;
  padding-inline: clamp(20px,5vw,48px);
}

/* Card base — clara, un solo acento de marca (morado Fares) */
#page-comunidad .com-card {
  background: #fff;
  border: 1px solid rgba(128,0,176,.12);
  border-radius: 20px;
  padding: clamp(20px,3vw,32px);
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 300ms ease,
    border-color 300ms ease,
    box-shadow 300ms ease;
}
#page-comunidad .com-card:hover {
  border-color: rgba(128,0,176,.28);
  box-shadow: 0 16px 40px rgba(80,40,110,.12);
  transform: translateY(-4px);
}

/* Ícono — mismo acento morado en las 4 tarjetas */
#page-comunidad .com-card-icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  flex-shrink: 0;
  background: rgba(128,0,176,.08);
  border: 1px solid rgba(128,0,176,.18);
}
#page-comunidad .com-card-icon svg {
  width: 20px; height: 20px;
  fill: none; stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke: var(--fares-purple);
}

/* Tipografía compartida */
#page-comunidad .com-card-title {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 600;
  font-size: clamp(15px,1.8vw,19px);
  color: #241a29;
  margin: 0 0 8px;
}
#page-comunidad .com-card-desc {
  font-family: 'Inter', sans-serif;
  font-size: clamp(12px,1.3vw,14px);
  color: #6b5d72;
  line-height: 1.65;
  margin: 0 0 20px;
  flex: 1;
}

/* Botón — outline morado por defecto (accesos secundarios) */
#page-comunidad .com-card-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Inter', sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  border: 1.5px solid var(--fares-purple);
  color: var(--fares-purple);
  background: transparent;
  border-radius: 999px;
  padding: 10px 20px;
  text-decoration: none;
  width: fit-content;
  margin-top: auto;
  transition: background 250ms ease, box-shadow 250ms ease;
}
#page-comunidad .com-card-btn:hover {
  background: rgba(128,0,176,.08);
  box-shadow: 0 4px 18px rgba(128,0,176,.15);
}

/* Pagos: acción primaria — botón sólido morado */
#page-comunidad .com-card--primary .com-card-btn {
  background: var(--fares-purple);
  color: #fff;
  border-color: var(--fares-purple);
}
#page-comunidad .com-card--primary .com-card-btn:hover {
  background: #6d0096;
  box-shadow: 0 6px 20px rgba(128,0,176,.35);
}

/* Sección exterior: fondo claro con wrapper */
#page-comunidad .com-access-section {
  background: #FFFFFF;
  padding: clamp(48px,7vw,80px) 0;
  padding-bottom: calc(clamp(48px,7vw,80px) + 100px);
}

/* MÓVIL */
@media (max-width: 600px) {
  #page-comunidad .com-access-grid {
    grid-template-columns: 1fr;
  }
}

/* Transición sección clara → footer oscuro */
#page-comunidad footer{position:relative; z-index:1; border-radius:48px 48px 0 0; margin-top:-48px; padding-top:48px;}
@media (max-width:768px){
  #page-comunidad footer{border-radius:28px 28px 0 0; margin-top:-28px; padding-top:28px;}
}
