/* Reference-matched room detail layout, scoped to category detail pages. */
.room-page-layout217{width:calc(100vw - 48px)!important;max-width:1240px!important;margin:0 auto!important;padding-top:38px!important;box-sizing:border-box!important}
.room-heading217{text-align:center;max-width:920px;margin:0 auto 30px}
.room-heading217 h1{margin:0 0 12px!important;color:#164f49!important;font-family:var(--display-font,'Oswald',sans-serif)!important;font-size:clamp(30px,3.2vw,42px)!important;font-weight:600!important;line-height:1.12!important;letter-spacing:.01em!important;text-transform:uppercase!important}
.room-heading217 p{margin:0 auto!important;max-width:760px!important;color:#3d4140!important;font-size:clamp(18px,1.55vw,23px)!important;line-height:1.3!important}
.room-search217{display:grid;grid-template-columns:1.05fr 1fr 1fr 1.05fr;align-items:center;gap:0;width:min(100%,1060px);min-height:78px;margin:38px auto 46px!important;padding:12px 18px;background:#fff;box-shadow:0 9px 28px rgba(28,53,48,.08);box-sizing:border-box}
.room-search-field217{position:relative;display:flex;align-items:center;gap:12px;min-width:0;min-height:44px;padding:0 14px;border-right:1px solid #d6ddda;color:#3c4140}
.room-search-field217 svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.room-search-field217 select,.room-search-field217 input{width:100%;min-width:0;min-height:42px;padding:8px 4px;border:0;border-radius:0;background:transparent;color:#424745;font:inherit;font-size:14px;outline-offset:2px}
.room-search-field217 input[type=date]{font-size:13px}
.room-search-field217 select{cursor:pointer}
.room-search217 .guest106 summary{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;list-style:none;cursor:pointer;color:#3c4140;font-size:14px}
.room-search217 .guest106 summary::-webkit-details-marker{display:none}
.room-search217 .guest106-panel{position:absolute;z-index:8;top:calc(100% + 8px);left:0;min-width:270px;padding:14px;background:#fff;box-shadow:0 8px 28px #183b3530;border:1px solid #d6ddda;border-radius:8px}
.room-search217 .guest106-panel label{display:grid;grid-template-columns:1fr 86px;gap:14px;align-items:center;font-size:15px}
.room-search217 .guest106-panel select{min-height:40px;border:1px solid #c6d6d2;border-radius:4px;background:#fff;padding:6px}
.room-search217 .date108>input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;min-height:0;padding:0;border:0}
.room-search217 .date108:focus-within{outline:2px solid #668f83;outline-offset:-2px;border-radius:4px}
.room-search-submit217{justify-self:stretch;margin-left:18px!important;min-height:48px!important;padding:12px 20px!important;border-radius:4px!important;background:#164f49!important;color:#fff!important;font-size:14px!important;font-weight:600!important;white-space:nowrap!important}
.room-search217 .search-error:empty{display:none}
.room-detail-page89 .room-slider89{width:100%;max-width:none!important;margin:0 auto 34px!important}
.room-detail-page89 .room-slider89.room-mosaic89{position:relative!important;display:grid!important;grid-template-columns:1.55fr .75fr 1fr!important;grid-template-rows:clamp(270px,32vw,390px)!important;gap:4px!important;width:100%!important;aspect-ratio:auto!important;overflow:hidden!important;border-radius:0!important;background:transparent!important}
.room-detail-page89 .room-mosaic89 .room-slide89[data-room-photo]{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;overflow:hidden!important;opacity:1!important;visibility:visible!important;transform:none!important}
.room-detail-page89 .room-mosaic89 .room-slide89[data-room-photo][hidden]{display:none!important}
.room-detail-page89 .room-mosaic89 .room-slide89 img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;margin:0!important}
.room-detail-page89 .room-mosaic89 .room-slide-controls89{position:absolute!important;z-index:4!important;inset:0!important;width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 12px!important;pointer-events:none!important;background:transparent!important}
.room-detail-page89 .room-mosaic89 .room-slide-controls89 button{pointer-events:auto!important;width:48px!important;height:56px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:42px!important;text-shadow:0 2px 8px #0008!important}
.room-detail-page89 .room-mosaic89 [data-room-count]{pointer-events:none!important;position:absolute!important;left:50%!important;bottom:14px!important;transform:translateX(-50%)!important;padding:5px 10px!important;border-radius:20px!important;background:#0008!important;color:#fff!important;font-size:13px!important}
.room-info-card89{border:1px solid #d7e2df;border-radius:14px;padding:clamp(24px,3vw,48px);margin:28px 0 0;background:#fff;color:#3d4140}
.room-info-card89 h2{margin:0 0 12px;color:#004c46;font-family:var(--display-font,'Oswald',sans-serif);font-size:clamp(26px,2.35vw,42px);line-height:1.12;text-transform:uppercase}
.room-info-intro89{margin:0 0 30px;color:#59605e;font-size:clamp(16px,1.2vw,21px);line-height:1.45}
.room-detail-page89 .room-info-grid89{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(30px,5vw,64px);align-items:start}
.room-detail-page89 .room-facts89{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0}
.room-detail-page89 .room-fact89{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start;font-size:17px;line-height:1.25}
.room-detail-page89 .room-fact89>svg{display:block;width:30px;height:30px;fill:none;stroke:#164f49;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.room-detail-page89 .room-fact89 strong,.room-detail-page89 .room-fact89 span{display:block}
.room-detail-page89 .room-fact89 strong{margin:2px 0 7px}
.room-rules-card89{margin-top:34px}
.room-rules-card89 h3,.room-amenities89 h3{margin:0 0 16px;color:#164f49;font-size:23px;font-weight:700;line-height:1.2}
.room-rules-card89 ul{list-style:none;margin:0;padding:0;font-size:16px;line-height:1.5}
.room-rules-card89 li{margin:0 0 8px}
.room-rules-card89 p{margin:18px 0 0;color:#164f49;font-size:16px}
.room-rules-card89 a{color:#164f49}
.room-amenity-list89{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.room-amenity-list89 li{display:inline-flex;align-items:center;min-height:38px;padding:6px 11px;border:1px solid #d2dfdc;border-radius:9px;color:#164f49;background:#fff;font-size:15px;line-height:1.15}
.room-next89{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:42px 0 16px}
.room-next89 h2{flex-basis:100%;margin:0 0 8px}
.room-next89 .button{margin:0}
.room-search217 .guest106 summary i,.room-search217 .chevron108{width:10px;height:10px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-left:auto;position:relative;top:-3px;flex:0 0 10px;font-size:0;font-style:normal}
@media(max-width:760px){.room-page-layout217{width:calc(100vw - 32px)!important;padding-top:26px!important}.room-heading217{margin-bottom:22px}.room-heading217 h1{font-size:clamp(28px,7vw,36px)!important}.room-heading217 p{font-size:17px!important;line-height:1.35!important}.room-search217{grid-template-columns:1fr 1fr;gap:8px;margin:26px auto 30px!important;padding:12px;min-height:0}.room-search-field217{padding:2px 8px;border-right:0;border-bottom:1px solid #d6ddda}.room-search-submit217{grid-column:1/-1;margin:4px 0 0!important}.room-detail-page89 .room-info-grid89{grid-template-columns:1fr;gap:26px}.room-detail-page89 .room-facts89{gap:16px}.room-detail-page89 .room-fact89{grid-template-columns:28px minmax(0,1fr);gap:8px;font-size:15px}.room-detail-page89 .room-fact89>svg{width:26px;height:26px}.room-rules-card89 h3,.room-amenities89 h3{font-size:20px}.room-amenity-list89{gap:7px}.room-amenity-list89 li{font-size:14px;min-height:36px;padding:5px 9px}}
@media(max-width:760px){.room-detail-page89 .room-slider89.room-mosaic89{grid-template-columns:1fr!important;grid-template-rows:auto!important;aspect-ratio:16/10!important;gap:0!important}.room-detail-page89 .room-mosaic89 .room-slide89[data-room-photo]{grid-area:1/1!important;aspect-ratio:16/10!important}.room-detail-page89 .room-mosaic89 .room-slide89 img{aspect-ratio:16/10!important;object-fit:cover!important}}
@media(max-width:460px){.room-search217{grid-template-columns:1fr}.room-search-submit217{grid-column:1}.room-detail-page89 .room-facts89{grid-template-columns:1fr}.room-info-card89{padding:22px 18px;margin-top:22px}}
