
:root{--ink:#272920;--dark:#24271f;--mid:#535447;--paper:#eeeae0;--paper2:#e4ded1;--sand:#d5c9b7;--line:#b9ae9b;--cream:#f6f0e4}
*{box-sizing:border-box}
html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",Arial,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;object-fit:cover} a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit} button{cursor:pointer} p{line-height:1.7} h1,h2,h3,blockquote{font-family:Newsreader,Georgia,serif;font-weight:300;line-height:.99;margin:0}h1 i,h2 i,blockquote i{font-weight:300} h1{font-size:clamp(4.4rem,7.8vw,10.5rem);letter-spacing:-.045em} h2{font-size:clamp(3.4rem,5.4vw,7rem);letter-spacing:-.03em} h3{font-size:2rem}
.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5.2%;background:var(--paper);position:relative;z-index:20;border-bottom:1px solid rgba(50,49,39,.12)}
.wordmark{font-family:Jost,sans-serif;font-weight:400;font-size:1.08rem;letter-spacing:.11em;white-space:nowrap}.wordmark em{font-family:Newsreader,serif;font-weight:400;text-transform:none;letter-spacing:0;font-size:1.05em}.mark{font-size:1.55rem;line-height:0;position:relative;top:2px;margin-left:11px;color:#887d64}
.nav{display:flex;align-items:center;gap:38px}.nav a{font-size:.77rem;letter-spacing:.055em;font-weight:500;text-transform:uppercase;padding:36px 0;transition:opacity .2s}.nav a:hover,.nav a.active{opacity:.5}.nav-toggle{display:none;background:none;border:0;width:32px;padding:5px}.nav-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0}
.eyebrow{font-size:.69rem;font-weight:600;letter-spacing:.19em;line-height:1.5;text-transform:uppercase;margin:0 0 26px}.small-line{display:inline-block;width:28px;border-top:1px solid currentColor;vertical-align:middle;margin-right:10px}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:.77rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;padding-bottom:12px;border-bottom:1px solid currentColor;align-self:flex-start}.text-link span{font-size:1.2rem;font-weight:300;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.text-link.dark{color:var(--ink)}
.content-wrap{padding-left:8%;padding-right:8%}
.hero{min-height:670px;display:grid;grid-template-columns:52% 48%;background:var(--dark);color:var(--paper)}.hero-text{padding:95px 6% 50px 14.8%;display:flex;flex-direction:column;align-items:flex-start;position:relative}.hero-text .eyebrow{color:#d6cdbd}.hero h1{font-size:clamp(4.8rem,7.3vw,9rem);line-height:.92;margin:35px 0 36px}.hero h1 i{color:#c1b39a}.hero-intro{max-width:440px;color:#d1cebf;font-size:1rem;line-height:1.8;margin:0 0 38px}.hero .text-link{color:#efe8dc}.hero-note{margin-top:auto;padding-top:58px;display:flex;align-items:center;gap:12px;color:#a79d89}.hero-note>span{font-family:serif;font-size:1.9rem}.hero-note small{font-size:.58rem;line-height:1.65;letter-spacing:.2em}.hero-photo{min-height:670px;position:relative;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;object-position:50% 48%;filter:brightness(.86) saturate(.88)}.photo-credit{position:absolute;bottom:22px;left:28px;right:28px;color:white;display:flex;justify-content:space-between;font-size:.68rem;letter-spacing:.08em;text-shadow:0 1px 10px black}
.intro-section{padding-top:165px;padding-bottom:170px}.intro-grid{display:grid;grid-template-columns:62% 38%;gap:2.5rem}.intro-grid h2{line-height:1.03}.intro-grid h2 i{color:#86775d}.intro-side{padding:40px 0 0 35px;max-width:440px}.intro-side p{font-size:1rem;margin:0 0 25px}.intro-side .text-link{margin-top:18px}
.image-interlude{height:70vh;min-height:480px;position:relative;background:#282922;overflow:hidden}.image-interlude img{height:100%;object-position:center 42%;filter:brightness(.78)}.image-interlude-caption{position:absolute;bottom:32px;right:6%;color:white;font-family:Newsreader,serif;font-size:clamp(1.4rem,2.4vw,2.8rem);font-style:italic}
.offer-section{padding-top:155px;padding-bottom:160px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:54px}.section-heading h2{line-height:1.01}.section-heading .text-link{margin-bottom:8px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.offer-card{overflow:hidden}.offer-card img{aspect-ratio:3/4;filter:saturate(.83);transition:transform .6s ease}.offer-card:hover img{transform:scale(1.035)}.offer-title{padding:24px 0;position:relative}.offer-title span{font-size:.63rem;letter-spacing:.13em}.offer-title h3{margin-top:11px;font-size:clamp(1.9rem,2.4vw,3rem)}.offer-title b{position:absolute;right:0;bottom:23px;font-weight:300;font-size:1.4rem}
.quote-section{background:var(--paper2);text-align:center;padding:125px 5% 115px}.quote-section blockquote{font-size:clamp(2.5rem,5.2vw,6.5rem);line-height:1.1}.quote-mark{margin-top:34px;font-size:2.3rem;color:#857963}
.story-peek{display:grid;grid-template-columns:48% 52%;gap:8%;padding-top:150px;padding-bottom:150px}.story-img img{height:720px;max-height:75vh;object-position:center 48%}.story-copy{display:flex;flex-direction:column;justify-content:center;padding-right:15%;align-items:flex-start}.story-copy h2{font-size:clamp(3rem,4.5vw,5.5rem);margin-bottom:32px}.story-copy p:not(.eyebrow){max-width:455px;margin:0 0 20px}.story-copy .text-link{margin-top:22px}
.end-cta{padding:140px 6% 155px;background:var(--dark);color:var(--cream);text-align:center}.end-cta h2{font-size:clamp(4rem,6.5vw,8rem);margin-bottom:43px}.end-cta h2 i{color:#cdbd9e}.pill-link{border:1px solid currentColor;padding:19px 27px;display:inline-flex;gap:46px;text-transform:uppercase;font-size:.74rem;letter-spacing:.12em;font-weight:500;align-items:center}.pill-link:hover{background:rgba(255,255,255,.1)}
.footer{background:#1c1f1a;color:#e7e2d6;padding:64px 8% 20px}.footer-top{display:flex;justify-content:space-between;gap:32px;padding-bottom:72px}.footer-top p{color:#b7b4a5;font-size:.84rem;line-height:1.75;margin-top:23px}.footer-logo{font-size:1.15rem}.footer-links{display:flex;gap:35px;font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #64665d;padding-top:18px;color:#a9a89c;font-size:.65rem;letter-spacing:.05em}
.page-hero{padding-top:110px;padding-bottom:125px;display:grid;grid-template-columns:70% 30%;align-items:end;gap:0}.page-hero .eyebrow{grid-column:1/-1}.page-hero h1{font-size:clamp(5rem,8.3vw,10rem)}.page-hero>p:last-child{font-size:1rem;max-width:330px;padding-bottom:16px;margin:0}
.experience-row{display:grid;grid-template-columns:52% 48%;gap:7%;align-items:center;padding-top:75px;padding-bottom:90px;scroll-margin-top:30px}.experience-row>img{height:660px;max-height:75vh;object-fit:cover;filter:saturate(.88)}.experience-row .experience-copy{max-width:500px;padding-right:12%}.experience-copy h2{font-size:clamp(3.7rem,5.2vw,6rem);margin:0 0 31px}.experience-copy p:not(.eyebrow){margin:0 0 20px}.experience-copy .details{font-size:.69rem;letter-spacing:.13em;font-weight:600;margin-top:28px!important;margin-bottom:33px!important}.experience-row.reverse>img{order:2}.experience-row.reverse .experience-copy{order:1;padding-left:10%;padding-right:0}.note-panel{background:var(--paper2);text-align:center;padding:135px 15%}.note-panel h2{margin-bottom:30px}.note-panel>p:not(.eyebrow){max-width:640px;margin:0 auto 40px}.note-panel .pill-link{border-color:var(--ink)}
.about-hero{display:grid;grid-template-columns:50% 50%;min-height:690px;background:var(--dark);color:var(--cream)}.about-photo{height:690px;overflow:hidden}.about-photo img{height:100%;object-position:50% 50%}.about-hero-text{display:flex;flex-direction:column;justify-content:center;padding:7% 13%}.about-hero-text h1{font-size:clamp(4.3rem,6.6vw,8rem);margin:35px 0}.about-hero-text p:last-child{max-width:470px}.about-body{padding-top:160px;padding-bottom:140px}.about-body-grid{display:grid;grid-template-columns:48% 52%;gap:8%}.about-body-grid h2{line-height:1.02}.about-body-grid>div{padding-right:13%}.about-body-grid p{margin:0 0 27px}.about-gallery{display:grid;grid-template-columns:55% 45%;gap:18px}.about-gallery img{height:590px;object-fit:cover}.values{padding-top:150px;padding-bottom:170px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.values-grid>div{border-top:1px solid var(--line);padding-top:25px}.values-grid span{font-size:.7rem;letter-spacing:.12em}.values-grid h3{font-size:3.2rem;margin-top:34px}.values-grid p{max-width:250px}
.contact-layout{display:grid;grid-template-columns:44% 56%;min-height:calc(100vh - 88px)}.contact-visual{position:relative;min-height:750px;background:#242720}.contact-visual img{height:100%;position:absolute;inset:0;filter:brightness(.7)}.contact-over-image{position:absolute;bottom:65px;left:10%;font:italic 3rem/1.1 Newsreader,serif;color:white}.contact-main{padding:95px 13% 110px 12%}.contact-main h1{font-size:clamp(4.5rem,6vw,7.4rem);margin-bottom:28px}.contact-main>p:not(.eyebrow){max-width:570px;margin-bottom:45px}.contact-form{display:flex;flex-direction:column;gap:9px;max-width:580px}.contact-form label{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;font-weight:600;margin-top:10px}.contact-form input,.contact-form textarea,.contact-form select{border:0;border-bottom:1px solid #a8a192;padding:16px 0;background:transparent;border-radius:0;color:var(--ink);outline:0;font-size:.93rem}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-bottom-color:#242720}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#868476}.form-submit{background:var(--dark);color:white;border:0;padding:20px 23px;display:flex;justify-content:space-between;margin-top:22px;text-transform:uppercase;letter-spacing:.11em;font-size:.76rem}.form-note{font-size:.73rem;color:#66685c;line-height:1.5;margin:8px 0 0}.contact-small{margin-top:70px;display:flex;justify-content:space-between;gap:20px;color:#676858;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.contact-small span:last-child{max-width:260px}
@media(max-width:1050px){.hero h1{font-size:clamp(4.4rem,7.3vw,7.5rem)}.hero-text{padding-left:9%}.intro-grid{grid-template-columns:58% 42%}.story-copy{padding-right:5%}.experience-row{gap:5%}.contact-main{padding-left:9%;padding-right:9%}}
@media(max-width:760px){.site-header{height:70px;padding:0 5%}.wordmark{font-size:.83rem}.mark{margin-left:5px}.nav-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:18px 6% 30px;box-shadow:0 15px 30px #0002;flex-direction:column;align-items:stretch;gap:0}.nav.is-open{display:flex}.nav a{padding:15px 0;border-bottom:1px solid #ccc5b7}.content-wrap{padding-left:6%;padding-right:6%}.hero{display:flex;flex-direction:column-reverse}.hero-photo{min-height:470px}.hero-text{padding:60px 7% 55px}.hero h1{font-size:clamp(4.2rem,12vw,6rem);margin:20px 0 23px}.hero-note{padding-top:45px}.hero-intro{font-size:.95rem}.intro-section{padding-top:100px;padding-bottom:110px}.intro-grid{display:block}.intro-grid h2{font-size:clamp(3rem,10vw,5rem)}.intro-side{padding:32px 0 0}.image-interlude{height:490px;min-height:0}.offer-section{padding-top:95px;padding-bottom:105px}.section-heading{align-items:start;flex-direction:column;gap:25px}.section-heading h2{font-size:3.8rem}.offer-grid{grid-template-columns:1fr;gap:26px}.offer-card img{aspect-ratio:5/4}.offer-title{padding:17px 0}.quote-section{padding:95px 4%}.quote-section blockquote{font-size:clamp(2.8rem,8vw,4.8rem)}.story-peek{display:flex;flex-direction:column;gap:35px;padding-top:90px;padding-bottom:100px}.story-img img{height:520px;max-height:none}.story-copy h2{font-size:3.7rem}.end-cta{padding:100px 6%}.end-cta h2{font-size:3.8rem}.footer{padding:58px 6% 25px}.footer-top{flex-direction:column;padding-bottom:45px}.footer-links{flex-wrap:wrap;gap:17px}.footer-bottom{flex-direction:column;gap:12px}.page-hero{display:block;padding-top:85px;padding-bottom:50px}.page-hero h1{font-size:5.2rem}.page-hero>p:last-child{padding-top:25px;max-width:580px}.experience-row,.experience-row.reverse{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-top:50px;padding-bottom:65px}.experience-row>img,.experience-row.reverse>img{order:0;height:460px;max-height:none}.experience-row .experience-copy,.experience-row.reverse .experience-copy{order:1;padding:0;max-width:none}.experience-copy h2{font-size:4.2rem}.note-panel{padding:110px 8%}.about-hero{display:flex;flex-direction:column}.about-photo{height:480px}.about-hero-text{padding:65px 7% 85px}.about-hero-text h1{font-size:4.4rem}.about-body{padding-top:95px;padding-bottom:80px}.about-body-grid{display:block}.about-body-grid h2{font-size:4.2rem;margin-bottom:35px}.about-body-grid>div{padding-right:0}.about-gallery{display:block}.about-gallery img{height:420px;margin-bottom:15px}.values{padding-top:90px;padding-bottom:100px}.values-grid{grid-template-columns:1fr;gap:32px}.values-grid h3{margin-top:15px}.contact-layout{display:flex;flex-direction:column}.contact-visual{min-height:440px}.contact-over-image{font-size:2.4rem}.contact-main{padding:75px 7% 100px}.contact-main h1{font-size:5rem}.contact-small{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Booking-focused additions */
.business-strip{background:#dbd1be;padding:105px 8%;display:grid;grid-template-columns:62% 38%;align-items:end;gap:50px}
.business-strip h2{font-size:clamp(3.1rem,5vw,6.4rem)}.business-strip>div:last-child{max-width:420px;padding-bottom:12px}.business-strip>div:last-child p{margin:0 0 34px}
.contact-direct{margin-top:36px;padding-top:28px;border-top:1px solid #bcb09f}.contact-direct>span{display:block;font-size:.65rem;letter-spacing:.16em;margin-bottom:11px;font-weight:600}.contact-direct>a{font-family:Newsreader,Georgia,serif;font-size:clamp(1.35rem,2.1vw,2.3rem);overflow-wrap:anywhere;border-bottom:1px solid #8b7d67}.contact-direct>p{font-size:.75rem;color:#676858;max-width:460px;margin-top:18px}
.teams-hero{min-height:690px;display:grid;grid-template-columns:51% 49%;background:#252820;color:#f2eadc}
.teams-hero-copy{padding:94px 10% 105px 15%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.teams-hero h1{font-size:clamp(4.5rem,6.5vw,9rem);margin:30px 0}.teams-hero h1 i{color:#c9baa0}.teams-hero-copy>p:not(.eyebrow){max-width:470px;margin:0 0 35px;color:#ddd2c2}.teams-hero-image{min-height:690px}.teams-hero-image img{height:100%;max-height:800px;object-position:center;filter:saturate(.75)}
.teams-intro{padding-top:145px;padding-bottom:155px}.teams-two-col{display:grid;grid-template-columns:61% 39%;gap:55px}.teams-two-col h2{font-size:clamp(3.5rem,5vw,6rem)}.teams-two-col>div{padding:20px 10% 0 0}.teams-two-col p{margin-top:0}
.teams-options{padding-top:105px;padding-bottom:140px;background:#ded7ca}.teams-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.teams-options-grid article img{aspect-ratio:5/4}.teams-options-grid article>div{padding:24px 0}.teams-options-grid article span{font-size:.66rem;letter-spacing:.13em}.teams-options-grid h3{font-size:2.7rem;margin:15px 0 15px}.teams-options-grid p{margin:0 0 24px}.teams-options-grid .text-link{font-size:.67rem}
.teams-process{display:grid;grid-template-columns:50% 50%;gap:55px;padding-top:145px;padding-bottom:155px}.teams-process h2{font-size:clamp(3.4rem,4.6vw,6rem)}.steps{border-top:1px solid #b2a695}.steps>div{display:grid;grid-template-columns:50px auto;column-gap:18px;border-bottom:1px solid #b2a695;padding:30px 0}.steps span{font-size:.71rem;margin-top:7px}.steps h3{font-size:2rem}.steps p{grid-column:2;margin:9px 0 0}
.teams-banner{height:520px;position:relative;display:flex;align-items:end;background:#1c1f1a;color:#fff}.teams-banner:after{content:"";background:linear-gradient(0deg,#141711b8,transparent 85%);position:absolute;inset:0}.teams-banner>img{position:absolute;inset:0;width:100%;height:100%;filter:saturate(.7)}.teams-banner>div{position:relative;z-index:1;padding:55px 8%}.teams-banner h2{font-size:clamp(3.1rem,5vw,6rem)}
.teams-faq{display:grid;grid-template-columns:37% 63%;gap:60px;padding-top:125px;padding-bottom:135px}.faq details{border-top:1px solid #b3a995;padding:24px 4px}.faq details:last-child{border-bottom:1px solid #b3a995}.faq summary{cursor:pointer;font-family:Newsreader,Georgia,serif;font-size:2rem;line-height:1.1;list-style:none;position:relative;padding-right:24px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:0;font-family:Arial;font-size:1.3rem;font-weight:300}.faq details[open] summary:after{content:"−"}.faq p{max-width:530px;margin-bottom:0}
@media(max-width:1050px){.business-strip{grid-template-columns:58% 42%;gap:30px}.teams-hero-copy{padding-left:10%;padding-right:7%}.teams-two-col{gap:30px}.teams-options-grid h3{font-size:2.2rem}}
@media(max-width:760px){.business-strip{display:block;padding:88px 6%}.business-strip>div:last-child{padding-top:32px}.teams-hero{display:flex;flex-direction:column-reverse}.teams-hero-image{min-height:390px;height:390px}.teams-hero-copy{padding:70px 7% 80px}.teams-hero h1{font-size:clamp(4.2rem,12vw,6rem)}.teams-intro{padding-top:95px;padding-bottom:105px}.teams-two-col,.teams-process,.teams-faq{display:block}.teams-two-col h2,.teams-process h2{font-size:3.8rem}.teams-two-col>div{padding-top:25px}.teams-options{padding-top:85px;padding-bottom:90px}.teams-options-grid{grid-template-columns:1fr;gap:22px}.teams-options-grid article img{aspect-ratio:5/3}.teams-process{padding-top:95px;padding-bottom:100px}.steps{margin-top:50px}.teams-banner{height:430px}.teams-banner>div{padding:42px 6%}.teams-faq{padding-top:95px;padding-bottom:110px}.teams-faq .faq{margin-top:30px}}

/* Netlify booking form and follow-up page */
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}
.form-note a{text-decoration:underline;text-underline-offset:3px}
.simple-page{min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:940px;margin:0 auto;padding:120px 8%}
.simple-page h1{font-size:clamp(4rem,7vw,7rem);margin-bottom:30px}.simple-page p:not(.eyebrow){max-width:650px;margin:0 0 24px}.simple-page h2{font-size:2.7rem;margin:30px 0 20px}.simple-page ul{line-height:1.8;margin-bottom:28px}.simple-page .text-link{margin-top:20px}
@media (max-width:760px){.simple-page{padding:90px 7%}.simple-page h1{font-size:4.1rem}}
