
:root{
  --forest-deep:#26332B; --forest:#2F4A3A; --moss:#4C6B57; --amber:#B5875A; --amber-dark:#9A6F45;
  --tan:#D8C29A; --cream:#F7F3EB; --cream-2:#EFE8DA; --ink:#1E2822; --muted:#55615A; --white:#fff;
  --serif:"Cormorant Garamond", Georgia, serif; --sans:"Jost", "Helvetica Neue", Arial, sans-serif;
  --radius:20px; --shadow:0 10px 30px rgba(38,51,43,.12); --shadow-lg:0 22px 50px rgba(38,51,43,.22);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:18px;line-height:1.65;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.1;color:var(--forest-deep)}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
section{padding:110px 0}
.eyebrow{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--amber-dark);font-weight:500;margin-bottom:16px;display:block}
.h2{font-size:clamp(38px,5vw,60px);margin-bottom:20px}
.lead{font-size:20px;color:var(--muted);max-width:640px}
.center{text-align:center}.center .lead{margin:0 auto}

/* buttons */
.btn{display:inline-block;font-family:var(--sans);font-weight:500;letter-spacing:.08em;font-size:14px;text-transform:uppercase;padding:16px 30px;border-radius:999px;transition:.25s;cursor:pointer;border:1.5px solid transparent;text-align:center}
.btn-amber{background:var(--amber);color:#fff;box-shadow:0 8px 20px rgba(181,135,90,.35)}
.btn-amber:hover{background:var(--amber-dark);transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn-outline{border-color:var(--forest);color:var(--forest)}
.btn-outline:hover{background:var(--forest);color:#fff}

/* placeholder imagery */
.ph{position:relative;overflow:hidden;background:linear-gradient(160deg,#6c8a74,#2F4A3A)}
.ph::after{content:"";position:absolute;inset:0;background:
  radial-gradient(ellipse at 30% 110%,rgba(0,0,0,.35),transparent 60%),
  repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 14px,transparent 14px 28px)}
.ph .cap{position:absolute;left:14px;bottom:14px;z-index:2;font-size:11.5px;letter-spacing:.06em;color:rgba(255,255,255,.92);background:rgba(20,28,23,.42);backdrop-filter:blur(4px);padding:6px 12px;border-radius:999px;display:inline-flex;gap:7px;align-items:center}
.ph .cap::before{content:"";width:12px;height:12px;border:1.5px solid currentColor;border-radius:3px;display:inline-block;background:linear-gradient(135deg,transparent 55%,currentColor 56%) }
.g1{background:linear-gradient(160deg,#88a58c,#2F4A3A)}
.g2{background:linear-gradient(160deg,#d9b98b,#8a6a44)}
.g3{background:linear-gradient(160deg,#9bb3a0,#3d5a48)}
.g4{background:linear-gradient(160deg,#c9a47a,#5b4430)}
.g5{background:linear-gradient(160deg,#7d9a86,#26332B)}
.g6{background:linear-gradient(160deg,#e3cfa8,#a98655)}
.g7{background:linear-gradient(160deg,#a8bda9,#4C6B57)}
.g8{background:linear-gradient(160deg,#d3a888,#6d4a36)}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:rgba(38,51,43,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(216,194,154,.18)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:68px;max-width:1320px;margin:0 auto;padding:0 28px}
.logo{font-family:var(--serif);font-size:23px;letter-spacing:.28em;color:var(--cream);font-weight:600;display:flex;align-items:center;gap:12px;white-space:nowrap}
.logo svg{width:28px;height:28px;flex:none}
.menu{display:flex;gap:30px;list-style:none}
.menu a{color:var(--cream);font-size:14.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.88;transition:.2s}
.menu a:hover{opacity:1;color:var(--tan)}
.nav-book{padding:11px 24px;font-size:13px;white-space:nowrap}
.burger{display:none;width:28px;height:20px;position:relative}
.burger span,.burger::before,.burger::after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--cream);border-radius:2px}
.burger::before{top:0}.burger span{top:9px}.burger::after{bottom:0}

/* HERO */
.hero{position:relative;min-height:92vh;min-height:820px;display:flex;align-items:center;color:#fff;overflow:hidden;padding:120px 0 150px;
  background:
   radial-gradient(ellipse 60% 40% at 72% 58%,rgba(255,170,100,.55),transparent 70%),
   linear-gradient(180deg,#1f2b3a 0%,#4a4766 30%,#a76f6b 56%,#e2a074 70%,#c98a68 78%,#26332B 100%)}
.hero .mtn{position:absolute;left:0;bottom:0;width:100%;height:46%;pointer-events:none}
.hero .stars{position:absolute;inset:0 0 50% 0;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 28% 9%,#fff,transparent),radial-gradient(1.5px 1.5px at 44% 22%,#fff,transparent),radial-gradient(1px 1px at 63% 12%,#fff,transparent),radial-gradient(1.5px 1.5px at 81% 20%,#fff,transparent),radial-gradient(1px 1px at 92% 8%,#fff,transparent),radial-gradient(1px 1px at 6% 36%,#fff,transparent),radial-gradient(1px 1px at 54% 34%,#fff,transparent);opacity:.7}
.hero .wrap{position:relative;z-index:3}
.hero .eyebrow{color:var(--tan)}
.hero h1{font-size:clamp(46px,7.6vw,104px);color:#fff;font-weight:500;letter-spacing:.01em;max-width:1120px;text-shadow:0 4px 30px rgba(0,0,0,.35)}
.hero h1 em{font-style:italic;color:var(--tan)}
.hero p{font-size:clamp(19px,2vw,23px);max-width:620px;margin:28px 0 40px;color:rgba(255,255,255,.93)}
.hero .ctas{display:flex;gap:16px;flex-wrap:wrap}
.hero .ph-tag{position:absolute;right:28px;bottom:26px;z-index:4;font-size:12px;letter-spacing:.06em;background:rgba(20,28,23,.5);padding:8px 16px;border-radius:999px;color:rgba(255,255,255,.9)}
.scroll{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:4;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.75)}

/* quick facts */
.facts{background:var(--forest-deep);color:var(--cream);padding:0}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.fact{padding:34px 24px;text-align:center;border-right:1px solid rgba(216,194,154,.16)}
.fact:last-child{border:0}
.fact b{display:block;font-family:var(--serif);font-size:38px;font-weight:500;color:var(--tan);line-height:1.1}
.fact span{font-size:13px;letter-spacing:.16em;text-transform:uppercase;opacity:.85}

/* intro */
.intro .grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}
.intro p{font-size:20px;margin-bottom:20px;color:#2c3730}
.intro .big-quote{font-family:var(--serif);font-style:italic;font-size:30px;line-height:1.3;color:var(--forest);margin:28px 0;padding-left:24px;border-left:3px solid var(--amber)}
.intro .imgs{position:relative;height:560px}
.intro .imgs .ph{position:absolute;border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.intro .imgs .a{left:0;top:0;width:68%;height:78%}
.intro .imgs .b{right:0;bottom:0;width:56%;height:50%;border:8px solid var(--cream)}

/* retreats */
.retreats{background:var(--cream-2)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:60px}
.card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:.3s}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.card .ph{height:250px}
.card .body{padding:32px 30px 34px;display:flex;flex-direction:column;flex:1}
.card .tagline{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber-dark);font-weight:500;margin-bottom:8px}
.card h3{font-size:34px;margin-bottom:10px}
.card p.desc{color:var(--muted);font-size:17px;margin-bottom:20px}
.dates{list-style:none;margin-bottom:26px;border-top:1px solid #e6dfd0}
.dates li{padding:13px 0;border-bottom:1px solid #e6dfd0;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-weight:500;color:var(--forest-deep)}
.spot{background:#B5362F;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:5px 11px;border-radius:999px;font-weight:600;white-space:nowrap}
.card .btn{margin-top:auto}
.badge{position:absolute;top:16px;left:16px;z-index:3;background:rgba(247,243,235,.95);color:var(--forest-deep);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;padding:7px 14px;border-radius:999px;font-weight:500}
.all-link{text-align:center;margin-top:44px}
.all-link a{border-bottom:1.5px solid var(--amber);padding-bottom:3px;letter-spacing:.1em;text-transform:uppercase;font-size:14px;color:var(--forest);font-weight:500}

/* accommodation */
.accom .grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center}
.accom .photos{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:230px 230px;gap:18px}
.accom .photos .ph{border-radius:var(--radius);box-shadow:var(--shadow)}
.accom .photos .tall{grid-row:span 2}
.accom ul{list-style:none;margin:26px 0 34px}
.accom li{padding:10px 0 10px 34px;position:relative;font-size:18.5px}
.accom li::before{content:"";position:absolute;left:0;top:19px;width:16px;height:2px;background:var(--amber)}

/* food */
.food{background:var(--forest-deep);color:var(--cream);position:relative;overflow:hidden}
.food h2{color:var(--cream)}
.food .eyebrow{color:var(--tan)}
.food .lead{color:rgba(247,243,235,.82)}
.food .top{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:56px}
.strip{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.strip .ph{height:290px;border-radius:var(--radius)}
.strip .ph:nth-child(even){margin-top:34px;height:256px}
.food .pillars{display:flex;gap:44px;margin-top:56px;flex-wrap:wrap}
.food .pillars div{font-family:var(--serif);font-size:25px;font-style:italic;color:var(--tan)}
.food .pillars div::before{content:"✦ ";font-size:15px;font-style:normal;color:var(--amber)}

/* experiences */
.exp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin-top:56px}
.tile{background:#fff;border-radius:var(--radius);padding:34px 18px 30px;text-align:center;box-shadow:var(--shadow);transition:.3s;border:1px solid rgba(181,135,90,.15)}
.tile:hover{transform:translateY(-5px);border-color:var(--amber)}
.tile .ic{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--cream-2);display:grid;place-items:center;color:var(--forest)}
.tile .ic svg{width:28px;height:28px}
.tile h4{font-size:24px;margin-bottom:6px}
.tile p{font-size:14.5px;line-height:1.45;color:var(--muted)}
.measure{font-size:12.5px;color:var(--amber-dark);margin-top:8px;font-weight:500;letter-spacing:.03em}

/* gallery */
.gallery{background:var(--cream-2)}
.gal{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:400px;gap:16px;margin-top:56px}
.gal .ph{border-radius:16px;display:block;height:auto!important}

@media(max-width:760px){.gal{grid-template-columns:1fr 1fr;grid-auto-rows:240px}}
.gal-note{margin-top:30px;display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;font-size:15.5px;color:var(--muted)}
.live{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:9px 18px;box-shadow:var(--shadow);font-weight:500;color:var(--forest-deep);font-size:14px;letter-spacing:.04em}
.live i{width:9px;height:9px;border-radius:50%;background:#d1453b;box-shadow:0 0 0 4px rgba(209,69,59,.2)}

/* testimonials */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:56px}
.quote{background:#fff;border-radius:var(--radius);padding:36px 36px 34px;box-shadow:var(--shadow);position:relative}
.quote::before{content:"“";font-family:var(--serif);font-size:110px;line-height:.6;color:var(--tan);position:absolute;top:34px;right:30px}
.quote p{font-family:var(--serif);font-size:26px;line-height:1.35;font-style:italic;color:var(--forest-deep);margin:18px 0 24px}
.quote .who{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber-dark);font-weight:500}
.quote .who small{display:block;color:var(--muted);letter-spacing:.04em;text-transform:none;font-size:13px;margin-top:2px}
.stars-row{color:var(--amber);letter-spacing:4px;font-size:16px}
.note-ph{margin-top:28px;text-align:center;font-size:13.5px;color:var(--muted);font-style:italic}

/* private */
.private{background:linear-gradient(135deg,var(--forest),var(--forest-deep));color:var(--cream);text-align:center;position:relative;overflow:hidden;padding:100px 0}
.private::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(216,194,154,.2),transparent 45%),radial-gradient(circle at 10% 90%,rgba(181,135,90,.18),transparent 40%)}
.private .wrap{position:relative}
.private h2{color:var(--cream);font-size:clamp(34px,4.6vw,56px);max-width:860px;margin:0 auto 18px}
.private p{max-width:620px;margin:0 auto 34px;color:rgba(247,243,235,.82);font-size:19px}

/* footer */
footer{background:#1b241e;color:rgba(247,243,235,.8);padding:80px 0 34px;font-size:16px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:50px}
footer .logo{margin-bottom:10px;font-size:26px}
footer .tag{font-family:var(--serif);font-style:italic;font-size:23px;color:var(--tan);margin-bottom:14px}
footer h5{font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--tan);margin-bottom:18px;font-weight:500}
footer ul{list-style:none}
footer li{margin-bottom:9px}
footer a:hover{color:var(--tan)}
.copy{margin-top:60px;padding-top:26px;border-top:1px solid rgba(247,243,235,.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13.5px;opacity:.7}

/* concept ribbon */
.ribbon{background:var(--amber);color:#fff;text-align:center;font-size:13px;letter-spacing:.08em;padding:9px 16px}

/* RESPONSIVE */
@media (max-width:1100px){
  .menu{display:none}.burger{display:block;order:3}
  .nav-in{gap:16px}.nav-book{margin-left:auto}
  .cards{grid-template-columns:1fr 1fr}
  .exp-grid{grid-template-columns:repeat(3,1fr)}
  .gal{columns:3}
  .intro .grid,.accom .grid,.food .top{grid-template-columns:1fr;gap:44px}
  .strip{grid-template-columns:repeat(3,1fr)}
  .strip .ph:nth-child(n+4){display:none}
  .foot{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  body{font-size:17px}
  section{padding:70px 0}
  .wrap{padding:0 20px}
  .nav-in{padding:0 16px;height:60px}
  .logo{font-size:14.5px;letter-spacing:.16em;gap:7px}.logo svg{width:22px;height:22px}
  .nav-book{padding:9px 14px;font-size:11.5px;letter-spacing:.05em}
  .hero h1 .w{display:block}.hero h1 .dot{display:none}
  .ribbon{font-size:11.5px;line-height:1.4}
  .hero{min-height:700px;padding:90px 0 130px;align-items:flex-start;padding-top:110px}
  .hero .ctas .btn{width:100%}
  .hero .ph-tag{left:16px;right:16px;text-align:center;bottom:16px}
  .scroll{display:none}
  .facts .wrap{grid-template-columns:1fr 1fr}
  .fact{padding:22px 10px;border-bottom:1px solid rgba(216,194,154,.16)}
  .fact b{font-size:30px}
  .cards{grid-template-columns:1fr;gap:26px}
  .intro .imgs{height:380px}
  .intro .big-quote{font-size:25px}
  .accom .photos{grid-template-rows:170px 170px}
  .strip{grid-template-columns:1fr 1fr}
  .strip .ph:nth-child(n+3){display:none}
  .strip .ph:nth-child(even){margin-top:20px}
  .exp-grid{grid-template-columns:1fr 1fr;gap:14px}
  .tile{padding:26px 12px}
  .gal{columns:2;column-gap:12px}.gal .ph{margin-bottom:12px}
  .testi-grid{grid-template-columns:1fr}
  .foot{grid-template-columns:1fr;gap:34px}
  .private{padding:70px 0}
}
.ph.real::after{display:none}.ph.real .cap::before{display:none}
.hero{background:linear-gradient(180deg,rgba(20,28,23,.35),rgba(20,28,23,.55)),url(photos/web/hero.jpg) center top/cover!important}.hero .mtn,.hero .stars,.hero .ph-tag{display:none}
.tocome{background:repeating-linear-gradient(45deg,#efe6d4,#efe6d4 12px,#e6d9c0 12px,#e6d9c0 24px)!important;border:3px dashed #B5875A;display:grid;place-items:center;text-align:center;color:#5b4430;font-weight:600;letter-spacing:.04em;padding:16px}
.tile .tp{height:150px;margin:-34px -18px 18px;border-radius:var(--radius) var(--radius) 0 0;background-size:cover;background-position:center}
.tile .tp.tocome{font-size:14px}


.pg{padding:80px 0;background:var(--cream)} .pg.alt:nth-of-type(even){background:var(--cream-2)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.tallimg{min-height:460px;border-radius:var(--radius);position:relative}
.pg h4{font-family:Jost;text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--amber-dark);margin:18px 0 6px}
.inc{margin:0 0 24px 18px;line-height:1.8}
.pghead{background:linear-gradient(180deg,rgba(20,28,23,.45),rgba(20,28,23,.7)),url(photos/web/hero.jpg) center top/cover;color:#fff;padding:140px 0 90px;text-align:center}
.pghead h1{font-family:'Cormorant Garamond';font-size:56px;font-weight:500}
.policy{background:#fff;border-radius:var(--radius);padding:34px;box-shadow:var(--shadow-lg);max-width:820px;margin:0 auto}
.policy li{margin:10px 0 10px 18px}
details{background:#fff;border-radius:12px;padding:18px 22px;margin:10px auto;max-width:820px}
summary{cursor:pointer;font-weight:600;color:var(--forest-deep)} details p{margin-top:10px}
.form{max-width:640px;margin:20px auto;display:grid;gap:12px} .form input,.form textarea,.form select{padding:14px;border:1px solid #d9d0bd;border-radius:10px;font:inherit}
.signoff{font-family:'Cormorant Garamond';font-style:italic;font-size:26px;margin-top:18px;color:var(--forest-deep)}
@media(max-width:860px){.two{grid-template-columns:1fr}.tallimg{min-height:300px}}

/* ===== Evolve brand: logo gold + charcoal yakisugi + rainforest ===== */
:root{--char:#1A1816;--char-2:#24211E;--gold:#D9C060;--gold-soft:#E8D9A0;--amber:#B8962E;--amber-dark:#957622;--tan:#E2CC7A;
--forest-deep:#1E3024;--forest:#2B4733;--fern:#3E6A45;--moss:#6B7F4A;--sage:#AAB89A;--mist:#DFE5D3;--clay:#B4643E;
--cream:#F6EFE0;--cream-2:#EDE2CB;--ink:#22261E;--muted:#5A5F4E}
.timber,nav,.sitefoot,.band.deep{background-color:var(--char);background-image:
 linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.25)),
 repeating-linear-gradient(90deg,rgba(0,0,0,.55) 0 2px,transparent 2px 118px),
 repeating-linear-gradient(90deg,rgba(255,240,210,.025) 0 1px,transparent 1px 7px,rgba(0,0,0,.08) 7px 9px,transparent 9px 23px),
 repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0 1px,transparent 1px 40px)}
nav{background-color:rgba(26,24,22,.97);border-bottom:1px solid rgba(217,192,96,.3)}
.logo{color:var(--gold-soft)}.logo svg{stroke:var(--gold)}
.ribbon{background:var(--amber)}
.menu{gap:18px}.menu a{font-size:12.5px}.menu a.on{color:var(--gold);opacity:1}
body{background:var(--cream)}
.eyebrow{color:var(--amber-dark)}
.phero{position:relative;min-height:640px;display:flex;align-items:flex-end;color:#fff;padding:0 0 100px;background-size:cover;background-position:center}
.phero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,24,22,.25) 0%,rgba(26,24,22,.3) 40%,rgba(26,24,22,.85) 100%),linear-gradient(90deg,rgba(184,150,46,.15),transparent 60%)}
.phero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:60px;background:var(--cream);border-radius:50% 50% 0 0/100% 100% 0 0}
.phero .wrap{position:relative;z-index:2;width:100%}
.phero .eyebrow{color:var(--gold)}
.phero h1{color:#fff;font-size:clamp(54px,7vw,96px);max-width:900px;text-shadow:0 4px 30px rgba(0,0,0,.45)}
.phero .badge2{display:inline-block;margin-top:22px;background:rgba(26,24,22,.45);border:1px solid var(--gold);color:var(--gold-soft);padding:8px 18px;border-radius:999px;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.band{padding:100px 0;position:relative;overflow:hidden}
.band.cream{background:var(--cream)}
.band.sand{background:var(--cream-2) radial-gradient(circle at 10% 20%,rgba(180,100,62,.10),transparent 40%),radial-gradient(circle at 90% 80%,rgba(62,106,69,.12),transparent 45%)}
.band.mist{background:linear-gradient(180deg,var(--mist),#E8EBDC)}
.band.deep{color:var(--cream)}
.band.deep h2,.band.deep h3{color:#fff}.band.deep .lead{color:rgba(246,239,224,.85)}.band.deep .eyebrow{color:var(--gold)}
.frond{position:absolute;width:240px;opacity:.10;pointer-events:none}
.band.deep .frond{opacity:.12;filter:invert(1) sepia(1) saturate(3)}
.intro2{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}
.intro2 .lead{font-size:23px;line-height:1.6;color:var(--ink);max-width:none}
.intro2 > .lead::first-letter{font-family:var(--serif);font-size:74px;float:left;line-height:.8;margin:8px 12px 0 0;color:var(--amber)}
.blob{border-radius:58% 42% 50% 50%/45% 55% 45% 55%;height:460px;background-size:cover;background-position:center;box-shadow:var(--shadow-lg);border:6px solid var(--gold-soft)}
.datecards{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;margin-top:40px}
.dc{background:#FFFBF2;border-radius:24px;box-shadow:var(--shadow);padding:30px 34px;min-width:300px;text-align:center;border-top:6px solid var(--gold);position:relative}
.dc .d{font-family:var(--serif);font-size:30px;color:var(--char);line-height:1.2}
.dc .spot{position:absolute;top:-14px;right:18px}
.dc.note{border-top-color:var(--fern)}.dc.note .d{font-size:24px;font-style:italic}
.inccards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px}
.ic{background:rgba(246,239,224,.05);border:1px solid rgba(217,192,96,.3);border-radius:22px;padding:26px 22px;display:flex;gap:16px;align-items:flex-start;font-size:17px}
.band:not(.deep) .ic{background:#FFFBF2;border-color:#e6d8b8;box-shadow:var(--shadow)}
.ic .i{flex:none;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--amber));display:grid;place-items:center}
.ic .i svg{width:20px;height:20px}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:10px}
.gallery div{height:320px;border-radius:24px;background-size:cover;background-position:center;box-shadow:var(--shadow)}
.gallery div:nth-child(even){margin-top:40px}
.gallery.g3{grid-template-columns:repeat(3,1fr)}
.ctabar{text-align:center;padding:90px 0;background:linear-gradient(135deg,var(--fern),var(--forest-deep));color:#fff;border-top:3px solid var(--gold)}
.ctabar h2{color:#fff;font-size:48px;margin-bottom:26px}
.ctabar .btn{font-size:16px;padding:20px 40px;margin:6px}
.btn-amber{background:var(--gold);color:var(--char);box-shadow:0 8px 20px rgba(184,150,46,.35)}.btn-amber:hover{background:var(--gold-soft)}
.btn-line{border-color:var(--gold-soft);color:#fff}.btn-line:hover{background:rgba(255,255,255,.12)}
.bio{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;align-items:center}
.bio.rev{grid-template-columns:1.3fr 1fr}
.bio p{font-size:19px;margin-bottom:18px}
.bio .blob{height:560px}
.bigsign{font-family:var(--serif);font-style:italic;font-size:40px;color:var(--amber);margin-top:24px}
.sitefoot{color:var(--cream);padding:80px 0 40px;text-align:center;border-top:3px solid var(--gold)}
.sitefoot .sig{font-family:var(--serif);font-style:italic;font-size:40px;color:var(--gold)}
.sitefoot .loc{opacity:.8;margin:8px 0 34px}
.sitefoot .fl{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.sitefoot .fl a:hover{color:var(--gold)}
.sitefoot .ack{margin-top:40px;padding-top:24px;border-top:1px solid rgba(246,239,224,.15);font-size:14px;opacity:.75}
.policy2{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
.policy2 li{list-style:none}
.form{background:#FFFBF2;padding:40px;border-radius:28px;box-shadow:var(--shadow-lg);max-width:720px;margin:0}
details{box-shadow:var(--shadow);border-left:4px solid var(--gold);background:#FFFBF2}

/* ===== strict alignment pass ===== */
.wrap{max-width:1200px;margin:0 auto;padding:0 40px}
.band,.ctabar{padding:96px 0}
.phero{padding-bottom:110px}.phero .wrap,.sitefoot .wrap{max-width:1200px}
.intro2,.bio,.bio.rev{grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.intro2 > .lead::first-letter{all:unset}
.intro2 .lead,.bio p{margin-top:0}
.blob,.bio .blob{height:480px;width:100%;margin:0}
.bio h2.h2{margin-top:0}
.datecards{display:grid;grid-template-columns:repeat(auto-fit,380px);justify-content:center;gap:24px}
.dc{min-width:0;width:380px;min-height:132px;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0}
.dc .d{font-size:26px}.dc.note .d{font-size:22px}
.inccards{grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:24px}
.ic{height:100%;align-items:center;margin:0}
.gallery,.gallery.g3{gap:24px;margin:0;align-items:start}
.gallery div,.gallery div:nth-child(even){height:300px;margin:0}
.ctabar .wrap{display:flex;flex-direction:column;align-items:center}
.ctabar h2{margin:0 0 28px}
.ctabar .btns{display:flex;gap:16px;justify-content:center;align-items:center}
.ctabar .btn{margin:0;min-width:260px;height:62px;display:inline-flex;align-items:center;justify-content:center;padding:0 32px}
.center .h2{margin-bottom:0}.center .eyebrow{margin-bottom:12px}
.band .wrap > .center{margin-bottom:48px}
.policy2{grid-auto-rows:1fr;gap:24px;margin:0;padding:0}.policy2 .dc{width:auto;align-items:flex-start;justify-content:flex-start;text-align:left;font-size:17px}
details{max-width:none;margin:0 0 14px}
.form{max-width:none;width:100%}
.intro2 .bigsign{margin-top:24px}
.frond{display:none}
.sitefoot .ack{margin-left:0;margin-right:0}
.gallery{background:none!important;padding:0!important}
.nav-in{max-width:none;padding:0 22px;gap:18px}.logo{font-size:19px;letter-spacing:.18em}.menu{gap:18px}.menu a{font-size:12px;letter-spacing:.08em}.nav-book{display:none}
.datecards{margin-top:0}
.inccards{display:flex!important;flex-wrap:wrap;justify-content:center;gap:24px}.inccards .ic{flex:0 0 calc((100% - 72px)/4);height:auto;min-height:112px}
.intro2 .note-ph,.intro2 .signoff,.intro2 .bigsign{text-align:left}
.menu li{position:relative}.menu .dd{display:none;position:absolute;top:100%;left:-16px;padding:14px 0 8px;min-width:220px;background:#1A1816;border:1px solid rgba(217,192,96,.3);border-radius:0 0 14px 14px;list-style:none}.menu li:hover .dd{display:block}.menu .dd a{display:block;padding:8px 18px}
.rcards{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;grid-auto-rows:1fr}
.rc{background:#FFFBF2;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;border-top:6px solid var(--gold)}
.rc .rp{height:300px;background-size:cover;background-position:center}
.rc .rb{padding:34px 36px 38px;display:flex;flex-direction:column;flex:1}
.rc h3{font-size:38px;margin:0 0 12px}.rc p{color:var(--muted);margin:0 0 20px}
.rc ul{list-style:none;margin:0 0 28px;padding:0;border-top:1px solid #e6dcc4}
.rc li .spot{margin-left:auto}.rc li{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e6dcc4;font-weight:500}
.rc .btn{margin-top:auto;align-self:flex-start;min-width:220px}

/* retreat cards v2 */
.cards-dark{background:#1A1816 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.02 .6' numOctaves='3'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.07'/%3E%3C/svg%3E")}
.rcards2{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;grid-auto-rows:1fr}
.rc2{background:#24211E url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.015 .5' numOctaves='3'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.09'/%3E%3C/svg%3E");color:#F4EBD9;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(217,192,96,.35)}
.rc2 .rl{height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1A1816;border-bottom:1px solid rgba(217,192,96,.35)}
.rc2 .rl.cream{background:#F7F2E8}
.rc2 .rl img{max-height:200px;max-width:80%;object-fit:contain}
.rc2 .rl:not(.cream) img{max-height:140px;filter:invert(1) sepia(1) saturate(2.2) hue-rotate(5deg) brightness(.95);mix-blend-mode:screen}
.rc2 .lgname{font-family:"Cormorant Garamond",serif;font-size:26px;color:#D9C060;margin-top:10px;letter-spacing:.04em}
.rb2{padding:32px 36px 36px;display:flex;flex-direction:column;flex:1}
.rc2 .eyebrow{color:#D9C060}.rc2 h3{font-size:36px;margin:0 0 10px;color:#F4EBD9}.rc2 p{color:#D8CDB8;margin:0 0 22px}
.rfoot{margin-top:auto}
.rc2 ul{list-style:none;margin:0 0 24px;padding:0;border-top:1px solid rgba(217,192,96,.35);min-height:98px}
.rc2 li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid rgba(217,192,96,.2);font-weight:500}
.rc2 .spot{text-decoration:none}
.rbtns{display:flex;gap:12px;flex-wrap:wrap}.rbtns .btn{margin:0;min-width:0;padding:15px 26px}
.rc2 .btn-line{border:1px solid #D9C060;color:#D9C060;background:transparent}
.alt .t-cook{background-color:#3E4A36}.alt .t-women{background-color:#7A4E3A}.alt .t-men{background-color:#2F3B33}.alt .t-fast{background-color:#8A6A2F}
.alt .rc2 .rl:not(.cream){background:rgba(0,0,0,.18)}
@media(max-width:820px){.rcards2{grid-template-columns:1fr;grid-auto-rows:auto}.rb2{padding:26px 24px 28px}.rc2 .rl{height:200px}}
/* canopy warm */
.accom.warm{background:linear-gradient(135deg,#F1DEC6,#E6C7A1 60%,#D9AE82);position:relative}
.accom.warm .photos{grid-template-rows:280px 280px}
.accom.warm .photos .ph{border:3px solid #D9C060;border-radius:18px}
.accom.warm .eyebrow{color:#8A5A2B}.accom.warm h2{color:#3A2416}.accom.warm .lead,.accom.warm li{color:#4A3020}
.accom.warm li::before{background:#B8962E}
.accom.warm .btn-warm{background:#8A4B2A;color:#FFF6E6;border:0;border-radius:999px;padding:17px 34px;box-shadow:0 8px 22px rgba(138,75,42,.3)}
@media(max-width:820px){.accom.warm .photos{grid-template-rows:200px 200px}}

/* fixes oct29: inputs, straight edges, alignment, section rhythm */
form input,form textarea,form select{background:#F5EFE3!important;color:#1A1816!important;border:1.5px solid #CDBF9F!important}
form input::placeholder,form textarea::placeholder{color:#6B6258!important;opacity:1}
form input:focus,form textarea:focus,form select:focus{outline:none!important;border-color:#D9C060!important;box-shadow:0 0 0 3px rgba(217,192,96,.35)!important}
.phero::after{display:none!important}
.blob{border-radius:14px!important}
.strip .ph,.strip .ph:nth-child(even){margin-top:0!important;height:290px!important}
.gallery div,.gallery div:nth-child(even){margin-top:0!important}
.foodstrip{align-items:stretch!important}
.foodstrip .fd,.foodstrip .fd:nth-child(even){margin-top:0!important;display:flex;flex-direction:column}
.foodstrip .fd img{aspect-ratio:4/5!important;object-fit:cover!important;height:auto}
.foodstrip .fd figcaption{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:40px;line-height:20px;box-sizing:border-box}
.food .pillars{position:static!important;clear:both;margin-top:40px!important}
.cards-dark.alt{background:#F3ECDF!important}
.warmexp{background:#22302A!important}.warmexp .tile{background:#2C3B33!important}

/* heroreset oct29: one banner style for inner pages */
.phero{min-height:560px}
.phero::before{background:linear-gradient(90deg,rgba(20,32,26,.55) 0%,rgba(20,32,26,.25) 55%,rgba(20,32,26,0) 85%),linear-gradient(180deg,rgba(20,24,22,0) 45%,rgba(20,24,22,.55) 100%)!important}
.phero h1{color:#F3E9D8!important;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.phero .eyebrow{color:#F3E9D8!important;opacity:.95}
.phero .badge2,.phero .btn{background:#24493A!important;border:1px solid #24493A!important;color:#F3E9D8!important;border-radius:0!important;padding:12px 26px;font-weight:500}
