:root{--lacquer:#2a1012;--lacquer-2:#3a171a;--lacquer-3:#1d0b0c;--oxblood:#7a2228;--gold:#d4aa5a;--gold-deep:#9c7330;--petal:#f4e4df;--petal-2:#ead2cb;--ink:#2a1012;--ink-soft:#6b4a4c;--on-dark:#f4e4df;--on-dark-soft:#c9afa9;--line-light:#2a101229;--line-dark:#d4aa5a47;--serif:"Alegreya", Georgia, serif;--sans:"Alegreya Sans", "Segoe UI", system-ui, sans-serif;--thai:"Taviraj", "Noto Serif Thai", serif;--price-col:340px;--wrap:1200px;--gutter:clamp(16px, 4vw, 40px);--section:clamp(72px, 10vw, 128px);--header-h:68px;--radius:4px;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px);-webkit-text-size-adjust:100%}body{background:var(--petal);color:var(--ink);font-family:var(--sans);font-kerning:normal;text-rendering:optimizelegibility;margin:0;font-size:1.125rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4{font-family:var(--serif);text-wrap:balance;margin:0;font-weight:500;line-height:1.1}p{text-wrap:pretty;margin:0 0 1em}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.wrap{max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto}.section-title{letter-spacing:-.01em;margin-bottom:.5em;font-size:clamp(2.25rem,4.6vw,3.6rem)}.btn{border-radius:var(--radius);min-height:48px;font:500 1.0625rem/1.2 var(--sans);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:.7em 1.4em;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn--small{min-height:40px;padding:.5em 1em;font-size:1rem}.btn--gold{background:var(--gold);color:var(--lacquer)}.btn--gold:hover{background:#e2bd72}.btn--ghost{border-color:var(--line-dark);color:var(--on-dark)}.btn--ghost:hover{border-color:var(--gold)}.btn--dark{background:var(--lacquer);color:var(--petal)}.btn--dark:hover{background:var(--oxblood)}.link-gold{color:var(--oxblood);text-underline-offset:.2em;font-weight:500}.site-header{z-index:50;background:color-mix(in srgb, var(--lacquer) 94%, transparent);backdrop-filter:blur(8px);color:var(--on-dark);border-bottom:1px solid var(--line-dark);position:sticky;top:0}.site-header__inner{max-width:var(--wrap);padding:0 var(--gutter);height:var(--header-h);align-items:center;gap:24px;margin:0 auto;display:flex}.brand{color:var(--on-dark);flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.brand__mark{width:40px;height:25px;color:var(--gold)}.brand__word{font-family:var(--serif);letter-spacing:.01em;white-space:nowrap;margin:0;font-size:1.375rem;font-weight:500}.brand__spa{color:var(--gold);font-style:italic}.site-nav{align-items:center;gap:24px;margin-left:auto;display:flex}.site-nav ul{gap:22px;margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:var(--on-dark-soft);font-size:1rem;text-decoration:none}.site-nav a:hover{color:var(--on-dark)}.site-nav__book{display:none}.site-nav__phone{white-space:nowrap;font-variant-numeric:lining-nums}.site-header__tools{align-items:center;gap:16px;display:flex}.lang-switch{letter-spacing:.04em;gap:2px;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.lang-switch a,.lang-switch span{min-width:32px;min-height:32px;color:var(--on-dark-soft);border-radius:var(--radius);justify-content:center;align-items:center;padding:0 4px;text-decoration:none;display:inline-flex}.lang-switch a:hover{color:var(--on-dark)}.lang-switch [aria-current]{color:var(--gold)}.nav-toggle{width:44px;height:44px;color:var(--on-dark);cursor:pointer;background:0 0;border:0;padding:0;display:none}.nav-toggle__bars,.nav-toggle__bars:before,.nav-toggle__bars:after{background:currentColor;width:22px;height:1.5px;margin:0 auto;transition:transform .25s,opacity .2s;display:block}.nav-toggle__bars{position:relative}.nav-toggle__bars:before,.nav-toggle__bars:after{content:"";position:absolute;left:0}.nav-toggle__bars:before{top:-7px}.nav-toggle__bars:after{top:7px}.nav-open .nav-toggle__bars{background:0 0}.nav-open .nav-toggle__bars:before{transform:translateY(7px)rotate(45deg)}.nav-open .nav-toggle__bars:after{transform:translateY(-7px)rotate(-45deg)}.hero{background:var(--lacquer);color:var(--on-dark);overflow:hidden}.hero__inner{max-width:var(--wrap);padding:clamp(40px, 4.5vw, 64px) var(--gutter) clamp(56px, 7vw, 104px);grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(32px,5vw,72px);margin:0 auto;display:grid}.hero__title{letter-spacing:-.015em;margin-bottom:.45em;font-size:clamp(2.75rem,5.4vw,4.75rem);line-height:.98}.hero__lead{max-width:34em;color:var(--on-dark-soft);margin-bottom:2em;font-size:clamp(1.125rem,1.6vw,1.3rem)}.hero__facts{border-top:1px solid var(--line-dark);flex-wrap:wrap;gap:12px 40px;margin:0 0 2.2em;padding:1.1em 0 0;display:flex}.hero__facts dt{color:var(--on-dark-soft);font-size:.95rem}.hero__facts dd{font-family:var(--serif);font-variant-numeric:lining-nums;margin:0;font-size:1.5rem}.hero__facts a{text-decoration:none}.hero__facts a:hover{color:var(--gold)}.hero__actions{flex-wrap:wrap;gap:12px;display:flex}.hero__visual{margin:0;padding-right:clamp(56px,7vw,104px);position:relative}.arch{aspect-ratio:4/5;max-height:78vh;margin-left:auto;position:relative}.arch__img{object-fit:cover;object-position:30% 50%;clip-path:url(#arch);width:100%;height:100%}.arch__line{fill:none;width:calc(100% + 20px);height:calc(100% + 10px);stroke:var(--gold);stroke-width:1px;pointer-events:none;position:absolute;inset:-10px;overflow:visible}.hero__thai{justify-content:flex-end;display:flex;position:absolute;top:16%;bottom:0;right:0}.thai{font-family:var(--thai);color:var(--gold);flex-direction:column;gap:.35em;font-size:clamp(2rem,3.3vw,3.25rem);font-weight:500;display:flex}.thai__syl{flex-direction:column;align-items:center;line-height:1.02;display:flex}@media (prefers-reduced-motion:no-preference){.arch__img{animation:1.4s cubic-bezier(.2,.7,.1,1) both arch-in}.arch__line{stroke-dasharray:3000;stroke-dashoffset:3000px;animation:1.8s cubic-bezier(.4,0,.2,1) .3s forwards draw}.thai__syl{opacity:0;animation:.9s cubic-bezier(.2,.7,.1,1) forwards rise}.thai__syl:first-child{animation-delay:.7s}.thai__syl:nth-child(2){animation-delay:.95s}.thai__syl:nth-child(3){animation-delay:1.2s}}@keyframes arch-in{0%{opacity:0;transform:scale(1.04)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes rise{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}.offers{padding:var(--section) 0 calc(var(--section) * .6)}.offers__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.offer__head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:.4em;display:flex}.offer__name{font-size:clamp(1.75rem,3vw,2.4rem);font-style:italic}.offer--package{background:var(--petal-2);border-top:3px solid var(--gold-deep);padding:clamp(24px,3.4vw,44px)}.offer__price{font-family:var(--serif);white-space:nowrap;font-variant-numeric:lining-nums;margin:0;font-size:clamp(1.75rem,3vw,2.4rem)}.offer__badge{font-family:var(--sans);color:var(--oxblood);vertical-align:.35em;margin-right:.3em;font-size:1rem;font-weight:700}.offer__meta{color:var(--ink-soft)}.offer__steps{counter-reset:step;margin:0 0 1.75em;padding:0;list-style:none}.offer__steps li{counter-increment:step;border-top:1px solid var(--line-light);grid-template-columns:2.2em 1fr;padding:.55em 0;display:grid}.offer__steps li:before{content:counter(step);font-family:var(--serif);color:var(--gold-deep);font-weight:700}.offer--hh{padding-top:clamp(24px,3.4vw,44px)}.offer__when{font-family:var(--serif);color:var(--oxblood);font-variant-numeric:lining-nums;font-size:1.4rem}.offer__fine{color:var(--ink-soft);font-size:.95rem}.menu{padding:calc(var(--section) * .6) 0 var(--section)}.menu__head{border-bottom:1px solid var(--line-light);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 32px;margin-bottom:32px;display:flex}.menu__intro{color:var(--ink-soft)}.menu__body.is-tabbed{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);display:grid}.menu__tabs{display:none}.is-tabbed .menu__tabs{top:calc(var(--header-h) + 24px);flex-direction:column;display:flex;position:sticky}.menu__tab{width:100%;color:var(--ink-soft);font:400 1.0625rem/1.3 var(--sans);text-align:left;cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;justify-content:space-between;align-items:baseline;gap:12px;padding:.55em .8em;display:flex}.menu__tab:hover{color:var(--ink)}.menu__tab[aria-selected=true]{color:var(--ink);border-left-color:var(--oxblood);background:var(--petal-2);font-weight:500}.menu__count{color:var(--ink-soft);font-variant-numeric:lining-nums;font-size:.85rem}.menu__panel+.menu__panel{margin-top:56px}.is-tabbed .menu__panel[data-active=false]{display:none}.is-tabbed .menu__panel+.menu__panel{margin-top:0}.menu__cat{margin-bottom:.4em;font-size:1.75rem}.is-tabbed .menu__cat{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.services{margin:0;padding:0;list-style:none}.menu__legend{width:var(--price-col);color:var(--ink-soft);text-align:right;grid-template-columns:26% 22% 26% 26%;margin-left:auto;padding-bottom:8px;font-size:.85rem;display:grid}.service{grid-template-columns:minmax(0, 1fr) var(--price-col);border-bottom:1px solid var(--line-light);gap:8px 32px;padding:22px 0;display:grid}.service:first-child{padding-top:4px}.service__name{font-size:1.5rem;font-style:italic;font-weight:500}.service__tag{font-family:var(--sans);color:var(--oxblood);vertical-align:.2em;margin-left:.6em;font-size:.875rem;font-style:normal;font-weight:700}.service__desc{color:var(--ink-soft);max-width:38em;margin:.3em 0 0;font-size:1.0625rem}.service__steps{color:var(--ink-soft);max-width:36em;margin:.5em 0 0;padding:0;font-size:1rem;list-style:none}.service__steps li{padding-left:1.1em;position:relative}.service__steps li:before{content:"";background:var(--gold-deep);width:5px;height:5px;position:absolute;top:.68em;left:.2em;transform:rotate(45deg)}.service__prices{table-layout:fixed;border-collapse:collapse;font-variant-numeric:lining-nums tabular-nums;align-self:start;width:100%}.c-dur{width:26%}.c-price{width:22%}.c-client,.c-book{width:26%}.service__prices td{white-space:nowrap;vertical-align:baseline;text-align:right;padding:4px 0}.service__prices tr:hover td{background:var(--petal-2)}.service__dur{color:var(--ink-soft);text-align:right}.service__price{font-family:var(--serif);text-align:right;font-size:1.3rem;font-weight:600}.service__client{color:var(--ink-soft);text-align:right;font-size:.95rem}.service__book a{min-height:32px;color:var(--oxblood);align-items:center;padding-right:6px;font-size:1rem;font-weight:500;text-decoration:none;display:inline-flex}.service__book a:hover,.service__book a:focus-visible{text-underline-offset:.2em;text-decoration:underline}.salon{background:var(--lacquer);color:var(--on-dark);padding:var(--section) 0}.salon__inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.salon__text{top:calc(var(--header-h) + 32px);position:sticky}.salon__text p{color:var(--on-dark-soft);max-width:30em}.gallery{grid-template-columns:repeat(6,1fr);grid-auto-rows:clamp(90px,9vw,130px);gap:10px;display:grid}.gallery__img{object-fit:cover;border-radius:2px;width:100%;height:100%}.g-a{grid-area:span 3/1/auto/5}.g-b,.g-c{grid-area:span 2/5/auto/7}.g-d{grid-area:span 2/1/auto/3}.g-e{grid-area:span 2/3/auto/5}.g-f{grid-area:span 1/5/auto/7}.find{padding:var(--section) 0}.find__inner{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:stretch;gap:clamp(32px,5vw,72px);display:grid}.find__lead{font-family:var(--serif);color:var(--oxblood);max-width:22em;font-size:clamp(1.4rem,2.2vw,1.75rem);line-height:1.3}.find__steps{counter-reset:step;margin:0 0 1.5em;padding:0;list-style:none}.find__steps li{counter-increment:step;border-top:1px solid var(--line-light);grid-template-columns:2.6em 1fr;align-items:baseline;padding:.75em 0;display:grid}.find__steps li:last-child{border-bottom:1px solid var(--line-light)}.find__steps li:before{content:counter(step);font-family:var(--serif);color:var(--gold-deep);font-size:1.75rem;line-height:1}.find__arrive{color:var(--ink-soft)}.find__sub{margin:1.4em 0 .4em;font-size:1.4rem}.find__parking{color:var(--ink-soft);max-width:34em}.find__map{background:var(--petal-2);border-radius:2px;min-height:420px;overflow:hidden}.find__map iframe{filter:sepia(.25)saturate(.85);border:0;width:100%;height:100%;min-height:420px;display:block}.gift{background:var(--petal-2);padding:var(--section) 0}.gift__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,5vw,72px);display:grid}.gift__img{aspect-ratio:5/4;object-fit:cover;border-radius:2px;width:100%}.gift__lead{max-width:32em;font-size:1.25rem}.gift__ways{border-top:1px solid var(--line-light);grid-template-columns:1fr 1.6fr;gap:24px 32px;margin:1.6em 0 2em;padding-top:1.2em;display:grid}.gift__ways h3{margin-bottom:.3em;font-size:1.3rem;font-style:italic}.gift__ways p{color:var(--ink-soft);margin:0}.gift__notes{color:var(--ink-soft);margin:1.6em 0 0;padding:0;font-size:.95rem;list-style:none}.book{background:var(--lacquer);color:var(--on-dark);padding:var(--section) 0}.book__inner{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.book__text p{color:var(--on-dark-soft);max-width:30em}.book__call{font-size:1.125rem}.book__call a{font-family:var(--serif);color:var(--gold);font-variant-numeric:lining-nums;font-size:2rem;text-decoration:none;display:block}.book__sub{margin:1.6em 0 .5em;font-size:1.3rem}.book__rules{color:var(--on-dark-soft);margin:0;padding:0 0 0 1.1em;font-size:1rem}.book__form{background:var(--lacquer-2);border:1px solid var(--line-dark);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:18px 20px;padding:clamp(20px,3vw,36px);display:grid}.book__form.flash{animation:1.2s ease-out flash}@keyframes flash{0%{border-color:var(--gold);box-shadow:0 0 0 4px #d4aa5a40}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field--wide{grid-column:1/-1}.field label{color:var(--on-dark-soft);font-size:.95rem}.field input,.field select,.field textarea{border-radius:var(--radius);background:var(--lacquer);width:100%;min-height:46px;color:var(--on-dark);font:400 1.0625rem/1.3 var(--sans);color-scheme:dark;border:1px solid #f4e4df38;padding:10px 12px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #d4aa5a40}.field [aria-invalid=true]{border-color:#e0837a}.field select:disabled{opacity:.55}.field ::placeholder{color:#c9afa999}.book__submit{flex-flow:wrap;align-items:center;gap:12px 20px;margin-top:4px}.book__note{color:var(--on-dark-soft);margin:0;font-size:.95rem}.book__error{color:#f0a39b;flex-basis:100%;margin:0}.site-footer{background:var(--lacquer-3);color:var(--on-dark-soft);padding:56px 0 40px;font-size:1rem}.site-footer__inner{grid-template-columns:auto 1fr;gap:32px 64px;display:grid}.site-footer__brand{color:var(--on-dark);align-items:center;gap:10px;display:flex}.site-footer__mark{width:40px;height:25px;color:var(--gold)}.site-footer__cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 40px;margin:0;display:grid}.site-footer__cols dt{color:var(--on-dark);margin-bottom:4px;font-weight:500}.site-footer__cols dd{margin:0}.site-footer__cols a{text-decoration:none}.site-footer__cols a:hover{color:var(--on-dark)}.site-footer__legal{border-top:1px solid #d4aa5a2e;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:12px 32px;padding-top:24px;font-size:.9rem;display:flex}.site-footer__legal p{margin:0}.site-footer__langs{gap:20px;margin:0;padding:0;list-style:none;display:flex}.site-footer__langs a{text-decoration:none}.site-footer__langs [aria-current]{color:var(--gold)}@media (width<=1080px){.site-nav__phone{display:none}.site-nav ul{gap:16px}}@media (width<=960px){.nav-toggle{display:block}.site-nav{inset:var(--header-h) 0 auto 0;padding:8px var(--gutter) 24px;background:var(--lacquer);border-bottom:1px solid var(--line-dark);opacity:0;visibility:hidden;flex-direction:column;align-items:stretch;gap:0;transition:opacity .2s,transform .2s,visibility .2s;position:fixed;transform:translateY(-8px)}.nav-open .site-nav{opacity:1;visibility:visible;transform:none}.site-nav ul{flex-direction:column;gap:0}.site-nav a{color:var(--on-dark);border-bottom:1px solid #d4aa5a24;padding:14px 0;font-size:1.25rem;display:block}.site-nav__book{display:block}.site-nav__book a{color:var(--gold)}.site-nav__phone{display:block;color:var(--gold)!important;border-bottom:0!important}.site-header__tools{gap:8px;margin-left:auto}.hero__inner{grid-template-columns:1fr}.hero__visual{order:-1;width:100%;max-width:520px;margin:0 auto}.arch{aspect-ratio:5/5}.offers__grid,.salon__inner,.find__inner,.gift__inner,.book__inner{grid-template-columns:1fr}.salon__text{position:static}.menu__body.is-tabbed{grid-template-columns:1fr;gap:16px}.is-tabbed .menu__tabs{top:var(--header-h);z-index:5;margin:0 calc(var(--gutter) * -1);padding:8px var(--gutter);background:var(--petal);border-bottom:1px solid var(--line-light);scrollbar-width:none;flex-direction:row;overflow-x:auto}.is-tabbed .menu__tabs::-webkit-scrollbar{display:none}.menu__tab{white-space:nowrap;border-bottom:2px solid #0000;border-left:0;flex-shrink:0;width:auto}.menu__tab[aria-selected=true]{border-bottom-color:var(--oxblood);background:0 0}.menu__count{display:none}.site-footer__inner{grid-template-columns:1fr}}@media (width<=640px){body{font-size:1.0625rem}.brand__word{font-size:1.2rem}.site-header__tools .btn--small{display:none}.lang-switch a,.lang-switch span{min-width:30px}.hero__visual{padding-right:44px}.hero__thai{top:20%}.thai{gap:.3em;font-size:1.4rem}.service{grid-template-columns:1fr;gap:10px}.menu__legend{width:100%}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px}.g-a{grid-area:span 2/1/auto/-1}.g-b,.g-c,.g-d,.g-e{grid-area:span 1}.g-f{grid-area:span 1/1/auto/-1}.gift__ways,.book__form,.site-footer__cols{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
