@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&display=swap');
:root{--cream:#f5f1e8;--green:#202920;--sage:#a8b295;--pink:#e4bbc2;--line:#c9c9bb;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.6 'DM Sans',sans-serif}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit;text-underline-offset:5px}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b56a83;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.98}h1{font-size:clamp(4.5rem,8.5vw,9rem);letter-spacing:-.045em}h2{font-size:clamp(3rem,5.8vw,6rem);letter-spacing:-.04em}h3{font-size:2.4rem}em{font-weight:400}.eyebrow{font-size:12px;letter-spacing:.17em;margin-bottom:25px}.fine{font-size:13px;line-height:1.7}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:20px;z-index:100}header{height:92px;padding:15px 5vw;display:flex;justify-content:space-between;align-items:center;background:var(--cream);position:relative;z-index:5}.wordmark{text-decoration:none;font-family:var(--serif);font-size:24px;letter-spacing:.04em;line-height:1.1}.wordmark span{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.3em;margin-top:7px}nav{display:flex;gap:28px;align-items:center;font-size:13px}nav a{text-decoration:none}.saved-button{border:1px solid var(--line);padding:10px 15px;border-radius:30px}#saved-count{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--green);color:var(--cream);margin-left:7px;font-size:11px}.hero{height:min(820px,calc(100svh - 92px));min-height:630px;background:var(--green);color:var(--cream);position:relative;overflow:hidden;isolation:isolate}.hero-image{position:absolute;right:0;width:65%;height:100%;object-fit:cover;object-position:50% 63%;z-index:-3;transition:opacity .35s}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#202920 7%,#202920ee 30%,#20292077 55%,transparent 80%);z-index:-2}.hero-copy{position:relative;padding:90px 6vw}.hero-copy .eyebrow{color:var(--pink)}.hero-copy em{color:var(--pink)}.intro{margin:28px 0 34px;color:#dddcd1}.round-link{display:inline-flex;gap:24px;align-items:center;text-decoration:none;border:1px solid currentColor;border-radius:60px;padding:15px 24px;font-size:14px}.round-link span{font-size:22px}.hero-bottom{position:absolute;bottom:30px;left:6vw;right:6vw;display:flex;justify-content:space-between;gap:25px;align-items:end;font-size:11px;letter-spacing:.1em}.hero-bottom>a{font-size:32px;text-decoration:none}.hero-chapters{display:flex;gap:20px}.hero-chapters button{padding:13px 0;border-top:1px solid #f5f1e855;font-size:12px;color:#c7cbbf}.hero-chapters button[aria-pressed=true]{border-color:var(--pink);color:var(--cream)}.opening{text-align:center;padding:100px 20px 65px}.opening h2{font-size:clamp(2.6rem,4.4vw,5rem)}.opening em{color:#718065}.opening>p:last-child{max-width:490px;margin:28px auto 0;font-size:15px;color:#5c6856}.diary{padding:40px 0 75px;background:#ebe7dd;overflow:hidden}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:30px 6vw 45px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:14px;max-width:330px;color:#5b6655}.arrows{display:flex;gap:10px;margin-top:22px;align-items:center}.arrows button{border:1px solid #a9b09b;width:42px;height:42px;border-radius:50%}.arrows #motion{border:0;border-radius:0;width:auto;font-size:12px;text-decoration:underline;padding:0 8px}.photo-window{overflow:hidden;cursor:grab;touch-action:pan-y;height:480px}.photo-window:active{cursor:grabbing}.photo-track{display:flex;align-items:center;gap:42px;width:max-content;padding:35px 6vw 50px;will-change:transform}.photo-card{width:250px;flex-shrink:0;background:#fffdf7;padding:10px 10px 20px;box-shadow:0 15px 20px #20292020;text-align:left;transform:rotate(var(--tilt));transition:transform .3s}.photo-card:hover,.photo-card:focus-visible{transform:rotate(0) translateY(-12px)}.photo-card:nth-child(even){margin-top:42px}.photo-card img{width:100%;height:285px;object-fit:cover;display:block;pointer-events:none}.photo-card span{font:italic 25px var(--serif);display:block;margin-top:13px}.gallery-hint{text-align:center;font-size:10px;letter-spacing:.13em;padding:5px 20px}.treatments{padding:60px 6vw 90px}.treatments .section-heading{padding:0 0 40px}.categories{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:12px}.categories button{border:1px solid var(--line);border-radius:30px;padding:9px 17px;font-size:13px}.categories button[aria-pressed=true]{background:var(--green);color:var(--cream);border-color:var(--green)}.treatment{display:grid;grid-template-columns:70px 1fr auto;gap:22px;align-items:center;border-bottom:1px solid var(--line);padding:26px 0}.treatment .number{font:italic 26px var(--serif);color:#7b856f}.treatment h3{font-size:2.6rem}.treatment .duration{font-size:11px;letter-spacing:.1em;margin-top:8px;color:#69755f}.treatment .price{font:35px var(--serif);white-space:nowrap}.treatment-main{text-align:left;padding:0}.treatment-main:hover h3{color:#788368}.treatment-right{display:flex;gap:25px;align-items:center}.save{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:21px}.save[aria-pressed=true]{background:var(--green);color:var(--cream)}.treatments>.fine{max-width:720px;margin-top:25px;color:#66735c}.meet{display:grid;grid-template-columns:1fr 1fr;background:#dbe0d0}.meet-image{overflow:hidden}.meet-image img{width:100%;height:100%;max-height:760px;object-fit:cover;object-position:50% 42%;display:block}.meet-copy{padding:65px 6vw;align-self:center}.meet-copy h2{font-size:clamp(3rem,4.5vw,5rem)}.meet-copy>p:not(.eyebrow){margin:25px 0;font-size:15px;max-width:370px}.brand-logo{display:block;width:190px;margin-top:35px;mix-blend-mode:multiply}.visit{padding:100px 6vw;display:grid;grid-template-columns:1fr 1.1fr;gap:7vw}.visit h2{font-size:clamp(3rem,4.3vw,5rem)}.visit>div>p:last-child{margin-top:25px;color:#5b6852;font-size:14px}.policies details{border-bottom:1px solid var(--line);padding:20px 0}.policies details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:15px}summary::-webkit-details-marker{display:none}summary span{font-size:22px}details[open] summary span{transform:rotate(45deg)}details p{font-size:14px;color:#5b6554;padding-top:20px}.closing{text-align:center;background:var(--green);color:var(--cream);padding:85px 20px}.closing h2{font-size:clamp(4.5rem,9vw,9rem);margin-bottom:35px}.closing em{color:var(--pink)}.closing>.fine{margin-top:20px;color:#c8cdbf}footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:30px 6vw;font-size:11px;letter-spacing:.08em}footer span:nth-child(2){font:italic 19px var(--serif)}dialog{border:0;background:var(--cream);color:var(--green);width:min(720px,calc(100% - 30px));max-height:88svh;padding:45px;border-radius:4px}dialog::backdrop{background:#121d14bb;backdrop-filter:blur(8px)}.close{position:absolute;right:15px;top:12px;width:40px;height:40px;font-size:22px}.panel-photo{width:100%;height:300px;object-fit:cover;object-position:center 40%;margin-bottom:28px}dialog h2{font-size:3.5rem}dialog .description{margin:25px 0;color:#5b6753}.panel-price{font:40px var(--serif);margin:22px 0}.panel-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.panel-actions button,.panel-actions a{border:1px solid var(--green);padding:12px 19px;border-radius:30px;font-size:13px;text-decoration:none}.wishlist-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.wishlist-row small{display:block;color:#627057}.wishlist-row button{font-size:24px;padding:5px 12px}.estimate{display:flex;justify-content:space-between;margin-top:25px;font:32px var(--serif)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--cream);color:var(--green);padding:13px 24px;border:1px solid var(--line);border-radius:40px;box-shadow:0 7px 25px #0002;z-index:20;font-size:13px;transition:.25s;max-width:90vw;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}body:has(dialog[open]){overflow:hidden}@media(max-width:750px){header{height:88px;padding:14px 5vw}.wordmark{font-size:17px}.wordmark span{font-size:8px}nav{gap:12px;font-size:12px}nav a:nth-child(2),nav a:nth-child(3){display:none}.saved-button{font-size:0;padding:7px}#saved-count{font-size:11px;margin:0}.hero{height:760px;min-height:0}.hero-image{width:100%;height:75%;object-position:center 62%}.hero-shade{background:linear-gradient(0deg,#202920 13%,#202920dd 35%,#20292000 85%)}.hero-copy{position:absolute;bottom:100px;padding:0 6vw}.hero-copy h1{font-size:clamp(3.5rem,11vw,5rem)}.hero-copy .eyebrow{font-size:10px}.intro{font-size:14px;margin:22px 0}.round-link{font-size:13px;padding:13px 20px}.hero-bottom{bottom:22px;gap:10px}.hero-bottom>span{display:none}.hero-chapters{gap:15px}.hero-chapters button{font-size:10px}.opening{padding:65px 7vw}.section-heading{display:block;padding-bottom:25px}.section-heading>div:last-child,.section-heading>p{margin-top:25px}.photo-card{width:220px}.photo-card img{height:260px}.photo-track{gap:25px}.photo-window{height:450px}.treatments{padding:55px 6vw}.treatment{grid-template-columns:25px 1fr auto;gap:12px;padding:24px 0}.treatment h3{font-size:1.8rem}.treatment-right{gap:9px}.treatment .price{font-size:25px}.save{width:34px;height:34px}.categories{gap:7px}.categories button{font-size:12px;padding:8px 12px}.meet{grid-template-columns:1fr}.meet-image img{height:470px}.meet-copy{padding:45px 7vw}.visit{grid-template-columns:1fr;padding:65px 7vw;gap:35px}.closing{padding:65px 6vw}dialog{padding:40px 25px 25px}dialog h2{font-size:2.7rem}.panel-photo{height:240px}footer{font-size:10px}.eyebrow{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{body>*:not(dialog){display:none!important}dialog[open]{position:static;width:100%;max-height:none;overflow:visible}dialog .close,.panel-actions,.wishlist-row button{display:none}}
