.room-layout-intro-link { display: inline-block; margin-top: 24px; }
.room-layouts { scroll-margin-top: 104px; }
.room-layout-shared { max-width: 960px; margin: 0 0 36px; color: #425c56; line-height: 1.75; }
.room-layout-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px 32px; padding: 0; margin: 0; list-style: none; }
.room-layout-option { min-width: 0; margin: 0; padding-top: 22px; border-top: 1px solid #b9ccc1; }
.room-layout-heading { display: flex; align-items: baseline; gap: 16px; }
.room-layout-heading > div { min-width: 0; }
.room-layout-number { flex: 0 0 auto; color: #8a5517; font-size: 15px; font-weight: 600; }
.room-layout-heading h3 { margin: 0; color: #153b40; font-size: clamp(23px, 2.2vw, 28px); line-height: 1.3; }
.room-layout-size { margin: 10px 0 0; color: #075b61; font-size: 18px; font-weight: 600; line-height: 1.5; }
.room-layout-option > p { margin: 18px 0; color: #425c56; line-height: 1.75; }
.room-layout-preview { display: block; border-radius: 6px; background: #f7f5ef; }
.room-layout-preview img { display: block; width: 100%; height: auto; border-radius: inherit; }
.room-layout-open { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; margin-top: 12px; padding-block: 8px; overflow-wrap: anywhere; }
.room-layout-details { margin-top: 10px; color: #425c56; }
.room-layout-details > summary { width: fit-content; max-width: 100%; min-height: 44px; padding-block: 10px; color: #075b61; font-weight: 600; line-height: 1.5; cursor: pointer; }
.room-layout-details > div p { margin: 12px 0 0; line-height: 1.75; }
.room-layout-details b { color: #153b40; }
.room-layout-next { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 40px; padding-top: 28px; border-top: 1px solid #b9ccc1; }
.room-layout-next p { max-width: 720px; margin: 0; color: #425c56; line-height: 1.75; }
.room-layout-next a { flex-shrink: 0; }
.room-layout-next .secondary-action { color: #075b61; background: #edf3ef; border-color: #66877a; }
.room-layout-next .secondary-action:hover { background: #dceae3; }
.room-planner > .room-layout-return { grid-area: auto; grid-column: 1 / -1; }
.room-layouts :is(a,summary):focus-visible, .room-layout-intro-link:focus-visible { outline: 3px solid #075b61; outline-offset: 4px; }
@media (max-width: 780px) {
  .room-layouts { scroll-margin-top: 90px; }
  .room-layout-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .room-layout-next { align-items: flex-start; flex-direction: column; }
}
@media print {
  .launch-plan-page .room-layouts { display: none !important; }
}
