:root{
  --cream:#F6F1E4; --stone:#ECE5D2;
  --green:#2F3B2A; --green-mid:#4A5A3F;
  --ink:#2B2118; --ink-70:rgba(43,33,24,.72); --ink-45:rgba(43,33,24,.48);
  --terracotta:#A9502A;
  --terracotta-wash:#F3E3D8;
  --line:rgba(47,59,42,.16);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--cream);color:var(--ink);font-family:'Cormorant Garamond',serif;font-weight:500;font-size:20px;line-height:1.65;-webkit-font-smoothing:antialiased;}
.ui{font-family:'Manrope',sans-serif;}
a{color:inherit;text-decoration:none;}
a:focus-visible,button:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px;}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px;}
@media (max-width:640px){.wrap{padding:0 22px;}}

/* Headings thicker across the board, and tight enough that wrapped
   titles read as one phrase, not two separate lines */
h1,h2,h3,h4{font-weight:600;line-height:1.12;}

/* ---------- Scroll reveal ---------- */
.reveal{opacity:0;transform:translateY(26px) scale(0.97);transition:opacity 0.65s cubic-bezier(.16,.84,.44,1), transform 0.65s cubic-bezier(.16,.84,.44,1);}
.reveal.is-visible{opacity:1;transform:none;}
/* Staggered entrance for anything sitting in a row/grid of reveal items */
.reveal:nth-child(1){transition-delay:0s;}
.reveal:nth-child(2){transition-delay:0.07s;}
.reveal:nth-child(3){transition-delay:0.14s;}
.reveal:nth-child(4){transition-delay:0.21s;}
.reveal:nth-child(5){transition-delay:0.28s;}
.reveal:nth-child(6){transition-delay:0.35s;}
.reveal:nth-child(7){transition-delay:0.42s;}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* Brief highlight pulse when a chip-jump lands on a section */
.just-jumped{animation:jumpPulse 0.9s ease;}
@keyframes jumpPulse{
  0%{background-color:rgba(169,80,42,0.14);}
  100%{background-color:transparent;}
}
@media (prefers-reduced-motion: reduce){.just-jumped{animation:none;}}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:30;background:rgba(246,241,228,0.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;padding-top:22px;padding-bottom:22px;}
.wordmark{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:23px;letter-spacing:0.02em;color:var(--green);}
.nav-links{display:flex;gap:30px;font-family:'Manrope',sans-serif;font-weight:600;font-size:14.5px;letter-spacing:0.03em;color:var(--ink-70);text-transform:uppercase;}
.nav-links a:hover,.nav-links a.active{color:var(--green);}
.nav-mobile-hide{display:flex;}
@media (max-width:820px){.nav-mobile-hide{display:none;}}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:26px;height:20px;background:none;border:none;padding:0;cursor:pointer;}
.nav-toggle span{display:block;width:100%;height:1.5px;background:var(--green);transition:transform .25s ease, opacity .25s ease;}
@media (max-width:820px){.nav-toggle{display:flex;}}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

.mobile-nav-panel{display:none;flex-direction:column;padding:8px 40px 28px;border-top:1px solid var(--line);background:var(--cream);}
@media (max-width:640px){.mobile-nav-panel{padding:8px 22px 24px;}}
.mobile-nav-panel.open{display:flex;}
.mobile-nav-panel a{font-family:'Manrope',sans-serif;font-weight:600;font-size:16.5px;color:var(--ink-70);padding:14px 0;border-top:1px solid var(--line);}
.mobile-nav-panel a:first-child{border-top:none;}
.mobile-nav-cta{color:var(--terracotta) !important;}
.nav-right{display:flex;align-items:center;gap:18px;}
.lang-switch{font-family:'Manrope',sans-serif;font-weight:600;font-size:13px;color:var(--ink-45);position:relative;}
.lang-switch ul{list-style:none;margin:0;padding:0;display:flex;gap:8px;}
.lang-switch li{display:none;}
.lang-switch li.lang-item-current{display:inline;}
.lang-switch:hover li{display:inline;}
.lang-switch a{padding:2px 3px;}
.lang-switch li.lang-item-current a{color:var(--green);}
/* On mobile, there's no hover state at all — always show both languages
   in the expanded menu rather than trapping people on whichever is current. */
