/* Layout: photo hero with the text beside the face (left on desktop, below the face on phones), then a calm breathing moment, an olive word band, and Yogapolline-style blocks in limestone, sand, olive and burnt clay. */
:root{
  --bg:#F3EDE2;          /* Limestone · primary background */
  --olive:#A5A184;       /* Olive · nature and identity */
  --sand:#D7C4A9;        /* Sand · secondary surfaces */
  --clay:#C47A5A;        /* Burnt Clay · warm accents */
  --soft:#E9DFCF;        /* lighter sand for cards */
  --clay-deep:#A55E40;   /* clay for buttons and small text, readable on limestone */
  --olive-deep:#5E5C46;  /* olive for text on light grounds */
  --ink:#352B24;
  --muted:#76685C;
  --night:#2E3028;       /* full-moon night, olive-black */
  --hero:#2E2A23;        /* dark ground behind the hero photo */
  --on-color:#F8F3EA;
  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r-xl:44px;--r-lg:30px;--r-md:20px;
  --gl:max(16px, env(safe-area-inset-left, 0px));
  --gr:max(16px, env(safe-area-inset-right, 0px));
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#1B1915;--olive:#8E8B6F;--sand:#3A3329;--clay:#D08868;--soft:#25221D;--clay-deep:#D08868;--olive-deep:#BDB99C;--ink:#F1EADF;--muted:#B9AC9E;--night:#121410;color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#1B1915;--olive:#8E8B6F;--sand:#3A3329;--clay:#D08868;--soft:#25221D;--clay-deep:#D08868;--olive-deep:#BDB99C;--ink:#F1EADF;--muted:#B9AC9E;--night:#121410;color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65;overflow-x:hidden}
.wrap{max-width:1200px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.02;margin:0;text-wrap:balance}
h1 em,h2 em,h3 em{font-style:italic;font-weight:400}
p{margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--clay);outline-offset:3px;border-radius:12px}
.label{font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 28px;border-radius:999px;background:var(--ink);color:var(--bg);text-decoration:none;font-weight:800;font-size:15px;border:0;cursor:pointer;font-family:inherit;transition:transform .2s}
.btn:hover{transform:translateY(-2px)}
.btn.clay{background:var(--clay-deep);color:#FFF8F0}
.btn.light{background:var(--on-color);color:#352B24}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 2px currentColor;color:inherit}
.btn.sm{padding:10px 18px;font-size:14px}
.media{position:relative;overflow:hidden;background:radial-gradient(circle at 30% 25%,var(--sand),var(--soft) 70%);border-radius:var(--r-lg);display:flex;align-items:flex-end;justify-content:center;padding:18px;color:var(--muted);font-size:13px;font-weight:700;text-align:center;max-width:100%}
.media img,.media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sec{padding-block:80px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
.sec-head h2{font-size:clamp(42px,6vw,76px)}
.link{font-weight:800;text-decoration:none;border-bottom:2px solid var(--clay);padding-bottom:2px}

/* header */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--bg)}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;padding-block:12px;background:linear-gradient(180deg,var(--bg) 0%,var(--bg) 50%,color-mix(in srgb,var(--bg) 0%,transparent) 100%)}
.nav{display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(12px);border-radius:999px;padding:8px 8px 8px 22px;box-shadow:0 2px 20px color-mix(in srgb,var(--ink) 9%,transparent)}
.mark{display:flex;align-items:center;gap:9px;text-decoration:none;font-family:var(--display);font-size:24px;font-weight:600;white-space:nowrap;margin-right:auto}
.mark i{width:10px;height:10px;border-radius:50%;background:var(--clay)}
.nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;font-size:14.5px;font-weight:700}
.nav ul a{display:block;padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--muted);white-space:nowrap}
.nav ul a:hover{background:var(--soft);color:var(--ink)}
.lang{display:flex;background:var(--soft);border-radius:999px;padding:3px}
.lang button{border:0;background:transparent;font:inherit;font-size:13px;font-weight:800;padding:6px 11px;border-radius:999px;cursor:pointer;color:var(--muted)}
.lang button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.menu-btn{display:none}
@media (max-width:1100px){
  .nav ul{display:none}
  .nav.open ul{display:flex;flex-direction:column;position:absolute;left:var(--gl);right:var(--gr);top:74px;background:var(--bg);border-radius:var(--r-lg);padding:12px;box-shadow:0 12px 40px color-mix(in srgb,var(--ink) 16%,transparent)}
  .menu-btn{display:inline-flex}
}
@media (max-width:520px){.nav .book{display:none}.mark{font-size:20px}}

