:root{
  --cream:#F1E7D7;
  --cream-light:#FAF8F4;
  --brown:#362B1F;
  --dark:#12100F;
  --copper:#AE6B35;
  --orange:#D36D25;
  --muted:#8B7B6B;
  --line:rgba(54,43,31,.16);
  --red:#E54338;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream-light);color:var(--brown);font-family:"Inter",system-ui,sans-serif}
a{color:inherit}
img{display:block;max-width:100%}
button,input{font:inherit}

.site-header{
  height:104px;
  padding:6px max(24px,calc((100vw - 1180px)/2));
  background:var(--dark);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.logo{
  height:96px;
  width:370px;
  display:flex;
  align-items:center;
  flex:0 0 auto;
  overflow:hidden;
  line-height:0;
}
.logo img{
  width:100%;
  height:100%;
  max-width:none;
  display:block;
  object-fit:contain;
  object-position:left center;
}
nav{display:flex;gap:34px}
nav a{
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-family:"Oswald",sans-serif;
  font-size:.86rem;
  letter-spacing:.1em;
}
nav a:hover{color:var(--orange)}

.hero{
  min-height:360px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  background:var(--cream-light);
  border-bottom:1px solid var(--line);
}
.hero-inner{
  padding:40px max(24px,calc((100vw - 1180px)/2));
  padding-right:7vw;
  align-self:center;
}
.eyebrow{
  margin:0 0 16px;
  color:var(--copper);
  font-family:"Oswald",sans-serif;
  font-size:.8rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.hero h1{
  margin:0;
  font-family:"Oswald",sans-serif;
  text-transform:uppercase;
  font-size:clamp(3.35rem,5.5vw,5.4rem);
  line-height:.95;
  letter-spacing:-.042em;
  color:var(--dark);
}
.hero h1 span{color:var(--orange)}
.hero-copy{
  margin:20px 0 0;
  font-size:1.08rem;
  line-height:1.6;
  color:var(--dark);
}
.listen-button{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-top:20px;
  padding:16px 22px;
  background:linear-gradient(90deg,#B85B1B,var(--orange));
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-family:"Oswald",sans-serif;
  font-size:1rem;
  letter-spacing:.05em;
  border-radius:4px;
  box-shadow:0 7px 18px rgba(180,85,25,.18);
}
.button-wave{font-size:1.2rem;line-height:1}
.listen-button:hover{filter:brightness(1.04)}

.hero-art{
  position:relative;
  min-width:0;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.hero-emblem{
  position:relative;
  z-index:2;
  width:min(68%,420px);
  mix-blend-mode:multiply;
}
.waveform{
  position:absolute;
  inset:18% 2%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  opacity:.13;
}
.waveform span{
  width:9px;
  border-radius:999px;
  background:var(--copper);
}
.waveform span:nth-child(1){height:14%}
.waveform span:nth-child(2){height:28%}
.waveform span:nth-child(3){height:44%}
.waveform span:nth-child(4){height:66%}
.waveform span:nth-child(5){height:34%}
.waveform span:nth-child(6){height:52%}
.waveform span:nth-child(7){height:82%}
.waveform span:nth-child(8){height:48%}
.waveform span:nth-child(9){height:72%}
.waveform span:nth-child(10){height:38%}
.waveform span:nth-child(11){height:58%}
.waveform span:nth-child(12){height:74%}
.waveform span:nth-child(13){height:42%}
.waveform span:nth-child(14){height:62%}
.waveform span:nth-child(15){height:24%}

.demos{
  padding:88px max(24px,calc((100vw - 1180px)/2)) 100px;
  background:var(--dark);
  color:#fff;
}
.section-heading{margin-bottom:34px}
.section-heading .eyebrow{color:var(--orange)}
.section-heading h2{
  margin:0;
  font-family:"Oswald",sans-serif;
  text-transform:uppercase;
  font-size:clamp(3.2rem,5.4vw,5rem);
  line-height:.95;
  letter-spacing:-.04em;
}


.demo-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
}
.demo-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  margin-bottom:5px;
  padding:14px 20px;
  border:1px solid var(--orange);
  border-radius:4px;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-family:"Oswald",sans-serif;
  font-size:.88rem;
  letter-spacing:.07em;
  transition:background .18s ease,color .18s ease;
}
.demo-cta:hover{
  background:var(--orange);
  color:#fff;
}

.players{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.player{
  background:linear-gradient(145deg,#1a1511,#120f0d);
  border:1px solid rgba(174,107,53,.22);
  border-radius:5px;
  overflow:hidden;
}
.player-header{
  min-height:84px;
  padding:20px 22px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.small-label{
  display:block;
  color:#B9AA9B;
  font-size:.66rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  margin-bottom:4px;
}
.player h3{
  margin:0;
  font-family:"Oswald",sans-serif;
  font-size:1.5rem;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.on-air{
  display:flex;align-items:center;gap:7px;
  color:var(--red);
  font-family:"Oswald",sans-serif;
  font-size:.78rem;
  letter-spacing:.1em;
}
.on-air i{width:7px;height:7px;border-radius:50%;background:var(--red)}

.now-playing{padding:22px}
.now-playing span{
  display:block;color:#907C69;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px
}
.now-playing strong{font-size:1.05rem}
.transport{
  display:grid;grid-template-columns:48px 1fr 44px;gap:14px;align-items:center;padding:0 20px 22px
}
.play-button{
  width:46px;height:46px;border:1px solid var(--orange);border-radius:50%;
  background:transparent;color:var(--orange);cursor:pointer
}
.timeline{display:grid;gap:5px}
.seek{width:100%;accent-color:var(--orange)}
.times{display:flex;justify-content:space-between;color:#9E8E7E;font-size:.7rem}
.mute-button{border:0;background:transparent;color:#B9AA9B;font-size:.7rem;font-weight:600;cursor:pointer}
.track-list{
  list-style:none;margin:0;padding:0 0 10px;counter-reset:track;border-top:1px solid rgba(255,255,255,.08)
}
.track-list li{counter-increment:track}
.track-list button{
  width:100%;display:grid;grid-template-columns:38px 1fr 20px;align-items:center;
  padding:10px 18px;border:0;background:transparent;color:#E7DED5;text-align:left;cursor:pointer
}
.track-list button::before{
  content:counter(track,decimal-leading-zero);color:#8F7E6D;font-size:.72rem
}
.track-list button::after{content:"›";justify-self:end;color:var(--copper)}
.track-list button:hover,.track-list button.active{background:rgba(174,107,53,.12)}
.track-list button.active{color:#fff;font-weight:600}
.deck{display:none}

.about{background:var(--cream-light)}
.about-heading{
  max-width:1180px;margin:0 auto;padding:82px 24px 38px
}
.about-heading h2{
  margin:0;
  max-width:900px;
  font-family:"Oswald",sans-serif;
  text-transform:uppercase;
  font-size:clamp(3.5rem,6vw,6rem);
  line-height:.95;
  letter-spacing:-.045em;
  color:var(--dark);
}
.about-body{
  max-width:1180px;margin:0 auto;padding:0 24px 92px;
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(0,1fr) minmax(300px,1.08fr);
  gap:46px;
  align-items:start
}
.about-headshot{
  margin:0;
  width:100%;
}
.about-headshot img{
  display:block;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center 35%;
  border-radius:2px;
  box-shadow:0 12px 30px rgba(18,16,15,.08);
}
.about-copy p{
  margin:0 0 22px;
  color:#5C5147;
  font-size:1.03rem;
  line-height:1.88;
}
.studio-specs{
  padding-left:38px;
  border-left:1px solid rgba(174,107,53,.55);
  color:var(--dark);
}
.specs-heading .eyebrow{margin-bottom:12px}
.specs-heading p:last-child{margin:0;color:#5C5147;line-height:1.75}
.spec-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr;
  gap:28px 38px;
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid rgba(174,107,53,.42);
}
.spec-group{min-width:0}
.spec-label{
  display:block;
  margin-bottom:7px;
  color:var(--copper);
  font-family:"Inter",sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.spec-group p{
  margin:0;
  color:var(--dark);
  font-size:.94rem;
  font-weight:500;
  line-height:1.65;
}


.contact-section{
  background:var(--brown);
  color:var(--cream-light);
  border-top:1px solid rgba(255,255,255,.06);
}
.contact-inner{
  max-width:1180px;
  margin:0 auto;
  padding:82px 24px 88px;
}
.contact-section .eyebrow{
  color:var(--orange);
}
.contact-section h2{
  margin:0;
  max-width:950px;
  font-family:"Oswald",sans-serif;
  text-transform:uppercase;
  font-size:clamp(3.3rem,6vw,5.9rem);
  line-height:.96;
  letter-spacing:-.045em;
}
.contact-section h2 span{
  color:var(--orange);
}
.contact-email{
  display:inline-block;
  margin-top:34px;
  color:var(--cream-light);
  font-family:"Oswald",sans-serif;
  font-size:clamp(1.5rem,3vw,2.4rem);
  text-decoration:none;
  border-bottom:2px solid var(--orange);
  padding-bottom:5px;
}
.contact-email:hover{
  color:var(--orange);
}
.contact-details{
  max-width:720px;
  margin-top:34px;
  padding-top:26px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#D5C8BB;
  line-height:1.75;
}
.contact-details p{
  margin:0 0 10px;
}
.contact-details a{
  color:var(--cream-light);
  text-decoration-color:var(--orange);
  text-underline-offset:3px;
}
.contact-details a:hover{
  color:var(--orange);
}

footer{
  min-height:190px;
  padding:34px max(24px,calc((100vw - 1180px)/2));
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:40px;
  background:var(--dark);
  color:#C9BBAE;
}
.representation{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  font-size:.8rem;
  line-height:1.5;
}
.representation h3{
  margin:0 0 7px;
  color:var(--cream-light);
  font-family:"Oswald",sans-serif;
  font-size:.9rem;
  font-weight:500;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.representation h3 span{color:var(--copper)}
.representation p{margin:0;color:#C9BBAE}
.representation a{
  color:#C9BBAE;
  text-decoration:none;
}
.representation a:hover{color:var(--orange)}
.copyright{
  margin:0;
  color:#8F8175;
  font-size:.78rem;
  text-align:right;
  justify-self:end;
}

@media(max-width:850px){
  .site-header{height:92px}
  .logo{height:72px;width:270px}
  nav{gap:22px}
  .hero{grid-template-columns:1fr}
  .hero-inner{padding:58px 24px}
  .hero-art{min-height:260px}
  .hero-emblem{width:min(58%,330px)}
  .players{grid-template-columns:1fr}
  .about-body{
    grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);
    gap:36px;
  }
  .studio-specs{
    grid-column:1 / -1;
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(174,107,53,.55);
    padding-top:32px;
  }
  footer{grid-template-columns:1fr auto}
  footer>p{text-align:right}
}
@media(max-width:560px){
  .site-header{padding:14px 18px}
  .logo{height:58px;width:220px}
  nav{gap:14px}
  nav a{font-size:.72rem}
  .hero h1{font-size:3.35rem}
  .hero-copy{font-size:1rem}
  .listen-button{padding:14px 18px}
  .demos{padding:68px 16px 80px}
  .transport{grid-template-columns:44px 1fr 36px;gap:8px;padding-left:14px;padding-right:14px}
  .track-list button{padding-left:14px;padding-right:14px}
  .about-heading{padding:68px 18px 32px}
  .about-heading h2{font-size:3.5rem}
  .about-body{
    grid-template-columns:1fr;
    padding:0 18px 72px;
    gap:30px;
  }
  .about-headshot{
    max-width:360px;
  }
  .studio-specs{
    grid-column:auto;
    padding:30px 0 0;
  }
  .spec-grid{grid-template-columns:1fr 1fr;gap:24px}
  footer{grid-template-columns:1fr}
  footer>p{text-align:right}
}

@media(max-width:560px){
  .contact-inner{padding:66px 18px 72px}
  .contact-section h2{font-size:3.35rem}
}

@media(max-width:560px){
  .demo-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .demo-cta{
    margin:0;
  }
}

@media(max-width:560px){
  footer{
    grid-template-columns:1fr;
    align-items:start;
    gap:28px;
  }
  .copyright{
    justify-self:end;
    text-align:right;
  }
}

/* Center the Demos CTA beneath both players */
.demo-bottom-cta{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  margin-top:34px;
  padding-bottom:4px;
}