.lang-switch-mobile li{display:inline;}
.nav-cta{font-family:'Manrope',sans-serif;font-weight:600;font-size:13.5px;padding:10px 18px;border:1px solid var(--green);color:var(--green);border-radius:2px;letter-spacing:0.03em;text-transform:uppercase;}
.nav-cta:hover{background:var(--green);color:var(--cream);}

/* ---------- Hero (video) ---------- */
.hero{position:relative;height:90vh;min-height:580px;display:flex;align-items:flex-end;overflow:hidden;}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:#4A5A3F;}
.hero-video{width:100%;height:100%;object-fit:cover;display:block;}
.hero-video-veil{position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,20,12,0.6) 0%, rgba(20,20,12,0.08) 45%, rgba(20,20,12,0.2) 100%);}
@media (prefers-reduced-motion: reduce){.hero-video{display:none;} .hero-media{background:linear-gradient(160deg,#B8AF93 0%,#8E9375 45%,#5C6647 100%);}}
.hero-content{position:relative;z-index:2;color:#F6F1E4;padding-bottom:64px;width:100%;max-width:1200px;margin:0 auto;padding-left:40px;padding-right:40px;text-align:left;box-sizing:border-box;}
@media (max-width:640px){.hero-content{padding-left:22px;padding-right:22px;}}
.hero-content > *{max-width:640px;}
.hero-eyebrow{font-family:'Manrope',sans-serif;font-weight:600;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;opacity:0.9;margin-bottom:18px;}
.hero-title{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(40px,8vw,96px);line-height:1;margin-bottom:18px;}
.hero-sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:clamp(20px,2.2vw,27px);max-width:34ch;margin-bottom:10px;}
.hero-mini{font-family:'Manrope',sans-serif;font-weight:600;font-size:16px;opacity:0.85;margin-bottom:30px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
.btn-solid{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.03em;text-transform:uppercase;background:#F6F1E4;color:var(--green);padding:14px 26px;border-radius:2px;display:inline-block;}
.btn-solid:hover{background:var(--terracotta);color:#fff;}
.btn-line{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.03em;text-transform:uppercase;border:1px solid rgba(246,241,228,0.6);color:#F6F1E4;padding:14px 24px;border-radius:2px;display:inline-block;}
.btn-line:hover{border-color:#F6F1E4;background:rgba(246,241,228,0.1);}
/* btn-line reused on light backgrounds needs override, applied inline where needed */

/* ---------- Why come ---------- */
.why{padding:100px 0;}
.why-head{text-align:center;max-width:52ch;margin:0 auto 60px;}
.why-head .eyebrow{font-family:'Manrope',sans-serif;font-weight:600;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--terracotta);margin-bottom:14px;}
.why-head h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,3.4vw,42px);color:var(--green);}
.why-head p{font-family:'Cormorant Garamond',serif;font-weight:500;color:var(--ink-70);font-size:19px;}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;}
@media (max-width:820px){.why-grid{grid-template-columns:1fr;gap:40px;}}
.why-item{text-align:center;}
.why-mark{width:38px;height:38px;margin:0 auto 20px;border:1.5px solid var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.why-mark svg{width:17px;height:17px;stroke:var(--green);fill:none;stroke-width:1.5;}
.why-item h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:24px;color:var(--green);margin-bottom:10px;}
.why-item p{font-size:18px;color:var(--ink-70);max-width:32ch;margin:0 auto;}

/* ---------- The House (homepage) ---------- */
/* ---------- The House: full-bleed hero-style band ---------- */
.house-hero{position:relative;height:76vh;min-height:520px;display:flex;align-items:flex-end;overflow:hidden;}
.house-hero-media{position:absolute;inset:0;background-size:cover;background-position:center;}
.house-hero-veil{position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,20,12,0.62) 0%, rgba(20,20,12,0.05) 45%, rgba(20,20,12,0.1) 100%);}
.house-hero-content{position:relative;z-index:2;color:#F6F1E4;padding-bottom:64px;width:100%;max-width:1200px;margin:0 auto;padding-left:40px;padding-right:40px;box-sizing:border-box;}
@media (max-width:640px){.house-hero-content{padding-left:22px;padding-right:22px;}}
.house-hero-content h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,4vw,46px);color:#F6F1E4;margin-bottom:14px;max-width:16ch;}
.house-hero-content p{font-size:18px;color:rgba(246,241,228,0.85);max-width:48ch;}

.house-spaces-row{background:var(--stone);padding:64px 0 72px;}
.house-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 30px;}
@media (max-width:820px){.house-cards{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.house-cards{grid-template-columns:1fr;}}
.house-card{border-radius:2px;overflow:hidden;}
.house-card .hc-photo{aspect-ratio:4/3;position:relative;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;}
.hc-photo-icon{position:absolute;top:12px;left:12px;z-index:1;width:36px;height:36px;border:1.5px solid rgba(246,241,228,0.85);border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(20,20,12,0.15);}
.hc-photo-icon svg{width:16px;height:16px;stroke:#F6F1E4;fill:none;stroke-width:1.4;}
.hc-veil{position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,20,12,0.68) 0%, rgba(20,20,12,0.05) 55%, rgba(20,20,12,0.05) 100%);}
.hc-overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:14px 16px 16px;}
.hc-tag{font-family:'Manrope',sans-serif;font-weight:700;font-size:11.5px;color:#E0A87A;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:4px;}
.house-card h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:18px;color:#F6F1E4;line-height:1.25;}
.house-note{font-style:italic;color:var(--green);font-weight:600;margin-bottom:8px;}
.house-entries{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;}
.house-entries .btn-line{color:var(--green);border-color:var(--green);}
.house-entries .btn-line:hover{background:var(--green);color:var(--cream);}

/* ---------- Ways to Gather ---------- */
.retreats{padding:100px 0;}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
@media (max-width:900px){.cat-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.cat-grid{grid-template-columns:1fr;}}
.cat-card{background:var(--cream);padding:40px 30px;display:block;transition:background .2s ease;}
.cat-card:hover{background:var(--stone);}
.cat-icon{width:44px;height:44px;border:1.5px solid var(--terracotta);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.cat-icon svg{width:20px;height:20px;stroke:var(--terracotta);fill:none;stroke-width:1.5;}
.cat-card .eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--terracotta);margin-bottom:14px;}
.cat-card h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:26px;color:var(--green);margin-bottom:16px;}
.cat-card p.tagline{font-size:16.5px;color:var(--ink-70);margin-top:6px;}
.cat-more{font-family:'Manrope',sans-serif;font-weight:600;font-size:15px;color:var(--ink-45);margin-top:16px;display:inline-block;transition:color .2s ease;}
.cat-card:hover .cat-more{color:var(--terracotta);}

