/* SPACE CARDS v1.1.3 — visual layer only. Native NAILS data, booking rules and calendar JS stay in Core. */
:root{
  --vl-line:color-mix(in srgb,var(--md-primary-color) 24%,var(--md-input-border-color));
  --vl-line-soft:color-mix(in srgb,var(--vl-line) 52%,transparent);
  --vl-panel:color-mix(in srgb,var(--md-surface-color) 94%,#000);
  --vl-panel-2:color-mix(in srgb,var(--md-surface-color) 82%,var(--md-primary-color));
  --vl-accent-soft:color-mix(in srgb,var(--md-primary-color) 26%,transparent);
  --vl-shadow:0 24px 70px rgba(0,0,0,.34);
  --vl-shell:1450px;
  --vl-serif:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--md-page-bg)}
body.md-theme-velune{margin:0;background:radial-gradient(circle at 82% 5%,var(--vl-accent-soft),transparent 34rem),radial-gradient(circle at 0 46%,color-mix(in srgb,var(--md-primary-color) 12%,transparent),transparent 32rem),var(--md-page-bg);color:var(--md-text-color);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.48;min-height:100vh}
body.md-theme-velune a{color:inherit;text-decoration:none}
body.md-theme-velune a:hover{color:var(--md-text-color)}
body.md-theme-velune img{max-width:100%;display:block}
body.md-theme-velune main{background:transparent!important;color:inherit}
body.md-theme-velune .text-body-secondary,body.md-theme-velune .text-secondary,body.md-theme-velune .text-muted{color:var(--md-secondary-color)!important}
body.md-theme-velune .bg-light{background:var(--md-surface-color)!important;color:var(--md-text-color)!important}
/* Bootstrap light/white utility surfaces must follow the dark SPACE CARDS surface system. */
body.md-theme-velune .bg-white,
body.md-theme-velune .text-bg-light,
body.md-theme-velune .alert-light{background:var(--md-surface-color)!important;color:var(--md-text-color)!important;border-color:var(--vl-line)!important}
body.md-theme-velune .alert-light .text-secondary,
body.md-theme-velune .bg-light .text-secondary,
body.md-theme-velune .bg-white .text-secondary,
body.md-theme-velune .text-bg-light .text-secondary{color:var(--md-secondary-color)!important}
body.md-theme-velune .badge.text-bg-light{box-shadow:inset 0 0 0 1px var(--vl-line)}
body.md-theme-velune .form-control,body.md-theme-velune .form-select,body.md-theme-velune .input-group-text,body.md-theme-velune textarea.form-control{background:var(--md-input-bg)!important;color:var(--md-input-text-color)!important;border-color:var(--md-input-border-color)!important}
body.md-theme-velune .form-control::placeholder,body.md-theme-velune textarea.form-control::placeholder{color:var(--md-secondary-color)!important;opacity:.78}
body.md-theme-velune .form-control:focus,body.md-theme-velune .form-select:focus{background:var(--md-input-bg)!important;color:var(--md-input-text-color)!important;border-color:var(--md-input-focus-color)!important;box-shadow:0 0 0 .18rem color-mix(in srgb,var(--md-input-focus-color) 18%,transparent)!important}
body.md-theme-velune .border,body.md-theme-velune .border-top,body.md-theme-velune .border-bottom{border-color:var(--vl-line)!important}
.vl-shell{width:min(100%,var(--vl-shell));margin:0 auto;padding-inline:28px}
.vl-main{min-height:70vh;overflow:hidden}
.vl-page{min-height:60vh}
.vl-eyebrow{font-size:.76rem;letter-spacing:.32em;text-transform:uppercase;color:color-mix(in srgb,var(--md-text-color) 68%,var(--md-primary-color));font-weight:600}
.vl-lead{max-width:620px;color:color-mix(in srgb,var(--md-text-color) 84%,var(--md-secondary-color));font-size:1.05rem}
.vl-btn,.md-theme-velune .btn-dark,.md-theme-velune .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:var(--md-button-height);padding:.72rem 1.42rem;border-radius:var(--md-button-radius);border:1px solid color-mix(in srgb,var(--md-primary-color) 78%,#fff);background:linear-gradient(180deg,color-mix(in srgb,var(--md-primary-color) 94%,#fff 6%),color-mix(in srgb,var(--md-primary-color) 70%,#000));box-shadow:0 0 0 1px color-mix(in srgb,var(--md-primary-color) 15%,transparent) inset,0 0 26px color-mix(in srgb,var(--md-primary-color) 20%,transparent);color:var(--md-button-text-color)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.vl-btn:hover,.md-theme-velune .btn-dark:hover,.md-theme-velune .btn-primary:hover{transform:translateY(-1px);background:var(--md-button-hover-color);box-shadow:0 0 34px color-mix(in srgb,var(--md-primary-color) 30%,transparent);color:var(--md-button-text-color)!important}
.vl-btn-ghost{background:color-mix(in srgb,var(--md-surface-color) 38%,transparent);border-color:var(--vl-line);box-shadow:none}
.vl-text-link{color:color-mix(in srgb,var(--md-text-color) 76%,var(--md-primary-color));font-weight:600}
.vl-text-link:hover{color:var(--md-text-color)}
.vl-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.vl-reveal.is-visible{opacity:1;transform:none}

/* Header */
.vl-header{position:sticky;top:0;z-index:1050;background:color-mix(in srgb,var(--md-header-bg) 86%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--vl-line);color:var(--md-header-text)}
.vl-nav-shell{width:min(100%,var(--vl-shell));margin:auto;min-height:76px;padding:10px 28px;display:flex;align-items:center;gap:28px}
.vl-brand{display:flex;flex-direction:column;justify-content:center;line-height:1;min-width:180px;max-width:260px;color:var(--md-header-text)}
.vl-brand img{max-width:220px;width:auto;object-fit:contain}.vl-brand-main{font:500 1.42rem/1 var(--vl-serif);letter-spacing:.25em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vl-brand-sub{font-size:.52rem;letter-spacing:.44em;color:color-mix(in srgb,var(--md-header-text) 68%,var(--md-primary-color));margin-top:.44rem}
.vl-nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:4px}.vl-nav>a:not(.vl-btn){position:relative;padding:.75rem .72rem;font-size:.9rem;color:color-mix(in srgb,var(--md-header-text) 88%,var(--md-secondary-color));white-space:nowrap}.vl-nav>a:not(.vl-btn)::after{content:"";position:absolute;left:50%;right:50%;bottom:.3rem;height:1px;background:var(--md-primary-color);transition:.25s}.vl-nav>a:not(.vl-btn):hover::after,.vl-nav>a.is-active:not(.vl-btn)::after{left:.72rem;right:.72rem}.vl-nav-cta{margin-left:12px;white-space:nowrap}
.vl-menu-toggle{display:none;margin-left:auto;width:44px;height:42px;border:1px solid var(--vl-line);border-radius:var(--md-button-radius);background:transparent;position:relative}.vl-menu-toggle>span:not(.visually-hidden){position:absolute;left:11px;right:11px;height:1px;background:var(--md-header-text);transition:.2s}.vl-menu-toggle>span:nth-child(1){top:12px}.vl-menu-toggle>span:nth-child(2){top:20px}.vl-menu-toggle>span:nth-child(3){top:28px}

/* Hero — one shared composition for every public page. */
.vl-hero-wrap{width:min(calc(100% - 56px),var(--vl-shell));margin:28px auto 0}
.vl-hero{position:relative;overflow:hidden;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);min-height:560px;display:flex;align-items:center;isolation:isolate;box-shadow:0 22px 70px rgba(0,0,0,.22)}
.vl-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,var(--md-page-bg) 4%,color-mix(in srgb,var(--md-page-bg) 95%,transparent) 36%,color-mix(in srgb,var(--md-page-bg) 62%,transparent) 64%,color-mix(in srgb,var(--md-page-bg) 86%,transparent) 100%)}
.vl-hero-art{position:absolute;z-index:-2;inset:0;background-image:var(--vl-user-banner,none);background-size:cover;background-position:center right;filter:saturate(.9) contrast(1.04)}
.vl-hero:not(.vl-has-banner) .vl-hero-art{background:radial-gradient(circle at 78% 48%,color-mix(in srgb,var(--md-primary-color) 18%,transparent),transparent 22rem),linear-gradient(125deg,color-mix(in srgb,var(--md-surface-color) 94%,#000),color-mix(in srgb,var(--md-primary-color) 10%,var(--md-page-bg)) 60%,var(--md-page-bg))}
.vl-hero-shell{width:100%;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:28px;min-height:560px}
.vl-hero-content{max-width:720px;padding:68px 0 62px;position:relative;z-index:2}
.vl-hero h1{font:500 clamp(3.7rem,6.7vw,6.7rem)/.86 var(--vl-serif);letter-spacing:-.045em;text-transform:uppercase;margin:.8rem 0 1.25rem;text-shadow:0 8px 28px rgba(0,0,0,.34);overflow-wrap:anywhere}
.vl-hero-quote{font:italic 1.1rem/1.4 var(--vl-serif);color:color-mix(in srgb,var(--md-text-color) 78%,var(--md-secondary-color));max-width:560px;margin-bottom:.8rem}
.vl-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.vl-hero-model-zone{position:relative;z-index:1;min-height:530px;display:grid;place-items:center;pointer-events:none}
.vl-hero-model-ring{position:relative;width:min(100%,530px);aspect-ratio:1;border-radius:50%;border:1px solid color-mix(in srgb,var(--md-primary-color) 58%,transparent);box-shadow:0 0 74px color-mix(in srgb,var(--md-primary-color) 18%,transparent),inset 0 0 78px color-mix(in srgb,var(--md-primary-color) 8%,transparent);background:radial-gradient(circle at 48% 44%,color-mix(in srgb,var(--md-primary-color) 9%,transparent),transparent 63%)}
.vl-bottle-stage{position:absolute;inset:-4%;width:108%;height:108%;min-height:0!important;overflow:visible}
.vl-bottle-stage canvas{display:block;width:100%!important;height:100%!important;filter:drop-shadow(0 34px 36px rgba(0,0,0,.48))}
.vl-hero-model-ring::after{content:"";position:absolute;left:18%;right:18%;bottom:8%;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--md-primary-color) 74%,#fff),transparent);box-shadow:0 0 22px var(--vl-accent-soft);opacity:.66}
.vl-stat-strip{display:flex;flex-wrap:wrap;margin-top:36px;border-top:1px solid var(--vl-line);padding-top:20px}.vl-stat-strip>div{min-width:128px;padding-right:22px;margin-right:22px;border-right:1px solid var(--vl-line)}.vl-stat-strip>div:last-child{border-right:0}.vl-stat-strip strong{display:block;font:500 1.75rem var(--vl-serif)}.vl-stat-strip span{display:block;max-width:118px;font-size:.74rem;color:var(--md-secondary-color)}

/* Home and public content */
.vl-section{padding:72px 0;border-bottom:1px solid var(--vl-line-soft)}.vl-section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:28px}.vl-section-head h2,.vl-banner h2,.vl-simple-hero h1{font:500 clamp(2.2rem,4vw,3.8rem)/.98 var(--vl-serif);letter-spacing:-.035em;margin:.45rem 0 0}.vl-section-note{max-width:460px;color:var(--md-secondary-color)}
.vl-card-grid{display:grid;gap:14px}.vl-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.vl-media-card{position:relative;min-height:355px;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);overflow:hidden;isolation:isolate;background:var(--vl-panel);box-shadow:0 14px 45px rgba(0,0,0,.17);transition:.3s}.vl-media-card>img,.vl-media-placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.88) brightness(.78);transition:.4s}.vl-media-placeholder{background:radial-gradient(circle at 70% 30%,var(--vl-accent-soft),transparent 45%),var(--vl-panel)}.vl-media-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,color-mix(in srgb,var(--md-page-bg) 98%,transparent),color-mix(in srgb,var(--md-page-bg) 4%,transparent) 68%)}.vl-media-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--md-primary-color) 70%,#fff)}.vl-media-card:hover>img{transform:scale(1.035);filter:saturate(1) brightness(.86)}.vl-media-card-body{position:absolute;left:0;right:0;bottom:0;padding:24px;display:flex;align-items:end;justify-content:space-between;gap:18px}.vl-media-card h3{font:500 1.65rem/1.02 var(--vl-serif);margin:0 0 .5rem}.vl-media-card p{margin:0;color:var(--md-secondary-color);font-size:.84rem}.vl-service-price{display:inline-flex;align-items:center;width:max-content;margin:.15rem 0 .55rem;padding:.3rem .55rem;border:1px solid color-mix(in srgb,var(--md-primary-color) 55%,var(--vl-line));border-radius:999px;background:color-mix(in srgb,var(--md-primary-color) 16%,transparent);color:var(--md-text-color);font:700 .82rem/1 var(--vl-sans);font-variant-numeric:tabular-nums}.vl-service-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.vl-service-title-row .vl-service-price{margin:0;flex:none}.vl-service-title-row h3{min-width:0}.vl-arrow{width:42px;height:42px;border-radius:50%;border:1px solid var(--vl-line);display:grid;place-items:center;flex:none}
.vl-process{border-bottom:1px solid var(--vl-line-soft);background:color-mix(in srgb,var(--md-surface-color) 56%,transparent)}.vl-process-grid{display:grid;grid-template-columns:repeat(4,1fr)}.vl-process-grid article{min-height:132px;padding:24px 22px;display:grid;grid-template-columns:34px 1fr;gap:12px;border-right:1px solid var(--vl-line)}.vl-process-grid article:last-child{border-right:0}.vl-step-num{font:500 1rem var(--vl-serif);color:color-mix(in srgb,var(--md-text-color) 64%,var(--md-primary-color))}.vl-process h3{font:500 1.08rem var(--vl-serif);margin:0 0 7px}.vl-process p{margin:0;color:var(--md-secondary-color);font-size:.8rem}
.vl-master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.vl-master-card{display:grid;grid-template-columns:160px 1fr;min-height:220px;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);overflow:hidden;background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel))}.vl-master-photo{min-height:220px;background:var(--vl-panel)}.vl-master-photo img{width:100%;height:100%;object-fit:cover}.vl-master-body{padding:24px;display:flex;flex-direction:column;min-width:0}.vl-master-body h3{font:500 1.7rem var(--vl-serif);margin:0 0 8px}.vl-master-body p{color:var(--md-secondary-color);margin:14px 0 0;font-size:.88rem}.vl-master-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.vl-master-metro{margin-top:auto;padding-top:14px;display:flex;align-items:center;gap:8px;min-width:0;color:color-mix(in srgb,var(--md-text-color) 88%,var(--md-secondary-color));font-size:.82rem;font-weight:650}.vl-master-metro .md-metro-branch-badge{width:24px;height:24px;flex-basis:24px}.vl-master-metro>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vl-master-book{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:9px 0 4px;border:0;border-top:1px solid color-mix(in srgb,var(--md-text-color) 32%,transparent);border-radius:0;background:transparent;color:var(--md-text-color)!important;font-size:.76rem;font-weight:700;letter-spacing:.035em;text-transform:uppercase}.vl-master-book i{font-size:.7rem;transition:transform .18s ease}.vl-master-book:hover i{transform:translateX(3px)}.vl-rating{margin-top:4px}.md-rating-stars{color:color-mix(in srgb,var(--md-primary-color) 55%,#fff)!important}
.vl-news-list{border-top:1px solid var(--vl-line)}.vl-news-list a{display:grid;grid-template-columns:110px 1fr 40px;gap:20px;align-items:center;padding:21px 4px;border-bottom:1px solid var(--vl-line);transition:.2s}.vl-news-list a:hover{padding-left:12px;background:color-mix(in srgb,var(--md-surface-color) 34%,transparent)}.vl-news-list time{color:var(--md-secondary-color);font-size:.8rem}.vl-news-list strong{font:500 1.2rem var(--vl-serif)}
.vl-banner{position:relative;min-height:200px;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);overflow:hidden;padding:36px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:radial-gradient(circle at 72% 40%,var(--vl-accent-soft),transparent 19rem),linear-gradient(115deg,var(--vl-panel-2),var(--vl-panel))}.vl-banner-user{background-image:linear-gradient(90deg,color-mix(in srgb,var(--md-page-bg) 92%,transparent),color-mix(in srgb,var(--md-primary-color) 22%,transparent),color-mix(in srgb,var(--md-page-bg) 86%,transparent)),var(--vl-cta-banner);background-position:center;background-size:cover}.vl-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--md-page-bg) 86%,transparent),color-mix(in srgb,var(--md-page-bg) 26%,transparent),color-mix(in srgb,var(--md-page-bg) 80%,transparent))}.vl-banner>*{position:relative}.vl-banner p{color:var(--md-secondary-color);margin:.8rem 0 0}

