@layer site{.room-detail>*+*{margin-top:clamp(48px,6vw,96px)}.room-detail-title{justify-items:start;gap:20px;padding-top:clamp(32px,5vw,72px);display:grid}.room-detail>.room-detail-title{margin-top:0}.room-detail>.room-detail-title+*{margin-top:clamp(24px,3vw,48px)}.room-detail-grid>*{border-top:1px solid var(--color-rule)}.room-detail-grid>.cell-solid{border-color:var(--color-fill)}.room-detail-photo{grid-area:span 2/span 4;min-height:0}.room-detail-photo img{object-fit:cover}.room-detail-grid>.cell,.room-detail-closing>.cell{grid-column:span 2}.room-detail-terms{justify-content:center}.room-detail-links{justify-content:center;align-items:flex-start;gap:8px}.room-detail-links .text-link{margin-top:8px}.room-detail-closing{border-block:1px solid var(--color-rule)}.room-detail-closing .button{align-self:stretch}.room-detail-text{border-top:1px solid var(--color-rule);grid-auto-rows:auto}.room-detail-text>h2{padding:var(--cell-pad);grid-column:1/-1}.room-detail-views{flex-wrap:wrap;column-gap:.3em;display:flex}.room-detail-view{max-width:100%;display:inline-block}.room-detail-body{padding:0 var(--cell-pad) var(--cell-pad);font-size:var(--text-body);grid-column:1/-1;line-height:1.6}.room-detail-body p{max-width:62ch}.room-detail-body p+p{margin-top:12px}.room-detail-body ul{gap:6px;max-width:62ch;margin-top:10px;padding-left:1.2em;list-style:outside;display:grid}.room-detail-body h3{margin-top:28px}.room-detail-body>.text-link{margin-top:20px}.room-detail-others .room-detail-body{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:4px 24px;display:grid}.room-detail-others li{justify-items:start;gap:2px;padding-bottom:12px;display:grid}.room-detail-facilities summary{cursor:pointer;border-bottom:1px solid;align-items:center;gap:10px;min-height:44px;list-style:none;display:inline-flex}.room-detail-facilities summary::-webkit-details-marker{display:none}.room-detail-facilities summary svg{width:20px;height:20px}.room-detail-facilities details[open] summary svg{transform:rotate(180deg)}.room-detail-facilities summary:hover{color:var(--color-ink-soft)}.room-detail-facility-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:28px;display:grid}.room-detail-facility-columns h3{margin:0 0 12px}@media (min-width:1024px){.room-detail-photo{grid-area:1/1/3/4}.room-detail-grid>.cell{border-left:1px solid var(--color-rule);grid-column:span 1}.room-detail-grid>.cell-solid{border-left-color:var(--color-fill)}.room-detail-grid>.room-detail-terms,.room-detail-closing>.room-detail-terms{border-left:0;grid-column:1/4}.room-detail-grid>.room-detail-links,.room-detail-closing>.room-detail-links{grid-column:4/-1}.room-detail-closing>.room-detail-links{border-left:1px solid var(--color-rule)}.room-detail-text>h2{grid-column:1/3}.room-detail-body{padding:var(--cell-pad);border-left:1px solid var(--color-rule);grid-column:3/-1}}@media (max-width:1023px){.room-detail-grid{grid-auto-rows:auto}.room-detail-photo{aspect-ratio:2;grid-row:auto}.room-detail-facility-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.room-detail-photo{aspect-ratio:4/3;grid-column:1/-1}.room-detail-grid>.cell{grid-column:span 1}:is(.room-detail-grid>.cell:has(.room-detail-views),.room-detail-grid>.room-detail-booking-cell,.room-detail-grid>.room-detail-terms,.room-detail-grid>.room-detail-links,.room-detail-closing>.cell){grid-column:1/-1}.room-detail-facility-columns{grid-template-columns:minmax(0,1fr);gap:28px}}.booking-facts{font-size:var(--text-small);gap:8px;line-height:1.4;display:grid}.booking-facts li{align-items:flex-start;gap:10px;display:flex}.booking-facts svg{stroke-width:2.2px;width:18px;height:18px;color:var(--color-accent);flex:0 0 18px;margin-top:2px}}
