/* Editorial navigation and multilingual presentation */
.site-header #nav{margin-left:auto}
.site-header .language-switch{margin-left:28px}
.language-switch{display:flex;align-items:center;gap:3px;width:max-content;padding:4px;border:1px solid rgba(255,255,255,.3);border-radius:100px;background:rgba(7,7,7,.88);box-shadow:0 10px 30px rgba(0,0,0,.22);z-index:20}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:37px;min-height:30px;padding:5px 8px;border-radius:100px;color:#ddd;font-size:11px;font-weight:800;letter-spacing:.02em;white-space:nowrap;transition:background .2s,color .2s}
.language-switch a:hover,.language-switch a:focus-visible{color:#fff;background:#353535}
.language-switch a[aria-current="true"]{background:var(--red,#e12b1e);color:#fff}
*:focus-visible{outline:2px solid #fff;outline-offset:4px}
body>.language-switch{position:fixed;top:20px;right:20px}
.language-switch+.page{padding-top:max(80px,32px)}
html[lang="ja"] body{font-family:Inter,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
html[lang="ja"] .eyebrow,html[lang="ja"] .cta,html[lang="ja"] .platform-button{letter-spacing:.04em}
html[lang="ja"] .hero h1,html[lang="ja"] .contact h2,html[lang="ja"] .manifesto blockquote,html[lang="ja"] .legal-main h1{letter-spacing:-.04em;line-height:1.15}

.home .site-header{background:rgba(7,7,7,.55);backdrop-filter:blur(16px)}
.home .hero{min-height:690px;height:min(900px,100svh);padding:145px 7vw 95px}
.home .hero-content{position:relative;z-index:1;width:min(540px,38vw);max-width:100%}
.home .hero h1{font-size:clamp(36px,5vw,76px);line-height:.95;letter-spacing:-.06em;margin:28px 0 32px}
.home .hero .intro{max-width:610px;color:#eee}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;margin-top:27px}
.hero-actions .cta{margin-top:0}
.hero-actions .cta span{font-size:inherit;margin-left:0}
.hero-actions .cta span[aria-hidden]{margin-left:12px;font-size:18px}
.hero-actions .cta-secondary{border-bottom-color:rgba(255,255,255,.55)}
.hero-caption{position:absolute;right:5vw;bottom:42px;color:#ddd;font-size:10px;letter-spacing:.17em;font-weight:800;z-index:1}
.editorial-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;border-bottom:1px solid currentColor;padding-bottom:24px;margin-bottom:28px}
.editorial-heading h2{margin:10px 0 0;font-size:clamp(46px,7vw,102px);line-height:.88;letter-spacing:-.075em}
.editorial-heading p:last-child{max-width:390px;margin:0;line-height:1.65;font-size:15px}
.home .artists{padding:105px 5vw 115px;background:#e9e6de}
.home .artist-grid{gap:14px}
.home .artist-card{min-height:clamp(270px,31vw,430px)}
.home .artist-card a{align-items:end;gap:20px}
.home .artist-card h3{line-height:.9}
.home .artist-card p{margin:18px 0 0;text-transform:uppercase;font-weight:800;letter-spacing:.12em}
.home .artist-card b{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.85);border-radius:50%;font-size:24px;flex:none}
.releases{padding:110px 5vw 125px;background:#111;color:#f1f0ed}
.releases .editorial-heading{border-color:#4a4a4a}
.releases .editorial-heading p:last-child{color:#aaa}
.release-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.release-card{min-width:0}
.release-card a{display:block}
.release-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:#222;transition:transform .35s,filter .35s}
.release-card a:hover img{transform:translateY(-5px);filter:brightness(1.12)}
.release-card .release-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 16px;border-bottom:1px solid #494949}
.release-card h3{font-size:clamp(16px,2vw,25px);margin:0;letter-spacing:-.03em}
.release-card .release-arrow{font-size:24px;color:var(--red)}
.release-card .release-action{display:inline-block;margin-top:16px;color:#bcbcbc;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.home .manifesto{padding:115px 7vw 125px;min-height:0}
.home .manifesto blockquote{margin:55px 0;font-size:clamp(41px,6.5vw,94px)}
.home .manifesto .body-copy{margin:0 0 65px auto}
.label-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid #444}
.label-pillars article{padding-top:28px}
.label-pillars h3{margin:0 0 15px;font-size:15px;letter-spacing:.08em}
.label-pillars p{max-width:280px;margin:0;color:#aaa;line-height:1.6;font-size:14px}
.home .contact{padding:105px 7vw}
.home .contact h2{line-height:.85}
footer{gap:24px}

@media(max-width:1000px){
  .release-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-heading{align-items:start;flex-direction:column}
  .editorial-heading p:last-child{max-width:680px}
}
@media(max-width:880px){
  .site-header .menu{display:block;margin-left:auto}
  .site-header #nav{display:none;position:absolute;top:88px;left:0;right:0;margin:0;padding:25px 4vw;background:#0b0b0b;flex-direction:column;gap:22px;border-bottom:1px solid var(--line)}
  .site-header #nav.open{display:flex}
  .site-header .language-switch{margin-left:12px}
  .site-header .language-switch a{min-width:30px;min-height:29px;padding:4px 6px}
}
@media(max-width:700px){
  .site-header #nav{top:70px}
  .site-header .language-switch{margin-left:8px;padding:3px}
  .site-header .language-switch a{min-width:26px;padding:4px 5px;font-size:10px}
  .home .hero{min-height:690px;height:100svh;padding:156px 6vw 75px}
  .home .hero h1{font-size:clamp(65px,16vw,104px);margin:24px 0 32px}
  .home .hero .intro{font-size:14px}
  .hero-actions{gap:10px 25px}
  .hero-actions .cta{font-size:10px}
  .hero-actions .cta span{margin-left:6px}
  .hero-caption{display:none}
  .home .artists,.releases{padding:75px 5vw 85px}
  .home .artist-card{min-height:clamp(245px,66vw,340px)}
  .home .artist-card h3{font-size:clamp(40px,10vw,66px)}
  .home .artist-card p{font-size:10px;margin-top:10px}
  .home .artist-card b{width:38px;height:38px;font-size:20px}
  .release-grid{gap:18px 12px}
  .release-card .release-meta{padding:12px 0}
  .release-card h3{font-size:16px}
  .release-card .release-action{font-size:10px;margin-top:11px}
  .home .manifesto{padding:80px 6vw}
  .home .manifesto blockquote{line-height:1.05}
  .home .manifesto .body-copy{margin-bottom:48px}
  .label-pillars{grid-template-columns:1fr;gap:0}
  .label-pillars article{padding:20px 0;border-bottom:1px solid #333}
  .label-pillars h3{margin-bottom:8px}
  .home .contact{padding:80px 6vw}
  .home .contact h2{font-size:clamp(55px,12vw,90px)}
  body>.language-switch{top:12px;right:12px}
  .language-switch+.page{padding-top:67px}
}
@media(max-width:380px){.site-header{padding:0 3vw}.site-header .brand{font-size:12px}.site-header .menu{font-size:10px;padding:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.artist-card:before,.release-card img,.platform-button,.language-switch a{transition:none}}

/* Styles musicaux officiels */
.home .artist-card p.artist-genre{margin:14px 0 0;font-size:clamp(12px,1.25vw,17px);font-weight:600;letter-spacing:.04em;text-transform:none;color:#f1f1f1;line-height:1.5}
.artist-detail .artist-genre{position:relative;margin:0 0 10px;font-size:clamp(13px,1.25vw,18px);font-weight:600;letter-spacing:.04em;line-height:1.5;color:#eee}
.page .artist-genre{margin:10px 0 12px;color:#d6d1de;font-size:.88rem;line-height:1.5}

/* Presentation du label en paragraphes */
.home .manifesto .label-description{max-width:760px}
.label-description p{margin:0}
.label-description p+p{margin-top:1.35em}
.label-description strong{color:#f2f2f2;font-weight:800}

/* Keep the background wordmark above the headline on narrow screens. */
@media(max-width:880px){
  .home .hero{
    min-height:690px;height:auto;justify-content:flex-start;padding:385px 6vw 64px;
    background:linear-gradient(0deg,#090909 0%,transparent 35%) right 75px / 100% 280px no-repeat,
      url("wallpaper-ravencore.webp") right 75px / auto 280px no-repeat,#090909;
  }
  .home .hero-content{width:100%;max-width:620px}
  .home .hero h1{font-size:clamp(36px,8vw,60px);margin:20px 0 26px}
  .home .hero .intro{max-width:520px}
  .home .hero-caption{display:none}
}
