.release-hero{padding:clamp(1.3rem,5vw,3.5rem);border-radius:22px;margin:0 0 1.25rem;background:linear-gradient(95deg,#edf5ff 28%,#c6e0ff 73%,#a8c8ef);color:#10203c}
.release-hero>div{max-width:55rem}.release-hero h1{max-width:20ch;font-size:clamp(1.9rem,4.6vw,3.5rem);line-height:1.16;margin:.5rem 0}.release-hero p{color:#324765}
.release-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0}.release-card .role-portrait{position:relative;aspect-ratio:16/10;height:auto}.release-card .role-portrait img{width:100%;height:100%;object-fit:cover}
.film-nft-badge{position:absolute;top:.65rem;left:.65rem;width:3.2rem;aspect-ratio:1;display:grid;place-content:center;line-height:1.05;text-align:center;text-decoration:none;border:2px solid #e8c579;border-radius:.65rem;color:#fff0ba;background:linear-gradient(150deg,#23406c,#081122 73%);box-shadow:0 2px 6px #0008,inset 0 0 0 2px #273d58;font:800 .8rem system-ui}
.film-nft-badge span{font-size:1.2rem}.film-nft-badge:focus-visible{outline:3px solid #fff;outline-offset:2px}
.release-gold{padding:clamp(.9rem,2.3vw,1.5rem);background:linear-gradient(115deg,#fffcf5,#f6e8c8);border:1px solid #e6ca8e;border-radius:18px;color:#432b0e;margin:1rem 0}.release-gold h2,.release-gold h3{margin:.25rem 0 .7rem}.campaign-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ip-feature{display:grid;grid-template-columns:minmax(0,3fr) minmax(12rem,1fr);gap:1.25rem}.ip-feature aside{border-left:1px solid #cbb581;padding-left:1rem}.ip-feature li{margin:.45rem 0}.ip-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.ip-steps>div{border-radius:12px;padding:.7rem;background:#fff8}.ip-steps span{display:block;font-weight:bold;color:#8a5212;margin-bottom:.3rem}.ip-steps p{margin:.25rem 0}.release-search{display:flex;flex-wrap:wrap;gap:.55rem;align-items:end}.release-search label{display:grid;gap:.25rem}.release-search input{padding:.5rem .65rem}.release-table{width:100%;border-collapse:collapse}.release-table td,.release-table th{padding:.4rem;text-align:left;border-bottom:1px solid #ddd}
.release-launches{display:grid;grid-template-columns:minmax(0,2fr) minmax(16rem,1fr);gap:1rem;align-items:start}.release-launches .launch-feature{grid-column:1;grid-row:1}.release-launches .launch-guide{grid-column:2;grid-row:1 / span 2}.release-launches .launch-more{grid-column:1;grid-row:2}.release-launches .launch-guide h2{margin-top:0}
@media(max-width:800px){.release-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-feature{grid-template-columns:1fr}.ip-feature aside{border-left:0;border-top:1px solid #cbb581;padding:1rem 0 0}.release-launches{display:block}}
@media(max-width:480px){.release-grid{grid-template-columns:1fr}.ip-steps{grid-template-columns:1fr}.campaign-banner{align-items:start;flex-direction:column}}

.traffic-scroll{overflow-x:auto}.traffic-scroll th,.traffic-scroll td{white-space:nowrap}.traffic-scroll td a{white-space:normal;overflow-wrap:anywhere}
.traffic-scroll meter{width:clamp(2.5rem,10vw,9rem);vertical-align:middle}
