:root{--blue:#03216b;--cyan:#03ceea;--yellow:#ffbe06;--neutral:#fff9f0;--ink:#07152f;--white:#fff;--section-x:clamp(22px,7vw,112px);--page-scroll:0px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--neutral);color:var(--ink);font-family:"Poppins",sans-serif;overflow-x:hidden}body::-webkit-scrollbar{width:10px}body::-webkit-scrollbar-thumb{background:var(--blue);border:3px solid var(--neutral);border-radius:20px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.section{padding:clamp(88px,10vw,145px) var(--section-x)}.reading-progress{position:fixed;z-index:100;inset:0 0 auto;height:3px;pointer-events:none}.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--yellow),var(--cyan),var(--blue));transform:scaleX(0);transform-origin:left}.cursor-glow{position:fixed;z-index:80;width:340px;height:340px;border-radius:50%;background:#03ceea16;filter:blur(24px);pointer-events:none;transition:transform .08s linear}.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:92px;padding:0 clamp(22px,6vw,90px);display:flex;align-items:center;justify-content:space-between;color:#fff;transition:.35s}.site-header.scrolled{height:74px;color:var(--blue);background:#fff9f0e8;backdrop-filter:blur(18px);border-bottom:1px solid #fff;box-shadow:0 9px 35px #03216b12}.brand{display:block;width:142px}.brand img{width:100%;height:auto;filter:brightness(0) invert(1);transition:.35s}.site-header.scrolled .brand img{filter:none}.main-nav{display:flex;align-items:center;gap:31px;font-size:12px;font-weight:600}.main-nav>a:not(.nav-button){position:relative}.main-nav>a:not(.nav-button):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--yellow);transition:.3s}.main-nav>a:hover:after,.main-nav>a.active:after{width:100%}.nav-button{padding:13px 19px;border:1px solid #ffffff82;border-radius:999px;background:#ffffff16;backdrop-filter:blur(12px)}.scrolled .nav-button{border-color:#03216b2f;background:#fff}.menu-toggle{display:none;width:44px;height:44px;border:1px solid #ffffff80;border-radius:50%;background:#ffffff1f}.menu-toggle i{display:block;width:19px;height:2px;background:currentColor;margin:5px auto}.kicker{display:flex;align-items:center;gap:11px;margin:0 0 25px;font-size:10px;font-weight:700;letter-spacing:.2em;color:var(--blue)}.kicker>span{width:30px;height:3px;background:var(--yellow)}.kicker.light{color:var(--cyan)}
.hero{height:100svh;min-height:760px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;padding:115px var(--section-x) 70px;background:var(--blue);color:#fff}.hero-video{position:absolute;z-index:-4;inset:-10%;overflow:hidden;pointer-events:none}.hero-video iframe{position:absolute;left:50%;top:50%;width:177.78vh;min-width:100%;height:56.25vw;min-height:100%;transform:translate(-50%,-50%) scale(1.08);border:0;filter:saturate(.9) contrast(1.03)}.hero-wash{position:absolute;z-index:-3;inset:0;background:linear-gradient(90deg,#03216be8 0%,#03216bba 42%,#03216b3b 75%,#03216b62 100%),linear-gradient(0deg,#03216b99,transparent 55%)}.grid-lines{position:absolute;z-index:-2;inset:-80px 0 0;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 75%);translate:0 var(--parallax-y,0)}.hero-copy{position:relative;z-index:3;max-width:830px}.hero .kicker{color:var(--cyan)}.hero h1{font-size:clamp(58px,7.3vw,112px);line-height:.9;letter-spacing:-.065em;margin:0;font-weight:800;text-wrap:balance}.hero h1>span{display:inline-block}.hero h1 em{font-weight:400;color:var(--yellow)}.lead{font-size:17px;line-height:1.7;max-width:560px;margin:34px 0;color:#ffffffd9}.hero-actions{display:flex;align-items:center;gap:30px}.primary-button{padding:18px 24px;border-radius:999px;background:var(--yellow);color:var(--blue);font-size:12px;font-weight:700;box-shadow:0 16px 40px #00113c55;transition:.3s}.primary-button:hover{transform:translateY(-4px);box-shadow:0 22px 50px #00113c75}.primary-button b{margin-left:18px}.under-link{font-size:12px;font-weight:600}.under-link b{margin-left:10px;color:var(--yellow)}.glass-chip{display:flex;gap:14px;align-items:center;padding:15px 18px;border:1px solid #ffffff61;border-radius:16px;background:#03216b3d;backdrop-filter:blur(17px);box-shadow:0 16px 40px #00113c3d}.glass-chip i{width:9px;height:9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 7px #ffbe0625}.glass-chip p{margin:0}.glass-chip small,.glass-chip strong{display:block}.glass-chip small{font-size:8px;font-weight:600;letter-spacing:.17em;color:var(--cyan)}.glass-chip strong{font-size:11px;margin-top:4px}.hero-chip{position:absolute;z-index:3;right:var(--section-x);bottom:13%}.scroll-label{position:absolute;left:var(--section-x);bottom:25px;font-size:8px;font-weight:700;letter-spacing:.22em;display:flex;align-items:center;gap:15px}.scroll-label span{width:60px;height:1px;background:#ffffff9c}
.about{display:grid;grid-template-columns:48% 43%;gap:9%;align-items:center;background:var(--neutral);position:relative}.about:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-210px;top:12%;background:#03ceea18;filter:blur(20px)}.about-image{position:relative}.about-image:before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--cyan);border-radius:30px}.about-image img{width:100%;height:630px;object-fit:cover;border-radius:25px;filter:saturate(.86)}.glass{background:#ffffffb8;border:1px solid #fff;backdrop-filter:blur(18px);box-shadow:0 20px 55px #03216b19}.floating-stat{position:absolute;right:-30px;bottom:40px;padding:20px 24px;border-radius:17px}.floating-stat strong,.floating-stat span{display:block}.floating-stat strong{font-size:20px;color:var(--blue)}.floating-stat span{font-size:10px;margin-top:4px;color:#31405b}.about h2,.contact h2{font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.052em;margin:0 0 30px}.about h2 em,.contact h2 em,.video-heading h2 em{font-weight:400;color:var(--blue)}.about-copy>p:not(.kicker),.contact-intro>p:not(.kicker){font-size:15px;line-height:1.85;color:#435069}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:38px 0}.values div{border-top:2px solid #03216b24;padding:16px 8px 8px;display:flex;gap:12px;transition:.4s}.values div:hover{transform:translateY(-6px);background:#fff;border-radius:12px}.values b{font-size:10px;color:var(--yellow);font-variant-numeric:tabular-nums}.values span{font-size:12px;line-height:1.35;font-weight:600}.arrow-link{display:flex;width:max-content;align-items:center;gap:20px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.arrow-link i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--blue);color:#fff;font-style:normal;transition:.3s}.arrow-link:hover i{transform:rotate(45deg);background:var(--cyan)}
.programs{height:210vh;position:relative;background:var(--blue);color:#fff}.program-stage{position:sticky;top:0;height:100vh;min-height:720px;overflow:hidden;padding:clamp(82px,8vw,115px) var(--section-x) 54px;display:grid;grid-template-rows:auto 1fr;align-content:center}.program-stage:before{content:"";position:absolute;width:720px;height:720px;border-radius:50%;right:-290px;top:-300px;background:#03ceea24;filter:blur(85px)}.program-heading{position:relative;z-index:3;display:grid;grid-template-columns:.7fr 1.3fr auto;gap:35px;align-items:start;margin-bottom:42px;opacity:var(--head-p,1);transform:translateY(calc((1 - var(--head-p,1))*28px))}.program-heading h2{margin:0;font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-.047em;font-weight:600}.assembly-label{align-self:end;display:flex;align-items:center;gap:10px;font-size:7px;letter-spacing:.18em;color:#ffffff8b;writing-mode:vertical-rl}.assembly-label i{height:45px;width:1px;background:#ffffff50}.program-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-self:stretch;perspective:1200px}.program-card{--mx:50%;--my:50%;position:relative;isolation:isolate;overflow:hidden;border:1px solid #ffffff38;border-radius:28px;padding:35px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 32px 70px #00113c6b;transform-style:preserve-3d;will-change:transform,opacity;transition:box-shadow .35s}.program-card:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 8%,#001544e8 100%)}.program-card:before{content:"";position:absolute;z-index:0;inset:0;background:radial-gradient(390px circle at var(--mx) var(--my),#ffffff35,transparent 58%);opacity:0;transition:.35s;pointer-events:none}.program-card:hover:before{opacity:1}.program-card:hover{box-shadow:0 38px 85px #000d}.angelelli{background:linear-gradient(135deg,#ffbe06,#e77500)}.fronteras{background:linear-gradient(135deg,#03ceea,#0069a4)}.program-card:nth-child(1){opacity:var(--card-one,1);transform:translate3d(calc((1 - var(--card-one,1))*-25vw),calc((1 - var(--card-one,1))*150px),0) rotateZ(calc((1 - var(--card-one,1))*-7deg)) scale(calc(.82 + var(--card-one,1)*.18))}.program-card:nth-child(2){opacity:var(--card-two,1);transform:translate3d(calc((1 - var(--card-two,1))*25vw),calc((1 - var(--card-two,1))*210px),0) rotateZ(calc((1 - var(--card-two,1))*8deg)) scale(calc(.82 + var(--card-two,1)*.18))}.card-tag,.program-card>img,.program-card>p,.card-link,.card-index{position:relative;z-index:2;opacity:var(--items-p,1);transform:translateY(calc((1 - var(--items-p,1))*30px))}.card-tag{position:absolute;top:32px;left:35px;padding:9px 12px;border:1px solid #ffffff54;border-radius:999px;background:#03216b26;backdrop-filter:blur(10px);font-size:8px;font-weight:600;letter-spacing:.17em}.card-index{position:absolute;right:32px;top:27px;font-size:48px;line-height:1;font-weight:300;color:#ffffff31}.program-card>img{position:absolute;z-index:1;left:7%;top:33%;width:64%;height:105px;object-fit:contain;object-position:left;filter:drop-shadow(0 10px 22px #00113c6b)}.program-card p{font-size:16px;line-height:1.55;color:#ffffffd9;max-width:430px;margin:0 0 24px}.card-link{padding-top:18px;border-top:1px solid #ffffff44;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;letter-spacing:.12em}.card-link b{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#fff;color:var(--blue);font-size:16px;transition:.3s}.program-card:hover .card-link b{transform:rotate(45deg) scale(1.08)}.energy-rings{position:absolute;width:340px;height:340px;right:-85px;top:-100px}.energy-rings i{position:absolute;inset:0;border:1px solid #ffffff38;border-radius:50%;animation:pulseRing 3s ease-in-out infinite}.energy-rings i:nth-child(2){inset:48px;animation-delay:.4s}.energy-rings i:nth-child(3){inset:96px;animation-delay:.8s;background:#ffffff0d}.dot-map{position:absolute;inset:0;opacity:.26;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:17px 17px;mask-image:radial-gradient(circle at 74% 29%,#000,transparent 49%);animation:dotMove 15s linear infinite}.program-progress{position:absolute;z-index:5;left:var(--section-x);right:var(--section-x);bottom:27px;height:2px;background:#ffffff1d}.program-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--yellow),var(--cyan));transform:scaleX(var(--program-p,0));transform-origin:left}
.news{background:var(--neutral)}.section-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:50px}.section-top h2{font-size:clamp(40px,5vw,68px);line-height:1;letter-spacing:-.055em;margin:0}.outline-button{border:1px solid #03216b35;border-radius:999px;padding:14px 18px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.outline-button b{margin-left:15px}.news-grid{display:grid;grid-template-columns:1.22fr 1fr 1fr;gap:22px}.news-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 15px 45px #03216b0e;transition:.4s}.news-card:hover{transform:translateY(-7px);box-shadow:0 25px 60px #03216b1c}.news-image{display:block;height:265px;position:relative;overflow:hidden}.featured .news-image{height:330px}.news-image img{width:100%;height:100%;object-fit:cover;transition:.65s}.news-card:hover .news-image img{transform:scale(1.055)}.news-image span{position:absolute;left:16px;bottom:16px;background:#fff9f0e8;border-radius:999px;padding:8px 11px;font-size:8px;font-weight:700;letter-spacing:.13em;color:var(--blue)}.news-content{padding:25px}.news-content time{font-size:8px;font-weight:700;letter-spacing:.15em;color:#d59e00}.news-content h3{font-size:17px;line-height:1.4;letter-spacing:-.025em;margin:14px 0 24px}.featured .news-content h3{font-size:23px}.news-content a{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.news-content a b{color:var(--cyan);margin-left:9px}.news-card.visible{animation:newsRise .75s cubic-bezier(.2,.75,.25,1) both}.news-card:nth-child(2).visible{animation-delay:.12s}.news-card:nth-child(3).visible{animation-delay:.24s}
.videos{position:relative;background:var(--cyan);color:var(--blue);overflow:hidden}.videos:after{content:"";position:absolute;width:560px;height:560px;border:1px solid #ffffff75;border-radius:50%;right:-180px;top:-240px;box-shadow:0 0 0 70px #ffffff20,0 0 0 140px #ffffff10}.video-heading{position:relative;z-index:2;margin-bottom:48px}.videos .kicker{color:var(--blue)}.video-heading h2{font-size:clamp(42px,5vw,72px);line-height:1.05;letter-spacing:-.05em;margin:0}.video-heading h2 em{color:var(--blue)}.video-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:24px}.video-frame{aspect-ratio:16/9;border-radius:24px;overflow:hidden;border:1px solid #ffffff7d;box-shadow:0 22px 60px #03216b3d;transition:.45s}.video-frame:hover{transform:translateY(-7px) scale(1.01);box-shadow:0 32px 75px #03216b60}.video-frame iframe{width:100%;height:100%;border:0}
.contact{position:relative;display:grid;grid-template-columns:43% 48%;gap:9%;align-items:center;background:var(--neutral);overflow:hidden}.contact:before{content:"";position:absolute;width:560px;height:560px;left:-170px;bottom:calc(-300px + var(--page-scroll)*.018);border-radius:50%;background:#ffbe0630;filter:blur(8px)}.contact>*{position:relative;z-index:1}.contact-intro{max-width:570px}.socials{display:flex;gap:11px;margin-top:34px}.socials a{width:43px;height:43px;display:grid;place-items:center;border:1px solid #03216b38;border-radius:50%;font-size:10px;font-weight:700;text-transform:uppercase;transition:.3s}.socials a:hover{background:var(--blue);color:#fff;transform:translateY(-3px)}.contact-form{border-radius:27px;padding:38px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:20px}.field label{display:block;margin-bottom:9px;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid #03216b31;padding:13px 0;background:transparent;outline:0;color:var(--ink);font:400 13px "Poppins";resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--cyan)}.contact-form button{border:0;width:100%;padding:18px 22px;border-radius:999px;background:var(--blue);color:#fff;font:700 11px "Poppins";cursor:pointer;display:flex;justify-content:space-between;transition:.3s}.contact-form button:hover{background:#001344;transform:translateY(-2px)}.form-status{min-height:18px;margin:14px 0 0;font-size:10px;color:var(--blue)}footer{min-height:125px;padding:30px var(--section-x);display:flex;align-items:center;gap:35px;background:var(--blue);color:#fff}.footer-brand img{filter:none}footer p{margin-right:auto;color:#ffffffa6;font-size:11px}footer>span{font-size:9px;color:#ffffff82}.back-to-top{position:fixed;z-index:45;right:24px;bottom:24px;width:48px;height:48px;border:1px solid #ffffff8a;border-radius:50%;background:#03216be8;color:#fff;box-shadow:0 12px 35px #03216b38;backdrop-filter:blur(12px);font-size:18px;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(16px) scale(.9);transition:.35s}.back-to-top.visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:var(--yellow);color:var(--blue);transform:translateY(-4px)}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@keyframes pulseRing{50%{transform:scale(1.07);opacity:.45}}@keyframes dotMove{to{background-position:34px 34px}}@keyframes newsRise{from{opacity:0;transform:translateY(38px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:980px){.main-nav{display:none;position:absolute;top:78px;left:18px;right:18px;padding:28px;flex-direction:column;color:var(--blue);background:#fff9f0f2;border:1px solid #fff;border-radius:22px;box-shadow:0 20px 55px #03216b26;backdrop-filter:blur(18px)}.main-nav.open{display:flex}.menu-toggle{display:block}.site-header.scrolled .menu-toggle{border-color:#03216b35}.hero{min-height:780px}.hero-copy{max-width:720px}.hero-chip{right:22px}.about{grid-template-columns:1fr;gap:72px}.about-image{max-width:680px}.about-image img{height:550px}.about-copy{max-width:730px}.programs{height:auto}.program-stage{position:relative;height:auto;min-height:0;padding:105px var(--section-x)}.program-heading{display:block;opacity:1!important;transform:none!important}.assembly-label,.program-progress{display:none}.program-grid,.video-grid{grid-template-columns:1fr}.program-card{min-height:440px;opacity:1!important;transform:none!important}.news-grid{grid-template-columns:1fr 1fr}.featured{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr}.featured .news-image{height:100%}.contact{grid-template-columns:1fr;gap:60px}.contact-intro{max-width:700px}}
@media(max-width:620px){.site-header{height:74px}.brand{width:120px}.section{padding-top:80px;padding-bottom:80px}.hero{height:100svh;min-height:760px;padding-top:110px}.hero-video{inset:0}.hero-video iframe{filter:saturate(.85) contrast(1.04)}.hero-wash{background:linear-gradient(90deg,#03216bf2,#03216ba8),linear-gradient(0deg,#03216bd9,transparent 70%)}.hero h1{font-size:50px}.lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-chip{right:22px;bottom:70px}.scroll-label{display:none}.about-image img{height:430px}.floating-stat{right:-5px;bottom:20px}.about h2,.contact h2{font-size:42px}.values{gap:8px}.values div{display:block}.values b{display:block;margin-bottom:8px}.program-stage{padding:80px 22px}.program-heading h2{font-size:42px}.program-card{min-height:410px;padding:27px}.card-tag{left:27px;right:75px;width:max-content;max-width:calc(100% - 105px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-card>img{width:78%;left:7%}.news-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-22px;padding-right:22px;padding-bottom:15px}.news-grid::-webkit-scrollbar{display:none}.news-card,.featured{display:block;min-width:84vw;scroll-snap-align:start}.featured .news-image,.news-image{height:265px}.featured .news-content h3{font-size:19px}.field-row{grid-template-columns:1fr}.contact-form{padding:27px 22px}footer{align-items:flex-start;flex-direction:column;gap:15px}footer p{margin:0}.cursor-glow{display:none}.back-to-top{right:16px;bottom:16px;width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.reading-progress{display:none}.programs{height:auto}.program-stage{position:relative;height:auto;min-height:0}.program-heading,.program-card{opacity:1!important;transform:none!important}.assembly-label,.program-progress{display:none}}
.footer-brand img{filter:brightness(0) invert(1)}
.nav-button{backdrop-filter:blur(12px)}
.program-heading{transform:translateY(var(--head-y,0))}
.program-card:nth-child(1){transform:translate3d(var(--c1-x,0),var(--c1-y,0),0) rotateZ(var(--c1-r,0deg)) scale(var(--c1-s,1))}
.program-card:nth-child(2){transform:translate3d(var(--c2-x,0),var(--c2-y,0),0) rotateZ(var(--c2-r,0deg)) scale(var(--c2-s,1))}
.card-tag,.program-card>img,.program-card>p,.card-link,.card-index{transform:translateY(var(--items-y,0))}
.contact:before{bottom:calc(-300px + var(--contact-shift,0px))}
.hero-video video{position:absolute;left:50%;top:50%;width:100%;height:100%;min-width:100%;min-height:100%;transform:translate(-50%,-50%) scale(1.025);object-fit:cover;object-position:center 42%;border:0;filter:saturate(.9) contrast(1.03);pointer-events:none}
.program-stage{padding-top:84px;padding-bottom:34px;grid-template-rows:auto minmax(330px,1fr)}
.program-heading{grid-template-columns:.65fr 1.35fr auto;margin-bottom:24px}
.program-heading h2{font-size:clamp(40px,4.4vw,62px)}

/* Alineación editorial y cierre animado */
.program-heading{display:block;padding-right:88px}
.program-heading h2{max-width:1100px;margin-left:0;text-align:left}
.program-heading .assembly-label{position:absolute;right:0;bottom:0}
.closing-line{display:block}
.closing-accent{font-style:italic;font-weight:400;color:var(--blue)}
.closing-word{display:inline-block;opacity:0;transform:translateY(.75em) rotate(1.5deg);filter:blur(10px);clip-path:inset(100% 0 0);will-change:transform,opacity,filter,clip-path}
.video-heading.visible .closing-word{animation:closingWord .72s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--word) * 90ms)}
.closing-title:after{content:"";display:block;width:min(260px,28vw);height:3px;margin-top:24px;background:var(--yellow);transform:scaleX(0);transform-origin:left}
.video-heading.visible .closing-title:after{animation:closingRule .8s cubic-bezier(.16,1,.3,1) .82s forwards}
@keyframes closingWord{to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0);clip-path:inset(0 0 0)}}
@keyframes closingRule{to{transform:scaleX(1)}}
@media(max-width:980px){.program-heading{padding-right:0}}
@media(prefers-reduced-motion:reduce){.closing-word{opacity:1;transform:none;filter:none;clip-path:none}.closing-title:after{transform:none}}
.program-grid{min-height:330px}
.program-card{padding:28px 34px}
.program-card>img{top:92px;width:58%;height:60px}
.program-card p{max-width:92%;margin-bottom:14px;font-size:14px;line-height:1.5}
.card-link{padding-top:14px}

/* Identidad, vidrio del menú y logos destacados */
.site-header{background:linear-gradient(90deg,#03216b4d,#03216b24);border-bottom:1px solid #ffffff26;-webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%);box-shadow:0 10px 35px #00154412}
.site-header.scrolled{background:#fff9f0b8;-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%);border-bottom:1px solid #ffffffb8;box-shadow:0 12px 38px #03216b1a}
.brand{width:118px}
.footer-brand{width:104px}
.program-card>img{top:86px;height:88px}
.program-card.angelelli>img{width:68%}
.program-card.fronteras>img{width:74%;filter:brightness(0) invert(1) drop-shadow(0 10px 22px #00113c6b)}

/* La segunda línea se construye y se desarma con el desplazamiento */
.video-heading.visible .closing-accent .closing-word{animation:none;opacity:var(--scroll-word,0);transform:translateY(calc((1 - var(--scroll-word,0)) * .72em)) rotate(calc((1 - var(--scroll-word,0)) * 1.5deg));filter:blur(calc((1 - var(--scroll-word,0)) * 10px));clip-path:inset(calc((1 - var(--scroll-word,0)) * 100%) 0 0)}
.video-heading.visible .closing-title:after{animation:none;transform:scaleX(var(--closing-rule,0))}
@media(max-width:620px){.brand{width:104px}.footer-brand{width:92px}.program-card>img{height:76px}.program-card.angelelli>img{width:76%}.program-card.fronteras>img{width:82%}}
@media(prefers-reduced-motion:reduce){.video-heading.visible .closing-accent .closing-word{opacity:1;transform:none;filter:none;clip-path:none}.video-heading.visible .closing-title:after{transform:none}}

/* Tres iniciativas: laterales y una tarjeta central que asciende */
.programs{height:230vh}
.program-stage{z-index:2}
.program-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.program-card{padding:25px 27px}
.program-card:nth-child(1){opacity:var(--card-one,1);transform:translate3d(calc((1 - var(--card-one,1))*-25vw),calc((1 - var(--card-one,1))*150px),0) rotateZ(calc((1 - var(--card-one,1))*-7deg)) scale(calc(.82 + var(--card-one,1)*.18))}
.program-card:nth-child(2){opacity:var(--card-three,1);transform:translate3d(0,calc((1 - var(--card-three,1))*42vh),0) rotateZ(calc((1 - var(--card-three,1))*2deg)) scale(calc(.82 + var(--card-three,1)*.18))}
.program-card:nth-child(3){opacity:var(--card-two,1);transform:translate3d(calc((1 - var(--card-two,1))*25vw),calc((1 - var(--card-two,1))*210px),0) rotateZ(calc((1 - var(--card-two,1))*8deg)) scale(calc(.82 + var(--card-two,1)*.18))}
.program-card.angelelli>img{filter:brightness(0) invert(1) drop-shadow(0 10px 22px #00113c55)}
.program-card>img{left:7%;width:86%;height:82px}
.program-card.angelelli>img{width:78%}
.program-card.fronteras>img{width:86%}
.revoluciona{background:linear-gradient(145deg,#e51c59 0%,#b32791 48%,#4b46a5 100%)}
.revoluciona-pattern{position:absolute;inset:0;opacity:.19;background:repeating-linear-gradient(120deg,transparent 0 28px,#fff 29px 31px),linear-gradient(90deg,transparent 55%,#03ceea40)}
.revoluciona-logo{position:absolute;z-index:2;left:7%;top:104px;width:86%;color:#fff;font-size:clamp(25px,2.1vw,38px);line-height:.85;font-weight:700;letter-spacing:-.055em;opacity:var(--items-p,1);transform:translateY(var(--items-y,0));white-space:nowrap}
.revoluciona-logo strong{display:inline-block;margin-left:7px;padding:7px 9px;border:2px solid #fff;font-size:.48em;line-height:1;letter-spacing:.02em;vertical-align:middle}

/* Una palabra recorre y conecta las secciones al ritmo del scroll */
.journey-anchor{display:inline-block;letter-spacing:-.065em;transition:opacity .08s linear}
.program-transform{color:var(--yellow);font-style:italic;font-weight:400}
.journey-waypoint{position:absolute;display:block;width:1px;height:1em;pointer-events:none}
.instagram-exit{left:var(--section-x);bottom:clamp(28px,4vw,58px);font-size:clamp(42px,5vw,68px);line-height:1;color:var(--blue)}
.transform-bridge{position:fixed;z-index:1;left:0;top:0;display:block;color:var(--yellow);font:400 italic 1em/1 "Poppins",sans-serif;letter-spacing:-.065em;white-space:nowrap;pointer-events:none;will-change:transform,opacity;transform:translate3d(var(--bridge-x,0),var(--bridge-y,0),0) scale(var(--bridge-scale,1));transform-origin:left top;text-shadow:0 8px 28px #00113c40;transition:color .14s linear,text-shadow .14s linear}
.transform-bridge.over-dark{text-shadow:0 8px 28px #00113c8a,0 1px 0 #ffffff1f}
.transform-bridge.over-feeds{z-index:30}
.typing-slot{display:inline-flex;align-items:baseline;width:10.6ch;white-space:nowrap}
.typing-slot .x-transform{flex:0 0 auto}
.typing-caret{display:none;width:.055em;height:.82em;margin-left:.07em;background:currentColor;vertical-align:-.03em;animation:journeyCaret .62s steps(1,end) infinite}
.typing-caret.is-active{display:inline-block}
.program-heading,.program-grid,.social-section-head,.instagram-shell,.x-intro,.x-shell,.contact>*{position:relative;z-index:2}
@keyframes journeyCaret{50%{opacity:0}}
@media(max-width:980px){.programs{height:auto}.program-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.transform-bridge{display:none}.journey-anchor{opacity:1!important}}

/* Vidrio translúcido: deja ver y desenfoca el contenido que pasa por debajo */
.site-header{background:linear-gradient(100deg,#03216b30,#03216b16);-webkit-backdrop-filter:blur(12px) saturate(150%);backdrop-filter:blur(12px) saturate(150%);border-bottom:1px solid #ffffff38;box-shadow:0 12px 35px #00154416,inset 0 1px #ffffff18}
.site-header.scrolled{background:linear-gradient(100deg,#fff9f06b,#fff9f044);-webkit-backdrop-filter:blur(14px) saturate(155%);backdrop-filter:blur(14px) saturate(155%);border-bottom:1px solid #ffffff9c;box-shadow:0 14px 40px #03216b17,inset 0 1px #ffffffc4}
.site-header.scrolled .nav-button{background:#ffffff3d;border-color:#ffffffb8;box-shadow:inset 0 1px #fff}
@media(max-width:980px){.main-nav{background:#fff9f0a3;-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%)}}

/* La tarjeta territorial comparte el mismo vidrio del menú */
.floating-stat.glass{background:linear-gradient(100deg,#fff9f06b,#fff9f044);-webkit-backdrop-filter:blur(14px) saturate(155%);backdrop-filter:blur(14px) saturate(155%);border:1px solid #ffffff9c;box-shadow:0 14px 40px #03216b17,inset 0 1px #ffffffc4}

/* Movimiento adaptado para pantallas táctiles */
@media(max-width:980px){
  .program-card:nth-child(1),.program-card:nth-child(2),.program-card:nth-child(3){opacity:var(--mobile-card-p,0)!important;transform:translate3d(var(--mobile-x,0),var(--mobile-y,70px),0) rotate(var(--mobile-r,0deg)) scale(var(--mobile-s,.955))!important;will-change:transform,opacity}
  .transform-bridge{display:block;max-width:none;white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){.program-card:nth-child(1),.program-card:nth-child(2),.program-card:nth-child(3){opacity:1!important;transform:none!important}}

/* Íconos oficiales monocromos */
.socials a{background:#ffffff52}
.socials a img{width:18px;height:18px;object-fit:contain}
.socials a:hover{background:var(--yellow);color:#000;border-color:var(--yellow);transform:translateY(-3px)}

/* El desplegable móvil usa el mismo vidrio del encabezado */
@media(max-width:980px){
  .main-nav{top:82px;background:linear-gradient(100deg,#fff9f06b,#fff9f044);-webkit-backdrop-filter:blur(14px) saturate(155%);backdrop-filter:blur(14px) saturate(155%);border:1px solid #ffffff9c;box-shadow:0 14px 40px #03216b17,inset 0 1px #ffffffc4}
  .main-nav.open{animation:mobileMenuIn .34s cubic-bezier(.16,1,.3,1)}
  .main-nav .nav-button{background:#ffffff3d;border-color:#ffffffb8;box-shadow:inset 0 1px #fff}
}
@keyframes mobileMenuIn{from{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:none}}

/* Una sola receta de vidrio para Safari y navegadores móviles */
@media(max-width:980px){
  .site-header{--mobile-glass:linear-gradient(100deg,#fff9f06b,#fff9f044);--mobile-filter:blur(14px) saturate(155%);background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-bottom:0;box-shadow:none;isolation:isolate}
  .site-header:before{content:"";position:absolute;z-index:-1;inset:0;background:var(--mobile-glass);-webkit-backdrop-filter:var(--mobile-filter);backdrop-filter:var(--mobile-filter);border-bottom:1px solid #ffffff9c;box-shadow:0 14px 40px #03216b17,inset 0 1px #ffffffc4;pointer-events:none}
  .main-nav{background:var(--mobile-glass);-webkit-backdrop-filter:var(--mobile-filter);backdrop-filter:var(--mobile-filter);border:1px solid #ffffff9c;box-shadow:0 14px 40px #03216b17,inset 0 1px #ffffffc4}
}

/* Feeds sociales integrados */
.instagram-section{position:relative;background:var(--neutral);overflow:hidden}
.instagram-section:before{content:"";position:absolute;width:520px;height:520px;right:-190px;top:-230px;border-radius:50%;background:#e1306c18;box-shadow:0 0 0 70px #ffbe0612}
.social-section-head{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:52px}
.social-section-head h2{margin:0;font-size:clamp(48px,6vw,82px);line-height:.96;letter-spacing:-.055em}
.social-section-head h2 em{font-weight:400;color:var(--blue)}
.social-profile-link,.x-follow{display:flex;width:max-content;align-items:center;gap:24px;padding:15px 20px;border:1px solid #03216b35;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:.3s}
.social-profile-link:hover{background:#e1306c;color:#fff;border-color:#e1306c;transform:translateY(-3px)}
.instagram-shell{position:relative;z-index:2;min-height:430px;padding:22px;border-radius:30px;background:linear-gradient(120deg,#ffffffa3,#ffffff4f);border:1px solid #fff;-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%);box-shadow:0 28px 75px #03216b1c}
.instagram-shell:before{content:"Cargando publicaciones de Instagram…";position:absolute;z-index:-1;inset:0;display:grid;place-items:center;color:#03216b75;font-size:11px;letter-spacing:.08em}
.x-section{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:start;background:var(--blue);color:#fff;overflow:hidden}
.x-section:before{content:"X";position:absolute;left:-4vw;bottom:-16vw;font-size:42vw;line-height:.8;font-weight:800;color:#ffffff08;pointer-events:none}
.x-intro,.x-shell{position:relative;z-index:2}
.x-intro{position:sticky;top:135px;padding-top:20px}
.x-intro h2{margin:0;font-size:clamp(43px,5vw,68px);line-height:1;letter-spacing:-.052em}
.x-intro h2 em{font-weight:400;color:var(--cyan)}
.x-intro>p:not(.kicker){max-width:480px;margin:28px 0;color:#ffffffbd;font-size:14px;line-height:1.75}
.x-follow{border-color:#ffffff5c;background:#ffffff12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.x-follow:hover{background:#fff;color:var(--blue);transform:translateY(-3px)}
.x-shell{min-height:650px;padding:14px;border-radius:28px;background:#ffffffde;border:1px solid #fff;box-shadow:0 30px 80px #00113c80;overflow:hidden}
.x-shell iframe{width:100%!important;border-radius:18px!important}
@media(max-width:980px){.x-section{grid-template-columns:1fr;gap:45px}.x-intro{position:relative;top:auto}.x-shell{min-height:560px}.social-section-head{align-items:flex-start;flex-direction:column}.instagram-shell{padding:12px;min-height:360px}}
@media(max-width:620px){.social-section-head h2,.x-intro h2{font-size:43px}.social-profile-link,.x-follow{font-size:9px}.instagram-shell{margin-left:-10px;margin-right:-10px;border-radius:22px}.x-shell{margin-left:-10px;margin-right:-10px;padding:8px;border-radius:22px}}

/* En tablet y celular el título de X permanece visible durante el tipeo */
@media(max-width:980px){
  .x-section{display:block}
  .x-intro{position:sticky;top:92px;z-index:4;padding:18px 0 30px;background:linear-gradient(180deg,var(--blue) 0%,var(--blue) 88%,#03216b00 100%)}
  .x-shell{margin-top:45px}
}
@media(max-width:620px){
  .x-intro{top:78px;padding:16px 0 28px}
}

.x-shell .elfsight-app-65441e77-19bf-4d3e-83bd-9915ee21452b{min-height:520px}
@media(max-width:620px){.x-shell .elfsight-app-65441e77-19bf-4d3e-83bd-9915ee21452b{min-height:410px}}

/* Fondos fotográficos con identidad propia en las iniciativas */
.program-card.angelelli,.program-card.revoluciona,.program-card.fronteras{background:transparent}
.program-card.program-card>.card-photo{position:absolute;z-index:-2;inset:0;left:0;top:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.72;transform:none;filter:saturate(.88) contrast(1.04);transition:transform .8s cubic-bezier(.16,1,.3,1),filter .45s}
.program-card:hover .card-photo{transform:scale(1.045);filter:saturate(1) contrast(1.06)}
.program-card.angelelli .card-photo{object-position:58% 48%}
.program-card.revoluciona .card-photo{object-position:48% 31%}
.program-card.fronteras .card-photo{object-position:47% 46%}
.program-card:after{z-index:-1;background:linear-gradient(180deg,#00154424 0%,#0015444d 38%,#00133ee8 77%,#001238fa 100%)}
.program-card.angelelli:after{background:linear-gradient(180deg,#a866152b 0%,#a84e213b 38%,#382037e8 78%,#171934fa 100%)}
.program-card.revoluciona:after{background:linear-gradient(180deg,#a9105542 0%,#5e245a73 42%,#281b50eb 78%,#11183cfa 100%)}
.program-card.fronteras:after{background:linear-gradient(180deg,#006d8b2b 0%,#00577755 40%,#003c6fe8 78%,#032552fa 100%)}
.program-card .energy-rings,.program-card .revoluciona-pattern,.program-card .dot-map{z-index:0}
.program-card .card-tag{background:#03216b59;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);box-shadow:0 6px 22px #00154424}
.program-card .program-logo,.program-card .revoluciona-logo{filter:brightness(0) invert(1) drop-shadow(0 8px 20px #00113c8c)}
.program-card .revoluciona-logo{filter:drop-shadow(0 8px 20px #00113c8c)}
.program-card p{text-shadow:0 2px 14px #00113ccc}

@media(max-width:980px){
  .program-card{min-height:500px}
  .program-card .card-photo{opacity:.76}
  .program-card.angelelli .card-photo{object-position:62% 45%}
  .program-card.revoluciona .card-photo{object-position:50% 28%}
  .program-card.fronteras .card-photo{object-position:48% 42%}
}
@media(max-width:620px){
  .program-card{min-height:455px}
  .program-card .card-photo{opacity:.78}
  .program-card.angelelli .card-photo{object-position:63% 44%}
  .program-card.revoluciona .card-photo{object-position:50% 25%}
  .program-card.fronteras .card-photo{object-position:49% 40%}
  .program-card:after{background:linear-gradient(180deg,#00154431 0%,#00154452 35%,#00133eeb 72%,#001238 100%)}
  .program-card.angelelli:after{background:linear-gradient(180deg,#8d4d1738 0%,#60304361 38%,#241b38ed 72%,#12162f 100%)}
  .program-card.revoluciona:after{background:linear-gradient(180deg,#9f155442 0%,#51225475 38%,#241a4ced 72%,#111638 100%)}
  .program-card.fronteras:after{background:linear-gradient(180deg,#006d8b36 0%,#00577766 38%,#003869ed 72%,#032552 100%)}
}
@media(prefers-reduced-motion:reduce){.program-card:hover .card-photo{transform:none}}

/* Logos despejados de los rostros y etiquetas secundarias bajo la descripción */
.program-card.program-card>.program-logo{top:58px}
.program-card .revoluciona-logo{top:66px}
.program-card .card-tag{position:relative;top:auto;left:auto;right:auto;align-self:flex-start;width:max-content;max-width:100%;margin:0 0 13px;padding:5px 9px;background:#03216b42;font-size:6.5px;line-height:1.2;letter-spacing:.15em;white-space:nowrap}
.program-card p{margin-bottom:10px}
@media(max-width:620px){
  .program-card.program-card>.program-logo{top:54px}
  .program-card .revoluciona-logo{top:61px}
  .program-card .card-tag{left:auto;right:auto;max-width:100%;margin-bottom:12px;padding:5px 8px;font-size:6px;overflow:visible;text-overflow:clip}
}

/* Franja superior libre: ningún identificador invade los rostros */
.program-card.program-card>.program-logo{top:18px;height:60px}
.program-card.program-card.angelelli>.program-logo{left:6%;width:48%;object-position:left top}
.program-card.program-card.fronteras>.program-logo{left:6%;width:55%;object-position:left top}
.program-card .revoluciona-logo{top:22px;left:6%;width:58%;font-size:clamp(22px,1.75vw,31px)}
.program-card .revoluciona-pattern{opacity:.11;background:repeating-linear-gradient(120deg,transparent 0 35px,#ffffffa8 35px 36px),linear-gradient(90deg,transparent 58%,#03ceea24)}
@media(max-width:620px){
  .program-card.program-card>.program-logo{top:16px;height:52px}
  .program-card.program-card.angelelli>.program-logo{left:7%;width:55%}
  .program-card.program-card.fronteras>.program-logo{left:7%;width:62%}
  .program-card .revoluciona-logo{top:19px;left:7%;width:68%;font-size:25px}
}

/* Evita el arrastre lateral del documento en Safari/iOS */
html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
.about{overflow:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}.about{overflow:clip}}

/* Firma extraída del video: transparente, animable y sensible al fondo */
.brand-motion{position:relative;display:block;width:100%;height:44px;color:#fff;overflow:hidden;background:transparent}
.brand-mark{display:block;width:100%;height:100%;background:currentColor;-webkit-mask-image:url("public/media/logo-gp-escritura-sprite.png?v=20260819-0114");mask-image:url("public/media/logo-gp-escritura-sprite.png?v=20260819-0114");-webkit-mask-size:100% 6800%;mask-size:100% 6800%;-webkit-mask-position:center top;mask-position:center top;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:brand-write-frames 2.24s steps(67,end) .12s forwards;transition:background-color .35s}
.site-header.scrolled:not(.over-dark) .brand-motion{color:var(--blue)}
.site-header.over-dark .brand-motion,.footer-brand .brand-motion{color:#fff}
.brand-static .brand-mark{-webkit-mask-image:url("public/media/logo-gp-final-sprite.png?v=20260819-0126");mask-image:url("public/media/logo-gp-final-sprite.png?v=20260819-0126");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-position:center;mask-position:center;animation:none}
@keyframes brand-write-frames{to{-webkit-mask-position:center bottom;mask-position:center bottom}}
@media(max-width:620px){.brand-motion{height:40px}}
@media(prefers-reduced-motion:reduce){.brand-mark{-webkit-mask-image:url("public/media/logo-gp-final-sprite.png?v=20260819-0126");mask-image:url("public/media/logo-gp-final-sprite.png?v=20260819-0126");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-position:center;mask-position:center;animation:none}}

/* Redes unificadas: una pausa editorial clara entre iniciativas y contacto */
.x-section.section{
  position:relative;
  display:grid;
  grid-template-columns:minmax(330px,.68fr) minmax(0,1.32fr);
  gap:clamp(42px,6vw,96px);
  align-items:start;
  padding-top:clamp(105px,10vw,145px);
  padding-bottom:clamp(105px,10vw,145px);
  background:
    radial-gradient(circle at 88% 8%,#03ceea25 0 14%,transparent 34%),
    radial-gradient(circle at 4% 82%,#ffbe061b 0 12%,transparent 32%),
    var(--neutral);
  color:var(--ink);
  overflow:visible;
}
.x-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#03216b08 1px,transparent 1px),linear-gradient(90deg,#03216b08 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#0009,transparent 68%);pointer-events:none}
.x-intro{
  position:sticky;
  top:92px;
  z-index:6;
  padding:28px 0 42px;
  color:var(--ink);
  background:linear-gradient(180deg,var(--neutral) 0%,#fff9f0f2 82%,#fff9f000 100%);
}
.x-intro .kicker{color:var(--blue)}
.x-intro h2{font-size:clamp(43px,4.7vw,72px);color:var(--blue)}
.x-intro h2 em{color:var(--blue)}
.x-intro>p:not(.kicker){color:#435069}
.social-feeds{position:relative;z-index:2;display:grid;gap:32px}
.feed-column{min-width:0}
.feed-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 8px 14px}
.feed-heading>div{display:flex;align-items:baseline;gap:13px}
.feed-heading span{font-size:9px;font-weight:700;letter-spacing:.16em;color:var(--yellow)}
.feed-heading h3{margin:0;color:var(--blue);font-size:clamp(22px,2.2vw,34px);letter-spacing:-.04em}
.feed-heading a{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}
.instagram-shell,.x-shell{margin:0;min-height:540px;padding:14px;border-radius:28px;background:#ffffffd9;border:1px solid #fff;box-shadow:0 28px 70px #03216b1c;overflow:hidden}
.instagram-shell:before{content:"Cargando Instagram…"}
.x-shell:before{content:"Cargando publicaciones de X…";position:absolute;z-index:-1;inset:0;display:grid;place-items:center;color:#03216b75;font-size:11px;letter-spacing:.08em}
.x-shell{position:relative}

/* La palabra viajera queda por encima de la copia durante cada parada. */

@media(max-width:980px){
  .x-section.section{display:block;padding-top:82px}
  .x-intro{top:74px;padding:22px 0 36px}
  .social-feeds{margin-top:34px;gap:42px}
  .instagram-shell,.x-shell{min-height:520px}
}
@media(max-width:620px){
  .x-section.section{padding:72px 22px 96px}
  .x-intro{top:72px;padding:18px 0 30px}
  .x-intro h2{font-size:clamp(37px,11.2vw,47px);line-height:1.02}
  .x-intro>p:not(.kicker){display:none}
  .feed-heading{margin:0 2px 12px}
  .feed-heading h3{font-size:24px}
  .feed-heading a{font-size:8px}
  .instagram-shell,.x-shell{margin:0 -4px;min-height:440px;padding:8px;border-radius:22px}
}

/* Scrollytelling social: se fija la escena completa, no el título como cabecera. */
.x-section.section{display:block;padding:0;background:var(--neutral);overflow:visible}
.social-story{position:relative;height:185svh;min-height:1120px}
.social-story .x-intro{
  position:sticky;
  top:0;
  width:100%;
  height:100svh;
  min-height:680px;
  padding:clamp(112px,13vh,155px) var(--section-x) clamp(70px,9vh,105px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    radial-gradient(circle at 82% 20%,#03ceea2b,transparent 32%),
    radial-gradient(circle at 12% 84%,#ffbe0620,transparent 28%),
    var(--neutral);
  overflow:hidden;
}
.social-story .x-intro:after{content:"";position:absolute;z-index:-1;right:-12vw;top:6vh;width:42vw;height:42vw;border:1px solid #03216b13;border-radius:50%;box-shadow:0 0 0 7vw #03ceea0b,0 0 0 14vw #03216b08}
.social-story .x-intro h2{max-width:1220px;font-size:clamp(50px,4.45vw,64px);line-height:1}
.social-story .x-intro>p:not(.kicker){max-width:620px;margin-bottom:0}
.story-scroll-hint{position:absolute;left:var(--section-x);bottom:34px;display:flex;align-items:center;gap:15px;font-size:8px;font-weight:700;letter-spacing:.2em;color:var(--blue)}
.story-scroll-hint i{display:block;width:68px;height:1px;background:var(--blue);transform-origin:left;animation:storyHint 1.6s ease-in-out infinite}
@keyframes storyHint{50%{transform:scaleX(.38);opacity:.45}}
.social-feeds{z-index:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:clamp(90px,9vw,135px) var(--section-x) clamp(110px,11vw,165px);background:linear-gradient(180deg,#eefbfa 0%,var(--neutral) 100%)}
.feed-column{position:relative;z-index:20;align-self:start}
.feed-heading,.instagram-shell,.x-shell{position:relative;z-index:4}
.instagram-shell,.x-shell{min-height:650px}

@media(max-width:980px){
  .social-story{height:190svh;min-height:1220px}
  .social-story .x-intro{top:0;height:100svh;min-height:620px;padding:110px var(--section-x) 72px;justify-content:center}
  .social-story .x-intro h2{max-width:820px;font-size:clamp(42px,6.4vw,58px)}
  .social-feeds{grid-template-columns:1fr;padding-top:82px;gap:70px}
  .instagram-shell,.x-shell{min-height:560px}
}
@media(max-width:620px){
  .x-section.section{padding:0}
  .social-story{height:195svh;min-height:1180px}
  .social-story .x-intro{top:0;height:100svh;min-height:600px;padding:96px 22px 68px;justify-content:center}
  .social-story .x-intro h2{font-size:clamp(35px,9.6vw,42px);line-height:1.04}
  .social-story .x-intro>p:not(.kicker){display:block;margin-top:24px;font-size:12px;line-height:1.6}
  .story-scroll-hint{left:22px;bottom:24px}
  .social-feeds{padding:72px 22px 96px;gap:58px}
  .instagram-shell,.x-shell{min-height:470px}
}
@media(prefers-reduced-motion:reduce){.social-story{height:auto;min-height:0}.social-story .x-intro{position:relative;height:auto;min-height:70svh}.story-scroll-hint{display:none}}

/* Redes sociales: una sola escena continua, título arriba y widgets debajo. */
.x-section.section{display:block;position:relative;padding:clamp(100px,11vw,150px) var(--section-x);overflow:hidden;background:linear-gradient(135deg,#fff9f0 0%,#eefbfa 58%,#fff9f0 100%);color:var(--blue)}
.x-section.section:before{content:"";position:absolute;width:min(60vw,840px);height:min(60vw,840px);right:-25vw;top:-28vw;border-radius:50%;border:1px solid #03216b0c;box-shadow:0 0 0 8vw #03ceea0b,0 0 0 16vw #03216b06;pointer-events:none}
.x-section .x-intro{position:relative;z-index:4;top:auto;width:auto;min-height:0;height:auto;padding:0;justify-content:flex-start;background:none;overflow:visible}
.x-section .x-intro h2{max-width:980px;font-size:clamp(44px,4.65vw,68px);line-height:1.04;color:var(--blue)}
.x-section .x-intro h2 em{color:var(--blue)}
.x-section .x-intro>p:not(.kicker){max-width:620px;margin:26px 0 0;color:#435069}
.x-section .story-scroll-hint{position:relative;left:auto;bottom:auto;margin-top:36px;color:var(--blue)}
.x-section .social-feeds{position:relative;z-index:20;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:70px;padding:0;background:none}
.x-section .feed-column{position:relative;z-index:20}.x-section .feed-heading,.x-section .instagram-shell,.x-section .x-shell{position:relative;z-index:20}
.x-section .instagram-shell,.x-section .x-shell{min-height:650px}
@media(max-width:980px){.x-section.section{padding:82px var(--section-x) 100px}.x-section .x-intro{padding:0}.x-section .x-intro h2{font-size:clamp(40px,6vw,54px)}.x-section .social-feeds{grid-template-columns:1fr;gap:64px;margin-top:54px}.x-section .instagram-shell,.x-section .x-shell{min-height:560px}}
@media(max-width:620px){.x-section.section{padding:72px 22px 96px}.x-section .x-intro h2{font-size:clamp(32px,8.9vw,38px);line-height:1.06}.x-section .x-intro>p:not(.kicker){font-size:12px;line-height:1.65}.x-section .story-scroll-hint{margin-top:28px}.x-section .social-feeds{margin-top:46px;gap:54px}.x-section .instagram-shell,.x-section .x-shell{min-height:470px}}

/* Iniciativas: entrada directa, sin escena fija ni scroll retenido. */
.programs{height:auto;min-height:0}
.program-stage{position:relative;top:auto;height:auto;min-height:0;padding:84px var(--section-x) 64px;display:block;overflow:hidden}
.program-heading{opacity:1!important;transform:none!important;margin-bottom:32px}
.program-grid{min-height:0;align-items:stretch}
.program-card{min-height:570px}
.program-card:nth-child(1),.program-card:nth-child(2),.program-card:nth-child(3){opacity:0!important;transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1),box-shadow .35s!important}
.program-card:nth-child(1){transform:translate3d(-12vw,32px,0) rotate(-3deg) scale(.975)!important}
.program-card:nth-child(2){transform:translate3d(0,88px,0) scale(.975)!important}
.program-card:nth-child(3){transform:translate3d(12vw,32px,0) rotate(3deg) scale(.975)!important}
.programs.is-visible .program-card:nth-child(1),.programs.is-visible .program-card:nth-child(2),.programs.is-visible .program-card:nth-child(3){opacity:1!important;transform:translate3d(0,0,0) scale(1)!important}
.programs.is-visible .program-card:nth-child(2){transition-delay:.1s!important}.programs.is-visible .program-card:nth-child(3){transition-delay:.2s!important}
.program-progress{display:none}
@media(max-width:980px){.program-stage{padding:82px var(--section-x)}.program-grid{grid-template-columns:1fr}.program-card{min-height:500px}.program-card:nth-child(1){transform:translate3d(-44px,28px,0) rotate(-2deg) scale(.98)!important}.program-card:nth-child(2){transform:translate3d(0,64px,0) scale(.98)!important}.program-card:nth-child(3){transform:translate3d(44px,28px,0) rotate(2deg) scale(.98)!important}}
@media(max-width:620px){.program-stage{padding:76px 22px}.program-heading{margin-bottom:26px}.program-card{min-height:455px}}
@media(prefers-reduced-motion:reduce){.program-card:nth-child(1),.program-card:nth-child(2),.program-card:nth-child(3){opacity:1!important;transform:none!important}}

/* Botón efecto Glass (Compartí tu idea) */
.glass-button {
    padding: 18px 24px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 8px 32px rgba(3, 33, 107, 0.2);
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
}
.glass-button:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.4);
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(3, 33, 107, 0.3);
}
.glass-button b {
    margin-left: 12px;
    color: var(--yellow);
    font-size: 14px;
}
@media(max-width:620px) {
    .glass-button {
        width: 100%;
        justify-content: center;
    }
    .primary-button {
        width: 100%;
        display: flex;
        justify-content: center;
    }
}