/* Services */
.vl-feature-row{border-bottom:1px solid var(--vl-line);background:color-mix(in srgb,var(--md-surface-color) 60%,transparent)}.vl-feature-grid{display:grid;grid-template-columns:repeat(4,1fr)}.vl-feature-grid>div{display:flex;gap:14px;align-items:center;min-height:112px;padding:22px;border-right:1px solid var(--vl-line)}.vl-feature-grid>div:last-child{border-right:0}.vl-feature-grid b{font-size:1.65rem;color:color-mix(in srgb,var(--md-primary-color) 45%,#fff)}.vl-feature-grid span{display:grid}.vl-feature-grid strong{font:500 1rem var(--vl-serif)}.vl-feature-grid small{color:var(--md-secondary-color);margin-top:3px}.vl-services-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vl-service-panel{border:1px solid var(--vl-line);border-radius:var(--md-block-radius);overflow:hidden;background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel));min-height:100%}.vl-service-media{height:220px;overflow:hidden}.vl-service-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(.86);transition:.35s}.vl-service-panel:hover .vl-service-media img{transform:scale(1.035)}.vl-service-copy{padding:24px}.vl-service-copy h3{font:500 1.7rem/1.05 var(--vl-serif);margin:0 0 12px}.vl-service-copy p{margin:0;color:var(--md-secondary-color)}.vl-empty{padding:42px;border:1px dashed var(--vl-line);border-radius:var(--md-block-radius);text-align:center;color:var(--md-secondary-color)}

/* Generic inner pages, price, news */
.vl-simple-hero{padding:92px 0 52px;border-bottom:1px solid var(--vl-line);background:radial-gradient(circle at 76% 34%,var(--vl-accent-soft),transparent 34rem)}.vl-simple-hero p{max-width:700px;color:var(--md-secondary-color);margin:18px 0 0}.vl-price-card{border:1px solid var(--vl-line);border-radius:var(--md-block-radius);overflow:hidden;background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel));box-shadow:var(--vl-shadow)}.vl-price-head{display:flex;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--vl-line);font-size:.73rem;letter-spacing:.24em;text-transform:uppercase;color:var(--md-secondary-color)}.vl-price-row{display:grid;grid-template-columns:54px minmax(140px,1fr) 1fr auto;gap:16px;align-items:center;padding:18px 24px;border-bottom:1px solid var(--vl-line-soft)}.vl-price-row:last-child{border-bottom:0}.vl-price-row .vl-index{color:color-mix(in srgb,var(--md-primary-color) 60%,#fff);font:500 .92rem var(--vl-serif)}.vl-price-row strong{font:500 1.16rem var(--vl-serif)}.vl-price-row i{height:1px;background:var(--vl-line)}.vl-price-row b{white-space:nowrap;font-size:1rem}.vl-center-cta{text-align:center;margin-top:30px}
.vl-news-editorial{display:grid;gap:18px}.vl-news-editorial article{display:grid;grid-template-columns:130px minmax(0,1.2fr) minmax(240px,.8fr);gap:28px;padding:28px;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel))}.vl-news-meta{display:grid;align-content:start;gap:9px;font-size:.75rem;color:var(--md-secondary-color);text-transform:uppercase;letter-spacing:.12em}.vl-news-copy h2{font:500 clamp(1.6rem,3vw,2.5rem)/1 var(--vl-serif);margin:0 0 14px}.vl-news-copy p,.vl-news-full{color:var(--md-secondary-color)}.vl-news-full{margin-top:16px}.vl-news-editorial figure{height:230px;margin:0;border-radius:calc(var(--md-block-radius) - 4px);overflow:hidden}.vl-news-editorial figure img{width:100%;height:100%;object-fit:cover}

/* Contacts */
.vl-studio-switch{margin-bottom:24px}.vl-studio-switch>div:last-child{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.vl-studio-switch a{display:inline-flex;align-items:center;gap:9px;padding:11px 14px;border:1px solid var(--vl-line);border-radius:var(--md-button-radius);background:var(--vl-panel);color:var(--md-secondary-color)}.vl-studio-switch a.is-active{border-color:color-mix(in srgb,var(--md-primary-color) 75%,#fff);color:var(--md-text-color);box-shadow:0 0 24px var(--vl-accent-soft)}
.vl-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.vl-gallery figure{height:240px;margin:0;border-radius:var(--md-block-radius);overflow:hidden;border:1px solid var(--vl-line)}.vl-gallery img{width:100%;height:100%;object-fit:cover}.vl-contact-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:16px}.vl-contact-panel,.vl-map,.vl-map-placeholder{min-height:430px;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel));overflow:hidden}.vl-contact-panel{padding:30px}.vl-contact-line{padding:17px 0;border-bottom:1px solid var(--vl-line-soft)}.vl-contact-line span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--md-secondary-color);margin-bottom:5px}.vl-contact-line strong{font:500 1.18rem var(--vl-serif)}.vl-map{position:relative}.vl-map iframe{width:100%;height:100%;min-height:430px;border:0;filter:saturate(.75) contrast(1.05)}.vl-map [data-md-consent-placeholder]{position:absolute;inset:20px auto auto 20px;max-width:420px;padding:13px;background:var(--vl-panel);border:1px solid var(--vl-line);border-radius:var(--md-button-radius)}.vl-map-placeholder{display:grid;place-items:center;align-content:center;text-align:center;padding:30px;background:radial-gradient(circle at 60% 42%,var(--vl-accent-soft),transparent 28%),linear-gradient(var(--vl-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--vl-line-soft) 1px,transparent 1px),var(--vl-panel);background-size:auto,42px 42px,42px 42px}.vl-map-placeholder span{color:var(--md-secondary-color);text-transform:uppercase;letter-spacing:.2em;font-size:.7rem}.vl-map-placeholder strong{font:500 2.6rem var(--vl-serif);margin:12px 0}.vl-map-placeholder i{color:var(--md-secondary-color)}

