
:root{--ink:#25202b;--plum:#39283f;--wine:#614b63;--muted:#746c72;--cream:#f8f6f1;--sand:#eae4d9;--gold:#ad8863;--line:#ddd6cd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.serif{font-family:'Playfair Display',Georgia,serif;font-weight:400}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700;color:var(--gold)}.wrap{max-width:1320px;margin:auto;padding-left:5%;padding-right:5%}.top{background:var(--plum);color:#f6f1e8;padding:11px 5%;display:flex;justify-content:space-between;gap:20px;font-size:12px}.top a:hover{text-decoration:underline}.nav{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:13px 5%;gap:24px;border-bottom:1px solid #eee7df;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand img{width:200px;max-height:75px;object-fit:contain}.navlinks{display:flex;align-items:center;gap:31px;font-size:13px;font-weight:600}.navlinks a:hover{color:var(--gold)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:100px;padding:16px 24px;border:1px solid var(--plum);background:var(--plum);color:white;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;transition:.25s}.pill:hover{background:#5b4561;transform:translateY(-2px)}.pill.light{background:transparent;color:var(--plum)}.pill.light:hover{background:#fff}.mobileToggle{display:none;background:transparent;border:0;font-size:26px}.hero{display:grid;grid-template-columns:51% 49%;min-height:660px;background:#f1ede6}.heroText{padding:100px 6% 90px 10%;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(55px,6.3vw,103px);letter-spacing:-.065em;line-height:1.07;margin:20px 0 26px}.hero h1 em{font-weight:400;color:var(--wine)}.hero p{max-width:470px;font-size:16px;line-height:1.85;color:#615c60}.heroActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.heroPhoto{position:relative;min-height:590px;overflow:hidden;background:#d5cbbf}.heroPhoto img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.heroPhoto:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(33,28,30,.38),transparent 55%)}.heroPhoto .photoCaption{position:absolute;z-index:1;bottom:32px;left:36px;color:white;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.introBand{background:#fff;border-bottom:1px solid var(--line)}.introInner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:29px;padding-bottom:29px}.introInner p{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(20px,2.2vw,31px)}.introInner span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.section{padding:110px 0}.sectionHead{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:43px}.section h2{font-size:clamp(37px,4.5vw,66px);letter-spacing:-.04em;line-height:1.14;margin:15px 0 0}.sectionLead{color:var(--muted);max-width:430px;line-height:1.8;font-size:15px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{background:#fff;border:1px solid #e9e3db;padding:32px;min-height:245px;display:flex;flex-direction:column;justify-content:space-between;transition:.25s}.service:hover{transform:translateY(-5px);box-shadow:0 14px 36px #30263112}.service .num{color:var(--gold);font-size:12px;letter-spacing:.15em}.service h3{font:400 28px 'Playfair Display',Georgia,serif;margin:28px 0 12px}.service p{font-size:14px;color:#726b71;line-height:1.7;margin:0}.story{background:var(--plum);color:white;display:grid;grid-template-columns:48% 52%;min-height:570px}.storyImg{background:#bcb1a5;position:relative}.storyImg img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.storyText{padding:90px 10%;display:flex;flex-direction:column;justify-content:center}.storyText h2{font:400 clamp(42px,4.6vw,69px)/1.14 'Playfair Display',Georgia,serif;margin:15px 0 20px;letter-spacing:-.04em}.storyText p{line-height:1.9;color:#e7dfe7;max-width:560px}.storyText .eyebrow{color:#d4b99c}.storyText .pill{background:#f7f2ea;color:var(--plum);border-color:#f7f2ea;align-self:start;margin-top:24px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:48px}.step{border-top:1px solid var(--gold);padding-top:25px}.step b{font-size:12px;color:var(--gold);letter-spacing:.15em}.step h3{font:400 28px 'Playfair Display',Georgia,serif;margin:24px 0 12px}.step p{line-height:1.8;color:var(--muted);font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.imageTall{height:520px;background:#d9d1c8}.imageTall img{width:100%;height:100%;object-fit:cover}.details h2{font:400 clamp(38px,4vw,58px)/1.15 'Playfair Display',Georgia,serif;margin:18px 0}.details p{line-height:1.9;color:var(--muted)}.detailRows{border-top:1px solid var(--line);margin-top:26px}.detailRows div{padding:17px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:14px}.detailRows span{color:var(--gold)}.contact{background:#eae2da}.contactGrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px}.contact h2{font:400 clamp(42px,4vw,66px)/1.15 'Playfair Display',Georgia,serif;margin:18px 0}.contact p{line-height:1.85;color:#605960}.contactLines{display:grid;gap:16px;margin-top:40px;font-size:14px}.form{background:#fff;padding:45px;box-shadow:0 15px 50px #2b1b2510}.form h3{font:400 30px 'Playfair Display',Georgia,serif;margin:0 0 12px}.form p{font-size:13px;color:var(--muted);margin:0 0 25px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form label{font-size:12px;display:block;margin-bottom:7px;color:#4f4550}.form input,.form select,.form textarea{width:100%;padding:13px;border:1px solid #d9d2cd;border-radius:0;background:#fff;color:var(--ink)}.form textarea{min-height:90px;resize:vertical}.form .full{grid-column:1/-1}.form .pill{margin-top:23px}.notice{font-size:12px!important;color:#766f73!important}.footer{background:#281f2d;color:#f4eee7;padding:55px 0 25px}.footGrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer img{width:190px;background:#fff;padding:5px;border-radius:3px}.footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#cbb6a5}.footer p,.footer a{font-size:13px;color:#e2d7df;line-height:2}.footer a:hover{color:white;text-decoration:underline}.copyright{border-top:1px solid #ffffff22;margin-top:35px;padding-top:20px;font-size:11px;color:#c6b9c3}.reveal{animation:appear .8s ease both}@keyframes appear{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(max-width:850px){.top{display:none}.nav{padding:12px 5%}.brand img{width:150px}.mobileToggle{display:block}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:22px;flex-direction:column;align-items:start;box-shadow:0 15px 20px #0001}.navlinks.open{display:flex}.nav>.pill{display:none}.hero{grid-template-columns:1fr}.heroText{padding:70px 7%}.heroPhoto{min-height:410px}.heroPhoto img{position:absolute}.introInner{flex-direction:column;align-items:start}.section{padding:75px 0}.sectionHead{display:block}.services{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr}.storyImg{height:380px}.storyText{padding:60px 7%}.steps{grid-template-columns:1fr;gap:20px}.split,.contactGrid{grid-template-columns:1fr;gap:35px}.footGrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.hero h1{font-size:58px}.services{grid-template-columns:1fr}.service{min-height:190px}.fields{grid-template-columns:1fr}.form{padding:25px}.footGrid{grid-template-columns:1fr}.imageTall{height:330px}}

/* Refined masthead and opening composition. */
html{scroll-padding-top:115px}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.top{padding:10px 5%;font-size:11px;letter-spacing:.045em;background:#39283f}
.top-note{color:#e4d5c5;font-style:italic;font-family:'Playfair Display',Georgia,serif;font-size:13px}
.nav{padding:20px 5%;background:#fcfaf6;gap:28px;border-bottom:1px solid #dcd3c6}
.brand{flex-shrink:0;padding-right:26px;border-right:1px solid var(--line)}
.brand img{width:176px;max-height:68px;mix-blend-mode:multiply}
.navlinks{gap:24px;font-size:12px}
.navlinks>a{position:relative;padding:12px 0;white-space:nowrap}
.navlinks>a:after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.navlinks>a:hover:after,.navlinks>a:focus-visible:after{transform:scaleX(1)}
.nav>.pill{font-size:10px;white-space:nowrap;padding:15px 19px;border-radius:2px}
.nav>.pill span{font-size:19px;font-weight:400}
.mobileToggle{width:44px;height:44px;align-items:center;justify-content:center;color:var(--plum);border:1px solid var(--line);border-radius:50%;line-height:1}
.hero{background:#f1ede6;grid-template-columns:52% 48%;padding:26px 2.5% 26px 0;min-height:670px}
.heroText{padding:65px 9% 60px 10%}
.heroText>.eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;line-height:1.8;letter-spacing:.17em}
.heroText>.eyebrow:before{content:'';display:block;width:28px;height:1px;flex-shrink:0;background:var(--gold)}
.hero h1{font-size:clamp(58px,6.2vw,96px);margin:24px 0;line-height:1.08;letter-spacing:-.055em}
.hero h1 em{display:block}
.hero p{font-size:15px;max-width:390px}
.heroActions{gap:14px}
.heroActions .pill{font-size:10px;padding:17px 21px}
.heroPhoto{min-height:610px;border-radius:180px 3px 3px 3px}
.heroPhoto img{object-position:55% center}
.heroPhoto .photoCaption{bottom:30px;left:30px;letter-spacing:.17em}
.hero-signature{display:flex;align-items:center;gap:13px;margin-top:38px;color:var(--muted);font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.hero-signature:before{content:'';height:1px;width:32px;background:var(--gold)}
.location{background:#f8f6f1;border-top:1px solid var(--line);padding:45px 0}
.location-inner{display:grid;grid-template-columns:1fr 1.65fr;gap:50px;align-items:center}
.location h2{font:400 clamp(30px,3vw,42px)/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.035em;margin:12px 0 16px}
.location address{font-style:normal;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:22px}
.location-link{display:inline-flex;align-items:center;gap:18px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--gold);padding-bottom:8px}
.location-link:hover{color:var(--wine)}
.location-map{border:1px solid var(--line);background:var(--sand);height:260px;overflow:hidden;border-radius:3px}
.location-map iframe{display:block;width:100%;height:100%;border:0}
@media(min-width:1500px){.nav,.top{padding-left:max(5%,calc((100vw - 1400px)/2));padding-right:max(5%,calc((100vw - 1400px)/2))}}
@media(max-width:1100px){.nav{gap:18px;padding:16px 5%}.brand{border:0;padding:0}.brand img{width:155px}.navlinks{gap:16px;font-size:11px}.nav>.pill{padding:13px;font-size:9px}}
@media(max-width:950px){.top{display:none}.nav{padding:12px 5%}.brand img{width:150px}.mobileToggle{display:inline-flex;margin-left:auto}.nav>.pill{display:none}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:#fcfaf6;padding:20px 6% 28px;flex-direction:column;align-items:stretch;gap:3px;box-shadow:0 16px 24px #39283f12;border-bottom:1px solid var(--line)}.navlinks.open{display:flex}.navlinks>a{font-size:14px;padding:12px 0}.hero{grid-template-columns:1fr;padding:0}.heroText{padding:60px 7% 45px}.hero h1{font-size:clamp(58px,10vw,84px)}.heroPhoto{min-height:440px;margin:0 5% 25px;border-radius:130px 3px 3px 3px}.hero-signature{margin-top:28px}.location-inner{gap:28px;grid-template-columns:1fr 1.3fr}}
@media(max-width:560px){.heroText>.eyebrow{font-size:9px;letter-spacing:.12em}.hero h1{font-size:57px}.heroPhoto{min-height:350px}.heroPhoto .photoCaption{font-size:9px;left:23px}.location-inner{grid-template-columns:1fr;gap:25px}.location{padding:38px 0}.location-map{height:235px}.hero-signature{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.navlinks>a[aria-current="page"]{color:var(--wine)}.navlinks>a[aria-current="page"]:after{transform:scaleX(1)}
.pageHero{background:#eee7df;padding:75px 0 70px;border-bottom:1px solid var(--line)}.pageHero .wrap{max-width:1320px}.breadcrumb{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:35px;border-bottom:1px solid var(--gold);padding-bottom:5px}.pageHero h1{font:400 clamp(44px,6vw,78px)/1.12 'Playfair Display',Georgia,serif;letter-spacing:-.045em;max-width:900px;margin:20px 0 25px}.pageHero h1 em{color:var(--wine)}.pageHero p{max-width:660px;font-size:17px;line-height:1.85;color:#615c60}.editorial{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}.editorial h2{margin-top:12px}.editorial p{line-height:1.9;color:var(--muted);margin-top:0}.editorial h3{font:400 29px 'Playfair Display',Georgia,serif;margin:30px 0 15px}.communityBand{background:var(--plum);color:#fff}.communityBand p{color:#e7dfe7}.communityBand .eyebrow{color:#d4b99c}.communityBand .pill{background:var(--cream);color:var(--plum);margin-top:15px}.careList{padding:0;list-style:none}.careList li{border-top:1px solid var(--line);padding:20px 0;line-height:1.8;color:var(--muted)}.careList strong{color:var(--ink);display:block;font-weight:600}.pageCta{border-top:1px solid var(--line);padding:55px 0}.pageCta .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.pageCta h2{font:400 clamp(28px,3vw,40px) 'Playfair Display',Georgia,serif;margin:0 0 12px}.pageCta p{color:var(--muted);margin:0;line-height:1.8}.skipLink{position:absolute;left:15px;top:-100px;background:var(--cream);padding:15px;z-index:30}.skipLink:focus{top:15px}@media(max-width:850px){.editorial{grid-template-columns:1fr;gap:25px}.pageHero{padding:45px 0}.pageCta .wrap{align-items:start;flex-direction:column}}

/* Homepage: an introduction and a clear path into the detailed pages. */
.homepage .heroPhoto{border-radius:180px 3px 3px 3px}.homepage .heroPhoto img{object-position:50% center}.homeWelcomeGrid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.homeWelcomeCopy p,.homeCommunity p{font-size:16px;line-height:1.9;color:var(--muted);margin:0 0 22px}.homeWelcomeCopy .location-link{margin-top:10px}.homeExplore{padding:75px 0;background:#ece6dd;border-block:1px solid var(--line)}.homeExploreGrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.homeExplore h2{font-size:clamp(38px,4.5vw,62px);line-height:1.15;letter-spacing:-.04em;margin:18px 0 24px}.homeExploreIntro>p{max-width:300px;line-height:1.85;color:var(--muted);font-size:15px}.homePath{display:block;border-top:1px solid #cfc2b5;padding:26px 4px 30px;transition:background .2s}.homePath:last-child{border-bottom:1px solid #cfc2b5}.homePath:hover{background:#f8f6f180}.homePath h3{display:flex;justify-content:space-between;gap:20px;font:400 clamp(23px,2.4vw,31px)/1.3 'Playfair Display',Georgia,serif;margin:15px 0 12px}.homePath h3 span{color:var(--wine);transition:transform .2s}.homePath:hover h3 span{transform:translate(3px,-3px)}.homePath p{color:#655e64;font-size:14px;line-height:1.8;max-width:430px;margin:0}.homeCommunityGrid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.homeCommunity h2{margin-bottom:25px}.homeCommunityNote{padding:55px 40px;background:var(--plum);border-radius:110px 2px 2px 2px;text-align:center}.homeCommunityNote .eyebrow{color:#d4b99c}.homeCommunityNote p{font-size:clamp(40px,4.5vw,65px);line-height:1.25;letter-spacing:-.035em;color:var(--cream);margin:30px 0}.homeCommunityNote p em{color:#dac4b0}.homeNoteLine{display:block;border-top:1px solid #ffffff30;padding-top:23px;color:#e4d5c5;font-size:12px;letter-spacing:.04em}.homeInvitation{background:#eae2da;padding:65px 0}.homeInvitation>.wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.homeInvitation h2{font-size:clamp(38px,4.5vw,62px);letter-spacing:-.04em;margin:15px 0}.homeInvitation p{color:#655e64;line-height:1.85;max-width:460px}.homeInvitationActions{display:flex;flex-direction:column;align-items:start;gap:25px}@media(max-width:850px){.homeWelcomeGrid,.homeExploreGrid,.homeCommunityGrid{grid-template-columns:1fr;gap:35px}.homeExplore{padding:55px 0}.homeExploreIntro>p{max-width:100%}.homeCommunityNote{padding:45px 25px}.homeInvitation>.wrap{flex-direction:column;align-items:start;gap:22px}.homeInvitation{padding:50px 0}} 
