:root{--cream:#fbf7ee;--paper:#fffdf8;--olive:#405a32;--sage:#60714e;--ink:#30372d;--muted:#616957;--line:#e4ddcd;--earth:#8e6546;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Be Vietnam Pro',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.8 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}input,textarea,select{font-size:16px}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15}h1{font-size:clamp(48px,5.5vw,82px);letter-spacing:-.025em}h2{font-size:clamp(36px,3.7vw,54px);letter-spacing:-.02em;margin-bottom:24px}h3{font-size:30px}em{font-weight:400;color:var(--sage)}p{margin-bottom:22px}a:hover{color:var(--olive)}:focus-visible{outline:3px solid var(--earth);outline-offset:5px}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:780px}.section{padding:100px 0}.eyebrow{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.18em;line-height:1.8;color:var(--sage);margin-bottom:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:15px 25px;border:1px solid var(--olive);background:var(--olive);color:white;border-radius:40px;font-size:16px;line-height:1.6;transition:background .2s,transform .2s}.btn:hover{background:#2f4426;color:#fff;transform:translateY(-2px)}.btn-light{background:var(--cream);color:var(--olive);border-color:var(--cream)}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:16px;border-bottom:1px solid #a0aa90;padding:7px 0;color:var(--olive)}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.site-header{background:rgba(251,247,238,.97);border-bottom:1px solid rgba(228,221,205,.6)}.nav{display:flex;align-items:center;justify-content:space-between;height:98px;gap:40px}.brand img{width:124px;height:64px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:20px;font-size:14px;white-space:nowrap}.nav a[aria-current=page]{color:var(--olive);box-shadow:0 1px var(--olive)}.nav-contact{border:1px solid #b7bea9;border-radius:30px;padding:10px 19px;margin-left:8px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.home-hero{position:relative;isolation:isolate;overflow:hidden;min-height:710px}.hero-image{position:absolute;inset:0;z-index:-2}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:center}.hero-image picture{display:block;height:100%}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,247,238,.98),rgba(251,247,238,.87) 31%,rgba(251,247,238,.22) 65%,rgba(251,247,238,.02)),linear-gradient(0deg,var(--cream),transparent 22%)}.hero-inner{padding-top:94px;padding-bottom:130px}.hero-copy{max-width:650px}.hero-copy .eyebrow{display:flex;align-items:center;gap:13px}.small-line{width:30px;height:1px;background:var(--sage)}.hero-copy h1{font-size:clamp(54px,5.9vw,86px);line-height:1.15;color:var(--olive);margin:28px 0}.hero-lead{max-width:510px;font-size:18px;line-height:1.8;color:#5c6354}.actions{display:flex;gap:28px;align-items:center;margin-top:32px}.hero-note{display:flex;align-items:center;gap:13px;margin-top:42px;font-size:14px;letter-spacing:.04em;color:var(--muted)}.leaf{font-size:36px;color:var(--sage);line-height:1}.hero-bottom{position:absolute;bottom:28px;left:0;width:100%;display:flex;gap:38px;align-items:center;justify-content:center;color:var(--sage);font-size:13px;letter-spacing:.25em}.hero-bottom i{font-style:normal;font-size:15px}.intro-grid{display:grid;grid-template-columns:.95fr 1fr;gap:110px;align-items:center}.portrait-wrap{position:relative;padding-left:28px}.portrait-wrap>img{width:100%;height:540px;object-fit:cover;object-position:center 35%;border-radius:180px 180px 8px 8px}.photo-note{position:absolute;right:-24px;bottom:28px;background:#f2eadc;padding:24px 32px;font:26px/1.15 var(--serif);box-shadow:0 12px 40px #403b2110}.photo-note em{color:var(--earth)}.vertical-label{position:absolute;left:-5px;top:65px;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.22em;font-size:12px;color:var(--sage)}.intro-copy p:not(.eyebrow):not(.signature){color:var(--muted);font-size:17px}.signature{font:italic 35px var(--serif);color:var(--earth);margin-top:32px}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{margin:0;color:var(--muted);font-size:16px}.section-heading .eyebrow{margin-bottom:12px}.practice-section{background:#f0f0e6}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.practice-card{border:1px solid #d9dfcf;border-radius:4px;padding:32px;background:#f7f6ee}.practice-top{display:flex;justify-content:space-between;align-items:center;color:var(--sage);font-size:14px;margin-bottom:34px}.practice-word{font:italic 42px var(--serif)}.practice-card h3{font-size:31px;margin-bottom:18px}.practice-card p{font-size:17px;color:var(--muted);min-height:0;flex:1}.practice-card{display:flex;flex-direction:column}.practice-tags{border-top:1px solid var(--line);padding-top:20px;font-size:13px;letter-spacing:.06em;color:var(--sage)}.retreat-feature{position:relative;display:block;height:450px;border-radius:8px;overflow:hidden;color:white}.retreat-feature>img{width:100%;height:100%;object-fit:cover;object-position:center}.retreat-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#263b20e8,#263b2030 80%)}.retreat-copy{position:absolute;top:50%;left:65px;transform:translateY(-50%);z-index:1}.retreat-copy .eyebrow{color:#d9dfcd}.retreat-copy h3{font-size:76px;color:#fff;margin-bottom:16px}.retreat-copy p{font-size:17px;color:#edf0e8}.retreat-location{display:block;font-size:14px;margin-bottom:26px;color:#e1e8d6}.retreat-feature:hover{color:white}.event-strip{display:flex;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.event-strip .eyebrow{margin:0;flex-shrink:0}.event-strip h3{font-size:27px;margin:0;flex:1}.gallery-section{background:#f3eee2}.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.album-card{position:relative;overflow:hidden;border-radius:5px;height:420px}.album-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.album-card:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#172511cc)}.album-card>div{position:absolute;bottom:28px;left:28px;right:20px;z-index:1;color:white}.album-card h3{font-size:30px;margin-bottom:10px}.album-card span{font-size:14px;letter-spacing:.04em}.album-card:hover img{transform:scale(1.035)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.card-image{overflow:hidden;border-radius:5px;background:#e7e7da}.card-image img{width:100%;height:245px;object-fit:cover;transition:transform .4s}.content-card:hover img{transform:scale(1.025)}.card-copy{padding:22px 0}.card-copy .eyebrow{font-size:13px;margin-bottom:13px}.card-copy h3{font-size:30px;margin-bottom:16px}.card-copy>p:not(.eyebrow){font-size:16px;color:var(--muted)}.card-copy .text-link{font-size:14px}.closing{padding:76px 0 90px;text-align:center;background:#ecefdf}.closing .eyebrow{margin-bottom:15px}.closing h2{font-size:clamp(36px,4vw,56px)}.closing>div>p:not(.eyebrow){font-size:16px;color:var(--muted)}.closing-leaf{font-size:48px;color:var(--sage)}.closing .btn{margin-top:10px}.footer{padding-top:65px;background:#34482d;color:#e6e9dc}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:80px;padding-bottom:48px}.footer-brand{font:42px var(--serif);display:block;color:#f6f0e5}.footer-brand span{display:block;font:12px var(--sans);letter-spacing:.2em;margin-top:10px}.footer-grid>div>p:not(.eyebrow){font-size:15px;color:#bec8b4;max-width:310px;margin-top:23px}.footer-grid .eyebrow{color:#c4d0b9;margin-top:7px}.footer-grid>div>a:not(.footer-brand){display:block;font-size:15px;margin-bottom:12px}.footer a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #647459;padding:22px 0;font-size:13px;color:#b3c0a8}.page-hero{padding-top:78px;padding-bottom:60px;text-align:center;border-bottom:1px solid var(--line)}.page-hero h1{max-width:1000px;margin:18px auto 25px}.page-hero>p:last-child{max-width:610px;margin:0 auto;color:var(--muted);font-size:17px}.heading-flower{display:block;color:var(--sage);font-size:30px;margin-top:25px}.listing-section{padding-top:60px}.search-box{max-width:400px;margin-bottom:36px}.search-box label{font-size:15px;color:var(--sage);display:block;margin-bottom:8px}input,textarea,select{background:var(--paper);border:1px solid #d4d9c9;border-radius:6px;padding:13px;color:var(--ink);width:100%}textarea{resize:vertical}.retreat-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e9eddf;border-radius:6px;padding:38px;margin-top:50px}.retreat-banner span{font-size:14px;letter-spacing:.08em}.retreat-banner h2{font-size:36px;margin:0}.prose{font-size:18px;line-height:1.8;color:#5e6457;overflow-wrap:anywhere}.prose h2,.prose h3,.prose h4{color:var(--olive);margin-top:35px;line-height:1.25}.prose h2{font-size:38px}.prose h3{font-size:29px}.prose p:empty{display:none}.prose a{color:var(--olive);text-decoration:underline}.prose ul,.prose ol{padding-left:24px}.prose img{border-radius:5px}.prose blockquote{border-left:2px solid var(--sage);padding-left:25px;margin-left:0;font:26px/1.5 var(--serif)}.about-body .intro-grid{align-items:start}.about-body .portrait-wrap{position:sticky;top:25px}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.contact-info>img{border-radius:120px 120px 6px 6px;height:300px;width:100%;object-fit:cover;margin-bottom:32px}.contact-info p{font-size:17px;color:var(--muted)}.contact-info h2{font-size:38px}.form-panel{background:#f3f0e7;border:1px solid var(--line);padding:35px;border-radius:8px}.form-panel h2{font-size:38px}.contact-form label{display:block;font-size:15px;margin-bottom:20px}.contact-form label>input,.contact-form textarea{margin-top:7px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .consent{display:flex;gap:12px;align-items:start;line-height:1.7}.consent input{width:17px;height:17px;flex-shrink:0;margin-top:2px!important;accent-color:var(--olive)}.form-note{font-size:14px;color:var(--muted)}.form-status{font-size:16px;margin-top:16px}.honey{position:absolute;left:-10000px}.article-header{max-width:1000px;padding-top:60px;padding-bottom:50px;text-align:center}.article-header>.text-link{margin-bottom:30px}.article-header h1{font-size:clamp(44px,5vw,70px)}.article-excerpt{max-width:710px;margin:0 auto 20px;color:var(--muted);font-size:17px}.article-meta{font-size:14px;color:var(--sage);margin:20px 0 0}.article-meta span{margin:0 15px}.article-cover>img{max-height:600px;object-fit:cover;width:100%;border-radius:6px}.article-body{max-width:780px}.event-layout{display:grid;grid-template-columns:1fr 320px;gap:85px;align-items:start}.event-details{padding:30px;background:#edf0e4;border:1px solid #dbe1cd;border-radius:8px;position:sticky;top:25px}.event-details p{font-size:16px}.event-details h3{font-size:40px}.notice{background:#e4e9d9;padding:15px;border-radius:5px;font-size:16px}.photo-grid{columns:3;column-gap:20px}.gallery-item{padding:0;border:0;background:none;width:100%;margin:0 0 20px;break-inside:avoid;border-radius:5px;overflow:hidden}.gallery-item img{width:100%;height:auto;transition:filter .2s}.gallery-item:hover img{filter:brightness(.92)}dialog{border:0;padding:45px 35px 25px;background:#202b20;color:white;width:min(1100px,95vw);max-height:96dvh;border-radius:8px}dialog::backdrop{background:#10180eea}dialog>img{max-height:72dvh;width:100%;object-fit:contain}dialog>p{text-align:center;font-size:16px;margin:15px 0 10px}.lightbox-close{position:absolute;right:12px;top:0;border:0;color:white;background:none;font-size:35px}.lightbox-nav{display:flex;align-items:center;justify-content:center;gap:30px}.lightbox-nav button{border:1px solid #aaa;background:none;color:white;border-radius:50%;width:35px;height:35px}.lightbox-count{font-size:15px}[hidden]{display:none!important}
@media(min-width:1600px){.hero-inner{padding-top:125px}.home-hero{min-height:790px}}
@media(max-width:1020px){.container{width:calc(100% - 56px)}.nav nav{gap:18px}.nav{gap:20px}.intro-grid{gap:55px}.portrait-wrap>img{height:460px}.practice-card{padding:25px}.practice-tags{font-size:12px}.contact-grid{gap:35px}.card-image img{height:200px}.album-card{height:350px}.footer-grid{gap:35px}.hero-copy h1{font-size:72px}.event-layout{gap:40px}}
@media(max-width:760px){.container{width:calc(100% - 40px)}.nav{height:80px}.brand img{width:105px;height:56px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:0;font-size:16px;color:var(--olive);padding:10px}.menu-toggle span{font-size:21px}.nav nav{display:none;position:absolute;z-index:40;left:0;right:0;top:80px;padding:24px;background:var(--cream);box-shadow:0 20px 30px #243a2020;font-size:17px}.nav nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.nav-contact{margin:0}.hero-inner{padding-top:58px;padding-bottom:220px}.home-hero{min-height:730px}.hero-image img{object-position:center bottom}.hero-image:after{background:linear-gradient(180deg,#fbf7eef5,#fbf7eed9 40%,#fbf7ee25 75%,var(--cream))}.hero-copy h1{font-size:54px;margin-top:24px}.hero-copy .eyebrow{font-size:12px;letter-spacing:.08em}.hero-lead{max-width:360px;font-size:16px}.actions{gap:20px;flex-wrap:wrap}.hero-note{margin-top:28px}.hero-bottom{bottom:22px;gap:25px;font-size:12px}.section{padding:65px 0}.intro-grid{grid-template-columns:1fr;gap:50px}.portrait-wrap{max-width:450px;padding-left:15px;margin:auto;width:100%}.portrait-wrap>img{height:450px}.photo-note{right:-6px;bottom:20px;padding:20px 25px;font-size:25px}.vertical-label{left:-7px;font-size:12px}.intro-copy{padding-inline:5px}.intro-copy h2{font-size:40px}.practice-grid{grid-template-columns:1fr;gap:15px}.practice-card{padding:25px}.practice-top{margin-bottom:18px}.practice-card p{min-height:0}.practice-tags{font-size:14px}.section-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:30px}.section-heading h2{font-size:40px}.section-heading .text-link{font-size:15px}.retreat-feature{height:440px}.retreat-copy{left:25px;right:20px}.retreat-copy h3{font-size:68px}.retreat-feature>img{object-position:65%}.retreat-feature:after{background:linear-gradient(90deg,#263b20cf,#263b2050)}.event-strip{flex-wrap:wrap;gap:15px}.event-strip h3{flex-basis:100%;order:1}.event-strip .text-link{margin-left:auto}.album-grid{grid-template-columns:1fr;gap:22px}.album-card{height:430px}.card-grid{grid-template-columns:1fr;gap:22px}.card-image img{height:260px}.card-copy h3{font-size:34px}.card-copy{padding-bottom:10px}.closing{padding:55px 0 65px}.closing h2{font-size:42px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div>p:not(.eyebrow){max-width:100%}.footer-bottom{flex-direction:column;gap:8px;font-size:13px}.page-hero{padding:50px 0 40px}.page-hero h1{font-size:49px}.page-hero>p:last-child{font-size:16px}.retreat-banner{flex-direction:column;align-items:start;padding:27px}.retreat-banner h2{font-size:35px}.about-body .portrait-wrap{position:relative;top:auto}.contact-grid{grid-template-columns:1fr;gap:45px}.form-panel{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.article-header{padding:40px 0 30px}.article-header h1{font-size:44px}.article-excerpt{font-size:16px}.article-cover>img{height:300px}.event-layout{grid-template-columns:1fr;gap:30px}.event-details{position:static;grid-row:1}.photo-grid{columns:2;column-gap:12px}.gallery-item{margin-bottom:12px}.prose{font-size:17px}.prose h2{font-size:32px}.btn{min-height:46px}.form-status{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep navigation readable at tablet widths rather than shrinking its text. */
@media (min-width:761px) and (max-width:1100px){
 .nav{height:90px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:0;font-size:16px;color:var(--olive);padding:10px}.menu-toggle span{font-size:24px}
 .nav nav{display:none;position:absolute;z-index:40;left:0;right:0;top:90px;padding:28px;background:var(--cream);box-shadow:0 20px 30px #243a2020;font-size:16px}
 .nav nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.nav-contact{margin:0}
}
@media (max-width:760px){
 body{font-size:16px}.hero-lead{font-size:17px;line-height:1.8}.prose{font-size:17px;line-height:1.85}
 .hero-inner{padding-bottom:150px}.hero-bottom{position:relative;bottom:auto;padding:0 20px 24px}.hero-copy h1{font-size:clamp(44px,12vw,54px)}
 .practice-tags{line-height:1.8}.event-strip{align-items:flex-start}.event-strip .eyebrow{flex-shrink:1}.event-strip .text-link{margin-left:0}
 .retreat-feature{min-height:490px;height:auto}.retreat-feature>img{position:absolute;inset:0}.retreat-copy{position:relative;top:auto;left:auto;right:auto;transform:none;padding:38px 25px}
 .form-panel{padding:22px}.contact-form input,.contact-form textarea,.search-box input{font-size:16px}
 .footer-grid{gap:28px 20px}.footer-grid>div{min-width:0}.footer-grid a{overflow-wrap:anywhere}
}

/* Quiet botanical linework stays behind the footer's readable content. */
.footer{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 95% 100%,#425838 0%,transparent 58%),#34482d}
.footer::before,.footer::after{content:"";position:absolute;z-index:-1;pointer-events:none;background:url('images/footer-botanical.svg') center/contain no-repeat}
.footer::before{width:430px;height:510px;right:-45px;bottom:-110px;opacity:.22;transform:rotate(-12deg)}
.footer::after{width:290px;height:350px;left:-110px;bottom:-95px;opacity:.13;transform:scaleX(-1) rotate(-24deg)}
@media(max-width:760px){.footer::before{width:320px;height:390px;right:-115px;bottom:-70px;opacity:.18}.footer::after{width:220px;height:290px;left:-115px;top:0;bottom:auto;opacity:.1}}
