@font-face{font-family:Geist;src:url(../fonts/geist.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--ink:#2b2527;--plum:#513744;--clay:#b77a63;--sand:#d8c2b3;--cream:#f7f2ec;--paper:#fffdf9;--muted:#6f6464;--line:#2b252722;--white:#fffaf5}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:Geist,Arial,sans-serif;margin:0;font-size:16px}
a{color:inherit;text-decoration:none}
p{line-height:1.7}
img{display:block;max-width:100%}
.skip-link{background:var(--ink);color:#fff;left:16px;padding:10px 14px;position:fixed;top:-80px;z-index:20}.skip-link:focus{top:12px}
.site-header{align-items:center;background:#f7f2ecf2;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;height:82px;padding:0 clamp(24px,6vw,96px);position:absolute;top:0;width:100%;z-index:10}
.brand{align-items:center;display:flex;gap:12px;width:max-content}.brand>span{align-items:center;border:1px solid var(--clay);color:var(--plum);display:flex;font-family:Georgia,serif;font-size:17px;height:42px;justify-content:center;width:42px}.brand strong{font-size:14px;line-height:1.05}.brand small{color:var(--muted);display:block;font-size:9px;font-weight:500;letter-spacing:.13em;margin-top:5px;text-transform:uppercase}
nav{display:flex;gap:30px}nav a{color:var(--muted);font-size:12px;transition:color .2s}nav a:hover{color:var(--plum)}
.text-cta{border-bottom:1px solid var(--clay);color:var(--plum);font-size:12px;font-weight:700;justify-self:end;padding-bottom:4px}
.hero{display:grid;grid-template-columns:49% 51%;min-height:980px;padding-top:82px;position:relative}.hero-copy{align-self:center;padding:100px clamp(30px,7vw,112px)}
.eyebrow,.section-label{color:var(--clay);font-size:10px;font-weight:750;letter-spacing:.16em;margin:0 0 28px;text-transform:uppercase}
h1,h2,h3{margin:0}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.75rem,2rem + 2.6vw,4.25rem);font-weight:400;letter-spacing:-.045em;line-height:1.02}.hero h1 em{color:var(--clay);font-weight:400}
.hero-intro{color:var(--muted);font-size:17px;margin:34px 0;max-width:600px}.button{align-items:center;background:var(--plum);color:var(--white);display:inline-flex;font-size:11px;font-weight:750;gap:34px;justify-content:space-between;letter-spacing:.1em;min-height:58px;padding:0 24px;text-transform:uppercase;transition:transform .2s}.button:hover{transform:translateY(-3px)}
.hero-portrait{align-self:start;aspect-ratio:1152/1400;background:var(--sand);height:auto;margin:0;min-height:0;position:sticky;top:16px}.hero-portrait img{height:100%;object-fit:contain;width:100%}.hero-portrait figcaption{background:var(--white);bottom:22px;color:var(--muted);display:flex;font-size:9px;justify-content:space-between;left:22px;letter-spacing:.12em;padding:14px 16px;position:absolute;right:22px;text-transform:uppercase}
.hero-note{bottom:34px;color:var(--muted);font-size:10px;left:clamp(30px,7vw,112px);letter-spacing:.12em;margin:0;position:absolute;text-transform:uppercase}
.opening{background:var(--paper);padding:clamp(110px,14vw,210px) clamp(28px,11vw,170px)}.opening h2,.section-heading h2,.care h2,.about h2,.faq h2,.final-cta h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.25rem,1.75rem + 1.8vw,3.625rem);font-weight:400;letter-spacing:-.04em;line-height:1.08}.opening h2{max-width:920px}.opening-copy{border-top:1px solid var(--line);display:grid;gap:8vw;grid-template-columns:1fr 1fr;margin-left:auto;margin-top:70px;max-width:950px;padding-top:30px}.opening-copy p{color:var(--muted);margin:0}
.services{background:var(--plum);color:var(--white);padding:clamp(100px,11vw,170px) clamp(24px,7vw,110px)}.section-heading{align-items:end;display:flex;justify-content:space-between;margin-bottom:72px}.section-heading .section-label{color:var(--sand)}.section-heading h2{max-width:800px;text-align:right}
.service-grid{display:grid;gap:1px;grid-template-columns:repeat(2,minmax(0,1fr));margin:auto;max-width:1120px}.service-card{aspect-ratio:1;background:#624454;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,4vw,58px);transition:background .25s}.service-card:nth-child(2),.service-card:nth-child(3){background:#5b3e4c}.service-card:hover{background:#6d4b5c}.service-card>span{color:var(--sand);font-size:10px;letter-spacing:.14em}.service-card h3{font-family:Georgia,serif;font-size:clamp(1.5rem,1.2rem + 1vw,2.125rem);font-weight:400;line-height:1.12}.service-card p{color:#dfd1d6;font-size:14px;margin:20px 0 0;max-width:410px}
.care{display:grid;grid-template-columns:.9fr 1.1fr;min-height:900px}.care-intro{background:var(--sand);padding:clamp(90px,10vw,150px) clamp(30px,7vw,105px)}.care-intro .section-label{color:var(--plum)}.care-intro>p:last-of-type{color:#5f5151;margin-top:45px;max-width:520px}.care-steps{list-style:none;margin:0;padding:clamp(80px,9vw,140px) clamp(30px,7vw,105px)}.care-steps li{border-bottom:1px solid var(--line);display:grid;gap:28px;grid-template-columns:48px 1fr;padding:28px 0}.care-steps li>span{color:var(--clay);font-size:10px;letter-spacing:.12em}.care-steps h3{font-family:Georgia,serif;font-size:24px;font-weight:400}.care-steps p{color:var(--muted);font-size:14px;margin:8px 0 0}
.about{background:var(--ink);color:var(--white);display:grid;grid-template-columns:.7fr 1.3fr;min-height:850px}.about-number{align-items:center;border-right:1px solid #ffffff26;color:var(--clay);display:flex;font-family:Georgia,serif;font-size:clamp(100px,18vw,280px);justify-content:center;letter-spacing:-.1em;overflow:hidden}.about-copy{align-self:center;max-width:800px;padding:clamp(80px,10vw,150px) clamp(32px,7vw,110px)}.about-copy h2{font-size:clamp(2.4rem,1.8rem + 2vw,4.25rem)}.about-lead{color:var(--sand);font-family:Georgia,serif;font-size:20px;line-height:1.45;margin:40px 0 26px}.about-copy>p:not(.section-label):not(.about-lead){color:#c9bec0;max-width:650px}.button-light{background:var(--white);color:var(--plum);margin-top:30px}
.faq{background:var(--paper);display:grid;gap:9vw;grid-template-columns:.8fr 1.2fr;padding:clamp(100px,12vw,180px) clamp(28px,9vw,140px)}.faq-heading h2{font-size:clamp(2.25rem,1.8rem + 1.6vw,3.375rem)}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:24px 0}summary{cursor:pointer;display:flex;font-size:16px;font-weight:650;gap:20px;justify-content:space-between;list-style:none}summary::-webkit-details-marker{display:none}summary span{color:var(--clay);font-size:22px;font-weight:300;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);font-size:14px;margin-bottom:0;max-width:650px;padding-right:45px}
.final-cta{background:var(--clay);padding:clamp(110px,14vw,210px) clamp(28px,10vw,155px);text-align:center}.final-cta .section-label{color:var(--plum)}.final-cta h2{margin:0 auto 50px;max-width:850px}.final-cta .button{background:var(--ink)}
footer{align-items:center;background:var(--plum);color:var(--white);display:grid;font-size:9px;gap:30px;grid-template-columns:1fr auto auto auto;letter-spacing:.08em;padding:36px clamp(24px,6vw,96px);text-transform:uppercase}.brand-footer small{color:#d7c7cc}.brand-footer>span{color:var(--white)}
.back-top,.footer-top{align-items:center;border-top:1px solid currentColor;display:flex;font-size:10px;font-weight:700;gap:9px;letter-spacing:.11em;margin-top:64px;opacity:.72;padding-top:13px;text-transform:uppercase;width:max-content}.back-top:hover,.footer-top:hover{opacity:1}.back-top-light{color:var(--white)}.footer-top{border-top:0;margin-top:0;padding-top:0}
.floating-cta{background:var(--white);border:1px solid var(--line);bottom:18px;box-shadow:0 10px 30px #2b252728;color:var(--plum);font-size:10px;font-weight:750;letter-spacing:.08em;padding:15px 19px;position:fixed;right:20px;text-transform:uppercase;z-index:12}
a:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:4px}
@media(max-width:900px){.site-header{grid-template-columns:1fr 1fr}nav{display:none}.hero{grid-template-columns:1fr}.hero-portrait{aspect-ratio:1152/1400;height:auto;min-height:0;position:relative;top:auto}.hero-note{display:none}.opening-copy{gap:35px}.care{grid-template-columns:1fr}.about{grid-template-columns:1fr}.about-number{border-bottom:1px solid #ffffff26;border-right:0;min-height:340px}.faq{grid-template-columns:1fr}.section-heading{align-items:start;display:block}.section-heading h2{margin-top:28px;text-align:left}}
@media(max-width:620px){body{font-size:16px}.site-header{height:68px;padding:0 18px}.brand>span{height:36px;width:36px}.brand strong{font-size:12px}.text-cta{font-size:10px}.hero{padding-top:68px}.hero-copy{padding:78px 22px 65px}.hero h1{font-size:clamp(2.5rem,2.1rem + 2vw,3.25rem)}.hero-intro{font-size:16px}.hero-portrait{aspect-ratio:1152/1400;height:auto}.hero-portrait figcaption{bottom:14px;left:14px;right:14px}.opening,.services,.faq,.final-cta{padding:85px 22px}.opening h2,.section-heading h2,.care h2,.about h2,.faq h2,.final-cta h2{font-size:clamp(2rem,1.85rem + .8vw,2.25rem)}.opening-copy{grid-template-columns:1fr;margin-top:45px}.service-grid{grid-template-columns:1fr}.service-card{aspect-ratio:1;padding:30px}.service-card h3{font-size:28px}.care-intro,.care-steps{padding:75px 22px}.about-number{font-size:120px;min-height:240px}.about-copy{padding:75px 22px}.about-copy h2{font-size:38px}.about-lead{font-size:19px}.faq{gap:50px}footer{align-items:start;grid-template-columns:1fr;padding:38px 22px}.footer-top{margin-top:8px}.floating-cta{bottom:12px;right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
