/* Custom Styles & Animations */
        body {
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }

        .glass-nav {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        }

        .hero-bg {
            background: linear-gradient(135deg, rgba(0, 43, 91, 0.9) 0%, rgba(177, 156, 217, 0.8) 100%),
                        url('https://images.unsplash.com/photo-1606811841689-23dfddce3e95?q=80&w=2070&auto=format&fit=crop') center/cover no-repeat;
        }

        .fade-in-up {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .fade-in-up.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #F8FAFC;
        }
        ::-webkit-scrollbar-thumb {
            background: #B19CD9;
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb:hover {
            background: #40E0D0;
        }

/* Shared additions for the repaired landing page and courses catalog */
:root { color-scheme: light; }
html { scroll-padding-top: 88px; }
:focus-visible { outline: 3px solid #40E0D0; outline-offset: 4px; }
.brandmark { max-width: 100%; display:block; }
.catalog-hero { background: radial-gradient(circle at 78% 28%, rgba(64,224,208,.17), transparent 29%),radial-gradient(circle at 18% 70%,rgba(177,156,217,.22), transparent 38%),linear-gradient(120deg,#002B5B 5%,#10497D 65%,#293D78); }
.catalog-pattern { background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size: 54px 54px; mask-image:linear-gradient(to bottom,black,transparent); }
.course-card { transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease; }
.course-card:hover { transform:translateY(-5px);box-shadow:0 22px 44px rgba(0,43,91,.10);border-color:rgba(64,224,208,.7); }
.course-mark { background: linear-gradient(135deg,rgba(230,230,250,.75),rgba(64,224,208,.22)); }
.course-cover { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .28s ease; }
.course-cover.is-loaded { opacity:1; }
.course-cover.is-loaded + .course-number { background:rgba(255,255,255,.94); box-shadow:0 2px 8px rgba(0,43,91,.12); }
.demo-banner { background:#fff8e7; border:1px solid #f2d79d; color:#725321; }
.course-cta.is-disabled { background:#e2e8f0; color:#64748b; cursor:not-allowed; }
/* Respect reduced motion preferences. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto !important; }
  .fade-in-up { opacity:1; transform:none; transition:none; }
  .course-card, .course-cover, .animate-bounce { animation:none; transition:none; }
}
