/* Single course page — academy theme */

.course-academy {
    min-height: 100vh;
    background: var(--bg, #F4F8FB);
}

/* ── Hero ── */
.course-academy__hero {
    position: relative;
    min-height: 320px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background: #0f2438;
}

.course-academy__hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.45;
}

.course-academy__hero-overlay {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 48px 0 40px;
    background: linear-gradient(180deg, rgba(17, 36, 58, 0.15) 0%, rgba(17, 36, 58, 0.88) 100%);
}

.course-academy__hero-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding-inline: 24px;
}

.course-academy__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--head, "Cairo", sans-serif);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.04em;
    color: #fff;
    background: rgba(255, 255, 255, 0.12);
    padding: 6px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    margin-bottom: 14px;
}

.course-academy__eyebrow .dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2BA9E0, #1C75BC);
}

.course-academy__title {
    font-family: var(--head, "Cairo", sans-serif);
    font-size: clamp(28px, 4.5vw, 42px);
    font-weight: 900;
    line-height: 1.2;
    color: #fff;
    margin: 0;
    max-width: 820px;
}

.course-academy__hero-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 20px;
    margin-top: 16px;
}

.course-academy__hero-meta a,
.course-academy__hero-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.92);
    text-decoration: none;
}

.course-academy__hero-meta a:hover {
    color: #fff;
    text-decoration: underline;
}

.course-academy__hero-meta svg {
    stroke: #2BA9E0;
    flex-shrink: 0;
}

.course-academy__hero-offer {
    margin-top: 24px;
}

.course-academy__hero-offer .special-offer-card {
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 16px 40px -20px rgba(0, 0, 0, 0.35);
}

/* ── Body layout ── */
.course-academy__body {
    padding: 32px 0 80px;
}

.course-academy__body .wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding-inline: 24px;
}

.course-academy .course-content-section {
    position: static;
    top: auto;
    margin-bottom: 0;
}

