.room-booking{margin-top:35px}.room-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.room-choice{border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;gap:12px;align-items:start;cursor:pointer}.room-choice:has(input:checked){border-color:var(--teal);background:#e2eee7}.room-choice:has(input:disabled){background:#f2f2ef;color:#646b67;cursor:default}.room-choice strong,.room-choice small{display:block;margin-bottom:8px}.room-booking .primary{margin-top:15px}.room-booking a{color:var(--teal);text-decoration:underline}@media(max-width:650px){.room-options{grid-template-columns:1fr}}

#room-request{margin-top:24px}.room-terms{display:flex;gap:10px;align-items:flex-start;margin-top:16px}.room-terms input{margin-top:4px}#room-mail-preview{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}#room-mail-body{width:100%;box-sizing:border-box}.room-booking .room-choice{cursor:default}
@media(max-width:650px) and (orientation:portrait){
 #rombooking{padding:18px 12px}
 .floor-scroll:has(.floor-up){container-type:inline-size;position:relative;aspect-ratio:490/1307;overflow:hidden}
 .floor-scroll .floor-up{position:absolute;left:100%;top:0;width:calc(100cqw * 1307 / 490);min-width:0;transform-origin:0 0;transform:rotate(90deg)}
 .floor-scroll .floor-down{width:100%;min-width:0}
 .floor-room span{font-size:16px}
 .floor-room small{font-size:12px}
}
@media(max-width:950px) and (orientation:landscape){.floor-scroll .floor-up{min-width:0;width:100%}}
.floor-plans{margin:28px 0;padding:24px;background:#f3f6f4;border:1px solid var(--line);border-radius:14px}.floor-plans h3{margin:0 0 12px}.floor-plans h4{font-size:20px;margin:24px 0 10px}.floor-scroll{overflow-x:auto;border:1px solid #ccd8d1;border-radius:10px;background:#fff}.floor-scroll:focus-visible{outline:3px solid var(--teal)}.floor-plan{position:relative}.floor-up{min-width:900px}.floor-down{width:494px;max-width:100%;min-width:340px}.floor-plan img{display:block;width:100%;height:auto}.floor-room{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px;border:3px solid #165d46;border-radius:5px;background:rgba(230,246,234,.93);color:#123b30;cursor:pointer;min-height:44px;font-family:inherit}.floor-room span{font-size:16px;font-weight:750;line-height:1.1}.floor-room small{font-size:13px;line-height:1.1}.floor-room:hover{background:#d1eadb}.floor-room[aria-pressed=true]{background:#165d46;color:#fff;box-shadow:0 0 0 3px #fff}.floor-room:focus-visible{outline:4px solid #e6a526;outline-offset:3px}#floor-selection{font-size:17px;font-weight:600}@media(max-width:650px){.floor-plans{padding:12px}.floor-plans>p{font-size:15px}}
