/* Owner-selected photographs: framing only; original pixels remain unchanged. */
.interior-photo img{aspect-ratio:3/4;object-position:center 58%}
.pool-photo img{aspect-ratio:4/5;object-position:center 64%}
.gallery-item.living-photo img{object-position:center bottom}
.gallery-item.portrait-photo img{aspect-ratio:3/4;object-position:center}
.gallery-item.balcony-crop img{aspect-ratio:2/1;object-fit:cover;object-position:center bottom}
.photo-grid .balcony-crop,.photo-grid .garden-photo{grid-column:span 3}
.photo-grid .garden-photo img{aspect-ratio:2/1;object-position:center}
.photo-grid>.gallery-item:nth-child(-n+3) img{aspect-ratio:4/3;object-position:center bottom}
.photo-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start}
.photo-grid>.gallery-item:nth-child(-n+3){grid-column:span 2}
.owner-living-grid .living-photo img{aspect-ratio:3/4}
.owner-garden-grid{grid-template-columns:1.5fr 1fr;align-items:start}
.owner-garden-grid .garden-photo img{aspect-ratio:4/3;object-position:center}
.lightbox.balcony-crop img{display:block;width:min(100%,calc(70vh * 2));height:auto;aspect-ratio:2/1;object-fit:cover;object-position:center bottom;margin-inline:auto}
.review-stars{color:#e7b325;text-shadow:0 0 0.5px #9b7211}
.review-scores .review-score{display:block;border-left:2px solid var(--ink);padding:3px 0 3px 18px}
.share-review{margin-top:42px;border-top:1px solid var(--line);padding-top:32px}
.share-review h3{font:32px/1.2 var(--serif);margin:0 0 12px}
.share-review p{color:var(--muted);font-size:14px;line-height:1.7}
.share-review details{margin-top:22px;border:0}
.share-review summary.button{display:inline-flex;list-style:none;padding:16px 22px;cursor:pointer}
.share-review summary.button::after{display:none}
.share-review summary::-webkit-details-marker{display:none}
.guest-review-form{max-width:850px;margin-top:30px}
.guest-review-form label{display:block;font-size:13px;font-weight:600;line-height:1.6;margin-bottom:20px}
.guest-review-form input:not([type=checkbox]),.guest-review-form select,.guest-review-form textarea{display:block;width:100%;border:1px solid #8b9baa;border-radius:3px;background:#fff;color:var(--ink);padding:13px;font:16px/1.5 var(--sans);margin-top:7px}
.guest-review-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.field-note{display:block;font-size:11px;font-weight:400;color:var(--muted)}
.guest-review-form label.review-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;font-weight:400}
.review-consent input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--ink)}
.review-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-status:not(:empty){padding:15px;background:#eef6f3;border-left:3px solid #23705c;color:#123e33}
.form-status.error{background:#fff3f0;border-color:#ac3325;color:#852a20}
.guest-review-form [type=submit]:disabled{opacity:.65;cursor:wait}
.direct-review .review-platform{color:#21624f}
.direct-review blockquote p{white-space:pre-wrap;overflow-wrap:anywhere}
.review-admin{max-width:1100px;margin:0 auto;padding:45px 6%;color:var(--ink)}
.review-admin h1{font:42px/1.1 var(--serif)}
.review-admin header{padding:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;margin-bottom:30px}
.review-admin-nav{display:flex;gap:14px;flex-wrap:wrap;margin:25px 0}
.review-admin-nav button{padding:12px 16px;background:#fff;border:1px solid var(--ink);color:var(--ink)}
.review-admin-nav button[aria-pressed=true]{background:var(--ink);color:#fff}
.moderation-card{border:1px solid var(--line);padding:25px;margin:22px 0;border-radius:6px;background:#fff}
.moderation-card .original-review{white-space:pre-wrap;overflow-wrap:anywhere;font:19px/1.6 var(--serif)}
.moderation-card .private-info{font-size:13px;overflow-wrap:anywhere;color:var(--muted)}
.moderation-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.moderation-actions button{padding:12px 17px;border:1px solid var(--ink);background:var(--ink);color:#fff}
.moderation-actions .secondary{background:#fff;color:var(--ink)}
.moderation-verify{font-size:13px;display:flex;align-items:flex-start;gap:10px;margin-top:20px}
.moderation-verify input{width:20px;height:20px;flex:none}
.admin-helper{background:#f1f6fa;border-left:3px solid #235d9b;padding:18px;font-size:14px;line-height:1.6}
@media(max-width:760px){.interior-photo img{aspect-ratio:4/5}.pool-photo img{aspect-ratio:4/5}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid>.gallery-item:nth-child(-n+3){grid-column:span 1}.photo-grid>.gallery-item:nth-child(-n+3) img{aspect-ratio:4/3}.photo-grid .balcony-crop,.photo-grid .garden-photo{grid-column:1/-1}.owner-garden-grid{grid-template-columns:1fr}.owner-living-grid .gallery-item img{aspect-ratio:4/5}.owner-garden-grid .portrait-photo img{aspect-ratio:4/5}.guest-review-form .form-row{grid-template-columns:1fr;gap:0}.share-review h3{font-size:29px}.review-admin{padding:30px 6%}.review-admin h1{font-size:34px}.moderation-card{padding:20px}}

/* The terrace keeps its original pixels; crop 5% from the left edge. */
.gallery-item .terrace-frame{display:block;overflow:hidden;aspect-ratio:4/3;padding:0;margin:0}
.gallery-item .terrace-frame img{width:105.2631579%;max-width:none;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;transform:translateX(-5%)}
.lightbox.terrace-crop img{display:block;width:min(100%,calc(70vh * 57 / 80));height:auto;aspect-ratio:57/80;object-fit:cover;object-position:right center;margin-inline:auto}

/* Keep the golf landscape luminous; shade only enough for the white heading. */
.hero-golf::after{background:linear-gradient(90deg,rgba(4,18,32,.36),rgba(4,18,32,.08) 52%,transparent 78%),linear-gradient(180deg,transparent 48%,rgba(4,18,32,.20) 100%)}
.hero-golf .hero-copy h1,.hero-golf .hero-copy .intro,.hero-golf .hero-copy .eyebrow{text-shadow:0 2px 6px rgba(4,18,32,.75)}
.photo-grid>.gallery-item:nth-child(-n+3){margin-top:0}
@media(max-width:760px){.photo-grid>.gallery-item:nth-child(3){grid-column:1/-1}.hero-golf .hero-copy h1,.hero-golf .hero-copy .intro,.hero-golf .hero-copy .eyebrow{text-shadow:none}}

/* Owner-requested tonal presentation; real source photograph pixels are untouched. */
img[src$="dining-room.jpeg"]{filter:brightness(1.12) contrast(1.04)}
img[src$="terrace-detail.jpeg"]{filter:brightness(1.08) contrast(1.06)}

.balcony-video{margin-top:56px;border-top:1px solid var(--line);padding-top:38px}
.balcony-video h3{margin-bottom:15px}.balcony-video>p{color:var(--muted);font-size:15px}
.balcony-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#102d49;object-fit:contain}
.balcony-video figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:16px}
.video-link{margin-left:30px}
@media(max-width:760px){.video-link{margin-left:0;display:flex;width:fit-content}.balcony-video{margin-top:38px;padding-top:28px}.balcony-video h3{font-size:28px}}
