/* ==========================================================================
   VIVORA Home — по официалния дизайн (@_1-HOME PAGE_VIVORA, канава 1920px).
   Цветовете са измерени директно от дизайнерския файл.
   ========================================================================== */

.vh{
	/* --- палитра (измерена от дизайна) --- */
	--vh-ink:     #1A1C19;
	--vh-dgreen:  #163224;
	--vh-btn:     #142F1E;
	--vh-green:   #34584A;
	--vh-bar:     #1A3725;
	--vh-teal:    #2A9D8F;
	--vh-orange:  #F4A261;
	--vh-beige:   #EDE8E2;
	--vh-beige2:  #F3E7DB;
	--vh-peach:   #FEEEE1;
	--vh-gold:    #A8895F;
	--vh-gold2:   #E0A86A;
	--vh-mut:     #5B6560;
	--vh-line:    #E4E0DA;
	--vh-panel:   #FAFAF8;

	/* линиите продукти */
	--vh-tint1:   #EDF0ED;
	--vh-tint2:   #FDF0DF;
	--vh-tint3:   #F4F1E4;
	--vh-c1:      #1B4A3B;
	--vh-c2:      #BB5A17;
	--vh-c3:      #5C6E2A;

	/* ритъм */
	--vh-gap:     clamp(56px, 5vw, 96px);
	--vh-radius:  15px;

	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	color: var(--vh-ink);
}

.vh *,
.vh *::before,
.vh *::after{ box-sizing: border-box; }

.vh img{ max-width: 100%; }

/* WooCommerce цените на промоция носят screen-reader текст („Original price was…“).
   Темата обикновено го крие, но го подсигуряваме тук, за да са чисти цените
   независимо кой стил се е заредил. */
.vh .screen-reader-text{
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0);
	white-space: nowrap; border: 0;
}

/* --- контейнер ------------------------------------------------------------ */
.vh .vh-wrap{
	max-width: 1760px;
	margin-inline: auto;
	padding-inline: clamp(16px, 2.1vw, 40px);
}

/* --- секция --------------------------------------------------------------- */
.vh .vh-sec{ padding-block: var(--vh-gap); }

/* --- заглавие ------------------------------------------------------------- */
.vh .vh-h2{
	font-family: inherit;
	font-size: clamp(22px, 2.1vw, 38px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .4px;
	color: var(--vh-dgreen);
	text-align: center;
	margin: 0 0 clamp(28px, 2.6vw, 48px);
	text-wrap: balance;
}

/* --- бутони (в дизайна са почти правоъгълни) ------------------------------ */
.vh .vh-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 17px 32px;
	border: 0;
	border-radius: 2px;
	font: 700 clamp(12px, .78vw, 14px)/1 'Montserrat', sans-serif;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .22s ease, color .22s ease, border-color .22s ease;
}

.vh .vh-btn--dark{
	background: var(--vh-btn);
	color: #fff;
}
.vh .vh-btn--dark:hover,
.vh .vh-btn--dark:focus-visible{ background: var(--vh-green); color: #fff; }

.vh .vh-btn--ghost{
	background: transparent;
	color: var(--vh-dgreen);
	border: 1px solid currentColor;
}
.vh .vh-btn--ghost:hover,
.vh .vh-btn--ghost:focus-visible{ background: var(--vh-dgreen); color: #fff; }

.vh a:focus-visible,
.vh button:focus-visible{
	outline: 2px solid var(--vh-teal);
	outline-offset: 3px;
}

/* --- кръгли стрелки за карусели ------------------------------------------- */
.vh .vh-navbtn{
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	z-index: 3;
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	padding: 0;
	border: 1px solid var(--vh-line);
	border-radius: 50%;
	background: #fff;
	color: var(--vh-dgreen);
	cursor: pointer;
	box-shadow: 0 6px 20px rgba(0, 0, 0, .10);
	transition: background-color .2s ease, color .2s ease, opacity .2s ease;
}
.vh .vh-navbtn:hover{ background: var(--vh-dgreen); color: #fff; }
.vh .vh-navbtn:disabled{ opacity: .3; cursor: default; }
.vh .vh-navbtn--prev{ left: 0; rotate: 180deg; }
.vh .vh-navbtn--next{ right: 0; }

/* Стрелките стоят В страничното поле, а не върху снимките (както е в дизайна):
   релсата получава отстъп, колкото е бутонът, и трака се свива вътре в него. */
.vh .vh-favs__rail,
.vh .vh-needs__rail,
.vh .vh-social__rail,
.vh .vh-testimonials__rail,
.vh .vh-prelated__rail{
	padding-inline: clamp(46px, 3.4vw, 68px);
}
.vh .vh-navbtn .vh-ic{ width: 20px; height: 20px; }

/* --- икони ---------------------------------------------------------------- */
.vh .vh-ic{ width: 24px; height: 24px; display: block; }

/* --- скролиращи писти ----------------------------------------------------- */
.vh .vh-rail{
	position: relative;
}
.vh .vh-track{
	display: flex;
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.vh .vh-track::-webkit-scrollbar{ display: none; }
.vh .vh-track > *{ scroll-snap-align: start; flex: 0 0 auto; }

@media (prefers-reduced-motion: reduce) {
	.vh .vh-track{ scroll-behavior: auto; }
	.vh *{ transition-duration: .01ms !important; }
}

/* ==========================================================================
   СЕКЦИЯ: НАЙ-ПРЕДПОЧИТАНИ ПРОДУКТИ
   ========================================================================== */
.vh .vh-favs__rail{ position: relative; }

.vh .vh-favs__track{
	display: flex;
	gap: clamp(14px, 1.2vw, 24px);
	margin: 0;
	padding: 4px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.vh .vh-favs__track::-webkit-scrollbar{ display: none; }

.vh .vh-fav{
	scroll-snap-align: start;
	/* 8 видими (по дизайна) — множителят ТРЯБВА да е същият clamp като gap-а на трака,
	   иначе картите излизат по-широки и се побират само 7. */
	flex: 0 0 calc((100% - 7 * clamp(14px, 1.2vw, 24px)) / 8);
	min-width: 0;
	text-align: left;
}

.vh .vh-fav__media{
	display: block;
	aspect-ratio: 3 / 4;
	border-radius: var(--vh-radius);
	overflow: hidden;
	background: #fff;
}
.vh .vh-fav__img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: scale .35s ease;
}
.vh .vh-fav:hover .vh-fav__img{ scale: 1.04; }

.vh .vh-fav__name{
	margin: 14px 0 4px;
	font-size: clamp(12px, .74vw, 13.5px);
	font-weight: 800;
	letter-spacing: .3px;
	line-height: 1.3;
}
.vh .vh-fav__name a{ color: var(--vh-ink); text-decoration: none; }
.vh .vh-fav__name a:hover{ color: var(--vh-teal); }

.vh .vh-fav__line,
.vh .vh-fav__size{
	margin: 0 0 3px;
	font-size: clamp(11px, .66vw, 12.5px);
	font-weight: 500;
	color: var(--vh-mut);
}

.vh .vh-fav__foot{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 8px;
}
.vh .vh-fav__price{
	font-size: clamp(13px, .8vw, 15px);
	font-weight: 800;
	color: var(--vh-ink);
}
.vh .vh-fav__price del{ font-weight: 500; opacity: .5; margin-right: 4px; }
.vh .vh-fav__price ins{ text-decoration: none; }

.vh .vh-cartbtn{
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border: 1px solid var(--vh-line);
	border-radius: 50%;
	color: var(--vh-dgreen);
	background: #fff;
	transition: background-color .2s ease, color .2s ease;
}
.vh .vh-cartbtn:hover{ background: var(--vh-dgreen); color: #fff; }
.vh .vh-cartbtn .vh-ic{ width: 16px; height: 16px; }
.vh .vh-cartbtn.loading{ opacity: .5; pointer-events: none; }
.vh .vh-cartbtn.added::after{ content: ''; }

@media (max-width: 1100px) { .vh .vh-fav{ flex-basis: calc((100% - 3 * 18px) / 4); } }
@media (max-width: 1100px) { .vh .vh-fav{ flex-basis: calc((100% - 3 * 18px) / 4); } }
@media (max-width: 780px)  { .vh .vh-fav{ flex-basis: calc((100% - 2 * 16px) / 2.4); } }
@media (max-width: 480px)  { .vh .vh-fav{ flex-basis: 62%; } }

/* ==========================================================================
   СЕКЦИЯ: ИЗБЕРИ СВОЯ ПАКЕТ И СПЕСТИ
   ========================================================================== */
.vh .vh-bundles__grid{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: clamp(18px, 1.6vw, 34px);
	margin: 0;
	padding: 0;
	list-style: none;
}
.vh .vh-bundle{ text-align: center; }

.vh .vh-bundle__media{
	display: block;
	aspect-ratio: 1 / 1;
	border-radius: var(--vh-radius);
	overflow: hidden;
}
.vh .vh-bundle__img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: scale .35s ease;
}
.vh .vh-bundle:hover .vh-bundle__img{ scale: 1.04; }

.vh .vh-bundle__name{
	margin: 10px 0 12px;
	font-size: clamp(13px, .82vw, 16px);
	font-weight: 500;
	line-height: 1.35;
}
.vh .vh-bundle__name a{ color: var(--vh-ink); text-decoration: none; }
.vh .vh-bundle__name a:hover{ color: var(--vh-teal); }

.vh .vh-bundle__price{
	margin: 0;
	font-size: clamp(15px, 1vw, 19px);
	font-weight: 800;
	color: var(--vh-dgreen);
}
.vh .vh-bundle__price del{ font-weight: 500; opacity: .45; margin-right: 6px; }
.vh .vh-bundle__price ins{ text-decoration: none; }


/* ===== СЕКЦИЯ: hero ===== */
/* ============ VIVORA — HERO ============ */
.vh .vh-hero{
  --s: 1px;                                  /* design pixel; 1px === 1px on the 1920 canvas */
  position: relative;
  background: var(--vh-beige);
  color: var(--vh-ink);
  overflow: clip;
}
@media (min-width:1200px){
  .vh .vh-hero{ --s: calc(100vw / 1920); }       /* whole composition scales with the photo */
}

.vh .vh-hero__grid{ display: grid; grid-template-columns: 1fr; }
@media (min-width:1200px){
  .vh .vh-hero__grid{ grid-template-columns: 38.5417% 61.4583%; align-items: center; }
}

/* снимката е изрязана от x=740 (точно след запечения текст), затова копието
   вече се събира в колоната си и не ляга върху запечения надпис */
.vh .vh-hero__copy{
  position: relative;
  z-index: 2;
  padding: calc(var(--s) * 56) 24px calc(var(--s) * 40);
}
@media (min-width:1200px){
  .vh .vh-hero__copy{
    padding-left: max(40px, calc((100vw - 1760px) / 2 + 40px));  /* lines up with the .vh-wrap gutter */
    padding-right: 0;
    padding-top: calc(var(--s) * 50);
    padding-bottom: 0;
  }
}

.vh .vh-hero__eyebrow{
  margin: 0;
  font-size: calc(var(--s) * 20);
  font-weight: 600;
  letter-spacing: 0.09em;
  line-height: 1.2;
  color: var(--vh-gold);
}

.vh .vh-hero__title{
  margin: calc(var(--s) * 16) 0 0;
  font-size: clamp(30px, 6vw, 60px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--vh-dgreen);
}
@media (min-width:1200px){
  .vh .vh-hero__title{ font-size: calc(var(--s) * 84); white-space: nowrap; }
}

.vh .vh-hero__lead{
  margin: calc(var(--s) * 12) 0 0;
  max-width: 23.1em;
  font-size: clamp(16px, 1.9vw, 22px);
  font-weight: 400;
  line-height: 1.42;
  color: var(--vh-ink);
}
@media (min-width:1200px){
  /* fixed width so the break lands after "момент", overflowing the narrow column */
  .vh .vh-hero__lead{ font-size: calc(var(--s) * 26); width: 23.1em; max-width: none; }
}

.vh .vh-hero__actions{
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--s) * 34);
  margin-top: calc(var(--s) * 37);
}
@media (min-width:1200px){
  .vh .vh-hero__actions{ flex-wrap: nowrap; }
}
/* sized here so the row is deterministic whatever the global .vh-btn sets */
.vh .vh-hero .vh-btn{
  box-sizing: border-box;
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: calc(var(--s) * 60);
  padding-block: 0;
  padding-inline: calc(var(--s) * 34);
  font-size: calc(var(--s) * 16);
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1;
  text-transform: uppercase;
  border-radius: 2px;
  white-space: nowrap;
}
@media (max-width:1199px){
  .vh .vh-hero__actions{ gap: 16px; margin-top: 28px; }
  .vh .vh-hero .vh-btn{ min-height: 52px; padding-inline: 26px; font-size: 14px; }
}

.vh .vh-hero__usps{
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--s) * 40) calc(var(--s) * 60);
  margin: calc(var(--s) * 57) 0 0;
  padding: 0;
  list-style: none;
}
@media (min-width:1200px){
  .vh .vh-hero__usps{ flex-wrap: nowrap; }
}
.vh .vh-hero__usp{
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--s) * 13);
  text-align: center;
}
.vh .vh-hero__usp-icon{
  box-sizing: border-box;
  display: grid;
  place-items: center;
  flex: none;
  width: calc(var(--s) * 64);
  height: calc(var(--s) * 64);
  border: 1px solid var(--vh-ink);
  border-radius: 50%;
  color: var(--vh-ink);
}
.vh .vh-hero__usp-icon svg{ width: calc(var(--s) * 34); height: calc(var(--s) * 34); display: block; }
.vh .vh-hero__usp-label{
  font-size: calc(var(--s) * 14);
  font-weight: 700;
  letter-spacing: 0.5px;
  line-height: calc(var(--s) * 22);
  text-transform: uppercase;
  color: var(--vh-ink);
}
@media (max-width:1199px){
  /* aligned columns rather than ragged content-width flex items */
  .vh .vh-hero__usps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px 20px; margin-top: 40px; }
  .vh .vh-hero__usp{ gap: 12px; }
  .vh .vh-hero__usp-icon{ width: 56px; height: 56px; }
  .vh .vh-hero__usp-icon svg{ width: 30px; height: 30px; }
  .vh .vh-hero__usp-label{ font-size: 12px; line-height: 1.5; }
}
@media (max-width:600px){
  .vh .vh-hero__usps{ grid-template-columns: repeat(2, 1fr); }
}

.vh .vh-hero__media{ position: relative; order: -1; }
@media (min-width:1200px){ .vh .vh-hero__media{ order: 0; } }

/* native aspect at every width, so the % overlay below stays registered to the baked graphic */
.vh .vh-hero__img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1180 / 730;
  object-fit: cover;
}

/* transparent hit area over the play button + caption baked into the photo */
.vh .vh-hero__play{
  position: absolute;
  left: 64.4915%;
  top: 29.04%;
  width: 23.7288%;
  height: 14.25%;
  display: flex;
  align-items: center;
  border-radius: 8px;
  text-decoration: none;
}
.vh .vh-hero__play-ring{
  height: 100%;
  aspect-ratio: 1;                            /* sits exactly on the baked circle */
  border-radius: 50%;
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
}
.vh .vh-hero__play:hover .vh-hero__play-ring,
.vh .vh-hero__play:focus-visible .vh-hero__play-ring{
  transform: scale(1.06);
  background-color: rgba(255,255,255,.14);
  box-shadow: 0 0 0 2px rgba(255,255,255,.85);
}
.vh .vh-hero__play:focus-visible{ outline: 2px solid var(--vh-dgreen); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce){
  .vh .vh-hero__play-ring{ transition: none; }
  .vh .vh-hero__play:hover .vh-hero__play-ring,
.vh .vh-hero__play:focus-visible .vh-hero__play-ring{ transform: none; }
}


/* ===== СЕКЦИЯ: needs ===== */
/* ============ VIVORA — ИЗБЕРИ СПОРЕД НУЖДАТА СИ ============ */
/* Мерки от дизайна (канава 1920): карта 280x303, разстояние 20, значка Ø70 с център
   19px над долния ръб на снимката. Бялата значка е ЗАПЕЧЕНА в дъното на всяка снимка —
   затова HTML значката е със същия размер и позиция и я покрива точно. */

