/* TikTok Ads · hero: een verticale video met een advertentie die als content voelt */
.tc{position:relative;width:100%;max-width:420px;margin-left:auto;display:flex;justify-content:center}
.tc-tel{width:250px;padding:10px;border-radius:34px}
.tc-scherm{position:relative;height:450px;border-radius:26px;overflow:hidden;background:#060718}
.tc-video{position:absolute;inset:0;background:radial-gradient(circle at 30% 25%,var(--halo1),transparent 55%),radial-gradient(circle at 75% 70%,var(--halo2),transparent 55%),linear-gradient(160deg,var(--b2),var(--b1));animation:tc-beweeg 7s var(--ease) infinite alternate}
@keyframes tc-beweeg{to{transform:scale(1.12) rotate(-2deg)}}
.tc-video i{position:absolute;border-radius:50%;background:rgba(255,255,255,.12);filter:blur(2px)}
.tc-video i:nth-child(1){width:90px;height:90px;left:20%;top:30%;animation:tc-zweef 6s var(--ease) infinite alternate}
.tc-video i:nth-child(2){width:50px;height:50px;left:58%;top:18%;animation:tc-zweef 5s var(--ease) infinite alternate-reverse}
.tc-video i:nth-child(3){width:70px;height:70px;left:46%;top:52%;animation:tc-zweef 7s var(--ease) infinite alternate}
@keyframes tc-zweef{to{transform:translate(14px,-18px)}}
.tc-balk{position:absolute;left:12px;right:12px;top:12px;height:3px;border-radius:2px;background:rgba(255,255,255,.25);overflow:hidden}
.tc-balk i{display:block;height:100%;width:0;background:#fff;animation:tc-tijd 7s linear infinite}
@keyframes tc-tijd{to{width:100%}}
.tc-rail{position:absolute;right:10px;bottom:120px;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.tc-rail li{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.tc-rail li:first-child{background:linear-gradient(135deg,var(--green),var(--mint))}
.tc-tekst{position:absolute;left:14px;right:60px;bottom:64px;color:#fff}
.tc-tekst b{display:block;font-size:13px}
.tc-tekst small{display:inline-block;margin:4px 0 8px;padding:2px 6px;border-radius:4px;font-size:9px;background:rgba(255,255,255,.18)}
.tc-tekst s{display:block;height:5px;border-radius:3px;background:rgba(255,255,255,.45);margin:5px 0;width:90%}
.tc-tekst s+s{width:60%}
.tc-cta{position:absolute;left:12px;right:12px;bottom:14px;display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-radius:10px;font-size:13px;font-weight:600;color:#02121A;background:linear-gradient(135deg,var(--green),var(--mint) 60%,var(--mint-l));transform:translateY(70px);animation:tc-cta 7s var(--ease) infinite}
@keyframes tc-cta{0%,28%{transform:translateY(70px)}38%,92%{transform:none}100%{transform:translateY(70px)}}
.tc-label{position:absolute;left:-40px;top:46%;padding:10px 16px;border-radius:999px;max-width:230px;line-height:1.5}
.tc-label .mono{color:var(--ink)}
@media (max-width:960px){.tc{margin:0 auto}.tc-label{left:-10px}}
@media (max-width:560px){.tc-tel{width:220px}.tc-scherm{height:400px}.tc-label{position:static;margin-top:12px;max-width:none;text-align:center;font-size:10px}.tc{flex-direction:column;align-items:center}}
@media (prefers-reduced-motion:reduce){.tc-video,.tc-video i,.tc-balk i,.tc-cta{animation:none}.tc-cta{transform:none}}