/* ---------- Region teaser (homepage) ---------- */
.region-teaser{padding:100px 0;}
.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:44px;}
@media (max-width:900px){.region-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.region-grid{grid-template-columns:1fr;}}
.region-card{display:block;transition:transform .2s ease;}
.region-card:hover{}
.region-card .rc-photo{aspect-ratio:5/4;background-size:cover;background-position:center;margin-bottom:16px;}
.region-card h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:22px;color:var(--green);margin-bottom:8px;}
.region-card p{font-size:16.5px;color:var(--ink-70);}

/* ---------- Getting Here ---------- */
.here{background:var(--green);color:var(--cream);padding:100px 0;}
.here-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center;}
@media (max-width:860px){.here-grid{grid-template-columns:1fr;gap:40px;}}
.here .eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:#C9A574;margin-bottom:16px;}
.here h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(28px,3.2vw,38px);margin-bottom:18px;}
.here p{font-size:19px;color:rgba(246,241,228,0.8);max-width:40ch;}
.here .btn-line{color:#F6F1E4;border-color:rgba(246,241,228,0.6);}
.route{display:flex;flex-direction:column;gap:0;font-family:'Manrope',sans-serif;}
.route-stop{display:flex;align-items:center;gap:18px;padding:14px 0;}
.route-dot{width:9px;height:9px;border-radius:50%;background:#F6F1E4;flex-shrink:0;}
.route-stop .stop-name{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:22px;}
.route-link{display:flex;align-items:center;gap:18px;padding-left:4px;}
.route-line{width:1px;height:28px;background:rgba(246,241,228,0.3);margin-left:4px;}
.route-link span{font-family:'Manrope',sans-serif;font-weight:600;font-size:14.5px;color:rgba(246,241,228,0.6);}

/* ---------- Host / Corporate dual ---------- */
.dual{padding:100px 0;}
.dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);}
@media (max-width:860px){.dual-grid{grid-template-columns:1fr;}}
.dual-card{background:var(--cream);padding:52px 44px;}
.dual-card.corp{background:var(--stone);}
.dual-card .eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--terracotta);margin-bottom:16px;}
.dual-card h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;color:var(--green);margin-bottom:16px;}
.dual-card p{font-size:19px;color:var(--ink-70);margin-bottom:24px;max-width:38ch;}
.dual-card .btn-line{color:var(--green);border-color:var(--green);}
.dual-card .btn-line:hover{background:var(--green);color:var(--cream);}

