/* Public typography and layout refinements, shared across all ten routes. */
h1, h2, h3, h4, button, .button, label, summary { letter-spacing: 0; }
h1, h2, h3, h4 { font-family: "Poppins", Arial, sans-serif; font-weight: 500; overflow-wrap: break-word; }
.nav.qcl-responsive-nav { position: fixed; }
h1.editorial-hero-title, .subpage-hero h1, .qcl-home-hero h1, .aqcc-video-hero h1, .section-head h2, .lead-intake h3, .qfl-course-detail-band .lead-intake h3, .course-detail-head h3, .deep-program-card h3 { font-weight: 500; }
h1, .subpage-hero h1, .qcl-home-hero h1, .aqcc-video-hero h1 { font-size: 68px; line-height: 1.1; }
h2, .section-head h2, .story-sticky h2, .cms-live-panel .section-head h2, .qfl-course-detail-band .section-head h2 { font-size: 42px; line-height: 1.18; }
h3, .cms-card h3, .catalog-card h3 { font-size: 24px; line-height: 1.28; }
.lead-intake h3, .book-intake h3, .form-panel h3 { font-size: 28px; line-height: 1.25; margin: 12px 0 24px; }
.course-detail h3, .course-detail h2, .story-chapter h3 { font-size: 28px; line-height: 1.26; }
.lead, .editorial-subtitle, .qcl-home-hero .lead { font-size: 20px; line-height: 1.7; }
.section-copy, .course-section p, .syllabus-list, .audience-list { font-size: 17px; line-height: 1.75; }
.button { font-weight: 500; line-height: 1.45; min-height: 46px; white-space: normal; text-align: center; }
.hero-actions { gap: 12px; row-gap: 14px; }
.media-frame img { display: block; height: auto; }
.media-frame img[width][height] { aspect-ratio: auto; }
.section-head { align-items: start; gap: 48px; margin-bottom: 40px; }
.section-head > *, .course-detail-head > *, .form-grid-2 > *, .form-grid-3 > * { min-width: 0; }
.decision-route { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.decision-route .content { padding: 0; }
.course-section { padding: 20px; border: 0; background: transparent; }
.course-section h4 { margin-bottom: 16px; }
.course-detail-body { gap: 24px; }
.course-detail-body .syllabus-list li, .course-detail-body .audience-list li { margin-bottom: 9px; }
.field label { font-family: "Poppins", Arial, sans-serif; font-size: 12px; font-weight: 500; line-height: 1.45; margin-bottom: 8px; }
.field input, .field select, .field textarea { font-size: 16px; min-height: 48px; line-height: 1.45; }
.intake-form, .form-grid-2, .form-grid-3 { gap: 18px; }
.aqcc-invitation-band { color: #172b35; background: #f4f7f6; }
.aqcc-invitation-band .section-copy, .aqcc-invitation-band p, .aqcc-influence-line { color: #465d63; }
.aqcc-invitation-band .eyebrow { color: #387566; }
.aqcc-invitation-band .aqcc-format-tags { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin: 36px 0; }
.aqcc-format-tags > a { padding: 24px 0; border: 0; border-top: 3px solid #087b96; background: transparent; color: #465d63; font-size: 16px; }
.aqcc-format-tags > a:nth-child(2) { border-top-color: #9b7022; }
.aqcc-format-tags > a:nth-child(3) { border-top-color: #287e62; }
.aqcc-format-tags > a strong { display: block; margin-bottom: 12px; color: #172b35; font-family: "Poppins", Arial, sans-serif; font-size: 26px; line-height: 1.2; font-weight: 500; }
.aqcc-format-tags > a:hover strong { color: #007d98; }
.aqcc-invitation-band .tile { color: #465d63; background: #fff; border-color: #d6e2df; }
.aqcc-invitation-band .tile strong { color: #276757; }
.aqcc-invitation-band .button { color: #172b35; border-color: #a5b8b8; }
.aqcc-invitation-band .button.primary { background: #11c8ec; border-color: #11c8ec; }
.aqcc-invitation-band .button.gold { background: #f2e5ca; }
.aqcc-program-group-head h3 { font-size: 30px; }
.aqcc-program-card h3, .aqcc-workshop-card h3 { font-size: 23px; line-height: 1.3; }
.aqcc-program-card, .aqcc-workshop-card { padding: 26px; }
.aqcc-hero-content { max-width: 1180px; }
.aqcc-video-hero h1 { max-width: 960px; }
.aqcc-video-hero .lead { max-width: 760px; }
.aqcc-hero-facts { gap: 18px 28px; }
.aqcc-hero-facts span { line-height: 1.5; }
.aqcc-video-hero { min-height: 0; padding-bottom: 56px; }
.billing-panel summary { font-family: "Poppins", Arial, sans-serif; font-size: 14px; font-weight: 500; cursor: pointer; padding: 4px 0; }
.billing-panel[open] summary { margin-bottom: 18px; }

@media (max-width: 1060px) {
  .course-page-grid { grid-template-columns: minmax(0, 1fr); }
  .course-page-grid > * { min-width: 0; width: 100%; }
}

@media (max-width: 960px) {
  h1, .subpage-hero h1, .qcl-home-hero h1, .aqcc-video-hero h1, .editorial-hero-title { font-size: 50px; }
  h2, .section-head h2, .story-sticky h2, .cms-live-panel .section-head h2, .qfl-course-detail-band .section-head h2 { font-size: 36px; }
  .section-head { gap: 28px; }
}
@media (max-width: 640px) {
  h1, .subpage-hero h1, .qcl-home-hero h1, .aqcc-video-hero h1, .editorial-hero-title { font-size: 38px; line-height: 1.15; }
  h2, .section-head h2, .story-sticky h2, .cms-live-panel .section-head h2, .qfl-course-detail-band .section-head h2 { font-size: 30px; }
  h3, .cms-card h3, .catalog-card h3, .course-detail h3, .course-detail h2, .story-chapter h3 { font-size: 23px; }
  .lead-intake h3, .book-intake h3, .form-panel h3 { font-size: 25px; }
  .lead, .editorial-subtitle, .qcl-home-hero .lead { font-size: 18px; }
  .section-copy, .course-section p, .syllabus-list, .audience-list { font-size: 16px; }
  .section-head { grid-template-columns: minmax(0, 1fr); gap: 20px; margin-bottom: 28px; }
  .aqcc-invitation-band .aqcc-format-tags { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .aqcc-format-tags > a { padding: 20px 0; }
  .aqcc-format-tags > a strong { font-size: 24px; }
  .course-section { padding: 8px 0; }
  .aqcc-program-card, .aqcc-workshop-card { padding: 20px; }
  .aqcc-program-card h3, .aqcc-workshop-card h3 { font-size: 22px; }
  .aqcc-video-hero { padding-bottom: 40px; }
  .aqcc-video-hero .hero-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aqcc-video-hero .aqcc-trailer-button { grid-column: 1 / -1; background: transparent; border: 0; text-decoration: underline; text-underline-offset: 4px; min-height: 38px; }
  .aqcc-hero-facts span:nth-child(2), .aqcc-hero-facts span:nth-child(3) { display: none; }
}
@media (max-width: 360px) {
  .aqcc-video-hero h1 { font-size: 34px; }
}

/* Editorial system: clear hierarchy, open section layouts and compact catalogs. */
.qcl-refined { --deep: #101b20; --night: #15252a; --muted: #c3d1d1; --gold: #dfb768; }
.qcl-refined .shell { width: min(1240px, calc(100% - 64px)); }
.qcl-refined section:not(.hero) { padding: 80px 0; }
.qcl-refined .light { background: #f8faf9; color: #15292d; }
.qcl-refined .track-band { background: #13282d; }
.qcl-refined .light.track-band { background: #f8faf9; }
.qcl-refined .eyebrow { margin-bottom: 16px; line-height: 1.6; }
.qcl-refined .section-head h2 { max-width: 680px; font-size: 38px; line-height: 1.2; }
.qcl-refined .section-head { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 64px; margin-bottom: 40px; }
.qcl-refined .section-copy { max-width: 620px; line-height: 1.8; }
.qcl-refined p { text-wrap: pretty; }
.qcl-refined h1, .qcl-refined h2, .qcl-refined h3 { text-wrap: balance; }
.qcl-refined .button { min-height: 46px; font-size: 13px; border-radius: 4px; padding: 12px 18px; cursor: pointer; }
.qcl-refined .light .button:not(.primary):not(.gold) { color: #1a4248; background: transparent; border-color: #9eb6b8; }
.qcl-refined .light .button.gold { color: #614910; background: #fbf7ed; border-color: #cab27d; }
.qcl-refined .button:focus-visible, .qcl-refined a:focus-visible, .qcl-refined summary:focus-visible,
.qcl-refined input:focus-visible, .qcl-refined select:focus-visible, .qcl-refined textarea:focus-visible {
  outline: 3px solid #00a9c9; outline-offset: 4px;
}
.qcl-refined .button:disabled { cursor: wait; opacity: .65; }
.skip-link { position: fixed; top: 12px; left: 16px; z-index: 120; padding: 12px 20px; background: #fff; color: #102a30; transform: translateY(-180%); font-family: "Poppins", Arial, sans-serif; }
.skip-link:focus { transform: translateY(0); }
.qcl-refined .nav { background: #0d191deF; backdrop-filter: blur(12px); }
.qcl-refined .nav-inner { min-height: 76px; }
.qcl-refined .brand { min-width: 150px; }
.qcl-refined .nav-links { gap: 20px; font-size: 12px; font-weight: 500; }
.qcl-refined .nav-links a { padding: 12px 0; }
.qcl-refined .nav-links .nav-action { padding: 10px 16px; border: 1px solid #60d4df; color: #a6f0f5; border-radius: 4px; }
.qcl-refined .qcl-utility-bar { background: #080f12; }
.qcl-refined .qcl-utility-contact { font-weight: 400; }
.qcl-refined .qcl-language-switcher button { min-height: 38px; padding: 8px 12px; }
.qcl-refined .qcl-language-switcher button.is-active { background: #20383b; }
.qcl-refined .qcl-home-hero, .qcl-refined .qfl-landing-hero,
.qcl-refined .qfl-course-hero, .qcl-refined .qka-hero, .qcl-refined .partnerships-hero {
  min-height: 0; padding-top: calc(var(--qcl-header-height) + 72px); padding-bottom: 72px;
}
.qcl-refined .qcl-home-hero h1, .qcl-refined .qfl-landing-hero h1,
.qcl-refined .qka-hero h1, .qcl-refined .partnerships-hero h1 { font-size: 64px; max-width: 880px; }
.qcl-refined .qfl-course-hero .hero-grid { grid-template-columns: minmax(0, 900px); justify-content: start; text-align: left; }
.qcl-refined .qfl-course-hero .editorial-hero-title { margin: 0; font-size: 64px; line-height: 1.1; }
.qcl-refined .qfl-course-hero .editorial-subtitle, .qcl-refined .qfl-course-hero .editorial-date { margin-left: 0; }
.qcl-refined .qfl-course-hero .hero-actions { justify-content: start; }
.qcl-refined .qfl-course-hero::after { background: linear-gradient(90deg, rgba(6,17,24,.93), rgba(6,17,24,.4)); }
.qcl-refined .division-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.qcl-refined .division-card, .qcl-refined .light .division-card { border: 0; border-top: 2px solid #197b80; border-radius: 0; background: transparent; box-shadow: none; overflow: visible; }
.qcl-refined .division-card:nth-child(2) { border-color: #287558; }
.qcl-refined .division-card:nth-child(3) { border-color: #a4586d; }
.qcl-refined .division-card:nth-child(4) { border-color: #a77f39; }
.qcl-refined .division-card .logo-image { height: 92px; width: 100%; object-fit: contain; object-position: left center; background: #0b151b; padding: 20px; margin-top: 24px; border-radius: 4px; }
.qcl-refined .division-card .content { padding: 24px 0 0; }
.qcl-refined .division-card h3 { font-size: 22px; }
.qcl-refined .division-card p { font-size: 15px; line-height: 1.75; }
.qcl-refined .decision-grid { gap: 32px; }
.qcl-refined .decision-route { border: 0; border-radius: 0; border-top: 1px solid #adbfbd; background: transparent; padding: 24px 0 0; box-shadow: none; }
.qcl-refined .story-shell { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 72px; }
.qcl-refined .qcl-scroll-story { background: #13282d; }
.qcl-refined .story-sticky { position: static; min-height: 0; align-content: start; }
.qcl-refined .story-sticky img { width: 160px; }
.qcl-refined .story-chapter { min-height: 0; padding: 24px 0; border: 0; border-top: 1px solid #49605f; border-radius: 0; background: transparent; }
.qcl-refined .story-chapter h3 { font-size: 24px; margin-top: 8px; }
.qcl-refined .story-chapter p { font-size: 16px; margin-top: 12px; }
.qcl-refined .metric-row { gap: 32px; }
.qcl-refined .metric, .qcl-refined .light .metric { padding: 20px 0; border: 0; border-top: 1px solid #aabfbb; border-radius: 0; background: transparent; box-shadow: none; }
.qcl-refined .program-flow { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.qcl-refined .program-flow .tile { padding: 22px 0 0; border: 0; border-top: 1px solid #b4c9c6; border-radius: 0; background: transparent; }
.qcl-refined .program-flow .tile strong { font: 500 22px/1.3 "Poppins", Arial, sans-serif; color: #226958; }
.qcl-refined .program-flow .tile p { font-size: 15px; line-height: 1.75; }
.qcl-refined .aqcc-invitation-band { background: #f1f7f4; }
.qcl-refined .aqcc-invitation-band .section-head h2 { font-size: 38px; }
.qcl-refined .aqcc-format-tags { margin-top: 28px; }
.qcl-refined .aqcc-format-tags > a { border-radius: 0; }
.qcl-refined .aqcc-format-tags span { display: block; padding: 0; border: 0; background: transparent; color: #465d63; font-size: 15px; line-height: 1.65; }
.qcl-refined .aqcc-master-program { border-top: 1px solid #d3dedb; }
.qcl-refined .aqcc-program-grid, .qcl-refined .aqcc-workshop-grid, .qcl-refined .deep-program-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 24px; }
.qcl-refined .aqcc-program-card, .qcl-refined .aqcc-workshop-card, .qcl-refined .deep-program-card {
  background: #fff; color: #1b3438; border: 1px solid #cddbd7; border-radius: 6px; padding: 28px; box-shadow: none;
}
.qcl-refined .aqcc-program-card h3, .qcl-refined .aqcc-workshop-card h3, .qcl-refined .deep-program-card h3 { color: #142c32; font-size: 24px; line-height: 1.35; }
.qcl-refined .aqcc-program-meta, .qcl-refined .aqcc-program-track, .qcl-refined .aqcc-program-group-head p,
.qcl-refined .aqcc-program-card p, .qcl-refined .aqcc-workshop-card p, .qcl-refined .deep-program-card p,
.qcl-refined .aqcc-topic-list, .qcl-refined .aqcc-detail-grid { color: #4a6567; }
.qcl-refined .aqcc-program-track { font-size: 11px; line-height: 1.7; margin: 16px 0 10px; }
.qcl-refined .aqcc-program-meta { font-size: 12px; gap: 10px 16px; flex-wrap: wrap; }
.qcl-refined .aqcc-program-meta .tag { color: #286b5e; }
.qcl-refined .aqcc-program-card details, .qcl-refined .aqcc-workshop-card details, .qcl-refined .program-details {
  border: 0; border-top: 1px solid #d4dfda; border-radius: 0; background: transparent; margin-top: 24px; padding: 0;
}
.qcl-refined details summary { padding: 16px 0; cursor: pointer; color: #216756; font: 500 13px/1.6 "Poppins", Arial, sans-serif; }
.qcl-refined details[open] summary { margin-bottom: 12px; }
.qcl-refined .program-details-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
.qcl-refined .program-details-grid > div { padding: 0; border: 0; background: transparent; }
.qcl-refined .aqcc-output { display: block; background: transparent; border: 0; border-left: 2px solid #6d9e8e; border-radius: 0; padding: 4px 0 4px 16px; margin: 20px 0; color: #4a6567; }
.qcl-refined .aqcc-output strong { display: block; color: #236253; margin-bottom: 8px; }
.qcl-refined .deep-program-card .catalog-specs { grid-template-columns: repeat(2, minmax(0, 1fr)); border-block: 1px solid #d4dfda; padding: 14px 0; margin-top: 24px; gap: 16px; }
.qcl-refined .deep-program-card .catalog-specs span { min-height: 0; padding: 0; border: 0; background: transparent; color: #465f60; }
.qcl-refined .deep-program-card .catalog-specs strong { color: #183f45; }
.qcl-refined .deep-program-card .course-actions { margin-top: 12px; padding-top: 8px; display: flex; flex-wrap: wrap; gap: 12px; }
.qcl-refined .deep-program-card .course-actions .button { min-width: 0; flex: 1 1 145px; font-size: 12px; }
.qcl-refined .deep-program-card .course-actions .button:last-child { background: transparent; border-color: transparent; color: #246653; flex-basis: 100%; min-height: 36px; padding: 8px; }
.qcl-refined .catalog-filter, .qcl-refined .filter-chip { border: 1px solid #bdccca; background: transparent; color: #31575b; border-radius: 4px; min-height: 44px; padding: 10px 16px; font-size: 12px; cursor: pointer; }
.qcl-refined .catalog-filter.is-active, .qcl-refined .filter-chip.is-active { background: #183f43; color: #fff; border-color: #183f43; }
.qcl-refined .catalog-filter-group { gap: 8px; flex-wrap: wrap; }
.qcl-refined .catalog-filter-group > span { color: #31575b; }
.qcl-refined .catalog-state, .qcl-refined [data-aqcc-program-state] { color: #476566; font: 400 13px/1.7 "Poppins", Arial, sans-serif; margin: 20px 0 28px; }
.catalog-search { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; margin: 28px 0 20px; }
.catalog-search label { flex: 1 1 260px; display: grid; gap: 8px; color: #254e51; font: 500 12px/1.6 "Poppins", Arial, sans-serif; }
.catalog-search input { width: 100%; min-height: 48px; border: 1px solid #aabfbb; border-radius: 4px; padding: 12px 16px; background: #fff; color: #17343a; font: 400 16px/1.5 "Poppins", Arial, sans-serif; }
.catalog-search button { min-height: 48px; border: 1px solid #aabfbb; border-radius: 4px; background: transparent; padding: 12px 16px; color: #254e51; cursor: pointer; font-family: "Poppins", Arial, sans-serif; }
.qcl-refined .qfl-program-map { background: #eaf3ee; }
.qcl-refined .qfl-course-facts { padding: 36px 0; }
.qfl-facts-strip .signal-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin: 0; }
.qfl-facts-strip .signal-list li { color: #476566; border: 0; padding: 0; font-size: 14px; }
.qfl-facts-strip .signal-list strong { color: #1a4a4f; margin-bottom: 12px; }
.qcl-refined .program-map-card { border-radius: 0; background: transparent; border: 0; border-top: 1px solid #99b6a5; padding: 24px 0; }
.qcl-refined .course-detail { border-radius: 6px; box-shadow: none; }
.qcl-refined .lead-intake { box-shadow: none; border-radius: 6px; }
.qcl-refined .field input, .qcl-refined .field select, .qcl-refined .field textarea { border-radius: 4px; }
.qcl-refined .conference-checkout-grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 64px; }
.qcl-refined .conference-pass-card { background: transparent; border: 0; border-block: 1px solid #b4c8c2; border-radius: 0; padding: 28px 0; }
.qcl-refined .conference-pass-card h3 { font-size: 25px; }
.qcl-refined .conference-checkout-grid .agenda-grid { grid-template-columns: minmax(0, 1fr); }
.qcl-refined .conference-checkout-grid .day { background: transparent; border: 0; border-left: 2px solid #8eb2a2; border-radius: 0; padding: 10px 18px; }
.qcl-refined .footer { background: #0d191d; padding: 40px 0; }
.qcl-refined .footer-inner { flex-wrap: wrap; gap: 20px 32px; }
@media (max-width: 1080px) {
  .qcl-refined .division-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qcl-refined .conference-checkout-grid { gap: 36px; }
}
@media (max-width: 960px) {
  .qcl-refined .shell { width: calc(100% - 40px); }
  .qfl-facts-strip .signal-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qcl-refined .section-head, .qcl-refined .story-shell { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .qcl-refined .conference-checkout-grid { grid-template-columns: minmax(0, 1fr); }
  .qcl-refined .program-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qcl-refined .nav-links a { padding: 12px 16px; }
  .qcl-refined .qcl-home-hero h1, .qcl-refined .qfl-landing-hero h1, .qcl-refined .qka-hero h1, .qcl-refined .partnerships-hero h1, .qcl-refined .qfl-course-hero .editorial-hero-title { font-size: 50px; }
}
@media (max-width: 640px) {
  .qcl-refined section:not(.hero) { padding: 52px 0; }
  .qfl-facts-strip .signal-list { grid-template-columns: minmax(0, 1fr); }
  .qcl-refined .qcl-home-hero, .qcl-refined .qfl-landing-hero, .qcl-refined .qfl-course-hero, .qcl-refined .qka-hero, .qcl-refined .partnerships-hero { padding-top: calc(var(--qcl-header-height) + 40px); padding-bottom: 44px; }
  .qcl-refined .qcl-home-hero h1, .qcl-refined .qfl-landing-hero h1, .qcl-refined .qka-hero h1, .qcl-refined .partnerships-hero h1, .qcl-refined .qfl-course-hero .editorial-hero-title { font-size: 38px; line-height: 1.15; }
  .qcl-refined .section-head h2, .qcl-refined .aqcc-invitation-band .section-head h2 { font-size: 30px; }
  .qcl-refined .division-grid, .qcl-refined .aqcc-program-grid, .qcl-refined .aqcc-workshop-grid, .qcl-refined .deep-program-grid { grid-template-columns: minmax(0, 1fr); }
  .qcl-refined .division-card .logo-image { height: 80px; width: 200px; }
  .qcl-refined .aqcc-program-card, .qcl-refined .aqcc-workshop-card, .qcl-refined .deep-program-card { padding: 22px; }
  .qcl-refined .aqcc-program-card h3, .qcl-refined .aqcc-workshop-card h3, .qcl-refined .deep-program-card h3 { font-size: 22px; }
  .qcl-refined .qcl-language-switcher button { padding: 8px 10px; }
  .qcl-refined .qcl-utility-contact span { display: none; }
  .qcl-refined .catalog-filter, .qcl-refined .filter-chip { padding: 10px 12px; }
  .qcl-refined .program-flow { gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .qcl-refined .button, .qcl-refined a { transition: none; }
}
