/* The photographic edit: space for the work, a visible treatment list and a full portrait. */
.results.section-space,.treatments>.section-shell,.about.section-space,.direct-contact.section-space{padding-block:clamp(42px,6vw,88px)}
.results .section-intro{margin-bottom:28px;align-items:end}.results .section-intro h2{max-width:none}
.results .portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;max-width:none;gap:30px 22px;overflow:visible;margin:0;padding:0;scroll-snap-type:none}
.results .portfolio-work{width:auto;min-width:0;flex:none;margin:0}.results .portfolio-toggle,.results .portfolio-still{height:auto;aspect-ratio:3/4;max-height:none;border-radius:8px}
.portfolio-toggle>.film-poster{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.portfolio-film{opacity:0;transition:opacity 220ms ease-out}.portfolio-film.is-playing{opacity:1}.hero-film{opacity:0}.hero-film.is-playing{opacity:1}
.results .portfolio-work figcaption{min-height:0;font-size:15px;gap:4px;padding-top:13px}.results .portfolio-work figcaption>span:last-child{font-size:12px}.results .gallery-note{font-size:12px;margin-top:26px}
.treatments .section-intro{margin-bottom:22px}.treatments .section-intro>p{display:block;font-size:14px}.treatment-price-note{margin:0 0 28px;font-size:12px}
.treatment-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:start;gap:6%}.service-photo{display:block;position:sticky;top:100px;align-self:start;overflow:hidden;margin:0}.service-photo img{height:auto;aspect-ratio:3/4;width:100%;object-fit:cover}.service-photo figcaption{display:block;font-size:11px;line-height:1.6;margin-top:12px}
.treatment-list .treatment{display:block;border-bottom:1px solid #d8bdcc}.treatment-list .treatment:first-child{border-top:1px solid #d8bdcc}
.treatment-list .treatment-trigger{min-height:96px;display:flex;flex-direction:row;align-items:center;gap:18px;padding:20px 0;background:none;border:0;border-radius:0;box-shadow:none;width:100%;color:#30232d}
.treatment-trigger .service-index{display:block;flex:0 0 18px;font-size:10px}.treatment-trigger>span:nth-child(2){flex:1;min-width:0}.treatment-trigger .treatment-name{display:block;font-size:clamp(21px,2.1vw,30px);line-height:1.2;letter-spacing:-.03em}.treatment-trigger .treatment-short{display:block;font-size:11px;line-height:1.6;margin-top:6px}
.treatment-trigger .menu-row-price{display:block;min-width:94px;width:auto;text-align:right;font-size:30px;line-height:1.1;letter-spacing:-.035em}.menu-row-price small{display:block;font-size:9px;line-height:1.6;letter-spacing:0}.treatment-trigger .menu-row-duration{display:block;font-size:11px;letter-spacing:0;line-height:1.5;margin-top:7px;color:#715265}.treatment-trigger .plus{display:block;flex:0 0 28px;width:28px;height:28px}.treatment-trigger .plus:before,.treatment-trigger .plus:after{inset:13px 7px auto}
.treatment-list .treatment-panel{display:grid;grid-template-rows:0fr;opacity:0;overflow:clip;transition:grid-template-rows 420ms cubic-bezier(.22,1,.36,1),opacity 260ms ease-out}.treatment-list .treatment-panel-inner{overflow:hidden;min-height:0}.treatment-list .treatment.is-active .treatment-panel{grid-template-rows:1fr;opacity:1}
.treatment-list .treatment-body{display:block;padding:0 0 28px 36px;transform:translateY(-6px);transition:transform 420ms cubic-bezier(.22,1,.36,1)}.treatment-list .treatment.is-active .treatment-body{transform:translateY(0)}
.treatment-body .service-mobile-photo{display:none}.treatment-list .treatment-body>p:not(.treatment-guide){font-size:14px;line-height:1.75;max-width:48ch}.treatment-guide{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:18px 0 0!important;padding:0}.treatment-guide .menu-price-amount{font-size:32px}.treatment-guide .menu-price-label{width:100%;font-size:10px}.treatment-guide .menu-price-duration{margin:0}.treatment-body .button{margin-top:20px;min-height:46px;font-size:12px}
.about-scene{display:grid;grid-template-columns:1.05fr .95fr;min-height:0}.about-scene .about-photo{height:auto;min-height:580px;aspect-ratio:4/5}.about-photo picture,.about-photo img{height:100%}.about-story{padding:clamp(28px,4vw,64px);align-self:center}.about-story h3{font-size:clamp(30px,3.1vw,46px);line-height:1.15}.about-story>p:not(.eyebrow){font-size:15px;line-height:1.8}.about-scene .portrait-signature{left:30px;bottom:30px;max-width:75%;right:auto}.portrait-signature h2{font-size:clamp(48px,6vw,80px)}.portrait-signature p{display:block;font-size:10px}.portrait-signature>span{display:block;font-size:10px}
.confidence{padding-block:50px}.confidence h2{font-size:clamp(34px,4.6vw,60px)}.confidence-points summary{min-height:64px;font-size:22px}.confidence-points details p{font-size:14px;line-height:1.75}
.direct-contact{display:grid;grid-template-columns:1fr 1fr;gap:12%;border-top:1px solid #dfcbd6}.direct-contact h2{font-size:clamp(36px,4.7vw,66px);line-height:1.08;letter-spacing:-.04em;font-weight:500;margin:18px 0 24px}.direct-contact p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:40ch}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:center}.contact-options .button{font-size:12px;min-width:0;min-height:48px;padding:12px 14px}.contact-options>.button:first-child,.contact-options>address,.contact-options>.button:last-child{grid-column:1/-1}.contact-options address{font-style:normal;font-size:14px;line-height:1.8;margin:12px 0 4px}
.language-switch{display:flex;flex-shrink:0;align-items:center;padding:3px;border:1px solid #ffffff60;border-radius:8px;background:#30232d22;color:#fcf9fa;margin-left:auto}.language-switch button{font:inherit;font-size:10px;font-weight:650;min-height:32px;min-width:36px;padding:5px;border:0;border-radius:5px;background:none;color:inherit;cursor:pointer}.language-switch button[aria-pressed=true]{background:#fcf9fa;color:#52334a;box-shadow:0 2px 5px #30232d20}.language-switch button:focus-visible{outline:2px solid #d891b8;outline-offset:2px}.site-header.is-scrolled .language-switch{color:#30232d;background:#ecd7e2;border-color:#d8bdcc}.site-header{gap:22px}.language-switch+.menu-toggle{margin-left:0}
html[lang=uk] .hero h1{font-size:clamp(50px,7.2vw,108px);max-width:13ch;line-height:1.06}html[lang=uk] .desktop-nav{gap:18px}html[lang=uk] .desktop-nav a{font-size:11px}
@media(max-width:1100px){.site-header{gap:16px}.desktop-nav{gap:16px}.header-cta{display:none}.about-scene .about-photo{min-height:460px}.treatment-trigger .service-index{display:none}.treatment-list .treatment-body{padding-left:0}.treatment-trigger .treatment-name{font-size:23px}.treatment-trigger .menu-row-price{font-size:26px;min-width:78px}.treatment-trigger .plus{flex-basis:24px;width:24px;height:24px}.treatment-trigger .plus:before,.treatment-trigger .plus:after{inset:11px 6px auto}}
@media(max-width:650px){
 .site-header{gap:14px}.language-switch{margin-left:auto}.language-switch button{min-width:32px;min-height:30px;font-size:9px}.menu-toggle{gap:8px}.menu-toggle>span:first-child{display:none}
 .results.section-space,.treatments>.section-shell,.about.section-space,.direct-contact.section-space{padding-block:38px}.results .section-intro{display:flex;align-items:end;gap:16px;margin-bottom:24px}.results .section-intro h2{font-size:34px;max-width:8ch}.results .portfolio-actions .button{font-size:10px;padding:10px 12px;min-height:42px}
 .results .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.results .portfolio-toggle,.results .portfolio-still{aspect-ratio:3/4}.results .portfolio-work figcaption{font-size:12px;line-height:1.45;padding-top:10px;gap:4px}.results .portfolio-work figcaption>span:last-child{font-size:10px}.results .gallery-note{font-size:11px;margin-top:22px}
 .treatments .section-topline{display:flex;margin-bottom:14px}.treatments .section-intro{display:block;margin-bottom:18px}.treatments .section-intro h2{font-size:34px}.treatments .section-intro>p{font-size:13px;line-height:1.7;margin-top:14px;max-width:34ch}.treatment-price-note{font-size:11px;line-height:1.65;margin-bottom:24px}.treatment-layout{display:block}.service-photo{display:none}
 .treatment-list .treatment-trigger{min-height:92px;padding:19px 0;gap:12px}.treatment-trigger .treatment-name{font-size:23px;line-height:1.2}.treatment-trigger .treatment-short{display:none}.treatment-trigger .menu-row-price{font-size:28px;min-width:76px}.treatment-trigger .menu-row-duration{font-size:10px}.treatment-trigger .plus{flex:0 0 24px}
 .treatment-list .treatment-body{display:block;padding:0 0 26px}.treatment-body .service-mobile-photo{display:block;margin:0 0 20px}.treatment-body .service-mobile-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 48%;border-radius:7px}.service-mobile-photo figcaption{font-size:9px;margin-top:7px}.treatment-list .treatment-body>p:not(.treatment-guide){font-size:13px;line-height:1.75}.treatment-guide .menu-price-amount{font-size:32px}.treatment-guide .menu-price-duration{margin:0}.treatment-body .button{margin-top:18px;min-height:46px;width:100%;font-size:12px}
 .about-scene{display:flex;flex-direction:column}.about-scene .about-photo{width:100%;height:auto;min-height:0;aspect-ratio:4/5}.about-photo img{object-position:center;transform:translateX(-15%)}.about-story{padding:28px}.about-story h3{font-size:32px;line-height:1.15}.about-story>p:not(.eyebrow){font-size:14px;line-height:1.8;margin-bottom:20px}.about-story>.button{font-size:12px;min-height:46px}.about-scene .portrait-signature{left:24px;bottom:24px;max-width:70%}.portrait-signature h2{font-size:52px}.portrait-signature p{display:block;font-size:9px}.portrait-signature>span{display:block;font-size:9px;margin-top:9px}.about-top{margin-bottom:22px}
 .confidence{padding-block:38px}.confidence h2{font-size:36px}.confidence-layout{gap:26px}.confidence-points summary{font-size:20px;min-height:62px}.confidence-points details p{font-size:13px}.direct-contact{grid-template-columns:1fr;gap:28px}.direct-contact h2{font-size:38px;margin-block:16px 20px}.direct-contact p:not(.eyebrow){font-size:14px}.contact-options .button{font-size:11px}.contact-options{gap:10px}.contact-options address{font-size:13px}
 html[lang=uk] .hero h1{font-size:clamp(38px,10vw,58px);max-width:12ch;line-height:1.08}html[lang=uk] .hero-description{font-size:12px}html[lang=uk] .hero .button{font-size:12px}
}
@media(max-width:359px){.treatment-trigger .treatment-name{font-size:20px}.treatment-trigger .menu-row-price{font-size:25px;min-width:68px}.treatment-list .treatment-trigger{gap:10px}.results .section-intro h2,.treatments .section-intro h2{font-size:30px}.about-story{padding:24px}.about-story h3{font-size:28px}.portrait-signature h2{font-size:46px}.contact-options{grid-template-columns:1fr}.contact-options>*{grid-column:1!important}.contact-options .button{font-size:12px}.confidence h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.treatment-list .treatment-panel,.treatment-list .treatment-body,.portfolio-film,.hero-film{transition:none;transform:none}}
.keyboard-navigation .treatment-list .treatment-panel,.keyboard-navigation .treatment-list .treatment-body{transition:none;transform:none}
.comparisons.section-space{padding-block:24px 70px}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.comparison-scene{position:relative;aspect-ratio:4/4.5;overflow:hidden;border-radius:8px;background:#e7d8e0;isolation:isolate}.comparison-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.comparison-scene .comparison-after{clip-path:inset(0 0 0 var(--split))}.comparison-label{position:absolute;top:18px;padding:6px 11px;border:1px solid #ffffff60;border-radius:5px;background:#30232d90;color:#fcf9fa;font-size:11px;z-index:1}.comparison-label.before{left:18px}.comparison-label.after{right:18px}.comparison-line{position:absolute;inset:0 auto 0 var(--split);width:2px;background:#fcf9fa;pointer-events:none;transform:translateX(-1px)}.comparison-line>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(#fff,#ecd7e3);border:1px solid #fcf9fa;box-shadow:0 3px 14px #30232d40;color:#68475c;font-size:22px;font-weight:600;white-space:pre}.comparison-scene input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}.comparison-scene:focus-within{outline:3px solid #82465f;outline-offset:4px}.comparison-work{min-width:0;margin:0}.comparison-work figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.comparison-work h3{font-size:22px;font-weight:500;line-height:1.2;letter-spacing:-.03em}.comparison-work .button{font-size:10px;min-width:0;min-height:40px;padding:10px 13px}.comparison-note{font-size:11px;line-height:1.8;color:#74646e;max-width:80ch;margin-top:24px}
@media(max-width:650px){.comparisons.section-space{padding-block:12px 38px}.comparisons .section-intro{margin-bottom:22px}.comparisons .section-intro h2{font-size:34px}.comparisons .section-intro>p{font-size:13px;line-height:1.7;margin-top:14px}.comparison-grid{grid-template-columns:1fr;gap:28px}.comparison-scene{aspect-ratio:4/4.4}.comparison-work figcaption{gap:12px;margin-top:14px}.comparison-work h3{font-size:22px}.comparison-work .button{font-size:9px;max-width:150px;min-height:42px}.comparison-label{top:14px;font-size:10px}.comparison-label.before{left:14px}.comparison-label.after{right:14px}.comparison-note{font-size:10px;margin-top:22px}}
.treatment-trigger .menu-row-quote{font-size:17px;line-height:1.25;max-width:100px;letter-spacing:-.02em}.footer-direct{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.footer-direct .button{min-width:0;font-size:11px;padding:10px 14px;min-height:42px}.status-page>.language-switch,body>.language-switch{position:absolute;top:20px;right:20px;color:#30232d;background:#ecd7e2;border-color:#d8bdcc}
@media(max-width:650px){.treatment-trigger .menu-row-quote{font-size:14px;max-width:78px;min-width:78px}.footer-direct{margin-top:12px}.footer-direct .button{font-size:10px;min-height:40px;padding:9px 12px}.results .section-topline{gap:12px}.results .section-topline>span:last-child{font-size:9px;line-height:1.5;text-align:right}.treatments .section-intro>p{max-width:none}.comparison-work figcaption{align-items:start}.comparison-work .button{flex-shrink:0}}
.comparison-scene{aspect-ratio:9/14}.comparison-scene>img{object-position:center bottom}.comparison-scene>.comparison-after{object-position:center top}.comparison-grid{gap:26px;max-width:1100px;margin-inline:auto}
@media(max-width:650px){.comparison-scene{aspect-ratio:9/14}.comparison-work h3{font-size:20px}.comparison-work .button{max-width:142px}}
/* Register each original photo independently, using uniform scale and translation only.
   The full-size after layer clips the registered image in the scene's coordinates. */
.comparison-scene{aspect-ratio:3/5}.comparison-after-layer{position:absolute;inset:0;clip-path:inset(0 0 0 var(--split));pointer-events:none}.comparison-scene .comparison-photo{position:absolute;inset:auto;left:var(--image-x,0%);top:var(--image-y,0%);width:calc(100% * var(--image-scale,1));height:auto;max-width:none;object-fit:initial;object-position:initial}.comparison-label{pointer-events:none}.comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;gap:24px}.comparison-work figcaption{display:block}.comparison-work h3{font-size:23px;margin:0 0 14px}.comparison-work .button{font-size:10px;max-width:none}
@media(min-width:651px) and (max-width:999px){.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-work:last-child{grid-column:1/-1;width:calc((100% - 24px)/2);justify-self:center}}
@media(max-width:650px){.comparison-grid{grid-template-columns:1fr;gap:32px}.comparison-work figcaption{display:flex;align-items:center}.comparison-work h3{font-size:22px;margin:0}.comparison-work .button{font-size:9px;max-width:150px}}

/* The invisible range owns the entire comparison surface, including the divider. */
.comparison-scene input{z-index:3;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.comparison-photo{pointer-events:none;user-select:none;-webkit-user-drag:none}
.comparison-after-layer{will-change:clip-path}

/* User-supplied originals: keep result lengths visible and process details readable. */
@media(max-width:650px){
 .treatment-list .treatment-body .service-mobile-photo img{object-position:var(--photo-position,center);aspect-ratio:4/5}
 .treatment-body .service-mobile-photo img[data-photo-kind="process"]{aspect-ratio:4/3}
}