/* ---------- Seasons ---------- */
.seasons{padding:100px 0;}
.season-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
@media (max-width:820px){.season-strip{grid-template-columns:1fr 1fr;}}
.season-block h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:22px;color:var(--green);margin-bottom:10px;}
.season-block p{font-size:16.5px;color:var(--ink-70);}
.season-icon{width:42px;height:42px;border:1.5px solid var(--terracotta);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.season-icon svg{width:19px;height:19px;stroke:var(--terracotta);fill:none;stroke-width:1.4;}

.season-video-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:50px;border-radius:2px;overflow:hidden;}
@media (max-width:820px){.season-video-strip{grid-template-columns:1fr 1fr;}}
.season-video-cell{position:relative;aspect-ratio:3/4;overflow:hidden;}
.season-video-cell video{width:100%;height:100%;object-fit:cover;display:block;}
.season-video-cell::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,20,12,0.55) 0%, transparent 45%);}
.svc-label{position:absolute;bottom:14px;left:16px;z-index:2;color:#F6F1E4;font-size:12.5px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;}
.season-video-note{text-align:center;font-size:11.5px;color:var(--ink-45);margin-top:12px;}
@media (prefers-reduced-motion: reduce){.season-video-cell video{display:none;} .season-video-cell{background:var(--stone);}}

/* ---------- Footer ---------- */
.site-footer{background:var(--green);color:rgba(246,241,228,0.85);padding:64px 0 40px;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid rgba(246,241,228,0.15);}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr 1fr;gap:28px;}}
@media (max-width:460px){.footer-grid{grid-template-columns:1fr;gap:26px;}}
.footer-word{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:24px;color:#F6F1E4;margin-bottom:12px;}
.footer-grid p{font-family:'Manrope',sans-serif;font-weight:600;font-size:14px;color:rgba(246,241,228,0.6);max-width:30ch;}
.footer-grid h5{font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;color:rgba(246,241,228,0.55);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:14px;}
.footer-grid a{display:block;font-family:'Manrope',sans-serif;font-weight:600;font-size:15px;margin-bottom:9px;color:rgba(246,241,228,0.8);}
.footer-grid a:hover{color:#fff;}
.footer-bottom{display:flex;justify-content:space-between;padding-top:22px;font-family:'Manrope',sans-serif;font-weight:600;font-size:13px;color:rgba(246,241,228,0.5);flex-wrap:wrap;gap:10px;}

/* ---------- Generic inner page head ---------- */
.page-head{padding-top:64px;padding-bottom:20px;}
.eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--terracotta);margin-bottom:16px;}
.page-head h1{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(40px,5.4vw,62px);color:var(--green);margin-bottom:18px;max-width:20ch;}
.page-head p{font-size:20px;color:var(--ink-70);max-width:58ch;}
.page-intro{padding-top:10px;padding-bottom:20px;}
.page-intro p{font-size:19px;line-height:1.5;color:var(--ink-70);max-width:60ch;margin-bottom:18px;}