/* hero: photo on the right, text on the left so it never covers the face */
.hero{position:relative;min-height:640px;border-radius:var(--r-xl);overflow:hidden;display:flex;align-items:center;margin-top:4px;background:var(--hero)}
.hero > img{position:absolute;top:0;right:0;width:64%;height:100%;object-fit:cover;object-position:50% 26%;
  -webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 30%);mask-image:linear-gradient(90deg,#0000 0%,#000 30%)}
.hero-txt{position:relative;z-index:1;color:#F8F3EA;padding:56px;max-width:min(560px,52%)}
.hero h1{font-size:clamp(46px,5.6vw,84px);letter-spacing:-.015em}
.hero h1 span{display:block}
.hero .lede{font-size:clamp(17px,1.5vw,19px);max-width:26em;margin-top:20px;opacity:.92}
.hero .ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
@media (max-width:900px){
  .hero{min-height:0;flex-direction:column;align-items:stretch}
  .hero > img{position:relative;width:100%;height:auto;aspect-ratio:4/4.4;object-position:50% 22%;
    -webkit-mask-image:linear-gradient(180deg,#000 70%,#0000 100%);mask-image:linear-gradient(180deg,#000 70%,#0000 100%)}
  .hero-txt{max-width:none;padding:0 22px 32px;margin-top:-56px}
  .hero h1{font-size:clamp(42px,11vw,64px)}
}

/* breathe */
.breathe{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;background:var(--soft);border-radius:var(--r-xl);padding:48px 56px;margin-top:16px}
.breathe h2{font-size:clamp(40px,5vw,64px)}
.breathe h2 em{color:var(--clay-deep)}
.breathe p{margin-top:14px;color:var(--muted);max-width:28em;font-size:18px}
.breath{--b:0;position:relative;width:260px;aspect-ratio:1;display:grid;place-items:center;flex:none}
.v{position:absolute;inset:0;display:none}
.breath[data-style="circle"] .v-circle,.breath[data-style="lotus"] .v-lotus,.breath[data-style="wave"] .v-wave,.breath[data-style="ripples"] .v-ripples{display:block}
/* circle */
.v-circle .ring{position:absolute;inset:0;border-radius:50%;background:var(--sand);opacity:.7}
.v-circle .core{position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 38% 32%,var(--sand),var(--clay));transform:scale(calc(.8 + .32 * var(--b)))}
/* lotus */
.petal{position:absolute;left:34%;top:2%;width:32%;height:48%;transform-origin:50% 100%;border-radius:50% 50% 50% 50%/62% 62% 38% 38%;
  background:linear-gradient(180deg,var(--clay),var(--sand));opacity:.55;
  transform:rotate(calc(var(--i) * 45deg + var(--b) * 22.5deg)) scale(calc(.42 + .58 * var(--b)))}
.v-lotus .center,.v-ripples .center{position:absolute;inset:31%;border-radius:50%;background:var(--clay-deep)}
/* wave */
.v-wave{border-radius:50%;overflow:hidden;background:var(--sand)}
.water{position:absolute;inset:0;transform:translateY(calc((1 - var(--b)) * 64% + 10%))}
.water svg{position:absolute;left:0;top:0;width:200%;height:100%;animation:drift 4s linear infinite}
.water path{fill:var(--clay)}
@keyframes drift{to{transform:translateX(-50%)}}
/* ripples */
.rip{position:absolute;inset:0;border-radius:50%;border:2px solid var(--clay);transform:scale(calc(.32 + var(--k) * var(--b)));opacity:calc(.25 + .6 * var(--b))}
/* cue */
.cue{position:relative;color:#FFF8F0;text-align:center;display:flex;flex-direction:column;align-items:center;pointer-events:none}
.cue .phase{font-family:var(--display);font-style:italic;font-size:22px;line-height:1.1}
.cue .count{font-family:var(--display);font-size:62px;line-height:1;font-weight:500;font-variant-numeric:tabular-nums}
.breath[data-style="lotus"] .cue .phase,.breath[data-style="ripples"] .cue .phase{font-size:16px}
.breath[data-style="lotus"] .cue .count,.breath[data-style="ripples"] .cue .count{font-size:42px}
.breath[data-style="wave"] .cue{color:var(--ink)}
.styles{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px}
.styles button{border:0;font:inherit;font-size:14px;font-weight:700;padding:8px 16px;border-radius:999px;cursor:pointer;background:var(--bg);color:var(--muted)}
.styles button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.styles-label{margin-top:22px;font-size:13px;color:var(--muted);font-weight:700}
@media (max-width:760px){.breathe{grid-template-columns:1fr;padding:36px 24px;justify-items:center;text-align:center}.breathe p{margin-inline:auto}.breath{width:220px}.styles{justify-content:center}}

/* marquee */
.band{background:var(--olive);color:#2F2D22;overflow:hidden;padding-block:16px;margin-block:16px 8px}
.track{display:flex;width:max-content;animation:slide 40s linear infinite}
.track span{font-family:var(--display);font-weight:600;font-size:clamp(26px,3.4vw,40px);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding-right:28px}
.track span b{color:#F3EDE2;font-weight:400;padding-left:28px}
@keyframes slide{to{transform:translateX(-50%)}}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding-block:56px 8px}
.stat{border-top:2px solid var(--ink);padding-top:14px;min-width:0}
.stat b{display:block;font-family:var(--display);font-weight:500;font-size:clamp(44px,5vw,64px);line-height:1}
.stat span{color:var(--muted);font-weight:600}
.stat small{display:block;color:var(--muted);font-size:13.5px;margin-top:2px}
@media (max-width:760px){.stats{grid-template-columns:1fr 1fr}}

/* about */
.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.about .media{aspect-ratio:4/5;border-radius:999px 999px var(--r-xl) var(--r-xl)}
.about h2{font-size:clamp(42px,5.6vw,72px)}
.about h2 em{color:var(--clay-deep)}
.about p{margin-top:18px;color:var(--muted);max-width:34em;font-size:18px}
.about blockquote{margin:24px 0 0;padding-left:20px;border-left:3px solid var(--olive);font-family:var(--display);font-style:italic;font-size:24px;line-height:1.35;max-width:30em}
@media (max-width:860px){.about{grid-template-columns:1fr}.about .media{max-width:340px;justify-self:center;width:100%}}

/* retreats */
.rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.retreat{display:flex;flex-direction:column;gap:14px;text-decoration:none;min-width:0}
.retreat .media{aspect-ratio:4/5;border-radius:var(--r-xl);transition:transform .3s}
.retreat:hover .media{transform:scale(.985)}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{background:var(--soft);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:700}
.retreat h3{font-size:32px}
.rsub{font-family:var(--display);font-style:italic;font-size:19px;color:var(--clay-deep);margin-top:4px}
.soon{background:var(--olive);color:#2F2D22;border-radius:var(--r-xl);padding:36px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-width:0}
.soon h3{font-size:40px}
@media (max-width:1000px){.rgrid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.rgrid{grid-template-columns:1fr}.retreat .media{aspect-ratio:4/3}}

.banner{margin:0 0 18px;position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:1600/739;max-width:100%}
.banner img{width:100%;height:100%;object-fit:cover;display:block}
.banner figcaption{position:absolute;left:20px;bottom:20px;background:var(--bg);color:var(--ink);border-radius:999px;padding:9px 18px;font-family:var(--display);font-style:italic;font-size:20px;max-width:calc(100% - 40px)}
@media (max-width:700px){.banner{aspect-ratio:4/3}.banner figcaption{font-size:16px;left:12px;bottom:12px}}

/* duo */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tile{border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column;min-width:0;background:var(--soft)}
.tile .media{aspect-ratio:16/11;border-radius:0}
.tile .body{padding:30px 32px 34px;display:flex;flex-direction:column;gap:12px}
.tile h3{font-size:clamp(38px,4.4vw,54px)}
.tile .body p{color:var(--muted)}
.tile .btn{align-self:flex-start;margin-top:6px}
.tlist{list-style:none;padding:0;margin:4px 0 4px;display:flex;flex-direction:column;border-top:1px solid var(--sand)}
.tlist li{padding:11px 0;border-bottom:1px solid var(--sand);display:flex;flex-direction:column;gap:1px}
.tlist b{font-weight:800;font-size:15.5px}
.tlist span{font-size:14.5px;color:var(--muted)}
@media (max-width:860px){.duo{grid-template-columns:1fr}}

/* full moon */
.moon-block{background:var(--night);color:#F8F3EA;border-radius:var(--r-xl);padding:64px 56px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;position:relative;overflow:hidden}
.moon-block::before{content:"";position:absolute;inset:0;background:radial-gradient(1px 1px at 12% 22%,#fff8 50%,transparent 51%),radial-gradient(1px 1px at 32% 78%,#fff6 50%,transparent 51%),radial-gradient(1.5px 1.5px at 55% 18%,#fff9 50%,transparent 51%),radial-gradient(1px 1px at 68% 64%,#fff6 50%,transparent 51%),radial-gradient(1px 1px at 88% 36%,#fff8 50%,transparent 51%),radial-gradient(1px 1px at 46% 46%,#fff5 50%,transparent 51%);pointer-events:none}
.moon-block h2{font-size:clamp(46px,6.4vw,84px)}
.moon-block h2 em{color:var(--sand)}
.moon-block p.lede{margin-top:18px;max-width:30em;opacity:.85;font-size:18px}
.moon-next{margin-top:28px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.moon-date{background:#ffffff14;border-radius:var(--r-md);padding:12px 18px}
.moon-date b{display:block;font-family:var(--display);font-size:26px;font-weight:500;line-height:1.2}
.moon-date span{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.moon-note{font-size:14px;opacity:.75;margin-top:14px}
.moon{width:min(320px,60vw);aspect-ratio:1;border-radius:50%;display:block;box-shadow:0 0 90px 14px #F3E2BE30,0 0 0 18px #ffffff07,0 0 0 42px #ffffff04}
.moon-block .btn{background:var(--sand);color:#352B24}
@media (max-width:860px){.moon-block{grid-template-columns:1fr;padding:44px 26px}.moon{justify-self:center;width:210px;order:-1}}

/* ebooks */
.egrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ebook{display:flex;flex-direction:column;gap:12px;text-decoration:none;min-width:0}
.cover{aspect-ratio:3/4;border-radius:var(--r-lg);padding:22px 16px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;transition:transform .3s}
.ebook:hover .cover{transform:rotate(-1.5deg) translateY(-4px)}
.cover b{font-family:var(--display);font-weight:500;font-size:46px;letter-spacing:.05em;text-transform:none;line-height:1}
.c1{background:#C47A5A;color:#FFF8F0}
.c2{background:#A5A184;color:#2F2D22}
.c3{background:#D7C4A9;color:#352B24}
.c4{background:var(--soft);color:var(--muted)}
.c5{background:var(--night);color:#F3EDE2;position:relative}
.c5 b{font-size:34px}
.c5 i{width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 38% 34%,#FFF6E2,#D7C4A9);box-shadow:0 0 22px #F3E2BE55}
.ebook h3{font-size:26px}
@media (max-width:860px){.egrid{grid-template-columns:1fr 1fr}}

/* letter */
.letter{background:var(--clay);color:#FFF8F0;border-radius:var(--r-xl);padding:64px 56px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.letter h2{font-size:clamp(44px,6vw,78px)}
.letter p{opacity:.95;margin-top:14px;max-width:28em}
form{display:flex;gap:10px;flex-wrap:wrap}
form input{flex:1 1 220px;min-width:0;padding:15px 22px;border-radius:999px;border:0;background:#F8F3EA;color:#352B24;font:inherit;font-size:15px}
.letter .btn{background:#352B24;color:#F8F3EA}
.note{margin-top:10px;font-size:14px;opacity:.9;min-height:1.4em}
@media (max-width:860px){.letter{grid-template-columns:1fr;padding:44px 26px}}

/* testimonials */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.quote{background:var(--soft);border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column;gap:16px;min-width:0}
.quote p{font-family:var(--display);font-size:22px;line-height:1.35;font-style:italic}
.quote span{font-size:14px;font-weight:700;color:var(--muted)}
.vid{aspect-ratio:16/10;border-radius:var(--r-lg);flex-direction:column;align-items:center;justify-content:center;gap:12px}
.play{width:58px;height:58px;border-radius:50%;background:var(--bg);display:grid;place-items:center}
.play::before{content:"";margin-left:5px;border-left:16px solid var(--clay);border-top:10px solid transparent;border-bottom:10px solid transparent}
@media (max-width:860px){.tgrid{grid-template-columns:1fr}}

/* footer */
footer{padding-block:56px 32px;font-size:15px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.fgrid h4{margin:0 0 10px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.fgrid ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.fgrid a{text-decoration:none}
.fgrid a:hover{color:var(--clay-deep)}
.small{margin-top:44px;padding-top:20px;border-top:1px solid var(--sand);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted)}
.small a{text-decoration:none;font-weight:700}
@media (max-width:760px){.fgrid{grid-template-columns:1fr 1fr}}
.sr{position:absolute;left:-9999px}
@media (prefers-reduced-motion:reduce){.track,.water svg{animation:none}html{scroll-behavior:auto}}

/* story page */
.story-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center;padding-block:28px 64px}
.story-hero .media{aspect-ratio:4/5;border-radius:999px 999px var(--r-xl) var(--r-xl)}
.story-hero h1{font-size:clamp(52px,7.4vw,100px)}
.story-hero h1 em{color:var(--clay-deep)}
.story-hero .lede{margin-top:22px;font-size:20px;color:var(--muted);max-width:30em}
.prose{max-width:720px;margin:0 auto}
.prose h2{font-size:clamp(36px,4.6vw,54px);margin-top:56px}
.prose h2:first-child{margin-top:0}
.prose p{margin-top:18px;font-size:18.5px;line-height:1.75}
.pull{margin:48px auto;max-width:900px;text-align:center;font-family:var(--display);font-style:italic;font-size:clamp(28px,3.6vw,42px);line-height:1.25;text-wrap:balance}
.pull em{color:var(--clay-deep)}
.draft{margin-top:28px;border:2px dashed var(--sand);border-radius:var(--r-lg);padding:24px 26px;color:var(--muted);font-size:16px}
.draft b{color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chip{background:var(--soft);border-radius:999px;padding:7px 15px;font-size:14px;font-weight:700}
.story-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.story-strip .media{aspect-ratio:3/4}
.story-strip .media:nth-child(2){border-radius:999px 999px var(--r-lg) var(--r-lg)}
.cta-band{background:var(--olive);color:#2F2D22;border-radius:var(--r-xl);padding:56px;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(36px,4.6vw,56px)}
@media (max-width:860px){.story-hero{grid-template-columns:1fr;gap:28px}.story-hero .media{max-width:320px;width:100%;justify-self:center}.story-strip{grid-template-columns:1fr 1fr}.story-strip .media:nth-child(3){display:none}.cta-band{padding:40px 26px}}

/* retreat / training detail page */
.crumb{display:inline-flex;gap:8px;align-items:center;font-weight:700;font-size:14px;color:var(--muted);text-decoration:none;margin-bottom:22px}
.crumb:hover{color:var(--clay-deep)}
.r-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-block:24px 56px}
.r-hero h1{font-size:clamp(52px,7vw,96px)}
.r-hero h1 em{color:var(--clay-deep)}
.r-hero .r-sub{font-family:var(--display);font-style:italic;font-size:clamp(22px,2.4vw,30px);color:var(--muted);margin-top:10px}
.r-hero .media{aspect-ratio:4/5;border-radius:999px 999px var(--r-xl) var(--r-xl);max-width:460px;width:100%;justify-self:end}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.fact{background:var(--soft);border-radius:var(--r-md);padding:10px 16px;display:flex;flex-direction:column;min-width:0}
.fact span{font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.fact b{font-family:var(--display);font-weight:500;font-size:21px;line-height:1.25}
.r-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
@media (max-width:860px){.r-hero{grid-template-columns:1fr;gap:28px}.r-hero .media{order:-1;justify-self:center;max-width:340px;aspect-ratio:4/4.4}}
.r-intro{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.r-intro .lead{font-family:var(--display);font-size:clamp(28px,3.2vw,38px);line-height:1.25}
.r-intro .lead em{color:var(--clay-deep)}
.r-intro p+p{margin-top:16px}
.r-intro .body p{font-size:18px;line-height:1.75;color:var(--muted)}
@media (max-width:860px){.r-intro{grid-template-columns:1fr;gap:20px}}
.hl{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hl div{background:var(--soft);border-radius:var(--r-lg);padding:22px 24px;min-width:0}
.hl b{display:block;font-family:var(--display);font-size:26px;font-weight:500;line-height:1.15}
.hl span{display:block;margin-top:6px;color:var(--muted);font-size:15.5px}
@media (max-width:860px){.hl{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.hl{grid-template-columns:1fr}}
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.day{background:var(--bg);border:1.5px solid var(--sand);border-radius:var(--r-lg);padding:24px;min-width:0}
.day .label{color:var(--clay-deep)}
.day h3{font-size:28px;margin-top:6px}
.day ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:9px}
.day li{display:grid;grid-template-columns:auto 1fr;gap:10px;font-size:15px;line-height:1.45}
.day li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--olive);margin-top:7px}
.day li small{display:block;color:var(--muted);font-size:13px}
@media (max-width:1000px){.days{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.days{grid-template-columns:1fr}}
.r-note{margin-top:14px;font-size:14px;color:var(--muted)}
.venue{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.venue .media{aspect-ratio:4/3}
.venue h2{font-size:clamp(38px,4.8vw,58px)}
.venue p{margin-top:16px;color:var(--muted);font-size:17.5px}
@media (max-width:860px){.venue{grid-template-columns:1fr;gap:24px}}
.ticks{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:8px}
.ticks li{display:grid;grid-template-columns:auto 1fr;gap:12px}
.ticks li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--clay);margin-top:9px}
.hosts{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.host{background:var(--soft);border-radius:var(--r-lg);padding:26px;display:grid;grid-template-columns:92px 1fr;gap:18px;align-items:center;min-width:0}
.host .av{width:92px;height:92px;border-radius:50%;overflow:hidden;background:var(--sand);display:grid;place-items:center;font-family:var(--display);font-size:34px;color:var(--clay-deep);position:relative}
.host .av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.host h3{font-size:28px}
.host p{color:var(--muted);font-size:15.5px;margin-top:4px}
@media (max-width:760px){.hosts{grid-template-columns:1fr}}
.gal{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}
.gal .media{aspect-ratio:4/3}
.gal .media:first-child{aspect-ratio:auto;grid-row:span 1}
@media (max-width:700px){.gal{grid-template-columns:1fr}}
.book-wrap{background:var(--night);color:#F8F3EA;border-radius:var(--r-xl);padding:56px}
.book-wrap h2{font-size:clamp(40px,5vw,64px)}
.book-wrap h2 em{color:var(--sand)}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.price{background:#ffffff10;border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:6px;min-width:0}
.price .label{opacity:.7}
.price b{font-family:var(--display);font-weight:500;font-size:40px;line-height:1.05}
.price b small{font-family:var(--body);font-size:14px;font-weight:600;opacity:.75}
.price p{opacity:.8;font-size:15px}
.terms{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:24px;font-size:15.5px;opacity:.88}
.terms h4{margin:0 0 6px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;opacity:.75}
.terms ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
.book-cta{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.book-wrap .btn{background:var(--sand);color:#352B24}
.book-wrap .btn.ghost{background:transparent;color:#F8F3EA}
.mail{font-size:15px;opacity:.85;user-select:all}
@media (max-width:860px){.prices{grid-template-columns:1fr}.terms{grid-template-columns:1fr}.book-wrap{padding:36px 22px}}
.r-quote{max-width:820px;margin:0 auto;text-align:center}
.r-quote p{font-family:var(--display);font-style:italic;font-size:clamp(28px,3.4vw,40px);line-height:1.25}
.r-quote span{display:block;margin-top:14px;font-weight:700;color:var(--muted)}
.sec-title{font-size:clamp(38px,4.8vw,58px);margin-bottom:28px}
.sec-title em{color:var(--clay-deep)}

.hl-2{grid-template-columns:1fr 1fr}
@media (max-width:520px){.hl-2{grid-template-columns:1fr}}
.foryou{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.foryou .body p{font-size:18px;line-height:1.75;color:var(--muted)}
.foryou .body p+p{margin-top:14px}
.foryou-box{background:var(--soft);border-radius:var(--r-xl);padding:32px}
.foryou-box .chip{background:var(--bg)}
@media (max-width:860px){.foryou{grid-template-columns:1fr;gap:20px}}
.days-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.days-3{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.days-3{grid-template-columns:1fr}}
.stay-group{margin-top:20px}
.stay-group .ticks{margin-top:8px}
.hosts-3{grid-template-columns:repeat(3,1fr)}
.host .bio{grid-column:1 / -1;font-size:15px;line-height:1.6;color:var(--muted)}
.hosts-3 .host{align-items:start}
@media (max-width:960px){.hosts-3{grid-template-columns:1fr}}
.gal-many{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px}
.gal-many .media{aspect-ratio:auto!important;height:100%;border-radius:var(--r-lg)}
.gal-many .media:nth-child(1){grid-column:span 2;grid-row:span 2}
.gal-many .media:nth-child(6){grid-column:span 2}
@media (max-width:860px){.gal-many{grid-template-columns:1fr 1fr;grid-auto-rows:170px}}
.tgrid-r{display:block;columns:3;column-gap:16px}
.tgrid-r .quote{break-inside:avoid;margin-bottom:16px}
.tgrid-r .quote p{font-size:21px}
@media (max-width:860px){.tgrid-r{columns:1}}
details{background:var(--soft);border-radius:var(--r-md);padding:18px 24px}
details+details{margin-top:10px}
summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:22px;line-height:1;color:var(--muted)}
details[open] summary::after{content:"–"}
details p{margin-top:10px;color:var(--muted);line-height:1.65}

.hosts-duo{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.hosts-duo .media{aspect-ratio:4/3;border-radius:var(--r-xl)}
.hosts-duo h2{font-size:clamp(46px,6vw,80px)}
.hosts-duo h2 em{color:var(--clay-deep)}
@media (max-width:760px){.hosts-duo{grid-template-columns:1fr;gap:20px}}

.gal-many .media:last-child:nth-child(4n+3){grid-column:span 2}
@media (max-width:860px){.gal-many .media:last-child:nth-child(4n+3){grid-column:auto}.gal-many .media:last-child:nth-child(odd){grid-column:span 2}}

.prog-soon{background:var(--soft);border-radius:var(--r-lg);padding:28px 32px}
.prog-soon p{font-family:var(--display);font-style:italic;font-size:clamp(22px,2.4vw,28px)}

.tlist b a{text-decoration:none}
.tlist b a:hover{color:var(--clay-deep)}

.book-note{margin-top:14px;max-width:40em;font-size:16.5px;opacity:.9}

.sched-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.sched{list-style:none;margin:0;padding:0;border-top:1px solid var(--sand)}
.sched li{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid var(--sand);font-size:16.5px}
.sched .t{font-family:var(--display);font-size:20px;color:var(--clay-deep);font-variant-numeric:tabular-nums;line-height:1.3}
@media (max-width:760px){.sched-wrap{grid-template-columns:1fr;gap:12px}.sched li{grid-template-columns:100px 1fr}}

.making{display:inline-block;background:var(--bg);color:var(--clay-deep);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.media .making{position:absolute;top:14px;left:14px;z-index:1;box-shadow:0 2px 10px color-mix(in srgb,#2B1F19 18%,transparent)}
.tlist .making{font-size:10.5px;padding:3px 9px;margin-left:6px;vertical-align:2px;background:var(--bg)}
.tlist li{display:block}
.tlist li > span{display:block}

.price .pay-btn{align-self:flex-start;margin-top:10px;background:var(--sand);color:#352B24}

.thanks{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.thanks .media{aspect-ratio:4/5;border-radius:999px 999px var(--r-xl) var(--r-xl);max-width:420px;width:100%}
.thanks h1{font-size:clamp(46px,6.4vw,84px)}
.thanks h1 em{color:var(--clay-deep)}
.thanks .lede{margin-top:18px;font-size:19px;color:var(--muted)}
@media (max-width:860px){.thanks{grid-template-columns:1fr;gap:24px}.thanks .media{max-width:300px;justify-self:center}}

.moon-photo{position:relative;width:min(340px,70vw);aspect-ratio:3/4;border-radius:999px 999px var(--r-lg) var(--r-lg);overflow:hidden;box-shadow:0 0 80px 6px #F3E2BE22}
.moon-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
@media (max-width:860px){.moon-photo{justify-self:center;width:min(280px,80vw);order:-1}}

.ps-form{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding:22px;background:var(--bg);border-radius:var(--r-lg)}
.ps-form label{font-size:13px;font-weight:800;letter-spacing:.06em;color:var(--muted);margin-top:6px}
.ps-form input,.ps-form select,.ps-form textarea{font:inherit;font-size:15px;padding:12px 16px;border-radius:var(--r-md);border:1.5px solid var(--sand);background:var(--bg);color:var(--ink);width:100%}
.ps-form textarea{resize:vertical}
.ps-form .btn{margin-top:12px;align-self:flex-start}
.ps-note{font-size:14px;color:var(--muted);margin-top:6px;user-select:all}

.venue-text{grid-template-columns:1fr;max-width:820px}
.venue-text > div{background:var(--soft);border-radius:var(--r-xl);padding:40px}
@media (max-width:700px){.venue-text > div{padding:28px 22px}}

.gal-4{grid-template-columns:1fr 1fr}
.gal-4 .media{aspect-ratio:4/3;border-radius:var(--r-lg)}
.gal-4 .media:first-child{aspect-ratio:4/3}

.yt-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}
.yt{display:flex;flex-direction:column;gap:8px;min-width:0}
.yt-play,.yt iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r-lg);display:block}
.yt-play{position:relative;cursor:pointer;background:var(--sand) center/cover no-repeat;display:grid;place-items:center}
.yt-play .play{width:68px;height:68px;box-shadow:0 6px 24px #0003}
.yt-play:hover .play{transform:scale(1.06)}
.yt-link{font-size:14px;font-weight:700;color:var(--muted);text-decoration:none}
@media (max-width:760px){.yt-row{grid-template-columns:1fr}}
.kind{columns:3;column-gap:16px}
.kind .quote{break-inside:avoid;margin:0 0 16px;display:flex;flex-direction:column;gap:14px}
.kind .quote p{font-size:20px}
.kind figcaption{font-size:14px;font-weight:700;color:var(--muted)}
@media (max-width:1000px){.kind{columns:2}}
@media (max-width:640px){.kind{columns:1}}
