/* Retreats extends the published homepage. Shared tokens, fonts, navigation,
   controls and footer remain in styles.css; all additions are page-scoped. */
.retreats-page .eyebrow{font-size:.875rem;letter-spacing:.17em}
.retreats-page .text-link{font-size:.875rem;letter-spacing:.075em;max-width:100%;line-height:1.65}
.retreats-page .text-link span{flex-shrink:0}
.retreats-page .retreat-hero{display:flex;flex-direction:column;justify-content:flex-end;height:auto;min-height:max(750px,94svh);max-height:none;padding-top:190px;overflow:visible}
.retreats-page .retreat-hero .hero-content{position:relative;inset:auto;width:calc(100% - var(--gutter)*2);margin:0 auto;padding-block:70px 64px;max-width:1150px}
.retreats-page .retreat-hero .hero-shade{background:linear-gradient(180deg,#071b2535 0%,#08201b26 28%,#0a201d9c 66%,#0a201ddd 100%)}
.retreat-hero-intro{font-size:1.125rem;line-height:1.8;color:#f7f6f0;max-width:670px;margin:25px auto 0}
.retreats-page .retreat-hero-bottom{position:relative;inset:auto;justify-content:center;text-align:center;width:calc(100% - var(--gutter)*2);margin:0 auto;padding-block:24px 30px;font-size:.875rem;letter-spacing:.07em}
.retreat-hero-bottom span span{padding-inline:12px;color:#d4bb8f}
.retreat-breadcrumbs{padding-block:24px 0;font-size:.875rem;color:var(--text)}
.retreat-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:12px;list-style:none;margin:0;padding:0}
.retreat-breadcrumbs li+li::before{content:'/';color:var(--bronze);margin-right:12px}
.retreat-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.retreat-intro{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(45px,7vw,110px);align-items:center;padding-block:90px 115px}
.retreat-intro .intro-copy{min-width:0}
.retreat-location-photo,.retreat-dining-photo{min-width:0}
.retreat-location-photo img{width:100%;aspect-ratio:.92;object-fit:cover;object-position:30% 50%}
.retreat-location-photo figcaption,.retreat-dining-photo figcaption,.retreat-experience-photo figcaption{font-size:.875rem;line-height:1.65;color:var(--text);padding-top:14px}
.retreat-experiences{background:#efede3;padding-block:86px 30px;scroll-margin-top:30px}
.retreat-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.retreat-section-heading .eyebrow{margin-bottom:23px}
.retreat-section-heading>p{font-size:1rem;line-height:1.85;color:var(--text);padding-bottom:4px}
.retreat-experience-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:42px;border-block:1px solid #c9cdbf}
.retreat-experience-index a{display:flex;gap:15px;align-items:center;padding:21px 15px;line-height:1.6;font-size:1rem;border-right:1px solid #c9cdbf}
.retreat-experience-index a:first-child{padding-left:0}
.retreat-experience-index a:last-child{border:0;padding-right:0}
.retreat-experience-index a span{font-size:.875rem;color:var(--text);font-variant-numeric:tabular-nums}
.retreat-experience-index a:hover{text-decoration:underline;text-underline-offset:5px}
.retreat-experience{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:clamp(45px,6vw,96px);padding-block:80px;border-bottom:1px solid #c9cdbf;scroll-margin-top:30px}
.retreat-experience:last-child{border:0}
.retreat-experience-reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.retreat-experience-reverse .retreat-experience-copy{grid-column:2;grid-row:1}
.retreat-experience-reverse .retreat-experience-photo{grid-column:1;grid-row:1}
.retreat-experience-copy .eyebrow{margin-bottom:23px}
.retreat-experience-copy h2{margin-bottom:26px}
.retreat-experience-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:1.85;color:var(--text);margin-top:17px}
.retreat-experience-copy>.retreat-arrangement-note{font-size:.875rem;line-height:1.8;margin-top:24px}
.retreat-arrangement-note{font-size:.875rem;line-height:1.8;color:var(--text);border-left:2px solid var(--bronze);padding-left:17px}
.retreat-arrangement-note strong{display:block;font-weight:500;color:var(--ink);margin-bottom:4px}
.retreat-experience-photo{min-width:0}
.retreat-rhythm{padding-block:110px 115px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(45px,7vw,112px);align-items:center}
.retreat-rhythm-copy .eyebrow{margin-bottom:23px}
.retreat-rhythm-copy>p:not(.eyebrow){color:var(--text);margin-top:25px;font-size:1.0625rem;line-height:1.85}
.retreat-rhythm-copy>p.retreat-arrangement-note{font-size:.875rem;line-height:1.8}
.retreat-rhythm-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:29px 0 0;padding:0;font-size:1rem}
.retreat-rhythm-list li{border-top:1px solid var(--line);padding-block:15px;line-height:1.65}
.retreat-rhythm-list a{display:block;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a99b80}
.retreat-dining-photo img{aspect-ratio:.86;object-fit:cover;object-position:center}
.retreat-estate{background:#e9ece2;padding-block:83px 88px;text-align:center}
.retreat-estate .eyebrow{margin-bottom:23px}
.retreat-estate-intro{max-width:680px;margin:25px auto 0;line-height:1.85;color:var(--text);font-size:1.0625rem}
.retreat-estate-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1020px;margin:46px auto 0;padding-block:32px;border-block:1px solid #c9cdbf}
.retreat-estate-facts>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 20px;border-right:1px solid #c9cdbf}
.retreat-estate-facts>div:last-child{border:0}
.retreat-estate-facts dt{font-size:.875rem;line-height:1.6;margin-top:14px}
.retreat-estate-facts dd{order:-1;margin:0;font-family:var(--serif);font-size:66px;line-height:1;letter-spacing:-.03em;white-space:nowrap}
.retreat-estate-facts dd small{font-family:var(--sans);font-size:.875rem;text-transform:uppercase;letter-spacing:.1em}
.retreat-estate-note{margin-block:25px;line-height:1.85;font-size:1rem;color:var(--text)}
.retreat-faq{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(40px,7vw,110px);padding-block:110px 120px;align-items:start}
.retreat-faq .eyebrow{margin-bottom:23px}
.retreat-faq-list{border-top:1px solid var(--line)}
.retreat-faq-list details{border-bottom:1px solid var(--line)}
.retreat-faq-list summary{position:relative;cursor:pointer;list-style:none;padding:22px 44px 22px 0;line-height:1.65;font-size:1.0625rem;font-weight:500;min-height:62px}
.retreat-faq-list summary::-webkit-details-marker{display:none}
.retreat-faq-list summary::before,.retreat-faq-list summary::after{content:'';position:absolute;right:5px;top:32px;width:15px;height:1px;background:var(--green)}
.retreat-faq-list summary::after{transform:rotate(90deg)}
.retreat-faq-list details[open] summary::after{display:none}
.retreat-faq-list details>div{padding:0 34px 25px 0;font-size:1rem;line-height:1.85;color:var(--text)}
.retreat-faq-list a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.retreat-invitation{background:var(--green);color:var(--paper);padding-block:88px 83px;scroll-margin-top:0}
.retreat-invitation-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(45px,7vw,110px)}
.retreat-invitation .eyebrow{color:#c4b395;margin-bottom:25px}
.retreat-invitation-copy>p{font-size:1.0625rem;line-height:1.85;color:#dfdfcf;margin-bottom:18px}
.retreat-invitation-copy .button{margin-top:12px;max-width:100%}
.retreat-home-link{display:flex;align-items:center;gap:15px;width:fit-content;max-width:100%;font-size:.875rem;margin-top:22px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a2ac99}
.retreats-page .site-footer .footer-main{border-top:1px solid #ffffff24}
.retreats-page .retreat-section-heading h2,.retreats-page .retreat-experience h2,.retreats-page .retreat-rhythm h2,.retreats-page .retreat-estate h2,.retreats-page .retreat-faq h2,.retreats-page .retreat-invitation h2{font-size:clamp(42px,3.7vw,60px)}
@media(max-width:1100px){
  .retreat-experience,.retreat-experience-reverse{grid-template-columns:1fr 1fr;gap:38px}
  .retreat-experience-index a{font-size:.9375rem;gap:10px;padding-inline:12px}
}
@media(max-width:900px){
  .retreat-intro,.retreat-rhythm,.retreat-faq,.retreat-invitation-inner{grid-template-columns:1fr;gap:40px}
  .retreat-intro,.retreat-rhythm{padding-block:65px 70px}
  .retreat-location-photo img{aspect-ratio:1.45;object-position:30% 50%}
  .retreat-dining-photo img{aspect-ratio:1.1;object-position:50% 57%}
  .retreat-experience,.retreat-experience-reverse{grid-template-columns:1fr;gap:32px;padding-block:55px}
  .retreat-experience-reverse .retreat-experience-copy,.retreat-experience-reverse .retreat-experience-photo{grid-column:auto;grid-row:auto}
  .retreat-faq{padding-block:70px 75px}
  .retreat-section-heading{align-items:start;flex-direction:column;gap:23px}
  .retreat-experience-index{grid-template-columns:1fr 1fr}
  .retreat-experience-index a:nth-child(2){border-right:0}
  .retreat-experience-index a:nth-child(n+3){border-top:1px solid #c9cdbf}
  .retreat-experience-index a:nth-child(3){padding-left:0}
  .retreat-experience-index a:last-child{padding-left:12px}
  .retreat-invitation{padding-block:65px 60px}
}
@media(max-width:760px){
  .retreats-page .retreat-hero{min-height:790px;padding-top:145px}
  .retreats-page .retreat-hero .hero-content{width:calc(100% - 48px);padding-block:80px 45px}
  .retreats-page .retreat-hero h1{font-size:clamp(42px,10.5vw,58px);line-height:1.08}
  .retreat-hero-intro{font-size:1rem;line-height:1.8;margin-top:22px}
  .retreats-page .retreat-hero .hero-actions{align-items:stretch;max-width:340px;margin-inline:auto}
  .retreats-page .retreat-hero .hero-actions .button{min-width:0;min-height:54px;padding-inline:18px}
  .retreats-page .retreat-hero-bottom{font-size:.8125rem;padding-block:20px 25px;line-height:1.9}
  .retreat-hero-bottom span span{padding-inline:5px}
  .retreats-page .eyebrow{font-size:.8125rem;letter-spacing:.14em}
  .retreat-experiences{padding-top:60px;padding-bottom:10px}
  .retreat-experience-index{margin-top:30px}
  .retreat-experience-index a{font-size:.875rem}
  .retreat-experience-copy>p:not(.eyebrow),.retreat-rhythm-copy>p:not(.eyebrow),.retreat-estate-intro,.retreat-invitation-copy>p{font-size:1rem}
  .retreat-experience-copy>p.retreat-arrangement-note,.retreat-rhythm-copy>p.retreat-arrangement-note{font-size:.875rem}
  .retreat-rhythm-list{column-gap:20px;font-size:.9375rem}
  .retreat-estate{padding-block:60px 62px}
  .retreat-estate-facts{margin-top:32px;padding-block:25px}
  .retreat-estate-facts>div{padding-inline:9px}
  .retreat-estate-facts dd{font-size:52px}
  .retreat-estate-facts dd small{display:block;font-size:.75rem;line-height:1.6}
  .retreat-estate-facts dt{font-size:.8125rem;margin-top:12px}
  .retreat-faq-list summary{font-size:1rem}
  .retreat-invitation-inner{gap:30px}
}
@media(max-width:380px){
  .retreat-experience-index{grid-template-columns:1fr}
  .retreat-experience-index a,.retreat-experience-index a:first-child,.retreat-experience-index a:last-child{border-right:0;padding:13px 0}
  .retreat-experience-index a:nth-child(2){border-top:1px solid #c9cdbf}
  .retreat-rhythm-list{grid-template-columns:1fr}
  .retreat-estate-facts dd{font-size:45px}
}
@media(prefers-reduced-motion:reduce){.retreats-page *{scroll-behavior:auto;transition:none;animation:none}}
.retreat-experience-photo img{display:block;width:100%;height:auto;max-width:100%}

/* Phase 11 owner-approved anchor alignment; keep each preceding border visible. */
.retreats-page .retreat-experience{scroll-margin-top:0}
@media(max-width:760px){.retreats-page .retreat-experience{scroll-margin-top:35px}}

/* Phase 11 owner-approved intro reading rhythm, shared by Retreats and Weddings. */
.retreat-intro .intro-copy h2{margin-bottom:28px}
.retreat-intro .body-copy p{line-height:1.8}
.retreat-intro .body-copy p+p{margin-top:22px}
@media(max-width:760px){
  .retreat-intro .intro-copy h2{margin-bottom:24px}
  .retreat-intro .body-copy p+p{margin-top:20px}
}
