html,body{width:100%;min-height:100%;overflow-x:hidden;max-width:100vw;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:Arial,sans-serif;color:rgb(var(--bs-tertiary-color-rgb));padding-bottom:60px;background-color:#f9fbff;overflow-y:auto}
.site-banner{background:#fff;color:#0077ff;text-align:center;padding:15px 0;font-family:"Times New Roman",serif;font-size:2rem;font-weight:700;letter-spacing:1px;opacity:0;animation:fadeIn 1.5s ease-in forwards;box-shadow:0 2px 6px rgba(0,0,0,.1);position:relative;z-index:1050}
.site-banner span{display:inline-block;animation:glow 2s ease-in-out infinite alternate}
@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@keyframes glow{from{text-shadow:0 0 5px #00baff,0 0 10px #00baff,0 0 15px #00baff}to{text-shadow:0 0 10px #0095ff,0 0 20px #0077ff,0 0 30px #0044ff}}
.custom-navbar{position:relative;background:linear-gradient(135deg,#0044ff,#00b7ff);overflow:visible;z-index:1030;width:100vw;left:0;right:0;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.custom-navbar .navbar-collapse,.custom-navbar .collapse{overflow:visible}
.custom-navbar::before,.custom-navbar::after{content:"";position:absolute;top:0;left:0;width:200%;height:150%;background-repeat:repeat-x;background-size:50% 100%;opacity:.3;animation:waveMove 8s linear infinite;z-index:0;pointer-events:none}
.custom-navbar::before{background-image:radial-gradient(circle at 50% 50%,rgba(255,255,255,.5) 25%,transparent 26%);animation-duration:10s}
.custom-navbar::after{background-image:radial-gradient(circle at 50% 50%,rgba(255,255,255,.8) 20%,transparent 21%);animation-duration:6s;opacity:.4}
@keyframes waveMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.navbar-brand{font-weight:600;font-size:1.4rem;position:relative;z-index:2;color:#fff!important;text-shadow:0 0 4px rgba(0,0,0,.3)}
.nav-link{color:#fff!important;position:relative;z-index:2;transition:color .3s ease,text-shadow .3s ease}
.nav-link:hover,.nav-link.active{color:#fff176!important;text-shadow:0 0 6px #fff176,0 0 12px rgba(255,255,255,.6);text-decoration:underline}
.dropdown-menu{position:absolute;z-index:5000!important;backdrop-filter:blur(12px);background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:10px;animation:dropdownFade .25s ease-in-out;overflow:hidden;transform:translateZ(0)}
.dropdown-item{color:#fff;transition:all .25s ease}
.dropdown-item:hover{background:linear-gradient(90deg,#007bff,#00c4ff);color:#fff!important;text-shadow:0 0 6px #fff}
@keyframes dropdownFade{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.navbar .dropdown-menu{margin-top:.4rem}
@media(max-width:991px){.navbar-brand{font-size:1.2rem}.nav-link{font-size:.95rem}.navbar-toggler{border-color:rgba(255,255,255,.5)}}
.footer-fixed,footer.navbar.fixed-bottom,.custom-footer{position:fixed;bottom:0;left:0;width:100vw;backdrop-filter:blur(12px);background:rgba(0,68,255,.25);color:#fff;text-align:center;padding:10px 0;font-size:.95rem;z-index:1030;box-shadow:0 -2px 8px rgba(0,0,0,.3);border-top:1px solid rgba(255,255,255,.2)}
.footer-fixed a,footer.navbar.fixed-bottom a{color:#fff;text-decoration:none;transition:all .3s ease}
.footer-fixed a:hover,footer.navbar.fixed-bottom a:hover{color:#fff176;text-shadow:0 0 6px #fff176,0 0 12px rgba(255,255,255,.6)}
@media(max-width:575px){.footer-fixed p,footer.navbar.fixed-bottom p{font-size:.85rem}}
main,.container,.content{overflow-x:hidden;width:100%;max-width:100vw}
.whatsapp-float{position:fixed;bottom:20px;right:20px;background-color:#25d366;color:#fff;font-size:28px;padding:12px 16px;border-radius:50%;box-shadow:0 4px 6px rgba(0,0,0,.2);text-decoration:none;z-index:9999;transition:transform .2s ease-in-out}
.whatsapp-float:hover{transform:scale(1.1);background-color:#20b857}
footer.navbar.fixed-bottom.bg-secondary{background:rgba(0,68,255,.25)!important;backdrop-filter:blur(12px);color:#fff!important;border-top:1px solid rgba(255,255,255,.2)}
#homeCarousel .carousel-item img{height:70vh;object-fit:cover;filter:brightness(.75);transition:transform 10s ease-in-out}
#homeCarousel .carousel-item.active img{transform:scale(1.05)}
#homeCarousel .carousel-caption{opacity:0;transform:translateY(40px);transition:all .8s ease-in-out;background:rgba(0,68,255,.25);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:1rem;padding:1rem 1.5rem;box-shadow:0 0 25px rgba(0,68,255,.4)}
#homeCarousel .carousel-item.active .carousel-caption{opacity:1;transform:translateY(0)}
#homeCarousel .carousel-caption h2{text-shadow:0 0 15px rgba(255,255,255,.9);animation:slideInRight 1s ease both}
#homeCarousel .carousel-caption p{color:#f1f5ff;text-shadow:0 0 6px rgba(0,0,0,.6);animation:slideInLeft 1.2s ease both}
@keyframes slideInRight{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:768px){#homeCarousel .carousel-item img{height:50vh}#homeCarousel .carousel-caption{font-size:.9rem;padding:.75rem}}
#homeCarousel.carousel-fade .carousel-item{opacity:0;transition:opacity .8s ease-in-out;transform:none!important}
#homeCarousel.carousel-fade .carousel-item.active{opacity:1}
.btn-learn{display:inline-block;margin-top:10px;padding:8px 20px;font-weight:600;color:#fff;text-decoration:none;border:2px solid rgba(255,255,255,.8);border-radius:30px;transition:all .3s ease;background:rgba(0,68,255,.25);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 0 10px rgba(0,68,255,.4)}
.btn-learn:hover{background:linear-gradient(90deg,#0044ff,#00b7ff);color:#fff;text-shadow:0 0 6px rgba(255,255,255,.9);box-shadow:0 0 18px rgba(0,183,255,.8);transform:translateY(-2px)}
@media(max-width:768px){.btn-learn{font-size:.9rem;padding:6px 16px}}

.captcha-box {min-height: 42px;display: flex;align-items: center;justify-content: center;transition: opacity 0.3s ease;}
.captcha-box.refreshing {opacity: 0.5;}
#captcha-box {background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);user-select: none;text-shadow: 1px 1px #ccc;}
#notifCount {
  min-width: 20px;
  display: inline-block;
  text-align: center;
  font-size: 0.8rem;
}


.rounded-bottom-section{border-bottom-left-radius:60px;border-bottom-right-radius:60px;transition:border-radius .4s ease-in-out;will-change:transform;position:relative;z-index:5}@media (min-width:768px){.rounded-bottom-section{border-bottom-left-radius:80px;border-bottom-right-radius:80px}}[data-aos]{will-change:transform,opacity;backface-visibility:hidden}.object-fit-cover{object-fit:cover}.object-fit-contain{object-fit:contain}.ratio img{width:100%;height:100%}.zoom-img{transition:transform .6s cubic-bezier(.19,1,.22,1);will-change:transform}.card-hover:hover .zoom-img{transform:scale(1.08)}.card-hover{transition:transform .4s ease,box-shadow .4s ease;will-change:transform}.card-hover:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.15)}@media (hover:none){.card-hover:hover{transform:none;box-shadow:0 6px 15px rgba(0,0,0,.1)}}html{scroll-behavior:smooth}section[style*="linear-gradient"]{background-attachment:scroll!important}

.modal-backdrop{z-index:1054!important}.modal{z-index:1060!important}.modal-content{background-color:#fff!important;position:relative;z-index:1061!important}#loginMessage{position:relative;z-index:1070;display:none;opacity:1!important;transition:opacity .3s ease;border-left:5px solid #dc3545;background-color:#ffe9e9;color:#333;font-weight:600;padding:.75rem 1rem;margin-bottom:1rem;border-radius:.375rem}#loginMessage.alert-success{border-left-color:#198754;background-color:#e8f7ee}body{color:#212529!important}
#loginMessage{margin-bottom:1rem;font-weight:600;border-left:5px solid #dc3545;border-radius:.25rem}
#loginMessage.alert-success{border-left-color:#198754}

