/* ZENVEY RETREAT V1.9.6 — CLEAN REPLACEMENT CSS
   Replaces all earlier Retreat CSS and fixes collage baseline + Section 3 order.
   Do NOT append older V1.9.1–V1.9.5 overrides after this file.
*/
.retreat-page .zr-section{padding:96px 0}
.retreat-page .zr-opening{background:var(--ivory)}
.retreat-page .zr-return{background:var(--paper)}
.retreat-page .zr-twohomes{background:#211f1c;color:#fff}
.retreat-page .zr-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center}
.retreat-page .zr-copy h1{font-size:clamp(3.3rem,5.4vw,5.75rem);line-height:.93;letter-spacing:-.025em;margin:24px 0 30px;max-width:8.5ch}
.retreat-page .zr-copy h2{font-size:clamp(3rem,4.5vw,5rem);line-height:.94;letter-spacing:-.025em;margin:20px 0 28px;max-width:9ch}
.retreat-page .zr-manifesto{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.55rem,2.1vw,2.05rem);line-height:1.16;max-width:26ch;margin:0 0 24px}
.retreat-page .zr-copy .lead{max-width:45ch}
.retreat-page .zr-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}
.retreat-page .zr-proof{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.72rem;line-height:1.16;max-width:29ch;color:#f1e9de;margin:28px 0}
.retreat-page .zr-dark-copy .lead{color:#d9d1c8}
.retreat-page .zr-dark-copy .eyebrow,.retreat-page .zr-dark-copy .text-link{color:#c5a975}
.retreat-page .zr-secondary-copy{color:var(--muted);max-width:44ch;line-height:1.7}
.retreat-page .zr-promise{margin:35px 0 32px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:4px}
.retreat-page .zr-promise span,.retreat-page .zr-promise strong{font-family:"Cormorant Garamond",Georgia,serif}
.retreat-page .zr-promise span{font-size:1.55rem;color:var(--muted)}
.retreat-page .zr-promise strong{font-size:2.3rem;font-weight:500}

/* COLLAGE — one natural-height main image + an absolutely pinned support column.
   The support column top and bottom are identical to the main image by construction. */
.retreat-page .zr-collage{
  --zr-gap:12px;
  position:relative;
  display:block;
  width:100%;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  outline:0;
  box-shadow:none;
}
.retreat-page .zr-collage > .zr-main{
  display:block;
  width:calc(66.6666667% - 5px);
  margin:0;
  padding:0;
  overflow:hidden;
  border-radius:14px;
}
.retreat-page .zr-collage > .zr-main > img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
}
.retreat-page .zr-collage > .zr-side{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:calc(33.3333333% - 7px);
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:minmax(0,1fr) minmax(0,1fr);
  gap:var(--zr-gap);
  margin:0;
  padding:0;
  overflow:hidden;
}
.retreat-page .zr-collage > .zr-side > figure{
  position:relative;
  min-width:0;
  min-height:0;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  border-radius:14px;
  background:transparent;
}
.retreat-page .zr-collage > .zr-side > figure > img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  margin:0;
  padding:0;
}

/* Section 2: first bedroom is narrower (2:3), so allocate a slightly taller first row.
   This minimizes cropping while the support column remains exactly aligned to the exterior. */
.retreat-page .zr-twohomes .zr-collage > .zr-side{
  grid-template-rows:minmax(0,1.126fr) minmax(0,1fr);
}
.retreat-page .zr-unit-side figcaption{
  position:absolute;
  left:0;right:0;bottom:0;z-index:3;
  margin:0;
  padding:28px 14px 13px;
  display:grid;
  gap:2px;
  color:#fff;
  background:linear-gradient(to top,rgba(22,20,18,.88) 0%,rgba(22,20,18,.52) 58%,rgba(22,20,18,0) 100%);
  pointer-events:none;
}
.retreat-page .zr-unit-side small{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#d1af73}
.retreat-page .zr-unit-side strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.65rem;font-weight:500;color:#fff}

/* SECTION RHYTHM — final editorial alternation
   Section 1: Copy left | Images right
   Section 2: Images left | Copy right
   Section 3: Copy left | Images right
*/
.retreat-page .zr-opening .zr-grid{
  grid-template-columns:.78fr 1.22fr;
}
.retreat-page .zr-twohomes .zr-grid{
  grid-template-columns:1.22fr .78fr;
}
.retreat-page .zr-return .zr-grid{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:72px;
  align-items:center;
}
.retreat-page .zr-twohomes .zr-copy,
.retreat-page .zr-return .zr-copy{
  align-self:center;
}
.retreat-page .zr-twohomes .zr-collage,
.retreat-page .zr-return .zr-collage{
  width:100%;
  max-width:none;
  margin:0;
}

@media(max-width:1050px){
  .retreat-page .zr-grid,.retreat-page .zr-opening .zr-grid,.retreat-page .zr-twohomes .zr-grid,.retreat-page .zr-return .zr-grid{grid-template-columns:1fr;gap:52px}
  .retreat-page .zr-copy{max-width:760px}
}

@media(max-width:720px){
  .retreat-page .zr-section{padding:76px 0}
  .retreat-page .zr-copy h1{font-size:clamp(3rem,13vw,4.25rem)}
  .retreat-page .zr-collage{display:grid;grid-template-columns:1fr;gap:8px}
  .retreat-page .zr-collage > .zr-main{width:100%}
  .retreat-page .zr-collage > .zr-side,
  .retreat-page .zr-twohomes .zr-collage > .zr-side{
    position:static;
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
    gap:8px;
    overflow:visible;
  }
  .retreat-page .zr-collage > .zr-side > figure{height:auto}
  .retreat-page .zr-collage > .zr-side > figure > img{width:100%;height:auto;object-fit:contain}
}
@media(max-width:520px){
  .retreat-page .zr-collage > .zr-side,
  .retreat-page .zr-twohomes .zr-collage > .zr-side{grid-template-columns:1fr}
  .retreat-page .zr-actions{gap:18px}
}


/* =========================================================
   V1.9.7 — RETREAT EDITORIAL MICRO-CAPTIONS
   Section 1 + Section 3 only.
   Section 2 retains its apartment identity labels unchanged.
   Captions are overlays and do not change collage geometry.
   ========================================================= */

.retreat-page .zr-collage figure{
  position:relative;
}

.retreat-page .zr-photo-caption{
  position:absolute;
  left:14px;
  bottom:14px;
  z-index:6;

  display:inline-flex;
  align-items:center;

  max-width:calc(100% - 28px);
  margin:0;
  padding:8px 11px 8px 10px;

  font-family:Inter,Arial,sans-serif;
  font-size:.61rem;
  line-height:1.2;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;

  color:#f5efe5;
  background:rgba(27,25,22,.72);

  border:0;
  outline:0;
  box-shadow:none;
  border-radius:2px;

  pointer-events:none;
}

.retreat-page .zr-photo-caption::before{
  content:"";
  flex:0 0 auto;
  width:1px;
  height:13px;
  margin-right:8px;
  background:#b48b4a;
  opacity:.9;
}

@media(max-width:720px){
  .retreat-page .zr-photo-caption{
    left:10px;
    bottom:10px;
    max-width:calc(100% - 20px);
    padding:7px 9px 7px 8px;
    font-size:.56rem;
    letter-spacing:.12em;
  }

  .retreat-page .zr-photo-caption::before{
    height:12px;
    margin-right:7px;
  }
}


/* V1.9.8 — RESPONSIVE NARRATIVE ORDER */
@media(max-width:1050px){
  .retreat-page .zr-opening .zr-copy{order:1}
  .retreat-page .zr-opening .zr-collage{order:2}

  .retreat-page .zr-twohomes .zr-collage{order:1}
  .retreat-page .zr-twohomes .zr-copy{order:2}

  .retreat-page .zr-return .zr-copy{order:1}
  .retreat-page .zr-return .zr-collage{order:2}
}


/* RETREAT V2.0 — APPROVED LANDSCAPE-LED COLLAGES (SECTIONS 1 & 2 ONLY) */
@media(min-width:1051px){
 .retreat-page .zr-opening .zr-grid{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(32px,4vw,64px)}
 .retreat-page .zr-twohomes .zr-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:clamp(32px,4vw,64px)}
}
.retreat-page .zr-opening .zr-collage,
.retreat-page .zr-twohomes .zr-collage{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.retreat-page .zr-opening .zr-collage > .zr-main,
.retreat-page .zr-twohomes .zr-collage > .zr-main{width:100%;aspect-ratio:16/9}
.retreat-page .zr-opening .zr-collage > .zr-main > img,
.retreat-page .zr-twohomes .zr-collage > .zr-main > img{width:100%;height:100%;object-fit:cover}
.retreat-page .zr-opening .zr-collage > .zr-side,
.retreat-page .zr-twohomes .zr-collage > .zr-side{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr);width:100%;height:auto;aspect-ratio:3.4/1;gap:12px;overflow:visible}
.retreat-page .zr-opening .zr-collage > .zr-side > figure,
.retreat-page .zr-twohomes .zr-collage > .zr-side > figure{height:100%;min-height:0}
.retreat-page .zr-opening .zr-collage > .zr-side > figure > img,
.retreat-page .zr-twohomes .zr-collage > .zr-side > figure > img{width:100%;height:100%;object-fit:cover}
/* Individual crops for approved images */
.retreat-page .zr-opening .zr-main img{object-position:50% 52%}
.retreat-page .zr-opening .zr-side figure:first-child img{object-position:50% 55%}
.retreat-page .zr-opening .zr-side figure:last-child img{object-position:50% 50%}
.retreat-page .zr-twohomes .zr-main img{object-position:50% 52%}
.retreat-page .zr-twohomes .zr-side figure:first-child img{object-position:50% 42%}
.retreat-page .zr-twohomes .zr-side figure:last-child img{object-position:50% 38%}
.retreat-page .zr-twohomes .zr-copy h2{max-width:13ch}
.retreat-page .zr-unit-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:26px 0 24px;padding:22px 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.retreat-page .zr-unit-highlight h3{font-family:inherit;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#d1af73;margin:0 0 12px}
.retreat-page .zr-unit-highlight ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.retreat-page .zr-unit-highlight li{font-size:.82rem;line-height:1.5;color:#e2d9ce}
.retreat-page .zr-compare-link{display:inline-flex;margin-top:0}
@media(max-width:1050px){
 .retreat-page .zr-opening .zr-collage > .zr-side,
 .retreat-page .zr-twohomes .zr-collage > .zr-side{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}
}
@media(max-width:720px){
 .retreat-page .zr-opening .zr-collage,
 .retreat-page .zr-twohomes .zr-collage{gap:8px}
 .retreat-page .zr-opening .zr-collage > .zr-side,
 .retreat-page .zr-twohomes .zr-collage > .zr-side{gap:8px;aspect-ratio:2.7/1}
 .retreat-page .zr-opening .zr-collage > .zr-side > figure > img,
 .retreat-page .zr-twohomes .zr-collage > .zr-side > figure > img{height:100%;object-fit:cover}
}
@media(max-width:390px){
 .retreat-page .zr-opening .zr-collage > .zr-side,
 .retreat-page .zr-twohomes .zr-collage > .zr-side{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));aspect-ratio:auto}
 .retreat-page .zr-opening .zr-collage > .zr-side > figure,
 .retreat-page .zr-twohomes .zr-collage > .zr-side > figure{aspect-ratio:16/9}
 .retreat-page .zr-unit-highlights{gap:12px}
}
@media(prefers-reduced-motion:no-preference){
 .retreat-page .zr-opening .zr-collage img,
 .retreat-page .zr-twohomes .zr-collage img{transition:transform .85s cubic-bezier(.2,.7,.2,1)}
 .retreat-page .zr-opening .zr-collage figure:hover img,
 .retreat-page .zr-twohomes .zr-collage figure:hover img{transform:scale(1.025)}
}
