/* NC-BD697-POSTER: only the image-mode promotion and course artwork. */
.hero-shell.nc-poster-shell #featuredCoursePromo.nc-poster-copy {
  padding: 0 !important;
  width: min(100%, 720px) !important;
  margin-inline: auto !important;
  overflow: hidden !important;
  background: #fff !important;
  border-radius: 18px !important;
}
.hero-shell.nc-poster-shell #featuredCoursePromo.nc-poster-copy::before,
.hero-shell.nc-poster-shell #featuredCoursePromo.nc-poster-copy::after { display: none !important; }
.nc-poster { margin: 0; padding: 0; width: 100%; }
.nc-poster__link { display: block; line-height: 0; color: inherit; }
.nc-poster__link:focus-visible { outline: 4px solid #178eac; outline-offset: -4px; }
.hero-shell.nc-poster-shell .nc-poster__image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  transform: none !important;
  filter: none !important;
}
#featuredCoursePromo .nc-poster__bar {
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: 12px; padding: 18px 22px;
  background: #fff !important; color: #163e4c !important; border-top: 1px solid #dce8ec;
}
.nc-poster__price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; }
#featuredCoursePromo .nc-poster__price strong { color: #126f89 !important; font-size: 25px; font-weight: 800; }
#featuredCoursePromo .nc-poster__price del { color: #657b84 !important; font-size: 16px; }
.nc-poster__tabby .nc-tabby-brand { margin: 0 !important; }
:is(html,body)[data-theme="dark"] #featuredCoursePromo .nc-poster__bar,
:is(html,body).dark #featuredCoursePromo .nc-poster__bar { background: #142c36 !important; color: #edf7fa !important; border-color: #31505d; }
:is(html,body)[data-theme="dark"] #featuredCoursePromo .nc-poster__price strong,
:is(html,body).dark #featuredCoursePromo .nc-poster__price strong { color: #7ed7ed !important; }
:is(html,body)[data-theme="dark"] #featuredCoursePromo .nc-poster__price del,
:is(html,body).dark #featuredCoursePromo .nc-poster__price del { color: #aabec6 !important; }
/* Detail artwork flows at its natural ratio; keep the close button visible. */
.pd-modal__hero:has(> img:not(.pd-modal__hero-emoji)) {
  height: auto !important; min-height: 0 !important; aspect-ratio: auto !important;
  overflow: visible !important;
}
.pd-modal__hero > img:not(.pd-modal__hero-emoji) {
  display: block !important; width: 100% !important; height: auto !important;
  max-height: none !important; object-fit: contain !important;
  border-radius: inherit; transform: none !important;
}
.pd-modal__hero:has(> img:not(.pd-modal__hero-emoji)) .pd-modal__badge { display: none !important; }
.pd-modal:has(.pd-modal__hero > img:not(.pd-modal__hero-emoji)) .pd-modal__close {
  position: fixed !important; inset: 18px auto auto 18px !important; z-index: 100 !important;
}
/* Catalogue thumbnails show all the artwork, with no hover zoom/cropping. */
.card-g1__thumb > img:not(.card-g1__thumb-emoji),
.store-g2-card__image > img {
  object-fit: contain !important; transform: none !important;
}
@media (max-width: 600px) {
  .hero-shell.nc-poster-shell #featuredCoursePromo.nc-poster-copy { border-radius: 12px !important; }
  #featuredCoursePromo .nc-poster__bar { padding: 14px 16px; }
  #featuredCoursePromo .nc-poster__price strong { font-size: 22px; }
}
/* NC-BD6973-PRICE: quiet, compact price footer; no promotional badge frame. */
#featuredCoursePromo .nc-poster__bar {
  min-height: 84px; box-sizing: border-box; padding: 16px 24px;
  flex-wrap: nowrap; gap: 16px;
}
#featuredCoursePromo .nc-poster__price {
  display: flex; flex-direction: column; align-items: flex-start; gap: 5px;
  min-width: 0; text-align: start;
}
#featuredCoursePromo .nc-poster__price-label {
  font-size: 12px !important; line-height: 1.5; font-weight: 500;
  color: #607983 !important;
}
#featuredCoursePromo .nc-poster__figures {
  display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
}
#featuredCoursePromo .nc-poster__price strong {
  display: inline-flex; align-items: baseline; gap: 6px;
  color: #163e4c !important; font-size: 26px !important;
  line-height: 1.2; font-weight: 700 !important; white-space: nowrap;
}
#featuredCoursePromo .nc-poster__amount { font-variant-numeric: tabular-nums; }
#featuredCoursePromo .nc-poster__currency {
  display: inline-flex; flex: 0 0 auto; width: 18px; height: 20px;
  color: inherit !important; align-self: center;
}
#featuredCoursePromo .nc-poster__currency svg { display: block; width: 100%; height: 100%; }
#featuredCoursePromo .nc-poster__price del { display: inline-flex; align-items: center; gap: 4px; font-size: 13px !important; white-space: nowrap; }
#featuredCoursePromo .nc-poster__price del .nc-poster__currency { width: 11px; height: 13px; }
#featuredCoursePromo .nc-poster__tabby .nc-tabby-brand {
  display: inline-flex !important; border: 0 !important; padding: 0 !important;
  background: transparent !important; box-shadow: none !important;
  min-height: 0 !important; gap: 0 !important;
}
#featuredCoursePromo .nc-poster__tabby .nc-tabby-brand > span { display: none !important; }
#featuredCoursePromo .nc-poster__tabby .nc-tabby-brand img {
  display: block !important; width: 78px !important; height: 32px !important;
  object-fit: contain !important;
}
:is(html,body)[data-theme="dark"] #featuredCoursePromo .nc-poster__price-label,
:is(html,body).dark #featuredCoursePromo .nc-poster__price-label { color: #b8cdd5 !important; }
@media (max-width: 600px) {
  #featuredCoursePromo .nc-poster__bar { min-height: 78px; padding: 14px 16px; gap: 12px; }
  #featuredCoursePromo .nc-poster__price strong { font-size: 24px !important; }
  #featuredCoursePromo .nc-poster__figures { gap: 8px; }
}
