*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#28231f;background:#f8f5f1;font-family:Montserrat,Arial,sans-serif;line-height:1.7}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:74px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(248,245,241,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(60,48,39,.1)}.brand{font-family:"Cormorant Garamond",serif;font-size:1.8rem;font-weight:700;text-decoration:none;color:#332a24}.nav-links{display:flex;gap:2rem}.nav-links a{text-decoration:none;color:#332a24;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.menu-button{display:none;border:0;background:none;font-size:1.6rem}.hero{min-height:100vh;position:relative;background:url("assets/gallery-9.png") center 22%/cover no-repeat;display:flex;align-items:center;padding:110px 8vw 60px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,21,17,.78) 0%,rgba(28,21,17,.45) 48%,rgba(28,21,17,.08) 100%)}.hero-content{position:relative;z-index:1;color:#fff;max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:600;margin:0 0 1.2rem;color:#f0dfd1}.eyebrow.dark{color:#8f6f5f}.hero h1,.section h2{font-family:"Cormorant Garamond",serif;font-weight:600;line-height:.98;margin:.2rem 0 1.4rem}.hero h1{font-size:clamp(3.4rem,8vw,7.5rem)}.hero-copy{max-width:580px;font-size:1.05rem}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;justify-content:center;align-items:center;padding:.95rem 1.5rem;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:600;border:1px solid transparent}.primary{background:#b7947f;color:#fff}.secondary{border-color:#fff;color:#fff}.section{max-width:1180px;margin:auto;padding:110px 6vw}.section h2{font-size:clamp(2.8rem,5vw,5rem)}.intro{text-align:center;max-width:900px}.intro p:last-child{max-width:650px;margin:auto}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}.image-frame{position:relative}.image-frame:before{content:"";position:absolute;inset:24px -24px -24px 24px;border:1px solid #c9b4a7;z-index:0}.image-frame img{position:relative;width:100%;display:block;aspect-ratio:4/5;object-fit:contain;background:#efe7df;z-index:1}.content p{margin:0 0 1rem}.philosophy{background:#332a24;color:#f8f5f1;text-align:center}.philosophy .section{padding-top:90px;padding-bottom:90px}.pill-grid{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center;margin-top:2.4rem}.pill-grid span{padding:.7rem 1rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:.8rem}.classes{text-align:center}.class-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;text-align:left;margin-top:3rem}.class-card{background:#fff;box-shadow:0 18px 45px rgba(53,39,31,.09)}.class-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#efe7df;display:block}.class-card-content{padding:2rem}.class-card h3{font-family:"Cormorant Garamond",serif;font-size:2.2rem;margin:0 0 .8rem}.class-card ul{padding-left:1.2rem;margin:1rem 0 0}.schedule-note{margin-top:2rem;font-weight:500}.gallery{text-align:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.gallery-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}.contact{background:#e9dfd7}.contact-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}.contact-card{background:#fff;padding:2.3rem;display:grid;gap:.45rem;box-shadow:0 18px 45px rgba(53,39,31,.08)}.contact-card span{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;color:#8f6f5f;margin-top:.6rem}.contact-card a:not(.button){font-family:"Cormorant Garamond",serif;font-size:2rem;color:#332a24;text-decoration:none}.full{width:100%;margin-top:1rem}footer{padding:2rem 6vw;background:#241e1a;color:#d8ccc4;display:flex;justify-content:space-between;gap:1rem;font-size:.78rem}@media(max-width:800px){.menu-button{display:block}.nav-links{display:none;position:absolute;top:74px;left:0;right:0;background:#f8f5f1;padding:1rem 6vw 1.5rem;flex-direction:column;gap:1rem}.nav-links.open{display:flex}.hero{background-position:65% center}.hero-overlay{background:linear-gradient(90deg,rgba(28,21,17,.78),rgba(28,21,17,.36))}.split,.contact-inner,.class-grid{grid-template-columns:1fr}.split{gap:4rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}footer{flex-direction:column}.section{padding:80px 6vw}}@media(max-width:520px){.hero h1{font-size:3.4rem}.gallery-grid{grid-template-columns:1fr 1fr}.class-card-content{padding:1.5rem}}


