.cht-slider { --cht-columns:4; --cht-gap:28px; --cht-ink:var(--teal-slate,#3f6461); min-width:0; max-width:100%; color:inherit; }
.cht-slider__kicker { margin:0 0 32px; font-size:14px; font-weight:600; letter-spacing:0; }
.cht-slider__track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - (var(--cht-columns) - 1) * var(--cht-gap)) / var(--cht-columns)); gap:var(--cht-gap); overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; padding:4px 0 20px; }
.cht-slider__item { min-width:0; scroll-snap-align:start; overflow-wrap:anywhere; }
.cht-slider__icon { display:flex; align-items:center; height:48px; margin-bottom:24px; color:var(--cht-ink); }
.cht-slider__icon svg { width:32px; height:32px; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.cht-slider__icon img { width:48px; height:48px; object-fit:contain; }
.cht-slider__marker { position:relative; height:18px; margin-bottom:20px; }
.cht-slider__marker::before { content:""; position:absolute; top:8px; left:0; width:calc(100% + var(--cht-gap)); border-top:1px solid currentColor; opacity:.3; }
.cht-slider__item:last-child .cht-slider__marker::before { width:100%; }
.cht-slider__marker::after { content:""; position:absolute; width:16px; height:16px; border-radius:50%; background:var(--cht-ink); border:3px solid var(--base-3,#fff); box-shadow:0 0 0 1px var(--cht-ink); box-sizing:border-box; }
.cht-slider .cht-slider__year { margin:0 0 10px; font-size:28px; line-height:1.2; font-weight:700; letter-spacing:0; color:var(--cht-ink); }
.cht-slider .cht-slider__title { margin:0 0 12px; font-size:19px; line-height:1.35; letter-spacing:0; color:inherit; }
.cht-slider .cht-slider__copy { margin:0; font-size:16px; line-height:1.6; letter-spacing:0; }
.cht-slider__controls:not([hidden]) { display:flex; align-items:center; justify-content:center; gap:18px; margin-top:24px; }
.cht-slider__pages { display:flex; flex-wrap:wrap; justify-content:center; }
.cht-slider button.cht-slider__arrow,.cht-slider button.cht-slider__page { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:44px; height:44px; padding:0; border:1px solid var(--cht-ink); border-radius:50%; background:transparent; color:var(--cht-ink); box-shadow:none; cursor:pointer; transition:background-color 160ms ease,color 160ms ease; }
.cht-slider button.cht-slider__arrow { font-size:24px; }
.cht-slider__arrow svg { width:20px; height:20px; flex:none; }
.cht-slider button.cht-slider__page { border:0; width:32px; border-radius:0; }
.cht-slider__page::before { content:""; width:8px; height:8px; border-radius:50%; border:1px solid currentColor; }
.cht-slider__page[aria-current="true"]::before { background:currentColor; }
.cht-slider button.cht-slider__arrow:hover:not(:disabled) { background:var(--cht-ink); color:#fff; }
.cht-slider button.cht-slider__page:hover { background:transparent; color:var(--cht-ink); }
.cht-slider__page:hover::before { box-shadow:0 0 0 3px #eaf0ef; }
.cht-slider[data-slider-ready] .cht-slider__track { scrollbar-width:none; }
.cht-slider[data-slider-ready] .cht-slider__track::-webkit-scrollbar { display:none; }
.cht-slider button:disabled { opacity:.35; cursor:default; }
.cht-slider button:focus-visible,.cht-slider__track:focus-visible { outline:2px solid var(--cht-ink); outline-offset:3px; }
.cht-slider__status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:1023px) { .cht-slider { --cht-columns:2; --cht-gap:24px; } }
@media(max-width:599px) {
    .cht-slider { --cht-columns:1; --cht-gap:20px; }
    .cht-slider__controls:not([hidden]) { gap:10px; }
    .cht-slider button.cht-slider__page { width:24px; }
}
@media(prefers-reduced-motion:no-preference) {
    .cht-slider__arrow svg { transition:transform 180ms ease; }
    .cht-slider__arrow[data-direction="1"]:hover:not(:disabled) svg { transform:translateX(2px); }
    .cht-slider__arrow[data-direction="-1"]:hover:not(:disabled) svg { transform:translateX(-2px); }
    .cht-slider__page::before { transition:background-color 180ms ease, transform 180ms ease; }
    .cht-slider__page[aria-current="true"]::before { transform:scale(1.25); }
}
@media(prefers-reduced-motion:reduce) {
    .cht-slider button.cht-slider__arrow,
    .cht-slider button.cht-slider__page,
    .cht-slider__arrow svg,
    .cht-slider__page::before { transition:none; }
}
