@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@600;700;800;900&family=Plus+Jakarta+Sans:wght@600;700;800;900&display=swap');

/* ==========================================================================
   Quick Art Photography Academy — On-Campus Luxury Programs Theme
   Matching 100% with the Online Programs Obsidian Dark Luxury Aesthetic
   ========================================================================== */

:root {
  --lp-bg: #0a0b0e;
  --lp-card: #12141b;
  --lp-card-hover: #181b24;
  --lp-card-border: rgba(216, 161, 83, 0.18);
  --lp-gold: #d8a153;
  --lp-gold-light: #f6d389;
  --lp-gold-glow: rgba(216, 161, 83, 0.25);
  --lp-text: #f1f5f9;
  --lp-text-muted: #94a3b8;
  --lp-text-dim: #64748b;
  --lp-gradient-gold: linear-gradient(135deg, #d8a153 0%, #f6d389 100%);
  --lp-gradient-gold-hover: linear-gradient(135deg, #c89244 0%, #eec06e 100%);
}

/* ── Global Dark Theme & Smooth Transitions ── */
body,
body:has(.qa-texture-hero),
body:has(.qa-topics-hero),
body:has(.qa-master-hero),
body.bg-\[\#FAFAFA\] {
    background-color: #0a0b0e !important;
    color: #f1f5f9 !important;
}

/* ── Breadcrumb Bar Polish ── */
.qa-breadcrumb {
    background: #080a0f !important;
    border-bottom: 1px solid rgba(216, 161, 83, 0.14) !important;
    padding: 14px 0 !important;
}

.qa-breadcrumb .container {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #94a3b8;
    font-size: 13.5px;
}

.qa-breadcrumb a {
    color: #d8a153 !important;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.qa-breadcrumb a:hover {
    color: #f5c879 !important;
    text-decoration: underline;
}

.qa-breadcrumb span:not([aria-hidden]) {
    color: #f1f5f9;
    font-weight: 600;
}

/* ── Hero Back Link Fix ── */
.qa-texture-hero a[href*="index.html"]:not([class*="bg-gold"]):not([class*="lp-btn"]),
.qa-topics-hero a[href*="index.html"]:not([class*="bg-gold"]):not([class*="lp-btn"]),
.qa-back-link {
    color: rgba(255, 255, 255, 0.85) !important;
    font-weight: 500;
    font-size: 13.5px;
    padding: 8px 18px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(216, 161, 83, 0.22);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.25s ease;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.qa-texture-hero a[href*="index.html"]:not([class*="bg-gold"]):not([class*="lp-btn"]):hover,
.qa-topics-hero a[href*="index.html"]:not([class*="bg-gold"]):not([class*="lp-btn"]):hover,
.qa-back-link:hover {
    color: #f5c879 !important;
    background: rgba(216, 161, 83, 0.16);
    border-color: rgba(216, 161, 83, 0.5);
    transform: translateX(-3px);
}

.qa-texture-hero a[href*="index.html"] svg,
.qa-back-link svg {
    color: currentColor !important;
}

/* ── Hero Badge Tag ── */
.qa-texture-hero .text-gold-300,
.qa-topics-hero .text-gold-300 {
    color: #f5c879 !important;
    text-shadow: 0 0 16px rgba(245, 200, 121, 0.35);
}

/* ── Hero Stats KPI Cards ── */
.qa-texture-hero .glass-dark,
.qa-topics-hero .glass-dark {
    background: linear-gradient(135deg, rgba(22, 26, 38, 0.92), rgba(12, 14, 22, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.24) !important;
    border-radius: 18px !important;
    padding: 16px 18px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease, box-shadow 0.25s ease;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.qa-texture-hero .glass-dark:hover,
.qa-topics-hero .glass-dark:hover {
    transform: translateY(-3px);
    border-color: rgba(216, 161, 83, 0.5) !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55), 0 0 25px rgba(216, 161, 83, 0.15) !important;
}

.qa-texture-hero .glass-dark .font-heading,
.qa-topics-hero .glass-dark .font-heading {
    background: linear-gradient(135deg, #fce0a2 0%, #d8a153 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 22px;
    font-weight: 800;
}

/* ── Hero Section Main Heading (Bold, Large & Cinematic — 100% Matching Homepage Style) ── */
.qa-texture-hero h1,
.qa-topics-hero h1,
.qa-master-hero h1,
section.qa-texture-hero h1,
section.qa-topics-hero h1,
section.qa-master-hero h1,
main > section.relative.bg-ink h1,
.qa-texture-hero .max-w-3xl h1,
.qa-texture-hero .max-w-4xl h1,
.qa-texture-hero .lg\:col-span-7 h1,
.qa-master-hero-grid h1 {
    font-family: 'Outfit', 'Plus Jakarta Sans', var(--font-heading, "Inter", sans-serif) !important;
    font-size: clamp(48px, 5.2vw, 68px) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.035em !important;
    color: #ffffff !important;
    text-wrap: balance !important;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Allow breathing room on desktop so large heading isn't cramped */
.qa-texture-hero .max-w-3xl {
    max-width: 54rem !important;
}

/* Spans inside Hero Headings — Matching Homepage Fiery Gradient & Glow */
.qa-texture-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
.qa-topics-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
.qa-master-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
section.qa-texture-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
section.qa-topics-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
section.qa-master-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
main > section.relative.bg-ink h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
.qa-texture-hero h1 .text-gold-gradient,
.qa-topics-hero h1 .text-gold-gradient,
.qa-master-hero h1 .qa-heading-gradient {
    font-family: 'Outfit', 'Plus Jakarta Sans', var(--font-heading, "Inter", sans-serif) !important;
    font-weight: 800 !important;
    display: inline-block !important;
    background: linear-gradient(135deg, #FFF5CC 0%, #F5C869 35%, #D99026 70%, #F5CE7B 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    filter: none !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    letter-spacing: -0.015em !important;
    -webkit-font-smoothing: antialiased !important;
}

@media (max-width: 1023px) {
    .qa-texture-hero h1,
    .qa-topics-hero h1,
    .qa-master-hero h1,
    section.qa-texture-hero h1,
    section.qa-topics-hero h1,
    section.qa-master-hero h1,
    main > section.relative.bg-ink h1,
    .qa-texture-hero .max-w-3xl h1,
    .qa-texture-hero .max-w-4xl h1,
    .qa-master-hero-grid h1 {
        font-size: clamp(42px, 6vw, 54px) !important;
        font-weight: 900 !important;
        line-height: 1.06 !important;
        letter-spacing: -0.028em !important;
    }
}

/* ── Campus High-Trust Strip ── */
.qa-campus-trust-strip {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
    padding: 12px 18px;
    background: rgba(216, 161, 83, 0.08);
    border: 1px solid rgba(216, 161, 83, 0.25);
    border-radius: 14px;
    font-size: 13px;
    color: #cbd5e1;
    backdrop-filter: blur(8px);
}

.qa-campus-trust-strip span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

/* ── Campus Topic Note Bar ── */
.qa-topic-note,
.qa-fee-note {
    background: linear-gradient(90deg, rgba(216, 161, 83, 0.08) 0%, rgba(18, 20, 27, 0.95) 50%, rgba(216, 161, 83, 0.08) 100%) !important;
    border: 1px solid rgba(216, 161, 83, 0.28) !important;
    border-radius: 14px !important;
    color: #cbd5e1 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    padding: 16px 24px !important;
    margin: 24px auto !important;
    max-width: 1200px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    text-align: center;
}

.qa-topic-note a,
.qa-fee-note a {
    color: #f5c879 !important;
    font-weight: 700;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.qa-topic-note a:hover,
.qa-fee-note a:hover {
    color: #ffffff !important;
}

/* ── Universal Section Background Overhaul (Obsidian Dark Luxury) ── */
main > section,
main > section.bg-\[\#FAFAFA\],
main > section.bg-white,
section.qa-section.qa-light,
section.qa-section#curriculum,
section.qa-topics-feedback {
    background: #0a0b0e !important;
    color: #f1f5f9 !important;
    border-top: 1px solid rgba(216, 161, 83, 0.12) !important;
}

/* Alternate slight contrast for reading rhythm */
main > section:nth-of-type(even) {
    background: #0e1017 !important;
}

/* Headings in content sections */
main > section h1,
main > section h2,
main > section h3,
main > section h4,
main > section h5,
section.qa-section h1,
section.qa-section h2,
section.qa-section h3,
section.qa-section h4 {
    color: #ffffff !important;
}

/* Floating call button icon protection: ensure call button icon is always visible */
.qa-float-call,
.fixed.bottom-5.right-5 a[aria-label="Call Us"],
a.qa-float-call {
    background-color: #ffffff !important;
    color: #111827 !important;
}
.qa-float-call svg,
.fixed.bottom-5.right-5 a[aria-label="Call Us"] svg,
a.qa-float-call svg {
    stroke: #111827 !important;
    color: #111827 !important;
    display: block !important;
}
.qa-float-call:hover,
.fixed.bottom-5.right-5 a[aria-label="Call Us"]:hover,
a.qa-float-call:hover {
    background-color: #f59e0b !important;
    color: #000000 !important;
}
.qa-float-call:hover svg,
.fixed.bottom-5.right-5 a[aria-label="Call Us"]:hover svg,
a.qa-float-call:hover svg {
    stroke: #000000 !important;
    color: #000000 !important;
}

/* Universal high-contrast text fix for obsidian dark backgrounds */
main > section p,
section.qa-section p,
.qa-intro,
.qa-week > div p,
main > section .text-slate-200 {
    color: #e2e8f0 !important;
    line-height: 1.68 !important;
}

main > section [class*="text-black/"],
main > section .text-black,
section.qa-section [class*="text-black/"],
section.qa-section .text-black,
.qa-topics-page [class*="text-black/"],
.qa-master-hero [class*="text-black/"],
.mc-mentor-stats [class*="text-black/"],
#testimonials [class*="text-black/"],
#book [class*="text-black/"],
.text-white\/70,
.text-white\/80 {
    color: #cbd5e1 !important;
}

.text-white\/50,
.text-white\/55,
.text-white\/60 {
    color: #94a3b8 !important;
}

/* Universal Kicker & Eyebrows gold color */
.qa-kicker,
.qa-eyebrow,
.mc-bonus-kicker,
.mc-reviews-kicker {
    color: #d8a153 !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    font-size: 11.5px !important;
}

/* Universal Intro paragraph readable color */
.qa-intro {
    color: #e2e8f0 !important;
    font-size: 16.5px !important;
    line-height: 1.7 !important;
}

.qa-intro a {
    color: #f5c879 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    transition: color 0.2s ease;
}

.qa-intro a:hover {
    color: #ffffff !important;
}

/* ── "What You'll Master", Mentor Stats, Roadmaps & All Feature Cards ── */
.lg\:col-span-2 > .flex.items-start,
.qa-highlight-card,
.group.relative.rounded-3xl.bg-white,
.rounded-3xl.bg-white,
.rounded-2xl.bg-white,
.rounded-3xl.p-6.bg-\[\#FAFAFA\],
.rounded-2xl.bg-\[\#FAFAFA\],
.mc-mentor-stats > div,
.qa-road-card {
    background: linear-gradient(135deg, rgba(22, 26, 38, 0.9), rgba(12, 14, 22, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.lg\:col-span-2 > .flex.items-start:hover,
.qa-highlight-card:hover,
.group.relative.rounded-3xl.bg-white:hover,
.rounded-3xl.bg-white:hover,
.rounded-2xl.bg-white:hover,
.mc-mentor-stats > div:hover,
.qa-road-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(216, 161, 83, 0.48) !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55), 0 0 25px rgba(216, 161, 83, 0.15) !important;
}

/* ── AI Wedding Filmmaking Roadmap Cards ── */
.qa-road-card {
    padding: 26px !important;
}

.qa-road-card h3 {
    color: #ffffff !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    margin-bottom: 14px !important;
}

.qa-road-card ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.qa-road-card li {
    position: relative !important;
    padding-left: 20px !important;
    color: #94a3b8 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.qa-road-card li::before {
    content: '•' !important;
    position: absolute !important;
    left: 2px !important;
    top: -1px !important;
    color: #d8a153 !important;
    font-size: 18px !important;
}

.lg\:col-span-2 > .flex.items-start .text-ink,
.qa-highlight-card .text-ink {
    color: #f8fafc !important;
    font-weight: 600 !important;
    font-size: 15px !important;
}

.lg\:col-span-2 > .flex.items-start .bg-gold-gradient,
.rounded-2xl.bg-gold-gradient {
    background: linear-gradient(135deg, #f5c879, #d8a153) !important;
    box-shadow: 0 0 16px rgba(216, 161, 83, 0.4) !important;
}

/* Left Student Count Card */
.lg\:grid-cols-3 > div:first-child .bg-white {
    background: linear-gradient(135deg, rgba(24, 28, 42, 0.92), rgba(13, 16, 25, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.25) !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4) !important;
}

.lg\:grid-cols-3 > div:first-child .text-black\/70 {
    color: #cbd5e1 !important;
    font-weight: 500;
}

/* ── Section Kickers / Eyebrows ── */
.bg-gold-50 {
    background: rgba(216, 161, 83, 0.12) !important;
    border-color: rgba(216, 161, 83, 0.35) !important;
    color: #f5c879 !important;
}

.text-gold-700,
.text-gold-600 {
    color: #f5c879 !important;
}

/* ── Curriculum Section (#curriculum) Overhaul ── */
.qa-section#curriculum {
    background: #06080d !important;
    padding: 80px 0 !important;
    position: relative;
}

.qa-section#curriculum::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at center top, rgba(216, 161, 83, 0.1), transparent 70%);
    pointer-events: none;
}

.qa-section#curriculum .qa-kicker {
    color: #d8a153 !important;
    font-weight: 700;
    letter-spacing: 0.18em;
    font-size: 11.5px;
}

.qa-section#curriculum h2 {
    color: #ffffff !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    font-weight: 800 !important;
    margin: 10px 0 16px;
    letter-spacing: -0.025em;
}

.qa-section#curriculum .qa-intro {
    color: #94a3b8 !important;
    font-size: 16px;
    max-width: 650px;
    margin-bottom: 40px;
}

.qa-week-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-width: 900px;
    margin: 0 auto;
}

.qa-week {
    background: linear-gradient(135deg, rgba(20, 24, 36, 0.9), rgba(12, 14, 22, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    border-radius: 16px !important;
    overflow: hidden;
    transition: all 0.25s ease !important;
}

.qa-week:hover {
    border-color: rgba(216, 161, 83, 0.45) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
}

.qa-week summary {
    padding: 18px 24px !important;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    user-select: none;
    list-style: none;
    background: transparent !important;
    transition: background 0.2s ease;
}

.qa-week summary::-webkit-details-marker {
    display: none;
}

.qa-week summary span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(216, 161, 83, 0.15) !important;
    color: #f5c879 !important;
    border: 1px solid rgba(216, 161, 83, 0.35);
    border-radius: 8px;
    padding: 4px 11px;
    font-size: 11px !important;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.qa-week summary strong {
    color: #ffffff !important;
    font-size: 16.5px !important;
    font-weight: 700 !important;
    flex: 1;
    text-align: left;
}

.qa-week summary b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #d8a153;
    font-size: 18px;
    font-weight: 300;
    transition: all 0.25s ease;
}

.qa-week[open] summary b {
    transform: rotate(45deg);
    background: rgba(216, 161, 83, 0.25);
    color: #f5c879;
    border-color: rgba(216, 161, 83, 0.45);
}

.qa-week[open] {
    border-color: rgba(216, 161, 83, 0.5) !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.5), 0 0 25px rgba(216, 161, 83, 0.12) !important;
}

.qa-week[open] summary {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.qa-week > div {
    padding: 22px 24px !important;
    background: rgba(10, 12, 18, 0.75) !important;
    color: #cbd5e1 !important;
}

.qa-week > div p {
    color: #e2e8f0;
    font-size: 14.5px;
    margin-bottom: 14px;
    font-weight: 500;
}

.qa-week > div ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.qa-week > div li {
    position: relative;
    padding-left: 22px;
    font-size: 14px !important;
    color: #94a3b8;
    line-height: 1.55;
}

.qa-week > div li::before {
    content: '';
    position: absolute;
    left: 4px;
    top: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d8a153;
    box-shadow: 0 0 8px #d8a153;
}

/* ── Tools & Career Outcomes Section ── */
.grid.md\:grid-cols-2 > div.rounded-3xl:first-child,
.grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    height: 100% !important;
}

.grid.md\:grid-cols-2 > div.rounded-3xl:first-child {
    background: radial-gradient(ellipse at top left, rgba(216, 161, 83, 0.15), transparent 60%),
                linear-gradient(135deg, rgba(24, 28, 42, 0.95), rgba(13, 16, 25, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.28) !important;
    border-radius: 24px !important;
    padding: 32px !important;
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.45) !important;
}

.grid.md\:grid-cols-2 > div.rounded-3xl:first-child h3 {
    color: #ffffff !important;
}

.grid.md\:grid-cols-2 > div.rounded-3xl:first-child span.rounded-full {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    color: #f1f5f9 !important;
    padding: 8px 18px !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    transition: all 0.2s ease;
}

.grid.md\:grid-cols-2 > div.rounded-3xl:first-child span.rounded-full:hover {
    border-color: rgba(216, 161, 83, 0.5) !important;
    background: rgba(216, 161, 83, 0.16) !important;
    color: #f5c879 !important;
    transform: translateY(-2px);
}

/* Career Outcomes Box */
.grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink {
    background: radial-gradient(ellipse at top right, rgba(216, 161, 83, 0.2), transparent 60%),
                linear-gradient(135deg, #131622 0%, #090a10 100%) !important;
    border: 1px solid rgba(216, 161, 83, 0.32) !important;
    border-radius: 24px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink li {
    font-size: 14.5px !important;
    color: #f1f5f9 !important;
    font-weight: 500;
}

.grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink li svg {
    color: #f5c879 !important;
    filter: drop-shadow(0 0 6px rgba(245, 200, 121, 0.4));
}

/* ── Bottom CTA Callout Banner (Clean single container, no inner box) ── */
.rounded-\[36px\].bg-ink {
    background: radial-gradient(ellipse at top right, rgba(216, 161, 83, 0.28), transparent 65%),
                linear-gradient(135deg, #141824 0%, #080a0f 100%) !important;
    border: 1px solid rgba(216, 161, 83, 0.35) !important;
    border-radius: 32px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.6), 0 0 45px rgba(216, 161, 83, 0.12) !important;
}

.rounded-\[36px\].bg-ink .grid > div:first-child {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    display: block !important;
}

.rounded-\[36px\].bg-ink .flex-col,
.rounded-\[36px\].bg-ink .grid > div:last-child {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 16px !important;
    width: 100% !important;
}

.rounded-\[36px\].bg-ink .lp-btn-primary,
.rounded-\[36px\].bg-ink .lp-btn-secondary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 24px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    border-radius: 14px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    gap: 8px !important;
}

.rounded-\[36px\].bg-ink .lp-btn-primary {
    background: linear-gradient(135deg, #f5c879 0%, #d8a153 55%, #bd863a 100%) !important;
    color: #0b0c10 !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    box-shadow: 0 8px 22px rgba(216, 161, 83, 0.35) !important;
}

.rounded-\[36px\].bg-ink .lp-btn-primary:hover {
    background: linear-gradient(135deg, #fae0a2 0%, #dfad5e 55%, #c89243 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 28px rgba(216, 161, 83, 0.5) !important;
}

.rounded-\[36px\].bg-ink .lp-btn-secondary {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    border: 1px solid rgba(216, 161, 83, 0.35) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    box-shadow: none !important;
}

.rounded-\[36px\].bg-ink .lp-btn-secondary:hover {
    background: rgba(216, 161, 83, 0.16) !important;
    border-color: rgba(216, 161, 83, 0.65) !important;
    color: #f5c879 !important;
    transform: translateY(-2px) !important;
}

.rounded-\[36px\].bg-ink .lp-btn-primary svg,
.rounded-\[36px\].bg-ink .lp-btn-secondary svg {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.rounded-\[36px\].bg-ink h3 {
    color: #ffffff !important;
}

/* ── "Other Courses You Might Love" Cards ── */
.grid.md\:grid-cols-2 > a.group.rounded-3xl {
    background: linear-gradient(135deg, rgba(22, 26, 38, 0.9), rgba(12, 14, 22, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.2) !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.35) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.grid.md\:grid-cols-2 > a.group.rounded-3xl:hover {
    transform: translateY(-5px) !important;
    border-color: rgba(216, 161, 83, 0.5) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5), 0 0 25px rgba(216, 161, 83, 0.15) !important;
}

.grid.md\:grid-cols-2 > a.group.rounded-3xl .p-6 {
    background: transparent !important;
}

.grid.md\:grid-cols-2 > a.group.rounded-3xl .text-ink {
    color: #ffffff !important;
    font-size: 20px !important;
}

.grid.md\:grid-cols-2 > a.group.rounded-3xl .text-black\/60 {
    color: #94a3b8 !important;
}

/* ── All Course Topics Catalog Hub (courses/index.html) ── */
.qa-topics-page .grid > a.group {
    background: linear-gradient(135deg, rgba(22, 26, 38, 0.92), rgba(12, 14, 22, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.4) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.qa-topics-page .grid > a.group:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(216, 161, 83, 0.55) !important;
    box-shadow: 0 25px 65px rgba(0, 0, 0, 0.55), 0 0 35px rgba(216, 161, 83, 0.2) !important;
}

.qa-topics-page .grid > a.group h3.text-white {
    color: #ffffff !important;
    font-size: 22px !important;
    letter-spacing: -0.02em;
}

.qa-topics-page .grid > a.group .p-6 {
    background: transparent !important;
}

.qa-topics-page .grid > a.group .text-black\/55,
.qa-topics-page .grid > a.group .text-black\/60,
.qa-topics-page .grid > a.group .text-black\/70 {
    color: #94a3b8 !important;
}

.qa-topics-page .grid > a.group .text-ink {
    color: #ffffff !important;
}

.qa-topics-page .grid > a.group .bg-gold-50 {
    background: rgba(216, 161, 83, 0.14) !important;
    border: 1px solid rgba(216, 161, 83, 0.35) !important;
    color: #f5c879 !important;
}

/* "Why Us" 4 Pillars */
.qa-topics-page .rounded-3xl.p-6.bg-\[\#FAFAFA\] {
    background: linear-gradient(135deg, rgba(24, 28, 42, 0.88), rgba(13, 15, 24, 0.96)) !important;
    border: 1px solid rgba(216, 161, 83, 0.2) !important;
    border-radius: 22px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.25s ease;
}

.qa-topics-page .rounded-3xl.p-6.bg-\[\#FAFAFA\]:hover {
    transform: translateY(-3px);
    border-color: rgba(216, 161, 83, 0.45) !important;
}

.qa-topics-page .rounded-3xl.p-6.bg-\[\#FAFAFA\] .text-ink {
    color: #ffffff !important;
}

.qa-topics-page .rounded-3xl.p-6.bg-\[\#FAFAFA\] .text-black\/60 {
    color: #94a3b8 !important;
}

/* Student Feedback in courses/index.html */
.qa-topics-feedback {
    background: #06080d !important;
    padding: 80px 0 !important;
}

.qa-topics-feedback .qa-eyebrow {
    color: #d8a153 !important;
    font-weight: 700;
    letter-spacing: 0.18em;
    font-size: 11px;
}

.qa-topics-feedback h2 {
    color: #ffffff !important;
    font-size: clamp(28px, 4vw, 40px) !important;
    margin-bottom: 36px;
}

.qa-feedback-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}

.qa-feedback-grid blockquote {
    background: linear-gradient(135deg, rgba(24, 28, 42, 0.88), rgba(13, 15, 24, 0.96)) !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    border-radius: 20px !important;
    padding: 26px !important;
    color: #e2e8f0 !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35) !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.qa-feedback-grid blockquote p {
    font-size: 15px;
    line-height: 1.65;
    color: #cbd5e1;
    font-style: normal;
}

.qa-feedback-grid blockquote footer {
    color: #f5c879 !important;
    font-weight: 700;
    font-size: 14px;
    margin-top: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.qa-feedback-grid blockquote footer::before {
    content: '★★★★★';
    color: #f5c879;
    letter-spacing: 2px;
}

/* ==========================================================================
   FLAGSHIP MASTER CLASS (master-class/index.html) LUXURY OBSIDIAN OVERHAUL
   ========================================================================== */
.qa-master-hero .lg\:col-span-2 > div.bg-white,
.qa-master-hero .qa-master-form {
    background: linear-gradient(135deg, rgba(20, 24, 35, 0.96), rgba(11, 13, 20, 0.99)) !important;
    border: 1px solid rgba(216, 161, 83, 0.3) !important;
    box-shadow: 0 25px 65px rgba(0, 0, 0, 0.7), 0 0 35px rgba(216, 161, 83, 0.12) !important;
    color: #f1f5f9 !important;
}

.qa-master-hero .lg\:col-span-2 > div.bg-white h3 {
    color: #ffffff !important;
}

.qa-master-hero .lg\:col-span-2 > div.bg-white p {
    color: #94a3b8 !important;
}

.qa-master-hero .qa-enquiry {
    background: transparent !important;
}

.qa-master-hero .qa-enquiry h2,
.qa-master-hero .qa-enquiry label {
    color: #f1f5f9 !important;
}

.qa-master-hero .qa-enquiry .qa-kicker {
    color: #f6d389 !important;
}

.qa-master-hero .qa-enquiry :is(input, select, textarea) {
    background: #090a0f !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
}

.qa-master-hero .qa-enquiry :is(input, select, textarea):focus {
    border-color: #d8a153 !important;
    box-shadow: 0 0 0 3px rgba(216, 161, 83, 0.25) !important;
}

.qa-master-hero .qa-enquiry .qa-consent {
    color: #94a3b8 !important;
}

/* Masterclass Bonuses Section Dark Theme */
.mc-bonuses {
    background: #0a0b0e !important;
    color: #f1f5f9 !important;
    border-top: 1px solid rgba(216, 161, 83, 0.12) !important;
}

.mc-bonuses::before {
    background: linear-gradient(90deg, transparent, rgba(216, 161, 83, 0.4), transparent) !important;
}

.mc-bonus-kicker {
    background: rgba(216, 161, 83, 0.12) !important;
    color: #f6d389 !important;
    border-color: rgba(216, 161, 83, 0.35) !important;
}

.mc-bonus-intro h2 {
    color: #ffffff !important;
}

.mc-bonus-intro > p {
    color: #94a3b8 !important;
}

.mc-price {
    background: linear-gradient(135deg, rgba(20, 24, 35, 0.95), rgba(11, 13, 20, 0.98)) !important;
    border: 1px solid rgba(216, 161, 83, 0.28) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5) !important;
}

.mc-price-row strong {
    color: #ffffff !important;
}

.mc-price-row del {
    color: #64748b !important;
}

.mc-price p {
    color: #34d399 !important;
}

.mc-price a {
    background: linear-gradient(135deg, #f5c879 0%, #d8a153 55%, #bd863a 100%) !important;
    color: #0b0c10 !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 24px rgba(216, 161, 83, 0.35) !important;
    transition: all 0.25s ease !important;
}

.mc-price a:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px rgba(216, 161, 83, 0.5) !important;
}

.mc-bonus-card {
    background: linear-gradient(135deg, rgba(24, 28, 42, 0.88), rgba(13, 16, 25, 0.96)) !important;
    border: 1px solid rgba(216, 161, 83, 0.2) !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35) !important;
    transition: all 0.25s ease !important;
}

.mc-bonus-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(216, 161, 83, 0.48) !important;
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.5), 0 0 20px rgba(216, 161, 83, 0.12) !important;
}

.mc-bonus-card h3 {
    color: #ffffff !important;
}

.mc-bonus-card p {
    color: #94a3b8 !important;
}

.mc-bonus-value del {
    color: #64748b !important;
}

.mc-bonus-value strong {
    color: #34d399 !important;
}

/* Masterclass Reviews Section Dark Theme */
.mc-reviews {
    background: #07090e !important;
    color: #f1f5f9 !important;
    border-top: 1px solid rgba(216, 161, 83, 0.12) !important;
}

.mc-reviews-heading h2 {
    color: #ffffff !important;
}

.mc-reviews-heading > p {
    color: #94a3b8 !important;
}

.mc-reviews-kicker {
    background: rgba(216, 161, 83, 0.12) !important;
    color: #f6d389 !important;
    border-color: rgba(216, 161, 83, 0.35) !important;
}

.mc-review-card,
.mc-review-card:nth-child(2) {
    background: linear-gradient(135deg, rgba(24, 28, 42, 0.88), rgba(13, 16, 25, 0.96)) !important;
    border: 1px solid rgba(216, 161, 83, 0.2) !important;
    border-radius: 22px !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4) !important;
    transition: all 0.25s ease !important;
}

.mc-review-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(216, 161, 83, 0.5) !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55), 0 0 25px rgba(216, 161, 83, 0.14) !important;
}

.mc-review-card blockquote {
    color: #cbd5e1 !important;
}

.mc-review-author {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mc-review-author h3 {
    color: #ffffff !important;
}

.mc-review-author p {
    color: #94a3b8 !important;
}

/* ==========================================================================
   BUTTON STYLES & TOUCH TARGETS (MATCHING ONLINE LANDING PAGES)
   ========================================================================== */
.lp-btn-primary,
a[class*="bg-gold-gradient"],
button.qa-demo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 14px 28px !important;
    background: linear-gradient(135deg, #f5c879 0%, #d8a153 55%, #bd863a 100%) !important;
    color: #0b0c10 !important;
    font-weight: 700 !important;
    font-size: 15.5px !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    box-shadow: 0 10px 25px -5px rgba(216, 161, 83, 0.4) !important;
    transition: all 0.25s ease !important;
    cursor: pointer !important;
}

.lp-btn-primary:hover,
a[class*="bg-gold-gradient"]:hover,
button.qa-demo:hover {
    background: linear-gradient(135deg, #fae0a2 0%, #dfad5e 55%, #c89243 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 14px 30px -5px rgba(216, 161, 83, 0.55) !important;
}

.lp-btn-secondary,
a[class*="border-white\/25"],
a[class*="bg-white\/5"],
a[class*="bg-white\/10"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 14px 24px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    transition: all 0.2s ease !important;
}

.lp-btn-secondary:hover,
a[class*="border-white\/25"]:hover,
a[class*="bg-white\/5"]:hover,
a[class*="bg-white\/10"]:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(216, 161, 83, 0.5) !important;
    color: #f6d389 !important;
    transform: translateY(-2px) !important;
}

/* ── #book Lead Generation Card & Form Fix ── */
#book .rounded-3xl.bg-white {
    background: linear-gradient(135deg, rgba(20, 24, 35, 0.96), rgba(11, 13, 20, 0.99)) !important;
    border: 1px solid rgba(216, 161, 83, 0.3) !important;
    box-shadow: 0 25px 65px rgba(0, 0, 0, 0.7), 0 0 35px rgba(216, 161, 83, 0.12) !important;
    color: #f1f5f9 !important;
}

#book .text-ink {
    color: #ffffff !important;
}

#book .text-black\/55 {
    color: #94a3b8 !important;
}

#book form.qa-enquiry .qa-field label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #f1f5f9 !important;
    margin-bottom: 6px !important;
}

#book form.qa-enquiry :is(input, select, textarea) {
    width: 100% !important;
    height: 48px !important;
    padding: 0 14px !important;
    font-size: 14.5px !important;
    color: #ffffff !important;
    background: #090a0f !important;
    border: 1px solid rgba(216, 161, 83, 0.22) !important;
    border-radius: 12px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#book form.qa-enquiry textarea {
    height: auto !important;
    min-height: 80px !important;
    padding: 12px 14px !important;
}

#book form.qa-enquiry :is(input, select, textarea):focus {
    border-color: #d8a153 !important;
    box-shadow: 0 0 0 3px rgba(216, 161, 83, 0.25) !important;
    outline: none !important;
}

