/* ЗГЕНЕРОВАНО build.py з css/src/ — НЕ РЕДАГУВАТИ. Перезібрати: python build.py */
:root{color-scheme: dark;--stone-900: #221d19;--stone-800: #2c251f;--stone-700: #3b322a;--stone-600: #5a4c3f;--amber-300: #eac189;--amber-500: #c6883f;--amber-600: #a96f30;--sage-400: #93a17d;--sage-600: #6c7a5a;--cream-50: #fbf7ef;--cream-100: #f4ecdd;--cream-200: #e9dcc4;--rose-500: #a66a57;--success: #3f9757;--font-display: "Unbounded","Unbounded Fallback",sans-serif;--font-body: "Manrope","Manrope Fallback",sans-serif;--radius-pill: 100px;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 8px;--t-fast: 0.2s ease;--t-base: 0.25s ease;--t-slow: 0.35s ease;--t-reveal: 0.7s ease;--shadow-card: 0 6px 20px color-mix(in srgb,var(--stone-900) 5%,transparent);--shadow-panel: 0 20px 40px color-mix(in srgb,var(--stone-900) 16%,transparent);--z-sticky: 90;--z-header: 100;--z-overlay: 200;--container: 1180px;--wrap-pad: 28px;--section-y: 112px}@font-face{font-family: "Manrope";src: url("../../fonts/manrope-cyrillic.woff2?v=1") format("woff2");font-weight: 200 800;font-style: normal;font-display: swap;unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: "Manrope";src: url("../../fonts/manrope-latin.woff2?v=1") format("woff2");font-weight: 200 800;font-style: normal;font-display: swap;unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Unbounded";src: url("../../fonts/unbounded-cyrillic.woff2?v=1") format("woff2");font-weight: 200 900;font-style: normal;font-display: swap;unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: "Unbounded";src: url("../../fonts/unbounded-latin.woff2?v=1") format("woff2");font-weight: 200 900;font-style: normal;font-display: swap;unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Manrope Fallback";src: local("Arial"),local("ArialMT"),local("Helvetica");size-adjust: 102.5%;ascent-override: 104%;descent-override: 29.3%;line-gap-override: 0%}@font-face{font-family: "Unbounded Fallback";src: local("Arial Bold"),local("Arial-BoldMT"),local("Helvetica-Bold");font-weight: 200 900;size-adjust: 133.9%;ascent-override: 74.3%;descent-override: 18.3%;line-gap-override: 0%}@font-face{font-family: "Twemoji Country Flags";src: url("../../fonts/TwemojiCountryFlags.woff2") format("woff2");unicode-range: U+1F1E6-1F1FF;font-display: swap}*,*::before,*::after{box-sizing: border-box;margin: 0;padding: 0;border: 0;-webkit-tap-highlight-color: transparent}[hidden]{display: none !important}html{scroll-behavior: smooth;background: var(--stone-900)}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*{animation-duration: 0.001ms !important;animation-iteration-count: 1 !important;transition-duration: 0.001ms !important;scroll-behavior: auto !important}}body{font-family: var(--font-body);background: var(--stone-900);color: var(--stone-900);line-height: 1.6;-webkit-font-smoothing: antialiased;overflow-x: hidden}img,svg{display: block;max-width: 100%}a{color: inherit;text-decoration: none}h1,h2,h3,h4,h5,h6{font-size: inherit;font-weight: inherit}ul,ol{list-style: none}button{font-family: inherit;font-size: inherit;cursor: pointer;background: none;color: inherit}input,textarea,select{font-family: inherit;font-size: 16px;color-scheme: light}.wrap{max-width: var(--container);margin: 0 auto;padding: 0 var(--wrap-pad);padding-left: max(var(--wrap-pad),env(safe-area-inset-left));padding-right: max(var(--wrap-pad),env(safe-area-inset-right))}.reveal{opacity: 0;transform: translateY(24px);transition: opacity var(--t-reveal),transform var(--t-reveal)}.reveal.in{opacity: 1;transform: translateY(0)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline: 2px solid var(--amber-500);outline-offset: 3px;border-radius: 6px}.eyebrow{font-family: var(--font-body);font-weight: 700;font-size: 12.5px;letter-spacing: 0.14em;text-transform: uppercase;display: inline-flex;align-items: center;gap: 9px}.eyebrow::before{content: "";width: 22px;height: 2px;background: currentColor;display: inline-block;border-radius: 2px}h1,h2,h3{font-family: var(--font-display);font-weight: 700;line-height: 1.12;letter-spacing: -0.01em;overflow-wrap: break-word}.section{padding: var(--section-y) 0;position: relative}@media (max-width: 760px){.section{padding: 76px 0}}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 10px;padding: 17px 30px;border-radius: var(--radius-pill);font-weight: 700;font-size: 15px;transition: transform var(--t-base),box-shadow var(--t-base),background var(--t-base);white-space: nowrap}.btn-primary{background: var(--amber-500);color: var(--stone-900)}.btn-primary:hover{background: var(--amber-300);transform: translateY(-2px)}.btn-ghost{background: transparent;color: var(--cream-100);border: 1.5px solid color-mix(in srgb,var(--cream-100) 35%,transparent)}.btn-ghost:hover{border-color: var(--cream-100);background: color-mix(in srgb,var(--cream-100) 8%,transparent)}.btn-dark{background: var(--stone-900);color: var(--cream-50)}.btn-dark:hover{background: var(--stone-700);transform: translateY(-2px)}.stroke-divider{width: 100%;height: 56px;display: block}.stroke-divider path{fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-dasharray: 24 16;animation: stroke-flow 18s linear infinite}@keyframes stroke-flow{to{stroke-dashoffset: -320}}.site-header{position: fixed;top: 0;left: 0;right: 0;z-index: var(--z-header);padding: 14px 0;background-color: transparent}.site-header-bg{position: absolute;inset: 0;pointer-events: none;transition: background var(--t-slow),box-shadow var(--t-slow)}.site-header.scrolled .site-header-bg{background: color-mix(in srgb,var(--stone-900) 92%,transparent);backdrop-filter: blur(10px);box-shadow: 0 8px 24px rgba(0,0,0,0.18)}.site-header .wrap{position: relative;z-index: 1;display: flex;align-items: center;justify-content: space-between;gap: 24px}.logo{font-family: var(--font-display);font-weight: 700;font-size: 19px;color: var(--cream-50);display: flex;align-items: center;gap: 10px}.logo .dot{width: 9px;height: 9px;border-radius: 50%;background: var(--amber-500);flex: none}.nav-links{display: flex;align-items: center;gap: 34px}.nav-links a{color: color-mix(in srgb,var(--cream-100) 82%,transparent);font-size: 14.5px;font-weight: 600;transition: color var(--t-fast);position: relative}.nav-links a:hover{color: var(--cream-50)}.header-right{display: flex;align-items: center;gap: 18px}.header-phone{color: var(--cream-100);font-size: 14.5px;font-weight: 700;display: flex;align-items: center;gap: 8px}.header-phone svg{width: 16px;height: 16px;stroke: var(--amber-300)}.account-trigger{display: flex;align-items: center;gap: 7px;color: var(--cream-100);font-size: 13.5px;font-weight: 700;padding: 9px 14px;border-radius: var(--radius-pill);border: 1.5px solid color-mix(in srgb,var(--cream-100) 25%,transparent);transition: border-color var(--t-fast),background var(--t-fast)}.account-trigger:hover{border-color: var(--cream-100);background: color-mix(in srgb,var(--cream-100) 8%,transparent)}.account-trigger svg{width: 16px;height: 16px;stroke: var(--amber-300);flex: none}.nav-toggle{display: none;flex-direction: column;gap: 5px;width: 26px}.nav-toggle span{height: 2px;background: var(--cream-50);border-radius: 2px;transition: transform var(--t-base),opacity var(--t-base)}.mobile-panel{position: fixed;inset: 0;z-index: 99;background: transparent;display: flex;flex-direction: column;padding: 100px 32px 40px;transform: translateX(100%);transition: transform 0.4s ease,background 0s linear 0.4s}.mobile-panel.open{transform: translateX(0);background: var(--stone-900);transition: transform 0.4s ease,background 0s}.mobile-panel a{color: var(--cream-100);font-family: var(--font-display);font-size: 26px;padding: 14px 0;border-bottom: 1px solid color-mix(in srgb,var(--cream-100) 10%,transparent)}.mobile-panel .btn{margin-top: 26px;width: 100%;font-family: var(--font-body);font-size: 15px;padding: 17px 30px;border-bottom: none}@media (max-width: 760px){.logo{font-size: clamp(15px,4.4vw,19px);white-space: nowrap}}@media (max-width: 1150px){.nav-links{display: none}.header-phone span{display: none}.account-trigger span{display: none}.account-trigger{padding: 9px}.nav-toggle{display: flex}}.site-footer{background: var(--stone-900);color: color-mix(in srgb,var(--cream-100) 60%,transparent);padding: 56px 0 28px}.footer-top{display: flex;justify-content: space-between;align-items: start;gap: 40px;padding-bottom: 40px;border-bottom: 1px solid color-mix(in srgb,var(--cream-100) 10%,transparent);flex-wrap: wrap}.footer-brand .logo{margin-bottom: 14px}.footer-brand p{max-width: 280px;font-size: 14px}.footer-cols{display: flex;gap: 60px;flex-wrap: wrap}.footer-col h4{color: var(--cream-100);font-size: 13px;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;margin-bottom: 16px}.footer-col a{display: block;font-size: 14px;margin-bottom: 11px;transition: color var(--t-fast)}.footer-col a:hover{color: var(--cream-50)}.footer-bottom{padding-top: 24px;display: flex;justify-content: space-between;gap: 12px;font-size: 12.5px;flex-wrap: wrap}@media (max-width: 700px){.footer-top{flex-direction: column}}.mobile-cta{position: fixed;bottom: 0;left: 0;right: 0;z-index: var(--z-sticky);background-color: transparent;display: none;padding: 12px 18px;padding-bottom: max(12px,env(safe-area-inset-bottom));gap: 10px}.mobile-cta-bg{position: absolute;inset: 0;background: color-mix(in srgb,var(--stone-900) 96%,transparent);backdrop-filter: blur(10px);box-shadow: 0 -8px 24px rgba(0,0,0,0.2);pointer-events: none}.mobile-cta a{position: relative;z-index: 1;flex: 1;display: flex;align-items: center;justify-content: center;gap: 8px;padding: 13px;border-radius: var(--radius-pill);font-size: 14px;font-weight: 700}.mobile-cta .call{background: color-mix(in srgb,var(--cream-100) 10%,transparent);color: var(--cream-50)}.mobile-cta .book{background: var(--amber-500);color: var(--stone-900)}@media (max-width: 760px){.mobile-cta{display: flex}body{padding-bottom: 72px;padding-bottom: calc(72px + env(safe-area-inset-bottom))}.header-phone,.header-right .btn{display: none}}.account-overlay{display: flex;position: fixed;inset: 0;z-index: var(--z-overlay);background: transparent;align-items: center;justify-content: center;padding: 20px;opacity: 0;visibility: hidden;pointer-events: none;transition: opacity var(--t-base),visibility var(--t-base),background 0s linear 0.25s,backdrop-filter 0s linear 0.25s}.account-overlay.open{background: color-mix(in srgb,var(--stone-900) 55%,transparent);backdrop-filter: blur(4px);opacity: 1;visibility: visible;pointer-events: auto;transition: opacity var(--t-base),visibility var(--t-base),background 0s,backdrop-filter 0s}.account-panel{position: relative;width: 100%;max-width: 400px;background: var(--cream-50);border-radius: var(--radius-lg);padding: 36px 30px;box-shadow: 0 30px 60px rgba(0,0,0,0.3);max-height: 90vh;overflow-y: auto;transform: translateY(14px) scale(0.97);transition: transform var(--t-base)}.account-overlay.open .account-panel{transform: translateY(0) scale(1)}@media (prefers-reduced-motion: reduce){.account-overlay,.account-panel{transition: none}}.account-close{position: absolute;top: 18px;right: 18px;width: 32px;height: 32px;border-radius: 50%;display: flex;align-items: center;justify-content: center;background: var(--cream-100)}.account-close svg{width: 15px;height: 15px;stroke: var(--stone-700)}.account-tabs{display: flex;gap: 8px;margin-bottom: 24px}.account-tab{flex: 1;padding: 11px;border-radius: var(--radius-pill);font-size: 13.5px;font-weight: 700;background: var(--cream-100);color: var(--stone-600);transition: var(--t-fast)}.account-tab.active{background: var(--stone-900);color: var(--cream-50)}.account-form .btn-primary{width: 100%;margin-top: 6px}.account-error{color: var(--rose-500);font-size: 13px;min-height: 16px;margin: 6px 0 2px}.account-greeting{font-family: var(--font-display);font-size: 20px;margin-bottom: 8px}.account-subtext{color: var(--stone-600);font-size: 14px;margin-bottom: 24px}.btn-ghost-dark{background: transparent;color: var(--stone-900);border: 1.5px solid var(--cream-200)}.btn-ghost-dark:hover{border-color: var(--stone-600);background: var(--cream-100)}.hero{position:relative;background:var(--stone-900);color:var(--cream-100);padding:168px 0 120px;overflow:hidden}.hero::before{content:'';position:absolute;top:-10%;right:-10%;width:min(820px,70vw);height:min(820px,70vw);background:radial-gradient(circle at center,color-mix(in srgb,var(--amber-500) 30%,transparent),transparent 65%);pointer-events:none}.hero::after{content:'';position:absolute;bottom:-10%;left:-10%;width:min(560px,55vw);height:min(560px,55vw);background:radial-gradient(circle at center,color-mix(in srgb,var(--sage-600) 22%,transparent),transparent 65%);pointer-events:none}.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.hero-copy,.hero-media{min-width:0}.hero-eyebrow{color:var(--amber-300);margin-bottom:22px}.hero h1{font-size:clamp(38px,5vw,62px);color:var(--cream-50);margin-bottom:22px}.hero h1 em{font-style:normal;color:var(--amber-300)}.hero p.lead{font-size:18px;color:color-mix(in srgb,var(--cream-100) 78%,transparent);max-width:480px;margin-bottom:36px}.hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:48px}.hero-stats{display:flex;gap:34px;flex-wrap:wrap}.hero-stat b{display:block;font-family:var(--font-display);font-size:26px;color:var(--cream-50)}.hero-stat{min-width:0}.hero-stat span{font-size:13px;color:color-mix(in srgb,var(--cream-100) 60%,transparent)}.hero-media{position:relative;width:100%}.blob-frame{position:relative;aspect-ratio:4/5;isolation:isolate}.blob-visual{position:absolute;inset:0;border-radius:63% 37% 41% 59% / 55% 43% 57% 45%;overflow:hidden;background:linear-gradient(155deg,var(--stone-700) 0%,var(--stone-900) 60%)}.blob-visual img{width: 100%;height: 100%;position: absolute;inset: 0;object-fit: cover;object-position: center;transform: scale(1)}.blob-visual .ph-fill{position:absolute;inset:0;background: radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--amber-300) 28%,transparent),transparent 45%),radial-gradient(circle at 75% 70%,color-mix(in srgb,var(--sage-400) 24%,transparent),transparent 50%),linear-gradient(160deg,var(--stone-700),var(--stone-900))}.play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:color-mix(in srgb,var(--cream-50) 94%,transparent);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(0,0,0,.35);transition:transform .25s ease;z-index:3}.play-btn:hover{transform:translate(-50%,-50%) scale(1.06)}.play-btn svg{width:24px;height:24px;fill:var(--stone-900);margin-left:3px}.media-caption{position:absolute;left:22px;right:22px;bottom:22px;z-index:3;background:color-mix(in srgb,var(--stone-900) 55%,transparent);backdrop-filter:blur(6px);color:var(--cream-50);font-size:13px;font-weight:700;padding:9px 16px;border-radius:100px;display:flex;align-items:center;gap:8px;width:fit-content;max-width:calc(100% - 44px)}.media-caption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-caption .dot-live{width:7px;height:7px;border-radius:50%;background:var(--amber-500);flex:none}.float-card{position:absolute;background:var(--cream-50);color:var(--stone-900);border-radius:18px;padding:16px 18px;box-shadow:0 20px 40px rgba(0,0,0,.28);display:flex;align-items:center;gap:12px;z-index:4;max-width:210px}.float-card svg{width:22px;height:22px;stroke:var(--amber-600);flex:none}.float-card b{display:block;font-size:14px;font-family:var(--font-display)}.float-card span{font-size:12px;color:var(--stone-600)}.float-card.one{top:-6%;left:-9%}.float-card.two{bottom:8%;right:-11%}@media (max-width:1000px){.hero .wrap{grid-template-columns:1fr}.hero-media{max-width:420px;margin:0 auto}.float-card{display:none}}@media (max-width:760px){.hero h1{font-size:clamp(26px,9.6vw,38px)}.hero p.lead{font-size:16.5px}}@media (max-width:600px){.hero{padding:130px 0 80px}.hero-stats{gap:22px}}.page-hero{background:var(--stone-900);color:var(--cream-100);padding:150px 0 64px;position:relative;overflow:hidden}.page-hero::before{content:'';position:absolute;top:-15%;right:-12%;width:min(560px,65vw);height:min(560px,65vw);background:radial-gradient(circle at center,color-mix(in srgb,var(--amber-500) 26%,transparent),transparent 62%);pointer-events:none}.page-hero .wrap{position:relative;z-index:1}.page-hero .eyebrow{color:var(--amber-300);margin-bottom:16px}.page-hero h1{font-size:clamp(30px,4vw,46px);color:var(--cream-50);max-width:640px}.page-hero p{color:color-mix(in srgb,var(--cream-100) 70%,transparent);max-width:480px;margin-top:14px;font-size:15.5px}.back-link{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:color-mix(in srgb,var(--cream-100) 70%,transparent);margin-bottom:22px;position:relative;z-index:1}.back-link:hover{color:var(--cream-50)}.back-link svg{width:15px;height:15px;stroke:currentColor}@media (max-width:600px){.page-hero h1{font-size:clamp(22px,7vw,30px)}}.services{background: var(--cream-50)}.section-head{display: flex;justify-content: space-between;align-items: end;gap: 24px;margin-bottom: 56px}.section-head .eyebrow{color: var(--amber-600);margin-bottom: 14px}.section-head h2{font-size: clamp(28px,3.4vw,42px);max-width: 560px}.section-head p{color: var(--stone-600);max-width: 360px;font-size: 15px}.svc-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 22px}.svc-card{display: flex;flex-direction: column;min-width: 0;background: var(--cream-100);border-radius: var(--radius-md);padding: 32px 28px;transition: transform 0.3s ease,background 0.3s ease,box-shadow 0.3s ease;position: relative;cursor: pointer}.svc-card:hover{transform: translateY(-6px);background: var(--cream-50);box-shadow: 0 18px 40px color-mix(in srgb,var(--stone-900) 10%,transparent)}.svc-card:focus-visible{outline: 2px solid var(--amber-500);outline-offset: 3px}.service-modal{max-width: 480px}.svc-icon{width: 52px;height: 52px;border-radius: var(--radius-md);background: var(--stone-900);display: flex;align-items: center;justify-content: center;margin-bottom: 22px}.svc-icon svg{width: 24px;height: 24px;stroke: var(--amber-300)}.svc-card h3{font-size: 19px;margin-bottom: 10px;font-weight: 600;letter-spacing: 0}.svc-card p{font-size: 14.5px;color: var(--stone-600);margin-bottom: 20px}.svc-meta{display: flex;justify-content: space-between;align-items: center;padding-top: 16px;border-top: 1px solid color-mix(in srgb,var(--stone-600) 15%,transparent);font-size: 13.5px;font-weight: 700}.svc-card .svc-meta{margin-top: auto}.svc-meta .price{color: var(--amber-600)}.svc-more{display: inline-flex;align-items: center;gap: 7px;margin-top: 14px;font-size: 13.5px;font-weight: 700;color: var(--amber-600);align-self: flex-start}.svc-more::after{content: "\2192";transition: transform var(--t-fast)}.svc-card.svc-unavailable{filter: grayscale(1);opacity: 0.55;pointer-events: none}.svc-card.svc-unavailable .svc-more{color: var(--stone-600);font-weight: 600}.svc-card.svc-unavailable .svc-more::after{content: none}.svc-card:hover .svc-more::after,.svc-card:focus-visible .svc-more::after{transform: translateX(4px)}.svc-featured{background: var(--stone-900);color: var(--cream-100)}.svc-featured .svc-icon{background: var(--amber-500)}.svc-featured .svc-icon svg{stroke: var(--stone-900)}.svc-featured p{color: color-mix(in srgb,var(--cream-100) 68%,transparent)}.svc-featured .svc-meta{border-color: color-mix(in srgb,var(--cream-100) 15%,transparent)}.svc-featured .svc-more{color: var(--amber-300)}.svc-featured:hover{background: var(--stone-800)}@media (max-width: 900px){.svc-grid{grid-template-columns: repeat(2,1fr)}}@media (max-width: 600px){.svc-grid{grid-template-columns: 1fr}.section-head{flex-direction: column;align-items: start}}.process{background: var(--stone-900);color: var(--cream-100)}.process .eyebrow{color: var(--sage-400)}.process-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 0;margin-top: 56px;border-top: 1px solid color-mix(in srgb,var(--cream-100) 14%,transparent)}.process-item{padding: 38px 30px;border-right: 1px solid color-mix(in srgb,var(--cream-100) 14%,transparent);position: relative}.process-item:last-child{border-right: none}.process-num{font-family: var(--font-display);font-size: 14px;color: var(--amber-300);margin-bottom: 16px}.process-item h3{font-size: 19px;font-weight: 600;margin-bottom: 10px;letter-spacing: 0}.process-item p{font-size: 14.5px;color: color-mix(in srgb,var(--cream-100) 65%,transparent)}@media (max-width: 760px){.process-grid{grid-template-columns: 1fr}.process-item{border-right: none;border-bottom: 1px solid color-mix(in srgb,var(--cream-100) 14%,transparent)}}.gallery{background: var(--cream-100)}.gal-tabs{display: flex;gap: 10px;margin-bottom: 32px}.gal-tab{padding: 10px 20px;border-radius: var(--radius-pill);font-size: 13.5px;font-weight: 700;background: var(--cream-50);color: var(--stone-600);transition: var(--t-fast)}.gal-tab.active{background: var(--stone-900);color: var(--cream-50)}.gal-grid{display: grid;grid-template-columns: repeat(4,1fr);grid-auto-rows: 150px;gap: 14px}.gal-item{position: relative;border-radius: 20px;overflow: hidden;grid-column: span 1;grid-row: span 1;cursor: pointer}.gal-item.big{grid-column: span 2;grid-row: span 2}.gal-item .ph{position: absolute;inset: 0;transition: transform 0.5s ease}.gal-item:hover .ph{transform: scale(1.06)}.gal-item::after{content: "";position: absolute;inset: 0;background: linear-gradient(0deg,color-mix(in srgb,var(--stone-900) 45%,transparent),transparent 55%)}.gal-tag{position: absolute;bottom: 14px;left: 14px;z-index: 2;color: var(--cream-50);font-size: 13px;font-weight: 700;display: flex;align-items: center;gap: 7px}.gal-item.video::before{content: "";position: absolute;top: 14px;right: 14px;z-index: 2;width: 34px;height: 34px;border-radius: 50%;background: color-mix(in srgb,var(--cream-50) 90%,transparent)}.gal-item.video .vicon{position: absolute;top: 22px;right: 22px;z-index: 3;width: 0;height: 0;border-style: solid;border-width: 6px 0 6px 10px;border-color: transparent transparent transparent var(--stone-900)}@media (max-width: 900px){.gal-grid{grid-template-columns: repeat(2,1fr)}.gal-item.big{grid-column: span 2}}@media (max-width: 560px){.gal-grid{grid-template-columns: repeat(2,1fr);grid-auto-rows: 120px}}.about{background: var(--cream-50)}.about .wrap{display: grid;grid-template-columns: 0.8fr 1.2fr;gap: 64px;align-items: center}.about-photo{position: relative;width: 100%}.about-photo .blob-frame{aspect-ratio: 3/4}.about-badge{position: absolute;bottom: -22px;left: -22px;background: var(--amber-500);color: var(--stone-900);padding: 18px 22px;border-radius: 18px;font-family: var(--font-display);box-shadow: 0 16px 34px rgba(0,0,0,0.18)}.about-badge b{display: block;font-size: 24px}.about-badge span{font-size: 12px;font-weight: 600;font-family: var(--font-body)}.about-content h2{font-size: clamp(26px,3.2vw,38px);margin: 16px 0 22px}.about-content p{color: var(--stone-600);margin-bottom: 16px;font-size: 15.5px;max-width: 520px}.cert-list{display: flex;flex-direction: column;gap: 14px;margin-top: 26px}.cert-item{display: flex;align-items: center;gap: 14px}.cert-item svg{width: 20px;height: 20px;stroke: var(--amber-600);flex: none}.cert-item span{font-size: 14.5px;font-weight: 600}@media (max-width: 900px){.about .wrap{grid-template-columns: 1fr}.about-photo{max-width: 340px;margin: 0 auto 40px}}.testi{background: var(--stone-900);color: var(--cream-100)}.testi .eyebrow{color: var(--amber-300)}.testi-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 22px;margin-top: 50px}.testi-card{background: var(--stone-800);border-radius: var(--radius-md);padding: 30px 26px}.testi-stars{display: flex;gap: 4px;margin-bottom: 18px}.testi-stars svg{width: 15px;height: 15px;fill: var(--amber-300)}.testi-card p{font-size: 15px;color: color-mix(in srgb,var(--cream-100) 85%,transparent);margin-bottom: 22px}.testi-person{display: flex;align-items: center;gap: 12px}.testi-avatar{width: 40px;height: 40px;border-radius: 50%;background: linear-gradient(140deg,var(--amber-500),var(--rose-500));flex: none}.testi-person b{display: block;font-size: 14px}.testi-person span{font-size: 12.5px;color: color-mix(in srgb,var(--cream-100) 55%,transparent)}@media (max-width: 900px){.testi-grid{grid-template-columns: 1fr}}.testi-empty{color: color-mix(in srgb,var(--cream-100) 60%,transparent);font-size: 14.5px;margin-top: 24px}.testi-cta{margin-top: 36px}.review-form-wrap{margin-top: 28px;background: var(--stone-800);border-radius: 20px;padding: 32px 28px;max-width: 560px}.review-form-wrap .field,.review-form-wrap .field-row{margin-bottom: 16px}.review-form-wrap .field label{color: color-mix(in srgb,var(--cream-100) 75%,transparent)}.review-form .form-note{margin: 0 0 16px;text-align: left;font-size: 13.5px;line-height: 1.5;color: color-mix(in srgb,var(--cream-100) 78%,transparent)}.review-form .form-note:empty{display: none}.review-form .form-note.is-ok{color: var(--sage-400)}.review-form .form-note.is-error{color: color-mix(in srgb,var(--rose-500) 55%,var(--cream-100))}.star-picker{display: flex;gap: 6px}.star-picker button{font-size: 28px;line-height: 1;color: color-mix(in srgb,var(--cream-100) 25%,transparent);transition: color 0.15s ease,transform 0.15s ease}.star-picker button:hover{transform: scale(1.1)}.star-picker button.active{color: var(--amber-300)}.cta-band{background: var(--stone-900);color: var(--cream-100);position: relative;overflow: hidden;text-align: center;padding: 120px 0 96px}.cta-band::before{content: "";position: absolute;top: -30px;left: 50%;width: min(560px,92vw);height: min(560px,92vw);transform: translateX(-50%);background: radial-gradient(circle at center,color-mix(in srgb,var(--amber-500) 24%,transparent),transparent 55%);pointer-events: none}.cta-band .eyebrow{color: var(--amber-300);justify-content: center;position: relative;z-index: 1}.cta-band h2{font-size: clamp(28px,3.6vw,44px);color: var(--cream-50);max-width: 640px;margin: 18px auto 16px;position: relative;z-index: 1}.cta-band p{color: color-mix(in srgb,var(--cream-100) 70%,transparent);max-width: 480px;margin: 0 auto 36px;font-size: 15.5px;position: relative;z-index: 1}.cta-actions{display: flex;justify-content: center;gap: 16px;flex-wrap: wrap;position: relative;z-index: 1;margin-bottom: 44px}.cta-info{display: flex;justify-content: center;gap: 36px;flex-wrap: wrap;position: relative;z-index: 1}.cta-info-item{display: flex;align-items: center;gap: 10px;font-size: 14px;color: color-mix(in srgb,var(--cream-100) 72%,transparent)}.cta-info-item svg{width: 18px;height: 18px;stroke: var(--amber-300);flex: none}.book{background: var(--cream-100)}.book-panel{display: grid;grid-template-columns: minmax(0,1.15fr) minmax(0,0.85fr);gap: 0;border-radius: 32px;overflow: hidden;box-shadow: 0 30px 60px color-mix(in srgb,var(--stone-900) 12%,transparent)}.book-form{background: var(--cream-50);padding: 56px 52px;min-width: 0}.book-form h2{font-size: clamp(24px,3vw,32px);margin-bottom: 10px}.book-form > p{color: var(--stone-600);margin-bottom: 40px;font-size: 14.5px}.field-row{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1fr);gap: 16px}.field{display: flex;flex-direction: column;gap: 8px;margin-bottom: 16px;min-width: 0}.field label{font-size: 12.5px;font-weight: 700;letter-spacing: 0.03em;color: var(--stone-700)}.field input,.field select,.field textarea{width: 100%;padding: 13px 16px;border-radius: 12px;border: 1.5px solid var(--cream-200);background: var(--cream-50);color: var(--stone-900);transition: border-color var(--t-fast);color-scheme: light}.field input:focus,.field select:focus,.field textarea:focus{border-color: var(--amber-500);outline: none}.field textarea{resize: vertical;min-height: 88px}.slot-grid{display: grid;grid-template-columns: repeat(auto-fill,minmax(52px,1fr));gap: 6px;max-height: 216px;overflow-y: auto;padding-right: 4px}.slot{padding: 7px 4px;border-radius: var(--radius-sm);border: 1.5px solid var(--cream-200);background: var(--cream-50);color: var(--stone-900);font-size: 12px;font-weight: 700;text-align: center;transition: border-color 0.15s ease,background 0.15s ease,color 0.15s ease}.slot:not(.booked):not(.tight):hover{border-color: var(--amber-500)}.slot.selected{background: var(--amber-500);border-color: var(--amber-500);color: var(--stone-900)}.slot.booked{background: var(--cream-100);color: var(--stone-600);opacity: 0.5;text-decoration: line-through;cursor: help}.slot.tight{background: transparent;border-style: dashed;border-color: color-mix(in srgb,var(--stone-600) 45%,transparent);color: var(--stone-600);opacity: 0.8;cursor: help}.slot.tight:hover{border-color: var(--amber-500);opacity: 1}.slot-hint{font-size: 12.5px;color: var(--stone-600);margin-top: 10px}.slot-hint.is-warning{padding: 10px 12px;border-left: 3px solid var(--amber-500);border-radius: 0 var(--radius-sm) var(--radius-sm) 0;background: color-mix(in srgb,var(--amber-500) 12%,transparent);color: var(--stone-800);line-height: 1.5}.slot-suggest{padding: 0 2px;font: inherit;font-weight: 800;color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.slot-suggest:hover{color: var(--stone-900)}.slot-legend{font-size: 12px;color: var(--stone-600);margin-top: 8px}.slot-grid:empty{display: none}.slot-grid:empty + .slot-hint{margin-top: 0}.datepicker{position: relative}.datepicker-trigger{width: 100%;display: flex;align-items: center;justify-content: space-between;gap: 10px;padding: 13px 16px;border-radius: 12px;border: 1.5px solid var(--cream-200);background: var(--cream-50);color: var(--stone-900);font-size: 15px;font-weight: 600;text-align: left;transition: border-color var(--t-fast)}.datepicker-trigger svg{width: 18px;height: 18px;stroke: var(--amber-600);flex: none}.datepicker-trigger:hover,.datepicker-trigger[aria-expanded='true']{border-color: var(--amber-500)}.datepicker[data-empty="true"] .datepicker-trigger span{color: var(--stone-600);font-weight: 400}.datepicker-panel{display: none;position: absolute;top: calc(100% + 8px);left: 0;width: 290px;max-width: calc(100vw - 56px);z-index: 20;background: var(--cream-50);border: 1px solid var(--cream-200);border-radius: 14px;box-shadow: var(--shadow-panel);padding: 14px}.datepicker-panel.open{display: block}.dp-header{display: flex;align-items: center;justify-content: space-between;margin-bottom: 10px}.dp-header span{font-family: var(--font-display);font-size: 13.5px;font-weight: 600;text-transform: capitalize}.dp-nav{width: 26px;height: 26px;border-radius: 7px;display: flex;align-items: center;justify-content: center;background: var(--cream-100);transition: background 0.15s ease}.dp-nav svg{width: 13px;height: 13px;stroke: var(--stone-700)}.dp-nav:not(:disabled):hover{background: var(--cream-200)}.dp-nav:disabled{opacity: 0.35;cursor: not-allowed}.dp-weekdays{display: grid;grid-template-columns: repeat(7,1fr);margin-bottom: 4px}.dp-weekdays span{text-align: center;font-size: 10.5px;font-weight: 700;color: var(--stone-600);text-transform: uppercase}.dp-days{display: grid;grid-template-columns: repeat(7,1fr);gap: 2px}.dp-day{aspect-ratio: 1;border-radius: var(--radius-sm);display: flex;align-items: center;justify-content: center;font-size: 12.5px;font-weight: 600;color: var(--stone-900);transition: background 0.15s ease,color 0.15s ease}.dp-day:not(:disabled):hover{background: var(--cream-200)}.dp-day.today{box-shadow: inset 0 0 0 1.5px var(--amber-500)}.dp-day.selected{background: var(--amber-500);color: var(--stone-900)}.dp-day:disabled{color: var(--cream-200);cursor: not-allowed}.dp-day-blocked{color: var(--rose-500);text-decoration: line-through;text-decoration-color: color-mix(in srgb,var(--rose-500) 50%,transparent)}.dp-day-blocked:disabled{color: var(--rose-500);cursor: not-allowed}.dp-day-blocked:not(:disabled):hover{background: color-mix(in srgb,var(--rose-500) 12%,transparent)}.book-form .btn-primary{width: 100%;margin-top: 8px;padding: 18px;font-size: 15.5px}.form-note{font-size: 12px;color: var(--stone-600);margin-top: 14px;text-align: center}.form-note a{color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.form-note a:hover{color: var(--stone-900)}.form-success{display: none;text-align: center;padding: 40px 10px}.form-success.show{display: block}.form-success svg{width: 52px;height: 52px;stroke: var(--success);stroke-width: 2.2;margin: 0 auto 18px}.form-success h3{font-size: 22px;margin-bottom: 8px}.form-success p{color: var(--stone-600);font-size: 14.5px}.form-success-note{margin: 22px auto 0;max-width: 400px;padding: 14px 18px;border-radius: var(--radius-md);background: color-mix(in srgb,var(--amber-500) 12%,transparent);border: 1px solid color-mix(in srgb,var(--amber-500) 38%,transparent);color: var(--stone-900);font-weight: 600;line-height: 1.5}.form-success-note a{color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.form-success-bot{display: flex;align-items: center;gap: 12px;max-width: 400px;margin: 14px auto 0;padding: 14px 18px;border-radius: var(--radius-md);background: var(--stone-900);color: var(--cream-50);text-align: left;transition: transform var(--t-base),box-shadow var(--t-base)}.form-success-bot:hover{transform: translateY(-2px);box-shadow: var(--shadow-panel)}.form-success-bot svg{width: 22px;height: 22px;flex: none;margin: 0;stroke: var(--amber-500);stroke-width: 2}.form-success-bot b{display: block;font-size: 14.5px}.form-success-bot small{display: block;margin-top: 2px;font-size: 12.5px;line-height: 1.4;color: color-mix(in srgb,var(--cream-100) 70%,transparent)}.book-contacts{background: var(--stone-900);color: var(--cream-100);padding: 56px 44px;display: flex;flex-direction: column;gap: 24px;position: relative;overflow: hidden;min-width: 0}.book-contacts::before{content: "";position: absolute;top: -12%;right: -18%;width: min(480px,60vw);height: min(480px,60vw);background: radial-gradient(circle at center,color-mix(in srgb,var(--amber-500) 26%,transparent),transparent 62%)}.book-contacts h3{font-family: var(--font-display);font-size: 19px;position: relative;z-index: 1}.contact-row{display: flex;align-items: flex-start;gap: 14px;position: relative;z-index: 1;min-width: 0}.contact-row .ic{width: 42px;height: 42px;border-radius: 12px;flex: none;background: color-mix(in srgb,var(--cream-100) 8%,transparent);display: flex;align-items: center;justify-content: center}.contact-row .ic svg{width: 19px;height: 19px;stroke: var(--amber-300)}.contact-row .contact-note{display: block;margin-top: 3px;color: var(--amber-300)}.contact-row b{display: block;font-size: 15px;margin-bottom: 2px}.contact-row span,.contact-row a{font-size: 13.5px;color: color-mix(in srgb,var(--cream-100) 66%,transparent);word-break: break-word}.contact-row a:hover{color: var(--cream-50)}.map-link-row{display: flex;align-items: center;gap: 8px;position: relative;z-index: 1;font-size: 13.5px;font-weight: 700;color: var(--amber-300);width: fit-content}.map-link-row svg{width: 15px;height: 15px;stroke: var(--amber-300)}.map-link-row:hover{color: var(--cream-50)}.map-link-row:hover svg{stroke: var(--cream-50)}.map-embed{position: relative;z-index: 1;border-radius: var(--radius-md);overflow: hidden;border: 1px solid color-mix(in srgb,var(--cream-100) 14%,transparent);aspect-ratio: 16/11;background: var(--stone-800)}.map-embed iframe{width: 100%;height: 100%;border: 0;display: block;filter: grayscale(0.15) contrast(1.05)}.social-row{display: flex;gap: 10px;position: relative;z-index: 1;margin-top: auto;padding-top: 8px}.social-row a{width: 42px;height: 42px;border-radius: 50%;background: color-mix(in srgb,var(--cream-100) 8%,transparent);display: flex;align-items: center;justify-content: center;transition: background var(--t-fast)}.social-row a:hover{background: var(--amber-500)}.social-row svg{width: 17px;height: 17px;stroke: var(--cream-100)}.social-row a:hover svg{stroke: var(--stone-900)}@media (max-width: 940px){.book-panel{grid-template-columns: 1fr;border-radius: var(--radius-lg)}.book-form,.book-contacts{padding: 40px 26px}.field-row{grid-template-columns: 1fr}}.phone-input-group{display: flex;gap: 8px}.phone-input-group > input[type="tel"]{flex: 1;min-width: 190px;width: auto}.phone-select{position: relative;flex: none}.phone-select-trigger{display: flex;align-items: center;gap: 7px;height: 100%;padding: 13px 12px;border: 1.5px solid var(--cream-200);border-radius: 12px;background: var(--cream-50);font-size: 15px;color: var(--stone-900);transition: border-color var(--t-fast)}.phone-select-trigger:hover,.phone-select-panel.open + .phone-select-trigger{border-color: var(--amber-500)}.phone-select-trigger svg{width: 15px;height: 15px;opacity: 0.5}.phone-select-flag{font-family: "Twemoji Country Flags",var(--font-body);font-size: 17px;line-height: 1}.phone-select-dial{font-variant-numeric: tabular-nums;white-space: nowrap}.phone-select-panel{display: none;position: absolute;top: calc(100% + 8px);left: 0;z-index: 30;width: 320px;max-width: calc(100vw - 56px);background: var(--cream-50);border: 1.5px solid var(--cream-200);border-radius: var(--radius-md);box-shadow: var(--shadow-panel);overflow: hidden}.phone-select-panel.open{display: block}.phone-select-search{display: flex;align-items: center;gap: 8px;padding: 12px 14px;border-bottom: 1px solid var(--cream-200)}.phone-select-search svg{width: 16px;height: 16px;color: var(--stone-600);flex: none}.phone-select-search input{flex: 1;min-width: 0;border: 0;background: none;font-size: 15px;color: var(--stone-900);outline: none}.phone-select-list{max-height: 260px;overflow-y: auto;padding: 6px}.phone-select-item{display: flex;align-items: center;gap: 10px;width: 100%;padding: 9px 10px;border-radius: var(--radius-sm);font-size: 14.5px;text-align: left;transition: background var(--t-fast)}.phone-select-item:hover,.phone-select-item.active{background: color-mix(in srgb,var(--amber-500) 12%,transparent)}.phone-select-item[aria-selected="true"]{font-weight: 700}.phone-select-name{flex: 1;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.phone-select-item .phone-select-dial{color: var(--stone-600);font-size: 13.5px}.phone-select-empty{padding: 18px 12px;text-align: center;color: var(--stone-600);font-size: 14px}@media (max-width: 600px){.phone-select-panel{width: min(320px,calc(100vw - 40px))}.phone-input-group > input[type="tel"]{min-width: 0}.phone-select-trigger{padding: 13px 10px;gap: 6px}.phone-select-trigger .phone-select-dial{display: none}}.field-error{display: flex;align-items: center;gap: 6px;margin-top: -2px;color: var(--rose-500);font-size: 13px;line-height: 1.35}.field-error::before{content: "!";flex: none;display: grid;place-items: center;width: 15px;height: 15px;border-radius: 50%;background: var(--rose-500);color: var(--cream-50);font-size: 11px;font-weight: 700}.field.has-error input,.field.has-error select,.field.has-error textarea,.field.has-error .phone-select-trigger{border-color: var(--rose-500)}.field.has-error input:focus,.field.has-error textarea:focus{border-color: var(--rose-500);box-shadow: 0 0 0 3px color-mix(in srgb,var(--rose-500) 15%,transparent)}.admin-page{color-scheme: light;background: linear-gradient(180deg,var(--cream-100) 0%,var(--cream-50) 55%);background-repeat: no-repeat;background-attachment: fixed;min-height: 100vh;min-height: 100dvh;display: flow-root}.admin-login-screen{min-height: 100vh;min-height: 100dvh;display: flex;align-items: center;justify-content: center;padding: 20px;background: var(--stone-900);position: relative;overflow: hidden}.admin-login-screen::before{content: "";position: absolute;top: -12%;left: 50%;transform: translateX(-50%);width: min(680px,75vw);height: min(680px,75vw);background: radial-gradient(circle at center,color-mix(in srgb,var(--amber-500) 28%,transparent),transparent 62%);pointer-events: none}.admin-login-screen::after{content: "";position: absolute;bottom: -12%;right: -10%;width: min(480px,55vw);height: min(480px,55vw);background: radial-gradient(circle at center,color-mix(in srgb,var(--sage-600) 18%,transparent),transparent 62%);pointer-events: none}.admin-login-card{position: relative;z-index: 1;width: 100%;max-width: 380px;background: var(--cream-50);border-radius: var(--radius-lg);padding: 40px 34px;box-shadow: 0 30px 70px rgba(0,0,0,0.35)}.admin-header{background: var(--cream-50);border-bottom: 1px solid var(--cream-200);padding: 18px 0}.admin-header-inner{max-width: var(--container);margin: 0 auto;padding: 0 var(--wrap-pad);display: flex;align-items: center;justify-content: space-between;gap: 12px}.admin-logo{min-width: 0;gap: 10px;color: var(--stone-900)}.admin-logo-name{min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.admin-logo-tag{flex: none;padding: 4px 9px;border-radius: var(--radius-pill);background: var(--stone-900);color: var(--cream-50);font-family: var(--font-body);font-size: 11px;font-weight: 800;letter-spacing: 0.06em;text-transform: uppercase}.admin-header-inner .btn{flex: none}.admin-tabs{max-width: var(--container);margin: 24px auto 0;padding: 0 var(--wrap-pad);display: flex;gap: 10px;overflow-x: auto;overscroll-behavior-x: contain;scroll-snap-type: x proximity;scrollbar-width: none}.admin-tabs::-webkit-scrollbar{display: none}.admin-tab{flex: none;padding: 11px 22px;border-radius: var(--radius-pill);font-size: 14px;font-weight: 700;white-space: nowrap;scroll-snap-align: center;background: var(--cream-50);color: var(--stone-600);transition: var(--t-fast)}.admin-tab.active{background: var(--stone-900);color: var(--cream-50)}.admin-panel-section{max-width: var(--container);margin: 28px auto 80px;padding: 0 var(--wrap-pad)}.admin-toolbar{display: flex;justify-content: space-between;align-items: center;gap: 16px;margin-bottom: 20px;flex-wrap: wrap}.admin-filter-tabs{display: flex;gap: 8px;flex-wrap: wrap}.admin-filter{padding: 9px 16px;border-radius: var(--radius-pill);font-size: 13px;font-weight: 700;background: var(--cream-100);color: var(--stone-600)}.admin-filter.active{background: var(--amber-500);color: var(--stone-900)}.admin-card{background: var(--cream-50);border-radius: 20px;padding: 28px;max-width: 560px;box-shadow: 0 10px 30px color-mix(in srgb,var(--stone-900) 6%,transparent)}.admin-day-picker .datepicker-trigger{width: auto;padding: 8px 14px;border-radius: var(--radius-pill);border-color: transparent;background: var(--cream-100);font-size: 13px;font-weight: 700}.admin-day-picker[data-empty='false'] .datepicker-trigger{background: var(--amber-500)}.admin-day-picker .datepicker-trigger svg{width: 15px;height: 15px}.admin-day-head{display: flex;align-items: baseline;justify-content: space-between;gap: 12px;margin-top: 12px;padding: 0 4px 8px;border-bottom: 1px solid color-mix(in srgb,var(--stone-600) 18%,transparent)}.admin-day-head:first-child{margin-top: 0}.admin-day-head b{font-family: var(--font-display);font-size: 15px}.admin-day-head span{font-size: 12.5px;font-weight: 700;color: var(--stone-600)}.admin-day-head.past b{color: var(--rose-500)}.admin-list{display: flex;flex-direction: column;gap: 12px}.admin-row{background: var(--cream-50);border-radius: var(--radius-md);padding: 20px 22px;display: flex;justify-content: space-between;align-items: flex-start;gap: 16px;flex-wrap: wrap;box-shadow: var(--shadow-card)}.admin-row-main{flex: 1;min-width: min(220px,100%);overflow-wrap: anywhere}.admin-row-head{display: flex;align-items: center;gap: 10px;margin-bottom: 6px;flex-wrap: wrap}.admin-row-head b{font-size: 15px}.status-badge{font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.03em;padding: 4px 10px;border-radius: var(--radius-pill)}.status-pending{background: color-mix(in srgb,var(--amber-500) 15%,transparent);color: var(--amber-600)}.status-approved{background: color-mix(in srgb,var(--sage-600) 15%,transparent);color: var(--sage-600)}.status-rejected{background: color-mix(in srgb,var(--rose-500) 15%,transparent);color: var(--rose-500)}.status-inactive{background: color-mix(in srgb,var(--amber-500) 15%,transparent);color: var(--amber-600)}.admin-row-inactive{background: color-mix(in srgb,var(--amber-500) 7%,var(--cream-50));box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--amber-500) 35%,transparent),var(--shadow-card)}.admin-row-stars{color: var(--amber-500);font-size: 14px;margin-bottom: 6px}.admin-row-text{font-size: 14.5px;color: var(--stone-700);margin-bottom: 6px}.field-note{margin-top: 6px;font-size: 13px;color: var(--amber-600)}.admin-row-flag{font-size: 13.5px;font-weight: 600;color: var(--rose-500);margin-bottom: 6px}.admin-row-meta{font-size: 12px;color: var(--stone-600)}.admin-row-actions{display: flex;flex-wrap: wrap;gap: 8px;flex: none;max-width: 100%}.admin-row-actions .btn{padding: 9px 16px;font-size: 13px}.testi-empty-dark{color: var(--stone-600);font-size: 14.5px}@media (max-width: 600px){.admin-header-inner{padding: 0 20px}.admin-header .logo{font-size: 14px}.admin-header-inner .btn{padding: 10px 18px;font-size: 13px}.admin-tabs,.admin-panel-section{padding: 0 20px}.admin-toolbar{gap: 12px}.admin-card{padding: 22px 20px}.admin-row{padding: 16px 18px}.admin-row-actions{width: 100%}.admin-row-actions .btn{flex: 1 1 auto}.service-modal,.account-panel{padding: 30px 22px}}.admin-split{display: grid;grid-template-columns: minmax(0,1fr) minmax(340px,420px);gap: 28px;align-items: start}.admin-split-main{min-width: 0}.admin-split-side{position: sticky;top: 16px;display: flex;flex-direction: column;gap: 16px;max-height: calc(100vh - 32px);max-height: calc(100dvh - 32px);overflow-y: auto;overscroll-behavior: contain;scrollbar-width: thin;padding: 8px;margin: -8px}.admin-split-side .admin-card{flex: none;max-width: none}.admin-sheet-close,.admin-fab,.admin-sheet-backdrop{display: none}@media (max-width: 959px){.admin-split{display: block}.admin-tabs{position: sticky;top: 0;z-index: var(--z-sticky);margin: 0 auto;padding-top: 14px;padding-bottom: 12px;background: color-mix(in srgb,var(--cream-100) 94%,transparent);-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px)}.admin-panel-section{margin-bottom: calc(96px + env(safe-area-inset-bottom))}.admin-split-side{position: fixed;inset: auto 0 0 0;z-index: var(--z-overlay);max-height: 90vh;max-height: 90dvh;margin: 0;padding: 10px 18px calc(28px + env(safe-area-inset-bottom));gap: 0;background: var(--cream-50);border-radius: 24px 24px 0 0;box-shadow: 0 -18px 50px color-mix(in srgb,var(--stone-900) 38%,transparent);outline: none;visibility: hidden;transform: translateY(105%);transition: transform var(--t-slow),visibility 0s linear 0.35s}.admin-split-side.is-open{visibility: visible;transform: none;transition: transform var(--t-slow)}.admin-split-side::before{content: "";flex: none;width: 40px;height: 4px;margin: 0 auto 10px;border-radius: 2px;background: var(--cream-200)}.admin-split-side .admin-card{padding: 4px 2px 0;border-radius: 0;background: transparent;box-shadow: none}.admin-split-side .admin-card + .admin-card{margin-top: 24px;padding-top: 24px;border-top: 1px solid var(--cream-200)}.admin-split-side .admin-card h3{padding-right: 44px}.admin-sheet-close{display: flex;align-items: center;justify-content: center;position: sticky;top: 0;z-index: 3;align-self: flex-end;flex: none;width: 36px;height: 36px;margin: -14px 0 -22px;border-radius: 50%;background: var(--cream-100);color: var(--stone-900);font-size: 22px;line-height: 1}.admin-sheet-close:hover{background: var(--cream-200)}.admin-sheet-backdrop{display: block;position: fixed;inset: 0;z-index: calc(var(--z-overlay) - 1);background: color-mix(in srgb,var(--stone-900) 55%,transparent);opacity: 0;pointer-events: none;transition: opacity var(--t-slow)}.admin-sheet-backdrop.is-open{opacity: 1;pointer-events: auto}body.sheet-open{overflow: hidden}.admin-fab{display: inline-flex;align-items: center;position: fixed;right: 16px;bottom: calc(16px + env(safe-area-inset-bottom));z-index: var(--z-sticky);padding: 15px 22px;border-radius: var(--radius-pill);background: var(--amber-500);color: var(--stone-900);font-size: 14.5px;font-weight: 700;box-shadow: 0 10px 28px color-mix(in srgb,var(--stone-900) 30%,transparent);transition: transform var(--t-fast)}.admin-fab:active{transform: scale(0.97)}body.sheet-open .admin-fab{visibility: hidden}}.schedule-toolbar{display: flex;justify-content: space-between;align-items: center;gap: 16px;margin-bottom: 20px;flex-wrap: wrap}.schedule-daynav{display: flex;align-items: center;gap: 10px;flex-wrap: wrap}.schedule-nav-btn{padding: 9px 15px;font-size: 16px;line-height: 1}.schedule-day-label{font-family: var(--font-display);font-size: 16px;font-weight: 600;min-width: 180px;text-align: center}.schedule-actions{display: flex;gap: 10px;flex-wrap: wrap}.schedule-daybanner{background: color-mix(in srgb,var(--amber-500) 15%,transparent);color: var(--amber-600);border: 1.5px solid color-mix(in srgb,var(--amber-500) 35%,transparent);border-radius: 14px;padding: 14px 18px;font-weight: 700;font-size: 14px;margin-bottom: 18px}.schedule-table-wrap{background: var(--cream-50);border-radius: 18px;overflow-x: auto;box-shadow: var(--shadow-card)}.schedule-table{width: 100%;border-collapse: collapse;min-width: 640px}.schedule-table th{text-align: left;font-size: 12px;font-weight: 700;text-transform: uppercase;letter-spacing: 0.03em;color: var(--stone-600);padding: 14px 16px;border-bottom: 1px solid var(--cream-200);white-space: nowrap}.schedule-table td{padding: 13px 16px;font-size: 14px;border-bottom: 1px solid var(--cream-200);vertical-align: top}.schedule-table tr:last-child td{border-bottom: none}.schedule-row-free td{color: var(--stone-600);font-style: italic}.schedule-row-booking td:first-child,.schedule-row-booking td:nth-child(2){font-weight: 700}.schedule-row-blocked td{color: var(--rose-500)}@media (max-width: 700px){.schedule-day-label{min-width: 0}.schedule-toolbar{flex-direction: column;align-items: stretch}.schedule-daynav,.schedule-actions{justify-content: center}}.confirm-dialog{width: min(440px,calc(100vw - 32px));max-height: calc(100dvh - 48px);margin: auto;padding: 26px 26px 22px;border-radius: var(--radius-lg,24px);background: var(--cream-50);color: var(--stone-900);box-shadow: 0 30px 80px color-mix(in srgb,var(--stone-900) 45%,transparent);overflow-y: auto}.confirm-dialog::backdrop{background: color-mix(in srgb,var(--stone-900) 60%,transparent)}.confirm-dialog[open]{animation: confirm-in 0.18s ease-out}@keyframes confirm-in{from{opacity: 0;transform: translateY(8px) scale(0.98)}}@media (prefers-reduced-motion: reduce){.confirm-dialog[open]{animation: none}}.confirm-title{margin: 0 0 14px;font-family: var(--font-display);font-size: 18px;line-height: 1.3}.confirm-detail{max-height: 9em;margin: 0 0 14px;padding: 12px 14px;overflow-y: auto;overflow-wrap: anywhere;border-left: 3px solid var(--amber-500);border-radius: 0 var(--radius-sm) var(--radius-sm) 0;background: color-mix(in srgb,var(--amber-500) 12%,transparent);font-size: 14.5px;line-height: 1.5}.confirm-note{margin: 0 0 20px;font-size: 13.5px;line-height: 1.5;color: var(--stone-600)}.confirm-actions{display: flex;flex-wrap: wrap;justify-content: flex-end;gap: 10px}.confirm-actions .btn{flex: 1 1 auto}@media (min-width: 480px){.confirm-actions .btn{flex: 0 0 auto}}.confirm-danger{background: var(--stone-900);color: var(--cream-50)}.confirm-danger:hover{background: var(--rose-500)}.visit-count{font-size: 14px;font-weight: 800;color: var(--amber-600)}.info-tip{position: relative;display: inline-flex}.info-tip-btn{display: inline-flex;align-items: center;justify-content: center;width: 22px;height: 22px;border-radius: 50%;border: 1.5px solid color-mix(in srgb,var(--stone-600) 55%,transparent);color: var(--stone-600);font-family: Georgia,serif;font-size: 12px;font-style: italic;font-weight: 700;line-height: 1;transition: var(--t-fast)}.info-tip-btn:hover,.info-tip-btn[aria-expanded="true"]{border-color: var(--amber-500);background: var(--amber-500);color: var(--stone-900)}.info-tip-btn::after{content: "";position: absolute;inset: -9px}.info-tip-pop{position: absolute;top: calc(100% + 8px);left: -8px;z-index: 30;display: flex;flex-direction: column;gap: 6px;min-width: 240px;max-width: min(340px,calc(100vw - 48px));max-height: 60vh;overflow-y: auto;padding: 12px 14px;border-radius: var(--radius-md);background: var(--stone-900);color: var(--cream-50);box-shadow: 0 14px 40px color-mix(in srgb,var(--stone-900) 40%,transparent);font-size: 13px;font-style: normal;font-weight: 600;line-height: 1.4;text-align: left;text-transform: none;letter-spacing: 0}.info-tip-pop[hidden]{display: none}.info-tip-title{color: var(--amber-500);font-size: 11px;font-weight: 800;letter-spacing: 0.06em;text-transform: uppercase}.info-tip-line{overflow-wrap: anywhere}.status-duplicate{background: color-mix(in srgb,var(--rose-500) 13%,transparent);color: var(--rose-500)}.merge-dialog{width: min(520px,calc(100vw - 32px))}.merge-search{width: 100%;margin: 0 0 10px;padding: 11px 14px;border: 1.5px solid var(--cream-200);border-radius: var(--radius-md);background: var(--cream-100);color: var(--stone-900);font: inherit;font-size: 15px}.merge-search:focus{outline: none;border-color: var(--amber-500)}.merge-list{display: flex;flex-direction: column;gap: 6px;max-height: 34vh;margin: 0 0 14px;padding: 2px;overflow-y: auto}.merge-item,.merge-keep-item{display: flex;align-items: flex-start;gap: 12px;padding: 11px 12px;border: 1.5px solid var(--cream-200);border-radius: var(--radius-md);cursor: pointer;transition: var(--t-fast)}.merge-item[hidden]{display: none}.merge-item:hover,.merge-keep-item:hover{border-color: var(--amber-500)}.merge-item:has(input:checked),.merge-keep-item:has(input:checked){border-color: var(--amber-500);background: color-mix(in srgb,var(--amber-500) 12%,transparent)}.merge-item input,.merge-keep-item input{flex: none;width: 18px;height: 18px;margin-top: 2px;accent-color: var(--amber-600)}.merge-item-body{display: flex;flex-direction: column;align-items: flex-start;gap: 3px;min-width: 0;font-size: 14.5px;overflow-wrap: anywhere}.merge-item-sub{font-size: 12.5px;color: var(--stone-600)}.merge-keep{display: flex;flex-direction: column;gap: 6px;min-width: 0;margin: 0 0 12px;padding: 0;border: 0}.merge-keep legend{padding: 0;margin-bottom: 8px;font-size: 13.5px;font-weight: 700}.merge-keep-item{font-size: 14px;overflow-wrap: anywhere}.merge-summary{margin: 0 0 16px;padding: 10px 12px;border-radius: var(--radius-sm);background: color-mix(in srgb,var(--sage-600) 12%,transparent);color: var(--stone-900)}.merge-dialog .confirm-danger:disabled{opacity: 0.45;cursor: not-allowed}.confirm-detail{white-space: pre-line}.contacts-section{background: var(--cream-50)}.contacts-group{font-family: var(--font-display);font-size: 17px;font-weight: 600;margin-bottom: 18px}.contacts-group + .contact-cards{margin-bottom: 44px}.contact-cards:last-child{margin-bottom: 0}.contact-cards{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 18px}.contact-card{display: flex;align-items: flex-start;gap: 16px;padding: 22px;background: var(--cream-100);border-radius: var(--radius-md);color: var(--stone-900);transition: transform var(--t-base),background var(--t-base),box-shadow var(--t-base)}.contact-card:hover{transform: translateY(-4px);background: var(--cream-50);box-shadow: 0 14px 32px color-mix(in srgb,var(--stone-900) 10%,transparent)}.contact-card:focus-visible{outline: 2px solid var(--amber-500);outline-offset: 3px}.contact-card-ic{width: 44px;height: 44px;flex: none;border-radius: var(--radius-md);background: var(--stone-900);display: flex;align-items: center;justify-content: center}.contact-card-ic svg{width: 20px;height: 20px;stroke: var(--amber-300)}.contact-card-body{display: flex;flex-direction: column;gap: 2px;min-width: 0}.contact-card-body b{font-size: 15px}.contact-card-value{font-size: 15px;font-weight: 700;color: var(--amber-600);word-break: break-word}.contact-card-body small{font-size: 13px;color: var(--stone-600);margin-top: 2px}.contacts-place{background: var(--cream-100)}.contacts-place-grid{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.15fr);gap: 44px;align-items: start}.contacts-place-info h2{margin-bottom: 28px}.contacts-place-info .contact-row{margin-bottom: 20px}.contacts-place-info .contact-row .ic{background: var(--stone-900)}.contacts-place-info .contact-row span,.contacts-place-info .contact-row a{color: var(--stone-600)}.contacts-place-info .contact-row .contact-note{color: var(--amber-600)}.contacts-place-info .map-link-row{color: var(--amber-600)}.contacts-arrival{margin: 24px 0;padding: 14px 18px;border-radius: var(--radius-md);background: color-mix(in srgb,var(--amber-500) 12%,transparent);border: 1px solid color-mix(in srgb,var(--amber-500) 38%,transparent);font-size: 14.5px;font-weight: 600;line-height: 1.5}.contacts-arrival a{color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.contacts-place-map .map-embed{width: 100%;height: 100%;min-height: 340px}.contacts-cta{margin-top: 56px;padding: 32px 36px;border-radius: var(--radius-lg);background: var(--stone-900);color: var(--cream-100);display: flex;align-items: center;justify-content: space-between;gap: 24px;flex-wrap: wrap}.contacts-cta h3{font-family: var(--font-display);font-size: 22px;margin-bottom: 6px}.contacts-cta p{color: color-mix(in srgb,var(--cream-100) 70%,transparent);font-size: 14.5px}@media (max-width: 1000px){.contact-cards{grid-template-columns: repeat(2,minmax(0,1fr))}.contacts-place-grid{grid-template-columns: minmax(0,1fr);gap: 32px}}@media (max-width: 600px){.contact-cards{grid-template-columns: minmax(0,1fr)}.contacts-cta{padding: 26px 22px}.contacts-cta .btn{width: 100%}}.policy{background: var(--cream-50)}.policy-tabs{display: flex;flex-wrap: wrap;gap: 10px;margin-bottom: 36px}.policy-tab{padding: 10px 20px;border-radius: var(--radius-pill);font-size: 13.5px;font-weight: 700;background: var(--cream-100);color: var(--stone-600);transition: var(--t-fast)}.policy-tab:hover{color: var(--stone-900)}.policy-tab.active{background: var(--stone-900);color: var(--cream-50)}.policy-meta{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 12px 24px;padding-bottom: 18px;border-bottom: 1px solid color-mix(in srgb,var(--stone-600) 18%,transparent)}.policy-meta-main{display: flex;align-items: center;gap: 12px;flex-wrap: wrap;min-width: 0}.policy-meta-label{font-size: 12.5px;font-weight: 700;letter-spacing: 0.03em;text-transform: uppercase;color: var(--stone-700)}.policy-version-picker{display: inline-flex;align-items: center;gap: 8px;font-size: 13px;color: var(--stone-600);max-width: 100%;min-width: 0}.policy-version-picker select{max-width: 100%;min-width: 0;padding: 9px 12px;border-radius: 10px;border: 1.5px solid var(--cream-200);background: var(--cream-50);color: var(--stone-900);font-size: 14px;font-weight: 600;color-scheme: light;transition: border-color var(--t-fast)}.policy-version-picker select:hover,.policy-version-picker select:focus{border-color: var(--amber-500);outline: none}.policy-effective{font-size: 13.5px;font-weight: 600;color: var(--stone-600)}.policy-archive-note{margin-top: 18px;padding: 14px 18px;border-radius: var(--radius-md);background: color-mix(in srgb,var(--rose-500) 12%,transparent);border: 1px solid color-mix(in srgb,var(--rose-500) 38%,transparent);font-size: 14px;font-weight: 600;color: var(--stone-900)}.policy-archive-note a{color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.policy-body{max-width: 760px;margin-top: 28px;font-size: 15.5px;line-height: 1.7;color: var(--stone-700)}.policy-body .policy-lead{font-size: 16.5px;color: var(--stone-900);margin-bottom: 8px}.policy-body h2{font-family: var(--font-display);font-size: 20px;font-weight: 600;color: var(--stone-900);letter-spacing: -0.01em;margin: 34px 0 12px}.policy-body h3{font-size: 16px;font-weight: 700;color: var(--stone-900);margin: 22px 0 8px}.policy-body p{margin-bottom: 14px}.policy-body ul,.policy-body ol{margin: 0 0 16px;padding-left: 22px;list-style: revert}.policy-body li{margin-bottom: 8px}.policy-body a{color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.policy-body a:hover{color: var(--stone-900)}.policy-body code{font-family: ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;font-size: 0.88em;background: var(--cream-100);border: 1px solid var(--cream-200);border-radius: 5px;padding: 1px 5px}.policy-body > :first-child{margin-top: 0}.policy-history{margin-top: 40px;border-top: 1px solid color-mix(in srgb,var(--stone-600) 18%,transparent);padding-top: 18px}.policy-history summary{font-size: 14px;font-weight: 700;color: var(--stone-900);cursor: pointer;list-style-position: inside}.policy-history summary:hover{color: var(--amber-600)}.policy-history ul{margin-top: 14px;display: flex;flex-direction: column;gap: 10px}.policy-history li{display: flex;flex-wrap: wrap;align-items: baseline;gap: 8px 10px;font-size: 13.5px;color: var(--stone-600)}.policy-history li a{font-weight: 700;color: var(--amber-600);text-decoration: underline;text-underline-offset: 2px}.policy-history-current{font-size: 11px;font-weight: 700;letter-spacing: 0.04em;text-transform: uppercase;color: var(--stone-900);background: color-mix(in srgb,var(--amber-500) 30%,transparent);border-radius: var(--radius-pill);padding: 2px 9px}.policy-history-note{color: var(--stone-600)}.policy-status{font-size: 14.5px;color: var(--stone-600)}@media (max-width: 600px){.policy-meta{align-items: flex-start}.policy-body{font-size: 15px}}
