html body{font-family:'DM Sans',sans-serif!important;font-size:14px!important}
html body .kicker{font-family:'Space Mono',monospace!important}
.hero .kicker,.experience .kicker{display:flex;align-items:center;gap:11px;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.hero .kicker:before,.experience .kicker:before{content:"";display:block;flex:0 0 28px;width:28px;height:1px;background:#f2141b}
.hero .kicker{margin-bottom:20px}
#how:before{content:"No back-and-forth";display:block;width:max-content;margin-bottom:20px;padding-left:39px;background:linear-gradient(#f2141b,#f2141b) left center/28px 1px no-repeat;color:#777;font:10px 'Space Mono',monospace;letter-spacing:.17em;text-transform:uppercase}
.contact:before{content:"Contact SaxSam";position:absolute;left:35px;top:24px;padding-left:39px;background:linear-gradient(#f2141b,#f2141b) left center/28px 1px no-repeat;color:#aaa;font:10px 'Space Mono',monospace;letter-spacing:.17em;text-transform:uppercase}
.contact{position:relative;padding-top:62px!important}
html body .hero h1,html body .section h2,html body .room h3,html body .step h3,html body .contact h2,html body .modal h2{font-family:'DM Serif Display',serif!important;font-weight:400!important}
html body .hero{min-height:570px;padding-top:62px;padding-bottom:48px}
html body .hero h1{font-size:clamp(48px,5.8vw,80px);line-height:.94}
.hero-meta{display:flex;align-items:stretch;margin-top:38px;padding-top:19px;border-top:1px solid #d9d9d5}
.hero-detail{padding-right:22px;margin-right:22px;border-right:1px solid #d9d9d5}
.hero-detail:last-child{padding-right:0;margin-right:0;border-right:0}
.hero-detail span{display:block;margin-bottom:3px;color:#777;font:10px 'Space Mono',monospace}
.hero-detail b{display:block;color:#111;font-size:12px;font-weight:500;white-space:nowrap}
html body .showcase{cursor:grab;touch-action:pan-y;user-select:none}
html body .showcase.dragging{cursor:grabbing}
html body .slides{border:1px solid #333}
html body .slide{transition:transform .58s cubic-bezier(.22,.75,.25,1);pointer-events:none}
html body .slide.active{pointer-events:auto}
html body .room{min-height:285px;transition:transform .2s,border-color .2s,box-shadow .2s}
html body .room:hover{transform:translateY(-5px);border-color:#999;box-shadow:0 18px 40px #00000014}
html body .room h3{font-size:28px}
html body .contact h2{font-size:clamp(34px,4vw,52px);margin:0}
html body .slot{font-family:'Space Mono',monospace;font-size:12px}
html body .slot:not(.booked):not(:disabled){position:relative;transition:transform .18s cubic-bezier(.2,.75,.25,1),background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
html body .slot:not(.booked):not(:disabled):hover{transform:translateY(-3px) scale(1.025);background:#111;color:#fff;border-color:#111;box-shadow:0 8px 18px rgba(17,17,17,.18)}
html body .slot:not(.booked):not(:disabled):active{transform:translateY(-1px) scale(.99);box-shadow:0 3px 9px rgba(17,17,17,.15)}
html body .slot:not(.booked):not(:disabled):focus-visible{outline:3px solid rgba(242,20,27,.25);outline-offset:2px;background:#111;color:#fff;border-color:#111}
html body .slot.booked,html body .slot:disabled{transform:none!important;box-shadow:none!important}
html body .slot.past{border-color:#d6d6d2!important;background:#efefec!important;color:#9a9a96!important;text-decoration:line-through;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html body .slot{transition:none!important}html body .slot:hover{transform:none!important}}
html body button,html body input,html body select,html body textarea{font-family:'DM Sans',sans-serif}
html body nav,html body .hero-actions,html body .room-intro,html body .amenity,html body .contact{font-family:'DM Sans',sans-serif}
html body .step>span,html body .field label,html body .calendar-note,html body footer{font-family:'Space Mono',monospace}
.room-section{padding-top:84px!important;padding-bottom:84px!important}
.room-section .kicker{display:flex;align-items:center;gap:11px;margin-bottom:22px;color:#767676;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.room-section .kicker:before{content:"";display:block;width:28px;height:1px;background:#f2141b}
html body .room-section h2{margin:0 0 4px;font-size:clamp(42px,4.7vw,57px);line-height:.95;letter-spacing:-.035em}
.room-intro{max-width:520px;margin:0 0 37px;color:#6b6b6b;font-size:14px;line-height:1.55}
html body .rooms{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
html body .room{position:relative;padding:0;min-height:286px;overflow:hidden;border-radius:14px;display:grid;grid-template-rows:171px 1fr;background:#fff}
.room-top{padding:27px 19px 20px;display:flex;flex-direction:column}
.room-top>small{font-family:'Space Mono',monospace;font-size:9px;letter-spacing:.08em;color:#8a8a8a}
.room-name{margin-top:auto}
html body .room-name h3{margin:0 0 5px;font-size:23px;line-height:1}
.room-name p{margin:0;color:#777;font-size:11px;white-space:nowrap}
.room-bottom{position:relative;z-index:1;border-top:1px solid #deded9;padding:19px 16px 16px;display:flex;flex-direction:column;overflow:hidden}
.room-bottom:before,.room-bottom:after{content:"";position:absolute;top:-9px;width:18px;height:18px;border-radius:50%;background:#f4f4f1;border:1px solid #deded9;z-index:3}
.room-bottom:before{left:-10px}.room-bottom:after{right:-10px}
.room-number{position:absolute;z-index:-1;right:-5px;top:-22px;color:#f1f1ef;font-family:'DM Serif Display',serif;font-size:105px;line-height:1}
html body .room .rate{position:relative;z-index:2;margin:0 0 15px;font-weight:700;font-size:21px;line-height:1}
html body .room .rate small{font-family:'Space Mono',monospace;font-size:9px;font-weight:400;text-transform:none;margin-left:5px;color:#777}
.room-book{position:relative;z-index:2;width:100%;margin-top:auto!important;padding:10px 12px;border:1px solid #111;border-radius:999px;background:#fff;color:#111;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;cursor:pointer}
.room-book:hover{background:#111;color:#fff}
.experience{max-width:1180px;margin:0 auto;padding:0 24px}
.experience-inner{border:1px solid #292929;border-radius:22px;background:#101010;color:#f5f5f2;padding:42px;display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center}
.experience-copy .kicker{color:#aaa;margin-bottom:20px}
.experience-copy h2{font-family:'DM Serif Display',serif;font-size:38px;font-weight:400;line-height:1.05;letter-spacing:-.025em;margin:0 0 14px}
.experience-copy>p{color:#d0d0d0;line-height:1.7;font-size:14px;margin:0}
.amenities{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#303030;border:1px solid #303030;border-radius:12px;overflow:hidden}
.amenity{background:#181818;padding:22px;min-height:132px}
.amenity>span{display:block;color:#f2141b;font:10px 'Space Mono',monospace;margin-bottom:22px}
.amenity h3{color:#fff;font-size:14px;margin:0 0 5px}
.amenity p{color:#bcbcbc;font-size:11px;line-height:1.5;margin:0}
.booking-modal{width:min(920px,100%);border-radius:24px}
.booking-modal .modal-head{padding:18px 34px 24px;background:linear-gradient(110deg,#fff5f4,#fff);align-items:center}
.booking-modal .modal-head:before{display:none}
.booking-modal .modal-head h2{margin:9px 0 0;font:26px 'DM Sans',sans-serif!important;font-weight:700!important}
.step-badge{display:inline-block;border:1px solid #edc9c8;border-radius:999px;padding:4px 9px;color:#a21d24;font:700 9px 'Space Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.booking-modal .body{padding:24px 34px 28px}
.calendar-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;margin-bottom:24px}
.calendar-nav strong{text-align:center;font-size:17px}
.calendar-nav button{width:34px;height:34px;border:0;border-radius:50%;background:#f6f6f4;color:#222;font-size:17px;cursor:pointer}
.calendar-nav button:first-child{border:2px solid #1767bd;background:#fff;color:#1767bd}
.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;text-align:center}
.calendar-week{margin-bottom:12px;color:#969696;font:9px 'Space Mono',monospace;text-transform:uppercase}
.calendar-grid{grid-auto-rows:46px}
.calendar-grid>span{display:block}
.calendar-day{justify-self:center;width:46px;height:46px;border:0;border-radius:50%;background:#f5f5f3;color:#333;font:13px 'DM Sans',sans-serif;cursor:pointer}
.calendar-day:hover{background:#111;color:#fff}
.calendar-day.today{border:2px solid #e1322c;background:#fff;color:#d62e29;font-weight:700}
.calendar-day.disabled{background:transparent;color:#c8c8c8;cursor:not-allowed}
.calendar-note{margin:25px 0 0;color:#777;font-size:12px}
.back-link{border:0;background:transparent;color:#555;padding:0;margin-bottom:14px;cursor:pointer}
.selected-date{padding:14px 16px;border:1px solid #eee6e3;border-radius:12px;background:#fffaf8;font-weight:600;margin-bottom:12px}
.selected-room-field{margin-bottom:14px}
.booking-success{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px 20px 52px}
.booking-success:before{content:"✓";display:grid;place-items:center;width:48px;height:48px;margin-bottom:18px;border-radius:50%;background:#111;color:#fff;font-size:20px;box-shadow:0 0 0 8px #f4f4f1}
.booking-success h2{margin:0 0 9px!important;font-family:'DM Serif Display',serif!important;font-size:28px!important;font-weight:400!important}
.booking-success p{max-width:370px;margin:0 0 22px;color:#696969;font-size:12px;line-height:1.55}
.booking-success strong{display:block;margin:0 0 18px;padding:13px 20px;border:1px dashed #d9d9d5;border-radius:11px;background:#f7f7f4;color:#e43a2f;font-family:'Space Mono',monospace;font-size:22px;line-height:1.15;letter-spacing:.02em}
.success-booking-btn{display:inline-block;margin-top:0;padding:12px 23px;border-radius:999px;background:#111;color:#fff;text-decoration:none;font-size:12px;font-weight:600}
.success-booking-btn:hover{background:#f2141b}
@media(max-width:600px){.booking-modal .modal-head,.booking-modal .body{padding-left:20px;padding-right:20px}.booking-modal .modal-head h2{font-size:25px!important}.calendar-week,.calendar-grid{gap:3px}.calendar-grid{grid-auto-rows:40px}.calendar-day{width:38px;height:38px}.calendar-note{font-size:11px}}
@media(max-width:600px){.experience{padding:0 16px}.experience-inner{padding:28px 20px;gap:28px}.experience-copy h2{font-size:36px}.amenities{grid-template-columns:1fr}}
@media(max-width:600px){.hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:15px}.hero-detail{padding:0;margin:0;border:0}.hero-detail:last-child{grid-column:1/-1}}
.gallery-arrows{position:absolute;z-index:4;left:30px;right:30px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;pointer-events:none;opacity:0;transition:opacity .2s}
.showcase:hover .gallery-arrows,.showcase:focus-within .gallery-arrows{opacity:1}
.gallery-arrow{pointer-events:auto;width:34px;height:34px;border:1px solid #ffffff77;border-radius:50%;background:#0009;color:#fff;font-size:17px;cursor:pointer}
.gallery-arrow:hover{background:#f2141b;border-color:#f2141b}
@media(max-width:900px){html body header{padding:12px 18px}html body .hero{min-height:auto}.gallery-arrows{opacity:1}html body .rooms{grid-template-columns:repeat(2,1fr)}.experience-inner{grid-template-columns:1fr}}
@media(max-width:600px){html body header{gap:10px}html body .brand{font-size:0}html body .brand img{width:38px;height:38px}html body nav{gap:8px}html body nav .btn{padding:10px 14px}html body .hero{padding-top:38px}html body .hero h1{font-size:49px}html body .showcase{aspect-ratio:4/5;border-radius:18px}html body .rooms{grid-template-columns:1fr}.gallery-arrows{display:none}}
@keyframes availability-spin{to{transform:rotate(360deg)}}
.availability-loader{display:flex;align-items:center;gap:11px;padding:18px 2px;color:#666}
.availability-loader p{margin:0}
.availability-loader span{width:19px;height:19px;border:2px solid #ddd;border-top-color:var(--red);border-radius:50%;animation:availability-spin .7s linear infinite}
.availability-error{padding:18px;border:1px solid #efc4c4;border-radius:12px;background:#fff5f4;color:#842029}
.availability-error p{margin:5px 0 13px}
.availability-error button{border:0;border-radius:999px;padding:9px 15px;background:#111;color:#fff;cursor:pointer}
.completion-payment{margin-top:25px;padding-top:23px;border-top:1px solid #ddd;text-align:left}.completion-payment h3{margin:0 0 14px;font:24px 'DM Serif Display',serif}.completion-payment-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:15px}.completion-qr{min-height:190px;display:grid;place-content:center;text-align:center;padding:20px;border:1px dashed #aaa;border-radius:13px;background:#f7f7f4;color:#777}.completion-qr b{display:block;color:#111;margin-bottom:5px}.completion-qr span{font-size:12px}.completion-proof{display:grid;align-content:start;gap:7px}.completion-proof label{margin-top:4px;color:#666;font:10px 'Space Mono',monospace;text-transform:uppercase}.completion-proof input{width:100%;padding:11px;border:1px solid #ddd;border-radius:9px;background:#fafafa}.completion-proof button{margin-top:6px;padding:11px;border:0;border-radius:999px;background:#111;color:#fff;font-weight:600;cursor:pointer}.completion-proof button:hover{background:var(--red)}#completionPaymentMessage{display:none;margin-top:4px;padding:10px;border-radius:9px;font-size:12px}.payment-waiting{display:block!important;background:#f4f4f1;color:#555}.payment-sent{display:block!important;background:#e8f7ee;color:#176b42}.payment-failed{display:block!important;background:#fff0f0;color:#a21d24}@media(max-width:600px){.completion-payment-grid{grid-template-columns:1fr}.completion-qr{min-height:145px}}
.payment-step .completion-payment-grid{grid-template-columns:minmax(300px,1.08fr) minmax(270px,.92fr);align-items:start}.payment-step .completion-qr.qr-ready{display:flex;flex-direction:column;align-items:center;padding:18px;border:1px solid #d8d8d3;background:#fff;box-shadow:0 10px 28px #0000000c}.qr-ready .qr-label{align-self:flex-start;margin-bottom:10px;color:#c72d28;font:700 9px 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.qr-ready .qr-image-link{display:block;width:min(340px,100%);padding:8px;border:1px solid #e0e0dc;border-radius:14px;background:#fff;line-height:0;transition:.2s}.qr-ready .qr-image-link:hover{border-color:#111;box-shadow:0 8px 22px #0002;transform:translateY(-2px)}.qr-ready .qr-image-link img{display:block;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain;margin:0!important;border-radius:8px!important;background:#fff}.qr-ready>b{margin-top:13px;font-size:16px}.qr-ready>span:not(.qr-label){max-width:340px;line-height:1.45}.qr-ready .download-qr{margin-top:12px}@media(max-width:760px){.payment-step .completion-payment-grid{grid-template-columns:1fr}.qr-ready .qr-image-link{width:min(380px,100%)}}@media(max-width:430px){.payment-step .completion-qr.qr-ready{padding:12px}.qr-ready .qr-image-link{padding:5px}}
html{scroll-behavior:smooth;scroll-padding-top:82px}.scroll-reveal{--reveal-delay:0ms}.motion-ready .scroll-reveal{opacity:0;transform:translate3d(0,34px,0);filter:blur(3px);transition:opacity .75s cubic-bezier(.2,.7,.2,1) var(--reveal-delay),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay),filter .75s ease var(--reveal-delay)}.motion-ready .scroll-reveal.reveal-left{transform:translate3d(-34px,18px,0)}.motion-ready .scroll-reveal.reveal-scale{transform:translate3d(0,24px,0) scale(.975)}.motion-ready .scroll-reveal.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}.room.scroll-reveal{transition-property:opacity,transform,filter,box-shadow,border-color}.room.scroll-reveal.is-visible:hover{transform:translateY(-7px);box-shadow:0 18px 38px #00000012;border-color:#c9c9c3}.experience-inner{position:relative;overflow:hidden}.experience-inner:after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--red);transition:width 1.2s cubic-bezier(.2,.7,.2,1) .25s}.experience-inner.flow-visible:after{width:100%}.step.scroll-reveal.is-visible{transition-property:opacity,transform,filter,background-color}.step.scroll-reveal.is-visible:hover{background:#181818}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .scroll-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.experience-inner:after{transition:none;width:100%}}
.rooms{gap:14px!important;align-items:stretch}.room{height:100%;grid-template-rows:176px minmax(118px,1fr)!important}.room-top{padding:24px 20px!important}.room-bottom{padding:18px 20px!important}.amenities{gap:14px!important;border:0!important;background:transparent!important;overflow:visible!important}.amenity{height:100%;min-height:145px!important;padding:22px!important;border:1px solid #303030;border-radius:12px}.steps{gap:14px!important;background:transparent!important;overflow:visible!important}.step{height:100%;padding:28px!important;border:1px solid #292929;border-radius:14px}.contact{gap:42px!important}@media(max-width:900px){.rooms,.amenities,.steps{gap:12px!important}}@media(max-width:600px){.rooms,.amenities,.steps{gap:10px!important}.room{grid-template-rows:165px minmax(112px,1fr)!important}.contact{gap:20px!important}}
.rooms{gap:20px!important}.room-top{padding:27px 22px!important}.room-bottom{padding:20px 22px!important}.amenities,.steps{gap:18px!important}.amenity{padding:25px!important}.step{padding:32px!important}.experience{padding-top:18px!important;padding-bottom:18px!important}@media(max-width:1100px){.rooms{gap:15px!important}.room-top{padding-left:18px!important;padding-right:18px!important}.room-bottom{padding-left:18px!important;padding-right:18px!important}}@media(max-width:900px){.rooms,.amenities,.steps{gap:18px!important}}@media(max-width:600px){.rooms,.amenities,.steps{gap:16px!important}.room-top{padding:25px 21px!important}.room-bottom{padding:19px 21px!important}.amenity,.step{padding:24px!important}}
.payment-close-note{margin:18px 0 0;padding:11px 14px;border-radius:10px;background:#f4f4f1;color:#777;font-size:11px;text-align:center}
footer{display:block}.footer-saxsam{padding-bottom:2px}

/* Cinematic experience, booking journey, and contact finale */
.experience-inner{isolation:isolate;padding:70px 46px 48px!important;background:radial-gradient(circle at 14% 12%,#2d1214 0,transparent 30%),linear-gradient(135deg,#111 0,#0d0d0d 65%,#171717 100%)!important;box-shadow:0 28px 65px #0002}
.experience-inner:before{content:"";position:absolute;z-index:-1;inset:0;background:repeating-linear-gradient(90deg,transparent 0 68px,#ffffff05 69px 70px);pointer-events:none}
.experience-marquee{position:absolute;left:0;right:0;top:0;overflow:hidden;padding:10px 22px;border-bottom:1px solid #ffffff12;color:#ffffff54;font:8px 'Space Mono',monospace;letter-spacing:.22em;white-space:nowrap}
.experience-copy{position:relative}.experience-copy:after{content:"S";position:absolute;z-index:-1;left:-25px;bottom:-60px;color:#ffffff05;font:190px/1 'DM Serif Display',serif}
.experience-badge{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin-top:25px;padding:9px 12px;border:1px solid #ffffff1f;border-radius:999px;background:#ffffff09;color:#d6d6d2;font-size:10px}.experience-badge i{width:7px;height:7px;border-radius:50%;background:#f2141b;box-shadow:0 0 0 5px #f2141b20}
.amenity{position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease,background .25s ease}.amenity:after{content:"";position:absolute;right:-25px;bottom:-25px;width:75px;height:75px;border:1px solid #ffffff0c;border-radius:50%}.amenity:hover{transform:translateY(-5px);border-color:#f2141b66;background:#1d1717!important}.amenity-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.amenity-top>span{margin:0!important;color:#f2141b;font:9px 'Space Mono',monospace}.amenity-top>i{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff1c;border-radius:50%;color:#fff;font:400 16px 'Space Mono',monospace;font-style:normal}.amenity h3{font-size:17px!important}.amenity p{max-width:220px}
#how:before{display:none}.how-section{padding-top:100px!important;padding-bottom:95px!important}.how-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:38px}.how-heading .kicker{display:flex;align-items:center;gap:11px;margin-bottom:19px;color:#777;font:9px 'Space Mono',monospace;letter-spacing:.17em;text-transform:uppercase}.how-heading .kicker:before{content:"";width:28px;height:1px;background:#f2141b}.how-heading h2{margin:0!important}.how-heading>p{max-width:390px;margin:0 0 4px;color:#666;line-height:1.7}
.steps{counter-reset:journey;position:relative}.step{position:relative;isolation:isolate;overflow:hidden;min-height:290px!important;background:linear-gradient(145deg,#101010,#171717)!important;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important}.step:before{content:"";position:absolute;z-index:-1;right:-38px;bottom:-55px;width:155px;height:155px;border:1px solid #ffffff0c;border-radius:50%;box-shadow:0 0 0 28px #ffffff05}.step:hover{transform:translateY(-7px)!important;border-color:#f2141b77!important;box-shadow:0 22px 45px #0002}.step-top{display:flex;align-items:center;justify-content:space-between}.step-top>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff24;border-radius:50%;color:#fff!important}.step-top>i{color:#f2141b;font:8px 'Space Mono',monospace;font-style:normal;letter-spacing:.13em}.step-symbol{margin-top:38px;color:#ffffff2b;font:38px/1 'Space Mono',monospace}.step h3{margin:20px 0 9px!important;font-size:27px!important}.step p{max-width:280px;line-height:1.65}.how-cta{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:18px;padding:18px 22px;border:1px solid #d9d9d4;border-radius:14px;background:#fff;color:#111;cursor:pointer}.how-cta span{color:#777;font-size:12px}.how-cta b{font-size:13px}.how-cta:hover{border-color:#111;background:#111;color:#fff}.how-cta:hover span{color:#bbb}
.contact-section{padding-top:20px!important}.contact:before{display:none}.contact{isolation:isolate;overflow:hidden;min-height:360px;padding:55px!important;background:radial-gradient(circle at 90% 20%,#451417 0,transparent 30%),#101010!important}.contact:after{content:"SAXSAM";position:absolute;z-index:-1;left:-8px;bottom:-38px;color:#ffffff05;font:120px/1 'DM Serif Display',serif;letter-spacing:.03em}.contact-copy{display:flex;align-items:flex-start;flex-direction:column}.contact-eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:23px;color:#aaa;font:9px 'Space Mono',monospace;letter-spacing:.17em;text-transform:uppercase}.contact-eyebrow:before{content:"";width:28px;height:1px;background:#f2141b}.contact-copy p{max-width:430px;margin:18px 0 26px;color:#aaa;line-height:1.7}.contact-copy button{margin-top:auto;padding:12px 17px;border:1px solid #ffffff2b;border-radius:999px;background:#fff;color:#111;font-weight:700;cursor:pointer}.contact-copy button:hover{background:#f2141b;color:#fff;border-color:#f2141b}.contact-links{align-self:stretch;display:flex;justify-content:center;flex-direction:column}.contact-links>a,.contact-place{display:grid;grid-template-columns:105px 1fr auto;align-items:center;gap:14px;padding:22px 4px!important;border-bottom:1px solid #ffffff19;color:#fff;text-decoration:none}.contact-links>a:first-child{border-top:1px solid #ffffff19}.contact-links span{color:#888;font:8px 'Space Mono',monospace;text-transform:uppercase;letter-spacing:.13em}.contact-links b{font-size:14px}.contact-links i{color:#777;font-style:normal;transition:transform .2s,color .2s}.contact-links>a:hover i{transform:translate(3px,-3px);color:#f2141b}.contact-links>a:hover b{color:#f4b5b7}.contact-place i{padding:5px 8px;border:1px solid #ffffff25;border-radius:999px;color:#aaa;font:8px 'Space Mono',monospace;font-style:normal}
@media(max-width:900px){.experience-inner{padding:66px 30px 38px!important}.how-heading{grid-template-columns:1fr;gap:16px}.contact{padding:45px 35px!important}.steps{grid-template-columns:1fr!important}.step{min-height:240px!important}}
@media(max-width:600px){.experience{padding-left:16px!important;padding-right:16px!important}.experience-inner{padding:64px 20px 26px!important;border-radius:18px}.experience-copy h2{font-size:35px}.experience-badge{font-size:9px}.amenity h3{font-size:18px!important}.how-section{padding-top:70px!important;padding-bottom:70px!important}.how-heading{margin-bottom:25px}.step{min-height:245px!important}.how-cta{align-items:flex-start;flex-direction:column;gap:6px}.contact-section{padding-top:0!important}.contact{min-height:0;padding:48px 24px 30px!important}.contact-copy button{margin-bottom:35px}.contact-links>a,.contact-place{grid-template-columns:78px 1fr auto;padding:18px 0!important}.contact-links b{font-size:12px}.contact:after{font-size:75px}}
.how-cta,.contact-copy button{display:none!important}.contact-copy p{margin-bottom:0}.contact-links{justify-content:center}
@keyframes customer-pop{0%{opacity:0;transform:translate3d(0,20px,0) scale(.975)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes customer-modal-pop{0%{opacity:0;transform:translate3d(0,28px,0) scale(.94)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.hero>div:first-child{animation:customer-pop .7s cubic-bezier(.2,.75,.25,1) both}.hero .showcase{animation:customer-pop .8s cubic-bezier(.2,.75,.25,1) .12s both}.overlay.open .booking-modal{animation:customer-modal-pop .38s cubic-bezier(.2,.8,.25,1) both}#calendarStep,#scheduleStep,#termsStep,#details,.payment-step,.booking-finished,.booking-success{animation:customer-pop .4s cubic-bezier(.2,.75,.25,1) both}.room-schedule{animation:customer-pop .35s cubic-bezier(.2,.75,.25,1) both}.room-schedule:nth-child(2){animation-delay:.05s}.room-schedule:nth-child(3){animation-delay:.1s}.room-schedule:nth-child(4){animation-delay:.15s}.room-schedule:nth-child(5){animation-delay:.2s}
@media(prefers-reduced-motion:reduce){.hero>div:first-child,.hero .showcase,.overlay.open .booking-modal,#calendarStep,#scheduleStep,#termsStep,#details,.payment-step,.booking-finished,.booking-success,.room-schedule{animation:none!important}}
.payment-step .service-fee-card>p{max-width:none;margin:14px 0 0}.payment-breakdown{display:grid;width:100%;margin-top:4px}.payment-breakdown>span{display:grid;grid-template-columns:115px 1fr auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eadedb}.payment-breakdown i{color:#777;font:8px 'Space Mono',monospace;font-style:normal;text-transform:uppercase;letter-spacing:.08em}.payment-breakdown b{color:#444;font-size:11px;font-weight:500}.payment-breakdown strong{color:#111;font-size:12px}.payment-breakdown .payment-breakdown-total{margin-top:5px;padding-top:15px;border-bottom:0}.payment-breakdown-total i{color:#111;font-size:10px;font-weight:700}.payment-breakdown-total strong{grid-column:2/4;color:var(--red);font-size:23px;text-align:right}.booking-finished>.payment-breakdown,.booking-success .payment-breakdown{max-width:520px;margin:18px auto;text-align:left}.booking-finished>p .payment-breakdown{display:grid}@media(max-width:600px){.payment-breakdown>span{grid-template-columns:1fr auto;gap:3px 10px}.payment-breakdown i{grid-column:1/-1}.payment-breakdown b{grid-column:1}.payment-breakdown strong{grid-column:2}.payment-breakdown-total strong{grid-column:2}}
html body .rooms{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}html body .room{min-height:475px!important;grid-template-rows:230px auto 1fr!important;border-radius:18px!important}.room-photo{position:relative;overflow:hidden;background:#111}.room-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.75,.25,1)}.room:hover .room-photo img{transform:scale(1.045)}.room-photo:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,#0008);pointer-events:none}.room-photo-placeholder{display:grid;place-content:center;width:100%;height:100%;background:radial-gradient(circle at 75% 20%,#3b3b3b 0,transparent 35%),linear-gradient(135deg,#090909,#242424);color:#fff;text-align:center}.room-photo-placeholder>span{font:44px 'DM Serif Display',serif}.room-photo-placeholder>small{margin-top:6px;color:#aaa;font:9px/1.6 'Space Mono',monospace;text-transform:uppercase;letter-spacing:.08em}.room-type{position:absolute;z-index:2;left:17px;top:17px;padding:6px 9px;border:1px solid #ffffff3d;border-radius:999px;background:#0009;color:#fff!important;font:8px 'Space Mono',monospace!important;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(7px)}html body .room-top{padding:22px 23px 14px!important}.room-name{margin:0}.room-name p{white-space:normal}.room-bottom{padding:17px 23px 21px!important}.room-pricing{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:18px}.room-pricing p{margin:0;color:#888;font-size:9px;text-align:right}.room-bottom .room-number{right:4px;top:-32px;font-size:115px}.room-book{padding:12px 14px!important}@media(max-width:900px){html body .rooms{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}html body .room{min-height:450px!important;grid-template-rows:215px auto 1fr!important}}@media(max-width:600px){html body .rooms{grid-template-columns:1fr!important;gap:18px!important}html body .room{min-height:445px!important;grid-template-rows:220px auto 1fr!important}.room-pricing{align-items:start;flex-direction:column}.room-pricing p{text-align:left}}
@media(max-width:600px){html body .room-section{padding-left:11px!important;padding-right:11px!important}html body .room-section h2{font-size:37px}.room-intro{margin-bottom:22px;font-size:12px}html body .rooms{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}html body .room{min-width:0;min-height:306px!important;grid-template-rows:118px auto 1fr!important;border-radius:12px!important}.room-type{left:8px;top:8px;max-width:calc(100% - 16px);padding:4px 6px;font-size:6px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html body .room-top{padding:12px 10px 8px!important}html body .room-name h3{font-size:17px}.room-name p{font-size:8px;line-height:1.35}.room-bottom{padding:10px 9px 11px!important}.room-bottom .room-number{top:-10px;font-size:62px}.room-pricing{display:block;margin-bottom:9px}.room-pricing p{margin-top:4px;font-size:7px;text-align:left}html body .room .rate{margin:0;font-size:15px}html body .room .rate small{display:block;margin:3px 0 0;font-size:7px}.room-book{min-height:34px;padding:7px 5px!important;font-size:8px;line-height:1.25}.room-photo-placeholder>span{font-size:28px}.room-photo-placeholder>small{display:none}}
@media(max-width:900px) and (orientation:landscape) and (min-width:601px){html body .room-section{padding-left:16px!important;padding-right:16px!important}html body .rooms{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}html body .room{min-height:330px!important;grid-template-rows:135px auto 1fr!important}html body .room-top{padding:14px 13px 9px!important}.room-bottom{padding:11px 13px 13px!important}.room-pricing{margin-bottom:10px}.room-book{padding:8px!important;font-size:9px}}
/* Keep the compact mobile header useful instead of leaving an empty right side. */
@media(max-width:600px){html body header{min-height:62px;padding:10px 12px!important}html body header nav{display:flex;margin-left:auto}html body header nav a{display:none!important}html body header nav a:last-child{display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;padding:8px 13px;border:1px solid #d8d8d3;border-radius:999px;background:#111;color:#fff;font-size:10px;font-weight:700;letter-spacing:.02em}html body header nav a:last-child:hover{background:var(--red);border-color:var(--red)}html body .brand img{display:block}}
.mobile-menu-toggle{display:none}
@media(max-width:600px){html body>header{position:sticky;display:flex;min-height:64px;padding:9px 12px!important;overflow:visible}html body>header .brand{min-width:0;gap:8px;font-size:0!important}html body>header .brand span{display:block;overflow:hidden;color:#111;font:700 10px/1.15 'DM Sans',sans-serif;letter-spacing:.075em;white-space:nowrap;text-overflow:ellipsis}html body>header .brand img{flex:0 0 40px;width:40px;height:40px}.mobile-menu-toggle{display:grid;flex:0 0 40px;place-content:center;gap:4px;width:40px;height:40px;margin-left:10px;padding:0;border:1px solid #deded9;border-radius:11px;background:#fff;color:#111;cursor:pointer}.mobile-menu-toggle i{display:block;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform .25s ease,opacity .2s ease}.mobile-menu-open .mobile-menu-toggle i:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-open .mobile-menu-toggle i:nth-child(2){opacity:0}.mobile-menu-open .mobile-menu-toggle i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}html body>header nav{position:absolute;top:calc(100% + 7px);left:10px;right:10px;display:grid!important;gap:4px;margin:0!important;padding:8px;border:1px solid #deded9;border-radius:15px;background:#fff;box-shadow:0 18px 45px #0002;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .22s ease,transform .22s ease,visibility .22s}.mobile-menu-open nav{opacity:1;visibility:visible;transform:none}html body>header nav a,html body>header nav a:last-child{display:flex!important;align-items:center;justify-content:space-between;min-height:42px;padding:10px 13px;border:0;border-radius:9px;background:#fff;color:#222;font:600 11px 'DM Sans',sans-serif;letter-spacing:0}html body>header nav a:after{content:'→';color:#aaa}html body>header nav a:hover,html body>header nav a:last-child:hover{background:#111;color:#fff}html body>header nav a:hover:after{color:#fff}}
.room-unavailable{border-color:#d8d8d3!important;background:#f0f0ed!important;box-shadow:none!important}.room-unavailable .room-photo img,.room-unavailable .room-photo-placeholder{filter:grayscale(1);opacity:.42}.room-unavailable .room-photo:after{height:100%;background:#1116}.room-unavailable .room-type{border-color:#fff6;background:#111;color:#fff!important}.room-unavailable .room-name,.room-unavailable .room-pricing{opacity:.58}.room-unavailable:hover{transform:none!important;box-shadow:none!important}.room-unavailable:hover .room-photo img{transform:none}.room-unavailable .room-book:disabled{background:#c8c8c3!important;color:#666!important;cursor:not-allowed;opacity:1}
.room-gallery-track{position:absolute;inset:0}.room-gallery-image{position:absolute;inset:0;opacity:0;transform:scale(1.015);transition:opacity .35s ease,transform .55s cubic-bezier(.2,.75,.25,1)!important}.room-gallery-image.active{opacity:1;transform:scale(1)}.room:hover .room-gallery-image{transform:scale(1.015)}.room-gallery-button{position:absolute;z-index:4;top:50%;display:grid;place-content:center;width:30px;height:30px;padding:0!important;border:1px solid #ffffff66;border-radius:50%;background:#0009;color:#fff;font-size:20px;line-height:1;opacity:0;transform:translateY(-50%);transition:opacity .2s ease,background .2s ease}.room-gallery:hover .room-gallery-button,.room-gallery:focus-within .room-gallery-button{opacity:1}.room-gallery-button:hover{background:var(--red)}.room-gallery-prev{left:9px}.room-gallery-next{right:9px}.room-gallery-count{position:absolute;z-index:4;right:10px;bottom:9px;padding:4px 7px;border-radius:999px;background:#000a;color:#fff;font:7px 'Space Mono',monospace}.room-unavailable .room-gallery-button{display:none}@media(max-width:600px){.room-gallery-button{display:none}.room-gallery-count{right:6px;bottom:6px;padding:3px 5px;font-size:6px}}

/* Polished customer layout for phones. Desktop rules remain unchanged. */
@media(max-width:600px){
html body{overflow-x:hidden;background:#f6f6f3}
html body>header{min-height:66px;padding:10px 16px!important;border-bottom-color:#e5e5df;background:#fffffff2;backdrop-filter:blur(14px)}
html body>header .brand{gap:9px!important}
html body>header .brand img{width:42px;height:42px;box-shadow:0 4px 14px #0002}
html body>header .brand span{max-width:185px;font-size:10px!important;letter-spacing:.09em}
.mobile-menu-toggle{width:42px;height:42px;border-radius:13px;box-shadow:0 3px 12px #0000000a}
html body .hero{display:grid;gap:28px;padding:35px 16px 52px!important}
html body .hero .kicker{font-size:8px;letter-spacing:.13em}
html body .hero h1{margin:13px 0 16px;font-size:clamp(42px,13vw,53px);line-height:.91;letter-spacing:-.035em}
html body .hero>div:first-child>p{max-width:340px;font-size:14px;line-height:1.65}
.hero-actions{align-items:stretch;flex-direction:column;gap:10px;margin-top:24px}
.hero-actions .btn{width:100%;min-height:48px;padding:13px 18px;border-radius:14px;font-size:12px}
.hero-actions>span{text-align:center;font-size:10px}
html body .showcase{aspect-ratio:4/3;border-radius:18px;box-shadow:0 20px 42px #0003}
.hero-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin-top:26px}
.hero-detail,.hero-detail:last-child{grid-column:auto!important;min-width:0;padding:11px 8px!important;border:1px solid #e3e3de!important;border-radius:12px;background:#fff;text-align:center}
.hero-detail span{font-size:7px}.hero-detail b{display:block;margin-top:5px;font-size:8px;line-height:1.35}
html body .section{padding-left:16px!important;padding-right:16px!important}
html body .room-section{padding-top:64px!important;padding-bottom:68px!important}
html body .room-section h2{font-size:clamp(37px,11vw,46px);line-height:.98}
.room-intro{max-width:330px;margin:15px 0 27px!important;font-size:13px!important;line-height:1.6}
html body .rooms{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
html body .room{min-height:348px!important;grid-template-rows:142px auto 1fr!important;border-radius:15px!important;box-shadow:0 10px 25px #0000000b}
.room-type{left:9px;top:9px;max-width:calc(100% - 18px);padding:5px 7px;font-size:6px!important}
html body .room-top{padding:14px 12px 8px!important}
html body .room-name h3{font-size:19px;line-height:1.05}
.room-name p{margin-top:6px;font-size:9px;line-height:1.4}
.room-bottom{padding:11px 12px 13px!important}
.room-bottom .room-number{top:-14px;font-size:68px}
.room-pricing{display:block;margin-bottom:11px}
html body .room .rate{font-size:17px}.room-pricing p{margin-top:5px;font-size:8px;line-height:1.3;text-align:left}
.room-book{width:100%;min-height:40px;padding:9px 7px!important;border-radius:10px;font-size:9px;line-height:1.25}
.room-gallery-count{right:8px;bottom:8px;padding:4px 6px;font-size:6px}
.experience{padding-top:12px!important;padding-bottom:12px!important}
.experience-inner{padding:62px 20px 28px!important;border-radius:20px!important}
.experience-copy h2{font-size:37px;line-height:1.02}.experience-copy p{font-size:13px;line-height:1.65}
.amenities{grid-template-columns:1fr 1fr!important;gap:10px!important}
.amenity{min-height:175px!important;padding:17px!important;border-radius:13px}.amenity-top{margin-bottom:20px}.amenity h3{font-size:15px!important}.amenity p{font-size:10px;line-height:1.5}
.how-section{padding-top:67px!important;padding-bottom:67px!important}.how-heading h2{font-size:41px}.how-heading>p{font-size:13px}
.steps{gap:12px!important}.step{min-height:220px!important;padding:23px!important}.step-symbol{margin-top:24px}.step h3{font-size:24px!important}.step p{font-size:12px}
.contact{padding:42px 22px 27px!important;border-radius:20px!important}.contact h2{font-size:39px}.contact-copy p{font-size:12px}.contact-links>a,.contact-place{grid-template-columns:72px minmax(0,1fr) auto;padding:17px 0!important}.contact-links b{overflow-wrap:anywhere;font-size:11px}
footer{padding:30px 18px!important}.footer-saxsam{font-size:10px;line-height:1.6}
.overlay{align-items:flex-end;padding:0}.booking-modal{max-height:94dvh;border-radius:22px 22px 0 0}.booking-modal .modal-head{position:sticky;z-index:5;top:0;padding:17px 18px 18px;background:#fff}.booking-modal .body{padding:20px 18px 28px}.slot{min-height:44px}.close{width:40px;height:40px}
}
@media(max-width:374px){html body .rooms{grid-template-columns:1fr!important}html body .room{min-height:430px!important;grid-template-rows:215px auto 1fr!important}.room-name p{font-size:10px}.room-book{font-size:10px}.amenities{grid-template-columns:1fr!important}}
@media(hover:none) and (pointer:coarse){.room.scroll-reveal.is-visible:hover,.step:hover,.amenity:hover{transform:none!important}.room:hover .room-photo img,.room:hover .room-gallery-image{transform:scale(1)!important}}
