@layer tokens{:root{--font-display:var(--font-manrope,"Manrope"),system-ui,-apple-system,sans-serif;--font-body:var(--font-manrope,"Manrope"),system-ui,-apple-system,sans-serif;--font-hero:var(--font-manrope,"Manrope"),system-ui,-apple-system,sans-serif;--font-hero-title:var(--font-barlow,"Barlow Condensed"),"Arial Narrow",system-ui,sans-serif;--text-display-xl:clamp(44px,6.5vw,76px);--text-display-l:clamp(30px,3.6vw,44px);--text-display-m:clamp(28px,3vw,40px);--text-display-s:20px;--text-body:16px;--text-meta:14px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--space-5xl:128px;--space-eyebrow:16px;--section-y:120px;--section-y-tablet:80px;--section-y-mobile:44px;--content-width:1140px;--content-gutter:48px;--content-narrow:720px;--content-prose:560px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-pill:999px;--overlay-on-photo:#fff;--overlay-caption:#fbf9f5;--overlay-letterbox:#0d0b09;--overlay-pill-bg:rgba(18,16,12,0.55);--overlay-pill-border:rgba(251,249,245,0.22);--overlay-glass-bg:rgba(18,16,12,0.58);--overlay-glass-border:rgba(251,249,245,0.18);--overlay-chip-bg:rgb(0 0 0/0.5);--overlay-chip-bg-strong:rgb(0 0 0/0.7);--overlay-chip-bg-soft:rgb(0 0 0/0.55);--overlay-chip-border-light:rgb(255 255 255/0.35);--overlay-thumb-more-bg:rgb(0 0 0/0.6);--overlay-light-chip-bg:rgba(255,255,255,0.92);--overlay-light-chip-text:#1b1712;--locale-flag-white:#ffffff;--locale-flag-pl-red:#dc143c;--locale-flag-ua-blue:#0057b7;--locale-flag-ua-yellow:#ffd700;--locale-flag-gb-blue:#012169;--locale-flag-gb-red:#c8102e;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-standard:cubic-bezier(0.2,0.7,0.2,1);--ease-emphasized:cubic-bezier(0.16,1,0.3,1);--motion-fast:200ms;--motion-base:280ms;--motion-normal:280ms;--motion-slow:380ms;--z-header:50;--z-progress:60;--z-lightbox:80;--z-grain:90;--z-skip-link:100}html[lang^=uk]{--font-hero-title:var(--font-oswald,"Oswald"),"Arial Narrow",system-ui,sans-serif}html[data-theme=profi]{color-scheme:dark;--profi-gold-rgb:255,184,74;--profi-gold:var(--color-brand);--profi-gold-light:var(--color-brand-strong);--profi-gold-pale:#fff2d6;--profi-gold-panel:#ffe1aa;--color-canvas:#070707;--color-surface:#101010;--color-surface-elevated:#171717;--color-surface-muted:#1f1f1f;--color-text-primary:#f7f3ea;--color-text-secondary:#ddd2c0;--color-text-muted:#a99f92;--color-text-inverse:#0d0d0d;--color-border:rgba(255,255,255,0.12);--color-border-subtle:rgba(255,255,255,0.08);--color-border-strong:rgba(255,186,74,0.4);--color-brand:#ffb84a;--color-brand-hover:#ffc86e;--color-brand-active:#ffd892;--color-brand-soft:rgba(255,184,74,0.14);--color-brand-strong:#ffd07f;--color-link:#ffd07f;--color-link-hover:#fff2d6;--color-focus:#9dc2ff;--color-selection-bg:#ffb84a;--color-selection-text:#111111;--color-header-background:rgba(7,7,7,0.68);--color-header-text:#f7f3ea;--color-header-border:rgba(255,255,255,0.08);--color-footer-background:#060606;--color-footer-text:rgba(247,243,234,0.9);--color-footer-muted:rgba(221,210,192,0.68);--color-footer-faint:rgba(221,210,192,0.4);--color-footer-border:rgba(255,255,255,0.08);--color-footer-link:rgba(247,243,234,0.9);--color-footer-link-hover:#ffffff;--color-input-background:#141414;--color-input-border:rgba(255,255,255,0.12);--color-input-focus-border:#ffb84a;--color-input-text:#f7f3ea;--color-success:#b6ebc8;--color-success-soft:#132119;--color-success-border:#56a86d;--color-warning:#f6d28f;--color-warning-soft:#241a0d;--color-warning-border:#ffb84a;--color-error:#f0b4aa;--color-error-soft:#261412;--color-error-border:#d97968;--color-info:#bfd6ff;--color-info-soft:#132033;--color-info-border:#80aef6;--button-primary-bg:linear-gradient(135deg,#ffb84a,#ff9f2a);--button-primary-text:#111111;--button-primary-hover-bg:linear-gradient(135deg,#ffc86e,#ffb84a);--button-ghost-border:rgba(255,255,255,0.14);--button-ghost-text:#f7f3ea;--button-accent-bg:#1b1b1b;--button-accent-text:#ffd07f;--button-accent-hover-bg:#242424;--button-light-bg:#f7f3ea;--button-light-text:#111111;--button-light-hover-bg:#ffffff;--shadow-subtle:0 1px 2px rgba(0,0,0,0.4),0 18px 38px -24px rgba(0,0,0,0.74);--shadow-sm:0 10px 30px -20px rgba(0,0,0,0.7);--shadow-md:0 18px 48px -24px rgba(0,0,0,0.74);--shadow-lg:0 28px 72px -28px rgba(0,0,0,0.78);--shadow-xl:0 40px 110px -34px rgba(0,0,0,0.85);--shadow-card:0 22px 60px -28px rgba(0,0,0,0.8);--shadow-floating:0 28px 72px -28px rgba(0,0,0,0.8);--shadow-dialog:0 48px 120px -30px rgba(0,0,0,0.88);--shadow-header:0 1px 0 rgba(255,255,255,0.05);--gradient-overlay:linear-gradient(180deg,rgba(8,8,8,0.02),rgba(8,8,8,0.9));--gradient-overlay-soft:linear-gradient(180deg,rgba(8,8,8,0.12),rgba(8,8,8,0.72));--gradient-sheen:linear-gradient(100deg,transparent,rgba(255,255,255,0.12),transparent);--gradient-nav-underline:linear-gradient(90deg,#ff9f2a,#ffd07f);--tilt-glare-size:200px;--tilt-glare-core:rgba(var(--profi-gold-rgb),.055);--tilt-glare-edge:rgba(var(--profi-gold-rgb),.012);--glow-1:rgba(255,184,74,0.34);--glow-2:rgba(255,129,25,0.2);--glow-3:rgba(255,184,74,0.12);--gradient-section:radial-gradient(circle at top right,rgba(255,184,74,0.1),transparent 35%),radial-gradient(circle at left bottom,rgba(255,129,25,0.08),transparent 28%);--overlay-backdrop:rgba(0,0,0,0.82);--dialog-background:#171717;--dialog-text:#f7f3ea;--dialog-border:rgba(255,255,255,0.08);--dialog-shadow:0 48px 120px -30px rgba(0,0,0,0.88);--color-skeleton-base:#1b1b1b;--color-skeleton-highlight:#262626;--section-space-y:104px;--section-space-y-tablet:72px;--section-space-y-mobile:44px;--content-max-width:1200px;--section-title-size:clamp(38px,4.6vw,62px);--section-title-max:15ch;--section-lead-size:16px;--section-lead-max:54ch;--hero-title-size:clamp(52px,8vw,108px);--hero-title-weight:800;--hero-title-tracking:-0.04em;--hero-title-transform:none;--hero-title-line:0.95;--button-height:54px;--button-padding-x:26px;--button-radius:10px;--card-radius:16px;--card-padding:28px;--card-border-width:1px;--header-height:76px;--header-blur:18px;--gallery-gap:16px;--hero-image-ratio:4/5;--hero-image-radius:32px;--ink:var(--color-text-primary);--ink-deep:#050505;--ink-soft:var(--color-text-secondary);--ink-muted:var(--color-text-muted);--paper:var(--color-canvas);--paper-warm:var(--color-surface-muted);--cream:#f7f3ea;--white:#ffffff;--border:var(--color-border);--border-light:var(--color-border-subtle);--accent:var(--color-brand);--accent-strong:var(--color-brand-strong);--accent-light:#ffe1aa;--accent-wash:var(--color-brand-soft);--card-bg:linear-gradient(180deg,rgba(20,20,20,0.96),rgba(11,11,11,0.98));--card-bg-warm:linear-gradient(180deg,rgba(25,25,25,0.96),rgba(16,16,16,0.98));--focus:var(--color-focus)}}@layer tokens{}@layer base{*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;--anchor-offset:80px;scroll-padding-top:var(--anchor-offset)}body{background:var(--color-canvas);color:var(--color-text-primary);font-family:var(--font-body);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip;-webkit-tap-highlight-color:var(--color-brand-soft)}::selection{background:var(--color-selection-bg);color:var(--color-selection-text)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--color-text-primary);color:var(--color-canvas);padding:12px 20px;z-index:var(--z-skip-link);font-weight:600;font-size:14px;text-decoration:none}.skip-link:focus{left:0;color:var(--color-canvas)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:4px}.footer :focus-visible{outline-color:var(--color-focus)}section[data-tone=ink] :focus-visible{outline-color:var(--color-focus)}main a:not(.btn):not(.dt-day):not(.dt-time-chip):not(.dt-arrow):not(.contact-phone){color:var(--color-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 30%,transparent);transition:color .25s var(--ease-out),text-decoration-color .25s var(--ease-out)}main a:not(.btn):not(.contact-phone):hover{color:var(--color-link-hover);text-decoration-color:currentColor}.container{width:min(var(--content-max-width,var(--content-width)),calc(100% - var(--content-gutter)));margin-inline:auto}.section{padding:var(--section-space-y,var(--section-y)) 0;position:relative}.section[data-tone=white]{background:var(--color-surface);border-top:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle)}.section[data-tone=ink]{background:var(--ink-deep);color:var(--cream)}.section[data-tone=ink] .eyebrow,.section[data-tone=ink] .h-display{color:var(--cream)}main section[id]{scroll-margin-top:calc(var(--header-height, 72px) + 16px - var(--anchor-offset) - var(--section-space-y, var(--section-y)))}main section[id]:target{animation:flash 1.2s var(--ease-out)}.eyebrow{font-family:var(--font-body);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--color-brand-strong);font-weight:700;margin:0 0 var(--space-eyebrow);display:inline-flex;align-items:center;gap:12px}.stack>.eyebrow{margin-bottom:0}.eyebrow:before{content:"";width:24px;height:1px;background:currentColor;display:inline-block;opacity:.6}.eyebrow--center{justify-content:center;position:relative}.h-display{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.04;margin:0;color:var(--color-text-primary);text-transform:uppercase}.h-display,h1,h2,h3,h4,h5,h6{font-weight:800;text-wrap:balance}.h-display--xl{font-size:var(--text-display-xl)}.h-display--l{font-size:var(--text-display-l);line-height:1.08}.h-display--m{font-size:var(--text-display-m);line-height:1.1}.call-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700}.lead,.section-lead{color:var(--color-text-muted);line-height:1.65}.section-lead{max-width:var(--content-prose);margin:12px 0 0}}@layer components{.btn{--btn-bg:var(--button-primary-bg);--btn-fg:var(--button-primary-text);display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--button-height,52px);padding:0 var(--button-padding-x,28px);border-radius:var(--button-radius,var(--radius-md));font-weight:700;font-size:15px;letter-spacing:.01em;line-height:1;text-decoration:none;border:1.5px solid transparent;cursor:pointer;position:relative;isolation:isolate;overflow:hidden;white-space:nowrap;touch-action:manipulation;color:var(--btn-fg);background:var(--btn-bg);transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.btn,.btn>*{text-shadow:none}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98);transition-duration:.1s}.btn:disabled,.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn--sm{min-height:42px;padding:0 22px;font-size:14px}.btn-primary{--btn-bg:var(--button-primary-bg);--btn-fg:var(--button-primary-text);background:var(--button-primary-bg);color:var(--button-primary-text);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--button-primary-hover-bg);box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.btn-ghost{--btn-bg:transparent;--btn-fg:var(--button-ghost-text);border-color:var(--button-ghost-border);color:var(--button-ghost-text);background:transparent}.btn-ghost:hover{border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-accent{--btn-bg:var(--button-accent-bg);--btn-fg:var(--button-accent-text);background:var(--button-accent-bg);color:var(--button-accent-text);box-shadow:var(--shadow-sm)}.btn-accent:hover{background:var(--button-accent-hover-bg);transform:translateY(-1px);box-shadow:var(--shadow-subtle)}.btn-light{--btn-bg:var(--button-light-bg);--btn-fg:var(--button-light-text);background:var(--button-light-bg);color:var(--button-light-text)}.btn-light:hover{background:var(--button-light-hover-bg);transform:translateY(-1px);box-shadow:var(--shadow-subtle)}@media (hover:hover){.btn-light,.btn-primary{overflow:hidden}.btn-light:after,.btn-primary:after{content:"";position:absolute;top:0;bottom:0;width:45%;left:-70%;background:var(--gradient-sheen);transform:skewX(-12deg);transition:left .6s var(--ease-out);pointer-events:none}.btn-light:hover:after,.btn-primary:hover:after{left:135%}}}@layer components{.card{background:var(--card-bg);border:var(--card-border-width,1px) solid var(--border);border-radius:var(--card-radius,var(--radius-md));transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out)}.grid-2 .card:hover,.grid-3 .card:hover{transform:none;box-shadow:none;border-color:var(--color-border-strong)}.service-card{position:relative;isolation:isolate;display:flex;flex-direction:column;padding:0;overflow:hidden}.service-photo{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;display:block;background:var(--paper-warm)}.service-body{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;padding:24px}.service-title{margin:0 0 8px;font-size:20px;font-weight:700}.service-title>a{color:inherit;text-decoration:none}.service-title>a:hover{text-decoration:underline;text-underline-offset:4px}.service-title>a:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:4px}.service-desc{color:var(--color-text-muted);margin:0 0 16px;font-size:14px;line-height:1.6}.service-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--border-light);flex-wrap:wrap;row-gap:8px}.service-price{display:inline-flex;align-items:center;gap:8px;margin-left:auto;font-weight:800;font-size:18px;letter-spacing:-.01em}.service-price .icon{width:18px;height:18px;color:var(--accent)}.service-duration{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-weight:700;font-size:13.5px;color:var(--color-text-primary)}.service-duration .icon{width:16px;height:16px;color:var(--accent)}.svc-category-index-wrap{margin-top:clamp(32px,4vw,52px)}.svc-category-prompt{margin:0 0 18px;color:var(--color-text-secondary);font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.svc-category-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row dense;grid-auto-rows:clamp(190px,16vw,232px);gap:14px;margin:0;padding:0;list-style:none}.svc-category-grid>li{min-width:0;min-height:0}.svc-category-grid>li:first-child{grid-column:span 7;grid-row:span 2}.svc-category-grid>li:nth-child(2),.svc-category-grid>li:nth-child(3){grid-column:span 5}.svc-category-grid>li:nth-child(n+4){grid-column:span 3}.svc-category-grid[data-mosaic-tail="1"]>li:last-child,.svc-category-grid[data-mosaic-tail=solo]>li:first-child{grid-column:1/-1}.svc-category-grid[data-mosaic-tail="2"]>li:nth-last-child(-n+2){grid-column:span 6}.svc-category-grid[data-mosaic-tail="3"]>li:nth-last-child(-n+3){grid-column:span 4}.svc-category-card{appearance:none;position:relative;isolation:isolate;width:100%;height:100%;min-height:190px;padding:0;overflow:hidden;border:1px solid var(--color-border);border-radius:calc(var(--card-radius, var(--radius-md)) + 4px);background:radial-gradient(circle at 85% 10%,var(--color-brand-soft),transparent 34%),var(--color-surface-elevated);color:var(--overlay-on-photo);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-card);animation:svc-category-enter .56s var(--ease-out) both;animation-delay:calc(var(--svc-category-index, 0) * 55ms);transition:transform var(--motion-normal) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-normal) var(--ease-out)}.svc-category-image,.svc-category-shade{position:absolute;inset:0;width:100%;height:100%}.svc-category-image{z-index:-2;display:block;object-fit:cover;transform:scale(1.015);filter:saturate(.86) contrast(1.04);transition:transform .7s var(--ease-out),filter .5s var(--ease-out)}.svc-category-shade{z-index:-1;background:linear-gradient(180deg,rgba(5,5,5,.05) 14%,rgba(5,5,5,.26) 44%,rgba(5,5,5,.62) 72%,rgba(5,5,5,.86) 88%,rgba(5,5,5,.96)),linear-gradient(100deg,rgba(5,5,5,.24),transparent 60%);transition:background var(--motion-normal) var(--ease-out)}.svc-category-card:hover .svc-category-shade{background:linear-gradient(180deg,rgba(5,5,5,0) 14%,rgba(5,5,5,.18) 44%,rgba(5,5,5,.58) 72%,rgba(5,5,5,.86) 88%,rgba(5,5,5,.96)),linear-gradient(100deg,rgba(5,5,5,.16),transparent 60%)}.svc-category-content{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto auto;gap:12px 16px;width:100%;height:100%;min-height:inherit;padding:clamp(18px,2.4vw,30px)}.svc-category-number{grid-column:1/-1;align-self:start;width:fit-content;padding-bottom:5px;border-bottom:1px solid color-mix(in srgb,var(--overlay-on-photo) 48%,transparent);color:color-mix(in srgb,var(--overlay-on-photo) 84%,transparent);font-size:12px;font-weight:800;letter-spacing:.15em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-shadow:0 1px 8px rgba(0,0,0,.7)}.svc-category-title{grid-column:1/-1;align-self:end;max-width:17ch;font-size:clamp(22px,2.3vw,36px);font-weight:800;letter-spacing:-.035em;line-height:1.03;text-wrap:balance;text-shadow:0 2px 22px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.92)}.svc-category-meta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--overlay-on-photo) 22%,transparent)}.svc-category-arrow,.svc-category-count{display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--overlay-on-photo) 28%,transparent);background:rgba(10,10,10,.34);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.svc-category-count{display:inline-block;min-width:42px;height:30px;padding-inline:12px;border-radius:var(--radius-pill);font-size:13px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:28px;white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,.8)}.svc-category-arrow{width:42px;height:42px;border-radius:50%;color:var(--ink-deep);background:var(--accent);border-color:var(--accent);transition:transform var(--motion-fast) var(--ease-out)}.svc-category-arrow .icon{width:20px;height:20px}.svc-category-card:hover{z-index:2;transform:translateY(-4px);border-color:var(--color-border-strong);box-shadow:var(--shadow-xl)}.svc-category-card:hover .svc-category-image{transform:scale(1.065);filter:saturate(1) contrast(1.03)}.svc-category-card:hover .svc-category-arrow{transform:translateX(3px)}.svc-category-card:active{transform:translateY(-1px) scale(.992)}.svc-category-card:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@keyframes svc-category-enter{0%{opacity:0;transform:translateY(18px)}}@media (max-width:920px){.svc-category-grid{display:flex;flex-wrap:wrap;gap:14px}.svc-category-grid>li{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 7px);min-width:0}.svc-category-grid>li:first-child{flex:0 0 100%}.svc-category-card{min-height:260px}}@media (max-width:620px){.svc-category-index-wrap{margin-top:20px}.svc-category-prompt{margin-bottom:12px}.svc-category-grid{display:flex;flex-wrap:nowrap;gap:12px;grid-auto-rows:unset;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:3px 14px}.svc-category-grid::-webkit-scrollbar{display:none}.svc-category-grid>li:nth-child(n){flex:0 0 min(82vw,350px);min-height:410px;scroll-snap-align:start}.svc-category-grid>li:last-child{scroll-snap-align:end}.svc-category-card{min-height:410px}.svc-category-title{font-size:clamp(26px,8vw,34px)}}@media (hover:none){.svc-category-card:hover{transform:none}.svc-category-card:hover .svc-category-image{transform:scale(1.015);filter:saturate(.86) contrast(1.04)}}@media (prefers-reduced-motion:reduce){.svc-category-card{animation:none}.svc-category-arrow,.svc-category-card,.svc-category-image,.svc-detail-dialog,.svc-detail-overlay{transition:none}.svc-detail-overlay[data-phase=entering],.svc-detail-overlay[data-phase=entering] .svc-detail-dialog,.svc-detail-overlay[data-phase=leaving],.svc-detail-overlay[data-phase=leaving] .svc-detail-dialog{opacity:1;transform:none}}.svc-gallery{position:relative}.svc-cover{background:var(--paper-warm);overflow:clip}.svc-cover .service-photo{transition:transform .5s var(--ease-out)}.svc-card--clickable.is-hover .svc-cover .service-photo,.svc-card--clickable:hover .svc-cover .service-photo{transform:scale(1.02)}@media (hover:none){.svc-card--clickable:hover .svc-cover .service-photo{transform:none}}.svc-thumbs{display:flex;gap:8px;margin:0;padding:12px 16px 16px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;list-style:none}.svc-gallery--compact .svc-thumbs{padding:10px 0 2px}.svc-thumbs li{flex:none}.svc-thumb{appearance:none;position:relative;flex:none;width:64px;height:64px;padding:0;border-radius:12px;border:2px solid transparent;overflow:clip;background:var(--paper-warm);cursor:pointer;opacity:.65;transition:opacity .2s,border-color .2s,transform .25s var(--ease-out)}.svc-gallery--compact .svc-thumb{width:52px;height:52px;border-radius:10px}.svc-thumb:hover{opacity:.9;transform:translateY(-1px)}.svc-thumb--active{opacity:1;border-color:var(--accent)}.svc-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.svc-thumb img{width:100%;height:100%;object-fit:cover;display:block}.svc-thumb-more{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;gap:4px;font-weight:800;font-size:15px;color:var(--overlay-on-photo);background:var(--overlay-thumb-more-bg)}.svc-thumb-more .icon{width:16px;height:16px}.service-row-main{min-width:0}.svc-card--clickable,.svc-row--clickable{position:relative;cursor:pointer;transition:border-color var(--motion-base) var(--ease-out)}.svc-card--clickable:focus-within,.svc-row--clickable:focus-within{border-color:var(--color-border-strong)}.svc-card--clickable:focus-visible,.svc-row--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.svc-details-btn{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-primary);font:inherit;font-weight:700;font-size:14px;white-space:nowrap;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .18s ease-out}.svc-details-btn .icon{width:16px;height:16px;color:var(--accent-strong)}.svc-details-btn:focus-visible{opacity:1;pointer-events:auto;outline:2px solid var(--accent);outline-offset:2px}.svc-detail-overlay{position:fixed;inset:0;z-index:var(--z-lightbox);display:grid;place-items:center;padding:16px;background:var(--overlay-backdrop);opacity:1;transition:opacity .18s var(--ease-out);overscroll-behavior:contain;overflow-y:auto}.svc-detail-overlay[data-phase=entering],.svc-detail-overlay[data-phase=leaving]{opacity:0}.svc-detail-overlay[data-phase=leaving]{pointer-events:none}.svc-detail-dialog{width:min(760px,100%);margin:auto;max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;background:var(--dialog-background);color:var(--dialog-text);border:1px solid var(--dialog-border);border-radius:18px;box-shadow:var(--dialog-shadow);opacity:1;transform:translateZ(0) scale(1);transform-origin:50% 50%;transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .16s ease-out}.svc-detail-overlay[data-phase=entering] .svc-detail-dialog{opacity:0;transform:translate3d(0,14px,0) scale(.985)}.svc-detail-overlay[data-phase=leaving] .svc-detail-dialog{opacity:0;transform:translate3d(0,8px,0) scale(.99);transition-duration:.18s,.14s;transition-timing-function:ease-in,ease-in}.svc-detail-overlay[data-phase=entering] .svc-detail-dialog,.svc-detail-overlay[data-phase=leaving] .svc-detail-dialog{will-change:transform,opacity}.svc-detail-media{flex:none;position:relative;border-radius:17px 17px 0 0;overflow:clip;background:var(--paper-warm);touch-action:pan-y}.svc-detail-media img{height:auto;aspect-ratio:16/9;max-height:44vh;max-height:44dvh;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.svc-detail-media img,.svc-detail-zoom{width:100%;display:block;background:var(--paper-warm)}.svc-detail-zoom{appearance:none;padding:0;border:0;cursor:zoom-in;touch-action:pan-y}.svc-detail-zoom:focus-visible{outline:2px solid var(--overlay-on-photo);outline-offset:-2px}.svc-detail-zoom img{transition:transform .35s var(--ease-out)}.svc-detail-zoom--on{cursor:zoom-out}.svc-detail-zoom--on img{transform:scale(2)}.svc-detail-media-fallback{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;font-family:var(--font-display);font-size:clamp(64px,10vw,120px);background:var(--ink-deep);color:var(--cream)}.svc-detail-badge{left:16px;bottom:16px;padding:7px 14px;border-radius:var(--radius-pill);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--overlay-chip-bg-soft);pointer-events:none}.svc-detail-badge,.svc-detail-close{position:absolute;color:var(--overlay-on-photo);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.svc-detail-close{top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:1px solid var(--overlay-chip-border-light);background:var(--overlay-chip-bg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;transition:transform .25s var(--ease-out),background .2s}.svc-detail-close:hover{background:var(--overlay-chip-bg-strong);transform:scale(1.06)}.svc-detail-close:active{transform:scale(.94)}.svc-detail-close:focus-visible{outline:2px solid var(--overlay-on-photo);outline-offset:2px}.svc-detail-close .icon{width:20px;height:20px}.svc-detail-arrow{position:absolute;top:50%;translate:0 -50%;z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid var(--overlay-chip-border-light);background:var(--overlay-chip-bg);color:var(--overlay-on-photo);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:scale .25s var(--ease-out),background .2s}.svc-detail-arrow:hover{background:var(--overlay-chip-bg-strong);scale:1.06}.svc-detail-arrow:active{scale:.94}.svc-detail-arrow:focus-visible{outline:2px solid var(--overlay-on-photo);outline-offset:2px}.svc-detail-arrow .icon{width:20px;height:20px}.svc-detail-prev{left:12px}.svc-detail-next{right:12px}.svc-detail-counter{position:absolute;right:12px;bottom:12px;padding:7px 13px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--overlay-on-photo);background:var(--overlay-chip-bg-soft);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none}.svc-detail-thumbs{flex:none;padding:14px 20px 0}.svc-detail-thumbs .svc-thumb{background:color-mix(in srgb,var(--dialog-text) 8%,transparent)}.svc-detail-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.svc-detail-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:grid;gap:10px;align-content:start;padding:0 28px 22px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--dialog-text) 28%,transparent) transparent}.svc-detail-scroll::-webkit-scrollbar{width:8px}.svc-detail-scroll::-webkit-scrollbar-track{background:transparent}.svc-detail-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--dialog-text) 28%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}.svc-detail-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--dialog-text) 45%,transparent);border:2px solid transparent;background-clip:content-box}.svc-detail-title{flex:none;margin:0;padding:20px 28px 12px;font-family:var(--font-display);font-weight:800;font-size:clamp(26px,3.4vw,34px);line-height:1.12;letter-spacing:0;text-wrap:balance}.svc-detail-desc{margin:0;font-size:16px;line-height:1.7;white-space:pre-line;max-width:65ch;overflow-wrap:anywhere;color:color-mix(in srgb,var(--dialog-text) 78%,transparent)}.svc-detail-meta{flex:1 1 auto;min-width:0;margin-top:0;padding-top:0;border-top:0;justify-content:flex-start;gap:8px 18px}.svc-detail-meta .service-price{font-size:22px}.svc-detail-meta .service-duration{color:var(--dialog-text)}.svc-detail-actions{flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:18px 28px 22px;border-top:1px solid color-mix(in srgb,var(--dialog-text) 14%,transparent);background:var(--dialog-background)}.svc-detail-booking{flex:none;display:grid;justify-items:center}.svc-detail-cta{flex:0 1 auto;min-width:min(260px,100%);--btn-bg:var(--dialog-text);--btn-fg:var(--dialog-background);box-shadow:0 10px 30px rgb(0 0 0/.35),var(--shadow-sm)}.svc-detail-cta,.svc-detail-cta:hover{background:var(--dialog-text);color:var(--dialog-background);border-color:transparent}.svc-detail-cta:hover{box-shadow:0 14px 36px rgb(0 0 0/.45),var(--shadow-subtle);transform:translateY(-2px)}.svc-detail-cta:active{transform:translateY(0) scale(.98)}.svc-detail-cta:focus-visible{outline:2px solid var(--dialog-text);outline-offset:2px}}@layer components{.services--gateway a.svc-category-card{display:block;color:inherit;text-decoration:none}.services--gateway a.svc-category-card:hover{color:inherit}.svc-category-all{margin:clamp(24px,3vw,34px) 0 0}.svc-category-all-link{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700}.svc-category-all-link .icon{width:18px;height:18px;transition:transform var(--motion-fast) var(--ease-out)}.svc-category-all-link:hover .icon{transform:translateX(4px)}.services-page{padding-block:0}.services-page-head{max-width:62ch}.services-page-head h1{margin:0 0 18px}.svc-page-group{--svc-group-pad-y:clamp(38px,4.4vw,60px);padding-top:var(--svc-group-pad-y)}:root{--svc-rail-h:123px;--svc-anchor-gap:16px}@media (max-width:640px){:root{--svc-rail-h:65px}}.svc-page-group-head{display:flex;align-items:baseline;gap:16px;padding-bottom:18px;margin-bottom:26px;border-bottom:1px solid var(--color-border)}.svc-page-group-number{flex:none;color:var(--color-brand-strong);font-size:13px;font-weight:800;letter-spacing:.16em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-page-group-title{flex:1 1 auto;margin:0;min-width:0;font-size:clamp(24px,2.6vw,34px);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}.svc-page-group-count{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding-inline:10px;border-radius:50%;background:var(--color-brand-soft);color:var(--color-brand-strong);font-size:14px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-page-cards{align-items:stretch}.svc-page-cards .service-photo{aspect-ratio:16/9}.svc-page-cards .svc-thumbs{display:none}.svc-page-cards .service-body{flex:1 1 auto;height:auto;padding:20px}.svc-page-cards .service-title{order:1}.svc-page-cards .service-desc{order:2;margin:12px 0 0}.svc-page-cards .service-meta{order:3;margin-top:auto;padding-top:12px}.svc-page-cards>li{min-width:0}.svc-page-cards>li:target{border-color:var(--color-border-strong);box-shadow:var(--shadow-xl)}.svc-page-cards>li:target .service-title{color:var(--color-brand-strong)}.svc-page-cta-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 24px;margin-top:clamp(40px,5vw,64px);padding-top:28px;border-top:1px solid var(--color-border)}.svc-page-total{margin:0;color:var(--color-text-muted);font-size:14px;font-weight:700}.svc-page-back{margin:28px 0 0;font-size:14px}@media (max-width:560px){.svc-page-group-head{flex-wrap:wrap;gap:10px 14px}.svc-page-group-count{order:3}}@media print{.svc-details-btn,.svc-page-back{display:none}}}main .services--page section.svc-page-group[id]{scroll-margin-top:calc(var(--header-height, 72px) + var(--breadcrumb-sticky-h, 0px) + var(--svc-rail-h, 123px) + var(--svc-anchor-gap, 16px) - var(--anchor-offset, 80px) - var(--svc-group-pad-y, 0px))}main .services--page .svc-page-cards>li[id]{scroll-margin-top:calc(var(--header-height, 72px) + var(--breadcrumb-sticky-h, 0px) + var(--svc-rail-h, 123px) + var(--svc-anchor-gap, 16px) - var(--anchor-offset, 80px))}