:root{--forest:#0f2a22;--forest-2:#16352b;--forest-3:#1e4436;--tiffany:#4fb8ac;--tiffany-light:#b7e4dd;--sand:#f6f2e9;--sand-2:#efe9da;--ink:#142019;--gold:#c9a227;--serif:"Fraunces", serif;--sans:"Inter", sans-serif;--mono:"IBM Plex Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--sand);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;height:100%;display:block}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tiffany);align-items:center;gap:.6em;font-size:.72rem;display:flex}.eyebrow:before{content:"";background:var(--tiffany);width:22px;height:1px;display:inline-block}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;font-weight:500}.photo{background:var(--forest-2);position:relative;overflow:hidden}.photo img{filter:grayscale(65%)contrast(1.05)brightness(.95);transition:transform 1.1s cubic-bezier(.16,1,.3,1)}.photo:after{content:"";mix-blend-mode:multiply;background:linear-gradient(160deg,#0f2a22b8 0%,#4fb8ac61 100%);position:absolute;inset:0}.photo:before{content:"";mix-blend-mode:screen;z-index:1;background:#4fb8ac24;position:absolute;inset:0}.photo:hover img{transform:scale(1.045)}.retreat-card .photo img,.ig-grid .photo img,.detail-gallery .photo img{filter:none}.retreat-card .photo:after,.retreat-card .photo:before,.ig-grid .photo:after,.ig-grid .photo:before,.detail-gallery .photo:after,.detail-gallery .photo:before{content:none}.hero .photo img{filter:none}.hero .photo:before{content:none}.hero .photo:after{mix-blend-mode:normal;background:linear-gradient(#0a1a158c 0%,#0a1a1566 28%,#0a1a1573 60%,#0a1a15b3 100%)}.hero-content,.hero .eyebrow,.hero-stats{text-shadow:0 2px 6px #000000a6,0 8px 30px #0000008c}.hero .eyebrow{color:var(--sand)}.hero .eyebrow:before{background:var(--sand);opacity:.7}.hero p.sub{color:var(--sand)}.trail-rail{z-index:40;pointer-events:none;width:40px;position:fixed;top:0;bottom:0;left:28px}@media (width<=980px){.trail-rail{display:none}}.trail-rail svg{filter:drop-shadow(0 1px 3px #0000008c);width:100%;height:100%;overflow:visible}.trail-path{fill:none;stroke:var(--tiffany-light);stroke-width:2px;stroke-dasharray:6 8;stroke-linecap:round;opacity:.85}.trail-progress{fill:none;stroke:var(--tiffany-light);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:3000;stroke-dashoffset:3000px;transition:stroke-dashoffset .1s linear}.waypoint{background:var(--forest);border:2.5px solid var(--tiffany-light);border-radius:50%;width:14px;height:14px;transition:background .3s;position:absolute;left:14px;transform:translateY(-50%);box-shadow:0 1px 4px #00000080}.waypoint.active{background:var(--tiffany)}.waypoint .mi{font-family:var(--mono);letter-spacing:.05em;color:var(--sand);text-shadow:0 1px 3px #000000b3,0 0 8px #0006;white-space:nowrap;opacity:.9;font-size:.62rem;position:absolute;top:50%;left:24px;transform:translateY(-50%)}header{z-index:50;background:linear-gradient(#08141073 0%,#08141000 100%);justify-content:space-between;align-items:center;padding:26px 64px;transition:background .4s,padding .4s,box-shadow .4s;display:flex;position:fixed;top:0;left:0;right:0}header.scrolled{backdrop-filter:blur(8px);background:#0f2a22eb;padding:16px 64px;box-shadow:0 8px 30px #00000026}.logo{font-family:var(--serif);color:var(--sand);letter-spacing:.02em;text-shadow:0 2px 8px #00000080;align-items:center;gap:12px;font-size:1.65rem;font-weight:500;display:flex}.logo svg{width:30px;height:30px}nav.links{gap:36px;display:flex}nav.links a{color:var(--sand-2);letter-spacing:.03em;text-transform:uppercase;text-shadow:0 1px 6px #00000080;padding-bottom:4px;font-size:.82rem;position:relative}nav.links a:after{content:"";background:var(--tiffany);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}nav.links a:hover:after{width:100%}.nav-ctas{align-items:center;gap:14px;display:flex}.social-icons{border-right:1px solid #f6f2e940;align-items:center;gap:16px;margin-right:6px;padding-right:16px;display:flex}.social-icons a{color:var(--sand-2);transition:color .25s;display:flex}.social-icons a:hover{color:var(--tiffany-light)}.social-icons svg{width:19px;height:19px}@media (width<=1080px){.social-icons{display:none}}@media (width<=900px){nav.links{display:none}header{padding:20px 24px}}.btn{font-family:var(--sans);letter-spacing:.02em;cursor:pointer;text-shadow:none;border:1px solid #0000;border-radius:2px;padding:12px 24px;font-size:.85rem;font-weight:600;transition:all .3s;display:inline-block}.btn-solid{background:var(--tiffany);color:var(--forest);box-shadow:0 2px 10px #00000040}.btn-solid:hover{background:var(--tiffany-light)}.btn-ghost{color:var(--sand);backdrop-filter:blur(2px);background:#0f2a2240;border-color:#f6f2e9bf}.btn-ghost:hover{border-color:var(--sand);background:#f6f2e91f}.btn-ghost-dark{color:var(--ink);border-color:#14201959}.btn-ghost-dark:hover{border-color:var(--ink);background:#1420190f}.hero{text-align:center;height:100vh;min-height:640px;color:var(--sand);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero .photo{z-index:0;position:absolute;inset:0}.hero-content{z-index:2;max-width:900px;padding:0 24px;position:relative}.hero .eyebrow{justify-content:center;margin-bottom:22px}.hero h1{font-size:clamp(2.6rem,6vw,5.2rem);font-weight:400;line-height:1.05}.hero h1 em{color:var(--tiffany-light);font-style:italic;font-weight:400}.hero p.sub{max-width:560px;color:var(--sand-2);margin:26px auto 36px;font-size:1.15rem;font-weight:400}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.hero-stats{font-family:var(--mono);letter-spacing:.08em;color:var(--sand-2);z-index:2;opacity:.85;justify-content:center;gap:48px;font-size:.72rem;display:flex;position:absolute;bottom:34px;left:0;right:0}.hero-stats span b{color:var(--tiffany-light);font-weight:500}@media (width<=700px){.hero-stats{flex-wrap:wrap;gap:20px;padding:0 16px}}section{padding:120px 64px;position:relative}@media (width<=900px){section{padding:80px 28px}}.intro{text-align:center;max-width:760px;margin:0 auto}.intro .eyebrow{justify-content:center;margin-bottom:26px}.intro p{font-family:var(--serif);color:var(--forest);font-size:clamp(1.4rem,2.6vw,2rem);font-style:italic;font-weight:400;line-height:1.5}.split{grid-template-columns:1fr 1fr;padding:0;display:grid}@media (width<=900px){.split{grid-template-columns:1fr}}.split-panel{align-items:flex-end;min-height:640px;display:flex;position:relative}.split-panel .photo{position:absolute;inset:0}.split-panel-content{z-index:2;color:var(--sand);padding:56px;position:relative}.split-panel-content .eyebrow{margin-bottom:18px}.split-panel-content h3{max-width:380px;margin-bottom:16px;font-size:2rem}.split-panel-content p{max-width:380px;color:var(--sand-2);margin-bottom:22px;font-size:.96rem}.split-panel-content a.link{font-family:var(--mono);letter-spacing:.04em;color:var(--tiffany-light);border-bottom:1px solid #b7e4dd66;padding-bottom:3px;font-size:.8rem}.split-panel-content a.link:hover{border-color:var(--tiffany-light)}.retreats{background:var(--forest);color:var(--sand)}.retreats-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:56px;display:flex}.retreats-head h2{color:var(--sand);max-width:520px;font-size:clamp(1.8rem,3.4vw,2.6rem)}.retreat-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}@media (width<=980px){.retreat-grid{grid-template-columns:1fr}}.retreat-card{background:var(--forest-2);border:1px solid #f6f2e914}.retreat-card .photo{height:260px}.retreat-card-body{padding:26px}.retreat-card .mi{font-family:var(--mono);color:var(--tiffany-light);letter-spacing:.08em;margin-bottom:10px;font-size:.68rem;display:block}.retreat-card h4{font-family:var(--serif);margin-bottom:8px;font-size:1.35rem;font-weight:500}.retreat-card .dates{color:var(--sand-2);margin-bottom:18px;font-size:.85rem}.retreat-card-foot{justify-content:space-between;align-items:center;display:flex}.retreat-card .price{font-family:var(--mono);color:var(--sand-2);font-size:.78rem}.retreat-card .price b{color:var(--sand);font-size:.95rem}.testimonial{text-align:center}.testimonial .mark{font-family:var(--serif);color:var(--tiffany);margin-bottom:12px;font-size:4rem;font-style:italic;line-height:1}.testimonial blockquote{font-family:var(--serif);max-width:780px;color:var(--forest);margin:0 auto 26px;font-size:clamp(1.5rem,3vw,2.2rem);font-style:italic;font-weight:400;line-height:1.4}.testimonial cite{font-family:var(--mono);letter-spacing:.05em;color:var(--forest-3);font-size:.78rem;font-style:normal}.instagram-head{text-align:center;margin-bottom:46px}.instagram-head .eyebrow{justify-content:center;margin-bottom:18px}.instagram-head h2{margin-bottom:14px;font-size:clamp(1.8rem,3.2vw,2.4rem)}.instagram-head p{color:var(--forest-3);opacity:.75;font-size:.95rem}.ig-grid{grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:36px;display:grid}@media (width<=900px){.ig-grid{grid-template-columns:repeat(3,1fr)}}.ig-grid .photo{aspect-ratio:1}.instagram-cta{text-align:center}.newsletter{background:var(--sand-2)}.newsletter-inner{text-align:center;max-width:640px;margin:0 auto}.newsletter h2{margin-bottom:14px;font-size:clamp(1.8rem,3.2vw,2.4rem)}.newsletter p{color:var(--forest-3);opacity:.8;margin-bottom:34px}.newsletter form{gap:10px;max-width:460px;margin:0 auto 20px;display:flex}@media (width<=520px){.newsletter form{flex-direction:column}}.newsletter input[type=email]{background:var(--sand);font-family:var(--sans);border:1px solid #14201933;border-radius:2px;flex:1;padding:14px 18px;font-size:.92rem}.newsletter input[type=email]:focus{outline:2px solid var(--tiffany);outline-offset:1px}.newsletter .fine{color:var(--forest-3);opacity:.75;font-size:.82rem}.newsletter .fine a{color:var(--forest);text-underline-offset:3px;text-decoration:underline}footer{background:var(--forest);color:var(--sand-2);padding:72px 64px 32px}.footer-top{flex-wrap:wrap;justify-content:space-between;gap:48px;margin-bottom:56px;display:flex}.footer-brand .logo{margin-bottom:16px}.footer-brand p{color:#efe9daa6;max-width:280px;font-size:.88rem}.footer-cols{flex-wrap:wrap;gap:64px;display:flex}.footer-col h5{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tiffany-light);margin-bottom:16px;font-size:.7rem}.footer-col a{color:var(--sand-2);margin-bottom:10px;font-size:.9rem;display:block}.footer-col a:hover{color:var(--tiffany-light)}.footer-bottom{color:#efe9da80;border-top:1px solid #f6f2e91a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:28px;font-size:.78rem;display:flex}.footer-social{gap:16px;display:flex}.footer-social a{color:var(--sand-2)}.footer-social a:hover{color:var(--tiffany-light)}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(28px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.photo img{transition:none}}.page-hero{text-align:center;height:56vh;min-height:420px;color:var(--sand);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.page-hero .photo{z-index:0;position:absolute;inset:0}.page-hero .photo img{filter:none}.page-hero .photo:before{content:none}.page-hero .photo:after{mix-blend-mode:normal;background:linear-gradient(#0a1a158c 0%,#0a1a1559 40%,#0a1a15b3 100%)}.page-hero-content{z-index:2;text-shadow:0 2px 6px #000000a6,0 8px 30px #0000008c;max-width:800px;padding:0 24px;position:relative}.page-hero h1{margin-top:14px;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:400}.breadcrumb{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--sand-2);opacity:.9;font-size:.75rem}.breadcrumb a{color:var(--tiffany-light)}.breadcrumb a:hover{text-decoration:underline}.retreats-page-head{text-align:center;max-width:640px;margin:0 auto 56px}.retreats-page-head .eyebrow{justify-content:center;margin-bottom:18px}.retreats-page-head p{color:var(--sand-2);font-size:1rem}.retreat-detail-top{grid-template-columns:1.4fr 1fr;align-items:start;gap:56px;display:grid}@media (width<=900px){.retreat-detail-top{grid-template-columns:1fr}}.retreat-detail-top h2{color:var(--forest);margin-bottom:18px;font-size:clamp(1.6rem,2.6vw,2.1rem)}.retreat-detail-top p.desc{color:var(--forest-3);margin-bottom:8px;line-height:1.7}.reserve-card{background:var(--forest);color:var(--sand);border-radius:2px;padding:32px;position:sticky;top:110px}.reserve-card .row{border-bottom:1px solid #f6f2e91f;justify-content:space-between;padding:12px 0;font-size:.92rem;display:flex}.reserve-card .row:last-of-type{border-bottom:none}.reserve-card .row span:first-child{color:var(--sand-2)}.reserve-card .row span:last-child{color:var(--sand);font-weight:600}.reserve-card .btn{text-align:center;width:100%;margin-top:20px}.reserve-card .note{color:var(--sand-2);opacity:.75;margin-top:14px;font-size:.78rem;line-height:1.5}.included-list{margin-top:16px;list-style:none}.included-list li{color:var(--forest-3);border-bottom:1px solid #14201914;padding:10px 0 10px 28px;font-size:.95rem;position:relative}.included-list li:before{content:"✓";color:var(--tiffany);font-weight:700;position:absolute;top:10px;left:0}.itinerary{margin-top:20px}.itinerary-day{border-top:1px solid #1420191a;grid-template-columns:100px 1fr;gap:24px;padding:28px 0;display:grid}.itinerary-day:first-child{border-top:none}@media (width<=640px){.itinerary-day{grid-template-columns:1fr;gap:8px}}.itinerary-day .day-label{font-family:var(--mono);letter-spacing:.06em;color:var(--tiffany);text-transform:uppercase;font-size:.78rem}.itinerary-day h4{font-family:var(--serif);color:var(--forest);margin-bottom:8px;font-size:1.2rem}.itinerary-day p{color:var(--forest-3);font-size:.94rem;line-height:1.6}.detail-gallery{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=800px){.detail-gallery{grid-template-columns:1fr}}.detail-gallery .photo{aspect-ratio:4/3}.section-label{font-family:var(--serif);color:var(--forest);margin-bottom:8px;font-size:1.6rem}.back-link{font-family:var(--mono);letter-spacing:.04em;color:var(--forest-3);align-items:center;gap:8px;margin-bottom:8px;font-size:.8rem;display:inline-flex}.back-link:hover{color:var(--forest)}
