/* Sigma Club V4: route composition only. Component rules belong elsewhere. */

/* Split section: content sizes only. Composition is .v4-split in sigma-layout.css. */
body.v4-room-page .lp-hero{--v4-split-media:360px}

@media(min-width:768px) and (width < 1024px){
  body.pg-master .mp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--v4-gap)}
  body.pg-master .mp-gallery{width:min(100%,520px);aspect-ratio:4/5;margin-inline:auto;border-radius:var(--r-card)}
  body.pg-master .mp-side{position:static;margin-top:0;gap:var(--v4-gap)}
  body.pg-master .mp-side>.mp-card:first-child{border:1px solid var(--line);border-radius:var(--r-card)}
  body.pg-master .mp-grid>#programs{margin-top:0}
  /* M08: «О себе» больше не потомок .mp-side, поэтому её нулевой отступ
     объявлен здесь явно, а не наследуется от .mp-side .mp-panel. Разрыв
     между «Программы и цены» и «О себе» по-прежнему один — gap .mp-grid. */
  body.pg-master .mp-about-section{max-width:var(--v4-measure);margin-top:0}
  body.pg-master .mp-where{max-width:var(--v4-measure)}
}

@media(min-width:1024px){
  body.pg-massage .dv2-hero{display:block;max-width:var(--v4-measure)}
  body.pg-massage .dv2-hero-copy{max-width:var(--v4-measure)}

  /* Owner-approved V7 internal composition, 2026-09-08: gallery and summary in the first row, programs in their own full-width row. Actual DOM children; no display:contents. */
  body.pg-master .mp-grid{
    display:grid;
    grid-template-columns:minmax(320px,400px) minmax(0,1fr);
    grid-template-rows:auto auto auto;
    grid-template-areas:'gallery side' 'programs programs' 'about about';
    gap:40px;
    align-items:center;
  }
  body.pg-master .mp-gallery{aspect-ratio:4/5}
  body.pg-master .mp-gallery{border-radius:var(--r-card)}
  body.pg-master .mp-gallery .cslide img,
  body.pg-master .mp-gallery .cslide .cvid{object-position:50% 18%}
  body.pg-master .mp-media{grid-area:gallery}
  body.pg-master .mp-side{grid-area:side}
  body.pg-master .mp-side>.mp-card:first-child{background:none;border:0;border-radius:0;padding:0;max-width:640px}
  body.pg-master .mp-about-section{grid-area:about;margin-top:0;max-width:720px;justify-self:start}
  body.pg-master .mp-about-more-body{columns:2;column-gap:48px}
  body.pg-master .mp-about-more-body>*{break-inside:avoid}
  body.pg-master .mp-where{max-width:var(--v4-measure)}
  body.pg-master .mp-others-card{max-width:none;background:none;border:0;padding:0}
  body.pg-master .mp-others.v4-master-grid{overflow:visible;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
  body.pg-master .mp-others .master-card__media img{object-position:50% 18%}
  body.v4-room-page .lp-hero-copy{align-self:center;max-width:65ch}
  body.v4-room-page .h1-loft{font-size:clamp(36px,calc(5vw - 28px),44px);line-height:1.18;letter-spacing:-.025em;margin-block:clamp(16px,calc(2.5vw - 16px),20px)}
  body.v4-room-page .lp-hero-copy .lead{font-size:clamp(16px,calc(.625vw + 8px),17px);line-height:1.7}
  body.v4-room-page .lp-price{margin-block:24px}
  body.pg-master .mp-h1{font-size:40px;line-height:1.2;letter-spacing:-.025em}
  body.pg-master .mp-pos{font-size:17px;line-height:1.7;margin-block:20px;max-width:52ch}
  body.pg-master .mp-cta{flex-direction:row;flex-wrap:wrap;margin-top:24px}
  body.pg-master #programs{grid-area:programs;margin:0;padding:28px}
  body.pg-master .p-acc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
  body.pg-master .p-cat{border-top:0}
  body.pg-master .mp-others .master-card{width:auto;max-width:none;min-width:0}
}

@media(min-width:768px) and (width < 1024px){
  body.v4-room-page .lp-gal{width:min(100%,640px);margin-inline:auto}
  body.v4-room-page .lp-specs-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.v4-room-page .room-practice-featured,
  body.v4-room-page .inc-acc,
  body.v4-room-page .room-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.v4-room-page .inc-acc>.inc-shared-note{grid-column:1/-1}
  body.v4-room-page .room-facts .room-fact:last-child{grid-column:1/-1}
}

@media(min-width:1024px){
  body.v4-room-page .lp-hero{--v4-split-media-h:520px}
  body.v4-room-page .room-gallery,
  body.v4-room-page .room-gallery>figure{height:100%}
  body.v4-room-page .room-gallery>figure{aspect-ratio:auto}
  body.v4-room-page .lp-specs-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.v4-room-page .room-practice-featured,
  body.v4-room-page .room-practice-more-body,
  body.v4-room-page .inc-acc{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--v4-gap);align-items:start}
  body.v4-room-page .inc-acc>.inc-shared-note{grid-column:1/-1}
  body.v4-room-page .room-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--v4-gap)}
  body.v4-room-page .room-facts .room-fact:last-child{grid-column:auto}
  body.v4-room-page .room-question-body .faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--v4-gap);align-items:start}
  body.v4-room-page .room-final-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:center}
  body.v4-room-page .room-final-cta .btn{margin-top:0}
  body.v4-room-page .room-next-links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
  body.v4-room-page .room-next-links a{border-bottom:0}
  body.v4-room-page .room-next-links a+a{padding-left:32px;border-left:1px solid var(--line)}
}
