/* ================================================================
   PERTICOM Academy — Visual Overhaul 1.0.29
   Stronger LMS marketplace style + safer scoped CSS.
   ================================================================ */

body .pac-academy {
    --pac-ink: #111827;
    --pac-ink-2: #1f2937;
    --pac-bg-page: #f6f7fb;
    --pac-surface: #ffffff;
    --pac-soft-border: rgba(229, 231, 235, .92);
    --pac-shadow-clean: 0 14px 38px rgba(15, 23, 42, .06);
    --pac-shadow-strong: 0 28px 76px rgba(15, 23, 42, .14);
    background: var(--pac-bg-page);
}

body.pac-design-marketplace .pac-academy,
body.pac-design-premium .pac-academy {
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: var(--pac-ink);
}

body.pac-design-marketplace .pac-academy h1,
body.pac-design-marketplace .pac-academy h2,
body.pac-design-premium .pac-academy h1,
body.pac-design-premium .pac-academy h2 {
    letter-spacing: -.055em;
    font-weight: 900;
}

body.pac-cards-sharp .pac-academy .pac-course-card,
body.pac-cards-sharp .pac-academy .pac-dash-course,
body.pac-cards-sharp .pac-academy .pac-course-description,
body.pac-cards-sharp .pac-academy .pac-programme,
body.pac-cards-sharp .pac-academy .pac-course-sidebar__card {
    border-radius: 10px !important;
}

/* Topbar */
body .pac-academy.pac-topbar {
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid rgba(229, 231, 235, .9);
    box-shadow: 0 2px 16px rgba(15, 23, 42, .045);
}

body .pac-academy.pac-topbar .pac-topbar__link {
    border-radius: 8px;
    font-weight: 750;
}

body .pac-academy.pac-topbar .pac-topbar__link:hover {
    background: var(--pac-red-soft);
    color: var(--pac-red-dark);
}

/* Course page: stronger LMS hero */
body.pac-design-marketplace .pac-academy.pac-page-course,
body.pac-design-premium .pac-academy.pac-page-course {
    background: var(--pac-bg-page);
}

body.pac-design-marketplace .pac-academy .pac-course-hero,
body.pac-design-premium .pac-academy .pac-course-hero {
    background: var(--pac-course-hero-bg);
    padding: 0;
    margin: 0 0 36px;
    color: #fff;
}

body.pac-hero-light .pac-academy .pac-course-hero {
    color: var(--pac-ink);
    border-bottom: 1px solid var(--pac-soft-border);
}

