HTML
<section class="tl2-wrap">
<header class="tl2-head">
<h2 class="tl2-title">The Static<br><span class="tl2-title-alt">World Tour '26</span></h2>
<div class="tl2-credits">
44 cities<br>
6 continents<br>
sold + standing<br>
━━━━━━━━━<br>
scroll →
</div>
</header>
<div class="tl2-strip">
<article class="tl2-stub tl2-sold-out">
<div class="tl2-top">
<div class="tl2-date">14 · FEB · 2026 · FRI</div>
<div class="tl2-city">Reykjavík</div>
<div class="tl2-venue">Harpa Concert Hall</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>Northern Static</li>
<li>Glacier Song</li>
<li>Bone Radio</li>
<li>Encore: Aurora</li>
</ol>
</div>
<div class="tl2-seal">Sold<br>Out</div>
</article>
<article class="tl2-stub">
<div class="tl2-top">
<div class="tl2-date">22 · FEB · 2026 · SAT</div>
<div class="tl2-city">Berlin</div>
<div class="tl2-venue">Tempodrom · Kreuzberg</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>U-Bahn Hymn</li>
<li>Brutalist Love</li>
<li>Concrete Dawn</li>
<li>Encore: Static (live edit)</li>
</ol>
</div>
<div class="tl2-seal">Few<br>Left</div>
</article>
<article class="tl2-stub tl2-sold-out">
<div class="tl2-top">
<div class="tl2-date">06 · MAR · 2026 · FRI</div>
<div class="tl2-city">Marrakech</div>
<div class="tl2-venue">Jardin Majorelle</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>Blue Garden</li>
<li>Souk Static</li>
<li>Atlas Lullaby</li>
<li>Encore: Mint Tea</li>
</ol>
</div>
<div class="tl2-seal">Sold<br>Out</div>
</article>
<article class="tl2-stub">
<div class="tl2-top">
<div class="tl2-date">19 · MAR · 2026 · THU</div>
<div class="tl2-city">Lagos</div>
<div class="tl2-venue">Terra Kulture Arena</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>Harmattan</li>
<li>Static Pt. II</li>
<li>Yellow Bus</li>
<li>Encore: Lagos After Dark</li>
</ol>
</div>
<div class="tl2-seal">Tix<br>Live</div>
</article>
<article class="tl2-stub tl2-sold-out">
<div class="tl2-top">
<div class="tl2-date">04 · APR · 2026 · SAT</div>
<div class="tl2-city">Mexico City</div>
<div class="tl2-venue">Foro Sol</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>Xochimilco</li>
<li>Smog Romance</li>
<li>Tláloc</li>
<li>Encore: Mezcal Static</li>
</ol>
</div>
<div class="tl2-seal">Sold<br>Out</div>
</article>
<article class="tl2-stub">
<div class="tl2-top">
<div class="tl2-date">02 · MAY · 2026 · SAT</div>
<div class="tl2-city">Tokyo</div>
<div class="tl2-venue">Nippon Budokan</div>
</div>
<div class="tl2-bot">
<h5 class="tl2-list-head">SET LIST</h5>
<ol class="tl2-setlist">
<li>Shibuya Static</li>
<li>Sakura Loop</li>
<li>Train at 3am</li>
<li>Encore: Hanami Hymn</li>
</ol>
</div>
<div class="tl2-seal">Few<br>Left</div>
</article>
</div>
</section> CSS
.tl2-wrap {
background: #f4ed47;
color: #1a1a1a;
font-family: 'Archivo', system-ui, sans-serif;
padding: 2rem 0 2.5rem;
position: relative;
overflow: hidden;
}
.tl2-wrap::before {
content: '';
position: absolute;
inset: 0;
background-image: radial-gradient(circle, #1a1a1a 1px, transparent 1.5px);
background-size: 8px 8px;
opacity: 0.08;
pointer-events: none;
}
.tl2-head {
padding: 1rem 2rem 2rem;
display: grid;
grid-template-columns: 1fr auto;
align-items: end;
gap: 1.5rem;
position: relative;
}
.tl2-title {
font-family: 'Anton', 'Archivo', sans-serif;
font-weight: 400;
font-size: clamp(2.25rem, 9vw, 5.5rem);
line-height: 0.85;
letter-spacing: -0.02em;
text-transform: uppercase;
color: #1a1a1a;
margin: 0;
}
.tl2-title-alt {
display: block;
color: #ff2d72;
-webkit-text-stroke: 2px #1a1a1a;
}
.tl2-credits {
font-weight: 900;
font-size: 11px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: 0.05em;
text-align: right;
border: 3px solid #1a1a1a;
padding: 0.75rem;
background: #f4ed47;
transform: rotate(2deg);
box-shadow: 5px 5px 0 #1a1a1a;
}
.tl2-strip {
display: flex;
gap: 1rem;
padding: 1rem 2rem 2rem;
overflow-x: auto;
scroll-snap-type: x mandatory;
scrollbar-width: thin;
scrollbar-color: #1a1a1a #f4ed47;
position: relative;
}
.tl2-strip::-webkit-scrollbar { height: 6px; }
.tl2-strip::-webkit-scrollbar-thumb { background: #1a1a1a; }
.tl2-stub {
flex: 0 0 270px;
min-height: 400px;
background: #fff;
border: 3px solid #1a1a1a;
box-shadow: 7px 7px 0 #1a1a1a;
position: relative;
scroll-snap-align: start;
transform: rotate(-1deg);
transition: transform 0.35s, box-shadow 0.35s;
display: flex;
flex-direction: column;
cursor: pointer;
}
.tl2-stub:nth-child(odd) { transform: rotate(1.5deg); }
.tl2-stub:nth-child(3n) { transform: rotate(-2deg); }
.tl2-stub:nth-child(5n) { transform: rotate(0.5deg); }
.tl2-stub:hover {
transform: rotate(0deg) translateY(-6px);
box-shadow: 10px 10px 0 #ff2d72;
}
.tl2-stub::before {
content: '';
position: absolute;
left: 0; right: 0;
top: 35%;
border-top: 2px dashed #1a1a1a;
}
.tl2-stub::after {
content: '';
position: absolute;
left: -8px;
top: calc(35% - 8px);
width: 16px; height: 16px;
background: #f4ed47;
border: 3px solid #1a1a1a;
border-radius: 50%;
}
.tl2-top {
padding: 1rem;
flex: 0 0 35%;
background: #fff;
}
.tl2-date {
font-family: 'JetBrains Mono', ui-monospace, monospace;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.15em;
}
.tl2-city {
font-family: 'Anton', 'Archivo', sans-serif;
font-size: 2rem;
line-height: 0.9;
text-transform: uppercase;
margin-top: 0.5rem;
}
.tl2-venue {
font-size: 10px;
text-transform: uppercase;
letter-spacing: 0.1em;
margin-top: 0.4rem;
color: #555;
}
.tl2-bot {
padding: 1.5rem 1rem 1rem;
flex: 1;
display: flex;
flex-direction: column;
gap: 0.25rem;
}
.tl2-list-head {
font-family: 'JetBrains Mono', ui-monospace, monospace;
font-size: 9px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: #777;
margin: 0 0 0.5rem;
}
.tl2-setlist {
list-style: none;
padding: 0;
margin: 0;
font-size: 12px;
font-weight: 700;
line-height: 1.5;
counter-reset: tl2-set-num;
}
.tl2-setlist li {
padding: 2px 0;
border-bottom: 1px dotted #ddd;
}
.tl2-setlist li::before {
content: counter(tl2-set-num, decimal-leading-zero) ' · ';
counter-increment: tl2-set-num;
color: #ff2d72;
}
.tl2-seal {
position: absolute;
bottom: 14px;
right: 14px;
width: 54px; height: 54px;
border: 2px solid #ff2d72;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
font-family: 'Anton', 'Archivo', sans-serif;
font-size: 10px;
color: #ff2d72;
line-height: 1.1;
transform: rotate(-15deg);
text-transform: uppercase;
}
.tl2-sold-out .tl2-seal {
color: #1a1a1a;
border-color: #1a1a1a;
background: #ff2d72;
transform: rotate(-15deg) scale(1.05);
}
@media (max-width: 720px) {
.tl2-head { grid-template-columns: 1fr; }
.tl2-credits { justify-self: start; }
}