@import url('classic.css');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#fff;--ink:#101010;--muted:#626262;--line:#d8d8d8;--sand:#f4f4f4;--accent:#0079ed;--serif:'Manrope',Arial,sans-serif;--blue:#0079ed}h1,h2,h3{font-family:var(--sans);font-weight:800;letter-spacing:-.065em;line-height:1.04}em{font-style:normal;color:inherit}h2{font-size:clamp(40px,4.6vw,72px)}.wrap{width:min(1360px,calc(100% - 96px))}.eyebrow{font-weight:700;font-size:10px;letter-spacing:1.5px}.header{position:sticky;top:0;z-index:20;height:78px;width:100%;padding-inline:40px;gap:35px;background:white;border-bottom:1px solid #eee}.brand{font-family:var(--sans);font-size:36px;font-weight:800;line-height:.92;letter-spacing:-2.3px;flex-shrink:0}.brand span{font-size:6.5px;letter-spacing:1.5px;line-height:2.5;font-weight:700;margin-top:4px}.header-location{font-size:10px;font-weight:600;margin-left:auto;display:flex;gap:35px;align-items:center}.header-location span{font-size:20px}.header-book{background:var(--blue);color:white;text-transform:uppercase;font-size:11px;font-weight:800;gap:30px;padding:17px 22px;border:0;transition:background .2s}.header-book:hover{background:var(--ink)}.menu-toggle{display:flex;flex-direction:column;gap:7px;padding:14px 0 14px 10px;background:transparent;order:4;position:relative;z-index:25}.menu-toggle span{width:26px;height:2px;background:var(--ink);transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.header nav{position:fixed;right:0;left:auto;top:78px;bottom:0;width:min(460px,100%);padding:50px 40px;background:white;box-shadow:-30px 30px 100px #0003;display:flex;flex-direction:column;gap:12px;visibility:hidden;transform:translateX(110%);transition:transform .35s,visibility .35s;overflow:auto;border:0}.header nav.open{visibility:visible;transform:translateX(0)}.header nav a{font-size:32px;font-weight:700;letter-spacing:-1.5px;padding:15px 0;border-bottom:1px solid var(--line)}.header nav a:after{display:none}.header nav a:hover{color:var(--blue)}.hero-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:calc(100svh - 78px);min-height:590px;max-height:1040px;overflow:hidden}.hero-panel{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:30px;text-align:center;color:white;isolation:isolate}.hero-panel>img{position:absolute;inset:0;height:100%;z-index:-2;transition:transform 1s;object-position:center 35%}.hero-panel:nth-child(2)>img{object-position:47% 32%}.hero-panel:nth-child(3)>img{object-position:42% center}.hero-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0007,#0003 40%,#0004);z-index:-1;transition:background .4s}.hero-panel:hover>img{transform:scale(1.045)}.hero-panel:hover:after{background:#0005}.panel-copy{max-width:100%}.panel-number{position:absolute;left:26px;top:27px;letter-spacing:1.5px;font-size:9px;font-weight:600}.panel-copy h2{font-size:clamp(44px,5.3vw,86px);line-height:1;letter-spacing:-.075em;color:white}.panel-copy p{color:white;font-size:12px;letter-spacing:-.3px;margin-top:13px;text-shadow:0 1px 8px #0007}.panel-cta{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:center;gap:22px;width:max-content;max-width:calc(100% - 36px);background:white;color:black;padding:17px 21px;font-size:9px;font-weight:800;transition:background .25s,color .25s}.panel-cta span{font-size:18px;line-height:1}.panel-cta:hover{background:var(--blue);color:white}.hero-pagination{display:none}.service-ribbon{justify-content:space-between;background:var(--ink);color:white;padding:22px 48px;gap:20px;font-size:10px;font-weight:700;letter-spacing:1px;border:0}.service-ribbon span{font-family:var(--sans);font-size:10px}.service-ribbon i{font-size:19px;color:#9c9c9c}.service-ribbon a{font-size:9px;color:#bbb}.about{grid-template-columns:1.1fr 1fr;gap:70px;padding-top:130px;padding-bottom:140px}.about-copy{grid-column:1;grid-row:1}.about-photo{grid-column:2;grid-row:1;position:relative;padding:35px 0 85px 45px}.about-photo>img:first-child{height:390px;object-position:60% center}.about-photo .about-detail-one{position:absolute;width:35%;height:240px;left:0;top:0;border:8px solid white;object-position:center 35%}.about-photo .about-detail-two{position:absolute;width:57%;height:170px;right:20px;bottom:15px;border:8px solid white;transform:rotate(-5deg)}.photo-index{position:absolute;bottom:45px;left:20px;font-size:8px;font-weight:600;letter-spacing:1px;writing-mode:vertical-rl;transform:rotate(180deg)}.about h1{font-size:clamp(42px,4.5vw,70px);letter-spacing:-.075em;line-height:1.03;margin:26px 0}.about-copy>p:not(.eyebrow){font-size:12px;max-width:460px;margin-bottom:17px}.text-link{font-weight:700;border-color:var(--ink);font-size:10px}.text-link:hover{color:var(--blue)}.services{background:#f4f4f4}.section-heading{gap:45px;margin-bottom:45px}.section-heading h2{margin-top:22px}.section-heading>p{font-size:12px;max-width:355px;margin-bottom:5px}.service-grid{gap:20px}.service-photo img{height:375px}.service-card:nth-child(2) img{object-position:center 30%}.circle-arrow{border-radius:0;width:43px;height:43px;font-size:24px}.card-title h3{font-size:26px;font-weight:700;letter-spacing:-1.1px}.card-title>span{font-size:7px;letter-spacing:.5px}.service-card>p{font-size:10px;margin-top:12px}.treatment-list{grid-template-columns:1fr 1.5fr;gap:80px;margin-top:85px;padding-top:50px}.treatment-intro h3{font-size:47px;text-transform:uppercase;margin:22px 0;letter-spacing:-2.7px}.accordions details,.accordions details:first-child{border-color:#c9c9c9}.accordions summary{font-family:var(--sans);font-size:20px;font-weight:600;letter-spacing:-.8px;padding:24px 0;line-height:1.3;gap:20px}.accordions summary>span{font-weight:400;letter-spacing:0}.accordions summary i{font-size:27px}.detail-body{padding:0 26px 25px}.gallery-grid{gap:14px}.gallery-bottom{margin-top:24px}.pricing{grid-template-columns:70px 1fr .7fr;gap:40px;background:var(--blue);color:white;padding:55px;margin-bottom:110px}.pricing-symbol{font-family:var(--sans);font-size:90px;line-height:.8;color:white}.pricing .eyebrow{color:white}.pricing h2{font-size:clamp(36px,3.7vw,58px);margin:24px 0;letter-spacing:-.065em}.pricing p:not(.eyebrow){color:white;font-size:11px;margin-bottom:25px}.pricing>img{height:335px;object-position:center 42%}.button{font-size:10px;font-weight:700}.button-dark{background:var(--blue);color:white}.button-dark:hover{background:var(--ink)}.button-outline{background:white;color:var(--ink);border:0}.button-outline:hover{background:var(--ink);color:white}.contact{background:var(--ink);padding-top:80px;padding-bottom:60px}.contact .eyebrow{color:#bcbcbc}.contact-heading{margin-top:30px;gap:25px}.contact h2{font-size:clamp(72px,9vw,140px);letter-spacing:-.07em;line-height:.95}.contact-cta{background:var(--blue);color:white;width:145px;height:145px;border:0;border-radius:0;font-size:75px;line-height:1;margin-right:0}.contact-cta:hover{background:white;color:var(--ink);transform:none}.contact-details{grid-template-columns:1.2fr 1fr 1fr;gap:35px;border-color:#424242;margin-top:65px;padding-top:30px}.contact-details p,.contact-details a>span{color:#aaa}.contact-details a:hover span{color:white}.footer .brand{font-size:30px}.footer .brand span{font-size:6px}.footer-links{display:flex;gap:25px;font-size:9px}.footer-links a:hover{color:var(--blue)}dialog{background:white}.booking-dialog h2{font-size:40px;letter-spacing:-2px;margin:20px 0;line-height:1.1}.booking-dialog input,.booking-dialog select,.booking-dialog textarea{background:#fafafa}.booking-dialog label{font-weight:600}.booking-dialog label span{font-weight:400}.booking-socials a{font-weight:600;border-color:var(--ink)}.lightbox{background:#111}::selection{background:var(--blue);color:white}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{width:100%;padding-inline:30px}.hero-panels{min-height:580px}.hero-panel{padding:20px}.panel-copy h2{font-size:5.6vw}.panel-copy p{font-size:11px}.panel-cta{font-size:8px;padding:15px 17px;gap:15px}.about{gap:35px;padding-block:95px}.about-photo>img:first-child{height:335px}.about-photo .about-detail-one{height:190px}.about-photo .about-detail-two{height:140px}.about h1{font-size:4.6vw}.card-title{display:block}.card-title>span{display:block;margin-top:9px}.service-photo img{height:320px}.treatment-list{gap:45px}.accordions summary{font-size:18px}.pricing{padding:40px;gap:25px;grid-template-columns:45px 1fr .7fr}.pricing-symbol{font-size:65px}.pricing>img{height:310px}.footer-links{gap:15px}}
@media(max-width:760px){.header{height:70px;padding-inline:22px;gap:22px}.header .brand{font-size:30px}.header-location{font-size:9px;gap:15px}.header-book{font-size:9px;gap:15px;padding:14px 17px}.header nav{top:70px;left:auto;right:0}.hero-panels{height:calc(100svh - 70px);min-height:530px;max-height:850px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.hero-panels::-webkit-scrollbar{display:none}.hero-panel{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}.panel-copy h2{font-size:clamp(68px,16vw,120px)}.panel-copy p{font-size:14px;margin-top:18px}.panel-number{font-size:10px;left:25px;top:28px}.panel-cta{bottom:45px;font-size:11px;padding:20px 26px;gap:35px}.hero-panel>img{object-position:center 30%}.hero-panel:nth-child(3)>img{object-position:center 45%}.hero-pagination{display:flex;align-items:center;gap:15px;padding:18px 25px;border-bottom:1px solid #ddd}.hero-pagination button{font-size:11px;background:transparent;padding:8px;color:#777;font-weight:700}.hero-pagination button.active{color:var(--blue);border-bottom:2px solid var(--blue)}.hero-pagination>span{margin-left:auto;font-size:8px;letter-spacing:1px;color:var(--muted)}.service-ribbon{padding:19px 30px;gap:15px}.service-ribbon span{font-size:8px}.service-ribbon a,.service-ribbon i:last-of-type{display:none}.about{gap:30px}.about-copy>p:not(.eyebrow){font-size:11px}.about-photo{padding-left:25px;padding-bottom:60px}.about-photo>img:first-child{height:300px}.about-photo .about-detail-one{height:145px;border-width:5px}.about-photo .about-detail-two{height:120px;border-width:5px;right:0;bottom:0}.photo-index{left:0;bottom:25px}.section-heading{gap:25px}.section-heading h2{font-size:40px}.section-heading>p{font-size:10px;max-width:220px}.service-photo img{height:260px}.card-title h3{font-size:21px}.service-card>p{font-size:9px}.treatment-list{grid-template-columns:.8fr 1.3fr;gap:30px;margin-top:55px}.treatment-intro h3{font-size:36px}.accordions summary{font-size:16px;gap:13px}.detail-body{padding-inline:20px 5px;font-size:11px}.pricing{grid-template-columns:1fr .6fr;margin-bottom:80px;padding:35px}.pricing-symbol{display:none}.pricing h2{font-size:37px}.pricing>img{height:330px}.contact-cta{width:105px;height:105px;font-size:55px}.contact-details{grid-template-columns:1fr 1fr;gap:25px}.contact-details p{grid-column:span 2}.footer-links{flex-wrap:wrap;gap:15px}}
@media(max-width:540px){.wrap{width:calc(100% - 40px)}.header{width:100%;height:68px;padding-inline:18px;gap:15px}.header .brand{font-size:28px}.header .brand span{font-size:5.5px;letter-spacing:1px}.header-location{display:none}.header-book{margin-left:auto;font-size:8px;padding:14px;gap:16px}.header-book>span{font-size:17px}.menu-toggle{padding-left:2px}.menu-toggle span{width:22px}.header nav{top:68px;left:auto;right:0;padding:30px 25px}.header nav a{font-size:28px}.hero-panels{height:calc(100svh - 118px);min-height:500px;max-height:780px}.panel-copy h2{font-size:19vw;letter-spacing:-.085em}.panel-copy p{font-size:12px;margin-top:16px}.panel-cta{bottom:35px;font-size:10px;padding:18px 22px;gap:30px}.panel-number{font-size:8px;left:22px;top:23px}.hero-pagination{padding:9px 18px;gap:14px;min-height:50px}.hero-pagination>span{font-size:7px}.hero-pagination button{font-size:10px;padding:6px}.service-ribbon{padding:18px 20px;letter-spacing:.7px;gap:10px}.service-ribbon span{font-size:7px}.service-ribbon i{font-size:17px}.about{display:flex;flex-direction:column;gap:34px;padding-block:65px}.eyebrow{font-size:8px;letter-spacing:1.2px}.about h1{font-size:clamp(36px,9.7vw,54px);margin:23px 0;letter-spacing:-.075em;line-height:1.07}.about-copy>p:not(.eyebrow){font-size:12px}.about-photo{width:100%;padding:20px 0 75px 35px}.about-photo>img:first-child{height:290px;object-position:60% center}.about-photo .about-detail-one{height:175px;width:35%;border-width:6px}.about-photo .about-detail-two{width:54%;height:140px;right:16px;bottom:10px;border-width:6px}.photo-index{left:6px;bottom:30px}.section-heading h2{font-size:clamp(34px,8.8vw,48px);line-height:1.07;letter-spacing:-.065em;margin-top:19px}.section-heading>p{max-width:100%;font-size:11px;margin-top:22px}.service-photo img{height:365px}.card-title{display:flex;margin-top:20px;align-items:center}.card-title h3{font-size:28px}.card-title>span{margin:0;font-size:7px}.service-card>p{font-size:11px;margin-top:10px}.treatment-list{grid-template-columns:1fr;gap:28px;margin-top:45px;padding-top:35px}.treatment-intro h3{font-size:38px;margin:20px 0}.treatment-intro h3 br{display:none}.treatment-intro>p:last-child{max-width:100%;font-size:11px}.accordions summary{font-size:18px;letter-spacing:-.7px;padding:23px 0}.detail-body{font-size:12px}.pricing{display:flex;flex-direction:column;align-items:stretch;padding:30px 24px;gap:28px;margin-bottom:60px}.pricing h2{font-size:clamp(29px,7.9vw,43px);letter-spacing:-.06em;line-height:1.1}.pricing p:not(.eyebrow){font-size:11px}.pricing>img{height:240px;object-position:center 42%}.contact h2{font-size:clamp(60px,16.5vw,90px)}.contact-heading{gap:12px;margin-top:30px}.contact-cta{width:64px;height:64px;font-size:36px}.contact-details{margin-top:40px;padding-top:25px;gap:25px 15px}.contact-details p{font-size:11px}.contact-details a{font-size:10px}.contact-details a span{font-size:9px}.footer{gap:25px 15px;padding-block:30px}.footer .brand{width:100%;font-size:32px}.footer .brand span{font-size:6px}.footer-links{font-size:8px;gap:20px}.footer>span{width:100%;font-size:9px}.booking-dialog h2{font-size:34px;letter-spacing:-1.7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(min-width:541px) and (max-width:760px){.about{display:flex;flex-direction:column;align-items:stretch;gap:35px}.about h1{font-size:clamp(42px,7.8vw,58px)}.about-photo{width:100%;max-width:580px;align-self:center}.about-copy>p:not(.eyebrow){font-size:12px;max-width:100%}.about-photo>img:first-child{height:365px}.about-photo .about-detail-one{height:200px}.about-photo .about-detail-two{height:160px}}

.mobile-close-text{display:none}@media(max-width:760px){.desktop-close-symbol{display:none}.mobile-close-text{display:inline}}

.service-ribbon .decorative-arrow{font:inherit;letter-spacing:inherit}@media(max-width:760px){.header-book>span,.button>span:has(.decorative-arrow),.text-link>span:has(.decorative-arrow),.accordions summary>span{display:none}}

.contact-mobile-label,.hero-gesture-hint{display:none}
.panel-info-trigger{display:block;position:absolute;inset:0;z-index:1;width:100%;height:100%;padding:0;background:transparent;touch-action:pan-y pinch-zoom}
.panel-info-trigger:focus-visible{outline:2px solid white;outline-offset:-6px}
.panel-cta{z-index:2}
.treatment-dialog{width:min(940px,calc(100% - 40px));max-height:90vh;max-height:90dvh;padding:0;background:white;overflow:auto}
.treatment-layout{display:grid;grid-template-columns:.8fr 1fr;min-height:500px}
.treatment-image{height:100%;min-height:500px;object-position:center 35%}
.treatment-content{padding:55px 40px 40px}
.treatment-content h2{font-size:38px;line-height:1.08;letter-spacing:-1.9px;margin:22px 0}
.treatment-content p,.treatment-options{font-size:12px;line-height:1.9}
.treatment-content h3{font-size:13px;line-height:1.5;font-weight:700;letter-spacing:0;margin:26px 0 12px}
.treatment-options{padding-left:16px;margin:0;color:var(--muted)}
.treatment-options li+li{margin-top:9px}
.treatment-booking-note{margin-top:25px;padding-top:5px;border-top:1px solid var(--line)}
.treatment-book{margin-top:25px;width:100%;justify-content:center}
.treatment-dialog .treatment-close{position:absolute;top:10px;right:20px;z-index:5;background:white;color:var(--ink);font-size:11px;font-weight:600;padding:10px 0}
@media(max-width:760px){
  .hero-panels{display:flex;grid-template-columns:none;height:calc(100svh - 108px);min-height:390px;max-height:850px;gap:3px;overflow:hidden;scroll-snap-type:none;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
  .hero-panel{flex:var(--panel-grow,.16) 1 0%;min-width:0;padding:0;scroll-snap-align:none;transition:flex-grow .52s cubic-bezier(.22,1,.36,1)}
  .hero-panel:first-child{--panel-grow:.68;--panel-activity:1}
  .hero-panels.is-dragging .hero-panel{transition:none}
  .hero-panel>img{object-position:center 35%;transform:none!important;pointer-events:none;-webkit-user-drag:none}
  #panel-makeup>img{object-position:62% 35%}
  #panel-skin>img{object-position:47% 32%}
  #panel-beauty>img{object-position:50% 45%}
  .hero-panel:after,.hero-panel:hover:after{background:linear-gradient(transparent 20%,#0004 55%,#0005)}
  .panel-copy{max-width:none;padding:0;pointer-events:none;transform:rotate(calc(-90deg + 90deg * var(--panel-activity,0)));transition:transform .52s cubic-bezier(.22,1,.36,1)}
  .panel-copy h2{font-size:calc(12px + 29px * var(--panel-activity,0));line-height:1;letter-spacing:-.065em;white-space:nowrap;transition:font-size .52s cubic-bezier(.22,1,.36,1);text-shadow:0 1px 10px #0005}
  .hero-panels.is-dragging .panel-copy,.hero-panels.is-dragging .panel-copy h2{transition:none}
  .hero-gesture-hint{display:block;margin:0;padding:11px 10px 12px;text-align:center;background:white;color:#626262;font-size:9px;line-height:1.6;letter-spacing:.1px}
  .panel-number,.panel-copy p,.panel-cta,.hero-pagination,.decorative-arrow,.circle-arrow,.service-no,.photo-index,.pricing-symbol,.hero-inset,.round-seal,.image-caption,.tiny-star,.service-ribbon i,.service-ribbon a{display:none!important}
  .about-photo{padding:0}
  .about-photo .about-detail-one,.about-photo .about-detail-two{display:none}
  .service-ribbon{justify-content:space-between}
  .contact-arrow{display:none}
  .contact-mobile-label{display:inline;font-size:11px;font-weight:700;letter-spacing:0}
  .contact-heading{flex-wrap:wrap;gap:25px}
  .contact-cta{width:auto;height:auto;min-height:48px;padding:16px 22px;font-size:11px}
  .gallery-prev,.gallery-next{display:none}
  .lightbox{padding-inline:18px}
  .lightbox .close-dialog{font-size:12px;padding:10px}
  .treatment-dialog{width:calc(100% - 24px);max-height:92vh;max-height:92dvh}
  .treatment-layout{display:block;min-height:0}
  .treatment-image{height:220px;min-height:0;width:100%;object-position:center 35%}
  .treatment-content{padding:28px 25px 30px}
  .treatment-content h2{font-size:33px;letter-spacing:-1.5px;margin-top:18px}
  .treatment-dialog .treatment-close{position:sticky;top:0;right:auto;display:block;width:100%;text-align:right;margin:0;padding:13px 20px;background:white}
}
@media(max-width:540px){.hero-panels{height:calc(100svh - 106px)}}
@media(prefers-reduced-motion:reduce){.hero-panel,.panel-copy,.panel-copy h2{transition:none!important}}

.hero-next,.hero-autoplay{display:none}
@media(max-width:760px){
  .hero-panels{position:relative;display:block;height:calc(100svh - 70px);min-height:450px;max-height:1000px;gap:0;overflow:hidden;scroll-snap-type:none}
  .hero-panel{position:absolute;inset:0;width:100%;height:100%;padding:24px;flex:none;transform:translate3d(var(--slide-offset,100%),0,0);transition:transform .9s cubic-bezier(.4,0,.2,1);will-change:transform}
  .hero-panel:first-child{--slide-offset:0%}
  .hero-panels.is-dragging .hero-panel,.hero-panels.is-positioning .hero-panel{transition:none}
  .panel-copy{max-width:100%;padding:0 34px 0 0;transform:none;transition:none}
  .panel-copy h2{font-size:clamp(52px,16vw,100px);line-height:1;letter-spacing:-.075em;transition:none}
  .hero-gesture-hint{display:none}
  .hero-next{display:grid;place-items:center;position:absolute;z-index:5;right:16px;top:50%;transform:translateY(-50%);width:44px;height:52px;padding:0;background:#0003;color:white;border:1px solid #ffffff50;border-radius:0;backdrop-filter:blur(4px);touch-action:manipulation}
  .hero-next:hover,.hero-next:active{background:#0006}
  .hero-autoplay{display:block;position:absolute;z-index:5;bottom:max(18px,env(safe-area-inset-bottom));left:22px;padding:10px 0;background:transparent;color:white;font-size:10px;font-weight:600;letter-spacing:.2px;text-shadow:0 1px 5px #000}
}
@media(max-width:540px){.hero-panels{height:calc(100svh - 68px)}}
@media(prefers-reduced-motion:reduce){.hero-panel{transition:none!important}}
