.salon-announcement{padding:14px 6%;background:#753c55;color:#fff;text-align:center;font-size:14px}.salon-tabs{display:flex;gap:5px;padding:12px;border-bottom:1px solid #dfc9cf}.salon-tabs button,.salon-pane button{background:#71354f;color:#fff;border:0;border-radius:8px;padding:10px 13px;font:inherit;cursor:pointer}.salon-tabs button{font-size:13px;flex:1}.salon-pane{padding:16px;max-height:65dvh;overflow:auto}.salon-pane form{display:grid;gap:12px}.salon-pane label{display:grid;gap:6px;font-size:13px}.salon-pane input,.salon-pane textarea,.salon-pane select{font:inherit;width:100%;min-width:0;padding:10px;border:1px solid #ccb5c0;border-radius:7px;background:#fff;color:#30202c;box-sizing:border-box}.salon-datetime{display:grid;grid-template-columns:1fr 1fr;gap:10px}.salon-pane .salon-consent{display:flex;align-items:flex-start;font-size:11px;line-height:1.7;gap:8px}.salon-consent input{width:17px;flex-shrink:0}.salon-note{font-size:12px;line-height:1.7;color:#715866}.salon-pane .booking-chat-log{max-height:230px;padding:10px 0}.salon-pane button:disabled{opacity:.5;cursor:wait}#salon-error{padding:10px 16px;color:#ac2344;font-size:13px}.salon-pane [hidden]{display:none!important}
.menu-editorial{background:#fbf3ef}.menu-editorial .menu-section{display:block;background:transparent;padding:24px 6% 70px;border:0;max-width:1400px;margin:auto}.menu-editorial .menu-intro{position:static;display:grid;grid-template-columns:1fr auto;column-gap:36px;margin-bottom:54px}.menu-editorial .menu-intro .eyebrow{grid-column:1/-1;font-size:10px;letter-spacing:2px;color:#9a6170;margin:0 0 24px}.menu-editorial .menu-title{font-size:clamp(48px,6vw,84px);letter-spacing:-2px;line-height:1.12;grid-row:2/5}.menu-editorial .menu-title em{color:#a54e69}.menu-editorial .menu-intro>p:not(.eyebrow){max-width:340px;margin:10px 0 16px;font-size:14px}.menu-editorial .menu-intro .menu-note{grid-column:1/-1;max-width:none;font-size:11px;margin:10px 0}.menu-hero-book,.menu-finale button{border:0;border-radius:30px;background:#65152f;color:#fff3ef;padding:16px 24px;display:flex;justify-content:space-between;gap:40px;align-items:center;font:inherit;font-size:13px;cursor:pointer}.menu-editorial .price-note{border:0;padding:0;margin:14px 0 0;font-size:10px;letter-spacing:2px}.menu-editorial .menu-jumps{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:32px;border-top:1px solid #d9bac3;border-bottom:1px solid #d9bac3;padding:0;position:sticky;top:0;z-index:4;background:#fbf3eff5}.menu-editorial .menu-jumps a{display:flex;gap:12px;align-items:center;padding:19px 16px;border:0;border-right:1px solid #d9bac3;border-radius:0;font-size:14px;white-space:nowrap;background:none}.menu-editorial .menu-jumps a:last-child{border-right:0}.menu-jumps small{color:#b17a8b;font-size:10px}.menu-jumps a>span{margin-left:auto}.menu-editorial .menu-jumps a:hover{background:#f2e0e4}.menu-editorial .price-groups{display:block;max-width:none;width:100%}.menu-editorial .price-group{border:0;border-radius:0;padding:0;box-shadow:none;background:none;scroll-margin-top:24px}.menu-editorial .price-group+.price-group{margin-top:70px}.menu-group-heading{display:flex;align-items:center;gap:20px;margin-bottom:24px}.menu-number{font:italic 54px var(--serif);color:#d8a9b8;line-height:1}.menu-editorial .price-group h3{font-size:36px;border:0;margin:0;padding:0}.menu-group-heading p{font-size:12px;color:#977482;margin-top:8px}.menu-count{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:1px;border:1px solid #ddc1cb;border-radius:20px;padding:6px 12px;white-space:nowrap}.menu-editorial .menu-main-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-editorial .price-group dl>.menu-service{background:#fffbf8;border:1px solid #ebd9de;border-radius:16px;padding:23px;display:flex;align-items:flex-start;gap:15px;min-width:0}.menu-service-copy{min-width:0;flex:1}.menu-editorial .menu-service dt{font:20px var(--serif);line-height:1.35}.menu-editorial .menu-service dd{display:flex;align-items:flex-end;flex-direction:column;gap:16px;margin:0;max-width:48%;white-space:normal;text-align:right;font-size:13px}.menu-service dd strong{font-weight:500;line-height:1.6}.menu-duration{display:inline-block;font-size:10px;color:#8a6974;padding:3px 8px;border-radius:20px;background:#f5e9eb;margin-top:10px}.menu-pick{border:0;border-bottom:1px solid #d7a9b7;background:none;color:#924761;font:inherit;font-size:10px;padding:4px 0;cursor:pointer;white-space:nowrap}.menu-service-image{width:60px;height:60px;object-fit:cover;border-radius:10px;margin-bottom:10px}.menu-ritual{margin-top:14px;font-size:12px;color:#866370;max-width:420px}.menu-ritual summary{cursor:pointer;text-decoration:none;font-size:11px;line-height:1.7}.menu-ritual ol{padding-left:19px;margin:14px 0 0;line-height:1.8}.menu-ritual li{padding-bottom:5px}.menu-extras{margin-top:18px;padding:24px;border-radius:18px;background:#f0e1e4}.menu-extras-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.menu-extras h4{font:italic 23px var(--serif);margin:0}.menu-extras-heading>span{font-size:9px;letter-spacing:1.4px;color:#916776}.menu-editorial .menu-extras dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.menu-editorial .menu-extras dl>.menu-service{padding:15px 0;border:0;border-bottom:1px solid #dfc9d0;border-radius:0;background:none;align-items:center}.menu-editorial .menu-extras .menu-service dt{font-family:inherit;font-size:13px}.menu-editorial .menu-extras .menu-service-image{display:none}.menu-extras .menu-duration{margin:5px 0 0;padding:0;background:none}.menu-finale{background:#65152f;color:#fff4ec;text-align:center;padding:65px 24px 80px}.menu-finale .eyebrow{font-size:9px;letter-spacing:2px;color:#ddb7c3}.menu-finale h2{font-size:clamp(36px,4.5vw,64px);margin:20px 0 26px}.menu-finale h2 em{color:#efbece}.menu-finale button{background:#fff1e9;color:#65152f;margin:auto}.menu-finale p{font-size:10px;color:#d7aab9;margin-top:15px}
.booking-widget{z-index:100}.booking-widget .booking-trigger{background:#65152f;border:1px solid #a56278;color:#fff3ec;box-shadow:0 8px 25px #65152f35;padding:16px 23px;min-height:56px;font-size:14px}.booking-widget .booking-trigger span{color:#efc3cf;margin:0 5px}.booking-widget .booking-panel{width:470px;max-width:calc(100vw - 32px);border:1px solid #e5bbc8;border-radius:24px;background:#fff9f6;box-shadow:0 24px 90px #42122740;max-height:calc(100dvh - 100px)}.booking-widget .booking-heading{padding:24px;background:radial-gradient(ellipse at top right,#ab6680 0,transparent 65%),#65152f;color:#fff6ed;border:0;align-items:flex-start}.booking-kicker{display:block;font-size:8px;letter-spacing:2px;margin-bottom:12px;color:#e9b6c7}.booking-widget .booking-heading strong{font:32px var(--serif);line-height:1.15}.booking-widget .booking-heading small{font-size:11px;color:#f0cfda;margin-top:9px}.booking-widget .booking-close{color:#fff;background:#ffffff15;border:1px solid #ffffff40;border-radius:50%;width:32px;height:32px;flex-shrink:0}.booking-widget .salon-tabs{padding:10px 16px;background:#f3e7e9;border:0}.booking-widget .salon-tabs button{background:transparent;color:#794457;border-radius:20px;padding:10px;font-size:12px}.booking-widget .salon-tabs button[aria-pressed=true]{background:#fffaf7;box-shadow:0 2px 5px #52152b10;color:#65152f}.booking-widget .salon-pane{padding:22px;max-height:calc(100dvh - 310px)}.booking-intro>span{font-size:8px;letter-spacing:1.8px;color:#a36a7d}.booking-intro p{font:italic 22px var(--serif);margin:5px 0 4px}.booking-selection{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid #e6c8d2;border-radius:14px;background:#f8ebed}.booking-selection-icon{font-size:27px;color:#a3637b}.booking-selection>div{flex:1;min-width:0}.booking-selection strong{font:18px var(--serif);line-height:1.3;display:block}.booking-selection small{display:block;font-size:9px;color:#926776;margin-top:5px}.booking-selection b{font-size:13px;color:#792d49;white-space:nowrap}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-widget .salon-pane form{gap:16px}.booking-widget .salon-pane label{font-size:11px;color:#744756;gap:7px}.booking-widget .salon-pane input,.booking-widget .salon-pane select,.booking-widget .salon-pane textarea{background:white;border:1px solid #e5d3d9;border-radius:10px;padding:12px;font-size:14px}.booking-widget .salon-pane input:focus,.booking-widget .salon-pane select:focus,.booking-widget .salon-pane textarea:focus{outline:2px solid #b66a85;outline-offset:1px}.booking-widget .salon-pane .salon-consent{font-size:10px}.booking-widget .booking-submit{padding:16px;background:#65152f;display:flex;justify-content:space-between;border-radius:12px;font-size:13px}.booking-success-icon{font-size:24px;border:1px solid #b8c9b0;background:#eff5e8;color:#547746;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;margin-bottom:18px}
@media(max-width:700px){.menu-editorial .menu-section{padding:20px 5% 45px}.menu-editorial .menu-intro{display:block;margin-bottom:32px}.menu-editorial .menu-title{font-size:50px}.menu-editorial .menu-intro>p:not(.eyebrow){max-width:none;margin-top:20px}.menu-editorial .menu-hero-book{margin-top:20px;width:100%}.menu-editorial .menu-jumps{grid-template-columns:repeat(2,1fr);margin-top:24px}.menu-editorial .menu-jumps a{padding:14px 12px;font-size:12px;border-bottom:1px solid #d9bac3}.menu-editorial .menu-jumps a:nth-child(2){border-right:0}.menu-editorial .menu-jumps a:nth-last-child(-n+2){border-bottom:0}.menu-editorial .menu-main-services{grid-template-columns:1fr;gap:9px}.menu-editorial .price-group+.price-group{margin-top:42px}.menu-editorial .price-group h3{font-size:29px}.menu-number{font-size:42px}.menu-group-heading{gap:14px}.menu-count{display:none}.menu-group-heading p{font-size:11px}.menu-editorial .price-group dl>.menu-service{padding:19px}.menu-editorial .menu-extras dl{grid-template-columns:1fr}.menu-editorial .menu-extras dl>.menu-service{padding:14px 0}.menu-extras{padding:18px}.menu-extras-heading{display:block}.menu-extras-heading>span{display:block;margin-top:5px}.menu-editorial .menu-service dt{font-size:19px}.menu-editorial .menu-service dd{font-size:12px}.booking-widget .booking-heading{padding:20px}.booking-widget .booking-heading strong{font-size:28px}.booking-widget .salon-pane{padding:18px}.booking-widget .booking-panel{bottom:70px}.booking-widget .booking-trigger{font-size:12px;min-height:52px;padding:13px 18px}}
@media(max-width:380px){.booking-fields{grid-template-columns:1fr}.booking-selection{flex-wrap:wrap}.menu-editorial .menu-service dd{max-width:45%}}

.booking-concierge{text-align:center;padding:8px 4px 16px}.booking-concierge-mark{font-size:48px;color:#b87990}.booking-concierge .booking-kicker{color:#a7687e;margin-top:8px}.booking-concierge h3{font:32px var(--serif);margin:12px 0}.booking-concierge>p:not(.booking-kicker){font-size:12px;line-height:1.9;color:#94717e;margin:14px auto 24px;max-width:320px}.booking-concierge .booking-submit{width:100%;display:flex;justify-content:space-between;padding:16px}.booking-concierge small{display:block;font-size:10px;margin-top:16px;color:#957780}
.booking-widget .booking-panel[data-tab=chat]{display:flex;flex-direction:column;width:300px;height:min(360px,calc(var(--chat-vh,100dvh) - 100px));max-height:calc(var(--chat-vh,100dvh) - 100px);overflow:hidden}.booking-widget .booking-panel[data-tab=chat] .booking-heading{padding:9px 12px;flex-shrink:0;align-items:center}.booking-widget .booking-panel[data-tab=chat] .booking-heading strong{font-size:18px}.booking-panel[data-tab=chat] .booking-kicker,.booking-panel[data-tab=chat] .booking-heading small{display:none}.booking-widget .booking-panel[data-tab=chat] .salon-tabs{padding:3px 7px;flex-shrink:0}.booking-widget .booking-panel[data-tab=chat] .salon-tabs button{padding:7px;font-size:11px}.booking-widget #salon-chat{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none;overflow:hidden;padding:8px 10px;gap:6px}.chat-privacy{font-size:10px;color:#866270;flex-shrink:0}.chat-privacy summary{cursor:pointer}.chat-privacy p{margin:5px 0;max-height:65px;overflow:auto;line-height:1.5}.booking-widget #salon-chat .salon-consent{margin:0;flex-shrink:0;font-size:10px;line-height:1.5;align-items:center}.booking-widget #salon-chat .salon-consent input{width:17px;height:17px;padding:0}.booking-widget #salon-chat .booking-chat-log{flex:1;min-height:0;height:auto;max-height:none;overflow-y:auto;padding:6px 0;overscroll-behavior:contain}.booking-widget #ai-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;flex-shrink:0;align-items:center;margin:0;padding:8px 0 2px;border-top:1px solid #e5ccd5;background:#fff9f6}.booking-widget #ai-form label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.booking-widget #ai-form input{font-size:16px;min-height:44px;padding:10px;min-width:0}.booking-widget #ai-form button{min-height:44px;padding:10px 14px;white-space:nowrap;font-size:12px}.booking-panel[data-tab=chat] #salon-error{flex-shrink:0;max-height:56px;overflow:auto;margin:0;padding:6px 14px;font-size:11px}.booking-widget.chat-keyboard .booking-panel[data-tab=chat]{position:fixed;bottom:calc(var(--chat-bottom,0px) + 8px);right:12px;height:min(360px,calc(var(--chat-vh,100dvh) - 16px));max-height:calc(var(--chat-vh,100dvh) - 16px)}.booking-widget.chat-keyboard:has(.booking-panel[data-tab=chat]:not([hidden])) .booking-trigger{visibility:hidden}@media(max-width:520px){.booking-widget .booking-panel[data-tab=chat]{width:min(300px,calc(100vw - 24px));max-width:calc(100vw - 24px);border-radius:18px;bottom:64px}}@media(max-height:450px){.booking-widget .booking-panel[data-tab=chat]{position:fixed;bottom:8px;right:12px;height:min(360px,calc(var(--chat-vh,100dvh) - 16px));max-height:calc(var(--chat-vh,100dvh) - 16px)}}

.booking-widget .booking-panel[data-tab=book]{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 96px);display:flex;flex-direction:column;overflow:hidden}
.booking-panel[data-tab=book] .booking-heading,.booking-panel[data-tab=book] .salon-tabs{flex-shrink:0}
.booking-widget #salon-book{min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}
#request-booking label{font-size:14px}#request-booking input,#request-booking select,#request-booking textarea{font-size:16px;min-height:46px}
#request-booking .salon-consent{font-size:12px}#request-booking .salon-consent input{min-height:0;width:18px;height:18px;margin-top:2px}
#request-booking .booking-submit{min-height:50px;font-size:15px}#request-booking .salon-note{font-size:12px}
@media(max-width:380px){#request-booking .booking-fields,#request-booking .salon-datetime{grid-template-columns:1fr}}
