@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap";:root{--ink: #243432;--muted: #62716f;--green: #4e7772;--soft: #eaf2ef;--cream: #f9f8f4;--line: #dce6e3;--white: #fff;--shadow: 0 12px 35px rgba(37, 67, 62, .09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 DM Sans,system-ui,sans-serif;background:var(--cream)}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3{font-family:Playfair Display,Georgia,serif;line-height:1.18;margin:0 0 .7rem}h1{font-size:clamp(2.35rem,6vw,4.5rem)}h2{font-size:clamp(1.75rem,3vw,2.55rem)}p{margin:.2rem 0 1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:absolute;top:-100px;left:1rem;background:var(--ink);color:#fff;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{background:#f9f8f4f5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(8px)}.nav-wrap{max-width:1180px;min-height:76px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:700;text-decoration:none;letter-spacing:.02em;display:flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-family:Georgia,serif}.primary-nav ul{list-style:none;display:flex;align-items:center;gap:8px;margin:0;padding:0}.primary-nav a{text-decoration:none;display:block;padding:.55rem .7rem;font-size:.9rem;font-weight:600;color:var(--muted);border-radius:6px}.primary-nav a:hover,.primary-nav a:focus,.primary-nav a.active{color:var(--green);background:var(--soft)}.primary-nav .appointment-link{background:var(--green);color:#fff}.primary-nav .appointment-link:hover{background:#395f5b;color:#fff}.primary-nav .language-link{margin-left:8px;border:1px solid var(--line);color:var(--ink)}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:var(--ink);margin:5px}.hero{background:linear-gradient(115deg,#eaf2ef,#f9f8f4 55%);padding:clamp(3.5rem,8vw,7rem) 24px}.hero-inner,.content,.footer-inner{max-width:1080px;margin:auto}.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,7vw,6rem);align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:.75rem;color:var(--green);margin-bottom:1rem}.hero p{font-size:1.12rem;max-width:540px;color:var(--muted)}.hero-photo{aspect-ratio:4 / 5;max-height:520px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.6rem}.button{display:inline-block;text-decoration:none;background:var(--green);color:#fff;padding:.8rem 1.1rem;border-radius:6px;font-weight:700}.button.secondary{background:transparent;color:var(--green);border:1px solid var(--green)}.content{padding:clamp(3.5rem,7vw,6rem) 24px}.narrow{max-width:none}.narrow>p{max-width:760px}.lead{max-width:760px;font-size:1.18rem;color:var(--muted)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:start}.about-photo{aspect-ratio:4 / 5;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.experience{padding:0;list-style:none}.experience li{padding:.7rem 0;border-bottom:1px solid var(--line)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2.5rem}.treatment-card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.treatment-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.treatment-card .card-image{aspect-ratio:4 / 3;background:var(--soft)}.treatment-card .card-body{padding:1.15rem}.treatment-card h2{font-size:1.35rem}.treatment-card p{color:var(--muted);font-size:.95rem}.detail-hero{padding:clamp(3.5rem,7vw,6rem) 24px 2rem;background:var(--soft)}.detail-copy{max-width:760px;margin:auto}.gallery-section{margin-top:0rem}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.gallery-image{margin:0;aspect-ratio:4 / 3;border-radius:12px;overflow:hidden}.comparison{grid-column:1 / -1;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--line);border-radius:12px;overflow:hidden}.comparison div{position:relative;aspect-ratio:4 / 3}.comparison span{position:absolute;bottom:8px;left:8px;background:#243432c7;color:#fff;padding:.15rem .45rem;border-radius:4px;font-size:.75rem;font-weight:700}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.contact-box{background:#fff;padding:2rem;border-radius:12px;box-shadow:var(--shadow)}.contact-box a{color:var(--green);font-weight:700}.map{min-height:400px;width:100%;border:0;border-radius:12px;box-shadow:var(--shadow)}.booking-frame{width:100%;border:0;border-radius:12px;background:#fff;box-shadow:var(--shadow)}footer{background:var(--ink);color:#eaf2ef;padding:2rem 24px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-inner p{margin:0;color:#b9cbc7;font-size:.9rem}.footer-inner a{font-weight:700}.footer-inner small{color:#b9cbc7}@media(max-width:760px){.nav-wrap{min-height:66px;padding:0 16px}.menu-toggle{display:block;z-index:12}.primary-nav{display:none;position:absolute;left:0;right:0;top:66px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.primary-nav.is-open{display:block}.primary-nav ul{display:block;padding:12px}.primary-nav a{padding:.75rem 1rem}.primary-nav .language-link{margin:8px 0 0;width:max-content}.hero-inner,.two-column,.contact-grid{grid-template-columns:1fr}.hero-photo{max-height:360px;order:-1}.card-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr}.footer-inner{display:block}.footer-inner>*{display:block;margin:.5rem 0}}@media(max-width:430px){.card-grid{grid-template-columns:1fr}.brand{font-size:.9rem}.comparison{grid-template-columns:1fr 1fr}}
