.specification-grid.details-box>.capacity-spec p{font-size:14px;line-height:1.85;color:var(--muted)}
#calendar-room-summary{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:18px}
.calendar-integrated .calendar-day{min-height:46px}
.floorplan-frame{background:transparent;padding:0}
.floorplan-frame img,.hero-photo-button img.floor-plan,#space-highlight .detail-image.floor-plan,.checkout-image-panel>img.floor-plan{background:transparent;padding:0}
.hero-photo-button:has(img.floor-plan){background:transparent}
.lees-theme img.floor-plan,.lees-theme #floorplan-image{filter:invert(1)}
.footer-location-logo{margin-bottom:20px}
@media(max-width:760px){.specification-grid.details-box>.capacity-spec p{font-size:12px;line-height:1.8}}

/* A quieter hierarchy, consistent widths and a readable seven-column calendar. */
.search-area{padding:16px 0 26px}
.booking-help-search{width:100%;max-width:none;margin:0;min-height:54px;padding-left:18px}
.booking-help-search input{min-width:0;font-size:16px}
.booking-help-search input::placeholder{font:14px var(--mono);color:#a0a39d;opacity:1}
.lees-theme .booking-help-search input::placeholder{color:#b2a2a7}
.hero-description{max-width:900px;margin:26px auto 0;font-size:20px;line-height:1.55;letter-spacing:0}
.catering-section{padding:48px 0 52px}
.catering-section>h2{font-size:clamp(20px,1.8vw,26px);line-height:1.5;letter-spacing:0;max-width:710px;font-weight:400;text-wrap:balance}
.caterer-list{max-width:100%;margin-top:30px}
.caterer-list button{font-size:14px;padding:22px 10px;line-height:1.6}
.details-section{padding:50px 0}
.details-section #details-title{font-size:18px;line-height:1.5;letter-spacing:.045em}
.specification-context{font:14px/1.8 var(--mono);margin:18px auto 30px;max-width:740px;text-wrap:balance}
.specification-grid.details-box{max-width:1120px}
.specification-grid.details-box>section{padding:30px 28px}
.specification-grid.details-box h3{font:14px/1.6 var(--mono);letter-spacing:.025em;margin-bottom:16px}
.specification-grid.details-box p,.specification-grid.details-box>.capacity-spec p{font:16px/1.85 var(--sans);color:var(--muted)}
.space-highlight-specs .specification-grid.details-box{padding-top:0;gap:0;text-align:center}
.calendar-integrated .inline-calendar-layout{grid-template-columns:minmax(0,440px) minmax(0,1fr)}
.inline-calendar-layout>div,#calendar-months,.calendar-selection-column{min-width:0;max-width:100%}
.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));column-gap:4px;width:100%;min-width:0}
.calendar-grid{row-gap:4px}
.calendar-weekdays>span,.calendar-grid>span{min-width:0}
.calendar-integrated .calendar-day{width:100%;min-width:0;max-width:100%;height:48px;min-height:0;padding:0;display:grid;place-items:center;font:16px/1 var(--sans);border-radius:0;appearance:none;-webkit-appearance:none}
.calendar-weekdays{font-size:14px}
.calendar-nav h3{font-size:14px;line-height:1.5}
.calendar-nav button{flex:none;min-width:40px;height:40px}
.calendar-selection-column{overflow-wrap:anywhere}
.calendar-legend{gap:12px 18px;font-size:12px}
.calendar-integrated .calendar-note{margin:8px 0 22px}
.date-choice{min-width:0}
.date-choice #date-value{white-space:normal;line-height:1.4;overflow-wrap:anywhere}
.calendar-selection-column>h3,#calendar-comparison h3{font-size:14px}
.selected-date{font-size:14px;min-height:44px}
.selected-date>span{font-size:25px;line-height:1}
#calendar-room-summary{font-size:14px}
.floorplan-frame{max-width:1200px;margin-top:28px;background:transparent;padding:0}
#floorplan-image{display:block;width:100%;max-height:none;object-fit:contain}
.floorplan-expand{display:block;width:100%;padding:0;cursor:zoom-in}
.floorplan-frame.expanded{overflow-x:auto;overscroll-behavior-x:contain}
.floorplan-frame.expanded .floorplan-expand{min-width:1200px;cursor:zoom-out}
.floorplan-hint{font:12px/1.7 var(--mono);color:var(--muted);margin-top:18px}
.floorplan-tools{display:flex;justify-content:flex-end;margin-top:14px}
@media(max-width:760px){
  .calendar-integrated .inline-calendar-layout{grid-template-columns:minmax(0,1fr);gap:22px}
  .booking-dock #calendar-panel{padding:16px 12px 20px}
  .calendar-integrated .calendar-day{height:44px}
  .calendar-weekdays,.calendar-grid{column-gap:3px}
  .calendar-grid{row-gap:3px}
  .calendar-selection-column{border-left:0;padding:22px 0 0}
  .calendar-integrated .calendar-demo-note{font-size:12px}
  .hero-description{font-size:18px;margin-top:23px;max-width:520px;text-wrap:balance}
  .catering-section{padding:34px 0 40px}
  .catering-section>h2{font-size:20px;max-width:450px}
  .caterer-list{margin-top:24px}
  .caterer-list button{font-size:14px;padding:17px 7px}
  .details-section{padding:38px 0}
  .specification-context{font-size:14px}
  .floorplan-frame.expanded .floorplan-expand{min-width:900px}
}
@media(max-width:560px){
  .specification-grid.details-box{grid-template-columns:minmax(0,1fr)}
  .specification-grid.details-box>section{padding:26px 20px;border:0;border-bottom:1px solid var(--line)}
  .specification-grid.details-box>.furniture-spec,.specification-grid.details-box>.formats-spec{border-right:0}
  .specification-grid.details-box>section:last-child{border-bottom:0}
  .specification-grid.details-box>.capacity-spec p{gap:12px}
  .caterer-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .caterer-list button:last-child:nth-child(odd){grid-column:1/-1}
}

.gallery>#close-hero{display:flex;margin:0 0 12px auto}

/* Catering is one connected section, after the client list. */
.catering-section{padding:54px 0 60px;border-top:1px solid var(--line)}
.catering-section>h2{max-width:760px;margin-bottom:22px}
.caterer-list{border-top:1px solid var(--line);margin-top:0}
.caterer-list button{font-size:18px;line-height:1.6;padding:24px 12px}
@media(max-width:760px){.caterer-list button{font-size:16px;padding:20px 8px}.catering-section{padding:38px 0 45px}}

.footer-editorial{display:flex;justify-content:center;flex-wrap:wrap;gap:18px}
