/* RIV 0.2.2: owner-confirmed arc / sweep / counter-accent grammar.
   Scoped native block layouts coexist with legacy generic rules. No forced priority overrides. */
:root {
    --riv-blue: var(--wp--preset--color--blue, #0157a4);
    --riv-yellow: var(--wp--preset--color--yellow, #feed01);
    --riv-ink: var(--wp--preset--color--ink, #172635);
    --riv-muted: var(--wp--preset--color--muted, #52606d);
    --riv-cream: #faf8ef;
    --riv-mist: var(--wp--preset--color--mist, #f3f6f8);
    --riv-line: var(--wp--preset--color--line, #d5dde4);
    --riv-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --riv-display: "Arial Narrow", "Franklin Gothic Medium", "Segoe UI", sans-serif;
    --riv-width: 1200px;
    --riv-gutter: 16px;
    --riv-radius: 0;
    --riv-arc: 50%;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: 1rem; }
body { margin: 0; font-family: var(--riv-body); color: var(--riv-ink); font-size: 1rem; line-height: 1.6; }
img { max-width: 100%; height: auto; }
a, button, summary, select { touch-action: manipulation; }
:where(a, button, input, select, summary, [tabindex]):focus-visible { outline: 3px solid var(--riv-blue); outline-offset: 4px; box-shadow: 0 0 0 2px #fff; }
h1, h2, h3, p, li, th, td { overflow-wrap: anywhere; }
.wp-site-blocks { font-family: var(--riv-body); color: var(--riv-ink); font-size: 1rem; line-height: 1.6; padding-inline: 0; }
.wp-site-blocks :is(h1, h2, h3) { font-family: var(--riv-display); font-weight: 700; line-height: 1.12; letter-spacing: -.025em; }
.wp-site-blocks p { font-family: inherit; font-size: inherit; line-height: 1.6; }
.wp-site-blocks a { text-underline-offset: .22em; }
.wp-site-blocks a:hover { text-decoration-thickness: 2px; }
.wp-site-blocks main { min-height: 45vh; margin-block: 0; }
/* Width includes the content only; full bands contain this same grid.
   Explicit width also survives saved alignwide groups and legacy max-width rules. */
.wp-site-blocks :is(.riv-container, .riv-header, .riv-strip, .riv-section:not(.riv-seasonal), .riv-hub, .riv-data-note.alignwide, .riv-footer > .alignwide) {
    width: min(var(--riv-width), calc(100% - 2 * var(--riv-gutter)));
    max-width: var(--riv-width); margin-inline: auto; padding-inline: 0;
}
.wp-site-blocks main > :is(.wp-block-post-title, .wp-block-post-content, .wp-block-query) { width: min(760px, calc(100% - 2 * var(--riv-gutter))); margin-inline: auto; }
.wp-site-blocks :is(.riv-hero, .riv-seasonal, .riv-footer) { width: 100%; max-width: none; margin-inline: 0; }
/* Saved 0.1.1 bands may lack the new inner Group. Preserve their gutters
   without deleting or migrating editor content. */
.wp-site-blocks :is(.riv-hero:not(:has(> .riv-hero-inner)), .riv-seasonal:not(:has(> .riv-seasonal-inner))) { padding-inline: max(var(--riv-gutter), calc((100% - var(--riv-width)) / 2)); }
.wp-site-blocks > header { border-bottom: 1px solid var(--riv-line); }
.wp-site-blocks .riv-header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding-block: .85rem; }
/* Text identity remains text, with a small open arc/counter-line, never a fake logo. */
.wp-site-blocks .riv-wordmark { position: relative; margin: 0; padding-block: .4rem; font-family: var(--riv-display); font-size: 1.25rem; font-weight: 800; line-height: 1.15; letter-spacing: -.025em; max-width: 17rem; flex-shrink: 0; }
.riv-wordmark::after { content: ''; position: absolute; width: 2.6rem; height: .55rem; left: 0; bottom: -.1rem; border-bottom: 3px solid var(--riv-blue); border-radius: 0 0 100% 0; box-shadow: .7rem .15rem 0 -.04rem var(--riv-yellow); transform: skewX(-18deg); pointer-events: none; }
.riv-wordmark a { text-decoration: none; color: var(--riv-blue); }
.riv-header .wp-block-site-logo img { max-width: 88px; max-height: 64px; object-fit: contain; }
.riv-header .wp-block-navigation { font-family: var(--riv-body); font-size: 1rem; font-weight: 600; }
.riv-header .wp-block-navigation__container { gap: .75rem; margin: 0; padding: 0; }
.riv-header .wp-block-navigation-item { margin: 0; gap: .4rem; }
.riv-header .wp-block-navigation-item__content { display: inline-flex; align-items: center; min-height: 44px; position: relative; padding: .6rem .35rem; line-height: 1.3; }
.riv-header .wp-block-navigation-item__content:is([aria-current], :hover)::after, .riv-views a[aria-current]::after { content: ''; position: absolute; inset: auto 0 0; height: 3px; background: var(--riv-blue); border-right: .75rem solid var(--riv-yellow); }
.riv-header .wp-block-navigation__submenu-icon { margin: 0 .3rem 0 0; min-width: 20px; min-height: 24px; }
.riv-header .wp-block-navigation__submenu-container { padding: .5rem; gap: .15rem; border-color: var(--riv-line); }
.riv-header .is-menu-open .wp-block-navigation-item__content { padding: .7rem .35rem; }
.riv-header .is-menu-open .wp-block-navigation__container { gap: .65rem; }
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; justify-content: center; align-items: center; }
.riv-header .wp-block-navigation__responsive-container-open { border: 1px solid var(--riv-blue); border-bottom: 3px solid var(--riv-blue); border-radius: 0; color: var(--riv-blue); }
.riv-header .is-menu-open { padding: var(--riv-gutter); border-top: 5px solid var(--riv-blue); }
/* Nested Group rhythm is explicit so default block margins cannot create empty tracks. */
.wp-site-blocks :is(.riv-section-head, .riv-feature, .riv-news-grid, .riv-news-secondary, .riv-actions, .riv-utilities, .riv-campaign-grid, .riv-sponsors, .riv-support-panel, .riv-footer-grid, .riv-footer-baseline) > * { margin-block-start: 0; }
.wp-site-blocks .riv-section > .riv-feature { margin-top: 0; }
/* One label syntax: compact sporting number and blue/yellow counterpoint. */
.wp-site-blocks .riv-section .riv-section-label { display: flex; align-items: baseline; gap: .85rem; margin: 0 0 .8rem; color: var(--riv-blue); font-size: .875rem; font-weight: 650; letter-spacing: .04em; }
.riv-number { position: relative; display: inline-block; font-family: var(--riv-display); font-size: 1.2rem; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1.1; padding-bottom: .4rem; }
.riv-number::after { content: ''; position: absolute; bottom: 0; left: 0; width: 1.6rem; height: 3px; background: var(--riv-blue); transform: skewX(-18deg); }
.riv-label { color: var(--riv-blue); font-size: .875rem; font-weight: 700; letter-spacing: .035em; line-height: 1.4; }
/* Ink carries editorial hierarchy; blue is reserved for structure and service. */
.wp-site-blocks .riv-section { position: relative; padding-block: 2.5rem; border: 0; }
.wp-site-blocks .riv-section > * { max-width: none; }
.wp-site-blocks .riv-section p { margin-left: 0; }
.wp-site-blocks .riv-section h2 { color: var(--riv-ink); font-size: clamp(1.8rem, 3.5vw, 2.8rem); margin: 0; font-weight: 800; }
.wp-site-blocks .riv-first-team { padding-top: 2.5rem; margin-top: 0; }
.wp-site-blocks .riv-first-team h2 { font-size: clamp(2rem, 4vw, 3rem); }
.riv-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem 2rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
.wp-site-blocks .riv-section-utility { margin: 0; color: var(--riv-muted); font-size: .875rem; }
/* Selective terminal underline. Inline box fragments follow a wrapped word. */
.riv-title-accent { position: relative; isolation: isolate; white-space: nowrap; }
.riv-title-accent::after { content: ''; position: absolute; z-index: -1; left: -.025em; right: -.05em; bottom: .055em; height: .15em; background: var(--riv-yellow); transform: skewX(-16deg); pointer-events: none; }
/* One compact CSS trajectory for semantic secondary actions. */
.wp-site-blocks .riv-link { position: relative; display: inline-flex; align-items: center; gap: .65rem; min-height: 44px; padding-right: 1.2rem; color: var(--riv-blue); font-weight: 650; text-decoration: none; line-height: 1.4; }
.riv-link::after { content: ''; position: absolute; right: 0; top: calc(50% - .35rem); width: .65rem; height: .65rem; border-top: 2px solid currentColor; border-right: 2px solid currentColor; pointer-events: none; }
.riv-link::before { content: ''; position: absolute; right: -.02rem; top: 50%; width: .85rem; height: 2px; background: currentColor; transform: rotate(-45deg); pointer-events: none; }
.wp-site-blocks .riv-link:hover { text-decoration: underline; }
/* Main canvas retains one cropped arc/sweep, with dark sport typography. */
.wp-site-blocks .riv-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--riv-mist); margin-top: 1rem; padding-block: 2rem; border: 0; }
.riv-hero::before { content: ''; position: absolute; z-index: -1; width: clamp(17rem, 37vw, 34rem); aspect-ratio: 1; right: -9rem; bottom: -13rem; border: 2px solid #c4d7e7; border-radius: var(--riv-arc); box-shadow: 0 0 0 1.5rem var(--riv-mist), 0 0 0 calc(1.5rem + 2px) #d5e2ed; pointer-events: none; }
.riv-hero::after { content: ''; position: absolute; z-index: -1; width: 15rem; height: 5rem; right: -6rem; bottom: .5rem; border-bottom: 8px solid var(--riv-blue); border-radius: 0 0 70% 40%; transform: rotate(-27deg); box-shadow: 0 .35rem 0 -.1rem var(--riv-yellow); pointer-events: none; }
.riv-hero-inner { position: relative; }
.riv-hero-photo { margin: 1.5rem 0 0; }
.wp-site-blocks .riv-hero h1 { color: var(--riv-ink); font-size: clamp(2.15rem, 4.8vw, 4.1rem); font-weight: 800; line-height: 1.05; max-width: 53rem; margin: .65rem 0 1rem; }
.wp-site-blocks .riv-hero p { max-width: 42rem; margin-left: 0; }
.wp-site-blocks .riv-hero .riv-label { margin: 0; font-size: .875rem; font-weight: 700; color: var(--riv-blue); letter-spacing: .05em; }
.riv-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1.5rem; }
.wp-site-blocks .riv-actions p { margin-block: 0; }
.wp-site-blocks .riv-hero-photo figcaption { display: inline-block; color: var(--riv-ink); background: var(--riv-yellow); padding: .35rem .6rem; }
/* Primary controls remain distinct from secondary directional links. */
.wp-site-blocks .riv-cta, .riv-selectors button, .wp-site-blocks .wp-block-button__link { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .75rem; min-height: 44px; padding: .75rem 1.35rem .75rem 1rem; border: 1px solid var(--riv-blue); border-radius: 0; color: #fff; background: var(--riv-blue); font: 650 1rem/1.4 var(--riv-body); text-decoration: none; cursor: pointer; }
.riv-cta::after, .riv-selectors button::after, .wp-site-blocks .wp-block-button__link::after { content: ''; position: absolute; right: 0; bottom: 0; width: .65rem; height: .65rem; background: var(--riv-yellow); clip-path: polygon(100% 0,100% 100%,0 100%); pointer-events: none; }
.wp-site-blocks .riv-cta:hover, .riv-selectors button:hover { background: #03457e; }
/* Sports: preserve 16px teams and gain density through the grid. */
.wp-site-blocks .riv-strip { padding-block: .125rem; border-bottom: 1px solid var(--riv-line); }
.riv-strip + .riv-strip { margin-top: 0; }
.riv-strip-heading { display: flex; align-items: center; justify-content: space-between; gap: .3rem .75rem; }
.riv-strip-heading h2 { margin: 0; color: var(--riv-blue); font-family: var(--riv-display); font-size: 1rem; }
.riv-strip-heading .riv-link { font-size: .875rem; }
.wp-site-blocks .riv-strip ul { display: grid; grid-template-columns: minmax(0,1fr); list-style: none; padding: 0; margin: 0; gap: 0; }
.wp-site-blocks .riv-strip li { padding: .25rem 0; border-top: 1px solid var(--riv-line); min-width: 0; }
.riv-strip li:nth-child(n+3) { display: none; }
.wp-site-blocks .riv-strip li a { display: grid; grid-template-columns: minmax(0,1fr) max-content; gap: .1rem .75rem; min-height: 44px; color: var(--riv-ink); text-decoration: none; font-size: 1rem; font-weight: 600; line-height: 1.25; }
.riv-strip .riv-label { grid-column: 1; grid-row: 1; font-size: .875rem; letter-spacing: 0; }
.riv-strip .riv-pairing { grid-column: 1; grid-row: 2; display: flex; flex-direction: column; }
/* Home strips 0.5.1: two team rows, compact heading and adjacent CTA arrow. */
.riv-strip .riv-pairing { min-width: 0; }
.riv-strip .riv-pairing > span { display: block; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.riv-strip-heading h2 .riv-strip-heading-word { display: block; }
.riv-strip-heading .riv-link { width: max-content; flex-shrink: 0; white-space: nowrap; }
/* End Home strips 0.5.1 */
.riv-strip .riv-data { grid-column: 2; grid-row: 2; align-self: center; text-align: right; }
.riv-strip .riv-fixture-meta { grid-column: 2; grid-row: 1; text-align: right; color: var(--riv-muted); font-size: .875rem; font-weight: 400; }
.riv-data, .riv-score { color: var(--riv-blue); font-family: var(--riv-display); font-weight: 800; font-variant-numeric: tabular-nums; }
.riv-strip .riv-data { font-size: 1.2rem; line-height: 1.25; }
.riv-strip .riv-fixture-date { display: flex; flex-direction: column; gap: .15rem; color: var(--riv-blue); font-size: 1rem; }
.wp-site-blocks .riv-data-note.alignwide { margin-block: .5rem; line-height: 1.45; }
/* Optional media creates two tracks only when a genuine Image exists. */
.riv-feature { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
.riv-feature > .riv-feature-media { margin: 0; width: 100%; }
.riv-story { min-width: 0; }
.wp-site-blocks .riv-story p { max-width: 48rem; margin-block: .7rem; }
.wp-site-blocks .riv-story .riv-story-meta, .wp-site-blocks .riv-story-meta { color: var(--riv-muted); font-size: .875rem; line-height: 1.5; }
.wp-site-blocks .riv-story-title { font-family: var(--riv-body); color: var(--riv-ink); font-size: clamp(1.35rem, 2.5vw, 2rem); font-weight: 750; line-height: 1.2; margin: .5rem 0; letter-spacing: -.03em; }
.riv-utilities { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; margin-top: 1rem; }
.wp-site-blocks .riv-utilities p { margin: 0; }
/* The axis belongs to the whole youth composition, never a team label. */
.riv-youth-axis { position: relative; padding-left: 1.25rem; }
.riv-youth-axis::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--riv-blue); pointer-events: none; }
.riv-youth-axis > .riv-feature-media { order: 1; }
.wp-site-blocks .riv-youth h2 { margin: .5rem 0 1rem; }
/* A lead, two secondary stories and a tertiary service row, without card shells. */
.riv-news-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
.riv-news-secondary { display: grid; gap: 1rem; }
.riv-news-item { border-top: 1px solid var(--riv-line); padding-top: 1rem; }
.riv-news-item .riv-story-title { font-size: 1.25rem; }
.riv-news-item:has(> .riv-feature-media) { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); column-gap: 1rem; }
.riv-news-item > .riv-feature-media { grid-column: 1; grid-row: 1 / span 4; margin: 0; }
.riv-news-item:has(> .riv-feature-media) > :not(.riv-feature-media) { grid-column: 2; }
.riv-news-tertiary { margin-top: 1.5rem; padding-block: 1rem; border-block: 1px solid var(--riv-line); }
.riv-news-tertiary .riv-story-title { font-size: 1.25rem; }
/* Partite service composition: scoped to the hub, preserving Home 0.2.1. */
.wp-site-blocks main:has(> .riv-hub) { min-height: 0; }
.riv-hub { padding-top: .75rem; }
.riv-hub .riv-service-header { display: grid; grid-template-columns: minmax(0,1fr); gap: .5rem; }
.riv-hub .riv-hub-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: .2rem .75rem; margin: 0; }
.riv-hub h1 { margin: 0; font-size: 1.75rem; color: var(--riv-ink); }
.riv-hub .riv-hub-title .riv-label { color: var(--riv-muted); font-size: .875rem; letter-spacing: 0; font-weight: 400; }
.riv-hub .riv-selectors { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .35rem .5rem; margin: 0; min-width: 0; }
.riv-hub .riv-selector-field { flex: 1 1 12rem; min-width: 0; max-width: 100%; }
.riv-hub .riv-selectors label { display: block; font-size: .875rem; font-weight: 650; line-height: 1.4; margin-bottom: .15rem; }
.riv-hub .riv-selectors select { display: block; width: 100%; min-width: 0; max-width: 100%; min-height: 44px; font: inherit; line-height: 1.4; padding: .4rem .5rem; border-radius: 0; border: 1px solid var(--riv-line); background: #fff; color: var(--riv-ink); }
.riv-hub .riv-selectors button { min-height: 44px; padding: .55rem 1.1rem .55rem .8rem; flex: 0 0 auto; }
/* Theme-owned assistive text: removed from layout and painting, retained in the accessibility tree. */
.riv-hub .riv-selectors .riv-selection-description { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.riv-hub .riv-selectors button[hidden] { display: none; }
.riv-hub .riv-views { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-bottom: 1px solid var(--riv-line); gap: .25rem; max-width: none; margin: 0; }
.riv-hub .riv-views a { position: relative; display: flex; align-items: center; justify-content: center; min-height: 44px; text-align: center; text-decoration: none; padding: .35rem .2rem; font-size: .9375rem; font-weight: 700; line-height: 1.4; }
.riv-hub .riv-views a, .riv-hub .riv-views a:visited { color: var(--riv-blue); }
.riv-hub .riv-views a[aria-current] { background: var(--riv-mist); }
.riv-hub .riv-context { padding: 0; border: 0; width: auto; min-width: 0; max-width: 100%; font-size: .875rem; line-height: 1.4; color: var(--riv-muted); margin: 0; }
.riv-hub .riv-context strong { color: var(--riv-ink); font-weight: 650; }
.riv-hub .riv-rounds { display: grid; grid-template-columns: minmax(44px,1fr) auto minmax(44px,1fr); gap: .5rem; align-items: center; padding-block: .25rem; margin: 0; }
.riv-hub .riv-rounds h2 { font-family: var(--riv-display); font-size: 1.1rem; margin: 0; font-variant-numeric: tabular-nums; text-align: center; }
.riv-hub .riv-rounds > a, .riv-hub .riv-rounds > span { display: flex; align-items: center; justify-content: center; gap: .3rem; min-height: 44px; padding: .25rem; min-width: 44px; text-align: center; }
.riv-hub .riv-rounds > a, .riv-hub .riv-rounds > a:visited { color: var(--riv-blue); }
.riv-hub .riv-rounds > :first-child { justify-self: start; }
.riv-hub .riv-rounds > :last-child { justify-self: end; }
.riv-hub .riv-rounds > span { color: var(--riv-muted); }
.riv-hub .riv-rounds > :is(a,span) > span { display: none; }
.wp-site-blocks .riv-hub > .riv-data-note { margin: .75rem 0 1rem; font-size: .875rem; line-height: 1.5; }
@media (min-width: 1024px) {
    .riv-hub .riv-service-header { grid-template-columns: minmax(0,1fr) minmax(0,1.25fr); gap: .6rem 2rem; align-items: center; }
    .riv-hub .riv-hub-title { grid-column: 1; grid-row: 1; }
    .riv-hub .riv-selectors { grid-column: 2; grid-row: 1; justify-self: end; width: min(100%,36rem); }
    .riv-hub .riv-selector-field { display: flex; align-items: center; gap: .5rem; }
    .riv-hub .riv-selectors label { flex: 0 0 auto; margin: 0; }
    .riv-hub .riv-selectors select { flex: 1 1 0; width: 0; }
    .riv-hub .riv-views { grid-column: 1; grid-row: 2; max-width: 28rem; }
    .riv-hub .riv-context { grid-column: 2; grid-row: 2; text-align: right; }
    .riv-hub .riv-rounds > :is(a,span) > span { display: inline; }
}
.riv-matches { list-style: none; padding: 0; margin: 0; }
.riv-match { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .35rem .75rem; padding: 1rem .4rem; border-top: 1px solid var(--riv-line); }
.riv-match time { grid-column: 1 / -1; color: var(--riv-muted); font-size: .9375rem; }
.riv-match-teams { display: flex; flex-direction: column; gap: .15rem; font-weight: 600; line-height: 1.35; }
.riv-versus { display: none; }
.riv-club, .riv-club-row .riv-team-cell { color: var(--riv-blue); font-weight: 750; }
.riv-score { font-size: 1.65rem; align-self: center; }
.riv-sets { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: .75rem; list-style: none; padding: 0; margin: .15rem 0 0; font-size: .875rem; color: var(--riv-muted); font-variant-numeric: tabular-nums; }
.riv-venue, .riv-status { grid-column: 1 / -1; font-size: .9375rem; color: var(--riv-muted); }
.riv-status { font-weight: 650; }
.riv-standings { width: 100%; border-collapse: collapse; font-size: .875rem; font-variant-numeric: tabular-nums; }
.riv-standings caption { text-align: left; font-weight: 650; padding: .6rem 0; }
.riv-standings th, .riv-standings td { padding: .65rem .3rem; text-align: center; vertical-align: top; border-bottom: 1px solid var(--riv-line); }
.riv-standings thead { font-size: .8125rem; color: var(--riv-muted); }
.riv-standings abbr { text-decoration: none; }
.riv-standings .riv-team-cell { text-align: left; width: 60%; line-height: 1.4; }
.riv-standings .riv-stat { display: none; }
.riv-mobile-stats { display: flex; flex-wrap: wrap; gap: .25rem .7rem; font-size: .8125rem; font-weight: 400; color: var(--riv-muted); margin-top: .4rem; }
.riv-club-row { background: #f0f6fb; }
.wp-site-blocks .riv-small, .wp-site-blocks .riv-data-note { font-size: .875rem; color: var(--riv-muted); }
.riv-data-note { margin-top: 1rem; line-height: 1.6; }
.riv-empty { padding: 1rem 0; }
/* Native Image block styles. No-image layouts need no media placeholder. */
:is(.wp-site-blocks, .editor-styles-wrapper) :is(.is-style-riv-action, .is-style-riv-team, .is-style-riv-portrait, .riv-photo) { position: relative; --riv-photo-ratio: 16 / 9; --riv-focal: 50% 50%; }
:is(.wp-site-blocks, .editor-styles-wrapper) :is(.is-style-riv-action, .is-style-riv-team, .is-style-riv-portrait, .riv-photo) img { display: block; width: 100%; aspect-ratio: var(--riv-photo-ratio); object-fit: cover; object-position: var(--riv-focal); }
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-riv-team { --riv-photo-ratio: 3 / 2; }
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-riv-portrait { --riv-photo-ratio: 4 / 5; }
:is(.wp-site-blocks, .editor-styles-wrapper) .riv-focal-top { --riv-focal: 50% 25%; }
:is(.wp-site-blocks, .editor-styles-wrapper) .riv-focal-left { --riv-focal: 30% 50%; }
:is(.wp-site-blocks, .editor-styles-wrapper) .riv-focal-right { --riv-focal: 70% 50%; }
:is(.wp-site-blocks, .editor-styles-wrapper) :is(.is-style-riv-action, .is-style-riv-team, .is-style-riv-portrait, .riv-photo)::after { content: ''; position: absolute; top: 0; right: 0; width: 3rem; height: 3rem; border-top: 3px solid var(--riv-blue); border-right: 3px solid var(--riv-blue); border-radius: 0 0 60% 0; pointer-events: none; }
:is(.wp-site-blocks, .editor-styles-wrapper) :is(.is-style-riv-action, .is-style-riv-team, .is-style-riv-portrait, .riv-photo)::before { content: ''; position: absolute; top: .35rem; right: .35rem; width: 1.25rem; height: 3px; background: var(--riv-yellow); z-index: 1; pointer-events: none; }
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-image figcaption { font: 400 .875rem/1.5 var(--riv-body); color: var(--riv-muted); text-align: left; margin-block: .65rem 0; }
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-riv-sponsor img { display: block; width: 100%; height: 5rem; object-fit: contain; background: #fff; }
/* Campaign: warm service composition, with one message and practical actions. */
.wp-site-blocks .riv-seasonal { background: var(--riv-cream); padding-block: 2.5rem; margin-top: 0; }
.riv-campaign-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
.riv-campaign-message h2 { max-width: 40rem; text-transform: uppercase; }
.wp-site-blocks .riv-seasonal .riv-cta-yellow { background: var(--riv-yellow); color: var(--riv-ink); border-color: var(--riv-yellow); }
.riv-cta-yellow::after { background: var(--riv-blue); }
.wp-site-blocks .riv-seasonal .riv-cta-yellow:hover { border-color: var(--riv-blue); }
.riv-practical { min-width: 0; padding-top: .5rem; }
.riv-practical h3 { font-size: 1.1rem; }
.wp-site-blocks .riv-practical p { margin-block: .25rem; }
/* Sponsor roles stand in open space. Real logos alone create a media area. */
.wp-site-blocks .riv-sponsors { display: grid; grid-template-columns: minmax(0,1fr); gap: 2rem; margin-block: 2rem; }
.riv-sponsor-group { min-width: 0; }
.riv-sponsor-group h3, .riv-sponsor-territory h3 { font-size: 1rem; color: var(--riv-muted); }
.riv-sponsor-main h3 { font-size: 1.25rem; color: var(--riv-ink); }
.riv-sponsor-main .is-style-riv-sponsor img { height: 7.5rem; }
.riv-sponsor-technical .is-style-riv-sponsor img { height: 5rem; }
.riv-sponsor-territory { margin-block: 2rem; }
.riv-sponsor-territory:has(> .wp-block-image) { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem 2rem; }
.riv-sponsor-territory .is-style-riv-sponsor { width: 8rem; }
.riv-support-panel { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem 2rem; padding-block: 1.25rem; border-block: 1px solid var(--riv-line); }
.riv-support-message h3 { font-size: 1.3rem; margin: 0; }
.wp-site-blocks .riv-support-panel p { margin: .5rem 0 0; }
/* One closing sweep, with identity, navigation and a separate legal baseline. */
.wp-site-blocks .riv-footer { position: relative; isolation: isolate; overflow: hidden; background: var(--riv-mist); padding-block: 2rem 1rem; margin-top: 0; border: 0; }
.riv-footer::before { content: ''; position: absolute; z-index: -1; width: 12rem; height: 4rem; right: -5rem; bottom: -2rem; border-top: 5px solid var(--riv-blue); border-radius: 70% 30% 0 0; transform: rotate(-22deg); box-shadow: 0 -.35rem 0 -.15rem var(--riv-yellow); pointer-events: none; }
.riv-footer-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: baseline; gap: 1.25rem 1rem; }
.riv-footer-identity, .riv-footer-contact { grid-column: 1 / -1; }
.riv-footer-identity h2 { font-size: 1.7rem; color: var(--riv-ink); margin: 0 0 .75rem; }
.wp-site-blocks .riv-footer-identity p { font-size: .9375rem; margin: .35rem 0; }
.wp-site-blocks .riv-footer-hashtag { font-family: var(--riv-display); color: var(--riv-blue); font-size: 1.15rem; font-weight: 800; }
.riv-footer-group h3 { font-size: 1rem; color: var(--riv-ink); margin: 0 0 .5rem; }
.wp-site-blocks .riv-footer-group p { font-size: .9375rem; margin: 0; }
.riv-footer-group .riv-link { min-height: 44px; }
.riv-footer-baseline { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem 2rem; padding-top: 1rem; border-top: 1px solid var(--riv-line); margin-top: 1rem; }
.wp-site-blocks .riv-footer-baseline p { margin: 0; }
/* Saved 0.2.0 footer columns remain readable without replacing editor content. */
.riv-footer > .wp-block-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25rem; }
.riv-footer > .wp-block-columns > .wp-block-column { min-width: 0; }
.riv-footer > .wp-block-columns > .wp-block-column:is(:first-child,:last-child) { grid-column: 1 / -1; }
@media (min-width: 600px) { :root { --riv-gutter: 24px; } }
@media (min-width: 782px) {
    .wp-site-blocks .riv-header { flex-wrap: nowrap; }
    .wp-site-blocks .riv-wordmark { font-size: 1.5rem; }
    .riv-header .wp-block-navigation__container { gap: 1.25rem; }
    .wp-site-blocks .riv-strip ul { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
    .riv-strip li:nth-child(n+3) { display: block; }
    .wp-site-blocks .riv-strip li { border-top: 0; padding: .35rem .75rem .35rem 0; border-right: 1px solid var(--riv-line); }
    .wp-site-blocks .riv-strip li:last-child { border-right: 0; }
    .wp-site-blocks .riv-hero { padding-block: 2.5rem; }
    .riv-hero-inner:has(> .riv-hero-photo) { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); column-gap: 2rem; align-items: start; }
    .riv-hero-inner:has(> .riv-hero-photo) > :not(.riv-hero-photo) { grid-column: 1; }
    .riv-hero-inner > .riv-hero-photo { grid-column: 2; grid-row: 1 / span 4; width: 100%; margin: 0; }
    .riv-hero::after { width: 23rem; height: 8rem; right: -8rem; bottom: .5rem; border-width: 12px; }
    .wp-site-blocks .riv-section { padding-block: 3rem; }
    .wp-site-blocks .riv-team-section + .riv-team-section { padding-top: 1.5rem; }
    .riv-feature:has(> .riv-feature-media) { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: center; gap: 2.5rem; }
    .riv-feature:has(> .riv-feature-media) > .riv-story, .riv-feature:has(> .riv-feature-media) > .riv-youth-story { grid-column: 2; grid-row: 1; }
    .riv-feature:has(> .riv-feature-media) > .riv-feature-media { grid-column: 1; grid-row: 1; }
    .riv-media-right:has(> .riv-feature-media) > .riv-story, .riv-media-right:has(> .riv-feature-media) > .riv-youth-story { grid-column: 1; }
    .riv-media-right:has(> .riv-feature-media) > .riv-feature-media { grid-column: 2; }
    .riv-news-grid { grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 3rem; }
    .riv-news-lead .riv-story-title { font-size: clamp(1.8rem,3vw,2.5rem); }
    .riv-news-secondary .riv-news-item:first-child { border-top: 0; padding-top: 0; }
    .riv-news-tertiary { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
    .riv-campaign-grid { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); align-items: start; gap: 4rem; }
    .wp-site-blocks .riv-sponsors { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); gap: 4rem; }
    .riv-footer-grid { grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 2rem; }
    .riv-footer-identity, .riv-footer-contact { grid-column: auto; }
    .riv-footer > .wp-block-columns { grid-template-columns: 1.5fr 1fr 1fr 1.2fr; }
    .riv-footer > .wp-block-columns > .wp-block-column:is(:first-child,:last-child) { grid-column: auto; }
    .riv-views { max-width: 36rem; }
    .riv-rounds > :is(a,span) > span { display: inline; }
    .riv-match { grid-template-columns: 9rem minmax(0,1fr) 4rem; gap: .4rem 1rem; }
    .riv-match time { grid-column: 1; align-self: center; }
    .riv-match-teams { grid-column: 2; flex-direction: row; flex-wrap: wrap; gap: .6rem; align-self: center; }
    .riv-versus { display: inline; }
    .riv-score { grid-column: 3; text-align: right; }
    .riv-sets, .riv-venue, .riv-status { grid-column: 2 / -1; }
}
/* Wide desktop uses a true service grid: identity / fixtures / far-right action. */
@media (min-width: 1024px) {
    :root { --riv-gutter: 32px; }
    .wp-site-blocks .riv-strip { position: relative; display: grid; grid-template-columns: 7.5rem minmax(0,1fr) 9.5rem; gap: .75rem; align-items: center; padding-block: .5rem; }
    .riv-strip-heading { display: contents; }
    .riv-strip-heading h2 { grid-column: 1; grid-row: 1; }
    .riv-strip-heading .riv-link { grid-column: 3; grid-row: 1; justify-self: end; }
    .wp-site-blocks .riv-strip ul { grid-column: 2; grid-row: 1; gap: .5rem; }
    .wp-site-blocks .riv-strip li { padding-right: .4rem; }
    .wp-site-blocks .riv-strip li a { column-gap: .4rem; }
    .riv-strip .riv-label { font-size: .875rem; }
    .riv-standings .riv-stat { display: table-cell; }
    .riv-mobile-stats { display: none; }
    .riv-standings .riv-team-cell { width: auto; }
    .riv-standings th, .riv-standings td { padding-inline: .5rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto; } }

/* Editorial 0.6.0: source titles wrap; a missing secondary column collapses. */
.riv-editorial .riv-story-title, .riv-team-section .riv-story-title, .riv-youth .riv-story-title { overflow-wrap: anywhere; }
.riv-editorial .riv-news-grid:not(:has(> .riv-news-secondary)), .riv-editorial .riv-news-grid:not(:has(> .riv-news-lead)) { grid-template-columns: minmax(0,1fr); }
/* End Editorial 0.6.0 */

/* Editorial 0.6.1: keep one tertiary story together in the existing compact layout. */
#news .riv-news-tertiary-content { min-width: 0; }
@media (min-width: 782px) {
    #news .riv-news-tertiary { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,2fr); align-items: start; gap: 2rem; }
}
/* End Editorial 0.6.1 */

/* Launch 0.7.0: bounded historical list, using existing editorial typography. */
.riv-archive-item { padding-block: 24px; border-bottom: 1px solid var(--riv-line); }
.riv-archive-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; padding-block: 24px; }
.riv-archive-pagination p { flex-basis: 100%; }
/* End Launch 0.7.0 */

/* CF7 0.7.1: presentation only, confined to public Contact Form 7 markup. */
.wp-site-blocks .wpcf7 .wpcf7-form { max-width: 42rem; color: var(--riv-ink); font: 1rem/1.6 var(--riv-body); }
.wp-site-blocks .wpcf7 .wpcf7-form > p { margin: 0 0 1.25rem; }
.wp-site-blocks .wpcf7 label:not(:has(.wpcf7-captchar, [class*="honeypot"])):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) { display: block; color: var(--riv-ink); font: 600 1rem/1.5 var(--riv-body); }
.wp-site-blocks .wpcf7 .wpcf7-form-control-wrap:has(> input.wpcf7-text:not(.wpcf7-captchar):not([type="hidden"]), > .wpcf7-textarea, > .wpcf7-select):not([hidden], [aria-hidden="true"], [class*="honeypot"]) { display: block; margin-top: .4rem; }
.wp-site-blocks .wpcf7 .wpcf7-form :where(input.wpcf7-text:not(.wpcf7-captchar):not([type="hidden"]), textarea.wpcf7-textarea, select.wpcf7-select):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) {
    display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-height: 48px; margin: 0;
    padding: .7rem .85rem; border: 1px solid var(--riv-muted); border-radius: 0;
    background: #fff; color: var(--riv-ink); font: 400 1rem/1.5 var(--riv-body);
}
.wp-site-blocks .wpcf7 textarea.wpcf7-textarea:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) { min-height: 10rem; resize: vertical; }
.wp-site-blocks .wpcf7 :is(.wpcf7-text:not(.wpcf7-captchar):not([type="hidden"]), .wpcf7-textarea):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *))::placeholder { color: var(--riv-muted); opacity: 1; }
.wp-site-blocks .wpcf7 :is(.wpcf7-text:not(.wpcf7-captchar), .wpcf7-textarea, .wpcf7-select, .wpcf7-submit, input[type="checkbox"], input[type="radio"]):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)):focus-visible {
    outline: 3px solid var(--riv-blue); outline-offset: 3px; box-shadow: 0 0 0 2px #fff;
}
.wp-site-blocks .wpcf7 .wpcf7-list-item:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) { display: block; margin: 0 0 .5rem; }
.wp-site-blocks .wpcf7 :is(.wpcf7-checkbox, .wpcf7-radio, .wpcf7-acceptance) label:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) {
    display: flex; align-items: flex-start; gap: .65rem; min-height: 44px; padding-block: .5rem;
    font-weight: 400; cursor: pointer; overflow-wrap: anywhere;
}
.wp-site-blocks .wpcf7 :is(.wpcf7-checkbox, .wpcf7-radio, .wpcf7-acceptance) input:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) {
    flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin: .15rem 0 0; accent-color: var(--riv-blue); cursor: pointer;
}
.wp-site-blocks .wpcf7 .wpcf7-list-item-label:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) { min-width: 0; }
.wp-site-blocks .wpcf7 .wpcf7-submit:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) {
    min-height: 48px; max-width: 100%; padding: .75rem 1.35rem .75rem 1rem; margin: 0;
    border: 1px solid var(--riv-blue); border-bottom: 3px solid var(--riv-yellow); border-radius: 0;
    background: var(--riv-blue); color: #fff; font: 650 1rem/1.4 var(--riv-body); cursor: pointer;
}
.wp-site-blocks .wpcf7 .wpcf7-submit:hover:not(:disabled) { background: #03457e; }
.wp-site-blocks .wpcf7 :is(.wpcf7-text:not(.wpcf7-captchar):not([type="hidden"]), .wpcf7-textarea, .wpcf7-select, .wpcf7-submit):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)):disabled { background: var(--riv-mist); color: var(--riv-muted); border-color: var(--riv-line); cursor: not-allowed; }
.wp-site-blocks .wpcf7 :is(.wpcf7-text:not(.wpcf7-captchar):not([type="hidden"]), .wpcf7-textarea, .wpcf7-select):where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)).wpcf7-not-valid { border-color: #a12622; }
.wp-site-blocks .wpcf7 .wpcf7-not-valid-tip:where(:not([hidden], [aria-hidden="true"], [hidden] *, [aria-hidden="true"] *, [class*="honeypot"], [class*="honeypot"] *, [style*="display:none"], [style*="display:none"] *, [style*="display: none"], [style*="display: none"] *)) { display: block; margin-top: .4rem; color: #a12622; font: 400 .95rem/1.5 var(--riv-body); }
.wp-site-blocks .wpcf7 .wpcf7-response-output { box-sizing: border-box; margin: 1.25rem 0 0; padding: .85rem 1rem; color: var(--riv-ink); border: 1px solid var(--riv-blue); font: 400 1rem/1.5 var(--riv-body); overflow-wrap: anywhere; }
.wp-site-blocks .wpcf7 form:is(.invalid, .unaccepted, .failed, .aborted) .wpcf7-response-output { border-color: #a12622; }
.wp-site-blocks .wpcf7 form.sent .wpcf7-response-output { border-color: #28623d; }
.wp-site-blocks .wpcf7 .wpcf7-spinner { vertical-align: middle; margin-inline: .75rem 0; }
/* End CF7 0.7.1 */

/* Content 0.7.2: native approved records; existing Home/form/sports design retained. */
.wp-site-blocks .riv-approved-sponsors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; list-style: none; padding: 0; margin-block: 1.5rem; }
.wp-site-blocks .riv-approved-sponsors li { min-width: 0; }
.wp-site-blocks .riv-approved-sponsors figure { margin: 0; }
.wp-site-blocks .riv-approved-sponsors a { display: block; color: var(--riv-ink); text-decoration: none; }
.wp-site-blocks .riv-approved-sponsors .riv-sponsor-logo { display: block; width: 100%; height: 6rem; object-fit: contain; background: #fff; }
.wp-site-blocks .riv-approved-sponsors figcaption { margin-top: .5rem; font-size: .9rem; overflow-wrap: anywhere; }
.wp-site-blocks .riv-approved-sponsors a:focus-visible { outline: 3px solid var(--riv-blue); outline-offset: 4px; }
.wp-site-blocks .riv-activity-story + .riv-activity-story { margin-top: 1rem; }
@media (min-width: 768px) {
    .wp-site-blocks .riv-approved-sponsors { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
/* End Content 0.7.2 */

/* Photography 0.7.3: actual native media in approved optional photo zones. */
.wp-site-blocks .riv-feature-media { margin: 0 0 1rem; min-width: 0; }
.wp-site-blocks .riv-feature-media > a { display: block; }
.wp-site-blocks .riv-feature-media a:focus-visible { outline: 3px solid var(--riv-blue); outline-offset: 4px; }
.wp-site-blocks .riv-feature-media img, .wp-site-blocks .riv-hero-photo img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; object-position: var(--riv-focal, 50% 50%); }
.wp-site-blocks .riv-news-item > .riv-feature-media img { aspect-ratio: 4 / 3; }
.wp-site-blocks .riv-hero-photo { min-width: 0; }
.wp-site-blocks .riv-hero-photo img { max-height: 20rem; }
.wp-site-blocks .riv-hero-photo figcaption a { color: var(--riv-ink); }
/* End Photography 0.7.3 */

/* Allocation 0.7.5: reflow saved Home when no independent activity teaser remains. */
.wp-site-blocks .riv-seasonal .riv-practical:not(:has(.riv-activity-story)) { display: none; }
.wp-site-blocks .riv-campaign-grid:not(:has(.riv-activity-story)) { grid-template-columns: minmax(0,1fr); }
/* End allocation 0.7.5 */

/* Internal 0.7.6: isolated editorial pages; approved Home/hub/CF7 rules unchanged. */
.wp-site-blocks .riv-reading { padding-block: clamp(28px, 5vw, 64px); }
.wp-site-blocks .riv-reading > :is(.wp-block-post-title, .wp-block-post-date, .wp-block-post-content) { width: min(760px, calc(100% - 2 * var(--riv-gutter))); max-width: 760px; margin-inline: auto; }
.wp-site-blocks .riv-reading > .wp-block-post-title { font-size: clamp(2rem, 4.3vw, 3.4rem); margin-block: 0 20px; padding-bottom: 20px; border-bottom: 4px solid var(--riv-yellow); }
.wp-site-blocks .riv-reading > .wp-block-post-date { color: var(--riv-muted); font-size: .9rem; margin-block: 0 24px; }
.wp-site-blocks .riv-reading .wp-block-post-content { font-size: 1.0625rem; line-height: 1.75; }
.wp-site-blocks .riv-reading .wp-block-post-content :is(h1,h2,h3) { margin-block: 1.6em .65em; line-height: 1.25; }
.wp-site-blocks .riv-reading .wp-block-post-content h1 { font-size: 1.9rem; }
.wp-site-blocks .riv-reading .wp-block-post-content h2 { font-size: 1.6rem; }
.wp-site-blocks .riv-reading .wp-block-post-content :is(p,ul,ol,figure) { margin-block: 1em; }
.wp-site-blocks .riv-reading .wp-block-post-content :is(img,figure,iframe) { max-width: 100%; }
.wp-site-blocks .riv-reading .wp-block-post-content img { height: auto; object-fit: contain; }
.wp-site-blocks .riv-reading .wp-block-post-content img.aligncenter { display: block; margin-inline: auto; }
.wp-site-blocks .riv-reading .wp-block-post-content blockquote { margin-inline: 0; padding-inline-start: 20px; border-inline-start: 3px solid var(--riv-blue); }
.wp-site-blocks .riv-reading .wp-block-post-content figcaption { color: var(--riv-muted); font-size: .875rem; }
.wp-site-blocks .riv-reading .wp-block-post-content a:visited { color: var(--riv-blue); }
.wp-site-blocks .riv-reading .wp-block-post-content :is(.riv-legacy-app,.riv-legacy-course) { padding-block: 16px; border-top: 1px solid var(--riv-line); color: var(--riv-muted); font-size: .9375rem; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) { padding-block: clamp(28px,5vw,64px); }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) > h1 { margin-block: 0 20px; font-size: clamp(2rem,4vw,3rem); padding-bottom: 20px; border-bottom: 4px solid var(--riv-yellow); }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-item { padding-block: 28px; margin: 0; border-bottom: 1px solid var(--riv-line); }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-photo { margin: 0 0 20px; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-photo img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-photo figcaption { font-size: .8rem; line-height: 1.4; color: var(--riv-muted); }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-copy { min-width: 0; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-copy h2 { font-size: clamp(1.4rem,2.4vw,1.9rem); margin-block: 8px 12px; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-copy h2 a { text-decoration: none; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) a, .wp-site-blocks :is(.riv-editorial-archive,.riv-archive) a:visited { color: var(--riv-blue); }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-story-meta { margin-block: 0; color: var(--riv-muted); font-size: .875rem; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-pagination { gap: 8px; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-page-number { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 1px solid var(--riv-line); text-decoration: none; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-page-number[aria-current] { color: var(--riv-ink); background: var(--riv-yellow); border-color: var(--riv-yellow); font-weight: 700; }
.wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-pagination > .riv-link { padding: 10px; }
@media (min-width: 600px) {
    .wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-has-photo { display: grid; grid-template-columns: minmax(160px, 28%) minmax(0, 1fr); gap: 28px; }
    .wp-site-blocks :is(.riv-editorial-archive,.riv-archive) .riv-archive-photo { margin: 0; }
}
.riv-gym-page .riv-reading .wp-block-post-content img { width: min(100%, 540px); max-height: 320px; }
.riv-gym-page .riv-reading .wp-block-post-content h2 { font-size: 1.25rem; line-height: 1.5; }
.riv-gym-page .riv-reading .wp-block-post-content :is(p,h2):has(> img:only-child) { margin-block: 12px; }
/* End Internal 0.7.6 */
