/* Studio Info extends the shared Lab typography and navigation. */
.studio-page .recovery-hero{background:var(--sky)}
.studio-page .hero-media{max-width:510px}
.studio-page .hero-media>img{aspect-ratio:4/5;max-height:540px;box-shadow:10px 10px 0 var(--lilac)}
.studio-value-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 7vw;max-width:1250px;margin:auto}
.studio-value-grid article{border-top:2px solid var(--ink);padding-top:24px}
.studio-page h3{font-size:clamp(24px,2.4vw,32px);line-height:1.15;margin:14px 0 18px}
.studio-page p{line-height:1.65}.studio-page .kicker{line-height:1.4}
.studio-labs{background:var(--lilac)}
.studio-lab-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1300px;margin:auto}
.studio-lab-grid article{display:flex;flex-direction:column;align-items:flex-start;background:var(--cream);border:2px solid var(--ink);border-radius:24px;padding:28px}
.studio-lab-grid article:nth-child(2){background:var(--sky)}.studio-lab-grid article:nth-child(3){background:var(--lime)}
.studio-lab-grid p{margin-bottom:28px}.studio-lab-grid .button{margin-top:auto}
.community-intro{max-width:700px;font-size:20px;margin:0 auto 36px}
.community-visuals{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:1200px;margin:auto;align-items:center}
.community-visuals img{display:block;width:100%;border:2px solid var(--ink);border-radius:26px;object-fit:cover}
.community-visuals .community-photo{aspect-ratio:4/5;object-position:center 48%}.community-poster{max-width:500px;justify-self:center}
.studio-visit{background:var(--lime)}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;max-width:1250px;margin:auto}.visit-grid .button{margin-top:20px}
@media(max-width:860px){.studio-lab-grid{grid-template-columns:1fr}.studio-value-grid,.visit-grid{gap:30px}.community-visuals{gap:20px}}
@media(max-width:600px){.studio-value-grid,.visit-grid,.community-visuals{grid-template-columns:1fr}.studio-page .hero-media>img{max-height:420px}.studio-page .hero-sticker{right:0}.community-intro{font-size:18px}}

.studio-page .studio-labs {background:#c8b8ff}

/* Preserve the complete photos instead of stretching HTML image heights. */
.studio-page .hero-media>img{height:auto;min-height:0;aspect-ratio:1080/1348;object-fit:contain}
.community-visuals img{height:auto}
.community-visuals .community-photo{aspect-ratio:1334/2000}
@media(max-width:600px){
 .studio-page .hero-media{max-width:336px}
 .studio-page .hero-media>img{max-height:none}
 .studio-page .hero-sticker{font-size:16px;padding:12px 16px}
}

/* Ella gets her own space, with the original portrait fully visible. */
.studio-ella{background:var(--sky)}
.studio-ella-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7vw;align-items:center;max-width:1250px;margin:auto}
.studio-ella figure{margin:0;max-width:390px;width:100%;justify-self:center}
.studio-ella img{display:block;width:100%;height:auto;border:2px solid var(--ink);border-radius:26px}
.studio-ella-copy p{font-size:19px;max-width:570px}
.studio-ella-copy .kicker{font-size:16px}
.studio-ella-copy .ella-lead{font-size:23px;font-weight:500;margin-top:24px}
@media(max-width:700px){.studio-ella-grid{grid-template-columns:minmax(0,1fr);gap:32px}.studio-ella figure{max-width:300px}.studio-ella-copy p{font-size:18px}}

/* Closer photo framing keeps portrait sections in proportion to the copy. */
.studio-page .studio-ella-grid{gap:clamp(28px,4vw,58px)}
.studio-page .studio-ella img{aspect-ratio:1;object-fit:cover;object-position:center 60%}
.studio-page .studio-ella-copy .ella-lead{margin-top:20px}
.studio-page .community-visuals .community-photo{height:clamp(320px,36vw,480px);aspect-ratio:auto;object-fit:cover;object-position:center 65%}
.studio-page .hero-media>img{height:auto;aspect-ratio:4/5;max-height:460px;object-fit:cover;object-position:center 55%}
@media(max-width:600px){
 .studio-page .community-visuals .community-photo{height:auto;aspect-ratio:4/5}
 .studio-page .studio-ella-grid{gap:24px}
}