.vh .vh-needs{ background: #fff; }

.vh .vh-needs__rail{ position: relative; }

.vh .vh-needs__track{
	display: flex;
	gap: 20px;
	margin: 0;
	padding: 0 4px 4px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.vh .vh-needs__track::-webkit-scrollbar{ display: none; }

.vh .vh-need{
	scroll-snap-align: start;
	flex: 0 0 calc((100% - 5 * 20px) / 6); /* 6 видими — множителят = gap-а на трака (20px) */
	min-width: 0;
}

.vh .vh-need__link{
	display: block;
	text-align: center;
	text-decoration: none;
	color: inherit;
}

.vh .vh-need__media{
	position: relative;
	display: block;
	/* дъното трябва да е свободно за значката, която стърчи под картата */
	margin-bottom: 34px;
}

.vh .vh-need__img{
	display: block;
	width: 100%;
	aspect-ratio: 280 / 303;
	object-fit: cover;
	border-radius: 18px;
}

/* Ø70 при карта 280 → 25% от ширината; центърът стои 19px над долния ръб,
   значи долният ръб на значката е на -16px → -5.28% от височината (303). */
.vh .vh-need__badge{
	position: absolute;
	left: 50%;
	bottom: -5.28%;
	translate: -50% 0;
	width: 25%;
	aspect-ratio: 1;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: #fff;
	color: var(--vh-dgreen);
	transition: background-color .25s ease, color .25s ease;
}
.vh .vh-need__badge svg{ width: 44%; height: 44%; }

.vh .vh-need__link:hover .vh-need__badge,
.vh .vh-need__link:focus-visible .vh-need__badge{
	background: var(--vh-dgreen);
	color: #fff;
}

.vh .vh-need__title{
	display: block;
	font-size: clamp(13px, .8vw, 15.5px);
	font-weight: 800;
	letter-spacing: .4px;
	color: var(--vh-dgreen);
	margin-bottom: 7px;
}

.vh .vh-need__sub{
	display: block;
	font-size: clamp(12px, .74vw, 14px);
	font-weight: 500;
	color: var(--vh-mut);
	line-height: 1.4;
}

@media (max-width: 1200px) { .vh .vh-need{ flex-basis: calc((100% - 4 * 14px) / 5); } }
@media (max-width: 900px)  { .vh .vh-need{ flex-basis: calc((100% - 2 * 20px) / 3); } }
@media (max-width: 680px)  { .vh .vh-need{ flex-basis: calc((100% - 18px) / 2.2); } }
@media (max-width: 420px)  { .vh .vh-need{ flex-basis: 74%; } }

/* Оптичен нудж: кръгчето стъпва върху ръба на снимката, затова иконата
   изглежда леко високо, макар геометрично да е центрирана (измерено 0px). */
.vh .vh-need__badge svg{ transform: translateY(5%); }


/* ===== СЕКЦИЯ: rhythm ===== */
/* ── VIVORA 360° РИТЪМ ─────────────────────────────────────────────── */
.vh .vh-rhythm{
  /* design canvas 1920: dot 108, product image 330 */
  --rh-dot: clamp(72px, 3.57vw + 39.4px, 108px);
  --rh-img: clamp(200px, 11.16vw + 115px, 330px);
  --rh-pad-x: clamp(16px, 2.1vw, 40px);
  --rh-panel: #FAFAF8;
  padding-block: clamp(40px, 3.3vw, 64px);
}

.vh .vh-rhythm .vh-h2{
  margin: 0 0 clamp(16px, 1.15vw, 22px);
}

.vh .vh-rhythm__panel{
  background: var(--rh-panel);
  border-radius: 24px;
  padding: clamp(28px, 2.1vw, 40px) var(--rh-pad-x) clamp(36px, 3.75vw, 72px);
}

/* ── timeline ──────────────────────────────────────────────────────── */
.vh .vh-rhythm__track{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.vh .vh-rhythm__item{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 0;
}

.vh .vh-rhythm__time{
  margin: 0 0 clamp(14px, 1.2vw, 23px);
  font-size: clamp(19px, 0.78vw + 11px, 26px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--vh-ink);
}

/* circle + the 1px rule that links adjacent circles */
.vh .vh-rhythm__node{
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
}

.vh .vh-rhythm__item + .vh-rhythm__item .vh-rhythm__node::before{
  content: "";
  position: absolute;
  top: 50%;
  left: calc(var(--rh-dot) / 2 - 50%);
  width: calc(100% - var(--rh-dot));
  height: 1px;
  background: var(--vh-line);
  transform: translateY(-50%);
}

.vh .vh-rhythm__dot{
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: var(--rh-dot);
  height: var(--rh-dot);
  border: 1px solid var(--vh-line);
  border-radius: 50%;
  background: #FFF;
  color: var(--vh-dgreen);
}

.vh .vh-rhythm__dot svg{
  width: calc(var(--rh-dot) * 0.48);
  height: calc(var(--rh-dot) * 0.48);
  display: block;
}

.vh .vh-rhythm__img{
  display: block;
  flex: 0 0 auto;
  height: var(--rh-img);
  width: auto;
  max-width: 100%;
  object-fit: contain;
  border-radius: 16px;
  margin: clamp(14px, 1.25vw, 24px) 0 clamp(16px, 1.35vw, 26px);
}

.vh .vh-rhythm__name{
  margin: 0 0 clamp(6px, 0.52vw, 10px);
  font-size: clamp(20px, 0.89vw + 12.9px, 30px);
  font-weight: 800;
  line-height: 1.2;
  color: var(--vh-dgreen);
}

.vh .vh-rhythm__desc{
  margin: 0;
  font-size: clamp(16px, 0.89vw + 7.9px, 25px);
  font-weight: 400;
  line-height: 1.35;
  color: var(--vh-mut);
}

.vh .vh-rhythm__cta{
  margin-top: clamp(24px, 2.1vw, 40px);
  text-align: center;
}

/* ── below 900px: horizontal scroll-snap track ─────────────────────── */
@media (max-width: 900px){
  .vh .vh-rhythm__track{
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 260px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: var(--rh-pad-x);
    margin-inline: calc(var(--rh-pad-x) * -1);
    padding-inline: var(--rh-pad-x);
    -webkit-overflow-scrolling: touch;
  }
  .vh .vh-rhythm__item{
    scroll-snap-align: center;
  }
}

@media (max-width: 480px){
  .vh .vh-rhythm__panel{
    border-radius: 18px;
  }
}


/* ===== СЕКЦИЯ: lines ===== */
/* ============ VIVORA — ТРИ ЛИНИИ. ЕДНА ФИЛОСОФИЯ. ============ */
/* Тоновете и цветовете са взети с пипетка от дизайнерския файл (слой 064):
   карта 1 #EDF0ED / #1B4A3B · карта 2 #FDF0DF / #BB5A17 · карта 3 #F4F1E4 / #5C6E2A.
   Картата в дизайна е ~560x731. */

.vh .vh-lines__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(16px, 1.9vw, 36px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh .vh-line{
	position: relative;
	aspect-ratio: 560 / 731;
	border-radius: 20px;
	overflow: hidden;
	isolation: isolate;
}

.vh .vh-line--1{ background: var(--vh-tint1); --vh-line-c: var(--vh-c1); }
.vh .vh-line--2{ background: var(--vh-tint2); --vh-line-c: var(--vh-c2); }
.vh .vh-line--3{ background: var(--vh-tint3); --vh-line-c: var(--vh-c3); }

/* Картината е самата композиция от дизайна върху неговия тон (текстът е изчистен от
   нея) — затова пълни цялата карта и стои ПОД HTML текста. Тонът отдолу е същият,
   така че при мащабиране няма видим шев. */
.vh .vh-line__img{
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}

.vh .vh-line__copy{
	position: relative;
	z-index: 2;
	padding: clamp(20px, 1.8vw, 34px);
	max-width: 74%;
}

.vh .vh-line__mark{
	display: block;
	font-size: clamp(10px, .68vw, 13px);
	font-weight: 700;
	letter-spacing: 3px;
	color: var(--vh-line-c);
	opacity: .85;
	margin-bottom: clamp(8px, .7vw, 14px);
}

.vh .vh-line__title{
	margin: 0 0 clamp(8px, .7vw, 14px);
	font-size: clamp(18px, 1.6vw, 30px);
	font-weight: 800;
	letter-spacing: .3px;
	line-height: 1.15;
	color: var(--vh-line-c);
}

.vh .vh-line__text{
	margin: 0 0 clamp(14px, 1.2vw, 24px);
	font-size: clamp(12px, .82vw, 15.5px);
	font-weight: 500;
	line-height: 1.55;
	color: var(--vh-ink);
}

.vh .vh-line__btn{
	padding: clamp(10px, .8vw, 15px) clamp(14px, 1.2vw, 24px);
	color: var(--vh-ink);
	border-color: rgba(26, 28, 25, .45);
	background: rgba(255, 255, 255, .35);
}
.vh .vh-line__btn:hover,
.vh .vh-line__btn:focus-visible{
	background: var(--vh-line-c);
	border-color: var(--vh-line-c);
	color: #fff;
}

@media (max-width: 900px) {
	.vh .vh-lines__grid{ grid-template-columns: 1fr; }
	.vh .vh-line{ aspect-ratio: 3 / 2; }
	.vh .vh-line__copy{ max-width: 52%; }
}
@media (max-width: 520px) {
	.vh .vh-line{ aspect-ratio: 4 / 5; }
	.vh .vh-line__copy{ max-width: 68%; }
}


/* ===== СЕКЦИЯ: benefits ===== */
.vh .vh-benefits{
  --vhb-pad: clamp(24px, 14.9px + 2.35vw, 60px);
  --vhb-icon: clamp(30px, 27.5px + 0.5vw, 37px);
  --vhb-colgap: clamp(28px, 20.4px + 3vw, 78px);
  --vhb-rowgap: clamp(30px, 25.7px + 1.11vw, 47px);
  --vhb-icongap: clamp(13px, 11.7px + 0.27vw, 17px);
  box-sizing: border-box;
  padding-inline: 40px;
  padding-block: clamp(28px, 20.9px + 1.83vw, 56px);
}
.vh .vh-benefits *,
.vh .vh-benefits *::before,
.vh .vh-benefits *::after{ box-sizing: border-box; }
.vh .vh-benefits .vh-benefits__box{
  max-width: 1760px;
  margin-inline: auto;
  padding: var(--vhb-pad);
  background: var(--vh-peach);
  border-radius: 20px;
}
.vh .vh-benefits .vh-benefits__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--vhb-colgap);
  row-gap: var(--vhb-rowgap);
  margin: 0;
  padding: 0;
  list-style: none;
}
.vh .vh-benefits .vh-benefits__item{
  display: flex;
  align-items: flex-start;
  gap: var(--vhb-icongap);
  margin: 0;
  padding: 0;
  list-style: none;
}
.vh .vh-benefits .vh-benefits__item::before{ content: none; }
.vh .vh-benefits .vh-benefits__item::marker{ content: none; }
.vh .vh-benefits .vh-benefits__icon{
  flex: 0 0 var(--vhb-icon);
  width: var(--vhb-icon);
  height: var(--vhb-icon);
  margin-top: clamp(3px, 2.4px + 0.21vw, 6.5px);
  color: var(--vh-ink);
}
.vh .vh-benefits .vh-benefits__icon svg{ display: block; width: 100%; height: 100%; }
.vh .vh-benefits .vh-benefits__body{ min-width: 0; }
.vh .vh-benefits .vh-benefits__title{
  margin: 0 0 clamp(6px, 5.5px + 0.13vw, 8px);
  font-family: inherit;
  font-size: clamp(19px, 18px + 0.26vw, 23px);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: none;
  color: var(--vh-ink);
}
.vh .vh-benefits .vh-benefits__text{
  margin: 0;
  font-family: inherit;
  font-size: clamp(15px, 14.5px + 0.13vw, 17px);
  font-weight: 400;
  line-height: 1.6;
  color: var(--vh-ink);
}
@media (max-width: 799px){
  .vh .vh-benefits .vh-benefits__grid{ grid-template-columns: minmax(0, 1fr); }
}


/* ===== СЕКЦИЯ: story ===== */
/* ===== VIVORA — "НАШАТА ИСТОРИЯ" (story) ===== */
.vh .vh-story,
.vh .vh-story *{ box-sizing: border-box; }

.vh .vh-story{
  padding-block: clamp(48px, 5vw, 96px);
  padding-inline: clamp(20px, 2.083vw, 40px);
}

.vh .vh-story__inner{
  --vh-story-media: 69.7%;   /* 1226/1760 — measured from the flat */
  --vh-story-body: 32%;
  position: relative;
  max-width: 1760px;
  margin-inline: auto;
  background: var(--vh-beige2);
  border-radius: 20px;
  overflow: hidden;
}

/* ---- left column ---- */
.vh .vh-story__body{
  position: relative;
  z-index: 1;
  width: var(--vh-story-body);
  min-width: 0;
  padding-block: clamp(36px, 3.617vw, 69px) clamp(36px, 7.552vw, 145px);
  padding-inline: clamp(20px, 4.271vw, 82px) clamp(16px, 1.458vw, 28px);
}

.vh .vh-story__mark{
  margin: 0 0 clamp(32px, 4.073vw, 78px);
  font-size: clamp(24px, 1.823vw, 35px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: .114em;      /* = 4px at the 35px design size */
  color: var(--vh-green);
}

.vh .vh-story__eyebrow{
  margin: 0 0 clamp(14px, 1.224vw, 24px);
  font-size: clamp(11px, .677vw, 13px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .154em;      /* = 2px at the 13px design size */
  text-transform: uppercase;
  color: var(--vh-ink);
}

.vh .vh-story__title{
  margin: 0 0 clamp(14px, 1.182vw, 23px);
  font-size: clamp(26px, calc(22.43px + .915vw), 40px);
  font-weight: 800;
  line-height: 1.25;           /* 50px at 40px */
  letter-spacing: -.05em;      /* design tracks the display heading tight */
  color: var(--vh-ink);
}

.vh .vh-story__text{
  margin: 0 0 clamp(20px, 1.542vw, 30px);
  max-width: 29.6em;           /* em keeps the design's 3-line break at any size */
  font-size: clamp(14px, .781vw, 15px);
  line-height: 1.73;           /* 26px at 15px */
  color: var(--vh-ink);
}

.vh .vh-story__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ---- right column ---- */
.vh .vh-story__media{
  position: absolute;
  inset-block: 0;
  right: 0;
  width: var(--vh-story-media);
}

.vh .vh-story__img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  /* convex half-ellipse bulging left: rx 10%, ry 50% */
  border-radius: 10% 0 0 10% / 50% 0 0 50%;
}

/* ---- play control ----
   Кръгът и надписът „ГЛЕДАЙ ВИДЕО“ са ЗАПЕЧЕНИ в снимката (изрязана е от дизайна).
   Затова тук НЕ рисуваме втори — слагаме прозрачна зона за клик точно върху него.
   Мерки от story-visual.jpg (1235x645): кръг ~Ø85 с център (668, 315), надпис до y≈390
   → зона x 600..735, y 270..392. В проценти, за да следва при мащабиране. */
.vh .vh-story__play{
  position: absolute;
  left: 48.58%;
  top: 41.86%;
  width: 10.93%;
  height: 18.91%;
  border-radius: 10px;
  text-decoration: none;
  color: #fff;
}

/* самият бутон/надпис идват от снимката — скриваме нашите */
.vh .vh-story__playbtn,
.vh .vh-story__playlbl{
  display: none;
}

.vh .vh-story__play::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  translate: -50% 0;
  width: 63%;                  /* кръгът е Ø85 при зона 135 широка */
  aspect-ratio: 1;
  border-radius: 50%;
  transition: background-color .25s ease, box-shadow .25s ease;
}

.vh .vh-story__play:hover::before,
.vh .vh-story__play:focus-visible::before{
  background: rgba(255, 255, 255, .14);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .85);
}

.vh .vh-story__play:focus-visible{
  outline: 3px solid #fff;
  outline-offset: 6px;
}

/* ---- responsive ---- */
@media (max-width: 1600px){
  .vh .vh-story__inner{ --vh-story-media: 62%; --vh-story-body: 38%; }
}

@media (max-width: 1200px){
  .vh .vh-story__inner{ --vh-story-media: 54%; --vh-story-body: 46%; }
}

@media (max-width: 899px){
  .vh .vh-story__inner{ --vh-story-body: 100%; }
  .vh .vh-story__body{
    padding-block: clamp(32px, 6vw, 56px);
    padding-inline: clamp(20px, 4.271vw, 40px);
  }
  .vh .vh-story__mark{ margin-bottom: clamp(24px, 5vw, 44px); }
  .vh .vh-story__media{
    position: relative;
    inset: auto;
    width: 100%;
  }
  .vh .vh-story__img{
    height: auto;
    aspect-ratio: 3 / 2;
    border-radius: 0;          /* ellipse cut dropped when stacked */
  }
}

@media (prefers-reduced-motion: reduce){
  .vh .vh-story__play::before{ transition: none; }
}


/* ===== СЕКЦИЯ: testimonials ===== */
/* ===== VIVORA — Отзиви от клиенти (модерни кутийки + слайдер) ===== */
.vh .vh-testimonials{
  background: #fff;
  color: var(--vh-ink);
}

.vh .vh-testimonials__title{
  margin: 0 0 clamp(28px, 2.6vw, 48px);
}

.vh .vh-testimonials__rail{ position: relative; }

.vh .vh-testimonials__track{
  display: flex;
  align-items: stretch;              /* всички кутийки — еднакво високи */
  gap: clamp(16px, 1.4vw, 26px);
  margin: 0;
  padding: 6px 4px 10px;
  list-style: none;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}
.vh .vh-testimonials__track::-webkit-scrollbar{ display: none; }

/* 4 видими кутийки — множителят ТРЯБВА да е същият clamp като gap-а на трака */
.vh .vh-testimonials__card{
  scroll-snap-align: start;
  flex: 0 0 calc((100% - 3 * clamp(16px, 1.4vw, 26px)) / 4);
  min-width: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.2vw, 20px);
  text-align: left;
  background: #fff;
  border: 1px solid var(--vh-line);
  border-radius: 18px;
  padding: clamp(20px, 1.7vw, 30px);
  box-shadow: 0 2px 10px rgba(22, 50, 36, .04);
  transition: box-shadow .28s ease, transform .28s ease, border-color .28s ease;
}
.vh .vh-testimonials__card:hover{
  transform: translateY(-3px);
  border-color: rgba(42, 157, 143, .35);
  box-shadow: 0 14px 32px rgba(22, 50, 36, .10);
}

