:root{--ivory:#f7f3ec;--sage:#52675d;--sage-deep:#35483f;--copper:#b47c60;--ink:#24332d;--white:#fff;--muted:#68746e;--line:rgba(36,51,45,.17);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--page:1280px;--gutter:clamp(1.25rem,6vw,6.75rem);--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}body,main{overflow-x:clip}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--sage);color:var(--white)}.skip-link{position:fixed;z-index:99;top:8px;left:8px;padding:12px 16px;background:var(--ink);color:white;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;z-index:20;top:0;background:rgba(247,243,236,.93);border-bottom:1px solid transparent;transition:background .3s,border-color .3s,box-shadow .3s;backdrop-filter:blur(12px)}.site-header.is-scrolled{background:rgba(247,243,236,.97);border-color:var(--line);box-shadow:0 6px 24px rgba(36,51,45,.04)}.header-inner{max-width:1440px;margin:auto;min-height:82px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;flex-direction:column;line-height:1.05;color:var(--ink)}.wordmark span{font:500 25px/1 var(--serif);letter-spacing:-.025em}.wordmark small{margin-top:7px;font-size:8px;font-weight:700;letter-spacing:.2em}.site-nav{display:flex;align-items:center;gap:clamp(1rem,2.8vw,2.65rem)}.site-nav>a:not(.button){font-size:11px;letter-spacing:.03em;transition:color .2s}.site-nav>a:not(.button):hover,.footer-main a:hover{color:var(--copper)}.menu-toggle{display:none}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:20px;padding:0 23px;background:var(--sage);color:var(--white);font-size:11px;font-weight:700;letter-spacing:.035em;border:1px solid var(--sage);transition:background .25s,color .25s,transform .25s,border-color .25s}.button:hover{background:var(--sage-deep);border-color:var(--sage-deep);transform:translateY(-2px)}.button span{font-size:15px}.button-small{min-height:42px;padding:0 16px}.text-link{display:inline-flex;align-items:center;gap:12px;padding-bottom:5px;border-bottom:1px solid var(--copper);font-size:11px;font-weight:700;transition:gap .25s,color .25s}.text-link:hover{gap:18px;color:var(--sage)}.text-link span{color:var(--copper);font-size:15px}
.section-wrap{width:min(100%,var(--page));margin-inline:auto;padding-inline:var(--gutter)}.section-space{padding-block:clamp(5.2rem,10vw,9rem)}.hero{position:relative;min-height:min(740px,calc(100vh - 82px));display:grid;grid-template-columns:1fr .87fr;align-items:center;gap:5.5%;padding-top:50px;padding-bottom:72px}.hero-copy{max-width:590px;padding-block:42px}.eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 22px;font-size:9px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--sage)}.eyebrow>span{width:26px;height:1px;background:var(--copper)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:.98}h1{max-width:670px;margin-bottom:26px;font-size:clamp(3.5rem,6.3vw,6.2rem)}h1 em,h2 em{font-weight:400;color:var(--sage);font-style:italic}.hero-intro{max-width:480px;margin-bottom:30px;color:#52615a;font-size:13px;line-height:1.95}.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap}.hero-note{display:flex;align-items:center;gap:10px;margin:37px 0 0;color:var(--muted);font-size:10px;letter-spacing:.03em}.note-mark{color:var(--copper);font-size:17px}.hero-visual{position:relative;justify-self:end;width:min(100%,465px);height:clamp(460px,56vw,645px);padding:0 0 28px 28px}.hero-visual:before{position:absolute;content:"";inset:26px 26px 0 0;border:1px solid var(--copper)}.hero-visual img{position:relative;z-index:1;object-position:center 34%}.image-caption{position:absolute;z-index:2;right:0;bottom:0;display:flex;justify-content:space-between;width:calc(100% - 28px);padding:13px 0 0;background:var(--ivory);font-size:8px;letter-spacing:.14em;color:var(--sage)}.hero-seal{position:absolute;z-index:2;left:-34px;bottom:78px;width:92px;height:92px;border-radius:50%;background:var(--copper);color:white;display:grid;place-content:center;text-align:center;transform:rotate(-12deg);box-shadow:0 8px 25px #24332d20}.hero-seal span{font-size:8px;font-weight:700;line-height:1.5;letter-spacing:.12em}.hero-seal b{font-size:18px;font-weight:400}.hero-index{position:absolute;bottom:24px;left:var(--gutter);font-size:9px;color:var(--muted);letter-spacing:.14em}
.intro-band{display:flex;min-height:155px;align-items:center;justify-content:center;background:#eee9df;text-align:center}.intro-band p{margin:0;font:400 clamp(1.9rem,4vw,3rem)/1 var(--serif);letter-spacing:-.02em}.intro-band i{color:var(--sage)}
.about{display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:clamp(3.5rem,9vw,8rem)}.about-visual{position:relative;width:100%;max-width:485px;height:clamp(420px,54vw,650px);padding:0 24px 24px 0}.about-visual:after{position:absolute;content:"";right:0;top:25px;bottom:0;width:78%;border:1px solid var(--copper)}.about-visual img{position:relative;z-index:1;object-position:center}.vertical-label{position:absolute;z-index:2;right:-20px;top:26px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:8px;letter-spacing:.2em;color:var(--sage);background:var(--ivory);padding:10px 0}.image-number{position:absolute;z-index:2;bottom:0;left:0;padding:9px 14px;background:var(--ivory);font-size:9px;letter-spacing:.12em}.about-copy{max-width:505px;padding-block:24px}.about-copy h2,.section-heading h2,.services h2,.social-proof h2,.contact h2,.location h2,.final-cta h2{font-size:clamp(3rem,5vw,5.2rem);margin-bottom:24px}.about-copy>p:not(.eyebrow){font-size:12px;line-height:2;color:#58655f;margin-bottom:17px}.credential{display:flex;align-items:center;gap:14px;margin:28px 0 26px;padding:16px 0;border-block:1px solid var(--line)}.credential-icon{display:grid;width:42px;height:42px;place-content:center;border:1px solid var(--copper);border-radius:50%;color:var(--copper);font-size:18px}.credential span:last-child{display:flex;flex-direction:column}.credential b{font-size:11px}.credential small{color:var(--muted);font-size:10px;margin-top:2px}
.care-values{padding-inline:var(--gutter);background:var(--sage);color:var(--white)}.section-heading{text-align:center;max-width:650px;margin:0 auto 62px}.eyebrow-light{color:#e1e6e0}.section-heading h2{margin-bottom:12px}.section-heading h2 em,.location h2 em,.final-cta h2 em{color:#d3a38b}.section-heading>p:last-child{color:#e1e6e0;font-size:12px}.value-grid{width:min(100%,1120px);margin:auto;display:grid;grid-template-columns:repeat(3,1fr)}.value-item{position:relative;min-height:260px;padding:20px clamp(20px,4vw,55px);border-left:1px solid #ffffff35}.value-item:last-child{border-right:1px solid #ffffff35}.value-index{position:absolute;top:17px;left:clamp(20px,4vw,55px);font-size:9px;letter-spacing:.15em;color:#d3a38b}.line-icon{display:block;margin:28px 0 17px;color:#d3a38b;font-size:29px;font-weight:400}.value-item h3{font:500 1.9rem/1 var(--serif);margin-bottom:14px}.value-item p{max-width:290px;font-size:11px;line-height:1.9;color:#e1e6e0;margin-bottom:0}
.services{padding-bottom:clamp(5rem,8vw,7rem)}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:28px}.services-heading h2{margin:0}.services-heading>p{max-width:320px;margin:0 0 9px;color:var(--muted);font-size:11px;line-height:1.9}.preview-note{display:flex;gap:12px;align-items:flex-start;max-width:665px;margin:0 0 36px;padding:13px 16px;border-left:2px solid var(--copper);background:#eee9df;color:#58655f;font-size:10px;line-height:1.7}.preview-note>span{color:var(--copper);font-size:16px}.preview-note p{margin:0}.preview-note b{color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:#fff;display:flex;flex-direction:column;min-width:0}.service-image{position:relative;overflow:hidden;aspect-ratio:1.35/1;background:#e4ddd1}.service-image img{transition:transform .7s var(--ease);object-position:center}.service-card:hover .service-image img{transform:scale(1.035)}.service-count{position:absolute;right:13px;bottom:0;padding:8px 11px;background:var(--ivory);color:var(--sage);font-size:9px;letter-spacing:.12em}.service-copy{display:flex;flex-direction:column;align-items:flex-start;padding:24px 23px 26px;flex:1}.card-kicker{margin-bottom:12px;color:var(--copper);font-size:8px;font-weight:700;letter-spacing:.12em;line-height:1.6}.service-copy h3{margin-bottom:12px;font:500 2rem/1 var(--serif);letter-spacing:-.02em}.service-copy>p:not(.card-kicker){margin-bottom:24px;color:#637069;font-size:10px;line-height:1.9}.service-copy .text-link{margin-top:auto;font-size:10px}
.social-proof{background:#eee9df}.social-inner{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:35px}.quote-mark{align-self:start;color:var(--copper);font:400 9rem/.8 var(--serif)}.social-proof h2{max-width:700px;margin-bottom:15px;font-size:clamp(2.8rem,4.5vw,4.5rem)}.social-proof p:not(.eyebrow){max-width:540px;margin-bottom:20px;color:#59675f;font-size:12px}.review-aside{display:flex;flex-direction:column;gap:13px;border-left:1px solid #cfc8bc;padding:10px 0 10px 25px}.review-aside span{font-size:8px;font-weight:700;letter-spacing:.17em;color:var(--sage)}
.contact{display:grid;grid-template-columns:1fr .72fr;align-items:center;gap:10%;}.contact-copy{max-width:600px}.contact h2{margin-bottom:20px}.contact-copy>p:not(.eyebrow){max-width:450px;margin-bottom:26px;color:#59675f;font-size:12px}.instagram-link{display:flex;align-items:center;gap:9px;width:max-content;margin-top:23px;font-size:10px;font-weight:600}.instagram-link>span:last-child{color:var(--copper)}.instagram-icon{font-size:18px;color:var(--copper)}.contact-card{position:relative;overflow:hidden;min-height:295px;padding:36px;background:#eae4d9}.contact-card .card-kicker{display:block}.contact-number{position:relative;z-index:1;display:block;margin:12px 0 23px;font:500 clamp(1.9rem,3.5vw,3rem)/1.1 var(--serif);white-space:nowrap}.contact-rule{display:block;width:44px;height:1px;background:var(--copper);margin-bottom:17px}.contact-card>p{max-width:260px;color:#637069;font-size:11px}.contact-flower{position:absolute;right:-20px;bottom:-82px;font-size:210px;line-height:1;color:#52675d0c}
.location{display:grid;grid-template-columns:.8fr 1.2fr;min-height:560px;padding:0;background:var(--sage-deep);color:var(--white)}.location-info{align-self:center;padding:clamp(2.5rem,7vw,6rem) clamp(1.5rem,7vw,6.5rem)}.location h2{margin-bottom:24px}.location address{margin-bottom:27px;color:#e1e6e0;font-size:12px;line-height:2;font-style:normal}.button-light{background:var(--ivory);border-color:var(--ivory);color:var(--ink)}.button-light:hover{background:var(--white);border-color:var(--white);color:var(--ink)}.map-frame{min-height:560px;background:#d7d4cc}.map-frame iframe{display:block;width:100%;height:100%;min-height:560px;border:0;filter:saturate(.75)}
.final-cta{position:relative;isolation:isolate;overflow:hidden;max-width:none;padding-block:clamp(5.5rem,10vw,9rem);background:var(--sage);text-align:center;color:var(--white)}.final-cta:before{position:absolute;z-index:-1;content:"";width:540px;height:540px;border:1px solid #ffffff20;border-radius:50%;top:-330px;left:calc(50% - 270px);box-shadow:0 0 0 45px #ffffff08,0 0 0 95px #ffffff05}.final-ornament{position:absolute;right:9%;top:16%;font-size:60px;color:#d3a38b55}.final-cta .eyebrow{justify-content:center}.final-cta h2{max-width:800px;margin:0 auto 19px}.final-cta>p:not(.eyebrow){max-width:525px;margin:0 auto 28px;color:#e1e6e0;font-size:12px}.site-footer{padding:54px var(--gutter) 20px;background:#273a32;color:white}.footer-main{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr .8fr .7fr;align-items:start;gap:35px;padding-bottom:40px}.footer-wordmark{color:white}.footer-main>p{font-size:10px;line-height:1.9;color:#cbd3ce}.footer-main nav,.footer-contact{display:flex;flex-direction:column;gap:9px}.footer-main nav a,.footer-contact a{font-size:10px;color:#e1e6e0;transition:color .2s}.footer-bottom{max-width:1280px;margin:auto;padding-top:16px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:20px;color:#cbd3ce;font-size:8px;letter-spacing:.02em}
:focus-visible{outline:3px solid var(--copper);outline-offset:4px}
