.cp-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;padding:18px 0 0}
.cp-crumbs a{color:inherit;opacity:.65;text-decoration:underline;text-underline-offset:3px}
.cp-crumbs a:hover{opacity:1}
.cp-crumbs [aria-current]{color:inherit;font-weight:600}
.cp-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px 18px}
.cp-list li{display:flex;flex-direction:column;gap:2px}
.cp-list a{font-weight:600}
.cp-list span{font-size:.85rem;opacity:.65}
.cp-stack{max-width:340px;margin-inline:auto}
.cp-stack svg{width:100%;height:auto;display:block}
.cp-card{fill:rgba(255,255,255,.04);stroke:rgba(255,255,255,.16)}
.cp-av{fill:rgba(45,212,191,.35)}
.cp-h{fill:currentColor;font:600 15px 'Geist',system-ui,sans-serif;direction:ltr}
.cp-pill rect{fill:rgba(45,212,191,.16);stroke:rgba(45,212,191,.55)}
.cp-pill text{fill:currentColor;font:500 14px 'Geist',system-ui,sans-serif}
.cp-pill{opacity:0;transform:translateY(14px);animation:cp-in 7s ease-in-out infinite}
.cp-p2{animation-delay:.6s}.cp-p3{animation-delay:1.2s}
@keyframes cp-in{0%{opacity:0;transform:translateY(14px)}10%,80%{opacity:1;transform:none}92%,100%{opacity:0;transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.cp-pill{animation:none;opacity:1;transform:none}}
[dir=rtl] .ft-hero,[dir=rtl] .ft-sec{text-align:right}
[lang=ja] .ft-hero h1,[lang=th] .ft-hero h1,[lang=ko] .ft-hero h1{word-break:auto-phrase;line-height:1.2;font-size:clamp(2rem,4.4vw,3.6rem)}
[lang=ko] .ft-hero h1{word-break:keep-all}
