    html { scroll-behavior: smooth; }
    body { font-family: "Inter", sans-serif; background-color: #ffffff; color: #111827; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
    .nav-link { position: relative; transition: color 0.3s ease; }
    .nav-link::after { content: ""; position: absolute; width: 0; height: 2px; bottom: -6px; left: 0; background-color: #FFC300; transition: width 0.3s ease; }
    .nav-link.nav-active::after, .nav-link:hover::after { width: 100%; }
    .nav-link.nav-active { color: #111827; font-weight: 600; }
    .tab-content { display: none; }
    .tab-content.active { display: block; }
    .modal { display: none; position: fixed; z-index: 100; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(17, 24, 39, 0.6); backdrop-filter: blur(8px); }
    .modal-content { background-color: #ffffff; margin: 10% auto; padding: 2.5rem; border: none; width: 90%; max-width: 550px; border-radius: 12px; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25); }
    .loader { border: 5px solid #e2e8f0; border-top: 5px solid #005A87; border-radius: 50%; width: 50px; height: 50px; animation: spin 1s linear infinite; position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2000; }
    @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
    #mainHeader, #mainContent { display: none; }
    .fade-in-section { opacity: 0; transform: translateY(30px); transition: opacity 0.8s cubic-bezier(0.645, 0.045, 0.355, 1), transform 0.8s cubic-bezier(0.645, 0.045, 0.355, 1); }
    .fade-in-section.is-visible { opacity: 1; transform: translateY(0); }
    #mainHeader.scrolled { background-color: rgba(255, 255, 255, 0.85); backdrop-filter: blur(10px); box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06); }
    .wishlist-item input:checked + label span:first-child { background-color: #FFC300; border-color: #FFC300; }
    .wishlist-item input:checked + label span svg { transform: scale(1); }
    .wishlist-item input:checked + label span:last-child { text-decoration: line-through; color: #9CA3AF; }
    .uni-group-row { cursor: pointer; }
    .uni-group-row .arrow-icon { transition: transform 0.3s ease; }
    .uni-group-row.expanded .arrow-icon { transform: rotate(90deg); }
    .course-details-row { display: none; }
    .course-details-row.expanded { display: table-row; }