/* ---------- The House: browse by activity / by space ---------- */
.house-browse{padding:56px 0 20px;}
.activity-circles{display:flex;justify-content:center;gap:36px;flex-wrap:wrap;margin-top:44px;}
.activity-circle{display:flex;flex-direction:column;align-items:center;gap:14px;border:none;padding:0;font-family:'Manrope',sans-serif;font-weight:600;font-size:14.5px;color:var(--ink-70);}
.activity-circle:hover{color:var(--green);background:none;}
.activity-circle .ac-mark{margin-bottom:0;}
.space-chip-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:28px;}

.ac-mark{width:68px;height:68px;border:1.5px solid var(--terracotta);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .25s ease, background .25s ease;}
.ac-mark svg{width:26px;height:26px;stroke:var(--terracotta);fill:none;stroke-width:1.4;}
.activity-circle:hover .ac-mark{background:var(--stone);}


/* ---------- The House template ---------- */
.mood-nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding-top:20px;padding-bottom:4px;}
.mood-group-label{font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;color:var(--ink-45);text-transform:uppercase;letter-spacing:0.04em;margin-right:6px;}
.mood-chip{font-family:'Manrope',sans-serif;font-weight:600;font-size:14px;padding:9px 16px 9px 12px;border:1px solid var(--line);border-radius:20px;color:var(--ink-70);display:inline-flex;align-items:center;gap:7px;transition:border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;}
.mood-chip:hover{border-color:var(--green);color:var(--green);background:var(--stone);}
.chip-icon{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.5;flex-shrink:0;}
.space{display:grid;grid-template-columns:0.46fr 0.54fr;gap:50px;align-items:center;padding:56px 0;border-top:1px solid var(--line);}
.space.reverse{grid-template-columns:0.54fr 0.46fr;}
.space.reverse .sp-photo{order:2;} .space.reverse .sp-copy{order:1;}
@media (max-width:860px){.space,.space.reverse{grid-template-columns:1fr;} .space.reverse .sp-photo,.space.reverse .sp-copy{order:initial;}}
.sp-photo{aspect-ratio:4/3;border-radius:2px;position:relative;overflow:hidden;background-size:cover;background-position:center;}
.sp-badges{display:flex;gap:8px;margin-bottom:14px;}
.sp-badge{width:34px;height:34px;border:1.5px solid var(--terracotta);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.sp-badge svg{width:15px;height:15px;stroke:var(--terracotta);fill:none;stroke-width:1.5;}
.sp-copy h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:36px;color:var(--green);margin-bottom:8px;}

/* ---------- Outdoor: separated section, compact thumbnail cards ---------- */
.outdoor-section{padding:80px 0 100px;background:var(--stone);margin-top:20px;}
.outdoor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:48px;}
@media (max-width:820px){.outdoor-grid{grid-template-columns:1fr;gap:44px;}}
.outdoor-card{display:flex;flex-direction:column;align-items:center;text-align:center;}
.outdoor-photo{width:100%;aspect-ratio:4/3;border-radius:4px;overflow:hidden;margin-bottom:18px;background-size:cover;background-position:center;background-color:var(--cream);display:flex;align-items:center;justify-content:center;}
.outdoor-photo .ac-mark{margin-bottom:0;}
.outdoor-card h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:24px;color:var(--green);}
.outdoor-card .sp-tag{font-family:'Manrope',sans-serif;font-weight:600;font-size:12.5px;color:var(--ink-45);text-transform:uppercase;letter-spacing:0.04em;}
.outdoor-card p{font-size:16.5px;color:var(--ink-70);max-width:32ch;margin:0 auto;}

