.location-heading{padding-block:16px 40px}.location-heading p:last-child{max-width:720px;color:var(--color-muted);margin-bottom:0}.details{padding-bottom:96px}.location-overview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:32px;align-items:start}.panel{min-width:0;padding:32px 0;border-top:1px solid var(--color-border);margin-bottom:32px}.panel h2{font-size:clamp(28px,3vw,38px)}.panel h3{font-size:24px;margin-top:28px}.panel ul{padding-left:20px;color:var(--color-muted)}.panel li{padding-left:4px;margin-bottom:8px}.price-panel{background:var(--color-navy);color:var(--color-white);padding:32px}.price-panel h2{font-size:22px;line-height:1.35}.price-panel .price{font-size:38px;line-height:1.2;font-weight:700;margin:24px 0 8px}.price-panel .button{width:100%;margin-top:20px}.price-panel p{font-size:14px}.price-panel .text-link{color:var(--color-white);font-size:14px}.facts{margin:24px 0}.facts>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgb(255 255 255 / 25%)}.facts dt{font-size:14px}.facts dd{margin:0;text-align:right;font-size:16px}.details-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;margin-top:48px}.details-grid .panel{margin-bottom:0}.availability-section{display:grid;grid-template-columns:1fr minmax(308px,500px);gap:48px;background:var(--color-light-blue);padding:32px;margin-block:48px;scroll-margin-top:112px}.availability-section h2{font-size:clamp(28px,3vw,38px)}.availability-section p{color:var(--color-muted)}.availability-section .gazebo-calendar{padding:16px}.availability-section .gazebo-calendar__day{height:48px}.shared-space-badge{display:block;font-size:14px;color:var(--color-blue);margin-bottom:16px}.bbq-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.bbq-gallery figure{margin:0;min-width:0}.bbq-gallery button{width:100%;padding:0;border:0;background:var(--color-surface)}.bbq-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.bbq-gallery figcaption{font-size:14px;color:var(--color-muted);margin-top:12px}.related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.location-card{display:grid;gap:8px;border:1px solid var(--color-border);padding:24px;text-decoration:none}.location-card:hover{border-color:var(--color-blue)}.location-card span{font-size:16px;color:var(--color-muted)}.location-placeholder{background:var(--color-light-blue);padding:24px}.location-placeholder img{width:100%;max-height:400px;object-fit:contain}.location-placeholder p{font-size:14px;margin:16px 0 0}.sticky-booking{display:none}.maps-heading{padding-block:48px;background:var(--color-light-blue)}.maps-heading p{max-width:760px;margin:0;color:var(--color-muted)}.maps{padding-block:48px 96px}.manager-panel{display:flex;justify-content:space-between;align-items:center;gap:24px}.manager-panel p{color:var(--color-muted);margin:0}
@media(max-width:1020px){.location-overview{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);gap:24px}.price-panel{padding:24px}.availability-section{padding:24px;gap:24px}.details-grid{gap:32px}}
@media(max-width:760px){.location-overview,.details-grid,.availability-section{grid-template-columns:1fr}.details-grid{gap:0}.availability-section{padding:24px 0}.availability-section>div:first-child{padding-inline:16px}.availability-section .gazebo-calendar{padding:10px 0}.related,.bbq-gallery{grid-template-columns:1fr}.manager-panel{display:grid}.sticky-booking{display:block;position:fixed;bottom:0;left:0;right:0;z-index:80;background:var(--color-white);border-top:1px solid var(--color-border);padding:10px 20px max(10px,env(safe-area-inset-bottom))}.sticky-booking .button{width:100%}.location-page .site-footer{padding-bottom:88px}}
@media(max-width:359px){.availability-section{margin-inline:-20px;padding-inline:6px}.price-panel{padding:22px}.price-panel .price{font-size:32px}}
.price-panel .eyebrow{color:var(--color-white)}.details-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.details-grid>aside{min-width:0}.manager-panel{display:grid;gap:16px;overflow-wrap:anywhere}.price-panel,.location-card{overflow-wrap:anywhere}.sticky-booking{align-items:center;gap:16px}.sticky-booking>span{font-weight:700;white-space:nowrap}.site-footer{padding-bottom:0}
@media(max-width:900px){.details-grid,.availability-section{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.sticky-booking{display:flex}.sticky-booking .button{width:auto;flex:1}.site-footer{padding-bottom:100px}}
