.trace-palette{position:absolute;pointer-events:none}
:has(>.card-trace){position:relative}
.card-trace{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
.card-trace rect{width:calc(100% - 3px);height:calc(100% - 3px);fill:none;stroke:url(#shane-spectrum);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .65s ease-out}
@media (hover:hover) and (pointer:fine){:hover>.card-trace rect{stroke-dashoffset:0}}
:has(>.card-trace):focus-visible,:has(>.card-trace):has(:focus-visible){outline:2px solid #dab3ff;outline-offset:2px}
.deal-card{border-radius:18px}
.deal-card::before{background:linear-gradient(90deg,#ff3b30,var(--orange),var(--gold),var(--green),var(--blue),#bf5af2);width:40%;transition:width .28s}
.deal-card:hover::before{width:100%}
.blog-front{padding-top:0}.blog-front .blog-featured{margin:0}.blog-directory-title{margin:2em 0 .8em}
.blog-directory,.pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px}
.topic-card,.pack-card{isolation:isolate;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#20172c;scroll-margin-top:96px}
.topic-shot{position:relative;aspect-ratio:2.35;overflow:hidden;background:#130d1c}.topic-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.topic-shot small{position:absolute;bottom:7px;left:10px;color:white;background:#171021e6;padding:2px 7px;border-radius:4px;font-size:.68rem}
.topic-card:hover img{transform:scale(1.035)}.topic-copy,.pack-copy{padding:16px 19px 20px}.topic-copy h3{margin:0 0 5px}.topic-main{color:white;text-decoration:none}.topic-main::after{content:"";position:absolute;inset:0;z-index:1}
.topic-lead{font-size:.94rem;color:#decaef}.topic-extra{position:relative;z-index:2;display:table;margin-top:.35rem;padding:.2rem 0;color:#dfbaff}
.pack-card{display:flex;flex-direction:column}.pack-card img{width:100%;height:auto;display:block}.pack-copy{display:flex;flex-direction:column;align-items:start;flex:1}.pack-copy h2{margin:6px 0}.pack-copy p{flex:1}.pack-copy .button{margin-top:8px}.pack-setup{margin-top:32px}.pack-setup li+li{margin-top:8px}
@media(prefers-reduced-motion:reduce){.card-trace rect,.topic-shot img,.deal-card::before{transition:none}.topic-card:hover img{transform:none}}
