/* 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 programmes — chamfers, globe placement, photo fit, arrow glyph (no colors) */
.skyline-programmes__globe { width: 46rem; height: 46rem; right: -14rem; top: 50%; transform: translateY(-50%); opacity: 0.22; }
.skyline-programmes__globe svg { width: 100%; height: 100%; }
@media (max-width: 767px) { .skyline-programmes__globe { width: 30rem; height: 30rem; right: -16rem; top: 12rem; transform: none; } }
.skyline-programmes__tab { cursor: pointer; appearance: none; clip-path: polygon(0 0, calc(100% - 1rem) 0, 100% 1rem, 100% 100%, 0 100%); }
.skyline-programmes__card { clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%); }
.skyline-programmes__img { aspect-ratio: 7 / 6; object-fit: cover; object-position: center top; }
.skyline-programmes__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }
.skyline-programmes [data-programme-panel].hidden {
    display: none !important;
}

/* programme glide — carousel track, slide widths, chamfer, arrows (no colors) */
.programme-glide__track { scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.programme-glide__track::-webkit-scrollbar { display: none; }
.programme-glide__slide { flex: 0 0 82%; scroll-snap-align: start; }
@media (min-width: 768px) { .programme-glide__slide { flex-basis: 60%; } }
@media (min-width: 1024px) { .programme-glide__slide { flex-basis: calc((100% - 4rem) / 2.6); } }
.programme-glide__media { aspect-ratio: 23 / 20; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%); }
.programme-glide__img { object-fit: cover; display: block; }
.programme-glide__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }
.programme-glide__nav { cursor: pointer; appearance: none; }
.programme-glide__nav svg { width: 3.5rem; height: 1.125rem; }
.programme-glide__nav--prev svg { transform: scaleX(-1); }

/* skyline rankings — bottom-right chamfer, fixed issuer badge (no colors) */
.skyline-rankings__card { clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%); }
.skyline-rankings__badge { width: 2.75rem; height: 2.75rem; font-size: 1.25rem; }

/* 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; } }

/* campus voices — split testimonial carousel: track, slide widths, chamfer, arrows (no colors) */
.campus-voices__track { scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.campus-voices__track::-webkit-scrollbar { display: none; }
.campus-voices__slide { flex: 0 0 82%; scroll-snap-align: start; }
@media (min-width: 768px) { .campus-voices__slide { flex-basis: 55%; } }
@media (min-width: 1024px) { .campus-voices__slide { flex-basis: 88%; } }
.campus-voices__media { aspect-ratio: 23 / 24; clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%); }
.campus-voices__img { object-fit: cover; object-position: top center; display: block; }
.campus-voices__panel { animation: campus-voices-in 300ms ease; }
.campus-voices__nav { cursor: pointer; appearance: none; }
.campus-voices__nav svg { width: 3.5rem; height: 1.125rem; }
.campus-voices__nav--prev svg { transform: scaleX(-1); }
@keyframes campus-voices-in { from { opacity: 0; transform: translateY(0.5rem); } to { opacity: 1; transform: none; } }

/* skyline yearbook — cover fit, arrow glyph (no colors) */
.skyline-yearbook__cover { aspect-ratio: 1 / 1; object-fit: cover; }
.skyline-yearbook__arrow { width: 2.75rem; height: 0.875rem; flex-shrink: 0; }

/* answer ledger — accordion toggle reset, rotating sign, panel reveal (no colors) */
.answer-ledger__toggle { appearance: none; cursor: pointer; font: inherit; }
.answer-ledger__sign svg { width: 1.75rem; height: 1.75rem; transition: transform 250ms ease; }
.answer-ledger__sign[data-open="true"] svg { transform: rotate(45deg); }
.answer-ledger__panel { animation: answer-ledger-in 250ms ease; }
@keyframes answer-ledger-in { from { opacity: 0; transform: translateY(-0.375rem); } to { opacity: 1; transform: none; } }

/* 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; }

/* career dispatch — newsletter band: submit reset, arrow glyph (no colors) */
.career-dispatch__submit { appearance: none; cursor: pointer; font: inherit; }
.career-dispatch__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; } }