.home-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.5rem}
.home-photo-pair img{width:100%;height:330px;object-fit:contain;background:#efe7df}
.section-image-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.section-image-strip img{width:100%;height:360px;object-fit:contain;background:#efe7df}
.philosophy-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:3rem}
.philosophy-photo-pair img{width:100%;height:350px;object-fit:contain;background:#efe7df}
.contact-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.contact-photo-pair img{width:100%;height:280px;object-fit:contain;background:#efe7df}
.contact-inner{grid-template-columns:1fr 1fr}
.contact-inner>div:first-child{grid-column:1/-1}
@media(max-width:800px){
  .home-photo-pair,.section-image-strip,.philosophy-photo-pair,.contact-photo-pair{grid-template-columns:1fr 1fr}
  .home-photo-pair img,.section-image-strip img,.philosophy-photo-pair img,.contact-photo-pair img{height:240px;object-fit:contain;background:#efe7df}
  .contact-inner{grid-template-columns:1fr}
  .contact-inner>div:first-child{grid-column:auto}
}
@media(max-width:520px){
  .home-photo-pair,.section-image-strip,.philosophy-photo-pair,.contact-photo-pair{grid-template-columns:1fr}
}

.home-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.5rem}
.home-photo-pair img{width:100%;height:330px;object-fit:contain;background:#efe7df}
.section-image-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.section-image-strip img{width:100%;height:360px;object-fit:contain;background:#efe7df}
.philosophy-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:3rem}
.philosophy-photo-pair img{width:100%;height:350px;object-fit:contain;background:#efe7df}
.contact-photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.contact-photo-pair img{width:100%;height:280px;object-fit:contain;background:#efe7df}
.contact-inner{grid-template-columns:1fr 1fr}
.contact-inner>div:first-child{grid-column:1/-1}
@media(max-width:800px){
  .home-photo-pair,.section-image-strip,.philosophy-photo-pair,.contact-photo-pair{grid-template-columns:1fr 1fr}
  .home-photo-pair img,.section-image-strip img,.philosophy-photo-pair img,.contact-photo-pair img{height:240px;object-fit:contain;background:#efe7df}
  .contact-inner{grid-template-columns:1fr}
  .contact-inner>div:first-child{grid-column:auto}
}
@media(max-width:520px){
  .home-photo-pair,.section-image-strip,.philosophy-photo-pair,.contact-photo-pair{grid-template-columns:1fr}
}

.home-photo-pair figure,.section-image-strip figure,.philosophy-photo-pair figure,.contact-photo-pair figure{margin:0;background:#fff}
.home-photo-pair figcaption,.section-image-strip figcaption,.philosophy-photo-pair figcaption,.contact-photo-pair figcaption{padding:1rem 1.1rem;font-size:.92rem;line-height:1.55;color:#4d433c;text-align:left}
.philosophy-photo-pair figure{background:#43372f}
.philosophy-photo-pair figcaption{color:#f2e9e2}



.class-feature{margin-top:2.5rem}
.class-feature figure{margin:0;background:#fff;box-shadow:0 14px 34px rgba(53,39,31,.08)}
.class-feature img{width:100%;max-height:720px;object-fit:contain;display:block;background:#efe7df}
.class-feature figcaption{padding:1rem 1.2rem;text-align:center;font-size:.95rem;color:#4d433c}

/* ABOUT NO OVERLAP START */
.about-layout{
  display:grid;
  grid-template-columns:minmax(320px, 0.85fr) minmax(420px, 1.15fr);
  gap:4.5rem;
  align-items:start;
}
.about-layout .image-frame{
  width:100%;
  min-width:0;
}
.about-layout .image-frame::before{
  inset:24px -24px -24px 24px;
}
.about-layout .image-frame img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  background:#efe7df;
}
.about-layout .content{
  min-width:0;
  position:relative;
  z-index:2;
}
.about-layout .content h2,
.about-layout .content p{
  position:relative;
  z-index:2;
  margin-right:0;
}
.about-layout .section-image-strip.about-strip{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1.25rem;
  margin-top:1rem;
  clear:both;
}
.about-layout .section-image-strip.about-strip figure{
  margin:0;
  background:#fff;
  box-shadow:0 12px 32px rgba(53,39,31,.08);
}
.about-layout .section-image-strip.about-strip img{
  width:100%;
  height:340px;
  object-fit:contain;
  display:block;
  background:#efe7df;
}
.about-layout .section-image-strip.about-strip figcaption{
  padding:1rem 1.1rem;
  font-size:.92rem;
  line-height:1.55;
  color:#4d433c;
}
@media(max-width:900px){
  .about-layout{
    grid-template-columns:1fr;
    gap:2.5rem;
  }
  .about-layout .image-frame{
    max-width:620px;
    margin:0 auto;
  }
  .about-layout .section-image-strip.about-strip{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:560px){
  .about-layout .section-image-strip.about-strip{
    grid-template-columns:1fr;
  }
  .about-layout .section-image-strip.about-strip img{
    height:auto;
    max-height:520px;
  }
}
/* ABOUT NO OVERLAP END */
