.photo-section{border-top:1px solid var(--line)}
/* Refinement pass: preserve the approved sections, photos, copy and pricing. */
main>section[id]{scroll-margin-top:var(--s4)}
#navigation a[aria-current=location]:not(.button){text-decoration:underline;text-underline-offset:var(--s2);text-decoration-thickness:2px}
#property-photo-grid>.property-photo:first-child{grid-column:1/-1}
#property-photo-grid>.property-photo:first-child img{aspect-ratio:2.65;object-position:50% 30%}
#property-photo-grid>.property-photo:first-child figcaption{font-size:var(--sm)}
.scene-navigation{display:flex;align-items:center;justify-content:center;gap:var(--s6);margin-top:var(--s3)}
.scene-navigation[hidden]{display:none}
.scene-navigation button{width:48px;height:48px;border:1px solid #a8bec8;background:var(--paper);color:var(--ink);border-radius:50%;font-size:24px}
#scene-position{font-size:var(--sm);color:#fff;min-width:5ch;text-align:center}
#photo-dialog img{max-height:66dvh;touch-action:pan-y}
#photo-dialog .dialog-close{color:var(--ink)}
.footer-links>a{display:inline-flex;align-items:center;min-height:44px}
@media(min-width:601px) and (max-width:900px){.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.unit-card:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.unit-card:last-child:nth-child(odd) .card-photo img{height:100%;min-height:240px}.water-layout{gap:var(--s8)}}
@media(max-width:600px){#property-photo-grid>.property-photo:first-child img{aspect-ratio:1.45;object-position:center}.mobile-cta{bottom:max(var(--s4),env(safe-area-inset-bottom))}#photo-dialog .dialog-close{top:var(--s2);right:var(--s2)}.scene-navigation{gap:var(--s8)}}
#contact-form select{font-size:16px}#contact-value-help{font-size:var(--xs);font-weight:400;margin-top:calc(-1 * var(--s2))}#contact-value:disabled{opacity:.6}
.highlights{grid-template-columns:repeat(5,1fr)}
.hero h1{font-size:clamp(2.5rem,4vw,3.7rem);max-width:13ch}
.guest-pagination{display:flex;align-items:center;justify-content:flex-end;gap:var(--s4);margin-top:var(--s5)}
.guest-pagination button{min-height:44px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font-size:var(--sm);padding:var(--s2) var(--s4)}
.guest-pagination button:disabled{opacity:.4;cursor:default}.guest-pagination span{font-size:var(--xs);color:var(--muted)}
.arrival-section{padding-bottom:var(--section)}
.arrival-section .arrival-feature{display:grid;grid-template-columns:.85fr 1.15fr;align-items:stretch}
.arrival-section .arrival-photo{height:100%;min-height:300px}.arrival-section .arrival-photo img{height:100%;min-height:300px}
.water-section{background:var(--sand);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.water-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s16);align-items:center}
.water-layout>.feature-copy{padding:0}.water-layout>.water-partner{margin:0;border-top:0;border-left:1px solid var(--line);padding:var(--s3) 0 var(--s3) var(--s10)}
@media(max-width:600px){.highlights{grid-template-columns:repeat(2,1fr)}.highlights span:nth-child(even){border-right:0}.highlights span:last-child{grid-column:1/-1}.hero h1{max-width:15ch;font-size:40px}.guest-pagination{justify-content:space-between;gap:var(--s2)}.guest-pagination button{padding-inline:var(--s3)}#guest-photo-grid{grid-template-columns:1fr}.guest-photo img{aspect-ratio:1.8}.arrival-section .arrival-feature{display:block}.arrival-section .arrival-photo,.arrival-section .arrival-photo img{height:190px;min-height:0}.water-layout{display:block}.water-layout>.water-partner{border-left:0;border-top:1px solid var(--line);margin-top:var(--s6);padding:var(--s6) 0 0}}
.inline-link{text-decoration:underline;text-underline-offset:3px}
.guest-moments{background:var(--sand)}
.guest-photo{margin:0;min-width:0}.guest-photo button{padding:0;display:block;width:100%;border:0;background:var(--paper);overflow:hidden;border-radius:4px}
.guest-photo img{width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;transition:transform .25s}
.guest-photo button:hover img{transform:scale(1.035)}.guest-photo figcaption{font-size:var(--xs);color:var(--muted);margin-top:var(--s2)}
.guest-moments-note{font-size:var(--xs);margin-top:var(--s3)}#share-photo-note:empty{display:none}
.photo-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--s10);margin-bottom:var(--s6)}
.photo-heading>p{max-width:44ch;font-size:var(--sm)}
.photo-filters{display:flex;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s6)}
.photo-filters button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:3px;padding:var(--s2) var(--s4);font-size:var(--sm);min-height:44px}
.photo-filters button.active{background:var(--accent);color:var(--paper);border-color:var(--accent)}
.property-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}
.property-photo{margin:0;min-width:0}.property-photo button{padding:0;display:block;width:100%;border:0;background:var(--sand);overflow:hidden;border-radius:4px}
.property-photo img{width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;transition:transform .25s}
.property-photo button:hover img{transform:scale(1.035)}.property-photo figcaption{font-size:var(--xs);color:var(--muted);margin-top:var(--s2)}
.gallery-bottom{display:flex;justify-content:space-between;gap:var(--s6);align-items:center;margin-top:var(--s5)}.gallery-bottom p{font-size:var(--xs);max-width:70ch}
.gallery-bottom button{flex-shrink:0}.guest-gallery-links{display:flex;flex-wrap:wrap;gap:var(--s6);align-items:center;margin-top:var(--s4)}.guest-gallery-links p{font-size:var(--xs);flex-basis:100%}
.waterfront-layout{display:block;max-width:800px;margin-inline:auto}
.waterfront-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:230px 230px;gap:var(--s3)}
.feature-photo{position:relative;padding:0;border:0;border-radius:4px;overflow:hidden;background:var(--sand);min-width:0}
.feature-photo:first-child{grid-column:1/-1}.feature-photo img{width:100%;height:100%;object-fit:cover}
.feature-photo:nth-child(2) img{object-position:50% 55%}.feature-photo:nth-child(3) img{object-position:50% 75%}
.feature-photo span{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,#102f40da);color:white;font-size:var(--xs);padding:var(--s6) var(--s3) var(--s3);text-align:left}
.waterfront-copy>p:not(.eyebrow){font-size:var(--sm);margin-top:var(--s5)}
.activity-list{list-style:none;padding:0;margin:var(--s6) 0}.activity-list li{padding:var(--s3) 0;border-bottom:1px solid var(--line)}
.activity-list strong{display:block;font-size:var(--sm);font-weight:600}.activity-list span{font-size:var(--sm);color:var(--muted)}
.season-callout{border-left:2px solid var(--gold);padding-left:var(--s3);font-size:var(--xs)!important}
.waterfront-copy>.text-button{margin-top:var(--s4)}
.thoughtful-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);padding-bottom:var(--section)}
.arrival-feature,.water-feature{border:1px solid var(--line);background:var(--surface);border-radius:5px;overflow:hidden}
.arrival-photo{display:grid;grid-template-columns:1.5fr 1fr;height:175px;gap:var(--s2);background:var(--sand)}
.arrival-photo img{width:100%;height:175px;object-fit:cover;object-position:50% 45%}.arrival-photo img:last-child{object-fit:contain;background:var(--sand)}
.feature-copy{padding:var(--s8)}.feature-copy h2{font-size:clamp(26px,2.6vw,32px)}.feature-copy>p:not(.eyebrow){font-size:var(--sm);margin-top:var(--s5)}
.feature-copy details{border-top:1px solid var(--line);margin-top:var(--s5);font-size:var(--sm)}.feature-copy summary{padding-block:var(--s3);min-height:44px}.feature-copy details p{margin-bottom:var(--s3)}
.water-feature{background:var(--sand)}.water-partner{border-top:1px solid var(--line);padding-top:var(--s6);margin-top:var(--s6)}
.water-partner>img{width:180px;height:auto;max-height:100px;object-fit:contain;background:white;border-radius:3px;padding:var(--s2);margin-bottom:var(--s4)}
.water-partner h3{font-size:var(--sm);margin-bottom:var(--s2)}.water-partner p{font-size:var(--sm)}.water-partner a{margin-top:var(--s3)}
#boat-faq,#guest-photos{scroll-margin-top:var(--s4)}
@media(max-width:900px){.waterfront-layout{gap:var(--s8)}.waterfront-collage{grid-template-rows:200px 200px}.photo-heading{display:block}.photo-heading>p{margin-top:var(--s4);max-width:65ch}.feature-copy{padding:var(--s6)}}
@media(max-width:600px){.property-photo-grid{grid-template-columns:1fr 1fr;gap:var(--s4) var(--s3)}.property-photo img{aspect-ratio:1.12}.photo-filters{gap:var(--s2)}.photo-filters button{padding-inline:var(--s3)}.gallery-bottom{display:block}.gallery-bottom p{margin-bottom:var(--s3)}.guest-gallery-links{display:block}.guest-gallery-links>*{margin-bottom:var(--s3)}.waterfront-layout{display:flex;flex-direction:column-reverse;gap:var(--s6)}.waterfront-collage{width:100%;grid-template-rows:200px 190px}.waterfront-copy h2 br{display:none}.thoughtful-details{grid-template-columns:1fr;gap:var(--s6)}.arrival-photo{height:165px}.arrival-photo img{height:165px}.feature-copy h2 br{display:none}.photo-heading>p{font-size:var(--sm)}}

/* Approved final cleanup: preserve all essential content in its dedicated section. */
.amenity-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.reassurance-grid{grid-template-columns:1fr 1.15fr;gap:var(--s16)}
.mobile-date-row{display:none}
@media(max-width:900px){.amenity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reassurance-grid{gap:var(--s8)}}
@media(max-width:600px){
 #guest-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4) var(--s3)}
 #guest-photo-grid>.guest-photo:first-child{grid-column:1/-1}
 #guest-photo-grid>.guest-photo:first-child img{aspect-ratio:1.8}
 #guest-photo-grid>.guest-photo:not(:first-child) img{aspect-ratio:1.25}
 .reassurance-grid{display:block}
 .reassurance .review-photo{margin-bottom:0}
 .mobile-date-row{display:block;padding-inline:var(--s5)}
 .mobile-date-row:has(.hide){display:none}
 .mobile-date-row .mobile-cta{position:static;inset:auto;margin:0 0 var(--s2);width:100%;min-height:44px;box-shadow:none}
 html.mobile-dates-visible{scroll-padding-top:136px}
 .footer-bottom{padding-bottom:var(--s6)}
}