/* Native NAILS calendar — presentation only. Do not replace its DOM/event model. */
.md-theme-velune .md-calendar{max-width:1450px;margin:0 auto;padding:64px 28px 78px;background:transparent;color:var(--md-text-color)}
.md-theme-velune .md-calendar-contextbar{border:1px solid var(--vl-line);border-radius:var(--md-block-radius);background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel));padding:18px 20px!important;box-shadow:0 16px 44px rgba(0,0,0,.16)}
.md-theme-velune .md-calendar-contextbar-eyebrow,.md-theme-velune .md-calendar-studio-picker-label,.md-theme-velune .md-calendar-mobile-studio-label{color:color-mix(in srgb,var(--md-text-color) 62%,var(--md-primary-color));letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}
.md-theme-velune .md-calendar-studio-select,.md-theme-velune .md-calendar-mobile-studio-select,.md-theme-velune .md-calendar-overview-studio-select,.md-theme-velune .md-calendar-overview-master-select{background:var(--md-input-bg)!important;color:var(--md-input-text-color)!important;border-color:var(--md-input-border-color)!important;border-radius:var(--md-input-radius)!important;box-shadow:none!important}
.md-theme-velune .md-calendar-studio-menu,.md-theme-velune .dropdown-menu{background:var(--md-modal-bg);border-color:var(--vl-line);color:var(--md-text-color);border-radius:var(--md-block-radius);box-shadow:var(--vl-shadow)}
.md-theme-velune .md-calendar-studio-option,.md-theme-velune .dropdown-item{color:var(--md-text-color)}.md-theme-velune .md-calendar-studio-option:hover,.md-theme-velune .dropdown-item:hover,.md-theme-velune .dropdown-item:focus{background:var(--vl-accent-soft);color:var(--md-text-color)}
.md-theme-velune .calendar-month-nav{border:1px solid var(--vl-line);background:var(--vl-panel);color:var(--md-text-color)!important;border-radius:var(--md-button-radius);padding:10px 14px;transition:.2s}.md-theme-velune .calendar-month-nav:hover{border-color:var(--md-primary-color);background:var(--vl-panel-2)}
.md-theme-velune .md-calendar-current-month{font-family:var(--vl-serif);color:var(--md-text-color)}
.md-theme-velune .md-calendar-day,.md-theme-velune .md-calendar-mobile-day{box-shadow:0 12px 34px rgba(0,0,0,.12)}
.md-theme-velune .md-calendar-day-today,.md-theme-velune .md-calendar-mobile-day-today{box-shadow:0 0 0 1px color-mix(in srgb,var(--md-primary-color) 80%,#fff),0 14px 38px var(--vl-accent-soft)!important}
.md-theme-velune .md-calendar-time-free,.md-theme-velune .md-calendar-modal-time:not(.md-calendar-modal-time-booked):not(.md-calendar-modal-time-blocked):not(.md-calendar-modal-time-cutoff){box-shadow:0 0 0 1px color-mix(in srgb,var(--md-primary-color) 14%,transparent) inset}
.md-theme-velune .md-calendar-overview-content,.md-theme-velune .modal-content{background:var(--md-modal-bg)!important;color:var(--md-text-color)!important;border-color:var(--vl-line)!important;border-radius:var(--md-modal-radius)!important}.md-theme-velune .modal-header,.md-theme-velune .modal-footer{border-color:var(--vl-line)!important}.md-theme-velune .btn-close{filter:invert(1) grayscale(1)}
.md-theme-velune .md-calendar-overview-day{border-color:var(--vl-line)!important}.md-theme-velune .md-calendar-overview-day:hover:not(:disabled){border-color:var(--md-primary-color)!important}

/* Booking form/account/auth/legal inherited native views */
.md-theme-velune .md-page-shell,.md-theme-velune .md-auth-card,.md-theme-velune .md-booking-page,.md-theme-velune .md-account-page,.md-theme-velune .md-reschedule-shell{max-width:1180px;margin:0 auto;padding-left:28px!important;padding-right:28px!important;color:var(--md-text-color)}
.md-theme-velune .md-page-shell,.md-theme-velune .md-auth-card,.md-theme-velune .md-account-page,.md-theme-velune .md-booking-page{padding-top:58px;padding-bottom:70px}
.md-theme-velune .md-page-header,.md-theme-velune .md-account-header{margin-bottom:28px}.md-theme-velune .md-page-header h1,.md-theme-velune .md-account-title,.md-theme-velune .md-auth-card h1,.md-theme-velune .md-booking-page h1{font-family:var(--vl-serif)!important;font-weight:500!important;letter-spacing:-.025em;color:var(--md-text-color)!important}
.md-theme-velune .md-content-card,.md-theme-velune .md-auth-card,.md-theme-velune .md-account-card,.md-theme-velune .md-account-section,.md-theme-velune .md-booking-card,.md-theme-velune .md-book-messengers,.md-theme-velune .md-notify-panel,.md-theme-velune .md-reschedule-current,.md-theme-velune .md-reschedule-day{background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel))!important;border:1px solid var(--vl-line)!important;border-radius:var(--md-block-radius)!important;color:var(--md-text-color)!important;box-shadow:0 16px 46px rgba(0,0,0,.15)}
.md-theme-velune .md-account-card,.md-theme-velune .md-account-section,.md-theme-velune .md-content-card,.md-theme-velune .md-booking-card,.md-theme-velune .md-book-messengers,.md-theme-velune .md-notify-panel{padding:24px}
.md-theme-velune .form-control,.md-theme-velune .form-select{background:var(--md-input-bg)!important;color:var(--md-input-text-color)!important;border-color:var(--md-input-border-color)!important;border-radius:var(--md-input-radius)!important;min-height:var(--md-input-height);box-shadow:none!important}.md-theme-velune .form-control:focus,.md-theme-velune .form-select:focus{border-color:var(--md-input-focus-color)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--md-input-focus-color) 18%,transparent)!important}.md-theme-velune .form-control::placeholder{color:color-mix(in srgb,var(--md-input-text-color) 45%,transparent)}
.md-theme-velune .btn-outline-dark{border-color:var(--vl-line)!important;color:var(--md-text-color)!important;background:transparent!important;border-radius:var(--md-button-radius)!important}.md-theme-velune .btn-outline-dark:hover{background:var(--vl-accent-soft)!important;border-color:var(--md-primary-color)!important}
.md-theme-velune .alert{border-radius:var(--md-button-radius);border-color:var(--vl-line)}
/* Booking: alternative times must stay readable on the dark SPACE CARDS palette. */
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time,
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:visited {
    background: var(--md-button-color) !important;
    border-color: color-mix(in srgb,var(--md-button-color) 78%,#fff) !important;
    color: var(--md-button-text-color) !important;
}
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:hover,
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:focus,
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:focus-visible,
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:active {
    background: var(--md-button-hover-color) !important;
    border-color: var(--md-primary-color) !important;
    color: var(--md-button-text-color) !important;
}
.md-theme-velune .md-booking-alternatives .md-booking-alternative-time:disabled {
    color: var(--md-button-text-color) !important;
    opacity: .48;
}

.md-theme-velune .md-booking-service-item,.md-theme-velune .md-notify-channel,.md-theme-velune .md-notify-option,.md-theme-velune .md-account-info-item{border-color:var(--vl-line)!important;background:color-mix(in srgb,var(--md-surface-color) 62%,transparent)!important;color:var(--md-text-color)!important;border-radius:var(--md-button-radius)}
.md-theme-velune .md-reschedule-modal-backdrop{background:var(--md-modal-overlay)}.md-theme-velune .md-reschedule-dialog{background:var(--md-modal-bg);border:1px solid var(--vl-line);border-radius:var(--md-modal-radius);color:var(--md-text-color)}

/* Footer */
.vl-footer{padding:38px 0 22px;background:var(--md-footer-bg,#0f0607);border-top:1px solid var(--vl-line)}.vl-footer-top{display:grid;grid-template-columns:1.2fr .9fr 1fr 1.05fr;gap:30px;padding-bottom:30px;border-bottom:1px solid var(--vl-line)}.vl-brand-footer{min-width:0}.vl-brand-footer img{max-height:58px!important}.vl-footer-brand p{margin:15px 0 0;color:var(--md-secondary-color);max-width:280px}.vl-footer-links,.vl-footer-contact{display:grid;align-content:start;gap:8px}.vl-footer-links>span,.vl-footer-contact>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--md-secondary-color);margin-bottom:6px}.vl-footer-links a,.vl-footer-contact a,.vl-footer-contact div{font-size:.88rem;color:color-mix(in srgb,var(--md-text-color) 84%,var(--md-secondary-color))}.vl-footer-meta{display:flex;justify-content:space-between;gap:16px;padding-top:20px;color:var(--md-secondary-color);font-size:.75rem}.vl-footer-meta a{color:inherit}.vl-model-credit{margin:10px 0 0!important;font-size:.62rem!important;line-height:1.45;color:var(--md-secondary-color)!important;opacity:.72}.vl-model-credit a{text-decoration:underline;text-underline-offset:2px}

/* Cookie/PWA overlays should follow the same palette */
.md-theme-velune .md-cookie-banner,.md-theme-velune #md-install-banner{background:var(--md-modal-bg)!important;color:var(--md-text-color)!important;border-color:var(--vl-line)!important}

@media(max-width:1199px){.vl-service-grid{grid-template-columns:repeat(2,1fr)}.vl-master-grid{grid-template-columns:1fr 1fr}.vl-services-page-grid{grid-template-columns:repeat(2,1fr)}.vl-footer-top{grid-template-columns:1fr 1fr}.vl-footer-brand{grid-column:1/-1}.vl-news-editorial article{grid-template-columns:100px 1fr}.vl-news-editorial figure{grid-column:2}.vl-feature-grid{grid-template-columns:1fr 1fr}.vl-feature-grid>div:nth-child(2){border-right:0}.vl-feature-grid>div:nth-child(-n+2){border-bottom:1px solid var(--vl-line)}}
@media(max-width:991px){.vl-shell,.vl-nav-shell{padding-inline:20px}.vl-menu-toggle{display:block}.vl-nav{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;align-items:stretch;padding:14px 20px 20px;background:color-mix(in srgb,var(--md-header-bg) 96%,#000);border-bottom:1px solid var(--vl-line);box-shadow:0 18px 44px rgba(0,0,0,.28)}.vl-nav.is-open{display:flex}.vl-nav>a:not(.vl-btn){padding:.8rem 0}.vl-nav>a:not(.vl-btn)::after{display:none}.vl-nav-cta{margin:8px 0 0}.vl-hero{min-height:700px}.vl-hero::after{background:linear-gradient(0deg,var(--md-page-bg) 5%,color-mix(in srgb,var(--md-page-bg) 91%,transparent) 54%,color-mix(in srgb,var(--md-page-bg) 62%,transparent) 100%)}.vl-hero-art{inset:0;opacity:.58;background-position:center}.vl-hero-shell{grid-template-columns:1fr;gap:0;min-height:700px}.vl-hero-content{padding:52px 0 0;max-width:760px}.vl-hero-model-zone{min-height:410px;margin-top:-26px}.vl-hero-model-ring{width:min(78vw,410px)}.vl-section{padding:56px 0}.vl-process-grid{grid-template-columns:1fr 1fr}.vl-process-grid article:nth-child(2){border-right:0}.vl-process-grid article:nth-child(-n+2){border-bottom:1px solid var(--vl-line)}.vl-master-grid{grid-template-columns:1fr}.vl-contact-grid{grid-template-columns:1fr}.vl-gallery{grid-template-columns:1fr 1fr}.md-theme-velune .md-calendar{padding-top:48px}}
@media(max-width:767px){.vl-shell,.vl-nav-shell{padding-inline:16px}.vl-brand{min-width:0;max-width:200px}.vl-brand-main{font-size:1.15rem}.vl-hero{min-height:690px}.vl-hero-shell{min-height:690px}.vl-hero-content{padding-top:42px}.vl-hero-model-zone{min-height:365px;margin-top:-16px}.vl-hero-model-ring{width:min(86vw,365px)}.vl-hero h1{font-size:clamp(2.8rem,13vw,4.8rem)}.vl-stat-strip>div{width:50%;min-width:0;margin:0 0 18px;padding-right:16px;border-right:0}.vl-section-head{display:block}.vl-section-head .vl-text-link,.vl-section-note{display:inline-block;margin-top:14px}.vl-service-grid,.vl-services-page-grid,.vl-feature-grid,.vl-process-grid{grid-template-columns:1fr}.vl-feature-grid>div,.vl-process-grid article{border-right:0;border-bottom:1px solid var(--vl-line)!important}.vl-feature-grid>div:last-child,.vl-process-grid article:last-child{border-bottom:0!important}.vl-media-card{min-height:310px}.vl-master-card{grid-template-columns:110px 1fr;min-height:180px}.vl-master-photo{min-height:180px}.vl-master-body{padding:18px}.vl-gallery{grid-template-columns:1fr}.vl-gallery figure{height:280px}.vl-banner{display:block;padding:28px 22px}.vl-banner .vl-btn{margin-top:20px}.vl-price-row{grid-template-columns:40px 1fr auto;gap:10px;padding:16px}.vl-price-row i{display:none}.vl-news-editorial article{grid-template-columns:1fr;padding:20px}.vl-news-editorial figure{grid-column:auto;height:220px;order:-1}.vl-news-meta{display:flex;justify-content:space-between}.vl-footer-top{grid-template-columns:1fr}.vl-footer-brand{grid-column:auto}.vl-footer-meta{display:block}.vl-footer-meta span{display:block}.vl-footer-meta span+span{margin-top:8px}.md-theme-velune .md-calendar,.md-theme-velune .md-page-shell,.md-theme-velune .md-auth-card,.md-theme-velune .md-booking-page,.md-theme-velune .md-account-page,.md-theme-velune .md-reschedule-shell{padding-left:16px!important;padding-right:16px!important}.md-theme-velune .md-calendar{padding-top:38px;padding-bottom:58px}.md-theme-velune .md-content-card,.md-theme-velune .md-account-card,.md-theme-velune .md-account-section,.md-theme-velune .md-booking-card,.md-theme-velune .md-book-messengers,.md-theme-velune .md-notify-panel{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.vl-reveal{opacity:1;transform:none;transition:none}.vl-media-card,.vl-media-card>img,.vl-btn{transition:none}}


/* Velune v1.0.1 — booking calendar is a distinct compact picker, while Core keeps all slot logic. */

.md-theme-velune .vl-calendar-picker{max-width:min(calc(100% - 56px),var(--vl-shell));margin:18px auto 82px;padding:24px!important;border:1px solid var(--vl-line);border-radius:var(--md-block-radius);background:linear-gradient(180deg,color-mix(in srgb,var(--vl-panel-2) 72%,transparent),var(--vl-panel));box-shadow:var(--vl-shadow);position:relative;overflow:visible}
.md-theme-velune .vl-calendar-picker::before{content:"Выберите дату";display:block;font:500 clamp(1.7rem,2.6vw,2.55rem)/1 var(--vl-serif);letter-spacing:-.025em;margin:2px 0 20px;color:var(--md-text-color)}
.md-theme-velune .vl-calendar-picker .md-calendar-contextbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:18px;align-items:center;margin:0 0 18px!important;padding:17px!important;background:color-mix(in srgb,var(--md-page-bg) 32%,var(--vl-panel));border:1px solid var(--vl-line);border-radius:12px;box-shadow:none}
.md-theme-velune .vl-calendar-picker .md-calendar-contextbar-copy{gap:4px}.md-theme-velune .vl-calendar-picker .md-calendar-contextbar-copy strong{font:500 1.18rem var(--vl-serif);color:var(--md-text-color)}
.md-theme-velune .vl-calendar-picker .md-calendar-studio-picker{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.md-theme-velune .vl-calendar-picker .md-calendar-studio-picker-label{margin:0;white-space:nowrap}
.md-theme-velune .vl-calendar-picker .md-calendar-studio-select{min-height:52px;padding:8px 14px!important;border:1px solid var(--vl-line)!important;background:color-mix(in srgb,var(--md-input-bg) 88%,transparent)!important;box-shadow:none!important}
.md-theme-velune .vl-calendar-picker .vl-calendar-head{margin:0 0 18px!important;padding:16px 4px 18px;border-bottom:1px solid var(--vl-line)}
.md-theme-velune .vl-calendar-picker .calendar-month-nav{width:44px;height:44px;padding:0!important;border-radius:50%;display:grid;place-items:center;font-size:0;background:transparent!important;border:1px solid var(--vl-line)!important}.md-theme-velune .vl-calendar-picker .calendar-month-nav-arrow{font-size:1.35rem!important;line-height:1}.md-theme-velune .vl-calendar-picker .calendar-month-nav-symbol{display:none!important}
.md-theme-velune .vl-calendar-picker .md-calendar-current-month{font:500 clamp(1.65rem,2.2vw,2.3rem)/1 var(--vl-serif)!important;text-transform:none;letter-spacing:-.02em}.md-theme-velune .vl-calendar-picker .md-calendar-current-month-icon{display:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-caption{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-top:8px!important}
.md-theme-velune .vl-calendar-picker .md-calendar-weekdays{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 8px}.md-theme-velune .vl-calendar-picker .md-calendar-weekday{height:30px;display:grid;place-items:center;background:transparent!important;border:0!important;color:var(--md-secondary-color)!important;font-size:.7rem!important;letter-spacing:.12em;text-transform:uppercase}
.md-theme-velune .vl-calendar-picker .md-calendar-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px!important}
.md-theme-velune .vl-calendar-picker .md-calendar-empty{min-height:78px!important;background:transparent!important;border:0!important}
.md-theme-velune .vl-calendar-picker .md-calendar-day{position:relative!important;min-height:86px!important;height:86px!important;padding:10px!important;border:1px solid var(--vl-line)!important;border-radius:10px!important;background:color-mix(in srgb,var(--md-page-bg) 30%,var(--vl-panel))!important;box-shadow:none!important;overflow:hidden;display:flex!important;align-items:flex-start;justify-content:flex-start;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.md-theme-velune .vl-calendar-picker .md-calendar-day[data-calendar-day-clickable="1"]{cursor:pointer;background:color-mix(in srgb,var(--vl-panel) 82%,var(--md-primary-color))!important}.md-theme-velune .vl-calendar-picker .md-calendar-day[data-calendar-day-clickable="1"]:hover{transform:translateY(-2px);border-color:var(--md-primary-color)!important;background:color-mix(in srgb,var(--vl-panel) 70%,var(--md-primary-color))!important}
.md-theme-velune .vl-calendar-picker .md-calendar-day[data-calendar-day-clickable="1"]::after{display:none!important}
.md-theme-velune .vl-calendar-picker .md-calendar-day-filled{opacity:1!important;background:color-mix(in srgb,var(--md-page-bg) 38%,var(--vl-panel))!important}.md-theme-velune .vl-calendar-picker .md-calendar-day-filled::after{display:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-day-filled .md-calendar-day-head{opacity:.42}.md-theme-velune .vl-calendar-picker .md-calendar-day-today{opacity:1!important;border-color:color-mix(in srgb,var(--md-primary-color) 88%,#fff)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--md-primary-color) 28%,transparent) inset!important}
.md-theme-velune .vl-calendar-picker .md-calendar-day-head{position:static!important;width:auto!important;height:auto!important;background:none!important;border:0!important;padding:0!important;display:block!important}.md-theme-velune .vl-calendar-picker .md-calendar-day-head::before{display:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-day-number{width:auto!important;height:auto!important;min-width:0!important;border:0!important;border-radius:0!important;background:none!important;color:var(--md-text-color)!important;font:500 1.25rem/1 var(--vl-serif)!important;box-shadow:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-weekday-inside{display:none!important}
.md-theme-velune .vl-calendar-picker .md-calendar-day-content,.md-theme-velune .vl-calendar-picker .md-calendar-day-empty-state{display:none!important}
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-studio-picker{margin:0 0 16px;padding:14px;border:1px solid var(--vl-line);border-radius:12px;background:var(--vl-panel)}

.md-theme-velune .vl-calendar-picker .modal-dialog{max-width:760px}.md-theme-velune .vl-calendar-picker .modal-content{overflow:hidden;border:1px solid var(--vl-line)!important;background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel))!important;box-shadow:0 30px 90px rgba(0,0,0,.46)!important}.md-theme-velune .vl-calendar-picker .modal-header{padding:20px 22px;background:transparent!important}.md-theme-velune .vl-calendar-picker .modal-title{font-family:var(--vl-serif);font-weight:500!important;font-size:1.65rem}.md-theme-velune .vl-calendar-picker .modal-body{padding:18px 22px 24px}
.md-theme-velune .md-calendar-modal-master{border:1px solid var(--vl-line)!important;border-radius:12px;padding:14px!important;margin:0 0 12px!important;background:color-mix(in srgb,var(--md-page-bg) 24%,var(--vl-panel))!important}.md-theme-velune .md-calendar-modal-master-head{min-height:56px}.md-theme-velune .md-calendar-modal-photo,.md-theme-velune .md-calendar-modal-photo-placeholder{width:54px!important;height:54px!important;border-radius:9px!important}.md-theme-velune .md-calendar-modal-master-name{font:500 1.12rem var(--vl-serif)!important}.md-theme-velune .md-calendar-modal-times{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin-top:12px}.md-theme-velune .md-calendar-modal-time{min-height:42px!important;border:1px solid var(--vl-line)!important;border-radius:8px!important;background:color-mix(in srgb,var(--md-page-bg) 34%,var(--vl-panel))!important;color:var(--md-text-color)!important;display:grid!important;place-items:center;padding:7px 6px!important}.md-theme-velune a.md-calendar-modal-time:hover{border-color:var(--md-primary-color)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--md-primary-color) 88%,#fff 5%),color-mix(in srgb,var(--md-primary-color) 58%,#000))!important;color:var(--md-button-text-color)!important;box-shadow:0 0 18px var(--vl-accent-soft)}.md-theme-velune span.md-calendar-modal-time{opacity:.32!important}
.md-theme-velune .md-calendar-overview-content{background:linear-gradient(180deg,var(--vl-panel-2),var(--vl-panel))!important}.md-theme-velune .md-calendar-mobile-overview-grid{gap:7px!important}.md-theme-velune .md-calendar-mobile-overview-day{border-radius:9px!important;background:color-mix(in srgb,var(--md-page-bg) 28%,var(--vl-panel))!important}
/* SPACE CARDS: only future overview cells are hoverable. Past cells are static; unavailable future cells get a restrained preview hover without becoming clickable. */
.md-theme-velune button.md-calendar-mobile-overview-day:not(:disabled):hover{background:color-mix(in srgb,var(--vl-panel) 70%,var(--md-primary-color))!important;border-color:var(--md-primary-color)!important;transform:translateY(-1px)}
.md-theme-velune button.md-calendar-mobile-overview-day:disabled:hover{background:color-mix(in srgb,var(--md-calendar-overview-inactive-bg) 82%,#fff 6%)!important;border-color:color-mix(in srgb,var(--vl-line) 64%,var(--md-primary-color))!important;color:var(--md-calendar-overview-inactive-text)!important;transform:none!important;cursor:default!important}
.md-theme-velune .md-calendar-mobile-overview-day-past:hover{background:color-mix(in srgb,var(--md-page-bg) 28%,var(--vl-panel))!important;border-color:transparent!important;color:var(--md-calendar-overview-inactive-text)!important;box-shadow:none!important;transform:none!important;cursor:default!important}
/* SPACE CARDS day availability LED: dark green = at least one real slot, dark red = booking unavailable. */
.md-theme-velune .vl-calendar-picker{--vl-calendar-led-available:#1f6b43;--vl-calendar-led-unavailable:#74242d}
.md-theme-velune .vl-calendar-picker .vl-calendar-led{position:absolute;right:10px;top:10px;width:8px;height:8px;border-radius:50%;z-index:3;pointer-events:none;border:1px solid color-mix(in srgb,currentColor 35%,transparent)}
.md-theme-velune .vl-calendar-picker .vl-calendar-led-available{color:var(--vl-calendar-led-available);background:var(--vl-calendar-led-available);box-shadow:0 0 5px color-mix(in srgb,var(--vl-calendar-led-available) 72%,transparent),0 0 10px color-mix(in srgb,var(--vl-calendar-led-available) 34%,transparent)}
.md-theme-velune .vl-calendar-picker .vl-calendar-led-unavailable{color:var(--vl-calendar-led-unavailable);background:var(--vl-calendar-led-unavailable);box-shadow:0 0 5px color-mix(in srgb,var(--vl-calendar-led-unavailable) 72%,transparent),0 0 10px color-mix(in srgb,var(--vl-calendar-led-unavailable) 32%,transparent)}
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day{position:relative!important}
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day-filled::after{display:none!important}
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day-head{padding-right:18px!important}

.vl-footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.vl-footer-social-link{width:42px;height:42px;min-width:42px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--vl-line);border-radius:50%;background:var(--md-surface-color);color:var(--md-text-color)!important;transition:transform .18s ease,border-color .18s ease,background .18s ease}.vl-footer-social-link:hover{transform:translateY(-2px);border-color:var(--md-primary-color);background:color-mix(in srgb,var(--md-surface-color) 82%,var(--md-primary-color));color:var(--md-text-color)!important}.vl-footer-social-link i{font-size:1rem}
.vl-footer-reviews{margin-top:18px;max-width:320px}.vl-footer-reviews .md-footer-reviews-frame{width:100%;height:130px;border:1px solid var(--vl-line);border-radius:12px;background:var(--vl-panel)}.vl-footer-reviews-consent{margin:8px 0 0!important;font-size:.72rem!important;color:var(--md-secondary-color)!important}

@media(max-width:991px){.vl-hero-wrap{width:calc(100% - 40px)}.vl-hero{min-height:560px}.vl-hero-content{padding-top:150px;padding-bottom:54px}.md-theme-velune .vl-calendar-picker{max-width:calc(100% - 40px);padding:18px!important}.md-theme-velune .vl-calendar-picker .md-calendar-contextbar{grid-template-columns:1fr}.md-theme-velune .vl-calendar-picker .md-calendar-studio-picker{grid-template-columns:1fr}.md-theme-velune .vl-calendar-picker .md-calendar-grid{gap:6px!important}.md-theme-velune .vl-calendar-picker .md-calendar-day{min-height:72px!important;height:72px!important;padding:9px!important}}
@media(max-width:767px){.vl-hero-wrap{width:calc(100% - 32px);margin-top:16px}.vl-hero{min-height:520px}.vl-hero-inner{min-height:430px}.vl-hero-content{padding-top:125px!important;padding-bottom:42px!important}.md-theme-velune .vl-calendar-picker{max-width:calc(100% - 32px);margin-top:14px;padding:16px!important}.md-theme-velune .vl-calendar-picker::before{font-size:1.8rem;margin-bottom:14px}.md-theme-velune .vl-calendar-picker .vl-calendar-head{padding-top:8px}.md-theme-velune .vl-calendar-picker .md-calendar-weekdays,.md-theme-velune .vl-calendar-picker .md-calendar-grid{display:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day{min-height:76px!important;margin:0!important;padding:12px!important;border:1px solid var(--vl-line)!important;border-radius:10px!important;background:color-mix(in srgb,var(--md-page-bg) 28%,var(--vl-panel))!important;box-shadow:none!important;overflow:hidden}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day[data-calendar-mobile-day="1"]{cursor:pointer;background:color-mix(in srgb,var(--vl-panel) 80%,var(--md-primary-color))!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day-head{padding:0!important;border:0!important;background:transparent!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day-number{font:500 1.2rem var(--vl-serif)!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-master,.md-theme-velune .vl-calendar-picker .md-calendar-mobile-empty{display:none!important}.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day[data-calendar-mobile-day="1"]::after{content:"Выбрать";display:block;margin-top:8px;color:var(--md-secondary-color);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.md-theme-velune .md-calendar-modal-times{grid-template-columns:repeat(3,minmax(0,1fr))!important}.vl-footer-reviews{max-width:none}}

/* Disable the generic Core calendar color layers inside the SPACE CARDS picker. */
.md-theme-velune .vl-calendar-picker .md-calendar-day::before,
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day::before,
.md-theme-velune .vl-calendar-picker .md-calendar-mobile-day-head::before{display:none!important}

/* v1.0.3 — public socials use the same Core $socials context as Default. */
.vl-nav-socials{display:inline-flex;align-items:center;gap:4px;margin-left:2px;padding-left:12px;border-left:1px solid var(--vl-line)}
.vl-nav-social-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;color:var(--md-text-color)!important;text-decoration:none!important;border-radius:999px;transition:background .18s ease,color .18s ease,transform .18s ease}
.vl-nav-social-link:hover{background:color-mix(in srgb,var(--md-surface-color) 82%,var(--md-primary-color));transform:translateY(-1px)}
.vl-nav-phone{width:auto!important;min-width:36px!important;padding:0 8px!important;gap:6px;font-size:.76rem!important}
.vl-nav-social-text{white-space:nowrap}
.md-theme-velune .vl-footer-social-link{width:42px!important;min-width:42px!important;max-width:42px!important;flex:0 0 42px!important;height:42px!important;padding:0!important;gap:0!important;border-radius:50%!important}
.md-theme-velune .vl-footer-social-link>i:not(.md-max-icon),.md-theme-velune .vl-footer-social-link>.svg-inline--fa{width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;font-size:20px!important}
.md-theme-velune .vl-footer-social-link>.md-max-icon{width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;flex:0 0 20px!important}
@media(max-width:1199px){.vl-nav-social-text{display:none}.vl-nav-phone{width:36px!important;padding:0!important}}
@media(max-width:991px){.vl-nav-socials{width:100%;margin:6px 0 2px;padding:12px 0 0;border-left:0;border-top:1px solid var(--vl-line);justify-content:flex-start}.vl-nav-social-text{display:inline}.vl-nav-phone{width:auto!important;padding:0 8px!important}.vl-nav-social-link{border:1px solid var(--vl-line)}}

/* v1.0.4 — shared 3D hero uses local Core Three.js; no CDN. */
/* v1.0.4 — responsive rules for the shared 3D hero. */
@media(max-width:1199px){
  .vl-hero-shell{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:20px}
  .vl-hero-model-ring{width:min(100%,460px)}
  .vl-hero-model-zone{min-height:470px}
  .vl-hero h1{font-size:clamp(3.2rem,6vw,5.6rem)}
}
@media(max-width:991px){
  .vl-hero{min-height:0}
  .vl-hero-shell{grid-template-columns:1fr;gap:0;min-height:0;padding-top:0;padding-bottom:30px}
  .vl-hero-content{max-width:760px;padding:52px 0 18px!important}
  .vl-hero-model-zone{min-height:430px}
  .vl-hero-model-ring{width:min(82vw,430px)}
  .vl-hero h1{font-size:clamp(3.05rem,9vw,5rem)}
}
@media(max-width:767px){
  .vl-hero{min-height:610px}
  .vl-hero-shell{position:relative;display:block;min-height:610px;padding-bottom:28px}
  .vl-hero-content{position:relative;z-index:5;max-width:none;padding:38px 0 34px!important}
  .vl-hero-model-zone{position:absolute;z-index:1;inset:0;min-height:0;margin:0;display:grid;place-items:center;overflow:visible}
  .vl-hero-model-ring{width:min(116vw,470px);max-width:none;transform:translate3d(8%,4%,0);opacity:.96}
  .vl-hero h1{font-size:clamp(2.55rem,12vw,4rem);line-height:.9}
  .vl-bottle-stage{inset:-7%;width:114%;height:114%}
  .vl-hero-dim-mask{background:rgba(0,0,0,.27)}
}
@media(max-width:420px){
  .vl-hero-wrap{width:calc(100% - 24px)}
  .vl-hero{min-height:590px}
  .vl-hero-shell{min-height:590px}
  .vl-hero-model-ring{width:min(122vw,450px);transform:translate3d(10%,5%,0)}
}

/* SPACE CARDS — one Design-controlled visual source for every showcase hero. */
.vl-hero-model-zone{transition:opacity .18s ease,visibility .18s ease}
.vl-hero.vl-visual-pending .vl-hero-model-zone{opacity:0;visibility:hidden}
.vl-hero.vl-banner-mode .vl-hero-model-zone,.vl-hero-model-zone[hidden]{display:none!important}
.vl-hero.vl-banner-mode .vl-hero-art{filter:saturate(.9) contrast(1.04)}
.vl-hero.vl-banner-mode:not(.vl-has-banner) .vl-hero-art{background:linear-gradient(125deg,color-mix(in srgb,var(--md-surface-color) 94%,#000),color-mix(in srgb,var(--md-primary-color) 10%,var(--md-page-bg)) 60%,var(--md-page-bg))}

/* SPACE CARDS — Lacquer integration pack v1.0.31 + retained 20% visual dim mask. */
.lacquer-bottle-stage{--lacquer-scene-size:min(94%,720px);isolation:isolate;overflow:visible}
.lacquer-bottle-backdrop{--lacquer-backdrop-opacity:.78;position:absolute;z-index:0;left:50%;top:50%;width:var(--lacquer-scene-size);aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;overflow:hidden;clip-path:circle(50% at 50% 50%);contain:paint;background-position:center;background-repeat:no-repeat;background-size:cover;opacity:var(--lacquer-backdrop-opacity);pointer-events:none;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0%,#000 57%,rgba(0,0,0,.96) 66%,rgba(0,0,0,.78) 74%,rgba(0,0,0,.42) 84%,rgba(0,0,0,.13) 93%,transparent 100%);mask-image:radial-gradient(circle at 50% 50%,#000 0%,#000 57%,rgba(0,0,0,.96) 66%,rgba(0,0,0,.78) 74%,rgba(0,0,0,.42) 84%,rgba(0,0,0,.13) 93%,transparent 100%);filter:saturate(.92) contrast(1.03)}
.lacquer-bottle-backdrop::after{content:"";position:absolute;inset:-5%;border-radius:50%;background:radial-gradient(circle,transparent 57%,rgba(73,16,39,.10) 76%,transparent 100%);filter:blur(18px)}
.lacquer-bottle-stage .lacquer-bottle-canvas,.lacquer-bottle-stage canvas{position:relative;z-index:2}
.lacquer-bottle-halo{position:absolute;z-index:1;left:50%;top:50%;width:var(--lacquer-scene-size);aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;overflow:hidden;clip-path:circle(50% at 50% 50%);pointer-events:none;contain:paint}
.lacquer-bottle-halo::before,.lacquer-bottle-halo::after{content:"";position:absolute;inset:8%;border-radius:50%}
.lacquer-bottle-halo::before{background:radial-gradient(circle at 50% 54%,rgba(0,0,0,.10) 0 13%,rgba(0,0,0,.07) 18%,rgba(40,18,19,.04) 28%,rgba(148,92,54,.10) 46%,rgba(203,154,90,.13) 64%,rgba(0,0,0,0) 82%);filter:blur(10px);opacity:.68}
.lacquer-bottle-halo::after{inset:3%;background:radial-gradient(circle at 50% 54%,transparent 0 48%,rgba(139,90,52,.12) 62%,rgba(218,175,102,.14) 74%,rgba(174,119,70,.08) 82%,transparent 92%);filter:blur(22px);opacity:.58}
.lacquer-bottle-mist{position:absolute;left:50%;top:50%;width:var(--lacquer-scene-size);aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;overflow:hidden;clip-path:circle(50% at 50% 50%);contain:paint;isolation:isolate}
.lacquer-bottle-mist-back{z-index:1;opacity:.38}.lacquer-bottle-mist-front{z-index:3;opacity:.12;mix-blend-mode:screen}
.lacquer-bottle-mist-cloud{position:absolute;inset:10%;border-radius:50%;overflow:hidden;clip-path:circle(50% at 50% 50%);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0%,#000 58%,rgba(0,0,0,.95) 68%,rgba(0,0,0,.60) 77%,rgba(0,0,0,.18) 86%,transparent 93%);mask-image:radial-gradient(circle at 50% 50%,#000 0%,#000 58%,rgba(0,0,0,.95) 68%,rgba(0,0,0,.60) 77%,rgba(0,0,0,.18) 86%,transparent 93%);contain:paint}
.lacquer-bottle-mist-cloud::before,.lacquer-bottle-mist-cloud::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse at 32% 42%,rgba(232,198,134,.14) 0 11%,transparent 28%),radial-gradient(ellipse at 68% 58%,rgba(209,153,126,.11) 0 13%,transparent 29%),radial-gradient(ellipse at 48% 70%,rgba(245,223,179,.07) 0 11%,transparent 29%);filter:blur(18px);opacity:.52;animation:lacquerMistDriftA 15s ease-in-out infinite alternate}
.lacquer-bottle-mist-cloud::after{inset:7%;transform:rotate(22deg) scale(1.02);opacity:.40;filter:blur(22px);animation:lacquerMistDriftB 18s ease-in-out infinite alternate}
.lacquer-bottle-mist-cloud-front::before,.lacquer-bottle-mist-cloud-front::after{filter:blur(26px);opacity:.40}
@keyframes lacquerMistDriftA{from{transform:translate3d(-2%,1%,0) scale(.99)}to{transform:translate3d(3%,-2%,0) scale(1.03)}}
@keyframes lacquerMistDriftB{from{transform:rotate(18deg) translate3d(2%,-1%,0) scale(1.02)}to{transform:rotate(30deg) translate3d(-3%,2%,0) scale(1.07)}}
.vl-hero-model-ring{isolation:isolate}
.vl-hero-dim-mask{position:absolute;z-index:60;inset:-7%;border-radius:50%;background:rgba(0,0,0,.20);pointer-events:none}
@media(max-width:720px){.lacquer-bottle-stage{--lacquer-scene-size:min(106%,620px)}}
@media(max-width:560px){.lacquer-bottle-stage{--lacquer-scene-size:min(112%,460px)}}
@media(prefers-reduced-motion:reduce){.lacquer-bottle-mist-cloud::before,.lacquer-bottle-mist-cloud::after{animation:none!important}}

/* SPACE CARDS — Contacts map/editor fixes. */
.vl-contact-grid.vl-contact-grid-no-map{grid-template-columns:1fr}
.vl-contact-grid.vl-contact-grid-no-map .vl-contact-panel{min-height:0}
.vl-contact-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.vl-contact-social-link{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:8px 12px;border:1px solid var(--vl-line);border-radius:var(--md-button-radius);color:var(--md-text-color);text-decoration:none;background:color-mix(in srgb,var(--vl-panel) 88%,var(--md-primary-color))}
.vl-contact-social-link:hover{border-color:color-mix(in srgb,var(--md-primary-color) 70%,var(--vl-line));color:var(--md-text-color)}
.vl-contact-social-link>svg,.vl-contact-social-link>i,.vl-contact-social-link .md-max-icon{width:18px!important;height:18px!important;flex:0 0 18px}
body.md-page-editing .md-page-copy{pointer-events:auto!important;position:relative;z-index:90}
body.md-page-editing .vl-hero-model-zone,body.md-page-editing .vl-hero-art,body.md-page-editing .vl-hero-dim-mask{pointer-events:none!important}


/* SPACE CARDS v1.0.10 — icon-only footer socials. */
.md-theme-velune .vl-footer-socials{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.md-theme-velune .vl-footer-social-link{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;flex:0 0 42px!important;padding:0!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.md-theme-velune .vl-footer-social-link>i:not(.md-max-icon),.md-theme-velune .vl-footer-social-link>.svg-inline--fa,.md-theme-velune .vl-footer-social-link>.md-max-icon{width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;flex:0 0 20px!important;margin:0!important}

/* SPACE CARDS v1.0.11 — calendar controls and contrast fixes. */
body.md-theme-velune{color-scheme:dark}
body.md-theme-velune .text-dark,
body.md-theme-velune .text-black,
body.md-theme-velune .link-dark,
body.md-theme-velune .card,
body.md-theme-velune .card-body,
body.md-theme-velune label,
body.md-theme-velune legend{color:var(--md-text-color)!important}
body.md-theme-velune .text-black-50{color:color-mix(in srgb,var(--md-text-color) 62%,transparent)!important}
body.md-theme-velune select,body.md-theme-velune .form-select{color-scheme:dark}
body.md-theme-velune select option,body.md-theme-velune select optgroup,
body.md-theme-velune .form-select option,body.md-theme-velune .form-select optgroup{background:#1b0c10!important;color:#f6ecec!important}
body.md-theme-velune .dropdown-menu{background:var(--vl-panel)!important;color:var(--md-text-color)!important;border-color:var(--vl-line)!important;box-shadow:0 18px 50px rgba(0,0,0,.38)}
body.md-theme-velune .dropdown-item{color:color-mix(in srgb,var(--md-text-color) 90%,var(--md-secondary-color))!important}
body.md-theme-velune .dropdown-item:hover,body.md-theme-velune .dropdown-item:focus{background:color-mix(in srgb,var(--md-primary-color) 24%,var(--vl-panel))!important;color:var(--md-text-color)!important}
body.md-theme-velune .dropdown-item.active,body.md-theme-velune .dropdown-item:active{background:var(--md-primary-color)!important;color:var(--md-button-text-color)!important}
body.md-theme-velune .form-control:disabled,body.md-theme-velune .form-select:disabled{background:color-mix(in srgb,var(--md-input-bg) 88%,#000)!important;color:color-mix(in srgb,var(--md-input-text-color) 78%,transparent)!important;opacity:1}
body.md-theme-velune .form-check-label{color:var(--md-text-color)!important}
body.md-theme-velune .form-text,body.md-theme-velune .small.text-secondary,body.md-theme-velune .small.text-body-secondary{color:color-mix(in srgb,var(--md-text-color) 78%,var(--md-secondary-color))!important}

/* Main calendar month buttons — a deliberate SPACE CARDS control instead of generic squares. */
.md-theme-velune .vl-calendar-picker .calendar-month-nav{
  width:auto!important;min-width:138px!important;height:50px!important;padding:0 15px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
  border-radius:999px!important;border:1px solid color-mix(in srgb,var(--md-primary-color) 62%,var(--vl-line))!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--vl-panel-2) 88%,var(--md-primary-color)),var(--vl-panel))!important;
  color:var(--md-text-color)!important;font-size:.74rem!important;line-height:1!important;font-weight:700!important;
  letter-spacing:.07em!important;text-transform:uppercase!important;
  box-shadow:0 10px 26px rgba(0,0,0,.18),inset 0 0 0 1px color-mix(in srgb,var(--md-primary-color) 12%,transparent)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.md-theme-velune .vl-calendar-picker .calendar-month-nav:hover{transform:translateY(-2px)!important;border-color:var(--md-primary-color)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--md-primary-color) 72%,var(--vl-panel-2)),color-mix(in srgb,var(--md-primary-color) 34%,var(--vl-panel)))!important;box-shadow:0 14px 34px rgba(0,0,0,.24),0 0 24px color-mix(in srgb,var(--md-primary-color) 18%,transparent)!important}
.md-theme-velune .vl-calendar-picker .calendar-month-nav-arrow{width:29px!important;height:29px!important;flex:0 0 29px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:var(--md-primary-color)!important;color:var(--md-button-text-color)!important;font-size:1rem!important;line-height:1!important;box-shadow:0 0 18px color-mix(in srgb,var(--md-primary-color) 34%,transparent)!important}
.md-theme-velune .vl-calendar-picker .calendar-month-nav-symbol{width:26px!important;height:26px!important;display:grid!important;place-items:center!important;border-radius:50%!important;color:color-mix(in srgb,var(--md-text-color) 82%,var(--md-primary-color))!important;background:color-mix(in srgb,var(--md-primary-color) 16%,transparent)!important;font-size:.78rem!important}
.md-theme-velune .md-calendar-mobile-overview-button,.md-theme-velune .btn-outline-dark,.md-theme-velune .btn-outline-secondary{border:1px solid color-mix(in srgb,var(--md-primary-color) 54%,var(--vl-line))!important;background:color-mix(in srgb,var(--vl-panel-2) 72%,transparent)!important;color:var(--md-text-color)!important;border-radius:999px!important;min-height:42px!important;padding:.62rem 1.05rem!important;font-weight:700!important;letter-spacing:.035em!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--md-primary-color) 8%,transparent),0 10px 24px rgba(0,0,0,.16)!important}
.md-theme-velune .md-calendar-mobile-overview-button:hover,.md-theme-velune .btn-outline-dark:hover,.md-theme-velune .btn-outline-secondary:hover{border-color:var(--md-primary-color)!important;background:color-mix(in srgb,var(--md-primary-color) 30%,var(--vl-panel-2))!important;color:var(--md-text-color)!important;transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.22),0 0 22px color-mix(in srgb,var(--md-primary-color) 18%,transparent)!important}

/* Month overview: separate close corner from the month navigation and remove the month pictogram. */
.md-theme-velune .md-calendar-overview-header{position:relative!important;display:block!important;padding:22px 20px 18px!important}
.md-theme-velune .md-calendar-overview-close{position:absolute!important;top:12px!important;right:12px!important;z-index:6!important;width:36px!important;height:36px!important;margin:0!important;padding:0!important;border:1px solid color-mix(in srgb,var(--md-primary-color) 62%,var(--vl-line))!important;border-radius:50%!important;background-color:color-mix(in srgb,var(--vl-panel) 90%,#000)!important;background-image:none!important;opacity:1!important;box-shadow:0 8px 24px rgba(0,0,0,.22)!important;filter:none!important}
.md-theme-velune .md-calendar-overview-close::before,.md-theme-velune .md-calendar-overview-close::after{content:"";position:absolute;left:50%;top:50%;width:15px;height:2px;border-radius:999px;background:var(--md-primary-color);transform-origin:center}
.md-theme-velune .md-calendar-overview-close::before{transform:translate(-50%,-50%) rotate(45deg)}
.md-theme-velune .md-calendar-overview-close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.md-theme-velune .md-calendar-overview-close:hover{border-color:var(--md-primary-color)!important;background-color:color-mix(in srgb,var(--vl-panel) 72%,var(--md-primary-color))!important}
.md-theme-velune .md-calendar-overview-close:hover::before,.md-theme-velune .md-calendar-overview-close:hover::after{background:var(--md-text-color)}
.md-theme-velune .md-calendar-overview-toolbar{width:min(100%,500px)!important;margin:28px auto 0!important;display:grid!important;grid-template-columns:48px minmax(0,1fr) 48px!important;align-items:center!important;gap:14px!important}
.md-theme-velune .md-calendar-overview-month-switch{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;border-radius:16px!important;border:1px solid color-mix(in srgb,var(--md-primary-color) 62%,var(--vl-line))!important;background:linear-gradient(145deg,color-mix(in srgb,var(--md-primary-color) 82%,#fff 4%),color-mix(in srgb,var(--md-primary-color) 48%,#000))!important;color:var(--md-button-text-color)!important;box-shadow:0 10px 26px rgba(0,0,0,.24),0 0 22px color-mix(in srgb,var(--md-primary-color) 16%,transparent)!important;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important}
.md-theme-velune .md-calendar-overview-month-switch:hover{transform:translateY(-2px) scale(1.03)!important;filter:brightness(1.08);box-shadow:0 14px 34px rgba(0,0,0,.28),0 0 30px color-mix(in srgb,var(--md-primary-color) 26%,transparent)!important}
.md-theme-velune .md-calendar-overview-month-switch svg,.md-theme-velune .md-calendar-overview-month-switch i{width:1rem!important;height:1rem!important;font-size:1rem!important}
.md-theme-velune .md-calendar-overview-title{margin:0!important;text-align:center!important;line-height:1.05!important}
.md-theme-velune .md-calendar-overview-month-icon{display:none!important}
.md-theme-velune .md-calendar-overview-subtitle{text-align:center!important;color:color-mix(in srgb,var(--md-text-color) 78%,var(--md-secondary-color))!important}

/* Increase contrast in the booking/calendar surfaces that inherited light-theme utility colors. */
.md-theme-velune .md-booking-page,.md-theme-velune .md-booking-page .card-body,.md-theme-velune .md-calendar,.md-theme-velune .md-calendar-overview-content{color:var(--md-text-color)!important}
.md-theme-velune .md-booking-page .text-secondary,.md-theme-velune .md-booking-page .text-body-secondary,.md-theme-velune .md-booking-page .small,.md-theme-velune .md-calendar .text-secondary,.md-theme-velune .md-calendar .text-body-secondary,.md-theme-velune .md-calendar-overview-content .text-secondary,.md-theme-velune .md-calendar-overview-content .text-body-secondary{color:color-mix(in srgb,var(--md-text-color) 78%,var(--md-secondary-color))!important}
.md-theme-velune .md-booking-page .fw-semibold,.md-theme-velune .md-booking-page .fw-bold,.md-theme-velune .md-calendar .fw-semibold,.md-theme-velune .md-calendar .fw-bold{color:var(--md-text-color)!important}
.md-theme-velune .md-calendar-studio-select,.md-theme-velune .md-calendar-master-select,.md-theme-velune .md-calendar-overview-studio-select,.md-theme-velune .md-calendar-overview-master-select{color:var(--md-text-color)!important;background:color-mix(in srgb,var(--vl-panel) 88%,var(--md-primary-color))!important;border-color:var(--vl-line)!important}

@media(max-width:767px){
  .md-theme-velune .vl-calendar-picker .calendar-month-nav{min-width:50px!important;width:50px!important;padding:0!important;font-size:0!important;border-radius:16px!important;gap:0!important}
  .md-theme-velune .vl-calendar-picker .calendar-month-nav-arrow{width:30px!important;height:30px!important;flex-basis:30px!important;font-size:1rem!important}
  .md-theme-velune .vl-calendar-picker .calendar-month-nav-symbol{display:none!important}
  .md-theme-velune .md-calendar-mobile-overview-button{min-height:40px!important;padding:.56rem .9rem!important}
  .md-theme-velune .md-calendar-overview-header{padding:18px 12px 14px!important}
  .md-theme-velune .md-calendar-overview-toolbar{margin-top:38px!important;grid-template-columns:44px minmax(0,1fr) 44px!important;gap:8px!important}
  .md-theme-velune .md-calendar-overview-month-switch{width:44px!important;height:44px!important;border-radius:14px!important}
}



/* SPACE CARDS v1.0.20 — optimized lightning, no flash-time DOM/3D rebuild. */
/* The 3D scene must float freely: no circular outline and no artificial baseline. */
.md-theme-velune .vl-hero-model-ring{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.md-theme-velune .vl-hero-model-ring::after{display:none!important;content:none!important}

/* Performance-safe rare branched golden lightning. Geometry is static; only opacity animates. */
.lacquer-bottle-lightning,
.lacquer-bottle-lightning-wash{
  position:absolute;left:50%;top:50%;width:var(--lacquer-scene-size);aspect-ratio:1/1;
  transform:translate3d(-50%,-50%,0);border-radius:50%;overflow:hidden;clip-path:circle(50% at 50% 50%);
  pointer-events:none;contain:strict;opacity:0;will-change:opacity;
}
.lacquer-bottle-lightning{z-index:1}
.lacquer-bottle-lightning-wash{
  z-index:4;
  background:radial-gradient(circle at var(--lightning-x,50%) var(--lightning-y,45%),rgba(255,232,119,.20) 0,rgba(255,196,45,.105) 24%,rgba(255,173,0,.035) 46%,transparent 67%);
}
.lacquer-bottle-lightning svg{display:block;width:100%;height:100%;overflow:visible}
.lacquer-bottle-lightning path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.lacquer-bottle-lightning .lacquer-lightning-core{stroke:#ffe46f}
.lacquer-bottle-lightning .lacquer-lightning-glow{stroke:#ffbd00;opacity:.22}
.lacquer-bottle-lightning .lacquer-lightning-main.lacquer-lightning-core{stroke-width:1.05}
.lacquer-bottle-lightning .lacquer-lightning-main.lacquer-lightning-glow{stroke-width:3.6}
.lacquer-bottle-lightning .lacquer-lightning-branch.lacquer-lightning-core{stroke-width:.58;opacity:.90}
.lacquer-bottle-lightning .lacquer-lightning-branch.lacquer-lightning-glow{stroke-width:2.4;opacity:.15}
@media(prefers-reduced-motion:reduce){
  .lacquer-bottle-lightning,.lacquer-bottle-lightning-wash{display:none!important}
}

/* The login/register/recovery fields must never inherit Bootstrap green validation/autofill surfaces. */
body.md-theme-velune .md-auth-card .form-control,
body.md-theme-velune .md-auth-card .form-select,
body.md-theme-velune .md-auth-card .form-control.is-valid,
body.md-theme-velune .md-auth-card .form-select.is-valid,
body.md-theme-velune .md-auth-card.was-validated .form-control:valid,
body.md-theme-velune .md-auth-card.was-validated .form-select:valid{
  background:var(--md-input-bg)!important;
  color:var(--md-input-text-color)!important;
  border-color:var(--md-input-border-color)!important;
  background-image:none!important;
  box-shadow:none!important;
}
body.md-theme-velune .md-auth-card .form-control:focus,
body.md-theme-velune .md-auth-card .form-select:focus,
body.md-theme-velune .md-auth-card .form-control.is-valid:focus,
body.md-theme-velune .md-auth-card .form-select.is-valid:focus,
body.md-theme-velune .md-auth-card.was-validated .form-control:valid:focus,
body.md-theme-velune .md-auth-card.was-validated .form-select:valid:focus{
  border-color:var(--md-input-focus-color)!important;
  box-shadow:0 0 0 .18rem color-mix(in srgb,var(--md-input-focus-color) 18%,transparent)!important;
}
body.md-theme-velune .md-auth-card input:-webkit-autofill,
body.md-theme-velune .md-auth-card input:-webkit-autofill:hover,
body.md-theme-velune .md-auth-card input:-webkit-autofill:focus,
body.md-theme-velune .md-auth-card textarea:-webkit-autofill,
body.md-theme-velune .md-auth-card select:-webkit-autofill{
  -webkit-text-fill-color:var(--md-input-text-color)!important;
  caret-color:var(--md-input-text-color)!important;
  -webkit-box-shadow:0 0 0 1000px var(--md-input-bg) inset!important;
  box-shadow:0 0 0 1000px var(--md-input-bg) inset!important;
  transition:background-color 9999s ease-out 0s!important;
}
body.md-theme-velune .md-auth-card .form-check-input.is-valid,
body.md-theme-velune .md-auth-card.was-validated .form-check-input:valid{border-color:var(--md-input-border-color)!important}
body.md-theme-velune .md-auth-card .form-check-input.is-valid:checked,
body.md-theme-velune .md-auth-card.was-validated .form-check-input:valid:checked{background-color:var(--md-primary-color)!important;border-color:var(--md-primary-color)!important}
body.md-theme-velune .md-auth-card .form-check-input.is-valid~.form-check-label,
body.md-theme-velune .md-auth-card.was-validated .form-check-input:valid~.form-check-label{color:var(--md-text-color)!important}

/* book.php availability success card is intentionally light; keep its copy dark and readable. */
body.md-theme-velune .md-booking-availability.alert-success,
body.md-theme-velune .md-booking-availability.alert-success *{color:#171013!important}

/* Compact icon-only logout control. */
.md-theme-velune .vl-nav-logout-form{margin:0;display:flex;align-items:center}
.md-theme-velune .vl-nav-logout{
  width:42px;height:42px;min-width:42px;padding:0;border:1px solid var(--vl-line);border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--md-header-text);
  cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease;
}
.md-theme-velune .vl-nav-logout:hover,.md-theme-velune .vl-nav-logout:focus-visible{
  transform:translateY(-1px);border-color:var(--md-primary-color);
  background:color-mix(in srgb,var(--md-primary-color) 20%,transparent);color:var(--md-header-text);outline:none;
}
.md-theme-velune .vl-nav-logout .vl-door-icon{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.md-theme-velune .vl-nav-logout .vl-door-icon circle{fill:currentColor;stroke:none}
@media(max-width:991px){
  .md-theme-velune .vl-nav-logout-form{padding:.25rem 0}
  .md-theme-velune .vl-nav-logout{width:46px;height:46px;min-width:46px}
}
@media(prefers-reduced-motion:reduce){
}


/* SPACE CARDS v1.0.13 — header width recalculation.
   >= 1380px: full phone number.
   1241–1379px: compact phone icon.
   <= 1240px: mobile navigation. */
.md-theme-velune .vl-nav-shell{min-width:0}
.md-theme-velune .vl-brand{flex:0 1 220px;min-width:160px}
.md-theme-velune .vl-nav{min-width:0}

@media (max-width:1379px) and (min-width:1241px){
  .md-theme-velune .vl-nav-shell{gap:20px;padding-inline:22px}
  .md-theme-velune .vl-brand{flex-basis:190px;min-width:160px;max-width:210px}
  .md-theme-velune .vl-nav>a:not(.vl-btn){padding-left:.58rem;padding-right:.58rem;font-size:.86rem}
  .md-theme-velune .vl-nav-cta{margin-left:8px;padding-left:1.12rem;padding-right:1.12rem}
  .md-theme-velune .vl-nav-social-text{display:none!important}
  .md-theme-velune .vl-nav-phone{width:36px!important;min-width:36px!important;height:36px!important;padding:0!important;gap:0!important}
}

@media (max-width:1240px){
  .md-theme-velune .vl-nav-shell{padding-inline:20px;gap:18px}
  .md-theme-velune .vl-brand{flex:0 1 auto;min-width:0;max-width:min(260px,calc(100vw - 104px))}
  .md-theme-velune .vl-menu-toggle{display:block;flex:0 0 44px}
  .md-theme-velune .vl-nav{
    position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;align-items:stretch;
    width:100%;max-width:none;max-height:calc(100vh - 76px);overflow-y:auto;overflow-x:hidden;
    padding:14px 20px 20px;background:color-mix(in srgb,var(--md-header-bg) 96%,#000);
    border-bottom:1px solid var(--vl-line);box-shadow:0 18px 44px rgba(0,0,0,.28)
  }
  .md-theme-velune .vl-nav.is-open{display:flex}
  .md-theme-velune .vl-nav>a:not(.vl-btn){padding:.8rem 0;font-size:.9rem}
  .md-theme-velune .vl-nav>a:not(.vl-btn)::after{display:none}
  .md-theme-velune .vl-nav-cta{margin:8px 0 0;width:100%}
  .md-theme-velune .vl-nav-socials{
    width:100%;margin:6px 0 2px;padding:12px 0 0;border-left:0;border-top:1px solid var(--vl-line);
    justify-content:flex-start;flex-wrap:wrap
  }
  .md-theme-velune .vl-nav-social-text{display:inline!important}
  .md-theme-velune .vl-nav-phone{width:auto!important;min-width:0!important;height:auto!important;padding:0 8px!important;gap:6px!important}
  .md-theme-velune .vl-nav-social-link{border:1px solid var(--vl-line)}
}

@media (max-width:767px){
  .md-theme-velune .vl-nav-shell{padding-inline:16px}
  .md-theme-velune .vl-nav{padding-left:16px;padding-right:16px}
}

/* SPACE CARDS v1.0.15 — explicit product credit and footer palette. */
.vl-footer-credit{color:var(--md-text-color)}.vl-footer-credit a{color:var(--md-text-color)!important;font-weight:800;text-decoration:none}.vl-footer-credit a:hover{text-decoration:underline;text-underline-offset:3px}


/* SPACE CARDS 1.0.20 — mobile 3D keeps full visual texture quality; only geometry/effects scale down. */
.lacquer-bottle-stage.lacquer-quality-medium .lacquer-bottle-mist-front{opacity:.08}
.lacquer-bottle-stage.lacquer-quality-medium .lacquer-bottle-mist-cloud-front::before,
.lacquer-bottle-stage.lacquer-quality-medium .lacquer-bottle-mist-cloud-front::after{filter:blur(18px)}
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-mist-front,
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-lightning,
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-lightning-wash{display:none!important}
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-mist-cloud::before,
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-mist-cloud::after{animation:none!important;filter:blur(10px);opacity:.34}
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-halo::after{display:none}
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-halo::before{filter:blur(6px);opacity:.54}
.lacquer-bottle-stage.lacquer-quality-low .lacquer-bottle-backdrop::after{filter:blur(8px)}
.vl-bottle-stage.lacquer-quality-low canvas{filter:drop-shadow(0 18px 20px rgba(0,0,0,.40))}
.vl-bottle-stage.lacquer-quality-medium canvas{filter:drop-shadow(0 26px 28px rgba(0,0,0,.44))}

.lacquer-bottle-stage.lacquer-scene-paused .lacquer-bottle-mist-cloud::before,
.lacquer-bottle-stage.lacquer-scene-paused .lacquer-bottle-mist-cloud::after{animation-play-state:paused!important}

/* v27.5.64: Home service cards keep the complete uploaded artwork visible.
   The Services page already has the intended card composition and is left unchanged. */
/* v27.5.65: Home service art keeps full vertical content, anchors right and clips only overflow on the left. */
.md-theme-velune .vl-service-grid .vl-media-card>img{inset:auto 0 auto auto!important;top:0!important;right:0!important;bottom:auto!important;left:auto!important;height:100%!important;width:auto!important;max-width:none!important;min-width:0!important;object-fit:fill!important;object-position:initial!important;background:var(--vl-panel);transform:none!important}
.md-theme-velune .vl-service-grid .vl-media-card:hover>img{transform:none!important}
.md-theme-velune .vl-contact-yandex-business{padding-top:20px;border-bottom:0}
.md-theme-velune .vl-contact-yandex-business>span{margin-bottom:10px}
.md-theme-velune .vl-contact-yandex-frame{display:block;width:100%;height:130px;max-height:130px;border:1px solid var(--vl-line);border-radius:calc(var(--md-block-radius) - 4px);background:var(--vl-panel-2);overflow:hidden}
.md-theme-velune .vl-contact-yandex-consent{margin:9px 0 0;color:var(--md-secondary-color);font-size:.75rem;line-height:1.45}

/* v27.5.68 — booking availability alerts must keep readable copy on Bootstrap light/pink status backgrounds in SPACE CARDS. */
body.md-theme-velune .md-booking-availability.alert-danger,
body.md-theme-velune .md-booking-availability.alert-danger *,
body.md-theme-velune .md-booking-availability.alert-warning,
body.md-theme-velune .md-booking-availability.alert-warning *{color:#58151c!important}


/* SPACE CARDS v1.1.16 — compact phone/tablet subpage hero with the 3D scene moving under the text, sitting higher, and flowing under the next block without creating excess whitespace. */
@media(max-width:991px){
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)){position:relative;z-index:1;margin-bottom:0}
  .md-theme-velune .vl-hero:not(.vl-hero-home){min-height:0;overflow:visible;align-items:flex-start}
  .md-theme-velune .vl-hero:not(.vl-hero-home) .vl-hero-shell{position:relative;display:block;min-height:0;padding-bottom:0}
  .md-theme-velune .vl-hero:not(.vl-hero-home) .vl-hero-content{position:relative;z-index:5;max-width:min(100%,760px);padding:46px 0 34px!important}
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-zone{position:absolute;z-index:1;inset:0;min-height:0;margin:0;display:grid;place-items:center;overflow:visible;pointer-events:none}
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-ring{max-width:none;transform:none;opacity:.96}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)) + *{position:relative;z-index:3;background-color:transparent!important;isolation:isolate}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)) + *::before{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--md-page-bg) 40%,transparent) 34%,color-mix(in srgb,var(--md-page-bg) 82%,transparent) 68%,var(--md-page-bg) 100%)}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)) + .vl-feature-row{background:transparent!important}
}
@media(min-width:768px) and (max-width:991px){
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-zone{transform:translate3d(12%,34%,0)}
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-ring{width:min(72vw,470px)}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)) + *::before{height:min(34vw,220px)}
}
@media(max-width:767px){
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)){width:calc(100% - 32px);margin-top:16px}
  .md-theme-velune .vl-hero:not(.vl-hero-home) .vl-hero-content{padding:38px 0 28px!important}
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-zone{transform:translate3d(8%,43%,0)}
  .md-theme-velune .vl-hero:not(.vl-hero-home):not(.vl-banner-mode) .vl-hero-model-ring{width:min(114vw,440px)}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero:not(.vl-hero-home)) + *::before{height:min(54vw,220px)}
}

/* SPACE CARDS v1.1.17 — tablet home hero follows the compact overlay logic once the 3D scene moves below the text; month overview stays above its backdrop and gets LED availability markers. */
@media(min-width:768px) and (max-width:991px){
  .md-theme-velune .vl-hero-wrap:has(.vl-hero.vl-hero-home){position:relative;z-index:1;margin-bottom:0}
  .md-theme-velune .vl-hero.vl-hero-home{min-height:0;overflow:visible;align-items:flex-start}
  .md-theme-velune .vl-hero.vl-hero-home .vl-hero-shell{position:relative;display:block;min-height:0;padding-bottom:0}
  .md-theme-velune .vl-hero.vl-hero-home .vl-hero-content{position:relative;z-index:5;max-width:min(100%,760px);padding:46px 0 34px!important}
  .md-theme-velune .vl-hero.vl-hero-home:not(.vl-banner-mode) .vl-hero-model-zone{position:absolute;z-index:1;inset:0;min-height:0;margin:0;display:grid;place-items:center;overflow:visible;pointer-events:none;transform:translate3d(12%,31%,0)}
  .md-theme-velune .vl-hero.vl-hero-home:not(.vl-banner-mode) .vl-hero-model-ring{width:min(72vw,470px);max-width:none;transform:none;opacity:.96}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero.vl-hero-home) + *{position:relative;z-index:3;background-color:transparent!important;isolation:isolate}
  .md-theme-velune .vl-hero-wrap:has(.vl-hero.vl-hero-home) + *::before{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;height:min(34vw,220px);pointer-events:none;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--md-page-bg) 40%,transparent) 34%,color-mix(in srgb,var(--md-page-bg) 82%,transparent) 68%,var(--md-page-bg) 100%)}
}
@media(max-width:991px){
  .md-theme-velune #mdMonthOverviewModal{z-index:1085!important}
}

/* SPACE CARDS only — month-overview LEDs and mobile modal stacking. Default intentionally has neither override. */
.md-theme-velune .md-calendar-mobile-overview-day{position:relative}
.md-theme-velune .md-calendar-mobile-overview-day .md-calendar-overview-led{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%;pointer-events:none;border:1px solid color-mix(in srgb,currentColor 35%,transparent)}
.md-theme-velune .md-calendar-mobile-overview-day .md-calendar-overview-led-available{color:var(--vl-calendar-led-available,#1f6b43);background:var(--vl-calendar-led-available,#1f6b43);box-shadow:0 0 5px color-mix(in srgb,var(--vl-calendar-led-available,#1f6b43) 72%,transparent),0 0 10px color-mix(in srgb,var(--vl-calendar-led-available,#1f6b43) 34%,transparent)}
.md-theme-velune .md-calendar-mobile-overview-day .md-calendar-overview-led-unavailable{color:var(--vl-calendar-led-unavailable,#74242d);background:var(--vl-calendar-led-unavailable,#74242d);box-shadow:0 0 5px color-mix(in srgb,var(--vl-calendar-led-unavailable,#74242d) 72%,transparent),0 0 10px color-mix(in srgb,var(--vl-calendar-led-unavailable,#74242d) 32%,transparent)}
@media(max-width:991.98px){
  body.md-theme-velune.md-space-overview-open > #mdMonthOverviewModal{z-index:2005!important}
  body.md-theme-velune.md-space-overview-open > .modal-backdrop{z-index:2000!important}
  body.md-theme-velune.md-space-day-modal-open > .modal[id^="mdDayModal-"]{z-index:2005!important}
  body.md-theme-velune.md-space-day-modal-open > .modal-backdrop{z-index:2000!important}
}
