/* skyline portal hero — photo fit, arrow glyph (no colors) */
.skyline-portal__img { object-fit: cover; object-position: center; }
.skyline-portal__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* skyline welcome — globe decor size, arrow glyph (no colors) */
.skyline-welcome__globe { width: 34rem; height: 34rem; }
.skyline-welcome__globe svg { width: 100%; height: 100%; }
.skyline-welcome__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* skyline spotlight — photo fit, arrow glyph (no colors) */
.skyline-showcase__img { object-fit: cover; object-position: center; }
.skyline-showcase__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* programme index — row hover nudge, arrow glyph, hyphenated title (no colors) */
.programme-roster__title { hyphens: auto; }
.programme-roster__arrow { width: 3rem; height: 1rem; transition: transform 200ms ease; }
@media (min-width: 1024px) { .programme-roster__arrow { width: 3.5rem; height: 1.125rem; } }
.programme-roster__row:hover .programme-roster__arrow,
.programme-roster__row:focus-visible .programme-roster__arrow { transform: translateX(0.375rem); }
.programme-roster__row:hover .programme-roster__name { text-decoration: underline; text-underline-offset: 0.2em; }

/* skyline spotlight — photo fit, arrow glyph (no colors) */
.skyline-spotlight__img { object-fit: cover; object-position: center; }
.skyline-spotlight__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* programme index — row hover nudge, arrow glyph, hyphenated title (no colors) */
.programme-index__title { hyphens: auto; }
.programme-index__arrow { width: 3rem; height: 1rem; transition: transform 200ms ease; }
@media (min-width: 1024px) { .programme-index__arrow { width: 3.5rem; height: 1.125rem; } }
.programme-index__row:hover .programme-index__arrow,
.programme-index__row:focus-visible .programme-index__arrow { transform: translateX(0.375rem); }
.programme-index__row:hover .programme-index__name { text-decoration: underline; text-underline-offset: 0.2em; }

/* skyline spotlight — photo fit, arrow glyph (no colors) */
.skyline-feature__img { object-fit: cover; object-position: center; }
.skyline-feature__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* programme index — row hover nudge, arrow glyph, hyphenated title (no colors) */
.programme-ledger__title { hyphens: auto; }
.programme-ledger__arrow { width: 3rem; height: 1rem; transition: transform 200ms ease; }
@media (min-width: 1024px) { .programme-ledger__arrow { width: 3.5rem; height: 1.125rem; } }
.programme-ledger__row:hover .programme-ledger__arrow,
.programme-ledger__row:focus-visible .programme-ledger__arrow { transform: translateX(0.375rem); }
.programme-ledger__row:hover .programme-ledger__name { text-decoration: underline; text-underline-offset: 0.2em; }

/* rationale ledger — globe decor placement, numeral width, arrow glyph (no colors) */
.rationale-ledger__globe { width: 38rem; transform: translate(18%, -50%); opacity: 0.8; }
.rationale-ledger__globe svg { width: 100%; height: auto; }
.rationale-ledger__num { font-variant-numeric: tabular-nums; }
.rationale-ledger__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }
@media (max-width: 1023px) { .rationale-ledger__globe { width: 24rem; transform: translate(45%, -50%); opacity: 0.5; } }

/* agenda roll — thumbnail sizes, whole-row link, arrow cell (no colors) */
.agenda-roll__media { aspect-ratio: 7 / 5; width: 100%; }
@media (min-width: 768px) { .agenda-roll__media { width: 10rem; aspect-ratio: 7 / 5; } }
.agenda-roll__img { object-fit: cover; display: block; }
.agenda-roll__link::after { content: ""; position: absolute; inset: 0; }
.agenda-roll__cell { min-height: 1.5rem; }
@media (min-width: 768px) { .agenda-roll__cell { width: 16.5%; min-width: 9rem; } }
.agenda-roll__big-arrow { width: 3.5rem; height: 1.125rem; transition: transform 200ms ease; }
.agenda-roll__row:hover .agenda-roll__big-arrow { transform: translateX(0.5rem); }
.agenda-roll__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* adviser card — portrait box and arrow glyph (no colors) */
.adviser-card__media { aspect-ratio: 4 / 3; }
.adviser-card__img { object-fit: cover; object-position: center top; display: block; }
.adviser-card__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }
@media (min-width: 768px) { .adviser-card__media { aspect-ratio: auto; min-height: 24rem; } }

