.room-detail{--maxw:1280px;--maxw-narrow:880px;--booking-h:84px;background:var(--bg);color:var(--fg-1)}.room-detail a{text-decoration:none;color:inherit}.room-detail button{font:inherit;cursor:pointer}.room-detail img{max-width:100%;display:block}.room-detail .crumbs{padding:calc(var(--nav-h) + 32px) var(--gutter-h) 0;max-width:var(--maxw);margin:0 auto;font-family:var(--font-sans);font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3);display:flex;align-items:center;gap:14px}.room-detail .crumbs span{color:var(--fg-3)}.room-detail .crumbs a:hover{color:var(--fg-1)}.room-detail .crumbs .sep{opacity:.5}.room-detail .crumbs .here{color:var(--fg-1)}.room-detail .room-head{max-width:var(--maxw);margin:0 auto;padding:32px var(--gutter-h) 56px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end}.room-detail .room-head__title h1{font-family:var(--font-serif);font-weight:400;font-size:clamp(56px,8vw,112px);line-height:.96;letter-spacing:.005em;margin:0 0 28px;color:var(--fg-1)}.room-detail .room-head__title h1 em{font-style:italic;color:var(--fg-2);font-size:.82em}.room-detail .spec-line{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--rule);padding-top:22px;font-family:var(--font-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--fg-3)}.room-detail .spec-line__item{padding-right:28px;margin-right:28px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:6px}.room-detail .spec-line__item:last-child{border-right:0;margin-right:0;padding-right:0}.room-detail .spec-line__item strong{font-family:var(--font-serif);font-weight:400;font-style:normal;font-size:17px;letter-spacing:.005em;color:var(--fg-1);text-transform:none}.room-detail .room-head__aside{display:flex;flex-direction:column;gap:18px;align-items:flex-end;padding-bottom:8px}.room-detail .audio-pill{display:inline-flex;align-items:center;gap:12px;padding:10px 18px 10px 12px;border:1px solid var(--phi-ink);border-radius:999px;background:var(--bg);font-family:var(--font-sans);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--fg-1);transition:opacity var(--dur-quiet) var(--ease-quiet)}.room-detail .audio-pill:hover{opacity:.7}.room-detail .audio-pill__dot{width:30px;height:30px;border-radius:50%;background:var(--phi-ink);color:var(--bg);display:inline-flex;align-items:center;justify-content:center;position:relative;flex:0 0 auto}.room-detail .audio-pill__dot svg{margin-left:2px;display:block}.room-detail .audio-pill__dot:before{content:"";position:absolute;inset:-6px;border:1px solid var(--phi-ink);border-radius:50%;opacity:.25;animation:audioPulse 3s var(--ease-quiet) infinite}@keyframes audioPulse{0%{transform:scale(.85);opacity:.4}60%{transform:scale(1.25);opacity:0}to{transform:scale(1.25);opacity:0}}.room-detail .audio-pill__caption{font-family:var(--font-serif);font-style:italic;font-size:14px;letter-spacing:.005em;color:var(--fg-3);text-transform:none;text-align:right;max-width:240px;line-height:1.4}.room-detail .hero-img{position:relative;width:100%;aspect-ratio:16/9;max-height:78vh;overflow:hidden;background:var(--phi-stone)}.room-detail .hero-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.room-detail .anno-layer{position:absolute;inset:0;pointer-events:none}.room-detail .anno{position:absolute;pointer-events:auto;display:flex;align-items:flex-start;gap:10px;font-family:var(--font-serif);font-style:italic;font-size:17px;line-height:1.4;color:var(--phi-warm-white);max-width:260px;padding:10px 14px 10px 12px;background:linear-gradient(135deg,rgba(28,28,28,.62),rgba(28,28,28,.42));backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);border:1px solid rgba(247,244,240,.18);border-radius:2px;box-shadow:0 6px 24px rgba(0,0,0,.18)}.room-detail .anno:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--phi-warm-white);flex:0 0 auto;margin-top:9px;box-shadow:0 0 0 3px rgba(247,244,240,.18)}.room-detail .sec--gallery{padding:120px var(--gutter-h) 100px}.room-detail .gal-meta{display:flex;align-items:center;gap:24px;margin:-32px 0 80px;font-family:var(--font-sans);font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3)}.room-detail .gal-count{flex:0 0 auto}.room-detail .gal-rule{flex:0 0 56px;height:1px;background:var(--rule-strong)}.room-detail .gal-zones{display:flex;flex-wrap:wrap;gap:24px;flex:1}.room-detail .gal-zones a{color:var(--fg-3);transition:color var(--dur-quiet) var(--ease-quiet)}.room-detail .gal-zones a em{font-style:normal;color:var(--phi-deep-terracotta);margin-right:8px;font-family:var(--font-serif);letter-spacing:0;font-size:13px}.room-detail .gal-zones a:hover{color:var(--fg-1)}.room-detail .zone{display:grid;grid-template-columns:240px 1fr;gap:64px;margin-bottom:96px;padding-top:40px;border-top:1px solid var(--rule);scroll-margin-top:calc(var(--nav-h) + 24px)}.room-detail .zone:last-child{margin-bottom:0}.room-detail .zone__head{position:sticky;top:calc(var(--nav-h) + 24px);align-self:start;display:flex;flex-direction:column;gap:12px}.room-detail .zone__num{font-family:var(--font-sans);font-size:10px;letter-spacing:.45em;text-transform:uppercase;color:var(--phi-deep-terracotta)}.room-detail .zone__name{font-family:var(--font-serif);font-weight:400;font-size:clamp(28px,2.6vw,36px);line-height:1.05;letter-spacing:.01em;margin:0;color:var(--fg-1)}.room-detail .zone__name em{display:block;font-style:italic;color:var(--fg-2);font-size:.62em;margin-top:4px;letter-spacing:0}.room-detail .zone__note{font-family:var(--font-sans);font-weight:300;font-size:14px;line-height:1.7;color:var(--fg-2);margin:12px 0 0;max-width:28ch}.room-detail .zone__count{font-family:var(--font-serif);font-size:24px;color:var(--fg-1);margin-top:18px;padding-top:18px;border-top:1px solid var(--rule);display:flex;align-items:baseline;gap:10px}.room-detail .zone__count span{font-family:var(--font-sans);font-size:9px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3)}.room-detail .zone__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:stretch}.room-detail .zone__detail,.room-detail .zone__primary{position:relative;display:block;padding:0;border:0;background:var(--phi-stone);cursor:pointer;overflow:hidden;border-radius:2px;font:inherit;color:inherit;text-align:left}.room-detail .zone__primary{aspect-ratio:4/5;width:100%}.room-detail .zone__detail img,.room-detail .zone__primary img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform 1.1s var(--ease-quiet),filter var(--dur-quiet) var(--ease-quiet)}.room-detail .zone__detail:hover img,.room-detail .zone__primary:hover img{transform:scale(1.025)}.room-detail .zone__details{display:grid;grid-template-rows:1fr 1fr;gap:16px}.room-detail .zone__details--single{grid-template-rows:1fr}.room-detail .zone__detail{width:100%}.room-detail .zone__cap{position:absolute;left:14px;bottom:14px;right:14px;font-family:var(--font-serif);font-style:italic;font-size:13px;line-height:1.35;color:var(--phi-warm-white);padding:6px 10px;background:linear-gradient(135deg,rgba(28,28,28,.55),rgba(28,28,28,.32));backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:2px;display:flex;align-items:baseline;gap:8px;opacity:0;transform:translateY(4px);transition:opacity .32s var(--ease-quiet),transform .32s var(--ease-quiet);pointer-events:none}.room-detail .zone__cap em{font-style:normal;font-family:var(--font-sans);font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:rgba(247,244,240,.7);flex:0 0 auto}.room-detail .zone__detail:hover .zone__cap,.room-detail .zone__primary:hover .zone__cap{opacity:1;transform:translateY(0)}.room-detail .lb{position:fixed;inset:0;background:rgba(28,28,28,.94);z-index:200;display:flex;align-items:center;justify-content:center;padding:64px;animation:lbIn .32s var(--ease-quiet)}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.room-detail .lb__figure{position:relative;max-width:1400px;width:100%;max-height:calc(100vh - 128px);display:flex;flex-direction:column;align-items:center;gap:20px;margin:0}.room-detail .lb__figure img{max-width:100%;max-height:calc(100vh - 220px);-o-object-fit:contain;object-fit:contain;background:var(--phi-ink)}.room-detail .lb__cap{display:flex;align-items:baseline;gap:24px;color:rgba(247,244,240,.85);font-family:var(--font-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase}.room-detail .lb__zone{font-size:16px;letter-spacing:.01em;color:var(--phi-warm-white)}.room-detail .lb__line,.room-detail .lb__zone{font-family:var(--font-serif);font-style:italic;text-transform:none}.room-detail .lb__line{font-size:14px;letter-spacing:0;color:rgba(247,244,240,.7)}.room-detail .lb__count{color:rgba(247,244,240,.5)}.room-detail .lb__close,.room-detail .lb__next,.room-detail .lb__prev{position:absolute;background:rgba(247,244,240,.08);color:var(--phi-warm-white);border:1px solid rgba(247,244,240,.2);width:56px;height:56px;border-radius:50%;font-family:var(--font-serif);font-size:28px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--dur-quiet) var(--ease-quiet)}.room-detail .lb__close:hover,.room-detail .lb__next:hover,.room-detail .lb__prev:hover{background:rgba(247,244,240,.18)}.room-detail .lb__close{top:24px;right:24px;font-size:32px}.room-detail .lb__prev{left:24px;top:50%;transform:translateY(-50%)}.room-detail .lb__next{right:24px;top:50%;transform:translateY(-50%)}.room-detail .sec{padding:120px var(--gutter-h);position:relative}.room-detail .sec--tight{padding:80px var(--gutter-h)}.room-detail .sec__inner{max-width:var(--maxw);margin:0 auto}.room-detail .sec__inner--narrow{max-width:var(--maxw-narrow);margin:0 auto}.room-detail .sec--sunken{background:var(--bg-sunken)}.room-detail .sec--ink{background:var(--phi-ink);color:var(--fg-on-dark)}.room-detail .sec--aegean{background:var(--phi-deep-aegean);color:var(--fg-on-dark)}.room-detail .eyebrow{font-family:var(--font-sans);font-weight:400;font-size:10px;letter-spacing:.45em;text-transform:uppercase;color:var(--fg-3)}.room-detail .sec--aegean .eyebrow,.room-detail .sec--ink .eyebrow{color:rgba(247,244,240,.55)}.room-detail .sec__head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:64px}.room-detail .sec__head h2{font-family:var(--font-serif);font-weight:400;font-size:clamp(32px,3.6vw,48px);line-height:1.12;letter-spacing:.01em;margin:18px 0 0;color:inherit;max-width:14ch}.room-detail .sec__head p{font-family:var(--font-sans);font-weight:300;font-size:16px;line-height:1.75;color:var(--fg-2);margin:0;max-width:52ch}.room-detail .essay{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;margin-bottom:140px}.room-detail .essay:last-child{margin-bottom:0}.room-detail .essay--reverse{grid-template-columns:1fr 1.1fr}.room-detail .essay--reverse .essay__media{order:2}.room-detail .essay__media{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:3px;background:var(--phi-stone)}.room-detail .essay__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform 1.2s var(--ease-quiet)}.room-detail .essay__media:hover img{transform:scale(1.025)}.room-detail .essay__media .anno{position:absolute;font-family:var(--font-serif);font-style:italic;background:var(--bg);color:var(--fg-1);text-shadow:none;padding:12px 16px;font-size:14px;line-height:1.4;max-width:220px;border:1px solid var(--rule)}.room-detail .essay__media .anno:before{display:none}.room-detail .essay__media .anno--tl{top:22px;left:22px}.room-detail .essay__media .anno--br{bottom:22px;right:22px}.room-detail .essay__copy{padding:24px 0}.room-detail .essay__num{font-family:var(--font-sans);font-size:10px;letter-spacing:.45em;text-transform:uppercase;color:var(--phi-deep-terracotta);margin-bottom:24px}.room-detail .essay__title{font-family:var(--font-serif);font-weight:400;font-size:clamp(36px,3.4vw,48px);line-height:1.1;letter-spacing:.01em;margin:0 0 8px}.room-detail .essay__title em{font-style:italic;color:var(--fg-2);font-size:.7em;display:block;margin-top:2px}.room-detail .essay__lede{font-family:var(--font-serif);font-style:italic;font-size:clamp(18px,1.7vw,22px);line-height:1.5;color:var(--fg-2);margin:24px 0 28px;max-width:28ch}.room-detail .essay__body{font-family:var(--font-sans);font-weight:300;font-size:16px;line-height:1.85;color:var(--fg-2);text-wrap:pretty}.room-detail .essay__body p+p{margin-top:18px}.room-detail .essay__list{list-style:none;padding:0;margin:32px 0 0;border-top:1px solid var(--rule)}.room-detail .essay__list li{padding:14px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:110px 1fr;gap:24px;align-items:baseline;font-family:var(--font-sans);font-size:14px;color:var(--fg-2)}.room-detail .essay__list .k{font-family:var(--font-sans);font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3)}.room-detail .plan{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.room-detail .plan__art{background:var(--bg-raised);border:1px solid var(--rule);border-radius:3px;padding:48px;position:relative}.room-detail .plan__art-label{position:absolute;top:22px;left:24px;font-family:var(--font-sans);font-size:9px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3)}.room-detail .plan__art-scale{position:absolute;bottom:22px;right:24px;font-family:var(--font-serif);font-style:italic;font-size:13px;color:var(--fg-3)}.room-detail .plan__copy h3{font-family:var(--font-serif);font-weight:400;font-size:clamp(28px,2.8vw,36px);line-height:1.15;margin:18px 0 24px}.room-detail .plan__copy .body{font-family:var(--font-sans);font-weight:300;font-size:16px;line-height:1.8;color:var(--fg-2);margin-bottom:36px;max-width:48ch}.room-detail .light-strip{display:grid;grid-template-columns:repeat(8,1fr);gap:0;margin-top:24px;border:1px solid var(--rule);border-radius:2px;overflow:hidden}.room-detail .light-cell{aspect-ratio:1/1.4;display:flex;flex-direction:column;justify-content:space-between;padding:12px 10px;border-right:1px solid rgba(44,44,44,.06);position:relative}.room-detail .light-cell:last-child{border-right:0}.room-detail .light-cell .h{font-family:var(--font-sans);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:var(--fg-3);z-index:1}.room-detail .light-cell .label{font-family:var(--font-serif);font-style:italic;font-size:12px;line-height:1.2;color:var(--fg-1);text-align:left;z-index:1}.room-detail .light-cell.dim .label{color:var(--fg-on-dark)}.room-detail .light-cell.dim .h{color:rgba(247,244,240,.6)}.room-detail .compare{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--rule);border-radius:3px;overflow:hidden;background:var(--bg-raised)}.room-detail .compare__col{padding:0;position:relative}.room-detail .compare__col+.compare__col{border-left:1px solid var(--rule)}.room-detail .compare__photo{aspect-ratio:4/3;overflow:hidden}.room-detail .compare__photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.room-detail .compare__body{padding:36px 40px 40px}.room-detail .compare__col.is-this{background:var(--bg)}.room-detail .compare__pill{position:absolute;top:22px;left:22px;font-family:var(--font-sans);font-size:10px;letter-spacing:.35em;text-transform:uppercase;background:var(--phi-deep-terracotta);color:var(--fg-on-dark);padding:7px 12px;border-radius:2px;z-index:2}.room-detail .compare__col.alt .compare__pill{background:rgba(247,244,240,.92);color:var(--fg-1)}.room-detail .compare__name{font-family:var(--font-serif);font-size:32px;line-height:1.1;margin:0 0 4px}.room-detail .compare__sub{font-family:var(--font-sans);font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3);margin-bottom:28px}.room-detail .compare__lede{font-family:var(--font-serif);font-style:italic;font-size:17px;line-height:1.5;color:var(--fg-2);margin:0 0 28px;max-width:30ch}.room-detail .compare__rows{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.room-detail .compare__rows li{padding:12px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:90px 1fr;gap:16px;align-items:baseline;font-family:var(--font-sans);font-size:14px;color:var(--fg-2)}.room-detail .compare__rows .k{font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3)}.room-detail .compare__foot{display:flex;justify-content:space-between;align-items:baseline;margin-top:24px}.room-detail .compare__price{font-family:var(--font-serif);font-size:24px;color:var(--fg-1)}.room-detail .compare__price small{font-family:var(--font-sans);font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3);margin-left:6px}.room-detail .compare__cta{font-family:var(--font-sans);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--fg-1);border-bottom:1px solid var(--phi-sand);padding-bottom:4px;transition:opacity var(--dur-quiet) var(--ease-quiet)}.room-detail .compare__cta:hover{opacity:.7}.room-detail .pullquote{text-align:center;max-width:760px;margin:0 auto;padding:0 var(--gutter-h)}.room-detail .pullquote__mark{font-family:var(--font-serif);font-size:64px;line-height:1;color:var(--phi-deep-terracotta);margin-bottom:24px;display:inline-block}.room-detail .pullquote__body{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(26px,2.8vw,36px);line-height:1.4;color:var(--fg-1);margin:0 0 32px;text-wrap:balance}.room-detail .pullquote__attr{font-family:var(--font-sans);font-size:11px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3)}.room-detail .exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}.room-detail .exp-card{display:flex;flex-direction:column;cursor:pointer}.room-detail .exp-card__tile{aspect-ratio:4/5;overflow:hidden;border-radius:3px;background:var(--phi-stone);margin-bottom:18px}.room-detail .exp-card__tile img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform 1s var(--ease-quiet)}.room-detail .exp-card:hover img{transform:scale(1.03)}.room-detail .exp-card__meta{font-family:var(--font-sans);font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3);margin-bottom:10px}.room-detail .exp-card__title{font-family:var(--font-serif);font-size:22px;line-height:1.3;margin:0 0 8px}.room-detail .exp-card__lede{font-family:var(--font-sans);font-size:14px;line-height:1.7;color:var(--fg-2);max-width:38ch}.room-detail .faq{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.room-detail .faq__list{list-style:none;padding:0;margin:0}.room-detail .faq__item{border-top:1px solid var(--rule);padding:24px 0}.room-detail .faq__item:last-child{border-bottom:1px solid var(--rule)}.room-detail .faq__q{font-family:var(--font-serif);font-size:22px;line-height:1.3;display:flex;align-items:baseline;justify-content:space-between;gap:24px;cursor:pointer;color:var(--fg-1);width:100%;background:none;border:0;text-align:left}.room-detail .faq__q .toggle{font-family:var(--font-serif);font-size:22px;color:var(--fg-3);flex:0 0 auto;transition:transform var(--dur-quiet) var(--ease-quiet)}.room-detail .faq__item.is-open .faq__q .toggle{transform:rotate(45deg)}.room-detail .faq__a{font-family:var(--font-sans);font-weight:300;font-size:14px;line-height:1.8;color:var(--fg-2);max-width:64ch;max-height:0;overflow:hidden;transition:max-height var(--dur-slow) var(--ease-quiet),margin-top var(--dur-slow) var(--ease-quiet)}.room-detail .faq__item.is-open .faq__a{max-height:280px;margin-top:18px}.room-detail .book-strip{position:fixed;bottom:0;left:0;right:0;height:var(--booking-h);z-index:90;background:rgba(247,244,240,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--rule);display:flex;align-items:center;padding:0 var(--gutter-h);gap:28px;transform:translateY(100%);transition:transform var(--dur-slow) var(--ease-quiet)}.room-detail .book-strip.is-visible{transform:translateY(0)}.room-detail .book-strip__name{display:flex;flex-direction:column;gap:2px;flex:0 0 auto}.room-detail .book-strip__name .n{font-family:var(--font-serif);font-size:22px;line-height:1;color:var(--fg-1)}.room-detail .book-strip__name .m{font-family:var(--font-sans);font-size:9px;letter-spacing:.4em;text-transform:uppercase;color:var(--fg-3);margin-top:4px}.room-detail .book-strip__fields{display:flex;flex:1;border:1px solid var(--rule);border-radius:2px;background:var(--bg-raised)}.room-detail .book-field{flex:1;padding:12px 18px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:2px;cursor:pointer;transition:background var(--dur-quiet) var(--ease-quiet)}.room-detail .book-field:hover{background:var(--bg-sunken)}.room-detail .book-field:last-child{border-right:0}.room-detail .book-field .l{font-family:var(--font-sans);font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap}.room-detail .book-field .v{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0;margin:0;font-family:var(--font-serif);font-size:16px;color:var(--fg-1);line-height:1.2;width:100%;cursor:pointer;font-variant-numeric:tabular-nums}.room-detail .book-field select.v{padding-right:16px}.room-detail .book-field .v::-webkit-calendar-picker-indicator{opacity:.45;cursor:pointer}.room-detail .book-strip__price{font-family:var(--font-serif);font-size:22px;color:var(--fg-1);flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:0}.room-detail .book-strip__price small{font-family:var(--font-sans);font-size:9px;letter-spacing:.35em;text-transform:uppercase;color:var(--fg-3);margin-top:4px}.room-detail .book-strip__cta{font-family:var(--font-sans);font-size:11px;font-weight:400;letter-spacing:.3em;text-transform:uppercase;background:var(--phi-deep-terracotta);color:var(--fg-on-dark);padding:16px 32px;border:0;border-radius:2px;flex:0 0 auto;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:opacity var(--dur-quiet) var(--ease-quiet);display:inline-flex;align-items:center;gap:8px}.room-detail .book-strip__cta:hover{opacity:.85}.room-detail .book-strip__messages{position:absolute;left:var(--gutter-h);right:var(--gutter-h);bottom:calc(100% + 10px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}.room-detail .book-strip__error{background:var(--bg-raised);color:var(--phi-deep-terracotta);font-family:var(--font-sans);font-weight:500;font-size:13px;letter-spacing:.01em;line-height:1.4;padding:9px 14px;border-radius:4px;border-left:3px solid var(--phi-deep-terracotta);box-shadow:0 6px 20px rgba(0,0,0,.28)}.room-detail .page-end{height:var(--booking-h)}.room-detail .reveal{opacity:0;transform:translateY(20px);transition:opacity 1.1s var(--ease-emerge),transform 1.1s var(--ease-emerge);will-change:opacity,transform}.room-detail .reveal.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.room-detail .reveal{opacity:1;transform:none;transition:none}.room-detail .audio-pill__dot:before{animation:none}}@media (max-width:980px){.room-detail{--gutter-h:24px}.room-detail .room-head{grid-template-columns:1fr;gap:28px}.room-detail .room-head__aside{align-items:flex-start}.room-detail .audio-pill__caption{text-align:left}.room-detail .essay{grid-template-columns:1fr;gap:32px;margin-bottom:80px}.room-detail .essay--reverse .essay__media{order:0}.room-detail .zone{grid-template-columns:1fr;gap:24px}.room-detail .zone__head{position:static}.room-detail .zone__grid{grid-template-columns:1fr}.room-detail .zone__details{grid-template-rows:auto}.room-detail .zone__detail{aspect-ratio:4/3}.room-detail .gal-meta{flex-direction:column;align-items:flex-start;gap:12px}.room-detail .gal-rule{display:none}.room-detail .lb{padding:24px}.room-detail .lb__close{top:12px;right:12px;width:44px;height:44px}.room-detail .lb__next,.room-detail .lb__prev{width:44px;height:44px}.room-detail .lb__prev{left:12px}.room-detail .lb__next{right:12px}.room-detail .plan{gap:32px}.room-detail .compare,.room-detail .plan{grid-template-columns:1fr}.room-detail .compare__col+.compare__col{border-left:0;border-top:1px solid var(--rule)}.room-detail .exp-grid,.room-detail .faq{grid-template-columns:1fr}.room-detail .faq{gap:32px}.room-detail .sec{padding:80px var(--gutter-h)}.room-detail .sec__head{grid-template-columns:1fr;gap:24px;margin-bottom:40px}.room-detail .light-strip{grid-template-columns:repeat(4,1fr)}.room-detail .book-strip{flex-wrap:wrap;height:auto;padding:14px;gap:12px}.room-detail .book-strip__fields{display:none}}