.tiktok-section { overflow:hidden; padding:78px 0 72px; color:#f3f0df; background:#273b36; border-top:3px double #819087; }
.tiktok-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:38px; }
.tiktok-heading .eyebrow { color:#aebbb3; font-family:monospace; }
.tiktok-heading h2 { margin:12px 0 0; color:#f3f0df; font:700 italic 46px/1.1 var(--serif); }
.tiktok-actions { display:flex; align-items:center; gap:20px; }
.tiktok-actions>a { display:flex; align-items:center; gap:9px; color:#f3f0df; font:20px var(--hand); text-decoration:none; }
.tiktok-actions>a:hover { color:#e6c255; }
.tiktok-actions .ui-icon { filter:brightness(0) invert(1); }
.belt-toggle { border:1px solid #9aa8a1; color:white; }
.belt-toggle:hover { background:#ffffff12; }
.tiktok-belt { position:relative; width:100%; outline:none; }
.tiktok-belt::before,.tiktok-belt::after { content:""; position:absolute; z-index:2; top:0; bottom:0; width:7vw; pointer-events:none; }
.tiktok-belt::before { left:0; background:linear-gradient(90deg,#273b36,transparent); }
.tiktok-belt::after { right:0; background:linear-gradient(-90deg,#273b36,transparent); }
.belt-track { display:flex; width:max-content; gap:18px; animation:belt-roll 46s linear infinite; will-change:transform; }
.belt-set { display:flex; gap:18px; padding-block:8px 16px; }
.tiktok-belt:hover .belt-track,.tiktok-belt:focus-within .belt-track,.tiktok-belt.is-paused .belt-track { animation-play-state:paused; }
@keyframes belt-roll { to { transform:translate3d(calc(-50% - 9px),0,0); } }
.tiktok-card { position:relative; display:block; width:250px; flex:0 0 250px; aspect-ratio:9/14; overflow:hidden; color:white; background:#16241f; text-decoration:none; border:1px solid #687972; box-shadow:5px 8px 0 #182a25,7px 12px 18px #101d1966; transform:rotate(var(--card-tilt)); transition:transform .35s,box-shadow .35s; }
.tiktok-card:hover,.tiktok-card:focus-visible { z-index:3; transform:rotate(0) translateY(-6px) scale(1.015); box-shadow:4px 13px 0 #182a25,8px 18px 23px #101d1988; }
.tiktok-card>img { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .6s ease; }
.tiktok-card:hover>img { transform:scale(1.025); }
.tiktok-card-link { position:absolute; z-index:2; inset:0; }
.tiktok-note { margin-top:20px; color:#aebbb3; font-size:12px; }
@media(max-width:1250px) { .tiktok-card { width:220px; flex-basis:220px; } .tiktok-section { padding-block:65px; } }
@media(prefers-reduced-motion:reduce) { .belt-track { animation:none; transform:none; } .tiktok-belt { overflow-x:auto; } .tiktok-card,.tiktok-card img { transition:none; } }
