/* pragma: allowlist secret */
/* Private Style Guide: document chrome only. Storefront specimens keep their live classes. */
:root {
  --vs-container-max: 1440px;
  --vs-font-sans: "Proxima Nova", Arial, sans-serif;
  --vs-ink: #252822;
  --vs-muted: #575b54;
  --vs-line: #d8d8d2;
  --vs-surface: #fff;
  --vs-surface-tint: #f7f5f0;
  --vs-action: #eee7db;
  --vs-focus: #697d5a;
  --vs-error: #9e3b3b;
  --vs-gutter-desktop: 40px;
  --vs-gutter-tablet: 24px;
  --vs-gutter-mobile: 16px;
  --vs-header-safe-right: max(16px, env(safe-area-inset-right, 0px));
  --vs-header-safe-left: max(16px, env(safe-area-inset-left, 0px));
  --vs-mobile-logo-width: 84px;
  --vs-space-1: 8px;
  --vs-space-2: 16px;
  --vs-space-3: 24px;
  --vs-space-4: 40px;
  --vs-radius: 0;
}

.vs-live-guide { color:#252822; background:#fff; font-family:"Proxima Nova",Arial,sans-serif; overflow:hidden; }
.vs-live-guide *, .vs-live-guide *::before, .vs-live-guide *::after { box-sizing:border-box; }
.vs-live-guide__intro, .vs-live-guide__section { padding:48px 0; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__intro { background:#f7f5f0; }
.vs-live-guide__intro h1, .vs-live-guide__section > .container > h2 { margin:0 0 14px; font-size:32px; font-weight:400; letter-spacing:.03em; line-height:1.1; }
.vs-live-guide__intro > .container > p:not(.vs-live-guide__kicker), .vs-live-guide__section > .container > p { max-width:820px; margin:0 0 12px; }
.vs-live-guide__kicker, .vs-live-guide__caption { margin:0 0 10px; font-size:12px; font-weight:400; letter-spacing:1px; line-height:18px; text-transform:uppercase; }
.vs-live-guide__source, .vs-live-guide__note { color:#575b54; font-size:14px; line-height:1.45; }
.vs-live-guide__deviation { max-width:900px; margin:20px 0 0; padding:12px 0 0; border-top:1px solid rgba(37,40,34,.35); font-size:14px; line-height:1.45; }
.vs-live-guide__facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; border-top:1px solid #d8d8d2; }
.vs-live-guide__facts > div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:12px; padding:15px 0; border-bottom:1px solid #d8d8d2; font-size:14px; line-height:1.4; }
.vs-live-guide__facts strong { font-weight:600; }
.vs-live-guide__list { max-width:900px; margin:18px 0 0; padding-left:20px; }
.vs-live-guide__list li { margin:0 0 10px; }
.vs-live-guide__type-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.vs-live-guide__type-specimens, .vs-live-guide__text-patterns { display:grid; gap:16px; }
.vs-live-guide__type-specimens > div, .vs-live-guide__text-patterns article { padding-bottom:16px; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__type-specimens h1 { margin:0; font-size:48px; font-weight:400; letter-spacing:1px; line-height:48px; }
.vs-live-guide__type-specimens .caps { margin:0; font-size:21px; font-weight:400; letter-spacing:5px; line-height:20px; }
.vs-live-guide__type-specimens h3 { margin:0; font-size:24px; font-weight:400; letter-spacing:.7px; line-height:24px; }
.vs-live-guide__type-specimens .center { margin:0; text-align:left; }
.vs-live-guide__type-specimens .price-buket { margin:0; font-size:36px; font-weight:400; line-height:43px; }
.vs-live-guide__type-specimens .drop-title { width:100%; }
.vs-live-guide__text-patterns h3, .vs-live-guide__text-patterns p { margin-top:0; }
.vs-live-guide__text-patterns p { max-width:600px; font-size:14px; line-height:25px; }
.vs-live-guide__text-patterns .drop-txt-bl { font-size:12px; line-height:21px; }
.vs-live-guide__meta { color:#575b54; font-size:12px!important; line-height:21px!important; }
.vs-live-guide__text-link { color:inherit; font-size:14px; text-decoration:underline; }
.vs-live-guide__heading-samples { display:grid; grid-template-columns:1fr; gap:24px; align-items:start; }
.vs-live-guide__heading-samples .banner { min-height:200px; padding:0; }
.vs-live-guide__heading-samples .banner .div-block-19 { min-height:200px; }
.vs-live-guide__heading-samples .banner .pic-banner { min-height:200px; }
.vs-live-guide__heading-samples .text-block-3 { align-self:center; justify-self:start; }
.vs-live-guide__heading-samples .center-title { grid-column:1/-1; padding-top:16px; }
.vs-live-guide__heading-samples .center-title h1 { margin:0; }
.vs-live-guide__specimens { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; align-items:end; }
.vs-live-guide__specimens > div { min-width:0; }
.vs-live-guide__specimens .button { margin:0; }
.vs-live-guide .button._1cl { box-sizing:border-box; min-height:44px; height:44px; padding-right:16px; padding-left:16px; white-space:nowrap; }
.vs-live-guide__specimens .div-block-23, .vs-live-guide__pdp-sample .div-block-23 { width:77px; grid-template-columns:7.5px 25px 12.5px; gap:16px; align-items:end; justify-content:normal; }
.vs-live-guide__specimens .qty-input, .vs-live-guide__pdp-sample .qty-input { width:25px; }
.vs-live-guide__legacy-request { margin-top:0; }
.vs-live-guide__legacy-request .container { padding-top:40px; padding-bottom:40px; }
.vs-live-guide__legacy-request .form-3 { display:grid; max-width:668px; gap:8px; padding-right:100px; }
.vs-live-guide__legacy-request .form-3 fieldset { margin:0 0 16px; padding:0; border:0; }
.vs-live-guide__legacy-request .form-3 legend, .vs-live-guide__legacy-request .form-3 > label { font-size:12px; font-weight:400; letter-spacing:1px; line-height:18px; text-transform:uppercase; }
.vs-live-guide__legacy-request .form-3 > label { display:grid; gap:10px; margin-bottom:2px; }
.vs-live-guide__legacy-request .text-field-2.w-input { width:100%; height:38px; min-height:38px; margin:0; padding:8px 12px; border:1px solid #000; border-radius:0; background:rgba(255,255,255,.18); font-size:14px; line-height:20px; }
.vs-live-guide__legacy-request .button.w-button { width:200px; margin-top:8px; border:1px solid #000; border-radius:0; background:transparent; color:#252822; font-size:13px; font-weight:400; letter-spacing:.7px; line-height:24px; text-align:center; text-transform:uppercase; }
.vs-live-guide__legacy-choices { display:flex; grid-column:1/-1; flex-wrap:wrap; gap:16px; margin-top:8px; }
.vs-live-guide__legacy-choices .radio-button-field-3 { position:relative; display:flex; min-height:34px; align-items:center; margin:0; padding:0; }
.vs-live-guide__legacy-choices .radio-button-3 { position:relative; width:14px; height:14px; margin:0 6px 0 0; border:1px solid rgba(0,0,0,.55); border-radius:0; appearance:none; }
.vs-live-guide__legacy-choices .radio-button-3:checked::after { position:absolute; inset:3px; background:#000; content:""; }
.vs-live-guide__legacy-choices .radio-button-label-3 { margin:0; font-size:12px; font-weight:400; letter-spacing:1px; line-height:18px; }
.vs-live-guide__form-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 24px; max-width:900px; }
.vs-live-guide__form-controls > label { display:grid; gap:10px; font-size:12px; font-weight:400; letter-spacing:1px; line-height:18px; text-transform:uppercase; }
.vs-live-guide__form-controls .text-field-2 { width:100%; min-height:38px; margin:0; padding:8px 12px; border:1px solid #000; border-radius:0; background:rgba(255,255,255,.18); font-size:14px; letter-spacing:normal; line-height:20px; text-transform:none; }
.vs-live-guide__form-controls textarea.text-field-2 { min-height:76px; resize:vertical; }
.vs-live-guide__form-controls .checkbox-field { display:flex; align-items:center; gap:7px; min-height:38px; letter-spacing:normal; text-transform:none; }
.vs-live-guide__form-controls .checkbox-label { font-size:14px; line-height:20px; }
.vs-live-guide__field-error input { border-color:#9e3b3b!important; }
.vs-live-guide__field-error small { color:#9e3b3b; font-size:12px; letter-spacing:normal; line-height:18px; text-transform:none; }
.vs-live-guide__commerce { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:40px; margin-top:24px; }
.vs-live-guide__commerce-item { display:grid; grid-template-columns:96px minmax(0,1fr) auto 77px auto auto; gap:16px; align-items:center; padding:20px 0; border-top:1px solid #252822; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__commerce-image { width:96px; height:120px; background-position:center; background-repeat:no-repeat; background-size:cover; }
.vs-live-guide__commerce-item h3, .vs-live-guide__commerce-summary h3 { margin:0 0 6px; font-size:20px; font-weight:400; line-height:25px; }
.vs-live-guide__commerce-item p { margin:0; color:#575b54; font-size:12px; line-height:18px; }
.vs-live-guide__commerce-item > strong { font-size:18px; font-weight:400; white-space:nowrap; }
.vs-live-guide__quantity { display:grid; grid-template-columns:7px 25px 12px; gap:16px; align-items:center; width:77px; }
.vs-live-guide__quantity button { padding:0; border:0; background:transparent; color:#252822; cursor:pointer; font-size:20px; line-height:38px; }
.vs-live-guide__quantity span { font-size:14px; text-align:center; }
.vs-live-guide__remove { padding:0; border:0; background:transparent; color:#575b54; cursor:pointer; font:400 12px/18px "Proxima Nova",Arial,sans-serif; text-decoration:underline; }
.vs-live-guide__commerce-summary { padding:20px; border:1px solid #252822; background:#f7f5f0; }
.vs-live-guide__commerce-summary > div { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid #d8d8d2; font-size:14px; line-height:20px; }
.vs-live-guide__commerce-summary strong { font-weight:400; text-align:right; }
.vs-live-guide__commerce-summary .vs-live-guide__commerce-total { padding-top:16px; border-bottom:0; font-size:18px; }
.vs-live-guide__commerce-summary .button { box-sizing:border-box; width:100%; height:44px; min-height:44px; margin-top:16px; padding:9px 16px; border:1px solid #252822; border-radius:0; background:#eee7db; color:#252822; font-size:13px; font-weight:400; letter-spacing:.7px; line-height:24px; text-transform:uppercase; white-space:nowrap; }
.vs-live-guide__commerce-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:24px; }
.vs-live-guide__commerce-options label { display:grid; grid-template-columns:14px minmax(0,1fr) auto; gap:10px; align-items:start; min-height:76px; padding:16px; border:1px solid #d8d8d2; background:#fff; cursor:pointer; }
.vs-live-guide__commerce-options input { width:14px; height:14px; margin:3px 0 0; accent-color:#252822; }
.vs-live-guide__commerce-options strong, .vs-live-guide__commerce-options b { display:block; font-size:14px; font-weight:400; line-height:20px; }
.vs-live-guide__commerce-options small { display:block; margin-top:4px; color:#575b54; font-size:12px; line-height:18px; }
.vs-live-guide__commerce-secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-top:32px; }
.vs-live-guide__promo { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:end; padding-bottom:24px; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__promo label { grid-column:1/-1; font-size:12px; letter-spacing:1px; line-height:18px; text-transform:uppercase; }
.vs-live-guide__promo input, .vs-live-guide__checkout-fields input, .vs-live-guide__checkout-fields textarea { width:100%; min-height:38px; padding:8px 12px; border:1px solid #252822; border-radius:0; background:#fff; color:#252822; font:400 14px/20px "Proxima Nova",Arial,sans-serif; }
.vs-live-guide__promo button { height:38px; padding:8px 16px; border:1px solid #252822; background:transparent; color:#252822; font:400 13px/20px "Proxima Nova",Arial,sans-serif; letter-spacing:.7px; text-transform:uppercase; }
.vs-live-guide__empty { margin-top:24px; padding:24px 0; border-top:1px solid #252822; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__empty h3 { margin:0 0 8px; font-size:24px; font-weight:400; line-height:30px; }
.vs-live-guide__empty p { margin:0 0 16px; color:#575b54; font-size:14px; line-height:20px; }
.vs-live-guide__empty .button { box-sizing:border-box; height:44px; min-height:44px; margin:0; padding:9px 16px; border:1px solid #252822; border-radius:0; background:transparent; color:#252822; font-size:13px; font-weight:400; letter-spacing:.7px; line-height:24px; text-transform:uppercase; }
.vs-live-guide__commerce-mobile { display:grid; grid-template-columns:88px minmax(0,1fr); gap:16px; padding:16px 0; border-top:1px solid #252822; border-bottom:1px solid #d8d8d2; }
.vs-live-guide__commerce-mobile .vs-live-guide__commerce-image { width:88px; height:112px; }
.vs-live-guide__commerce-mobile h3 { margin:0 0 6px; font-size:18px; font-weight:400; line-height:24px; }.vs-live-guide__commerce-mobile p { margin:0 0 8px; color:#575b54; font-size:14px; }.vs-live-guide__commerce-mobile strong { display:block; margin-top:8px; font-size:14px; font-weight:400; }.vs-live-guide__commerce-mobile .vs-live-guide__remove { margin-top:8px; }
.vs-live-guide__checkout-sample { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:40px; margin-top:40px; padding-top:32px; border-top:1px solid #252822; }
.vs-live-guide__checkout-sample h3 { margin:0 0 16px; font-size:24px; font-weight:400; line-height:30px; }
.vs-live-guide__checkout-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.vs-live-guide__checkout-fields label { display:grid; gap:8px; font-size:12px; letter-spacing:1px; line-height:18px; text-transform:uppercase; }.vs-live-guide__checkout-fields .vs-live-guide__checkout-wide { grid-column:1/-1; }.vs-live-guide__checkout-fields textarea { min-height:76px; resize:vertical; }.vs-live-guide__checkout-fields small { color:#9e3b3b; font-size:12px; letter-spacing:normal; line-height:18px; text-transform:none; }
.vs-live-guide__checkout-sample .vs-live-guide__commerce-options { margin-top:12px; }.vs-live-guide__checkout-sample .vs-live-guide__commerce-options label { min-height:86px; }.vs-live-guide__commerce-helper { display:block; margin-top:12px; color:#575b54; font-size:12px; line-height:18px; }
.vs-live-guide__filters-sample { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:24px 0; }
.vs-live-guide__filters-sample .div-block-18 { min-width:0; }
.vs-live-guide__filters-sample .filter-warper { display:grid; gap:6px; margin-top:8px; }
.vs-live-guide__filters-sample .checkbox-field { margin:0; }
.vs-live-guide__filters-sample > .filter-warper { align-self:end; }
.vs-live-guide__catalogue-sample { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; margin-top:24px; }
.vs-live-guide__catalogue-sample .unit { width:auto; min-width:0; }
.vs-live-guide__catalogue-sample .pic-format { width:100%; }
.vs-live-guide__catalogue-sample .unitpic { min-height:400px; background-position:center; background-repeat:no-repeat; background-size:cover; }
.vs-live-guide__catalogue-sample .add { display:flex; align-items:center; justify-content:center; white-space:nowrap; }
.vs-live-guide__catalogue-sample--mobile { max-width: 390px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vs-live-guide__catalogue-sample--mobile .more { display: none; }
.vs-live-guide__catalogue-sample--mobile .unitpic { min-height: 240px; }
.vs-live-guide__subscription-cards { display:grid; grid-template-columns:repeat(3,282px); gap:30px; max-width:906px; margin-top:24px; }
.vs-live-guide__subscription-cards .slide-warper-suscrib { width:282px; }
.vs-live-guide__subscription-cards .button { margin:0; }
.vs-live-guide__pdp-sample { padding-top:24px; padding-bottom:24px; }
.vs-live-guide__pdp-sample .center-title { margin-bottom:16px; }
.vs-live-guide__pdp-sample .slider-pictures { margin-bottom:20px; }
.vs-live-guide__pdp-sample .drop-cont { height:auto !important; }
.vs-live-guide__service-samples { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.vs-live-guide__service-samples .banner { min-height:220px; padding:80px 0 40px; }
.vs-live-guide__service-samples .banner h1 { font-size:32px; font-weight:400; }
.vs-live-guide__service-samples .section { min-height:220px; padding:40px 0; }
.vs-live-guide__service-samples .button { margin-top:20px; }
.vs-live-guide__mobile-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; border-top:1px solid #d8d8d2; }
.vs-live-guide__mobile-notes > div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:12px; padding:15px 0; border-bottom:1px solid #d8d8d2; font-size:14px; line-height:1.45; }
.vs-live-guide__footer-marker { border-bottom:0; }
@media (max-width:991px) { .vs-live-guide__catalogue-sample { grid-template-columns:repeat(2,minmax(0,1fr)); } .vs-live-guide__filters-sample { grid-template-columns:repeat(2,minmax(0,1fr)); } .vs-live-guide__service-samples { grid-template-columns:1fr; } .vs-live-guide__pdp-sample .grid-5 { grid-template-columns:1fr; } }
@media (max-width:767px) { .vs-live-guide__intro, .vs-live-guide__section { padding:36px 0; } .vs-live-guide__intro h1, .vs-live-guide__section > .container > h2 { font-size:26px; } .vs-live-guide__facts, .vs-live-guide__type-grid, .vs-live-guide__heading-samples, .vs-live-guide__specimens, .vs-live-guide__filters-sample, .vs-live-guide__form-controls, .vs-live-guide__subscription-cards, .vs-live-guide__mobile-notes, .vs-live-guide__commerce, .vs-live-guide__commerce-options, .vs-live-guide__commerce-secondary, .vs-live-guide__checkout-sample { grid-template-columns:1fr; } .vs-live-guide__facts > div, .vs-live-guide__mobile-notes > div { grid-template-columns:1fr; gap:5px; } .vs-live-guide__legacy-request .form-3 { padding-right:0; } .vs-live-guide__catalogue-sample { grid-template-columns:repeat(2,minmax(0,1fr)); } .vs-live-guide__catalogue-sample .unitpic { min-height:240px; } .vs-live-guide__subscription-cards { max-width:282px; } .vs-live-guide__commerce-item { grid-template-columns:88px minmax(0,1fr); gap:12px; } .vs-live-guide__commerce-image { width:88px; height:112px; } .vs-live-guide__commerce-item > strong, .vs-live-guide__quantity, .vs-live-guide__remove { grid-column:2; } .vs-live-guide__checkout-fields { grid-template-columns:1fr; }.vs-live-guide__checkout-fields .vs-live-guide__checkout-wide { grid-column:auto; } }

/* Site-wide breadcrumbs and unified fixed-header spacing. */
:root {
  --vs-fixed-header-height: 80px;
  --vs-page-top-gap: 24px;
}

body.vs-has-fixed-header { padding-top:calc(var(--vs-fixed-header-height) + var(--vs-bx-panel-height, 0px)); }

.vs-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px; color:var(--vs-muted); font:400 12px/18px var(--vs-font-sans); text-transform:uppercase; }
.vs-breadcrumbs a { color:inherit; text-decoration:none; }
.vs-breadcrumbs a:hover { text-decoration:underline; }
.vs-breadcrumbs__current { color:var(--vs-ink); }
.vs-page-top { padding-top:var(--vs-page-top-gap); padding-bottom:16px; }

/* Single full-width rule below breadcrumbs — avoid container-width + section double line. */
.vs-page-top.container.w-container,
.vs-commerce > .container.w-container > .vs-page-top {
  border-bottom:none;
}

.vs-page-top + .vs-split-hero.banner,
.vs-page-top.container.w-container + .vs-commerce,
.vs-page-top.container.w-container + main.vs-commerce,
.vs-page-top.container.w-container + section.wf-section {
  border-top:1px solid var(--vs-ink);
}

.vs-page-top .vs-breadcrumbs { margin-bottom:0; }

body.vs-has-fixed-header .banner,
body.vs-has-fixed-header .banner.wf-section { padding-top:32px !important; }

.vs-page-top + .banner,
.vs-page-top + .banner.wf-section,
.vs-page-top + section.banner { padding-top:24px !important; }

body.vs-has-fixed-header .cataloug.newyar.wf-section { padding-top:0; }
body.vs-has-fixed-header .container.buket:not(.vs-page-top) { padding-top:40px; }
body.vs-has-fixed-header .vs-commerce { padding-top:0; }

@media (max-width:767px) {
  /* Reserve enough top space that the breadcrumb row clears the fixed menu
     (measured menu bottom ~82px) at scrollY=0 with a deliberate gap. */
  /* Compact mobile header: reserve only the real header height so there is no
     empty white band under the menu/logo/cart row and breadcrumbs sit right
     after the chrome (menu control is ~62px tall). */
  :root { --vs-fixed-header-height:66px; --vs-page-top-gap:16px; }
  .vs-breadcrumbs {
    flex-wrap: wrap;
    overflow-x: visible;
    max-width: 100%;
    padding-bottom: 2px;
  }
  .vs-breadcrumbs__current { white-space: normal; }

  /* PDP title container itself must align to the mobile content gutter.
     Webflow sets .center-title { align-self:center; max-width:70% }, which
     inset the whole block (~43px); text-align alone is insufficient. */
  .container.buket {
    padding-left: var(--vs-gutter-mobile);
    padding-right: var(--vs-gutter-mobile);
  }
  .container.buket .center-title {
    align-self: stretch;
    max-width: 100%;
    text-align: left;
    margin-left: 0;
  }
  .container.buket .center-title h1 {
    text-align: left;
    margin: 0;
    padding-left: 0;
  }
  .container.buket .center-title .text-block-6 {
    right: 0; /* keep eyebrow within the block, no right overflow */
  }
}

/* Smallest phones: keep the whole header row (menu + logo + cart) visible. */
@media (max-width: 400px) {
  .upper-panal .menu-panel .container.abs.w-container { gap: 8px; }
  .upper-panal .menu-panel .cartblock { gap: 10px; }
  .upper-panal .menu-panel .logo-head { width: 64px; }
}


/* =============================================================================
   Canonical public chrome (header)
   Gutter owner for absolute header controls = margins on .menubutton / .cartblock.
   Absolute children ignore container padding — do not put page gutter there.
   Brand frame comes from *-ru.webflow.css; this layer must NOT strip border.
   ============================================================================= */

body.vs-has-fixed-header .upper-panal {
  width: 100%;
  background: transparent;
  border-bottom: 0;
}

body.vs-has-fixed-header .menu-panel {
  width: 100%;
}

/* Homepage: hero sits under transparent header */
body.vs-has-fixed-header.vs-home {
  padding-top: var(--vs-bx-panel-height, 0px);
}

body.vs-has-fixed-header {
  padding-top: calc(var(--vs-fixed-header-height) + var(--vs-bx-panel-height, 0px));
}

body.vs-has-fixed-header .upper-panal {
  top: var(--vs-bx-panel-height, 0px);
}

.upper-panal .menu-panel .container.abs.w-container {
  left: 50%;
  right: auto;
  width: min(100%, var(--vs-container-max));
  max-width: var(--vs-container-max);
  transform: translateX(-50%);
  box-sizing: border-box;
  padding-left: 0;
  padding-right: 0;
  overflow: visible;
}

.upper-panal .menu-panel .menubutton {
  box-sizing: border-box;
  width: 126px;
  height: 62px;
  margin-left: var(--vs-gutter-desktop);
  margin-right: 0;
  left: 0;
  right: auto;
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: transparent;
  color: inherit;
  font: inherit;
  text-transform: uppercase;
  appearance: none;
  -webkit-appearance: none;
  overflow: visible;
  cursor: pointer;
}

/* Menu button hover only on real hover/fine-pointer devices; on touch the
   press feedback comes from :active, never a retained hover fill. */
@media (hover: hover) and (pointer: fine) {
  .upper-panal .menu-panel .menubutton:hover {
    color: #fff;
    background-color: #000;
  }
}
.upper-panal .menu-panel .menubutton:active {
  color: #fff;
  background-color: #000;
}
/* Neutralize the legacy unconditional `.menubutton:hover` (webflow layer) on
   touch/coarse pointers so hover styling is never retained after a tap. */
@media (hover: none), (pointer: coarse) {
  .upper-panal .menu-panel .menubutton:hover,
  .menubutton:hover {
    color: inherit;
    background-color: transparent;
  }
}

.upper-panal .menu-panel .cartblock {
  margin-right: var(--vs-gutter-desktop);
  margin-left: 0;
  right: 0;
  left: auto;
  padding-right: 0;
  overflow: visible;
}

.upper-panal .menu-panel .logo-link,
.upper-panal .menu-panel .logo-head {
  display: block;
  max-width: 100%;
}

.close-menu {
  border: 0;
  background: transparent;
  color: inherit;
  appearance: none;
  cursor: pointer;
}

.menubutton:focus-visible,
.close-menu:focus-visible,
.swiper-button-prev:focus-visible,
.swiper-button-next:focus-visible {
  outline: 3px solid var(--vs-focus);
  outline-offset: 2px;
}

/* Cart icon wrapper is the positioning context for its badge (the badge is
   nested inside the icon span so it anchors to the actual bag, never the header
   or viewport). */
.upper-panal .menu-panel .cartblock .cart-container,
.upper-panal .menu-panel .cartblock .vs-header-cart,
.upper-panal .menu-panel .cartblock .cart-link {
  overflow: visible;
}
.upper-panal .menu-panel .cartblock .vs-header-cart__icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 32px;
  line-height: 0;
  overflow: visible;
}
.upper-panal .menu-panel .cartblock .vs-header-cart__icon > svg {
  display: block;
  width: 24px;
  height: 32px;
}

/* Cart badge: filled green circle anchored to the bag's upper-right corner with
   deliberate overlap (positioning context = the 24x32 cart-icon wrapper, not the
   header/viewport). One digit = circle, two+ digits = capsule widening left so it
   stays attached to the corner; digit optically centered. Self-contained. */
.upper-panal .menu-panel .cartblock .vs-header-cart__badge,
.upper-panal .menu-panel .cartblock .cart-num,
.vs-header-cart__badge,
.cart-num {
  position: absolute;
  inset: auto;
  bottom: auto;
  left: auto;
  /* ADDENDUM_9 P1.1 micro-tune: badge ~2px higher + ~2px farther right, larger
     diameter and digit for legibility. Cart icon/control/header untouched. */
  top: 1px;
  right: -9px;
  transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 21px;
  height: 21px;
  padding: 0 5px;
  background: #58743c;
  color: #fff;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
  overflow: visible;
  pointer-events: none;
}

@media (max-width: 991px) {
  .upper-panal .menu-panel .menubutton {
    margin-left: var(--vs-gutter-tablet);
  }
  .upper-panal .menu-panel .cartblock {
    margin-right: var(--vs-gutter-tablet);
  }
}

@media (max-width: 767px) {
  /* Canonical mobile header: one flex row, menu group left, logo+cart group
     right. Logo belongs to the right controls group (no independent centering).

     Root cause of the "stuck/floating block at the top" regression: the webflow
     base makes `.container.abs` a zero-height absolute box offset by
     `margin-top:20px`, so the mobile flex row was centred on the y=20 line and
     the 62px menu button overflowed to y=-11 (clipped above the viewport). Give
     the row a real header-height band anchored at the top so menu/logo/cart sit
     inside the chrome with deliberate top clearance and share one centre line. */
  .upper-panal .menu-panel .container.abs.w-container {
    top: 0;
    margin-top: 0;
    height: var(--vs-fixed-header-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }
  .upper-panal .menu-panel .menubutton {
    position: relative;
    left: auto;
    right: auto;
    /* Keep the canonical bordered rectangle + broken-corner frame + undistorted
       hamburger, but size it to the compact mobile band so it clears the top
       edge (no longer a tall control jammed against y=0). */
    width: 116px;
    height: 48px;
    min-height: 44px;
    padding: 6px 12px;
    margin-top: 0;
    margin-left: var(--vs-header-safe-left);
    margin-right: 0;
    flex: 0 0 auto;
  }
  /* Normalize inherited offsets so menu, logo and cart share one center line. */
  .upper-panal .menu-panel .menubutton .html-embed-3 {
    margin-top: 0;
    display: inline-flex;
    align-items: center;
  }
  .upper-panal .menu-panel .cartblock {
    position: relative;
    left: auto;
    right: auto;
    margin-top: 0; /* reset inherited ≤479 margin-top:11px that broke baseline */
    margin-left: auto;
    margin-right: var(--vs-header-safe-right);
    padding-right: 0;
    display: flex;
    align-items: center;
    gap: 16px; /* deliberate logo/cart gap */
    max-width: none;
    flex: 0 0 auto;
  }
  .upper-panal .menu-panel .logo-link {
    position: static; /* was fixed/centered — now flows in the right group */
    left: auto;
    top: auto;
    transform: none;
    margin: 0;
    order: 0; /* logo immediately left of cart */
    flex: 0 0 auto;
    pointer-events: auto;
  }
  .upper-panal .menu-panel .logo-head {
    width: var(--vs-mobile-logo-width);
    height: auto;
    max-height: 40px;
    margin: 0;
    display: block;
  }
  .upper-panal .menu-panel .cartblock .cart-container,
  .upper-panal .menu-panel .cartblock .vs-header-cart {
    position: relative;
    overflow: visible;
    flex: 0 0 auto;
    order: 1; /* cart after the logo */
  }
  .upper-panal .menu-panel .cartblock .cart-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 44px;
    min-height: 44px;
    padding-right: 6px;
  }
  /* Badge geometry comes from the canonical green-circle rule above; no mobile
     override needed (kept anchored to the cart icon's upper-right). */
}


.section { min-width:0 !important; max-width:100%; }
html, body { overflow-x:clip; }

.vs-container,
.container.w-container,
.vs-page-top.container.w-container {
  box-sizing:border-box;
  width:min(100%, var(--vs-container-max));
  max-width:var(--vs-container-max);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--vs-gutter-desktop);
  padding-right:var(--vs-gutter-desktop);
}

@media (max-width:991px) {
  .vs-container,
  .container.w-container,
  .vs-page-top.container.w-container {
    padding-left:var(--vs-gutter-tablet);
    padding-right:var(--vs-gutter-tablet);
  }
}

@media (max-width:767px) {
  .vs-container,
  .container.w-container,
  .vs-page-top.container.w-container {
    padding-left:var(--vs-gutter-mobile);
    padding-right:var(--vs-gutter-mobile);
  }
}

.vs-page-hero .div-block-19 {
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:16px;
  align-items:end;
}

.vs-page-hero h1 {
  margin:0;
  font:400 50px/1.1 var(--vs-font-sans);
  letter-spacing:1px;
  text-transform:uppercase;
}

@media (max-width:767px) {
  .vs-page-hero h1 { font-size:36px; line-height:1.05; }
}

.vs-article {
  max-width:840px;
  margin:0 auto;
  padding:24px 0 80px;
  color:var(--vs-ink);
  font:400 16px/1.65 var(--vs-font-sans);
}

.vs-article h1 { margin:0 0 16px; font:400 40px/1.15 var(--vs-font-sans); }
.vs-article__lead { margin:0 0 32px; color:var(--vs-muted); font-size:18px; line-height:1.55; }
.vs-article h2 { margin:40px 0 12px; font:400 24px/1.3 var(--vs-font-sans); }
.vs-article h3 { margin:28px 0 10px; font:400 18px/1.35 var(--vs-font-sans); }
.vs-article p, .vs-article li { margin:0 0 16px; }
.vs-article ul, .vs-article ol { margin:0 0 20px; padding-left:1.25em; }
.vs-article a { color:inherit; text-decoration:underline; overflow-wrap:anywhere; }

.vs-not-found { max-width:640px; padding:24px 0 80px; }
.vs-not-found h1 { margin:0 0 12px; font:400 40px/1.1 var(--vs-font-sans); }
.vs-not-found__lead { margin:0 0 24px; color:var(--vs-muted); line-height:1.6; }
.vs-not-found__actions { display:flex; flex-wrap:wrap; gap:12px; }

.controls .swiper-button-prev,
.controls .swiper-button-next,
.swiper-button-prev.pic,
.swiper-button-next.pic,
.swiper-button-prev.art1,
.swiper-button-next.art1,
.swiper-button-prev.art2,
.swiper-button-next.art2,
.swiper-button-prev.inst,
.swiper-button-next.inst,
.swiper-button-prev.sub,
.swiper-button-next.sub {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  min-height:44px;
  border:0;
  background:transparent;
  color:inherit;
  cursor:pointer;
}

.slider-pictures.vs-detail-gallery--single .swiper-slide,
.slider-pictures.vs-detail-gallery--single .slidepic-buket {
  width: 100%;
}
.slider-pictures.vs-detail-gallery--single .controls {
  display: none;
}


/* Section spacers: never viewport-tall */
.section._50h {
  height: var(--vs-space-6, 48px) !important;
  min-height: 0 !important;
  max-height: var(--vs-space-7, 64px) !important;
  display: block !important;
}
@media (min-width: 768px) {
  .section._50h {
    height: 50px !important;
    max-height: 80px !important;
  }
}

/* Catalog/internal heroes: content-driven, no empty phone band */
@media (max-width: 767px) {
  body.vs-has-fixed-header .banner,
  body.vs-has-fixed-header .banner.wf-section,
  .banner {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  .div-block-19 { height: auto !important; min-height: 0 !important; }
  .mobphonr,
  ._1pgconatct { display: none !important; }
  .vs-page-hero h1 { font-size: 32px; line-height: 1.1; letter-spacing: 0.02em; }
}

/* Quick order title readability */
#order h2.vs-quick-order__title,
#order .vs-quick-order__title {
  margin: 0 0 24px;
  color: var(--vs-ink, #252822);
  font: 400 24px/1.25 var(--vs-font-sans, "Proxima Nova", Arial, sans-serif);
  letter-spacing: 0.02em;
  text-transform: none;
}
@media (min-width: 1024px) {
  #order h2.vs-quick-order__title,
  #order .vs-quick-order__title {
    margin-bottom: 32px;
    font-size: 32px;
    line-height: 1.2;
  }
}
#order form[name="SIMPLE_FORM_1"] .chek-blochk {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (min-width: 1024px) {
  #order form[name="SIMPLE_FORM_1"] .chek-blochk {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
#order form[name="SIMPLE_FORM_1"] .chek-blochk br { display: none !important; }
#order form[name="SIMPLE_FORM_1"] div:has(input[name="form_date_3"]) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
#order form[name="SIMPLE_FORM_1"] div:has(input[name="form_date_3"]) > label {
  grid-row: 1;
}
#order form[name="SIMPLE_FORM_1"] input[name="form_date_3"] {
  grid-row: 2;
  grid-column: 1;
  padding-right: 52px;
}
#order form[name="SIMPLE_FORM_1"] .calendar-icon,
#order form[name="SIMPLE_FORM_1"] img.calendar-icon {
  grid-row: 2;
  grid-column: 1;
  justify-self: end;
  align-self: center;
  width: 22px;
  height: 22px;
  margin: 0 12px 0 0;
  padding: 11px;
  box-sizing: content-box;
  border: 0;
  cursor: pointer;
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='1'/%3E%3Cpath d='M3 10h18'/%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3C/svg%3E");
}


/* ===== Bitrix admin panel: single offset owner ===== */
#panel {
  height: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
}
#bx-panel,
#bx-panel.bx-panel-fixed {
  position: fixed !important;
  top: 0 !important;
  left: 0;
  right: 0;
  z-index: 1100;
}
/* Compensation only on site chrome — never as top on #bx-panel itself */
body.vs-has-fixed-header {
  padding-top: calc(var(--vs-fixed-header-height) + var(--vs-bx-panel-height, 0px));
}
body.vs-has-fixed-header.vs-home {
  padding-top: var(--vs-bx-panel-height, 0px);
}
body.vs-has-fixed-header .upper-panal {
  top: var(--vs-bx-panel-height, 0px);
}
html:not(.vs-bx-panel-on) {
  --vs-bx-panel-height: 0px;
}

/* Legacy vs-page-hero flatteners disabled — use .vs-split-hero */
.vs-page-hero .div-block-19 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  align-items: stretch;
  min-height: 280px;
  height: auto;
}

/* PR20 mobile UI — canonical floating menu remains intentional; do not add content spacers for scroll overlap. */

/* ADDENDUM_9 P1.2 — flower-subscription dynamic monthly estimate on the PDP.
   Fits the existing .vs-request block; readable at 320px, no horizontal overflow. */
.vs-request .vs-sub-price {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0 0 8px;
  min-width: 0;
}
.vs-request .vs-sub-price__label {
  font-size: 13px;
  line-height: 1.3;
  opacity: 0.85;
}
.vs-request .vs-sub-price__value {
  font-weight: 700;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.vs-request .vs-sub-price__calc {
  font-size: 13px;
  line-height: 1.3;
  opacity: 0.75;
}
.vs-request .vs-sub-price__calc:empty {
  display: none;
}
