body { background-color: #ffffff; color: #212529; transition: all 0.3s ease; }
.bg-white { background-color: #ffffff !important; }
.text-body { color: #212529 !important; }
body.dark { background-color: rgb(30, 35, 46); color: #ffffff; }
body.dark .bg-white { background-color: rgb(30, 35, 46) !important; }
body.dark .text-body { color: #cccccc !important; }
body.dark .navbar-light .navbar-nav .nav-link { color: #ffffff !important; }
body.dark .navbar-light .navbar-nav .nav-link:hover { color: #f8f9fa !important; }
body.dark .navbar-light .navbar-nav .nav-link.text-primary { color: #5cb3fd !important; }
body.dark .dropdown-menu { background-color: #1e232e; border-color: #1e232e; border-radius: 0; }
body.dark .dropdown-item { color: #ffffff; }
body.dark .dropdown-item:hover { background-color: #3a3a3a; }
.navbar-toggler { border: none !important; }
body.dark .navbar-toggler-icon { filter: invert(1); }
.dropdown-menu { transition: background-color 0.3s, color 0.3s; border-radius: 0; }
body.dark .dropdown-menu { background-color: #1a1a1a !important; color: #f0f0f0 !important; }
body.dark .dropdown-menu .dropdown-item { color: #f0f0f0 !important; }
body.dark .dropdown-menu .dropdown-item:hover { background-color: #333 !important; color: #fff !important; }
.sticky-navbar { position: fixed; top: 0; width: 100%; z-index: 9999; background-color: rgba(255,255,255,0); backdrop-filter: none; transition: background-color 0.3s, backdrop-filter 0.3s; }
body.dark .sticky-navbar { background-color: rgba(30, 35, 46, 0); }
.sticky-navbar.scrolled { background-color: rgba(255,255,255,0.95); backdrop-filter: blur(8px); }
hr.fade-in { opacity: 0; transform: translateY(20px); transition: opacity 1s ease, transform 1s ease; }
hr.fade-in.active { opacity: 1; transform: translateY(0); }
body.dark .sticky-navbar.scrolled { background-color: rgba(30, 35, 46, 0.95); }
@media (max-width: 991.98px) {
    .sticky-navbar { background-color: rgba(30, 35, 46, 0.9); backdrop-filter: blur(4px); }
    body.dark .sticky-navbar { background-color: rgba(30, 35, 46, 0.95); backdrop-filter: blur(4px); }
}
.dark-none { display: inline-block !important; }
body.dark .dark-none, html.dark .dark-none { display: none !important; }
.dark-inline-block { display: none !important; }
body.dark .dark-inline-block, html.dark .dark-inline-block { display: inline-block !important; }
body.dark .custom-check-list li.dark-inline-block, html.dark .custom-check-list li.dark-inline-block { display: block !important; }
body.dark .custom-check-list li.dark-none, html.dark .custom-check-list li.dark-none { display: none !important; }
.bg-svg-container { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; opacity: 0.85; }
.bg-svg-main { position: absolute; top: 38%; right: 12%; width: 300px; height: 456px; transform: translate(50%, -50%) scale(1.3); animation: float-main 18s ease-in-out infinite; filter: blur(0.5px); }
@keyframes float-main { 0%, 100% { transform: translate(50%, -50%) scale(1.3) translateY(0) rotate(0deg); } 50% { transform: translate(50%, -50%) scale(1.3) translateY(-25px) rotate(3deg); } }
.bg-svg-top-left { position: absolute; bottom: 18.5%; left: 9%; width: 300px; height: 150px; transform: translate(-50%, 50%) scale(1.2) rotate(20deg); animation: float-side 18s ease-in-out infinite; opacity: 0.8; }
@keyframes float-side { 0%, 100% { transform: translate(-50%, 50%) scale(1.2) rotate(20deg) translateY(0); } 50% { transform: translate(-50%, 50%) scale(1.2) rotate(25deg) translateY(-20px); } }
.bg-svg-bottom-left { position: absolute; bottom: -30%; left: -12%; width: 364px; height: 201px; transform: scale(1.1) rotate(20deg); animation: float-side 20s ease-in-out infinite reverse; opacity: 0.7; }
.text-body-social { color: #212529 !important; }
body.dark .text-body-social { color: #cccccc !important; }
body.dark .social-icon { color: #cccccc !important; }
.social-icon { color: black !important; }
#darkModeToggle { background: transparent; border: none; font-size: 0.5rem; color: #000000A6; transition: color 0.3s ease; padding: 0; }
body.dark #darkModeToggle { color: #ffffff; }
#darkModeToggle:hover, #darkModeToggle:focus { color: inherit; transform: none; background: transparent; box-shadow: none; }
.custom-btn { background-color: #4A6CF7 !important; color: #fff !important; border: none !important; transition: background-color 0.3s ease !important; }
.custom-btn:hover { background-color: #3a5ce6 !important; }
.custom-check-list { list-style: none; padding: 0; margin: 0; }
.custom-check-list li { position: relative; padding-inline-start: 45px; margin-bottom: 15px; font-size: 1rem; line-height: 1.6; }
.custom-check-list li::before { content: '✓'; position: absolute; inset-inline-start: 0; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background-color: #4A6CF7; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: bold; }
.scroll-reveal { opacity: 0; transform: translateY(50px); transition: all 0.8s ease-out; }
.scroll-reveal.active { opacity: 1; transform: translateY(0); }
#about .scroll-reveal:nth-child(1) { transition-delay: 0.1s; }
#about .scroll-reveal:nth-child(2) { transition-delay: 0.2s; }
#about .scroll-reveal:nth-child(3) { transition-delay: 0.3s; }
#about .scroll-reveal:nth-child(4) { transition-delay: 0.4s; }
#about .scroll-reveal:nth-child(5) { transition-delay: 0.5s; }
.scroll-reveal:nth-child(1) { transition-delay: 0.1s; }
.scroll-reveal:nth-child(2) { transition-delay: 0.2s; }
.scroll-reveal:nth-child(3) { transition-delay: 0.3s; }
.scroll-reveal:nth-child(4) { transition-delay: 0.4s; }
.scroll-reveal:nth-child(5) { transition-delay: 0.5s; }
.scroll-reveal:nth-child(6) { transition-delay: 0.6s; }
.custom-whatsapp-btn { background-color: #4A6CF7 !important; color: #ffffff !important; border-radius: 0 !important; padding: 0.5rem 1rem; text-decoration: none; display: inline-block; border: none; }
.custom-whatsapp-btn:hover { background-color: #4A6CF7 !important; color: #ffffff !important; }
@media (max-width: 1200px) {
    .bg-svg-main { transform: translate(50%, -50%) scale(1.1); }
    .bg-svg-top-left { transform: translate(-50%, 50%) scale(1) rotate(20deg); }
    .bg-svg-bottom-left { bottom: -20%; left: -10%; transform: scale(0.9) rotate(20deg); }
}
@media (max-width: 992px) {
    .bg-svg-main { transform: translate(50%, -50%) scale(0.9); }
    .bg-svg-top-left { transform: translate(-50%, 50%) scale(0.8); }
    .bg-svg-bottom-left { bottom: -15%; left: -10%; transform: scale(0.8); }
}
@media (max-width: 768px) {
    .bg-svg-main { top: 15; right: 10; transform: translate(50%, -50%) scale(0.7); }
    .bg-svg-top-left { bottom: 15; left: 10; transform: translate(-50%, 50%) scale(0.6) rotate(20deg); }
    .bg-svg-bottom-left { bottom: -10%; left: -15%; transform: scale(0.6) rotate(20deg); }
}
@media (max-width: 576px) {
    .bg-svg-main { transform: translate(50%, -50%) scale(0.5); opacity: 0.7; }
    .bg-svg-top-left { opacity: 0.5; transform: translate(-50%, 50%) scale(0.4); }
    .bg-svg-bottom-left { opacity: 0.5; transform: scale(0.4); bottom: -5%; left: -15%; }
    body.dark .bg-svg-container { opacity: 0.4; }
}
html { color-scheme: light; }
html.dark { color-scheme: dark !important; }