@font-face{font-family:Sentient;src:url('assets/fonts/sentient-light.woff2') format('woff2');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Sentient;src:url('assets/fonts/sentient-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#050505;--surface:#141310;--text:#f4eee2;--muted:#bdb8ae;--gold:#d6b778;--gold-light:#f1dba7;--display:Sentient,Georgia,serif;--body:Arial,Helvetica,sans-serif;--gutter:clamp(24px,5vw,80px);--ease:cubic-bezier(.23,1,.32,1);--space:clamp(80px,10vw,160px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px;scrollbar-color:var(--gold) var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--body);overflow-wrap:break-word}::selection{background:var(--gold);color:var(--bg)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button,a,input,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}button:disabled{cursor:default}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:300;line-height:1.09;letter-spacing:-.035em}h1{font-size:clamp(58px,6.5vw,96px)}h2{font-size:clamp(40px,4.4vw,64px)}h3{font-size:clamp(28px,2.6vw,40px)}h1 em,h2 em{color:var(--gold);font-weight:inherit}p{color:var(--muted)}.icon{display:inline-block;width:24px;height:24px;flex:none;vertical-align:middle}.arrow{transition:transform 220ms var(--ease)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:14px 26px;border:1px solid var(--gold);border-radius:32px;background:var(--gold);color:var(--bg);font-size:16px;font-weight:500;line-height:1.35;transition:background 200ms var(--ease),transform 200ms var(--ease),color 200ms var(--ease)}.button:active,.menu-toggle:active,.filters button:active{transform:scale(.97)}.outline{background:var(--bg);color:var(--gold-light)}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;color:var(--gold-light);font-size:16px;transition:color 200ms var(--ease)}.section{max-width:1600px;padding:var(--space) var(--gutter);margin:auto}.skip{position:absolute;left:20px;top:12px;transform:translateY(-200%);z-index:100;background:var(--gold);color:var(--bg);padding:10px 18px}.skip:focus{transform:none}.reading-progress{position:fixed;inset:0 0 auto;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}[hidden]{display:none!important}
.header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px var(--gutter);min-height:108px;max-width:1800px;margin:auto;background:var(--bg)}.brand{display:block;width:205px;flex:none}.brand img{height:auto;object-fit:contain}.header nav{display:flex;gap:clamp(18px,2.4vw,38px);align-items:center}.header nav a{font-size:15px;min-height:44px;display:flex;align-items:center;transition:color 180ms var(--ease)}.header nav a[aria-current]{color:var(--gold-light)}.header-cta{font-size:14px;gap:12px;white-space:nowrap}.menu-toggle{display:none}
.hero{position:relative;max-width:1800px;margin:auto;min-height:720px;height:min(780px,calc(100svh - 108px));isolation:isolate;overflow:clip}.hero-media{position:absolute;inset:-30px 0 -30px 10%;z-index:-1}.hero-media img{object-position:center 43%;}.hero-copy{position:relative;z-index:2;padding:60px var(--gutter) 180px;max-width:840px}.hero h1{margin-bottom:28px;line-height:1.02}.hero-copy>p{font-size:clamp(17px,1.6vw,21px);line-height:1.55;color:var(--text);max-width:450px;margin-bottom:30px}
.showcase{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start}.section-intro{grid-column:1/5;padding-top:45px}.section-intro p{max-width:27ch;margin:28px 0 22px}.facial-link{grid-column:6/9}.body-link{grid-column:9/13;margin-top:110px}.makeup-link{grid-column:2/6;margin-top:24px}.more-services{grid-column:8/13;margin-top:40px}.image-window{overflow:hidden;background:var(--surface)}.facial-link .image-window{height:390px}.body-link .image-window{height:460px}.makeup-link .image-window{aspect-ratio:1}.photo-link img{transition:transform 700ms var(--ease);object-position:center}.photo-link h3{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 8px}.photo-link h3 .icon{color:var(--gold)}.photo-link p{font-size:15px}.more-services>p{font-size:16px;margin-bottom:22px}.more-services>a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:20px;font:300 clamp(28px,3vw,44px)/1.25 var(--display)}.more-services .icon{color:var(--gold)}
.ritual{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;max-width:1800px;margin:auto;background:var(--surface);overflow:clip}.ritual-media{position:absolute;inset:0 0 0 35%;z-index:-1;overflow:hidden}.ritual-media img{height:115%;margin-top:-7%;object-position:center 42%;filter:brightness(.6)}.ritual-content{background:var(--bg);padding:70px var(--gutter);max-width:650px}.ritual-content h2{font-size:clamp(44px,5.2vw,74px)}.ritual-content p{margin:25px 0 28px}.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.about-photo{height:620px;overflow:hidden;max-width:480px;margin-left:8%}.about-photo img{height:110%;margin-top:-5%}.about-copy>p{max-width:42ch;margin-top:25px}.about-copy .text-link{margin-top:24px}.signature{font:300 30px/1.4 var(--display);color:var(--gold)}.signature span{display:block;font:14px/1.6 var(--body);color:var(--muted);margin-top:7px}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;padding-top:30px}.faq h2{margin-bottom:25px}.questions details{background:var(--surface);margin-bottom:12px;padding:0 24px}.questions summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;cursor:pointer;font-size:17px}.questions summary::-webkit-details-marker{display:none}.questions .plus{color:var(--gold);transition:transform 220ms var(--ease)}.questions details[open] .plus{transform:rotate(45deg)}.questions details p{padding:0 0 26px;max-width:60ch}.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:end;padding-top:40px;padding-bottom:var(--space)}.contact h2{font-size:clamp(48px,5.4vw,80px)}.contact>div>p{max-width:36ch;margin:28px 0}.contact-details{padding-bottom:6px}.contact-details .phone{font:300 clamp(28px,3.1vw,46px)/1.3 var(--display);color:var(--gold)}.contact-details p{margin-top:24px!important;font-size:16px}.footer{background:var(--surface);padding:50px var(--gutter) 30px}.footer-top,.footer-bottom{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-top{padding-bottom:42px}.footer-top .brand{width:240px}.footer-top>p{font:300 26px var(--display)}.footer-bottom{align-items:flex-end}.footer-bottom small{font-size:13px;color:var(--muted)}.footer-bottom>div{display:flex;gap:28px;align-items:center;font-size:14px}.motion-toggle{border:0;background:none;color:var(--muted);padding:10px 0;min-height:44px;font-size:14px}
.catalog-hero{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:10%;padding-block:65px}.catalog-hero>div{max-width:380px}.catalog-hero>div>p:first-child{font-size:20px;margin-bottom:24px}.catalog-currency{font-size:14px;color:var(--gold-light)}.catalog-tools{max-width:1600px;margin:auto;padding:10px var(--gutter) 45px}.search-wrap{max-width:520px}.search-wrap label{display:block;margin-bottom:10px;font-size:15px}.search-field{position:relative}.search-field input{width:100%;background:var(--surface);border:1px solid #62583f;border-radius:8px;padding:16px 54px 16px 18px;color:var(--text);caret-color:var(--gold);min-height:56px}.search-field input::placeholder{color:var(--muted)}.search-field input::-webkit-search-cancel-button{display:none}.search-field button{position:absolute;right:6px;top:6px;height:44px;width:44px;border:0;background:none;color:var(--gold);display:grid;place-items:center}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 18px}.filters button{min-height:44px;padding:9px 18px;border:1px solid #62583f;border-radius:28px;color:var(--text);background:var(--bg);font-size:15px;transition:background 180ms var(--ease),transform 180ms var(--ease),color 180ms var(--ease)}.filters button.active{background:var(--gold);border-color:var(--gold);color:var(--bg)}.result-count{font-size:14px}.catalog-content{max-width:1600px;margin:auto;padding:0 var(--gutter)}.catalog-group{display:grid;grid-template-columns:.75fr 1.65fr;gap:9%;padding:45px 0 85px;scroll-margin-top:28px}.category-intro{position:sticky;top:28px}.category-photo{height:290px;max-width:320px;margin-bottom:28px;overflow:hidden}.category-photo img{object-position:center}.category-intro h2{font-size:clamp(32px,3.4vw,48px);margin-bottom:15px}.category-intro>p{max-width:25ch;margin-bottom:12px}.category-intro .text-link{font-size:15px}.treatment{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;padding:26px 24px;align-items:start}.treatment:nth-child(odd){background:var(--surface)}.treatment h3{font-size:27px;line-height:1.2;letter-spacing:-.02em;margin-bottom:10px}.treatment p{font-size:16px;line-height:1.6;max-width:38ch}.treatment-prices{text-align:right;font-variant-numeric:tabular-nums}.treatment-prices strong{display:block;font-size:17px;font-weight:400;color:var(--gold-light)}.treatment-prices span{display:block;font-size:14px;color:var(--muted);margin-top:9px}.catalog-disclaimer{max-width:900px;margin:0 auto;padding:20px var(--gutter) 60px}.catalog-disclaimer p{font-size:16px}.promotions{display:grid;grid-template-columns:1fr 1.25fr;gap:10%;padding-top:30px}.promotions h2{margin-bottom:24px}.promotions>div>p{max-width:32ch}.catalog-cta{text-align:center;padding-top:30px}.catalog-cta h2{margin-bottom:30px}.catalog-cta p{margin-top:22px;font-size:15px}#empty-results{padding:60px 0 100px;text-align:center}#empty-results h2{font-size:40px}#empty-results p{margin:24px 0}.construction{min-height:70svh;padding:90px var(--gutter);text-align:center;display:flex;align-items:center;flex-direction:column;gap:28px}.construction h1{font-size:clamp(30px,5.5vw,78px)}.construction h1 em{font-style:normal}.construction p{max-width:46ch}.construction .portal-label{color:var(--gold-light);font-size:18px}.construction small{font-size:14px;color:var(--muted)}
@media(hover:hover) and (pointer:fine){a:hover{color:var(--gold-light)}.button:hover{background:var(--gold-light);color:var(--bg)}.text-link:hover .arrow,.photo-link:hover .arrow,.more-services>a:hover .arrow{transform:translateX(5px)}.photo-link:hover img{transform:scale(1.035)}.filters button:hover:not(.active){background:var(--surface)}.questions summary:hover{color:var(--gold-light)}}
@media(min-width:1600px){.hero-copy{padding-top:95px}.hero-media{left:15%}}
@media(max-width:1100px){.header{gap:20px}.header .brand{width:170px}.header nav{gap:20px}.header-cta{display:none}.hero{min-height:650px}.hero-copy{padding-top:60px;max-width:680px}.hero h1{font-size:clamp(58px,7.3vw,80px)}.hero-media{left:0}.showcase{gap:24px}.facial-link{grid-column:6/10}.body-link{grid-column:10/13;margin-top:150px}.body-link .image-window{height:330px}.facial-link .image-window{height:350px}.makeup-link{grid-column:2/7}.more-services{grid-column:8/13}.about{gap:8%}.about-photo{height:520px;margin-left:0}.catalog-group{gap:6%;grid-template-columns:.7fr 1.3fr}.treatment{grid-template-columns:1fr;gap:14px}.treatment-prices{text-align:left}.treatment-prices span{margin-top:5px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}.contact{gap:6%}}
@media(max-width:700px){:root{--gutter:24px;--space:76px}.header{min-height:90px;padding-block:14px}.header .brand{width:170px}.menu-toggle{display:flex;align-items:center;gap:12px;min-height:44px;padding:9px 12px;background:none;border:1px solid #62583f;color:var(--text);border-radius:25px;font-size:14px;transition:transform 180ms var(--ease)}.header nav{display:flex;flex-wrap:wrap;gap:6px 22px;width:100%;padding-top:8px}.header{flex-wrap:wrap}.js .header{flex-wrap:nowrap}.js .header nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px var(--gutter) 30px;background:var(--surface);flex-direction:column;align-items:stretch;gap:8px}.js .header nav.open{display:flex}.header nav a{font-size:16px}.hero{min-height:0;height:auto;display:flex;flex-direction:column;overflow:hidden}.hero-copy{padding:35px var(--gutter) 32px;max-width:none}.hero h1{font-size:clamp(46px,10.8vw,72px);margin-bottom:22px;line-height:1.06}.hero-copy>p{font-size:17px;margin-bottom:25px;max-width:30ch}.desktop-break{display:none}.hero-media{position:relative;inset:auto;width:100%;height:440px;order:2;margin-top:4px}.hero-media img{object-position:64% center;object-fit:cover}.showcase{grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 18px}.section-intro{grid-column:1/-1;padding:0;margin-bottom:8px}.section-intro h2 br{display:none}.section-intro h2{font-size:clamp(38px,8vw,56px)}.section-intro p{max-width:34ch;margin:22px 0 14px}.facial-link{grid-column:1/5}.facial-link .image-window{height:350px}.body-link{grid-column:3/7;margin-top:12px}.body-link .image-window{height:330px}.makeup-link{grid-column:1/6;margin-top:12px}.photo-link h3{font-size:32px;margin-top:18px}.photo-link p{font-size:15px}.more-services{grid-column:1/-1;margin-top:12px}.more-services>a{font-size:32px;padding:15px 0}.ritual{display:block;min-height:0}.ritual-media{position:relative;inset:auto;height:420px}.ritual-media img{object-position:center 45%}.ritual-content{padding:42px var(--gutter) 55px;max-width:none}.ritual-content h2{font-size:44px}.about{grid-template-columns:1fr;gap:40px}.about-photo{width:78%;height:380px;margin-left:auto}.about-copy h2{font-size:clamp(36px,8.3vw,52px)}.about-copy>p{margin-top:22px}.faq{grid-template-columns:1fr;gap:30px;padding-top:0}.faq h2{font-size:44px}.questions details{padding-inline:18px}.questions summary{font-size:16px;min-height:72px}.questions details p{font-size:16px}.contact{grid-template-columns:1fr;gap:32px;padding-top:0}.contact h2{font-size:52px}.contact>div>p{margin:24px 0}.contact-details .phone{font-size:34px}.footer{padding-top:38px}.footer-top{flex-wrap:wrap;gap:24px;padding-bottom:30px}.footer-top .brand{width:190px}.footer-top>p{display:none}.footer-top .text-link{font-size:14px}.footer-bottom>div{flex-wrap:wrap;gap:4px 22px}.footer-bottom>div>a{min-height:44px;display:flex;align-items:center}.catalog-hero{grid-template-columns:1fr;gap:28px;padding-top:35px;padding-bottom:35px}.catalog-hero h1{font-size:60px}.catalog-hero>div>p:first-child{font-size:18px;margin-bottom:15px}.catalog-tools{padding-bottom:20px}.filters{gap:8px}.filters button{padding-inline:14px;font-size:14px}.catalog-group{grid-template-columns:1fr;gap:26px;padding-top:30px;padding-bottom:40px}.category-intro{position:static;display:grid;grid-template-columns:90px 1fr;gap:8px 20px;align-items:start}.category-photo{width:90px;height:130px;grid-row:1/4;margin:0}.category-intro h2{font-size:32px;margin:0}.category-intro p{font-size:15px;margin:0;max-width:none}.category-intro .text-link{min-height:36px}.treatment{padding:23px 18px;gap:13px}.treatment h3{font-size:26px}.treatment-prices strong{font-size:17px}.treatment-prices span{font-size:14px}.catalog-disclaimer{padding-top:10px;padding-bottom:50px}.promotions{grid-template-columns:1fr;gap:28px;padding-top:0}.catalog-cta{padding-top:0}.catalog-cta h2{font-size:44px}#empty-results h2{font-size:34px}.construction{padding-block:60px;gap:25px}.construction h1{font-size:clamp(27px,7.5vw,48px)}.construction p br{display:none}}
@media(max-width:360px){.header .brand{width:145px}.menu-toggle{gap:7px;padding-inline:10px}.hero h1{font-size:43px}.hero-media{height:370px}.contact h2{font-size:46px}.button{padding-inline:21px;gap:15px}.footer-top{display:block}.footer-top>.text-link{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}[data-parallax]{transform:none!important}}
.motion-paused [data-parallax]{transform:none!important}.motion-paused *{animation:none!important;transition:none!important}.motion-paused{scroll-behavior:auto}

.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}



/* Footer aligned with the editorial identity */
.footer{background:var(--bg);padding:72px var(--gutter) 24px}
.footer-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.4fr .85fr 1.15fr 1fr;gap:clamp(28px,4vw,64px);padding:48px 0 60px;align-items:start}
.footer-brand .brand{width:240px;max-width:100%;margin-bottom:28px}
.footer-brand>p{font-size:16px;line-height:1.7;max-width:28ch;margin-bottom:26px}
.footer-brand>span{font:300 24px/1.4 var(--display);color:var(--gold-light)}
.footer-brand .footer-qualification{font-size:14px;margin:6px 0 0}
.footer-column h2{font:300 28px/1.25 var(--display);letter-spacing:-.02em;color:var(--gold-light);margin:6px 0 25px}
.footer-column>a{display:flex;align-items:center;gap:10px;min-height:44px;width:fit-content;font-size:15px;color:var(--muted);transition:color 200ms var(--ease)}
.footer-column>a .arrow{width:18px;height:18px}
.footer-column>p{font-size:14px;line-height:1.8;max-width:27ch;margin-top:20px}
.footer-social>a{width:100%;gap:14px;padding:12px 0;color:var(--text)}
.footer-social .social-icon{width:21px;height:21px;color:var(--gold)}
.footer-social .arrow{margin-left:auto}
.footer-social>p{font-size:13px;overflow-wrap:anywhere;margin-top:12px}
.footer-bottom{max-width:1440px;padding-top:24px;align-items:center;gap:24px}
.footer-bottom small{font-size:13px;max-width:none;line-height:1.6}
.footer-bottom>div{display:flex;gap:28px;align-items:center}
.footer-up{display:inline-flex!important;align-items:center;gap:12px;min-height:44px;font-size:14px;color:var(--gold-light)}
.footer-up .icon{width:18px;height:18px;transform:rotate(-90deg)}
@media(hover:hover) and (pointer:fine){.footer-column>a:hover{color:var(--gold-light)}.footer-column>a:hover .arrow{transform:translateX(4px)}}
@media(max-width:1100px){.footer-grid{grid-template-columns:1.2fr 1fr;gap:48px 10%;padding-top:20px}.footer-brand{grid-row:1/3}.footer-social{grid-column:2}.footer-bottom{align-items:flex-start}}
@media(max-width:700px){.footer{padding-top:36px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px;padding:0 0 36px}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-brand .brand{width:220px;margin-bottom:24px}.footer-brand>p{max-width:32ch;margin-bottom:20px}.footer-column h2{font-size:25px;margin-bottom:16px}.footer-column>a{font-size:14px}.footer-column:nth-child(3){grid-column:1/-1;grid-row:3}.footer-social{grid-column:2;grid-row:2}.footer-column>p{max-width:36ch;margin-top:14px}.footer-social>p{font-size:12px}.footer-bottom{flex-direction:column;align-items:stretch;gap:14px;padding-top:0}.footer-bottom>div{justify-content:space-between;gap:16px;flex-wrap:wrap}.footer-bottom small{font-size:12px}}
/* Visible, slow photographic motion; paused by the existing motion control. */
@keyframes dana-photo-breathe{from{transform:scale(1);transform-origin:65% 45%}to{transform:scale(1.065);transform-origin:65% 45%}}
@media(prefers-reduced-motion:no-preference){html:not(.motion-paused) .hero-media img{animation:dana-photo-breathe 9s ease-in-out infinite alternate;will-change:transform}}
.motion-paused .hero-media img{animation-play-state:paused!important;will-change:auto}
.body-journey{display:grid;grid-template-columns:1fr 1fr;position:relative;max-width:1600px;margin:80px auto;padding:0 var(--gutter);gap:7%}.journey-visual{position:sticky;top:0;height:100svh;overflow:hidden;align-self:start;background:#050505}.journey-visual img{height:180%;object-fit:cover;object-position:50% 0;transform:translateY(var(--journey-shift,0%));transition:transform 1s var(--ease)}.journey-marker{position:absolute;left:70%;top:28%;width:14px;height:14px;border:2px solid var(--gold);border-radius:50%;transition:top 700ms var(--ease)}.journey-steps{position:relative}.journey-step{min-height:90svh;display:flex;flex-direction:column;justify-content:center;padding:70px 0}.journey-step h2{font-size:clamp(36px,3.6vw,54px)}.journey-step p{max-width:34ch;margin:28px 0 22px}.journey-step .text-link{align-self:flex-start}.journey-step.is-active h2{color:var(--gold-light)}
@media(max-width:700px){.body-journey{gap:20px;padding-inline:16px;grid-template-columns:42% 1fr;margin-block:40px}.journey-step{min-height:75svh;padding:36px 0}.journey-step h2{font-size:27px}.journey-step p{font-size:15px;margin-block:20px}.journey-step .text-link{font-size:14px;gap:8px}.journey-visual img{width:180%;max-width:none;margin-left:-40%;height:160%;object-fit:cover}.journey-marker{left:80%}}
@media(prefers-reduced-motion:reduce){.journey-visual img{transform:none;height:100%;object-fit:contain}.journey-marker{display:none}}
.motion-paused .journey-visual img{transform:none;height:100%;object-fit:contain}.motion-paused .journey-marker{display:none}
.body-journey{grid-template-columns:1.3fr 1fr;gap:5%;max-width:1800px;padding-left:0}.journey-visual{overflow:visible;isolation:isolate;perspective:1400px}.journey-visual>img{position:absolute;top:0;left:0;width:100%;height:240%;object-fit:cover;object-position:50% 0;transform:translateY(var(--journey-shift,0%)) rotateY(0deg);transform-origin:center 25%;transition:transform 1100ms var(--ease),opacity 650ms ease}.journey-visual>.journey-back{opacity:0;transform:translateY(var(--journey-shift,0%)) rotateY(-18deg)}.journey-visual.show-back>img:first-child{opacity:0;transform:translateY(var(--journey-shift,0%)) rotateY(18deg)}.journey-visual.show-back>.journey-back{opacity:1;transform:translateY(var(--journey-shift,0%)) rotateY(0deg)}.journey-marker{left:64%;z-index:3}.journey-marker:after{content:'';position:absolute;top:4px;left:12px;width:clamp(100px,20vw,360px);height:1px;background:var(--gold);transform-origin:left;transform:scaleX(1)}.journey-marker.tracing:after{animation:journey-trace 900ms var(--ease) both}@keyframes journey-trace{from{transform:scaleX(0)}to{transform:scaleX(1)}}.journey-steps{z-index:4}.journey-step{min-height:100svh}.journey-step h2,.journey-step p,.journey-step a{position:relative;background:var(--bg)}
@media(max-width:700px){.body-journey{grid-template-columns:46% 1fr;gap:16px;padding-left:0;padding-right:16px}.journey-visual{overflow:hidden}.journey-visual>img{width:210%;left:-55%;margin-left:0;height:210%}.journey-marker{left:72%}.journey-marker:after{width:28vw}.journey-step{min-height:85svh}.journey-step h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.journey-visual>img{height:100%;object-fit:contain;transform:none!important;transition:none!important}.journey-marker{display:none}}
.motion-paused .journey-visual>img{height:100%;object-fit:contain;transform:none!important}
/* Scroll-driven photographic turntable replaces the two-view transition. */
.journey-visual{overflow:hidden}.journey-visual>.turn-frame{position:absolute;inset:0;width:100%;height:220%;margin:0;object-fit:cover;object-position:50% 0;transform:translateY(var(--journey-shift,0%));transition:transform 600ms var(--ease);opacity:0}.journey-visual>.turn-frame:first-child{opacity:1}.journey-marker{transition:top 450ms var(--ease);opacity:0}.journey-marker:after{animation:none!important;transform:scaleX(var(--line-progress,0));transition:none}.journey-marker.tracing:after{animation:none}
@media(max-width:700px){.journey-visual>.turn-frame{width:200%;left:-50%;height:200%;margin:0}}
@media(prefers-reduced-motion:reduce){.journey-visual>.turn-frame{height:100%;object-fit:contain;transform:none!important}}
.journey-visual{overflow:visible}.journey-image-crop{position:absolute;inset:0;overflow:hidden}.journey-image-crop>.turn-frame{position:absolute;inset:0;width:100%;height:220%;object-fit:cover;object-position:50% 0;transform:translateY(var(--journey-shift,0%));transition:transform 600ms var(--ease);opacity:0}.journey-image-crop>.turn-frame:first-child{opacity:1}.journey-marker:after{width:var(--line-length,180px)}
@media(max-width:700px){.journey-image-crop>.turn-frame{width:200%;left:-50%;height:200%}}
@media(prefers-reduced-motion:reduce){.journey-image-crop>.turn-frame{height:100%;object-fit:contain;transform:none}}
.motion-paused .journey-image-crop>.turn-frame{height:100%;object-fit:contain;transform:none}
/* The marker follows measured image geometry, without an independent position delay. */
.journey-marker{transition:none;margin:0}.journey-marker:after{top:5px;left:5px;transform:rotate(var(--line-angle,0rad)) scaleX(var(--line-progress,0));transform-origin:0 50%}.journey-image-crop>.turn-frame{margin:0}
.contact-heading{padding-top:65px;padding-bottom:20px}.contact-heading>p{max-width:40ch;font-size:20px;margin-top:30px}.contact-directory{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:20px}.contact-directory>div>p{margin:26px 0}.contact-facts{display:grid;gap:35px}.contact-facts h3{font-size:28px;margin-bottom:14px}.contact-facts p{max-width:40ch}.contact-facts .text-link{margin-right:24px}.contact-page .faq{padding-top:10px;padding-bottom:100px}@media(max-width:700px){.contact-heading{padding-top:35px}.contact-heading h1{font-size:55px}.contact-directory{grid-template-columns:1fr;gap:45px}.contact-page .faq{padding-bottom:70px}}
/* Responsive hardening: allow grid children to shrink to the viewport. */
.header>* ,.footer-grid>* ,.catalog-group>* ,.about>* ,.contact-directory>* ,.faq>* ,.body-journey>*{min-width:0}
.contact-directory{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.contact-facts a{overflow-wrap:anywhere}.footer-column>a{max-width:100%}.footer-column>a span{min-width:0}
.journey-step .text-link{flex-wrap:wrap}.journey-step p{overflow-wrap:break-word}
@media(max-width:700px){.contact-directory{grid-template-columns:minmax(0,1fr)}.body-journey{grid-template-columns:minmax(0,46fr) minmax(0,54fr)}.hero-actions{gap:12px}.hero-actions .button{max-width:100%}.contact-heading h1{font-size:clamp(40px,10.5vw,55px)}html:not(.js) .menu-toggle{display:none}}
@media(max-width:380px){.footer-grid{column-gap:16px}.footer-column h2{font-size:23px}.journey-step h2{font-size:23px}.journey-step .text-link{font-size:13px}.hero-actions .button{width:100%}}
@media(max-height:550px) and (min-width:701px){.hero{height:auto;min-height:640px}.journey-step{min-height:600px}.journey-visual{height:100svh}}
/* Massage invitation: continuous photograph with a soft reading area. */
.ritual{background:var(--bg);min-height:700px}
.ritual-media{inset:0;z-index:-2}
.ritual-media img{object-position:center 45%;filter:brightness(.78)}
.ritual::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.87) 25%,rgba(5,5,5,.5) 51%,rgba(5,5,5,.08) 78%)}
.ritual-content{background:transparent;max-width:750px;padding:100px var(--gutter)}
.ritual-content p{color:var(--text);max-width:35ch}
.ritual-content .outline{background:transparent}
@media(max-width:700px){.ritual{min-height:650px;display:flex;align-items:flex-end}.ritual-media{position:absolute;inset:0;height:auto}.ritual-media img{object-position:65% center}.ritual::before{background:linear-gradient(180deg,rgba(5,5,5,.08) 0%,rgba(5,5,5,.3) 30%,rgba(5,5,5,.86) 64%,rgba(5,5,5,.98) 100%)}.ritual-content{padding:200px var(--gutter) 52px;width:100%}.ritual-content h2{font-size:clamp(36px,9vw,48px)}.ritual-content .button{max-width:100%;gap:16px}}
