.studio-opening{padding:78px 8% 80px;display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center}.studio-opening h1{font-size:clamp(3.8rem,6.8vw,6.8rem);margin-bottom:30px}.studio-opening p{color:var(--muted)}.studio-opening .studio-lead{color:var(--paper);font-size:1.2rem}.studio-opening .studio-invitation{font-family:Georgia,serif;color:var(--gold);font-size:1.4rem;margin-top:30px;margin-bottom:0}.studio-page figure{margin:0}.studio-opening-photo img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover;object-position:center}.studio-page figcaption{color:var(--muted);font-size:13px;margin-top:12px;letter-spacing:.05em}.studio-services{padding:70px 8% 80px;border-top:1px solid var(--line)}.studio-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.studio-service-grid article{border-top:1px solid var(--line);padding-top:23px}.service-index{font-family:Georgia,serif;font-size:18px;color:var(--gold)}.studio-service-grid h2{font-size:clamp(2rem,3vw,3rem);margin:24px 0}.studio-service-grid p{color:var(--muted);line-height:1.9;margin-bottom:0}.studio-photo-story{padding:0 8% 85px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.studio-photo-story img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}.studio-pricing{padding:75px 8%;background:var(--paper);color:var(--espresso);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.studio-pricing .eyebrow{color:var(--clay)}.studio-pricing h2{font-size:clamp(2.6rem,4.8vw,4.5rem);margin-bottom:0}.studio-rate{font-family:Georgia,serif;font-size:clamp(4rem,7vw,6rem);line-height:1.1;margin:0 0 25px}.studio-rate span{font-family:Arial,sans-serif;font-size:1.2rem;margin-left:8px}.studio-block{font-size:1.2rem;padding-bottom:24px;border-bottom:1px solid #3d2a1f40}.studio-block strong{font-weight:500}.studio-pricing-content p:last-child{margin-bottom:0}.studio-addons{padding:85px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.studio-addons h2{font-size:clamp(2.7rem,4.8vw,4.6rem)}.studio-production-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin-top:35px}.studio-addon-details dl{margin:0 0 35px}.studio-addon-details dl>div{border-top:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}.studio-addon-details dl>div:last-child{border-bottom:1px solid var(--line)}.studio-addon-details dt{font-size:1.05rem;max-width:240px}.studio-addon-details dd{margin:0;color:var(--gold);font-family:Georgia,serif;font-size:2rem;white-space:nowrap}.studio-addon-details dd span{display:block;font-family:Arial,sans-serif;font-size:13px;color:var(--muted)}.studio-addon-details p{color:var(--muted)}.studio-addon-details strong{color:var(--paper);font-weight:500}@media(max-width:1000px){.studio-opening{gap:5%;padding:60px 7%}.studio-opening h1{font-size:4.4rem}.studio-service-grid{gap:24px}.studio-addon-details dl>div{align-items:start;flex-direction:column;gap:10px}.studio-addon-details dd span{display:inline;margin-left:4px}}@media(max-width:750px){.studio-opening,.studio-pricing,.studio-addons{grid-template-columns:1fr;gap:38px}.studio-opening{padding-bottom:55px}.studio-opening h1{font-size:clamp(3.6rem,11vw,5rem)}.studio-opening-photo img{aspect-ratio:4/3}.studio-service-grid{grid-template-columns:1fr;gap:32px}.studio-service-grid h2 br{display:none}.studio-service-grid h2{margin:15px 0;font-size:2.3rem}.studio-services,.studio-pricing,.studio-addons{padding:55px 7%}.studio-photo-story{padding:0 7% 55px;gap:14px}.studio-photo-story figcaption{font-size:12px;letter-spacing:0}.studio-addons h2 br{display:none}.studio-addons h2{font-size:2.8rem}.studio-addon-details dl>div{flex-direction:row}.studio-addon-details dd span{display:block;margin-left:0}.studio-pricing h2 br{display:none}}@media(max-width:420px){.studio-photo-story{grid-template-columns:1fr 1fr}.studio-photo-story figure:last-child{grid-column:1/-1}.studio-photo-story figure:last-child img{aspect-ratio:3/2;object-position:50% 40%}.studio-addon-details dt{font-size:1rem}.studio-addon-details dd{font-size:1.8rem}.studio-addon-details dl>div{gap:12px}.studio-invitation{max-width:260px}}

/* Targeted Studio photo placement: retain the full subjects at every width. */
.studio-opening-photo img{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center}
.studio-page .studio-environment-photo{margin:0 8% 60px}
.studio-environment-photo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:750px){.studio-page .studio-environment-photo{margin:0 7% 38px}.studio-opening-photo img{aspect-ratio:auto;height:auto}}

/* Phone-only sizing: preserve the complete instrument and contain grid text. */
@media(max-width:540px){
  .studio-opening,.studio-pricing,.studio-addons{grid-template-columns:minmax(0,1fr)}
  .studio-opening>*,.studio-pricing>*,.studio-addons>*{min-width:0;max-width:100%}
  .studio-photo-story figure:last-child img{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center}
  .studio-addons h2{max-width:100%;font-size:clamp(2.2rem,8.3vw,2.8rem);overflow-wrap:anywhere}
  .studio-addon-details p{max-width:100%;white-space:normal;overflow-wrap:break-word}
  .studio-addon-details dt{min-width:0;overflow-wrap:break-word}
}

@media(max-width:540px){
  .studio-addons .studio-addons-title{font-size:clamp(1.35rem,6.7vw,2.25rem);overflow-wrap:normal}
  .studio-addons-title>span{display:block;white-space:nowrap}
  .studio-addons-title br{display:none}
}

.service-mobile-space{display:none}
@media(max-width:540px){
  .studio-service-grid .service-mobile-space{display:inline;white-space:pre}
}

.pricing-mobile-space{display:none}
@media(max-width:540px){
  .studio-pricing-title .pricing-title-line{display:block;white-space:nowrap}
  .studio-pricing-title .pricing-mobile-space{display:inline;white-space:pre}
}

/* A quiet amenity note within the existing pricing area. */
.studio-refreshments{margin-top:30px;padding-top:24px;border-top:1px solid #3d2a1f40}
.studio-refreshments h3{font-size:1.45rem;line-height:1.2;color:var(--espresso);margin:0 0 14px}
.studio-refreshments p{font-size:1rem;line-height:1.65;margin:0 0 12px}
.studio-refreshments .studio-refreshments-note{font-size:.875rem;margin-bottom:0;color:var(--clay)}

.studio-book-session{margin-top:26px}
.studio-book-session .button{margin-top:0;color:var(--espresso);background:var(--brass)}
.studio-book-session .button:hover{background:var(--espresso);color:var(--paper)}
.studio-book-session p{font-size:.875rem;line-height:1.65;margin:16px 0 0;max-width:440px}
.studio-early-session,.studio-book-session .button{max-width:100%;text-align:center;white-space:normal}
.studio-opening .studio-early-session{margin-top:26px}
.studio-book-session .studio-session-email{margin-top:10px}
.studio-session-email a{text-decoration:underline;text-underline-offset:3px}
.studio-plug-play{padding:60px 8%;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.studio-plug-play h2{font-size:clamp(2.6rem,4.8vw,4.5rem);color:var(--gold);margin-bottom:0}
.studio-plug-play p{color:var(--muted)}
.studio-plug-play p:last-child{margin-bottom:0;color:var(--paper)}
@media(max-width:750px){.studio-plug-play{padding:55px 7%;grid-template-columns:minmax(0,1fr);gap:30px}}