.course-academy .course-content-body {
    background: #fff;
    border: 1px solid var(--line, #E3E9F0);
    border-radius: 20px;
    box-shadow: 0 20px 48px -28px rgba(17, 36, 58, 0.14);
    padding: 24px;
}

/* ── Tabs ── */
.course-academy .course-academy__tabs {
    display: flex;
    gap: 8px;
    padding: 6px;
    margin: 0 0 20px;
    list-style: none;
    background: #F0F5FA;
    border-radius: 14px;
    border: 1px solid var(--line, #E3E9F0);
}

.course-academy .course-academy__tabs .nav-item {
    flex: 1;
}

.course-academy .course-academy__tabs .nav-link {
    display: block;
    text-align: center;
    padding: 12px 16px;
    border-radius: 10px;
    font-family: var(--head, "Cairo", sans-serif);
    font-size: 14px;
    font-weight: 700;
    color: var(--muted, #6A7889) !important;
    background: transparent !important;
    border: none !important;
    transition: background 0.15s ease, color 0.15s ease;
}

.course-academy .course-academy__tabs .nav-link.active,
.course-academy .course-academy__tabs .nav-link:hover {
    color: var(--blue-700, #1C75BC) !important;
    background: #fff !important;
    box-shadow: 0 4px 12px -6px rgba(17, 36, 58, 0.15);
}

.course-academy .tab-content {
    padding-top: 4px;
}

/* ── Sidebar ── */
.course-academy .course-content-sidebar {
    margin-top: 0 !important;
}

.course-academy .course-academy__sidebar-card {
    background: #fff;
    border: 1px solid var(--line, #E3E9F0);
    border-radius: 20px;
    box-shadow: 0 20px 48px -28px rgba(17, 36, 58, 0.14);
    overflow: hidden;
}

.course-academy .course-content-sidebar .course-img {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.course-academy .course-content-sidebar .course-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course-academy .course-content-sidebar .course-img::after {
    display: none;
}

.course-academy .course-content-sidebar .course-img.has-video::after {
    display: block;
    background: rgba(17, 36, 58, 0.35);
}

.course-academy .course-content-sidebar .course-video-icon {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC) !important;
    box-shadow: 0 8px 24px -8px rgba(28, 117, 188, 0.6);
}

.course-academy .course-d-custom {
    padding: 22px 22px 28px !important;
    border-radius: 0 !important;
}

.course-academy #realPrice {
    font-family: var(--head, "Cairo", sans-serif) !important;
    font-weight: 900 !important;
    color: var(--blue-700, #1C75BC) !important;
    font-size: 2rem !important;
}

.course-academy #priceWithDiscount {
    font-family: var(--head, "Cairo", sans-serif) !important;
    font-weight: 900 !important;
    color: var(--blue-700, #1C75BC) !important;
}

.course-academy .course-academy__btn-primary,
.course-academy .course-content-sidebar .btn-primary {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC) !important;
    border: none !important;
    border-radius: 12px !important;
    font-family: var(--head, "Cairo", sans-serif);
    font-weight: 700 !important;
    padding: 12px 20px !important;
    box-shadow: 0 10px 24px -10px rgba(28, 117, 188, 0.55);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.course-academy .course-academy__btn-primary:hover,
.course-academy .course-content-sidebar .btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px -10px rgba(28, 117, 188, 0.65);
}

.course-academy .course-academy__btn-learning {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC) !important;
    color: #fff !important;
    font-weight: 700 !important;
    border-radius: 12px !important;
    border: none !important;
    padding: 12px 20px !important;
}

.course-academy .course-content-sidebar .btn-outline-primary {
    border-radius: 12px !important;
    font-weight: 600;
    border-color: var(--blue-500, #2BA9E0) !important;
    color: var(--blue-700, #1C75BC) !important;
}

.course-academy .custom-d-2 {
    background: #fff;
    border: 1px solid var(--line, #E3E9F0);
    border-radius: 18px !important;
    box-shadow: 0 8px 24px -16px rgba(17, 36, 58, 0.12);
    margin-bottom: 20px;
}

.course-academy .sidebar-title {
    font-family: var(--head, "Cairo", sans-serif) !important;
    font-weight: 800 !important;
    color: var(--ink, #11243A) !important;
    font-size: 15px !important;
}

.course-academy .course-content-sidebar .d-flex.align-items-center i,
.course-academy .course-content-sidebar .d-flex.align-items-center img {
    color: var(--blue-500, #2BA9E0);
}

/* Gift card link */
.course-academy .course-academy__gift {
    display: flex;
    align-items: center;
    margin-top: 20px;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--line, #E3E9F0);
    background: #fff;
    text-decoration: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.course-academy .course-academy__gift:hover {
    border-color: #B8E4F7;
    box-shadow: var(--shadow-sm, 0 4px 16px -8px rgba(17, 36, 58, 0.12));
    text-decoration: none;
}

.course-academy .course-academy__gift-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: #EAF5FC;
    color: var(--blue-700, #1C75BC);
}

.course-academy .course-academy__gift h4 {
    font-family: var(--head, "Cairo", sans-serif);
    font-size: 14px;
    font-weight: 800;
    color: var(--ink, #11243A);
    margin: 0 0 4px;
}

.course-academy .course-academy__gift p {
    margin: 0;
    font-size: 12px;
    color: var(--muted, #6A7889);
}

/* ── Curriculum accordion ── */
.course-academy .course-curriculum__accordion {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.course-academy .course-chapter {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--line, #E3E9F0) !important;
    border-radius: 18px !important;
    background: #fff;
    box-shadow: 0 12px 32px -24px rgba(17, 36, 58, 0.16);
    overflow: hidden;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.course-academy .course-chapter:hover {
    border-color: color-mix(in srgb, var(--blue-500, #2BA9E0) 28%, var(--line, #E3E9F0)) !important;
    box-shadow: 0 16px 36px -22px rgba(28, 117, 188, 0.18);
}

.course-academy .course-chapter__header {
    padding: 18px 20px;
    gap: 12px;
    cursor: pointer;
}

.course-academy .course-chapter__toggle {
    flex: 1;
    min-width: 0;
    gap: 14px;
    cursor: pointer;
    border: none;
    background: transparent;
    padding: 0;
    text-align: start;
}

.course-academy .course-chapter__icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: linear-gradient(135deg, #2BA9E0 0%, #1C75BC 100%) !important;
    color: #fff;
    box-shadow: 0 8px 20px -10px rgba(28, 117, 188, 0.55);
}

.course-academy .course-chapter__icon svg {
    stroke: #fff;
    width: 20px;
    height: 20px;
}

.course-academy .course-chapter__title {
    font-family: var(--head, "Cairo", sans-serif);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--ink, #11243A);
    line-height: 1.35;
}

.course-academy .course-chapter__meta {
    flex-shrink: 0;
    gap: 12px;
}

.course-academy .course-chapter__badge {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    color: var(--blue-700, #1C75BC);
    background: #EAF5FC;
    border: 1px solid color-mix(in srgb, var(--blue-500, #2BA9E0) 18%, transparent);
    white-space: nowrap;
}

.course-academy .course-chapter__badge-sep {
    opacity: 0.45;
}

.course-academy .course-chapter__chevron,
.course-academy .course-item__chevron {
    flex-shrink: 0;
    color: var(--muted, #6A7889);
    stroke: var(--muted, #6A7889);
    transition: transform 0.25s ease, color 0.2s ease;
    cursor: pointer;
}

.course-academy .course-chapter__chevron:not(.collapsed),
.course-academy .course-chapter__chevron.feather-chevron-up,
.course-academy .course-chapter__chevron.chevron-get-up,
.course-academy .course-item__chevron:not(.collapsed),
.course-academy .course-item__chevron.feather-chevron-up,
.course-academy .course-item__chevron.chevron-get-up {
    transform: rotate(180deg);
    color: var(--blue-600, #1C8FD0);
    stroke: var(--blue-600, #1C8FD0);
}

.course-academy .course-chapter__body {
    border-top: 1px solid var(--line-2, #EEF2F7);
    margin: 0 !important;
    padding: 12px 14px 16px !important;
    background: linear-gradient(180deg, #F8FBFE 0%, #fff 100%);
}

.course-academy .course-chapter__body > .accordion-row,
.course-academy .course-item {
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 1px solid var(--line, #E3E9F0) !important;
    border-radius: 14px !important;
    background: #fff;
    overflow: hidden;
    transition: border-color 0.2s ease;
}

.course-academy .course-chapter__body > .accordion-row:last-child,
.course-academy .course-item:last-child {
    margin-bottom: 0 !important;
}

.course-academy .course-item--sub {
    margin: 10px 0 0 12px !important;
    border-style: dashed !important;
    background: #FAFCFE;
}

.course-academy .course-item .collapse > .course-item--sub:first-of-type {
    margin-top: 12px !important;
}

.course-academy .course-chapter__body > .accordion-row:hover,
.course-academy .course-item:hover {
    border-color: color-mix(in srgb, var(--blue-500, #2BA9E0) 22%, var(--line, #E3E9F0)) !important;
}

.course-academy .course-item__header,
.course-academy .course-chapter__body > .accordion-row > .d-flex.align-items-center.justify-content-between {
    padding: 14px 16px;
    gap: 10px;
}

.course-academy .course-item__toggle,
.course-academy .course-chapter__body > .accordion-row .d-flex.align-items-center[role="button"],
.course-academy .course-chapter__body > .accordion-row > .d-flex > .d-flex.align-items-center[href] {
    flex: 1;
    min-width: 0;
    gap: 12px;
    cursor: pointer;
}

.course-academy .course-item__icon,
.course-academy .course-chapter__body .chapter-content-icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    margin: 0 !important;
    background: linear-gradient(135deg, #EAF5FC, #DCEEF8) !important;
    color: var(--blue-700, #1C75BC);
}

.course-academy .course-item__icon svg,
.course-academy .course-chapter__body .chapter-content-icon svg {
    stroke: var(--blue-700, #1C75BC);
    width: 18px;
    height: 18px;
}

.course-academy .course-item__icon--video {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC) !important;
}

.course-academy .course-item__icon--video svg {
    stroke: #fff !important;
}

.course-academy .course-item__icon--locked {
    background: #F3F5F8 !important;
}

.course-academy .course-item__icon--locked svg {
    stroke: var(--muted, #6A7889) !important;
}

.course-academy .course-item__title,
.course-academy .course-chapter__body .file-title {
    font-family: var(--head, "Cairo", sans-serif) !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: var(--ink-2, #33485E) !important;
    line-height: 1.4;
}

.course-academy .course-item__body,
.course-academy .course-chapter__body .panel-collapse {
    border-top: 1px solid var(--line-2, #EEF2F7) !important;
    margin: 0 !important;
    padding: 14px 16px 16px !important;
}

.course-academy .course-item__desc {
    font-size: 13px;
    line-height: 1.65;
    color: var(--muted, #6A7889);
    margin-bottom: 12px;
}

.course-academy .course-item__desc:empty {
    display: none;
}

.course-academy .course-item__footer,
.course-academy .course-chapter__body .panel-collapse > .d-flex.align-items-center.justify-content-between.mt-20 {
    margin-top: 14px !important;
    padding-top: 14px;
    border-top: 1px dashed var(--line-2, #EEF2F7);
    gap: 12px;
    flex-wrap: wrap;
}

.course-academy .course-item__stats,
.course-academy .course-chapter__body .panel-collapse .d-flex.align-items-center.text-gray {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.course-academy .course-item__stat,
.course-academy .course-chapter__body .panel-collapse .d-flex.align-items-center.font-14.mr-20 {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 !important;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: 12px !important;
    font-weight: 600;
    color: var(--ink-2, #33485E) !important;
    background: #F4F8FB;
    border: 1px solid var(--line-2, #EEF2F7);
}

.course-academy .course-item__stat svg,
.course-academy .course-chapter__body .panel-collapse .d-flex.align-items-center.font-14 svg {
    stroke: var(--blue-500, #2BA9E0);
    flex-shrink: 0;
}

.course-academy .course-content-btns {
    border-radius: 10px !important;
    font-family: var(--head, "Cairo", sans-serif);
    font-weight: 700 !important;
    font-size: 13px !important;
    padding: 8px 18px !important;
    min-width: 88px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.course-academy .course-content-btns.btn-primary {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC) !important;
    border: none !important;
    box-shadow: 0 8px 20px -12px rgba(28, 117, 188, 0.55);
}

.course-academy .course-content-btns.btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px -10px rgba(28, 117, 188, 0.65);
}

.course-academy .course-content-btns.btn-gray,
.course-academy .course-content-btns.disabled {
    background: #EEF2F7 !important;
    border: 1px solid var(--line, #E3E9F0) !important;
    color: var(--muted, #6A7889) !important;
    box-shadow: none;
    cursor: not-allowed;
}

.course-academy .course-chapter__body .custom-control-input:checked ~ .custom-control-label::before {
    background: linear-gradient(135deg, #2BA9E0, #1C75BC);
    border-color: #1C75BC;
}

.course-academy #chaptersAccordion .mt-45,
.course-academy #chaptersAccordion .mt-15,
.course-academy #sessionsAccordion .mt-15,
.course-academy #filesAccordion .mt-15,
.course-academy #textLessonsAccordion .mt-15,
.course-academy #quizAccordion .mt-15 {
    margin-top: 0 !important;
}

.course-academy .accordion-content-wrapper .accordion-card {
    border-radius: 14px !important;
    border: 1px solid var(--line, #E3E9F0) !important;
    margin-bottom: 10px;
    overflow: hidden;
}

.course-academy .instructor-discount-card {
    border-radius: 16px !important;
    border: 1px solid var(--line, #E3E9F0) !important;
}

.course-academy .course-content-section .instructor-discount-card {
    margin-top: 0 !important;
}

.course-academy .course-content-sidebar .mt-20.d-flex.align-items-center.text-gray span {
    color: var(--ink-2, #33485E) !important;
}

.course-academy .course-content-sidebar .mt-20.d-flex.align-items-center.text-gray i,
.course-academy .course-content-sidebar .mt-20.d-flex.align-items-center.text-gray svg {
    color: var(--blue-500, #2BA9E0) !important;
    stroke: var(--blue-500, #2BA9E0);
}

@media (max-width: 991px) {
    .course-academy__hero {
        min-height: 280px;
    }

    .course-academy__hero-overlay {
        padding: 36px 0 28px;
    }

    .course-academy .course-content-body {
        padding: 18px;
    }

    .course-academy .course-academy__tabs {
        flex-direction: column;
    }

    .course-academy .course-chapter__header {
        flex-wrap: wrap;
        padding: 16px;
    }

    .course-academy .course-chapter__meta {
        width: 100%;
        justify-content: space-between;
        padding-inline-start: 58px;
    }

    .course-academy .course-chapter__badge {
        white-space: normal;
    }
}

@media (max-width: 680px) {
    .course-academy__hero-inner,
    .course-academy__body .wrap {
        padding-inline: 16px;
    }
}
