.sanatorium-public-booking{margin:18px 0;padding:18px;border:1px solid #2d596c;border-radius:18px;background:linear-gradient(135deg,rgba(20,184,166,.12),rgba(37,99,235,.08)),#0c1d28;color:#eef8fb}
.sanatorium-public-booking>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.sanatorium-public-booking>header small{color:#55dfcb;font-weight:900;letter-spacing:.14em}
.sanatorium-public-booking>header h3{margin:4px 0;font-size:22px}
.sanatorium-public-booking>header p{margin:0;color:#9db8c7}
.sanatorium-public-booking>header>i{font-size:38px;color:#55dfcb}
.sanatorium-availability-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) 110px;gap:10px;align-items:end}
.sanatorium-availability-form label,.sanatorium-reservation-fields label{display:grid;gap:6px}
.sanatorium-availability-form label span,.sanatorium-reservation-fields label span{color:#cce0e9;font-size:12px;font-weight:800}
.sanatorium-availability-form input,.sanatorium-reservation-fields input{min-width:0;min-height:44px;padding:0 11px;border:1px solid #365d70;border-radius:11px;background:#081923;color:#fff;color-scheme:dark}
.sanatorium-booking-actions{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,auto);gap:10px;align-items:stretch;margin-top:10px}.sanatorium-booking-actions .sanatorium-search-rooms,.sanatorium-public-reservation>button{min-height:44px;padding:0 15px;border:0;border-radius:11px;background:#168e7f;color:#fff;font-weight:900;cursor:pointer}.sanatorium-booking-actions .sanatorium-search-rooms,.sanatorium-public-reservation>.sanatorium-reserve-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:500;letter-spacing:.035em}.sanatorium-booking-actions .sanatorium-shared-choice{display:block;cursor:pointer}.sanatorium-shared-choice>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sanatorium-shared-choice>span{display:flex;align-items:center;min-height:44px;padding:6px 11px;border:1px solid #365d70;border-radius:11px;background:#102b38;color:#d4e8ef!important;transition:.18s ease}.sanatorium-shared-choice>span::before{content:"";width:18px;height:18px;flex:0 0 18px;margin-right:8px;border:2px solid #6b8b99;border-radius:6px;background:#081923}.sanatorium-shared-choice b,.sanatorium-shared-choice small{display:block}.sanatorium-shared-choice b{font-size:13px}.sanatorium-shared-choice small{margin-top:2px;color:#91acb9;font-size:9px;line-height:1.15}.sanatorium-shared-choice>input:checked+span{border-color:#34d3bd;background:rgba(13,148,136,.25);box-shadow:0 0 0 3px rgba(45,212,191,.1)}.sanatorium-shared-choice>input:checked+span::before{content:"✓";display:grid;place-items:center;border-color:#2dd4bf;background:#0d9488;color:#fff;font-size:12px;font-weight:900}.sanatorium-shared-choice>input:focus-visible+span{outline:3px solid rgba(45,212,191,.28)}
.sanatorium-room-filters{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.7fr) minmax(120px,.65fr) minmax(120px,.65fr) auto;gap:9px;align-items:end;margin-top:12px;padding:12px;border:1px solid #31596d;border-radius:13px;background:rgba(8,25,35,.55)}.sanatorium-room-filters[hidden]{display:none}.sanatorium-room-filters label{display:grid;gap:5px}.sanatorium-room-filters label span{color:#cce0e9;font-size:12px;font-weight:800}.sanatorium-room-filters select,.sanatorium-room-filters input{min-width:0;width:100%;height:42px;padding:0 10px;border:1px solid #365d70;border-radius:10px;background:#081923;color:#fff;font:inherit;color-scheme:dark}.sanatorium-room-filters button{height:42px;padding:0 13px;border:1px solid #477081;border-radius:10px;background:#173342;color:#d8edf3;font-size:12px;font-weight:800;cursor:pointer}
.sanatorium-booking-actions button:disabled,.sanatorium-public-reservation>button:disabled{opacity:.55;cursor:wait}
.sanatorium-availability-results{margin-top:13px}.sanatorium-availability-results>p{margin:0;padding:12px;border:1px dashed #365d70;border-radius:11px;color:#9db8c7;text-align:center}.sanatorium-availability-results>p.empty{color:#ffc2c8}
.sanatorium-available-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.sanatorium-available-room-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center;padding:12px;border:1px solid #31596d;border-radius:13px;background:#102634}
.sanatorium-available-room-grid article>div{display:grid;gap:3px}.sanatorium-available-room-grid article small{color:#9db8c7;font-size:11px}.sanatorium-available-room-grid article>span{padding:5px 8px;border-radius:999px;background:#124b3e;color:#96f2d0;font-size:11px;font-weight:900}.sanatorium-available-room-grid article>strong{display:grid;color:#ffd36b}.sanatorium-available-room-grid article>button{grid-column:2;min-height:36px;padding:0 12px;border:0;border-radius:9px;background:#2874db;color:#fff;font-weight:900;cursor:pointer}
.sanatorium-public-reservation{display:grid;gap:13px;margin-top:14px;padding:15px;border:1px solid #2b8f81;border-radius:14px;background:rgba(10,54,53,.42)}
.sanatorium-selected-room{display:flex;justify-content:space-between;gap:10px}.sanatorium-selected-room span{color:#8ff0da}.sanatorium-reservation-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sanatorium-booking-consent{display:flex;align-items:flex-start;gap:8px;color:#cce0e9;font-size:12px}.sanatorium-booking-consent input{width:19px;height:19px;accent-color:#18b7a0}.sanatorium-booking-success{display:flex;gap:13px;align-items:flex-start}.sanatorium-booking-success>i{font-size:34px;color:#4ce0a3}.sanatorium-booking-success div{display:grid;gap:5px}.sanatorium-booking-success a{justify-self:start;padding:8px 11px;border-radius:9px;background:#2874db;color:#fff;text-decoration:none;font-weight:800}
body.light .sanatorium-public-booking{border-color:#b9d3de;background:linear-gradient(135deg,#eafaf7,#f2f7ff);color:#142b3a}body.light .sanatorium-public-booking>header p,body.light .sanatorium-availability-results>p,body.light .sanatorium-available-room-grid article small{color:#5f7888}body.light .sanatorium-availability-form label span,body.light .sanatorium-reservation-fields label span,body.light .sanatorium-booking-consent,body.light .sanatorium-room-filters label span{color:#29485a}body.light .sanatorium-availability-form input,body.light .sanatorium-reservation-fields input,body.light .sanatorium-room-filters input,body.light .sanatorium-room-filters select{border-color:#bfd2dd;background:#fff;color:#142b3a;color-scheme:light}body.light .sanatorium-shared-choice>span{border-color:#a9c6d2;background:#fff;color:#214252!important}body.light .sanatorium-shared-choice small{color:#66818e}body.light .sanatorium-shared-choice>input:checked+span{border-color:#20aa99;background:#e7faf6}body.light .sanatorium-room-filters{border-color:#bfd2dd;background:rgba(255,255,255,.65)}body.light .sanatorium-room-filters button{border-color:#9cb8c5;background:#e7f1f5;color:#214252}body.light .sanatorium-available-room-grid article{border-color:#c6d9e3;background:#fff}body.light .sanatorium-public-reservation{background:#eefaf7;border-color:#78c9bb}
@media(max-width:900px){.sanatorium-availability-form{grid-template-columns:1fr 1fr}.sanatorium-availability-form label:nth-child(3){grid-column:1/-1}}
@media(max-width:760px){.sanatorium-public-booking{padding:14px}.sanatorium-public-booking>header>i{display:none}.sanatorium-availability-form{grid-template-columns:1fr 1fr}.sanatorium-availability-form label:nth-child(3){grid-column:1/-1}.sanatorium-room-filters{grid-template-columns:1fr 1fr}.sanatorium-room-filters button{grid-column:1/-1}.sanatorium-booking-actions{grid-template-columns:1fr 1fr}.sanatorium-booking-actions .sanatorium-search-rooms{font-size:14px}.sanatorium-available-room-grid{grid-template-columns:1fr}.sanatorium-reservation-fields{grid-template-columns:1fr}.sanatorium-selected-room{flex-direction:column}}
@media(max-width:480px){.sanatorium-booking-actions{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)}.sanatorium-shared-choice>span{padding:6px 8px}.sanatorium-shared-choice b{font-size:12px}.sanatorium-shared-choice small{font-size:8px}.sanatorium-booking-actions .sanatorium-search-rooms{padding:0 9px;font-size:12px;letter-spacing:0}}

.sanatorium-floor-plan{display:grid;gap:12px;margin:14px 0}.sanatorium-floor-plan[hidden]{display:none}.public-floor-plan-level{overflow:hidden;border:1px solid #31596d;border-radius:15px;background:#0b202d}.public-floor-plan-level>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none}.public-floor-plan-level>summary::-webkit-details-marker{display:none}.public-floor-plan-level>summary>span:first-child{display:flex;align-items:center;gap:8px}.public-floor-plan-level>summary small{color:#91acb9}.floor-plan-chevron{color:#54e0ca;font-size:14px;transition:transform .2s ease}.public-floor-plan-level[open]>summary .floor-plan-chevron{transform:rotate(180deg)}.public-floor-plan-canvas{display:grid;gap:8px;padding:10px 12px 14px;border-top:1px solid #284b5d;background:linear-gradient(145deg,#102937,#081923)}.floor-plan-orientation{display:flex;justify-content:flex-end;min-height:38px}.floor-plan-compass{position:relative;display:grid;place-items:center;width:34px;height:34px;margin:1px 3px 0 0;border:1px solid #3f687b;border-radius:50%;color:#5eead4}.floor-plan-compass i{transform:rotate(25deg)}.floor-plan-compass em{position:absolute;right:-2px;top:-7px;color:#f87171;font-size:10px;font-style:normal;font-weight:900}.floor-plan-wing{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.floor-plan-main{display:grid;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);gap:8px;align-items:stretch}.floor-plan-side{display:grid;align-items:stretch;gap:7px}.floor-plan-side-left{grid-template-columns:24px minmax(0,1fr)}.floor-plan-side-right{grid-template-columns:minmax(0,1fr) 24px}.floor-plan-side h5{display:flex;align-items:center;justify-content:center;margin:0;color:#8ba9b7;font-size:9px;letter-spacing:.08em;text-align:center;text-transform:uppercase;writing-mode:vertical-rl}.floor-plan-side-right h5{grid-column:2;grid-row:1}.floor-plan-room-list{display:flex;flex-direction:column;gap:6px}.floor-plan-side-left .floor-plan-room-list{align-items:flex-end}.floor-plan-side-right .floor-plan-room-list{grid-column:1;grid-row:1;align-items:flex-start}.floor-plan-corridor{display:flex;align-items:center;justify-content:space-around;flex-direction:column;min-height:180px;border:1px dashed #527488;border-radius:8px;background:rgba(148,163,184,.08);color:#7896a5}.floor-plan-corridor span{font-size:9px;font-weight:900;letter-spacing:.16em;writing-mode:vertical-rl}.floor-plan-room{position:relative;display:grid;place-content:center;gap:3px;width:clamp(58px,8vw,72px);aspect-ratio:1;padding:6px 4px;border:1px solid #2d6175;border-radius:5px;background:#133244;color:#fff;cursor:pointer;text-align:center}.floor-plan-room b{font-size:11px;line-height:1.05}.floor-plan-room small{font-size:8px;color:#b6ccd6}.floor-plan-room-list .floor-plan-room:before{content:"";position:absolute;top:50%;width:9px;height:16px;margin-top:-8px;background:inherit}.floor-plan-room-list .floor-plan-room:after{content:"";position:absolute;top:50%;width:3px;height:24px;margin-top:-12px;border-radius:2px;background:#77d7eb;box-shadow:0 0 0 1px rgba(7,24,35,.55)}.floor-plan-side-left .floor-plan-room:before{right:-2px;border-left:1px solid #a9c4d0;border-bottom:1px solid #a9c4d0;border-radius:0 0 0 9px}.floor-plan-side-left .floor-plan-room:after{left:-2px}.floor-plan-side-right .floor-plan-room:before{left:-2px;border-right:1px solid #a9c4d0;border-bottom:1px solid #a9c4d0;border-radius:0 0 9px}.floor-plan-side-right .floor-plan-room:after{right:-2px}.floor-plan-room.available{border-color:#1aa889;background:#12493f}.floor-plan-room.partial{border-color:#d39c2e;background:#574213}.floor-plan-room.occupied{border-color:#9c4451;background:#542630;color:#ffd5da}.floor-plan-unplaced{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:8px;border-top:1px dashed #35566a}.floor-plan-unplaced>.floor-plan-room{width:64px}.public-floor-plan-level>footer{display:flex;gap:14px;flex-wrap:wrap;padding:9px 13px;border-top:1px solid #284b5d;color:#9db8c7;font-size:10px}.public-floor-plan-level>footer span{display:flex;align-items:center;gap:5px}.public-floor-plan-level>footer i{width:9px;height:9px;border-radius:3px;background:#12493f}.public-floor-plan-level>footer i.partial{background:#d39c2e}.public-floor-plan-level>footer i.occupied{background:#9c4451}body.light .public-floor-plan-level{border-color:#bfd2dd;background:#fff}body.light .public-floor-plan-canvas{border-color:#c7dae3;background:linear-gradient(145deg,#f7fbfd,#eaf3f7)}body.light .floor-plan-corridor{border-color:#9fb9c5;background:#e2edf2;color:#56717e}body.light .floor-plan-room{color:#173143}body.light .floor-plan-room.available{border-color:#46aa94;background:#dff6ed}body.light .floor-plan-room.partial{border-color:#dab458;background:#fff4d4}body.light .floor-plan-room.occupied{border-color:#d18b95;background:#fde8eb;color:#7e2d39}body.light .floor-plan-room small,body.light .floor-plan-side h5{color:#5e7889}@media(max-width:560px){.floor-plan-main{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:5px}.public-floor-plan-canvas{padding:7px}.floor-plan-orientation{min-height:34px}.floor-plan-side-left{grid-template-columns:18px minmax(0,1fr)}.floor-plan-side-right{grid-template-columns:minmax(0,1fr) 18px}.floor-plan-side h5{font-size:8px}.floor-plan-room{width:54px;padding:5px 2px}.floor-plan-room b{font-size:10px}.floor-plan-room small{font-size:7px}.floor-plan-corridor{min-height:150px}}

/* Public room filter buttons and clearer shared-accommodation copy. */
.sanatorium-shared-copy{display:grid;gap:6px;min-width:0}.sanatorium-shared-choice .sanatorium-shared-copy small{margin-top:0;line-height:1.3}
.sanatorium-room-filters{grid-template-columns:minmax(220px,1.25fr) minmax(180px,1fr) minmax(120px,.65fr) minmax(120px,.65fr) auto}
.sanatorium-filter-choice{min-width:0;margin:0;padding:0;border:0}.sanatorium-filter-choice legend{margin:0 0 6px;padding:0;color:#cce0e9;font-size:12px;font-weight:800}.sanatorium-filter-options{display:flex;align-items:center;gap:6px;min-height:42px;overflow-x:auto;padding-bottom:1px;scrollbar-width:thin}.sanatorium-room-filters .sanatorium-filter-options>label{display:block;flex:0 0 auto;gap:0;cursor:pointer}.sanatorium-room-filters .sanatorium-filter-options input{position:absolute;width:1px;height:1px;min-width:0;opacity:0;pointer-events:none}.sanatorium-room-filters .sanatorium-filter-options label span{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 11px;border:1px solid #365d70;border-radius:10px;background:#102b38;color:#cce0e9;font-size:12px;font-weight:800;white-space:nowrap;transition:.18s ease}.sanatorium-filter-options label i{display:none}.sanatorium-filter-options input:checked+span{border-color:#34d3bd!important;background:#0f766e!important;color:#fff!important;box-shadow:0 0 0 2px rgba(45,212,191,.1)}.sanatorium-filter-options input:checked+span i{display:inline}.sanatorium-filter-options input:focus-visible+span{outline:3px solid rgba(45,212,191,.28)}.sanatorium-filter-options>small{color:#7f9aa8;font-size:11px}
body.light .sanatorium-filter-choice legend{color:#29485a}body.light .sanatorium-room-filters .sanatorium-filter-options label span{border-color:#a9c6d2;background:#fff;color:#214252}
@media(max-width:760px){.sanatorium-room-filters{grid-template-columns:1fr 1fr}.sanatorium-filter-choice{min-width:0}}

/* Keep category and floor choices readable on full rows; place prices below. */
.sanatorium-room-filters{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) auto;align-items:end}
.sanatorium-filter-choice{grid-column:1/-1}
.sanatorium-filter-options{flex-wrap:wrap;overflow:visible;padding-bottom:0}
.sanatorium-room-filters>label{grid-column:auto}
.sanatorium-room-filters>button{grid-column:auto}
@media(max-width:760px){.sanatorium-room-filters{grid-template-columns:1fr 1fr}.sanatorium-room-filters>button{grid-column:1/-1}}
@media(max-width:480px){.sanatorium-room-filters{grid-template-columns:1fr}.sanatorium-filter-choice,.sanatorium-room-filters>label,.sanatorium-room-filters>button{grid-column:1/-1}}

/* Reservation modal summary: room, facts, then selected stay dates. */
.sanatorium-reservation-dialog .sanatorium-selected-room{display:grid;justify-content:stretch;gap:7px;padding-right:48px}.sanatorium-reservation-dialog .sanatorium-selected-room b{font-size:20px;line-height:1.25}.sanatorium-selected-room-facts{color:#8ff0da;font-size:14px}.sanatorium-selected-room-dates{display:flex;align-items:center;gap:8px;color:#cce0e9;font-size:14px;font-weight:750}.sanatorium-selected-room-dates i{color:#55dfcb;font-size:16px}
body.light .sanatorium-selected-room-dates{color:#38586a}

/* Room-category tariff thumbnails and larger, more legible labels. */
.sanatorium-room-filters .sanatorium-filter-options label>span{gap:8px;min-height:56px;padding:5px 8px}
.sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-thumb{display:block;width:46px;height:46px;min-height:0;flex:0 0 46px;padding:0;border:0;border-radius:8px;object-fit:cover;background:#0a1c26}
.sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-thumb.placeholder{display:grid;place-items:center;color:#55dfcb}
.sanatorium-filter-options .sanatorium-offer-thumb.placeholder i{display:inline;font-size:19px}
.sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-copy{display:grid;gap:3px;min-height:0;padding:0;border:0;background:transparent}
.sanatorium-offer-copy b{font-size:14px;line-height:1.12}.sanatorium-offer-copy small{color:#9db8c7;font-size:11px;line-height:1.12}
.sanatorium-filter-options label em{margin-left:3px;padding:5px 7px;border-radius:8px;background:rgba(45,212,191,.12);color:#84f2dc;font-size:13px;font-style:normal;font-weight:900}
.sanatorium-filter-options input:checked+span .sanatorium-offer-check{display:inline}
body.light .sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-thumb.placeholder{background:#e8f2f6;color:#178b7e}
body.light .sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-copy{background:transparent}
body.light .sanatorium-offer-copy small{color:#617d8b}body.light .sanatorium-filter-options label em{background:#e5f7f2;color:#08796d}
@media(max-width:480px){.sanatorium-room-filters .sanatorium-filter-options .sanatorium-offer-thumb{width:42px;height:42px;flex-basis:42px}.sanatorium-offer-copy b{font-size:13px}.sanatorium-filter-options label em{font-size:12px}}

/* Sun exposure markers for the two longitudinal room wings. */
.floor-plan-side h5{flex-direction:column;gap:8px;writing-mode:horizontal-tb}
.floor-plan-side h5 span{writing-mode:vertical-rl}
.floor-plan-side-icon{position:relative;width:13px;height:13px;flex:0 0 13px;border-radius:50%;background:#fbbf24;color:#fbbf24;box-shadow:0 0 9px rgba(251,191,36,.52)}
.floor-plan-side-icon::after{content:"";position:absolute;inset:-4px;border:1px dashed currentColor;border-radius:50%;opacity:.9}
.floor-plan-side-icon.shade{background:linear-gradient(90deg,#647b88 0 50%,#fbbf24 50% 100%);box-shadow:0 0 7px rgba(251,191,36,.28)}
body.light .floor-plan-side-icon.shade{background:linear-gradient(90deg,#9aacb5 0 50%,#f5b916 50% 100%)}

/* Instant price and accommodation-mode choices. */
.sanatorium-room-filters{grid-template-columns:minmax(0,1fr) auto}
.sanatorium-price-filter{grid-column:1/-1}
.sanatorium-room-filters>button{grid-column:2;grid-row:3;align-self:end}
.sanatorium-placement-choice{margin:12px 0 0;padding:0;border:0}
.sanatorium-placement-choice legend{margin:0 0 6px;color:#cce0e9;font-size:12px;font-weight:800}
.sanatorium-placement-choice>div{display:flex;gap:8px;flex-wrap:wrap}
.sanatorium-placement-choice label{cursor:pointer}
.sanatorium-placement-choice input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.sanatorium-placement-choice label span{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid #365d70;border-radius:11px;background:#102b38;color:#d4e8ef;transition:.18s ease}
.sanatorium-placement-choice label span i{color:#55dfcb}
.sanatorium-placement-choice input:checked+span{border-color:#34d3bd;background:#0f766e;color:#fff;box-shadow:0 0 0 3px rgba(45,212,191,.12)}
.sanatorium-placement-choice input:checked+span i{color:#fff}
.sanatorium-placement-choice input:focus-visible+span{outline:3px solid rgba(45,212,191,.28)}
.sanatorium-placement-choice input:disabled+span{cursor:wait;opacity:.62}
body.light .sanatorium-placement-choice legend{color:#29485a}
body.light .sanatorium-placement-choice label span{border-color:#a9c6d2;background:#fff;color:#214252}
body.light .sanatorium-placement-choice input:checked+span{border-color:#20aa99;background:#0f8b80;color:#fff}
@media(max-width:760px){.sanatorium-room-filters{grid-template-columns:1fr}.sanatorium-room-filters>button{grid-column:1;grid-row:auto}.sanatorium-placement-choice>div{display:grid;grid-template-columns:1fr}.sanatorium-placement-choice label span{width:100%}}

/* Balcony marker follows the actual Tore Deluxe floor-plan wings. */
.floor-plan-room-balcony{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:15px;height:15px;border:1px solid rgba(253,230,138,.72);border-radius:4px;background:rgba(120,53,15,.82);color:#fde68a;font-size:7px;line-height:1;box-shadow:0 1px 5px rgba(0,0,0,.22)}
body.light .floor-plan-room-balcony{border-color:#d49a22;background:#fff4ce;color:#9a6700}

/* A room category and its nightly price form one selectable offer. */
.sanatorium-offer-filter .sanatorium-filter-options label span{gap:7px;padding:5px 11px}
.sanatorium-offer-filter .sanatorium-filter-options label span b{font-size:12px}
.sanatorium-offer-filter .sanatorium-filter-options label span small{color:#a9c5d1;font-size:10px;font-weight:700}
.sanatorium-offer-filter .sanatorium-filter-options label span em{padding:4px 7px;border-radius:7px;background:rgba(85,223,203,.13);color:#8ff0da;font-size:11px;font-style:normal;font-weight:900}
.sanatorium-offer-filter .sanatorium-filter-options input:checked+span em{background:rgba(255,255,255,.17);color:#fff}
body.light .sanatorium-offer-filter .sanatorium-filter-options label span small{color:#617b88}body.light .sanatorium-offer-filter .sanatorium-filter-options label span em{background:#e3f6f2;color:#08766b}
body.light .sanatorium-offer-filter .sanatorium-filter-options input:checked+span em{background:rgba(255,255,255,.2);color:#fff}
.sanatorium-offer-filter legend{font-size:15px}.sanatorium-offer-filter .sanatorium-filter-options label>span{min-height:62px}.sanatorium-offer-filter .sanatorium-filter-options label span b{font-size:15px}.sanatorium-offer-filter .sanatorium-filter-options label span small{font-size:13px}.sanatorium-offer-filter .sanatorium-filter-options label span em{font-size:14px}
.sanatorium-filter-options.sanatorium-filter-loading{display:flex;align-items:center;min-height:62px;padding:8px 12px;border:1px dashed #365d70;border-radius:11px;background:rgba(16,43,56,.48)}.sanatorium-filter-options.sanatorium-filter-loading small{display:inline-flex;align-items:center;gap:8px;color:#9fc2d1;font-size:13px;font-weight:750}.sanatorium-filter-options.sanatorium-filter-loading i{display:inline;color:#45d7c2;font-size:15px}body.light .sanatorium-filter-options.sanatorium-filter-loading{border-color:#b8ccd6;background:#f5fafc}body.light .sanatorium-filter-options.sanatorium-filter-loading small{color:#537382}
.sanatorium-offer-filter .sanatorium-filter-options:not(.sanatorium-filter-loading){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sanatorium-offer-filter .sanatorium-filter-options>label{min-width:0;width:100%}.sanatorium-offer-filter .sanatorium-filter-options label>span{display:flex;width:100%;white-space:normal}.sanatorium-offer-filter .sanatorium-offer-copy{min-width:0;flex:1}.sanatorium-offer-filter .sanatorium-offer-copy b,.sanatorium-offer-filter .sanatorium-offer-copy small{overflow-wrap:anywhere}.sanatorium-filter-choice[data-floor-filter] .sanatorium-filter-options{display:flex;gap:7px}.sanatorium-filter-choice[data-floor-filter] .sanatorium-filter-options label span{min-width:70px;justify-content:center}.sanatorium-filter-choice[data-floor-filter] .sanatorium-filter-options input:checked+span{box-shadow:inset 0 -3px 0 #5eead4,0 0 0 2px rgba(45,212,191,.1)}@media(max-width:620px){.sanatorium-offer-filter .sanatorium-filter-options:not(.sanatorium-filter-loading){grid-template-columns:1fr}}
.sanatorium-floor-filter-row{grid-column:1/-1;display:flex;align-items:end;justify-content:space-between;gap:14px}.sanatorium-floor-filter-row>[data-floor-filter]{flex:1;min-width:0}.sanatorium-floor-filter-row>button{flex:0 0 auto;height:42px;padding:0 13px;border:1px solid #477081;border-radius:10px;background:#173342;color:#d8edf3;font-size:12px;font-weight:800;cursor:pointer}.sanatorium-room-filters>.sanatorium-floor-plan{grid-column:1/-1;width:100%;margin:4px 0 0;padding-top:12px;border-top:1px solid #31596d}.sanatorium-room-filters>.sanatorium-floor-plan .public-floor-plan-level{margin:0}.sanatorium-room-filters>.sanatorium-floor-plan .public-floor-plan-level>summary{background:rgba(16,43,56,.55)}body.light .sanatorium-floor-filter-row>button{border-color:#9cb8c5;background:#e7f1f5;color:#214252}body.light .sanatorium-room-filters>.sanatorium-floor-plan{border-top-color:#bfd2dd}body.light .sanatorium-room-filters>.sanatorium-floor-plan .public-floor-plan-level>summary{background:#f5fafc}@media(max-width:560px){.sanatorium-floor-filter-row{align-items:stretch;flex-direction:column}.sanatorium-floor-filter-row>button{align-self:flex-end}.sanatorium-room-filters>.sanatorium-floor-plan{padding-top:10px}}
.floor-plan-facilities{display:grid;gap:7px;margin:0 0 4px;padding:10px;border:1px solid #31596d;border-radius:12px;background:rgba(20,184,166,.07)}.floor-plan-facilities>small{color:#8fb0be;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.floor-plan-facilities>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.floor-plan-facilities button{display:flex;align-items:center;gap:9px;min-width:0;padding:9px;border:1px solid #367186;border-radius:10px;background:#123647;color:#eef8fb;text-align:left;cursor:pointer}.floor-plan-facilities button>i:first-child{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:9px;background:#0f766e;color:#99f6e4}.floor-plan-facilities button>span{display:grid;min-width:0;flex:1;gap:2px}.floor-plan-facilities button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.floor-plan-facilities button small{color:#9db8c7;font-size:9px}.floor-plan-facilities button>i:last-child{color:#55dfcb;font-size:10px}.sanatorium-facility-card{display:grid;gap:14px;padding:4px}.sanatorium-facility-card>header{display:flex;align-items:center;gap:12px;padding-right:42px}.sanatorium-facility-card>header>i{display:grid;width:52px;height:52px;place-items:center;border-radius:15px;background:#0f766e;color:#99f6e4;font-size:22px}.sanatorium-facility-card h3{margin:2px 0 0;font-size:24px}.sanatorium-facility-card header small{color:var(--muted)}.sanatorium-facility-card>p{margin:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font-size:15px;line-height:1.55}.facility-media-stage{display:grid;height:min(56vh,480px);place-items:center;overflow:hidden;border-radius:16px;background:#03080d}.facility-media-stage img,.facility-media-stage video{width:100%;height:100%;object-fit:contain}.facility-media-stage>[hidden]{display:none}.facility-media-thumbs{display:flex;gap:8px;overflow-x:auto}.facility-media-thumbs button{position:relative;width:74px;height:56px;flex:0 0 74px;overflow:hidden;padding:0;border:2px solid transparent;border-radius:9px;background:#071018;color:#fff}.facility-media-thumbs button.active{border-color:#2dd4bf}.facility-media-thumbs img{width:100%;height:100%;object-fit:cover}.facility-media-empty{display:grid;min-height:240px;place-items:center;align-content:center;gap:10px;border:1px dashed #3b6577;border-radius:16px;background:#0a1b25;color:#8fabb8}.facility-media-empty i{font-size:34px}body.light .floor-plan-facilities{border-color:#bfd2dd;background:#f0fdfa}body.light .floor-plan-facilities button{border-color:#9fc5d2;background:#fff;color:#173143}body.light .floor-plan-facilities button small{color:#617b88}body.light .facility-media-empty{border-color:#bfd2dd;background:#f5fafc;color:#617b88}@media(max-width:620px){.floor-plan-facilities>div{grid-template-columns:1fr}.facility-media-stage{height:360px}}
.floor-plan-public-spaces{display:grid;grid-template-columns:minmax(0,1.7fr) 58px minmax(130px,.8fr);gap:8px;align-items:stretch;width:min(100%,560px);margin:0 auto 7px}.floor-plan-restaurant,.floor-plan-buvette,.floor-plan-lobby{display:grid}.floor-plan-connector{display:grid;min-height:64px;place-items:center;border:1px dashed #527488;background:rgba(148,163,184,.08);color:#7896a5}.floor-plan-connector span{font-size:8px;font-weight:900;letter-spacing:.13em;writing-mode:vertical-rl}.floor-plan-space{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:78px;padding:10px;border:1px solid #318696;border-radius:4px;background:linear-gradient(145deg,#164858,#103543);color:#ecfeff;cursor:pointer;text-align:left}.floor-plan-space:hover,.floor-plan-space:focus-visible{border-color:#5eead4;box-shadow:0 0 0 2px rgba(45,212,191,.18);transform:translateY(-1px)}.floor-plan-space>i:first-child{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:50%;background:#0f766e;color:#99f6e4}.floor-plan-space>span{display:grid;gap:2px}.floor-plan-space b{font-size:13px}.floor-plan-space small{color:#a9c6d2;font-size:8px}.floor-plan-space>i:last-child{position:absolute;right:8px;top:8px;color:#5eead4;font-size:8px}.floor-plan-space.restaurant{min-height:118px}.floor-plan-space.buvette{border-style:dashed}.floor-plan-lobby{width:min(100%,300px);margin:2px auto 0}.floor-plan-space.lobby{min-height:82px;background:linear-gradient(145deg,#173d50,#112f3e)}body.light .floor-plan-connector{border-color:#9fb9c5;background:#e2edf2;color:#56717e}body.light .floor-plan-space{border-color:#78aebb;background:linear-gradient(145deg,#e2f6f5,#d5ecef);color:#173143}body.light .floor-plan-space small{color:#587482}@media(max-width:560px){.floor-plan-public-spaces{grid-template-columns:minmax(0,1.5fr) 40px minmax(105px,.8fr);gap:5px}.floor-plan-space{min-height:68px;padding:7px;gap:6px}.floor-plan-space.restaurant{min-height:96px}.floor-plan-space>i:first-child{width:29px;height:29px;flex-basis:29px}.floor-plan-space b{font-size:11px}.floor-plan-space small{display:none}.floor-plan-lobby{width:min(100%,220px)}}
.floor-plan-public-spaces{grid-template-columns:1fr;width:min(100%,620px);gap:7px}.floor-plan-restaurant{width:64%;min-width:290px}.floor-plan-buvette{width:100%}.floor-plan-space.buvette{min-height:66px}.floor-plan-main{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);width:min(100%,620px);margin:0 auto}.floor-plan-room{width:clamp(72px,10vw,92px);min-height:60px;aspect-ratio:1.28}.floor-plan-room b{font-size:13px}.floor-plan-room small{font-size:9px}.floor-plan-space.lobby{width:clamp(96px,14vw,132px);min-height:72px;margin-top:0;padding:8px}.floor-plan-space.lobby>i:first-child{width:30px;height:30px;flex-basis:30px}.floor-plan-space.lobby b{font-size:12px}.floor-plan-space.lobby small{display:none}.floor-plan-vertical-transport{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:clamp(96px,14vw,132px);min-height:60px;padding:5px;border:1px dashed #527488;border-radius:5px;background:rgba(148,163,184,.08);color:#91acb9}.floor-plan-vertical-transport span{display:grid;place-items:center;align-content:center;gap:4px;border:1px solid rgba(82,116,136,.5);border-radius:4px}.floor-plan-vertical-transport i{color:#5eead4;font-size:16px}.floor-plan-vertical-transport b{font-size:8px}body.light .floor-plan-vertical-transport{border-color:#9fb9c5;background:#e2edf2;color:#56717e}body.light .floor-plan-vertical-transport span{border-color:#b3c9d3}@media(max-width:560px){.floor-plan-public-spaces,.floor-plan-main{width:100%}.floor-plan-restaurant{width:72%;min-width:0}.floor-plan-main{grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr)}.floor-plan-room{width:64px;min-height:54px}.floor-plan-room b{font-size:11px}.floor-plan-space.lobby,.floor-plan-vertical-transport{width:76px;min-height:56px}.floor-plan-space.lobby>i:first-child{display:none}.floor-plan-space.lobby b{font-size:10px}.floor-plan-vertical-transport b{display:none}}
.floor-plan-public-spaces{grid-template-columns:minmax(0,64%) minmax(0,36%);gap:5px 0}.floor-plan-restaurant,.floor-plan-buvette{grid-column:1;width:100%;min-width:0}.floor-plan-restaurant{grid-row:1}.floor-plan-five-steps{grid-column:1;grid-row:2;justify-self:end;display:flex;align-items:center;gap:8px;width:58%;min-height:38px;padding:5px 10px;border-right:1px solid #527488;border-bottom:1px solid #527488;background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(94,234,212,.2) 6px 7px);color:#b9d0da}.floor-plan-five-steps>i{color:#5eead4}.floor-plan-five-steps>span{display:grid}.floor-plan-five-steps b{font-size:9px}.floor-plan-five-steps small{font-size:7px;color:#819fac}.floor-plan-buvette{grid-row:3}.floor-plan-treatment-stairs{grid-column:1;grid-row:4;justify-self:start;display:flex;align-items:center;gap:8px;width:52%;min-height:55px;padding:8px 10px;border:1px dashed #527488;border-radius:0 0 5px 5px;background:repeating-linear-gradient(90deg,rgba(148,163,184,.06) 0 12px,rgba(82,116,136,.22) 13px 15px);color:#d2e2e8}.floor-plan-treatment-stairs>i{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:#123d4e;color:#5eead4}.floor-plan-treatment-stairs>span{display:grid}.floor-plan-treatment-stairs b{font-size:10px}.floor-plan-treatment-stairs small{font-size:8px;color:#91acb9}body.light .floor-plan-five-steps,body.light .floor-plan-treatment-stairs{border-color:#9fb9c5;color:#395767}body.light .floor-plan-five-steps small,body.light .floor-plan-treatment-stairs small{color:#67818e}body.light .floor-plan-treatment-stairs>i{background:#d5ecef;color:#0f766e}@media(max-width:560px){.floor-plan-public-spaces{grid-template-columns:minmax(0,72%) minmax(0,28%)}.floor-plan-five-steps{width:68%;min-height:32px}.floor-plan-five-steps small{display:none}.floor-plan-treatment-stairs{width:64%;min-height:48px;padding:6px}.floor-plan-treatment-stairs small{display:none}}
.floor-plan-room-list .floor-plan-treatment-stairs{grid-column:auto;grid-row:auto;justify-self:auto;width:clamp(96px,14vw,132px);min-height:60px;border-radius:5px}.floor-plan-room-list .floor-plan-treatment-stairs>span{min-width:0}.floor-plan-room-list .floor-plan-treatment-stairs small{line-height:1.15}@media(max-width:560px){.floor-plan-room-list .floor-plan-treatment-stairs{width:76px;min-height:56px;padding:5px}.floor-plan-room-list .floor-plan-treatment-stairs>i{width:24px;height:24px}.floor-plan-room-list .floor-plan-treatment-stairs b{font-size:8px}}
.floor-plan-buvette{grid-column:1/-1}.floor-plan-five-steps{width:38%;min-height:30px;padding:3px 8px;justify-content:flex-end}.floor-plan-five-steps>i{font-size:16px}.floor-plan-space.lobby,.floor-plan-room-list .floor-plan-treatment-stairs{width:clamp(72px,10vw,92px);min-height:60px;aspect-ratio:1.28;padding:6px 4px}.floor-plan-space.lobby{gap:5px}.floor-plan-space.lobby>i:first-child{width:26px;height:26px;flex-basis:26px}.floor-plan-room-list .floor-plan-treatment-stairs{gap:5px}.floor-plan-room-list .floor-plan-treatment-stairs>i{width:25px;height:25px;flex:0 0 25px}.floor-plan-room-list .floor-plan-treatment-stairs b{font-size:9px}.floor-plan-room-list .floor-plan-treatment-stairs small{font-size:7px}@media(max-width:560px){.floor-plan-buvette{grid-column:1/-1}.floor-plan-five-steps{width:44%;min-height:26px}.floor-plan-space.lobby,.floor-plan-room-list .floor-plan-treatment-stairs{width:64px;min-height:54px}.floor-plan-space.lobby>i:first-child{display:none}}
.floor-plan-restaurant{position:relative;grid-column:1/-1;width:100%}.floor-plan-restaurant-steps{position:absolute;right:13px;bottom:10px;z-index:2;display:grid;width:38px;height:30px;place-items:center;border-right:1px solid #5eead4;border-bottom:1px solid #5eead4;background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(94,234,212,.24) 6px 7px);color:#5eead4;pointer-events:none}.floor-plan-restaurant-steps i{font-size:15px}.floor-plan-space.buvette{min-height:92px}.floor-plan-five-steps{display:none}body.light .floor-plan-restaurant-steps{border-color:#0f766e;color:#0f766e;background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(15,118,110,.18) 6px 7px)}@media(max-width:560px){.floor-plan-restaurant{grid-column:1/-1;width:100%}.floor-plan-space.buvette{min-height:76px}.floor-plan-restaurant-steps{right:8px;bottom:7px;width:32px;height:25px}}
.floor-plan-buvette{grid-column:1/-1;justify-self:end;width:64%}@media(max-width:560px){.floor-plan-buvette{grid-column:1/-1;justify-self:end;width:72%}}
.floor-plan-public-spaces{width:min(100%,268px)}@media(max-width:560px){.floor-plan-public-spaces{width:min(100%,220px)}}
.floor-plan-room{width:clamp(80px,11vw,100px);min-height:64px}.floor-plan-space.lobby,.floor-plan-room-list .floor-plan-treatment-stairs{width:clamp(80px,11vw,100px);min-height:64px}.floor-plan-public-spaces{width:min(100%,284px)}.floor-plan-buvette{width:100%;justify-self:stretch}.floor-plan-restaurant{width:calc(100% + 90px);margin-left:-90px}.floor-plan-space.restaurant{width:100%}@media(max-width:560px){.floor-plan-room{width:70px;min-height:58px}.floor-plan-space.lobby,.floor-plan-room-list .floor-plan-treatment-stairs{width:70px;min-height:58px}.floor-plan-public-spaces{width:min(100%,196px)}.floor-plan-buvette{width:100%;justify-self:stretch}.floor-plan-restaurant{width:calc(100% + 54px);margin-left:-54px}}
.floor-plan-public-spaces{margin-bottom:-4px}.floor-plan-restaurant-steps{left:50%;right:auto;transform:translateX(-50%)}.floor-plan-vertical-transport{display:flex;width:clamp(80px,11vw,100px);min-height:64px;padding:5px;gap:3px}.floor-plan-vertical-transport span{flex:1;border:0}.floor-plan-vertical-transport span+span{border-left:1px dashed rgba(82,116,136,.75);border-radius:0}body.light .floor-plan-vertical-transport span+span{border-left-color:#9fb9c5}@media(max-width:560px){.floor-plan-public-spaces{margin-bottom:-3px}.floor-plan-vertical-transport{width:70px;min-height:58px;padding:4px}.floor-plan-vertical-transport span+span{border-left-width:1px}}
.floor-plan-unnumbered-room{display:flex;align-items:center;justify-content:center;gap:7px;width:clamp(80px,11vw,100px);min-height:64px;padding:6px 5px;border:1px dashed #688596;border-radius:5px;background:rgba(100,116,139,.14);color:#c5d5dd;text-align:left}.floor-plan-unnumbered-room>i{display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border-radius:6px;background:#284657;color:#9db8c7}.floor-plan-unnumbered-room>span{display:grid;min-width:0}.floor-plan-unnumbered-room b{font-size:10px}.floor-plan-unnumbered-room small{font-size:7px;color:#91acb9}body.light .floor-plan-unnumbered-room{border-color:#91acb9;background:#edf3f6;color:#355565}body.light .floor-plan-unnumbered-room>i{background:#d7e5eb;color:#4c6d7c}@media(max-width:560px){.floor-plan-unnumbered-room{width:70px;min-height:58px;padding:4px}.floor-plan-unnumbered-room>i{width:22px;height:22px;flex-basis:22px}.floor-plan-unnumbered-room b{font-size:8px}.floor-plan-unnumbered-room small{display:none}}
.floor-plan-space.lobby{width:calc(clamp(80px,11vw,100px) + 8px);transform:translateX(8px)}@media(max-width:560px){.floor-plan-space.lobby{width:75px;transform:translateX(5px)}}
.floor-plan-space.lobby{width:clamp(80px,11vw,100px);min-height:134px;aspect-ratio:auto;transform:none}@media(max-width:560px){.floor-plan-space.lobby{width:70px;min-height:122px;transform:none}}
.second-floor-layout{display:grid;grid-template-columns:repeat(4,100px) 68px 100px;grid-template-rows:auto auto 48px auto auto;gap:7px;width:min(100%,603px);margin:0 auto}.second-floor-terrace{grid-column:1/5;grid-row:1;display:flex;align-items:center;justify-content:center;gap:10px;min-height:92px;border:1px solid #487285;border-radius:5px;background:linear-gradient(145deg,rgba(36,86,104,.48),rgba(16,47,61,.65));color:#a7c9d7}.second-floor-terrace i{color:#5eead4;font-size:20px}.second-floor-terrace b{font-size:13px}.second-floor-front-wing{grid-column:1/3;grid-row:2;display:flex;gap:7px}.second-floor-two-room-wing{grid-column:3/5;grid-row:2;display:flex;gap:7px}.second-floor-corner-room{grid-column:6;grid-row:1}.second-floor-corner-room .floor-plan-room{min-height:92px;aspect-ratio:auto}.second-floor-upper-corridor{grid-column:1/6;grid-row:3;display:grid;place-items:center;border:1px dashed #527488;background:rgba(148,163,184,.08);color:#7896a5}.second-floor-upper-corridor span{font-size:9px;font-weight:900;letter-spacing:.18em}.second-floor-upper-right{grid-column:6;grid-row:2/5;display:flex;flex-direction:column;gap:7px}.second-floor-room-cell{position:relative}.second-floor-room-cell em{position:absolute;left:50%;bottom:4px;z-index:2;transform:translateX(-50%);color:#99f6e4;font-size:7px;font-style:normal;white-space:nowrap}.second-floor-two-room-wing .floor-plan-room{width:100px}.second-floor-stem{grid-column:3/7;grid-row:4/6;display:grid;grid-template-columns:100px 68px 100px;gap:7px;justify-content:end}.second-floor-stem-side .floor-plan-room-list{align-items:stretch}.second-floor-stem-side .floor-plan-room{width:100px}.second-floor-stem .floor-plan-corridor{min-height:450px}.second-floor-transport{grid-column:5/7;grid-row:6;display:flex;justify-self:end;width:175px;min-height:55px;padding:6px;border:1px dashed #527488;border-radius:5px;background:rgba(148,163,184,.08);color:#91acb9}.second-floor-transport span{display:flex;flex:1;align-items:center;justify-content:center;gap:5px;font-size:8px}.second-floor-transport span+span{border-left:1px dashed #527488}.second-floor-transport i{color:#5eead4}body.light .second-floor-terrace{border-color:#9fb9c5;background:linear-gradient(145deg,#edf7fa,#dfeef3);color:#4c6d7c}body.light .second-floor-upper-corridor,body.light .second-floor-transport{border-color:#9fb9c5;background:#e2edf2;color:#56717e}@media(max-width:680px){.second-floor-layout{grid-template-columns:repeat(4,70px) 46px 70px;width:389px;max-width:100%;gap:5px}.second-floor-terrace{min-height:75px}.second-floor-front-wing,.second-floor-two-room-wing{gap:5px}.second-floor-front-wing .floor-plan-room,.second-floor-two-room-wing .floor-plan-room,.second-floor-upper-right .floor-plan-room,.second-floor-stem-side .floor-plan-room{width:70px}.second-floor-corner-room .floor-plan-room{width:70px;min-height:75px}.second-floor-upper-right{gap:5px}.second-floor-stem{grid-template-columns:70px 46px 70px;gap:5px}.second-floor-stem .floor-plan-corridor{min-height:410px}.second-floor-transport{width:121px;min-height:48px}.second-floor-transport span{font-size:0}.second-floor-transport i{font-size:14px}}
.second-floor-upper-right{grid-row:2/5}.second-floor-stem{grid-row:5/7}.second-floor-transport{grid-row:7}
.second-floor-front-wing{grid-row:4}
.second-floor-two-room-wing{grid-row:4}
.second-floor-front-wing,.second-floor-two-room-wing{grid-row:2}
.second-floor-two-room-wing{grid-column:1/5;grid-row:2}.second-floor-upper-corridor{grid-column:1/5;grid-row:3}.second-floor-front-wing{grid-column:1/5;grid-row:4}.second-floor-two-room-wing,.second-floor-front-wing{display:flex;gap:7px}.second-floor-two-room-wing .second-floor-room-cell,.second-floor-front-wing .second-floor-room-cell{flex:1}.second-floor-two-room-wing .floor-plan-room,.second-floor-front-wing .floor-plan-room{width:100%;min-height:105px;aspect-ratio:auto}.second-floor-two-room-wing .floor-plan-room b,.second-floor-front-wing .floor-plan-room b{font-size:15px}.second-floor-room-cell em{bottom:9px;font-size:8px}@media(max-width:680px){.second-floor-two-room-wing,.second-floor-front-wing{gap:5px}.second-floor-two-room-wing .floor-plan-room,.second-floor-front-wing .floor-plan-room{width:100%;min-height:84px}.second-floor-two-room-wing .floor-plan-room b,.second-floor-front-wing .floor-plan-room b{font-size:12px}}
.second-floor-corner-room .floor-plan-room{min-height:142px}.second-floor-upper-right{grid-row:2/5}.second-floor-lower-left{grid-column:4;grid-row:5/7}.second-floor-lower-right{grid-column:6;grid-row:5/7}.second-floor-lower-left .floor-plan-room-list,.second-floor-lower-right .floor-plan-room-list{align-items:stretch}.second-floor-lower-left .floor-plan-room,.second-floor-lower-right .floor-plan-room{width:100px}.second-floor-central-corridor{grid-column:5;grid-row:1/8;min-height:100%;height:auto}.second-floor-transport{grid-column:6;grid-row:7;justify-self:stretch;width:100px;min-height:64px}.second-floor-transport span{font-size:inherit}.second-floor-transport span+span{border-left:1px dashed rgba(82,116,136,.75)}@media(max-width:680px){.second-floor-corner-room .floor-plan-room{min-height:112px}.second-floor-lower-left .floor-plan-room,.second-floor-lower-right .floor-plan-room{width:70px}.second-floor-transport{width:70px;min-height:58px}.second-floor-central-corridor{min-height:100%}}
.second-floor-upper-right .second-floor-room-cell{display:flex;flex:1}.second-floor-upper-right .floor-plan-room{width:100%;height:100%;min-height:0;aspect-ratio:auto}
.second-floor-terrace:is(button){position:relative;width:100%;font:inherit;cursor:pointer}.second-floor-terrace:is(button):hover,.second-floor-terrace:is(button):focus-visible{border-color:#5eead4;box-shadow:0 0 0 2px rgba(45,212,191,.16)}.second-floor-terrace>i:last-child{position:absolute;right:10px;top:10px;color:#5eead4;font-size:9px}body.light .second-floor-terrace:is(button):hover,body.light .second-floor-terrace:is(button):focus-visible{border-color:#0f766e}
.third-floor-layout .second-floor-two-room-wing{grid-column:1/5;grid-row:1}.third-floor-layout .second-floor-upper-corridor{grid-column:1/5;grid-row:2}.third-floor-layout .second-floor-front-wing{grid-column:1/5;grid-row:3}.third-floor-layout .second-floor-upper-right{grid-column:6;grid-row:1/4}.third-floor-layout .second-floor-lower-left{grid-column:4;grid-row:4}.third-floor-layout .second-floor-lower-right{grid-column:6;grid-row:4}.third-floor-layout .second-floor-central-corridor{grid-column:5;grid-row:1/6}.third-floor-layout .second-floor-transport{grid-column:6;grid-row:5}.third-floor-layout .second-floor-upper-right .second-floor-room-cell{display:flex;flex:1}.third-floor-layout .second-floor-upper-right .floor-plan-room{height:100%;min-height:0}
.third-floor-layout .second-floor-upper-corridor{min-height:42px}.third-floor-layout .second-floor-lower-left{padding-top:54px}@media(max-width:680px){.third-floor-layout .second-floor-upper-corridor{min-height:36px}.third-floor-layout .second-floor-lower-left{padding-top:42px}}
.fourth-floor-layout .second-floor-upper-right{justify-content:flex-end}.fourth-floor-layout .second-floor-upper-right .second-floor-room-cell{flex:0 0 105px}.fourth-floor-layout .second-floor-upper-right .floor-plan-room{min-height:105px}.fourth-floor-wing-stairs{display:flex;align-items:center;justify-content:center;gap:7px;width:100px;min-height:55px;border:1px dashed #527488;border-radius:5px;background:repeating-linear-gradient(90deg,rgba(148,163,184,.06) 0 12px,rgba(82,116,136,.22) 13px 15px);color:#b8ced7}.fourth-floor-wing-stairs i{color:#5eead4}.fourth-floor-wing-stairs span{font-size:8px;font-weight:800}.fourth-floor-cinema{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;width:100px;min-height:210px;padding:8px;border:1px solid #318696;border-radius:5px;background:linear-gradient(145deg,#164858,#103543);color:#ecfeff;font:inherit;cursor:pointer}.fourth-floor-cinema>i:first-child{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:50%;background:#0f766e;color:#99f6e4}.fourth-floor-cinema>span{display:grid}.fourth-floor-cinema b{font-size:11px}.fourth-floor-cinema small{font-size:7px;color:#a9c6d2}.fourth-floor-cinema>i:last-child{position:absolute;right:7px;top:7px;color:#5eead4;font-size:8px}.fourth-floor-cinema:hover,.fourth-floor-cinema:focus-visible{border-color:#5eead4;box-shadow:0 0 0 2px rgba(45,212,191,.16)}body.light .fourth-floor-wing-stairs{border-color:#9fb9c5;color:#56717e}body.light .fourth-floor-cinema{border-color:#78aebb;background:linear-gradient(145deg,#e2f6f5,#d5ecef);color:#173143}@media(max-width:680px){.fourth-floor-layout .second-floor-upper-right .second-floor-room-cell{flex-basis:84px}.fourth-floor-layout .second-floor-upper-right .floor-plan-room{min-height:84px}.fourth-floor-wing-stairs{width:70px;min-height:48px}.fourth-floor-wing-stairs span{display:none}.fourth-floor-cinema{width:70px;min-height:178px;padding:5px;gap:4px}.fourth-floor-cinema>i:first-child{width:24px;height:24px;flex-basis:24px}.fourth-floor-cinema b{font-size:9px}.fourth-floor-cinema small{display:none}}
.fourth-floor-layout .second-floor-two-room-wing,.fourth-floor-layout .second-floor-upper-corridor,.fourth-floor-layout .second-floor-front-wing{grid-column:1/5}.fourth-floor-layout .second-floor-two-room-wing .floor-plan-room,.fourth-floor-layout .second-floor-front-wing .floor-plan-room{min-height:82px}.fourth-floor-layout .second-floor-upper-right{justify-content:flex-start}.fourth-floor-layout .second-floor-upper-right .second-floor-room-cell{flex-basis:82px}.fourth-floor-layout .second-floor-upper-right .floor-plan-room{min-height:82px}.fourth-floor-layout .second-floor-lower-left{grid-row:4/6;display:flex}.fourth-floor-layout .second-floor-lower-left .floor-plan-room-list{height:100%;flex:1}.fourth-floor-layout .fourth-floor-cinema{flex:1;min-height:132px}@media(max-width:680px){.fourth-floor-layout .second-floor-two-room-wing .floor-plan-room,.fourth-floor-layout .second-floor-front-wing .floor-plan-room{min-height:68px}.fourth-floor-layout .second-floor-upper-right .second-floor-room-cell{flex-basis:68px}.fourth-floor-layout .second-floor-upper-right .floor-plan-room{min-height:68px}.fourth-floor-layout .fourth-floor-cinema{min-height:110px}}
.fourth-floor-layout .second-floor-lower-right{grid-row:1/5}.fourth-floor-layout .second-floor-lower-left .floor-plan-room,.fourth-floor-layout .second-floor-lower-right .floor-plan-room{min-height:69px}.fourth-floor-layout .fourth-floor-cinema{flex:0 0 145px;min-height:145px}.fourth-floor-layout .second-floor-transport{grid-row:5}@media(max-width:680px){.fourth-floor-layout .second-floor-lower-left .floor-plan-room,.fourth-floor-layout .second-floor-lower-right .floor-plan-room{min-height:60px}.fourth-floor-layout .fourth-floor-cinema{flex-basis:125px;min-height:125px}}
.second-floor-plan .second-floor-terrace{min-height:142px;align-self:stretch}@media(max-width:680px){.second-floor-plan .second-floor-terrace{min-height:112px}}
