@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=DM+Sans:ital,wght@0,400;0,500;1,400&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--sand: oklch(52% .07 80);--sand-deep: oklch(40% .06 75);--sand-light: oklch(82% .03 82);--sand-wash: oklch(94% .012 82);--whitewash: oklch(97% .005 80);--hearthstone: oklch(25% .008 78);--hearthstone-soft: oklch(42% .01 78);--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-xs: clamp(.5rem, 1vw, .75rem);--space-sm: clamp(1rem, 2vw, 1.5rem);--space-md: clamp(2rem, 4vw, 3rem);--space-lg: clamp(3rem, 6vw, 5rem);--space-xl: clamp(5rem, 10vw, 8rem);--space-2xl: clamp(6rem, 12vw, 10rem);--measure: 65ch;--page-max: 1200px;--page-wide: 1400px}html{font-size:100%;-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{font-family:var(--font-body);font-size:clamp(1rem,.95rem + .25vw,1.125rem);line-height:1.65;color:var(--hearthstone);background-color:var(--whitewash);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:var(--hearthstone);text-decoration:none;transition:color .25s cubic-bezier(.25,0,.2,1)}a:hover{color:var(--sand)}a:focus-visible{outline:2px solid var(--sand);outline-offset:3px;border-radius:2px}button:focus-visible{outline:2px solid var(--sand);outline-offset:3px;border-radius:2px}.display{font-family:var(--font-display);font-weight:300;line-height:1.05;letter-spacing:-.01em}.headline{font-family:var(--font-display);font-weight:400;line-height:1.15}.label{font-family:var(--font-body);font-weight:500;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase}p{max-width:var(--measure)}p+p{margin-top:1em}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background-color:var(--whitewash);transition:background-color .3s cubic-bezier(.25,0,.2,1)}.site-header--transparent{background-color:transparent}.site-header--transparent .nav-link{color:var(--whitewash)}.site-header--transparent .nav-link:hover{color:var(--sand-light)}.nav{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);max-width:var(--page-wide);margin:0 auto}.nav-logo{display:flex;align-items:center}.nav-logo img{height:80px;width:auto}.nav-links{display:flex;gap:var(--space-md);list-style:none}.nav-link{font-family:var(--font-body);font-size:.875rem;font-weight:400;letter-spacing:.02em;color:var(--hearthstone);transition:color .25s cubic-bezier(.25,0,.2,1)}.nav-link:hover,.nav-link--active{color:var(--sand)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--hearthstone)}.nav-toggle svg{width:24px;height:24px}.site-header--transparent .nav-toggle{color:var(--whitewash)}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;padding:var(--space-xl) var(--space-md) var(--space-lg);overflow:hidden}.hero__image{position:absolute;inset:0;z-index:-1}.hero__image img{width:100%;height:100%;object-fit:cover}.hero__image:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,oklch(22% .02 78 / .65) 0%,oklch(22% .015 78 / .2) 40%,transparent 70%)}.hero__content{position:relative;z-index:1;max-width:var(--page-max)}.hero__title{font-size:clamp(2.75rem,6vw + 1rem,5.5rem);color:var(--whitewash);margin-bottom:var(--space-sm)}.hero__subtitle{font-family:var(--font-body);font-size:clamp(1rem,.9rem + .5vw,1.25rem);color:#e1ddd7;max-width:45ch;line-height:1.6}.page-hero{padding:calc(80px + var(--space-lg)) var(--space-md) var(--space-lg);background-color:var(--sand-wash)}.page-hero__inner{max-width:var(--page-max);margin:0 auto}.page-hero__title{font-size:clamp(2.25rem,5vw + .5rem,4rem);margin-bottom:var(--space-xs)}.page-hero__lead{font-size:clamp(1.05rem,.95rem + .5vw,1.25rem);color:var(--hearthstone-soft);max-width:50ch;line-height:1.6}.page-hero__lead+.page-hero__lead{margin-top:var(--space-sm)}.section{padding:var(--space-xl) var(--space-md)}.section--sand{background-color:var(--sand);color:var(--whitewash)}.section--sand a{color:var(--whitewash)}.section--sand a:hover{color:var(--sand-light)}.section--sand-wash{background-color:var(--sand-wash)}.section--sand-light{background-color:var(--sand-light);color:var(--hearthstone)}.section__inner{max-width:var(--page-max);margin:0 auto}.section__label{margin-bottom:var(--space-sm);color:var(--hearthstone-soft)}.section--sand .section__label{color:var(--sand-light)}.section__title{font-size:clamp(1.75rem,3.5vw + .5rem,3rem);margin-bottom:var(--space-md)}.section__text{color:var(--hearthstone-soft);max-width:var(--measure)}.section--sand .section__text{color:#f1eee9}.intro{padding:var(--space-2xl) var(--space-md);text-align:center}.intro__inner{max-width:52ch;margin:0 auto}.intro__text{font-family:var(--font-display);font-weight:300;font-size:clamp(1.35rem,1.2rem + .75vw,1.85rem);line-height:1.5;color:var(--hearthstone-soft)}.section--sand .intro__text{color:inherit}.retreat-feature{display:grid;gap:var(--space-md);padding:var(--space-xl) var(--space-md);max-width:var(--page-wide);margin:0 auto}.retreat-feature--image-left{grid-template-columns:1.2fr 1fr;align-items:center}.retreat-feature--image-right{grid-template-columns:1fr 1.2fr;align-items:center}.retreat-feature--full{grid-template-columns:1fr;text-align:center}.retreat-feature__image img{width:100%;height:100%;object-fit:cover;aspect-ratio:4 / 5}.retreat-feature--full .retreat-feature__image img{aspect-ratio:16 / 7;max-height:500px}.retreat-feature__body{padding:var(--space-sm) 0}.retreat-feature--image-right .retreat-feature__body{order:-1}.retreat-feature__eyebrow{margin-bottom:var(--space-xs);color:var(--sand)}.retreat-feature__label{margin-bottom:.25em;color:var(--sand)}.retreat-feature__title{font-size:clamp(1.5rem,2.5vw + .5rem,2.25rem);margin-bottom:var(--space-xs)}.retreat-feature__date{margin-bottom:var(--space-sm);color:var(--hearthstone-soft)}.retreat-feature__subtitle{color:var(--hearthstone-soft);margin-bottom:var(--space-sm)}.retreat-feature__text{margin-bottom:var(--space-sm);color:var(--hearthstone-soft)}.retreat-feature__details{list-style:none;margin-bottom:var(--space-md)}.retreat-feature__details li{padding:.35em 0;font-size:.9375rem;color:var(--hearthstone-soft)}.retreat-feature__details li+li{border-top:1px solid var(--sand-light)}.retreat-feature__pricing{margin-bottom:var(--space-md)}.retreat-feature[id]{scroll-margin-top:120px}.retreat-schedule{margin-bottom:var(--space-md)}.retreat-schedule__day{display:grid;grid-template-columns:5em 1fr;gap:var(--space-xs);padding:.45em 0;align-items:baseline}.retreat-schedule__day+.retreat-schedule__day{border-top:1px solid var(--sand-light)}.retreat-schedule__label{font-size:.6875rem;color:var(--sand)}.retreat-schedule__desc{font-size:.9375rem;color:var(--hearthstone-soft);line-height:1.65}.retreat-schedule__entry{display:grid;grid-template-columns:5em 1fr;gap:.25em;padding:.15em 0}.retreat-schedule__time{font-weight:500;color:var(--hearthstone);white-space:nowrap;font-size:.875rem}.retreat-feature__price{display:flex;align-items:baseline;gap:.5em;font-size:.9375rem;color:var(--hearthstone-soft);padding:.35em 0}.retreat-feature__price+.retreat-feature__price{border-top:1px solid var(--sand-light)}.retreat-feature__room-type{min-width:7.5em;font-size:inherit;opacity:1}.retreat-feature__price span{font-size:.8125rem;color:var(--hearthstone-soft);opacity:.75}.retreat-feature__price strong{margin-left:auto;font-weight:600;color:var(--hearthstone)}.cta-link{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-body);font-weight:500;font-size:.9375rem;letter-spacing:.04em;color:var(--hearthstone);border-bottom:1.5px solid var(--hearthstone);padding-bottom:2px;transition:color .25s cubic-bezier(.25,0,.2,1),border-color .25s cubic-bezier(.25,0,.2,1)}.cta-link:hover{color:var(--sand);border-color:var(--sand)}.section--sand .cta-link{color:var(--whitewash);border-color:var(--whitewash)}.section--sand .cta-link:hover{color:var(--sand-light);border-color:var(--sand-light)}.cta-link svg{width:16px;height:16px;transition:transform .25s cubic-bezier(.25,0,.2,1)}.cta-link:hover svg{transform:translate(3px)}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);max-width:var(--page-wide);margin:var(--space-lg) auto;padding:0 var(--space-md)}.photo-pair img{width:100%;height:100%;object-fit:cover;aspect-ratio:1 / 1}.photo-pair--offset img:last-child{margin-top:var(--space-lg)}.photo-single{max-width:var(--page-wide);margin:0 auto;padding:0 var(--space-md)}.photo-single img{width:100%;object-fit:cover;aspect-ratio:16 / 7}.gallery{max-width:var(--page-wide);margin:0 auto;padding:0 var(--space-md);display:flex;flex-direction:column;gap:var(--space-lg)}.gallery img{width:100%;height:100%;object-fit:cover;display:block}.gallery-wide img{aspect-ratio:16 / 9}.gallery-cinematic img{aspect-ratio:2.4 / 1}.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs)}.gallery-pair img{aspect-ratio:1 / 1}.gallery-trio{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-xs)}.gallery-trio img:first-child{grid-row:1 / 3;aspect-ratio:3 / 4}.gallery-trio img:nth-child(2),.gallery-trio img:nth-child(3){aspect-ratio:3 / 2}.gallery-trio--reverse{grid-template-columns:1fr 2fr}.gallery-trio--reverse img:first-child{grid-row:auto;aspect-ratio:3 / 2}.gallery-trio--reverse img:nth-child(2){aspect-ratio:3 / 2}.gallery-trio--reverse img:last-child{grid-row:1 / 3;grid-column:2;aspect-ratio:3 / 4}.gallery-single{max-width:800px;margin:0 auto}.gallery-single img{aspect-ratio:4 / 5}@media(max-width:768px){.gallery{gap:var(--space-md)}.gallery-pair,.gallery-trio,.gallery-trio--reverse{grid-template-columns:1fr}.gallery-trio img:first-child{grid-row:auto;aspect-ratio:3 / 2}.gallery-trio--reverse img:last-child{grid-row:auto;grid-column:auto;aspect-ratio:3 / 2}.gallery-cinematic img{aspect-ratio:16 / 9}}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);align-items:start}.two-col--image-text{grid-template-columns:1.1fr 1fr;align-items:center}.two-col__image img{width:100%;object-fit:cover}.two-col__text p+p{margin-top:1.2em}.experience-list{list-style:none;counter-reset:experience}.experience-list__item{display:grid;grid-template-columns:auto 1fr;gap:var(--space-md);padding:var(--space-md) 0;align-items:baseline}.experience-list__item+.experience-list__item{border-top:1px solid var(--sand-light)}.experience-list__number{font-family:var(--font-display);font-weight:300;font-size:clamp(1.5rem,2vw,2rem);color:var(--sand);counter-increment:experience}.experience-list__number:before{content:counter(experience,decimal-leading-zero)}.experience-list__title{font-family:var(--font-display);font-weight:400;font-size:clamp(1.25rem,1.5vw + .5rem,1.625rem);margin-bottom:.35em}.experience-list__desc{color:var(--hearthstone-soft);font-size:.9375rem}.experience-list--compact .experience-list__item{gap:var(--space-sm);padding:var(--space-sm) 0}.experience-list--compact .experience-list__number{font-size:clamp(1.125rem,1.5vw,1.5rem)}.experience-list--compact .experience-list__title{font-size:clamp(1rem,1.2vw + .4rem,1.25rem);margin-bottom:.25em}.experience-list--compact .experience-list__desc{font-size:.8125rem}.experience-list--hearts .experience-list__number{counter-increment:none}.experience-list--hearts .experience-list__number:before{content:"♥"}.teacher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.teacher-card__image{margin-bottom:var(--space-sm);overflow:hidden}.teacher-card__image img{width:100%;aspect-ratio:3 / 4;object-fit:cover;transition:transform .4s cubic-bezier(.25,0,.2,1)}.teacher-card:hover .teacher-card__image img{transform:scale(1.03)}.teacher-card__label{color:var(--sand);margin-bottom:var(--space-xs)}.teacher-card__name{font-size:clamp(1.25rem,1.5vw + .5rem,1.625rem);margin-bottom:var(--space-xs)}.teacher-card__text{color:var(--hearthstone-soft);font-size:.9375rem;margin-bottom:var(--space-md)}.contact-form{max-width:560px}.form-group{margin-bottom:var(--space-sm)}.form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.4em;color:var(--hearthstone)}.form-input,.form-textarea{width:100%;padding:.75em 0;font-family:var(--font-body);font-size:1rem;color:var(--hearthstone);background:transparent;border:none;border-bottom:1px solid var(--sand-light);transition:border-color .25s cubic-bezier(.25,0,.2,1)}.form-input:focus,.form-textarea:focus{outline:none;border-bottom-color:var(--sand)}.form-textarea{resize:vertical;min-height:120px}.form-submit{display:inline-block;font-family:var(--font-body);font-size:.9375rem;font-weight:500;letter-spacing:.04em;color:var(--whitewash);background-color:var(--sand);border:none;padding:.9em 2.5em;cursor:pointer;transition:background-color .25s cubic-bezier(.25,0,.2,1);margin-top:var(--space-sm)}.form-submit:hover{background-color:var(--sand-deep)}.site-footer{background-color:var(--sand);color:var(--whitewash);padding:var(--space-xl) var(--space-md) var(--space-md)}.footer__inner{max-width:var(--page-max);margin:0 auto}.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid oklch(60% .05 80);align-items:start}.footer__top>div{min-width:0}.footer__map{margin-top:var(--space-sm);aspect-ratio:16 / 9;width:100%;border:none;filter:grayscale(1) sepia(.55) saturate(1.3) brightness(.85) contrast(1.1)}.footer__heading{font-family:var(--font-body);font-weight:500;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-sm);color:var(--sand-light)}.footer__text{font-size:.9375rem;line-height:1.7;color:#d3cdc3}.footer__text a{color:var(--whitewash);border-bottom:1px solid oklch(70% .03 80);transition:border-color .25s cubic-bezier(.25,0,.2,1)}.footer__text a:hover{border-color:var(--whitewash);color:var(--whitewash)}.footer__links{list-style:none}.footer__links li+li{margin-top:.5em}.footer__links a{color:#d3cdc3;font-size:.9375rem;transition:color .25s cubic-bezier(.25,0,.2,1)}.footer__links a:hover{color:var(--whitewash)}.footer__newsletter{display:flex;gap:0;margin-top:var(--space-xs)}.footer__newsletter input{flex:1;padding:.6em 0;font-family:var(--font-body);font-size:.9375rem;color:var(--whitewash);background:transparent;border:none;border-bottom:1px solid oklch(70% .03 80);transition:border-color .25s cubic-bezier(.25,0,.2,1)}.footer__newsletter input::placeholder{color:#a79d8d}.footer__newsletter input:focus{outline:none;border-bottom-color:var(--whitewash)}.footer__newsletter button{background:none;border:none;border-bottom:1px solid oklch(70% .03 80);color:var(--whitewash);font-family:var(--font-body);font-size:.8125rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:.6em 0 .6em 1em;transition:color .25s cubic-bezier(.25,0,.2,1)}.footer__newsletter button:hover{color:var(--sand-light)}.footer__newsletter[hidden]{display:none}.footer__newsletter-success{margin-top:var(--space-xs)}.footer__bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-md);font-size:.8125rem;color:#a79d8d}.footer__social{display:flex;gap:1em}.footer__social a{color:#c5bdb0;transition:color .25s cubic-bezier(.25,0,.2,1)}.footer__social a:hover{color:var(--whitewash)}.footer__social svg{width:20px;height:20px}.exp-block{max-width:var(--page-wide);margin:0 auto}.exp-block__heading{position:relative;overflow:hidden}.exp-block__heading img{width:100%;aspect-ratio:16 / 7;object-fit:cover;display:block}.exp-block__heading--placeholder{background-color:var(--sand-wash);padding:var(--space-xl) var(--space-md);display:flex;align-items:center;justify-content:center;min-height:280px}.exp-block--alt .exp-block__heading--placeholder{background-color:var(--sand-light)}.exp-block__title{font-size:clamp(2rem,4vw + .5rem,3.5rem);text-align:center;color:var(--hearthstone)}.exp-block__title--overlay{position:absolute;bottom:0;left:0;right:0;padding:var(--space-lg) var(--space-md) var(--space-md);color:var(--whitewash);background:linear-gradient(to top,oklch(22% .02 78 / .6) 0%,transparent 100%)}.exp-block__frame{padding:var(--space-lg) var(--space-md);background-color:var(--whitewash)}.exp-block--alt .exp-block__frame{background-color:var(--sand-wash)}.exp-block__frame-inner{max-width:var(--page-max);margin:0 auto}.exp-block__frame-inner p{color:var(--hearthstone-soft);max-width:var(--measure)}.exp-block__frame-inner--centered{text-align:center}.exp-block__frame-inner--centered p{margin-left:auto;margin-right:auto}.exp-block__subtitle{font-size:clamp(1.25rem,2vw + .3rem,1.75rem);margin-bottom:var(--space-sm);color:var(--hearthstone)}@media(max-width:768px){.exp-block__heading img{aspect-ratio:4 / 3}.exp-block__heading--placeholder{min-height:180px;padding:var(--space-lg) var(--space-md)}.exp-block__title{font-size:clamp(1.75rem,6vw,2.5rem)}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spacer-lg{height:var(--space-lg)}.spacer-xl{height:var(--space-xl)}@media(max-width:768px){.nav-links{display:none;position:fixed;inset:0;background-color:var(--whitewash);flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);z-index:99}.nav-links--open{display:flex}.nav-links--open .nav-link{font-size:1.25rem;color:var(--hearthstone)}.nav-toggle{display:block;z-index:101}.hero{min-height:85vh;min-height:85svh;padding-bottom:var(--space-lg)}.hero__title{font-size:clamp(2.25rem,8vw,3.5rem)}.retreat-feature--image-left,.retreat-feature--image-right{grid-template-columns:1fr}.retreat-feature--image-right .retreat-feature__body{order:0}.retreat-feature__image img{aspect-ratio:4 / 3}.retreat-schedule__day{grid-template-columns:4em 1fr}.retreat-schedule__entry{grid-template-columns:4.5em 1fr}.two-col,.two-col--image-text{grid-template-columns:1fr;gap:var(--space-md)}.photo-pair{grid-template-columns:1fr}.photo-pair--offset img:last-child{margin-top:0}.footer__top{grid-template-columns:1fr;gap:var(--space-md)}.footer__bottom{flex-direction:column;gap:var(--space-sm);text-align:center}.experience-list__item{grid-template-columns:1fr;gap:var(--space-xs)}.teacher-grid{grid-template-columns:1fr;gap:var(--space-lg)}}@media(max-width:480px){.hero__title,.page-hero__title{font-size:2rem}}