/* ---------- Sleep: accommodation types, circle icons ---------- */
.sleep-section{padding:80px 0 100px;background:var(--cream);}
.sleep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:48px;}
@media (max-width:820px){.sleep-grid{grid-template-columns:1fr;gap:44px;}}
.sleep-card{display:flex;flex-direction:column;align-items:center;text-align:center;}
.sleep-card .ac-mark{margin-bottom:18px;}
.sleep-card h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:24px;color:var(--green);}
.sleep-card .sp-tag{font-family:'Manrope',sans-serif;font-weight:600;font-size:12.5px;color:var(--ink-45);text-transform:uppercase;letter-spacing:0.04em;}
.sleep-card p{font-size:16.5px;color:var(--ink-70);max-width:32ch;margin:0 auto;}
.sp-tag{font-family:'Manrope',sans-serif;font-weight:600;font-size:14.5px;color:var(--ink-45);text-transform:uppercase;letter-spacing:0.03em;margin-bottom:16px;}
.sp-copy p{font-size:19px;color:var(--ink-70);max-width:46ch;}

/* ---------- Region page ---------- */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:64px 0;border-top:1px solid var(--line);}
.feature.reverse .ft-photo{order:2;} .feature.reverse .ft-copy{order:1;}
@media (max-width:860px){.feature{grid-template-columns:1fr;} .feature.reverse .ft-photo,.feature.reverse .ft-copy{order:initial;}}
.ft-photo{aspect-ratio:4/3;background-size:cover;background-position:center;border-radius:2px;}
.ft-copy .eyebrow2{font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;color:var(--terracotta);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:12px;}
.ft-copy h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:32px;color:var(--green);margin-bottom:14px;}
.ft-copy p{font-size:19px;color:var(--ink-70);max-width:46ch;margin-bottom:12px;}

/* ---------- Weekend template (day/slot) ---------- */
.day{padding:48px 0;border-top:1px solid var(--line);}
.format-panel{border-radius:6px;}
.format-panel.panel-short, .format-panel.panel-day{padding:4px 32px 8px;margin-bottom:20px;}
.format-panel.panel-short{background:var(--stone);}
.format-panel.panel-day{background:var(--terracotta-wash);}
@media (max-width:640px){.format-panel.panel-short, .format-panel.panel-day{padding:4px 20px 8px;}}
.format-head{padding:20px 0 8px;}
.format-head .eyebrow2{font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;color:var(--terracotta);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:10px;}
.format-head h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(26px,3vw,34px);color:var(--green);}
.day-head{display:flex;align-items:baseline;gap:16px;margin-bottom:28px;}
.day-head h2{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:32px;color:var(--green);}
.day-head span{font-family:'Manrope',sans-serif;font-weight:600;font-size:13.5px;color:var(--ink-45);text-transform:uppercase;letter-spacing:0.03em;}
.slot{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line);}
@media (max-width:400px){.slot{grid-template-columns:78px 1fr;gap:12px;}}
.slot:first-of-type{border-top:none;}
.slot .time{font-family:'Manrope',sans-serif;font-weight:700;font-size:14.5px;color:var(--terracotta);padding-top:3px;}
.slot .what{font-size:19px;}
.slot .where{font-family:'Manrope',sans-serif;font-weight:600;font-size:13px;color:var(--ink-45);margin-top:3px;}
.note-band{background:var(--green);color:var(--cream);border-radius:2px;padding:44px 40px;margin:60px 0;}
.note-band p{font-size:20px;font-style:italic;font-weight:500;font-family:'Cormorant Garamond',serif;max-width:52ch;}