#book form.qa-enquiry label.qa-consent {
    color: #94a3b8 !important;
    font-size: 12.5px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
}

/* ==========================================================================
   COMPREHENSIVE ON-CAMPUS MOBILE RESPONSIVENESS (≤ 768px & ≤ 480px)
   ========================================================================== */

@media (max-width: 768px) {
    /* Section Pacing & Breathing Room */
    main > section,
    section.qa-section,
    section.qa-section#curriculum,
    section.qa-section.qa-light,
    section.course-structure-section,
    section.mc-bonuses,
    section.mc-reviews,
    section.bg-\[\#FAFAFA\],
    section.bg-white {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .qa-texture-hero:not(.qa-master-hero),
    .qa-topics-hero {
        padding-top: 36px !important;
        padding-bottom: 44px !important;
    }

    /* On-Campus Course Pages — Mobile Hero Main Heading (Ultra Bold, Noticeably Large, Cinematic) */
    .qa-texture-hero h1,
    .qa-topics-hero h1,
    .qa-master-hero h1,
    section.qa-texture-hero h1,
    section.qa-topics-hero h1,
    main > section.relative.bg-ink h1,
    .qa-texture-hero .max-w-3xl h1,
    .qa-texture-hero .max-w-4xl h1,
    .qa-texture-hero .lg\:col-span-7 h1,
    .qa-master-hero-grid h1 {
        font-size: clamp(40px, 9.5vw, 54px) !important;
        font-weight: 900 !important;
        line-height: 1.04 !important;
        letter-spacing: -0.03em !important;
        color: #ffffff !important;
        text-wrap: balance !important;
        margin-top: 16px !important;
        margin-bottom: 16px !important;
        -webkit-text-stroke: 0.4px rgba(255, 255, 255, 0.4) !important;
        text-shadow: 0 4px 28px rgba(0, 0, 0, 0.7) !important;
        -webkit-font-smoothing: antialiased !important;
    }

    .qa-texture-hero h1 span,
    .qa-topics-hero h1 span,
    .qa-master-hero h1 span,
    section.qa-texture-hero h1 span,
    section.qa-topics-hero h1 span,
    main > section.relative.bg-ink h1 span {
        font-weight: 900 !important;
        -webkit-text-stroke: 0.4px rgba(255, 255, 255, 0.4) !important;
    }

    main > section h2,
    section.qa-section h2,
    .qa-topics-feedback h2,
    .course-structure-section h2,
    .mc-bonus-intro h2,
    .mc-reviews-heading h2 {
        font-size: clamp(24px, 6vw, 32px) !important;
        line-height: 1.2 !important;
        letter-spacing: -0.02em !important;
    }

    main > section h3,
    section.qa-section h3 {
        font-size: clamp(20px, 5vw, 25px) !important;
        line-height: 1.25 !important;
    }

    .qa-texture-hero p,
    .qa-topics-hero p {
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

    /* Hero Buttons — Full-Width Tap Friendly */
    .qa-texture-hero .flex.flex-wrap.gap-3,
    .qa-topics-hero .flex.flex-wrap.gap-3,
    .qa-master-hero .flex.flex-wrap.gap-3 {
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .qa-texture-hero .lp-btn-primary,
    .qa-texture-hero .lp-btn-secondary,
    .qa-topics-hero .lp-btn-primary,
    .qa-topics-hero .lp-btn-secondary,
    .qa-master-hero .lp-btn-primary,
    .qa-master-hero .lp-btn-secondary {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 13px 20px !important;
        font-size: 14.5px !important;
        box-sizing: border-box !important;
    }

    /* Campus Trust Strip — Sleek 2x2 Grid on Mobile */
    .qa-campus-trust-strip {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 12px 14px !important;
        margin-top: 18px !important;
        font-size: 11.5px !important;
        border-radius: 12px !important;
    }

    .qa-campus-trust-strip span {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        white-space: normal !important;
        line-height: 1.35 !important;
    }

    /* Hero 4 KPI Cards — Compact & Symmetrical */
    .qa-texture-hero .grid.grid-cols-2,
    .qa-topics-hero .grid.grid-cols-2 {
        gap: 8px !important;
        margin-top: 24px !important;
    }

    .qa-texture-hero .glass-dark,
    .qa-topics-hero .glass-dark {
        padding: 12px 10px !important;
        text-align: center !important;
        border-radius: 14px !important;
    }

    .qa-texture-hero .glass-dark .font-heading,
    .qa-topics-hero .glass-dark .font-heading {
        font-size: 17px !important;
        line-height: 1.2 !important;
    }

    .qa-texture-hero .glass-dark div:last-child,
    .qa-topics-hero .glass-dark div:last-child {
        font-size: 9.5px !important;
        letter-spacing: 0.05em !important;
    }

    /* "What You'll Master" Grid & Cards */
    .lg\:col-span-2.grid.sm\:grid-cols-2 {
        gap: 8px !important;
    }

    .lg\:col-span-2 > .flex.items-start {
        padding: 13px 14px !important;
        border-radius: 14px !important;
    }

    .lg\:col-span-2 > .flex.items-start .text-ink {
        font-size: 13.5px !important;
    }

    /* Curriculum Accordion (album-design, video-editing, masterclass) */
    .qa-week-list {
        gap: 10px !important;
    }

    .qa-week {
        border-radius: 14px !important;
    }

    .qa-week summary {
        padding: 12px 14px !important;
        gap: 10px !important;
    }

    .qa-week summary span {
        padding: 3px 8px !important;
        font-size: 10px !important;
        border-radius: 6px !important;
    }

    .qa-week summary strong {
        font-size: 14px !important;
        line-height: 1.35 !important;
    }

    .qa-week summary b {
        width: 24px !important;
        height: 24px !important;
        font-size: 15px !important;
        flex-shrink: 0 !important;
    }

    .qa-week > div {
        padding: 16px 14px !important;
    }

    .qa-week > div p {
        font-size: 13.5px !important;
        margin-bottom: 10px !important;
    }

    .qa-week > div li {
        font-size: 13px !important;
        padding-left: 18px !important;
        line-height: 1.5 !important;
    }

    /* AI Wedding Filmmaking Roadmap */
    .qa-roadmap {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .qa-road-card {
        padding: 20px 18px !important;
        border-radius: 16px !important;
    }

    /* Tools & Career Outcomes */
    .grid.md\:grid-cols-2 {
        gap: 16px !important;
    }

    .grid.md\:grid-cols-2 > div.rounded-3xl:first-child,
    .grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink {
        padding: 20px 16px !important;
        border-radius: 18px !important;
    }

    .grid.md\:grid-cols-2 > div.rounded-3xl:first-child span.rounded-full {
        padding: 6px 12px !important;
        font-size: 12px !important;
    }

    .grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink ul.grid-cols-2 {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .grid.md\:grid-cols-2 > div.rounded-3xl.bg-ink li {
        font-size: 13.5px !important;
    }

    /* Bottom Demo Class CTA Card */
    .rounded-\[36px\].bg-ink {
        padding: 26px 18px !important;
        border-radius: 22px !important;
    }

    .rounded-\[36px\].bg-ink .grid > div:first-child {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        display: block !important;
    }

    .rounded-\[36px\].bg-ink .flex-col,
    .rounded-\[36px\].bg-ink .grid > div:last-child {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 12px !important;
    }

    .rounded-\[36px\].bg-ink .lp-btn-primary,
    .rounded-\[36px\].bg-ink .lp-btn-secondary {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
    }

    /* "Other Courses You Might Love" */
    .grid.md\:grid-cols-2 > a.group.rounded-3xl {
        border-radius: 18px !important;
    }

    .grid.md\:grid-cols-2 > a.group.rounded-3xl .p-6 {
        padding: 16px !important;
    }

    .grid.md\:grid-cols-2 > a.group.rounded-3xl .text-ink {
        font-size: 17px !important;
    }

    /* Catalog Page (courses/index.html) */
    .qa-topics-page .grid > a.group {
        border-radius: 20px !important;
    }

    .qa-topics-page .grid > a.group .p-6 {
        padding: 18px 16px !important;
    }

    .qa-topics-page .grid > a.group h3.text-white {
        font-size: 19px !important;
    }

    .qa-feedback-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .qa-feedback-grid blockquote {
        padding: 18px !important;
        border-radius: 16px !important;
    }

    /* Master Class Specific Mobile Rules */
    .mc-bonuses .mc-bonus-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .mc-bonus-card {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    .mc-price {
        padding: 20px 16px !important;
        border-radius: 16px !important;
    }

    .mc-mentor-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    .mc-mentor-stats > div {
        padding: 10px 4px !important;
        text-align: center !important;
        border-radius: 12px !important;
    }

    .mc-mentor-stats > div .font-heading {
        font-size: 16px !important;
    }

    .mc-mentor-stats > div .text-xs {
        font-size: 10px !important;
    }

    #book .rounded-3xl.bg-white {
        padding: 20px 16px !important;
        border-radius: 20px !important;
    }

    #book form.qa-enquiry {
        grid-template-columns: 1fr !important;
    }

    #book form.qa-enquiry .qa-field,
    #book form.qa-enquiry .qa-consent,
    #book form.qa-enquiry .qa-demo {
        grid-column: span 1 !important;
    }
}

@media (max-width: 480px) {
    .qa-texture-hero h1,
    .qa-topics-hero h1,
    .qa-master-hero h1,
    section.qa-texture-hero h1,
    section.qa-topics-hero h1,
    section.qa-master-hero h1,
    main > section.relative.bg-ink h1,
    .qa-texture-hero .max-w-3xl h1,
    .qa-texture-hero .max-w-4xl h1,
    .qa-master-hero-grid h1,
    main > section.relative.bg-ink .qa-master-hero-grid > div:first-child h1 {
        font-family: 'Outfit', 'Plus Jakarta Sans', var(--font-heading, "Inter", sans-serif) !important;
        font-size: clamp(38px, 11.8vw, 52px) !important;
        font-weight: 900 !important;
        line-height: 1.04 !important;
        letter-spacing: -0.035em !important;
        color: #ffffff !important;
        text-wrap: balance !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .qa-texture-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    .qa-topics-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    .qa-master-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    section.qa-texture-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    section.qa-topics-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    section.qa-master-hero h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    main > section.relative.bg-ink h1 span:not(.mc-ai-heading):not(.mc-master-white):not(.mc-desktop-title):not(.mc-mobile-title):not(.mc-mob-line1):not(.mc-mob-line2):not(.mc-mob-line3),
    .qa-master-hero h1 .qa-heading-gradient {
        font-weight: 800 !important;
        background: linear-gradient(135deg, #FFF5CC 0%, #F5C869 35%, #D99026 70%, #F5CE7B 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        color: transparent !important;
        filter: none !important;
        text-shadow: none !important;
        -webkit-text-stroke: 0 !important;
        letter-spacing: -0.015em !important;
    }
}

@media (max-width: 375px) {
    .qa-texture-hero h1,
    .qa-topics-hero h1,
    .qa-master-hero h1,
    section.qa-texture-hero h1,
    section.qa-topics-hero h1,
    section.qa-master-hero h1,
    main > section.relative.bg-ink h1,
    .qa-texture-hero .max-w-3xl h1,
    .qa-texture-hero .max-w-4xl h1,
    .qa-master-hero-grid h1,
    main > section.relative.bg-ink .qa-master-hero-grid > div:first-child h1 {
        font-family: 'Outfit', 'Plus Jakarta Sans', var(--font-heading, "Inter", sans-serif) !important;
        font-size: clamp(36px, 11.5vw, 46px) !important;
        font-weight: 900 !important;
        line-height: 1.05 !important;
        letter-spacing: -0.035em !important;
        color: #ffffff !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .qa-campus-trust-strip {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
    }

    .qa-week summary {
        padding: 11px 12px !important;
    }

    .qa-week summary strong {
        font-size: 13.5px !important;
    }
}

/* Universal Footer Brand: Keep "Quick Art" strictly on a single line */
.qa-footer .qa-brand,
.qa-brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}

.qa-footer .qa-brand img,
.qa-brand img {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain !important;
}

.qa-footer .qa-brand > span,
.qa-brand > span {
    display: block !important;
    white-space: nowrap !important;
    line-height: 1.15 !important;
}

.qa-footer .qa-brand > span b,
.qa-brand > span b {
    display: inline !important;
    color: #d7ac59 !important;
}

.qa-footer .qa-brand > span small,
.qa-brand > span small,
.qa-brand > span > small {
    display: block !important;
    font-size: 8.5px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    color: #94a3b8 !important;
    margin-top: 3px !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

/* ====================================================================
   MASTER CLASS PAGE — Mobile H1 Override
   These rules MUST stay at the bottom (loaded after generic hero rules).
   They downsize the headline on phone screens for readability.
   ==================================================================== */
@media (max-width: 480px) {
    body:has(.qa-master-hero) main > section.relative.bg-ink .qa-master-hero-grid > div:first-child h1,
    body:has(.qa-master-hero) .qa-master-hero-grid h1,
    body:has(.qa-master-hero) .qa-master-hero h1 {
        font-size: clamp(26px, 7.5vw, 36px) !important;
        font-weight: 800 !important;
        line-height: 1.12 !important;
        letter-spacing: -0.025em !important;
        text-wrap: balance !important;
    }
}

@media (max-width: 375px) {
    body:has(.qa-master-hero) main > section.relative.bg-ink .qa-master-hero-grid > div:first-child h1,
    body:has(.qa-master-hero) .qa-master-hero-grid h1,
    body:has(.qa-master-hero) .qa-master-hero h1 {
        font-size: clamp(22px, 6.8vw, 30px) !important;
        font-weight: 800 !important;
        line-height: 1.14 !important;
        letter-spacing: -0.02em !important;
    }
}