body.pac-design-marketplace .pac-academy .pac-course-hero__inner,
body.pac-design-premium .pac-academy .pac-course-hero__inner {
    max-width: 1220px;
    margin: 0 auto;
    padding: 48px 0 58px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
    gap: 44px;
    align-items: start;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.pac-design-marketplace .pac-academy .pac-course-hero__title,
body.pac-design-premium .pac-academy .pac-course-hero__title {
    max-width: 780px;
    margin: 12px 0 16px;
    color: inherit;
    font-size: clamp(38px, 4.8vw, 64px) !important;
    line-height: 1.02;
}

body.pac-design-marketplace .pac-academy .pac-course-hero__excerpt,
body.pac-design-premium .pac-academy .pac-course-hero__excerpt {
    max-width: 700px;
    color: rgba(255,255,255,.78);
    font-size: 18px;
    line-height: 1.62;
}

body.pac-hero-light .pac-academy .pac-course-hero__excerpt {
    color: var(--pac-text-soft);
}

body.pac-design-marketplace .pac-academy .pac-course-hero__breadcrumb,
body.pac-design-premium .pac-academy .pac-course-hero__breadcrumb {
    color: rgba(255,255,255,.62);
}

body.pac-hero-light .pac-academy .pac-course-hero__breadcrumb {
    color: var(--pac-text-soft);
}

body.pac-design-marketplace .pac-academy .pac-course-hero__visual-frame,
body.pac-design-premium .pac-academy .pac-course-hero__visual-frame {
    border-radius: var(--pac-dynamic-radius, 18px);
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: #fff;
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: var(--pac-shadow-strong);
}

body.pac-design-marketplace .pac-academy .pac-course-hero__visual-placeholder,
body.pac-design-premium .pac-academy .pac-course-hero__visual-placeholder {
    min-height: 260px;
    background:
        radial-gradient(circle at 20% 20%, var(--pac-red-soft), transparent 30%),
        linear-gradient(135deg, #fff 0%, #f6f7fb 100%);
}

body.pac-design-marketplace .pac-academy .pac-course-hero__ctas .pac-btn,
body.pac-design-premium .pac-academy .pac-course-hero__ctas .pac-btn,
body .pac-academy .pac-course-sidebar__cta .pac-btn {
    border-radius: 8px;
    min-height: 48px;
    font-weight: 900;
}

body.pac-design-marketplace .pac-academy .pac-course-benefits,
body.pac-design-premium .pac-academy .pac-course-benefits {
    margin-bottom: 36px;
}

body.pac-design-marketplace .pac-academy .pac-course-benefit,
body.pac-design-premium .pac-academy .pac-course-benefit,
body.pac-design-marketplace .pac-academy .pac-course-description,
body.pac-design-marketplace .pac-academy .pac-programme,
body.pac-design-premium .pac-academy .pac-course-description,
body.pac-design-premium .pac-academy .pac-programme,
body.pac-design-marketplace .pac-academy .pac-course-sidebar__card,
body.pac-design-premium .pac-academy .pac-course-sidebar__card {
    background: var(--pac-surface);
    border: 1px solid var(--pac-soft-border);
    border-radius: var(--pac-dynamic-radius, 18px);
    box-shadow: var(--pac-shadow-clean);
}

body.pac-design-marketplace .pac-academy .pac-course-main,
body.pac-design-premium .pac-academy .pac-course-main {
    max-width: 1220px;
    gap: 32px;
}

body.pac-design-marketplace .pac-academy .pac-course-description,
body.pac-design-marketplace .pac-academy .pac-programme,
body.pac-design-premium .pac-academy .pac-course-description,
body.pac-design-premium .pac-academy .pac-programme {
    padding: 28px;
}

body.pac-design-marketplace .pac-academy .pac-course-sidebar,
body.pac-design-premium .pac-academy .pac-course-sidebar {
    position: sticky;
    top: 96px;
}

body.pac-design-marketplace .pac-academy .pac-course-sidebar__price,
body.pac-design-premium .pac-academy .pac-course-sidebar__price {
    font-size: 34px;
    font-weight: 900;
    letter-spacing: -.04em;
}

/* Catalog */
body.pac-design-marketplace .pac-academy .pac-catalog-hero,
body.pac-design-premium .pac-academy .pac-catalog-hero {
    background: linear-gradient(135deg, #111827 0%, #1f2937 65%, #2b1521 100%);
    color: #fff;
}

body.pac-design-marketplace .pac-academy .pac-catalog-hero h1,
body.pac-design-marketplace .pac-academy .pac-catalog-hero h1 strong,
body.pac-design-premium .pac-academy .pac-catalog-hero h1,
body.pac-design-premium .pac-academy .pac-catalog-hero h1 strong {
    color: #fff;
}

body.pac-design-marketplace .pac-academy .pac-catalog-hero__sub,
body.pac-design-premium .pac-academy .pac-catalog-hero__sub {
    color: rgba(255,255,255,.78);
}

body .pac-academy .pac-course-card {
    border-radius: var(--pac-dynamic-radius, 18px);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
}

body .pac-academy .pac-course-card:hover {
    box-shadow: 0 18px 42px rgba(15, 23, 42, .09);
}

/* Dashboard */
body.pac-design-marketplace .pac-academy .pac-dash-welcome,
body.pac-design-premium .pac-academy .pac-dash-welcome {
    background: linear-gradient(135deg, #111827 0%, #1f2937 65%, #2b1521 100%);
}

body.pac-design-marketplace .pac-academy .pac-dash-welcome__inner,
body.pac-design-premium .pac-academy .pac-dash-welcome__inner {
    background: transparent;
    box-shadow: none;
    border: 0;
}

body.pac-design-marketplace .pac-academy .pac-dash-welcome__greeting,
body.pac-design-marketplace .pac-academy .pac-dash-welcome__greeting strong,
body.pac-design-premium .pac-academy .pac-dash-welcome__greeting,
body.pac-design-premium .pac-academy .pac-dash-welcome__greeting strong {
    color: #fff;
}

body.pac-design-marketplace .pac-academy .pac-dash-welcome__sub,
body.pac-design-premium .pac-academy .pac-dash-welcome__sub {
    color: rgba(255,255,255,.76);
}

/* Learning tools */
.pac-reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    height: 3px;
    z-index: 100000;
    background: var(--pac-red);
    box-shadow: 0 0 12px rgba(237, 27, 47, .35);
}

.pac-learning-tools {
    position: fixed;
    right: 22px;
    bottom: 92px;
    z-index: 99990;
    display: flex;
    flex-direction: column;
    gap: 10px;
    pointer-events: none;
}

.pac-learning-tools button {
    pointer-events: auto;
    width: 46px;
    height: 46px;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: var(--pac-ink, #111827);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .16);
    cursor: pointer;
    font-weight: 900;
}

.pac-learning-tools button:hover {
    color: var(--pac-red);
    transform: translateY(-1px);
}

body.pac-focus-mode .pac-academy .pac-lesson__sidebar,
body.pac-focus-mode .pac-academy .pac-player__sidebar,
body.pac-focus-mode .pac-academy .pac-lesson__topbar {
    display: none !important;
}

body.pac-focus-mode .pac-academy .pac-lesson__layout {
    grid-template-columns: minmax(0, 920px) !important;
    justify-content: center !important;
}

.pac-catalog-sort {
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid var(--pac-border);
    border-radius: 999px;
    background: #fff;
    color: var(--pac-text);
    font-weight: 700;
}

@media (max-width: 1024px) {
    body.pac-design-marketplace .pac-academy .pac-course-hero__inner,
    body.pac-design-premium .pac-academy .pac-course-hero__inner,
    body.pac-design-marketplace .pac-academy .pac-course-main,
    body.pac-design-premium .pac-academy .pac-course-main {
        grid-template-columns: 1fr;
    }

    body.pac-design-marketplace .pac-academy .pac-course-sidebar,
    body.pac-design-premium .pac-academy .pac-course-sidebar {
        position: static;
    }
}

@media (max-width: 720px) {
    body.pac-design-marketplace .pac-academy .pac-course-hero__inner,
    body.pac-design-premium .pac-academy .pac-course-hero__inner {
        padding: 30px 0 36px;
        gap: 24px;
    }

    body.pac-design-marketplace .pac-academy .pac-course-hero__title,
    body.pac-design-premium .pac-academy .pac-course-hero__title {
        font-size: clamp(32px, 10vw, 46px) !important;
    }

    .pac-learning-tools {
        right: 16px;
        bottom: 86px;
    }

    .pac-learning-tools button {
        width: 42px;
        height: 42px;
    }
}


/* ================================================================
   1.0.30 — Global background overhaul
   Whole-site background redesign inspired by modern LMS marketplaces.
   ================================================================ */

body.pac-design-marketplace,
body.pac-design-premium {
    background:
        radial-gradient(circle at top left, rgba(86, 36, 208, .08), transparent 28%),
        radial-gradient(circle at top right, rgba(237, 27, 47, .06), transparent 22%),
        linear-gradient(180deg, #f8f9fc 0%, #f3f5fa 100%);
}

body.pac-design-marketplace .pac-academy,
body.pac-design-premium .pac-academy {
    --pac-bg-page: #f4f6fb;
    --pac-page-band: #eef2f9;
    --pac-surface-alt: #f8faff;
    background:
        radial-gradient(circle at top left, rgba(86, 36, 208, .05), transparent 22%),
        linear-gradient(180deg, #f9fbff 0%, #f4f6fb 40%, #eef2f8 100%);
}

body.pac-design-marketplace .pac-academy .pac-shell,
body.pac-design-premium .pac-academy .pac-shell {
    position: relative;
    z-index: 1;
}

/* Generic page containers */
body.pac-design-marketplace .pac-academy.pac-page-dashboard,
body.pac-design-marketplace .pac-academy.pac-page-catalog,
body.pac-design-marketplace .pac-academy.pac-page-course,
body.pac-design-marketplace .pac-academy.pac-page-lesson,
body.pac-design-marketplace .pac-academy.pac-page-login,
body.pac-design-marketplace .pac-academy.pac-page-certificates,
body.pac-design-premium .pac-academy.pac-page-dashboard,
body.pac-design-premium .pac-academy.pac-page-catalog,
body.pac-design-premium .pac-academy.pac-page-course,
body.pac-design-premium .pac-academy.pac-page-lesson,
body.pac-design-premium .pac-academy.pac-page-login,
body.pac-design-premium .pac-academy.pac-page-certificates {
    background:
        linear-gradient(180deg, #f8f9fc 0%, #f2f5fb 100%);
}

/* Section banding for a stronger "site background" identity */
body.pac-design-marketplace .pac-academy .pac-section-band,
body.pac-design-premium .pac-academy .pac-section-band {
    background: linear-gradient(180deg, rgba(238,242,249,.65), rgba(248,250,255,.8));
    border-top: 1px solid rgba(229,231,235,.75);
    border-bottom: 1px solid rgba(229,231,235,.75);
}

/* Dashboard */
body.pac-design-marketplace .pac-academy .pac-dash-welcome,
body.pac-design-premium .pac-academy .pac-dash-welcome {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(255,255,255,.11), transparent 18%),
        radial-gradient(circle at 80% 20%, rgba(167,139,250,.24), transparent 24%),
        linear-gradient(135deg, #161a2c 0%, #1d2340 56%, #2b1450 100%);
    margin-bottom: 0;
}

body.pac-design-marketplace .pac-academy .pac-page-dashboard > .pac-shell,
body.pac-design-premium .pac-academy .pac-page-dashboard > .pac-shell {
    margin-top: -8px;
    padding-top: 28px;
    padding-bottom: 36px;
    background: linear-gradient(180deg, transparent 0, transparent 10px, #f4f6fb 10px);
}

body.pac-design-marketplace .pac-academy .pac-dash-kpi,
body.pac-design-marketplace .pac-academy .pac-dash-course,
body.pac-design-marketplace .pac-academy .pac-dash-activity,
body.pac-design-premium .pac-academy .pac-dash-kpi,
body.pac-design-premium .pac-academy .pac-dash-course,
body.pac-design-premium .pac-academy .pac-dash-activity {
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(229,231,235,.95);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}

/* Catalog */
body.pac-design-marketplace .pac-academy .pac-catalog-hero,
body.pac-design-premium .pac-academy .pac-catalog-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 85% 18%, rgba(167,139,250,.18), transparent 22%),
        radial-gradient(circle at 16% 22%, rgba(255,255,255,.10), transparent 18%),
        linear-gradient(135deg, #161a2c 0%, #1f2641 60%, #2d1552 100%);
    margin-bottom: 22px;
}

body.pac-design-marketplace .pac-academy .pac-page-catalog > .pac-shell,
body.pac-design-premium .pac-academy .pac-page-catalog > .pac-shell {
    padding-top: 14px;
    padding-bottom: 34px;
}

body.pac-design-marketplace .pac-academy .pac-catalog-filters,
body.pac-design-premium .pac-academy .pac-catalog-filters {
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(229,231,235,.92);
    box-shadow: 0 16px 34px rgba(15,23,42,.06);
}

body.pac-design-marketplace .pac-academy .pac-course-card,
body.pac-design-premium .pac-academy .pac-course-card {
    background: linear-gradient(180deg, #fff 0%, #fcfcfe 100%);
    border: 1px solid rgba(229,231,235,.92);
}

body.pac-design-marketplace .pac-academy .pac-course-card__media,
body.pac-design-premium .pac-academy .pac-course-card__media {
    background: linear-gradient(135deg, #f5f3ff 0%, #fff 100%);
}

/* Course detail */
body.pac-design-marketplace .pac-academy .pac-course-hero,
body.pac-design-premium .pac-academy .pac-course-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 84% 18%, rgba(167,139,250,.24), transparent 22%),
        radial-gradient(circle at 18% 18%, rgba(255,255,255,.10), transparent 16%),
        linear-gradient(135deg, #151827 0%, #1d2340 52%, #311550 100%);
}

body.pac-hero-light .pac-academy .pac-course-hero {
    background:
        radial-gradient(circle at 82% 18%, rgba(86,36,208,.08), transparent 18%),
        linear-gradient(180deg, #ffffff 0%, #f5f7fc 100%);
}

body.pac-design-marketplace .pac-academy .pac-page-course > .pac-shell,
body.pac-design-premium .pac-academy .pac-page-course > .pac-shell {
    padding-top: 0;
    padding-bottom: 38px;
}

body.pac-design-marketplace .pac-academy .pac-course-benefits,
body.pac-design-premium .pac-academy .pac-course-benefits {
    margin-top: -10px;
}

body.pac-design-marketplace .pac-academy .pac-course-benefit,
body.pac-design-premium .pac-academy .pac-course-benefit {
    background: linear-gradient(180deg, #fff 0%, #fbfcff 100%);
}

body.pac-design-marketplace .pac-academy .pac-course-description,
body.pac-design-marketplace .pac-academy .pac-programme,
body.pac-design-marketplace .pac-academy .pac-course-sidebar__card,
body.pac-design-premium .pac-academy .pac-course-description,
body.pac-design-premium .pac-academy .pac-programme,
body.pac-design-premium .pac-academy .pac-course-sidebar__card {
    background: linear-gradient(180deg, #fff 0%, #fcfdff 100%);
}

/* Lesson/player */
body.pac-design-marketplace .pac-academy.pac-page-lesson,
body.pac-design-premium .pac-academy.pac-page-lesson {
    background:
        radial-gradient(circle at top right, rgba(86,36,208,.06), transparent 24%),
        linear-gradient(180deg, #f8f9fc 0%, #f1f4fa 100%);
}

body.pac-design-marketplace .pac-academy .pac-lesson__topbar,
body.pac-design-premium .pac-academy .pac-lesson__topbar {
    background: rgba(255,255,255,.92);
    border-bottom: 1px solid rgba(229,231,235,.88);
}

body.pac-design-marketplace .pac-academy .pac-lesson__main,
body.pac-design-premium .pac-academy .pac-lesson__main {
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,253,255,.95));
    border: 1px solid rgba(229,231,235,.92);
    box-shadow: 0 18px 44px rgba(15,23,42,.07);
}

/* Login / tunnel */
body.pac-design-marketplace .pac-academy.pac-page-login,
body.pac-design-premium .pac-academy.pac-page-login,
body.pac-design-marketplace .pac-academy .pac-tunnel,
body.pac-design-premium .pac-academy .pac-tunnel {
    background:
        radial-gradient(circle at top left, rgba(86,36,208,.10), transparent 24%),
        radial-gradient(circle at bottom right, rgba(237,27,47,.06), transparent 18%),
        linear-gradient(180deg, #f8f9fc 0%, #f0f3fa 100%);
}

body.pac-design-marketplace .pac-academy .pac-tunnel__card,
body.pac-design-marketplace .pac-academy .pac-login__card,
body.pac-design-marketplace .pac-academy .pac-auth-card,
body.pac-design-premium .pac-academy .pac-tunnel__card,
body.pac-design-premium .pac-academy .pac-login__card,
body.pac-design-premium .pac-academy .pac-auth-card {
    background: rgba(255,255,255,.95);
    border: 1px solid rgba(229,231,235,.92);
    box-shadow: 0 18px 42px rgba(15,23,42,.07);
}

/* Certificates / utility pages */
body.pac-design-marketplace .pac-academy .pac-certificates-hero__inner,
body.pac-design-premium .pac-academy .pac-certificates-hero__inner,
body.pac-design-marketplace .pac-academy .pac-certificate-card,
body.pac-design-premium .pac-academy .pac-certificate-card {
    background: linear-gradient(180deg, #fff 0%, #fcfdff 100%);
}

/* Generic card polish to strengthen the impression that the whole background changed */
body.pac-design-marketplace .pac-academy .pac-card,
body.pac-design-marketplace .pac-academy .pac-panel,
body.pac-design-marketplace .pac-academy .pac-box,
body.pac-design-premium .pac-academy .pac-card,
body.pac-design-premium .pac-academy .pac-panel,
body.pac-design-premium .pac-academy .pac-box {
    background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%);
    border: 1px solid rgba(229,231,235,.92);
    box-shadow: 0 12px 30px rgba(15,23,42,.055);
}

/* Buttons slightly closer to marketplace look */
body.pac-design-marketplace .pac-academy .pac-btn,
body.pac-design-premium .pac-academy .pac-btn {
    border-radius: 8px;
}

body.pac-design-marketplace .pac-academy .pac-btn-primary,
body.pac-design-premium .pac-academy .pac-btn-primary {
    box-shadow: 0 10px 22px rgba(86, 36, 208, .18);
}

body.pac-accent-purple .pac-academy .pac-btn-primary {
    background: #5624D0;
    border-color: #5624D0;
}

body.pac-accent-purple .pac-academy .pac-btn-primary:hover {
    background: #401B9C;
    border-color: #401B9C;
}

/* Mobile */
@media (max-width: 900px) {
    body.pac-design-marketplace .pac-academy .pac-page-dashboard > .pac-shell,
    body.pac-design-premium .pac-academy .pac-page-dashboard > .pac-shell,
    body.pac-design-marketplace .pac-academy .pac-page-catalog > .pac-shell,
    body.pac-design-premium .pac-academy .pac-page-catalog > .pac-shell,
    body.pac-design-marketplace .pac-academy .pac-page-course > .pac-shell,
    body.pac-design-premium .pac-academy .pac-page-course > .pac-shell {
        padding-bottom: 28px;
    }
}

@media (max-width: 640px) {
    body.pac-design-marketplace .pac-academy,
    body.pac-design-premium .pac-academy {
        background: linear-gradient(180deg, #f8f9fc 0%, #f1f4fa 100%);
    }

    body.pac-design-marketplace .pac-academy .pac-catalog-hero,
    body.pac-design-premium .pac-academy .pac-catalog-hero,
    body.pac-design-marketplace .pac-academy .pac-course-hero,
    body.pac-design-premium .pac-academy .pac-course-hero,
    body.pac-design-marketplace .pac-academy .pac-dash-welcome,
    body.pac-design-premium .pac-academy .pac-dash-welcome {
        background:
            radial-gradient(circle at 80% 18%, rgba(167,139,250,.18), transparent 18%),
            linear-gradient(135deg, #161a2c 0%, #1d2340 55%, #2b1450 100%);
    }
}


/* ================================================================
   1.0.31 — Typography correction
   User asked for FONT / police, not background/colors.
   Keep PERTICOM colors and improve professional futuristic typography.
   ================================================================ */

/* Keep PERTICOM color identity */
body .pac-academy {
    --pac-red: #ED1B2F;
    --pac-red-dark: #C81525;
    --pac-red-soft: #FEE2E5;
}

/* Override previous default purple accent when body class is not manually changed */
body.pac-accent-purple .pac-academy {
    --pac-red: #ED1B2F;
    --pac-red-dark: #C81525;
    --pac-red-soft: #FEE2E5;
}

/* Professional system stack close to modern AI/SaaS interfaces.
   No external font download, no conflict, fast rendering. */
body .pac-academy,
body .pac-academy input,
body .pac-academy select,
body .pac-academy textarea,
body .pac-academy button {
    font-family:
        "Söhne",
        "OpenAI Sans",
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        "Helvetica Neue",
        Arial,
        sans-serif !important;
    font-feature-settings: "cv02", "cv03", "cv04", "ss01";
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Cleaner, more premium headings */
body .pac-academy h1,
body .pac-academy h2,
body .pac-academy h3,
body .pac-academy h4,
body .pac-academy h5,
body .pac-academy h6,
body .pac-academy .pac-course-hero__title,
body .pac-academy .pac-dash-welcome__greeting,
body .pac-academy .pac-catalog-hero h1,
body .pac-academy .pac-lesson__header-title {
    font-family:
        "Söhne",
        "OpenAI Sans",
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Arial,
        sans-serif !important;
    font-weight: 760;
    letter-spacing: -0.045em;
    line-height: 1.04;
    text-wrap: balance;
}

/* Avoid the too-heavy Udemy-like huge title effect */
body .pac-academy h1,
body .pac-academy .pac-course-hero__title,
body .pac-academy .pac-catalog-hero h1 {
    font-weight: 780;
    letter-spacing: -0.055em;
}

body .pac-academy h2 {
    font-weight: 730;
    letter-spacing: -0.04em;
}

body .pac-academy h3 {
    font-weight: 700;
    letter-spacing: -0.025em;
}

/* More readable body text */
body .pac-academy p,
body .pac-academy li,
body .pac-academy .pac-course-hero__excerpt,
body .pac-academy .pac-course-description__content,
body .pac-academy .pac-lesson__body,
body .pac-academy .pac-course-card__excerpt {
    font-weight: 430;
    letter-spacing: -0.008em;
    line-height: 1.68;
}

/* Buttons and badges: cleaner SaaS feel */
body .pac-academy .pac-btn,
body .pac-academy a.pac-btn,
body .pac-academy button.pac-btn,
body .pac-academy .pac-badge,
body .pac-academy .pac-pill {
    font-weight: 650;
    letter-spacing: -0.012em;
}

/* UI labels */
body .pac-academy .pac-kicker,
body .pac-academy .pac-course-hero__breadcrumb,
body .pac-academy .pac-course-card__kicker,
body .pac-academy .pac-module__title small,
body .pac-academy .pac-lesson__sidebar-kicker {
    font-weight: 700;
    letter-spacing: 0.075em;
}

/* Softer title sizes, more premium and less aggressive */
body .pac-academy .pac-course-hero__title {
    font-size: clamp(34px, 4.2vw, 56px) !important;
}

body .pac-academy .pac-catalog-hero h1 {
    font-size: clamp(32px, 4vw, 52px) !important;
}

body .pac-academy .pac-dash-welcome__greeting {
    font-size: clamp(30px, 3.8vw, 48px) !important;
}

/* Keep colors red even when previous purple button override exists */
body.pac-accent-purple .pac-academy .pac-btn-primary,
body.pac-accent-purple .pac-academy a.pac-btn-primary,
body.pac-accent-purple .pac-academy button.pac-btn-primary {
    background: #ED1B2F !important;
    border-color: #ED1B2F !important;
}

body.pac-accent-purple .pac-academy .pac-btn-primary:hover,
body.pac-accent-purple .pac-academy a.pac-btn-primary:hover,
body.pac-accent-purple .pac-academy button.pac-btn-primary:hover {
    background: #C81525 !important;
    border-color: #C81525 !important;
}

/* Make the interface less "blocky" and more clean */
body .pac-academy .pac-course-card__title,
body .pac-academy .pac-dash-course__title,
body .pac-academy .pac-module__title,
body .pac-academy .pac-course-sidebar__price {
    font-weight: 720;
    letter-spacing: -0.035em;
}

body .pac-academy .pac-course-sidebar__price {
    font-size: clamp(28px, 3vw, 36px);
}


/* ================================================================
   1.0.32 — Readability & hierarchy fix
   Improve contrast on dark sections + reduce oversized lesson headings.
   ================================================================ */

/* ---------- DARK HERO READABILITY ---------- */
body .pac-academy .pac-catalog-hero__kicker,
body .pac-academy .pac-catalog-hero h1,
body .pac-academy .pac-catalog-hero h1 strong,
body .pac-academy .pac-catalog-hero__sub {
    color: #ffffff !important;
}

body .pac-academy .pac-catalog-hero__sub {
    opacity: .88;
}

body .pac-academy .pac-catalog-stats {
    border-top-color: rgba(255,255,255,.26) !important;
}

body .pac-academy .pac-catalog-stat {
    color: rgba(255,255,255,.82) !important;
}

body .pac-academy .pac-catalog-stat strong {
    color: #ffffff !important;
}

body .pac-academy .pac-catalog-hero .pac-catalog-stat strong {
    text-shadow: 0 1px 1px rgba(0,0,0,.12);
}

/* Same idea on other dark hero sections */
body .pac-academy .pac-course-hero__excerpt,
body .pac-academy .pac-dash-welcome__sub {
    color: rgba(255,255,255,.84);
}

body.pac-hero-light .pac-academy .pac-course-hero__excerpt {
    color: var(--pac-text-soft);
}

/* ---------- LESSON TYPOGRAPHY ---------- */
/* Lesson page main header: smaller and cleaner */
body .pac-academy .pac-lesson__header-title {
    font-size: clamp(22px, 2.2vw, 30px) !important;
    line-height: 1.14 !important;
    font-weight: 760 !important;
    letter-spacing: -0.035em !important;
}

/* Lesson content headings: reduce large title effect */
body .pac-academy .pac-page-lesson .pac-lesson__body h1 {
    font-size: clamp(30px, 3.2vw, 40px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.045em !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}

body .pac-academy .pac-page-lesson .pac-lesson__body h2 {
    font-size: clamp(24px, 2.5vw, 32px) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.038em !important;
    font-weight: 750 !important;
    margin-top: 30px !important;
    margin-bottom: 12px !important;
}

body .pac-academy .pac-page-lesson .pac-lesson__body h3 {
    font-size: clamp(19px, 2vw, 24px) !important;
    line-height: 1.24 !important;
    letter-spacing: -0.024em !important;
    font-weight: 720 !important;
    margin-top: 24px !important;
    margin-bottom: 10px !important;
}

body .pac-academy .pac-page-lesson .pac-lesson__body h4 {
    font-size: clamp(17px, 1.6vw, 20px) !important;
    line-height: 1.3 !important;
    letter-spacing: -0.015em !important;
    font-weight: 700 !important;
}

/* Improve reading rhythm */
body .pac-academy .pac-page-lesson .pac-lesson__body p,
body .pac-academy .pac-page-lesson .pac-lesson__body li {
    font-size: 15.8px;
    line-height: 1.8;
}

body .pac-academy .pac-page-lesson .pac-lesson__body ul,
body .pac-academy .pac-page-lesson .pac-lesson__body ol {
    margin-top: 10px;
    margin-bottom: 18px;
}

/* Sidebar hierarchy cleaner */
body .pac-academy .pac-lesson__sidebar-module-title {
    font-size: 12px;
    letter-spacing: 0.08em;
}

body .pac-academy .pac-lesson__sidebar-lesson {
    font-size: 14px;
    line-height: 1.35;
}

/* General “don’t overscale” guard on content sections */
body .pac-academy .pac-course-description h2,
body .pac-academy .pac-programme__head h2,
body .pac-academy .pac-section h2 {
    font-size: clamp(24px, 2.6vw, 32px);
    line-height: 1.14;
}

/* Mobile */
@media (max-width: 640px) {
    body .pac-academy .pac-catalog-hero h1 {
        font-size: clamp(30px, 9vw, 40px) !important;
    }

    body .pac-academy .pac-page-lesson .pac-lesson__body h1 {
        font-size: clamp(28px, 8vw, 34px) !important;
    }

    body .pac-academy .pac-page-lesson .pac-lesson__body h2 {
        font-size: clamp(22px, 6.5vw, 28px) !important;
    }
}


/* ================================================================
   1.0.33 — Elegant typography weight correction
   Less heavy/bold headings. Trust text impact, not visual volume.
   ================================================================ */

/* Global heading weight reset */
body .pac-academy h1,
body .pac-academy h2,
body .pac-academy h3,
body .pac-academy h4,
body .pac-academy h5,
body .pac-academy h6 {
    font-weight: 620 !important;
    letter-spacing: -0.032em !important;
    text-wrap: balance;
}

body .pac-academy h1 {
    font-weight: 650 !important;
    letter-spacing: -0.045em !important;
}

body .pac-academy h2 {
    font-weight: 630 !important;
    letter-spacing: -0.036em !important;
}

body .pac-academy h3 {
    font-weight: 610 !important;
    letter-spacing: -0.026em !important;
}

body .pac-academy h4,
body .pac-academy h5,
body .pac-academy h6 {
    font-weight: 600 !important;
    letter-spacing: -0.018em !important;
}

/* Main hero titles */
body .pac-academy .pac-course-hero__title,
body .pac-academy .pac-catalog-hero h1,
body .pac-academy .pac-dash-welcome__greeting,
body .pac-academy .pac-lesson__header-title {
    font-weight: 650 !important;
    letter-spacing: -0.045em !important;
}

/* Avoid “massive block” feeling */
body .pac-academy .pac-course-hero__title {
    font-size: clamp(32px, 4vw, 52px) !important;
    line-height: 1.08 !important;
}

body .pac-academy .pac-catalog-hero h1 {
    font-size: clamp(30px, 3.8vw, 48px) !important;
    line-height: 1.1 !important;
}

body .pac-academy .pac-dash-welcome__greeting {
    font-size: clamp(28px, 3.5vw, 44px) !important;
    line-height: 1.1 !important;
}

body .pac-academy .pac-lesson__header-title {
    font-size: clamp(21px, 2.1vw, 28px) !important;
    font-weight: 620 !important;
    line-height: 1.18 !important;
}

/* Lesson content headings */
body .pac-academy .pac-page-lesson .pac-lesson__body h1 {
    font-size: clamp(28px, 3vw, 36px) !important;
    font-weight: 640 !important;
    line-height: 1.12 !important;
}

body .pac-academy .pac-page-lesson .pac-lesson__body h2 {
    font-size: clamp(22px, 2.3vw, 29px) !important;
    font-weight: 620 !important;
    line-height: 1.2 !important;
}

body .pac-academy .pac-page-lesson .pac-lesson__body h3 {
    font-size: clamp(18px, 1.8vw, 23px) !important;
    font-weight: 600 !important;
    line-height: 1.28 !important;
}

/* Card / module / sidebar titles */
body .pac-academy .pac-course-card__title,
body .pac-academy .pac-dash-course__title,
body .pac-academy .pac-module__title,
body .pac-academy .pac-course-sidebar__price,
body .pac-academy .pac-programme__head h2,
body .pac-academy .pac-course-description h2,
body .pac-academy .pac-dash-section__title,
body .pac-academy .pac-catalog-section__title,
body .pac-academy .pac-lesson__sidebar-title,
body .pac-academy .pac-lesson__nav-title {
    font-weight: 620 !important;
    letter-spacing: -0.028em !important;
}

/* Labels should be precise, not loud */
body .pac-academy .pac-kicker,
body .pac-academy .pac-course-card__kicker,
body .pac-academy .pac-lesson__header-kicker,
body .pac-academy .pac-lesson__sidebar-kicker,
body .pac-academy .pac-lesson__sidebar-module-title,
body .pac-academy .pac-module__title small,
body .pac-academy .pac-lesson__nav-label {
    font-weight: 620 !important;
    letter-spacing: 0.055em !important;
}

/* Buttons/badges: less aggressive */
body .pac-academy .pac-btn,
body .pac-academy a.pac-btn,
body .pac-academy button.pac-btn,
body .pac-academy .pac-badge,
body .pac-academy .pac-pill {
    font-weight: 600 !important;
    letter-spacing: -0.006em !important;
}

/* Body text remains confident and readable */
body .pac-academy p,
body .pac-academy li,
body .pac-academy .pac-course-hero__excerpt,
body .pac-academy .pac-catalog-hero__sub,
body .pac-academy .pac-course-description__content,
body .pac-academy .pac-lesson__body {
    font-weight: 400 !important;
}

/* Prevent old 800/900 rules from visually dominating */
body .pac-academy strong {
    font-weight: 600;
}

body .pac-academy .pac-catalog-stat strong,
body .pac-academy .pac-dash-kpi__value,
body .pac-academy .pac-course-sidebar__price {
    font-weight: 640 !important;
}

/* Mobile: keep hierarchy compact */
@media (max-width: 640px) {
    body .pac-academy .pac-course-hero__title,
    body .pac-academy .pac-catalog-hero h1 {
        font-size: clamp(28px, 8vw, 38px) !important;
    }

    body .pac-academy .pac-page-lesson .pac-lesson__body h1 {
        font-size: clamp(26px, 7.4vw, 32px) !important;
    }

    body .pac-academy .pac-page-lesson .pac-lesson__body h2 {
        font-size: clamp(21px, 6vw, 26px) !important;
    }
}
