.studio-hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.55),rgba(0,0,0,.2)),
    url('/assets/img/studio-hero.png');
  background-size:cover;
  background-position:center;
}

.studio-two-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.studio-door{
  min-height:440px;
  border-radius:var(--radius);
  padding:42px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.studio-door.dark{
  background:var(--black);
  color:var(--white);
}

.studio-door.yellow{
  background:var(--yellow);
  color:var(--black);
}

.studio-door h3{
  font-size:clamp(42px,5vw,76px);
  line-height:.9;
  letter-spacing:-3px;
  text-transform:uppercase;
  margin-bottom:22px;
}

.studio-door p{
  font-size:19px;
  line-height:1.5;
  max-width:620px;
  opacity:.82;
}

.studio-areas-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.studio-area-card{
  min-height:170px;
  border-radius:var(--radius);
  background:var(--black);
  color:var(--white);
  padding:26px;
  display:flex;
  align-items:flex-end;
  border:1px solid rgba(0,0,0,.08);
}

.studio-area-card:nth-child(2n){
  background:var(--yellow);
  color:var(--black);
}

.studio-area-card h3{
  font-size:28px;
  line-height:1;
  letter-spacing:-1px;
  text-transform:uppercase;
}

.studio-small-card h2,
.studio-membership-card h2{
  font-size:clamp(42px,5vw,76px);
}

.studio-method-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.studio-method-card{
  min-height:280px;
  background:var(--white);
  border:1px solid #e4e4e4;
  border-radius:var(--radius);
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:.2s ease;
}

.studio-method-card:hover{
  transform:translateY(-3px);
}

.studio-method-number{
  color:var(--yellow);
  font-size:54px;
  font-weight:950;
  line-height:1;
}

.studio-method-card h3{
  font-size:31px;
  line-height:1;
  letter-spacing:-1px;
  text-transform:uppercase;
  margin:18px 0 12px;
}

.studio-method-card p{
  color:#666;
  font-weight:700;
  line-height:1.5;
}

.studio-method-card span{
  align-self:flex-end;
  font-size:34px;
  font-weight:900;
}

.studio-gallery-card{
  min-height:460px;
  border-radius:var(--radius);
  padding:40px;
  color:var(--white);
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.82)),
    url('/assets/img/studio-training.jpg');
  background-size:cover;
  background-position:center;
}

.studio-gallery-card h2{
  font-size:clamp(48px,6vw,86px);
  line-height:.88;
  letter-spacing:-3px;
  text-transform:uppercase;
  margin-bottom:18px;
}

.studio-gallery-card p{
  color:#ededed;
  font-size:19px;
  line-height:1.5;
  max-width:620px;
}

.studio-final-cta{
  border-radius:var(--radius);
  background:var(--black);
  color:var(--white);
  padding:52px;
}

.studio-final-cta h2{
  font-size:clamp(48px,7vw,96px);
  line-height:.86;
  letter-spacing:-4px;
  text-transform:uppercase;
  max-width:920px;
  margin-bottom:22px;
}

.studio-final-cta p{
  color:#d7d7d7;
  font-size:20px;
  line-height:1.5;
  max-width:760px;
  margin-bottom:28px;
}

@media(max-width:1100px){
  .studio-areas-grid,
  .studio-method-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:860px){
  .studio-two-grid{
    grid-template-columns:1fr;
  }

  .studio-door,
  .studio-final-cta{
    padding:30px;
  }
}

@media(max-width:580px){
  .studio-areas-grid,
  .studio-method-grid{
    grid-template-columns:1fr;
  }

  .studio-door{
    min-height:360px;
    padding:26px;
  }

  .studio-gallery-card{
    min-height:380px;
    padding:26px;
  }

  .studio-final-cta{
    padding:28px;
  }
}
