/*
 * MuGM frontend system v6 — final consolidated pass
 * Full-width editorial composition, compact page rhythm and unified account/payment flows.
 * Loaded after v4/v5 and intentionally replaces their internal-page layout decisions.
 */

:root {
  --mugm-v6-shell: 1760px;
  --mugm-v6-gutter: clamp(28px, 4.7vw, 88px);
  --mugm-v6-line: rgba(111, 199, 210, .15);
  --mugm-v6-line-strong: rgba(111, 199, 210, .28);
  --mugm-v6-gold-line: rgba(209, 181, 116, .28);
  --mugm-v6-ink: #031018;
  --mugm-v6-surface: rgba(5, 24, 32, .58);
  --mugm-v6-text: #eee9de;
  --mugm-v6-copy: #9db0af;
  --mugm-v6-muted: #6f8587;
}

/* -------------------------------------------------------------------------- */
/* One alignment system for every internal page                               */
/* -------------------------------------------------------------------------- */

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__grid,
body.mugm-site:not(.mugm-page-home) .mugm-module-shell,
body.mugm-site:not(.mugm-page-home) .mugm-world-rail__inner,
body.mugm-site:not(.mugm-page-home) .mugm-footer > .mugm-shell {
  width: min(calc(100% - (var(--mugm-v6-gutter) * 2)), var(--mugm-v6-shell)) !important;
  max-width: none !important;
  margin-inline: auto !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-stage,
body.mugm-site:not(.mugm-page-home) .mugm-main,
body.mugm-site:not(.mugm-page-home) .mugm-module,
body.mugm-site:not(.mugm-page-home) [data-mugm-module] {
  min-height: 0 !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-stage {
  background:
    linear-gradient(180deg, rgba(4, 19, 27, .38), rgba(3, 15, 22, .12) 18%, rgba(3, 15, 22, 0) 100%) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-stage__ambient {
  opacity: .34 !important;
  mask-image: linear-gradient(180deg, #000 0, transparent 72%) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-module-shell,
body.mugm-site.mugm-page-rankings .mugm-module-shell,
body.mugm-site.mugm-page-events .mugm-module-shell,
body.mugm-site.mugm-page-donation .mugm-module-shell,
body.mugm-site.mugm-page-info .mugm-module-shell {
  padding-block: clamp(28px, 2.8vw, 46px) clamp(38px, 3.8vw, 62px) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-module-shell .mugm-shell,
body.mugm-site:not(.mugm-page-home) .mugm-module-shell .we-container,
body.mugm-site:not(.mugm-page-home) .mugm-module-shell .container,
body.mugm-site:not(.mugm-page-home) .mugm-module-shell .container-fluid,
body.mugm-site:not(.mugm-page-home) .mugm-module > .mugm-shell {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-stage__index {
  display: none !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-page-title:first-child,
body.mugm-site:not(.mugm-page-home) .mugm-module > .mugm-page-title:first-child {
  display: none !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-module-intro {
  margin-bottom: 22px !important;
  padding-bottom: 17px !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-section__head,
body.mugm-site:not(.mugm-page-home) .mugm-form-sheet__header,
body.mugm-site:not(.mugm-page-home) .mugm-download-group__header {
  margin-bottom: 0 !important;
  padding: 0 0 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-section__title,
body.mugm-site:not(.mugm-page-home) .mugm-form-sheet__title,
body.mugm-site:not(.mugm-page-home) .mugm-download-group__title {
  color: var(--mugm-v6-text) !important;
  font-family: var(--mugm-font-display) !important;
  font-size: clamp(1.55rem, 2vw, 2.25rem) !important;
  font-weight: 600 !important;
  letter-spacing: -.018em !important;
  line-height: 1 !important;
}

/* The page hero remains cinematic, but it no longer consumes an entire screen. */
body.mugm-site:not(.mugm-page-home) .mugm-inner-hero,
body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__grid {
  min-height: clamp(270px, 27vw, 350px) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__grid {
  grid-template-columns: minmax(0, 1fr) minmax(230px, 300px) !important;
  gap: clamp(36px, 5vw, 76px) !important;
  padding-block: clamp(70px, 6.3vw, 95px) clamp(30px, 3.2vw, 44px) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero h1 {
  font-size: clamp(3rem, 5.25vw, 5.35rem) !important;
  line-height: .86 !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__content > p {
  margin-top: 14px !important;
  max-width: 700px !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__actions {
  margin-top: 18px !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__telemetry {
  padding-block: 12px !important;
}

/* -------------------------------------------------------------------------- */
/* Compact world rail and footer continuity                                   */
/* -------------------------------------------------------------------------- */

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__inner {
  min-height: 0 !important;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr) !important;
  gap: clamp(34px, 5vw, 84px) !important;
  padding-block: clamp(28px, 3.2vw, 46px) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__intro .mugm-eyebrow {
  margin-bottom: 4px !important;
  font-size: .58rem !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__intro h2 {
  max-width: 460px !important;
  margin-top: 5px !important;
  font-size: clamp(2rem, 3.4vw, 3.65rem) !important;
  line-height: .9 !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  border-top: 1px solid rgba(108, 203, 214, .18) !important;
  border-bottom: 1px solid rgba(108, 203, 214, .14) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links a {
  min-height: 82px !important;
  grid-template-columns: 27px minmax(0, 1fr) auto !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-right: 1px solid rgba(108, 203, 214, .13) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links a:last-child {
  border-right: 0 !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links a:hover {
  padding-left: 20px !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links strong {
  font-size: 1.08rem !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links small {
  margin-top: 3px !important;
  font-size: .54rem !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-footer {
  padding-top: clamp(34px, 4vw, 58px) !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-footer__grid {
  gap: clamp(28px, 4vw, 64px) !important;
}

/* -------------------------------------------------------------------------- */
/* Account hub: exact same options as the navbar panel                        */
/* -------------------------------------------------------------------------- */

body.mugm-site.mugm-page-usercp .mugm-account-hub {
  width: 100%;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 34px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--mugm-v6-line);
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__kicker {
  display: block;
  margin-bottom: 7px;
  color: var(--mugm-v4-cyan);
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .17em;
  text-transform: uppercase;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__head h2 {
  color: var(--mugm-v6-text);
  font-size: clamp(2.25rem, 3.4vw, 3.8rem);
  line-height: .92;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__head p {
  max-width: 700px;
  margin-top: 10px;
  color: var(--mugm-v6-copy);
  font-size: .9rem;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__identity {
  min-width: 180px;
  padding-left: 22px;
  border-left: 1px solid var(--mugm-v6-line);
  text-align: right;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__identity span,
body.mugm-site.mugm-page-usercp .mugm-account-hub__identity strong {
  display: block;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__identity span {
  color: #7f9998;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__identity span i {
  margin-right: 6px;
  color: #66d59b;
  font-size: .43rem;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub__identity strong {
  margin-top: 5px;
  color: var(--mugm-v6-text);
  font-size: .86rem;
}

.mugm-usercp--inline {
  width: 100% !important;
  margin-top: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.mugm-usercp--inline .mugm-usercp__grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

.mugm-usercp--inline .mugm-usercp__item {
  display: grid !important;
  min-width: 0;
  min-height: 112px !important;
  grid-template-columns: 38px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 13px !important;
  padding: 18px 19px !important;
  border: 0 !important;
  border-right: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background-color .2s ease, color .2s ease, transform .25s var(--mugm-v4-ease) !important;
}

.mugm-usercp--inline .mugm-usercp__item:last-child {
  border-right: 0 !important;
}

.mugm-usercp--inline .mugm-usercp__item:hover {
  z-index: 1;
  background: linear-gradient(180deg, rgba(103, 214, 222, .065), rgba(103, 214, 222, .012)) !important;
  transform: translateY(-2px);
}

.mugm-usercp--inline .mugm-usercp__icon {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  place-items: center;
  border: 1px solid rgba(103, 214, 222, .20) !important;
  border-radius: 0 !important;
  background: rgba(7, 32, 41, .46) !important;
  color: var(--mugm-v4-cyan) !important;
}

.mugm-usercp--inline .mugm-usercp__text {
  min-width: 0;
}

.mugm-usercp--inline .mugm-usercp__text strong,
.mugm-usercp--inline .mugm-usercp__text small {
  display: block;
}

.mugm-usercp--inline .mugm-usercp__text strong {
  color: #e4e2d9;
  font-size: .75rem;
  line-height: 1.25;
}

.mugm-usercp--inline .mugm-usercp__text small {
  margin-top: 5px;
  color: #708789;
  font-size: .56rem;
  line-height: 1.42;
}

.mugm-usercp--inline .mugm-usercp__chev {
  color: rgba(209, 181, 116, .55);
  font-size: .62rem;
}

/* Navbar account modal stays a focused dialog, not a full page layout. */
#usercpModal .mugm-usercp__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

#usercpModal .mugm-usercp__item {
  min-height: 78px !important;
}

/* -------------------------------------------------------------------------- */
/* Events: full-width live register, no card wall                             */
/* -------------------------------------------------------------------------- */

body.mugm-site.mugm-page-events .mugm-events-console {
  width: 100%;
}

body.mugm-site.mugm-page-events .mugm-events-console__head {
  margin-bottom: 19px !important;
  padding-bottom: 20px !important;
}

body.mugm-site.mugm-page-events .mugm-events-console__head h2 {
  font-size: clamp(2.15rem, 3.4vw, 3.7rem) !important;
}

body.mugm-site.mugm-page-events .mugm-events-head {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-events .mugm-events-tabs {
  border: 0 !important;
}

body.mugm-site.mugm-page-events .mugm-events-grid {
  width: 100% !important;
}

body.mugm-site.mugm-page-events .mugm-events-cards {
  display: block !important;
  width: 100% !important;
}

body.mugm-site.mugm-page-events .mugm-evcard,
body.mugm-site.mugm-page-events .mugm-evcard.is-next {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  min-height: 0 !important;
  grid-template-columns: 86px minmax(0, 1fr) !important;
  margin: 0 !important;
  padding: 14px 0 !important;
  gap: 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: none !important;
}

body.mugm-site.mugm-page-events .mugm-evcard:first-child {
  border-top: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-events .mugm-evcard::before {
  top: 14px !important;
  bottom: 14px !important;
  left: 0 !important;
  width: 1px !important;
  height: auto !important;
  opacity: .45 !important;
}

body.mugm-site.mugm-page-events .mugm-evcard:hover,
body.mugm-site.mugm-page-events .mugm-evcard.is-next:hover {
  background: linear-gradient(90deg, rgba(102, 215, 223, .038), transparent 67%) !important;
  transform: none !important;
}

body.mugm-site.mugm-page-events .mugm-evcard.is-next {
  background: linear-gradient(90deg, rgba(209, 181, 116, .045), transparent 70%) !important;
}

body.mugm-site.mugm-page-events .mugm-evcard.is-next::after {
  top: 14px !important;
  right: 0 !important;
  font-size: .52rem !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__media,
body.mugm-site.mugm-page-events .mugm-evcard.is-next .mugm-evcard__media {
  width: 86px !important;
  min-height: 86px !important;
  height: 86px !important;
  aspect-ratio: 1 / 1 !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__body {
  display: grid !important;
  min-width: 0;
  grid-template-columns: minmax(230px, 1fr) minmax(130px, .45fr) minmax(150px, .42fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: clamp(22px, 4vw, 72px) !important;
  padding: 0 !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__body::before {
  grid-column: 1;
  grid-row: 1;
  margin-bottom: 5px !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__title,
body.mugm-site.mugm-page-events .mugm-evcard.is-next .mugm-evcard__title {
  grid-column: 1;
  grid-row: 2;
  font-size: clamp(1.2rem, 1.55vw, 1.7rem) !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__details {
  grid-column: 2;
  grid-row: 1 / 3;
  margin: 0 !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__summary {
  min-height: 38px !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__detailbox {
  position: relative;
  z-index: 8;
  width: min(760px, 70vw);
  margin-top: 8px !important;
  padding: 19px !important;
  border-color: var(--mugm-v6-line-strong) !important;
}

body.mugm-site.mugm-page-events .mugm-evcard__footer {
  grid-column: 3;
  grid-row: 1 / 3;
  min-height: 58px;
  margin: 0 !important;
  padding: 0 0 0 24px !important;
  align-items: flex-end !important;
  flex-direction: column !important;
  justify-content: center !important;
  border: 0 !important;
  border-left: 1px solid var(--mugm-v6-line) !important;
  text-align: right;
}

body.mugm-site.mugm-page-events .mugm-evcard__time,
body.mugm-site.mugm-page-events .mugm-evcard.is-next .mugm-evcard__time {
  font-size: clamp(1.32rem, 1.75vw, 1.85rem) !important;
}

body.mugm-site.mugm-page-events .mugm-event-progress {
  grid-column: 1 / -1;
  height: 1px !important;
  margin-top: 10px !important;
}

/* -------------------------------------------------------------------------- */
/* Rankings: data table as a competitive register, not a dashboard            */
/* -------------------------------------------------------------------------- */

body.mugm-site.mugm-page-rankings .mugm-ranking-podium {
  display: none !important;
}

body.mugm-site.mugm-page-rankings .rankings-menu,
body.mugm-site.mugm-page-rankings .rankings-filter-menu {
  margin-bottom: 18px !important;
  background: transparent !important;
}

body.mugm-site.mugm-page-rankings .rankings-menu a,
body.mugm-site.mugm-page-rankings .rankings-filter-menu a {
  min-height: 44px !important;
}

body.mugm-site.mugm-page-rankings .mugm-table-wrap,
body.mugm-site.mugm-page-rankings .table-responsive {
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-gold-line) !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-rankings .mugm-table {
  table-layout: auto !important;
}

body.mugm-site.mugm-page-rankings .mugm-table thead th {
  height: 46px !important;
  padding: 10px 13px !important;
  background: rgba(7, 29, 37, .48) !important;
}

body.mugm-site.mugm-page-rankings .mugm-table tbody tr,
body.mugm-site.mugm-page-rankings .mugm-table tbody tr:nth-child(even),
body.mugm-site.mugm-page-rankings .mugm-table tbody tr.is-top-1,
body.mugm-site.mugm-page-rankings .mugm-table tbody tr.is-top-2,
body.mugm-site.mugm-page-rankings .mugm-table tbody tr.is-top-3 {
  background: transparent !important;
  transform: none !important;
}

body.mugm-site.mugm-page-rankings .mugm-table tbody tr:hover {
  background: linear-gradient(90deg, rgba(102, 215, 223, .055), transparent 78%) !important;
  transform: none !important;
}

body.mugm-site.mugm-page-rankings .mugm-table tbody td {
  height: 54px !important;
  padding: 9px 13px !important;
  border-bottom-color: rgba(108, 203, 214, .075) !important;
}

/* -------------------------------------------------------------------------- */
/* Downloads and payment-method selector: horizontal editorial lanes          */
/* -------------------------------------------------------------------------- */

body.mugm-site.mugm-page-downloads .mugm-downloads,
body.mugm-site.mugm-page-donation .mugm-donation,
body.mugm-site .mugm-payment-methods,
body.mugm-site .mugm-download-group {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site .mugm-download-group + .mugm-download-group {
  margin-top: 34px !important;
}

body.mugm-site .mugm-download-list,
body.mugm-site .mugm-payment-methods .mugm-action-list {
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site .mugm-download-row,
body.mugm-site .mugm-payment-row {
  display: grid !important;
  width: 100% !important;
  min-height: 94px !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(24px, 5vw, 88px) !important;
  margin: 0 !important;
  padding: 17px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

body.mugm-site .mugm-download-row:hover,
body.mugm-site .mugm-payment-row:hover {
  padding-left: 12px !important;
  background: linear-gradient(90deg, rgba(102, 215, 223, .04), transparent 72%) !important;
  transform: none !important;
}

body.mugm-site .mugm-download-row .mugm-action-row__main {
  min-width: 0;
}

body.mugm-site .mugm-download-row .mugm-action-row__title {
  font-size: clamp(1.24rem, 1.65vw, 1.72rem) !important;
}

body.mugm-site .mugm-download-row .mugm-action-row__description {
  max-width: 860px;
  margin-top: 5px !important;
}

body.mugm-site .mugm-download-row .mugm-action-row__actions {
  display: flex !important;
  min-width: 240px;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 22px !important;
}

body.mugm-site .mugm-payment-methods .mugm-form-sheet__body {
  padding-top: 0 !important;
}

body.mugm-site .mugm-payment-methods .mugm-action-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.mugm-site .mugm-payment-row {
  min-height: 112px !important;
  grid-template-columns: 56px minmax(0, 1fr) auto !important;
  padding-inline: 22px !important;
  border-right: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site .mugm-payment-row:nth-child(2n) {
  border-right: 0 !important;
}

body.mugm-site .mugm-payment-row .mugm-action-row__media {
  width: 48px !important;
  height: 48px !important;
  border: 0 !important;
  background: transparent !important;
}

body.mugm-site .mugm-payment-row .mugm-action-row__title {
  font-family: var(--mugm-font-display) !important;
  font-size: 1.42rem !important;
}

body.mugm-site .mugm-payment-row .mugm-action-row__action {
  color: var(--mugm-v4-gold) !important;
  font-size: .62rem !important;
  font-weight: 800 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
}

body.mugm-site .mugm-payment-methods .mugm-form-sheet__footer {
  margin-top: 14px !important;
  padding-top: 14px !important;
}

/* -------------------------------------------------------------------------- */
/* Checkout packs: aligned purchase lanes, not a grid of generated cards      */
/* -------------------------------------------------------------------------- */

body.mugm-site .mugm-checkout-page {
  width: 100% !important;
}

body.mugm-site .mugm-pay-hero {
  min-height: 0 !important;
  margin-bottom: 26px !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site .mugm-pay-hero::before,
body.mugm-site .mugm-pay-hero__bg {
  display: none !important;
}

body.mugm-site .mugm-pay-hero__inner {
  display: grid !important;
  min-height: 0 !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 34px !important;
  padding: 0 0 22px !important;
}

body.mugm-site .mugm-pay-hero__title {
  margin-top: 7px !important;
  font-size: clamp(1.95rem, 3vw, 3.25rem) !important;
}

body.mugm-site .mugm-pay-hero__sub {
  max-width: 680px !important;
  margin-top: 8px !important;
}

body.mugm-site .mugm-pay-hero__trust {
  display: flex !important;
  max-width: 600px;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
  gap: 8px 16px !important;
}

body.mugm-site .mugm-pay-hero__trust > * {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.mugm-site .mugm-pay-section,
body.mugm-site .mugm-pay-grid {
  padding: 0 !important;
}

body.mugm-site .mugm-pay-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 clamp(36px, 5vw, 82px) !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site .mugm-pay-card,
body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 1),
body.mugm-site .mugm-pay-card:nth-last-child(2):nth-child(3n + 1),
body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 2) {
  position: relative !important;
  display: grid !important;
  min-width: 0;
  min-height: 126px !important;
  grid-column: auto !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  column-gap: 24px !important;
  padding: 17px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

body.mugm-site .mugm-pay-card:hover {
  background: linear-gradient(90deg, rgba(102, 215, 223, .038), transparent 72%) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.mugm-site .mugm-pay-card::before {
  width: 1px !important;
  opacity: .42;
}

body.mugm-site .mugm-pay-card.is-featured::after {
  right: auto !important;
  bottom: auto !important;
  width: 110px !important;
}

body.mugm-site .mugm-pay-card__top {
  display: grid !important;
  min-height: 0 !important;
  grid-column: 1;
  grid-row: 1;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 22px !important;
}

body.mugm-site .mugm-pay-card__title {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  font-size: clamp(1.85rem, 2.7vw, 3rem) !important;
  line-height: .9 !important;
}

body.mugm-site .mugm-pay-card__title span {
  display: inline !important;
  margin-top: 0 !important;
  font-size: .54rem !important;
}

body.mugm-site .mugm-pay-card__price {
  min-width: 118px !important;
  font-size: clamp(1rem, 1.35vw, 1.35rem) !important;
}

body.mugm-site .mugm-pay-card__price small {
  margin-top: 4px !important;
}

body.mugm-site .mugm-pay-card__meta {
  grid-column: 1;
  grid-row: 2;
  min-height: 0 !important;
  margin: 10px 0 0 !important;
}

body.mugm-site .mugm-pay-card .mugm-btn {
  width: auto !important;
  min-width: 180px;
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  margin: 0 !important;
}

body.mugm-site .mugm-mp-legal-note,
body.mugm-site .mugm-payment-legal-note {
  margin-top: 20px !important;
  padding: 14px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  background: transparent !important;
}

/* Unified payment dialogs and their two sequential states. */
.mugm-mp-modal__dialog,
.mugm-payment-modal__dialog {
  width: min(760px, calc(100vw - 40px)) !important;
  max-height: min(90dvh, 820px) !important;
  padding: clamp(26px, 4vw, 46px) !important;
  overflow-y: auto !important;
  border-radius: 0 !important;
}

.mugm-mp-modal__dialog h2,
.mugm-payment-modal__dialog h2 {
  font-size: clamp(2rem, 4vw, 3.15rem) !important;
}

.mugm-mp-summary,
.mugm-payment-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin-block: 22px !important;
}

.mugm-payment-ready__lead {
  max-width: 620px;
  margin-top: 10px;
  color: var(--mugm-v6-copy);
  line-height: 1.65;
}

.mugm-payment-ready__ref {
  margin-top: 4px;
  padding: 12px 0;
  border-top: 1px solid var(--mugm-v6-line);
  border-bottom: 1px solid var(--mugm-v6-line);
  color: var(--mugm-v6-muted);
  font-size: .67rem;
  letter-spacing: .05em;
  overflow-wrap: anywhere;
}

.mugm-payment-ready__ref code {
  margin-left: 8px;
  color: #c7d8d4;
}

.mugm-payment-form-actions--ready {
  margin-top: 22px !important;
}

.mugm-payment-ready__note {
  margin-top: 17px;
  color: var(--mugm-v6-muted);
  font-size: .72rem;
  line-height: 1.58;
}

.mugm-payment-gateway-form {
  margin: 0;
}

/* -------------------------------------------------------------------------- */
/* News: image/text editorial lines instead of floating content boxes         */
/* -------------------------------------------------------------------------- */

body.mugm-site.mugm-page-news .mugm-news-command {
  margin-bottom: 22px !important;
}

body.mugm-site.mugm-page-news .mugm-news-board {
  grid-template-columns: minmax(0, 1.55fr) minmax(360px, .85fr) !important;
  gap: clamp(30px, 4.5vw, 72px) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-lead {
  display: grid !important;
  min-height: 0 !important;
  grid-template-columns: minmax(340px, 1.15fr) minmax(300px, .85fr) !important;
  align-items: stretch !important;
  border-top: 1px solid var(--mugm-v6-gold-line) !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-media {
  position: relative !important;
  inset: auto !important;
  min-height: clamp(300px, 28vw, 430px) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-media::after {
  background: linear-gradient(90deg, transparent 55%, rgba(2, 11, 17, .68) 100%), linear-gradient(180deg, transparent 62%, rgba(1, 8, 13, .72) 100%) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-body {
  max-width: none !important;
  padding: clamp(26px, 3.6vw, 52px) !important;
  justify-content: center !important;
  background: linear-gradient(90deg, rgba(5, 22, 29, .72), rgba(3, 15, 22, .18)) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-entry__title {
  font-size: clamp(1.9rem, 2.8vw, 3.15rem) !important;
}

body.mugm-site.mugm-page-news .mugm-news-board__rail {
  border-top: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-rail {
  grid-template-columns: 126px minmax(0, 1fr) !important;
  padding-block: 15px !important;
  gap: 19px !important;
}

body.mugm-site.mugm-page-news .mugm-news-entry.is-archive {
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

/* -------------------------------------------------------------------------- */
/* Forms and guides: preserve necessary structure, remove visual nesting       */
/* -------------------------------------------------------------------------- */

body.mugm-site:not(.mugm-page-home) .mugm-form-sheet {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site:not(.mugm-page-home) .mugm-form-sheet__body {
  padding-inline: 0 !important;
}

body.mugm-site.mugm-page-info .mugm-info-v2__shell {
  gap: clamp(38px, 5vw, 82px) !important;
}

body.mugm-site.mugm-page-info .mugm-info-v2__nav,
body.mugm-site.mugm-page-info .mugm-info-v2__content {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* -------------------------------------------------------------------------- */
/* Responsive                                                                  */
/* -------------------------------------------------------------------------- */

@media (max-width: 1180px) {
  :root { --mugm-v6-gutter: clamp(24px, 3.5vw, 44px); }

  .mugm-usercp--inline .mugm-usercp__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mugm-usercp--inline .mugm-usercp__item:nth-child(2n) {
    border-right: 0 !important;
  }

  .mugm-usercp--inline .mugm-usercp__item:last-child {
    grid-column: 1 / -1;
    border-top: 1px solid var(--mugm-v6-line) !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__body {
    grid-template-columns: minmax(210px, 1fr) minmax(120px, .4fr) minmax(140px, .38fr) !important;
    column-gap: 28px !important;
  }

  body.mugm-site .mugm-pay-grid {
    gap: 0 34px !important;
  }

  body.mugm-site .mugm-pay-card,
  body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 1),
  body.mugm-site .mugm-pay-card:nth-last-child(2):nth-child(3n + 1),
  body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 2) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.mugm-site .mugm-pay-card .mugm-btn {
    width: 100% !important;
    min-width: 0;
    grid-column: 1;
    grid-row: 3;
    margin-top: 13px !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-board {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-board__rail {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    gap: 30px !important;
  }
}

@media (max-width: 900px) {
  :root { --mugm-v6-gutter: 24px; }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero,
  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__grid {
    min-height: 0 !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__grid {
    grid-template-columns: 1fr !important;
    padding-block: 40px 34px !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__telemetry {
    display: none !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-module-shell,
  body.mugm-site.mugm-page-rankings .mugm-module-shell,
  body.mugm-site.mugm-page-events .mugm-module-shell,
  body.mugm-site.mugm-page-donation .mugm-module-shell,
  body.mugm-site.mugm-page-info .mugm-module-shell {
    padding-block: 26px 38px !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-world-rail__inner {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-world-rail__links a {
    min-height: 64px !important;
    padding-inline: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(108, 203, 214, .13) !important;
  }

  body.mugm-site.mugm-page-usercp .mugm-account-hub__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body.mugm-site.mugm-page-usercp .mugm-account-hub__identity {
    min-width: 0;
    padding: 0;
    border: 0;
    text-align: left;
  }

  body.mugm-site.mugm-page-events .mugm-events-console__head,
  body.mugm-site.mugm-page-events .mugm-events-head {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  body.mugm-site.mugm-page-events .mugm-events-console__status,
  body.mugm-site.mugm-page-events .mugm-events-sub {
    max-width: none !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
  }

  body.mugm-site.mugm-page-events .mugm-events-console__status span {
    justify-content: flex-start !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__body {
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 18px !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__body::before,
  body.mugm-site.mugm-page-events .mugm-evcard__title {
    grid-column: 1;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__details {
    grid-column: 1;
    grid-row: 3;
    margin-top: 7px !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__footer {
    grid-column: 2;
    grid-row: 1 / 4;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__detailbox {
    width: min(680px, calc(100vw - 90px));
  }

  body.mugm-site.mugm-page-rankings .mugm-table tbody {
    gap: 0 !important;
  }

  body.mugm-site.mugm-page-rankings .mugm-table tr {
    padding: 10px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mugm-v6-line) !important;
    background: transparent !important;
  }

  body.mugm-site .mugm-pay-hero__inner {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  body.mugm-site .mugm-pay-hero__trust {
    justify-content: flex-start !important;
  }

  body.mugm-site .mugm-pay-grid {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site .mugm-payment-methods .mugm-action-list {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site .mugm-payment-row {
    border-right: 0 !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-entry.is-lead {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-media {
    min-height: 280px !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-board__rail {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
}

@media (max-width: 620px) {
  :root { --mugm-v6-gutter: 18px; }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero h1 {
    font-size: clamp(2.55rem, 13vw, 4.1rem) !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__actions {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  body.mugm-site:not(.mugm-page-home) .mugm-inner-hero__actions .mugm-button {
    width: 100% !important;
    justify-content: center !important;
  }

  .mugm-usercp--inline .mugm-usercp__grid,
  #usercpModal .mugm-usercp__grid {
    grid-template-columns: 1fr !important;
  }

  .mugm-usercp--inline .mugm-usercp__item,
  .mugm-usercp--inline .mugm-usercp__item:nth-child(2n),
  .mugm-usercp--inline .mugm-usercp__item:last-child {
    min-height: 78px !important;
    grid-column: auto;
    padding: 13px 5px !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--mugm-v6-line) !important;
  }

  body.mugm-site.mugm-page-events .mugm-events-tabs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard,
  body.mugm-site.mugm-page-events .mugm-evcard.is-next {
    grid-template-columns: 66px minmax(0, 1fr) !important;
    gap: 14px !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__media,
  body.mugm-site.mugm-page-events .mugm-evcard.is-next .mugm-evcard__media {
    width: 66px !important;
    min-height: 66px !important;
    height: 66px !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__body {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto auto !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__body::before,
  body.mugm-site.mugm-page-events .mugm-evcard__title,
  body.mugm-site.mugm-page-events .mugm-evcard__details,
  body.mugm-site.mugm-page-events .mugm-evcard__footer {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__footer {
    min-height: 0 !important;
    margin-top: 10px !important;
    padding: 10px 0 0 !important;
    align-items: baseline !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    border-left: 0 !important;
    border-top: 1px solid var(--mugm-v6-line) !important;
    text-align: left;
  }

  body.mugm-site.mugm-page-events .mugm-evcard__detailbox {
    width: calc(100vw - 104px);
    padding: 14px !important;
  }

  body.mugm-site.mugm-page-events .mugm-evcard.is-next::after {
    display: none;
  }

  body.mugm-site .mugm-download-row,
  body.mugm-site .mugm-payment-row {
    grid-template-columns: 1fr !important;
    gap: 11px !important;
    padding-block: 17px !important;
  }

  body.mugm-site .mugm-download-row .mugm-action-row__actions {
    min-width: 0;
    width: 100%;
    justify-content: space-between !important;
  }

  body.mugm-site .mugm-download-row .mugm-btn {
    min-width: 146px;
  }

  body.mugm-site .mugm-payment-row {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    padding-inline: 0 !important;
  }

  body.mugm-site .mugm-payment-row .mugm-action-row__action {
    grid-column: 1 / -1;
    justify-content: flex-start !important;
  }

  body.mugm-site .mugm-pay-card,
  body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 1),
  body.mugm-site .mugm-pay-card:nth-last-child(2):nth-child(3n + 1),
  body.mugm-site .mugm-pay-card:last-child:nth-child(3n + 2) {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site .mugm-pay-card__top {
    grid-template-columns: 1fr auto !important;
    gap: 14px !important;
  }

  body.mugm-site .mugm-pay-card__title {
    display: grid !important;
    gap: 5px !important;
  }

  body.mugm-site .mugm-pay-card__price {
    min-width: 90px !important;
  }

  .mugm-mp-modal__dialog,
  .mugm-payment-modal__dialog {
    width: calc(100vw - 22px) !important;
    max-height: calc(100dvh - 22px) !important;
    padding: 23px 18px !important;
  }

  .mugm-mp-summary,
  .mugm-payment-summary {
    grid-template-columns: 1fr !important;
  }

  .mugm-mp-form-actions,
  .mugm-payment-form-actions {
    align-items: stretch !important;
    flex-direction: column-reverse !important;
  }

  .mugm-mp-form-actions .mugm-btn,
  .mugm-payment-form-actions .mugm-btn {
    width: 100% !important;
    justify-content: center !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-command {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-command__count {
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-media {
    min-height: 220px !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-entry.is-lead .mugm-news-body {
    padding: 22px 0 !important;
    background: transparent !important;
  }

  body.mugm-site.mugm-page-news .mugm-news-entry.is-rail {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 14px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mugm-usercp--inline .mugm-usercp__item,
  body.mugm-site .mugm-download-row,
  body.mugm-site .mugm-payment-row,
  body.mugm-site .mugm-pay-card {
    transition: none !important;
  }
}

/* Final cascade hardening against legacy event grid row templates. */
body.mugm-site.mugm-page-events .mugm-events-grid {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-events .mugm-evcard,
body.mugm-site.mugm-page-events .mugm-evcard.is-next {
  grid-template-rows: auto !important;
  align-items: center !important;
}

body.mugm-site.mugm-page-events .mugm-events-cards > .mugm-evcard > .mugm-evcard__body,
body.mugm-site.mugm-page-events .mugm-events-cards > .mugm-evcard.is-next > .mugm-evcard__body {
  padding: 0 !important;
  justify-content: stretch !important;
  row-gap: 0 !important;
}

body.mugm-site.mugm-page-events .mugm-events-cards > .mugm-evcard > .mugm-evcard__body,
body.mugm-site.mugm-page-events .mugm-events-cards > .mugm-evcard.is-next > .mugm-evcard__body {
  display: grid !important;
}

/* ========================================================================== */
/* FINAL CONSOLIDATION — specificity hardening and compact vertical rhythm    */
/* ========================================================================== */

/* The hero and the module own their spacing. The legacy main wrapper must not
   create an invisible viewport-sized block between content and the lower rail. */
body.mugm-site:not(.mugm-page-home) main.mugm-main {
  min-height: 0 !important;
  padding: 0 !important;
  background: #041017 !important;
}

body.mugm-site:not(.mugm-page-home) main.mugm-main > .mugm-inner-stage {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.mugm-site:not(.mugm-page-home) main.mugm-main .mugm-module-shell {
  padding-top: clamp(24px, 2.4vw, 38px) !important;
  padding-bottom: clamp(28px, 2.8vw, 46px) !important;
}

/* Compact continuation rail: useful navigation, never an empty second hero. */
body.mugm-site:not(.mugm-page-home) section.mugm-world-rail .mugm-world-rail__inner {
  min-height: 0 !important;
  grid-template-columns: minmax(210px, .42fr) minmax(0, 1.58fr) !important;
  align-items: center !important;
  gap: clamp(26px, 3.5vw, 58px) !important;
  padding-top: clamp(18px, 2vw, 28px) !important;
  padding-bottom: clamp(18px, 2vw, 28px) !important;
}

body.mugm-site:not(.mugm-page-home) section.mugm-world-rail .mugm-world-rail__intro h2 {
  max-width: 330px !important;
  margin: 4px 0 0 !important;
  font-size: clamp(1.45rem, 2vw, 2.15rem) !important;
  line-height: .98 !important;
}

body.mugm-site:not(.mugm-page-home) section.mugm-world-rail .mugm-world-rail__links a {
  min-height: 66px !important;
  padding-top: 9px !important;
  padding-bottom: 9px !important;
}

body.mugm-site:not(.mugm-page-home) footer.mugm-footer {
  padding-top: clamp(26px, 3vw, 42px) !important;
}

/* Account page: one connected navigation plane, no nested card backdrop. */
body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline,
body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__grid {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__grid {
  margin-top: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item {
  min-height: 96px !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 0 !important;
  border-right: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:last-child {
  border-right: 0 !important;
}

body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:hover {
  background: linear-gradient(180deg, rgba(91, 197, 207, .055), rgba(91, 197, 207, .008)) !important;
}

/* Downloads: remove the legacy 980px panel and image-backed cards. */
body.mugm-site.mugm-page-downloads .mugm-downloads,
body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group,
body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-list {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-list {
  display: block !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads article.mugm-download-row {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 90px !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(24px, 5vw, 86px) !important;
  margin: 0 !important;
  padding: 18px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads article.mugm-download-row:hover {
  padding-left: 12px !important;
  background: linear-gradient(90deg, rgba(92, 200, 210, .045), transparent 72%) !important;
}

body.mugm-site.mugm-page-downloads .mugm-download-row .mugm-action-row__title i,
body.mugm-site.mugm-page-downloads .mugm-download-group__title i {
  color: var(--mugm-v4-cyan) !important;
  font-size: .58em !important;
}

/* Rankings on small screens stay a compact data table with horizontal scroll.
   The previous one-record-per-screen card conversion is intentionally disabled. */
@media (max-width: 900px) {
  body.mugm-site.mugm-page-rankings .mugm-table-wrap,
  body.mugm-site.mugm-page-rankings .table-responsive {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table {
    display: table !important;
    width: max(100%, 820px) !important;
    min-width: 820px !important;
    table-layout: auto !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table thead {
    display: table-header-group !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table tbody {
    display: table-row-group !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table tr {
    display: table-row !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table th,
  body.mugm-site.mugm-page-rankings table.mugm-table td {
    display: table-cell !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 9px 11px !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table td::before {
    display: none !important;
    content: none !important;
  }

  body.mugm-site.mugm-page-rankings table.mugm-table th:first-child,
  body.mugm-site.mugm-page-rankings table.mugm-table td:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #061922 !important;
  }
}

/* Event modal uses the same full-width register as the page, without duplicate
   page heading or a wall of nested cards. */
#eventModal .mugm-dialog__panel,
#eventModal .mugm-dialog__panel--wide {
  width: min(96vw, 1600px) !important;
  max-width: 1600px !important;
  max-height: min(92dvh, 980px) !important;
  border-radius: 0 !important;
}

#eventModal .mugm-dialog__body {
  padding: clamp(18px, 2.4vw, 32px) !important;
}

#eventModal .mugm-events-console__head {
  display: none !important;
}

#eventModal .mugm-events-console,
#eventModal .mugm-events-head,
#eventModal .mugm-events-grid,
#eventModal .mugm-events-cards {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#eventModal .mugm-events-head {
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
}

#eventModal .mugm-events-cards {
  display: block !important;
}

#eventModal .mugm-evcard,
#eventModal .mugm-evcard.is-next {
  position: relative !important;
  display: grid !important;
  width: 100% !important;
  min-height: 0 !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

#eventModal .mugm-evcard:first-child {
  border-top: 1px solid var(--mugm-v6-line) !important;
}

#eventModal .mugm-evcard__media,
#eventModal .mugm-evcard.is-next .mugm-evcard__media {
  width: 72px !important;
  min-height: 72px !important;
  height: 72px !important;
  aspect-ratio: 1 / 1 !important;
}

#eventModal .mugm-evcard__body,
#eventModal .mugm-evcard.is-next .mugm-evcard__body {
  display: grid !important;
  min-width: 0 !important;
  grid-template-columns: minmax(230px, 1fr) minmax(130px, .45fr) minmax(150px, .42fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  gap: 0 clamp(20px, 3vw, 54px) !important;
  padding: 0 !important;
  background: transparent !important;
}

#eventModal .mugm-evcard__body::before { grid-column: 1; grid-row: 1; }
#eventModal .mugm-evcard__title { grid-column: 1; grid-row: 2; font-size: clamp(1.12rem, 1.45vw, 1.55rem) !important; }
#eventModal .mugm-evcard__details { grid-column: 2; grid-row: 1 / 3; margin: 0 !important; }
#eventModal .mugm-evcard__footer {
  grid-column: 3;
  grid-row: 1 / 3;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 0 0 20px !important;
  align-items: flex-end !important;
  flex-direction: column !important;
  justify-content: center !important;
  border: 0 !important;
  border-left: 1px solid var(--mugm-v6-line) !important;
  text-align: right !important;
}

#eventModal .mugm-event-progress { height: 1px !important; margin-top: 8px !important; }

/* One scrolling surface for purchase dialogs on phones. */
.mugm-mp-modal,
.mugm-payment-modal {
  overflow: hidden !important;
}

.mugm-mp-modal__dialog,
.mugm-payment-modal__dialog {
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

@media (max-width: 900px) {
  body.mugm-site:not(.mugm-page-home) section.mugm-world-rail .mugm-world-rail__inner {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding-block: 18px !important;
  }

  body.mugm-site:not(.mugm-page-home) section.mugm-world-rail .mugm-world-rail__intro h2 {
    max-width: none !important;
    font-size: 1.65rem !important;
  }

  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item,
  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:nth-child(2n),
  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:last-child {
    min-height: 76px !important;
    grid-column: auto !important;
    padding: 12px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mugm-v6-line) !important;
  }

  #eventModal .mugm-dialog__panel,
  #eventModal .mugm-dialog__panel--wide {
    width: 100% !important;
    max-width: none !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    border: 0 !important;
  }

  #eventModal .mugm-dialog__body {
    padding: 14px 18px 24px !important;
  }

  #eventModal .mugm-evcard__body,
  #eventModal .mugm-evcard.is-next .mugm-evcard__body {
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 16px !important;
  }

  #eventModal .mugm-evcard__body::before,
  #eventModal .mugm-evcard__title { grid-column: 1; }
  #eventModal .mugm-evcard__details { grid-column: 1; grid-row: 3; margin-top: 6px !important; }
  #eventModal .mugm-evcard__footer { grid-column: 2; grid-row: 1 / 4; }
}

@media (max-width: 620px) {
  body.mugm-site.mugm-page-downloads .mugm-downloads article.mugm-download-row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 17px 0 !important;
  }

  body.mugm-site.mugm-page-downloads .mugm-download-row .mugm-action-row__actions {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: space-between !important;
  }

  #eventModal .mugm-evcard,
  #eventModal .mugm-evcard.is-next {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  #eventModal .mugm-evcard__media,
  #eventModal .mugm-evcard.is-next .mugm-evcard__media {
    width: 58px !important;
    min-height: 58px !important;
    height: 58px !important;
  }

  #eventModal .mugm-evcard__body,
  #eventModal .mugm-evcard.is-next .mugm-evcard__body {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }

  #eventModal .mugm-evcard__body::before,
  #eventModal .mugm-evcard__title,
  #eventModal .mugm-evcard__details,
  #eventModal .mugm-evcard__footer {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  #eventModal .mugm-evcard__footer {
    min-height: 0 !important;
    margin-top: 8px !important;
    padding: 8px 0 0 !important;
    align-items: baseline !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    border-left: 0 !important;
    border-top: 1px solid var(--mugm-v6-line) !important;
    text-align: left !important;
  }

  .mugm-mp-modal,
  .mugm-payment-modal {
    padding: 0 !important;
  }

  .mugm-mp-modal__dialog,
  .mugm-payment-modal__dialog {
    width: 100vw !important;
    max-width: none !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
  }
}

/* Last-mile overrides for legacy selectors with structural pseudo-classes. */
body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-module-intro,
body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group__header {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group:first-of-type article.mugm-download-row:first-child,
body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group:first-child article.mugm-download-row:first-child {
  min-height: 90px !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: clamp(24px, 5vw, 86px) !important;
  padding: 18px 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--mugm-v6-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads article.mugm-download-row::before,
body.mugm-site.mugm-page-downloads .mugm-downloads article.mugm-download-row::after {
  display: none !important;
  content: none !important;
}

body.mugm-site.mugm-page-events .mugm-events-console .mugm-events-cards {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.mugm-site.mugm-page-events .mugm-events-console .mugm-evcard:not(.is-next) {
  background: transparent !important;
}

@media (max-width: 1180px) {
  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:nth-child(2n) {
    border-right: 0 !important;
  }

  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__item:last-child {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 620px) {
  body.mugm-site.mugm-page-usercp .mugm-account-hub .mugm-usercp.mugm-usercp--inline .mugm-usercp__grid {
    grid-template-columns: 1fr !important;
  }

  body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group:first-of-type article.mugm-download-row:first-child,
  body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group:first-child article.mugm-download-row:first-child {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 17px 0 !important;
  }
}

/* Remove the legacy viewport-height reservation from every inner module. */
body.mugm-site:not(.mugm-page-home) main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-rankings main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-events main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-downloads main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-donation main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-usercp main.mugm-main .mugm-inner-stage > .mugm-module-shell,
body.mugm-site.mugm-page-info main.mugm-main .mugm-inner-stage > .mugm-module-shell {
  height: auto !important;
  min-height: 0 !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group {
  margin-bottom: 0 !important;
}

body.mugm-site.mugm-page-downloads .mugm-downloads .mugm-download-group + .mugm-download-group {
  margin-top: 30px !important;
}

#eventModal .mugm-events-head {
  min-height: 0 !important;
  height: auto !important;
  grid-template-rows: auto !important;
  align-items: center !important;
  padding: 0 !important;
}