/* ---------- Gathering (single) template ---------- */
.section{padding-top:56px;padding-bottom:56px;border-top:1px solid var(--line);}
.section h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;color:var(--green);margin-bottom:28px;}
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media (max-width:700px){.benefits{grid-template-columns:1fr;}}
.benefit{padding:24px 0;border-top:1px solid var(--line);}
.benefit:nth-child(-n+2){border-top:none;}
.benefit-icon{width:38px;height:38px;border:1.5px solid var(--terracotta);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.benefit-icon svg{width:17px;height:17px;stroke:var(--terracotta);fill:none;stroke-width:1.4;}
.benefit h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:22px;color:var(--green);margin-bottom:8px;}
.benefit p{font-size:17.5px;color:var(--ink-70);}
.activities{display:flex;flex-wrap:wrap;gap:10px;}
.activity-chip{font-family:'Manrope',sans-serif;font-weight:600;font-size:14.5px;padding:10px 18px;border:1px solid var(--green);border-radius:20px;color:var(--green);}
.form-band{background:var(--green);color:var(--cream);border-radius:2px;padding:52px 44px;}
.form-band h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;color:#fff;margin-bottom:12px;}
.form-band p{font-size:17.5px;color:rgba(246,241,228,0.75);max-width:46ch;margin-bottom:30px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
@media (max-width:600px){.form-row{grid-template-columns:1fr;}}
.form-field{display:flex;flex-direction:column;gap:6px;}
.form-field label{font-family:'Manrope',sans-serif;font-weight:700;font-size:12.5px;color:rgba(246,241,228,0.65);text-transform:uppercase;letter-spacing:0.03em;}
.form-field input,.form-field select,.form-field textarea{background:rgba(246,241,228,0.08);border:1px solid rgba(246,241,228,0.25);border-radius:2px;padding:12px 14px;color:#fff;font-family:'Manrope',sans-serif;font-size:14.5px;}
.form-field textarea{min-height:90px;resize:vertical;}
.form-submit{margin-top:8px;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;background:var(--terracotta);color:#fff;padding:14px 28px;border-radius:2px;border:none;text-transform:uppercase;letter-spacing:0.03em;cursor:pointer;}

.form-notice{padding:14px 18px;border-radius:2px;font-family:'Manrope',sans-serif;font-size:14px;margin-bottom:20px;}
.form-notice-sent{background:rgba(108,124,78,0.25);color:#F6F1E4;border:1px solid rgba(246,241,228,0.3);}
.form-notice-error{background:rgba(169,80,42,0.3);color:#F6F1E4;border:1px solid rgba(246,241,228,0.3);}

/* ---------- Weekends archive (calendar) ---------- */
.filter-row{display:flex;gap:10px;margin:32px 0;flex-wrap:wrap;}
.filter-chip{font-family:'Manrope',sans-serif;font-weight:600;font-size:13.5px;padding:8px 16px;border-radius:20px;border:1px solid var(--line);color:var(--ink-70);}
.filter-chip:hover{border-color:var(--green);color:var(--green);}
.filter-chip.active{background:var(--green);color:var(--cream);border-color:var(--green);}
.listing{display:flex;flex-direction:column;gap:16px;padding-bottom:80px;}
.w-row{display:grid;grid-template-columns:14px 1.6fr 1fr 130px 100px;gap:20px;align-items:center;background:#FBF8F0;border-radius:14px;padding:22px 24px;}
@media (max-width:820px){.w-row{grid-template-columns:14px 1fr;} .w-row .r-rooms,.w-row .r-date,.w-row .r-places{display:none;}}
.w-row .dot{width:11px;height:11px;border-radius:50%;}
.w-row h4{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:20px;}
.w-row .r-sub{font-family:'Manrope',sans-serif;font-weight:600;font-size:12.5px;color:var(--ink-45);margin-top:4px;}