/* декоративна кавичка в ъгъла */
.vh .vh-testimonials__mark{
  position: absolute;
  right: clamp(16px, 1.4vw, 24px);
  bottom: 2px;
  font-size: clamp(52px, 4.4vw, 78px);
  line-height: 1;
  font-weight: 800;
  color: var(--vh-teal);
  opacity: .12;
  pointer-events: none;
  user-select: none;
}

/* аватар + име/град вляво, звезди вдясно */
.vh .vh-testimonials__head{
  display: flex;
  align-items: center;
  gap: 12px;
}

.vh .vh-testimonials__avatar{
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--vh-beige);
}

.vh .vh-testimonials__who{
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  flex: 1 1 auto;
}
.vh .vh-testimonials__name{
  font-size: clamp(12px, .76vw, 13.5px);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: .7px;
  text-transform: uppercase;
  color: var(--vh-ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.vh .vh-testimonials__city{
  font-size: clamp(10.5px, .66vw, 12px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: .8px;
  text-transform: uppercase;
  color: var(--vh-teal);
}

/* звездите — без размер тук се раздуват до цял екран */
.vh .vh-testimonials__stars{
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  line-height: 0;
  margin-left: auto;
}
.vh .vh-testimonials__stars svg{
  width: 14px;
  height: 14px;
  flex: none;
  fill: var(--vh-orange);
  stroke: none;
}

.vh .vh-testimonials__quote{
  margin: 0;
  padding: 0;
  border: 0;                       /* темата слага border-left на blockquote */
  font-size: clamp(13px, .86vw, 15.5px);
  line-height: 1.65;
  font-weight: 500;
  color: var(--vh-mut);
  quotes: none;
}
.vh .vh-testimonials__quote p{ margin: 0; }
.vh .vh-testimonials__brand{ font-weight: 800; color: var(--vh-dgreen); }

@media (max-width: 1400px){
  .vh .vh-testimonials__card{ flex-basis: calc((100% - 2 * clamp(16px, 1.4vw, 26px)) / 3); }
}
@media (max-width: 1000px){
  .vh .vh-testimonials__card{ flex-basis: calc((100% - clamp(16px, 1.4vw, 26px)) / 2); }
}
@media (max-width: 680px){
  /* стрелките (2 x 46px отстъп) свиваха картата до 204px и режеха имената —
     на телефон се плъзга с пръст, затова релсата е без странично поле */
  .vh .vh-testimonials__rail{ padding-inline: 0; }
  .vh .vh-testimonials .vh-navbtn{ display: none; }
  .vh .vh-testimonials__card{ flex-basis: 86%; padding: 18px; }
  .vh .vh-testimonials__name{ white-space: normal; overflow: visible; text-overflow: clip; }
  /* 10.5px тюркоаз на бяло беше 3.3:1 — вдигаме размера и затъмняваме тона */
  .vh .vh-testimonials__city{ font-size: 12px; color: #1F7A6F; }
}

@media (prefers-reduced-motion: reduce){
  .vh .vh-testimonials__track{ scroll-behavior: auto; }
  .vh .vh-testimonials__card:hover{ transform: none; }
}

/* Trustpilot ред под кутийките (категорийна/продуктова страница). */
.vh .vh-testimonials__tp{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px 10px;
  margin-top: clamp(20px, 2vw, 32px);
}
.vh .vh-testimonials__tp-word{
  font-size: 14px;
  font-weight: 700;
  color: var(--vh-ink);
}
.vh .vh-testimonials__tp-stars{
  display: inline-flex;
  align-items: center;
  gap: 3px;
  line-height: 0;
}
.vh .vh-testimonials__tp-stars svg{
  width: 17px; height: 17px; flex: none;
  fill: #00b67a; stroke: none;
}
.vh .vh-testimonials__tp-brand{
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  font-weight: 700;
  color: var(--vh-ink);
}
.vh .vh-testimonials__tp-logo{ display: inline-flex; line-height: 0; }
.vh .vh-testimonials__tp-logo svg{
  width: 16px; height: 16px; flex: none;
  fill: #00b67a; stroke: none;
}
.vh .vh-testimonials__tp-base{
  flex-basis: 100%;
  text-align: center;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--vh-mut);
}


/* ===== СЕКЦИЯ: goals ===== */
/* ============ VIVORA — Да постигнем целите си заедно ============ */
/* Дизайн: панел с топъл светъл фон; вляво надслов + заглавие (изречен регистър,
   НЕ главни), вдясно долепен долу кратък текст; отдолу 3 карти 510x491. */

.vh .vh-goals__panel{
	background: #F7F6F1;
	border-radius: 20px;
	padding: clamp(24px, 3vw, 56px);
}

.vh .vh-goals__head{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: clamp(16px, 2vw, 48px);
	margin-bottom: clamp(24px, 2.4vw, 44px);
}

.vh .vh-goals__over{
	display: block;
	font-size: clamp(11px, .7vw, 13px);
	font-weight: 700;
	letter-spacing: 2px;
	color: var(--vh-gold);
	margin-bottom: clamp(6px, .5vw, 10px);
}

.vh .vh-goals__title{
	margin: 0;
	font-size: clamp(24px, 2.4vw, 44px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -.2px;
	color: var(--vh-dgreen);
	text-wrap: balance;
}

.vh .vh-goals__intro{
	flex: 0 1 30ch;
	margin: 0;
	font-size: clamp(12px, .78vw, 14.5px);
	font-weight: 500;
	line-height: 1.6;
	color: var(--vh-mut);
	text-align: left;
	position: relative;
}
/* декоративна листо-клонка горе-дясно (по дизайна) */
.vh .vh-goals__intro::before{
	content: "";
	position: absolute;
	top: -34px;
	right: 0;
	width: 46px;
	height: 46px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: .8;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%235B6560' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 44C24 30 30 18 44 12 44 28 38 40 24 44Z'/%3E%3Cpath d='M24.5 43C26 33 30 25 37 19'/%3E%3Cpath d='M24 44C24 32 18 22 6 18 6 30 12 40 24 44Z'/%3E%3Cpath d='M23.5 43C22 34 18 27 12 22'/%3E%3C/svg%3E");
}

.vh .vh-goals__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(16px, 1.9vw, 34px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh .vh-goal{ display: flex; flex-direction: column; align-items: flex-start; }

.vh .vh-goal__img{
	display: block;
	width: 100%;
	aspect-ratio: 510 / 491;
	object-fit: cover;
	border-radius: 15px;
	margin-bottom: clamp(14px, 1.2vw, 24px);
}

.vh .vh-goal__title{
	margin: 0 0 clamp(8px, .6vw, 12px);
	font-size: clamp(15px, 1.1vw, 21px);
	font-weight: 800;
	line-height: 1.25;
	color: var(--vh-ink);
}

.vh .vh-goal__text{
	margin: 0 0 clamp(14px, 1.2vw, 22px);
	font-size: clamp(12px, .8vw, 15px);
	font-weight: 500;
	line-height: 1.6;
	color: var(--vh-mut);
	flex: 1;
}

.vh .vh-goal__btn{
	text-transform: none;      /* дизайнът е с изречен регистър: „Прочети повече“ */
	letter-spacing: .2px;
	padding: clamp(10px, .8vw, 15px) clamp(16px, 1.3vw, 26px);
	color: var(--vh-ink);
	border-color: rgba(26, 28, 25, .4);
}

@media (max-width: 900px) {
	.vh .vh-goals__head{ flex-direction: column; align-items: flex-start; }
	.vh .vh-goals__intro{ text-align: left; flex-basis: auto; }
	.vh .vh-goals__grid{ grid-template-columns: 1fr; }
}


/* ===== СЕКЦИЯ: stats ===== */
.vh .vh-stats{
  background: #fff;
  padding-block: clamp(48px, 3.96vw, 76px);
}

/* Wordmark: measured cap-height 22px @1920 -> ~29px; ink width 127px confirms 29px + 3px tracking */
.vh .vh-stats__brand{
  margin: 0 0 clamp(20px, 1.67vw, 32px);
  text-align: center;
  font-weight: 800;
  font-size: clamp(18px, 0.86vw + 12.5px, 29px);
  line-height: 1;
  letter-spacing: 0.104em;
  text-transform: uppercase;
  color: var(--vh-ink);
}

/* Content-sized columns: design centres are 609/827/1059/1304 (unequal),
   so tracks follow their content, not a 4-up equal grid. */
.vh .vh-stats__grid{
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, auto);
  justify-content: center;
  align-items: start;
  column-gap: clamp(14px, 0.8vw + 8.6px, 24px);
  row-gap: clamp(28px, 2.2vw, 40px);
}

.vh .vh-stats__item{
  min-width: 0;
  text-align: center;
}

/* Numbers: measured cap-height 48px @1920 -> 48 / 0.7 (Montserrat cap ratio) = ~69px */
.vh .vh-stats__num{
  margin: 0;
  font-weight: 800;
  font-size: clamp(40px, 2.24vw + 26px, 69px);
  line-height: 1;
  color: var(--vh-teal);
}

/* Labels: measured cap-height 14px @1920 -> ~18px; advance-width of
   "Натурални съставки" (9.78em) at 18px = 176px vs 177px measured */
.vh .vh-stats__label{
  margin: clamp(7px, 0.57vw, 11px) 0 0;
  font-weight: 500;
  font-size: clamp(13px, 0.6vw + 6.5px, 18px);
  line-height: 1.4;
  color: var(--vh-mut);
  text-wrap: balance;
}

@media (max-width: 700px) {
  .vh .vh-stats__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 16px;
    row-gap: 32px;
    max-width: 460px;
    margin-inline: auto;
  }
}


/* ===== СЕКЦИЯ: social ===== */
/* ============ VIVORA — ПОСЛЕДВАЙ VIVORA В СОЦИАЛНИТЕ МРЕЖИ ============ */
/* Дизайн: 6 портретни карти 270x467, радиус 15, кръгли стрелки върху ръбовете. */

.vh .vh-social .vh-h2{ margin-bottom: clamp(10px, .8vw, 16px); }

.vh .vh-social__sub{
	max-width: 74ch;
	margin: 0 auto clamp(24px, 2.2vw, 44px);
	text-align: center;
	font-size: clamp(12px, .8vw, 15px);
	font-weight: 500;
	line-height: 1.6;
	color: var(--vh-mut);
	text-wrap: pretty;
}

.vh .vh-social__rail{ position: relative; }

.vh .vh-social__track{
	display: flex;
	gap: clamp(12px, 1.1vw, 21px);
	margin: 0;
	padding: 4px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.vh .vh-social__track::-webkit-scrollbar{ display: none; }

.vh .vh-post{
	scroll-snap-align: start;
	flex: 0 0 calc((100% - 5 * clamp(12px, 1.1vw, 21px)) / 6); /* 6 видими (по дизайна) */
	min-width: 0;
}

.vh .vh-post__link{
	position: relative;
	display: block;
	border-radius: 15px;
	overflow: hidden;
	isolation: isolate;
}

.vh .vh-post__img{
	display: block;
	width: 100%;
	aspect-ratio: 270 / 467;
	object-fit: cover;
	transition: scale .4s ease;
}
.vh .vh-post__link:hover .vh-post__img{ scale: 1.05; }

/* лек скрим + глиф при ховър */
.vh .vh-post__link::after{
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(22, 50, 36, .35);
	opacity: 0;
	transition: opacity .25s ease;
}
.vh .vh-post__link:hover::after,
.vh .vh-post__link:focus-visible::after{ opacity: 1; }

.vh .vh-post__glyph{
	position: absolute;
	inset: 0;
	z-index: 1;
	display: grid;
	place-items: center;
	color: #fff;
	opacity: 0;
	scale: .9;
	transition: opacity .25s ease, scale .25s ease;
	pointer-events: none;
}
.vh .vh-post__glyph svg{ width: 34px; height: 34px; }
.vh .vh-post__link:hover .vh-post__glyph,
.vh .vh-post__link:focus-visible .vh-post__glyph{ opacity: 1; scale: 1; }

@media (max-width: 1100px) { .vh .vh-post{ flex-basis: calc((100% - 2 * 16px) / 3); } }
@media (max-width: 1100px) { .vh .vh-post{ flex-basis: calc((100% - 3 * 14px) / 3.6); } }
@media (max-width: 760px)  { .vh .vh-post{ flex-basis: calc((100% - 2 * 12px) / 2.4); } }
@media (max-width: 460px)  { .vh .vh-post{ flex-basis: 62%; } }

@media (prefers-reduced-motion: reduce) {
	.vh .vh-post__img,
.vh .vh-post__glyph,
.vh .vh-post__link::after{ transition: none; }
	.vh .vh-post__link:hover .vh-post__img{ scale: 1; }
}


/* ===== СЕКЦИЯ: cat_hero ===== */
/* ============ VIVORA — КАТЕГОРИЯ HERO ============ */
.vh .vh-cathero{
	background: var(--vh-beige);
	color: var(--vh-ink);
	overflow: clip;
}

.vh .vh-cathero__grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(28px, 4vw, 48px);
	align-items: center;
}
@media (min-width: 1100px){
	.vh .vh-cathero__grid{
		grid-template-columns: 45fr 55fr;   /* по дизайна снимката започва на ~45% */
		align-items: stretch;
		gap: clamp(28px, 3vw, 56px);
	}
	.vh .vh-cathero__copy{
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

/* ---- Копи ---- */
.vh .vh-cathero__copy{ min-width: 0; }

.vh .vh-cathero__overline{
	margin: 0;
	color: var(--vh-gold);
	font-size: clamp(13px, 1.05vw, 16px);
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	line-height: 1.2;
}

.vh .vh-cathero__title{
	margin: clamp(14px, 1.6vw, 22px) 0 0;
	color: var(--vh-dgreen);
	font-size: clamp(26px, 3.1vw, 46px); /* 2 думи на ред, както в дизайна */
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.vh .vh-cathero__lead{
	margin: clamp(14px, 1.4vw, 20px) 0 0;
	flex: 1 1 15em;
	max-width: 22em;
	color: var(--vh-mut);
	font-size: clamp(18px, 1.6vw, 24px);
	font-weight: 400;
	line-height: 1.42;
}

/* лийдът и Trustpilot значката стоят един до друг (както в дизайна) */
.vh .vh-cathero__leadrow{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(18px, 2.2vw, 42px);
	margin-top: clamp(14px, 1.4vw, 20px);
}
.vh .vh-cathero__leadrow > *{ margin-top: 0 !important; }

/* ---- Trustpilot значка (чист HTML/CSS) ---- */
.vh .vh-cathero__trust{
	margin-top: clamp(18px, 1.8vw, 26px);
	display: flex;
	flex-direction: column;
	gap: 7px;
	align-items: flex-start;
}
.vh .vh-cathero__tp-brand{
	display: inline-flex;
	align-items: center;
	gap: 7px;
}
.vh .vh-cathero__tp-name{
	color: var(--vh-ink);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.01em;
}
.vh .vh-cathero__tp-logo-star{
	width: 19px;
	height: 19px;
	background: #00B67A;
	clip-path: polygon(50% 0%, 61.8% 35.5%, 98% 35.5%, 68.9% 57.3%, 80.9% 90.5%, 50% 69%, 19.1% 90.5%, 31.1% 57.3%, 2% 35.5%, 38.2% 35.5%);
}

.vh .vh-cathero__tp-stars{
	position: relative;
	display: inline-block;
	line-height: 0;
}
.vh .vh-cathero__tp-row{
	display: flex;
	gap: 3px;
}
.vh .vh-cathero__tp-row--full{
	position: absolute;
	inset: 0;
	width: var(--tp-fill, 90%);
	overflow: hidden;
}
.vh .vh-cathero__tp-box{
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	background: #dcdce1;                 /* базов, „празен“ ред */
}
.vh .vh-cathero__tp-row--full .vh-cathero__tp-box{ background: #00B67A; }
.vh .vh-cathero__tp-box::before{
	content: "";
	width: 15px;
	height: 15px;
	background: #fff;                    /* бяла звезда, изрязана от квадрата */
	clip-path: polygon(50% 0%, 61.8% 35.5%, 98% 35.5%, 68.9% 57.3%, 80.9% 90.5%, 50% 69%, 19.1% 90.5%, 31.1% 57.3%, 2% 35.5%, 38.2% 35.5%);
}

.vh .vh-cathero__tp-meta{
	margin: 0;
	color: var(--vh-mut);
	font-size: 13px;
	line-height: 1.3;
}
.vh .vh-cathero__tp-meta strong{ color: var(--vh-ink); font-weight: 700; }

/* ---- Бутони ---- */
.vh .vh-cathero__actions{
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: clamp(24px, 2.6vw, 36px);
}
.vh .vh-cathero .vh-btn{
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(52px, 3.6vw, 60px);
	padding: 0 clamp(24px, 2.2vw, 34px);
	font-size: clamp(13px, 0.9vw, 15px);
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
	border-radius: 4px;
	white-space: nowrap;
}

/* ---- Предимства ---- */
.vh .vh-cathero__usps{
	display: flex;
	flex-wrap: wrap;
	gap: clamp(22px, 2.4vw, 34px) clamp(24px, 2.6vw, 40px);
	margin: clamp(30px, 3.4vw, 48px) 0 0;
	padding: 0;
	list-style: none;
}
.vh .vh-cathero__usp{
	flex: 0 1 auto;
	max-width: 160px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}
.vh .vh-cathero__usp-icon{
	box-sizing: border-box;
	display: grid;
	place-items: center;
	flex: none;
	width: clamp(52px, 3.4vw, 60px);
	height: clamp(52px, 3.4vw, 60px);
	border: 1.5px solid var(--vh-green);
	border-radius: 50%;
	color: var(--vh-green);
}
.vh .vh-cathero__usp-icon svg{ width: 46%; height: 46%; display: block; }
.vh .vh-cathero__usp-text{ display: flex; flex-direction: column; gap: 3px; }
.vh .vh-cathero__usp-label{
	color: var(--vh-dgreen);
	font-size: clamp(13px, 0.85vw, 15px);
	font-weight: 800;
	letter-spacing: 0.3px;
	line-height: 1.2;
	text-transform: uppercase;
}
.vh .vh-cathero__usp-sub{
	color: var(--vh-mut);
	font-size: clamp(12px, 0.72vw, 13.5px);
	font-weight: 500;
	line-height: 1.35;
}

/* ---- Снимка ---- */
.vh .vh-cathero__media{ min-width: 0; }
.vh .vh-cathero__img{
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
	border-radius: clamp(16px, 1.6vw, 24px);
}

/* На широк екран снимката е ЦЯЛА — опира горния и долния ръб на секцията и
   излиза до десния ръб на прозореца, точно както в макета (без заоблени ъгли).
   Отрицателните полета гасят padding-а на .vh-sec и жлеба на .vh-wrap. */
@media (min-width: 1100px){
	.vh .vh-cathero__media{
		position: relative;
		margin-block: calc(-1 * var(--vh-gap));
		margin-right: calc((100vw - min(100vw, 1760px)) / -2 - clamp(16px, 2.1vw, 40px));
	}
	.vh .vh-cathero__img{
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 10% 50%;   /* CALM остава изцяло в кадър */
		border-radius: 0;
	}
}

/* ---- Тесни екрани ---- */
@media (max-width: 560px){
	.vh .vh-cathero .vh-btn{ flex: 1 1 100%; }
	/* реалният column-gap е 24px → множителят е 12px, не 20px */
	.vh .vh-cathero__usp{ flex: 0 1 calc(50% - 12px); max-width: none; }
}


/* ===== СЕКЦИЯ: product_grid ===== */
/* VIVORA — продуктова решетка (категорийна страница) */

.vh .vh-pgrid__grid{
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.vh .vh-pgrid__card{
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 24px;
	background: #F6F3EE;
	border-radius: 20px;
	text-align: center;
}

/* сърце горе-вдясно */
.vh .vh-pgrid__wish{
	position: absolute;
	top: 16px;
	right: 16px;
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--vh-ink);
	border-radius: 50%;
	transition: color .2s ease, background-color .2s ease;
}
.vh .vh-pgrid__wish svg{ width: 22px; height: 22px; }
.vh .vh-pgrid__wish:hover,
.vh .vh-pgrid__wish:focus-visible{
	color: var(--vh-teal);
	background: rgba(0, 0, 0, .04);
}

/* пакшот */
/* Височината трябва да е ДЕФИНИТИВНА — иначе високите пакшоти разду̀ват картата
   (aspect-ratio не дава база за max-height:100%). */
.vh .vh-pgrid__media{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: clamp(190px, 15.5vw, 262px);
	margin-top: 4px;
	overflow: hidden;
}
.vh .vh-pgrid__media img{
	max-width: 100%;
	max-height: 100%;
	width: auto !important;
	height: auto !important;
	object-fit: contain;
}

/* цветна плочка */
.vh .vh-pgrid__pill{
	display: inline-block;
	padding: 7px 16px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: var(--acc, #127773);
	background: color-mix(in srgb, var(--acc, #127773) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--acc, #127773) 42%, transparent);
}

/* име на продукта */
.vh .vh-pgrid__name{
	margin: 0;
	font-size: clamp(17px, 1.15vw, 20px);
	font-weight: 800;
	line-height: 1.2;
	color: var(--vh-dgreen);
}
.vh .vh-pgrid__name a{ color: inherit; text-decoration: none; }
.vh .vh-pgrid__name a:hover{ text-decoration: underline; }

/* кратко описание */
.vh .vh-pgrid__desc{
	margin: 0;
	max-width: 32ch;
	font-size: 14px;
	line-height: 1.45;
	color: var(--vh-mut);
}

/* рейтинг */
.vh .vh-pgrid__rating{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.vh .vh-pgrid__stars{ display: inline-flex; gap: 2px; }
.vh .vh-star{
	width: 16px;
	height: 16px;
	fill: none;
	stroke: var(--vh-dgreen);
	stroke-width: 1.4;
}
.vh .vh-star.is-on{ fill: var(--vh-dgreen); stroke: var(--vh-dgreen); }
.vh .vh-pgrid__rating .star-rating{
	color: var(--vh-dgreen);
	font-size: 14px;
	margin: 0;
	line-height: 1;
}
.vh .vh-pgrid__reviews{
	font-size: 13px;
	color: var(--vh-mut);
	white-space: nowrap;
}

/* цена */
.vh .vh-pgrid__price{
	font-size: clamp(20px, 1.5vw, 24px);
	font-weight: 800;
	line-height: 1.1;
	color: var(--vh-dgreen);
}
.vh .vh-pgrid__price .woocommerce-Price-amount{ font-size: inherit; }
.vh .vh-pgrid__price del{ opacity: .5; font-weight: 600; font-size: .72em; margin-right: 6px; }
.vh .vh-pgrid__price ins{ text-decoration: none; }

/* количество + добавяне */
.vh .vh-pgrid__cart{
	display: flex;
	align-items: stretch;
	gap: 8px;
	width: 100%;
	margin-top: auto;
	padding-top: 4px;
}
.vh .vh-pgrid__stepper{
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: 12px;
}
.vh .vh-qtybtn{
	width: 34px;
	height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--vh-ink);
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.vh .vh-qtybtn:hover{ color: var(--vh-teal); }
.vh .vh-qty{
	width: 32px;
	height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--vh-ink);
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	-moz-appearance: textfield;
	appearance: textfield;
}
.vh .vh-qty::-webkit-outer-spin-button,
.vh .vh-qty::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }

/* по-висока специфичност от глобалния .vh-btn, за да поеме радиуса/паддинга */
.vh .vh-pgrid__cart .vh-pgrid__add{
	flex: 1 1 auto;
	min-width: 0;
	min-height: 48px;
	padding: 12px 16px;
	border-radius: 12px;
	letter-spacing: .5px;
	line-height: 1.15;
}

/* адаптив */
@media (max-width: 900px){
	.vh .vh-pgrid__grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px){
	.vh .vh-pgrid__grid{ grid-template-columns: 1fr; gap: 16px; }
	.vh .vh-pgrid__cart .vh-pgrid__add{ padding: 12px 10px; font-size: 12px; }
}


/* ===== СЕКЦИЯ: compare ===== */
/* ============ VIVORA — СРАВНИ НАПИТКИТЕ ============ */
/* Горе: бордюрна лента с 4 ползи (икона в тънко кръгче + 2 реда).
   Долу: панел #FBF7F1 с таблица — лява колона с етикети + 4 продуктови колони.
   Таблицата скролва хоризонтално вътре в панела на тесни екрани. */

.vh .vh-compare{ background: #fff; }

.vh .vh-compare *,
.vh .vh-compare *::before,
.vh .vh-compare *::after{ box-sizing: border-box; }

/* ---------- Лента с ползи ---------- */
.vh .vh-compare__strip{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(16px, 2vw, 40px);
	align-items: center;
	margin: 0 0 clamp(30px, 4vw, 56px);
	padding: clamp(18px, 1.9vw, 26px) clamp(20px, 2.4vw, 44px);
	list-style: none;
	border: 1px solid var(--vh-line);
	border-radius: 20px;
}

.vh .vh-compare__benefit{
	display: flex;
	align-items: center;
	gap: clamp(12px, 1vw, 18px);
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}
.vh .vh-compare__benefit::marker{ content: ""; }

.vh .vh-compare__bicon{
	flex: 0 0 auto;
	width: clamp(58px, 4vw, 72px);
	height: clamp(58px, 4vw, 72px);
	display: grid;
	place-items: center;
	border: 1px solid var(--vh-line);
	border-radius: 50%;
	color: var(--vh-ink);
}
.vh .vh-compare__bicon svg{ width: 52%; height: 52%; }

.vh .vh-compare__btext{ min-width: 0; }

.vh .vh-compare__btitle{
	display: block;
	font-weight: 800;
	font-size: clamp(12.5px, .78vw, 15px);
	letter-spacing: .02em;
	line-height: 1.2;
	color: var(--vh-ink);
}

.vh .vh-compare__bsub{
	display: block;
	margin-top: 3px;
	font-weight: 400;
	font-size: clamp(12px, .72vw, 14px);
	line-height: 1.35;
	color: var(--vh-mut);
}

/* ---------- Заглавие ---------- */
.vh .vh-compare .vh-h2{ margin-bottom: clamp(24px, 3vw, 40px); }

/* ---------- Панел + скрол ---------- */
.vh .vh-compare__panel{
	background: #FBF7F1;
	border-radius: 24px;
	padding: clamp(22px, 2.4vw, 40px);
	overflow: hidden;
}

.vh .vh-compare__scroll{
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	scrollbar-width: thin;
}
.vh .vh-compare__scroll:focus-visible{
	outline: 2px solid var(--vh-green);
	outline-offset: 4px;
	border-radius: 6px;
}

/* ---------- Таблица ---------- */
.vh .vh-compare__table{
	width: 100%;
	min-width: 860px;
	border-collapse: collapse;
	table-layout: fixed;
}

.vh .vh-compare__table th,
.vh .vh-compare__table td{
	text-align: left;
	vertical-align: top;
}

/* Колонни ширини: етикети по-тесни, 4-те продукта равни. */
.vh .vh-compare__corner{ width: 15%; }
.vh .vh-compare__head{ width: 21.25%; }

/* Заглавен ред: пакшот вляво + име/подзаглавие вдясно. */
.vh .vh-compare__head{
	vertical-align: middle;
	padding: 0 clamp(10px, 1vw, 18px) clamp(20px, 2vw, 30px);
}

.vh .vh-compare__headinner{
	display: flex;
	align-items: center;
	gap: clamp(10px, 1vw, 16px);
	min-width: 0;
}

.vh .vh-compare__pshot{
	flex: 0 0 auto;
	width: clamp(66px, 5.6vw, 104px);
	height: auto;
	display: block;
}

.vh .vh-compare__headtext{ min-width: 0; }

.vh .vh-compare__pname{
	display: block;
	font-weight: 800;
	font-size: clamp(18px, 1.35vw, 26px);
	line-height: 1.05;
	letter-spacing: .01em;
	color: var(--vh-ink);
}
.vh .vh-compare__head--calm  .vh-compare__pname{ color: #127773; }
.vh .vh-compare__head--focus .vh-compare__pname{ color: #2D418C; }
.vh .vh-compare__head--glow  .vh-compare__pname{ color: #E46A6E; }
.vh .vh-compare__head--shot  .vh-compare__pname{ color: #EE6E11; }
/* Акцент по инлайн --acc (за категории с други/повече продукти); бие slug-цветовете горе. */
.vh .vh-compare__head[style*="--acc"] .vh-compare__pname{ color: var(--acc); }

.vh .vh-compare__psub{
	display: block;
	margin-top: clamp(6px, .6vw, 9px);
	font-weight: 700;
	font-size: clamp(13px, .9vw, 16px);
	line-height: 1.2;
	color: var(--vh-ink);
}

/* Редове със стойности + разделители. */
.vh .vh-compare__rowlabel{
	width: 15%;
	padding: clamp(16px, 1.6vw, 22px) clamp(14px, 1vw, 20px) clamp(16px, 1.6vw, 22px) 0;
	border-top: 1px solid var(--vh-line);
	font-weight: 700;
	font-size: clamp(14px, .95vw, 17px);
	line-height: 1.4;
	color: var(--vh-ink);
}

.vh .vh-compare__cell{
	padding: clamp(16px, 1.6vw, 22px) clamp(10px, 1vw, 18px);
	border-top: 1px solid var(--vh-line);
	font-size: clamp(14px, .95vw, 17px);
	line-height: 1.5;
	color: var(--vh-ink);
}

/* Достъпно скрит текст за ъгловата клетка. */
.vh .vh-compare__sr{
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* ---------- Адаптивно ---------- */
@media (max-width: 900px) {
	.vh .vh-compare__strip{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: clamp(18px, 4vw, 26px);
	}
}

@media (max-width: 767px) {
	.vh .vh-compare.vh-sec{ padding-block: 44px; }
	.vh .vh-compare__panel{
		border-radius: 18px;
		padding: 20px;
	}
}

@media (max-width: 480px) {
	.vh .vh-compare__strip{
		grid-template-columns: minmax(0, 1fr);
		row-gap: 18px;
		padding: 22px;
		border-radius: 16px;
	}
	.vh .vh-compare__panel{ padding: 16px; }
}

/* При 375px във видимите 311px влизаха само празната ъглова колона и първият
   продукт — останалите три бяха скрити зад скрол без никакъв знак за това
   (одит, находка №8). Стесняваме колоната с етикетите, за да се „подава“
   вторият продукт и да личи, че таблицата се плъзга. */
@media (max-width: 560px){
	.vh .vh-compare__table{ min-width: 620px; }
	.vh .vh-compare__corner{ width: 96px; }
	.vh .vh-compare__rowlabel{ width: 96px; }
}


/* ===== СЕКЦИЯ: when ===== */
/* ============ VIVORA — КОГА ДА ИЗБЕРЕШ СВОЯ VIVORA ============ */
/* 4 карти в редица: снимка отгоре + плътен цветен блок с бял текст (2 реда)
   и ghost pill бутон. Цветът на всяка карта идва от --when-c (задава се inline
   от Elementor контрола). 2 колони <=900px, 1 колона <=560px. */

.vh .vh-when__grid{
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(16px, 1.35vw, 28px);
}

.vh .vh-when__card{
	--when-c: var(--vh-teal);
	display: flex;
	flex-direction: column;
	min-width: 0;
	border-radius: 18px;
	overflow: hidden;
	background: var(--when-c);
}

.vh .vh-when__media{
	display: block;
	line-height: 0;
}

.vh .vh-when__img{
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
}

.vh .vh-when__body{
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: clamp(16px, 1.3vw, 24px);
	padding: clamp(22px, 1.9vw, 30px) clamp(18px, 1.5vw, 26px) clamp(24px, 2vw, 32px);
	text-align: center;
}

.vh .vh-when__text{
	margin: 0;
	max-width: 22ch;
	color: #fff;
	font-size: clamp(15px, 0.5vw + 13px, 18px);
	font-weight: 600;
	line-height: 1.38;
}

.vh .vh-when__btn{
	display: inline-block;
	border: 1px solid #fff;
	border-radius: 999px;
	padding: clamp(10px, 0.7vw, 13px) clamp(28px, 2.2vw, 42px);
	color: #fff;
	background: transparent;
	font-size: clamp(13px, 0.35vw + 11.5px, 15px);
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color .25s ease, color .25s ease;
}

.vh .vh-when__btn:hover,
.vh .vh-when__btn:focus-visible{
	background: #fff;
	color: var(--when-c);
}

@media (max-width: 900px) {
	.vh .vh-when__grid{ grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
	.vh .vh-when__grid{ grid-template-columns: 1fr; }
	.vh .vh-when__img{ aspect-ratio: 16 / 11; }
}


/* ===== СЕКЦИЯ: combos ===== */
/* ============ VIVORA — ПЕРФЕКТНИ В КОМБИНАЦИЯ ============ */
/* Огледало на началните „ТРИ ЛИНИИ“ карти: кремава карта ~560x731, малък надпис
   VIVORA, голямо заглавие, копи, ghost бутон и продуктова композиция, която пълни
   картата под текста. Тонът на всяка карта и акцентът идват inline от repeater-а
   (--accent), затова тук се позоваваме на var(--accent). */

.vh .vh-combos__grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(16px, 1.9vw, 36px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh .vh-combo{
	position: relative;
	aspect-ratio: 560 / 731;
	border-radius: 20px;
	overflow: hidden;
	isolation: isolate;
	background: var(--vh-beige);
}

/* Композицията е върху своя тон (текстът е изчистен от нея), затова пълни цялата
   карта и стои ПОД HTML текста. Тонът на картата отдолу е същият → без видим шев. */
.vh .vh-combo__img{
	position: absolute;
	right: 0;
	bottom: 0;
	left: auto;
	top: auto;
	z-index: 0;
	width: 100%;
	height: 74%;              /* по дизайна: снимката е в долната част, не под бутона */
	object-fit: cover;
	object-position: center bottom;
}

/* Третата карта (VIVORA 360°) е с широка кен-композиция, не с вертикално пакетче:
   свиваме я в долната част, contain, за да не застъпва копитата отгоре. */
.vh .vh-combo:last-child{ background:#FFFFFF; }
.vh .vh-combo:last-child .vh-combo__img{
	top: auto;
	bottom: 0;
	height: 52%;
	object-fit: contain;
	object-position: center bottom;
}

.vh .vh-combo__copy{
	position: relative;
	z-index: 2;
	padding: clamp(20px, 1.8vw, 34px);
	max-width: 74%;
}

.vh .vh-combo__mark{
	display: block;
	font-size: clamp(10px, .68vw, 13px);
	font-weight: 700;
	letter-spacing: 3px;
	color: var(--accent, var(--vh-dgreen));
	opacity: .9;
	margin-bottom: clamp(8px, .7vw, 14px);
}

.vh .vh-combo__title{
	margin: 0 0 clamp(10px, .8vw, 16px);
	font-size: clamp(20px, 1.7vw, 32px);
	font-weight: 800;
	letter-spacing: .3px;
	line-height: 1.12;
	color: var(--accent, var(--vh-dgreen));
}

.vh .vh-combo__text{
	margin: 0 0 clamp(16px, 1.3vw, 26px);
	font-size: clamp(12px, .82vw, 15.5px);
	font-weight: 500;
	line-height: 1.55;
	color: var(--vh-ink);
}

.vh .vh-combo__btn{
	padding: clamp(8px, .6vw, 11px) clamp(12px, .95vw, 18px);
	font-size: clamp(11px, .7vw, 12.5px);
	color: var(--vh-ink);
	border-color: rgba(26, 28, 25, .45);
	background: rgba(255, 255, 255, .35);
}
.vh .vh-combo__btn:hover,
.vh .vh-combo__btn:focus-visible{
	background: var(--accent, var(--vh-dgreen));
	border-color: var(--accent, var(--vh-dgreen));
	color: #fff;
}

@media (max-width: 900px) {
	.vh .vh-combos__grid{ grid-template-columns: 1fr; }
	.vh .vh-combo{ aspect-ratio: 3 / 2; }
	.vh .vh-combo__copy{ max-width: 52%; }
}
@media (max-width: 520px) {
	.vh .vh-combo{ aspect-ratio: 4 / 5; }
	.vh .vh-combo__copy{ max-width: 68%; }
}

/* Копи-блокът е по-висок от свободната зона над снимката и ghost бутонът лягаше
   34px навътре в продукта (одит, находка №7). */
@media (max-width: 900px){
	.vh .vh-combo__img{ height: 62%; }
}
@media (max-width: 520px){
	.vh .vh-combo__img{ height: 50%; }
}


/* ===== СЕКЦИЯ: soft_offer ===== */
/* ============ VIVORA — ПАКЕТ SOFT SPARKLING DRINK (оферта) ============ */
/* Пълноширок бежов банер вътре в .vh-wrap: вляво копи + 3 предимства + бутон,
   вдясно снимка на 4-те кена с кръгла ценова значка горе-вдясно. */

.vh .vh-softoffer{ --so-badge: #113929; }

.vh .vh-softoffer *,
.vh .vh-softoffer *::before,
.vh .vh-softoffer *::after{ box-sizing: border-box; }

.vh .vh-softoffer__band{
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	align-items: center;
	gap: clamp(24px, 4vw, 64px);
	padding: clamp(24px, 1.6vw + 20px, 64px);
	background: #F8EEE4; /* точния фон на снимката с кеновете — без видим шев */
	border-radius: 20px;
}

/* ---------------------------------------------------------------- копи */
.vh .vh-softoffer__copy{ min-width: 0; }

.vh .vh-softoffer__title{
	margin: 0;
	font-size: clamp(28px, 1.7vw + 16px, 48px);
	font-weight: 800;
	line-height: 1.06;
	letter-spacing: -0.5px;
	text-transform: uppercase;
	color: var(--vh-dgreen);
}

.vh .vh-softoffer__sub{
	margin: clamp(10px, 1vw, 18px) 0 0;
	font-size: clamp(15px, 0.4vw + 13px, 20px);
	line-height: 1.4;
	color: var(--vh-mut);
}

/* --------------------------------------------------------- предимства */
.vh .vh-softoffer__benefits{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(14px, 1vw, 20px);
	margin: clamp(22px, 2.5vw, 40px) 0 0;
	padding: 0;
	list-style: none;
}

.vh .vh-softoffer__benefit{
	display: flex;
	align-items: center;
	gap: clamp(9px, 0.8vw, 13px);
	padding-inline: clamp(14px, 1.4vw, 26px);
}
.vh .vh-softoffer__benefit:first-child{ padding-inline-start: 0; }
.vh .vh-softoffer__benefit:not(:first-child){ border-inline-start: 1px solid var(--vh-line); }

.vh .vh-softoffer__bicon{
	flex: 0 0 auto;
	width: clamp(30px, 2.2vw, 40px);
	height: clamp(30px, 2.2vw, 40px);
	color: var(--vh-dgreen);
}
.vh .vh-softoffer__bicon svg{ display: block; width: 100%; height: 100%; }

.vh .vh-softoffer__btext{ min-width: 0; line-height: 1.25; }

.vh .vh-softoffer__btitle{
	display: block;
	font-size: clamp(12px, 0.3vw + 10px, 14px);
	font-weight: 800;
	letter-spacing: 0.4px;
	text-transform: uppercase;
	color: var(--vh-dgreen);
}
.vh .vh-softoffer__bsub{
	display: block;
	font-size: clamp(12px, 0.3vw + 10px, 14px);
	font-weight: 500;
	color: var(--vh-mut);
}

/* -------------------------------------------------------------- бутон */
.vh .vh-softoffer__cta{ margin: clamp(26px, 3vw, 44px) 0 0; }
.vh .vh-softoffer__btn{ margin: 0; }

/* --------------------------------------------------------- снимка + значка */
.vh .vh-softoffer__visual{ position: relative; min-width: 0; }

.vh .vh-softoffer__img{
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

.vh .vh-softoffer__badge{
	position: absolute;
	top: clamp(-4px, 0.4vw, 10px);
	right: clamp(-6px, 0.6vw, 14px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	width: clamp(88px, 8.6vw, 134px);
	height: clamp(88px, 8.6vw, 134px);
	border-radius: 50%;
	text-align: center;
	color: #fff;
	background: var(--so-badge);
	box-shadow: 0 12px 26px rgba(17, 57, 41, 0.28);
}

.vh .vh-softoffer__was{
	font-size: clamp(11px, 0.7vw, 15px);
	font-weight: 500;
	line-height: 1.1;
	text-decoration: line-through;
	opacity: 0.75;
}
.vh .vh-softoffer__was .woocommerce-Price-amount{ color: #fff; }

.vh .vh-softoffer__now{
	font-size: clamp(17px, 1.2vw, 24px);
	font-weight: 800;
	line-height: 1.05;
	color: #fff;
}
.vh .vh-softoffer__now .woocommerce-Price-amount{ color: #fff; }

/* ----------------------------------------------------------- responsive */
@media (max-width: 900px){
	.vh .vh-softoffer__band{ grid-template-columns: minmax(0, 1fr); }
	.vh .vh-softoffer__copy{ order: 1; }
	.vh .vh-softoffer__visual{ order: 2; }
	.vh .vh-softoffer__img{
		width: min(100%, 560px);
		margin-inline: auto;
	}
}

@media (max-width: 520px){
	.vh .vh-softoffer__benefits{
		flex-direction: column;
		align-items: flex-start;
		gap: 14px;
	}
	.vh .vh-softoffer__benefit{
		padding-inline: 0;
		border-inline-start: 0;
	}
}

/* Значката не се смаляваше заедно със снимката и лягаше върху четвъртия кен
   (одит, находка №10). */
@media (max-width: 520px){
	.vh .vh-softoffer__badge{ width: 68px; height: 68px; }
	.vh .vh-softoffer__now{ font-size: 15px; }
	.vh .vh-softoffer__was{ font-size: 10px; }
}


/* ===== СЕКЦИЯ: product_hero ===== */
/* ===== VIVORA — Продукт Hero (1:1 по дизайна) ===== */
.vh .vh-phero{ background:#fff; }
.vh .vh-phero__grid{
  display:grid;
  grid-template-columns:minmax(0,47fr) minmax(0,53fr);
  gap:clamp(28px, 3.4vw, 60px);
  align-items:start;
}

/* --- ГАЛЕРИЯ --- */
.vh .vh-phero__card{
  position:relative;
  background:var(--vh-beige2);
  border-radius:20px;
  padding:clamp(18px, 2vw, 34px);
  overflow:hidden;
}
.vh .vh-phero__stage{ display:flex; align-items:center; justify-content:center; }
.vh .vh-phero__img,
.vh .vh-phero__stage img{
  width:100%;
  height:auto;
  max-height:560px;
  object-fit:contain;
  display:block;
}
.vh .vh-phero__zoom{
  position:absolute; top:14px; right:14px; z-index:3;
  display:grid; place-items:center;
  width:44px; height:44px; border-radius:50%;
  background:#fff; color:var(--vh-dgreen);
  box-shadow:0 4px 14px rgba(0,0,0,.12);
}
.vh .vh-phero__zoom svg{ width:20px; height:20px; }
.vh .vh-phero__nav{
  position:absolute; top:50%; translate:0 -50%; z-index:3;
  display:grid; place-items:center;
  width:44px; height:44px; border-radius:50%;
  border:0; background:#fff; color:var(--vh-dgreen);
  box-shadow:0 4px 14px rgba(0,0,0,.12); cursor:pointer;
}
.vh .vh-phero__nav svg{ width:20px; height:20px; }
.vh .vh-phero__nav--prev{ left:14px; }
.vh .vh-phero__nav--next{ right:14px; }

.vh .vh-phero__thumbs{
  display:flex; gap:12px; margin:14px 0 0; padding:0; list-style:none;
  flex-wrap:wrap;
}
.vh .vh-phero__thumb{
  width:clamp(70px, 6vw, 96px); aspect-ratio:1;
  border-radius:14px; overflow:hidden; cursor:pointer;
  background:var(--vh-beige2); border:2px solid transparent;
  transition:border-color .2s ease;
}
.vh .vh-phero__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.vh .vh-phero__thumb.is-active{ border-color:var(--vh-dgreen); }

/* --- ДЕТАЙЛИ --- */
.vh .vh-phero__line{
  display:inline-block;
  font-size:clamp(12px, .85vw, 14px); font-weight:700;
  letter-spacing:1.4px; text-transform:uppercase;
  color:var(--vh-teal); text-decoration:none; margin-bottom:10px;
}
.vh .vh-phero__title{
  margin:0; font-size:clamp(30px, 3.6vw, 52px); font-weight:800;
  line-height:1.05; color:var(--vh-dgreen); letter-spacing:.3px;
}
.vh .vh-phero__subtitle{
  margin:6px 0 0; font-size:clamp(18px, 1.8vw, 27px); font-weight:600;
  line-height:1.15; color:var(--vh-dgreen);
}
.vh .vh-phero__tagline{
  margin:10px 0 0; font-size:clamp(14px, 1.05vw, 17px);
  color:var(--vh-mut); line-height:1.5;
}

.vh .vh-phero__pricerow{
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; flex-wrap:wrap; margin:clamp(16px,1.8vw,24px) 0 0;
}
.vh .vh-phero__price{ font-size:clamp(24px, 2.6vw, 36px); font-weight:800; color:var(--vh-ink); }
.vh .vh-phero__price .woocommerce-Price-amount{ font-weight:800; }
.vh .vh-phero__price del{ color:var(--vh-mut); font-weight:600; font-size:.7em; margin-right:8px; }
.vh .vh-phero__price ins{ text-decoration:none; }

/* Trustpilot */
.vh .vh-tp{ display:flex; flex-direction:column; gap:4px; }
.vh .vh-tp__brand{ display:inline-flex; align-items:center; gap:6px; font-weight:800; font-size:14px; color:var(--vh-ink); }
.vh .vh-tp__logostar{ color:#00b67a; display:inline-flex; }
.vh .vh-tp__logostar svg{ width:16px; height:16px; }
.vh .vh-tp__stars{ display:inline-flex; gap:3px; }
.vh .vh-tp__star{ display:inline-grid; place-items:center; width:22px; height:22px; background:#00b67a; border-radius:3px; color:#fff; }
.vh .vh-tp__star svg{ width:15px; height:15px; }
.vh .vh-tp__star--half{ background:linear-gradient(90deg,#00b67a 55%,#dce0e5 55%); }
.vh .vh-tp__score{ font-size:12px; color:var(--vh-mut); }
.vh .vh-tp__score b{ color:var(--vh-ink); }

.vh .vh-phero__desc{
  margin:clamp(16px,1.8vw,22px) 0 0; font-size:clamp(14px, 1vw, 15.5px);
  line-height:1.7; color:var(--vh-ink);
}

.vh .vh-phero__checks{
  display:grid; grid-template-columns:1fr 1fr; gap:12px 24px;
  margin:clamp(18px,2vw,24px) 0 0; padding:0; list-style:none;
}
.vh .vh-phero__check-item{ display:flex; align-items:center; gap:10px; font-size:clamp(14px,1vw,15.5px); font-weight:600; color:var(--vh-ink); }
.vh .vh-phero__check{ flex:none; display:inline-flex; width:24px; height:24px; color:var(--vh-teal); }
.vh .vh-phero__check svg{ width:100%; height:100%; }

/* количество + бутони */
.vh .vh-phero__cart{ margin:clamp(18px,2.2vw,26px) 0 0; }
.vh .vh-phero__buyrow{ display:flex; align-items:center; gap:14px; margin-bottom:14px; }
.vh .vh-phero__stepper{
  display:inline-flex; align-items:center;
  border:1px solid var(--vh-line); border-radius:6px; overflow:hidden;
}
.vh .vh-phero__stepper .vh-qtybtn{
  width:44px; height:48px; border:0; background:#fff; cursor:pointer;
  font-size:20px; line-height:1; color:var(--vh-ink);
}
.vh .vh-qtybtn:hover{ background:var(--vh-beige2); }
.vh .vh-phero__stepper .vh-qty{
  width:52px; height:48px; border:0; border-left:1px solid var(--vh-line); border-right:1px solid var(--vh-line);
  text-align:center; font-size:16px; font-weight:700; color:var(--vh-ink); -moz-appearance:textfield;
}
.vh .vh-phero__stepper .vh-qty::-webkit-outer-spin-button,
.vh .vh-qty::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.vh .vh-phero__unit{ font-size:15px; color:var(--vh-mut); font-weight:600; }

.vh .vh-phero__add{
  display:flex; align-items:center; justify-content:center; gap:12px;
  width:100%; padding:18px 24px;
  border-radius:8px !important; /* темата налага „хапче“ — дизайнът е леко заоблен правоъгълник */
  font-size:clamp(13px,1vw,15px); letter-spacing:1px;
}
.vh .vh-phero__add-ic{ display:inline-flex; width:22px; height:22px; }
.vh .vh-phero__add-ic svg{ width:100%; height:100%; }
.vh .vh-phero__pack{
  display:flex; align-items:center; justify-content:center;
  width:100%; margin-top:12px; padding:16px 24px;
  border-radius:8px !important;
  border:1.5px solid var(--vh-dgreen); color:var(--vh-dgreen); background:transparent;
  font-size:clamp(13px,1vw,15px); letter-spacing:1px;
}
.vh .vh-phero__pack:hover,
.vh .vh-phero__pack:focus-visible{ background:var(--vh-dgreen); color:#fff; }

/* 3 trust badge-а */
.vh .vh-phero__trust{
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
  margin:clamp(22px,2.4vw,32px) 0 0; padding:clamp(18px,1.8vw,24px) 0 0;
  border-top:1px solid var(--vh-line); list-style:none;
}
.vh .vh-phero__trust-item{ display:flex; align-items:center; gap:12px; }
.vh .vh-phero__trust-ic{ flex:none; display:inline-flex; width:30px; height:30px; color:var(--vh-dgreen); }
.vh .vh-phero__trust-ic svg{ width:100%; height:100%; }
.vh .vh-phero__trust-item span{ display:flex; flex-direction:column; font-size:12.5px; line-height:1.35; color:var(--vh-mut); }
.vh .vh-phero__trust-item b{ color:var(--vh-ink); font-size:13.5px; font-weight:700; }

/* --- РЕСПОНСИВ --- */
@media (max-width:1000px){
  .vh .vh-phero__grid{ grid-template-columns:1fr; gap:clamp(24px,4vw,36px); }
  .vh .vh-phero__img,
.vh .vh-phero__stage img{ max-height:460px; }
}
@media (max-width:560px){
  .vh .vh-phero__pricerow{ gap:12px; }
  .vh .vh-phero__checks{ grid-template-columns:1fr; }
  .vh .vh-phero__trust{ grid-template-columns:1fr; gap:14px; }
  .vh .vh-phero__thumb{ width:64px; }
  .vh .vh-phero__title{ font-size:clamp(28px,7vw,36px); }
}


/* ===== СЕКЦИЯ: product_about ===== */
/* VIVORA — Продукт: „Какво представлява“
   Спокойна двучастна секция: заоблен панел на --vh-beige2, интро текст (макс ~1100)
   и ред от две инфо-карти, тонирани с акцентния цвят на продукта (--acc). */

.vh .vh-pabout{
	background: var(--vh-beige2);
}

.vh .vh-pabout__panel{
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: 20px;
	padding: clamp(26px, 4.5vw, 56px);
}

/* -------- Интро -------- */
.vh .vh-pabout__intro{
	max-width: 1100px;
}

.vh .vh-pabout__eyebrow{
	margin: 0 0 .7rem;
	color: var(--acc, var(--vh-green));
	font-weight: 700;
	font-size: .8rem;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.vh .vh-pabout__h2{
	margin: 0 0 1rem;
	text-align: left;
}

.vh .vh-pabout__text{
	margin: 0;
	max-width: 68ch;
	color: var(--vh-mut);
	font-size: clamp(1rem, 1.4vw, 1.14rem);
	line-height: 1.75;
}

/* -------- Инфо-карти -------- */
.vh .vh-pabout__cards{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
	gap: 16px;
	margin-top: clamp(24px, 3vw, 38px);
}

.vh .vh-pabout__card{
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 22px;
	border-radius: 16px;
	background: var(--vh-beige2);
	background: color-mix(in srgb, var(--acc) 7%, #fff);
	border: 1px solid var(--vh-line);
	border-color: color-mix(in srgb, var(--acc) 16%, var(--vh-line));
}

.vh .vh-pabout__ic{
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 13px;
	background: #fff;
	color: var(--acc, var(--vh-green));
	border: 1px solid var(--vh-line);
	border-color: color-mix(in srgb, var(--acc) 22%, var(--vh-line));
}

.vh .vh-pabout__ic svg{
	width: 23px;
	height: 23px;
}

.vh .vh-pabout__card-body{
	min-width: 0;
}

.vh .vh-pabout__card-label{
	display: block;
	margin-bottom: .4rem;
	color: var(--vh-dgreen);
	font-weight: 700;
	font-size: .98rem;
	letter-spacing: .01em;
}

.vh .vh-pabout__card-text{
	margin: 0;
	color: var(--vh-mut);
	font-size: .95rem;
	line-height: 1.62;
}

@media (max-width: 480px) {
	.vh .vh-pabout__card{
		padding: 18px;
	}
}


/* ===== СЕКЦИЯ: product_benefits ===== */
/* ===== VIVORA — Продукт: лента с 4 ползи (peach, икона+заглавие+подзаглавие) ===== */
.vh .vh-pstrip{ background:#fff; }

.vh .vh-pstrip__bar{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  align-items:start;
  gap:0;
  margin:0;
  padding:clamp(26px, 2.4vw, 40px) clamp(16px, 1.6vw, 28px);
  list-style:none;
  background:var(--vh-peach);
  border-radius:var(--vh-radius);
}

.vh .vh-pstrip__item{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:10px;
  padding:0 clamp(14px, 1.6vw, 28px);
  border-left:1px solid rgba(26,28,25,.12);
}
.vh .vh-pstrip__item:first-child{ border-left:0; }

/* по дизайна: иконата стои в тънко кръгче */
.vh .vh-pstrip__icon{
  display:grid;
  place-items:center;
  width:clamp(44px, 3.2vw, 56px);
  height:clamp(44px, 3.2vw, 56px);
  border:1.4px solid currentColor;
  border-radius:50%;
  color:var(--vh-ink);
}
.vh .vh-pstrip__icon svg{ width:52%; height:52%; }

.vh .vh-pstrip__title{
  font-size:clamp(14px, 1vw, 16px);
  font-weight:800;
  letter-spacing:.3px;
  color:var(--vh-ink);
}
.vh .vh-pstrip__sub{
  font-size:clamp(12.5px, .85vw, 14px);
  line-height:1.5;
  color:var(--vh-mut);
}

@media (max-width:820px){
  .vh .vh-pstrip__bar{ grid-template-columns:1fr 1fr; row-gap:clamp(22px,3vw,30px); }
  .vh .vh-pstrip__item:nth-child(-n+2){ border-left:0; }
  .vh .vh-pstrip__item:nth-child(odd){ border-left:0; }
}
@media (max-width:460px){
  .vh .vh-pstrip__bar{ grid-template-columns:1fr; }
  .vh .vh-pstrip__item{ border-left:0; }
}


/* ===== СЕКЦИЯ: product_features ===== */
/* ===== VIVORA — „Какво прави {ПРОДУКТ} различен" (3 карти peach) ===== */
.vh .vh-pfeat{ background:#fff; }

.vh .vh-pfeat__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:clamp(18px, 1.8vw, 28px);
  margin:0;
  padding:0;
  list-style:none;
}

/* по дизайна: иконата е ВЛЯВО, заглавието и текстът вдясно от нея */
.vh .vh-pfeat__card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-areas:
    "icon title"
    "icon text";
  column-gap:clamp(14px, 1.2vw, 22px);
  row-gap:8px;
  align-items:start;
  background:var(--vh-peach);
  border-radius:var(--vh-radius);
  padding:clamp(24px, 2vw, 34px) clamp(22px, 1.8vw, 32px);
}
.vh .vh-pfeat__icon{ grid-area:icon; }
.vh .vh-pfeat__title{ grid-area:title; align-self:center; }
.vh .vh-pfeat__text{ grid-area:text; }

.vh .vh-pfeat__icon{
  display:inline-flex;
  width:clamp(40px, 3vw, 48px);
  height:clamp(40px, 3vw, 48px);
  color:var(--vh-dgreen);
}
.vh .vh-pfeat__icon svg{ width:100%; height:100%; }

.vh .vh-pfeat__title{
  margin:0;
  font-family:inherit;
  font-size:clamp(15px, 1.05vw, 17px);
  font-weight:800;
  letter-spacing:.4px;
  text-transform:uppercase;
  color:var(--vh-ink);
}

.vh .vh-pfeat__text{
  margin:0;
  font-size:clamp(14px, .95vw, 15.5px);
  line-height:1.6;
  color:var(--vh-mut);
}

@media (max-width:900px){ .vh .vh-pfeat__grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .vh .vh-pfeat__grid{ grid-template-columns:1fr; } }


/* ===== СЕКЦИЯ: product_when ===== */
/* ===== VIVORA — „Кога да избереш {ПРОДУКТ}" (3 lifestyle карти) ===== */
.vh .vh-pwhen{ background:#fff; }

.vh .vh-pwhen__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:clamp(18px, 1.8vw, 28px);
  margin:0;
  padding:0;
  list-style:none;
}

.vh .vh-pwhen__card{ display:flex; flex-direction:column; }

.vh .vh-pwhen__media{
  border-radius:var(--vh-radius);
  overflow:hidden;
  aspect-ratio:4 / 3;
  background:var(--vh-beige);
}
.vh .vh-pwhen__img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.vh .vh-pwhen__title{
  margin:16px 0 0;
  font-family:inherit;
  font-size:clamp(15px, 1.1vw, 18px);
  font-weight:800;
  letter-spacing:.4px;
  text-transform:uppercase;
  color:var(--vh-ink);
}

.vh .vh-pwhen__text{
  margin:6px 0 0;
  font-size:clamp(14px, .95vw, 15.5px);
  line-height:1.6;
  color:var(--vh-mut);
}

@media (max-width:760px){ .vh .vh-pwhen__grid{ grid-template-columns:1fr; max-width:460px; margin-inline:auto; } }

/* по дизайна: всяка карта е в светла кремава кутия със заоблени ъгли */
.vh .vh-pwhen__card{
  background: #FAF6F0;
  border-radius: var(--vh-radius);
  padding: clamp(14px, 1.15vw, 20px);
}
.vh .vh-pwhen__media{ border-radius: 12px; overflow: hidden; }
.vh .vh-pwhen__title{ margin-top: clamp(12px, 1vw, 16px); }


/* ===== СЕКЦИЯ: product_details ===== */
/* ===== VIVORA — Продукт: „Хранителна информация" (таблица 7 реда + usage) ===== */
.vh .vh-pnut{ background:#fff; }

/* по дизайна: ДВЕ отделни кутии с рамки, не една обща */
.vh .vh-pnut__grid{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  align-items:stretch;
  gap:clamp(20px, 2.2vw, 38px);
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
}
.vh .vh-pnut__panel,
.vh .vh-pnut__usage{
  background:var(--vh-panel);
  border:1px solid var(--vh-line);
  border-radius:16px;
  padding:clamp(18px, 1.7vw, 28px);
}
.vh .vh-pnut__grid--single{ grid-template-columns:1fr; }

/* --- таблица --- */
.vh .vh-pnut__caption{
  margin:0 0 12px;
  font-size:clamp(13px, .95vw, 15px);
  font-weight:700;
  color:var(--vh-ink);
}
.vh .vh-pnut__table{
  width:100%;
  border-collapse:collapse;
}
.vh .vh-pnut__table th,
.vh .vh-pnut__table td{
  padding:clamp(8px, .8vw, 12px) clamp(10px, .9vw, 14px);
  border:1px solid var(--vh-line);
  font-size:clamp(13.5px, .95vw, 15px);
  line-height:1.35;
}
.vh .vh-pnut__table th{
  text-align:left;
  font-weight:500;
  color:var(--vh-mut);
}
.vh .vh-pnut__table td{
  text-align:right;
  font-weight:700;
  color:var(--vh-ink);
  white-space:nowrap;
  padding-left:16px;
}
.vh .vh-pnut__table tr:first-child th,
.vh .vh-pnut__table tr:first-child td{
  font-size:clamp(14px, 1vw, 16px);
  font-weight:800;
  color:var(--vh-ink);
}


/* --- usage списък --- */
.vh .vh-pnut__usage{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(16px, 2vw, 26px);
  margin:0;
  padding:clamp(18px, 1.7vw, 28px);
  list-style:none;
}
.vh .vh-pnut__urow{
  display:flex;
  align-items:center;
  gap:16px;
}
.vh .vh-pnut__uicon{
  display:inline-flex;
  flex:none;
  width:clamp(30px, 2.4vw, 38px);
  height:clamp(30px, 2.4vw, 38px);
  color:var(--vh-dgreen);
}
.vh .vh-pnut__uicon svg{ width:100%; height:100%; }
.vh .vh-pnut__utext{
  font-size:clamp(14px, .98vw, 16px);
  font-weight:500;
  line-height:1.45;
  color:var(--vh-ink);
}

@media (max-width:820px){
  .vh .vh-pnut__grid{ grid-template-columns:1fr; gap:clamp(24px,4vw,34px); }
}

/* декоративно листо долу-дясно в кутията с употребата (по дизайна) */
.vh .vh-pnut__usage{ position:relative; overflow:hidden; }
.vh .vh-pnut__usage::after{
  content:"";
  position:absolute; right:14px; bottom:10px;
  width:64px; height:64px; opacity:.5;
  background-repeat:no-repeat; background-position:center; background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%235B6560' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 40C10 24 20 12 40 8 40 28 30 38 10 40Z'/%3E%3Cpath d='M11 39C17 29 25 21 36 14'/%3E%3C/svg%3E");
}


/* ===== СЕКЦИЯ: product_faq ===== */
/* ============ VIVORA — ЧЕСТО ЗАДАВАНИ ВЪПРОСИ (продуктова страница) ============ */

.vh .vh-pfaq__list{
	max-width: 900px;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	gap: clamp(10px, 1vw, 14px);
}

/* ---- една карта-ред (native <details>) ---- */
.vh .vh-pfaq__item{
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: clamp(14px, 1.4vw, 18px);
	transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.vh .vh-pfaq__item:hover{
	border-color: color-mix(in srgb, var(--acc, var(--vh-green)) 45%, var(--vh-line));
}
.vh .vh-pfaq__item[open]{
	border-color: color-mix(in srgb, var(--acc, var(--vh-green)) 55%, var(--vh-line));
	background: color-mix(in srgb, var(--acc, var(--vh-green)) 4%, #fff);
	box-shadow: 0 10px 30px rgba(22, 50, 36, .06);
}

/* ---- въпрос (summary) ---- */
.vh .vh-pfaq__q{
	list-style: none;               /* маха дефолтния триъгълник (Firefox) */
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.6vw, 22px);
	padding: clamp(16px, 1.6vw, 22px) clamp(18px, 1.8vw, 26px);
	color: var(--vh-dgreen);
	font-size: clamp(15px, 1.05vw, 18px);
	font-weight: 700;
	line-height: 1.35;
}
.vh .vh-pfaq__q::-webkit-details-marker{ display: none; }   /* маха триъгълника (WebKit) */
.vh .vh-pfaq__q::marker{ content: ""; }
.vh .vh-pfaq__q:focus-visible{
	outline: 2px solid var(--vh-teal);
	outline-offset: 3px;
	border-radius: clamp(14px, 1.4vw, 18px);
}

.vh .vh-pfaq__q-text{
	flex: 1 1 auto;
	min-width: 0;
	overflow-wrap: break-word;
}

/* ---- +/− индикатор (тонира се с продуктовия акцент) ---- */
.vh .vh-pfaq__icon{
	position: relative;
	flex: 0 0 auto;
	width: clamp(24px, 2vw, 28px);
	height: clamp(24px, 2vw, 28px);
	border-radius: 50%;
	border: 1.5px solid color-mix(in srgb, var(--acc, var(--vh-green)) 40%, var(--vh-line));
	color: var(--acc, var(--vh-green));
	transition: background-color .22s ease, border-color .22s ease, color .22s ease, rotate .22s ease;
}
.vh .vh-pfaq__icon::before,
.vh .vh-pfaq__icon::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	background: currentColor;
	border-radius: 2px;
	transition: scale .22s ease;
}
.vh .vh-pfaq__icon::before{ width: 44%; height: 2px; }   /* хоризонтална черта */
.vh .vh-pfaq__icon::after{  width: 2px; height: 44%; }   /* вертикална черта (+) */

.vh .vh-pfaq__item[open] .vh-pfaq__icon{
	background: var(--acc, var(--vh-green));
	border-color: var(--acc, var(--vh-green));
	color: #fff;
	rotate: 180deg;
}
.vh .vh-pfaq__item[open] .vh-pfaq__icon::after{ scale: 0; }   /* + → − */

/* ---- отговор ---- */
.vh .vh-pfaq__a{
	padding: 0 clamp(18px, 1.8vw, 26px) clamp(18px, 1.8vw, 24px);
}
.vh .vh-pfaq__a p{
	margin: 0;
	max-width: 68ch;
	color: var(--vh-mut);
	font-size: clamp(14px, .95vw, 16px);
	line-height: 1.6;
}

/* ---- тесни екрани ---- */
@media (max-width: 480px){
	.vh .vh-pfaq__q{ gap: 12px; }
}

@media (prefers-reduced-motion: reduce){
	.vh .vh-pfaq__item,
.vh .vh-pfaq__icon,
.vh .vh-pfaq__icon::before,
.vh .vh-pfaq__icon::after{ transition: none; }
}


/* ===== СЕКЦИЯ: product_ritual ===== */
/* ============ VIVORA — ПРОДУКТОВ РИТУАЛ (single product) ============ */
/* Ред от 3 мини карти, съединени с „+“, върху кремав панел с фин акцентен тон
   ($d['accent'] идва inline като --acc). Обща стойност + един тъмен бутон.
   При тесен екран редът се стакира вертикално, а картите стават хоризонтални. */

.vh .vh-pritual{ background: #fff; }

.vh .vh-pritual__intro{
	margin: calc(-1 * clamp(14px, 1.4vw, 26px)) auto clamp(28px, 2.6vw, 44px);
	max-width: 46ch;
	text-align: center;
	color: var(--vh-mut);
	font-size: clamp(15px, 1.05vw, 18px);
	font-weight: 500;
	line-height: 1.5;
}

/* --- панел --- */
.vh .vh-pritual__panel{
	background: color-mix(in srgb, var(--acc, var(--vh-green)) 5%, #F6F3EE);
	border: 1px solid color-mix(in srgb, var(--acc, var(--vh-green)) 22%, transparent);
	border-radius: 20px;
	padding: clamp(20px, 2.4vw, 40px);
	max-width: 1080px;
	margin-inline: auto;
}

/* --- ред от карти + „+“ --- */
.vh .vh-pritual__row{
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: clamp(10px, 1.2vw, 20px);
}

.vh .vh-pritual__plus{
	align-self: center;
	flex: 0 0 auto;
	color: color-mix(in srgb, var(--acc, var(--vh-green)) 72%, var(--vh-dgreen));
	font-size: clamp(24px, 2.4vw, 40px);
	font-weight: 300;
	line-height: 1;
	user-select: none;
}

/* --- мини карта --- */
.vh .vh-pritual__card{
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: clamp(10px, 1vw, 16px);
	padding: clamp(14px, 1.4vw, 22px);
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: 16px;
}

.vh .vh-pritual__media{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 3 / 4;
}
.vh .vh-pritual__media img{
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	transition: scale .35s ease;
}
.vh .vh-pritual__card:hover .vh-pritual__media img{ scale: 1.04; }

.vh .vh-pritual__body{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	width: 100%;
}

.vh .vh-pritual__name{
	margin: 0;
	font-size: clamp(14px, 1vw, 17px);
	font-weight: 800;
	line-height: 1.2;
	color: var(--vh-dgreen);
}
.vh .vh-pritual__name a{ color: inherit; text-decoration: none; }
.vh .vh-pritual__name a:hover{ text-decoration: underline; }

.vh .vh-pritual__line{
	margin: 0;
	font-size: clamp(10px, .68vw, 12px);
	font-weight: 700;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--acc, var(--vh-green)) 82%, var(--vh-mut));
}

.vh .vh-pritual__price{
	font-size: clamp(15px, 1.1vw, 19px);
	font-weight: 800;
	line-height: 1.1;
	color: var(--vh-dgreen);
}
.vh .vh-pritual__price .woocommerce-Price-amount{ font-size: inherit; }
.vh .vh-pritual__price del{ opacity: .5; font-weight: 600; font-size: .72em; margin-right: 6px; }
.vh .vh-pritual__price ins{ text-decoration: none; }

/* малък „+“ AJAX бутон за добавяне */
.vh .vh-pritual__add{
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	margin-top: 2px;
	border-radius: 50%;
	color: var(--acc, var(--vh-green));
	background: color-mix(in srgb, var(--acc, var(--vh-green)) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--acc, var(--vh-green)) 40%, transparent);
	font-size: 22px;
	font-weight: 400;
	line-height: 0;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.vh .vh-pritual__add span{ display: block; margin-top: -2px; }
.vh .vh-pritual__add:hover,
.vh .vh-pritual__add:focus-visible{
	color: #fff;
	background: var(--acc, var(--vh-green));
	border-color: var(--acc, var(--vh-green));
}
.vh .vh-pritual__add.loading{ opacity: .5; pointer-events: none; }
/* WooCommerce вмъква „Виж количката“ линк след AJAX бутона — държим го дискретен */
.vh .vh-pritual__add + .added_to_cart{
	display: block;
	margin-top: 6px;
	font-size: 12px;
	font-weight: 600;
	color: var(--vh-teal);
}

/* --- долен ред: обща стойност + бутон --- */
.vh .vh-pritual__foot{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: clamp(14px, 1.6vw, 24px);
	margin-top: clamp(18px, 1.8vw, 28px);
	padding-top: clamp(16px, 1.6vw, 24px);
	border-top: 1px solid color-mix(in srgb, var(--acc, var(--vh-green)) 20%, var(--vh-line));
}

.vh .vh-pritual__total{
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.vh .vh-pritual__total-label{
	font-size: clamp(12px, .8vw, 14px);
	font-weight: 600;
	letter-spacing: .3px;
	text-transform: uppercase;
	color: var(--vh-mut);
}
.vh .vh-pritual__total-val{
	font-size: clamp(22px, 1.8vw, 30px);
	font-weight: 800;
	line-height: 1.05;
	color: var(--vh-dgreen);
}
.vh .vh-pritual__total-val .woocommerce-Price-amount{ font-size: inherit; }

.vh .vh-pritual__cta{
	min-height: 52px;
	padding: 14px clamp(22px, 2.4vw, 38px);
	border-radius: 4px;
	letter-spacing: 1px;
}

/* --- адаптив: стак от хоризонтални карти --- */
@media (max-width: 720px){
	.vh .vh-pritual__row{
		flex-direction: column;
		align-items: stretch;
		gap: clamp(8px, 2.4vw, 14px);
	}
	.vh .vh-pritual__plus{ align-self: center; }
	.vh .vh-pritual__card{
		flex-direction: row;
		align-items: center;
		text-align: left;
		gap: 14px;
		padding: 12px 14px;
	}
	.vh .vh-pritual__media{
		flex: 0 0 76px;
		width: 76px;
	}
	.vh .vh-pritual__body{ align-items: flex-start; flex: 1 1 auto; }
	.vh .vh-pritual__add{ flex: 0 0 auto; margin-top: 0; }
}

@media (max-width: 480px){
	.vh .vh-pritual__foot{ flex-direction: column; align-items: stretch; }
	.vh .vh-pritual__cta{ width: 100%; }
}


/* ===== СЕКЦИЯ: product_related ===== */
/* ==========================================================================
   VIVORA — „МОЖЕ ДА ТИ ХАРЕСА И" (product_related)
   Свързани продукти в хоризонтален карусел. Картата ползва вида на .vh-fav от
   началната страница; тук задаваме само пистата, ширината на картите в нея и
   лек акцент по --acc (цветът на текущия продукт), подаден инлайн на root-а.
   ========================================================================== */
.vh .vh-prelated{
	--pr-gap: clamp(14px, 1.2vw, 24px);
}

.vh .vh-prelated__rail{ position: relative; }

.vh .vh-prelated__track{
	display: flex;
	gap: var(--pr-gap);
	margin: 0;
	padding: 4px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.vh .vh-prelated__track::-webkit-scrollbar{ display: none; }

/* Ширина на картата В ТАЗИ писта (2 класа надделяват над generic .vh-fav).
   По подразбиране 5 в реда — по-широки от 8-те на началната, за да отговарят
   на по-спокойния ритъм на продуктовата страница. */
.vh .vh-prelated__track .vh-fav{
	flex: 0 0 calc((100% - 4 * var(--pr-gap)) / 5);
}

/* Акцент по текущия продукт — фин, само на ховър, за да върже реда с продукта. */
.vh .vh-prelated .vh-fav__name a:hover{ color: var(--acc, var(--vh-teal)); }
.vh .vh-prelated .vh-cartbtn:hover{
	background: var(--acc, var(--vh-dgreen));
	border-color: var(--acc, var(--vh-dgreen));
	color: #fff;
}
.vh .vh-prelated .vh-navbtn:hover{
	background: var(--acc, var(--vh-dgreen));
	border-color: var(--acc, var(--vh-dgreen));
	color: #fff;
}

/* Скрий стрелките, когато няма какво да се скролва (JS слага .vh-rail--static). */
.vh .vh-prelated__rail.vh-rail--static .vh-navbtn{ display: none; }

/* --- адаптив: постепенно намаляваме колоните, на телефон надничаме следващата --- */
@media (max-width: 1300px){
	.vh .vh-prelated__track .vh-fav{ flex-basis: calc((100% - 3 * var(--pr-gap)) / 4); }
}
@media (max-width: 1000px){
	.vh .vh-prelated__track .vh-fav{ flex-basis: calc((100% - 2 * var(--pr-gap)) / 3); }
}
@media (max-width: 768px){
	.vh .vh-prelated .vh-navbtn{ display: none; }
	.vh .vh-prelated__track{
		gap: 14px;
		padding: 4px 0;
		scroll-padding-inline: 0;
		-webkit-overflow-scrolling: touch;
	}
	.vh .vh-prelated__track .vh-fav{ flex-basis: calc((100% - 1.4 * 14px) / 2.4); } /* надничане */
	.vh .vh-prelated .vh-fav__name{ margin-top: 12px; font-size: 13px; }
	.vh .vh-prelated .vh-fav__line{ font-size: 12px; }
	.vh .vh-prelated .vh-fav__foot{ margin-top: 10px; }
	.vh .vh-prelated .vh-fav__price{ font-size: 15px; }
	.vh .vh-prelated .vh-cartbtn{ width: 44px; height: 44px; }
	.vh .vh-prelated .vh-cartbtn .vh-ic{ width: 18px; height: 18px; }
}
@media (max-width: 480px){
	.vh .vh-prelated__track .vh-fav{ flex-basis: 78%; } /* една карта + надничане на следващата */
}


/* ===== СЕКЦИЯ: landing_hero ===== */
/* ============ VIVORA — ЛЕНДИНГ HERO (тематична страница по нужда) ============ */
.vh .vh-lhero{
	background: var(--vh-beige);
	color: var(--vh-ink);
	overflow: clip;
}

.vh .vh-lhero__grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(28px, 4vw, 48px);
	align-items: center;
}
@media (min-width: 1000px){
	.vh .vh-lhero__grid{
		grid-template-columns: 48fr 52fr;   /* повече място за копито → h1 на 1–2 реда */
		align-items: stretch;
		gap: clamp(32px, 4vw, 64px);
	}
}

/* ---- Копи ---- */
.vh .vh-lhero__copy{ min-width: 0; }
@media (min-width: 1000px){
	.vh .vh-lhero__copy{
		display: flex;
		flex-direction: column;
		justify-content: center;   /* вертикално центрирано спрямо високата снимка */
	}
}

/* Надзаглавие в лек акцентен чип (тонира се от --acc) */
.vh .vh-lhero__overline{
	display: inline-block;
	align-self: flex-start;
	margin: 0;
	padding: 7px 15px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--acc, var(--vh-teal)) 14%, transparent);
	color: var(--acc, var(--vh-teal));
	font-size: clamp(12px, 1vw, 14px);
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	line-height: 1.2;
}

.vh .vh-lhero__title{
	margin: clamp(16px, 1.9vw, 26px) 0 0;
	color: var(--vh-dgreen);
	font-size: clamp(30px, 3.4vw, 46px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.vh .vh-lhero__lead{
	margin: clamp(14px, 1.4vw, 20px) 0 0;
	max-width: 30em;
	color: var(--vh-mut);
	font-size: clamp(16px, 1.35vw, 21px);
	font-weight: 400;
	line-height: 1.5;
}

/* ---- Бутони ---- */
.vh .vh-lhero__actions{
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: clamp(24px, 2.6vw, 36px);
}
.vh .vh-lhero .vh-btn{
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(52px, 3.6vw, 60px);
	padding: 0 clamp(24px, 2.2vw, 34px);
	font-size: clamp(13px, 0.9vw, 15px);
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
	border-radius: 4px;
	white-space: nowrap;
}

/* ---- Снимка ---- */
.vh .vh-lhero__media{ min-width: 0; }
.vh .vh-lhero__img{
	display: block;
	width: 100%;
	height: 100%;                     /* при align-items:stretch пълни височината на копито */
	aspect-ratio: 59 / 41;
	object-fit: cover;
	border-radius: clamp(16px, 1.6vw, 24px);
	box-shadow: 0 30px 60px -34px rgba(22, 50, 36, .35);
}
@media (max-width: 999px){
	.vh .vh-lhero__img{ height: auto; }   /* при стек: височината идва от aspect-ratio */
}

/* ---- Тесни екрани (без хоризонтален скрол при 390px) ---- */
@media (max-width: 560px){
	.vh .vh-lhero .vh-btn{ flex: 1 1 100%; }
}


/* ===== СЕКЦИЯ: landing_products ===== */
/* ==========================================================================
   VIVORA — тематична landing секция: продукти за нуждата (.vh-lprod)
   Кремави заоблени карти по системата на продуктовата решетка; акцентът на
   нуждата идва през --acc върху корена и тонира плочките с линията.
   ========================================================================== */

.vh .vh-lprod .vh-h2{ margin-bottom: clamp(14px, 1.4vw, 22px); }

/* центриран увод */
.vh .vh-lprod__lead{
	max-width: 70ch;
	margin: 0 auto clamp(30px, 3vw, 52px);
	text-align: center;
	font-size: clamp(15px, 1.05vw, 18px);
	line-height: 1.6;
	color: var(--vh-mut);
	text-wrap: pretty;
}

/* решетка — auto-fit, минимум ~240px; 1 колона под 560px */
.vh .vh-lprod__grid{
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: clamp(16px, 1.6vw, 24px);
}

/* карта */
.vh .vh-lprod__card{
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 24px;
	background: #F6F3EE;
	border-radius: 20px;
	text-align: center;
}

/* пакшот */
.vh .vh-lprod__media{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 3 / 4;
}
.vh .vh-lprod__media img{
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

/* линия като плочка — тонирана с акцента на нуждата (--acc) */
.vh .vh-lprod__pill{
	display: inline-block;
	padding: 7px 16px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: var(--acc, var(--vh-green));
	background: color-mix(in srgb, var(--acc, #34584A) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--acc, #34584A) 42%, transparent);
}

/* име */
.vh .vh-lprod__name{
	margin: 0;
	font-size: clamp(17px, 1.15vw, 20px);
	font-weight: 800;
	line-height: 1.2;
	color: var(--vh-dgreen);
}
.vh .vh-lprod__name a{ color: inherit; text-decoration: none; }
.vh .vh-lprod__name a:hover{ text-decoration: underline; }

/* кратко описание */
.vh .vh-lprod__desc{
	margin: 0;
	max-width: 32ch;
	font-size: 14px;
	line-height: 1.45;
	color: var(--vh-mut);
}

/* рейтинг */
.vh .vh-lprod__rating{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.vh .vh-lprod__stars{ display: inline-flex; gap: 2px; }
.vh .vh-lprod .vh-star{
	width: 16px;
	height: 16px;
	fill: none;
	stroke: var(--vh-dgreen);
	stroke-width: 1.4;
}
.vh .vh-lprod .vh-star.is-on{ fill: var(--vh-dgreen); stroke: var(--vh-dgreen); }
.vh .vh-lprod__reviews{
	font-size: 13px;
	color: var(--vh-mut);
	white-space: nowrap;
}

/* цена */
.vh .vh-lprod__price{
	font-size: clamp(20px, 1.5vw, 24px);
	font-weight: 800;
	line-height: 1.1;
	color: var(--vh-dgreen);
}
.vh .vh-lprod__price .woocommerce-Price-amount{ font-size: inherit; }
.vh .vh-lprod__price del{ opacity: .5; font-weight: 600; font-size: .72em; margin-right: 6px; }
.vh .vh-lprod__price ins{ text-decoration: none; }

/* количество + добавяне (глобалният stepper JS ползва [data-step] + .vh-qty) */
.vh .vh-lprod__cart{
	display: flex;
	align-items: stretch;
	gap: 8px;
	width: 100%;
	margin-top: auto;
	padding-top: 4px;
}
.vh .vh-lprod__stepper{
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: 12px;
}
.vh .vh-lprod .vh-qtybtn{
	width: 34px;
	height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--vh-ink);
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.vh .vh-lprod .vh-qtybtn:hover{ color: var(--vh-teal); }
.vh .vh-lprod .vh-qty{
	width: 32px;
	height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--vh-ink);
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	-moz-appearance: textfield;
	appearance: textfield;
}
.vh .vh-lprod .vh-qty::-webkit-outer-spin-button,
.vh .vh-lprod .vh-qty::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }

/* по-висока специфичност от глобалния .vh-btn — за радиуса/паддинга на бутона */
.vh .vh-lprod__cart .vh-lprod__add{
	flex: 1 1 auto;
	min-width: 0;
	min-height: 48px;
	padding: 12px 16px;
	border-radius: 12px;
	letter-spacing: .5px;
	line-height: 1.15;
}

/* адаптив */
@media (max-width: 560px){
	.vh .vh-lprod__grid{ grid-template-columns: 1fr; }
	.vh .vh-lprod__cart .vh-lprod__add{ padding: 12px 10px; }
}

/* aspect-ratio не дава дефинитивна височина на дете с max-height:100%, затова
   кутията се разтягаше до цялата височина на снимката и съседните карти
   излизаха 1.5x различни (одит, находка №11). */
.vh .vh-lprod__media{
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	min-height: 0;
}
.vh .vh-lprod__media img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: contain;
}


/* ===== СЕКЦИЯ: landing_faq ===== */
/* ============ VIVORA — ЧЕСТО ЗАДАВАНИ ВЪПРОСИ (тематична landing) ============ */

.vh .vh-lfaq__list{
	max-width: 900px;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	gap: clamp(10px, 1vw, 14px);
}

/* ---- една карта-ред (native <details>) ---- */
.vh .vh-lfaq__item{
	background: #fff;
	border: 1px solid var(--vh-line);
	border-radius: clamp(15px, 1.4vw, 20px);
	transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
.vh .vh-lfaq__item:hover{
	border-color: color-mix(in srgb, var(--acc, var(--vh-green)) 45%, var(--vh-line));
}
.vh .vh-lfaq__item[open]{
	border-color: color-mix(in srgb, var(--acc, var(--vh-green)) 55%, var(--vh-line));
	background: color-mix(in srgb, var(--acc, var(--vh-green)) 4%, #fff);
	box-shadow: 0 10px 30px rgba(22, 50, 36, .06);
}

/* ---- въпрос (summary) ---- */
.vh .vh-lfaq__q{
	list-style: none;               /* маха дефолтния триъгълник (Firefox) */
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: clamp(14px, 1.6vw, 22px);
	padding: clamp(16px, 1.6vw, 22px) clamp(18px, 1.8vw, 26px);
	color: var(--vh-dgreen);
	font-size: clamp(15px, 1.05vw, 18px);
	font-weight: 700;
	line-height: 1.35;
}
.vh .vh-lfaq__q::-webkit-details-marker{ display: none; }   /* маха триъгълника (WebKit) */
.vh .vh-lfaq__q::marker{ content: ""; }
.vh .vh-lfaq__q:focus-visible{
	outline: 2px solid var(--vh-teal);
	outline-offset: 3px;
	border-radius: clamp(15px, 1.4vw, 20px);
}

.vh .vh-lfaq__q-text{
	flex: 1 1 auto;
	min-width: 0;
	overflow-wrap: break-word;
}

/* ---- +/− индикатор (тонира се с акцента на нуждата) ---- */
.vh .vh-lfaq__icon{
	position: relative;
	flex: 0 0 auto;
	width: clamp(24px, 2vw, 28px);
	height: clamp(24px, 2vw, 28px);
	border-radius: 50%;
	border: 1.5px solid color-mix(in srgb, var(--acc, var(--vh-green)) 40%, var(--vh-line));
	color: var(--acc, var(--vh-green));
	transition: background-color .22s ease, border-color .22s ease, color .22s ease, rotate .22s ease;
}
.vh .vh-lfaq__icon::before,
.vh .vh-lfaq__icon::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	background: currentColor;
	border-radius: 2px;
	transition: scale .22s ease;
}
.vh .vh-lfaq__icon::before{ width: 44%; height: 2px; }   /* хоризонтална черта */
.vh .vh-lfaq__icon::after{  width: 2px; height: 44%; }   /* вертикална черта (+) */

.vh .vh-lfaq__item[open] .vh-lfaq__icon{
	background: var(--acc, var(--vh-green));
	border-color: var(--acc, var(--vh-green));
	color: #fff;
	rotate: 180deg;
}
.vh .vh-lfaq__item[open] .vh-lfaq__icon::after{ scale: 0; }   /* + → − */

/* ---- отговор ---- */
.vh .vh-lfaq__a{
	padding: 0 clamp(18px, 1.8vw, 26px) clamp(18px, 1.8vw, 24px);
}
.vh .vh-lfaq__a p{
	margin: 0;
	max-width: 68ch;
	color: var(--vh-mut);
	font-size: clamp(14px, .95vw, 16px);
	line-height: 1.6;
}

/* ---- тесни екрани ---- */
@media (max-width: 480px){
	.vh .vh-lfaq__q{ gap: 12px; }
}

@media (prefers-reduced-motion: reduce){
	.vh .vh-lfaq__item,
.vh .vh-lfaq__icon,
.vh .vh-lfaq__icon::before,
.vh .vh-lfaq__icon::after{ transition: none; }
}


/* ==================== МОБИЛЕН СЛОЙ ==================== */
/* --- hero (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-hero__grid{ grid-template-columns: 1fr; }

	.vh .vh-hero__copy{ padding: 48px 20px 24px; min-width: 0; }

	.vh .vh-hero__eyebrow{ font-size: 14px; letter-spacing: 0.1em; }

	.vh .vh-hero__title{ font-size: clamp(34px, 9vw, 40px); line-height: 1.1; letter-spacing: -0.01em; margin-top: 14px; }

	.vh .vh-hero__lead{ font-size: 15px; line-height: 1.5; width: auto; max-width: none; margin-top: 12px; }

	.vh .vh-hero__actions{ flex-direction: column; align-items: stretch; flex-wrap: nowrap; gap: 12px; margin-top: 26px; }
	.vh .vh-hero .vh-btn{ width: 100%; min-height: 52px; font-size: 14px; padding-inline: 24px; }

	.vh .vh-hero__usps{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px 14px; margin-top: 34px; }
	.vh .vh-hero__usp{ gap: 12px; min-width: 0; }
	.vh .vh-hero__usp-icon{ width: 56px; height: 56px; }
	.vh .vh-hero__usp-icon svg{ width: 30px; height: 30px; }
	.vh .vh-hero__usp-label{ font-size: 13px; line-height: 1.45; }

	.vh .vh-hero__media{ order: 0; margin: 4px 20px 44px; border-radius: 16px; overflow: hidden; }
	.vh .vh-hero__img{ border-radius: 16px; }
}
@media (max-width: 430px){
	.vh .vh-hero__copy{ padding: 44px 16px 22px; }
	.vh .vh-hero__media{ margin: 4px 16px 40px; }
	.vh .vh-hero__usps{ gap: 24px 10px; }
}

/* --- needs (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-needs{
		padding-block: 44px;
	}
	.vh .vh-needs .vh-h2{
		margin-bottom: 26px;
	}
	.vh .vh-needs .vh-navbtn{
		display: none;
	}
	.vh .vh-needs__track{
		gap: 14px;
		scroll-padding-left: 0;
		-webkit-overflow-scrolling: touch;
	}
	.vh .vh-need{
		flex: 0 0 74%;
	}
	.vh .vh-need__media{
		margin-bottom: 30px;
	}
	.vh .vh-need__title{
		font-size: 14px;
		margin-bottom: 5px;
	}
	.vh .vh-need__sub{
		font-size: 13px;
	}
}
@media (max-width: 430px){
	.vh .vh-needs__track{
		gap: 12px;
	}
	.vh .vh-need{
		flex: 0 0 78%;
	}
}

/* --- rhythm (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-rhythm{
		padding-block: 44px;
	}
	.vh .vh-rhythm__panel{
		border-radius: 18px;
		padding: 24px var(--rh-pad-x) 28px;
	}
	.vh .vh-rhythm__track{
		grid-auto-columns: 74%;
	}
	.vh .vh-rhythm__item{
		scroll-snap-align: start;
	}
	.vh .vh-rhythm__cta{
		margin-top: 24px;
	}
	.vh .vh-rhythm__cta .vh-btn{
		display: flex;
		width: 100%;
		justify-content: center;
	}
}

/* --- карусели: стрелките са скрити на телефон, но релсите пазеха по 46px
       странично поле за тях и свиваха картите с 27% (одит, находка №4) --- */
@media (max-width: 767px){
	.vh .vh-favs__rail,
.vh .vh-needs__rail,
.vh .vh-social__rail,
.vh .vh-prelated__rail{ padding-inline: 0; }
	.vh .vh-favs__rail .vh-navbtn,
.vh .vh-needs__rail .vh-navbtn,
.vh .vh-social__rail .vh-navbtn,
.vh .vh-prelated__rail .vh-navbtn{ display: none; }
}

/* --- lines (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-lines{
		padding-top: 44px;
		padding-bottom: 44px;
	}
	.vh .vh-lines__grid{
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.vh .vh-line{
		/* по-висока карта + по-компактно копи, за да не ляга текстът
		   и бутонът върху опаковката (одит, находка №2) */
		aspect-ratio: 4 / 5.6;
		border-radius: 18px;
	}
	.vh .vh-line__copy{
		max-width: 76%;
		min-width: 0;
		padding: 18px;
	}
	.vh .vh-line__mark{
		font-size: 11px;
		letter-spacing: 2.5px;
		margin-bottom: 10px;
	}
	.vh .vh-line__title{
		font-size: 21px;
		margin-bottom: 8px;
	}
	.vh .vh-line__text{
		font-size: 13.5px;
		line-height: 1.45;
		margin-bottom: 14px;
	}
	.vh .vh-line__btn{
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 10px 18px;
	}
}
@media (max-width: 430px){
	.vh .vh-line__copy{
		max-width: 82%;
	}
	.vh .vh-line__title{
		font-size: 22px;
	}
}

/* --- benefits (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-benefits{
		--vhb-icon: 34px;
		--vhb-icongap: 14px;
		padding-inline: 16px;
		padding-block: 44px;
	}
	.vh .vh-benefits .vh-benefits__box{
		padding: 28px;
		border-radius: 18px;
	}
	.vh .vh-benefits .vh-benefits__grid{
		grid-template-columns: minmax(0, 1fr);
		row-gap: 26px;
	}
	.vh .vh-benefits .vh-benefits__icon{
		margin-top: 4px;
	}
}
@media (max-width: 430px){
	.vh .vh-benefits{
		padding-inline: 16px;
	}
	.vh .vh-benefits .vh-benefits__box{
		padding: 24px;
	}
	.vh .vh-benefits .vh-benefits__grid{
		row-gap: 24px;
	}
}

/* --- story (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-story{
		padding-block: 44px;
		padding-inline: 16px;
	}
	.vh .vh-story__inner{
		border-radius: 18px;
	}
	.vh .vh-story__body{
		width: 100%;
		padding: 32px 24px 28px;
	}
	.vh .vh-story__mark{
		margin-bottom: 22px;
	}
	.vh .vh-story__eyebrow{
		margin-bottom: 12px;
	}
	.vh .vh-story__title{
		margin-bottom: 14px;
		line-height: 1.2;
	}
	.vh .vh-story__text{
		margin-bottom: 24px;
		font-size: 15px;
	}
	.vh .vh-story__actions{
		flex-direction: column;
		gap: 10px;
	}
	.vh .vh-story__actions .vh-btn{
		width: 100%;
		min-height: 48px;
	}
	/* native ratio (no crop) so the baked-in play circle + label stay under the tap zone */
	.vh .vh-story__img{
		aspect-ratio: 1235 / 645;
	}
	/* keep the click target over the baked circle, enlarged for comfortable thumb tapping */
	.vh .vh-story__play{
		left: 46%;
		top: 40%;
		width: 16%;
		height: 20%;
	}
}
@media (max-width: 430px){
	.vh .vh-story{
		padding-inline: 16px;
	}
	.vh .vh-story__body{
		padding: 28px 20px 24px;
	}
}

/* --- testimonials (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-testimonials{
		--vh-t-quote: clamp(19px, 5.2vw, 22px);
		--vh-t-avatar-gap: 16px;
		padding-block: 44px 40px;
	}

	.vh .vh-testimonials__quote{
		overflow-wrap: break-word;
	}

	.vh .vh-testimonials__controls{
		margin-top: 28px;
		gap: 16px;
	}

	.vh .vh-testimonials__nav{
		width: 48px;
		height: 48px;
		border: 1px solid var(--vh-line);
		border-radius: 50%;
	}
}

/* --- goals (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-goals{
		padding-top:44px;
		padding-bottom:44px;
	}
	.vh .vh-goals__panel{
		padding:24px 18px;
		border-radius:16px;
	}
	.vh .vh-goals__head{
		gap:14px;
		margin-bottom:26px;
	}
	.vh .vh-goals__title{
		font-size:clamp(23px,6.4vw,28px);
	}
	.vh .vh-goals__intro{
		font-size:14px;
		line-height:1.55;
	}
	.vh .vh-goals__grid{
		gap:28px;
	}
	.vh .vh-goal__img{
		margin-bottom:16px;
	}
	.vh .vh-goal__title{
		font-size:18px;
	}
	.vh .vh-goal__text{
		font-size:15px;
		margin-bottom:16px;
	}
	.vh .vh-goal__btn{
		width:100%;
		justify-content:center;
		text-align:center;
		min-height:48px;
	}
}
@media (max-width: 430px){
	.vh .vh-goals__panel{
		padding:22px 14px;
	}
	.vh .vh-goals__grid{
		gap:24px;
	}
}

/* --- stats (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-stats{
		padding-block: 44px;
	}
	.vh .vh-stats__brand{
		font-size: 20px;
		margin: 0 0 28px;
	}
	.vh .vh-stats__grid{
		grid-template-columns: repeat(2, 1fr);
		justify-content: stretch;
		column-gap: 12px;
		row-gap: 36px;
		max-width: 360px;
		margin-inline: auto;
	}
	.vh .vh-stats__num{
		font-size: clamp(44px, 13vw, 56px);
	}
	.vh .vh-stats__label{
		font-size: 14px;
		margin-top: 8px;
	}
}
@media (max-width: 430px){
	.vh .vh-stats__grid{
		column-gap: 10px;
		row-gap: 32px;
	}
}

/* --- social (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-social{ padding-block: 44px; }
	.vh .vh-social__sub{
		max-width: 42ch;
		margin-bottom: 26px;
		font-size: 15px;
		line-height: 1.55;
	}
	.vh .vh-social .vh-h2{
		font-size: clamp(22px, 6.2vw, 26px);
	}
	.vh .vh-social__track{
		gap: 12px;
		padding: 4px 0;
		scroll-padding-left: 0;
		-webkit-overflow-scrolling: touch;
	}
	.vh .vh-post{
		flex: 0 0 70%;
	}
	.vh .vh-post__link{
		border-radius: 18px;
	}
	.vh .vh-navbtn{
		display: none;
	}
}
@media (max-width: 430px){
	.vh .vh-post{
		flex: 0 0 74%;
	}
}

/* --- favourites (мобилно) --- */
@media (max-width: 767px) {
	.vh .vh-favs{
		padding-block: 44px;
	}
	.vh .vh-favs .vh-h2{
		margin-bottom: 24px;
	}
	.vh .vh-favs .vh-navbtn{
		display: none;
	}
	.vh .vh-favs__track{
		gap: 14px;
		padding: 4px 0;
		scroll-padding-inline: 0;
	}
	.vh .vh-favs .vh-fav{
		flex: 0 0 62%;
	}
	.vh .vh-favs .vh-fav__name{
		margin-top: 12px;
		font-size: 13px;
	}
	.vh .vh-favs .vh-fav__line,
.vh .vh-favs .vh-fav__size{
		font-size: 12px;
	}
	.vh .vh-favs .vh-fav__foot{
		margin-top: 10px;
	}
	.vh .vh-favs .vh-fav__price{
		font-size: 15px;
	}
	.vh .vh-favs .vh-cartbtn{
		width: 44px;
		height: 44px;
	}
	.vh .vh-favs .vh-cartbtn .vh-ic{
		width: 18px;
		height: 18px;
	}
}

/* --- bundles (мобилно) --- */
@media (max-width: 767px){
	.vh .vh-bundles.vh-sec{ padding-block: 44px; }

	.vh .vh-bundles__grid{
		display: flex;
		grid-template-columns: none;
		gap: 14px;
		margin-inline: calc(-1 * clamp(16px, 2.1vw, 40px));
		padding-inline: clamp(16px, 2.1vw, 40px);
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-left: clamp(16px, 2.1vw, 40px);
		scroll-behavior: smooth;
		scrollbar-width: none;
		overscroll-behavior-x: contain;
		-webkit-overflow-scrolling: touch;
	}
	.vh .vh-bundles__grid::-webkit-scrollbar{ display: none; }

	.vh .vh-bundle{
		flex: 0 0 68%;
		min-width: 0;
		scroll-snap-align: start;
	}

	.vh .vh-bundle__name{ margin: 12px 0 6px; font-size: 14px; }
	.vh .vh-bundle__price{ font-size: 17px; }
}

