/* ==========================================================================
   Trip report — The Oaks Poultry Farm
   ========================================================================== */

.rg-trip { padding-bottom: clamp(3rem, 7vw, 6rem); }
html:has(.rg-trip), body:has(.rg-trip) { overflow-x: clip; }
.rg-trip > * { margin-block-start: 0; }
.rg-visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.rg-js .rg-trip__reveal, .rg-js .rg-trip__story > p, .rg-js .rg-trip__story > h2, .rg-js .rg-trip__fig {
	opacity: 0; transform: translateY(26px); transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1); transition-delay: var(--d, 0ms);
}
.rg-js .rg-trip__reveal.is-in, .rg-js .rg-trip__story > p.is-in, .rg-js .rg-trip__story > h2.is-in { opacity: 1; transform: none; }
.rg-js .rg-trip__fig.is-in { opacity: 1; transform: rotate(var(--tilt, 0deg)); }

/* ---------- Reading progress -------------------------------------------- */

.rg-trip__progress { position: fixed; left: 0; right: 0; top: 0; z-index: 90; height: 4px; pointer-events: none; opacity: 0; transition: opacity 0.3s ease; }
.rg-trip__progress.is-on { opacity: 1; }
.rg-trip__progress-fill { position: absolute; left: 0; top: 0; bottom: 0; width: calc(var(--p, 0) * 100%); background: linear-gradient(90deg, var(--wp--preset--color--sun), var(--wp--preset--color--ember)); }
.rg-trip__progress-van { position: absolute; top: 2px; left: calc(var(--p, 0) * (100% - 44px)); width: 44px; filter: drop-shadow(0 3px 4px rgba(31, 42, 34, 0.35)); }
.rg-trip__progress-van svg { display: block; width: 100%; height: auto; }

/* ---------- Hero ----------------------------------------------------------- */

