/* Round 5: collection overview and dedicated accommodation pages.
   Scoped separately so each listing can be reviewed or reverted independently. */
.collection-intro { padding-bottom: var(--s6); text-align: center; }
.collection-intro h2 { max-width: 1050px; margin-inline: auto; font-size: clamp(1.6rem, 2.4vw, 2.5rem); } /* Laura, 19 Sep: smaller, the section ran too long */
.collection-intro__prose { max-width: 790px; margin: var(--s5) auto 0; }
.collection-intro__prose p + p { margin-top: var(--s3); }
.collection-intro__names { max-width: 650px; margin: var(--s5) auto 0; color: var(--ink-soft); font: italic 1.4rem/1.5 var(--accent); }
.collection-houses { padding-bottom: var(--s7); text-align: center; }
.collection-houses .pair { margin-top: var(--s4); }
.collection-category { font-size: clamp(2rem, 3.5vw, 3.5rem); }
.collection-suite-copy { max-width: 780px; margin: 0 auto var(--s6); text-align: center; }
.collection-suite-copy p + p { margin-top: var(--s3); }
#suites .unit__actions { margin-top: var(--s4); }
.collection-studios { text-align: center; }
.pair--studios { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pair--studios .pair__panel { min-height: 480px; padding: var(--s6) 20px; }
.pair--studios .pair__emblem { width: 100px; height: 100px; object-fit: contain; }
.pair--studios .pair__meaning { line-height: 1.6; min-height: 36px; letter-spacing: .1em; }
.pair--studios .pair__name { font-size: 1.75rem; }
.room-masthead { display: grid; grid-template-columns: .88fr 1.12fr; min-height: min(750px, 82vh); }
.room-masthead__copy { display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; padding: var(--s6) var(--gutter); }
.room-back { display: inline-block; font-size: .65rem; text-transform: uppercase; letter-spacing: .18em; text-decoration: none; padding-bottom: 5px; border-bottom: 1px solid var(--hairline); }
.room-emblem { width: clamp(96px, 9vw, 150px); height: clamp(96px, 9vw, 150px); object-fit: contain; margin: var(--s5) auto var(--s4); }
.room-masthead h1 { font-size: clamp(3.2rem, 6.5vw, 7rem); letter-spacing: .14em; margin: 0; padding-left: .14em; }
.room-masthead .eyebrow { margin-bottom: var(--s2); }
.room-meaning { font: italic clamp(1.25rem, 1.9vw, 1.65rem)/1.4 var(--accent); margin: var(--s2) 0 var(--s5); color: var(--ink-soft); }
.room-masthead__image { margin: 0; min-width: 0; position: relative; }
/* pinned to the row, so a portrait photo (BURI's 0232) is cropped to it rather than setting its height */
.room-masthead__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 60%; }
.room-story__grid { display: grid; grid-template-columns: 1fr 1.75fr; gap: clamp(40px, 8vw, 140px); }
.room-summary { border-top: 1px solid var(--hairline); padding-top: var(--s3); }
.room-summary .unit__facts { display: block; margin: var(--s4) 0; }
.room-summary .unit__facts li { display: block; padding: 12px 0; border-bottom: 1px solid var(--shell); font-size: .85rem; }
.room-summary .unit__facts li + li::before { display: none; }
.room-area { font: italic 1.4rem/1.5 var(--accent); }
.room-prose { max-width: 740px; }
.room-prose > p:first-child { font: 400 clamp(1.45rem, 2.2vw, 1.9rem)/1.6 var(--display); }
.room-prose p + p { margin-top: var(--s4); }
.room-included { border-top: 1px solid var(--hairline); margin-top: var(--s5); padding-top: var(--s4); }
.room-included p { font-size: .875rem; }
.room-included .eyebrow { font-size: .65rem; }
.room-wellness { text-align: center; border-block: 1px solid var(--hairline); padding-block: var(--s6); }
.room-wellness h2 { font-size: clamp(1.75rem, 3vw, 3rem); }
.room-wellness > p:not(.eyebrow) { max-width: 640px; margin: var(--s3) auto 0; }
.room-wellness__pair { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s3); max-width: 760px; margin: var(--s5) auto 0; }
.room-wellness__pair figure { margin: 0; aspect-ratio: 4 / 5; overflow: hidden; }
.room-wellness__pair img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 560px) { .room-wellness__pair { gap: var(--s2); } }
.room-gallery__heading { margin-bottom: var(--s5); }
.room-reserve { text-align: center; }
.room-reserve .unit__actions { justify-content: center; margin: var(--s4) 0; }
.room-masthead .unit__actions { justify-content: center; }
@media (max-width: 1100px) {
 .pair--studios { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .pair--studios .pair__panel:nth-child(3) { border-left: 0; }
 .pair--studios .pair__panel:nth-child(n+3) { border-top: 1px solid var(--hairline); }
 .room-masthead { min-height: 610px; }
 .room-masthead__copy { padding: var(--s5) var(--s3); }
}
@media (max-width: 700px) {
 .collection-houses { padding-bottom: var(--s6); }
 .pair--studios .pair__panel { min-height: 375px; padding: var(--s4) var(--s2); }
 .pair--studios .pair__panel + .pair__panel { border-top: 0; border-left: 1px solid var(--hairline); }
 .pair--studios .pair__panel:nth-child(3) { border-left: 0; }
 .pair--studios .pair__panel:nth-child(n+3) { border-top: 1px solid var(--hairline); }
 .pair--studios .pair__meaning { font-size: .58rem; min-height: 46px; }
 .pair--studios .pair__emblem { width: 78px; height: 78px; }
 .room-masthead { grid-template-columns: 1fr; min-height: 0; }
 .room-masthead__copy { padding: var(--s5) var(--gutter); }
 .room-emblem { margin-top: var(--s4); }
 .room-masthead__image { height: 58vw; min-height: 260px; max-height: 420px; }
 .room-story__grid { grid-template-columns: 1fr; gap: var(--s5); }
 .room-prose { order: -1; }
 .room-wellness { margin-inline: var(--gutter); padding-inline: 0; }
}
@media (prefers-reduced-motion: reduce) {
 .pair__img, .pair__emblem, .pair__body, .pair__meaning, .pair__line, .pair__go { transition: none; }
}

/* Collection overview: one alignment system, independent of room detail pages. */
.collection-intro,.collection-suites,.collection-studios { padding-block:clamp(64px,7vw,112px); }
.collection-houses { padding-bottom:clamp(64px,7vw,112px); }
.collection-intro .eyebrow,.collection-houses > .eyebrow,.collection-studios .eyebrow,
.collection-suites .section-head > .eyebrow { max-width:none; text-align:center; margin-inline:auto; }
.collection-intro h2 { max-width:1000px; text-wrap:balance; }
.collection-intro__prose,.collection-suite-copy { max-width:760px; text-align:left; }
.collection-intro__prose { margin:40px auto 0; }
.collection-intro__prose p,.collection-suite-copy p { max-width:none; }
.collection-intro__prose p+p,.collection-suite-copy p+p { margin-top:24px; }
.collection-intro__names { margin:32px auto 0; }
.collection-houses .pair,.collection-studios .pair { margin-top:40px; }
.collection-suites .section-head { max-width:760px; margin:0 auto 24px; text-align:center; }
.collection-suites .section-head > p:not(.eyebrow) { max-width:none; text-align:left; margin-top:32px!important; }
.collection-suites .collection-suite-copy { margin-bottom:48px; }
.collection-suites h2,.collection-studios h2 { font-size:clamp(2rem,3.5vw,3.5rem); }
.collection-suites .renders__note { max-width:none; text-align:center; }
.collection-suites .cards { gap:48px; }
.collection-suites .card { text-align:center; align-items:center; }
.collection-suites .card p { max-width:44ch; }
.collection-suites .unit__actions { justify-content:center; margin-top:24px; }
.collection-suites .unit__actions .cta { margin-top:0; align-self:center; }
.collection-houses .pair__panel,.collection-studios .pair__panel { min-height:0; padding:56px 24px; }
.collection-houses .pair__body,.collection-studios .pair__body {
 display:grid; grid-template-rows:112px auto 36px 66px auto; gap:16px;
 justify-items:center; align-items:center; width:100%; max-width:36ch;
}
.collection-houses .pair__body > *,.collection-studios .pair__body > * { margin:0; }
.collection-houses .pair__emblem { width:112px; height:112px; object-fit:contain; }
.collection-houses .pair__meaning,.collection-studios .pair__meaning { min-height:0; line-height:1.6; }
.collection-houses .pair__name,.collection-studios .pair__name { padding-left:.16em; }
.collection-houses .pair__go,.collection-studios .pair__go { margin-top:8px; }
.collection-studios .pair__body { grid-template-rows:100px auto 44px 66px auto; }
@media(max-width:700px){
 .collection-intro__prose { margin-top:28px; }
 .collection-houses .pair,.collection-studios .pair { margin-top:28px; }
 .collection-suites .section-head > p:not(.eyebrow) { margin-top:24px!important; }
 .collection-suites .collection-suite-copy { margin-bottom:32px; }
 .collection-suites .cards { gap:40px; }
 .collection-houses .pair__panel { padding:40px 24px; }
 .collection-studios .pair__panel { padding:32px 12px; }
 .collection-studios .pair__body { grid-template-rows:78px auto minmax(52px,auto) minmax(108px,auto) auto; gap:12px; }
 .collection-studios .pair__name { font-size:1.45rem; }
 .collection-studios .pair__line { font-size:1.125rem; }
}

.room-wellness > .eyebrow,.room-reserve .eyebrow { max-width:none; margin-inline:auto; }
.room-prose > p,.room-included > p { max-width:none; }
.collection-houses .pair__line,.collection-studios .pair__line,
.collection-houses .pair__meaning,.collection-studios .pair__meaning { align-self:start; }
