/* =========================================================
   Studio pages — editorial redesign based on newtoyoga.html
   ========================================================= */
.content-hero-v28--studio {
  position: relative;
  min-height: clamp(520px, 72vh, 760px);
  display: flex;
  align-items: center;
  color: #fff;
  background: #6e665d url('../images/photography/studio.jpg') center center / cover no-repeat;
}
.content-hero-v28--studio .content-hero-v28__inner { position: relative; z-index: 1; width: 100%; }
.content-hero-v28--studio .content-hero-v28__copy { max-width: 760px; padding-top: 5rem; }
.content-hero-v28--studio h1 { margin: .5rem 0 1rem; color: #fff; font-size: clamp(4rem, 9vw, 8.5rem); line-height: .92; }
.content-hero-v28--studio .eyebrow,
.content-hero-v28--studio .content-hero-v28__lead { color: #fff; }
.content-hero-v28__lead { max-width: 620px; margin: 0; font-size: clamp(1.15rem, 2vw, 1.5rem); line-height: 1.5; }
.studio-editorial-main .section { padding: clamp(5rem, 9vw, 8.5rem) 0; }
.studio-intro-section { padding-top: clamp(4rem, 7vw, 6.5rem) !important; }
.studio-intro-grid,
.studio-practice-grid,
.studio-story-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.studio-intro-grid h2,
.studio-practice-grid h2,
.studio-story-grid h2 { margin: .75rem 0 0; font-size: clamp(2.5rem, 5vw, 4.8rem); line-height: 1.03; }
.studio-intro-grid__copy,
.studio-practice-grid > div:last-child,
.studio-story-grid > div:last-child { max-width: 720px; font-size: 1.08rem; line-height: 1.8; }
.studio-lead { font-size: clamp(1.25rem, 2vw, 1.55rem); line-height: 1.65; }
.editorial-link { display: inline-flex; gap: .7rem; align-items: center; margin-top: 1.25rem; font-weight: 600; text-decoration: none; }
.section--soft { background: #eee9e2; }
.studio-values-section .section-heading { max-width: 880px; margin-bottom: clamp(3rem, 6vw, 5rem); }
.studio-values-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: rgba(43,34,28,.16); }
.studio-values-grid article { min-height: 320px; padding: clamp(2rem,4vw,3.5rem); background: #eee9e2; }
.studio-values-grid article > span { display: block; margin-bottom: 3rem; font-size: .78rem; letter-spacing: .18em; }
.studio-values-grid h3 { margin-bottom: 1.1rem; font-size: clamp(1.65rem,2.7vw,2.25rem); }
.section--dark { color: rgba(255,255,255,.82); background: #28231f; }
.section--dark h2, .section--dark h3, .section--dark strong, .section--dark a, .section--dark .eyebrow { color: #fff; }
.studio-story-section address { margin-top: 2rem; font-style: normal; line-height: 1.75; }
.studio-gallery-section { overflow: hidden; background: #f7f4ef; }
.studio-polaroid-wall { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(1.1rem,2.3vw,2rem); padding: clamp(2rem,4vw,4rem) 1rem clamp(3rem,6vw,6rem); }
.studio-polaroid-wall__item { position: relative; display: block; padding: clamp(.55rem,1vw,.9rem) clamp(.55rem,1vw,.9rem) clamp(1.5rem,2.5vw,2.4rem); background: #fff; box-shadow: 0 18px 38px rgba(37,29,24,.16); transform-origin: 50% 50%; transition: transform .25s ease, box-shadow .25s ease; }
.studio-polaroid-wall__item img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.studio-polaroid-wall__item:hover { z-index: 5; transform: rotate(0deg) translateY(-8px) scale(1.025); box-shadow: 0 26px 54px rgba(37,29,24,.22); }
.studio-polaroid-wall__item--1 { transform: rotate(-3deg) translateY(18px); }
.studio-polaroid-wall__item--2 { transform: rotate(2.5deg) translateY(-8px); }
.studio-polaroid-wall__item--3 { transform: rotate(-1.5deg) translateY(26px); }
.studio-polaroid-wall__item--4 { transform: rotate(3.5deg) translateY(3px); }
.studio-polaroid-wall__item--5 { transform: rotate(2deg) translateY(-12px); }
.studio-polaroid-wall__item--6 { transform: rotate(-3.5deg) translateY(16px); }
.studio-polaroid-wall__item--7 { transform: rotate(1.2deg) translateY(-2px); }
.studio-polaroid-wall__item--8 { transform: rotate(-2.3deg) translateY(22px); }
.studio-polaroid-wall__item--9 { transform: rotate(3deg) translateY(8px); }
.studio-polaroid-wall__item--10 { transform: rotate(-1deg) translateY(-15px); }
.studio-polaroid-wall__item--11 { transform: rotate(2deg) translateY(18px); }
.studio-polaroid-wall__item--12 { transform: rotate(-3deg) translateY(0); }
@media (max-width: 980px) {
  .studio-intro-grid, .studio-practice-grid, .studio-story-grid { grid-template-columns: 1fr; gap: 2.25rem; }
  .studio-values-grid { grid-template-columns: 1fr; }
  .studio-values-grid article { min-height: 0; }
  .studio-polaroid-wall { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .content-hero-v28--studio { min-height: 560px; background-position: 58% center; }
  .content-hero-v28--studio .content-hero-v28__copy { padding-top: 7rem; }
  .studio-polaroid-wall { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem .55rem; padding-inline: 0; }
  .studio-polaroid-wall__item { padding: .45rem .45rem 1.15rem; }
}

/* =========================================================
   Studio pages v2 — exact newtoyoga header/hero alignment
   ========================================================= */
body[data-page="studio"] .site-header{position:absolute;top:0;left:0;right:0;z-index:50}
.content-hero-v28--studio{
  min-height:clamp(620px,76vh,800px);
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  display:block;
}
.content-hero-v28--studio .content-hero-v28__inner{
  position:relative;z-index:2;
  width:min(100% - 48px,1200px);
  min-height:clamp(620px,76vh,800px);
  margin:0 auto;
  display:flex;align-items:center;
  padding:128px 0 72px;
}
.content-hero-v28--studio .content-hero-v28__copy{max-width:660px;padding:0;margin:0}
.content-hero-v28--studio h1{font-size:clamp(4rem,7.5vw,7.3rem);line-height:.92;letter-spacing:-.05em;margin:.4rem 0 1.25rem}
.content-hero-v28--studio .content-hero-v28__lead{max-width:520px;font-size:clamp(1.05rem,1.7vw,1.35rem)}

.studio-intro-section--maroon{background:#681c25;color:rgba(255,255,255,.88)}
.studio-intro-section--maroon h2,.studio-intro-section--maroon .eyebrow,.studio-intro-section--maroon a{color:#fff}
.studio-intro-feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(3rem,8vw,8rem);align-items:center}
.studio-intro-feature__copy{max-width:680px}
.studio-intro-feature__copy h2{font-size:clamp(2.8rem,5.2vw,5rem);line-height:1.02;margin:.75rem 0 1.75rem}
.studio-mini-polaroids{position:relative;min-height:500px}
.studio-mini-polaroids figure{position:absolute;margin:0;background:#fff;padding:10px 10px 34px;box-shadow:0 24px 56px rgba(18,7,9,.38)}
.studio-mini-polaroids img{display:block;width:100%;height:100%;object-fit:cover}
.studio-mini-polaroids__one{left:0;top:30px;width:68%;height:390px;transform:rotate(-4deg)}
.studio-mini-polaroids__two{right:0;bottom:20px;width:57%;height:330px;transform:rotate(5deg)}

.studio-values-section{background:#e7ddd2}
.studio-values-grid{background:rgba(83,58,48,.18)}
.studio-values-grid article{background:#e7ddd2}
.studio-practice-section{background:#f6f0e8}
.studio-story-section{background:#b9a58f;color:#2e241f}
.studio-story-section h2,.studio-story-section h3,.studio-story-section strong,.studio-story-section a,.studio-story-section .eyebrow{color:#2e241f}
.studio-gallery-section{background:#efe5da}

@media(max-width:900px){
  .studio-intro-feature{grid-template-columns:1fr;gap:2.5rem}
  .studio-mini-polaroids{min-height:460px;max-width:620px;width:100%;margin:0 auto}
}
@media(max-width:600px){
  .content-hero-v28--studio{min-height:650px;background-position:52% center}
  .content-hero-v28--studio .content-hero-v28__inner{width:min(100% - 32px,1200px);min-height:650px;align-items:flex-end;padding:120px 0 54px}
  .studio-mini-polaroids{min-height:390px}
  .studio-mini-polaroids__one{width:74%;height:300px}
  .studio-mini-polaroids__two{width:62%;height:255px}
}

/* =========================================================
   Studio pages v3 — corrective overrides
   ========================================================= */

/* Preserve the normal master-header behaviour and make the scrolled state fixed. */
body[data-page="studio"] .site-header {
  position: absolute !important;
  inset: 0 0 auto !important;
  z-index: 100 !important;
}

body[data-page="studio"] .site-header.is-scrolled {
  position: fixed !important;
  inset: 0 0 auto !important;
  color: var(--ink) !important;
  background: rgba(251, 248, 243, .94) !important;
  box-shadow: 0 1px 0 var(--line) !important;
  backdrop-filter: blur(14px);
}

/* Light editorial hero: cream at the text side, revealing the full image to the right. */
body[data-page="studio"] .content-hero-v28--studio {
  position: relative;
  display: flex !important;
  align-items: center !important;
  min-height: clamp(620px, 76vh, 800px);
  color: var(--ink) !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  overflow: hidden;
}

body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__inner {
  position: relative;
  z-index: 2;
  width: min(calc(100% - (2 * var(--gutter))), 1120px) !important;
  min-height: clamp(620px, 76vh, 800px);
  margin-inline: auto !important;
  padding: 128px 0 72px !important;
  display: flex !important;
  align-items: center !important;
}

body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__copy {
  width: min(640px, 58vw);
  max-width: 640px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body[data-page="studio"] .content-hero-v28--studio h1,
body[data-page="studio"] .content-hero-v28--studio .eyebrow,
body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__lead {
  color: var(--ink) !important;
  text-shadow: none !important;
}

body[data-page="studio"] .content-hero-v28--studio h1 {
  max-width: 12ch;
  font-size: clamp(3.8rem, 7vw, 7rem) !important;
  line-height: .94 !important;
}

body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__lead {
  max-width: 510px;
}

@media (max-width: 900px) {
  body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__copy {
    width: min(620px, 72vw);
  }
}

@media (max-width: 600px) {
  body[data-page="studio"] .content-hero-v28--studio {
    min-height: 650px;
    align-items: flex-end !important;
  }

  body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__inner {
    width: calc(100% - 2.5rem) !important;
    min-height: 650px;
    align-items: flex-end !important;
    padding: 120px 0 54px !important;
  }

  body[data-page="studio"] .content-hero-v28--studio .content-hero-v28__copy {
    width: 100%;
  }
}
