:root{--purple:#613770;--deep:#38213f;--lilac:#c8abd9;--light:#f4edf7;--paper:#fffdfd;--ink:#342a38;--muted:#6e6173;--line:#ded2e3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.75 Arial,Helvetica,sans-serif}a{color:var(--purple);text-underline-offset:6px;text-decoration-thickness:1px;text-decoration-skip-ink:none}a:hover{text-decoration-thickness:2px}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--purple);outline-offset:6px}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.header{display:flex;align-items:center;gap:36px;padding-block:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:18px;text-decoration:none;color:var(--purple)}.brand img{width:82px;height:72px;object-fit:contain}.brand>span{font:1.6rem/1.15 Georgia,serif}.brand>span>span{display:block;font: .88rem/1.7 Arial,sans-serif;letter-spacing:.04em;margin-top:4px}nav{display:flex;gap:28px;margin-left:auto;font-size:.94rem}nav a{text-decoration:none;color:var(--ink)}nav a:hover{text-decoration:underline}.languages{display:flex;align-items:center;gap:4px;font-size:.88rem}.languages button{border:0;background:none;padding:8px 4px;cursor:pointer;color:var(--muted)}.languages button[aria-pressed=true]{color:var(--purple);text-decoration:underline;text-underline-offset:6px}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:85px;align-items:center;padding-block:64px 80px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.8rem;font-weight:600;color:var(--purple);margin:0 0 22px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;margin:0;letter-spacing:-.035em}h1{font-size:clamp(3rem,5.5vw,5rem)}h1 em,h2 em{font-weight:400;color:var(--purple)}h2{font-size:clamp(2.3rem,4vw,3.6rem)}h3{font-size:1.4rem;letter-spacing:-.02em}.intro{max-width:430px;font-size:1.1rem;color:var(--muted);margin:28px 0 30px}.actions{display:flex;gap:28px;flex-wrap:wrap}.text-link{font-size:.96rem}.hero-photo{margin:0;border:1px solid var(--line);padding:13px 13px 0;box-shadow:20px 20px 0 var(--light)}.hero-photo>img{display:block;width:100%;height:440px;object-fit:contain;background:#efe6ed}.hero-photo figcaption{display:flex;justify-content:space-between;gap:10px;padding:16px 0;font-size:.8rem;color:var(--muted)}.care-section{background:var(--light);padding-block:65px}.care-grid{display:grid;grid-template-columns:.9fr 1.4fr;gap:85px}.care-copy>p{color:var(--muted);margin:0 0 20px}.care-copy .care-intro{font:1.5rem/1.45 Georgia,serif;color:var(--deep)}.care-details{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #d5c5de;margin-top:30px;padding-top:24px}.detail-number{display:block;font-size:.8rem;color:var(--purple);margin-bottom:12px}.care-details p{color:var(--muted);font-size:.94rem;margin-bottom:0}.gallery{padding-block:75px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:36px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.gallery-grid figure{margin:0}.photo-button{position:relative;display:block;width:100%;padding:0;border:0;background:var(--light);cursor:zoom-in}.photo-button img{display:block;width:100%;height:360px;object-fit:contain}.photo-button>span{position:absolute;bottom:12px;right:12px;width:34px;height:34px;display:grid;place-items:center;background:var(--paper);color:var(--purple);border-radius:50%}.gallery-grid figcaption{font:1.15rem/1.5 Georgia,serif;margin-top:16px;color:var(--purple)}.areas{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;padding-block:44px 60px;border-top:1px solid var(--line)}.areas h2{font-size:2.5rem}.areas p:not(.eyebrow){margin-top:0;color:var(--muted)}.city-list{display:flex;gap:10px 26px;flex-wrap:wrap;list-style:none;padding:0;margin:22px 0 0}.city-list li{border-bottom:1px solid var(--line);padding-bottom:5px}.contact-section{background:var(--deep);color:#fff;padding-block:64px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.contact-section .eyebrow,.contact-section h2 em{color:#dec7eb}.contact-section p:not(.eyebrow){max-width:450px;color:#e0d4e5}.contact-section a{color:#f0dcfb}.contact-options{padding-left:45px;border-left:1px solid #786080}.phone-number{font:clamp(1.8rem,3vw,2.8rem)/1.2 Georgia,serif;text-decoration:none;white-space:nowrap}.contact-links{display:flex;gap:28px;flex-wrap:wrap;margin:28px 0}.instagram-link{font-size:.95rem}footer{display:flex;gap:24px;align-items:center;justify-content:space-between;padding-block:26px;color:var(--muted);font-size:.85rem}.parent-brand{display:flex;align-items:center;gap:10px;font:1.65rem Georgia,serif;color:var(--deep);text-decoration:none;white-space:nowrap}.parent-brand img{width:58px;height:44px;object-fit:contain}dialog{max-width:90vw;width:650px;max-height:92vh;padding:20px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}dialog::backdrop{background:#201025c9}dialog img{display:block;max-width:100%;max-height:65vh;margin:auto}dialog p{text-align:center;font-family:Georgia,serif}.close-dialog{display:block;margin:0 0 15px auto;border:0;background:transparent;color:var(--purple);cursor:pointer;padding:8px}
@media(max-width:1000px){.hero{gap:40px}.header{gap:20px}nav{gap:20px}.care-grid{gap:40px}.contact-grid{gap:35px}.contact-options{padding-left:25px}.photo-button img{height:310px}.hero-photo>img{height:390px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{flex-wrap:wrap;gap:12px;padding-block:14px}.brand img{width:66px;height:58px}.brand>span{font-size:1.4rem}.languages{margin-left:auto}nav{order:3;width:100%;justify-content:center;margin:8px 0 0;border-top:1px solid var(--line);padding-top:12px}.hero{grid-template-columns:1fr;gap:36px;padding-block:40px 55px}.hero-copy{max-width:540px}.hero-photo{max-width:480px;width:calc(100% - 14px);justify-self:center;box-shadow:12px 12px 0 var(--light)}.hero-photo>img{height:400px}.care-grid,.areas,.contact-grid{grid-template-columns:1fr;gap:32px}.care-section{padding-block:42px}.gallery{padding-block:45px}.section-heading{align-items:start;flex-direction:column}.gallery-grid{gap:16px}.photo-button img{height:250px}.gallery-grid figcaption{font-size:1rem}.areas{padding-block:35px 45px}.contact-section{padding-block:42px}.contact-options{padding:28px 0 0;border-left:0;border-top:1px solid #786080}footer{flex-wrap:wrap;gap:14px}footer>span:last-child{width:100%}.eyebrow{font-size:.78rem}}
@media(max-width:480px){h1{font-size:3.2rem}.gallery-grid{grid-template-columns:1fr;gap:28px}.photo-button img{height:390px}.care-details{grid-template-columns:1fr;gap:24px}.hero-photo>img{height:350px}.hero-photo figcaption{font-size:.76rem}.actions{gap:18px}.brand{gap:8px}nav{gap:22px}.contact-links{gap:24px}}
.slides{position:relative;height:440px;background:#efe6ed;overflow:hidden}.slides .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .85s ease}.slides .slide.is-active{opacity:1}.slideshow-controls{display:flex;justify-content:space-between;gap:12px;padding-bottom:14px}.slideshow-controls button{color:var(--purple);background:transparent;border:1px solid var(--line);border-radius:3px;padding:7px 12px;font-size:.85rem;cursor:pointer}.slideshow-controls button:hover{background:var(--light)}.contact-links{gap:18px;align-items:center}.contact-links a{white-space:nowrap;font-size:.95rem}.brand>span{white-space:nowrap}.brand>span>span{letter-spacing:0}
@media(max-width:1000px){.slides{height:390px}.header{flex-wrap:wrap}.languages{margin-left:auto}nav{order:3;width:100%;justify-content:center;margin:8px 0 0;border-top:1px solid var(--line);padding-top:12px}.contact-grid{grid-template-columns:1fr}.contact-options{padding:25px 0 0;border-left:0;border-top:1px solid #786080}}
@media(max-width:760px){.slides{height:400px}}
@media(max-width:480px){.slides{height:350px}.brand img{width:48px;height:48px}.brand>span{font-size:1.15rem}.brand>span>span{font-size:.78rem}.header{gap:8px}.contact-links{gap:12px}.contact-links a{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slides .slide{transition:none}}
