/* ==========================================================================
   Refined homepage (template-parts/home-refined.php).
   Desktop from 900px; phones below reorder the same blocks.
   ========================================================================== */

.rh { --rh-gold: #FBBF00; --rh-line: #EAEAE7; --rh-soft: #F6F6F3; --rh-g: 28px; font-family: var(--font-body); color: var(--ink); }
.rh *, .rh *::before, .rh *::after { box-sizing: border-box; }
.rh a { color: inherit; text-decoration: none; }
.rh h1, .rh h2, .rh h3, .rh p, .rh ul, .rh ol { margin: 0; }
.rh ul, .rh ol { list-style: none; padding: 0; }
.rh img { display: block; width: 100%; height: 100%; object-fit: cover; }
.rh-wrap { max-width: 1240px; margin: 0 auto; padding: 0 var(--rh-g); }
.rh-m { display: none; }

/* Only one layout shows when the two devices use different ones. */
@media (max-width: 899px) { .rh-only-desktop, .rh-scope-desktop { display: none !important; } }
@media (min-width: 900px) { .rh-only-mobile, .rh-scope-mobile { display: none !important; } }

/* ---------- shared bits ---------- */
.rh-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.rh-h { font-family: var(--font-display); font-weight: 800; letter-spacing: -.02em; }
.rh-more { flex: none; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-2); white-space: nowrap; }
.rh-more:hover { color: var(--ink); }
.rh-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-ink); margin-bottom: 4px !important; }
.rh-eyebrow--coral { color: var(--coral-ink); }
.rh-kicker { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--coral-ink); }
.rh-date { display: block; font-size: 12.5px; color: #8A8A87; margin-top: 4px; }
.rh-empty { color: var(--ink-3); font-size: 14px; padding: 12px 0; }
.is-empty { display: block; background: repeating-linear-gradient(135deg, #E9E6DF 0 14px, #E2DED6 14px 28px); }
.rh-new { flex: none; font-size: 9.5px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; background: var(--coral); color: #FFFFFF; border-radius: 5px; padding: 2px 6px; }
.rh-new--gold { background: var(--rh-gold); color: var(--ink); }
.rh-btn { display: inline-flex; align-items: center; justify-content: center; height: 44px; padding: 0 18px; border-radius: 11px; font-weight: 700; font-size: 14px; }
.rh-btn--light { background: #FFFFFF; color: var(--ink) !important; }
.rh-btn--dark { background: var(--ink); color: #FFFFFF !important; }
.rh-btn--ghost { color: #D6D6D2 !important; }
.rh-badge { flex: none; width: 46px; text-align: center; border: 1px solid var(--rh-line); background: #FFFFFF; border-radius: 10px; line-height: 1.1; padding: 6px 0; }
.rh-badge-dow { display: block; font-size: 9.5px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--coral-ink); }
.rh-badge-day { font-family: var(--font-display); font-weight: 800; font-size: 18px; }
.rh-badge--light { border: 0; color: var(--ink); }
.rh-badge--sm { width: 36px; border-radius: 8px; padding: 4px 0; }
.rh-badge--sm .rh-badge-dow { font-size: 8.5px; }
.rh-badge--sm .rh-badge-day { font-size: 14px; }
.rh-paw { position: absolute; fill: var(--rh-gold); pointer-events: none; }

/* ---------- hero ---------- */
.rh-hero { background: #FFFFFF; padding: 0 0 34px; }

/* Headline: a full-width black band right under the header. */
.rh-mast { position: relative; overflow: hidden; background: #000000; color: #FFFFFF; padding: 54px var(--rh-g) 78px; text-align: center; margin-bottom: 26px; }
.rh-mast-inner { position: relative; max-width: 1240px; margin: 0 auto; }
.rh-mast-glow { position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 130%, rgba(251, 191, 0, .18), transparent 55%); }
.rh-skyline { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 44px; fill: var(--rh-gold); opacity: .2; }
.rh-mast-badge { font-size: 12.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--rh-gold); }
.rh-mast-title { margin-top: 10px !important; font-family: var(--font-display); font-weight: 800; font-size: clamp(36px, 3.8vw, 54px); line-height: 1.06; letter-spacing: -.04em; color: #FFFFFF; }
.rh-paw--a { left: 6%; top: 44px; width: 46px; height: 46px; opacity: .5; transform: rotate(-18deg); }
.rh-paw--b { left: calc(6% + 44px); top: 100px; width: 22px; height: 22px; opacity: .3; transform: rotate(-8deg); }
.rh-paw--c { right: 6%; top: 46px; width: 42px; height: 42px; opacity: .45; transform: rotate(20deg); }
.rh-paw--d { right: calc(6% + 40px); top: 98px; width: 20px; height: 20px; opacity: .28; transform: rotate(12deg); }

/* Three equal columns: two white cards and the account box. */
.rh-top { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.rh-top--solo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rh-col { display: flex; flex-direction: column; min-width: 0; background: #FFFFFF; border: 1px solid #E6E4DE; border-radius: 16px; padding: 18px 20px 20px; }
.rh-col .rh-head { align-items: center; padding-bottom: 12px; border-bottom: 1px solid #EEECE6; }
.rh-col .rh-h { font-size: 17px; font-weight: 700; letter-spacing: -.01em; }
.rh-col .rh-more { font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--ink-3); }
.rh-cat { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8A8A87; margin-top: 4px; }

/* Latest: one picture, then four headlines. */
.rh-lead { display: block; padding-top: 14px; }
.rh-lead-img { display: block; aspect-ratio: 2 / 1; border-radius: 10px; overflow: hidden; }
.rh-lead-title { display: block; margin-top: 12px; font-family: var(--font-display); font-weight: 700; font-size: 18px; line-height: 1.25; letter-spacing: -.01em; }
.rh-heads { flex: 1; display: flex; flex-direction: column; justify-content: space-between; margin-top: 12px !important; }
.rh-heads li { flex: 1; display: flex; }
.rh-heads a { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 10px 0; border-top: 1px solid #EEECE6; }
.rh-heads-title { display: block; font-weight: 600; font-size: 14.5px; line-height: 1.35; }
.rh-lead:hover .rh-lead-title, .rh-heads a:hover .rh-heads-title, .rh-ev:hover .rh-ev-title, .rh-story:hover .rh-story-title, .rh-scard-list a:hover span:first-child, .rh-scard-title a:hover { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1.5px; }

/* Calendar: agenda grouped by day. */
.rh-agenda { flex: 1; display: flex; flex-direction: column; }
.rh-agenda.is-fitted { flex: 1 1 0; min-height: 0; overflow: hidden; }
.rh-day { flex: 1 0 auto; display: flex; flex-direction: column; padding-top: 12px; }
.rh-day ul { flex: 1 0 auto; display: flex; flex-direction: column; }
.rh-day li { flex: 1 0 auto; display: flex; }
.rh-day li[hidden], .rh-day[hidden] { display: none; }
.rh-day-label { display: flex; align-items: center; gap: 8px; margin-bottom: 2px !important; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8A8A87; }
.rh-day-tag { font-size: 10px; letter-spacing: .04em; background: var(--ink); color: #FFFFFF; border-radius: 999px; padding: 2px 8px; }
.rh-ev { flex: 1; display: flex; gap: 12px; align-items: center; padding: 9px 0; border-top: 1px solid #EEECE6; }
.rh-ev-time { flex: none; width: 64px; font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rh-ev-body { flex: 1; min-width: 0; line-height: 1.3; }
.rh-ev-title { display: block; font-weight: 600; font-size: 14.5px; }
.rh-ev-meta { display: block; font-size: 12px; color: #8A8A87; margin-top: 2px; }
.rh-ev-cat { font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.rh-cal .rh-new { background: var(--gold-soft); color: var(--gold-ink); }
.rh-submit { display: flex; justify-content: center; align-items: center; gap: 6px; margin-top: 14px; border: 1.5px solid #DCDAD3; border-radius: 11px; height: 44px; font-weight: 700; font-size: 13.5px; }
.rh-submit:hover { border-color: var(--ink); }

/* Account */
.rh-acct { position: relative; overflow: hidden; display: flex; flex-direction: column; background: #000000; color: #FFFFFF; border-radius: 16px; padding: 22px; min-width: 0; }
.rh-paw--e { right: 16px; top: 14px; width: 44px; height: 44px; opacity: .35; transform: rotate(18deg); }
.rh-paw--f { display: none; right: 22px; bottom: 110px; width: 28px; height: 28px; opacity: .18; transform: rotate(-14deg); }
.rh-acct-kicker { position: relative; display: flex; justify-content: space-between; font-size: 10.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--rh-gold); }
.rh-acct-kicker span { color: #A3A39F; font-weight: 600; letter-spacing: 0; text-transform: none; font-size: 12px; margin-right: 52px; }
.rh-acct-title { position: relative; font-family: var(--font-display); font-weight: 700; font-size: 21px; line-height: 1.22; margin: 8px 0 12px !important; padding-right: 40px; }
.rh-ticks { position: relative; display: flex; flex-direction: column; gap: 7px; font-size: 13.5px; color: #D6D6D2; }
.rh-ticks li::before { content: "✓"; color: var(--rh-gold); margin-right: 8px; }
.rh-acct-preview { position: relative; flex: 1; display: flex; flex-direction: column; margin-top: 18px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); border-radius: 12px; padding: 12px 14px; }
.rh-acct-preview p { font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #A3A39F; }
.rh-acct-prow { flex: 1; display: flex; gap: 10px; align-items: center; padding-top: 8px; margin-top: 8px; border-top: 1px solid rgba(255, 255, 255, .1); line-height: 1.3; }
.rh-acct-prow strong, .rh-acct-list strong { display: block; font-size: 12.5px; }
.rh-acct-prow span span, .rh-acct-list a > span:last-child > span { display: block; font-size: 11.5px; color: #A3A39F; }
.rh-acct-list li a { display: flex; gap: 12px; align-items: center; padding: 12px 0; border-top: 1px solid rgba(255, 255, 255, .12); }
.rh-acct-list strong { font-size: 14px; }
.rh-acct-text { position: relative; font-size: 13.5px; color: #D6D6D2; }
.rh-acct-btns { position: relative; display: flex; flex-direction: column; gap: 10px; margin-top: auto; padding-top: 18px; }
.rh-acct-preview + .rh-acct-btns { margin-top: 0; }
.rh-acct-btns .rh-btn { width: 100%; }
.rh-acct-btns .rh-btn--ghost { height: auto; font-weight: 600; font-size: 13px; }
.rh-acct-btns .rh-btn--ghost:hover { color: #FFFFFF !important; text-decoration: underline; }

/* Directory */
.rh-dir { margin-top: 22px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rh-dir-item { display: flex; gap: 12px; align-items: center; background: #FFFFFF; border: 1px solid #E6E4DE; border-radius: 14px; padding: 14px 16px; transition: border-color .12s; }
.rh-dir-item:hover { border-color: var(--ink); }
.rh-dir-icon { flex: none; width: 40px; height: 40px; border-radius: 11px; background: var(--teal-soft); color: var(--teal-ink); display: flex; align-items: center; justify-content: center; }
.rh-dir-body { flex: 1; min-width: 0; line-height: 1.3; }
.rh-dir-label { display: block; font-family: var(--font-display); font-weight: 700; font-size: 15.5px; }
.rh-dir-text { display: block; font-size: 12.5px; color: var(--ink-2); }
.rh-dir-arrow { color: #8A8A87; }

/* ---------- lower sections ---------- */
.rh-sec { padding: 52px 0; background: #FFFFFF; }
.rh-sec--soft { background: var(--rh-soft); }
.rh-head--big { margin-bottom: 20px; align-items: flex-end; }
.rh-head--big .rh-h { font-size: 28px; }

/* Walk */
.rh-walk-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 16px; }
.rh-walk-now { border-radius: 18px; padding: 22px; background: var(--coral-soft); display: flex; flex-direction: column; }
.rh-walk--gold .rh-walk-now { background: var(--gold-soft); }
.rh-walk--green .rh-walk-now { background: var(--green-soft); }
.rh-walk-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.rh-walk-label { display: block; font-size: 10.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--coral-ink); }
.rh-walk--gold .rh-walk-label { color: var(--gold-ink); }
.rh-walk--green .rh-walk-label { color: var(--green-ink); }
.rh-walk-label--ink { color: var(--ink-2) !important; }
.rh-walk-temp { display: block; font-family: var(--font-display); font-weight: 800; font-size: 54px; line-height: 1; letter-spacing: -.04em; }
.rh-walk-level { flex: none; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; background: var(--coral); color: #FFFFFF; border-radius: 7px; padding: 6px 10px; }
.rh-walk--gold .rh-walk-level { background: var(--gold); }
.rh-walk--green .rh-walk-level { background: var(--green); }
.rh-walk-note { font-size: 14px; color: #6B2A24; margin-top: 10px !important; }
.rh-walk--gold .rh-walk-note { color: #6B470C; }
.rh-walk--green .rh-walk-note { color: #1B5A3B; }
.rh-walk-times { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 8px; margin-top: auto; padding-top: 16px; }
.rh-walk-times > span { background: #FFFFFF; border-radius: 10px; padding: 10px 12px; }
.rh-walk-times-l { display: block; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--teal-ink); }
.rh-walk-times strong { font-size: 15px; }
.rh-walk-chart { background: #FFFFFF; border: 1px solid var(--rh-line); border-radius: 18px; padding: 20px 22px; display: flex; flex-direction: column; }
.rh-walk-chart-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.rh-walk-legend { display: flex; gap: 14px; font-size: 12px; color: var(--ink-2); }
.rh-walk-legend span::before { content: ""; display: inline-block; width: 9px; height: 9px; border-radius: 2px; margin-right: 5px; }
.rh-walk-legend .is-teal::before, .rh-bar.is-teal { background: var(--teal); }
.rh-walk-legend .is-gold::before, .rh-bar.is-gold { background: var(--gold); }
.rh-walk-legend .is-coral::before, .rh-bar.is-coral { background: var(--coral); }
.rh-bars { flex: 1; min-height: 150px; display: flex; align-items: flex-end; gap: 4px; margin-top: 16px; padding-bottom: 20px; }
.rh-bar { position: relative; flex: 1; height: var(--h); border-radius: 4px 4px 2px 2px; opacity: .85; }
.rh-bar.is-now { opacity: 1; outline: 2px solid var(--ink); outline-offset: 1px; }
.rh-bar-t { position: absolute; left: 50%; bottom: -20px; transform: translateX(-50%); font-size: 10.5px; color: var(--ink-3); white-space: nowrap; }

/* Deep dives: equal cards, latest four headlines each */
.rh-series-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.rh-series-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rh-series-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rh-series-grid--1 { grid-template-columns: minmax(0, 1fr); max-width: 420px; }
.rh-scard { position: relative; display: flex; flex-direction: column; background: #FFFFFF; border: 1px solid var(--rh-line); border-radius: 18px; overflow: hidden; }
.rh-scard-media { position: relative; display: block; aspect-ratio: 16 / 10; }
.rh-scard-media img, .rh-scard-media .is-empty { position: absolute; inset: 0; width: 100%; height: 100%; }
.rh-tag { position: absolute; left: 14px; top: 14px; z-index: 1; font-size: 10.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; background: var(--rh-gold); color: var(--ink); border-radius: 6px; padding: 4px 8px; }
.rh-feat-cap { display: none; }
.rh-scard-body { flex: 1; padding: 16px 18px 18px; display: flex; flex-direction: column; }
.rh-scard-meta { display: flex; justify-content: space-between; gap: 8px; font-size: 10.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-ink); }
.rh-scard-meta a { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; }
.rh-scard-title { font-family: var(--font-display); font-weight: 700; font-size: 17px; line-height: 1.25; margin: 3px 0 6px !important; }
.rh-scard-list a { display: flex; gap: 10px; align-items: baseline; justify-content: space-between; padding: 9px 0; border-top: 1px solid var(--rh-line); font-weight: 600; font-size: 13.5px; line-height: 1.35; }
.rh-scard-list .rh-new { background: var(--rh-gold); color: var(--ink); }
.rh-scard-chev { display: none; }

/* More from the Scoop */
.rh-stories { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.rh-story { display: block; background: #FFFFFF; border: 1px solid var(--rh-line); border-radius: 16px; overflow: hidden; transition: border-color .12s; }
.rh-story:hover { border-color: var(--ink); }
.rh-story-img { display: block; aspect-ratio: 16 / 10; }
.rh-story-body { display: block; padding: 12px 16px 16px; }
.rh-story-title { display: block; font-family: var(--font-display); font-weight: 700; font-size: 16px; line-height: 1.3; margin-top: 3px; }

/* Las Vegas 101 */
.rh-lv101 { padding-bottom: 60px; }
.rh-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; align-items: start; }
.rh-q { display: block; background: #FFFFFF; border: 1px solid var(--rh-line); border-radius: 14px; padding: 16px 18px; }
.rh-q summary { display: flex; justify-content: space-between; gap: 12px; font-weight: 700; cursor: pointer; list-style: none; }
.rh-q summary::-webkit-details-marker { display: none; }
.rh-q-sign { flex: none; width: 24px; height: 24px; border-radius: 50%; background: var(--teal-soft); position: relative; }
.rh-q-sign::before, .rh-q-sign::after { content: ""; position: absolute; left: 7px; right: 7px; top: 11px; height: 2px; border-radius: 1px; background: var(--teal-ink); }
.rh-q-sign::after { transform: rotate(90deg); transition: transform .15s; }
.rh-q[open] .rh-q-sign { background: var(--teal); }
.rh-q[open] .rh-q-sign::before, .rh-q[open] .rh-q-sign::after { background: #FFFFFF; }
.rh-q[open] .rh-q-sign::after { transform: rotate(0); }
.rh-q p { margin-top: 8px !important; font-size: 14px; color: var(--ink-2); }
.rh-q p a { color: var(--teal-ink); font-weight: 600; }
.rh-q--link { display: flex; justify-content: space-between; gap: 12px; font-weight: 700; }
.rh-q--link:hover { border-color: var(--ink); }

/* Tablet: two columns, the account box full width below. */
@media (min-width: 900px) and (max-width: 1099px) {
	.rh-top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rh-acct { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) 260px; column-gap: 28px; align-items: start; }
	.rh-acct > * { grid-column: 1; }
	.rh-acct > .rh-paw { grid-column: auto; }
	.rh-acct-preview, .rh-paw--f { display: none; }
	.rh-acct-btns { grid-column: 2; grid-row: 1 / span 4; align-self: center; margin: 0; padding: 0; }
	.rh-dir { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rh-stories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rh-series-grid, .rh-series-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rh-mast { padding: 44px var(--rh-g) 64px; }
	.rh-mast-title { font-size: 40px; }
	.rh-paw--a, .rh-paw--c { top: 30px; }
	.rh-paw--b, .rh-paw--d { top: 84px; }
}

/* ==========================================================================
   Phones
   ========================================================================== */
@media (max-width: 899px) {
	.rh { --rh-g: 16px; display: flex; flex-direction: column; }
	.rh-d { display: none; }
	.rh-m { display: inline; }
	.rh-hero, .rh-top { display: contents; }
	.rh-wrap { padding: 0 var(--rh-g); }

	.rh-mast { order: 1; }
	.rh-dir { order: 2; }
	.rh-latest { order: 3; }
	.rh-acct { order: 4; }
	.rh-cal { order: 5; }
	.rh-walk { order: 6; }
	.rh-series { order: 7; }
	.rh-scoop { order: 8; }
	.rh-lv101 { order: 9; }

	/* Headline: full width, joined to the black header. */
	.rh-mast { margin: 0; padding: 40px var(--rh-g) 62px; }
	.rh-mast-badge { font-size: 10.5px; letter-spacing: .16em; }
	.rh-mast-title { font-size: clamp(26px, 7.6vw, 31px); line-height: 1.12; letter-spacing: -.03em; margin: 8px auto 0 !important; max-width: 22ch; }
	.rh-skyline { height: 34px; opacity: .22; }
	.rh-paw--a { left: 18px; top: 22px; width: 24px; height: 24px; }
	.rh-paw--b { left: 46px; top: 54px; width: 14px; height: 14px; }
	.rh-paw--c { right: 20px; top: 30px; width: 20px; height: 20px; }
	.rh-paw--d { right: 48px; top: 62px; width: 13px; height: 13px; }

	/* Directory: four icons across. */
	.rh-dir { margin: 0; max-width: none; padding: 14px 8px 16px; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; background: #FFFFFF; border-bottom: 1px solid #EEEDE9; }
	.rh-dir-item { flex-direction: column; gap: 7px; border: 0; border-radius: 0; padding: 0; background: none; text-align: center; }
	.rh-dir-icon { width: 48px; height: 48px; border-radius: 14px; }
	.rh-dir-label { font-family: var(--font-body); font-size: 12px; }
	.rh-dir-text, .rh-dir-arrow { display: none; }

	/* Sections: full width, no boxes, one heading style. */
	.rh-col { border: 0; border-radius: 0; padding: 22px var(--rh-g) 24px; }
	.rh-col .rh-head, .rh-head--big { border: 0; padding: 0; margin-bottom: 14px; align-items: center; }
	.rh-col .rh-h, .rh-head--big .rh-h { font-size: 19px; font-weight: 800; }
	.rh-more { font-size: 13px; letter-spacing: 0; text-transform: none; }
	.rh-eyebrow { display: none; }
	.rh-sec { padding: 22px 0 24px; }

	/* Latest: lead image edge to edge, then headlines. */
	.rh-latest { padding-bottom: 12px; }
	.rh-lead { padding-top: 0; }
	.rh-lead-img { margin: 0 calc(var(--rh-g) * -1); border-radius: 0; aspect-ratio: 16 / 10; }
	.rh-lead-title { font-size: 21px; font-weight: 800; margin-top: 14px; }
	.rh-heads a { padding: 14px 0; border-color: #EEEDE9; }
	.rh-heads-title { font-family: var(--font-display); font-weight: 700; font-size: 15px; }

	/* Account: black band. */
	.rh-acct { border-radius: 0; padding: 24px var(--rh-g); }
	.rh-acct-title { font-weight: 800; max-width: 260px; }
	.rh-acct-preview, .rh-paw--f { display: none; }
	.rh-acct-btns { display: grid; grid-template-columns: 1.6fr 1fr; padding-top: 18px; }
	.rh-acct-btns .rh-btn { height: 48px; border-radius: 12px; font-size: 14.5px; }
	.rh-acct-btns .rh-btn--ghost { height: 48px; border: 1.5px solid #3A3A3A; color: #FFFFFF !important; font-weight: 700; font-size: 14.5px; }
	.rh-acct-btns .rh-btn:only-child { grid-column: 1 / -1; }

	/* Calendar agenda. */
	.rh-day:first-child { padding-top: 0; }
	.rh-ev-extra, .rh-day:not(:has(li:not(.rh-ev-extra))) { display: none !important; }
	.rh-ev:hover .rh-ev-title { text-decoration: underline; }
	.rh-ev { padding: 8px 0; }
	.rh-ev-title { font-size: 15px; }
	.rh-submit { height: 50px; border-radius: 12px; }

	/* Walk: one tinted band. */
	.rh-walk { background: var(--coral-soft); }
	.rh-walk--gold { background: var(--gold-soft); }
	.rh-walk--green { background: var(--green-soft); }
	.rh-walk-grid { display: block; }
	.rh-walk-now { padding: 0; background: none !important; border-radius: 0; }
	.rh-walk-temp { font-size: 44px; }
	.rh-walk-note { font-size: 13.5px; margin-top: 8px !important; }
	.rh-walk-times { padding-top: 14px; }
	.rh-walk-chart { display: none; }

	/* Deep dives: the featured series as a picture with its title on it, the rest as rows. */
	.rh-series-grid, .rh-series-grid--1 { display: block; max-width: none; }
	.rh-scard { flex-direction: row; align-items: center; gap: 14px; border: 0; border-top: 1px solid #EEEDE9; border-radius: 0; padding: 14px 0; overflow: visible; }
	.rh-scard-media { flex: none; width: 56px; height: 56px; aspect-ratio: auto; border-radius: 10px; overflow: hidden; }
	.rh-scard-body { padding: 0; flex-direction: column-reverse; justify-content: center; }
	.rh-scard-meta { font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; color: #8A8A87; }
	.rh-scard-meta a, .rh-scard-list { display: none; }
	.rh-scard-title { font-size: 15px; margin: 0 0 3px !important; }
	.rh-scard-chev { display: block; flex: none; color: #B5B3AD; font-size: 20px; }
	.rh-scard .rh-tag { display: none; }

	.rh-scard--feat { display: block; border: 0; padding: 0; margin: 0 calc(var(--rh-g) * -1) 4px; }
	.rh-scard--feat .rh-scard-media { width: auto; height: auto; aspect-ratio: 4 / 3; border-radius: 0; }
	.rh-scard--feat .rh-scard-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, .82) 100%); }
	.rh-scard--feat .rh-tag { display: block; left: var(--rh-g); }
	.rh-scard--feat .rh-feat-cap { display: block; position: absolute; left: var(--rh-g); right: var(--rh-g); bottom: 16px; z-index: 1; color: #FFFFFF; }
	.rh-feat-meta { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--rh-gold); }
	.rh-feat-title { display: block; font-family: var(--font-display); font-weight: 800; font-size: 26px; line-height: 1.1; margin-top: 4px; }
	.rh-feat-sub { display: block; font-size: 13.5px; color: #E6E6E2; margin-top: 4px; }
	.rh-scard--feat .rh-scard-body, .rh-scard--feat .rh-scard-chev { display: none; }
	.rh-scard--feat + .rh-scard { border-top: 0; }

	/* More from the Scoop: rows. */
	.rh-scoop { padding-bottom: 12px; }
	.rh-stories { display: block; }
	.rh-story { display: flex; align-items: center; gap: 14px; background: none; border: 0; border-top: 1px solid #E4E2DC; border-radius: 0; padding: 14px 0; }
	.rh-story:first-child { border-top: 0; }
	.rh-story-img { order: 2; flex: none; width: 88px; height: 66px; aspect-ratio: auto; border-radius: 10px; overflow: hidden; }
	.rh-story-body { flex: 1; min-width: 0; padding: 0; }
	.rh-story .rh-kicker { display: none; }
	.rh-story-title { font-size: 15px; margin: 0; }
	.rh-story .rh-date { font-size: 12px; }

	/* Las Vegas 101: lines, no boxes. */
	.rh-lv101 { padding-bottom: 14px; }
	.rh-faq { display: block; }
	.rh-q { border: 0; border-top: 1px solid #EEEDE9; border-radius: 0; padding: 14px 0; }
	.rh-q:first-child { border-top: 0; }
	.rh-q summary { font-size: 14.5px; }
	.rh-q p { font-size: 13.5px; padding-right: 30px; }
}

@media (prefers-reduced-motion: reduce) {
	.rh * { transition: none !important; }
}

/* ==========================================================================
   Editions (inc/editions.php): show the chosen one.
   ========================================================================== */
html:not([data-edition="visitor"]) [data-ed="visitor"],
html[data-edition="visitor"] [data-ed="local"] { display: none !important; }
.rh-mast-title span { display: inline; }
.rh-mast-switch { position: relative; margin-top: 12px !important; font-size: 13.5px; color: #D6D6D2; }
.rh-mast-switch button { appearance: none; border: 0; background: none; padding: 0; font: inherit; font-weight: 600; color: var(--rh-gold); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }

/* Visitor: hotel and park rows. */
.rh-heads a.rh-place { flex-direction: row; align-items: center; justify-content: flex-start; gap: 12px; }
.rh-place-body { flex: 1; min-width: 0; }
.rh-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 5px; }
.rh-pill { font-size: 11px; font-weight: 600; background: #F4F3EF; color: #3A3A38; border-radius: 6px; padding: 2px 7px; }
.rh-pill--ok { background: var(--teal-soft); color: var(--teal-ink); }
.rh-stars { flex: none; font-size: 12px; font-weight: 700; color: var(--ink-2); }
.rh-vtodo .rh-acct-title { font-size: 21px; }
.rh-vtodo a.rh-acct-prow:hover strong { text-decoration: underline; }

/* Visitor: heat by month. */
.rh-vheat-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 16px; }
.rh-vheat-card { background: #FFFFFF; border: 1px solid var(--rh-line); border-radius: 18px; padding: 20px 22px; }
.rh-vheat-label { color: var(--teal-ink) !important; }
.rh-vheat-card .rh-walk-temp { font-size: 48px; margin-top: 2px; }
.rh-vheat-note { margin-top: 8px !important; font-size: 14px; color: #3A3A38; }
.rh-vheat-tips { margin-top: 12px !important; }
.rh-vheat-tips li { padding: 10px 0; border-top: 1px solid #EEECE6; font-size: 14px; }
.rh-vheat-tips strong { display: block; font-size: 14.5px; }
.rh-months { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 8px; align-items: end; margin-top: 14px; }
.rh-month { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 6px; font-size: 12px; color: var(--ink-2); }
.rh-month b { font-size: 12.5px; color: var(--ink); }
.rh-month i { display: block; width: 100%; border-radius: 6px 6px 3px 3px; }
.rh-month i.is-teal { background: var(--teal); }
.rh-month i.is-gold { background: var(--gold); }
.rh-month i.is-coral { background: var(--coral); }
.rh-month.is-now i { outline: 2px solid var(--ink); outline-offset: 2px; }
.rh-month.is-now { color: var(--ink); font-weight: 700; }

@media (max-width: 899px) {
	.rh-vhotels { order: 3; }
	.rh-vtodo { order: 4; }
	.rh-vparks { order: 5; }
	.rh-vheat { order: 6; }
	.rh-vtodo .rh-acct-preview { display: flex; }
	.rh-vtodo .rh-acct-btns .rh-btn--ghost { border: 1.5px solid #3A3A3A; }
	.rh-vheat-grid { grid-template-columns: minmax(0, 1fr); }
	.rh-months { gap: 4px; }
	.rh-month, .rh-month b { font-size: 10px; }
	.rh-month i { max-height: 110px; }
}
.rh-acct .rh-acct-title { color: #FFFFFF; }
.rh-vhotels .rh-heads, .rh-vparks .rh-heads { justify-content: flex-start; }
.rh-vhotels .rh-heads li, .rh-vparks .rh-heads li { flex: none; }
@media (max-width: 899px) { .rh-acct-btns .rh-btn { white-space: nowrap; padding: 0 12px; } }
