:root{
  --ff-orange:#ff9900;
  --ff-bg:#070707;
  --ff-panel:#111;
  --ff-panel-2:#171717;
  --ff-border:#292929;
  --ff-text:#f3f3f3;
  --ff-muted:#9c9c9c;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ff-bg);color:var(--ff-text);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
.ff-wrap{max-width:1180px}
.ff-nav{background:rgba(7,7,7,.94);border-bottom:1px solid #1d1d1d;backdrop-filter:blur(12px)}
.ff-logo{width:min(255px,58vw);height:auto;display:block}
.ff-home{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;color:#aaa;font-weight:700}
.ff-home:hover{color:#fff}

.hero{position:relative;overflow:hidden;padding:126px 0 66px;background:#090909}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.38;filter:saturate(.95) contrast(1.06)}
.hero-bg:after{content:"";position:absolute;inset:0;background:
 linear-gradient(90deg,rgba(7,7,7,.97) 0%,rgba(7,7,7,.80) 48%,rgba(7,7,7,.52) 100%),
 linear-gradient(0deg,#070707 0%,transparent 42%)}
.hero-inner{position:relative;z-index:2}
.cover{max-width:420px;margin:auto;border-radius:7px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.58);background:#111}
.cover img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.eyebrow{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ff-orange);font-weight:800}
.hero h1{font-size:clamp(2.5rem,6vw,5.4rem);line-height:.93;letter-spacing:-.045em;font-weight:900;margin:.55rem 0 .9rem}
.hero-artist{font-size:clamp(1.08rem,2vw,1.42rem);font-weight:700}
.release-meta{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center;color:#bbb;font-size:.92rem;margin:.9rem 0 1.45rem}
.status-chip{display:inline-flex;align-items:center;border:1px solid rgba(255,153,0,.5);background:rgba(255,153,0,.11);color:var(--ff-orange);padding:.42rem .65rem;border-radius:999px;font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}

.btn-ff,.btn-ghost{border-radius:4px;padding:.82rem 1.16rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.btn-ff{background:var(--ff-orange);border:1px solid var(--ff-orange);color:#050505}
.btn-ff:hover{background:#ffad2f;border-color:#ffad2f;color:#050505}
.btn-ghost{border:1px solid #555;color:#fff;background:rgba(0,0,0,.25)}
.btn-ghost:hover{border-color:#fff;color:#fff}

main section{padding:60px 0;border-top:1px solid #151515}
.section-head{margin-bottom:21px}
.section-head h2{font-weight:900;font-size:clamp(1.7rem,3.2vw,2.65rem);letter-spacing:-.025em}

/* compact streaming */
.stream-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.stream-card{height:58px;border:1px solid var(--ff-border);background:var(--ff-panel);padding:.62rem .82rem;display:flex;align-items:center;gap:.72rem;border-radius:5px;transition:.15s}
.stream-card:hover{border-color:var(--ff-orange);transform:translateY(-1px)}
.stream-logo-wrap{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px}
.stream-logo{max-width:26px;max-height:26px;object-fit:contain;display:block}

.service-name{font-weight:850;font-size:.93rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.more-streams{margin-top:12px}
.more-streams summary{cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;color:#bbb;font-weight:800;font-size:.9rem;list-style:none}
.more-streams summary::-webkit-details-marker{display:none}
.more-streams[open] summary{margin-bottom:12px;color:#fff}

.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.video-card{background:var(--ff-panel);border:1px solid var(--ff-border);border-radius:6px;overflow:hidden}
.video-card.featured{grid-column:1/-1}
.video-media{position:relative;aspect-ratio:16/7.3;overflow:hidden;background:#111}
.video-card:not(.featured) .video-media{aspect-ratio:16/9}
.video-media img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s}
.video-card a:hover .video-media img{transform:scale(1.012)}
.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.45);font-size:1.25rem;padding-left:4px}
.premiere-badge{position:absolute;left:13px;top:13px;background:var(--ff-orange);color:#050505;padding:.4rem .62rem;border-radius:3px;font-size:.72rem;font-weight:900;text-transform:uppercase}
.video-body{padding:.95rem 1.05rem}
.video-body h3{font-weight:900}

.tracklist,.copy-card,.facts,.share-card,.presave-card{background:var(--ff-panel);border:1px solid var(--ff-border);border-radius:6px}
.track-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:.8rem 1rem;border-bottom:1px solid #242424}
.track-row:last-child{border-bottom:0}
.track-no{color:var(--ff-orange);font-weight:900}
.track-title{font-weight:800}
.track-artist{font-size:.82rem;color:var(--ff-muted)}
.track-time{font-size:.82rem;color:#aaa}
.copy-card{padding:1.2rem 1.3rem;color:#d5d5d5;line-height:1.7}
.copy-card p:last-child{margin-bottom:0}
.copy-card .release-copy{max-width:760px}
.facts{padding:.2rem 1.05rem}
.fact{display:flex;justify-content:space-between;gap:1rem;padding:.78rem 0;border-bottom:1px solid #242424}
.fact:last-child{border-bottom:0}
.fact-label{color:#888}
.share-card{padding:.9rem;display:flex;gap:.55rem;flex-wrap:wrap}
.sharebtn{border:1px solid #444;background:#151515;color:#eee;padding:.66rem .84rem;border-radius:4px;font-weight:800}
.sharebtn:hover{border-color:var(--ff-orange)}
.presave-card{padding:1.15rem 1.25rem}

.ff-footer{padding:24px 0;border-top:1px solid #1b1b1b;color:#8d8d8d;font-size:.84rem}
.ff-footer .ff-logo{width:205px;opacity:.9}
.mobile-sticky{display:none}
.error-page{min-height:100vh;display:grid;place-items:center;padding:30px;text-align:center;background:#070707}
.error-page .code{font-size:clamp(5rem,18vw,10rem);font-weight:900;color:#222;line-height:.8}
.error-page h1{font-weight:900;margin-top:1.5rem}

@media(max-width:991.98px){
  .hero{padding-top:108px}
  .cover{max-width:380px}
  .hero h1{font-size:clamp(2.55rem,6vw,4.3rem)}
}
@media(min-width:768px) and (max-width:991.98px){
  .hero .col-lg-5,.hero .col-lg-7{width:50%}
  .hero .row{align-items:center}
  .stream-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767.98px){
  body.has-sticky{padding-bottom:72px}
  .ff-nav .container{padding-left:16px;padding-right:16px}
  .ff-logo{width:188px}
  .ff-home{font-size:.61rem}
  .hero{padding:86px 0 34px}
  .hero-bg{opacity:.24;background-position:center}
  .hero-bg:after{background:linear-gradient(0deg,#070707 0%,rgba(7,7,7,.72) 55%,rgba(7,7,7,.38) 100%)}
  .hero .row{--bs-gutter-y:1.55rem}
  .cover{max-width:90vw}
  .hero h1{font-size:clamp(2.3rem,12vw,4rem);margin-bottom:.7rem}
  .release-meta{margin:.7rem 0 1.1rem}
  main section{padding:43px 0}
  .stream-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .stream-card{height:54px;padding:.56rem .66rem;gap:.58rem}
  .stream-logo-wrap{width:25px;height:25px;flex-basis:25px}
  .stream-logo{max-width:23px;max-height:23px}
  .service-name{font-size:.86rem}
  .video-grid{grid-template-columns:1fr}
  .video-card.featured{grid-column:auto}
  .video-media,.video-card:not(.featured) .video-media{aspect-ratio:16/9}
  .track-row{grid-template-columns:32px 1fr auto;padding:.78rem .72rem}
  .mobile-sticky{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1030;background:rgba(7,7,7,.97);border-top:1px solid #2b2b2b;padding:8px 0}
  .mobile-sticky .btn{padding:.7rem .5rem;font-size:.77rem}
  .ff-footer{padding:20px 0}
  .ff-footer .ff-footer-mark{width:42px}
}

.ff-footer-mark{width:48px;height:auto;object-fit:contain;display:block}

/* Refinements to the existing prototype; hero and typography are preserved. */
.stream-logo{width:26px;height:26px;fill:currentColor;color:var(--ff-text)}
.share-card{width:fit-content;max-width:100%;border:0;background:transparent;padding:0}
.hero-copy,.track-row>div,.fact strong{min-width:0;overflow-wrap:anywhere}
.copy-card a{text-decoration:underline;text-underline-offset:.15em}
.copy-card .release-copy{overflow-wrap:anywhere}
.premiere-badge{max-width:calc(100% - 26px)}
.error-page p{color:var(--ff-muted)}
:focus-visible{outline:2px solid var(--ff-orange);outline-offset:4px}
@media(min-width:992px){.video-card.featured{width:88%;justify-self:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stream-card,.video-media img{transition:none}}
section[id]{scroll-margin-top:80px}
@media(max-width:767.98px){.mobile-sticky{padding-bottom:calc(8px + env(safe-area-inset-bottom))}body.has-sticky{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}

/* Compact handoff when there are no intervening content sections. */
#streaming:has(+ #teilen){padding-bottom:24px}
.more-streams summary::after{content:"";width:6px;height:6px;flex:0 0 6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-left:.15rem;position:relative;top:-2px}
.more-streams[open] summary::after{transform:rotate(225deg);top:1px}
/* Public release overview: reuse the existing share colors, badges and footer. */
.overview-main{padding-top:122px;padding-bottom:64px}
.overview-heading{margin-bottom:32px}
.overview-heading h1{margin:0 0 12px;font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.035em;line-height:1.05}
.overview-heading p,.overview-empty{margin:0;color:var(--ff-muted);line-height:1.6}
.overview-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.overview-card{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;background:var(--ff-panel);border:1px solid var(--ff-border);border-radius:6px}
.overview-card:hover,.overview-card:focus-visible{border-color:var(--ff-orange);color:var(--ff-text)}
.overview-card.is-presave{border-color:#765018}
.overview-cover{aspect-ratio:1;display:grid;place-items:center;overflow:hidden;background:var(--ff-panel-2)}
.overview-cover img{display:block;width:100%;height:100%;object-fit:cover}
.overview-cover img.overview-cover-placeholder{width:64px;height:auto;object-fit:contain;opacity:.7}
.overview-card-body{display:flex;flex-direction:column;flex:1;padding:18px;min-width:0}
.overview-artist{margin:0 0 8px;font-size:.72rem;line-height:1.5;letter-spacing:.07em;font-weight:700;text-transform:uppercase;color:var(--ff-orange);overflow-wrap:anywhere}
.overview-card h2{margin:0 0 18px;font-size:1.4rem;font-weight:800;line-height:1.2;overflow-wrap:anywhere}
.overview-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:auto;font-size:.76rem;color:var(--ff-muted)}
.overview-card-meta .status-chip{font-size:.65rem;letter-spacing:.03em;padding:5px 8px}
.overview-card:not(.is-presave) .status-chip{color:#b8b8b8;border-color:#444;background:transparent}
.overview-card-meta time{margin-left:auto;white-space:nowrap}
@media(min-width:768px){.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:992px){.overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.overview-main{padding-top:94px;padding-bottom:44px}.overview-heading{margin-bottom:24px}.overview-grid{gap:20px}}
/* The card opens the internal detail page; YouTube stays a separate action. */
.video-card{position:relative}
.video-detail-link::after{content:"";position:absolute;inset:0;z-index:1}
.video-detail-link:focus-visible::after{outline:2px solid var(--ff-orange);outline-offset:-3px;border-radius:6px}
.video-body>div:first-child{min-width:0;overflow-wrap:anywhere}
.video-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem;flex-shrink:0}
.video-actions .btn{position:relative;z-index:2;font-size:.72rem;padding:.7rem .8rem;white-space:nowrap}
@media(min-width:768px){.featured .video-actions{margin-top:0}}
.release-kollabo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem}.release-kollabo{display:flex;align-items:center;gap:1.5rem;min-width:0;color:#f2f2ee;text-decoration:none;overflow-wrap:anywhere}.release-kollabo-photo{display:block;width:144px;height:auto;flex:none;object-fit:contain}.release-kollabo-copy{min-width:0}.release-kollabo h3{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.2;margin:0 0 .5rem;text-transform:uppercase}.release-kollabo ul{list-style:none;padding:0;margin:0;color:#bcbcbc;font-size:.95rem}.release-kollabo li+li{margin-top:.3rem}.release-kollabo-cta{display:inline-flex;align-items:center;gap:.65rem;min-height:44px;margin-top:.65rem;color:#ff9900;font-size:.72rem;letter-spacing:.08em;font-weight:700}.release-kollabo:hover{color:#ff9900}.release-kollabo:hover .release-kollabo-cta{text-decoration:underline;text-underline-offset:.3em}.release-kollabo:focus-visible{outline:2px solid #ff9900;outline-offset:6px}@media(max-width:991px){.release-kollabo-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:599px){.release-kollabo{gap:1rem}.release-kollabo-photo{width:104px}.release-kollabo h3{font-size:1.15rem}.release-kollabo-cta{font-size:.68rem}}

/* Release editorial interlude, below information/credits and before lyrics/sharing. */
.release-editorial{padding-top:clamp(2.5rem,5vw,4.5rem);padding-bottom:clamp(2.5rem,5vw,4.5rem)}
.release-editorial-sequence{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem)}
.release-editorial-image{grid-column:1/-1;width:100%;margin:0;padding:0;border:0;background:none;justify-self:start}
.release-editorial-image:nth-child(2){grid-column:5/-1;justify-self:end}
.release-editorial-image img{display:block;width:100%;height:auto;border:0}
@media(max-width:767px){.release-editorial-image:nth-child(2){grid-column:2/-1}}
