:root{--paper:#f7f4ed;--rose:#ece7dc;--rose-deep:#e2d9c8;--ink:#29281f;--muted:#696351;--wine:#4b4c33;--line:#d8cfbd;--gold:#a58648;--gold-light:#dac28e;--gold-ink:#755a2a;--ease:cubic-bezier(.16,1,.3,1)}
html{scroll-padding-top:100px}body{background:var(--paper);color:var(--ink)}::selection{background:#d8c49b;color:#24251b}:focus-visible{outline:2px solid #8c713e;outline-offset:5px}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-thumb{background:#a49b82}body::-webkit-scrollbar-track{background:var(--paper)}
.site-header{height:100px;padding:0 5%;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:none;z-index:30}.brand img{width:52px;height:52px}.brand>span{font-size:29px;letter-spacing:-.025em}.brand small{font-size:10px;letter-spacing:.11em;color:var(--muted)}.site-header nav{gap:30px;font-size:12px}.header-actions{gap:27px}.button{background:var(--ink);color:var(--paper);border:1px solid var(--ink);min-height:50px;font-size:12px;padding:15px 24px;box-shadow:none!important}.button:hover{background:var(--wine);border-color:var(--wine)}.header-book{background:transparent;color:var(--ink);min-height:44px;padding:10px 18px}.header-book:hover{color:var(--paper)}.language{font-size:11px}
h1,h2,h3{font-weight:500}h2{font-size:clamp(42px,4.9vw,72px);letter-spacing:-.035em;line-height:1.02}.section{padding:110px 7%;scroll-margin-top:95px}.section p{font-size:14px;line-height:1.85}.text-link{font-size:12px;color:var(--ink);border-color:var(--gold);min-height:44px}.text-link svg{color:var(--gold-ink)}
.walkthrough-track{background:var(--paper)}.walkthrough-track.is-scroll-ready{height:calc(100svh - 100px + 140svh)}.walkthrough.cinema{background:var(--paper);color:var(--ink);height:calc(100svh - 100px);min-height:650px;max-height:1050px;overflow:hidden;isolation:isolate}.is-scroll-ready>.walkthrough{top:100px}.walkthrough-visual{position:absolute;left:43%;right:3.5%;top:13%;bottom:auto;width:auto;aspect-ratio:16/9;background:#191b15;z-index:1}.walkthrough-visual picture,.walkthrough-visual canvas,.walkthrough-visual img{width:100%;height:100%;object-fit:contain}.walkthrough .cinema-shade,.walkthrough .cinema-frame{display:none}.walkthrough .hero-copy{left:7%;right:auto;top:45%;width:40%;max-width:40%;transform:translateY(-50%);opacity:1;pointer-events:auto;z-index:3}.walkthrough .hero-copy:focus-within{transform:translateY(-50%)}.walkthrough.cinema h1{font-size:clamp(62px,6.5vw,96px);line-height:.94;letter-spacing:-.035em;margin-bottom:28px}.walkthrough .hero-line{padding-bottom:.07em}.walkthrough .hero-line em{color:var(--gold-ink)}.walkthrough .hero-copy>p{color:var(--muted);font-size:13px;line-height:1.9;max-width:300px;margin-bottom:24px}.walkthrough .hero-copy .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}.walkthrough .hero-copy .button:hover{background:var(--wine)}.walkthrough .cinema-bottom{left:7%;right:3.5%;bottom:32px;color:var(--ink);z-index:6}.walkthrough .cinema-scroll{background:none;padding:0;color:var(--ink);font-size:11px}.walkthrough-controls{background:none;color:var(--ink);padding:0;gap:13px}.walkthrough-status{font-size:11px}.walkthrough .motion-toggle{color:var(--ink);border:1px solid var(--line);background:transparent;width:44px;height:44px}.walkthrough .motion-label{color:var(--ink);background:var(--paper)}.walkthrough-progress{background:var(--line)}.walkthrough-progress span{background:var(--gold)}.walkthrough-position{accent-color:var(--gold-ink)}
.walkthrough.cinema::after{content:'';position:absolute;left:53%;right:8%;bottom:112px;height:clamp(90px,13vh,135px);background:url('/assets/nails-pearl.webp') left 48%/32% auto no-repeat,url('/assets/hair-waves.webp') center 40%/32% auto no-repeat,url('/assets/nails-lilac.webp') right 50%/32% auto no-repeat;pointer-events:none}
.intro{position:relative;grid-template-columns:1fr 1fr;gap:12%;background:var(--paper);padding-top:100px;padding-bottom:100px;isolation:isolate;overflow:hidden;border:0}.intro::before{content:'';position:absolute;inset:0;background:url('/assets/editorial-silk.webp') center/cover;opacity:.25;z-index:-1}.intro-line{display:none}.intro h2{font-size:clamp(38px,4.4vw,64px);max-width:540px}.intro h2 em{color:var(--gold-ink)}.intro-copy p{font-size:14px;max-width:420px}.intro-copy .text-link{margin-top:20px}
.section-heading{margin-bottom:55px;align-items:end}.section-heading>p{font-size:14px;max-width:320px}.service-layout{grid-template-columns:1fr 1fr;gap:11%}.service-photo{top:125px}.service-photo img{aspect-ratio:4/5;max-height:680px}.service-photo figcaption{font-size:11px;letter-spacing:.06em}.service:first-child{border-top:1px solid var(--line)}.service summary{font-size:36px;padding:28px 0}.service[open] summary{color:var(--gold-ink)}.service-content p{font-size:14px}.service-content ul{font-size:12px;gap:12px 18px;margin:25px 0}.service-content li:before{background:var(--gold)}.service-content .text-link,.catalog-link{font-size:12px}
.work{background:#eae5d9;padding-top:110px;padding-bottom:105px}.gallery{grid-template-columns:1.15fr .85fr 1fr;gap:38px 28px}.gallery-item span{font-size:12px;padding:16px 0}.gallery-item img{aspect-ratio:3/4}.gallery-item.item-1{margin-top:75px}.gallery-item.item-2{margin-top:145px}.gallery-filters{margin-bottom:45px;gap:8px}.gallery-filters button{min-height:44px;font-size:12px;border:1px solid var(--line);padding:8px 20px}.gallery-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.insta-link{margin-top:50px}
.location{background:#303227;color:var(--paper);gap:10%;padding-top:110px;padding-bottom:110px}.location h2{font-size:clamp(44px,4.8vw,68px)}.location h2 em{color:var(--gold-light)}.location address,.hours dl,.hours p,.google-rating span,.verified{color:#e1dccd}.location address{font-size:14px}.location .button.light{color:var(--paper);background:transparent;border:1px solid #a9a68d}.location .button.light:hover{background:var(--paper);color:var(--ink)}.hours h3{font-size:14px}.hours dl,.hours p{font-size:13px}.hours dl div{border-color:#666956}.map-shell{min-height:400px;aspect-ratio:1/1}.map-shell iframe{min-height:400px}.google-proof{margin-top:25px}.google-rating>svg{color:var(--gold-light)}.google-proof>a{font-size:12px}.verified{font-size:11px}.google-review-prompt{border-color:#666956!important}.google-review-prompt h3{font-size:29px}.google-review-prompt p{font-size:13px}.location .text-link{color:var(--paper)}
.reservation{background:var(--paper);gap:13%;position:relative}.reservation h2{font-size:clamp(50px,5.4vw,78px)}.reservation h2 em{color:var(--gold-ink)}.reservation>div>p{font-size:14px;max-width:390px}.phone-link{font-size:18px}.field label{font-size:12px}.field input,.field select{font-size:16px;border-color:#a69d84;padding:15px 0;min-height:52px}.form-note{font-size:12px}.faq{border-top:1px solid var(--line);padding-top:75px;padding-bottom:85px;gap:13%}.faq h2{font-size:43px}.faq summary{font-size:14px;padding:23px 0}.faq details p{font-size:13px}
footer{background:#e9e3d5;padding:45px 7% 28px;color:var(--ink)}.footer-top{font-size:12px;border-color:var(--line)}.footer-signature{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:35px 0}.footer-signature img{width:100px;height:100px;object-fit:contain}.footer-wordmark{font-size:clamp(80px,14vw,190px);padding:0;line-height:1.05;color:var(--ink)}.footer-wordmark em{color:var(--gold-ink)}.footer-bottom{border-color:var(--line);font-size:11px}.whatsapp-float{background:var(--ink);color:var(--paper);box-shadow:0 6px 20px #29281f25}.whatsapp-float:hover{background:var(--wine)}
@media(max-width:1100px){.site-header nav{gap:17px}.header-actions{gap:17px}.walkthrough.cinema h1{font-size:clamp(62px,7vw,82px)}.walkthrough-visual{top:17%;left:45%;right:3%}.walkthrough .hero-copy{width:42%;max-width:42%;left:5%}.walkthrough.cinema::after{left:54%;bottom:130px}.section{padding-left:6%;padding-right:6%}.service-layout{gap:7%}.service summary{font-size:31px}}
@media(max-width:760px){html{scroll-padding-top:78px}.site-header{height:78px;padding:0 6%}.brand img{width:43px;height:43px}.brand>span{font-size:25px}.brand small{font-size:9px;max-width:none}.header-actions{gap:12px}.site-header nav{top:78px;background:var(--paper);padding:20px 6%}.header-book{display:none}.menu-button{min-width:44px;min-height:44px}.site-header .language a{display:inline-flex;align-items:center;min-height:44px;padding:0 3px}.section{padding:68px 7%;scroll-margin-top:78px}.walkthrough-track.is-scroll-ready{height:calc(100svh - 78px + 105svh)}.is-scroll-ready>.walkthrough{top:78px}.walkthrough.cinema{height:calc(100svh - 78px);min-height:730px;max-height:none;display:flex;flex-direction:column}.walkthrough .hero-copy{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;width:auto;max-width:none;padding:30px 7% 0;order:1}.walkthrough .hero-copy:focus-within{transform:none}.walkthrough.cinema h1{font-size:clamp(49px,12.4vw,72px);line-height:.91;margin:0 0 18px}.walkthrough .hero-line{display:inline;padding:0}.walkthrough .hero-line::after{content:' '}.walkthrough .hero-line:last-child{display:block}.walkthrough .hero-copy>p{font-size:12px;line-height:1.65;margin-bottom:17px;max-width:290px}.walkthrough .hero-copy .button{min-height:46px;padding:12px 19px;font-size:11px}.walkthrough-visual{position:relative;left:auto;right:auto;top:auto;bottom:auto;margin:30px 5% 0;width:90%;aspect-ratio:16/9;flex:none;order:2}.walkthrough .cinema-bottom{left:7%;right:7%;bottom:20px;gap:12px}.walkthrough .cinema-scroll{max-width:110px;font-size:10px;gap:12px}.walkthrough .cinema-scroll svg{height:27px}.walkthrough-controls{gap:7px}.walkthrough-position{width:70px}.walkthrough-status{min-width:43px;font-size:10px}.walkthrough.cinema::after{display:none}.walkthrough .motion-label{right:0;bottom:45px;white-space:nowrap}.intro{grid-template-columns:1fr;gap:26px}.intro h2{font-size:44px}.intro-copy p{font-size:14px}.section-heading{margin-bottom:33px}.section-heading h2{font-size:46px}.section-heading>p{max-width:320px;margin-top:23px;font-size:14px}.service-layout{display:flex;gap:26px}.service-photo img{aspect-ratio:5/4;max-height:420px}.service-photo figcaption{font-size:10px}.service summary{font-size:31px;padding:24px 0}.service-content ul{grid-template-columns:1fr 1fr;font-size:11px}.gallery{grid-template-columns:1fr 1fr;gap:25px 15px}.gallery-item.item-1,.gallery-item.item-3,.gallery-item.item-5{margin-top:35px}.gallery-item.item-2,.gallery-item.item-4{margin-top:0}.gallery-item span{font-size:11px;padding:10px 0}.gallery-filters{gap:5px;margin-bottom:28px;flex-wrap:wrap}.gallery-filters button{padding:8px 15px;font-size:11px}.location{gap:40px}.location h2{font-size:48px}.map-shell,.map-shell iframe{min-height:320px}.google-proof{align-items:start}.google-proof>a{font-size:11px}.reservation{gap:36px}.reservation h2{font-size:56px}.reservation>div>p{font-size:14px}.faq{gap:25px}.faq h2{font-size:39px}.faq summary{font-size:13px}.footer-signature{gap:20px;padding:35px 0}.footer-signature img{width:65px;height:65px}.footer-wordmark{font-size:clamp(60px,16vw,100px)}.footer-top{gap:22px}.footer-bottom{font-size:10px}.footer-top a:last-child{margin-left:0}}
@media(max-width:380px){.brand small{display:block;font-size:8px}.brand>span{font-size:23px}.header-actions{gap:4px}.walkthrough.cinema{min-height:710px}.walkthrough.cinema h1{font-size:48px}.walkthrough .hero-copy{padding-top:27px}.walkthrough .cinema-scroll{display:flex}.walkthrough-position{width:60px}.footer-signature img{width:52px;height:52px}.footer-wordmark{font-size:59px}}
@media(prefers-reduced-motion:reduce){.walkthrough .hero-copy{opacity:1}.walkthrough.cinema h1{animation:none}.walkthrough-visual{transition:none}}
/* Reading content is visible before enhancement and between observer callbacks. */
.motion-ready [data-motion=reveal]:not(.is-revealed){opacity:1;transform:none}
.motion-ready [data-motion=photo]:not(.is-revealed){clip-path:none}
.service-photo img{height:auto;object-fit:cover}
/* Keep the film and photographic strip in one measured vertical composition. */
@media(min-width:761px){
 .walkthrough.cinema{--film-width:min(53.5vw,calc((max(650px,100svh - 100px) - 230px)*16/9));--film-height:calc(var(--film-width)*9/16);--film-top:calc((100% - var(--film-height) - 210px)/2)}
 .walkthrough-visual{left:auto;right:3.5%;top:var(--film-top);bottom:auto;width:var(--film-width);height:var(--film-height);aspect-ratio:16/9}
 .walkthrough.cinema::after{left:auto;right:8%;top:calc(var(--film-top) + var(--film-height) + 24px);bottom:auto;width:calc(var(--film-width)*.74);height:clamp(72px,12vh,110px)}
}
