.footer-container{border-radius:var(--border-radius-2xl)var(--border-radius-3xl)0 0;z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;background:linear-gradient(#0f172a14,#ffffff14);border-top:1px solid #ffffff42;width:100%;max-height:60vh;transition:all .8s;animation:.8s forwards footerSlideUp;position:fixed;bottom:0;overflow:hidden}@keyframes footerSlideUp{to{opacity:1;transform:translateY(0)}}.footer-bar{justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-3);display:flex}.expand-btn{min-height:48px;padding:var(--spacing-2_5)var(--spacing-4);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;font-size:var(--font-size-lg);cursor:pointer;justify-content:center;align-items:center;gap:var(--spacing-2);font-weight:var(--font-weight-semibold);color:var(--primary-700);background:linear-gradient(135deg,#ffffffc7,#f1f5f961);border:1px solid #ffffff47;border-radius:999px;flex:none;transition:transform .3s,color .3s,background-color .3s,box-shadow .3s,border-color .3s;display:inline-flex;box-shadow:0 8px 22px #0f172a14}@media (hover:hover){.expand-btn:hover{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;border-color:#0000;transform:translateY(-2px);box-shadow:0 10px 24px #0f172a24}}@media (hover:none){.expand-btn:active{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;border-color:#0000;transform:scale(.98);box-shadow:0 10px 24px #0f172a24}}.expand-btn--open{color:var(--error-500);background:linear-gradient(135deg,#ef44442e,#ffffffeb);border-color:#f871714d}.expand-btn svg{font-size:1.1em}.expand-btn span{font-size:var(--font-size-sm);line-height:1}.footer-expand{max-height:0;transition:max-height .6s;overflow:hidden}.footer-content::-webkit-scrollbar{width:6px}.footer-content::-webkit-scrollbar-track{background:0 0}.footer-content::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px;transition:background .2s}.footer-content::-webkit-scrollbar-thumb:hover{background:#94a3b880}.footer-expand.show{max-height:500px}.footer-content{padding:0 var(--spacing-3)var(--spacing-3)var(--spacing-3);gap:var(--spacing-3);opacity:0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:50vh;animation:.6s forwards fadeInContent;display:grid;overflow:hidden auto}.footer-expand.show .footer-content{opacity:1}@keyframes fadeInContent{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.footer-box{padding:var(--spacing-5);background:var(--card-transparent);border:1px solid #e2e8f0e6;border-radius:24px;box-shadow:0 14px 36px #0f172a0f}.footer-box h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-3);color:var(--secondary-900);line-height:1.25}.footer-box a{align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);margin-bottom:var(--spacing-2_5);color:var(--secondary-600);text-decoration:none;transition:color .3s,transform .3s;display:flex}@media (hover:hover){.footer-box a:hover{color:var(--primary-600);transform:translate(2px)}}@media (hover:none){.footer-box a:active{color:var(--primary-600);transform:scale(.98)}}.footer-box--brand{grid-column:span 2}.footer-description{color:var(--secondary-600);font-size:var(--font-size-sm);margin:0;line-height:1.7}.footer-contact-list{gap:var(--spacing-3);margin-top:var(--spacing-5);display:grid}.footer-contact-item{align-items:flex-start;gap:var(--spacing-3);color:var(--secondary-700);margin:0;line-height:1.6;text-decoration:none;display:flex}.footer-contact-item svg{font-size:var(--font-size-base);color:var(--primary-600);flex:none;margin-top:2px}.footer-contact-item span{font-size:var(--font-size-sm)}.footer-legal{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-top:var(--spacing-1);padding:var(--spacing-3)0 0;color:var(--secondary-600);font-size:var(--font-size-sm);border-top:1px solid #94a3b82e;grid-column:1/-1;display:flex}.footer-legal p{max-width:560px;margin:0;line-height:1.6}.footer-legal-links{align-items:center;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.footer-legal-links a{color:var(--secondary-700);font-weight:var(--font-weight-semibold);margin:0}@media (hover:hover){.footer-legal-links a:hover{transform:none}}@media (hover:none){.footer-legal-links a:active{color:var(--primary-600)}}.footer-links{gap:var(--spacing-3);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.footer-links a{min-height:44px;padding:var(--spacing-2_5)var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-2);color:var(--primary-700);background-color:var(--card-transparent);white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;transition:all .35s;display:inline-flex}@media (hover:hover){.footer-links a:hover{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;transform:translateY(-2px);box-shadow:0 10px 20px #0000001f}}@media (hover:none){.footer-links a:active{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;transform:scale(.98);box-shadow:0 10px 20px #0000001f}}.footer-links a:active{transform:scale(.96)}.footer-icons{gap:var(--spacing-3);flex-wrap:wrap;align-items:center;display:flex}.footer-icons a{padding:var(--spacing-3)var(--spacing-3);font-size:var(--font-size-lg);border-radius:var(--border-radius-full);background-color:var(--card-transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:center;align-items:center;gap:var(--spacing-2);white-space:nowrap;border:1px solid #ffffff42;text-decoration:none;transition:all .3s;display:flex}@media (hover:hover){.footer-icons a:hover{background:var(--neutral-white);transform:translateY(-2px);box-shadow:0 10px 24px #0f172a24}}@media (hover:none){.footer-icons a:active{background:var(--neutral-white);transform:scale(.98);box-shadow:0 10px 24px #0f172a24}}.footer-icon-link--facebook{color:#1877f2}.footer-icon-link--x{color:var(--secondary-900)}.footer-icon-link--instagram{color:#e4405f}.footer-icon-link--linkedin{color:#0a66c2}.footer-icon-link--whatsapp{color:#25d366}.footer-icon-link--youtube{color:red}.footer-icon-link--app{color:var(--primary-600)}@media (max-width:576px){.footer-container{border-radius:0;max-height:55vh;bottom:0}.footer-bar{padding:var(--spacing-2)var(--spacing-3);justify-content:space-around;align-items:center;gap:var(--spacing-2);height:70px}.footer-icons{display:none}.footer-links{justify-content:space-around;align-items:center;gap:var(--spacing-2);flex-wrap:nowrap;width:100%;padding:0;display:flex}.footer-links a{width:60px;height:60px;padding:var(--spacing-1);text-align:center;white-space:normal;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);background-color:var(--card-transparent);border:1px solid #ffffff26;border-radius:16px;flex-direction:column;gap:4px;font-size:12px;line-height:1.2;transition:all .25s}@media (hover:hover){.footer-links a:hover{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;transform:translateY(-4px);box-shadow:0 8px 16px #00000026}}@media (hover:none){.footer-links a:active{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;transform:scale(.95);box-shadow:0 4px 8px #00000026}}.footer-links a svg,.expand-btn svg{flex-shrink:0;font-size:22px}.footer-links a span,.expand-btn span{font-size:12px;font-weight:var(--font-weight-semibold);white-space:normal;line-height:1.2;display:block}.expand-btn{width:60px;height:60px;padding:var(--spacing-1);box-shadow:none;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);background-color:var(--card-transparent);border:1px solid #ffffff26;border-radius:16px;flex-direction:column;gap:4px}@media (hover:hover){.expand-btn:hover{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));transform:translateY(-4px);box-shadow:0 8px 16px #00000026}}@media (hover:none){.expand-btn:active{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));transform:scale(.95);box-shadow:0 4px 8px #00000026}}.expand-btn--open{color:var(--error-500);background:linear-gradient(135deg,#ef444426,#ef44440d);border-color:#f8717140}.footer-content{padding:var(--spacing-3);grid-template-columns:1fr;max-height:40vh}.footer-box,.footer-box--brand{padding:var(--spacing-4);border-radius:20px;grid-column:auto}.footer-box--brand{order:3}.footer-content>.footer-box:not(.footer-box--brand):first-of-type{order:1}.footer-content>.footer-box:not(.footer-box--brand):last-of-type{order:2}.footer-legal{align-items:flex-start;gap:var(--spacing-2);flex-direction:column}.footer-legal-links{gap:var(--spacing-3);flex-wrap:wrap}}@media (min-width:577px) and (max-width:992px){.footer-bar{flex-direction:column;align-items:stretch}.footer-links{justify-content:center}.footer-icons{display:none}.footer-content{grid-template-columns:repeat(2,1fr);max-height:45vh}.footer-box--brand{grid-column:1/-1}.footer-legal{flex-direction:column;align-items:flex-start}.footer-container{max-height:55vh}}@media (min-width:993px){.footer-content{grid-template-columns:repeat(4,minmax(0,1fr))}}
.landing-wrapper{-webkit-overflow-scrolling:touch;flex-direction:column;min-height:100vh;padding:0;display:flex;position:relative;overflow:hidden}.loader-wrap{height:60vh;padding:var(--spacing-12)var(--spacing-6);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.spinner{border:4px solid #3365b033;border-top:4px solid var(--primary-100);border-radius:50%;width:56px;height:56px;animation:1s linear infinite spin;box-shadow:0 0 20px #3365b033}@keyframes spin{to{transform:rotate(360deg)}}.loader-text{color:var(--secondary-100);text-align:center;max-width:400px;font-size:15px;animation:1.8s ease-in-out infinite fade}@keyframes fade{0%,to{opacity:.4}50%{opacity:1}}.school-grid-wrapper{justify-content:center;display:flex}.school-grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:16px;width:100%;margin-top:16px;display:flex}.school-image-card{border-radius:var(--border-radius-3xl);cursor:pointer;flex:0 0 460px;width:min(100%,460px);min-height:260px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);animation:.6s ease-out backwards slideInUp;display:block;position:relative;overflow:hidden;box-shadow:0 10px 30px #0f172a1f}.school-image-card:hover .school-bg,.school-image-card:hover .school-overlay-logo{transform:none}.school-overlay{background:linear-gradient(#0f172a14 0%,#0f172a9e 52%,#0f172ae0 100%);gap:12px;min-height:112px;padding:16px;animation:none}.school-overlay-logo{border-radius:14px;width:56px;height:56px;transition:none}.school-overlay-text h3{font-size:clamp(.95rem,1vw,1.05rem)}.school-overlay-text p{font-size:clamp(.78rem,.9vw,.9rem)}.school-image-card:first-child{animation-delay:.1s}.school-image-card:nth-child(2){animation-delay:.2s}.school-image-card:nth-child(3){animation-delay:.3s}.school-image-card:nth-child(4){animation-delay:.4s}.school-image-card:nth-child(5){animation-delay:.5s}.school-image-card:hover{transform:translateY(-1px)scale(1);box-shadow:0 25px 50px #0f172a33}.school-bg{object-fit:cover;width:100%;height:100%;transition:transform .4s}.school-bg-fallback{background:linear-gradient(#0f172a73,#0f172ab8),linear-gradient(135deg,#1d4ed8,#0f172a);justify-content:center;align-items:center;padding:24px;display:flex}.school-bg-fallback span{color:#ffffffeb;letter-spacing:.04em;text-align:center;text-transform:uppercase;text-wrap:balance;font-size:clamp(1.3rem,2.5vw,2rem);font-weight:800;line-height:1.2}.school-image-card:hover .school-bg{transform:scale(1.009)}.school-overlay{min-height:120px;padding:var(--spacing-5);gap:var(--spacing-4);background:linear-gradient(#0f172a00 0%,#0f172ab3 60%,#0f172af2 100%);align-items:flex-end;animation:.4s slideInUp;display:flex;position:absolute;inset:auto 0 0}.school-overlaay-logo{background:var(--neutral-white);object-fit:cover;border:2px solid var(--neutral-white);border-radius:50%;flex-shrink:0;width:70px;height:70px;transition:transform .3s;box-shadow:0 8px 20px #0000004d}.school-overlay-logo-fallback{color:#0f172a;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#f8fafc,#dbeafe);justify-content:center;align-items:center;font-size:clamp(1rem,1.4vw,1.35rem);font-weight:800;display:flex}.school-image-card:hover .school-overlay-logo{transform:scale(1.1)translateY(-4px)}.school-overlay-text{flex:1;min-width:0}.school-overlay-text h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--neutral-white);margin:0 0 var(--spacing-1)0;line-height:var(--line-height-tight);letter-spacing:-.3px}.school-overlay-text p{font-size:var(--font-size-sm);color:#ffffffd9;margin:var(--spacing-1)0;line-height:var(--line-height-normal)}.school-overlay-text p:first-of-type{font-weight:var(--font-weight-medium)}.empty-state-wrapper{width:100%;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-8);flex:1;justify-content:center;display:flex}.empty-card{text-align:center;width:min(100%,860px);padding:clamp(1.5rem,3vw,3rem);animation:.6s ease-out slideInUp}.empty-icon{width:72px;height:72px;margin:0 auto var(--spacing-5);color:var(--primary-600);background:linear-gradient(135deg,#fff,#ffffff95);border-radius:22px;justify-content:center;align-items:center;font-size:34px;display:inline-flex}.empty-eyebrow{margin-bottom:var(--spacing-3);color:var(--primary-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background:#3365b014;border-radius:999px;padding:6px 12px;display:inline-block}.empty-card h2{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:var(--font-weight-bold);color:var(--secondary-100);margin:0 0 var(--spacing-4)0;line-height:1.1}.empty-card p{width:min(100%,640px);color:var(--secondary-200);font-size:clamp(.98rem,2vw,1.1rem);line-height:var(--line-height-relaxed);margin:0 auto;margin-bottom:var(--spacing-8)}.empty-features{gap:var(--spacing-5);margin-top:var(--spacing-10);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.empty-feature{border-radius:var(--border-radius-2xl);padding:var(--spacing-6);text-align:left;background:linear-gradient(#f8fafcf2,#f1f5f9f2);border:1px solid #0f172a0f;transition:all .3s;box-shadow:0 4px 16px #0f172a0f}.empty-feature-icon{width:44px;height:44px;margin-bottom:var(--spacing-3);color:var(--primary-600);background:#3365b01a;border-radius:14px;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.empty-feature h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--secondary-900);margin:0 0 var(--spacing-2)0}.empty-feature p{font-size:var(--font-size-sm);color:var(--secondary-600);margin:0}@media (max-width:1024px){.school-overlay-logo{width:60px;height:60px}.school-overlay-text h3{font-size:var(--font-size-base)}}@media (max-width:768px){.school-image-card{min-height:240px}.school-overlay{min-height:110px;padding:var(--spacing-4)}.school-overlay-logo{width:55px;height:55px}.school-overlay-text h3{font-size:var(--font-size-sm)}.school-overlay-text p{font-size:var(--font-size-xs)}.empty-card{border-radius:var(--border-radius-2xl)}}@media (max-width:480px){.school-image-card{border-radius:var(--border-radius-2xl);min-height:220px}.school-overlay{min-height:100px;padding:var(--spacing-3);gap:var(--spacing-3)}.school-overlay-logo{border-radius:var(--border-radius-lg);width:50px;height:50px}.school-overlay-text h3{font-size:var(--font-size-xs);margin-bottom:2px}.school-overlay-text p{font-size:var(--font-size-xs);margin:2px 0}.loader-wrap{height:50vh;padding:var(--spacing-8)var(--spacing-4)}.empty-state-wrapper{padding:var(--spacing-3)}.empty-card{padding:var(--spacing-6)var(--spacing-4)}.empty-features{gap:var(--spacing-4);grid-template-columns:1fr}.empty-feature{padding:var(--spacing-4)}.empty-icon{width:60px;height:60px;font-size:28px}}@media (max-width:360px){.school-image-card{min-height:200px}.school-overlay-logo{width:45px;height:45px}.empty-card h2{font-size:var(--font-size-xl)}.empty-card p{font-size:var(--font-size-xs)}.empty-feature h4{font-size:var(--font-size-base)}.empty-feature p{font-size:var(--font-size-xs)}}@media (max-width:768px){.school-grid{gap:10px;margin-top:10px}.school-image-card{flex-basis:340px;width:min(100%,340px);min-height:260px}}@media (max-width:480px){.school-grid{gap:12px}.school-image-card{flex-basis:100%;width:100%;max-width:390px;min-height:220px}.school-overlay{min-height:96px;padding:12px}.school-overlay-logo{width:48px;height:48px}}
