@font-face{font-family:Montserrat;src:url('./montserrat.ttf') format('truetype');font-display:swap;font-weight:100 900}@font-face{font-family:"Cormorant Garamond";src:url('./cormorant-garamond.ttf') format('truetype');font-display:swap;font-weight:300 700}
:root{--site-ink:var(--brand-primary-dark);--site-paper:var(--brand-primary-pale);--stream-pink:var(--brand-primary);--stream-gold:var(--brand-gold);--stream-pearl:var(--surface-primary);--header-height:78px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 20px)}body{margin:0;background:var(--site-paper);color:var(--site-ink);font:16px/1.5 Montserrat,sans-serif;overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:3px solid var(--brand-primary);outline-offset:5px}button[hidden],a[hidden],[hidden]{display:none!important}
.header{height:var(--header-height);padding:0 clamp(20px,5vw,80px);display:flex;align-items:center;gap:32px;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface-primary) 45%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--brand-primary-soft)}
.brand{display:flex;gap:10px;align-items:center;margin-right:auto;white-space:nowrap}.brand .brand-emblem{width:48px;height:48px;object-fit:contain;border-radius:50%;mix-blend-mode:multiply}.brand span{font-family:"Cormorant Garamond",serif;font-size:20px;line-height:1.2}.brand small{display:block;text-align:center;font:8px/2 Montserrat,sans-serif;letter-spacing:4px}.header nav{display:flex;gap:28px;align-items:center}.header nav button{background:none;padding:12px 0}.header nav a{padding:12px 0}.header nav a:hover,.header nav button:hover{color:var(--brand-primary)}
.button{min-height:52px;padding:13px 26px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md,14px);border:1px solid var(--brand-primary);font-size:16px;font-weight:500;transition:box-shadow .2s,background .2s,transform .2s;white-space:nowrap}.button.primary{background:linear-gradient(155deg,var(--brand-primary),var(--brand-primary-pressed));color:var(--surface-primary);box-shadow:0 5px 20px var(--brand-primary-focus)}.button.secondary{background:color-mix(in srgb,var(--surface-primary) 82%,transparent)}.button:hover{transform:translateY(-2px);box-shadow:0 7px 26px var(--brand-primary-focus)}.button.compact{min-height:44px;padding:10px 25px;font-size:14px}
#journey{position:relative;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 85% 54%,var(--brand-primary-soft),transparent 43%),radial-gradient(ellipse at 0% 70%,var(--brand-primary-soft),transparent 44%),linear-gradient(var(--brand-primary-soft),var(--brand-primary-pale) 55%,var(--surface-primary) 80%,var(--brand-primary-soft))}
#energy{position:absolute;inset:0;z-index:2;pointer-events:none;width:100%;height:100%}.hero{position:relative;min-height:800px;height:calc(100svh - var(--header-height));max-height:1080px;isolation:auto}
.video-space{position:absolute;inset:0;z-index:0;mask-image:linear-gradient(to bottom,var(--surface-inverse) 0%,var(--surface-inverse) 73%,transparent 100%);opacity:var(--video-opacity,1)}
.video-space video,.video-space img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center top}.video-space video{opacity:0}.video-space.playing video,.video-space.ended video{opacity:1}.video-space .final-frame{display:block}
.hero-copy{position:absolute;z-index:3;top:69%;left:20px;right:20px;text-align:center;opacity:var(--copy-opacity,1);transform:translateY(var(--copy-shift,0px));pointer-events:none}.hero-copy>*{pointer-events:auto}.hero-copy h1{font:clamp(32px,3.8vw,58px)/1.18 "Cormorant Garamond",serif;margin:0 0 10px;text-shadow:0 1px 15px var(--surface-primary);transition:opacity .7s}.hero[data-film="playing"] .hero-copy h1,.hero[data-film="playing"] .hero-copy p{opacity:var(--title-opacity,0)}.hero-copy p{transition:opacity .7s}.hero-copy p{font:clamp(18px,1.7vw,24px)/1.3 "Cormorant Garamond",serif;margin:0 0 22px;text-shadow:0 1px 10px var(--surface-primary)}.actions{display:flex;gap:16px;justify-content:center}.down{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:32px;line-height:1;margin-top:6px}.down span{display:block}
.utility{border:1px solid var(--border-default);background:color-mix(in srgb,var(--surface-primary) 86%,transparent);border-radius:var(--radius-pill,999px);padding:10px 16px;min-height:44px;font-size:12px;color:var(--brand-primary-dark);backdrop-filter:blur(8px)}.video-control{position:absolute;left:24px;bottom:18px;z-index:5}.motion-tools{position:fixed;right:22px;bottom:18px;z-index:30}.utility[aria-pressed="true"]{background:var(--brand-primary-soft);border-color:var(--brand-primary)}
.bridge{height:180px;position:relative;pointer-events:none}.bridge-light{position:absolute;inset:-160px 0;background:radial-gradient(ellipse at 50% 50%,var(--brand-gold-soft),transparent 65%);opacity:.6}
.directions{position:relative;z-index:3;min-height:900px;padding:28px 24px 100px;scroll-margin-top:20px}.directions-heading{text-align:center;margin:0 auto 50px;max-width:900px;opacity:var(--reveal,1);transform:translateY(calc((1 - var(--reveal,1))*30px))}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--brand-primary-hover);margin:0 0 14px}h2{font:clamp(30px,3.4vw,48px)/1.25 "Cormorant Garamond",serif;margin:0}.direction-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:34px 38px;max-width:820px;margin:auto}.direction{grid-column:span 2;position:relative;min-height:258px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0 15px 14px;border:1px solid var(--surface-primary);border-radius:var(--radius-xl,28px);background:linear-gradient(145deg,color-mix(in srgb,var(--surface-primary) 68%,transparent),color-mix(in srgb,var(--brand-gold-soft) 40%,transparent));box-shadow:0 8px 20px color-mix(in srgb,var(--brand-primary-pressed) 9%,transparent),inset 0 0 16px var(--surface-primary);backdrop-filter:blur(3px);transform:translateY(var(--rise,0px)) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));opacity:var(--card-opacity,1);transition:box-shadow .25s;transform-style:preserve-3d}
.direction:nth-child(4){grid-column:2/span 2}.direction:nth-child(5){grid-column:4/span 2}.direction:hover{box-shadow:0 12px 28px var(--brand-primary-focus),inset 0 0 24px var(--surface-primary)}.symbol{display:block;width:160px;height:160px;border-radius:50%;flex-shrink:0;margin-top:-14px;margin-bottom:10px;background-image:url('./direction-art.webp');background-repeat:no-repeat;background-size:1280px 1920px;box-shadow:0 4px 18px var(--brand-primary-soft);border:1px solid var(--surface-primary)}
.symbol.nail{background-position:-688px -237px}.symbol.hair{background-position:-879px -237px}.symbol.sun{background-position:-1068px -237px}.symbol.massage{background-position:-778px -438px}.symbol.balance{background-position:-977px -438px}
.direction-name{font:20px/1.2 "Cormorant Garamond",serif;display:flex;align-items:center;justify-content:center;min-height:49px;margin-bottom:10px}.arrow{width:32px;height:32px;border:1px solid color-mix(in srgb,var(--brand-amber) 40%,transparent);border-radius:50%;display:grid;place-items:center;color:var(--brand-primary-hover);font-size:20px;line-height:1}.direction:hover .arrow{background:var(--brand-primary-soft)}.fragment-note{text-align:center;font-size:14px;color:var(--text-secondary);margin:38px 0 0}
dialog{max-width:520px;width:calc(100% - 36px);border:1px solid var(--brand-primary-soft);border-radius:var(--radius-xl,28px);padding:48px 32px 32px;background:var(--brand-primary-pale);color:var(--site-ink);box-shadow:var(--shadow-lg)}dialog::backdrop{background:var(--surface-overlay);backdrop-filter:blur(6px)}dialog h2{font-size:30px}dialog p:not(.eyebrow){color:var(--text-secondary);margin:22px 0}dialog .button{white-space:normal;text-align:center}.close{position:absolute;right:10px;top:8px;width:44px;height:44px;background:none;font-size:30px}.skip{position:fixed;top:-100px;left:10px;padding:14px;background:var(--surface-primary);z-index:100}.skip:focus{top:8px}.noscript,#booking-unavailable{position:relative;padding:20px;background:var(--surface-primary)}
html[data-calm="true"]{scroll-behavior:auto}html[data-calm="true"] .direction{transform:none!important;opacity:1!important}html[data-calm="true"] .directions-heading{transform:none!important;opacity:1!important}
@media(min-width:1600px){.hero-copy{top:70%}.hero-copy h1{font-size:62px}}
@media(max-width:900px){.header{gap:18px;padding:0 22px}.header nav{gap:16px}.brand span{font-size:16px}.brand .brand-emblem{width:40px;height:40px}.direction-grid{max-width:710px;gap:32px 24px}.directions{min-height:850px}.video-control{bottom:4px}}
@media(max-width:640px){:root{--header-height:68px}.header{padding:0 14px;gap:10px}.brand{gap:6px}.brand span{font-size:13px}.brand small{font-size:7px;letter-spacing:2px}.brand .brand-emblem{width:35px;height:35px}.header nav{display:none}.header .button{font-size:12px;padding:10px 14px;min-height:44px}.hero{height:690px;min-height:690px;max-height:none}.video-space{top:0;bottom:auto;height:430px;mask-image:linear-gradient(to bottom,var(--surface-inverse) 78%,transparent 100%)}.video-space video,.video-space img{width:180%;height:auto;left:-40%;top:12px;aspect-ratio:16/9;object-fit:contain}.hero-copy{top:410px;left:20px;right:20px}.hero-copy h1{font-size:30px;margin-bottom:16px}.hero-copy p{font-size:18px;margin-bottom:24px}.actions{flex-wrap:wrap;gap:12px}.actions .button{font-size:14px;padding:13px 18px;min-width:150px}.down{margin-top:12px}.video-control{left:16px;bottom:6px;font-size:11px;padding:8px 12px}.motion-tools{right:14px;bottom:12px}.utility{font-size:11px}.bridge{height:90px}.directions{padding:30px 18px 94px;min-height:960px}.directions-heading{margin-bottom:44px}.directions h2{font-size:30px}.eyebrow{font-size:10px;letter-spacing:1.5px}.direction-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px;gap:36px 18px}.direction,.direction:nth-child(4),.direction:nth-child(5){grid-column:auto;min-height:226px;padding:0 6px 12px;border-radius:20px}.direction:nth-child(5){grid-column:1/span 2;justify-self:center;width:calc(50% - 9px)}.symbol{width:128px;height:128px;background-size:1024px 1536px;margin-bottom:8px}.symbol.nail{background-position:-550px -190px}.symbol.hair{background-position:-703px -190px}.symbol.sun{background-position:-854px -190px}.symbol.massage{background-position:-622px -350px}.symbol.balance{background-position:-782px -350px}.direction-name{font-size:16px;min-height:40px}.fragment-note{font-size:12px}dialog{padding:48px 24px 28px}dialog h2{font-size:26px}}
@media(max-width:360px){.hero-copy h1{font-size:26px}.hero{height:760px;min-height:760px}.actions{flex-direction:column;align-items:center}.directions{padding-inline:12px}.direction-grid{gap:32px 12px}.symbol{transform:scale(.92)}.direction-name{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Acceptance adjustments: preserve entire spherical symbols, exclude baked labels. */
.symbol{height:137px;border-radius:50%;box-shadow:none}
.symbol.massage,.symbol.balance{height:130px;background-position-y:-437px}
@media(max-width:640px){
 .hero{--mobile-media:calc(100vw * 1.0125 + 12px);height:calc(var(--mobile-media) + 292px);min-height:0}
 .video-space{height:var(--mobile-media);mask-image:linear-gradient(to bottom,var(--surface-inverse) 66%,transparent 100%)}
 .hero-copy{top:calc(var(--mobile-media) - 4px)}
 .symbol{height:110px}
 .symbol.massage,.symbol.balance{height:104px;background-position-y:-350px}
}
@media(max-width:360px){.hero{height:calc(var(--mobile-media) + 366px)}}

#menu-toggle{display:none}
@media(max-width:640px){
 #menu-toggle{display:block;background:none;min-width:44px;min-height:44px;font-size:11px;padding:0}
 .header nav.open{position:absolute;top:var(--header-height);left:0;right:0;display:flex;justify-content:center;gap:22px;background:var(--brand-primary-pale);padding:12px 10px;border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-sm)}
 .brand span{font-size:12px}.header{gap:5px}
}

/* Visual refinement v2: compact composition and image-led directions. */
.bridge{height:28px}
.bridge-light{inset:-90px 0;opacity:.32}
.directions{min-height:0;padding:8px 24px 80px}
.directions-heading{margin-bottom:34px}
.directions-heading .eyebrow{display:none}
.direction-grid{max-width:1040px;gap:22px 46px}
.direction{min-height:0;padding:0 10px 12px}
.symbol,.symbol.massage,.symbol.balance{width:calc(100% + 20px);height:auto;aspect-ratio:128/110;background:none;margin-top:-12px;margin-bottom:4px;border:0;overflow:hidden;border-radius:50%;transform:none}
.symbol svg{display:block;width:100%;height:100%;overflow:hidden}
.direction-name{min-height:46px;margin-bottom:8px;font-size:clamp(18px,2vw,25px)}
.fragment-note{margin-top:24px}
.hero[data-film="playing"] h1{opacity:var(--title-opacity,0)}
#journey[data-energy-near="true"]{cursor:grab}
#journey[data-energy-grab="true"]{cursor:grabbing}
#journey a,#journey button{cursor:pointer}
@media(min-width:641px) and (max-height:850px){
 .hero{min-height:560px;height:calc(100svh - var(--header-height))}
 .video-space{height:calc(100% - 140px);bottom:auto;background:url('./entry-final.webp') center/cover}
 .video-space video,.video-space img{object-fit:contain;object-position:center}
 .hero-copy{top:auto;bottom:48px}
 .hero-copy h1{font-size:clamp(32px,3.2vw,46px);margin-bottom:8px}
 .hero-copy p{font-size:19px;margin-bottom:14px}
 .down{height:32px;margin-top:0}
}
@media(max-width:900px) and (min-width:641px){
 .direction-grid{max-width:92%;gap:20px 30px}
 .directions-heading{margin-bottom:30px}
}
@media(max-width:640px){
 .hero{--mobile-media:min(calc(100vw * 1.0125 + 12px),calc(100svh - 310px));height:calc(var(--mobile-media) + 250px);min-height:0}
 .video-space{height:var(--mobile-media);mask-image:linear-gradient(to bottom,var(--surface-inverse) 78%,transparent 100%)}
 .video-space video,.video-space img{height:100%;width:auto;min-width:100%;left:50%;top:0;transform:translateX(-50%);object-fit:contain}
 .hero-copy{top:calc(var(--mobile-media) - 10px);left:18px;right:18px}
 .hero-copy h1{font-size:clamp(25px,7.5vw,32px);margin-bottom:10px}
 .hero-copy p{font-size:17px;margin-bottom:16px}
 .actions{flex-direction:row;flex-wrap:nowrap;gap:10px}
 .actions .button{min-width:0;font-size:12px;padding:12px 13px;min-height:46px}
 .actions .button:first-child{flex:1.35}.actions .button:last-child{flex:1}
 .down{height:32px;margin-top:6px}
 .bridge{height:14px}
 .directions{padding:12px 18px 80px}
 .directions-heading{margin-bottom:30px}
 .directions h2{font-size:29px}
 .direction-grid{max-width:440px;gap:24px 20px}
 .direction,.direction:nth-child(4),.direction:nth-child(5){min-height:0;padding:0 6px 12px}
 .direction:nth-child(5){width:calc(50% - 10px)}
 .symbol,.symbol.massage,.symbol.balance{width:calc(100% + 12px);height:auto;aspect-ratio:128/110;margin-bottom:3px}
 .direction-name{font-size:16px;min-height:39px;margin-bottom:7px}
 .video-control{bottom:8px}
}

.direction-grid{width:86%;max-width:1040px}
@media(max-width:640px){.direction-grid{width:100%}}
@media(min-width:641px) and (max-height:850px){
 .video-space::before{content:"";position:absolute;inset:-24px;background:inherit;filter:blur(28px)}
 .video-space video,.video-space img{width:auto;height:100%;min-width:0;left:50%;transform:translateX(-50%);aspect-ratio:16/9;mask-image:linear-gradient(to right,transparent,var(--surface-inverse) 9%,var(--surface-inverse) 91%,transparent)}
}

@media(min-width:641px){
 .directions h2{font-size:clamp(32px,4.5vw,54px)}
 .directions-heading{margin-bottom:24px}
 .direction-grid{row-gap:12px}
 .direction-name{font-size:clamp(20px,2.5vw,28px)}
 .direction .arrow{width:36px;height:36px}
}

/* Approved golden star field shared by screens 1 and 2. */
:root{--scene:#C40276;--scene-pearl:#FFF8F4;--scene-gold:#E8BB78}
body,#journey{background:var(--scene)}
#energy,#tails{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}
#energy{z-index:2}#tails{z-index:1}
#error{position:fixed;bottom:20px;left:20px;z-index:30;color:var(--scene-pearl)}#error:empty{display:none}
.hero-copy{color:var(--scene-pearl)}.hero-copy h1,.hero-copy p{text-shadow:0 1px 12px var(--brand-primary-dark)}
.video-space{mask-image:linear-gradient(to bottom,var(--surface-inverse) 0%,var(--surface-inverse) 66%,transparent 100%)}
.bridge{height:65px}.bridge-light{display:none}
.directions{padding-top:40px;min-height:calc(100svh - var(--header-height));padding-bottom:100px}
.directions-heading,.fragment-note{color:var(--scene-pearl)}
.direction{background:linear-gradient(145deg,var(--surface-primary),var(--brand-primary-pale));color:var(--brand-primary-dark);backdrop-filter:none}
.direction-grid{max-width:1000px}.direction{box-shadow:0 12px 32px var(--brand-primary-focus)}
@media(max-width:640px){.bridge{height:35px}.directions{padding-top:28px}.hero-copy h1{font-size:28px}.video-space{mask-image:linear-gradient(to bottom,var(--surface-inverse) 68%,transparent 100%)}}

.video-space{height:100%;bottom:0;background:none}.video-space::before{display:none}
.video-space video,.video-space img{width:100%;height:100%;left:0;top:0;transform:none;aspect-ratio:auto;object-fit:cover;object-position:center;mask-image:none}
.hero-copy .button.secondary{color:var(--brand-primary-dark)}
@media(max-width:640px){.video-space{height:var(--mobile-media);bottom:auto}.video-space video,.video-space img{object-fit:cover;object-position:center}}

@media(min-width:641px){.direction-grid{max-width:760px;column-gap:30px;row-gap:22px}.direction-name{font-size:22px;min-height:42px}.directions-heading{margin-bottom:24px}.directions h2{font-size:42px}.directions{padding-top:24px;padding-bottom:50px}}
.direction{opacity:1!important}

@media(min-width:641px){.direction-grid{max-width:680px;column-gap:28px;row-gap:18px}.direction-name{font-size:20px}.symbol{margin-top:-8px}.directions-heading{margin-bottom:20px}}


#video-control{display:none}.hero-copy .down{margin-top:24px;font-size:40px}html[data-intro="true"] .motion-tools{display:none}

.brand .brand-emblem{filter:url(#logo-without-white);mix-blend-mode:normal;background:transparent;border-radius:50%}

.header{transition:transform .32s ease;will-change:transform}.header[data-hidden="true"]{transform:translateY(-102%);pointer-events:none}@media(prefers-reduced-motion:reduce){.header{transition:none}}


/* Glass spheres: scroll-controlled arrival and living images. */
.directions{min-height:100svh;padding:54px 24px 64px;overflow:visible}
.directions-heading{margin-bottom:38px}
.direction-grid{width:min(920px,92%);max-width:920px;gap:28px 64px;perspective:none}
.direction,.direction:nth-child(4),.direction:nth-child(5){min-height:0;padding:0;aspect-ratio:1;border-radius:50%;border:1px solid #fff5dc88;display:block;background:radial-gradient(circle at 28% 20%,#ffffff40,transparent 34%),radial-gradient(circle at 70% 78%,#f4b76635,transparent 55%),radial-gradient(circle at 46% 42%,#ffffff05 34%,#5901350d 65%,#ffdfac30 92%,#fff6dc55 100%);color:#fff8f4;box-shadow:inset 2px 3px 4px #fff9e98a,inset -3px -5px 10px #6c02482b,inset 0 0 28px #ffe3b51c,0 12px 38px #6c004c30,0 0 15px #ffe8ba15;backdrop-filter:blur(2px);opacity:var(--orb-opacity,1)!important;transform:translate3d(var(--orb-x,0px),var(--orb-y,0px),0) scale(var(--orb-scale,1));will-change:transform,opacity;transition:box-shadow .3s;isolation:isolate;transform-style:flat}
.direction::before{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid #f8d0af55;pointer-events:none;z-index:4}
.direction::after{content:"";position:absolute;left:19%;top:10%;width:28%;height:9%;border-radius:50%;background:linear-gradient(90deg,transparent,#fff8eec9,transparent);filter:blur(2px);transform:rotate(-32deg);pointer-events:none;z-index:4}
.direction:hover{box-shadow:inset 2px 3px 6px #fff9e9cc,inset 0 0 30px #fff8d72f,0 0 35px #ffdf9c55,0 14px 44px #74004a30}
.direction .symbol,.direction .symbol.massage,.direction .symbol.balance{position:absolute;inset:9% 10% 27%;width:80%;height:64%;aspect-ratio:auto;border-radius:50%;margin:0;overflow:hidden;mask-image:radial-gradient(ellipse,#000 42%,#000b 61%,transparent 74%);mix-blend-mode:screen;animation:orb-image-drift 8s ease-in-out infinite alternate;animation-delay:calc(var(--orb-index,0)*-1.7s)}
.direction .symbol svg{width:100%;height:100%;filter:saturate(.86) contrast(1.06)}
.direction .direction-name{position:absolute;left:12%;right:12%;bottom:13%;min-height:0;margin:0;display:block;font:clamp(19px,2vw,27px)/1.08 "Cormorant Garamond",serif;text-shadow:0 2px 10px #720046,0 0 15px #720046}
.direction .arrow{position:absolute;bottom:4%;left:calc(50% - 12px);width:24px;height:24px;font-size:17px;border:0;background:none;color:#f6d69f;opacity:.85}
.direction .orb-sheen{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none;z-index:3}
.orb-sheen::after{content:"";position:absolute;width:25%;height:145%;top:-25%;left:-70%;background:linear-gradient(90deg,transparent,#fff5cd55,transparent);transform:rotate(28deg);animation:orb-sheen 9s linear infinite;animation-delay:calc(var(--orb-index,0)*-1.6s)}
.direction[data-direction="Парикмахер"] .symbol svg{animation:hair-light 7s ease-in-out infinite alternate;transform-origin:50% 50%}
.direction[data-direction="Солярий"] .symbol svg{animation:sun-light 4s ease-in-out infinite}
.direction[data-direction="Биоэнергетик-психолог"] .symbol svg{animation:sun-light 6s ease-in-out infinite}
.fragment-note{font-size:12px;letter-spacing:.04em;opacity:.75;margin-top:30px}
@keyframes orb-image-drift{from{transform:translate(-2px,2px) scale(1)}to{transform:translate(3px,-3px) scale(1.045)}}
@keyframes hair-light{from{transform:rotate(-3deg) scale(1)}to{transform:rotate(3deg) scale(1.05)}}
@keyframes sun-light{0%,100%{filter:saturate(.8) brightness(.96)}50%{filter:saturate(1) brightness(1.2) drop-shadow(0 0 6px #ffd79b)}}
@keyframes orb-sheen{0%,35%{left:-70%}75%,100%{left:160%}}
.orb-portal{position:fixed;z-index:80;pointer-events:none;border-radius:50%;overflow:hidden;border:1px solid #ffe7b4;background:radial-gradient(circle at 30% 25%,#ffe9c566,#c40276 76%);box-shadow:inset 0 0 60px #ffe5b466,0 0 70px #ffe5b45c;transform-origin:center}
.orb-portal svg{width:100%;height:100%;opacity:.65}
.direction-view{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100svh;margin:0;border:0;border-radius:0;padding:0;background:radial-gradient(ellipse at 24% 45%,#f29ec328,transparent 60%),#c40276;color:#fff8f4;overflow:auto;box-shadow:none}
.direction-view::backdrop{background:#c4027608;backdrop-filter:none}
.direction-view-inner{min-height:100%;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:5vw;max-width:1280px;margin:auto;padding:100px 7vw 64px}
.direction-back{position:absolute;left:5vw;top:28px;min-height:44px;background:transparent;color:#fff8f4;font-size:13px;padding:10px 0;z-index:5}
.direction-back span{margin-right:12px;color:#f6d69f}
.direction-visual{position:relative;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 28% 18%,#fff5d633,transparent 40%),radial-gradient(circle,#f6bd7620,transparent 70%);border:1px solid #ffedc866;box-shadow:inset 2px 4px 10px #fff5d67a,inset 0 0 45px #ffdda32a,0 0 80px #ffdea518;overflow:hidden;animation:orb-image-drift 9s ease-in-out infinite alternate}
.direction-visual svg{position:absolute;width:90%;height:90%;left:5%;top:5%;mix-blend-mode:screen;mask-image:radial-gradient(circle,#000 45%,transparent 72%)}
.direction-visual::after{content:"";position:absolute;inset:6%;border:1px solid #fceac438;border-radius:50%}
.direction-view .eyebrow{color:#f5d3a2;margin:0 0 18px}
.direction-view h2{font-size:clamp(40px,5.5vw,76px);line-height:1.02;margin-bottom:20px}
.direction-view .direction-intro{color:#fff3ea;line-height:1.7;max-width:460px;font-size:15px;margin:0 0 28px}
.direction-services{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.direction-services span{border:1px solid #fff0d64a;border-radius:999px;padding:9px 15px;font-size:12px;background:#ffffff08}
.direction-view .direction-booking{background:linear-gradient(135deg,#fff2d9,#eac28c);color:#780348;border:0;box-shadow:0 8px 25px #73004333}
.direction-view .direction-footnote{font-size:11px;color:#ffeddbb3;margin-top:16px}
@media(max-width:900px){.direction-grid{width:94%;gap:26px 32px}.direction .direction-name{font-size:22px}}
@media(max-width:640px){.directions{padding:40px 18px 60px}.directions-heading{margin-bottom:30px}.direction-grid{width:100%;max-width:440px;gap:26px 22px}.direction,.direction:nth-child(4),.direction:nth-child(5){padding:0;border-radius:50%;min-height:0}.direction:nth-child(5){width:calc(50% - 11px)}.direction .symbol,.direction .symbol.massage,.direction .symbol.balance{width:80%;height:64%;margin:0}.direction .direction-name{font-size:20px;bottom:14%}.direction-view-inner{grid-template-columns:1fr;gap:32px;padding:88px 24px 40px;align-items:start}.direction-visual{width:min(66vw,300px);margin:auto}.direction-view h2{font-size:44px}.direction-view .direction-intro{font-size:14px}.direction-back{left:24px;top:20px}}
@media(max-width:360px){.direction .direction-name{font-size:17px}}
html[data-calm="true"] .direction .symbol,html[data-calm="true"] .direction svg,html[data-calm="true"] .orb-sheen::after,html[data-calm="true"] .direction-visual{animation:none}
@media(prefers-reduced-motion:reduce){.direction .symbol,.direction svg,.orb-sheen::after,.direction-visual{animation:none!important}}

.direction .symbol,.direction-visual svg{mix-blend-mode:normal}
.direction .symbol svg{filter:saturate(1) contrast(1)}

/* Golden light follows the glass contour and breathes independently. */
.orb-gold-glow{position:absolute;inset:-1%;z-index:0;border-radius:50%;pointer-events:none;border:2px solid #ffe0a4;background:none;box-shadow:0 0 5px 2px #ffe7b8b3,0 0 14px 5px #ffc46785,0 0 27px 9px #f4b75238,inset 0 0 7px 2px #ffdda67a;filter:blur(.5px);animation:orb-gold-breathe 6.8s ease-in-out infinite alternate;animation-delay:calc(var(--orb-index,0)*-1.45s);will-change:opacity,filter}
@keyframes orb-gold-breathe{from{opacity:.62;filter:blur(.5px) brightness(1)}to{opacity:1;filter:blur(.5px) brightness(1.4)}}
html[data-calm="true"] .orb-gold-glow{animation:none;opacity:.85}
@media(prefers-reduced-motion:reduce){.orb-gold-glow{animation:none;opacity:.85}}

.direction .symbol.balance{mix-blend-mode:screen;mask-image:radial-gradient(ellipse,#000 49%,#000e 62%,transparent 76%)}

.direction .symbol.nail{inset:7% 7% 25%;width:86%;height:68%;mask-image:radial-gradient(ellipse,#000 56%,#000e 69%,transparent 85%)}
.direction .symbol.massage{inset:7% 6% 24%;width:88%;height:69%;mask-image:radial-gradient(ellipse,#000 51%,#000d 67%,transparent 82%)}

/* User-selected photographs, cropped into the glass surface. */
.direction .symbol.nail,.direction .symbol.hair,.direction .symbol.massage{inset:3%;width:94%;height:94%;border-radius:50%;mask-image:radial-gradient(circle,#000 52%,#000e 61%,transparent 72%);mix-blend-mode:normal;overflow:hidden}
.direction .symbol.nail::after,.direction .symbol.hair::after,.direction .symbol.massage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,transparent 48%,#c4027645 62%,#c40276de 82%,#c40276 100%)}
.direction .symbol.hair svg{animation:orb-image-drift 9s ease-in-out infinite alternate;transform-origin:center}
.direction .direction-name{z-index:2}
html[data-calm="true"] .direction .symbol.hair svg{animation:none}
@media(prefers-reduced-motion:reduce){.direction .symbol.hair svg{animation:none!important}}

/* Golden energy flickers gently inside the bioenergy orb. */
.direction .symbol.balance{mix-blend-mode:normal;mask-image:radial-gradient(ellipse,#000 42%,#000c 61%,transparent 74%)}
.direction[data-direction="Биоэнергетик-психолог"] .symbol svg{animation:bio-gold-shimmer 5.2s ease-in-out infinite;filter:saturate(1) brightness(1)}
.direction .symbol.balance::before,.direction .symbol.balance::after{content:"";position:absolute;pointer-events:none;z-index:2;width:17%;height:17%;background:radial-gradient(circle,#fff8df 0%,#ffe9afbd 8%,#ffd38542 24%,transparent 65%);mix-blend-mode:screen;animation:bio-gold-spark 4.7s ease-in-out infinite}
.direction .symbol.balance::before{left:36%;top:28%}
.direction .symbol.balance::after{left:54%;top:51%;width:13%;height:13%;animation-delay:-2.3s}
@keyframes bio-gold-shimmer{0%,100%{filter:saturate(1) brightness(1) drop-shadow(0 0 2px #ffd58b22)}45%{filter:saturate(1.08) brightness(1.27) drop-shadow(0 0 7px #ffd58b88)}70%{filter:saturate(1) brightness(1.06) drop-shadow(0 0 3px #ffd58b33)}}
@keyframes bio-gold-spark{0%,22%,100%{opacity:.08;transform:scale(.72)}46%{opacity:.85;transform:scale(1.1)}68%{opacity:.2;transform:scale(.85)}}
html[data-calm="true"] .direction .symbol.balance svg,html[data-calm="true"] .direction .symbol.balance::before,html[data-calm="true"] .direction .symbol.balance::after{animation:none}
@media(prefers-reduced-motion:reduce){.direction .symbol.balance svg,.direction .symbol.balance::before,.direction .symbol.balance::after{animation:none!important}}

.direction .symbol.sun,.direction .symbol.balance{background:none;border:0;box-shadow:none;mask-image:none;border-radius:0;overflow:visible}

/* Keep the approved emblem clear at header size without discarding fine edges. */
.brand .brand-emblem{filter:none;mix-blend-mode:normal;background:transparent;border-radius:0;overflow:visible;flex-shrink:0;display:block}

/* Approved fuchsia artwork fills the bioenergy glass orb. */
.direction .symbol.balance{inset:3%;width:94%;height:94%;border-radius:50%;overflow:hidden;mask-image:radial-gradient(circle,#000 52%,#000e 61%,transparent 72%);mix-blend-mode:normal}

/* Show the existing manual start only when autoplay was refused. */
.hero[data-playback-blocked="true"] #video-control:not([hidden]){display:block}

/* Fill the live viewport as browser chrome expands/collapses. */
dialog.direction-view{height:100dvh;max-height:none;overscroll-behavior-y:contain}
dialog.direction-view::backdrop{background:#FFF8F4}
@media(max-width:640px){
 .directions{min-height:0;padding-top:24px;padding-bottom:32px}
 .direction-grid{gap:32px 24px}
 .direction:nth-child(5){width:calc((100% - 24px)/2);grid-column:1 / -1;justify-self:center}
}
.directions[data-offscreen="true"] .direction *,.directions[data-offscreen="true"] .direction *::before,.directions[data-offscreen="true"] .direction *::after{animation-play-state:paused}

/* Shared by the home/modal and the standalone service pages. */
 body .site-legal-footer nav{display:grid;grid-template-columns:1fr;justify-content:start;align-content:start;gap:0;margin:0;padding:0}
 body .site-legal-footer a{display:block;width:fit-content;min-height:0;margin:0;padding:2.5px 0;font:500 13px/1.5 Montserrat,sans-serif;color:#C9027A}
 body .site-legal-footer p{font-size:12px;line-height:1.5;margin-bottom:8px}
 body .nail-page>.site-legal-footer{margin:18px 0 0;padding-bottom:14px}
 body .contacts-page .site-legal-footer a{color:#FFF8F4C9}


/* Stable particle projection while mobile browser toolbars expand/collapse. */
@media(max-width:900px){#energy,#tails,.nail-star-layer canvas{height:100lvh;bottom:auto}}
