/* EduBlitz — White & Light Blue Theme */

:root {
    --app-bg: #f0f9ff;
    --app-bg-soft: #e0f2fe;
    --app-surface: #ffffff;
    --app-surface-2: #f8fcff;
    --app-primary: #0284c7;
    --app-primary-dark: #0369a1;
    --app-accent: #38bdf8;
    --app-accent-soft: #bae6fd;
    --app-text: #0f172a;
    --app-text-muted: #475569;
    --app-text-soft: #64748b;
    --app-heading: #0c4a6e;
    --app-border: rgba(14, 165, 233, 0.18);
    --app-border-strong: rgba(2, 132, 199, 0.28);
    --app-shadow: rgba(2, 132, 199, 0.1);
    --app-shadow-lg: rgba(2, 132, 199, 0.16);
}

/* Base */
.hero-grid-bg,
.app-body {
    color: var(--app-text);
    background-color: var(--app-bg);
}

.hero-grid-bg {
    background-image:
        linear-gradient(180deg, #f0f9ff 0%, #e0f2fe 50%, #f8fcff 100%),
        linear-gradient(rgba(14, 165, 233, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(14, 165, 233, 0.06) 1px, transparent 1px);
    background-size: auto, 48px 48px, 48px 48px;
}

.hero-grid-bg::before {
    opacity: 0.35;
}

.ambient-bg__orb--1 {
    background: radial-gradient(circle, rgba(56, 189, 248, 0.35), transparent 70%);
}

.ambient-bg__orb--2 {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.25), transparent 70%);
}

.ambient-bg__orb--3 {
    background: radial-gradient(circle, rgba(186, 230, 253, 0.45), transparent 70%);
}

/* Mobile top bar */
.app-topbar {
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 1px solid var(--app-border);
    box-shadow: 0 4px 20px var(--app-shadow);
}

.app-topbar__menu-btn,
.app-topbar__action {
    background: var(--app-bg-soft);
    color: var(--app-primary-dark);
}

.app-topbar__brand {
    color: var(--app-heading);
}

/* Bottom nav */
.app-bottom-nav {
    background: rgba(255, 255, 255, 0.96);
    border-top: 1px solid var(--app-border);
    box-shadow: 0 -4px 24px var(--app-shadow);
}

.app-bottom-nav__item {
    color: var(--app-text-soft);
    border-radius: 0.65rem 0.65rem 0 0;
}

.app-bottom-nav__item.is-active {
    color: var(--app-primary-dark);
    background: linear-gradient(180deg, rgba(56, 189, 248, 0.18), transparent);
}

.app-bottom-nav__item.is-active .app-bottom-nav__icon {
    color: var(--app-primary);
}

.app-bottom-nav__item.is-active .app-bottom-nav__label {
    font-weight: 700;
}

