/* Native scrolling keeps every supporter reachable before JavaScript loads. */
.tc-footer-supporters { background:radial-gradient(ellipse at 85% 0%,#153b35 0,transparent 65%),#071b20; border-block:1px solid #b89a4f40; }
.tc-footer-supporters .tc-footer-supporters__inner { display:block; padding-block:clamp(2rem,5vw,4rem); }
.tc-footer-supporters__inner > header { display:grid; grid-template-columns:minmax(0,1fr) minmax(16rem,.65fr); column-gap:3rem; align-items:end; margin-block-end:1.7rem; }
.tc-footer-supporters__inner > header .tc-eyebrow { grid-column:1/-1; margin:0 0 .65rem; color:#dfc680; font-size:.65rem; letter-spacing:.15em; }
.tc-footer-supporters__inner > header h2 { margin:0; max-inline-size:24ch; color:#fff1c9; font-size:clamp(1.75rem,3.1vw,2.8rem); line-height:1.13; text-wrap:balance; }
.tc-footer-supporters__inner > header > p:last-child { margin:0; max-inline-size:52ch; color:#c1cec8; font-size:.82rem; line-height:1.75; }
.tc-supporter-slider { --supporter-ink:#153f37; --supporter-muted:#52695e; --supporter-line:#ac94584d; min-inline-size:0; color:var(--supporter-ink); }
.tc-supporter-slider--footer { --supporter-ink:#fff1c9; --supporter-muted:#c1cec8; --supporter-line:#d5bc713d; }
.tc-supporter-slider .tc-supporter-slider__rail { display:flex; gap:1rem; margin:0; padding:.25rem .25rem 1rem; list-style:none; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b89a4f66 transparent; scroll-padding-inline:.25rem; }
.tc-supporter-slider__rail > br { display:none; }
.tc-supporter-slider .tc-supporter-slider__item { flex:0 0 calc((100% - 2rem)/3); min-inline-size:0; margin:0; padding:0; scroll-snap-align:start; list-style:none; }
.tc-supporter-slider .tc-supporter-slider__card { display:flex; flex-direction:column; height:100%; box-sizing:border-box; border:1px solid var(--supporter-line); border-radius:1rem; padding:1.2rem 1.3rem; background:linear-gradient(140deg,#fff,#faf7ed); color:var(--supporter-ink); text-decoration:none; transition:border-color .2s,background-color .2s; }
.tc-supporter-slider--footer .tc-supporter-slider__card { background:linear-gradient(140deg,#ffffff09,#ffffff03); }
.tc-supporter-slider .tc-supporter-slider__card:hover { border-color:#be9d47; }
.tc-supporter-slider :is(a,button,.tc-supporter-slider__rail):focus-visible { outline:2px solid #b78b29; outline-offset:3px; }
.tc-supporter-slider--footer :is(a,button,.tc-supporter-slider__rail):focus-visible { outline-color:#f6d783; }
.tc-supporter-slider__country { color:var(--supporter-muted); font-size:.61rem; line-height:1.4; font-weight:700; text-transform:uppercase; letter-spacing:.13em; }
.tc-supporter-slider__logo { display:grid; place-items:center; height:7.5rem; margin-block:.5rem 1rem; }
.tc-supporter-slider__logo img { display:block; width:100%; height:100%; max-width:15rem; max-height:7.5rem; object-fit:contain; }
.tc-supporter-slider__name { display:flex; justify-content:space-between; align-items:center; gap:.65rem; border-block-start:1px solid var(--supporter-line); padding-block-start:1rem; color:var(--supporter-ink); font:700 1.15rem/1.25 Georgia,serif; }
.tc-supporter-slider__name > span { font:400 1.2rem/1 system-ui,sans-serif; color:#ae8d38; }
.tc-supporter-slider__summary { margin-block-start:.45rem; min-block-size:2.9em; color:var(--supporter-muted); font-size:.75rem; line-height:1.45; }
.tc-supporter-slider__bar { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-block-start:.65rem; }
.tc-supporter-slider__hint { color:var(--supporter-muted); font-size:.72rem; line-height:1.5; }
.tc-supporter-slider__controls:not([hidden]) { display:flex; align-items:center; gap:.45rem; }
.tc-supporter-slider__controls[hidden] { display:none; }
.tc-supporter-slider .tc-supporter-slider__controls button { display:inline-flex; justify-content:center; align-items:center; min-width:44px; min-height:44px; margin:0; border:1px solid var(--supporter-line); border-radius:99px; padding:.55rem .8rem; background:transparent; color:var(--supporter-ink); font:600 .7rem/1.3 system-ui,sans-serif; cursor:pointer; }
.tc-supporter-slider .tc-supporter-slider__controls button[data-supporter-pause] { min-width:7.5rem; }
.tc-supporter-slider .tc-supporter-slider__controls button:hover { background:#b89a4f1c; border-color:#be9d47; }
.tc-supporters .tc-supporter-card__logo img { aspect-ratio:auto; max-height:10rem; object-fit:contain; }
.tc-supporters__head .tc-eyebrow,.tc-supporters .tc-supporter-card__copy > .tc-eyebrow { color:#806022; }
@media (max-width:899px) {
  .tc-footer-supporters__inner > header { grid-template-columns:1fr; gap:.85rem; }
  .tc-footer-supporters__inner > header .tc-eyebrow { margin:0; }
  .tc-supporter-slider .tc-supporter-slider__item { flex-basis:calc((100% - 1rem)/2); }
}
@media (max-width:599px) {
  .tc-supporter-slider .tc-supporter-slider__item { flex-basis:86%; }
  .tc-supporter-slider__bar { flex-wrap:wrap; }
  .tc-supporter-slider__hint { flex-basis:100%; }
  .tc-supporter-slider__controls { margin-inline-start:auto; }
  .tc-supporter-slider .tc-supporter-slider__card { padding:1rem; }
}
@media (prefers-reduced-motion:reduce) { .tc-supporter-slider * { scroll-behavior:auto!important; transition:none!important; } }
@media print { .tc-supporter-slider .tc-supporter-slider__rail { display:grid; grid-template-columns:repeat(3,1fr); overflow:visible; } .tc-supporter-slider__bar { display:none; } }
