/* Holiday campaigns use software and digital entitlements within the MACW workbench. */
.macw-promotion-scene { position: relative; isolation: isolate; overflow: hidden; min-width: 0; margin-bottom: 12px; border-radius: 14px; background: var(--macw-surface, #0f131b); color: var(--macw-text, #f4f7fb); }
.macw-front-page > .macw-promotion-scene--home_hero { margin-top: 120px; }
.macw-promotion-scene__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); align-items: center; gap: 22px; min-height: 410px; padding: 32px 38px; }
.macw-promotion-scene__copy { grid-column: 1; grid-row: 1; min-width: 0; position: relative; z-index: 1; }
.macw-promotion-scene__eyebrow { margin: 0 0 14px; font-size: 12px; font-weight: 650; color: #8fa4b8; letter-spacing: .04em; }
.macw-promotion-scene__copy h1,.macw-promotion-scene__copy h2 { margin: 0; color: inherit; font-weight: 740; font-size: clamp(30px,3vw,46px); line-height: 1.24; text-wrap: balance; }
.macw-promotion-scene__headline-tail { white-space: nowrap; }
.macw-promotion-scene__caption { max-width: 32ch; margin: 14px 0 0; color: #93a5b7; font-size: 15px; line-height: 1.7; }
.macw-promotion-scene__art { grid-column: 2; grid-row: 1; min-width: 0; padding: 0; }
.macw-promotion-digital-art { position: relative; width: 100%; aspect-ratio: 1200/760; animation: macw-digital-float 8s ease-in-out infinite; animation-play-state: paused; }
.macw-promotion-scene[data-promotion-running="true"] .macw-promotion-digital-art { animation-play-state: running; }
.macw-promotion-digital-art__device { display: block; width: 100%; height: 100%; object-fit: contain; }
.macw-promotion-digital-art__season { position: absolute; left: 0; top: 4%; width: 32%; height: 34%; object-fit: contain; }
.macw-promotion-digital-art__apps { position: absolute; left: 35%; right: 20%; top: 24%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10%; height: 30%; align-items: center; }
.macw-promotion-digital-art__apps img { display: block; width: 100%; max-height: 80px; aspect-ratio: 1; object-fit: contain; filter: drop-shadow(0 5px 5px rgba(5,15,28,.18)); }
.macw-promotion-benefits { display: flex; flex-wrap: wrap; gap: 18px 28px; margin: 24px 0; }
.macw-promotion-benefit { min-width: 0; padding: 0; background: transparent; }
.macw-promotion-benefit dt { display: flex; align-items: center; gap: 7px; color: #99adbf; font-size: 12px; }
.macw-promotion-benefit dt img { width: 28px; height: 28px; object-fit: contain; }
.macw-promotion-benefit dd { margin: 7px 0 0; color: inherit; font-size: 32px; font-weight: 720; line-height: 1.1; white-space: nowrap; }
.macw-promotion-benefit dd small { display: block; margin-top: 7px; font-size: 11px; font-weight: 400; color: #7f93a6; line-height: 1.5; white-space: normal; }
.macw-promotion-scene__action.macw-home-hero__action { display: inline-flex; gap: 16px; align-items: center; min-height: 42px; padding: 10px 20px; border-radius: 999px; color: #102232; background: var(--macw-accent,#5ac8fa); font-size: 14px; font-weight: 700; text-decoration: none; }
.macw-promotion-scene__date,.macw-promotion-scene__note { color: #8b9eaf; font-size: 11px; line-height: 1.7; margin: 12px 0 0; }
.macw-promotion-scene__note { color: #b1c2d1; }
.macw-promotion-scene .macw-promotion-scene__stats { display: flex; gap: 30px; margin: 0; padding: 14px 38px; background: rgba(133,156,178,.06); }
.macw-promotion-scene .macw-promotion-scene__stats > div { display: flex; flex-direction: row-reverse; align-items: baseline; gap: 8px; }
.macw-promotion-scene .macw-promotion-scene__stats dt { color: #8a9bab; font-size: 10px; }
.macw-promotion-scene .macw-promotion-scene__stats dd { margin: 0; font-size: 16px; line-height: 1.4; color: #b9c9d7; }
/* A different surface and spatial composition, rather than a brighter copy of the bar. */
.macw-promotion-scene--spotlight { background: oklch(.94 .012 240); color: oklch(.26 .025 240); }
.macw-promotion-scene--spotlight::before { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 80% 20%,oklch(.98 .006 230),transparent 70%); pointer-events: none; }
.macw-promotion-scene--spotlight .macw-promotion-scene__eyebrow { color: #657c90; }
.macw-promotion-scene--spotlight .macw-promotion-scene__caption { color: #566b7e; }
.macw-promotion-scene--spotlight .macw-promotion-benefit dt,.macw-promotion-scene--spotlight .macw-promotion-benefit small,.macw-promotion-scene--spotlight .macw-promotion-scene__date,.macw-promotion-scene--spotlight .macw-promotion-scene__note { color: #5b7184; }
.macw-promotion-scene--spotlight .macw-promotion-scene__stats dt { color: #65798c; }
.macw-promotion-scene--spotlight .macw-promotion-scene__stats dd { color: #385166; }
.macw-promotion-scene--recharge .macw-promotion-scene__body,.macw-promotion-scene--vip .macw-promotion-scene__body { min-height: 235px; padding: 24px 30px; }
.macw-promotion-scene--recharge h2,.macw-promotion-scene--vip h2 { font-size: 28px; }
.macw-promotion-scene--recharge .macw-promotion-benefits,.macw-promotion-scene--vip .macw-promotion-benefits { margin-bottom: 0; }
.macw-promotion-scene--quiet .macw-promotion-scene__body,.macw-promotion-scene--home_strip .macw-promotion-scene__body { grid-template-columns: minmax(0,1fr) 172px; gap: 20px; min-height: 170px; padding: 22px 28px; }
.macw-promotion-scene--quiet .macw-promotion-scene__copy h1,.macw-promotion-scene--quiet .macw-promotion-scene__copy h2,.macw-promotion-scene--home_strip h2 { font-size: 27px; }
.macw-promotion-scene--quiet .macw-promotion-scene__caption { margin-top: 8px; font-size: 13px; }
.macw-promotion-scene--quiet .macw-promotion-benefits { display: inline-flex; gap: 24px; margin: 16px 24px 4px 0; vertical-align: middle; }
.macw-promotion-scene--quiet .macw-promotion-benefit dd { font-size: 24px; }
.macw-promotion-scene--quiet .macw-promotion-benefit dt img { width: 22px; height: 22px; }
.macw-promotion-scene--quiet .macw-promotion-scene__eyebrow { margin-bottom: 8px; font-size: 11px; }
.macw-promotion-scene--quiet .macw-promotion-scene__action { margin-top: 12px; padding: 8px 16px; min-height: 36px; font-size: 12px; }
.macw-promotion-scene--quiet .macw-promotion-digital-art__apps { gap: 7%; }
.macw-promotion-scene--quiet .macw-promotion-scene__stats { padding-block: 10px; }
.macw-promotion-entry { margin: 12px; }
.macw-promotion-entry a { display: flex; gap: 8px; align-items: center; padding: 8px; border-radius: 8px; background: rgba(141,165,187,.055); color: #dce7f0; text-decoration: none; }
.macw-promotion-entry img { width: 58px; height: 46px; flex-shrink: 0; object-fit: contain; }
.macw-promotion-entry a > span:first-of-type { display: block; width: auto; height: auto; flex: 1; min-width: 0; }
.macw-promotion-entry a > span:last-of-type { display: block; width: auto; height: auto; flex: 0 0 auto; }
.macw-promotion-entry small { display: block; color: #899bac; font-size: 9px; }
.macw-promotion-entry strong { display: block; margin-top: 4px; font-size: 13px; white-space: nowrap; }
.macw-promotion-scene a:focus-visible,.macw-promotion-entry a:focus-visible,.macw-promotion-design-controls a:focus-visible { outline: 2px solid #77d5ff; outline-offset: 3px; }
.macw-front-page--campaign { position: relative; isolation: isolate; background: transparent; }
/* Paint behind the whole home content column, including its exposed gutters.
   The active placement class still gates the effect; opaque artwork stays untouched. */
.macw-shell__main:has(.macw-front-page--campaign) {
  background-color: var(--macw-bg);
  background-image:
    radial-gradient(ellipse 62% 650px at 8% 210px,rgba(169,67,61,.20),transparent 78%),
    radial-gradient(ellipse 52% 760px at 100% 360px,rgba(210,172,109,.15),transparent 80%),
    radial-gradient(ellipse 68% 1000px at 72% 1400px,rgba(143,94,66,.055),transparent 80%);
  background-repeat: no-repeat;
}
.macw-front-page--gallery > .macw-promotion-scene--home_hero,.macw-front-page--gallery > .macw-home-hero { margin-top: 0; }
.macw-promotion-design-controls { margin-top: 120px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; }
.macw-promotion-design-controls > div { flex-basis: 100%; }
.macw-promotion-design-controls h2 { margin: 0 0 8px; font-size: 20px; }
.macw-promotion-design-controls p { margin: 0 0 8px; color: #8497ab; font-size: 12px; }
.macw-promotion-design-controls nav { display: flex; flex-wrap: wrap; gap: 16px; }
.macw-promotion-design-controls a { padding: 6px 0; color: #8fa2b6; text-decoration: none; font-size: 12px; }
.macw-promotion-design-controls a[aria-current] { color: #dcebf6; box-shadow: inset 0 -2px #5ac8fa; }
.macw-promotion-demo { display: block; max-width: 1140px; margin-inline: auto; }
.macw-promotion-demo__toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin: 6px 0 22px; }
.macw-promotion-demo__toolbar h1 { margin: 0; font-size: 26px; font-weight: 700; }
.macw-promotion-demo__status { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: #8f9db0; font-size: 11px; }
.macw-promotion-demo__status::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #94a4b8; }
.macw-preview-session { display: inline-flex; align-items: center; gap: 10px; color: #e5d6c7; font-size: 13px; line-height: 1.5; white-space: nowrap; }
.macw-preview-session > span:first-child { color: #d7ac79; font-size: 22px; }
.macw-preview-session small { display: block; color: #a49c98; font-size: 10px; }
.macw-promotion-demo .macw-promotion-demo__tabs { gap: 24px; margin-bottom: 22px; }
.macw-promotion-demo .macw-promotion-demo__tabs a { padding: 8px 0 12px; color: #8f9daf; background: transparent; border-radius: 0; font-size: 14px; }
.macw-promotion-demo .macw-promotion-demo__tabs a[aria-current='page'] { color: #e4edf7; background: transparent; box-shadow: inset 0 -2px #5ac8fa; }
.macw-promotion-demo .macw-promotion-demo__scenarios { display: flex; align-items: center; justify-content: flex-end; gap: 16px; margin: 0 0 14px; }
.macw-promotion-demo .macw-promotion-demo__scenarios span { color: #6f7f92; font-size: 11px; }
.macw-promotion-demo .macw-promotion-demo__scenarios a { padding: 5px 0; color: #7e8ea2; background: transparent; font-size: 12px; }
.macw-promotion-demo .macw-promotion-demo__scenarios a[aria-current='page'] { color: #badcec; background: transparent; }
.macw-promotion-demo__terms { margin-top: 20px; color: #8392a5; font-size: 12px; line-height: 1.7; }
.macw-promotion-demo__terms summary { cursor: pointer; width: fit-content; color: #a5b2c4; }
.macw-promotion-demo__terms p { max-width: 70ch; margin: 12px 0 0; }
.macw-topup .macw-purchase__options { padding-bottom: 0; }
.macw-user-ui .macw-purchase .macw-recharge-offers { padding-top: 24px; padding-bottom: 8px; margin-top: 24px; }
.macw-recharge-offers__intro { margin-bottom: 14px; }
.macw-recharge-offer dl { gap: 10px 18px; margin-top: 14px; }
.macw-recharge-offer dl > div:first-child dd,.macw-recharge-offer dl > div:last-child dd { font-size: 24px; }
.macw-recharge-offer__body { padding: 18px 20px 20px 40px; }
.macw-recharge-offer input { top: 20px; }
@keyframes macw-digital-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@media(prefers-reduced-motion:reduce) { .macw-promotion-digital-art { animation: none; } }
@media(min-width:901px) { .macw-user-center-shell .macw-promotion-entry { display:none; } }
@media(min-width:721px) and (max-width:1180px) { .macw-promotion-entry { display:none; } }
@media(min-width:1181px) and (max-width:1760px) { .macw-resource-detail-shell .macw-promotion-entry { display:none; } }
@media(max-width:760px) {
  .macw-promotion-scene__body { grid-template-columns: minmax(0,1fr); padding: 22px 24px 26px; gap: 8px; min-height: 0; }
  .macw-promotion-scene__art { grid-column: 1; grid-row: 1; width: min(390px,100%); margin: 0 auto; }
  .macw-promotion-scene__copy { grid-column: 1; grid-row: 2; }
  .macw-promotion-scene__copy h1 { font-size: 30px; }
  .macw-promotion-scene__copy h2 { font-size: 25px; }
  .macw-promotion-scene__eyebrow { margin-bottom: 10px; font-size: 11px; }
  .macw-promotion-scene__caption { font-size: 13px; }
  .macw-promotion-benefits { gap: 20px 28px; margin-block: 20px; }
  .macw-promotion-benefit dd { font-size: 28px; }
  .macw-promotion-scene .macw-promotion-scene__stats { justify-content: space-between; gap: 8px; padding: 14px 20px; }
  .macw-promotion-scene .macw-promotion-scene__stats > div { flex-direction: column-reverse; align-items: flex-start; gap: 4px; }
  .macw-promotion-scene .macw-promotion-scene__stats dd { font-size: 14px; }
  .macw-promotion-scene .macw-promotion-scene__stats dt { font-size: 9px; }
  .macw-promotion-scene--recharge .macw-promotion-scene__body,.macw-promotion-scene--vip .macw-promotion-scene__body { padding: 20px 22px 24px; min-height: 0; }
  .macw-promotion-scene--recharge .macw-promotion-scene__art,.macw-promotion-scene--vip .macw-promotion-scene__art { max-width: 290px; }
  .macw-promotion-scene--quiet .macw-promotion-scene__body,.macw-promotion-scene--home_strip .macw-promotion-scene__body { grid-template-columns: minmax(0,1fr); min-height: 0; padding: 20px 22px; }
  .macw-promotion-scene--quiet .macw-promotion-scene__art,.macw-promotion-scene--home_strip .macw-promotion-scene__art { grid-row: 1; max-width: 156px; margin: 0 0 8px; }
  .macw-promotion-scene--quiet .macw-promotion-scene__copy h1 { font-size: 26px; }
  .macw-promotion-scene--quiet .macw-promotion-benefits { margin-right: 14px; }
  .macw-promotion-demo .macw-promotion-demo__scenarios { justify-content: flex-start; gap: 14px; }
  .macw-user-ui .macw-purchase .macw-recharge-offers { padding: 20px 16px 8px; }
  .macw-recharge-offers__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .macw-recharge-offer__body { padding: 14px 12px; }
  .macw-recharge-offer input { top: 17px; left: 12px; }
  .macw-recharge-offer strong { display: block; padding-left: 20px; font-size: 13px; }
  .macw-recharge-offer__availability { display: block; margin: 4px 0 0 20px; font-size: 10px; }
  .macw-recharge-offer dl { grid-template-columns: 1fr; gap: 10px; }
  .macw-recharge-offer dt { font-size: 10px; }
  .macw-recharge-offer dd { font-size: 16px; }
  .macw-recharge-offer dl > div:first-child dd,.macw-recharge-offer dl > div:last-child dd { font-size: 22px; }
  .macw-recharge-offers__warning { padding: 12px; }
}
@media(max-width:640px) {
  .macw-front-page > .macw-promotion-scene--home_hero,.macw-promotion-design-controls { margin-top: 88px; }
  .macw-front-page--gallery > .macw-promotion-scene--home_hero { margin-top: 0; }
}
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps,.macw-promotion-digital-art--license .macw-promotion-digital-art__apps { display: block; inset: 0; height: 100%; }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img,.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img { position: absolute; height: auto; max-height: none; }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(1) { left: 17%; top: 25%; width: 19%; transform: rotate(-12deg); }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(2) { left: 55%; top: 8%; width: 16%; transform: rotate(8deg); }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(3) { left: 75%; top: 31%; width: 18%; transform: rotate(12deg); }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(4) { left: 77%; top: 63%; width: 13%; transform: rotate(-8deg); }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(5) { left: 27%; top: 65%; width: 14%; transform: rotate(-12deg); }
.macw-promotion-digital-art--orbit .macw-promotion-digital-art__apps img:nth-child(6) { left: 36%; top: 1%; width: 12%; transform: rotate(8deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__season { left: 1%; top: 1%; width: 32%; }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(1) { left: 12%; top: 32%; width: 13%; transform: rotate(-12deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(2) { left: 19%; top: 64%; width: 14%; transform: rotate(8deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(3) { left: 41%; top: 75%; width: 12%; transform: rotate(12deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(4) { left: 80%; top: 60%; width: 11%; transform: rotate(-8deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(5) { left: 78%; top: 5%; width: 13%; transform: rotate(-12deg); }
.macw-promotion-digital-art--license .macw-promotion-digital-art__apps img:nth-child(6) { left: 43%; top: 2%; width: 11%; transform: rotate(8deg); }