/* Offcanvas — professional side menu */
.app-offcanvas {
    width: min(92vw, 380px) !important;
    background: linear-gradient(180deg, #f8fcff 0%, #ffffff 42%, #f0f9ff 100%) !important;
    color: var(--app-text) !important;
    box-shadow: 8px 0 40px var(--app-shadow-lg);
    border-right: 1px solid var(--app-border);
}

.app-offcanvas__header {
    padding: 1.15rem 1.25rem;
    border-bottom: 1px solid var(--app-border) !important;
    background: rgba(255, 255, 255, 0.92);
}

.app-offcanvas__brand {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.app-offcanvas__brand-text {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.app-offcanvas__brand-name {
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--app-heading);
    line-height: 1.2;
}

.app-offcanvas__brand-tag {
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--app-primary);
}

.app-offcanvas__close {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border-radius: 0.65rem;
    background: var(--app-bg-soft);
    opacity: 1;
    filter: none;
}

.app-offcanvas__body {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.app-menu-nav {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 0.85rem 0.5rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(14, 165, 233, 0.35) transparent;
}

.app-menu-nav__label {
    margin: 0 0 0.65rem 0.45rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--app-text-soft);
}

.app-menu-list {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.app-menu-link {
    display: flex !important;
    align-items: center;
    gap: 0;
    width: 100%;
    margin: 0;
    padding: 0.72rem 0.85rem !important;
    border: 1px solid transparent !important;
    border-radius: 0.85rem !important;
    background: #fff !important;
    color: var(--app-text) !important;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    box-shadow: 0 2px 10px rgba(2, 132, 199, 0.05);
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.app-menu-link:hover {
    border-color: var(--app-border) !important;
    color: var(--app-primary-dark) !important;
    box-shadow: 0 6px 18px var(--app-shadow);
    transform: translateX(2px);
}

.app-menu-link.is-active,
.app-menu-link.active,
.app-menu-group__toggle.is-active {
    border-color: var(--app-border-strong) !important;
    background: linear-gradient(90deg, rgba(224, 242, 254, 0.95), rgba(255, 255, 255, 0.98)) !important;
    color: var(--app-primary-dark) !important;
    box-shadow: 0 6px 20px var(--app-shadow);
}

.app-menu-link__icon,
.app-menu-group__toggle .app-menu-link__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    margin-right: 0.75rem !important;
    border-radius: 0.65rem;
    font-size: 0.95rem;
    background: rgba(56, 189, 248, 0.14) !important;
    color: var(--app-primary-dark) !important;
    flex-shrink: 0;
}

.app-menu-link.is-active .app-menu-link__icon,
.app-menu-link.active .app-menu-link__icon,
.app-menu-group__toggle.is-active .app-menu-link__icon {
    background: linear-gradient(135deg, #0ea5e9, #0284c7) !important;
    color: #fff !important;
}

.app-menu-link__text {
    flex: 1;
    min-width: 0;
    text-align: left;
}

.app-menu-link__arrow {
    font-size: 0.75rem;
    color: var(--app-text-soft);
    opacity: 0.55;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.app-menu-link:hover .app-menu-link__arrow {
    opacity: 1;
    color: var(--app-primary);
    transform: translateX(2px);
}

.app-menu-group__toggle {
    cursor: pointer;
}

.app-menu-group__chevron-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 999px;
    background: var(--app-bg-soft);
    flex-shrink: 0;
}

.app-menu-group__chevron,
.app-menu-subgroup__chevron {
    font-size: 0.7rem;
    color: var(--app-primary-dark);
    transition: transform 0.25s ease;
}

.app-menu-group__toggle[aria-expanded='true'] .app-menu-group__chevron,
.app-menu-subgroup__toggle[aria-expanded='true'] .app-menu-subgroup__chevron {
    transform: rotate(180deg);
}

.app-menu-group__panel {
    margin: 0.35rem 0 0.15rem 0.55rem;
    padding: 0.45rem 0 0.45rem 0.65rem;
    border-left: 2px solid var(--app-border);
}

.app-menu-sublink {
    display: flex !important;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.2rem;
    padding: 0.58rem 0.75rem !important;
    border-radius: 0.65rem;
    border-left: 0 !important;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--app-text-muted) !important;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
}

.app-menu-sublink:hover {
    background: rgba(224, 242, 254, 0.65) !important;
    color: var(--app-primary-dark) !important;
}

.app-menu-sublink--all {
    font-weight: 700;
    color: var(--app-primary-dark) !important;
    background: rgba(224, 242, 254, 0.45);
    margin-bottom: 0.45rem;
}

.app-menu-sublink--all .bi {
    font-size: 0.85rem;
    color: var(--app-primary);
}

.app-menu-sublink--category {
    justify-content: space-between;
    font-weight: 700;
    color: var(--app-heading) !important;
}

.app-menu-sublink--view {
    font-size: 0.75rem !important;
    font-weight: 600;
    color: var(--app-primary) !important;
    padding-left: 0.85rem !important;
}

.app-menu-sublink__count {
    font-size: 0.625rem;
    font-weight: 700;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.15);
    color: var(--app-primary-dark);
    border: 1px solid var(--app-border);
}

.app-menu-subgroup {
    margin-top: 0.15rem;
    padding-top: 0.15rem;
    border-top: 1px dashed var(--app-border);
}

.app-menu-subgroup__panel {
    margin-left: 0.35rem;
    padding-left: 0.5rem;
    border-left: 1px dashed var(--app-border);
}

.app-menu-subgroup__panel .app-menu-sublink:not(.app-menu-sublink--view) {
    padding-left: 0.75rem !important;
    font-size: 0.78rem;
}

.app-menu-footer {
    flex-shrink: 0;
    padding: 0.85rem;
    border-top: 1px solid var(--app-border);
    background: rgba(255, 255, 255, 0.95);
}

.app-menu-footer__card {
    padding: 1rem;
    border-radius: 1rem;
    border: 1px solid var(--app-border);
    background: linear-gradient(180deg, #ffffff, rgba(240, 249, 255, 0.85));
    box-shadow: 0 8px 24px var(--app-shadow);
}

.app-menu-counsel-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.85rem 1rem;
    border: 0;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
    box-shadow: 0 8px 22px var(--app-shadow-lg);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.app-menu-counsel-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px var(--app-shadow-lg);
}

.app-menu-footer__apps {
    margin-top: 1rem;
    padding-top: 0.85rem;
    border-top: 1px dashed var(--app-border);
}

.app-menu-footer__apps-label {
    margin: 0 0 0.65rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--app-text-soft);
}

