/* Reserved for scoped refinements of the brand room. */
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.language-toggle{margin-left:auto;background:transparent;border:0;padding:10px;font-size:12px}.header nav{margin-left:auto}html[dir=rtl] body{font-family:Tahoma,Arial,sans-serif}html[dir=rtl] h1,html[dir=rtl] dialog h2,html[dir=rtl] .empty-bookings h2{font-family:Tahoma,Arial,sans-serif;letter-spacing:0}html[dir=rtl] .floor{direction:ltr}html[dir=rtl] .month,html[dir=rtl] .side-option,html[dir=rtl] .contact,html[dir=rtl] #settings-menu button{text-align:right}html[dir=rtl] .language-toggle{margin-left:0;margin-right:auto}html[dir=rtl] .header nav{margin-left:0;margin-right:auto}html[dir=rtl] .settings{margin-left:0}html[dir=rtl] #settings-menu{right:auto;left:0}html[dir=rtl] .close{right:auto;left:15px}html[dir=rtl] .availability{text-align:left}html[dir=rtl] dd{text-align:left}.wordmark{white-space:nowrap}.wordmark>span{display:block}.rack.chosen .rack-drawing{stroke:#1c4059}
@media(max-width:480px){.language-toggle{margin-left:auto}.settings{margin-left:0}html[dir=rtl] .language-toggle{margin-right:auto}.header nav{margin-left:0;justify-content:center}}

