@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:ital,opsz,wght@0,12..96,500;0,12..96,600;0,12..96,700;1,12..96,500;1,12..96,600&family=Work+Sans:wght@300;400;500;600&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--black:#0a0a0a;--white:#fff;--off:#fcfcfb;--cream:#f3efe4;--blue:#002fa7;--blue-hi:#1e40e0;--line:#0a0a0a24;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--ease-out-quart:cubic-bezier(.25,1,.5,1);--ease-out-quint:cubic-bezier(.22,1,.36,1);--ease-out-expo:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-color:var(--blue) var(--off);scrollbar-width:thin}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--off)}::-webkit-scrollbar-thumb{background:var(--blue);border:3px solid var(--off);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--blue-hi)}body{background:var(--off);color:var(--black);font-family:Work Sans,sans-serif;font-weight:400;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:1px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rv{opacity:0;transition:opacity .9s var(--ease-out-expo), transform .9s var(--ease-out-expo);transform:translateY(28px)}.rv.in{opacity:1;transform:translateY(0)}.route-fallback{min-height:100vh;color:var(--black);justify-content:center;align-items:center;font-size:14px;display:flex}.route-fallback:before{content:"";border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:22px;height:22px;margin-right:10px;animation:.7s linear infinite routeFallbackSpin}@keyframes routeFallbackSpin{to{transform:rotate(360deg)}}.route-fallback-error{text-align:center;flex-direction:column;gap:16px;padding:24px}.route-fallback-error:before{content:none}@media (prefers-reduced-motion:reduce){.rv{opacity:1!important;transition:none!important;transform:none!important}*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.carousel{z-index:0;background:#111;position:absolute;inset:0;overflow:hidden}.carousel-slide{opacity:0;pointer-events:none;transition:opacity 1.2s;position:absolute;inset:0}.carousel-slide.active{opacity:1}.carousel-slide img{object-fit:cover;width:100%;height:100%;display:block}.carousel-placeholder{background:repeating-linear-gradient(135deg,#ffffff0d 0 2px,#0000 2px 16px),linear-gradient(160deg,#1a1a1a,#050505);flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100%;display:flex}.carousel-placeholder svg{stroke:#ffffff8c;fill:none;stroke-width:1.3px}.carousel-placeholder span{letter-spacing:.09em;text-transform:uppercase;color:#fff9;text-align:center;padding:0 20px;font-size:11px}.carousel-overlay{pointer-events:none;position:absolute;inset:0}.carousel-overlay.dark{background:linear-gradient(#0a0a0a66 0%,#0a0a0a2e 35%,#0a0a0a80 100%)}.carousel-overlay.black{background:#0a0a0aad}.carousel-dots{z-index:5;pointer-events:auto;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.carousel-dots button{cursor:pointer;pointer-events:auto;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex;position:relative}.carousel-dots button:after{content:"";background:#ffffff80;border-radius:50%;width:6px;height:6px;transition:width .25s,border-radius .25s,background .25s}.carousel-dots button:hover:after{background:#fffc}.carousel-dots button:focus-visible{outline:none}.carousel-dots button:focus-visible:after{background:var(--white);border-radius:3px;width:16px}.carousel-dots button.active:after{background:var(--white);border-radius:3px;width:18px}@media (prefers-reduced-motion:reduce){.carousel-slide{transition:none}}.vt-card{background:var(--off);border:1px solid var(--line);flex-direction:column;height:100%;display:flex;overflow:hidden}.vt-frame{aspect-ratio:16/9;background:var(--black);position:relative}.vt-photo{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.vt-iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.vt-poster{cursor:pointer;background-position:50%;background-size:cover;border:0;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex;position:absolute;inset:0}.vt-poster:before{content:"";background:#0a0a0a52;transition:background .25s;position:absolute;inset:0}.vt-poster:hover:before{background:#0a0a0a80}.vt-play{z-index:1;background:var(--white);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:background .2s,transform .2s;display:flex;position:relative}.vt-poster:hover .vt-play{background:var(--blue);transform:scale(1.06)}.vt-play svg{width:20px;height:20px;fill:var(--black);margin-left:2px;transition:fill .2s}.vt-poster:hover .vt-play svg{fill:var(--white)}.vt-caption{flex-direction:column;flex:1;gap:2px;padding:18px 20px;display:flex}.vt-caption-textonly{justify-content:center;padding:26px 24px}.vt-quote{color:var(--black);margin:0 0 14px;padding-left:18px;font-family:Bricolage Grotesque,serif;font-size:15.5px;font-style:italic;font-weight:500;line-height:1.5;position:relative}.vt-quote:before{content:"“";color:var(--blue);opacity:.55;font-family:Bricolage Grotesque,serif;font-size:34px;position:absolute;top:-8px;left:-4px}.vt-quote:after{content:"”";color:var(--blue);opacity:.55;margin-left:2px;font-family:Bricolage Grotesque,serif;font-size:1.2em}.vt-name{font-size:14px;font-weight:500}.vt-role{letter-spacing:.04em;text-transform:uppercase;color:#666;font-size:12px}@media (prefers-reduced-motion:reduce){.vt-poster:before,.vt-play{transition:none}}.faq-list{border-top:1px solid var(--line);max-width:760px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-question{cursor:pointer;text-align:left;width:100%;color:var(--black);background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:24px 4px;font-family:Work Sans,sans-serif;font-size:18px;font-weight:500;line-height:1.4;transition:color .25s;display:flex}.faq-question:hover,.faq-item.is-open .faq-question{color:var(--blue)}.faq-icon{transition:transform .4s var(--ease-out-expo);flex-shrink:0;display:flex}.faq-item.is-open .faq-icon{transform:rotate(45deg)}.faq-panel{transition:grid-template-rows .4s var(--ease-out-expo);grid-template-rows:0fr;display:grid}.faq-item.is-open .faq-panel{grid-template-rows:1fr}.faq-panel-inner{min-height:0;overflow:hidden}.faq-answer{color:#333;padding:0 4px 24px;font-family:Work Sans,sans-serif;font-size:15px;font-weight:400;line-height:1.65}@media (width<=640px){.faq-question{gap:12px;padding:18px 4px;font-size:16px}.faq-answer{font-size:14.5px}}@media (prefers-reduced-motion:reduce){.faq-icon,.faq-panel{transition:none}}h1,h2,h3,.serif{letter-spacing:-.01em;font-family:Bricolage Grotesque,serif;font-weight:600;line-height:.98}.wrap{max-width:1240px;margin:0 auto;padding:0 32px}.wrap em{color:#7f95e8;font-style:italic}.kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--blue);font-size:12px;font-weight:600}.efa-header{z-index:50;background:0 0;border-bottom:1px solid #0000;transition:background .3s,border-color .3s;position:fixed;top:0;left:0;right:0}.efa-header.is-scrolled{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fcfcfbf0}.efa-nav{grid-template-columns:auto 1fr auto;align-items:center;gap:24px;max-width:1320px;margin:0 auto;padding:12px 32px;display:grid}.nav-brand{display:flex}.logo-mark{width:auto;height:52px;transition:height .3s;display:block}.nav-links{letter-spacing:.02em;white-space:nowrap;color:var(--white);justify-content:center;align-items:center;gap:44px;font-size:13.5px;transition:color .3s;display:flex}.efa-header.is-scrolled .nav-links{color:var(--black)}.nav-links a,.nav-trigger{padding-bottom:3px;position:relative}.nav-links a:after,.nav-trigger:after{content:"";background:currentColor;width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-links a:hover:after,.nav-trigger:hover:after,.nav-item.is-open .nav-trigger:after{width:100%}.nav-item{position:relative}.nav-trigger{font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;display:inline-flex}.nav-chevron{transition:transform .25s;display:inline-flex}.nav-item.is-open .nav-chevron{transform:rotate(180deg)}.nav-dropdown{opacity:0;visibility:hidden;min-width:250px;padding-top:26px;transition:opacity .2s,transform .2s,visibility 0s linear .2s;position:absolute;top:100%;left:-22px;transform:translateY(-6px)}.nav-item.is-open .nav-dropdown{opacity:1;visibility:visible;transition:opacity .2s,transform .2s;transform:translateY(0)}.nav-dropdown-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff1a;border-top:2px solid var(--blue);background:#0a0a0af5;box-shadow:0 18px 40px -16px #00000080}.nav-links .nav-dropdown-panel a{color:var(--white);border-bottom:1px solid #ffffff14;padding:14px 22px;transition:background .2s,color .2s;display:block}.nav-links .nav-dropdown-panel a:last-child{border-bottom:0}.nav-links .nav-dropdown-panel a:after{display:none}.nav-links .nav-dropdown-panel a:hover,.nav-links .nav-dropdown-panel a:focus-visible{color:#a9bdf5;background:#ffffff12}.nav-actions{justify-content:flex-end;align-items:center;gap:16px;display:flex}.nav-actions .btn{padding:9px 20px;font-size:12.5px}.nav-actions .btn-dark{color:var(--white);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border-color:#ffffffb3;transition:background .25s,border-color .25s,color .25s,transform .15s}.efa-header.is-scrolled .nav-actions .btn-dark{background:var(--black);border-color:var(--black);color:var(--white)}.efa-header.is-scrolled .nav-actions .btn-dark:hover{background:var(--blue);border-color:var(--blue)}.nav-burger{cursor:pointer;color:var(--white);background:0 0;border:none;margin:-10px;padding:10px;transition:color .3s;display:none}.efa-header.is-scrolled .nav-burger{color:var(--black)}@media (width<=860px){.efa-nav{grid-template-columns:auto 1fr;padding:12px 20px}.nav-links,.nav-actions .btn-dark{display:none}.nav-burger{justify-content:center;align-items:center;display:flex}}.mobile-menu{background:var(--black);opacity:0;visibility:hidden;flex-direction:column;padding:12px 28px 32px;transition:opacity .25s,transform .25s,visibility 0s linear .25s;display:flex;position:fixed;inset:76px 0 0;transform:translateY(-12px)}.mobile-menu.is-open{opacity:1;visibility:visible;transition:opacity .25s,transform .25s;transform:translateY(0)}.mobile-menu-links{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.mobile-menu-links a{color:var(--white);border-bottom:1px solid #ffffff1f;padding:13px 0;font-family:Bricolage Grotesque,serif;font-size:19px;font-weight:600}.mobile-menu-group,.mobile-menu-links>a{margin-top:18px}.mobile-menu-group{flex-direction:column;display:flex}.mobile-menu-links>:first-child{margin-top:0}.mobile-menu-group-label{letter-spacing:.2em;text-transform:uppercase;color:#a9bdf5;padding-bottom:2px;font-size:11px;font-weight:600}.mobile-menu-cta{text-align:center;flex-shrink:0;align-self:stretch;margin-top:24px}@media (width>=861px){.mobile-menu{display:none!important}}.btn{letter-spacing:.03em;border:1px solid var(--black);cursor:pointer;transition:background .25s ease, color .25s ease, border-color .25s ease, transform .15s ease, box-shadow .2s var(--ease-out-quart);padding:16px 34px;font-size:15px;font-weight:500;display:inline-block}.btn-dark{background:var(--black);color:var(--white)}.btn-dark:hover{background:var(--blue);border-color:var(--blue);box-shadow:0 10px 24px -10px #002fa759}.btn:active{transform:scale(.97)}.hero{height:100vh;min-height:740px;position:relative;overflow:hidden}.hero-photo{position:absolute;inset:0}.hero-scrim{pointer-events:none;z-index:1;background:linear-gradient(#06060600 30%,#0606068c 65%,#060606d1 100%);position:absolute;inset:0}.hero-content{z-index:2;pointer-events:none;max-width:980px;padding:0 32px 148px 6vw;position:absolute;bottom:0;left:0;right:0}.hero-content>*{pointer-events:auto}.hero-content .kicker{color:#d8d66a}.hero h1{color:var(--white);margin-top:18px;font-size:clamp(2.4rem,5.8vw,5.2rem)}.hero h1 em{color:#7f95e8;font-style:italic}.hero-sub{color:#ffffffd1;max-width:420px;margin-top:24px;font-size:17px;line-height:1.65}.hero .hero-sub{color:#ffffffc7;font-weight:300;line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:36px;display:flex}.hero-actions .more{letter-spacing:.03em;color:var(--white);border-bottom:1px solid var(--white);padding-bottom:2px;font-size:15px}.btn-hero{background:var(--white);color:var(--black);border-color:var(--white);align-items:center;gap:9px;display:inline-flex}.btn-hero:hover{background:var(--blue);border-color:var(--blue);color:var(--white);box-shadow:0 10px 24px -10px #002fa773}.hero-facts{z-index:2;background:#0a0a0ab3;border-top:1px solid #ffffff2e;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:22px 32px 22px 6vw;display:grid;position:absolute;bottom:0;left:0;right:0}.hero-fact{padding-right:20px}.hero-fact+.hero-fact{border-left:1px solid #ffffff2e;padding-left:20px}.hero-fact dt{letter-spacing:.2em;text-transform:uppercase;color:#a9bdf5;font-size:10.5px;font-weight:600}.hero-fact dd{color:#ffffffd1;margin:8px 0 0;font-size:17px;font-weight:500}.hero-fact dd.is-numeric{color:var(--white);font-variant-numeric:tabular-nums}.hero .carousel-dots{bottom:104px}@media (width<=900px){.hero{height:88vh;min-height:720px}.hero-content{padding:0 24px 168px}.hero-sub-tail{display:none}.hero-actions .btn-hero{justify-content:center;width:100%}.hero .carousel-dots{flex-direction:column;inset:84px 12px auto auto;transform:none}.hero .carousel-dots button.active:after,.hero .carousel-dots button:focus-visible:after{width:6px;height:18px}.hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.hero-fact{padding:14px 16px}.hero-fact:nth-child(-n+2){border-bottom:1px solid #ffffff2e}.hero-fact+.hero-fact{border-left:none;padding-left:16px}.hero-fact:nth-child(2n){border-left:1px solid #ffffff2e}.hero-fact dd{font-size:15px}}.cta-arrow{transition:transform .2s var(--ease-out-quart);display:inline-block}.more:hover .cta-arrow{transform:translateY(3px)}.ticker{background:var(--black);color:var(--white);border-top:1px solid var(--black);border-bottom:1px solid var(--black);margin-top:0;padding:16px 0}.ticker-track{flex-wrap:wrap;justify-content:center;align-items:center;max-width:1240px;margin:0 auto;padding:0 24px;display:flex}.ticker span{white-space:nowrap;padding:4px 16px;font-family:Bricolage Grotesque,serif;font-size:17px;font-style:italic}.ticker span.dot{color:var(--blue);font-style:normal}.ticker span:last-child .dot{display:none}@media (width<=640px){.ticker span{padding:3px 10px;font-size:15px}}.efa section{padding:120px 0}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:56px;display:flex}.section-head h2{font-size:clamp(2.2rem,4.4vw,3.6rem)}.programs-grid{background:var(--line);border:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:1px;display:flex}.prog-card{background:var(--off);flex:190px;max-width:230px;transition:background .3s,color .3s}.prog-card.rv{transition:opacity .9s var(--ease-out-expo), transform .9s var(--ease-out-expo), background .3s ease, color .3s ease}.prog-card:hover{background:var(--black);color:var(--white)}.prog-card:hover .prog-meta{color:#b9c4ff}.prog-trigger{width:100%;height:100%;min-height:168px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;padding:24px 22px;display:flex}.prog-icon{width:24px;height:24px}.prog-card h3{margin-top:16px;font-size:19px;font-weight:600}.prog-meta{letter-spacing:.05em;text-transform:uppercase;color:#666;margin-top:5px;font-size:10.5px;transition:color .3s}.prog-cta{letter-spacing:.03em;color:var(--blue);opacity:0;margin-top:14px;font-size:11px;transition:opacity .25s,transform .25s,color .3s;transform:translateY(4px)}.prog-card:hover .prog-cta{opacity:1;color:#a9bdf5;transform:none}.prog-card:hover .prog-cta .cta-arrow{transform:translateY(3px)}@media (width<=560px){.prog-cta{opacity:1;transform:none}}#programas,#testimonios{background:repeating-linear-gradient(135deg, #ffffff0d 0 2px, transparent 2px 18px), var(--blue)}#programas .section-head h2,#testimonios .section-head h2{color:var(--white)}#profesores{background:var(--cream)}.teacher-grid{grid-template-columns:repeat(4,1fr);gap:52px 20px;display:grid}.teacher-card{text-align:center;background:0 0;padding:0}.teacher-card.rv{transform:translateY(28px) rotate(var(--tilt,0deg));transition:opacity .9s var(--ease-out-expo), transform .9s var(--ease-out-expo)}.teacher-card.rv.in{transform:translateY(0)rotate(0)}.teacher-card.rv.in:nth-child(2n){transform:translateY(22px)rotate(0)}.teacher-trigger{width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.teacher-avatar{background:var(--blue);width:132px;height:132px;color:var(--white);box-shadow:0 0 0 1px var(--line);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-family:Bricolage Grotesque,serif;font-size:34px;font-weight:600;transition:transform .5s cubic-bezier(.34,1.56,.64,1),box-shadow .4s;display:flex;overflow:hidden}.teacher-card:hover .teacher-avatar{transform:scale(1.07)rotate(-4deg);box-shadow:0 22px 46px #0a0a0a2e}.teacher-avatar img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.teacher-card:hover .teacher-avatar img{transform:scale(1.12)}.teacher-card h3{font-size:17px;font-weight:600;transition:color .25s}.teacher-card:hover h3{color:var(--blue)}.teacher-meta{letter-spacing:.05em;text-transform:uppercase;color:#777;margin-top:6px;font-size:11.5px}@media (width<=900px){.teacher-grid{grid-template-columns:repeat(2,1fr);row-gap:48px}}@media (width<=520px){.teacher-grid{grid-template-columns:1fr}.teacher-card.rv.in:nth-child(2n){transform:translateY(0)rotate(0)}}.teacher-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);background:#0a0a0a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.teacher-modal{background:var(--cream);width:100%;max-width:760px;max-height:85vh;animation:teacherModalIn .3s var(--ease-out-expo);border-radius:20px;align-items:center;gap:40px;padding:48px;display:flex;position:relative;overflow:hidden}@keyframes teacherModalIn{0%{opacity:0;transform:scale(.96)translateY(10px)}to{opacity:1;transform:none}}.teacher-modal-close{cursor:pointer;color:#777;background:0 0;border:none;padding:6px;position:absolute;top:14px;right:14px}.teacher-modal-close:hover{color:var(--black)}.teacher-modal-photo{background:var(--blue);width:216px;height:216px;color:var(--white);box-shadow:0 0 0 1px var(--line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Bricolage Grotesque,serif;font-size:56px;font-weight:600;display:flex;overflow:hidden}.teacher-modal-photo img{object-fit:cover;width:100%;height:100%;display:block}.teacher-modal-body{max-height:100%;padding-right:4px;overflow-y:auto}.teacher-modal-body h3{font-size:1.8rem}.teacher-modal-role{color:var(--blue);margin-top:6px;font-family:Bricolage Grotesque,serif;font-size:14.5px;font-style:italic;display:block}.teacher-modal-body p{color:#333;margin-top:18px;font-size:15px;line-height:1.65}.teacher-modal-facts{flex-direction:column;gap:14px;margin-top:20px;display:flex}.teacher-modal-facts li{align-items:flex-start;gap:12px;display:flex}.teacher-modal-facts li svg{color:var(--blue);flex-shrink:0;margin-top:2px}.teacher-modal-facts li>div{flex-direction:column;gap:2px;display:flex}.fact-label{letter-spacing:.06em;text-transform:uppercase;color:#555;font-size:10.5px;font-weight:700}.fact-value{color:var(--black);font-size:14.5px;line-height:1.45}.teacher-modal-quote{color:var(--black);margin:22px 0 0;padding-left:22px;font-family:Bricolage Grotesque,serif;font-size:16.5px;font-style:italic;font-weight:500;line-height:1.55;position:relative}.teacher-modal-quote:before{content:"“";color:var(--blue);opacity:.55;font-family:Bricolage Grotesque,serif;font-size:42px;position:absolute;top:-10px;left:-4px}.teacher-modal-quote:after{content:"”";color:var(--blue);opacity:.55;margin-left:2px;font-family:Bricolage Grotesque,serif;font-size:1.3em}@media (width<=560px){.teacher-modal{text-align:center;border-radius:16px;flex-direction:column;gap:16px;height:auto;max-height:88vh;padding:32px 26px;overflow-y:auto}.teacher-modal-photo{width:150px;height:150px;font-size:40px}.teacher-modal-facts li,.teacher-modal-quote{text-align:left}}@media (prefers-reduced-motion:reduce){.teacher-modal{animation:none}.teacher-avatar,.teacher-avatar img{transition:none}.teacher-card:hover .teacher-avatar,.teacher-card:hover .teacher-avatar img{transform:none}.cta-arrow{transition:none}.more:hover .cta-arrow,.prog-card:hover .prog-cta .cta-arrow,.shop-card:hover,.shop-card:hover .shop-photo img{transform:none}}.program-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);background:#0a0a0a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.program-modal{background:var(--cream);width:100%;max-width:600px;max-height:82vh;animation:teacherModalIn .3s var(--ease-out-expo);border-radius:20px;padding:44px;position:relative;overflow-y:auto}.program-modal-close{cursor:pointer;color:#777;background:0 0;border:none;padding:6px;position:absolute;top:14px;right:14px}.program-modal-close:hover{color:var(--black)}.program-modal-head{align-items:center;gap:16px;margin-bottom:30px;padding-right:24px;display:flex}.program-modal-icon{width:32px;height:32px;color:var(--blue);flex-shrink:0}.program-modal-head h3{font-size:1.7rem}.program-modal-meta{letter-spacing:.06em;text-transform:uppercase;color:#777;margin-top:4px;font-size:11.5px;display:block}.malla-stage{border-top:1px solid var(--line);padding-top:20px}.malla-stage:first-child{border-top:none;padding-top:0}.malla-stage-label{color:var(--blue);margin-bottom:10px;font-family:Bricolage Grotesque,serif;font-size:14.5px;font-style:italic;display:block}.malla-stage ul{flex-direction:column;gap:7px;display:flex}.malla-stage li{color:#333;padding-left:16px;font-size:14px;line-height:1.4;position:relative}.malla-stage li:before{content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:8px;left:0}@media (width<=560px){.program-modal{border-radius:16px;padding:32px 24px}}@media (prefers-reduced-motion:reduce){.program-modal{animation:none}}.testimonial-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}#ubicacion{background:var(--cream)}.location-grid{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.location-grid h2{margin:6px 0 20px;font-size:clamp(2.2rem,4.4vw,3.6rem)}.location-address{margin-bottom:18px;font-family:Bricolage Grotesque,serif;font-size:19px;font-style:italic;line-height:1.5}#ubicacion .hero-sub{color:#333}.location-map{aspect-ratio:4/3;background:var(--black);position:relative;overflow:hidden}.location-map iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}@media (width<=760px){.location-grid{grid-template-columns:1fr;gap:36px}}@media (width<=560px){.prog-card{flex-basis:100%;max-width:none}}#tienda{background:var(--cream)}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;display:grid}.shop-card{background:var(--white);border:1px solid var(--line);transition:box-shadow .3s var(--ease-out-quart),transform .3s var(--ease-out-quart);flex-direction:column;display:flex;overflow:hidden}.shop-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #0a0a0a1a}.shop-photo{aspect-ratio:1;background:var(--black);overflow:hidden}.shop-photo img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.shop-card:hover .shop-photo img{transform:scale(1.05)}.shop-photo-empty{color:#fff6;background:repeating-linear-gradient(135deg,#ffffff0d 0 2px,#0000 2px 16px),linear-gradient(160deg,#1a1a1a,#050505);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.shop-body{flex-direction:column;flex:1;padding:22px 24px 24px;display:flex}.shop-body h3{font-size:19px;font-weight:600}.shop-desc{color:#666;flex:1;margin-top:8px;font-size:13.5px;line-height:1.5}.shop-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:16px;display:flex}.shop-price{color:var(--blue);font-family:Bricolage Grotesque,serif;font-size:19px;font-style:italic}.shop-card .btn.btn-dark{align-items:center;gap:7px;padding:10px 18px;font-size:12.5px;display:inline-flex}.quote{text-align:center;background:var(--cream);padding:140px 0}.quote blockquote{max-width:820px;margin:0 auto;font-family:Bricolage Grotesque,serif;font-size:clamp(1.6rem,3.6vw,2.8rem);font-style:italic;font-weight:500;line-height:1.35}.quote blockquote span{color:var(--blue)}.quote cite{letter-spacing:.05em;color:#666;margin-top:28px;font-size:13px;font-style:normal;display:block}.quote-more{letter-spacing:.03em;color:var(--black);border-bottom:1px solid var(--black);margin-top:36px;padding-bottom:2px;font-size:15px;display:inline-block}.quote-more:hover{color:var(--blue);border-bottom-color:var(--blue)}.playlist-section{background:var(--black);color:var(--white)}.playlist-section .section-head h2{color:var(--white)}.playlist-section iframe{display:block}.playlist-credit{color:#ffffff73;margin-top:14px;font-family:Bricolage Grotesque,serif;font-size:13.5px;font-style:italic}.cta{background:var(--black);color:var(--white);text-align:center;padding:140px 0}.cta-logo-mark{width:auto;height:48px;margin:0 auto 28px;display:block}.cta h2{max-width:760px;margin:0 auto 36px;font-size:clamp(2.4rem,6vw,5rem)}.cta .btn-dark{background:var(--blue);border-color:var(--blue);align-items:center;gap:8px;display:inline-flex}.cta .btn-dark:hover{background:var(--white);color:var(--black);border-color:var(--white)}.cta-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}
