/* On-page galleries keep the original render geometry visible. */
.chapter.chapter-carousel,
.enhanced .chapter.chapter-carousel{height:auto;min-height:110svh;padding-top:clamp(120px,13vh,170px);padding-bottom:110px;overflow:visible}
.chapter-carousel .chapter-content{width:100%;max-width:1370px;margin-inline:auto;display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);gap:clamp(34px,5vw,80px);align-items:center}
.chapter-carousel .carousel-copy{min-width:0}
.chapter-carousel .eyebrow{margin-bottom:23px;max-width:480px}
.chapter-carousel h2{font-size:clamp(38px,4.4vw,65px);line-height:1.12;letter-spacing:-.025em}
.chapter-carousel .chapter-description{font-size:clamp(15px,1.15vw,18px);margin-top:23px;line-height:1.6;max-width:480px}
.chapter-carousel .amenity-tabs{flex-wrap:wrap;overflow:visible;gap:8px;margin-top:27px;border-bottom:0;max-width:480px}
.chapter-carousel .amenity-tabs button{padding:10px 12px!important;min-height:42px;border:1px solid rgba(255,255,245,.34);opacity:.8;font-size:12px;white-space:normal;line-height:1.3;text-align:left}
.chapter-carousel .amenity-tabs button[aria-selected=true]{background:var(--ivory);color:var(--pine);border-color:var(--ivory);opacity:1}
.chapter-carousel #amenity-panel{margin-top:16px}
.chapter-carousel .apartment-tabs{margin-top:26px;max-width:100%;overflow:visible;flex-wrap:wrap}
.chapter-carousel .apartment-tabs button{font-size:13px;padding:12px 16px;min-height:44px}
.chapter-carousel .apartment-panel{min-height:0;padding-top:18px}
.chapter-carousel .apartment-panel p{font-size:14px;line-height:1.55}
.chapter-carousel .apartment-panel small{font-size:11px;line-height:1.5;margin-top:15px;opacity:.78}
.chapter-carousel .editorial-links{gap:16px;margin-top:26px;align-items:flex-start;flex-direction:column}
.chapter-carousel .editorial-links .button{font-size:13px;padding:17px 21px;min-height:52px}
.photo-carousel{margin:0;min-width:0;background:var(--ivory);color:var(--pine);padding:12px;box-shadow:0 24px 65px rgba(0,0,0,.22);border:1px solid rgba(255,255,244,.3)}
.carousel-photo{display:block;position:relative;width:100%;aspect-ratio:4 / 3;max-height:480px;padding:0;overflow:hidden;background:#e5e8df;color:var(--pine);touch-action:pan-y;cursor:zoom-in}
.carousel-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;pointer-events:none}
.carousel-photo>span{position:absolute;right:12px;bottom:12px;background:rgba(247,244,235,.95);padding:9px 12px;font-size:11px;line-height:1.2;border:1px solid rgba(24,56,45,.16);pointer-events:none}
.carousel-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 6px 16px}
.carousel-caption strong{font-size:14px;line-height:1.4;font-weight:600}
.carousel-caption [data-carousel-count]{font-size:12px;letter-spacing:.03em;white-space:nowrap;color:#586b5d;font-variant-numeric:tabular-nums}
.carousel-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 6px 14px}
.carousel-navigation button{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;min-height:44px;min-width:94px;font-size:12px;font-weight:600;background:transparent;color:var(--pine);border:1px solid #b9c4b5;transition:background .18s,border-color .18s}
.carousel-navigation button:hover{background:#e3e8dd;border-color:var(--pine)}
.carousel-help{font-size:10px;line-height:1.4;color:#667867;text-align:center}
.carousel-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0 6px 5px}
.carousel-thumbnails-interiors{grid-template-columns:repeat(3,minmax(0,1fr))}
.carousel-thumbnails-architecture{grid-template-columns:repeat(4,minmax(0,1fr))}
.carousel-thumbnails button{min-width:0;padding:4px;background:transparent;color:var(--pine);text-align:left;border:1px solid transparent;opacity:.72;transition:opacity .18s,border-color .18s}
.carousel-thumbnails button[aria-pressed=true]{border-color:var(--pine);opacity:1}
.carousel-thumbnails button:hover{opacity:1}
.carousel-thumbnails img{width:100%;aspect-ratio:1.35;display:block;object-fit:cover;background:#e1e7da}
.carousel-thumbnails span{display:block;font-size:10px;line-height:1.35;padding:6px 0 0;overflow-wrap:anywhere}
.photo-carousel [hidden]{display:none!important}
.photo-carousel:not(.carousel-ready) .carousel-photo{pointer-events:none;cursor:default}
.photo-carousel:not(.carousel-ready) .carousel-photo>span{display:none}
.carousel-nojs-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 6px 6px}
.carousel-nojs-gallery figure{margin:0}
.carousel-nojs-gallery img{display:block;aspect-ratio:4/3;width:100%;object-fit:contain;background:#e5e8df}
.carousel-nojs-gallery figcaption{font-size:11px;margin-top:7px}
@media(min-width:1800px){.chapter-carousel .chapter-content{margin-inline:auto}}
@media(max-width:1100px){.chapter-carousel .chapter-content{grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:32px}.chapter-carousel h2{font-size:42px}.carousel-caption strong{font-size:12px}.carousel-help{display:none}}
@media(max-width:850px){
  .chapter.chapter-carousel,.enhanced .chapter.chapter-carousel{min-height:110svh;padding-top:112px;padding-bottom:95px}
  .chapter-carousel .chapter-content{display:grid;grid-template-columns:1fr;gap:31px;max-width:650px}
  .chapter-carousel h2{font-size:clamp(35px,7.4vw,50px)}
  .chapter-carousel .eyebrow{max-width:none;margin-bottom:19px;font-size:10px}
  .chapter-carousel .chapter-description{max-width:none;margin-top:18px;font-size:15px;line-height:1.55}
  .chapter-carousel .amenity-tabs,.chapter-carousel .apartment-tabs{margin-top:22px;max-width:none}
  .chapter-carousel .amenity-tabs button{font-size:12px;padding:9px 12px!important}
  .chapter-carousel .apartment-tabs button{font-size:13px;padding:12px 19px}
  .chapter-carousel .editorial-links{margin-top:22px;gap:16px}
  .chapter-carousel .editorial-links .button{width:100%;justify-content:center}
  .photo-carousel{padding:9px}
  .carousel-photo{max-height:420px}
  .carousel-caption{padding:14px 4px}
  .carousel-caption strong{font-size:13px}
  .carousel-navigation{padding:0 4px 12px}
  .carousel-navigation button{min-width:95px;min-height:44px;padding:10px 15px}
  .carousel-help{display:block;font-size:10px}
  .carousel-thumbnails{gap:5px;padding:0 3px 3px}
  .carousel-thumbnails button{padding:3px}
  .carousel-thumbnails span{font-size:10px}
}
@media(max-width:380px){
  .chapter-carousel h2{font-size:34px}
  .chapter-carousel .chapter-content{gap:26px}
  .chapter-carousel .amenity-tabs{gap:6px}
  .chapter-carousel .amenity-tabs button{padding:9px 10px!important;font-size:11px}
  .chapter-carousel .apartment-tabs button{font-size:12px;padding:12px 14px}
  .carousel-photo>span{font-size:10px;padding:8px 10px;right:8px;bottom:8px}
  .carousel-caption strong{font-size:12px}
  .carousel-navigation button{min-width:84px;padding:10px 12px}
  .carousel-help{font-size:9px}
  .carousel-thumbnails span{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.chapter.chapter-carousel,.enhanced .chapter.chapter-carousel{height:auto;overflow:visible;min-height:100svh}.photo-carousel{box-shadow:none}}
