@font-face{font-family:Instrument;src:url(/fonts/instrument-serif.woff2)format("woff2");font-display:swap}@font-face{font-family:Instrument;src:url(/fonts/instrument-serif-italic.woff2)format("woff2");font-style:italic;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ink:#37282c;--muted:#68535b;--berry:#874b64;--deep:#713a52;--cream:#fcf8f4;--line:#e9d9da;--white:#fffdfa;--display:Instrument,Georgia,serif;--body:"DM Sans",system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--body);margin:0;font-size:15px;line-height:1.62}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}img{max-width:100%;display:block}svg{vertical-align:middle;flex-shrink:0}p,h1,h2,h3,h4,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.03}h1 em,h2 em{color:var(--berry);font-weight:400}section[id]{scroll-margin-top:25px}.shell{width:min(1232px,100% - 100px);margin-inline:auto}.skip{z-index:5;background:#fff;padding:12px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip:focus{transform:none}:focus-visible{outline:2px solid var(--deep);outline-offset:4px}.header{background:#fffaf7;border-bottom:1px solid #eadbdd}.nav{justify-content:space-between;align-items:center;gap:25px;min-height:83px;display:flex}.wordmark{color:var(--deep);flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.wordmark span{font:400 33px/.86 var(--display)}.wordmark small{font:650 8px/1 var(--body);letter-spacing:.29em;text-align:center;margin-top:8px;display:block}nav{color:#604852;align-items:center;gap:36px;font-size:14px;font-weight:550;display:flex}nav a:hover,.text-link:hover{color:var(--deep);text-underline-offset:4px;text-decoration:underline}.button{background:var(--berry);color:#fff;text-align:center;white-space:nowrap;border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:12px;min-height:49px;padding:13px 22px;font-size:14px;font-weight:650;transition:background .2s,border-color .2s;display:inline-flex}.button:hover{background:var(--deep)}.button:disabled{opacity:.62;background:#8b6878}.button-small{min-height:42px;padding:9px 16px;font-size:13px}.button-outline{color:var(--deep);background:0 0;border-color:#c49aa9}.button-outline:hover{background:#f4e5ea}.text-link{color:var(--deep);align-items:center;gap:9px;font-size:14px;font-weight:700;display:inline-flex}.hero{background:radial-gradient(at 42% 110%,#f1d8e0 0%,#0000 60%),linear-gradient(110deg,#fbf0ea,#f3dfe4 80%);overflow:hidden}.hero-grid{grid-template-columns:.86fr 1.14fr;align-items:center;gap:41px;min-height:550px;padding-block:51px 58px;display:grid}.hero-copy{z-index:1;padding:14px 0 0;position:relative}.eyebrow{letter-spacing:.17em;color:var(--deep);align-items:center;gap:9px;font-size:11px;font-weight:750;display:flex}.little-rule{background:#a66e83;width:28px;height:1px;display:inline-block}.hero h1{letter-spacing:-.034em;margin:22px 0;font-size:clamp(66px,7.35vw,112px);line-height:.91}.hero-copy>p{color:#624c55;max-width:390px;font-size:17px;line-height:1.62}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:29px;display:flex}.hero-notes{color:#674e59;flex-wrap:wrap;gap:10px 22px;margin-top:28px;font-size:12px;font-weight:560;display:flex}.hero-notes span{align-items:center;gap:6px;display:inline-flex}.hero-figure{isolation:isolate;align-self:stretch;align-items:stretch;min-height:425px;display:flex;position:relative}.hero-figure:before{content:"";z-index:-1;border:1px solid #b98599;border-radius:135px 135px 24px 24px;position:absolute;inset:9px -9px -9px 10px}.hero-figure img{object-fit:cover;object-position:54% 52%;border-radius:135px 135px 24px 24px;width:100%;height:100%;min-height:425px;max-height:510px}.hero-sparkle{width:57px;height:57px;color:var(--berry);background:#fff7f5;border:1px solid #dec0cd;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:23px;left:-20px;box-shadow:0 5px 22px #7240521a}.section{padding-block:81px}.section-intro{text-align:center;max-width:665px;margin:0 auto 35px}.section-intro .eyebrow{justify-content:center}.section h2{letter-spacing:-.025em;margin-top:11px;font-size:clamp(47px,5.4vw,77px)}.section-intro>p:last-child{color:var(--muted);margin:11px auto 0}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.service-card{border:1px solid var(--line);background:var(--white);border-radius:20px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 5px 22px #53304009}.service-card img{object-fit:cover;object-position:50% 53%;width:100%;height:clamp(210px,23vw,315px)}.service-copy{flex-direction:column;flex:1;align-items:flex-start;padding:20px 23px 23px;display:flex}.service-meta{width:100%;color:var(--deep);justify-content:space-between;align-items:center;font-size:12px;font-weight:700;display:flex}.service-meta span:first-child{align-items:center;gap:6px;display:flex}.service-copy h3{margin:9px 0 7px;font-size:36px}.service-copy p{color:var(--muted);margin-bottom:16px}.service-copy a{margin-top:auto}.booking-section{background:linear-gradient(115deg,#f4e4e7,#f9efed 59%,#f1dde5);border-block:1px solid #eddbdf}.booking-card{background:var(--white);border:1px solid var(--line);border-radius:23px;max-width:970px;margin-inline:auto;overflow:hidden;box-shadow:0 16px 45px #6c3c5410}.steps{border-bottom:1px solid var(--line);background:#fffbf8;justify-content:center;gap:clamp(10px,6vw,68px);margin:0;padding:19px 26px;list-style:none;display:flex}.steps li{color:#735c67;align-items:center;gap:8px;font-size:13px;font-weight:650;display:flex}.steps li>span{color:#6c4a59;background:#f2e6e7;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.steps li[aria-current]>span{background:var(--berry);color:#fff}.steps .reached{color:var(--deep)}.booking-body{grid-template-columns:1.55fr 1fr;align-items:start;gap:32px;padding:28px;display:grid}.booking-options h3,.booking-summary h3{margin-bottom:16px;font-size:39px}.choices{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.choices legend{margin-bottom:7px;padding:0;font-weight:700}.choices legend small{color:var(--muted);font-weight:400}.extras{margin-top:16px}.choice{cursor:pointer;border:1px solid #e9dbdd;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;font-size:14px;line-height:1.25;display:grid}.choice:has(:checked){background:#fbf0f3;border-color:#b58398}.choice input{width:16px;height:16px;accent-color:var(--berry);margin:0}.choice small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.choice strong{color:var(--deep);font-size:13px}.booking-summary{background:#f7ecee;border-radius:17px;padding:23px;position:sticky;top:20px}.booking-summary>svg{color:var(--berry);margin-bottom:7px}.booking-summary h3{margin-bottom:10px;font-size:34px}.booking-summary ul{color:var(--muted);margin:0 0 14px;padding:0;font-size:14px;list-style:none}.booking-summary dl{border-top:1px solid #dfc8d0;margin:0 0 14px;padding-top:11px}.booking-summary dl div{justify-content:space-between;gap:10px;font-size:13px;display:flex}.booking-summary dt{align-items:center;gap:5px;display:flex}.booking-summary dd{margin:0;font-weight:750}.booking-summary .button{white-space:normal;width:100%}.summary-note{text-align:center;color:var(--muted);margin-top:7px;font-size:11px}.date-nav{text-align:center;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:13px;display:flex}.icon-button{color:var(--deep);background:#f9eef1;border:1px solid #e4ccd5;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.icon-button:disabled{opacity:.42}.date-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:15px;display:grid}.date-button,.time-grid button{background:var(--white);color:var(--ink);border:1px solid #e9d8de;border-radius:9px;min-height:40px}.date-button{align-content:center;gap:1px;min-height:49px;padding:6px 2px;line-height:1.25;display:grid}.date-button small{color:inherit;font-size:10px}.date-button:hover,.time-grid button:hover{background:#f5e6ec}.date-button[aria-pressed=true],.time-grid button[aria-pressed=true]{background:var(--berry);color:#fff;border-color:var(--berry)}.booking-options h4{margin:0 0 7px;font-size:14px}.time-grid{grid-template-columns:repeat(auto-fit,minmax(63px,1fr));gap:6px;font-size:13px;display:grid}.back,.retry{color:var(--deep);text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;text-decoration:underline;display:inline-flex}.back{margin-top:18px;font-size:13px}.hint,.booking-error{color:var(--muted);margin-block:8px;font-size:14px}.booking-error{color:#8b244c}.review{border:1px solid var(--line);color:var(--deep);border-radius:12px;align-items:center;gap:12px;padding:13px;display:flex}.receipt{text-align:center;padding:35px 22px 40px}.receipt h3{margin:9px 0 10px;font-size:clamp(36px,5vw,55px)}.receipt-icon{width:53px;height:53px;color:var(--deep);background:#f0dbe4;border-radius:50%;place-items:center;margin:0 auto;display:grid}.receipt-ref{margin:10px 0 17px}.studio{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(34px,8vw,108px);display:grid}.studio img{object-fit:cover;border-radius:22px 100px 22px 22px;width:100%;max-height:440px}.studio p:not(.eyebrow){color:var(--muted);max-width:440px;margin:14px 0 20px;font-size:16px}.faq{border-block:1px solid var(--line);background:#f7eeeb}.faq-grid{grid-template-columns:.9fr 1.1fr;gap:40px;display:grid}details{border-bottom:1px solid #e4ced5}details:first-child{border-top:1px solid #e4ced5}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;font-weight:650;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{color:var(--berry);font-size:23px;font-weight:400}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);padding:0 20px 13px 0}footer{background:#fffaf7;padding-block:24px}.footer-grid{justify-content:space-between;align-items:center;gap:22px;display:flex}.footer-grid p{color:var(--muted);text-align:center;font-size:12px}@media (max-width:1000px){.shell{width:calc(100% - 56px)}.hero-grid{gap:31px;min-height:auto}.hero-figure,.hero-figure img{min-height:383px}.hero h1{font-size:clamp(60px,8.5vw,88px)}.hero-actions{gap:12px}.service-copy h3{font-size:31px}}@media (max-width:720px){.shell{width:calc(100% - 36px)}.nav{gap:9px;min-height:67px}.nav nav{display:none}.wordmark span{font-size:29px}.wordmark svg{width:26px}.button-small{min-height:38px;font-size:12px}.hero-grid{grid-template-columns:1fr;gap:26px;padding-block:28px 32px}.hero-copy{padding-top:0}.hero h1{margin:14px 0 15px;font-size:clamp(59px,12vw,84px)}.hero-copy>p{font-size:15px}.hero-actions{margin-top:18px}.hero-notes{gap:7px 15px;margin-top:14px}.hero-figure{margin-right:7px}.hero-figure,.hero-figure img{height:clamp(250px,68vw,420px);min-height:0}.hero-figure img,.hero-figure:before{border-radius:65px 65px 15px 15px}.hero-sparkle{width:40px;height:40px;bottom:13px;left:-8px}.hero-sparkle svg{width:23px}.section{padding-block:49px}.section-intro{margin-bottom:23px}.section h2{font-size:clamp(43px,9vw,66px)}.service-grid{gap:12px}.service-card img{height:170px}.service-copy{padding:12px}.service-copy h3{font-size:25px}.service-copy p{font-size:13px}.service-meta{gap:3px;font-size:10px}.service-meta svg{width:12px}.booking-body{gap:16px;padding:16px}.booking-summary{padding:15px}.steps{gap:18px;padding:13px 10px}.steps li{gap:5px;font-size:12px}.booking-options h3{font-size:34px}.studio,.faq-grid{gap:22px}.footer-grid{flex-wrap:wrap}.footer-grid p{text-align:left}}@media (max-width:520px){.service-grid,.booking-body,.studio,.faq-grid{grid-template-columns:1fr}.service-grid{gap:14px}.service-card{border-radius:15px;grid-template-columns:36% 1fr;display:grid}.service-card img{height:100%;min-height:173px}.service-copy{padding:12px 14px}.service-copy h3{margin-top:5px;font-size:30px}.service-copy p{margin-bottom:7px}.booking-summary{position:static}.studio img{max-height:315px}.booking-summary h3{font-size:29px}.booking-summary ul{margin-bottom:8px}.booking-summary>svg{display:none}.footer-grid p{order:3;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