/* Desktop header */
.site-header {
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 1px solid var(--app-border);
    box-shadow: 0 4px 24px var(--app-shadow);
}

.site-header--glass.is-scrolled {
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 8px 32px var(--app-shadow-lg);
    border-color: var(--app-border) !important;
}

.site-header__nav-rail {
    background: linear-gradient(135deg, rgba(224, 242, 254, 0.9), rgba(255, 255, 255, 0.95));
    border-color: var(--app-border);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 4px 16px var(--app-shadow);
}

.site-nav-item {
    color: var(--app-text-muted);
}

.site-nav-item:hover,
.site-nav-item:focus-visible {
    color: var(--app-primary-dark);
    background: rgba(56, 189, 248, 0.12);
}

.site-nav-item.is-active {
    color: #fff;
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
    box-shadow: 0 6px 18px var(--app-shadow-lg);
}

.site-nav-item--cta {
    color: var(--app-primary-dark);
    background: rgba(56, 189, 248, 0.12);
    border-color: var(--app-border-strong);
}

.site-nav-item--cta.is-active {
    color: #fff;
    background: linear-gradient(135deg, #0284c7, #0369a1);
}

.site-header__counsel-btn {
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
    box-shadow: 0 8px 22px var(--app-shadow-lg);
}

.nav-mega__toggle.is-active.dropdown-toggle::after {
    border-top-color: #fff;
}

.nav-mega__menu {
    background: #ffffff !important;
    border-color: var(--app-border);
    box-shadow: 0 20px 50px var(--app-shadow-lg);
}

.nav-mega__menu::before {
    background: linear-gradient(90deg, #0ea5e9, #38bdf8, #0284c7);
}

.nav-mega__title,
.nav-mega__panel-title {
    color: var(--app-heading);
}

.nav-mega__eyebrow,
.nav-mega__all-link,
.nav-mega__panel-link {
    color: var(--app-primary);
}

.nav-mega__cat-btn {
    color: var(--app-text-muted);
}

.nav-mega__cat-btn.is-active {
    color: var(--app-primary-dark);
    background: rgba(56, 189, 248, 0.15);
    border-color: var(--app-border-strong);
}

.nav-mega__category-link {
    color: var(--app-text);
    background: var(--app-surface-2);
    border-color: var(--app-border);
}

.nav-mega__category-link:hover {
    background: rgba(224, 242, 254, 0.8);
    border-color: var(--app-border-strong);
}

.nav-mega__item {
    color: var(--app-text-muted);
}

.nav-mega__item:hover {
    background: rgba(56, 189, 248, 0.1);
    color: var(--app-primary-dark);
}

.nav-mega__group {
    background: var(--app-surface-2);
    border-color: var(--app-border);
}

/* Hero */
.hero-slide__overlay--side {
    background: linear-gradient(90deg, rgba(240, 249, 255, 0.96) 0%, rgba(224, 242, 254, 0.88) 42%, rgba(240, 249, 255, 0.35) 100%);
}

.hero-slide__overlay--bottom {
    background: linear-gradient(180deg, transparent 40%, rgba(224, 242, 254, 0.75) 100%);
}

@media (max-width: 991.98px) {
    .hero-slide__overlay--side {
        background: linear-gradient(180deg, rgba(240, 249, 255, 0.2) 0%, rgba(224, 242, 254, 0.92) 55%, rgba(240, 249, 255, 0.98) 100%);
    }
}

.hero-content__badge {
    color: var(--app-primary-dark);
    background: rgba(56, 189, 248, 0.15);
    border-color: var(--app-border-strong);
}

.hero-content__title {
    color: var(--app-heading);
}

.hero-content__highlight--1 {
    color: #0284c7;
}

.hero-content__highlight--2 {
    color: #0369a1;
}

.hero-content__highlight--3 {
    color: #0ea5e9;
}

.hero-content__text {
    color: var(--app-text-muted);
}

.hero-btn--primary {
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
    box-shadow: 0 8px 24px var(--app-shadow-lg);
}

.hero-btn--secondary {
    color: var(--app-primary-dark);
    border-color: var(--app-border-strong);
    background: rgba(255, 255, 255, 0.85);
}

.hero-btn--secondary:hover {
    color: var(--app-primary-dark);
    background: #fff;
}

.hero-slider__arrow {
    background: rgba(255, 255, 255, 0.9);
    color: var(--app-primary-dark);
    border-color: var(--app-border);
    box-shadow: 0 4px 16px var(--app-shadow);
}

.hero-slider__arrow:hover {
    background: #fff;
}

.hero-slider__dot {
    background: rgba(14, 165, 233, 0.35);
}

.hero-slider__dot.is-active {
    background: var(--app-primary);
}

/* Sections & cards */
.page-section-title,
.page-hero__title,
.course-detail-block__title,
.course-detail-hero__title,
.listing-card__title,
.section-eyebrow {
    color: var(--app-heading);
}

.page-hero__subtitle,
.page-card__text,
.listing-card__text,
.course-detail-prose p {
    color: var(--app-text-muted);
}

.page-card,
.listing-card,
.saas-pro-card,
.page-stat-card,
.institute-card,
.category-card,
.course-detail-about,
.course-detail-coverage,
.course-detail-feature,
.course-detail-info-table,
.course-detail-sidebar__card,
.app-page-card {
    background: #ffffff !important;
    border-color: var(--app-border) !important;
    box-shadow: 0 8px 30px var(--app-shadow);
}

.page-card__title {
    color: var(--app-heading) !important;
}

.page-card__text {
    color: var(--app-text-muted) !important;
}

/* Contact page */
.page-contact-list li {
    color: var(--app-text-muted) !important;
}

.page-contact-list .bi {
    color: var(--app-primary) !important;
}

.page-contact-list a {
    color: var(--app-heading) !important;
    text-decoration: none;
}

.page-contact-list a:hover {
    color: var(--app-primary) !important;
}

.page-form__label {
    color: var(--app-heading) !important;
}

.page-form__pill {
    color: var(--app-text-muted) !important;
    background: var(--app-surface-2) !important;
    border-color: var(--app-border) !important;
}

.page-form__pill:has(input:checked) {
    color: var(--app-primary-dark) !important;
    background: rgba(224, 242, 254, 0.8) !important;
    border-color: var(--app-border-strong) !important;
}

.page-alert {
    color: #166534 !important;
    background: rgba(220, 252, 231, 0.9) !important;
    border-color: rgba(34, 197, 94, 0.35) !important;
}

.page-content .counselling-modal__input,
.page-content .counselling-modal__textarea {
    background: #fff !important;
    border-color: var(--app-border) !important;
    color: var(--app-text) !important;
}

.page-content .counselling-modal__input::placeholder,
.page-content .counselling-modal__textarea::placeholder {
    color: var(--app-text-soft);
}

.page-hero--pro {
    background: linear-gradient(180deg, rgba(224, 242, 254, 0.5), transparent);
}

.page-breadcrumb__list a {
    color: var(--app-primary);
}

.page-breadcrumb__item.is-current span {
    color: var(--app-text-soft);
}

.page-btn--primary,
.page-btn.page-btn--primary {
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
    color: #fff;
    border: 0;
}

.page-btn--light {
    color: var(--app-primary-dark);
    background: #fff;
    border: 1px solid var(--app-border-strong);
}

.detail-list li {
    color: var(--app-text-muted);
}

.page-course-card__duration,
.page-course-card__text {
    color: var(--app-text-soft);
}

/* Stats, institute, teachers */
.stats-section,
.learning-section,
.teachers-section,
.institute-section {
    background: transparent;
}

.stat-card,
.learning-card,
.teacher-card {
    background: #fff;
    border-color: var(--app-border);
}

/* Accordion / FAQ */
.page-accordion .accordion-item,
.page-accordion__item {
    background: #fff !important;
    border-color: var(--app-border) !important;
}

.page-accordion .accordion-button,
.page-accordion .page-accordion__btn,
.page-accordion__btn {
    background: #fff !important;
    color: var(--app-heading) !important;
    box-shadow: none !important;
}

.page-accordion .accordion-button:not(.collapsed),
.page-accordion .page-accordion__btn:not(.collapsed),
.page-accordion__btn:not(.collapsed) {
    background: rgba(224, 242, 254, 0.5) !important;
    color: var(--app-primary-dark) !important;
}

.page-accordion .accordion-body,
.page-accordion__body {
    color: var(--app-text-muted) !important;
    background: #fff !important;
}

.page-accordion .accordion-button::after {
    filter: none;
}

/* Inner page CTA band (FAQ, etc.) */
.page-cta-band {
    background: linear-gradient(135deg, rgba(224, 242, 254, 0.85), rgba(255, 255, 255, 0.98));
    border-color: var(--app-border-strong);
}

.page-cta-band h3 {
    color: var(--app-heading) !important;
}

.page-cta-band p {
    color: var(--app-text-muted) !important;
}

.page-section-title {
    color: var(--app-heading) !important;
}

.page-hero__title {
    color: var(--app-heading) !important;
}

/* Counselling modal */
.counselling-modal__content {
    background: linear-gradient(145deg, #ffffff 0%, #f0f9ff 100%);
    box-shadow: 0 24px 60px var(--app-shadow-lg);
}

.counselling-modal__form-wrap {
    color: var(--app-text);
}

.counselling-modal__subtitle,
.counselling-modal__label {
    color: var(--app-text-muted);
}

.counselling-modal__title {
    color: var(--app-heading);
}

.counselling-modal__pills .nav-link {
    color: var(--app-text-muted);
    background: var(--app-bg-soft);
    border-color: var(--app-border);
}

.counselling-modal__input,
.counselling-modal__textarea {
    background: #fff;
    border-color: var(--app-border);
    color: var(--app-text);
}

.counselling-modal__submit {
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
}

/* Footer */
.site-footer {
    background: linear-gradient(180deg, #e0f2fe 0%, #f0f9ff 100%) !important;
    border-color: var(--app-border) !important;
    color: var(--app-text);
}

.site-footer .text-slate-400,
.site-footer .text-slate-300,
.site-footer .text-slate-500 {
    color: var(--app-text-muted) !important;
}

.site-footer .text-white,
.site-footer a.text-white {
    color: var(--app-heading) !important;
}

.site-footer .text-sky-300,
.site-footer h4.text-white {
    color: var(--app-primary-dark) !important;
}

.site-footer .text-violet-400 {
    color: var(--app-primary) !important;
}

.site-footer .border-white\/10,
.site-footer [class*='border-white'] {
    border-color: var(--app-border) !important;
}

.site-footer .bg-white\/5,
.site-footer .bg-black\/20 {
    background: rgba(255, 255, 255, 0.6) !important;
}

.site-footer a:hover {
    color: var(--app-primary) !important;
}

/* Course detail — full light-theme text & surfaces */
.course-detail-hero {
    background: linear-gradient(180deg, rgba(224, 242, 254, 0.4), transparent);
}

.course-detail-hero__title,
.course-detail-block__title,
.course-detail-section__title,
.course-detail-coverage__label,
.course-detail-pitch__title,
.course-detail-feature__title,
.course-detail-stage__title,
.course-detail-includes__title,
.course-detail-timeline__title,
.course-detail-enroll__title,
.course-detail-sidebar__title {
    color: var(--app-heading) !important;
}

.course-detail-hero__subtitle,
.course-detail-block__intro,
.course-detail-prose p,
.course-detail-coverage__text,
.course-detail-pitch__text,
.course-detail-feature__text,
.course-detail-stage__text,
.course-detail-why__intro,
.course-detail-why__list li,
.course-detail-includes__text,
.course-detail-timeline__text,
.course-detail-outcome__text,
.course-detail-enroll__text,
.course-detail-sidebar__desc,
.course-detail-sidebar__meta li,
.course-detail-sidebar__features li,
.course-detail-info-table__value,
.course-detail-eligibility li,
.course-detail-syllabus__topics li {
    color: var(--app-text-muted) !important;
}

.course-detail-hero__duration,
.course-detail-stats__label,
.course-detail-info-table__label {
    color: var(--app-text-soft) !important;
}

.course-detail-block__eyebrow,
.course-detail-hero__eyebrow,
.course-detail-timeline__phase,
.course-detail-feature__num,
.course-detail-sidebar__subtitle {
    color: var(--app-primary) !important;
}

.course-detail-hero__highlight {
    background: linear-gradient(135deg, #0284c7, #0ea5e9);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
}

.course-detail-stats {
    border-top-color: var(--app-border);
}

.course-detail-stats__item {
    background: #fff;
    border-color: var(--app-border);
}

.course-detail-stats__value {
    color: var(--app-heading) !important;
}

.course-detail-block {
    border-bottom-color: var(--app-border);
}

.course-detail-hero__image-wrap {
    border-color: var(--app-border);
}

.course-detail-info-table__row {
    border-bottom-color: var(--app-border);
}

.course-detail-info-table__row:nth-child(even) {
    background: var(--app-surface-2);
}

.course-detail-eligibility li,
.course-detail-includes__item,
.course-detail-enroll__step,
.course-detail-timeline__content,
.course-detail-outcome,
.course-detail-feature,
.course-detail-stage,
.course-detail-coverage {
    background: #fff !important;
    border-color: var(--app-border) !important;
}

.course-detail-coverage__icon {
    color: var(--app-primary) !important;
    background: rgba(56, 189, 248, 0.15) !important;
    border-color: var(--app-border-strong) !important;
}

.course-detail-includes__icon {
    color: var(--app-primary) !important;
    background: rgba(56, 189, 248, 0.15) !important;
}

.course-detail-eligibility .bi,
.course-detail-sidebar__meta .bi {
    color: var(--app-primary) !important;
}

.course-detail-timeline__marker {
    color: #fff;
    background: linear-gradient(135deg, #0ea5e9, #0284c7);
}

.course-detail-enroll__num {
    color: #fff !important;
    background: linear-gradient(135deg, #0ea5e9, #0284c7) !important;
    border-color: var(--app-border-strong) !important;
}

.course-detail-pitch {
    background: linear-gradient(135deg, rgba(224, 242, 254, 0.8), rgba(255, 255, 255, 0.95));
    border-color: var(--app-border-strong);
}

.course-detail-block--why {
    background: rgba(224, 242, 254, 0.35);
    border-color: var(--app-border);
}

.course-detail-cta__box {
    background: linear-gradient(180deg, rgba(224, 242, 254, 0.6), #fff);
    border-color: var(--app-border);
}

.course-detail-cta__title {
    color: var(--app-heading) !important;
}

.course-detail-cta__text {
    color: var(--app-text-muted) !important;
}

.course-detail-hero .page-breadcrumb__item,
.course-detail-hero .page-breadcrumb__item.is-current span {
    color: var(--app-text-soft);
}

.course-detail-hero .page-breadcrumb__item a {
    color: var(--app-primary);
}

.course-detail-hero .page-breadcrumb__item a:hover {
    color: var(--app-primary-dark);
}

.page-course-card__badge {
    color: #0369a1 !important;
    background: rgba(56, 189, 248, 0.15) !important;
    border-color: var(--app-border-strong) !important;
}

.course-detail-sidebar__card {
    border-color: var(--app-border) !important;
}

.course-detail-sidebar__features .bi,
.course-detail-why__list .bi {
    color: #059669 !important;
}

.course-detail-outcome__icon {
    color: #d97706 !important;
}

/* Accordion on course page */
.course-detail-block .page-accordion .accordion-button {
    color: var(--app-heading);
}

.course-detail-block .page-accordion .accordion-body {
    color: var(--app-text-muted);
}

/* Logo chip — optional on light bg */
.site-logo-wrap--chip {
    background: #fff;
    box-shadow: 0 4px 16px var(--app-shadow);
}

.app-tagline-badge {
    background: rgba(56, 189, 248, 0.15) !important;
    color: var(--app-primary-dark) !important;
    border-color: var(--app-border-strong) !important;
}

.app-brand-subtitle,
.site-header__brand-sub {
    color: var(--app-text-soft);
}

/* Homepage sections */
.section-eyebrow {
    color: var(--app-primary-dark);
    background: rgba(56, 189, 248, 0.15);
    border-color: var(--app-border-strong);
}

.section-eyebrow--amber {
    color: #0369a1;
    background: rgba(14, 165, 233, 0.12);
    border-color: var(--app-border-strong);
}

.learning-section {
    border-color: var(--app-border);
    background:
        radial-gradient(circle at 15% 50%, rgba(56, 189, 248, 0.12), transparent 42%),
        linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 48%, #f8fcff 100%);
}

.learning-section__title {
    color: var(--app-heading);
}

.learning-section__title-highlight {
    background: linear-gradient(90deg, #0284c7, #0ea5e9, #38bdf8);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.learning-section__copy p {
    color: var(--app-text-muted);
}

.learning-section__copy p:last-child {
    color: var(--app-primary-dark);
}

.teachers-section {
    background: #ffffff;
    border-top: 1px solid var(--app-border);
}

.teachers-section__title {
    color: var(--app-heading);
}

.teachers-section__title-highlight {
    background: linear-gradient(90deg, #0284c7, #0ea5e9, #38bdf8);
    -webkit-background-clip: text;
    background-clip: text;
}

.teachers-section__subtitle {
    color: var(--app-text-muted);
}

.gallery-slider__card {
    background: #fff;
    border-color: var(--app-border);
    box-shadow: 0 8px 28px var(--app-shadow);
}

.gallery-slider__info h3 {
    color: var(--app-heading);
}

.gallery-slider__info p {
    color: var(--app-text-soft);
}

.gallery-slider__btn {
    background: #fff;
    border-color: var(--app-border);
    color: var(--app-primary-dark);
    box-shadow: 0 4px 16px var(--app-shadow);
}

.gallery-slider__btn:hover {
    background: var(--app-bg-soft);
    border-color: var(--app-border-strong);
}

.page-hero {
    border-color: var(--app-border);
    background:
        radial-gradient(circle at 20% 0%, rgba(56, 189, 248, 0.15), transparent 40%),
        linear-gradient(180deg, rgba(240, 249, 255, 0.95), rgba(255, 255, 255, 0.8));
}

.page-hero__title,
.page-hero__title-highlight {
    color: var(--app-heading);
}

.page-hero__title-highlight {
    background: linear-gradient(90deg, #0284c7, #0ea5e9);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.page-hero__subtitle {
    color: var(--app-text-muted);
}

.page-hero__glow {
    opacity: 0.5;
}

.saas-pro-card {
    background: #fff !important;
    border-color: var(--app-border) !important;
    box-shadow: 0 8px 30px var(--app-shadow);
}

.saas-card-hover:hover {
    box-shadow: 0 12px 36px var(--app-shadow-lg) !important;
}

.page-content {
    background: transparent;
}

.page-stat-card {
    background: #fff !important;
    border-color: var(--app-border) !important;
}

.page-stat-card__value {
    color: var(--app-primary-dark);
}

.page-stat-card__label {
    color: var(--app-text-soft);
}

.category-card,
.listing-card,
.listing-card--result,
.listing-card--course,
.page-course-card,
.page-result-card,
.page-value-card {
    background: #fff !important;
    border-color: var(--app-border) !important;
}

/* ─── Global readable text — all pages ─── */
.page-hero__title,
.page-hero__title-highlight,
.page-section-title,
.page-card__title,
.page-value-card h3,
.category-card__title,
.listing-card__title,
.page-course-card__title,
.page-result-card h3,
.course-detail-hero__title,
.course-detail-block__title {
    color: var(--app-heading) !important;
}

.page-hero__title-highlight,
.course-detail-hero__highlight {
    background: linear-gradient(90deg, #0284c7, #0ea5e9) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
}

.page-hero__subtitle,
.page-card__text,
.page-value-card p,
.category-card__text,
.listing-card__text,
.page-course-card__text,
.page-result-card__college,
.page-result-card__course,
.detail-list li,
.page-breadcrumb__item,
.page-breadcrumb__item.is-current span {
    color: var(--app-text-muted) !important;
}

.page-breadcrumb__item a {
    color: var(--app-primary) !important;
}

.page-breadcrumb__item a:hover {
    color: var(--app-primary-dark) !important;
}

.page-breadcrumb__item:not(.is-current)::after {
    color: var(--app-text-soft) !important;
}

.category-card__meta,
.page-course-card__duration,
.listing-card__link,
.category-card__link {
    color: var(--app-primary) !important;
}

.category-card:hover .category-card__link,
.listing-card:hover .listing-card__link {
    color: var(--app-primary-dark) !important;
}

.category-card__icon,
.page-value-card__icon {
    background: rgba(56, 189, 248, 0.15) !important;
    color: var(--app-primary-dark) !important;
}

.page-stat-card__value {
    color: var(--app-primary-dark) !important;
}

.page-stat-card--sky .page-stat-card__value {
    color: #0284c7 !important;
}

.page-stat-card--teal .page-stat-card__value {
    color: #0891b2 !important;
}

.page-stat-card--violet .page-stat-card__value {
    color: #0369a1 !important;
}

.page-stat-card__label {
    color: var(--app-text-soft) !important;
}

.page-course-card__badge {
    color: #0369a1 !important;
    background: rgba(56, 189, 248, 0.15) !important;
    border-color: var(--app-border-strong) !important;
}

.page-course-card__features li {
    color: var(--app-text-muted) !important;
}

.page-result-card__score {
    color: #059669 !important;
    background: rgba(16, 185, 129, 0.12) !important;
}

.page-result-card__college .bi {
    color: var(--app-primary) !important;
}

.result-poster-card {
    display: block;
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid var(--app-border-strong);
    background: #fff;
    text-decoration: none;
}

.result-poster-card__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
}

.result-poster-card__label {
    display: block;
    padding: 0.85rem 1rem;
    font-weight: 600;
    color: var(--app-heading);
}

.result-poster-view {
    padding: 1rem;
    border-radius: 1rem;
    border: 1px solid var(--app-border-strong);
    background: #fff;
}

.result-poster-view__image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 0.75rem;
}

.detail-list li::before {
    background: var(--app-primary) !important;
}

.detail-list li strong {
    color: var(--app-heading);
}

.page-cta-band h3 {
    color: var(--app-heading) !important;
}

.page-cta-band p {
    color: var(--app-text-muted) !important;
}

.page-btn--light {
    color: var(--app-primary-dark) !important;
    background: #fff !important;
    border: 1px solid var(--app-border-strong) !important;
}

.page-btn--primary {
    color: #fff !important;
}

.nav-mega__item {
    color: var(--app-text-muted) !important;
}

.nav-mega__item:hover {
    color: var(--app-primary-dark) !important;
}

.nav-mega__toggle {
    color: var(--app-text-muted) !important;
}

.nav-mega__toggle.is-active,
.nav-mega__toggle:hover {
    color: var(--app-primary-dark) !important;
}

.section-eyebrow {
    color: var(--app-primary-dark) !important;
}

.offcanvas-backdrop.show {
    opacity: 0.4;
    backdrop-filter: blur(2px);
}