.rg-trip__hero {
	position: relative; width: 100vw; max-width: none !important; margin-left: calc(50% - 50vw) !important; margin-right: 0 !important;
	min-height: min(92vh, 900px); display: flex; align-items: flex-end; overflow: hidden; isolation: isolate; color: #fff;
}
.rg-trip__hero-media { position: absolute; inset: 0; z-index: -2; background: #2F4F3A; }
.rg-trip__hero-media img { display: block; width: 100%; height: 100%; object-fit: cover; image-rendering: auto; }
/* Sit tight under the header: no gap, no border line. */
:where(.wp-site-blocks) > main.rg-trip, main.rg-trip { margin-block-start: 0 !important; padding-top: 0 !important; }
main.rg-trip > .rg-trip__hero { margin-block-start: 0 !important; }
body:has(main.rg-trip) .rg-topbar { border-bottom: 0; }
.rg-trip__hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(15, 23, 20, 0.15) 0%, rgba(15, 23, 20, 0) 35%, rgba(15, 23, 20, 0.85) 100%); }
.rg-trip__hero-inner { width: min(1320px, 100%); margin: 0 auto; padding: 0 clamp(20px, 4vw, 60px) clamp(48px, 8vw, 96px); }
.rg-trip__hero-inner > * { margin: 0; }
.rg-trip__hero-inner > * + * { margin-top: 16px; }
.rg-js .rg-trip__rise { opacity: 0; transform: translateY(24px); animation: rg-trip-rise 1s cubic-bezier(0.16, 1, 0.3, 1) forwards; animation-delay: var(--d, 0ms); }
@keyframes rg-trip-rise { to { opacity: 1; transform: none; } }
.rg-trip__kicker { font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: #F3EAD7; }
.rg-trip__kicker span { display: inline-block; margin-right: 10px; padding: 7px 10px; border-radius: 6px; background: var(--wp--preset--color--ember); color: #fff; }
.rg-trip__title { font-size: clamp(3rem, 8.4vw, 7.4rem) !important; line-height: 0.92 !important; letter-spacing: -0.03em; color: #fff; max-width: 12ch; text-shadow: 0 10px 40px rgba(0, 0, 0, 0.35); }
.rg-trip__title em { display: block; color: var(--wp--preset--color--sun); }
.rg-trip__sub { max-width: 46ch; font-size: clamp(1.1rem, 1.6vw, 1.35rem); color: #F3EAD7; }
.rg-trip__meta { display: flex; flex-wrap: wrap; gap: 8px 20px; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase; color: #F3EAD7; }
.rg-trip__meta span { display: inline-flex; align-items: center; gap: 6px; }
.rg-trip__postmark { position: absolute; right: clamp(20px, 6vw, 90px); top: clamp(30px, 8vw, 110px); width: clamp(100px, 13vw, 160px); color: rgba(255, 255, 255, 0.85); }
.rg-trip__postmark svg { display: block; width: 100%; height: auto; font-family: var(--wp--preset--font-family--mono); fill: currentColor; }
.rg-trip__cue {
	position: absolute; left: 50%; bottom: 20px; width: 44px; height: 44px; margin-left: -22px; display: grid; place-items: center; border-radius: 50%;
	border: 1.5px solid rgba(255, 255, 255, 0.6); color: #fff; text-decoration: none; animation: rg-trip-bob 2s ease-in-out infinite;
}
@keyframes rg-trip-bob { 50% { transform: translateY(6px); } }

/* ---------- Section heads ------------------------------------------------ */

.rg-trip__sechead { display: grid; grid-template-columns: auto 1fr; gap: 4px 22px; align-items: baseline; margin: clamp(4rem, 9vw, 7rem) 0 clamp(1.5rem, 3.5vw, 2.5rem) !important; }
.rg-trip__sechead > * { margin: 0; }
.rg-trip__num { grid-row: span 2; font: 500 0.875rem/1 var(--wp--preset--font-family--mono); color: var(--wp--preset--color--ember); padding-top: 0.6em; }
.rg-trip__sechead h2 { font-size: clamp(2.4rem, 5vw, 4rem); }
.rg-trip__sechead h2 em { color: var(--wp--preset--color--forest); }
.rg-trip__sechead p:not(.rg-trip__num) { grid-column: 2; color: #4E5A4F; font-size: 1.125rem; max-width: 60ch; }

/* ---------- At a glance ---------------------------------------------------- */

.rg-trip__glance { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 18px; margin-top: clamp(-70px, -6vw, -40px) !important; position: relative; z-index: 2; }
.rg-trip__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; }
.rg-trip__fact--sun { grid-column: span 2; }
.rg-trip__fact {
	padding: 20px; border-radius: 20px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); box-shadow: 0 24px 44px -32px rgba(60, 45, 20, 0.65);
	transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.rg-trip__fact:hover { transform: translateY(-4px); }
.rg-trip__fact dt { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ember); }
.rg-trip__fact dd { margin: 8px 0 0; font: 800 1.35rem/1.15 var(--wp--preset--font-family--display); }
.rg-trip__fact .rg-trip__fact-sub { margin-top: 6px; font: 400 0.9375rem/1.4 var(--wp--preset--font-family--body); color: #6B5A3E; display: flex; align-items: center; gap: 8px; }
.rg-trip__therm { position: relative; flex: none; width: 46px; height: 8px; border-radius: 8px; background: #EADFC9; overflow: hidden; }
.rg-trip__therm i { position: absolute; inset: 0; width: 0; background: linear-gradient(90deg, #E8B86B, #D9483B); border-radius: inherit; transition: width 1.4s cubic-bezier(0.16, 1, 0.3, 1) 0.5s; }
.rg-trip__fact.is-in .rg-trip__therm i, .rg-trip__fact:not(.rg-trip__reveal) .rg-trip__therm i { width: 94%; }
.rg-trip__map {
	position: relative; display: block; overflow: hidden; border-radius: 22px; border: 1px solid var(--rg-line); text-decoration: none; color: inherit;
	box-shadow: 0 24px 44px -32px rgba(60, 45, 20, 0.65); transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.rg-trip__map:hover { transform: translateY(-4px) rotate(-0.5deg); }
.rg-trip__map svg { display: block; width: 100%; height: 100%; min-height: 220px; object-fit: cover; }
.rg-trip__map-pin { transform-box: fill-box; transform-origin: 50% 100%; animation: rg-trip-pin 2.2s ease-in-out infinite; }
@keyframes rg-trip-pin { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
.rg-trip__map-go { position: absolute; right: 12px; bottom: 12px; padding: 8px 12px; border-radius: 999px; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); font: 600 0.8125rem/1 var(--wp--preset--font-family--body); }

/* ---------- Highlights ---------------------------------------------------- */

.rg-trip__hl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.rg-trip__hl-btn {
	position: relative; width: 100%; height: 100%; display: grid; grid-template-columns: auto 1fr; gap: 4px 16px; align-items: center; padding: 20px 52px 20px 20px; text-align: left;
	border-radius: 22px; border: 1px solid var(--rg-line); background: var(--wp--preset--color--paper); color: var(--wp--preset--color--ink); cursor: pointer;
	transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease, background-color 0.3s ease;
}
.rg-trip__hl-btn:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -28px rgba(60, 45, 20, 0.7); }
.rg-trip__hl-btn:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 3px; }
.rg-trip__hl-icon { grid-row: span 2; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 18px; background: #F3EAD7; color: var(--wp--preset--color--ember); transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease, color 0.3s ease; }
.rg-trip__hl-btn:hover .rg-trip__hl-icon { transform: rotate(-8deg) scale(1.08); background: var(--wp--preset--color--ember); color: #fff; }
.rg-trip__hl-title { font: 800 1.2rem/1.15 var(--wp--preset--font-family--display); }
.rg-trip__hl-sub { color: #6B5A3E; font-size: 0.9375rem; }
.rg-trip__hl-go { position: absolute; right: 18px; top: 50%; width: 30px; height: 30px; margin-top: -15px; display: grid; place-items: center; border-radius: 50%; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); font-size: 0.875rem; transition: transform 0.3s ease; }
.rg-trip__hl-btn:hover .rg-trip__hl-go { transform: translateY(3px); }

/* ---------- Story ----------------------------------------------------------- */

.rg-trip__sechead--story { margin-bottom: 0 !important; }
.rg-trip__layout { display: grid !important; grid-template-columns: 220px minmax(0, 720px); justify-content: center; gap: clamp(30px, 5vw, 80px); align-items: start; margin-top: clamp(1.5rem, 3vw, 2.5rem) !important; }
.rg-trip__toc { position: sticky; top: 100px; padding-top: 6px; }
.rg-trip__toc-label { margin: 0 0 12px; font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.16em; text-transform: uppercase; color: #8A7656; }
.rg-trip__toc ol { position: relative; margin: 0; padding: 0 0 0 16px; list-style: none; border-left: 2px dashed #CDB991; }
.rg-trip__toc li + li { margin-top: 4px; }
.rg-trip__toc a {
	position: relative; display: flex; gap: 10px; padding: 7px 8px; border-radius: 10px; text-decoration: none; color: #6B5A3E; font-size: 0.9375rem; line-height: 1.3;
	transition: background-color 0.25s ease, color 0.25s ease;
}
.rg-trip__toc a b { font: 500 0.75rem/1.6 var(--wp--preset--font-family--mono); color: #B9A27A; }
.rg-trip__toc a::before { content: ""; position: absolute; left: -24px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: var(--wp--preset--color--paper); border: 2px solid #CDB991; transition: all 0.3s ease; }
.rg-trip__toc a:hover { background: #F3EAD7; color: var(--wp--preset--color--ink); }
.rg-trip__toc a.is-read::before { background: #CDB991; }
.rg-trip__toc a.is-active { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-trip__toc a.is-active b { color: var(--wp--preset--color--sun); }
.rg-trip__toc a.is-active::before { background: var(--wp--preset--color--ember); border-color: var(--wp--preset--color--ember); transform: scale(1.3); box-shadow: 0 0 0 5px rgba(233, 132, 78, 0.2); }

.rg-trip__story { counter-reset: rgch; max-width: none !important; margin: 0 !important; }
.rg-trip__story > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
.rg-trip__story > h2 { counter-increment: rgch; position: relative; margin-top: 2.2em !important; padding-top: 0.2em; font-size: clamp(1.8rem, 3.2vw, 2.5rem); line-height: 1.1 !important; scroll-margin-top: 90px; }
.rg-trip__story > h2::before { content: counter(rgch, decimal-leading-zero); display: block; margin-bottom: 10px; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; color: var(--wp--preset--color--ember); }
.rg-trip__story > h2.is-flash { animation: rg-trip-flash 1.6s ease; }
@keyframes rg-trip-flash { 0%, 60% { background: linear-gradient(transparent 55%, rgba(232, 184, 107, 0.6) 55%); } 100% { background: linear-gradient(transparent 55%, rgba(232, 184, 107, 0) 55%); } }
.rg-trip__story > h2:focus { outline: none; }
.rg-trip__lead { font-size: clamp(1.25rem, 1.8vw, 1.45rem) !important; line-height: 1.6 !important; }
.rg-trip__lead::first-letter { float: left; margin: 0.06em 0.12em 0 0; font: 800 4.2em/0.8 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ember); }

.rg-trip__fig { margin: 2.2em 0 !important; padding: 12px 12px 14px; border-radius: 6px; background: #fff; box-shadow: 0 30px 50px -34px rgba(60, 45, 20, 0.75); }
.rg-trip__fig img { display: block; width: 100%; height: auto; border-radius: 3px !important; cursor: zoom-in; transition: filter 0.3s ease; }
.rg-trip__fig img:hover { filter: brightness(1.05); }
.rg-trip__fig img:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 3px; }
.rg-trip__fig.is-portrait { width: min(440px, 76%); margin-left: auto !important; margin-right: auto !important; }
.rg-trip__duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; margin: 2.2em 0 !important; }
.rg-trip__duo .rg-trip__fig { width: auto; margin: 0 !important; }
.rg-trip__duo .rg-trip__fig:nth-child(2) { margin-top: 40px !important; }

/* ---------- Roll-call ------------------------------------------------------ */

.rg-trip__roll-board {
	position: relative; overflow: hidden; padding: clamp(22px, 4vw, 40px); border-radius: 30px; color: var(--wp--preset--color--sand);
	background: radial-gradient(120% 120% at 0% 0%, #3E6249 0%, #2F4F3A 45%, #1F3328 100%);
}
.rg-trip__roll-count { margin: 0 0 20px; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; color: #A9CDB2; }
.rg-trip__roll-count b { font: 800 1.8rem/1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--sun); }
.rg-trip__animals { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; perspective: 900px; }
.rg-trip__animal { position: relative; width: 100%; aspect-ratio: 3 / 4; padding: 0; border: 0; background: none; cursor: pointer; transform-style: preserve-3d; transition: transform 0.7s cubic-bezier(0.34, 1.3, 0.64, 1); }
.rg-trip__animal:hover { transform: translateY(-4px) rotate(-1deg); }
.rg-trip__animal[aria-pressed="true"] { transform: rotateY(180deg); }
.rg-trip__animal:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: 4px; border-radius: 22px; }
.rg-trip__animal-face, .rg-trip__animal-back {
	position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 14px; border-radius: 22px; backface-visibility: hidden; -webkit-backface-visibility: hidden;
}
.rg-trip__animal-face { background: #F4EEDF; color: #2F4F3A; box-shadow: 0 16px 30px -18px rgba(0, 0, 0, 0.6); }
.rg-trip__animal-face svg { width: 74%; height: auto; transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-trip__animal:hover .rg-trip__animal-face svg { transform: rotate(-6deg) scale(1.06); }
.rg-trip__animal-name { font: 800 1.15rem/1.1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ink); }
.rg-trip__animal-back { transform: rotateY(180deg); background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); text-align: center; }
.rg-trip__animal-stamp { padding: 6px 10px; border: 2px solid var(--wp--preset--color--ember); border-radius: 6px; transform: rotate(-8deg); font: 700 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--ember); }
.rg-trip__animal-note { font: 600 0.9375rem/1.35 var(--wp--preset--font-family--body); }
.rg-trip__roll-done { margin: 22px 0 0; font: 800 clamp(1.4rem, 2.6vw, 2rem)/1.1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--sun); animation: rg-trip-rise 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
.rg-trip__feather { position: absolute; top: -20px; width: 10px; height: 18px; border-radius: 50% 50% 50% 50% / 70% 70% 30% 30%; pointer-events: none; animation: rg-trip-fall 2.2s cubic-bezier(0.25, 0.6, 0.4, 1) forwards; }
@keyframes rg-trip-fall { to { transform: translate(var(--dx), 520px) rotate(var(--r)); opacity: 0; } }

/* ---------- Cheat sheet ---------------------------------------------------- */

.rg-trip__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.rg-trip__card { position: relative; padding: 24px 22px; border-radius: 22px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); overflow: hidden; }
.rg-trip__card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--c, var(--wp--preset--color--forest)); }
.rg-trip__card--pack { --c: var(--wp--preset--color--sun); }
.rg-trip__card--site { --c: #6F95C3; }
.rg-trip__card-label { margin: 0 0 14px; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ember); }
.rg-trip__card ul { margin: 0; padding: 0; list-style: none; }
.rg-trip__card li { position: relative; padding: 9px 0 9px 26px; border-top: 1px dashed #E4D6BB; font-size: 1rem; }
.rg-trip__card li:first-child { border-top: 0; }
.rg-trip__card li::before { content: ""; position: absolute; left: 2px; top: 15px; width: 12px; height: 12px; border-radius: 4px; background: var(--c, var(--wp--preset--color--forest)); transform: rotate(45deg) scale(0.8); }
.rg-trip__card--verdict { --c: var(--wp--preset--color--ember); background: radial-gradient(130% 120% at 100% 120%, #F3C995 0%, #F8E4C4 45%, var(--wp--preset--color--paper) 80%); }
.rg-trip__verdict { margin: 0; font: italic 600 1.35rem/1.3 var(--wp--preset--font-family--display); }
.rg-trip__again { display: inline-flex; align-items: center; gap: 8px; margin: 18px 0 0; padding: 8px 12px; border-radius: 999px; background: var(--wp--preset--color--forest); color: var(--wp--preset--color--sand); font: 600 0.875rem/1 var(--wp--preset--font-family--body); }

/* ---------- Photo wall ---------------------------------------------------- */

.rg-trip__wall { columns: 3 260px; column-gap: 22px; margin: 0; padding: 0; list-style: none; }
.rg-trip__wall-item { break-inside: avoid; margin-bottom: 26px; }
.rg-trip__polaroid {
	display: block; width: 100%; padding: 12px 12px 0; border: 0; border-radius: 4px; background: #fff; cursor: zoom-in; text-align: center;
	box-shadow: 0 26px 44px -30px rgba(60, 45, 20, 0.8); transform: rotate(var(--tilt)); transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.45s ease;
}
.rg-trip__polaroid:hover, .rg-trip__polaroid:focus-visible { transform: rotate(0) scale(1.04); box-shadow: 0 36px 60px -30px rgba(60, 45, 20, 0.9); }
.rg-trip__polaroid:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; }
.rg-trip__polaroid img { display: block; width: 100%; height: auto; border-radius: 2px; background: #EADFC9; }
.rg-trip__wall-item.is-land img { aspect-ratio: 4 / 3; object-fit: cover; }
.rg-trip__wall-item.is-port img { aspect-ratio: 3 / 4; object-fit: cover; }
.rg-trip__polaroid span { display: block; padding: 12px 6px 14px; font: italic 600 1.05rem/1.2 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ink); }

/* ---------- Next stop -------------------------------------------------------- */

.rg-trip__next { display: grid; gap: 14px; margin-top: clamp(4rem, 8vw, 6rem) !important; }
.rg-trip__next-card {
	position: relative; display: flex; flex-direction: column; gap: 10px; padding: clamp(26px, 5vw, 56px); padding-right: 110px; border-radius: 30px; text-decoration: none;
	background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); overflow: hidden; isolation: isolate;
}
.rg-trip__next-card::after { content: ""; position: absolute; right: -60px; bottom: -80px; z-index: -1; width: 300px; height: 300px; border-radius: 50%; background: radial-gradient(circle, rgba(233, 132, 78, 0.55), rgba(233, 132, 78, 0)); transition: transform 0.6s ease; }
.rg-trip__next-card:hover::after { transform: scale(1.3); }
.rg-trip__next-label { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--sun); }
.rg-trip__next-title { font: 800 clamp(1.6rem, 3.4vw, 2.8rem)/1.05 var(--wp--preset--font-family--display); max-width: 22ch; }
.rg-trip__next-go { position: absolute; right: clamp(24px, 4vw, 48px); top: 50%; width: 60px; height: 60px; margin-top: -30px; display: grid; place-items: center; border-radius: 50%; background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); font-size: 1.4rem; transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-trip__next-card:hover .rg-trip__next-go { transform: translateX(6px); }
.rg-trip__next-card:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; }
.rg-trip__back { justify-self: start; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--ember); text-decoration: none; }
.rg-trip__back:hover { text-decoration: underline; text-underline-offset: 4px; }

/* ---------- Lightbox ---------------------------------------------------------- */

.rg-trip__lightbox { width: 100vw; height: 100vh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: transparent; color: #fff; }
.rg-trip__lightbox::backdrop { background: rgba(10, 14, 12, 0.92); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.rg-trip__lightbox figure { position: absolute; inset: 60px 80px; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; }
.rg-trip__lightbox img { max-width: 100%; max-height: calc(100% - 40px); object-fit: contain; border-radius: 6px; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6); }
.rg-trip__lightbox figcaption { font: italic 600 1.15rem/1.2 var(--wp--preset--font-family--display); color: #F3EAD7; }
.rg-trip__lb-btn { position: absolute; width: 50px; height: 50px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.3); background: rgba(255, 255, 255, 0.08); color: #fff; font-size: 1.1rem; cursor: pointer; transition: background-color 0.2s ease; }
.rg-trip__lb-btn:hover { background: rgba(255, 255, 255, 0.2); }
.rg-trip__lb-btn:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: 2px; }
.rg-trip__lb-close { top: 16px; right: 16px; }
.rg-trip__lb-prev { left: 16px; top: 50%; margin-top: -25px; }
.rg-trip__lb-next { right: 16px; top: 50%; margin-top: -25px; }
.rg-trip__lb-count { position: absolute; left: 20px; top: 26px; margin: 0; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.1em; color: #A9B4A6; }

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

@media (max-width: 1000px) {
	.rg-trip__layout { grid-template-columns: minmax(0, 1fr); }
	.rg-trip__toc { display: none; }
	.rg-trip__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-trip__animals { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.rg-trip__glance { grid-template-columns: 1fr; margin-top: -30px !important; }
	.rg-trip__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-trip__fact--sun { grid-column: span 2; }
	.rg-trip__fact { padding: 16px; }
	.rg-trip__fact dd { font-size: 1.1rem; }
	.rg-trip__hl { grid-template-columns: 1fr; }
	.rg-trip__cards { grid-template-columns: 1fr; }
	.rg-trip__animals { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-trip__postmark { top: 18px; right: 16px; width: 92px; }
	.rg-trip__cue { display: none; }
	.rg-trip__duo { grid-template-columns: 1fr; }
	.rg-trip__duo .rg-trip__fig:nth-child(2) { margin-top: 0 !important; }
	.rg-trip__lightbox figure { inset: 60px 10px 80px; }
	.rg-trip__lb-prev, .rg-trip__lb-next { top: auto; bottom: 16px; margin-top: 0; }
	.rg-trip__next-card { padding-right: 26px; padding-bottom: 96px; }
	.rg-trip__next-go { top: auto; bottom: 24px; margin-top: 0; right: 24px; }
}

/* ---------- Night mode (Sat–Sun) ------------------------------------------ */

html[data-rg-mode="weekend"] .rg-trip__sechead h2 em { color: #A9CDB2; }
html[data-rg-mode="weekend"] .rg-trip__num,
html[data-rg-mode="weekend"] .rg-trip__fact dt,
html[data-rg-mode="weekend"] .rg-trip__card-label,
html[data-rg-mode="weekend"] .rg-trip__story > h2::before,
html[data-rg-mode="weekend"] .rg-trip__back { color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-trip__sechead p:not(.rg-trip__num),
html[data-rg-mode="weekend"] .rg-trip__fact .rg-trip__fact-sub,
html[data-rg-mode="weekend"] .rg-trip__hl-sub,
html[data-rg-mode="weekend"] .rg-trip__toc a,
html[data-rg-mode="weekend"] .rg-trip__toc-label { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-trip__fact,
html[data-rg-mode="weekend"] .rg-trip__hl-btn,
html[data-rg-mode="weekend"] .rg-trip__card,
html[data-rg-mode="weekend"] .rg-trip__map { background: var(--rg-n-surface); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-trip__map svg { filter: brightness(0.82) saturate(0.85); }
html[data-rg-mode="weekend"] .rg-trip__hl-icon { background: var(--rg-n-surface-2); color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-trip__hl-go,
html[data-rg-mode="weekend"] .rg-trip__map-go { background: var(--rg-n-text); color: #111916; }
html[data-rg-mode="weekend"] .rg-trip__therm { background: var(--rg-n-surface-2); }
html[data-rg-mode="weekend"] .rg-trip__toc ol { border-left-color: var(--rg-n-dash); }
html[data-rg-mode="weekend"] .rg-trip__toc a::before { background: var(--rg-n-bg); border-color: var(--rg-n-dash); }
html[data-rg-mode="weekend"] .rg-trip__toc a:hover { background: var(--rg-n-surface-2); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-trip__toc a.is-active { background: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-trip__toc a.is-active b { color: #111916; }
html[data-rg-mode="weekend"] .rg-trip__fig, html[data-rg-mode="weekend"] .rg-trip__polaroid { background: #F4EEDF; }
html[data-rg-mode="weekend"] .rg-trip__card li { border-top-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-trip__card--verdict { background: radial-gradient(130% 120% at 100% 120%, rgba(233, 132, 78, 0.5) 0%, rgba(232, 184, 107, 0.15) 45%, var(--rg-n-surface) 80%); }
html[data-rg-mode="weekend"] .rg-trip__next-card { background: #0B120F; border: 1px solid var(--rg-n-line); }

@media (prefers-reduced-motion: reduce) {
	.rg-trip *, .rg-trip *::before, .rg-trip *::after { animation: none !important; transition: none !important; }
	.rg-js .rg-trip__reveal, .rg-js .rg-trip__rise, .rg-js .rg-trip__story > p, .rg-js .rg-trip__story > h2, .rg-js .rg-trip__fig { opacity: 1; transform: none; }
}

/* ---------- Pony spotter (Roundhill) -------------------------------------- */

.rg-pony-scene { position: relative; aspect-ratio: 1000 / 400; min-height: 300px; border-radius: 30px; overflow: hidden; isolation: isolate; border: 1px solid var(--rg-line); }
.rg-pony-scene__bg, .rg-pony-scene__front { position: absolute; inset: 0; width: 100%; height: 100%; }
.rg-pony-scene__front { z-index: 60; pointer-events: none; }
.rg-pony-scene__herd { z-index: auto; }
.rg-pony-scene__herd { position: absolute; inset: 0; margin: 0; padding: 0; list-style: none; }
.rg-pony-wrap { position: absolute; left: var(--x); top: var(--y); width: clamp(64px, calc(10vw * var(--s)), calc(140px * var(--s))); transform: translate(-50%, -100%); animation: rg-pony-roam var(--dur) linear infinite; animation-delay: var(--delay); }
@keyframes rg-pony-roam {
	0% { translate: 0 0; }
	46% { translate: var(--range) 0; }
	50% { translate: var(--range) 0; }
	96% { translate: 0 0; }
	100% { translate: 0 0; }
}
.rg-pony { position: relative; display: block; width: 100%; padding: 0; border: 0; background: none; cursor: pointer; }
.rg-pony { pointer-events: none; }
.rg-pony svg path, .rg-pony svg rect, .rg-pony svg ellipse, .rg-pony__tag { pointer-events: auto; }
.rg-pony__walk { display: block; animation: rg-pony-face var(--dur) steps(1) infinite; animation-delay: var(--delay); }
.rg-pony-wrap:nth-child(3) .rg-pony__walk, .rg-pony-wrap:nth-child(5) .rg-pony__walk, .rg-pony-wrap:nth-child(6) .rg-pony__walk { animation-name: rg-pony-face-rev; }
@keyframes rg-pony-face { 0%, 47% { transform: scaleX(1); } 48%, 97% { transform: scaleX(-1); } 98%, 100% { transform: scaleX(1); } }
@keyframes rg-pony-face-rev { 0%, 47% { transform: scaleX(-1); } 48%, 97% { transform: scaleX(1); } 98%, 100% { transform: scaleX(-1); } }
.rg-pony svg { display: block; width: 100%; height: auto; overflow: visible; filter: drop-shadow(0 6px 4px rgba(31, 42, 34, 0.25)); }
.rg-pony__head { transform-box: fill-box; transform-origin: 20% 90%; animation: rg-pony-graze 5s ease-in-out infinite; animation-delay: var(--delay); }
@keyframes rg-pony-graze { 0%, 60%, 100% { transform: rotate(0); } 70%, 90% { transform: rotate(38deg); } }
.rg-pony__tail { transform-box: fill-box; transform-origin: 90% 0; animation: rg-pony-swish 1.8s ease-in-out infinite; }
@keyframes rg-pony-swish { 50% { transform: rotate(14deg); } }
.rg-pony__tag {
	position: absolute; left: 50%; top: -14px; padding: 6px 10px; border-radius: 8px; background: var(--wp--preset--color--ember); color: #fff; white-space: nowrap;
	font: 600 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase;
	opacity: 0; transform: translate(-50%, 8px) scale(0.6); transition: opacity 0.25s ease, transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.rg-pony:hover svg { filter: drop-shadow(0 0 0 #fff) drop-shadow(0 0 8px rgba(255, 255, 255, 0.9)); }
.rg-pony:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; border-radius: 12px; }
.rg-pony[aria-pressed="true"] .rg-pony__tag { opacity: 1; transform: translate(-50%, -100%) scale(1); }
.rg-pony-wrap.is-spotted, .rg-pony-wrap.is-spotted .rg-pony__walk, .rg-pony-wrap.is-spotted .rg-pony__head { animation-play-state: paused; }
.rg-pony-wrap.is-spotted { z-index: 70 !important; }
.rg-pony-scene__front { z-index: 55; }
.rg-pony-scene__count {
	position: absolute; left: 18px; top: 16px; z-index: 80; margin: 0; padding: 10px 14px; border-radius: 999px; background: rgba(255, 250, 240, 0.9);
	font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--ink);
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.rg-pony-scene__count b { font: 800 1.2rem/1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ember); }
.rg-ponies.is-done .rg-pony-scene__count, [data-ponies].is-done .rg-pony-scene__count { background: var(--wp--preset--color--forest); color: var(--wp--preset--color--sand); }
@media (max-width: 760px) { .rg-pony-scene { aspect-ratio: 4 / 3; border-radius: 22px; } }

html[data-rg-mode="weekend"] .rg-pony-scene { border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-pony-scene__sky { fill: #18263A; }
html[data-rg-mode="weekend"] .rg-pony-scene__sun { fill: #ECE5D5; }
html[data-rg-mode="weekend"] .rg-pony-scene__far { fill: #1F3328; }
html[data-rg-mode="weekend"] .rg-pony-scene__heath { fill: #22382B; }
html[data-rg-mode="weekend"] .rg-pony-scene__grass { fill: #1B2E23; }
html[data-rg-mode="weekend"] .rg-pony-scene__trees { fill: #0F1A14; }
html[data-rg-mode="weekend"] .rg-pony-scene__fore { fill: #142219; }
html[data-rg-mode="weekend"] .rg-pony-scene__tuft { stroke: #2B4636; }
html[data-rg-mode="weekend"] .rg-pony-scene__count { background: rgba(24, 35, 30, 0.85); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-pony svg { filter: brightness(0.85) drop-shadow(0 6px 4px rgba(0, 0, 0, 0.4)); }
@media (prefers-reduced-motion: reduce) { .rg-pony-wrap, .rg-pony__walk, .rg-pony__head, .rg-pony__tail { animation: none !important; } }

/* ---------- Build log (garage) -------------------------------------------- */

.rg-trip__glance--solo { grid-template-columns: 1fr; }
.rg-trip__glance--solo .rg-trip__facts { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.rg-trip__glance--solo .rg-trip__fact--sun { grid-column: auto; }
.rg-trip__layout:has(.rg-trip__toc[hidden]) { grid-template-columns: minmax(0, 720px); }

/* Before / after */
.rg-cmp__tabs { display: inline-flex; gap: 6px; margin-bottom: 14px; padding: 5px; border-radius: 999px; background: #F3EAD7; }
.rg-cmp__tabs button { padding: 10px 18px; border: 0; border-radius: 999px; background: none; cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); transition: background-color 0.3s ease, color 0.3s ease; }
.rg-cmp__tabs button[aria-pressed="true"] { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-cmp__tabs button:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-cmp__frame { --pos: 50%; position: relative; aspect-ratio: 4 / 3; max-width: 900px; margin: 0 auto; border-radius: 26px; overflow: hidden; background: #2A2E33; box-shadow: 0 34px 60px -40px rgba(31, 42, 34, 0.8); user-select: none; }
.rg-cmp__after, .rg-cmp__before img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.rg-cmp__before { position: absolute; inset: 0; clip-path: inset(0 calc(100% - var(--pos)) 0 0); }
.rg-cmp__before img { transition: opacity 0.35s ease; }
.rg-cmp__before img.is-swap { opacity: 0; }
.rg-cmp__label { position: absolute; top: 16px; padding: 8px 12px; border-radius: 8px; background: rgba(15, 23, 20, 0.7); color: #fff; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; pointer-events: none; }
.rg-cmp__label--l { left: 16px; }
.rg-cmp__label--r { right: 16px; background: var(--wp--preset--color--ember); }
.rg-cmp__handle { position: absolute; top: 0; bottom: 0; left: var(--pos); width: 4px; margin-left: -2px; background: #fff; pointer-events: none; box-shadow: 0 0 12px rgba(0, 0, 0, 0.4); }
.rg-cmp__handle span { position: absolute; top: 50%; left: 50%; width: 54px; height: 54px; margin: -27px 0 0 -27px; display: grid; place-items: center; border-radius: 50%; background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); font-size: 1.3rem; box-shadow: 0 10px 24px -8px rgba(0, 0, 0, 0.6); transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-cmp__frame:hover .rg-cmp__handle span { transform: scale(1.1); }
.rg-cmp__range { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; }
.rg-cmp__range:focus-visible + * , .rg-cmp__frame:focus-within { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; }

/* Garage plan */
.rg-gplan { padding: clamp(18px, 3vw, 28px); border-radius: 28px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-gplan__toggle { position: relative; display: inline-grid; grid-template-columns: 1fr 1fr; padding: 5px; border-radius: 999px; background: #F3EAD7; }
.rg-gplan__marker { position: absolute; top: 5px; bottom: 5px; left: 5px; width: calc(50% - 5px); border-radius: 999px; background: var(--wp--preset--color--ink); transition: transform 0.5s cubic-bezier(0.65, 0, 0.35, 1); }
[data-state="after"] .rg-gplan__marker { transform: translateX(100%); background: var(--wp--preset--color--forest); }
.rg-gplan__toggle button { position: relative; z-index: 1; flex: 1; padding: 11px 20px; border: 0; background: none; cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); transition: color 0.3s ease; white-space: nowrap; }
.rg-gplan__toggle button[aria-pressed="true"] { color: var(--wp--preset--color--sand); }
.rg-gplan__toggle button:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; border-radius: 999px; }
.rg-gplan__body { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 28px; align-items: center; margin-top: 20px; }
.rg-gplan__svg { display: block; width: 100%; height: auto; }
.rg-gplan__svg text { font: 600 15px var(--wp--preset--font-family--mono); fill: #4A3524; letter-spacing: 1px; text-transform: uppercase; pointer-events: none; }
.rg-gplan__wall { fill: #E2D3B4; stroke: #4A3524; stroke-width: 6; }
.rg-gplan__room { stroke: transparent; stroke-width: 3; transition: fill 0.3s ease, stroke 0.3s ease; }
.rg-gplan__room--office { fill: #DCE6EE; }
.rg-gplan__room--gym { fill: #E3E0D8; }
.rg-gplan__room--sauna { fill: #E9C7A0; }
.rg-gplan__room--ws { fill: #F1E3C2; }
.rg-gplan__zone { cursor: pointer; outline: none; }
.rg-gplan__zone:hover .rg-gplan__room, .rg-gplan__zone:focus-visible .rg-gplan__room, .rg-gplan__zone.is-on .rg-gplan__room { stroke: var(--wp--preset--color--ember); }
.rg-gplan__item { fill: #8FA3B4; } .rg-gplan__item--dark { fill: #3A3F45; }
.rg-gplan__frame { fill: none; stroke: #3A3F45; stroke-width: 6; }
.rg-gplan__mat { fill: #9AA3AB; }
.rg-gplan__steam { fill: none; stroke: #B5643A; stroke-width: 3; stroke-linecap: round; opacity: 0.7; }
.rg-gplan__door { fill: #4A3524; }
.rg-gplan__mess rect, .rg-gplan__mess circle { fill: #B98F5A; stroke: #6B4A2E; stroke-width: 2; }
.rg-gplan__mess path { stroke: #6B4A2E; stroke-linecap: round; }
.rg-gplan__mess, .rg-gplan__fit { transition: opacity 0.6s ease, transform 0.7s cubic-bezier(0.65, 0, 0.35, 1); transform-box: fill-box; transform-origin: center; }
.rg-gplan__fit { opacity: 0; transform: scale(0.9); }
[data-state="after"] .rg-gplan__mess { opacity: 0; transform: scale(1.15) rotate(8deg); }
[data-state="after"] .rg-gplan__fit { opacity: 1; transform: none; }
[data-state="after"] .rg-gplan__room--ws { fill: #E3F0DE; }
.rg-gplan__bench { fill: #C9A675; stroke: #6B4A2E; stroke-width: 2; }
.rg-gplan__peg { fill: #8A6440; }
.rg-gplan__drawers { stroke: #6B4A2E; stroke-width: 2; }
.rg-gplan__shelf { fill: #9AA3AB; }
.rg-gplan__info h3 { margin: 0 0 10px; font-size: clamp(1.5rem, 2.4vw, 2rem); }
.rg-gplan__info p { margin: 0; color: #4E5A4F; font-size: 1.0625rem; }
.rg-gplan__info [data-zone-info]:not([hidden]) > * { animation: rg-trip-rise 0.5s cubic-bezier(0.16, 1, 0.3, 1) both; }
[data-state="before"] .rg-gplan__state-after, [data-state="after"] .rg-gplan__state-before { display: none; }
.rg-gplan__hint { margin-top: 18px !important; font: 500 0.75rem/1.3 var(--wp--preset--font-family--mono) !important; letter-spacing: 0.1em; text-transform: uppercase; color: #8A7656 !important; }

/* Steps */
.rg-steps { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.rg-steps::before { content: ""; position: absolute; left: 4%; right: 4%; top: 34px; height: 3px; background: repeating-linear-gradient(90deg, #CDB991 0 10px, transparent 10px 18px); }
.rg-steps__item { position: relative; display: flex; flex-direction: column; gap: 8px; padding: 0 4px; }
.rg-steps__icon { position: relative; display: grid; place-items: center; width: 70px; height: 70px; border-radius: 22px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); color: var(--wp--preset--color--ember); box-shadow: 0 16px 30px -22px rgba(60, 45, 20, 0.7); transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease, color 0.3s ease; }
.rg-steps__item:hover .rg-steps__icon { transform: rotate(-6deg) translateY(-4px); background: var(--wp--preset--color--ember); color: #fff; }
.rg-steps__item:nth-child(5) .rg-steps__icon::after { content: "again"; position: absolute; top: -10px; right: -12px; padding: 4px 7px; border-radius: 999px; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sun); font: 600 0.75rem/1 var(--wp--preset--font-family--mono); }
.rg-steps__n { margin-top: 6px; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); color: var(--wp--preset--color--ember); }
.rg-steps__item b { font: 800 1.15rem/1.15 var(--wp--preset--font-family--display); }
.rg-steps__text { color: #4E5A4F; font-size: 0.9375rem; line-height: 1.45; }

/* Projects unlocked */
.rg-proj { padding: clamp(22px, 4vw, 36px); border-radius: 28px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-proj__bench { position: relative; height: 120px; margin-bottom: 24px; border-radius: 18px; overflow: hidden; background: repeating-radial-gradient(circle at 10px 10px, #8A6440 0 2px, #A9805A 2px 20px); }
.rg-proj__top { position: absolute; left: 0; right: 0; bottom: 0; height: 34px; background: linear-gradient(180deg, #D9BC8C, #C9A675); border-top: 3px solid #B98F5A; }
.rg-proj__on { position: absolute; left: 50%; bottom: 40px; transform: translateX(-50%); padding: 10px 16px; border-radius: 10px; background: rgba(255, 250, 240, 0.95); font: 600 0.9375rem/1.2 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); box-shadow: 0 10px 20px -10px rgba(0, 0, 0, 0.5); white-space: nowrap; max-width: 90%; overflow: hidden; text-overflow: ellipsis; }
.rg-proj__on.is-new { animation: rg-proj-drop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1); }
@keyframes rg-proj-drop { from { transform: translate(-50%, -40px); opacity: 0; } }
.rg-proj__list { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.rg-proj__btn { display: inline-flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: 16px; border: 1.5px solid #E4D6BB; background: #fff; cursor: pointer; font: 600 1rem/1.2 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease; }
.rg-proj__icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: #F3EAD7; color: var(--wp--preset--color--ember); transition: inherit; }
.rg-proj__btn:hover { transform: translateY(-3px); border-color: #C9B894; }
.rg-proj__btn[aria-pressed="true"] { background: var(--wp--preset--color--forest); border-color: var(--wp--preset--color--forest); color: var(--wp--preset--color--sand); }
.rg-proj__btn[aria-pressed="true"] .rg-proj__icon { background: rgba(243, 234, 215, 0.15); color: var(--wp--preset--color--sun); }
.rg-proj__btn:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-proj__wins { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; }
.rg-proj__wins span { padding: 8px 12px; border-radius: 999px; background: #EEF4EC; color: #2F4F3A; font: 500 0.8125rem/1.2 var(--wp--preset--font-family--mono); }
.rg-proj__wins span::before { content: "✓ "; }

@media (max-width: 1000px) {
	.rg-trip__glance--solo .rg-trip__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.rg-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 30px; }
	.rg-steps::before { display: none; }
	.rg-gplan__body { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
	.rg-trip__glance--solo .rg-trip__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-trip__glance--solo .rg-trip__fact:last-child { grid-column: span 2; }
	.rg-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-cmp__frame { aspect-ratio: 4 / 5; }
	.rg-gplan__toggle button { padding: 10px 14px; font-size: 0.875rem; }
}

html[data-rg-mode="weekend"] .rg-cmp__tabs, html[data-rg-mode="weekend"] .rg-gplan__toggle { background: var(--rg-n-surface-2); }
html[data-rg-mode="weekend"] .rg-cmp__tabs button, html[data-rg-mode="weekend"] .rg-gplan__toggle button { color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-cmp__tabs button[aria-pressed="true"] { background: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-gplan__toggle button[aria-pressed="true"] { color: #111916; }
html[data-rg-mode="weekend"] .rg-gplan__marker, html[data-rg-mode="weekend"] [data-state="after"] .rg-gplan__marker { background: var(--rg-n-accent); }
html[data-rg-mode="weekend"] .rg-gplan, html[data-rg-mode="weekend"] .rg-proj, html[data-rg-mode="weekend"] .rg-steps__icon { background: var(--rg-n-surface); border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-gplan__svg { filter: brightness(0.85); }
html[data-rg-mode="weekend"] .rg-gplan__info p, html[data-rg-mode="weekend"] .rg-steps__text { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-steps__n { color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-steps::before { background: repeating-linear-gradient(90deg, var(--rg-n-dash) 0 10px, transparent 10px 18px); }
html[data-rg-mode="weekend"] .rg-proj__btn { background: var(--rg-n-surface-2); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-proj__icon { background: var(--rg-n-surface); color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-proj__btn[aria-pressed="true"] { background: #2F5A41; border-color: #4C7A5C; }
html[data-rg-mode="weekend"] .rg-proj__wins span { background: #1F3328; color: #A9CDB2; }

/* What's next (garage) */
.rg-next { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.rg-next__item { display: flex; flex-direction: column; gap: 14px; padding: 22px 20px; border-radius: 22px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease; }
.rg-next__item:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -28px rgba(60, 45, 20, 0.7); }
.rg-next__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: #F3EAD7; color: var(--wp--preset--color--ember); }
.rg-next__item b { font: 800 1.15rem/1.2 var(--wp--preset--font-family--display); }
.rg-next__wins { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 14px; padding: 22px 24px; border-radius: 22px; background: var(--wp--preset--color--forest); color: var(--wp--preset--color--sand); }
.rg-next__wins p { margin: 0; font: 600 1rem/1.35 var(--wp--preset--font-family--body); }
.rg-next__wins span { display: inline-grid; place-items: center; width: 24px; height: 24px; margin-right: 8px; border-radius: 50%; background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); font-size: 0.8rem; }
@media (max-width: 1000px) { .rg-next { grid-template-columns: repeat(3, minmax(0, 1fr)); } .rg-next__wins { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .rg-next { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
html[data-rg-mode="weekend"] .rg-next__item { background: var(--rg-n-surface); border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-next__icon { background: var(--rg-n-surface-2); color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-next__wins { background: #1F3328; }

/* ---------- Home gym ------------------------------------------------------ */

/* Walk the room */
.rg-walk { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 18px; align-items: stretch; }
.rg-walk__photo { position: relative; border-radius: 26px; overflow: hidden; background: #1F2124; box-shadow: 0 34px 60px -40px rgba(31, 42, 34, 0.85); }
.rg-walk__photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: filter 0.4s ease; }
.rg-walk.is-on .rg-walk__photo img { filter: brightness(0.62) saturate(0.85); }
.rg-walk__spot {
	position: absolute; left: var(--x); top: var(--y); width: 34px; height: 34px; margin: -17px 0 0 -17px; padding: 0; border: 0; border-radius: 50%; cursor: pointer;
	background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); font: 700 0.8125rem/1 var(--wp--preset--font-family--mono);
	box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.35), 0 6px 14px rgba(0, 0, 0, 0.45); transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s ease;
}
.rg-walk__spot::before { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 2px solid var(--wp--preset--color--sun); animation: rg-trip-ping 2.4s cubic-bezier(0, 0, 0.2, 1) infinite; animation-delay: calc(var(--i) * 200ms); }
@keyframes rg-trip-ping { from { transform: scale(0.7); opacity: 1; } to { transform: scale(1.7); opacity: 0; } }
.rg-walk__spot:hover { transform: scale(1.15); }
.rg-walk__spot[aria-pressed="true"] { background: var(--wp--preset--color--ember); color: #fff; transform: scale(1.3); z-index: 2; }
.rg-walk__spot[aria-pressed="true"]::before { border-color: var(--wp--preset--color--ember); }
.rg-walk__spot:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.rg-walk__card { display: flex; flex-direction: column; gap: 12px; padding: clamp(22px, 3vw, 32px); border-radius: 26px; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-walk__card > * { margin: 0; }
.rg-walk__card.is-new > :not(.rg-walk__nav) { animation: rg-trip-rise 0.45s cubic-bezier(0.16, 1, 0.3, 1) both; }
.rg-walk__zone { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--sun); }
.rg-walk__title { font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important; line-height: 1.05 !important; color: var(--wp--preset--color--sand); }
.rg-walk__text { color: #C9D2C6; font-size: 1.0625rem; line-height: 1.55; }
.rg-walk__nav { display: flex; align-items: center; gap: 12px; margin-top: auto !important; padding-top: 10px; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); color: #A9B4A6; }
.rg-walk__nav button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(243, 234, 215, 0.25); background: transparent; color: var(--wp--preset--color--sand); cursor: pointer; font-size: 1rem; transition: background-color 0.2s ease; }
.rg-walk__nav button:hover { background: rgba(243, 234, 215, 0.12); }
.rg-walk__nav button:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: 2px; }

/* Zones */
.rg-zones__tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; padding: 6px; width: fit-content; max-width: 100%; border-radius: 999px; background: #F3EAD7; }
.rg-zones__tabs button { padding: 11px 18px; border: 0; border-radius: 999px; background: none; cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); transition: background-color 0.3s ease, color 0.3s ease; }
.rg-zones__tabs button b { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); color: var(--wp--preset--color--ember); margin-right: 4px; }
.rg-zones__tabs button[aria-selected="true"] { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-zones__tabs button[aria-selected="true"] b { color: var(--wp--preset--color--sun); }
.rg-zones__tabs button:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-zones__panel { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: clamp(18px, 3vw, 40px); align-items: center; }
.rg-zones__panel[hidden] { display: none; }
.rg-zones__panel:not([hidden]) { animation: rg-trip-rise 0.5s cubic-bezier(0.16, 1, 0.3, 1); }
.rg-zones__img { display: block; padding: 0; border: 0; border-radius: 24px; overflow: hidden; cursor: zoom-in; background: #1F2124; aspect-ratio: 4 / 3; }
.rg-zones__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.rg-zones__img:hover img { transform: scale(1.04); }
.rg-zones__img:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; }
.rg-zones__copy h3 { margin: 0 0 10px; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.rg-zones__copy p { margin: 0; color: #4E5A4F; font-size: 1.0625rem; line-height: 1.55; }
.rg-zones__copy ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.rg-zones__copy li { padding: 8px 12px; border-radius: 999px; background: #F3EAD7; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); color: #4A3524; }

/* Kit list */
.rg-kit__filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.rg-kit__filters button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 999px; border: 1.5px solid #E4D6BB; background: #fff; cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); color: var(--wp--preset--color--ink); transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease; }
.rg-kit__filters b { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); color: #8A7656; }
.rg-kit__filters button[aria-pressed="true"] { background: var(--wp--preset--color--forest); border-color: var(--wp--preset--color--forest); color: var(--wp--preset--color--sand); }
.rg-kit__filters button[aria-pressed="true"] b { color: var(--wp--preset--color--sun); }
.rg-kit__filters button:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-kit__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.rg-kit__item { --c: var(--wp--preset--color--forest); position: relative; display: flex; gap: 14px; align-items: flex-start; padding: 16px 16px 16px 18px; border-radius: 16px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); overflow: hidden; transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-kit__item::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--c); }
.rg-kit__item--engine { --c: #6F95C3; } .rg-kit__item--oche { --c: var(--wp--preset--color--ember); } .rg-kit__item--desk { --c: #C9963F; }
.rg-kit__item:hover { transform: translateY(-3px); }
.rg-kit__item[hidden] { display: none; }
.rg-kit__no { font: 500 0.75rem/1.6 var(--wp--preset--font-family--mono); color: #B9A27A; }
.rg-kit__body { display: flex; flex-direction: column; gap: 3px; flex: 1; min-width: 0; }
.rg-kit__brand { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--c); }
.rg-kit__body b { font: 800 1.1rem/1.2 var(--wp--preset--font-family--display); }
.rg-kit__note { font-size: 0.875rem; color: #6B5A3E; }
.rg-kit__zone { flex: none; padding: 4px 8px; border-radius: 999px; background: #F3EAD7; font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); color: #6B4A2E; }

@media (max-width: 900px) {
	.rg-walk { grid-template-columns: 1fr; }
	.rg-zones__panel { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
	.rg-walk__spot { width: 26px; height: 26px; margin: -13px 0 0 -13px; font-size: 0.6875rem; }
	.rg-zones__tabs { border-radius: 20px; }
	.rg-kit__zone { display: none; }
}

html[data-rg-mode="weekend"] .rg-walk__card { background: #0B120F; border: 1px solid var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-zones__tabs { background: var(--rg-n-surface-2); }
html[data-rg-mode="weekend"] .rg-zones__tabs button { color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-zones__tabs button[aria-selected="true"] { background: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-zones__tabs button[aria-selected="true"] b { color: #111916; }
html[data-rg-mode="weekend"] .rg-zones__copy p, html[data-rg-mode="weekend"] .rg-kit__note { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-zones__copy li, html[data-rg-mode="weekend"] .rg-kit__zone { background: var(--rg-n-surface-2); color: var(--rg-n-accent); }
html[data-rg-mode="weekend"] .rg-kit__filters button { background: var(--rg-n-surface-2); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-kit__filters button[aria-pressed="true"] { background: var(--rg-n-accent); border-color: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-kit__filters button[aria-pressed="true"] b { color: #111916; }
html[data-rg-mode="weekend"] .rg-kit__item { background: var(--rg-n-surface); border-color: var(--rg-n-line); }
@media (prefers-reduced-motion: reduce) { .rg-walk__spot::before { animation: none; } }
html[data-rg-mode="weekend"] .rg-kit__item--lift { --c: #7FB08E; }

/* Framed hero (portrait photo): the photo sits crisp in a polaroid, the backdrop is softened */
.rg-trip__hero--framed .rg-trip__hero-media img { filter: blur(6px) brightness(0.7) saturate(0.9); transform: scale(1.06); }
.rg-trip__hero-frame { position: absolute; right: clamp(24px, 8vw, 140px); top: 50%; z-index: 1; width: min(30vw, 400px); margin: 0; padding: 12px 12px 0; border-radius: 6px; background: #FFFDF7; color: var(--wp--preset--color--ink); box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.7); transform: translateY(-50%) rotate(3deg); }
.rg-trip__hero-frame img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 3px; }
.rg-trip__hero-frame figcaption { padding: 12px 4px 14px; text-align: center; font: italic 600 1.1rem/1.2 var(--wp--preset--font-family--display); }
.rg-trip__hero--framed .rg-trip__postmark { right: auto; left: clamp(20px, 6vw, 90px); }
@media (max-width: 860px) { .rg-trip__hero-frame { display: none; } .rg-trip__hero--framed .rg-trip__hero-media img { filter: brightness(0.8); transform: none; } }
.rg-cmp { text-align: center; } .rg-cmp__label, .rg-cmp__frame { text-align: left; }

/* ==========================================================================
   Arsenal post
   ========================================================================== */
.rg-afc-tl, .rg-afc-match, .rg-afc-house { --afc: #DB0007; --afc-dark: #9C0006; --thfc: #132257; --bha: #0057B8; }

/* Scarf timeline */
.rg-afc-scarf {
	display: flex; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; border-radius: 14px;
	box-shadow: 0 18px 34px -24px rgba(60, 20, 20, 0.7); position: relative;
}
.rg-afc-scarf::-webkit-scrollbar { display: none; }
.rg-afc-scarf__stripe {
	position: relative; flex: 1 0 128px; scroll-snap-align: center; display: flex; flex-direction: column; justify-content: center; gap: 4px;
	min-height: 86px; padding: 14px 16px; border: 0; cursor: pointer; text-align: left; color: #fff;
	background: var(--afc); font: inherit; transition: background-color 0.25s ease, flex-basis 0.4s ease;
}
.rg-afc-scarf__stripe:nth-child(even) { background: #fff; color: var(--afc); }
.rg-afc-scarf__stripe::before, .rg-afc-scarf__stripe::after { /* knitted edge */
	content: ""; position: absolute; left: 0; right: 0; height: 6px;
	background: repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.12) 0 4px, transparent 4px 8px);
}
.rg-afc-scarf__stripe::before { top: 0; }
.rg-afc-scarf__stripe::after { bottom: 0; }
.rg-afc-scarf__year { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; opacity: 0.85; }
.rg-afc-scarf__name { font: 700 0.9375rem/1.15 var(--wp--preset--font-family--display); }
.rg-afc-scarf__stripe[aria-selected="true"] { flex-basis: 190px; background: #1F2A22; color: var(--wp--preset--color--sun); }
.rg-afc-scarf__stripe:hover:not([aria-selected="true"]) { filter: brightness(1.08); }
.rg-afc-scarf__stripe:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: -5px; }
.rg-afc-scarf__stripe:first-child { border-radius: 14px 0 0 14px; }
.rg-afc-scarf__stripe:last-child { border-radius: 0 14px 14px 0; }

.rg-afc-tl__stage { position: relative; margin-top: 18px; }
.rg-afc-card {
	display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: clamp(18px, 3vw, 40px); align-items: center;
	padding: clamp(14px, 2vw, 22px); border-radius: 24px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line);
	box-shadow: 0 30px 60px -40px rgba(60, 45, 20, 0.6);
}
.rg-afc-card[hidden] { display: none; }
.rg-afc-card.is-in { animation: rg-afc-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) both; }
@keyframes rg-afc-in { from { opacity: 0; transform: translateX(calc(var(--dir, 1) * 26px)); } to { opacity: 1; transform: none; } }
.rg-afc-card__media { position: relative; aspect-ratio: 4 / 3; border-radius: 16px; overflow: hidden; background: #E9DFC8; }
.rg-afc-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rg-afc-card__text { padding: 8px 8px 8px 0; }
.rg-afc-card__text > * { margin: 0; }
.rg-afc-card__year { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--afc); }
.rg-afc-card h3 { margin-top: 10px !important; font-size: clamp(1.9rem, 3.4vw, 2.75rem); line-height: 1.05; }
.rg-afc-card__text p:not(.rg-afc-card__year):not(.rg-afc-card__count) { margin-top: 14px !important; font-size: 1.125rem; line-height: 1.6; color: #4E5A4F; max-width: 42ch; }
.rg-afc-card__count { margin-top: 22px !important; font: 500 0.8125rem/1 var(--wp--preset--font-family--mono); color: #7A847B; }
.rg-afc-card__count b { color: var(--afc); font-weight: 600; }
.rg-afc-tl__nav { position: absolute; right: clamp(18px, 2.4vw, 30px); bottom: clamp(18px, 2.4vw, 30px); display: flex; gap: 8px; }
.rg-afc-arrow {
	display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; border: 1.5px solid var(--rg-line); background: var(--wp--preset--color--sand);
	color: var(--wp--preset--color--ink); cursor: pointer; transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.2s ease, color 0.2s ease;
}
.rg-afc-arrow:hover { background: var(--afc); color: #fff; border-color: var(--afc); transform: scale(1.06); }
.rg-afc-arrow:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }

/* Chalk card and ticket */
.rg-afc-chalk { position: absolute; inset: 0; display: grid; place-items: center; padding: 24px; background: #2D3A33; color: #F3EAD7; }
.rg-afc-chalk::before { content: ""; position: absolute; inset: 10px; border: 8px solid #8A6A45; border-radius: 6px; }
.rg-afc-chalk svg { width: 86%; height: auto; opacity: 0.92; }
.rg-afc-ticket {
	position: absolute; inset: 14% 10%; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 24px 28px 24px 34px;
	background: #F7EFD9; color: #2A2017; border-radius: 6px; transform: rotate(-3deg);
	box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.45);
	-webkit-mask: radial-gradient(circle 11px at 0 50%, transparent 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle 11px at 100% 50%, transparent 98%, #000) right / 51% 100% no-repeat;
	mask: radial-gradient(circle 11px at 0 50%, transparent 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle 11px at 100% 50%, transparent 98%, #000) right / 51% 100% no-repeat;
}
.rg-afc-card__media:has(.rg-afc-ticket) { background: repeating-linear-gradient(45deg, var(--afc) 0 18px, var(--afc-dark) 18px 36px); }
.rg-afc-ticket span { font: 500 0.8125rem/1.3 var(--wp--preset--font-family--mono); }
.rg-afc-ticket__top { letter-spacing: 0.14em; text-transform: uppercase; color: var(--afc); }
.rg-afc-ticket b { font: 800 clamp(1.5rem, 3vw, 2.1rem)/1.05 var(--wp--preset--font-family--display); }
.rg-afc-ticket b i { font-style: italic; font-weight: 600; color: var(--afc); }
.rg-afc-ticket__stub { margin-top: 10px; padding-top: 10px; border-top: 2px dashed rgba(42, 32, 23, 0.35); letter-spacing: 0.1em; text-transform: uppercase; }

/* First game replay */
.rg-afc-board { padding: clamp(18px, 3vw, 32px); border-radius: 24px; background: #15201A; color: #F3EAD7; box-shadow: 0 30px 60px -36px rgba(0, 0, 0, 0.7); }
.rg-afc-board__sign { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 14px 22px; padding: 20px; border-radius: 14px; background: #0B110E; border: 2px solid #26342C; font-family: var(--wp--preset--font-family--mono); }
.rg-afc-board__team { font-size: clamp(1rem, 2.4vw, 1.5rem); letter-spacing: 0.14em; text-transform: uppercase; }
.rg-afc-board__team:first-child { text-align: right; color: #FF5C5C; }
.rg-afc-board__score { display: flex; align-items: center; gap: 10px; font-size: clamp(2.6rem, 6vw, 4rem); line-height: 1; color: var(--wp--preset--color--sun); text-shadow: 0 0 14px rgba(232, 184, 107, 0.55); }
.rg-afc-board__score i { font-style: normal; opacity: 0.6; }
.rg-afc-board__clock { grid-column: 1 / -1; justify-self: center; padding: 6px 14px; border-radius: 999px; background: #1F2C25; font-size: 1rem; color: #A9CDB2; }
.rg-afc-board.is-goal .rg-afc-board__score b:last-child { animation: rg-afc-flash 0.4s steps(2) 4; }
@keyframes rg-afc-flash { 50% { opacity: 0.1; } }
.rg-afc-board__bar { position: relative; height: 8px; margin: 22px 0 8px; border-radius: 999px; background: #26342C; }
.rg-afc-board__bar i { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: inherit; background: linear-gradient(90deg, #4E9A6A, var(--wp--preset--color--sun)); }
.rg-afc-board__bar span { position: absolute; top: 14px; transform: translateX(-50%); font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); color: #7E8C82; }
.rg-afc-board__feed { min-height: 150px; max-height: 260px; overflow: auto; margin: 26px 0 0; padding: 0; list-style: none; }
.rg-afc-board__feed li { padding: 10px 0; border-bottom: 1px solid #26342C; font-size: 1rem; line-height: 1.45; animation: rg-afc-in 0.35s ease both; }
.rg-afc-board__feed li b { display: inline-block; min-width: 40px; font: 500 0.875rem/1 var(--wp--preset--font-family--mono); color: var(--wp--preset--color--sun); }
.rg-afc-board__feed li.is-goal { color: #FF8A8A; }
.rg-afc-board__feed li.is-ft { font-weight: 700; color: var(--wp--preset--color--sun); }
.rg-afc-board__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.rg-afc-btn {
	display: inline-flex; align-items: center; gap: 8px; padding: 14px 22px; border-radius: 999px; border: 0; cursor: pointer;
	background: var(--afc); color: #fff; font: 600 1rem/1 var(--wp--preset--font-family--body);
	transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.2s ease;
}
.rg-afc-btn:hover:not(:disabled) { transform: translateY(-2px); background: var(--afc-dark); }
.rg-afc-btn:disabled { opacity: 0.6; cursor: progress; }
.rg-afc-btn:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: 3px; }
.rg-afc-btn--ghost { background: transparent; color: #F3EAD7; box-shadow: inset 0 0 0 1.5px #3A4A40; }
.rg-afc-btn--ghost:hover:not(:disabled) { background: #1F2C25; }
.rg-afc-xi { margin-top: 18px; padding: 18px; border-radius: 14px; background: #0B110E; animation: rg-afc-in 0.35s ease both; }
.rg-afc-xi ol { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 6px 18px; margin: 0; padding-left: 22px; font-size: 1rem; }
.rg-afc-xi ol li::marker { font-family: var(--wp--preset--font-family--mono); color: var(--wp--preset--color--sun); }
.rg-afc-xi p { margin: 14px 0 0; font-size: 0.875rem; color: #A9B4A6; }
.rg-afc-source { margin-top: 14px !important; font-size: 0.875rem; color: #6B756C; }
.rg-afc-source a { color: inherit; }

/* A house divided */
.rg-afc-house__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 2vw, 22px); }
.rg-afc-flip { perspective: 900px; height: 220px; padding: 0; border: 0; background: none; cursor: pointer; font: inherit; color: inherit; }
.rg-afc-flip__inner { position: relative; display: block; width: 100%; height: 100%; transform-style: preserve-3d; transition: transform 0.7s cubic-bezier(0.34, 1.3, 0.64, 1); }
.rg-afc-flip[aria-pressed="true"] .rg-afc-flip__inner { transform: rotateY(180deg); }
.rg-afc-flip__front, .rg-afc-flip__back {
	position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 18px;
	border-radius: 20px; backface-visibility: hidden; -webkit-backface-visibility: hidden; text-align: center;
}
.rg-afc-flip__front { background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); box-shadow: 0 20px 40px -30px rgba(60, 45, 20, 0.6); }
.rg-afc-flip__who { font: 700 1.375rem/1.1 var(--wp--preset--font-family--display); }
.rg-afc-flip__q { font: 800 3rem/1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ember); }
.rg-afc-flip__tap { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; color: #7A847B; }
.rg-afc-flip__back { transform: rotateY(180deg); color: #fff; }
.rg-afc-flip__back .rg-afc-flip__who { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.85; }
.rg-afc-flip__back b { font: 800 clamp(1.6rem, 2.6vw, 2.1rem)/1 var(--wp--preset--font-family--display); }
.rg-afc-flip__back span:last-child { font-size: 0.9375rem; line-height: 1.4; opacity: 0.92; }
.rg-afc-flip--afc .rg-afc-flip__back { background: var(--afc); color: #fff; box-shadow: inset 0 0 0 6px #fff, inset 0 0 0 7px rgba(0, 0, 0, 0.08); }
.rg-afc-flip--thfc .rg-afc-flip__back { background: #fff; color: var(--thfc); border: 3px solid var(--thfc); }
.rg-afc-flip--bha .rg-afc-flip__back { background: repeating-linear-gradient(90deg, var(--bha) 0 24px, #fff 24px 48px); color: #0B2550; }
.rg-afc-flip--bha .rg-afc-flip__back > * { background: rgba(255, 255, 255, 0.92); padding: 4px 10px; border-radius: 8px; }
.rg-afc-flip--max .rg-afc-flip__back { background: #1F2A22; color: #F3EAD7; }
.rg-afc-flip:hover .rg-afc-flip__front { border-color: var(--wp--preset--color--ember); }
.rg-afc-flip:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; border-radius: 22px; }

.rg-afc-table { margin-top: clamp(18px, 3vw, 28px); padding: clamp(18px, 3vw, 28px); border-radius: 24px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-afc-table__title { margin: 0 0 12px; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ember); }
.rg-afc-table__rows { margin: 0; padding: 0; list-style: none; counter-reset: pos; max-width: 520px; }
.rg-afc-table__rows li { counter-increment: pos; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 4px; border-bottom: 1px solid var(--rg-line); font-weight: 600; }
.rg-afc-table__rows li::before { content: counter(pos); width: 22px; font: 500 0.875rem/1 var(--wp--preset--font-family--mono); color: #7A847B; }
.rg-afc-table__rows li.is-move { animation: rg-afc-in 0.45s ease both; }
.rg-afc-table__club { flex: 1; display: flex; align-items: center; gap: 10px; }
.rg-afc-table__club i { width: 14px; height: 14px; border-radius: 4px; }
[data-club="afc"] .rg-afc-table__club i { background: var(--afc); }
[data-club="thfc"] .rg-afc-table__club i { background: var(--thfc); }
[data-club="bha"] .rg-afc-table__club i { background: repeating-linear-gradient(90deg, var(--bha) 0 3px, #fff 3px 6px); box-shadow: inset 0 0 0 1px var(--bha); }
.rg-afc-table__rows b { font: 700 1.25rem/1 var(--wp--preset--font-family--mono); }
.rg-afc-table__msg { margin: 16px 0 18px; min-height: 3em; font-size: 1.0625rem; color: #4E5A4F; }

@media (max-width: 860px) {
	.rg-afc-card { grid-template-columns: 1fr; }
	.rg-afc-card__text { padding: 4px 4px 70px; }
	.rg-afc-house__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rg-afc-flip { height: 190px; }
}

/* Weekend */
html[data-rg-mode="weekend"] .rg-afc-card,
html[data-rg-mode="weekend"] .rg-afc-flip__front,
html[data-rg-mode="weekend"] .rg-afc-table { background: var(--rg-n-surface); border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-afc-card__text p:not(.rg-afc-card__year):not(.rg-afc-card__count),
html[data-rg-mode="weekend"] .rg-afc-table__msg { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-afc-arrow { background: var(--rg-n-surface-2); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-afc-table__rows li { border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-afc-card__year, html[data-rg-mode="weekend"] .rg-afc-card__count b { color: #FF6B6B; }
html[data-rg-mode="weekend"] .rg-afc-source { color: var(--rg-n-muted); }

@media (prefers-reduced-motion: reduce) {
	.rg-afc-card.is-in, .rg-afc-board__feed li, .rg-afc-table__rows li.is-move { animation: none; }
	.rg-afc-flip__inner { transition: none; }
}
@media (max-width: 560px) {
	.rg-afc-board__sign { grid-template-columns: 1fr; text-align: center; padding: 16px 10px; gap: 8px; }
	.rg-afc-board__team, .rg-afc-board__team:first-child { text-align: center; font-size: 0.875rem; letter-spacing: 0.1em; }
	.rg-afc-board__score { justify-content: center; }
	.rg-afc-board__clock { grid-column: auto; }
}

/* ==========================================================================
   Rogue Invitational post
   ========================================================================== */
/* Pick a year */
.rg-rog-years__tabs { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 6px; border-radius: 22px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-rog-years__tabs button { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px 18px; border: 0; border-radius: 16px; background: transparent; color: var(--wp--preset--color--ink); cursor: pointer; text-align: left; transition: color 0.3s ease; }
.rg-rog-years__tabs button b { font: 800 clamp(1.6rem, 3vw, 2.25rem)/1 var(--wp--preset--font-family--display); }
.rg-rog-years__tabs button span { font: 500 0.75rem/1.2 var(--wp--preset--font-family--mono); letter-spacing: 0.06em; opacity: 0.75; }
.rg-rog-years__tabs button[aria-selected="true"] { color: var(--wp--preset--color--sand); }
.rg-rog-years__tabs button:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-rog-years__ink { position: absolute; z-index: 0; top: 6px; bottom: 6px; left: 6px; width: calc((100% - 24px) / 3); border-radius: 16px; background: var(--wp--preset--color--ink); transform: translateX(calc(var(--i, 0) * (100% + 6px))); transition: transform 0.55s cubic-bezier(0.34, 1.3, 0.64, 1); }

.rg-rog-year { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); align-items: center; margin-top: 18px; }
.rg-rog-year[hidden] { display: none; }
.rg-rog-year.is-anim .rg-rog-year__ph { animation: rg-rog-drop 0.6s cubic-bezier(0.34, 1.3, 0.64, 1) both; }
.rg-rog-year.is-anim .rg-rog-year__ph--1 { animation-delay: 80ms; }
.rg-rog-year.is-anim .rg-rog-year__ph--2 { animation-delay: 160ms; }
.rg-rog-year.is-anim .rg-rog-year__text { animation: rg-afc-in 0.5s ease 0.15s both; }
@keyframes rg-rog-drop { from { opacity: 0; transform: translateY(24px) rotate(var(--r, 0deg)) scale(0.96); } }
.rg-rog-year__photos { position: relative; height: clamp(320px, 42vw, 500px); }
.rg-rog-year__ph { position: absolute; object-fit: cover; border: 8px solid #FFFDF7; border-radius: 6px; box-shadow: 0 24px 44px -24px rgba(31, 42, 34, 0.7); cursor: zoom-in; transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-rog-year__ph--0 { --r: -3deg; left: 0; top: 6%; width: 62%; height: 70%; transform: rotate(var(--r)); z-index: 2; }
.rg-rog-year__ph--1 { --r: 4deg; right: 2%; top: 0; width: 44%; height: 56%; transform: rotate(var(--r)); z-index: 1; }
.rg-rog-year__ph--2 { --r: -1deg; right: 8%; bottom: 0; width: 46%; height: 46%; transform: rotate(var(--r)); z-index: 3; }
.rg-rog-year__ph:hover, .rg-rog-year__ph:focus-visible { transform: rotate(0) scale(1.03); z-index: 4; outline: none; }
.rg-rog-year__big { position: absolute; left: -2%; bottom: -6%; z-index: 5; font: 800 clamp(4rem, 10vw, 8rem)/0.8 var(--wp--preset--font-family--display); color: transparent; -webkit-text-stroke: 2px var(--wp--preset--color--ember); pointer-events: none; }
.rg-rog-year__text > * { margin: 0; }
.rg-rog-year__when { font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ember); }
.rg-rog-year__text h3 { margin-top: 10px !important; font-size: clamp(2rem, 3.6vw, 2.8rem); line-height: 1.05; }
.rg-rog-year__text > p:not(.rg-rog-year__when) { margin-top: 14px !important; font-size: 1.125rem; line-height: 1.6; color: #4E5A4F; }
.rg-rog-year__stats { display: flex; gap: 12px; margin-top: 22px !important; }
.rg-rog-year__stats div { padding: 12px 18px; border-radius: 16px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-rog-year__stats dt { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; color: #7A847B; }
.rg-rog-year__stats dd { margin: 6px 0 0; font: 800 1.75rem/1 var(--wp--preset--font-family--display); }
.rg-rog-year__see { display: inline-flex; align-items: center; gap: 10px; margin-top: 22px !important; padding: 14px 20px; border: 0; border-radius: 999px; background: var(--wp--preset--color--ember); color: #fff; cursor: pointer; font: 600 1rem/1 var(--wp--preset--font-family--body); transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-rog-year__see:hover { transform: translateY(-2px); }
.rg-rog-year__see:hover .rg-arr--down { transform: rotate(90deg) translateX(3px); }

/* The people we met */
.rg-rog-people { scroll-margin-top: 90px; }
.rg-rog-people__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.rg-rog-people__filters { display: flex; flex-wrap: wrap; gap: 6px; padding: 6px; border-radius: 999px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-rog-people__filters button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 999px; background: transparent; color: var(--wp--preset--color--ink); cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); transition: background-color 0.25s ease, color 0.25s ease; }
.rg-rog-people__filters button b { padding: 3px 7px; border-radius: 999px; background: rgba(31, 42, 34, 0.08); font: 500 0.75rem/1 var(--wp--preset--font-family--mono); }
.rg-rog-people__filters button[aria-pressed="true"] { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-rog-people__filters button[aria-pressed="true"] b { background: var(--wp--preset--color--sun); color: var(--wp--preset--color--ink); }
.rg-rog-people__shuffle { display: inline-flex; align-items: center; gap: 8px; padding: 12px 18px; border-radius: 999px; border: 1.5px solid var(--rg-line); background: transparent; color: var(--wp--preset--color--ink); cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); transition: border-color 0.2s ease; }
.rg-rog-people__shuffle:hover { border-color: var(--wp--preset--color--ember); }
.rg-rog-people__shuffle.is-spin svg { animation: rg-explore-roll 0.6s ease; }
.rg-rog-people__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: clamp(16px, 2.4vw, 26px); margin: 0; padding: 0; list-style: none; }
.rg-rog-card[hidden] { display: none; }
.rg-rog-card.is-deal { animation: rg-rog-deal 0.5s cubic-bezier(0.34, 1.3, 0.64, 1) both; animation-delay: var(--deal, 0ms); }
@keyframes rg-rog-deal { from { opacity: 0; transform: translateY(30px) rotate(-6deg) scale(0.9); } }
.rg-rog-card__btn {
	position: relative; display: block; width: 100%; padding: 10px 10px 14px; border: 0; border-radius: 6px; background: #FFFDF7; cursor: zoom-in; text-align: center;
	box-shadow: 0 20px 36px -24px rgba(31, 42, 34, 0.7); transform: rotate(var(--tilt, 0deg)); transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.4s ease;
}
.rg-rog-card__btn:hover, .rg-rog-card__btn:focus-visible { transform: rotate(0) translateY(-6px) scale(1.03); box-shadow: 0 30px 50px -26px rgba(31, 42, 34, 0.8); outline: none; z-index: 2; }
.rg-rog-card__btn:focus-visible { box-shadow: 0 0 0 3px var(--wp--preset--color--ember); }
.rg-rog-card__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 2px; background: #E9DFC8; }
.rg-rog-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s ease; }
.rg-rog-card__btn:hover .rg-rog-card__img img { transform: scale(1.06); }
.rg-rog-card__tag { position: absolute; top: 18px; left: 18px; padding: 5px 9px; border-radius: 999px; background: rgba(15, 23, 20, 0.75); color: #F3EAD7; font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase; backdrop-filter: blur(4px); }
.rg-rog-card__name { display: block; margin-top: 10px; font: 700 1.125rem/1.2 var(--wp--preset--font-family--display); color: var(--wp--preset--color--ink); }

@media (max-width: 860px) {
	.rg-rog-year { grid-template-columns: 1fr; }
	.rg-rog-years__tabs button { padding: 12px; }
	.rg-rog-years__tabs button span { display: none; }
	.rg-rog-people__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Weekend */
html[data-rg-mode="weekend"] .rg-rog-years__tabs,
html[data-rg-mode="weekend"] .rg-rog-people__filters,
html[data-rg-mode="weekend"] .rg-rog-year__stats div { background: var(--rg-n-surface); border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-rog-years__tabs button,
html[data-rg-mode="weekend"] .rg-rog-people__filters button,
html[data-rg-mode="weekend"] .rg-rog-people__shuffle { color: var(--rg-n-text); border-color: var(--rg-n-line); }
html[data-rg-mode="weekend"] .rg-rog-years__ink,
html[data-rg-mode="weekend"] .rg-rog-people__filters button[aria-pressed="true"] { background: var(--rg-n-accent); }
html[data-rg-mode="weekend"] .rg-rog-years__tabs button[aria-selected="true"],
html[data-rg-mode="weekend"] .rg-rog-people__filters button[aria-pressed="true"] { color: #111916; }
html[data-rg-mode="weekend"] .rg-rog-year__text > p:not(.rg-rog-year__when) { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-rog-year__when { color: var(--rg-n-ember); }
html[data-rg-mode="weekend"] .rg-rog-people__filters button b { background: rgba(255, 255, 255, 0.08); }
html[data-rg-mode="weekend"] .rg-rog-card__btn, html[data-rg-mode="weekend"] .rg-rog-year__ph { background: #EDE5D2; border-color: #EDE5D2; }

@media (prefers-reduced-motion: reduce) {
	.rg-rog-year.is-anim .rg-rog-year__ph, .rg-rog-year.is-anim .rg-rog-year__text, .rg-rog-card.is-deal { animation: none; }
	.rg-rog-years__ink { transition: none; }
}
@media (max-width: 860px) { .rg-rog-year__photos { margin-bottom: 28px; } .rg-rog-year__big { bottom: -14%; } }
.rg-trip__glance--four .rg-trip__facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) { .rg-trip__glance--four .rg-trip__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rg-trip__glance--four .rg-trip__fact:last-child { grid-column: auto; } }

/* ---------- Highlight reel (story-style player) ---------- */
.rg-reel__stage { display: grid; grid-template-columns: minmax(280px, 420px) minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
.rg-reel__screen {
	position: relative; aspect-ratio: 9 / 16; overflow: hidden; border-radius: 28px; background: #0B110E; isolation: isolate;
	box-shadow: 0 0 0 10px #1A231E, 0 0 0 11px rgba(255, 255, 255, 0.06), 0 40px 80px -40px rgba(0, 0, 0, 0.8);
}
.rg-reel__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: #0B110E; }
.rg-reel__screen::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0) 22%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.75) 100%); }
.rg-reel__bars { position: absolute; z-index: 3; top: 14px; left: 14px; right: 14px; display: flex; gap: 4px; }
.rg-reel__bars span { flex: 1; height: 3px; border-radius: 2px; background: rgba(255, 255, 255, 0.28); overflow: hidden; }
.rg-reel__bars i { display: block; height: 100%; width: 0; background: #fff; }
.rg-reel__bars span.is-done i { width: 100%; }
.rg-reel__hud { position: absolute; z-index: 3; top: 28px; left: 16px; right: 16px; display: flex; justify-content: space-between; align-items: center; color: #fff; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; }
.rg-reel__live { display: inline-flex; align-items: center; gap: 8px; padding: 6px 10px; border-radius: 999px; background: rgba(0, 0, 0, 0.45); backdrop-filter: blur(6px); }
.rg-reel__live i { width: 8px; height: 8px; border-radius: 50%; background: #FF3B30; box-shadow: 0 0 0 0 rgba(255, 59, 48, 0.6); animation: rg-reel-pulse 1.6s infinite; }
@keyframes rg-reel-pulse { 70% { box-shadow: 0 0 0 8px rgba(255, 59, 48, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 59, 48, 0); } }
.rg-reel__count b { color: var(--wp--preset--color--sun); font-weight: 500; }
.rg-reel__tap { position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; border: 0; background: none; cursor: pointer; }
.rg-reel__big { width: 76px; height: 76px; border-radius: 50%; background: rgba(0, 0, 0, 0.45) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") 55% 50% / 34px no-repeat; backdrop-filter: blur(6px); opacity: 0; transform: scale(0.8); transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-reel.is-paused .rg-reel__big { opacity: 1; transform: none; }
.rg-reel__tap:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: -8px; border-radius: 28px; }
.rg-reel__nav { position: absolute; z-index: 4; top: 50%; width: 44px; height: 44px; margin-top: -22px; display: grid; place-items: center; border: 0; border-radius: 50%; background: rgba(0, 0, 0, 0.45); color: #fff; cursor: pointer; backdrop-filter: blur(6px); opacity: 0; transition: opacity 0.25s ease, background-color 0.2s ease; }
.rg-reel__nav--prev { left: 12px; }
.rg-reel__nav--next { right: 12px; }
.rg-reel__screen:hover .rg-reel__nav, .rg-reel__nav:focus-visible { opacity: 1; }
.rg-reel__nav:hover { background: var(--wp--preset--color--ember); }
.rg-reel__cap { position: absolute; z-index: 3; left: 18px; right: 110px; bottom: 18px; color: #fff; pointer-events: none; }
.rg-reel__cap p { margin: 0; }
.rg-reel__title { font: 800 1.5rem/1.1 var(--wp--preset--font-family--display); }
.rg-reel__line { margin-top: 6px !important; font-size: 0.9375rem; line-height: 1.4; opacity: 0.85; }
.rg-reel.is-swap .rg-reel__cap { animation: rg-afc-in 0.4s ease both; }
.rg-reel__sound { position: absolute; z-index: 4; right: 14px; bottom: 18px; padding: 8px 12px; border: 0; border-radius: 999px; background: rgba(0, 0, 0, 0.5); color: #fff; cursor: pointer; font: 600 0.75rem/1 var(--wp--preset--font-family--body); backdrop-filter: blur(6px); }
.rg-reel__sound::before { content: ""; display: inline-block; width: 14px; height: 14px; margin-right: 6px; vertical-align: -2px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5 6 9H2v6h4l5 4zM23 9l-6 6M17 9l6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5 6 9H2v6h4l5 4zM23 9l-6 6M17 9l6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.rg-reel__sound[aria-pressed="true"] { background: var(--wp--preset--color--sun); color: #111916; }
.rg-reel__sound[aria-pressed="true"]::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5 6 9H2v6h4l5 4zM15.5 8.5a5 5 0 0 1 0 7M19 5a10 10 0 0 1 0 14'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5 6 9H2v6h4l5 4zM15.5 8.5a5 5 0 0 1 0 7M19 5a10 10 0 0 1 0 14'/%3E%3C/svg%3E"); }
.rg-reel__sound-on, .rg-reel__sound[aria-pressed="true"] .rg-reel__sound-off { display: none; }
.rg-reel__sound[aria-pressed="true"] .rg-reel__sound-on { display: inline; }
.rg-reel__sound:focus-visible, .rg-reel__nav:focus-visible { outline: 3px solid var(--wp--preset--color--sun); outline-offset: 2px; }

/* Clip list */
.rg-reel__filters { display: inline-flex; flex-wrap: wrap; gap: 6px; padding: 6px; margin-bottom: 16px; border-radius: 999px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-reel__filters button { padding: 9px 15px; border: 0; border-radius: 999px; background: transparent; color: var(--wp--preset--color--ink); cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); }
.rg-reel__filters button[aria-pressed="true"] { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-reel__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; max-height: calc(min(420px, 100%) * 16 / 9); overflow: auto; scrollbar-width: thin; }
.rg-reel__list li[hidden] { display: none; }
.rg-reel__item { display: flex; align-items: center; gap: 12px; width: 100%; padding: 8px; border: 1.5px solid transparent; border-radius: 16px; background: var(--wp--preset--color--paper); cursor: pointer; text-align: left; color: var(--wp--preset--color--ink); transition: border-color 0.2s ease, transform 0.25s ease; }
.rg-reel__item:hover { transform: translateY(-2px); border-color: var(--rg-line); }
.rg-reel__item.is-on { border-color: var(--wp--preset--color--ember); }
.rg-reel__item:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-reel__thumb { position: relative; flex: none; width: 54px; aspect-ratio: 9 / 16; border-radius: 10px; overflow: hidden; background: #0B110E; }
.rg-reel__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rg-reel__eq { position: absolute; inset: auto 0 6px 0; display: none; justify-content: center; align-items: flex-end; gap: 2px; height: 14px; }
.rg-reel__eq b { width: 3px; background: var(--wp--preset--color--sun); animation: rg-reel-eq 0.9s ease-in-out infinite; }
.rg-reel__eq b:nth-child(2) { animation-delay: 0.2s; }
.rg-reel__eq b:nth-child(3) { animation-delay: 0.4s; }
@keyframes rg-reel-eq { 0%, 100% { height: 4px; } 50% { height: 14px; } }
.rg-reel__item.is-on .rg-reel__eq { display: flex; }
.rg-reel.is-paused .rg-reel__eq b { animation-play-state: paused; }
.rg-reel__meta { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.rg-reel__meta b { font: 700 1rem/1.2 var(--wp--preset--font-family--display); }
.rg-reel__meta span { font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.1em; text-transform: uppercase; color: #7A847B; }

@media (max-width: 860px) {
	.rg-reel__stage { grid-template-columns: minmax(0, 1fr); }
	.rg-reel__side { min-width: 0; }
	.rg-reel__screen { max-width: 420px; width: 100%; margin-inline: auto; }
	.rg-reel__nav { opacity: 1; }
	.rg-reel__list { display: flex; overflow-x: auto; max-height: none; scroll-snap-type: x proximity; padding-bottom: 6px; }
	.rg-reel__list li { flex: 0 0 200px; scroll-snap-align: start; }
}
html[data-rg-mode="weekend"] .rg-reel__filters, html[data-rg-mode="weekend"] .rg-reel__item { background: var(--rg-n-surface); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-reel__item.is-on { border-color: var(--rg-n-accent); }
html[data-rg-mode="weekend"] .rg-reel__filters button { color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-reel__filters button[aria-pressed="true"] { background: var(--rg-n-accent); color: #111916; }
@media (prefers-reduced-motion: reduce) { .rg-reel__live i, .rg-reel__eq b { animation: none; } }
/* Room for the big outlined year before the story starts */
.rg-rog-years { margin-bottom: clamp(5rem, 10vw, 8rem) !important; }
.rg-rog-year__photos { margin-bottom: clamp(40px, 6vw, 70px); }

/* ==========================================================================
   The plot (side land) post
   ========================================================================== */
/* Before / after */
.rg-plot-cmp__wrap { max-width: 1000px; margin-inline: auto; }
.rg-plot-cmp__tabs { display: flex; flex-wrap: wrap; gap: 6px; width: fit-content; margin: 0 auto 16px; padding: 6px; border-radius: 999px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-plot-cmp__tabs button, .rg-tl__tabs button { padding: 10px 16px; border: 0; border-radius: 999px; background: transparent; color: var(--wp--preset--color--ink); cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); transition: background-color 0.25s ease, color 0.25s ease; }
.rg-plot-cmp__tabs button[aria-pressed="true"], .rg-tl__tabs button[aria-pressed="true"] { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); }
.rg-plot-cmp__frame { position: relative; aspect-ratio: var(--ratio, 4 / 3); max-height: 78vh; margin-inline: auto; overflow: hidden; border-radius: 26px; background: #2A2E2B; box-shadow: 0 30px 60px -36px rgba(31, 42, 34, 0.7); transition: aspect-ratio 0.4s ease; user-select: none; }
.rg-plot-cmp__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.rg-plot-cmp__before { clip-path: inset(0 calc(100% - var(--pos)) 0 0); }
.rg-plot-cmp__frame.is-swap img { animation: rg-afc-in 0.45s ease both; }
.rg-plot-cmp__tag { position: absolute; top: 16px; z-index: 2; padding: 6px 12px; border-radius: 999px; background: rgba(15, 23, 20, 0.7); color: #F3EAD7; font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.12em; text-transform: uppercase; backdrop-filter: blur(4px); pointer-events: none; }
.rg-plot-cmp__tag--l { left: 16px; }
.rg-plot-cmp__tag--r { right: 16px; }
.rg-plot-cmp__handle { position: absolute; z-index: 2; top: 0; bottom: 0; left: var(--pos); width: 3px; margin-left: -1.5px; background: #fff; pointer-events: none; }
.rg-plot-cmp__handle::before { content: ""; position: absolute; top: 50%; left: 50%; width: 56px; height: 56px; margin: -28px 0 0 -28px; border-radius: 50%; background: var(--wp--preset--color--sun); box-shadow: 0 10px 24px -8px rgba(0, 0, 0, 0.5); }
.rg-plot-cmp__handle .rg-arr { position: absolute; top: 50%; margin-top: -8px; width: 16px; height: 16px; color: var(--wp--preset--color--ink); }
.rg-plot-cmp__handle .rg-arr--left { left: -18px; }
.rg-plot-cmp__handle .rg-arr:not(.rg-arr--left) { left: 5px; }
.rg-plot-cmp__range { position: absolute; inset: 0; z-index: 3; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; }
.rg-plot-cmp__range:focus-visible + * , .rg-plot-cmp__frame:focus-within { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 4px; }

/* Build the plot */
.rg-plot__wrap { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr); gap: clamp(18px, 3vw, 36px); align-items: start; }
.rg-plot__map { position: relative; padding: 14px; border-radius: 26px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-plot__map svg { display: block; width: 100%; height: auto; border-radius: 16px; }
.rg-plot__lbl { font: 600 13px/1 var(--wp--preset--font-family--body); fill: #1F3A22; }
.rg-plot__lbl--house { fill: #FFF1DE; font-size: 15px; }
.rg-plot__lbl--big { font: 800 30px/1 var(--wp--preset--font-family--display); fill: #fff; }
.rg-plot__lbl--light { fill: #F3EAD7; font-size: 14px; }
.rg-plot__l { opacity: 0; transform: translateY(-14px); transition: opacity 0.5s ease, transform 0.6s cubic-bezier(0.34, 1.4, 0.64, 1); }
.rg-plot__l--land { transform: scale(0.96); transform-origin: 460px 190px; }
.rg-plot__l--wall path { stroke-dasharray: 600; stroke-dashoffset: 600; transition: stroke-dashoffset 1.2s ease; }
.rg-plot__l--frame, .rg-plot__l--deck { transform: translateY(-30px); }
.rg-plot__verge, .rg-plot__oldwall { transition: opacity 0.5s ease; }
[data-plot][data-step]:not([data-step="0"]) .rg-plot__verge { opacity: 0; }
.rg-plot[data-s1] .rg-plot__l--land, .rg-plot[data-s2] .rg-plot__l--drive, .rg-plot[data-s3] .rg-plot__l--wall, .rg-plot[data-s4] .rg-plot__l--knock, .rg-plot[data-s5] .rg-plot__l--frame, .rg-plot[data-s6] .rg-plot__l--deck { opacity: 1; transform: none; }
.rg-plot[data-s1] .rg-plot__l--land text { opacity: 1; }
.rg-plot[data-s2] .rg-plot__l--land text { opacity: 0; transition: opacity 0.3s ease; }
.rg-plot[data-s3] .rg-plot__l--wall path { stroke-dashoffset: 0; }
.rg-plot[data-s4] .rg-plot__oldwall { opacity: 0; }
.rg-plot__dust { opacity: 0; }
.rg-plot.is-knocking .rg-plot__dust { animation: rg-plot-dust 1.1s ease-out both; }
@keyframes rg-plot-dust { 0% { opacity: 0.9; transform: scale(0.5); } 100% { opacity: 0; transform: scale(2.4) translateY(-10px); } }
.rg-plot__dust circle { transform-box: fill-box; transform-origin: center; }
.rg-plot__stamp { position: absolute; right: 26px; bottom: 26px; margin: 0; padding: 8px 14px; border-radius: 999px; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--sand); font: 500 0.75rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.rg-plot__stamp span { color: var(--wp--preset--color--sun); }
.rg-plot__jobs { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.rg-plot__job { display: flex; align-items: center; gap: 14px; width: 100%; padding: 14px 16px; border-radius: 18px; border: 1.5px solid var(--rg-line); background: var(--wp--preset--color--paper); color: var(--wp--preset--color--ink); cursor: pointer; text-align: left; transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.2s ease, opacity 0.2s ease; }
.rg-plot__job:not(:disabled):hover { transform: translateX(4px); border-color: var(--wp--preset--color--ember); }
.rg-plot__job:disabled { opacity: 0.45; cursor: not-allowed; }
.rg-plot__job:not(:disabled):not([aria-pressed="true"]) { border-color: var(--wp--preset--color--ember); box-shadow: 0 0 0 4px rgba(185, 83, 31, 0.12); }
.rg-plot__job:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 2px; }
.rg-plot__tick { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; border: 2px solid #D9C9A6; background: #fff; transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
.rg-plot__job[aria-pressed="true"] .rg-plot__tick { border-color: var(--wp--preset--color--forest); transform: rotate(-6deg); background: var(--wp--preset--color--forest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F3EAD7' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 16px no-repeat; }
.rg-plot__job[aria-pressed="true"] b { text-decoration: line-through; text-decoration-color: var(--wp--preset--color--ember); text-decoration-thickness: 2px; }
.rg-plot__jobtext { display: flex; flex: 1; align-items: center; justify-content: space-between; gap: 10px; }
.rg-plot__jobtext b { font: 700 1.0625rem/1.2 var(--wp--preset--font-family--display); }
.rg-plot__who { flex: none; padding: 4px 9px; border-radius: 999px; font: 500 0.6875rem/1 var(--wp--preset--font-family--mono); letter-spacing: 0.08em; text-transform: uppercase; background: rgba(31, 42, 34, 0.08); }
.rg-plot__who--me { background: var(--wp--preset--color--sun); color: #1F2A22; }
.rg-plot__who--us { background: #DCE9D2; color: #2F4F3A; }
.rg-plot__desc { margin: 8px 6px 4px 56px; font-size: 0.9375rem; line-height: 1.5; color: #4E5A4F; animation: rg-afc-in 0.35s ease both; }
.rg-plot__ctrl { display: flex; gap: 10px; margin-top: 16px; }
.rg-plot__play, .rg-plot__reset { display: inline-flex; align-items: center; gap: 10px; padding: 13px 20px; border-radius: 999px; border: 0; cursor: pointer; font: 600 0.9375rem/1 var(--wp--preset--font-family--body); }
.rg-plot__play { background: var(--wp--preset--color--ember); color: #fff; }
.rg-plot__reset { background: transparent; color: var(--wp--preset--color--ink); box-shadow: inset 0 0 0 1.5px var(--rg-line); }
.rg-plot__play:disabled { opacity: 0.5; cursor: progress; }

/* Time-lapse */
.rg-tl__wrap { max-width: 900px; margin-inline: auto; }
.rg-tl__tabs { display: flex; flex-wrap: wrap; gap: 6px; width: fit-content; margin: 0 auto 16px; padding: 6px; border-radius: 999px; background: var(--wp--preset--color--paper); border: 1px solid var(--rg-line); }
.rg-tl__screen { position: relative; aspect-ratio: 4 / 3; max-height: 76vh; margin-inline: auto; overflow: hidden; border-radius: 26px; background: #1A1F1C; box-shadow: 0 30px 60px -36px rgba(31, 42, 34, 0.7); }
.rg-tl__frames[hidden] { display: none; }
.rg-tl__frame { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity 0.18s linear; }
.rg-tl__frame.is-on { opacity: 1; }
.rg-tl__frame img { width: 100%; height: 100%; object-fit: cover; }
.rg-tl__frame img[src] { background: #1A1F1C; }
.rg-tl__screen::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.65) 100%); pointer-events: none; }
.rg-tl__date { position: absolute; z-index: 2; top: 16px; left: 16px; padding: 8px 14px; border-radius: 10px; background: #F3EAD7; color: #1F2A22; font: 800 1.25rem/1 var(--wp--preset--font-family--display); transform: rotate(-3deg); box-shadow: 0 8px 18px -8px rgba(0, 0, 0, 0.5); }
.rg-tl__cap { position: absolute; z-index: 2; left: 20px; right: 20px; bottom: 18px; margin: 0; color: #fff; font: 500 0.8125rem/1.3 var(--wp--preset--font-family--mono); letter-spacing: 0.06em; }
.rg-tl__cap b { font: 700 1.25rem/1.2 var(--wp--preset--font-family--display); letter-spacing: 0; }
.rg-tl__tape { display: flex; align-items: center; gap: 14px; margin-top: 18px; }
.rg-tl__play { flex: none; width: 52px; height: 52px; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--wp--preset--color--ember); color: #fff; cursor: pointer; }
.rg-tl__icon { width: 16px; height: 18px; background: currentColor; clip-path: polygon(0 0, 100% 50%, 0 100%); }
.rg-tl.is-playing .rg-tl__icon { clip-path: polygon(0 0, 35% 0, 35% 100%, 0 100%, 0 0, 65% 0, 100% 0, 100% 100%, 65% 100%, 65% 0); }
.rg-tl__play:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 3px; }
.rg-tl__rule { position: relative; flex: 1; height: 52px; border-radius: 10px; background: #F2C230; box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.12), 0 10px 20px -14px rgba(60, 45, 20, 0.6); overflow: hidden; }
.rg-tl__ticks { position: absolute; inset: 0; display: flex; justify-content: space-between; padding: 0 12px; pointer-events: none; }
.rg-tl__ticks i { position: relative; width: 2px; height: 22px; background: #1F2A22; }
.rg-tl__ticks i.is-day { height: 32px; }
.rg-tl__ticks i.is-on { background: var(--wp--preset--color--ember); }
.rg-tl__range { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; background: transparent; cursor: ew-resize; -webkit-appearance: none; appearance: none; }
.rg-tl__range::-webkit-slider-runnable-track { height: 52px; background: transparent; }
.rg-tl__range::-moz-range-track { height: 52px; background: transparent; }
.rg-tl__range::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 52px; border-radius: 6px; background: rgba(31, 42, 34, 0.9); box-shadow: inset 0 0 0 3px #F3EAD7; cursor: grab; }
.rg-tl__range::-moz-range-thumb { width: 26px; height: 52px; border: 0; border-radius: 6px; background: rgba(31, 42, 34, 0.9); box-shadow: inset 0 0 0 3px #F3EAD7; cursor: grab; }
.rg-tl__range:focus-visible { outline: 3px solid var(--wp--preset--color--ember); outline-offset: 3px; }

@media (max-width: 900px) {
	.rg-plot__wrap { grid-template-columns: 1fr; }
	.rg-plot__stamp { right: 20px; bottom: 20px; }
}
@media (max-width: 600px) {
	.rg-tl__screen { aspect-ratio: 3 / 4; }
	.rg-plot__desc { margin-left: 8px; }
}
/* Weekend */
html[data-rg-mode="weekend"] .rg-plot-cmp__tabs, html[data-rg-mode="weekend"] .rg-tl__tabs, html[data-rg-mode="weekend"] .rg-plot__map, html[data-rg-mode="weekend"] .rg-plot__job { background: var(--rg-n-surface); border-color: var(--rg-n-line); color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-plot-cmp__tabs button, html[data-rg-mode="weekend"] .rg-tl__tabs button, html[data-rg-mode="weekend"] .rg-plot__reset { color: var(--rg-n-text); }
html[data-rg-mode="weekend"] .rg-plot-cmp__tabs button[aria-pressed="true"], html[data-rg-mode="weekend"] .rg-tl__tabs button[aria-pressed="true"] { background: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-plot__desc { color: var(--rg-n-muted); }
html[data-rg-mode="weekend"] .rg-plot__who { background: rgba(255, 255, 255, 0.08); }
html[data-rg-mode="weekend"] .rg-plot__who--me { background: var(--rg-n-accent); color: #111916; }
html[data-rg-mode="weekend"] .rg-plot__tick { background: var(--rg-n-bg); border-color: var(--rg-n-dash); }
@media (prefers-reduced-motion: reduce) { .rg-plot__l, .rg-plot__l--wall path, .rg-tl__frame { transition: none; } .rg-plot.is-knocking .rg-plot__dust { animation: none; } }
@media (max-width: 600px) { .rg-plot__stamp { position: static; display: inline-block; margin-top: 10px; } }
