.ads-channel-stage { position: relative; width: 100%; height: 100%; overflow: hidden; }
.ads-channel { position: absolute; inset: 0; background: #fff; pointer-events: none; visibility: hidden; animation: ads-channel 18s steps(1, end) infinite; animation-delay: var(--channel-delay); }
.channel-feed { display: flex; flex-direction: column; height: 100%; gap: 12px; }
.channel-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex: none; }
.channel-platform { display: flex; align-items: center; gap: 11px; font-size: 21px; letter-spacing: -.5px; font-weight: 500; }.channel-platform-logo { display: block; flex: none; object-fit: contain; width: 30px; height: 30px; }.channel-platform-logo--youtube { width: 36px; height: 26px; }.channel-heading > span:last-child { color: #9a9f97; font-size: 11px; }
.channel-account { display: flex; align-items: center; gap: 9px; flex: none; }.channel-account img { width: 33px; height: 33px; object-fit: contain; border-radius: 6px; }.channel-account-text { display: grid; gap: 3px; font-size: 12px; font-weight: 500; }.channel-account-text small { color: #949b8f; font-size: 10px; font-weight: 400; }.channel-more { margin-left: auto; font-size: 20px; letter-spacing: 2px; color: #8d9787; }
.channel-creative { position: relative; flex: 1; min-height: 110px; overflow: hidden; border-radius: 9px; display: flex; align-items: center; gap: 14px; padding: 24px; background: #f0f5e5; }
.channel-copy { position: relative; z-index: 1; width: 50%; flex: none; color: #fff; text-shadow: 0 1px 8px #14231b35; }
.channel-campaign-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; animation: channel-photo 18s linear infinite; animation-delay: var(--channel-delay); }
.channel-creative::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #14231bb8, #14231b30 52%, transparent 74%); pointer-events: none; }
.channel-copy p { margin: 0; font: 200 clamp(25px,5.6cqw,40px)/1.05 "PP Editorial New Ultralight",sans-serif; letter-spacing: -.02em; font-feature-settings: "blwf","cv03","cv04","cv09","cv11"; }
.channel-copy small { display: block; margin-top: 16px; color: #edf0e6; font-size: 10px; line-height: 1.4; }

.channel-cta { display: flex; justify-content: space-between; align-items: center; padding: 10px 13px; background: #e7f6c3; color: #36522a; font-size: 12px; border-radius: 6px; flex: none; }.channel-cta span:last-child { font-size: 19px; }
.channel-actions { display: flex; align-items: center; gap: 13px; color: #253422; flex: none; }.channel-actions svg { width: 19px; height: 19px; }.channel-actions svg:last-child { margin-left: auto; }.channel-heart { animation: channel-heart 18s ease-in-out infinite; animation-delay: var(--channel-delay); }
.channel-caption { margin: 0; font-size: 11px; color: #7f8878; }.channel-caption b { color: #38482f; font-weight: 500; }
.channel-film { position: relative; flex: 1; min-height: 140px; display: flex; flex-direction: column; background: #17261c; border-radius: 9px; overflow: hidden; }
.channel-film .channel-creative { background: transparent; border-radius: 0; padding: 27px; }.channel-film .channel-copy { color: #f5f8ef; }.channel-film .channel-copy small { color: #edf0e6; }
.channel-play { position: absolute; left: 50%; top: 50%; width: 43px; height: 43px; display: grid; place-items: center; border-radius: 50%; transform: translate(-50%,-50%); background: #fffffff0; color: #263c20; animation: channel-play 18s ease-in-out infinite; animation-delay: var(--channel-delay); }.channel-play svg { width: 17px; height: 17px; margin-left: 3px; }
.channel-video-controls { display: flex; align-items: center; gap: 10px; padding: 0 15px 12px; color: #dbe6d5; font-size: 9px; }.channel-video-controls svg { width: 12px; height: 12px; }.channel-video-progress { flex: 1; background: #ffffff30; height: 3px; border-radius: 4px; overflow: hidden; }.channel-video-progress::after { content: ''; display: block; width: 100%; height: 100%; background: #ff4141; transform-origin: left; animation: channel-video-progress 18s linear infinite; animation-delay: var(--channel-delay); }
.channel-video-title { margin: 0; font-size: 18px; font-weight: 500; letter-spacing: -.5px; }.channel-video-account { display: flex; align-items: center; gap: 10px; }.channel-video-account .channel-account { flex: 1; }.channel-video-account .channel-cta { gap: 16px; }
.channel-indicators { position: absolute; left: 26px; bottom: 12px; display: flex; gap: 17px; color: #9aa28f; font-size: 9px; }.channel-indicators span { animation: channel-indicator 18s steps(1, end) infinite; animation-delay: var(--channel-delay); }
.tensor-ppc:not(.is-playing) *::after { animation-play-state: paused !important; }
.gs-query-text { animation-name: channel-google-type; animation-duration: 18s; }.gs-ad { animation-name: channel-google-ad; animation-duration: 18s; }.gs-cursor { animation-name: channel-google-cursor; animation-duration: 18s; }.gs-click { animation-name: channel-google-click; animation-duration: 18s; }.gs-cta { animation: none; }
/* Six seconds per platform; cut directly on the shared timeline.
   Visibility changes discretely, without opacity or movement between scenes. */
@keyframes ads-channel {
 0% { visibility: visible; }
 33.333333%, 100% { visibility: hidden; }
}
@keyframes channel-photo { 0% { transform: scale(1); } 33.333333% { transform: scale(1.045); } 34%, 100% { transform: scale(1); } }
@keyframes channel-indicator { 0% { color: #35512b; } 33.333333%, 100% { color: #9aa28f; } }
@keyframes channel-heart { 0%, 15%, 100% { fill: transparent; stroke: #253422; } 19%, 32% { fill: #ed5b70; stroke: #ed5b70; } 34%, 99% { fill: transparent; stroke: #253422; } }
@keyframes channel-play { 0%, 3%, 100% { opacity: 1; } 8%, 32% { opacity: 0; } 35%, 99% { opacity: 1; } }
@keyframes channel-video-progress { 0%, 4% { transform: scaleX(0); } 29%, 33% { transform: scaleX(1); } 34%, 100% { transform: scaleX(0); } }
@keyframes channel-google-type { 0%, 2% { clip-path: inset(0 100% 0 0); } 13%, 31% { clip-path: inset(0 0 0 0); } 34%, 100% { clip-path: inset(0 100% 0 0); } }
@keyframes channel-google-ad { 0%, 6%, 35%, 100% { border-color: #e6eadf; } 15%, 32% { border-color: #b8ed6b; } }
@keyframes channel-google-cursor { 0%, 16% { opacity: 0; transform: translate(25px,16px); } 21%, 23% { opacity: 1; transform: none; } 25% { opacity: 1; transform: scale(.87); } 27%, 30% { opacity: 1; transform: none; } 33%, 100% { opacity: 0; transform: translate(5px,8px); } }
@keyframes channel-google-click { 0%, 24% { opacity: 0; transform: scale(.5); } 26% { opacity: 1; transform: scale(1); } 29%, 100% { opacity: 0; transform: scale(1.4); } }
@container (max-width: 540px) {
 .ads-channel .gs-result { min-height: 0; padding: 4px 2px; }.ads-channel .gs-result-icon { width: 22px; height: 22px; border-radius: 6px; }.ads-channel .gs-result-lines { gap: 5px; }.ads-channel .gs-result-lines i { height: 7px; }
 .channel-feed { gap: 9px; }.channel-platform { font-size: 18px; gap: 9px; }.channel-platform-logo { width: 26px; height: 26px; }.channel-platform-logo--youtube { width: 32px; height: 23px; }.channel-heading > span:last-child { font-size: 9px; }.channel-account img { width: 27px; height: 27px; }.channel-account-text { font-size: 10px; }.channel-account-text small { font-size: 8px; }
 .channel-creative, .channel-film .channel-creative { padding: 14px; gap: 8px; }.channel-copy p { font-size: 29px; }.channel-copy small { font-size: 8px; margin-top: 12px; }
 .channel-cta { font-size: 10px; padding: 8px 10px; }.channel-cta span:last-child { font-size: 15px; }.channel-actions { gap: 11px; }.channel-actions svg { width: 16px; height: 16px; }.channel-caption { font-size: 9px; line-height: 1.4; }.channel-video-title { font-size: 15px; }.channel-video-account { gap: 7px; }.channel-video-account .channel-cta { gap: 8px; }
 .channel-indicators { left: 16px; bottom: 11px; font-size: 8px; gap: 12px; }.channel-play { width: 35px; height: 35px; }
}
@media (prefers-reduced-motion: reduce) {
 .tensor-ppc *, .tensor-ppc *::after { animation: none !important; }.ads-channel { display: none; }.ads-channel:first-child { display: block; visibility: visible; }.gs-query-text { clip-path: none; }.gs-ad { opacity: 1; transform: none; }
}