/* Two-sided rack footprint, viewed from above. */
.rack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:8px;min-height:80px}
.rack .rack-plan{position:relative;display:grid;grid-template-rows:1fr 1fr;gap:0;width:100%;max-width:195px;height:54px;border:1px solid #788d9b;background:#e2e8ec;box-shadow:0 3px 0 #a6b5bf;padding:0}
.rack-plan i{display:block;background:linear-gradient(90deg,#eaf0f3,#cbd6de);width:100%;height:100%}
.rack-plan i+i{border-top:1px solid #8b9eab;background:linear-gradient(90deg,#d7e1e7,#b9c8d2)}
.rack .rack-plan b{position:absolute;inset:0;display:grid;place-items:center;color:#253e4c;font:500 13px Arial,sans-serif;letter-spacing:.3px;text-shadow:0 1px 2px #fff}
.rack>small,.rack-label{font-size:11px;color:#586b78;line-height:1.3}
.rack.chosen .rack-plan,.rack.has-selection .rack-plan{outline:2px solid #1c4059;outline-offset:3px}
.rack.unavailable .rack-plan{opacity:.45}
@media(max-width:480px){.rack{padding:5px;gap:8px}.rack .rack-plan{height:47px}.rack .rack-plan b{font-size:12px}.rack>small{font-size:10px}}

.rack .rack-plan{align-items:stretch;justify-content:normal;flex-shrink:0}.rack .rack-plan b{bottom:50%;font-size:12px}.rack-plan i+i{border-top:2px solid #8b9eab}

.rack-plan i{display:flex;align-items:center;justify-content:center;font:normal 11px Arial,sans-serif;color:#253e4c}.rack-plan i.side-selected{background:#25465b;color:#fff}.rack .rack-label,.rack>small{font-size:12px;font-weight:500}

/* Edition: ink, warm paper and brushed silver. */
:root{--ink:#172e3c;--muted:#596871;--paper:#f2f0eb;--line:#d5d8d6;--accent:#c0d4cd}
body{background:var(--paper);color:var(--ink)}
::selection{background:#c0d4cd;color:#132b38}
.header{background:#172e3c;color:#f7f5ee;border:0;padding:24px 5%;gap:26px}
.wordmark{font-family:Georgia,serif;font-size:29px;letter-spacing:-1px}.wordmark>span{color:#bdd0d9;margin-top:7px}
.header nav a{color:#becbd1;padding:11px 3px}.header nav .active{color:#fff;border-color:#c0d4cd}.header nav a:hover{color:#fff}
.language-toggle{color:#edf1ef}.settings>button{background:#213e4f;border-color:#4b626e;color:#e6eded}.settings>button:hover{background:#33566a}
#settings-menu{color:#172e3c}
main{padding-top:0;max-width:1440px}
.greeting{position:relative;padding:32px 0 27px;margin-bottom:28px;border-bottom:1px solid #c6cdcd;display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.greeting h1{font-size:48px;letter-spacing:-1.5px;margin:0}.greeting>p:last-child{margin:0;font-size:14px;color:#526671}
h2{font-size:20px;font-weight:500}.section-heading{margin-bottom:13px}.section-heading>span{color:#596871}
.months{gap:0;margin-bottom:29px;border:1px solid #c8d0d2;border-radius:6px;overflow:hidden;background:#e6e9e7}
.month{border:0;border-inline-end:1px solid #c8d0d2;border-radius:0;padding:17px 20px;background:transparent;min-height:91px}
.month:last-child{border-inline-end:0}.month.locked{color:#68757c;background:transparent}.month>span{font-size:15px}.month.active{position:relative;background:#274859;color:white;box-shadow:inset 0 -4px #b7d1c6}.month.active>small{color:#dbe9e4}.month svg{width:14px;height:14px}
.booking-layout{gap:28px;grid-template-columns:minmax(0,1fr) 310px}.map-heading p{color:#596871}.map-heading{min-height:44px}.availability{color:#526a5f!important;background:#e1e9df;border:1px solid #c6d2c4;border-radius:30px;padding:7px 12px;max-width:165px;font-size:10px!important;text-align:center}
.map-shell{background:#2d4756;border:1px solid #233d4d;border-radius:9px;padding:24px;box-shadow:0 14px 30px #1b344914}
.floor{background:linear-gradient(105deg,#e4e8e7,#f5f4ef 55%,#dbe2e4);border:1px solid #b1bfc5;box-shadow:0 4px 12px #112e3d40;height:540px}
.cabin{background:linear-gradient(110deg,#8fa2ac,#e2e9e9 44%,#a6b8c0);box-shadow:0 4px 8px #31495424;height:79px}.cabin small{font:10px Arial,sans-serif;letter-spacing:1.3px;margin-top:7px}.cabin span{font-size:23px}
.table{background:linear-gradient(135deg,#f7f8f7,#bccbd3);border-color:#718b99;box-shadow:0 3px 6px #203e4b26;transition:transform .22s ease,box-shadow .22s ease,background .22s ease;font-size:11px}
.table:hover{transform:translateY(-3px);box-shadow:0 6px 12px #16354735}.table.chosen{background:#315b54;color:#fff;border-color:#315b54}
.reception{background:#b7c7cd;border-color:#859ca8;box-shadow:0 3px 7px #26495722;font-size:10px;letter-spacing:0}
.rack .rack-plan{border-color:#738b98;box-shadow:0 4px 8px #28435024;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease}
.rack:hover .rack-plan{transform:translateY(-3px);box-shadow:0 7px 13px #28435036}.rack:active .rack-plan,.table:active{transform:translateY(0)}
.rack-plan i{background:linear-gradient(90deg,#e5ecee,#b7c6ce);font-size:11px}.rack-plan i+i{background:linear-gradient(90deg,#d4dfe3,#9fb3be);border-color:#819aa8}.rack-plan i.side-selected{background:#315b54;color:white}
.rack.chosen .rack-plan{outline-color:#315b54;outline-offset:3px}.rack>small{color:#314f5e;font-weight:500}.aisle-label{color:#526b77;font-size:10px;letter-spacing:1px}.entrance{color:#526b77;font-size:10px}.map-note{color:#596871}
.selection-panel{background:#172e3c;border:1px solid #172e3c;color:#f4f5f0;border-radius:8px;padding:25px;margin-top:57px;box-shadow:0 12px 30px #162d3a15}
.selection-panel .eyebrow{display:none}.selection-panel h2{font:27px Georgia,serif}.selection-panel .period,.selection-panel .empty-selection,.selection-panel .payment-note,.selection-panel .allowance,.selection-panel .selection-item small{color:#c3d0d6}
.selection-panel .empty-selection{border-color:#49606c;padding:23px 0}.selection-panel .selection-item{border-color:#49606c}.selection-panel .selection-item button{color:#e4eceb}.selection-panel .total{border-top:1px solid #49606c;padding-top:20px;margin-top:24px}.selection-panel .total b{color:#c9dfd5;font-size:28px;font-variant-numeric:tabular-nums}.selection-panel .primary:disabled{background:#2c4655;color:#d2dfe4;border-color:#49616e}.selection-panel .contact{border-color:#49606c;color:#d0dedf}.selection-panel .contact small{color:#a9bec5}
.side-option{background:#edf0ed;border-color:#c2ced1;transition:background .2s,border-color .2s}.side-option:hover{background:#dce8e4;border-color:#547e70}dialog{background:#f7f6f1;border:1px solid #a6b5ba;border-radius:10px;box-shadow:0 24px 80px #0a25354d}dialog[open]{animation:dialog-enter .24s cubic-bezier(.2,.8,.2,1)}dialog::backdrop{background:#112c3ecc;backdrop-filter:blur(3px)}
.empty-bookings{border-radius:8px;background:#e6ebe7;border-color:#c3ceca}.empty-bookings .eyebrow{display:none}
footer{color:#536974;border-color:#c5cfce;font-size:11px}
@keyframes dialog-enter{from{transform:translateY(10px) scale(.985);opacity:.6}to{transform:translateY(0) scale(1);opacity:1}}
@media(max-width:1050px){.booking-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.selection-panel{padding:20px}.map-shell{padding:16px}.greeting h1{font-size:42px}}
@media(max-width:800px){.booking-layout{grid-template-columns:1fr}.selection-panel{margin-top:0}.greeting{align-items:flex-start;flex-direction:column;gap:8px;padding:25px 0}.greeting h1{font-size:39px}.month{padding:15px 9px}.month>span{font-size:13px}.header{gap:15px}.wordmark{font-size:25px}.header nav{gap:20px}}
@media(max-width:540px){.header{flex-wrap:wrap;padding:20px 5% 12px;gap:12px}.header nav{order:3;width:100%;margin:6px 0 0;justify-content:center;gap:40px}.language-toggle{margin-left:auto}.settings{margin-left:0}.wordmark{font-size:25px}.month>span{font-size:13px}.month>small{font-size:10px}.months{grid-template-columns:repeat(3,1fr);border:0;gap:5px;background:transparent;overflow:visible}.month{border:1px solid #c8d0d2!important;background:#e6e9e7;border-radius:4px;min-height:82px}.month.active{background:#274859;border-color:#274859!important}.map-shell{padding:11px}.greeting h1{font-size:38px}.availability{max-width:115px;font-size:9px!important;padding:6px 8px}.cabin span{font-size:21px}.cabin small{font-size:8px}.reception{font-size:8px}.aisle-label{font-size:8px}.table{font-size:10px}.rack>small{font-size:11px}.map-heading p{max-width:180px}.selection-panel h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Final readability and alignment pass. */
.wordmark>span{font-size:11px}.selection-panel{margin-top:66px}.selection-panel .empty-selection{border-bottom:0;padding-bottom:0}.selection-panel .contact small{font-size:11px}.map-heading .availability{display:none}.aisle-label,.entrance{font-size:11px}.cabin small{font-size:10px}
@media(max-width:800px){.selection-panel{margin-top:0}.section-heading>span{font-size:11px}}
@media(max-width:540px){.map-heading p{max-width:none;font-size:11px}.aisle-label{font-size:9px}.reception{font-size:9px}.wordmark>span{font-size:10px}.map-note{font-size:11px}}
