/* Gallery-only extraction of the Retreats CSS rules used by dist/gallery/index.html.
   The Gallery source loads retreats.css before gallery.css. Phase 6 page CSS is not
   imported here; these rules support only its reused hero, estate facts and CTA. */
.gallery-page .eyebrow{font-size:.875rem;letter-spacing:.17em}
.gallery-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}
.gallery-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}
.gallery-page .retreat-hero .hero-shade{background:linear-gradient(180deg,#071b2535 0%,#08201b26 28%,#0a201d9c 66%,#0a201ddd 100%)}
.gallery-page .retreat-hero-intro{font-size:1.125rem;line-height:1.8;color:#f7f6f0;max-width:670px;margin:25px auto 0}
.gallery-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}
.gallery-page .retreat-breadcrumbs{padding-block:24px 0;font-size:.875rem;color:var(--text)}
.gallery-page .retreat-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:12px;list-style:none;margin:0;padding:0}
.gallery-page .retreat-breadcrumbs li+li::before{content:'/';color:var(--bronze);margin-right:12px}
.gallery-page .retreat-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.gallery-page .retreat-estate{background:#e9ece2;padding-block:83px 88px;text-align:center}
.gallery-page .retreat-estate .eyebrow{margin-bottom:23px}
.gallery-page .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}
.gallery-page .retreat-estate-facts>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 20px;border-right:1px solid #c9cdbf}
.gallery-page .retreat-estate-facts>div:last-child{border:0}
.gallery-page .retreat-estate-facts dt{font-size:.875rem;line-height:1.6;margin-top:14px}
.gallery-page .retreat-estate-facts dd{order:-1;margin:0;font-family:var(--serif);font-size:66px;line-height:1;letter-spacing:-.03em;white-space:nowrap}
.gallery-page .retreat-estate-facts dd small{font-family:var(--sans);font-size:.875rem;text-transform:uppercase;letter-spacing:.1em}
.gallery-page .retreat-estate-note{margin-block:25px;line-height:1.85;font-size:1rem;color:var(--text)}
.gallery-page .retreat-invitation{background:var(--green);color:var(--paper);padding-block:88px 83px;scroll-margin-top:0}
.gallery-page .retreat-invitation-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(45px,7vw,110px)}
.gallery-page .retreat-invitation .eyebrow{color:#c4b395;margin-bottom:25px}
.gallery-page .retreat-invitation-copy>p{font-size:1.0625rem;line-height:1.85;color:#dfdfcf;margin-bottom:18px}
.gallery-page .retreat-invitation-copy .button{margin-top:12px;max-width:100%}
.gallery-page .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}
.gallery-page .retreat-estate h2,.gallery-page .retreat-invitation h2{font-size:clamp(42px,3.7vw,60px)}
@media(max-width:900px){
  .gallery-page .retreat-invitation-inner{grid-template-columns:1fr;gap:40px}
  .gallery-page .retreat-invitation{padding-block:65px 60px}
}
@media(max-width:760px){
  .gallery-page .retreat-hero{min-height:790px;padding-top:145px}
  .gallery-page .retreat-hero .hero-content{width:calc(100% - 48px);padding-block:80px 45px}
  .gallery-page .retreat-hero h1{font-size:clamp(42px,10.5vw,58px);line-height:1.08}
  .gallery-page .retreat-hero-intro{font-size:1rem;line-height:1.8;margin-top:22px}
  .gallery-page .retreat-hero .hero-actions{align-items:stretch;max-width:340px;margin-inline:auto}
  .gallery-page .retreat-hero .hero-actions .button{min-width:0;min-height:54px;padding-inline:18px}
  .gallery-page .retreat-hero-bottom{font-size:.8125rem;padding-block:20px 25px;line-height:1.9}
  .gallery-page .eyebrow{font-size:.8125rem;letter-spacing:.14em}
  .gallery-page .retreat-invitation-copy>p{font-size:1rem}
  .gallery-page .retreat-estate{padding-block:60px 62px}
  .gallery-page .retreat-estate-facts{margin-top:32px;padding-block:25px}
  .gallery-page .retreat-estate-facts>div{padding-inline:9px}
  .gallery-page .retreat-estate-facts dd{font-size:52px}
  .gallery-page .retreat-estate-facts dd small{display:block;font-size:.75rem;line-height:1.6}
  .gallery-page .retreat-estate-facts dt{font-size:.8125rem;margin-top:12px}
  .gallery-page .retreat-invitation-inner{gap:30px}
}
@media(max-width:380px){.gallery-page .retreat-estate-facts dd{font-size:45px}}
