.wmm-entry-art { margin: 0 0 20px; aspect-ratio: 1635 / 962; overflow: hidden; }
.wmm-entry-art img { display: block; width: 100%; height: 100%; object-fit: contain; }
.wmm-entry-banner { position: relative; margin: 0; aspect-ratio: 3.4; overflow: hidden; border-block: 1px solid #7d9ca6; background: #74c9f4; text-align: left; }
.wmm-entry-banner img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: right top; }
.wmm-entry-banner figcaption { position: absolute; left: 5%; top: 50%; transform: translateY(-50%); width: 46%; }
.wmm-entry-banner.has-slogan figcaption { top: 54%; }
.wmm-banner-slogan { position: absolute; left: 1.5%; top: 2.5%; margin: 0; color: #102b39; opacity: 0.5; font-family: Georgia, "Times New Roman", serif; font-size: 14.4px; font-weight: 700; line-height: 1.1; white-space: nowrap; }
.wmm-banner-heart { color: #d52035; font-family: Arial, sans-serif; }
.wmm-entry-banner h1 { margin: 0; color: #102b39; font-size: 38px; line-height: 1.25; font-weight: 800; text-shadow: 0 1px 1px #c1e8fb; }
.wmm-entry-banner h1 span { display: block; margin-top: 6px; font-size: 22px; font-weight: 650; }
.site-header.wmm-banner-header { margin-bottom: 0; }
.wmm-banner-header + .detail-main > .hero { padding-top: 16px; }
.wmm-keepsake { display: flex; align-items: center; gap: 18px; padding: 18px 0; margin: 14px 0 24px; border-block: 1px solid #386b68; }
.wmm-keepsake > img { flex: 0 0 160px; width: 160px; height: auto; aspect-ratio: 1635 / 962; border-radius: 4px; }
.wmm-keepsake h4 { margin: 0 0 6px; color: #bce5da; font-size: 1.1rem; }
.wmm-keepsake p { margin: 0 0 10px; }
.wmm-keepsake nav { display: flex; gap: 10px 20px; flex-wrap: wrap; }
.wmm-keepsake a { color: #7de5ef; text-underline-offset: 3px; }
.wmm-entry-deadline { color: #ffd09a; font-weight: 700; }
.wmm-entry-facts { display: grid; gap: 20px; }
.wmm-entry-fact h4 { margin: 0 0 8px; color: #a8e6d0; }
.wmm-entry-fact p { margin: 0; }
.wmm-entry-region h4 { color: #a8e6d0; }
.wmm-entry-region ul { padding-left: 20px; }
.wmm-entry-region li { margin: 8px 0; }
.wmm-entry-region a { color: #7de5ef; }
.wmm-entry-regions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.wmm-entry-archive { margin-top: 24px; padding-top: 16px; border-top: 1px solid #3f5557; }
body[data-country-code="WMM"] .detail-main > .wmm-regional-rankings-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); align-items: center; gap: 12px; padding: 16px 20px; background: #222b2e; }
body[data-country-code="WMM"] .wmm-regional-rankings-card h3 { margin: 0; font-size: 16px; }
.wmm-regional-rankings-card nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; }
.wmm-regional-rankings-card a { display: flex; align-items: center; justify-content: center; gap: 6px; min-width: 0; min-height: 44px; padding: 4px 6px; color: #7de5ef; font-size: 14px; line-height: 1.3; text-align: center; text-underline-offset: 3px; }
.wmm-regional-rankings-card a + a { border-inline-start: 1px solid #42565b; }
.wmm-regional-rankings-card a:hover { background: #2c3e44; }
.wmm-regional-rankings-card a:focus-visible { outline: 2px solid var(--pao-color-standard, #00cbe6); outline-offset: -2px; }
body[data-country-code="WMM"][data-detail-presentation="paired"] .detail-feature-column { min-width: 0; }
body[data-country-code="WMM"][data-detail-presentation="paired"] .wmm-winner dd > span:first-child { min-width: 0; overflow-wrap: anywhere; }
[data-entry-phase][hidden], [data-entry-final-week][hidden] { display: none !important; }
@media (max-width: 720px) {
  body[data-country-code="WMM"] .detail-main > .wmm-regional-rankings-card { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .wmm-regional-rankings-card a { flex-direction: column; gap: 3px; padding-inline: 2px; }
  .wmm-entry-banner { aspect-ratio: 3; }
  .wmm-banner-slogan { font-size: 9px; }
  .wmm-entry-banner h1 { font-size: 22px; }
  .wmm-entry-banner h1[lang="en"] { font-size: 20px; }
  .wmm-entry-banner h1 span { margin-top: 4px; font-size: 13px; }
  .wmm-entry-regions { grid-template-columns: 1fr; gap: 12px; }
  .wmm-keepsake { align-items: flex-start; gap: 12px; }
  .wmm-keepsake > img { flex-basis: 92px; width: 92px; }
  .wmm-keepsake > div { min-width: 0; }
}
@media (max-width: 400px) {
  .wmm-entry-banner h1 { font-size: 20px; }
  .wmm-entry-banner.has-slogan:lang(en) figcaption { width: 52%; }
  body[data-detail-presentation="paired"] .wmm-geo-pills { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; box-sizing: border-box; gap: 2px; padding: 3px; border-radius: 8px; }
  body[data-detail-presentation="paired"] .wmm-geo-pill { min-width: 0; flex-direction: column; justify-content: center; gap: 4px; padding: 6px 2px; font-size: 12px; }
}
@media (max-width: 360px) { .wmm-keepsake { display: block; } .wmm-keepsake > img { float: right; margin: 0 0 8px 12px; } }

/* Opt-in editorial layout; other race guides keep their existing presentation. */
.wmm-compact-editorial { letter-spacing: 0; }
.wmm-compact-overview { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; text-align: left; margin-bottom: 20px; }
.wmm-compact-date, .wmm-compact-report { min-width: 0; }
.wmm-compact-editorial .wmm-compact-date h3 { margin: 0 0 6px; font-size: 14px; color: #b9c6cb; }
.wmm-compact-date > strong { display: block; font-size: 24px; line-height: 1.4; color: #f4f7f7; }
.wmm-compact-date > p { margin: 6px 0 10px; }
.wmm-compact-utilities, .wmm-compact-utilities .event-calendar-actions, .wmm-compact-utilities .venue-actions { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0; }
.wmm-compact-editorial .wmm-compact-utilities a { min-height: 32px; display: inline-flex; align-items: center; padding: 0; border: 0; border-radius: 0; background: none; color: #b9dbe1; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
body.wmm-compact-editorial .wmm-compact-overview .info-card.wmm-entry-status { grid-column: auto; margin: 0; padding: 12px 16px; }
.wmm-compact-overview .wmm-entry-status h3 { margin: 0 0 4px; }
.wmm-compact-overview .wmm-entry-status p { margin: 0; line-height: 1.5; }
.wmm-compact-overview .wmm-entry-deadline { margin-top: 6px; }
.wmm-compact-overview .inline-link { display: inline-block; margin-top: 6px; }
.wmm-compact-overview .wmm-compact-secondary { font-size: 14px; color: #b9c6cb; }
.wmm-compact-editorial .hero-actions { margin-top: 0; }
.wmm-compact-editorial #prior-editions > h3 { margin-bottom: 0; }
.wmm-compact-editorial #prior-editions > p { color: #b9c6cb; font-size: 14px; margin: 4px 0 0; }
.wmm-compact-editorial .wmm-keepsake { padding: 14px 0; }
.wmm-compact-editorial .wmm-keepsake > img { width: 128px; flex-basis: 128px; }
.wmm-compact-editorial .wmm-keepsake nav { margin-top: 8px; gap: 6px 12px; }
.wmm-compact-results { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; align-items: start; }
.wmm-compact-results h4 { font-size: 16px; margin: 0 0 10px; color: #a8e6d0; }
.wmm-compact-results p { font-size: 16px; margin: 0 0 14px; }
.wmm-compact-results .wmm-regional-honors-card { min-width: 0; border: 0; border-radius: 0; padding: 0; margin: 0; background: transparent; }
.wmm-compact-results .wmm-regional-header { align-items: start; flex-direction: column; gap: 10px; }
body.wmm-compact-editorial .wmm-geo-pills { display: flex; width: 100%; border-radius: 8px; }
body.wmm-compact-editorial .wmm-geo-pill { flex: 1; min-width: 0; flex-direction: row; justify-content: center; min-height: 44px; font-size: 14px; padding: 6px; }
.wmm-compact-editorial .wmm-geo-summary-row { flex-wrap: wrap; }
.wmm-compact-editorial .wmm-geo-summary-title { font-size: 14px; }
.wmm-compact-editorial .wmm-geo-runner-count { font-size: 13px; }
.wmm-compact-results .wmm-regional-rankings-card { margin: 0; padding: 0 0 16px; background: transparent; border: 0; border-bottom: 1px solid #394044; border-radius: 0; }
.wmm-compact-editorial #prior-editions > .wmm-compact-results { margin-top: 16px; }
.wmm-compact-results .wmm-regional-rankings-card nav { margin-top: 10px; }
.wmm-compact-editorial .wmm-compact-course { margin: 16px 0; font-size: 16px; }
.wmm-compact-editorial .wmm-regional-winners .wmm-winner:last-child { border-bottom: 0; }
.wmm-compact-editorial .wmm-geo-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; border-top: 0; border-bottom: 1px solid #394044; padding: 0 0 16px; }
.wmm-compact-editorial .wmm-geo-actions .button { width: 100%; min-width: 0; min-height: 44px; box-sizing: border-box; padding: 8px; font-size: 14px; white-space: normal; display: flex; align-items: center; justify-content: center; }
.wmm-compact-editorial .wmm-geo-actions .button:only-child { grid-column: 1 / -1; }
.wmm-compact-editorial .wmm-winner dd > span:first-child { min-width: 0; overflow-wrap: anywhere; }
.wmm-compact-editorial .wmm-entry-archive { border-block: 1px solid #394044; margin-top: 24px; padding: 0; }
.wmm-compact-editorial .wmm-entry-archive > summary { padding: 16px 0; font-size: 16px; color: #b9dbe1; cursor: pointer; }
.wmm-compact-editorial .wmm-entry-archive[open] { padding-bottom: 16px; }
.wmm-compact-editorial #entry-routes .detail-feature-grid { display: block; }
.wmm-compact-editorial #entry-routes > .detail-feature-grid { border-top: 1px solid #46616a; }
.wmm-compact-editorial .wmm-entry-facts { display: block; border-top: 1px solid #46616a; }
.wmm-entry-topic { border-bottom: 1px solid #46616a; }
.wmm-entry-topic summary { padding: 17px 0; color: #e9f3f3; font-size: 16px; font-weight: 600; cursor: pointer; line-height: 1.5; }
.wmm-entry-topic summary::marker, .wmm-compact-editorial .wmm-entry-archive summary::marker { color: #7de5ef; }
.wmm-entry-topic[open] summary { color: #7de5ef; }
.wmm-entry-topic-body { padding: 0 0 18px 20px; }
.wmm-entry-topic-body p, .wmm-entry-topic-body li { font-size: 16px; line-height: 1.7; }
.wmm-entry-topic summary:focus-visible, .wmm-compact-editorial .wmm-entry-archive summary:focus-visible { outline: 2px solid #00cbe6; outline-offset: 4px; }
/* Open chapters separate race-week tasks without hiding schedules or rules. */
.wmm-guide-chapter { display: grid; grid-template-columns: 144px minmax(0, 1fr); gap: 24px; margin: 0; padding: 24px 0; border: 0; border-top: 1px solid #394044; border-radius: 0; background: transparent; box-shadow: none; }
.wmm-guide-chapter > h4 { margin: 0; font-size: 18px; line-height: 1.5; color: #7de5ef; }
.wmm-guide-chapter-body { min-width: 0; display: grid; align-content: start; gap: 14px; }
.wmm-guide-chapter-body > p, .wmm-guide-chapter-body > ul { margin: 0; }
.wmm-guide-chapter-body p, .wmm-guide-chapter-body li { font-size: 16px; line-height: 1.75; }
.wmm-guide-chapter-body .detail-feature-list { gap: 12px; padding-inline-start: 20px; }
.wmm-guide-chapter-body .detail-feature-list li { margin: 0; line-height: 1.75; }
.wmm-guide-chapter-body li::marker { color: #8ea9ac; }
.wmm-guide-chapter-body h5 { margin: 10px 0 -6px; font-size: 16px; font-weight: 650; color: #e9f3f3; }
.wmm-guide-chapter-body h5:first-child { margin-top: 0; }
.wmm-guide-chapter-body .wmm-table-card { padding: 0; border: 0; border-radius: 0; background: transparent; }
.wmm-guide-chapter-body .wmm-fact-table caption { color: #e9f3f3; font-size: 16px; }
.wmm-guide-chapter-body .wmm-fact-table th, .wmm-guide-chapter-body .wmm-fact-table td { padding: 9px 6px; }
.wmm-guide-chapter-body .wmm-cutoffs-grid { display: block; margin: 0; }
.wmm-guide-chapter-body .wmm-cutoffs-grid ul { margin-bottom: 0; }
.wmm-guide-chapter-body .wmm-disclosure-body { display: block; padding-bottom: 0; }
@media (max-width: 720px) {
  .wmm-guide-chapter { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 20px 0; }
  .wmm-guide-chapter-body .wmm-fact-table { font-size: 14px; }
  .wmm-guide-chapter-body .wmm-fact-table td:first-child { white-space: nowrap; }
  .wmm-compact-overview { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .wmm-compact-results { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .wmm-compact-editorial .wmm-winner-images { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .wmm-compact-editorial .wmm-keepsake > img { width: 100px; flex-basis: 100px; }
}
@media (max-width: 400px) {
  body.wmm-compact-editorial .wmm-geo-pill { flex-direction: column; gap: 4px; }
  .wmm-guide-chapter-body .wmm-fact-table { font-size: 13px; }
  .wmm-guide-chapter-body .wmm-fact-table th, .wmm-guide-chapter-body .wmm-fact-table td { padding: 9px 4px; }
  .wmm-guide-chapter-body .wmm-fact-table td:first-child { white-space: normal; }
  .wmm-guide-chapter-body .wmm-fact-table td:not(:first-child) { white-space: nowrap; }
}

/* Opt-in tonal bands replace decorative rules, not table or choice separators. */
body.wmm-tonal-sections { --wmm-section-inset: 20px; --wmm-section-cool: #222a2b; --wmm-section-neutral: #2a292a; }
body.wmm-tonal-sections .detail-main > section:not(.hero):not(.info-grid) { background: var(--wmm-section-cool); border-top: 0; margin-top: 12px; }
body.wmm-tonal-sections .detail-main > section:nth-of-type(even):not(.hero):not(.info-grid) { background: var(--wmm-section-neutral); }
body.wmm-tonal-sections .wmm-section-nav { border: 0; background: #202526; }
body.wmm-tonal-sections .wmm-guide-chapter { margin-inline: calc(-1 * var(--wmm-section-inset)); padding-inline: var(--wmm-section-inset); border-top: 0; background: var(--wmm-section-cool); }
body.wmm-tonal-sections .wmm-guide-chapter:nth-of-type(even) { background: var(--wmm-section-neutral); }
body.wmm-tonal-sections .wmm-detail-extra-card:has(.wmm-guide-chapter) { padding-bottom: 0; }
body.wmm-tonal-sections .wmm-disclosure,
body.wmm-tonal-sections #entry-routes > .detail-feature-grid,
body.wmm-tonal-sections .wmm-entry-topic,
body.wmm-tonal-sections .wmm-regional-rankings-card,
body.wmm-tonal-sections .wmm-geo-actions,
body.wmm-tonal-sections .wmm-winner:last-child,
body.wmm-tonal-sections .wmm-official-link { border: 0; }
body.wmm-tonal-sections .wmm-entry-topic + .wmm-entry-topic { border-top: 1px solid #465054; }
body.wmm-tonal-sections .detail-main > .detail-disclaimer { background: transparent; margin-top: 0; }
body.wmm-tonal-sections .detail-main > #where-to-stay { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 24px; background: #29362e; }
body.wmm-tonal-sections #where-to-stay h3 { margin: 0; color: #d6ead8; }
body.wmm-tonal-sections #where-to-stay p { margin: 0; }
body.wmm-tonal-sections #where-to-stay p:last-child { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
body.wmm-tonal-sections #where-to-stay .button { background: #00cbe6; border-color: #00cbe6; color: #102528; white-space: normal; text-align: center; }
body.wmm-tonal-sections #where-to-stay .button:hover { background: #81e6ed; }
@media (max-width: 600px) {
  body.wmm-tonal-sections { --wmm-section-inset: 14px; }
  body.wmm-tonal-sections .detail-main > #where-to-stay { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  body.wmm-tonal-sections #where-to-stay p:last-child { grid-column: 1; grid-row: auto; }
}
