
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --black:#050505; --white:#f5f5f3; --grey:#a6a6a2; --line:#242424;
  --red:#f20d1d; --light:#ededeb; --dark2:#0b0b0b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}
.site-header{height:82px;padding:14px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(5,5,5,.94);backdrop-filter:blur(14px);z-index:20}
.brand{display:block;width:260px}
.brand img{width:100%;display:block}
.nav{display:flex;align-items:center;gap:30px;font-size:13px;text-transform:uppercase;letter-spacing:.13em}
.nav a{opacity:.78}.nav a:hover{opacity:1}
.nav-cta{border:1px solid #444;padding:10px 15px}.nav-cta:hover{border-color:#777}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:24px}
.hero{min-height:calc(100vh - 82px);display:flex;align-items:center;position:relative;overflow:hidden}
.hero-inner{width:min(1120px,90vw);margin:0 auto;padding:90px 0 120px}
.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:#888;margin:0 0 22px}
.hero h1{font-size:clamp(58px,9vw,126px);line-height:.92;letter-spacing:-.065em;margin:0;max-width:950px}
.hero h1 span{color:var(--red)}
.hero-copy{font-size:clamp(18px,2vw,25px);max-width:650px;color:#b9b9b5;margin:35px 0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.button{display:inline-block;padding:14px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.button-red{background:var(--red)}.button-red:hover{background:#ff2634}
.button-ghost{border:1px solid #444}.button-ghost:hover{border-color:#888}
.hero-line{position:absolute;left:0;bottom:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--red),transparent)}
.section{padding:120px 5vw}.section-dark{background:var(--black)}.section-light{background:var(--light);color:#0a0a0a}
.section-head{max-width:1120px;margin:0 auto 60px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}
h2{font-size:clamp(42px,6vw,78px);line-height:.98;letter-spacing:-.055em;margin:0}
.section-intro{color:#777;max-width:480px;margin:0;font-size:17px}
.section-light .section-intro{color:#5c5c59}
.catalog{max-width:1120px;margin:auto;border-top:1px solid var(--line)}
.track-card{display:grid;grid-template-columns:80px 1fr auto;gap:25px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}
.track-number{font-size:12px;color:#666;letter-spacing:.15em}.track-card h3{font-size:21px;margin:0 0 3px}.track-card p{margin:0;color:#777;font-size:14px}.status{font-size:10px;letter-spacing:.18em;color:#777}
.catalog-note{max-width:1120px;margin:28px auto 0;color:#777;font-size:13px}
.steps{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cfcfcb}
.step{background:var(--light);padding:38px 34px;min-height:250px}.step span{font-size:11px;color:var(--red);letter-spacing:.15em}.step h3{font-size:22px;margin:28px 0 12px}.step p{color:#666;margin:0}
.one-stop-box{max-width:1120px;margin:55px auto 0;border:1px solid #c7c7c2;padding:30px}.one-stop-box strong{font-size:15px;letter-spacing:.14em}.one-stop-box p{margin:10px 0 0;color:#666}
.about-grid{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-copy{font-size:20px;color:#b4b4b0}.about-copy p{margin:0 0 24px}
.contact-section{background:var(--red);color:white;padding:120px 5vw}.contact-inner{max-width:1120px;margin:auto}.contact-section .eyebrow{color:#ffd5d8}.contact-section h2{font-size:clamp(55px,8vw,110px)}.contact-section p:not(.eyebrow):not(.small-note){font-size:19px;max-width:600px;margin:35px 0}
.contact-mail{font-size:clamp(24px,4vw,50px);font-weight:700;border-bottom:2px solid white;display:inline-block}.small-note{margin-top:40px!important;font-size:12px!important;opacity:.78}
.site-footer{padding:24px 5vw;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#777}.site-footer a:hover{color:white}
.subpage{min-height:100vh}.legal{max-width:900px;margin:0 auto;padding:120px 5vw}.legal h1{font-size:70px;letter-spacing:-.05em;margin:0 0 40px}.legal p{max-width:700px;color:#aaa}.legal a{color:white;text-decoration:underline}.muted{color:#666!important}
@media(max-width:800px){
  .site-header{height:70px}.brand{width:210px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:#080808;padding:25px 5vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}.hero-inner{padding:80px 0}.section{padding:85px 5vw}.section-head,.about-grid{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr}.track-card{grid-template-columns:40px 1fr}.status{display:none}.site-footer{flex-direction:column}.legal h1{font-size:52px}
}

.contact-details{font-size:14px!important;line-height:1.8;margin:25px 0 0!important;opacity:.9}

/* Custom Music */
.section-custom {
  background: #111;
  color: #fff;
  border-top: 1px solid rgba(255,255,255,.08);
}
.section-custom .section-intro { color: rgba(255,255,255,.68); }
.custom-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5rem;
  align-items: start;
  margin-top: 3rem;
}
.custom-statement {
  max-width: 560px;
}
.custom-statement > p {
  font-size: clamp(1.15rem, 1.8vw, 1.5rem);
  line-height: 1.55;
  color: rgba(255,255,255,.86);
  margin: 0 0 2rem;
}
.custom-features { border-top: 1px solid rgba(255,255,255,.16); }
.custom-feature {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1rem;
  padding: 1.4rem 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.custom-feature > span { color: #e3262e; font-weight: 700; letter-spacing: .08em; }
.custom-feature h3 { margin: 0 0 .45rem; }
.custom-feature p { margin: 0; color: rgba(255,255,255,.62); line-height: 1.6; }
@media (max-width: 800px) {
  .custom-grid { grid-template-columns: 1fr; gap: 2.5rem; }
}


/* Intro video */
.intro-video {
  background: #000;
  padding: 0 5vw 5vw;
}
.intro-video .container {
  max-width: 1100px;
  margin: 0 auto;
}
.intro-video video {
  display: block;
  width: 100%;
  height: auto;
  max-height: 78vh;
  background: #000;
}
