/*
Theme Name: VIGRES Clean Zero v244
Theme URI: https://vigres.cz
Author: VIGRES
Description: Čisté WooCommerce téma VIGRES vytvořené od nuly bez historických CSS/JS vrstev.
Version: 244.0.0
Text Domain: vigres-clean-zero
*/

:root {
  --vg-bg: #fbfaf7;
  --vg-surface: #ffffff;
  --vg-ink: #1c1d1f;
  --vg-text: #62696b;
  --vg-muted: #85898a;
  --vg-teal: #31484b;
  --vg-teal-dark: #26383a;
  --vg-green: #60776b;
  --vg-border: #e4e3de;
  --vg-sale: #9a584f;

  --vg-font-body: "Noto Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --vg-font-heading: "Ubuntu", "Noto Sans", system-ui, sans-serif;

  --vg-shell: 1200px;
  --vg-gutter: 32px;
  --vg-radius: 26px;
  --vg-shadow: 0 18px 42px rgba(28, 29, 31, .06);
}

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

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--vg-bg);
  color: var(--vg-ink);
  font-family: var(--vg-font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

button,
input,
select,
textarea {
  font: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading);
}

.vg-shell {
  width: min(calc(100% - (2 * var(--vg-gutter))), var(--vg-shell));
  margin-inline: auto;
}

/* HEADER */
.vg-topline {
  display: flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  background: var(--vg-teal-dark);
  color: rgba(255,255,255,.9);
  font-size: .82rem;
  font-weight: 700;
}

.vg-header {
  background: var(--vg-teal);
  color: rgba(255,255,255,.88);
}

.vg-header__inner {
  min-height: 64px;
  display: grid;
  grid-template-columns: 150px 1fr auto;
  align-items: center;
  gap: 24px;
}

.vg-brand {
  color: rgba(255,255,255,.9);
  font-family: var(--vg-font-heading);
  font-weight: 700;
  letter-spacing: .02em;
}

.vg-nav {
  display: flex;
  justify-content: center;
  gap: 32px;
}

.vg-nav a {
  color: rgba(255,255,255,.76);
  font-family: var(--vg-font-heading);
  font-size: .92rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .2s ease;
}

.vg-nav a:hover,
.vg-nav a:focus-visible {
  color: #fff;
}

.vg-header__icons {
  display: flex;
  gap: 16px;
  align-items: center;
}

.vg-icon-link {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  color: rgba(255,255,255,.72);
  text-decoration: none;
}

.vg-icon-link svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
}

/* MAIN */
.vg-main {
  min-height: calc(100vh - 320px);
}

.vg-breadcrumbs {
  padding: 20px 0 14px;
  color: #777c7d;
  font-size: .82rem;
}

.vg-breadcrumbs a {
  color: #6d7274;
}

/* CLEAN PRODUCT HERO */
.vg-product-hero {
  display: grid;
  grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
  gap: 42px;
  align-items: start;
  padding: 24px;
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: var(--vg-shadow);
}

.vg-gallery {
  min-width: 0;
}

.vg-gallery__main {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  background: #f7efe4;
}

.vg-gallery__main img {
  width: 100%;
  aspect-ratio: 1 / .92;
  object-fit: cover;
}

.vg-gallery__zoom {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 20px rgba(28,29,31,.08);
  cursor: pointer;
}

.vg-gallery__thumbs {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}

.vg-gallery__thumb {
  width: 76px;
  height: 76px;
  overflow: hidden;
  padding: 3px;
  border: 1px solid var(--vg-border);
  border-radius: 12px;
  background: #fff;
  cursor: pointer;
}

.vg-gallery__thumb[aria-current="true"] {
  border-color: var(--vg-teal);
  box-shadow: 0 0 0 2px rgba(49,72,75,.09);
}

.vg-gallery__thumb img {
  width: 100%;
  height: 100%;
  border-radius: 9px;
  object-fit: cover;
}

.vg-product-copy {
  min-width: 0;
  padding-top: 2px;
}

.vg-product-copy h1 {
  margin-bottom: 12px;
  font-size: clamp(2.35rem, 4vw, 3.2rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}

.vg-product-subtitle {
  margin: 0 0 8px;
  color: #6b7072;
  font-size: 1.1rem;
  line-height: 1.5;
}

.vg-product-dose {
  margin: 0 0 10px;
  color: #65716d;
  font-size: 1rem;
  line-height: 1.5;
}

.vg-product-dose strong {
  color: var(--vg-teal-dark);
}

.vg-product-price {
  margin: 0 0 10px;
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: 2.35rem;
  line-height: 1.1;
}

.vg-product-price del {
  display: inline-block;
  margin-right: 10px;
  color: #96999a;
  font-size: 1.05rem;
  font-weight: 400;
}

.vg-product-price ins {
  color: inherit;
  text-decoration: none;
}

.vg-product-pack {
  margin: 0 0 18px;
  color: #6b7072;
  font-size: .95rem;
}

.vg-product-pack strong {
  color: var(--vg-teal-dark);
}

.vg-benefits {
  display: grid;
  gap: 8px;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.vg-benefits li {
  position: relative;
  padding-left: 28px;
  color: #263032;
  font-weight: 600;
  line-height: 1.42;
}

.vg-benefits li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--vg-green);
  font-weight: 700;
}

.vg-buybox {
  padding: 12px;
  border: 1px solid rgba(49,72,75,.1);
  border-radius: 16px;
  background: #fcfcfa;
  box-shadow: 0 8px 22px rgba(28,29,31,.035);
}

.vg-buybox form {
  display: grid;
  grid-template-columns: 140px minmax(0,1fr);
  gap: 18px;
  align-items: center;
  margin: 0;
}

.vg-quantity {
  display: grid;
  grid-template-columns: 42px 1fr 42px;
  height: 48px;
  overflow: hidden;
  border: 1px solid #d9dcd9;
  border-radius: 11px;
  background: #fff;
}

.vg-quantity button,
.vg-quantity input {
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--vg-teal-dark);
  text-align: center;
}

.vg-quantity button {
  cursor: pointer;
}

.vg-quantity input {
  border-inline: 1px solid #ecece8;
  font-weight: 700;
  -moz-appearance: textfield;
}

.vg-quantity input::-webkit-inner-spin-button,
.vg-quantity input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.vg-add {
  min-height: 48px;
  border: 0;
  border-radius: 11px;
  background: var(--vg-teal);
  color: #fff;
  font-family: var(--vg-font-heading);
  font-weight: 700;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease;
}

.vg-add:hover,
.vg-add:focus-visible {
  background: var(--vg-teal-dark);
  transform: translateY(-1px);
}

.vg-trust {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  margin-top: 10px;
  color: #7b8081;
  font-size: .75rem;
}

.vg-trust span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
}

.vg-dot {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--vg-green);
}

.vg-cz {
  display: inline-grid;
  min-width: 20px;
  height: 16px;
  place-items: center;
  padding-inline: 4px;
  border: 1px solid #dfe1de;
  border-radius: 4px;
  background: #fff;
  color: #60706e;
  font-size: .6rem;
  line-height: 1;
}

/* FOOTER */
.vg-footer {
  margin-top: 120px;
  padding: 58px 0 30px;
  background: var(--vg-teal);
  color: rgba(255,255,255,.75);
}

.vg-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr repeat(3, 1fr);
  gap: 48px;
}

.vg-footer h3,
.vg-footer h4 {
  color: rgba(255,255,255,.9);
}

.vg-footer h3 {
  font-size: 1.65rem;
}

.vg-footer h4 {
  margin-bottom: 12px;
  font-size: .8rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vg-footer p,
.vg-footer a {
  color: rgba(255,255,255,.68);
  font-size: .85rem;
}

.vg-footer ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vg-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  margin-top: 38px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.11);
  font-size: .74rem;
}

@media (max-width: 980px) {
  :root {
    --vg-gutter: 24px;
  }

  .vg-header__inner {
    grid-template-columns: auto 1fr auto;
  }

  .vg-nav {
    gap: 18px;
  }

  .vg-product-hero {
    grid-template-columns: 1fr;
  }

  .vg-footer__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 720px) {
  :root {
    --vg-gutter: 16px;
  }

  .vg-topline {
    display: none;
  }

  .vg-header__inner {
    min-height: 58px;
    grid-template-columns: 1fr auto;
  }

  .vg-nav {
    display: none;
  }

  .vg-product-hero {
    gap: 24px;
    padding: 14px;
    border-radius: 22px;
  }

  .vg-gallery__main {
    border-radius: 18px;
  }

  .vg-gallery__main img {
    aspect-ratio: 1 / 1;
  }

  .vg-product-copy h1 {
    font-size: 2.35rem;
  }

  .vg-buybox form {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .vg-quantity {
    width: 138px;
  }

  .vg-trust {
    grid-template-columns: 1fr;
  }

  .vg-trust span {
    justify-content: flex-start;
  }

  .vg-footer {
    margin-top: 80px;
  }

  .vg-footer__grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .vg-footer__bottom {
    flex-direction: column;
  }
}


/* =========================================================
   VIGRES Clean Zero v2 – finishing Hero + přesná SVG lupa
   ========================================================= */

/* Jemně kompaktnější Hero bez změny základní kompozice. */
.vg-product-hero {
  padding: 22px 24px 20px;
}

.vg-product-copy {
  padding-top: 0;
}

.vg-product-copy h1 {
  margin-bottom: 10px;
}

.vg-product-subtitle {
  margin-bottom: 6px;
}

.vg-product-dose {
  margin-bottom: 8px;
}

.vg-product-price {
  margin-bottom: 8px;
}

.vg-product-pack {
  margin-bottom: 16px;
}

.vg-benefits {
  gap: 7px;
  margin-bottom: 16px;
}

/* Lupa: žádné CSS kreslení. Ikona je skutečné SVG přesně ve středu. */
.vg-gallery__zoom {
  display: grid;
  place-items: center;
  padding: 0;
}

.vg-gallery__zoom svg {
  display: block;
  width: 21px;
  height: 21px;
  overflow: visible;
  stroke: #11191a;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  transform: translate(.3px, .3px);
}

/* Nákupní box o trochu klidnější. */
.vg-buybox {
  padding: 11px 12px;
}

.vg-buybox form {
  gap: 20px;
}

/* Trust řádek: přesně jedna osa a méně optického šumu. */
.vg-trust {
  align-items: center;
  gap: 16px;
  margin-top: 9px;
  color: #7d8283;
}

.vg-trust span {
  min-height: 20px;
  line-height: 1.25;
}

.vg-cz {
  min-width: 18px;
  height: 14px;
  padding-inline: 3px;
  border-color: #e2e3df;
  border-radius: 3px;
  font-size: .54rem;
}

/* Desktop: tři trust položky opravdu v jedné linii. */
@media (min-width: 721px) {
  .vg-trust {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .vg-trust span {
    white-space: nowrap;
  }
}

/* Mobil zachovává čistou a snadno čitelnou strukturu. */
@media (max-width: 720px) {
  .vg-product-hero {
    padding: 14px;
  }

  .vg-gallery__zoom {
    top: 14px;
    right: 14px;
    width: 40px;
    height: 40px;
  }

  .vg-gallery__zoom svg {
    width: 20px;
    height: 20px;
  }
}


/* =========================================================
   VIGRES Clean Zero v3
   Finální Hero micro-pass + první čistá sekce "Proč LUNA?"
   ========================================================= */

/* HERO trust: kompaktnější a vizuálně klidnější */
.vg-trust {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 0;
  margin-top: 10px;
  color: #7b8081;
  font-size: .74rem;
}

.vg-trust span {
  position: relative;
  display: inline-flex;
  min-height: 20px;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  padding: 0 18px;
  white-space: nowrap;
}

.vg-trust span:first-child {
  padding-left: 4px;
}

.vg-trust span + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 14px;
  background: rgba(49,72,75,.10);
  transform: translateY(-50%);
}

.vg-trust__flag {
  display: block;
  width: 18px;
  height: 12px;
  flex: 0 0 18px;
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(28,29,31,.08);
}

/* Jednotný systém všech budoucích produktových sekcí */
.vg-product-section {
  width: min(calc(100% - (2 * var(--vg-gutter))), var(--vg-shell));
  margin-inline: auto;
  margin-top: 78px;
}

.vg-product-section__head {
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-kicker {
  margin: 0 0 8px;
  color: var(--vg-teal);
  font-family: var(--vg-font-heading);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.vg-product-section__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-product-section__lead {
  max-width: 680px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .98rem;
  line-height: 1.65;
}

/* Proč LUNA? */
.vg-why {
  padding: clamp(34px, 4vw, 50px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-why__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.vg-why-card {
  min-height: 190px;
  padding: 22px 20px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 17px;
  background: #fbfaf7;
}

.vg-why-card__meta {
  display: block;
  margin-bottom: 14px;
  color: var(--vg-green);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vg-why-card h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.vg-why-card p {
  margin: 0;
  color: var(--vg-text);
  font-size: .88rem;
  line-height: 1.58;
}

@media (max-width: 980px) {
  .vg-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .vg-trust span {
    justify-content: center;
    padding-inline: 8px;
  }

  .vg-why__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .vg-product-section {
    margin-top: 56px;
  }

  .vg-why {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-why__grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .vg-why-card {
    min-height: 0;
  }

  .vg-trust {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .vg-trust span {
    justify-content: flex-start;
    padding: 0;
  }

  .vg-trust span + span::before {
    display: none;
  }
}


/* =========================================================
   VIGRES Clean Zero v4 – "Nejde o med. Jde o směs uvnitř."
   ========================================================= */

.vg-compare {
  padding: clamp(36px, 4vw, 52px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-compare__head {
  max-width: 820px;
  margin: 0 auto 30px;
  text-align: center;
}

.vg-compare__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-compare__lead {
  max-width: 760px;
  margin: 13px auto 0;
  color: var(--vg-text);
  font-size: .98rem;
  line-height: 1.7;
}

.vg-compare__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}

.vg-compare-card {
  padding: 26px 26px 24px;
  border: 1px solid rgba(49,72,75,.09);
  border-radius: 20px;
  background: #fbfaf7;
}

.vg-compare-card--vigres {
  border-color: rgba(49,72,75,.22);
  background: #f3f6f3;
  box-shadow: inset 0 0 0 1px rgba(49,72,75,.035);
}

.vg-compare-card__eyebrow {
  display: block;
  margin-bottom: 12px;
  color: var(--vg-green);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vg-compare-card h3 {
  margin: 0 0 16px;
  font-size: 1.22rem;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.vg-compare-card ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vg-compare-card li {
  position: relative;
  padding-left: 24px;
  color: var(--vg-text);
  font-size: .9rem;
  line-height: 1.55;
}

.vg-compare-card li::before {
  content: "•";
  position: absolute;
  left: 5px;
  top: 0;
  color: #9a9e9e;
  font-weight: 700;
}

.vg-compare-card--vigres li::before {
  content: "✓";
  left: 0;
  color: var(--vg-green);
}

.vg-compare__value {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px 16px;
  align-items: center;
  margin-top: 16px;
  padding: 16px 18px;
  border: 1px solid rgba(158,111,62,.12);
  border-radius: 15px;
  background: #fbf7ef;
}

.vg-compare__value-label {
  color: #9e6f3e;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vg-compare__value strong {
  color: var(--vg-teal-dark);
  font-size: .92rem;
  line-height: 1.5;
}

@media (max-width: 760px) {
  .vg-compare {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-compare__grid {
    grid-template-columns: 1fr;
  }

  .vg-compare__value {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}


/* =========================================================
   VIGRES Clean Zero v5 – video blok
   "Podívejte se, co je uvnitř jedné lžičky."
   ========================================================= */

.vg-videos {
  padding: clamp(36px, 4vw, 52px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-videos__head {
  max-width: 780px;
  margin: 0 auto 30px;
  text-align: center;
}

.vg-videos__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-videos__lead {
  max-width: 680px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .98rem;
  line-height: 1.65;
}

.vg-videos__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.vg-video-card {
  overflow: hidden;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(28,29,31,.035);
}

.vg-video-card__media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 9 / 16;
  background:
    linear-gradient(180deg, rgba(25,36,37,.05), rgba(25,36,37,.22)),
    #ebe8df;
}

.vg-video-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vg-video-card__placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  text-align: center;
  color: rgba(38,56,58,.62);
  font-size: .78rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vg-video-card__play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 24px rgba(28,29,31,.15);
  transform: translate(-50%, -50%);
  cursor: pointer;
}

.vg-video-card__play::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 16px;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 15px solid var(--vg-teal-dark);
}

.vg-video-card__body {
  padding: 20px 20px 22px;
}

.vg-video-card__meta {
  display: block;
  margin-bottom: 10px;
  color: var(--vg-green);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vg-video-card h3 {
  margin: 0 0 9px;
  font-size: 1.12rem;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.vg-video-card p {
  margin: 0;
  color: var(--vg-text);
  font-size: .88rem;
  line-height: 1.58;
}

@media (max-width: 900px) {
  .vg-videos__grid {
    grid-template-columns: repeat(3, minmax(220px, 1fr));
    overflow-x: auto;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
  }

  .vg-video-card {
    scroll-snap-align: start;
  }
}

@media (max-width: 720px) {
  .vg-videos {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-videos__grid {
    grid-template-columns: repeat(3, minmax(250px, 78vw));
    gap: 12px;
  }
}


/* =========================================================
   VIGRES Clean Zero v6 – skutečné náhledy videí
   ========================================================= */

.vg-video-card__poster {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.vg-video-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20,30,31,.02), rgba(20,30,31,.10));
  pointer-events: none;
}

.vg-video-card__play {
  z-index: 2;
}


/* =========================================================
   VIGRES Clean Zero v7 – Jak užívat LUNU?
   ========================================================= */

.vg-usage {
  padding: clamp(36px, 4vw, 52px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-usage__head {
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-usage__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-usage__lead {
  max-width: 680px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .98rem;
  line-height: 1.65;
}

.vg-usage__panel {
  padding: 12px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 20px;
  background: #f3f6f3;
}

.vg-usage__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.vg-usage-card {
  min-height: 164px;
  padding: 22px 20px;
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 15px;
  background: #fff;
}

.vg-usage-card__meta {
  display: block;
  margin-bottom: 14px;
  color: var(--vg-green);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vg-usage-card h3 {
  margin: 0 0 9px;
  font-size: 1.12rem;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.vg-usage-card p {
  margin: 0;
  color: var(--vg-text);
  font-size: .88rem;
  line-height: 1.58;
}

.vg-usage__note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 13px 16px;
  border: 1px solid rgba(158,111,62,.14);
  border-radius: 13px;
  background: #fbf7ef;
  color: #6f6557;
  font-size: .82rem;
  line-height: 1.5;
}

.vg-usage__note strong {
  color: #735433;
}

.vg-usage__note-mark {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #9e6f3e;
}

@media (max-width: 820px) {
  .vg-usage__grid {
    grid-template-columns: 1fr;
  }

  .vg-usage-card {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .vg-usage {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-usage__panel {
    padding: 9px;
    border-radius: 17px;
  }

  .vg-usage__note {
    align-items: flex-start;
  }
}


/* =========================================================
   VIGRES Clean Zero v8 – výrazný blok Složení a hodnoty
   ========================================================= */

.vg-details {
  padding: clamp(38px, 4.5vw, 56px);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 28px;
  background: var(--vg-teal);
  box-shadow: 0 18px 44px rgba(28,29,31,.09);
  color: rgba(255,255,255,.84);
}

.vg-details__head {
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-details .vg-kicker {
  color: rgba(255,255,255,.66);
}

.vg-details__head h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-details__lead {
  max-width: 660px;
  margin: 12px auto 0;
  color: rgba(255,255,255,.72);
  font-size: .98rem;
  line-height: 1.65;
}

.vg-details__accordions {
  display: grid;
  gap: 12px;
}

.vg-details-item {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 17px;
  background: #fbfaf7;
  color: var(--vg-ink);
  box-shadow: 0 8px 20px rgba(18,28,29,.08);
}

.vg-details-toggle {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 42px;
  width: 100%;
  min-height: 78px;
  align-items: center;
  gap: 20px;
  padding: 18px 20px 18px 24px;
  border: 0;
  background: transparent;
  color: var(--vg-ink);
  text-align: left;
  cursor: pointer;
}

.vg-details-toggle__copy {
  display: grid;
  gap: 4px;
}

.vg-details-toggle__eyebrow {
  color: var(--vg-green);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.vg-details-toggle__title {
  font-family: var(--vg-font-heading);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
}

.vg-details-toggle__icon {
  position: relative;
  width: 34px;
  height: 34px;
  justify-self: end;
  border-radius: 50%;
  background: rgba(49,72,75,.065);
}

.vg-details-toggle__icon::before,
.vg-details-toggle__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 13px;
  height: 2px;
  border-radius: 999px;
  background: var(--vg-teal-dark);
  transform: translate(-50%, -50%);
  transition: transform .22s ease;
}

.vg-details-toggle__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.vg-details-toggle[aria-expanded="true"] .vg-details-toggle__icon::after {
  transform: translate(-50%, -50%) rotate(0);
}

.vg-details-toggle:hover,
.vg-details-toggle:focus-visible {
  background: rgba(49,72,75,.025);
}

.vg-details-panel {
  padding: 0 24px 24px;
}

.vg-details-panel[hidden] {
  display: none;
}

.vg-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--vg-border);
  border-radius: 14px;
  background: #fff;
}

.vg-details-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  background: #fff;
  font-size: .86rem;
}

.vg-details-table th,
.vg-details-table td {
  padding: 13px 16px;
  border-bottom: 1px solid #ecebe6;
  text-align: left;
  vertical-align: middle;
}

.vg-details-table thead th {
  background: #f2f4f1;
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.vg-details-table tbody tr:last-child td {
  border-bottom: 0;
}

.vg-details-table th:nth-child(n+2),
.vg-details-table td:nth-child(n+2) {
  text-align: right;
  white-space: nowrap;
}

.vg-details-table td:first-child {
  color: #2b3334;
  font-weight: 600;
}

.vg-details__source-note {
  margin: 12px 2px 0;
  color: #777c7d;
  font-size: .74rem;
  line-height: 1.5;
}

@media (max-width: 720px) {
  .vg-details {
    padding: 26px 18px;
    border-radius: 22px;
  }

  .vg-details-toggle {
    min-height: 70px;
    grid-template-columns: 1fr 36px;
    padding: 15px 14px 15px 16px;
    gap: 12px;
  }

  .vg-details-panel {
    padding: 0 14px 16px;
  }

  .vg-details-table {
    min-width: 540px;
  }
}


/* =========================================================
   VIGRES Clean Zero v9 – Zkušenosti zákazníků
   ========================================================= */

.vg-reviews {
  padding: clamp(36px, 4vw, 50px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-reviews__head {
  max-width: 760px;
  margin: 0 auto 26px;
  text-align: center;
}

.vg-reviews__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-reviews__lead {
  max-width: 680px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .9rem;
  line-height: 1.6;
}

.vg-review-slider {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 20px;
  background: #fbfaf7;
}

.vg-review-slide {
  display: none;
  min-height: 260px;
  padding: 34px 84px 30px;
  align-content: center;
  text-align: center;
}

.vg-review-slide.is-active {
  display: grid;
}

.vg-review-name {
  margin-bottom: 7px;
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: .96rem;
  font-weight: 700;
}

.vg-review-stars {
  margin-bottom: 18px;
  color: #a87334;
  font-size: 1rem;
  letter-spacing: .08em;
}

.vg-review-text {
  max-width: 820px;
  margin: 0 auto;
  color: #657073;
  font-size: 1rem;
  font-style: italic;
  line-height: 1.72;
}

.vg-review-nav {
  position: absolute;
  top: 50%;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: var(--vg-teal-dark);
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
  transition: background-color .2s ease, transform .2s ease;
  z-index: 2;
}

.vg-review-nav:hover,
.vg-review-nav:focus-visible {
  background: #fff;
  transform: translateY(-50%) scale(1.04);
}

.vg-review-nav--prev {
  left: 18px;
}

.vg-review-nav--next {
  right: 18px;
}

.vg-review-dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  margin-top: 14px;
}

.vg-review-dot {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #d3d6d4;
  cursor: pointer;
}

.vg-review-dot.is-active {
  width: 24px;
  border-radius: 999px;
  background: var(--vg-teal);
}

@media (max-width: 720px) {
  .vg-reviews {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-review-slider {
    min-height: 300px;
  }

  .vg-review-slide {
    min-height: 300px;
    padding: 32px 50px 28px;
  }

  .vg-review-nav {
    width: 36px;
    height: 36px;
  }

  .vg-review-nav--prev {
    left: 10px;
  }

  .vg-review-nav--next {
    right: 10px;
  }

  .vg-review-text {
    font-size: .94rem;
  }
}


/* =========================================================
   VIGRES Clean Zero v10 – legislativa + upozornění k užívání
   ========================================================= */

.vg-safety {
  display: grid;
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.vg-safety-card {
  position: relative;
  overflow: hidden;
  padding: 24px 26px 24px 28px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 18px;
  background: var(--vg-surface);
  box-shadow: 0 10px 26px rgba(28,29,31,.035);
}

.vg-safety-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background: var(--vg-teal);
}

.vg-safety-card--warning {
  border-color: rgba(184,142,53,.16);
  background: #fffaf0;
}

.vg-safety-card--warning::before {
  background: #c59a3c;
}

.vg-safety-card__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--vg-green);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.vg-safety-card--warning .vg-safety-card__eyebrow {
  color: #9b742d;
}

.vg-safety-card h2,
.vg-safety-card h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  line-height: 1.3;
  letter-spacing: -.012em;
}

.vg-safety-card p {
  margin: 0;
  color: var(--vg-text);
  font-size: .86rem;
  line-height: 1.65;
}

.vg-safety-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vg-safety-list li {
  position: relative;
  padding-left: 18px;
  color: #5f6769;
  font-size: .84rem;
  line-height: 1.52;
}

.vg-safety-list li::before {
  content: "•";
  position: absolute;
  left: 3px;
  top: 0;
  color: #b58a31;
  font-weight: 700;
}

.vg-safety-list strong {
  color: #343a3b;
}

@media (max-width: 720px) {
  .vg-safety-card {
    padding: 20px 18px 20px 22px;
    border-radius: 16px;
  }
}


/* =========================================================
   VIGRES Clean Zero v11 – FAQ
   ========================================================= */

.vg-faq {
  padding: clamp(36px, 4vw, 50px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-faq__head {
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-faq__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-faq__lead {
  max-width: 660px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .94rem;
  line-height: 1.62;
}

.vg-faq__list {
  display: grid;
  gap: 10px;
}

.vg-faq-item {
  overflow: hidden;
  border: 1px solid rgba(49,72,75,.09);
  border-radius: 16px;
  background: #fbfaf7;
}

.vg-faq-toggle {
  display: grid;
  grid-template-columns: 1fr 36px;
  width: 100%;
  min-height: 68px;
  align-items: center;
  gap: 16px;
  padding: 16px 18px 16px 20px;
  border: 0;
  background: transparent;
  color: var(--vg-teal-dark);
  text-align: left;
  cursor: pointer;
}

.vg-faq-toggle__question {
  font-family: var(--vg-font-heading);
  font-size: .98rem;
  font-weight: 700;
  line-height: 1.4;
}

.vg-faq-toggle__icon {
  position: relative;
  width: 32px;
  height: 32px;
  justify-self: end;
  border-radius: 50%;
  background: rgba(49,72,75,.065);
}

.vg-faq-toggle__icon::before,
.vg-faq-toggle__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  border-radius: 999px;
  background: var(--vg-teal-dark);
  transform: translate(-50%, -50%);
  transition: transform .2s ease;
}

.vg-faq-toggle__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.vg-faq-toggle[aria-expanded="true"] .vg-faq-toggle__icon::after {
  transform: translate(-50%, -50%) rotate(0);
}

.vg-faq-toggle:hover,
.vg-faq-toggle:focus-visible {
  background: rgba(49,72,75,.025);
}

.vg-faq-answer {
  padding: 0 20px 18px;
  color: var(--vg-text);
  font-size: .88rem;
  line-height: 1.65;
}

.vg-faq-answer p {
  margin: 0;
}

.vg-faq-answer[hidden] {
  display: none;
}

@media (max-width: 720px) {
  .vg-faq {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-faq-toggle {
    min-height: 64px;
    grid-template-columns: 1fr 34px;
    gap: 12px;
    padding: 14px 14px 14px 16px;
  }

  .vg-faq-toggle__question {
    font-size: .94rem;
  }

  .vg-faq-answer {
    padding: 0 16px 16px;
  }
}


/* =========================================================
   VIGRES Clean Zero v12 – systém VIGRES
   ========================================================= */

.vg-system {
  padding: clamp(36px, 4vw, 50px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-system__head {
  max-width: 800px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-system__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-system__lead {
  max-width: 720px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .95rem;
  line-height: 1.62;
}

.vg-system__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.vg-system-card {
  position: relative;
  min-height: 176px;
  overflow: hidden;
  padding: 24px 54px 24px 24px;
  border: 1px solid rgba(49,72,75,.10);
  border-radius: 17px;
  background: #f4f3ef;
  color: inherit;
  text-decoration: none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    0 8px 22px rgba(28,29,31,.035);
  transition:
    transform .22s ease,
    background-color .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.vg-system-card:hover,
.vg-system-card:focus-visible {
  transform: translateY(-2px);
  background: #fff;
  border-color: rgba(49,72,75,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 12px 28px rgba(28,29,31,.07);
}

.vg-system-card__meta {
  display: block;
  margin-bottom: 13px;
  color: var(--vg-green);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.vg-system-card h3 {
  margin: 0 0 9px;
  font-size: 1.12rem;
  line-height: 1.25;
  letter-spacing: -.015em;
}

.vg-system-card p {
  margin: 0;
  color: var(--vg-text);
  font-size: .84rem;
  line-height: 1.55;
}

.vg-system-card::after {
  content: "→";
  position: absolute;
  right: 22px;
  bottom: 20px;
  color: var(--vg-teal);
  font-size: 1.25rem;
  line-height: 1;
  transition: transform .22s ease;
}

.vg-system-card:hover::after,
.vg-system-card:focus-visible::after {
  transform: translateX(3px);
}

@media (max-width: 900px) {
  .vg-system__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .vg-system {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-system__grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .vg-system-card {
    min-height: 0;
    padding: 22px 50px 22px 20px;
  }
}

/* =========================================================
   VIGRES Clean Zero v14 – Navazující směsi / 3 produktové karty
   ========================================================= */

.vg-next-products {
  padding: clamp(38px, 4.5vw, 54px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vg-next-products__head {
  max-width: 900px;
  margin: 0 auto 28px;
  text-align: center;
}

.vg-next-products__head h2 {
  margin: 0;
  font-size: clamp(2rem, 3.5vw, 2.7rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-next-products__lead {
  max-width: 860px;
  margin: 12px auto 0;
  color: var(--vg-text);
  font-size: .96rem;
  line-height: 1.62;
}

.vg-next-products__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.vg-next-product-card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(49,72,75,.10);
  border-radius: 20px;
  background: #f4f3ef;
  box-shadow: 0 9px 24px rgba(28,29,31,.035);
}

.vg-next-product-card--recommended {
  border-color: rgba(49,72,75,.24);
  background: #eef2ef;
}

.vg-next-product-card__media {
  position: relative;
  display: grid;
  min-height: 318px;
  place-items: center;
  padding: 54px 28px 24px;
  background: #fbfaf7;
  text-decoration: none;
}

.vg-next-product-card__media img {
  width: 100%;
  height: 236px;
  max-width: 290px;
  object-fit: contain;
  filter: drop-shadow(0 15px 15px rgba(31,39,40,.10));
  transition: transform .22s ease;
}

.vg-next-product-card__media:hover img,
.vg-next-product-card__media:focus-visible img {
  transform: translateY(-2px);
}

.vg-next-product-card__badge {
  position: absolute;
  left: 50%;
  top: 16px;
  z-index: 2;
  max-width: calc(100% - 32px);
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--vg-teal);
  color: #fff;
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
  transform: translateX(-50%);
}

.vg-next-product-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 23px 24px 24px;
  text-align: center;
}

.vg-next-product-card__category {
  display: block;
  margin-bottom: 8px;
  color: var(--vg-green);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vg-next-product-card h3 {
  margin: 0 0 10px;
  color: var(--vg-teal-dark);
  font-size: 1.18rem;
  line-height: 1.25;
  letter-spacing: -.012em;
}

.vg-next-product-card__desc {
  min-height: 52px;
  margin: 0;
  color: var(--vg-text);
  font-size: .84rem;
  line-height: 1.55;
}

.vg-next-product-card__footer {
  margin-top: auto;
  padding-top: 20px;
}

.vg-next-product-card__price {
  min-height: 24px;
  padding-top: 16px;
  border-top: 1px solid rgba(49,72,75,.09);
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: .95rem;
  font-weight: 700;
}

.vg-next-product-card__link {
  display: inline-flex;
  margin-top: 16px;
  align-items: center;
  gap: 5px;
  color: var(--vg-teal-dark);
  font-size: .82rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vg-next-product-card__soon {
  display: inline-flex;
  min-height: 30px;
  margin-top: 16px;
  align-items: center;
  justify-content: center;
  padding: 0 13px;
  border-radius: 999px;
  background: #e3e5e3;
  color: #506164;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .vg-next-products__grid {
    grid-template-columns: 1fr;
  }

  .vg-next-product-card {
    display: grid;
    grid-template-columns: minmax(230px, .85fr) 1.15fr;
  }

  .vg-next-product-card__media {
    min-height: 280px;
  }

  .vg-next-product-card__body {
    justify-content: center;
  }
}

@media (max-width: 620px) {
  .vg-next-products {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vg-next-product-card {
    display: flex;
  }

  .vg-next-product-card__media {
    min-height: 270px;
    padding: 52px 20px 18px;
  }

  .vg-next-product-card__media img {
    height: 205px;
  }

  .vg-next-product-card__body {
    padding: 21px 18px 22px;
  }

  .vg-next-product-card__desc {
    min-height: 0;
  }
}

/* =========================================================
   VIGRES Clean Zero v16 – statický blok Inspirace / blog CTA
   ========================================================= */

.vg-editorial-cta {
  position: relative;
  overflow: hidden;
  padding: clamp(44px, 5vw, 64px);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 28px;
  background:
    radial-gradient(circle at 86% 15%, rgba(255,255,255,.07), transparent 30%),
    radial-gradient(circle at 12% 100%, rgba(255,255,255,.035), transparent 26%),
    var(--vg-teal);
  box-shadow: 0 18px 44px rgba(28,29,31,.08);
  color: #fff;
}

.vg-editorial-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
}

.vg-editorial-cta__copy {
  max-width: 760px;
}

.vg-editorial-cta .vg-kicker {
  color: rgba(255,255,255,.62);
}

.vg-editorial-cta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-editorial-cta__lead {
  max-width: 720px;
  margin: 13px 0 0;
  color: rgba(255,255,255,.72);
  font-size: .96rem;
  line-height: 1.68;
}

.vg-editorial-cta__button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0 21px;
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 999px;
  background: #fff;
  color: var(--vg-teal-dark);
  font-size: .8rem;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  transition: transform .2s ease, background-color .2s ease;
}

.vg-editorial-cta__button:hover,
.vg-editorial-cta__button:focus-visible {
  transform: translateY(-1px);
  background: #f4f3ef;
  color: var(--vg-teal-dark);
}

@media (max-width: 760px) {
  .vg-editorial-cta {
    padding: 30px 22px;
    border-radius: 22px;
  }

  .vg-editorial-cta__inner {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .vg-editorial-cta__button {
    justify-self: start;
  }
}


/* =========================================================
   VIGRES Clean Zero v17 – plovoucí produktová lišta
   ========================================================= */

.vg-floating-product {
  position: fixed;
  left: 50%;
  bottom: 18px;
  z-index: 90;
  width: min(calc(100% - 32px), 920px);
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, 22px);
  visibility: hidden;
  transition:
    opacity .22s ease,
    transform .22s ease,
    visibility 0s linear .22s;
}

.vg-floating-product.is-visible {
  pointer-events: auto;
  opacity: 1;
  transform: translate(-50%, 0);
  visibility: visible;
  transition:
    opacity .22s ease,
    transform .22s ease,
    visibility 0s linear 0s;
}

.vg-floating-product__inner {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto auto;
  gap: 14px;
  align-items: center;
  padding: 10px 12px 10px 10px;
  border: 1px solid rgba(49,72,75,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.96);
  box-shadow:
    0 20px 55px rgba(20,28,29,.18),
    0 2px 7px rgba(20,28,29,.07);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.vg-floating-product__image {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  overflow: hidden;
  border-radius: 13px;
  background: #f5f4f0;
}

.vg-floating-product__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}

.vg-floating-product__copy {
  min-width: 0;
}

.vg-floating-product__name {
  display: block;
  margin-bottom: 2px;
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: .96rem;
  font-weight: 700;
  line-height: 1.2;
}

.vg-floating-product__sub {
  display: block;
  overflow: hidden;
  color: var(--vg-muted);
  font-size: .72rem;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vg-floating-product__price {
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
  font-size: .92rem;
  font-weight: 700;
  white-space: nowrap;
}

.vg-floating-product__form {
  margin: 0;
}

.vg-floating-product__add {
  min-height: 44px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: var(--vg-teal);
  color: #fff;
  font-family: var(--vg-font-body);
  font-size: .78rem;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color .2s ease, transform .2s ease;
}

.vg-floating-product__add:hover,
.vg-floating-product__add:focus-visible {
  background: var(--vg-teal-dark);
  transform: translateY(-1px);
}

@media (max-width: 660px) {
  .vg-floating-product {
    bottom: 10px;
    width: min(calc(100% - 20px), 560px);
  }

  .vg-floating-product__inner {
    grid-template-columns: 46px minmax(0, 1fr) auto;
    gap: 10px;
    padding: 8px 9px 8px 8px;
    border-radius: 16px;
  }

  .vg-floating-product__image {
    width: 46px;
    height: 46px;
    border-radius: 11px;
  }

  .vg-floating-product__price {
    display: none;
  }

  .vg-floating-product__name {
    font-size: .88rem;
  }

  .vg-floating-product__sub {
    max-width: 180px;
    font-size: .67rem;
  }

  .vg-floating-product__add {
    min-height: 40px;
    padding: 0 14px;
    font-size: .72rem;
  }
}

@media (max-width: 430px) {
  .vg-floating-product__sub {
    display: none;
  }

  .vg-floating-product__inner {
    grid-template-columns: 42px minmax(0, 1fr) auto;
  }

  .vg-floating-product__image {
    width: 42px;
    height: 42px;
  }

  .vg-floating-product__add {
    padding: 0 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vg-floating-product {
    transition: none;
  }

  .vg-floating-product__add {
    transition: none;
  }
}


/* =========================================================
   VIGRES Clean Zero v19 – skutečná videa + obálky z videí
   ========================================================= */

.vg-video-card__media {
  position: relative;
  overflow: hidden;
}

.vg-video-card__video {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
  background: #eceae4;
}

.vg-video-card__play.is-hidden {
  display: none;
}


/* =========================================================
   VIGRES Clean Zero v20 – interní produktové odkazy
   ========================================================= */
.vg-inline-product-link {
  color: inherit;
  font-weight: inherit;
  text-decoration-color: rgba(49,72,75,.38);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color .18s ease, text-decoration-color .18s ease;
}
.vg-inline-product-link:hover,
.vg-inline-product-link:focus-visible {
  color: var(--vg-teal);
  text-decoration-color: var(--vg-teal);
}
.vg-why-card h3 .vg-inline-product-link,
.vg-faq-answer .vg-inline-product-link,
.vg-usage__note .vg-inline-product-link {
  color: var(--vg-teal-dark);
}
.vg-next-product-card h3 a {
  color: inherit;
  text-decoration: none;
}
.vg-next-product-card h3 a:hover,
.vg-next-product-card h3 a:focus-visible {
  color: var(--vg-teal);
}


/* =========================================================
   VIGRES Clean Zero v21 – FAQ ve stejném barevném systému jako složení
   ========================================================= */

.vg-faq {
  padding: clamp(40px, 4.6vw, 56px);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 10%, rgba(255,255,255,.055), transparent 30%),
    var(--vg-teal);
  box-shadow: 0 18px 44px rgba(28,29,31,.08);
  color: #fff;
}

.vg-faq .vg-kicker {
  color: rgba(255,255,255,.62);
}

.vg-faq h2,
.vg-faq__lead {
  color: #fff;
}

.vg-faq__lead {
  color: rgba(255,255,255,.72);
}

.vg-faq-item {
  border-color: rgba(255,255,255,.14);
  background: rgba(255,255,255,.96);
  box-shadow: none;
}

.vg-faq-question {
  color: var(--vg-teal-dark);
}

.vg-faq-answer {
  color: var(--vg-text);
}

.vg-faq-question::after {
  color: var(--vg-teal);
}

.vg-faq-item:hover,
.vg-faq-item:focus-within {
  border-color: rgba(255,255,255,.26);
}

@media (max-width: 620px) {
  .vg-faq {
    padding: 26px 18px;
    border-radius: 22px;
  }
}


/* =========================================================
   VIGRES Clean Zero v23 – číselník v plovoucí liště
   ========================================================= */

.vg-floating-product__qty {
  display: grid;
  grid-template-columns: 34px 40px 34px;
  min-height: 40px;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(49,72,75,.15);
  border-radius: 999px;
  background: #f8f7f4;
}

.vg-floating-product__qty-btn {
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--vg-teal-dark);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color .18s ease;
}

.vg-floating-product__qty-btn:hover,
.vg-floating-product__qty-btn:focus-visible {
  background: rgba(49,72,75,.07);
}

.vg-floating-product__qty input {
  width: 40px;
  min-width: 0;
  padding: 0;
  border: 0;
  border-inline: 1px solid rgba(49,72,75,.10);
  background: transparent;
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-body);
  font-size: .8rem;
  font-weight: 700;
  text-align: center;
  appearance: textfield;
  -moz-appearance: textfield;
}

.vg-floating-product__qty input::-webkit-outer-spin-button,
.vg-floating-product__qty input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

@media (max-width: 760px) {
  .vg-floating-product__inner {
    grid-template-columns: 50px minmax(0, 1fr) auto auto;
  }

  .vg-floating-product__qty {
    grid-template-columns: 30px 36px 30px;
    min-height: 38px;
  }

  .vg-floating-product__qty input {
    width: 36px;
  }
}

@media (max-width: 560px) {
  .vg-floating-product__inner {
    grid-template-columns: 44px minmax(0, 1fr) auto;
  }

  .vg-floating-product__price {
    display: none;
  }

  .vg-floating-product__qty {
    grid-column: 2 / 3;
    grid-row: 2;
    justify-self: start;
    margin-top: 4px;
  }

  .vg-floating-product__add {
    grid-column: 3;
    grid-row: 1 / 3;
    align-self: center;
  }
}

@media (max-width: 390px) {
  .vg-floating-product__qty {
    grid-template-columns: 28px 32px 28px;
  }

  .vg-floating-product__qty input {
    width: 32px;
  }

  .vg-floating-product__add {
    padding-inline: 10px;
    font-size: .68rem;
  }
}


/* =========================================================
   VIGRES Clean Zero v24 – kompaktní plovoucí lišta
   ========================================================= */

.vg-floating-product__inner {
  grid-template-columns: 58px minmax(220px, 1fr) auto auto;
  gap: 14px;
  padding: 10px 12px 10px 10px;
}

.vg-floating-product__form {
  display: flex;
  align-items: center;
  gap: 10px;
}

.vg-floating-product__qty {
  grid-template-columns: 28px 34px 28px;
  min-height: 40px;
  border-radius: 13px;
  background: #f7f6f2;
}

.vg-floating-product__qty input {
  width: 34px;
  font-size: .78rem;
}

.vg-floating-product__qty-btn {
  font-size: .9rem;
}

.vg-floating-product__add {
  min-height: 40px;
  padding: 0 16px;
  border-radius: 13px;
  font-size: .74rem;
}

.vg-floating-product__price {
  margin-right: 2px;
  font-size: .88rem;
}

@media (max-width: 760px) {
  .vg-floating-product__inner {
    grid-template-columns: 46px minmax(0, 1fr) auto;
    gap: 9px;
  }

  .vg-floating-product__price {
    display: none;
  }

  .vg-floating-product__form {
    gap: 7px;
  }

  .vg-floating-product__qty {
    grid-template-columns: 26px 32px 26px;
    min-height: 38px;
  }

  .vg-floating-product__qty input {
    width: 32px;
  }

  .vg-floating-product__add {
    min-height: 38px;
    padding: 0 13px;
    font-size: .7rem;
  }
}

@media (max-width: 520px) {
  .vg-floating-product__inner {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .vg-floating-product__form {
    grid-column: 1 / -1;
    justify-content: flex-end;
    margin-top: 2px;
  }

  .vg-floating-product__copy {
    align-self: center;
  }

  .vg-floating-product__sub {
    display: none;
  }

  .vg-floating-product__qty {
    grid-template-columns: 25px 31px 25px;
  }

  .vg-floating-product__qty input {
    width: 31px;
  }

  .vg-floating-product__add {
    flex: 1;
    max-width: 190px;
  }
}


/* =========================================================
   v41 — CATEGORY MASTER / DETOX A IMUNITA
   Scoped only to taxonomy-product_cat.php.
   Product detail layout remains untouched.
   ========================================================= */
.vg-category-page {
  padding: 42px 0 110px;
  background: var(--vg-bg);
  color: var(--vg-ink);
}

.vg-category-hero {
  background: var(--vg-surface);
  border: 1px solid var(--vg-border);
  border-radius: 30px;
  padding: 64px 68px 52px;
  box-shadow: var(--vg-shadow);
}

.vg-category-hero__copy {
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.vg-category-kicker {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--vg-teal);
}

.vg-category-hero h1,
.vg-category-products h2,
.vg-category-bottom h2 {
  margin: 0;
  font-family: var(--vg-font-heading);
  color: var(--vg-ink);
}

.vg-category-hero h1 {
  font-size: clamp(42px, 5.1vw, 70px);
  line-height: .98;
  letter-spacing: -.045em;
}

.vg-category-lead {
  max-width: 760px;
  margin: 24px auto 0;
  font-size: 18px;
  line-height: 1.65;
  color: var(--vg-text);
}

.vg-category-path {
  max-width: 760px;
  margin: 42px auto 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  gap: 18px;
  align-items: center;
}

.vg-category-path__step {
  min-height: 116px;
  padding: 22px 24px;
  border-radius: 20px;
  border: 1px solid var(--vg-border);
  background: #f8f7f3;
  display: flex;
  align-items: center;
  gap: 16px;
  text-align: left;
}

.vg-category-path__num {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--vg-teal);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.vg-category-path__step strong {
  display: block;
  margin-bottom: 6px;
  font-family: var(--vg-font-heading);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.16;
  letter-spacing: -.02em;
  color: var(--vg-ink);
}

.vg-category-path__step div span {
  display: block;
  color: var(--vg-text);
  font-size: 15px;
  line-height: 1.5;
}

.vg-category-path__arrow {
  color: var(--vg-teal);
  font-size: 25px;
}

.vg-category-note {
  margin: 34px auto 0;
  text-align: center;
  color: var(--vg-teal);
  font-weight: 700;
  font-size: 14px;
}

.vg-category-products {
  margin-top: 72px;
}

.vg-category-products__head {
  max-width: 720px;
  margin: 0 auto 34px;
  text-align: center;
}

.vg-category-products__head h2 {
  font-size: clamp(34px, 4vw, 50px);
  line-height: 1.05;
  letter-spacing: -.035em;
}

.vg-category-products__head > p:last-child {
  margin: 16px auto 0;
  color: var(--vg-text);
  font-size: 16px;
  line-height: 1.65;
}

.vg-category-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 24px;
}

.vg-category-card {
  overflow: hidden;
  border: 1px solid var(--vg-border);
  border-radius: 28px;
  background: var(--vg-surface);
  box-shadow: 0 16px 36px rgba(28,29,31,.045);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.vg-category-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 46px rgba(28,29,31,.075);
  border-color: #d8d7d1;
}

.vg-category-card__media {
  position: relative;
  min-height: 410px;
  padding: 36px;
  display: grid;
  place-items: center;
  background: #f7f5ef;
  text-decoration: none;
}

.vg-category-card__media img {
  width: min(88%, 390px);
  height: 340px;
  object-fit: contain;
  transition: transform .28s ease;
}

.vg-category-card:hover .vg-category-card__media img {
  transform: scale(1.018);
}

.vg-category-card__badge,
.vg-category-card__sale {
  position: absolute;
  top: 20px;
  z-index: 2;
  padding: 8px 11px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .04em;
}

.vg-category-card__badge {
  left: 20px;
  background: var(--vg-teal);
  color: #fff;
}

.vg-category-card__sale {
  right: 20px;
  background: #f3e7e4;
  color: var(--vg-sale);
}

.vg-category-card__body {
  padding: 28px 30px 30px;
}

.vg-category-card__eyebrow {
  display: block;
  margin-bottom: 9px;
  color: var(--vg-green);
  font-size: 11px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-category-card h3 {
  margin: 0;
  font-family: var(--vg-font-heading);
  font-size: 30px;
  line-height: 1.05;
  letter-spacing: -.025em;
}

.vg-category-card h3 a {
  color: var(--vg-ink);
  text-decoration: none;
}

.vg-category-card__promise {
  margin: 10px 0 0;
  color: var(--vg-teal);
  font-size: 16px;
  line-height: 1.4;
  font-weight: 800;
}

.vg-category-card__desc {
  min-height: 76px;
  margin: 12px 0 0;
  color: var(--vg-text);
  font-size: 14px;
  line-height: 1.65;
}

.vg-category-card__meta {
  margin-top: 23px;
  padding-top: 20px;
  border-top: 1px solid var(--vg-border);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 18px;
}

.vg-category-card__stock {
  font-size: 12px;
  color: var(--vg-muted);
}

.vg-category-card__stock.is-in-stock::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-right: 7px;
  display: inline-block;
  border-radius: 50%;
  background: var(--vg-green);
}

.vg-category-card__price {
  text-align: right;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 800;
  color: var(--vg-teal);
}

.vg-category-card__price del {
  margin-right: 7px;
  color: var(--vg-muted);
  font-size: 14px;
  font-weight: 500;
}

.vg-category-card__price ins {
  text-decoration: none;
}

.vg-category-card__cta {
  width: 100%;
  margin-top: 20px;
  padding: 15px 18px;
  border-radius: 14px;
  background: var(--vg-teal);
  color: #fff;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  transition: background .18s ease, transform .18s ease;
}

.vg-category-card__cta:hover {
  background: var(--vg-teal-dark);
}

.vg-category-bottom {
  margin-top: 72px;
  padding: 42px 46px;
  border-radius: 26px;
  background: var(--vg-teal);
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(280px,.55fr);
  gap: 38px;
  align-items: center;
}

.vg-category-bottom .vg-category-kicker {
  color: rgba(255,255,255,.72);
}

.vg-category-bottom h2 {
  color: #fff;
  font-size: 34px;
  line-height: 1.08;
  letter-spacing: -.025em;
}

.vg-category-bottom p:not(.vg-category-kicker) {
  max-width: 700px;
  margin: 13px 0 0;
  color: rgba(255,255,255,.78);
  line-height: 1.6;
}

.vg-category-bottom__links {
  display: grid;
  gap: 10px;
}

.vg-category-bottom__links a {
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 13px;
  color: #fff;
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  font-weight: 700;
  transition: background .18s ease;
}

.vg-category-bottom__links a:hover {
  background: rgba(255,255,255,.08);
}

@media (max-width: 900px) {
  .vg-category-hero {
    padding: 52px 40px 44px;
  }

  .vg-category-card__media {
    min-height: 340px;
  }

  .vg-category-card__media img {
    height: 285px;
  }

  .vg-category-bottom {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .vg-category-page {
    padding-top: 24px;
    padding-bottom: 80px;
  }

  .vg-category-hero {
    padding: 40px 24px 34px;
    border-radius: 24px;
  }

  .vg-category-hero h1 {
    font-size: clamp(38px, 12vw, 52px);
  }

  .vg-category-lead {
    margin-top: 18px;
    font-size: 16px;
  }

  .vg-category-path {
    margin-top: 30px;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .vg-category-path__arrow {
    transform: rotate(90deg);
    justify-self: center;
  }

  .vg-category-products {
    margin-top: 54px;
  }

  .vg-category-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .vg-category-card {
    border-radius: 22px;
  }

  .vg-category-card__media {
    min-height: 320px;
    padding: 28px 20px;
  }

  .vg-category-card__media img {
    width: min(94%, 350px);
    height: 270px;
  }

  .vg-category-card__body {
    padding: 24px;
  }

  .vg-category-card__desc {
    min-height: 0;
  }

  .vg-category-bottom {
    margin-top: 54px;
    padding: 32px 24px;
    border-radius: 22px;
  }
}

@media (max-width: 460px) {
  .vg-category-card__meta {
    align-items: center;
  }

  .vg-category-card__price {
    font-size: 19px;
  }
}


/* =========================================================
   v42 — STARTOVACÍ SADA LUNA + SYNERGY
   ========================================================= */
.vg-category-bundle {
  margin: 0 0 26px;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);
  border: 1px solid #d9ded9;
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: 0 18px 42px rgba(28,29,31,.055);
}

.vg-category-bundle__visual {
  min-height: 420px;
  padding: 38px 34px;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 48%, rgba(255,255,255,.92) 0 32%, rgba(247,245,239,.96) 72%),
    #f7f5ef;
}

.vg-category-bundle__images {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  align-items: center;
  gap: 10px;
}

.vg-category-bundle__product {
  text-align: center;
}

.vg-category-bundle__product img {
  width: 100%;
  height: 290px;
  object-fit: contain;
}

.vg-category-bundle__product span {
  display: block;
  margin-top: 8px;
  color: var(--vg-teal);
  font-family: var(--vg-font-heading);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .04em;
}

.vg-category-bundle__plus {
  color: var(--vg-teal);
  font-family: var(--vg-font-heading);
  font-size: 32px;
  font-weight: 500;
}

.vg-category-bundle__body {
  padding: 46px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.vg-category-bundle__top {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.vg-category-bundle__badge {
  padding: 8px 11px;
  border-radius: 999px;
  background: var(--vg-teal);
  color: #fff;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .04em;
}

.vg-category-bundle__eyebrow {
  color: var(--vg-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-category-bundle h3 {
  margin: 18px 0 0;
  font-family: var(--vg-font-heading);
  font-size: clamp(34px,4vw,48px);
  line-height: 1;
  letter-spacing: -.035em;
}

.vg-category-bundle__promise {
  margin: 15px 0 0;
  color: var(--vg-teal);
  font-size: 18px;
  line-height: 1.45;
  font-weight: 800;
}

.vg-category-bundle__desc {
  margin: 13px 0 0;
  color: var(--vg-text);
  font-size: 14px;
  line-height: 1.7;
}

.vg-category-bundle__price-row {
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid var(--vg-border);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.vg-category-bundle__regular {
  margin-right: 10px;
  color: var(--vg-muted);
  font-size: 15px;
  text-decoration: line-through;
}

.vg-category-bundle__price {
  color: var(--vg-teal);
  font-size: 30px;
  line-height: 1;
}

.vg-category-bundle__saving {
  padding: 8px 11px;
  border-radius: 999px;
  background: #f3ece4;
  color: #8b613a;
  font-size: 12px;
  font-weight: 800;
}

.vg-category-bundle__cta {
  margin-top: 22px;
  padding: 16px 18px;
  border-radius: 14px;
  background: var(--vg-teal);
  color: #fff;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  transition: background .18s ease, transform .18s ease;
}

.vg-category-bundle__cta:hover {
  background: var(--vg-teal-dark);
}

.vg-category-bundle__micro {
  margin: 9px 0 0;
  text-align: center;
  color: var(--vg-muted);
  font-size: 11px;
}

@media (max-width: 900px) {
  .vg-category-bundle {
    grid-template-columns: 1fr;
  }

  .vg-category-bundle__visual {
    min-height: 340px;
  }

  .vg-category-bundle__product img {
    height: 235px;
  }

  .vg-category-bundle__body {
    padding: 36px 38px 40px;
  }
}

@media (max-width: 560px) {
  .vg-category-bundle {
    border-radius: 24px;
  }

  .vg-category-bundle__visual {
    min-height: 285px;
    padding: 26px 18px;
  }

  .vg-category-bundle__product img {
    height: 190px;
  }

  .vg-category-bundle__body {
    padding: 28px 24px 30px;
  }

  .vg-category-bundle__price-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
}


/* =========================================================
   v43 — CATEGORY CARDS: DETAIL + QTY + CART
   ========================================================= */
.vg-category-bundle__visual {
  padding: 0;
  overflow: hidden;
  background: #f3eadb;
}

.vg-category-bundle__hero-image {
  width: 100%;
  height: 100%;
  min-height: 420px;
  display: block;
  object-fit: cover;
}

.vg-category-card__actions {
  margin-top: 20px;
  display: grid;
  grid-template-columns: minmax(112px,.38fr) minmax(0,1fr);
  gap: 10px;
  align-items: stretch;
}

.vg-category-card__detail {
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid var(--vg-border);
  border-radius: 14px;
  color: var(--vg-teal);
  background: #fff;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 800;
  transition: background .18s ease, border-color .18s ease;
}

.vg-category-card__detail:hover {
  background: #f7f6f2;
  border-color: #d6d5d0;
}

.vg-category-card__cart {
  min-width: 0;
  display: grid;
  grid-template-columns: 116px minmax(0,1fr);
  gap: 8px;
}

.vg-category-qty {
  min-width: 0;
  height: 52px;
  display: grid;
  grid-template-columns: 36px minmax(38px,1fr) 36px;
  border: 1px solid var(--vg-border);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}

.vg-category-qty__btn {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--vg-teal);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.vg-category-qty__btn:hover {
  background: #f7f6f2;
}

.vg-category-qty__input {
  width: 100%;
  min-width: 0;
  padding: 0 3px;
  border: 0;
  border-left: 1px solid var(--vg-border);
  border-right: 1px solid var(--vg-border);
  background: #fff;
  color: var(--vg-ink);
  text-align: center;
  font-size: 15px;
  font-weight: 800;
  appearance: textfield;
  -moz-appearance: textfield;
}

.vg-category-qty__input::-webkit-outer-spin-button,
.vg-category-qty__input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.vg-category-card__add {
  min-width: 0;
  min-height: 52px;
  padding: 0 16px;
  border: 0;
  border-radius: 14px;
  background: var(--vg-teal);
  color: #fff;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease, transform .18s ease;
}

.vg-category-card__add:hover {
  background: var(--vg-teal-dark);
}

.vg-category-card__add--disabled {
  grid-column: 2;
}

@media (max-width: 980px) {
  .vg-category-card__actions {
    grid-template-columns: 1fr;
  }

  .vg-category-card__cart {
    grid-template-columns: 116px minmax(0,1fr);
  }
}

@media (max-width: 560px) {
  .vg-category-bundle__hero-image {
    min-height: 300px;
    aspect-ratio: 1 / 1;
  }

  .vg-category-card__cart {
    grid-template-columns: 108px minmax(0,1fr);
  }

  .vg-category-qty {
    grid-template-columns: 34px minmax(34px,1fr) 34px;
  }
}


/* =========================================================
   v44 — CATEGORY CARDS / FULL PHOTO + CALMER PURCHASE UX
   ========================================================= */

/* Celá produktová fotografie: bez ořezu, vždy viditelná 1:1. */
.vg-category-card__media {
  min-height: 0;
  padding: 22px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.vg-category-card__media img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center;
  display: block;
}

/* Nákupní část je oddělená od hlavních tlačítek. */
.vg-category-card__purchase {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--vg-border);
}

.vg-category-card__cart {
  display: block;
}

.vg-category-card__qty-row {
  margin-bottom: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.vg-category-card__qty-label {
  color: var(--vg-muted);
  font-size: 12px;
  font-weight: 700;
}

.vg-category-qty {
  width: 118px;
  height: 42px;
  flex: 0 0 auto;
  grid-template-columns: 36px minmax(38px, 1fr) 36px;
  border-radius: 12px;
  background: #faf9f6;
}

.vg-category-qty__btn,
.vg-category-qty__input {
  background: #faf9f6;
}

.vg-category-card__actions {
  margin-top: 0;
  display: grid;
  grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr);
  gap: 10px;
}

.vg-category-card__detail,
.vg-category-card__add {
  min-height: 52px;
}

.vg-category-card__detail {
  background: #fff;
}

.vg-category-card__add {
  box-shadow: 0 7px 16px rgba(49,72,75,.10);
}

@media (max-width: 980px) {
  .vg-category-card__actions {
    grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  }
}

@media (max-width: 560px) {
  .vg-category-card__media {
    padding: 16px;
  }

  .vg-category-card__qty-row {
    margin-bottom: 12px;
  }

  .vg-category-card__actions {
    grid-template-columns: 1fr;
  }

  .vg-category-card__detail,
  .vg-category-card__add {
    width: 100%;
  }
}


/* =========================================================
   v45 — CATEGORY GRID / 3 SLOUPCE
   ========================================================= */
.vg-category-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.vg-category-card__media {
  aspect-ratio: 1 / 1;
}

.vg-category-card__body {
  padding: 24px 24px 26px;
}

.vg-category-card h3 {
  font-size: 27px;
}

.vg-category-card__desc {
  font-size: 13.5px;
  line-height: 1.62;
}

.vg-category-card__actions {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
}

@media (max-width: 1100px) {
  .vg-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .vg-category-grid {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   v46 — CATEGORY SWITCHER
   Moderní horizontální navigace místo klasického sidebaru.
   ========================================================= */
.vg-category-switcher {
  margin-bottom: 22px;
}

.vg-category-switcher__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 7px;
  border: 1px solid var(--vg-border);
  border-radius: 18px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 8px 26px rgba(28,29,31,.035);
}

.vg-category-switcher__item {
  min-width: 0;
  padding: 11px 16px;
  border-radius: 12px;
  color: var(--vg-text);
  text-decoration: none;
  white-space: nowrap;
  font-size: 13px;
  line-height: 1;
  font-weight: 750;
  transition:
    background .18s ease,
    color .18s ease,
    transform .18s ease;
}

.vg-category-switcher__item:hover {
  background: #f4f3ef;
  color: var(--vg-teal);
}

.vg-category-switcher__item.is-active {
  background: var(--vg-teal);
  color: #fff;
  box-shadow: 0 5px 13px rgba(49,72,75,.13);
}

@media (max-width: 860px) {
  .vg-category-switcher {
    width: 100%;
    padding-inline: 0;
  }

  .vg-category-switcher__inner {
    justify-content: flex-start;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    padding-inline: var(--vg-gutter);
  }

  .vg-category-switcher__inner::-webkit-scrollbar {
    display: none;
  }

  .vg-category-switcher__item {
    flex: 0 0 auto;
  }
}

@media (max-width: 560px) {
  .vg-category-switcher {
    margin-bottom: 16px;
  }

  .vg-category-switcher__item {
    padding: 10px 14px;
    font-size: 12px;
  }
}


/* =========================================================
   v47 — CATEGORY CARDS / CENTER + STOCK STATES + BUNDLE CARD
   ========================================================= */
.vg-category-card__body {
  text-align: center;
}

.vg-category-card__eyebrow,
.vg-category-card h3,
.vg-category-card__promise,
.vg-category-card__desc {
  text-align: center;
}

.vg-category-card__desc {
  margin-inline: auto;
}

.vg-category-card__meta {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
}

.vg-category-card__price {
  text-align: center;
}

.vg-category-card__stock {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 11px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .02em;
  border: 1px solid transparent;
}

.vg-category-card__stock::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 50%;
  background: currentColor;
}

.vg-category-card__stock.is-in-stock {
  color: #2f6f4d;
  background: #eaf5ee;
  border-color: #cfe7d8;
}

.vg-category-card__stock.is-on-order {
  color: #9a6226;
  background: #fff3e2;
  border-color: #efd7b6;
}

.vg-category-card__stock.is-out-of-stock {
  color: #a54848;
  background: #fbeaea;
  border-color: #edcaca;
}

.vg-category-card__qty-row {
  justify-content: center;
  flex-direction: column;
  gap: 8px;
}

.vg-category-card__qty-label {
  text-align: center;
}

.vg-category-card__media--bundle {
  cursor: default;
}

.vg-category-card--bundle .vg-category-card__media img {
  object-fit: cover;
}

.vg-category-card--bundle .vg-category-card__sale {
  color: #8b613a;
  background: #f3ece4;
}

.vg-category-card__detail {
  font-family: inherit;
  font-size: 14px;
  cursor: pointer;
}

.vg-category-card__bundle-detail {
  margin-top: 13px;
  padding: 13px 14px;
  border-radius: 12px;
  background: #f7f6f2;
  color: var(--vg-text);
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.vg-category-card__bundle-detail strong,
.vg-category-card__bundle-detail span {
  display: block;
}

.vg-category-card__bundle-detail strong {
  margin-bottom: 4px;
  color: var(--vg-teal);
}

.vg-category-card__actions--single {
  grid-template-columns: 1fr;
}

.vg-category-card__add--disabled {
  cursor: default;
  background: #ececea;
  color: var(--vg-muted);
  box-shadow: none;
}

/* v48 — čistší nákup v kategoriích */
.vg-category-card__purchase {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--vg-border);
}
.vg-category-card__cart { display:block; }
.vg-category-card__actions {
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:12px;
  margin-top:0;
}
.vg-category-card__detail,
.vg-category-card__add { min-height:54px; }
.vg-category-card__qty-row,
.vg-category-qty { display:none !important; }
@media (max-width:560px){
  .vg-category-card__actions{grid-template-columns:1fr;}
}


/* =========================================================
   v49 — DETOX CATEGORY / SALES STORY
   ========================================================= */
.vg-category-story {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-category-story__item {
  min-height: 164px;
  padding: 22px 22px 20px;
  border: 1px solid var(--vg-border);
  border-radius: 20px;
  background: rgba(255,255,255,.78);
  text-align: center;
}

.vg-category-story__item > span {
  width: 34px;
  height: 34px;
  margin: 0 auto 12px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--vg-teal);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}

.vg-category-story__item strong {
  display: block;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading);
  font-size: 18px;
  line-height: 1.25;
}

.vg-category-story__item p {
  margin: 9px 0 0;
  color: var(--vg-text);
  font-size: 13px;
  line-height: 1.6;
}

.vg-category-page--detox .vg-category-lead {
  max-width: 900px;
  font-size: 19px;
  line-height: 1.62;
}

.vg-category-page--detox .vg-category-products__head {
  max-width: 860px;
}

.vg-category-page--detox .vg-category-products__head > p:last-child {
  max-width: 820px;
  font-size: 17px;
}

@media (max-width: 800px) {
  .vg-category-story {
    grid-template-columns: 1fr;
  }

  .vg-category-story__item {
    min-height: 0;
  }
}


/* =========================================================
   v50 — DETOX HERO / 3 KROKY MÍSTO DUPLICITNÍCH 2 KARET
   ========================================================= */
.vg-category-story--hero {
  margin-top: 38px;
}

.vg-category-page--detox .vg-category-note {
  margin-top: 26px;
}

@media (max-width: 800px) {
  .vg-category-story--hero {
    margin-top: 28px;
  }
}


/* =========================================================
   v53 — DETOX CATEGORY / SPODNÍ POPIS + FAQ + ROZCESTNÍK
   ========================================================= */
.vg-category-after {
  margin-top: 78px;
  padding: clamp(42px, 5vw, 64px);
  border: 1px solid var(--vg-border);
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: var(--vg-shadow);
}

.vg-category-after__head {
  max-width: 880px;
  margin: 0 auto 34px;
  text-align: center;
}

.vg-category-after__head h2 {
  margin: 0;
  font-family: var(--vg-font-heading);
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.05;
  letter-spacing: -.035em;
}

.vg-category-after__head > p:last-child {
  max-width: 820px;
  margin: 18px auto 0;
  color: var(--vg-text);
  font-size: 16px;
  line-height: 1.72;
}

.vg-category-after__points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-category-after-card {
  padding: 25px 24px;
  border: 1px solid var(--vg-border);
  border-radius: 19px;
  background: #f7f6f2;
  text-align: center;
}

.vg-category-after-card__meta {
  display: block;
  margin-bottom: 10px;
  color: var(--vg-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vg-category-after-card h3 {
  margin: 0;
  font-family: var(--vg-font-heading);
  font-size: 20px;
  line-height: 1.25;
}

.vg-category-after-card p {
  margin: 11px 0 0;
  color: var(--vg-text);
  font-size: 13px;
  line-height: 1.65;
}

.vg-category-after__choice {
  margin-top: 18px;
  padding: 28px 30px;
  border-radius: 20px;
  background: var(--vg-teal);
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 30px;
}

.vg-category-after__choice .vg-category-kicker {
  color: rgba(255,255,255,.72);
}

.vg-category-after__choice h3 {
  margin: 0;
  color: #fff;
  font-family: var(--vg-font-heading);
  font-size: 25px;
  line-height: 1.15;
}

.vg-category-after__choice p:not(.vg-category-kicker) {
  max-width: 720px;
  margin: 9px 0 0;
  color: rgba(255,255,255,.80);
  font-size: 14px;
  line-height: 1.6;
}

.vg-category-after__cta {
  min-width: 230px;
  padding: 14px 17px;
  border-radius: 13px;
  background: #fff;
  color: var(--vg-teal);
  text-decoration: none;
  text-align: center;
  font-weight: 800;
}

.vg-category-faq {
  margin-top: 22px;
  box-shadow: none;
  background: #fbfaf7;
}

.vg-category-system {
  margin-top: 26px;
}

@media (max-width: 900px) {
  .vg-category-after__points {
    grid-template-columns: 1fr;
  }

  .vg-category-after__choice {
    grid-template-columns: 1fr;
  }

  .vg-category-after__cta {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 620px) {
  .vg-category-after {
    margin-top: 54px;
    padding: 30px 20px;
    border-radius: 24px;
  }

  .vg-category-after__choice {
    padding: 24px 20px;
  }
}


/* =========================================================
   v54 — DETOX / SPODNÍ PRODEJNÍ ČÁST PODLE POTŘEB
   ========================================================= */
.vg-category-needs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.vg-category-need {
  padding: 28px 25px 24px;
  border: 1px solid var(--vg-border);
  border-radius: 21px;
  background: #f8f7f3;
  text-align: left;
}

.vg-category-need--featured {
  background: #f2f5f2;
  border-color: rgba(49,72,75,.20);
}

.vg-category-need__meta {
  display: block;
  margin-bottom: 12px;
  color: var(--vg-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vg-category-need h3 {
  margin: 0;
  font-family: var(--vg-font-heading);
  font-size: 24px;
  line-height: 1.15;
}

.vg-category-need > p {
  min-height: 94px;
  margin: 13px 0 0;
  color: var(--vg-text);
  font-size: 14px;
  line-height: 1.65;
}

.vg-category-need ul {
  margin: 18px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--vg-border);
  list-style: none;
}

.vg-category-need li {
  position: relative;
  margin: 8px 0;
  padding-left: 18px;
  color: var(--vg-text);
  font-size: 13px;
  line-height: 1.5;
}

.vg-category-need li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--vg-green);
  font-weight: 900;
}

.vg-category-need > a {
  margin-top: 20px;
  min-height: 47px;
  padding: 0 16px;
  border: 1px solid var(--vg-border);
  border-radius: 13px;
  background: #fff;
  color: var(--vg-teal);
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 800;
}

.vg-category-need > a.is-primary {
  border-color: var(--vg-teal);
  background: var(--vg-teal);
  color: #fff;
}

.vg-category-proof-strip {
  margin-top: 16px;
  padding: 20px 22px;
  border-radius: 18px;
  background: var(--vg-teal);
  color: #fff;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}

.vg-category-proof-strip > div { text-align:center; }
.vg-category-proof-strip strong { display:block; font-size:13px; }
.vg-category-proof-strip span {
  display:block;
  margin-top:4px;
  color:rgba(255,255,255,.75);
  font-size:11.5px;
  line-height:1.5;
}

/* FAQ v53 mělo světlé pozadí, ale zdědilo světlý nadpis z tmavé produktové varianty. */
.vg-category-faq .vg-faq__head h2 { color: var(--vg-ink); }
.vg-category-faq .vg-faq__lead { color: var(--vg-text); }

/*
 * Kategorie dříve přidávala 110 px vlastního spodního paddingu a footer
 * dalších 120 px. Produktové stránky mají před footerem pouze jeho
 * globální margin-top 120 px. Kategorie teď používá stejnou vzdálenost.
 */
.vg-category-page {
  padding-bottom: 0;
}

@media (max-width: 900px) {
  .vg-category-needs,
  .vg-category-proof-strip {
    grid-template-columns: 1fr;
  }

  .vg-category-need > p { min-height:0; }
}

@media (max-width: 720px) {
  .vg-category-page {
    padding-bottom: 0;
  }
}


/* =========================================================
   v55 — DETOX / SHORT CONVERSION BRIDGE
   ========================================================= */
.vg-category-why-together {
  margin-top: 72px;
  padding: 34px 38px;
  border-radius: 24px;
  background: var(--vg-teal);
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 32px;
  align-items: center;
}

.vg-category-why-together .vg-category-kicker {
  color: rgba(255,255,255,.68);
}

.vg-category-why-together h2 {
  margin: 0;
  max-width: 850px;
  color: #fff;
  font-family: var(--vg-font-heading);
  font-size: clamp(28px,3.4vw,42px);
  line-height: 1.08;
  letter-spacing: -.03em;
}

.vg-category-why-together__copy > p:last-child {
  max-width: 850px;
  margin: 13px 0 0;
  color: rgba(255,255,255,.80);
  font-size: 14px;
  line-height: 1.65;
}

.vg-category-why-together__cta {
  min-width: 225px;
  padding: 14px 17px;
  border-radius: 13px;
  background: #fff;
  color: var(--vg-teal);
  text-decoration: none;
  text-align: center;
  font-weight: 800;
}

@media (max-width: 860px) {
  .vg-category-why-together {
    grid-template-columns: 1fr;
  }

  .vg-category-why-together__cta {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 620px) {
  .vg-category-why-together {
    margin-top: 54px;
    padding: 28px 22px;
    border-radius: 22px;
  }
}

/* v56 – lepší čitelnost titulků v horních kartách kategorie */
@media (max-width: 720px) {
  .vg-category-path__step strong { font-size: 20px; line-height: 1.18; }
  .vg-category-path__step div span { font-size: 14px; }
}


/* =========================================================
   v57 — NEEDS CARDS / EQUAL HEIGHT + ALIGNED CTA
   ========================================================= */
@media (min-width: 901px) {
  .vg-category-needs {
    align-items: stretch;
  }

  .vg-category-need {
    height: 100%;
    display: flex;
    flex-direction: column;
  }

  .vg-category-need > p {
    min-height: 118px;
  }

  .vg-category-need ul {
    flex: 0 0 auto;
  }

  .vg-category-need > a {
    margin-top: auto;
  }
}

/* Ať všechny CTA působí jako jedna horizontální řada i při rozdílné délce copy. */
.vg-category-need > a {
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  .vg-category-need {
    display: block;
  }

  .vg-category-need > p {
    min-height: 0;
  }

  .vg-category-need > a {
    margin-top: 20px;
  }
}


/* =========================================================
   v58 — ALL CATEGORY MASTER
   Detox remains visual benchmark; all other categories use
   the same hero / grid / conversion / FAQ / system rhythm.
   ========================================================= */
.vg-category-needs--single {
  grid-template-columns: minmax(0, 680px);
  justify-content: center;
}

.vg-category-needs--single .vg-category-need {
  min-height: 0;
}

.vg-category-page:not(.vg-category-page--detox) .vg-category-products {
  margin-top: 72px;
}

/* Product grid stays 3 / 2 / 1 everywhere. */
@media (min-width: 1101px) {
  .vg-category-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}


/* =========================================================
   v59 — ORGÁNOVÉ HODINY / PRODUKTOVÉ PŘÍZNAKY
   Příznak nese orgán/oblast, čas je v kickeru pod fotografií.
   Barvy jsou tlumené a přirozeně asociované, aby grid nebyl duhový.
   ========================================================= */
.vg-category-card__badge--mona   { background:#71868d; } /* plíce – chladná šedomodrá */
.vg-category-card__badge--lures  { background:#7b8176; } /* tlusté střevo – neutrální šalvěj */
.vg-category-card__badge--titan  { background:#a97b3f; } /* žaludek – teplý okr */
.vg-category-card__badge--zenia  { background:#9a803e; } /* slezina/slinivka – zemitá zlatá */
.vg-category-card__badge--atom   { background:#b44747; } /* srdce – tlumená červená */
.vg-category-card__badge--tyres  { background:#ad694e; } /* tenké střevo – terakota */
.vg-category-card__badge--urofit { background:#52788d; } /* močový měchýř – modrá */
.vg-category-card__badge--nefrit { background:#465b72; } /* ledviny – hlubší modrá */
.vg-category-card__badge--circle { background:#76566d; } /* oběh – tlumená švestková */
.vg-category-card__badge--triple { background:#69627b; } /* trojitý ohřívač – fialovošedá */
.vg-category-card__badge--zonal  { background:#73804e; } /* žlučník – olivová */
.vg-category-card__badge--mantra { background:#526d4f; } /* játra – hlubší zelená */

/* Organ-hour card kicker is now only the time, so make it calm and readable. */
body.tax-product_cat .vg-category-card__eyebrow {
  letter-spacing:.10em;
}


/* =========================================================
   v60 — ORGÁNOVÉ HODINY / CENTERED WHY + SMART GROUP LINKS
   ========================================================= */

/* Pokud v tmavém mezibloku není CTA, celý obsah je skutečně centrovaný. */
.vg-category-why-together--centered {
  grid-template-columns: 1fr;
  text-align: center;
}

.vg-category-why-together--centered .vg-category-why-together__copy {
  max-width: 920px;
  margin-inline: auto;
}

.vg-category-why-together--centered .vg-category-why-together__copy > p:last-child {
  margin-inline: auto;
}

/* Neviditelné logické kotvy zachovají jeden chronologický grid bez dalších mezer. */
.vg-category-group-anchor {
  position: relative;
  display: block;
  width: 0;
  height: 0;
  scroll-margin-top: 120px;
}

/* Kotva je grid item bez výšky, aby nerozbíjela 3sloupcový rytmus. */
.vg-category-grid > .vg-category-group-anchor {
  grid-column: 1 / -1;
  margin: 0;
  padding: 0;
}

@media (max-width: 720px) {
  .vg-category-group-anchor {
    scroll-margin-top: 96px;
  }
}


/* =========================================================
   v61 — CATEGORY FIXES
   ========================================================= */

/* All no-CTA green info blocks centered across every category. */
.vg-category-why-together--centered {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  text-align: center;
}

.vg-category-why-together--centered .vg-category-why-together__copy {
  width: 100%;
  max-width: 920px;
  margin-inline: auto;
  text-align: center;
}

.vg-category-why-together--centered .vg-category-kicker,
.vg-category-why-together--centered h2,
.vg-category-why-together--centered .vg-category-why-together__copy > p:last-child {
  margin-inline: auto;
  text-align: center;
}

/* Orgánové hodiny must remain a strict 3 x 4 grid on desktop. */
@media (min-width: 1101px) {
  .vg-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Group anchors are now absolutely positioned INSIDE the first product card.
   They no longer become grid items and therefore cannot break rows. */
.vg-category-card {
  position: relative;
}

.vg-category-group-anchor {
  position: absolute;
  top: -120px;
  left: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

/* Neutralize the old v60 direct-grid anchor rule if cached CSS order survives. */
.vg-category-grid > .vg-category-group-anchor {
  display: none !important;
}

@media (max-width: 1100px) and (min-width: 721px) {
  .vg-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .vg-category-grid {
    grid-template-columns: 1fr !important;
  }

  .vg-category-group-anchor {
    top: -96px;
  }
}


/* =========================================================
   v62 — DENNÍ NÁKLAD V HERO + PERFECT CTA BASELINE
   ========================================================= */

.vg-category-daily-cost {
  width: fit-content;
  max-width: 880px;
  margin: 20px auto 0;
  padding: 11px 15px;
  border: 1px solid rgba(49,72,75,.14);
  border-radius: 999px;
  background: #f4f6f3;
  color: var(--vg-teal);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
}

.vg-category-daily-cost__label {
  flex: 0 0 auto;
  padding-right: 10px;
  border-right: 1px solid rgba(49,72,75,.18);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.vg-category-daily-cost strong {
  font-size: 13px;
  line-height: 1.45;
}

/* Needs cards: content areas are normalized so all CTA sit on one baseline. */
@media (min-width: 901px) {
  .vg-category-needs {
    align-items: stretch;
  }

  .vg-category-need {
    display: grid;
    grid-template-rows: auto auto minmax(110px, auto) 1fr auto;
    height: 100%;
  }

  .vg-category-need > p {
    min-height: 0 !important;
  }

  .vg-category-need ul {
    align-self: start;
  }

  .vg-category-need > a {
    align-self: end;
    margin-top: 20px !important;
  }
}

@media (max-width: 720px) {
  .vg-category-daily-cost {
    width: 100%;
    max-width: none;
    border-radius: 18px;
    flex-direction: column;
    gap: 5px;
  }

  .vg-category-daily-cost__label {
    padding-right: 0;
    border-right: 0;
  }
}


/* =========================================================
   v63 — VISIBLE DAILY VALUE CHIP IN CATEGORY HERO
   ========================================================= */
.vg-category-value-chip {
  width: fit-content;
  max-width: calc(100% - 40px);
  margin: 22px auto 0;
  padding: 12px 18px;
  border: 1px solid rgba(49,72,75,.16);
  border-radius: 999px;
  background: #eef3ef;
  color: var(--vg-teal);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  text-align: center;
  box-shadow: 0 8px 20px rgba(49,72,75,.05);
}

.vg-category-value-chip__eyebrow {
  padding-right: 11px;
  border-right: 1px solid rgba(49,72,75,.18);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

.vg-category-value-chip strong {
  font-family: var(--vg-font-heading);
  font-size: 15px;
  line-height: 1.3;
  color: var(--vg-teal-dark);
}

@media (max-width: 720px) {
  .vg-category-value-chip {
    width: 100%;
    max-width: none;
    border-radius: 18px;
    flex-direction: column;
    gap: 4px;
    padding: 13px 16px;
  }

  .vg-category-value-chip__eyebrow {
    padding-right: 0;
    border-right: 0;
  }
}


/* =========================================================
   v64 — JEDNOTNÝ DENNÍ NÁKLAD
   ========================================================= */

/* Starý label "Cena každodenního režimu" už se vůbec nerenderuje. */
.vg-category-value-chip {
  gap: 8px;
  padding: 10px 16px;
}

.vg-category-value-chip strong {
  font-family: var(--vg-font-heading);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--vg-teal-dark);
  white-space: nowrap;
}

.vg-category-value-chip small {
  font-size: 12px;
  line-height: 1.4;
  color: var(--vg-text);
}

.vg-category-value-chip > span[aria-hidden="true"] {
  color: rgba(49,72,75,.35);
}

.vg-category-value-chip__eyebrow {
  display: none !important;
}

@media (max-width: 720px) {
  .vg-category-value-chip {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px 7px;
  }

  .vg-category-value-chip strong {
    white-space: normal;
  }
}


/* =========================================================
   v65 — DENNÍ NÁKLAD / JEDNOTNÝ STANDARD VŠECH KATEGORIÍ
   ========================================================= */
.vg-category-value-chip {
  margin-top: 20px;
}

.vg-category-value-chip strong {
  font-size: 16px;
  font-weight: 800;
}

.vg-category-value-chip small {
  font-size: 12px;
  color: var(--vg-text);
}


/* =========================================================
   v69 — DÁRKOVÉ SADY / COMING SOON
   ========================================================= */
.vg-category-coming-soon {
  margin-top: 72px;
  padding: 58px 42px;
  border: 1px solid var(--vg-border);
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: var(--vg-shadow);
  text-align: center;
}

.vg-category-coming-soon h2 {
  max-width: 760px;
  margin: 0 auto;
  font-family: var(--vg-font-heading);
  font-size: clamp(32px,4vw,48px);
  line-height: 1.08;
  letter-spacing: -.03em;
}

.vg-category-coming-soon > p:last-child {
  max-width: 640px;
  margin: 18px auto 0;
  color: var(--vg-text);
  font-size: 16px;
  line-height: 1.65;
}

@media (max-width:720px) {
  .vg-category-coming-soon {
    margin-top:54px;
    padding:42px 22px;
  }
}

/* ==========================================================
   V76 — REDAKCE VIGRES / ČISTÁ WP ŠABLONA PODLE SYSTÉMU LUNA
   ========================================================== */
body.single-post {
  background: var(--vg-bg);
}

.vigres-redakce {
  padding-bottom: 96px;
}

.vigres-redakce__shell {
  max-width: var(--vg-shell);
}

.vigres-redakce__crumbs {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 20px 0 14px;
  color: #777c7d;
  font-size: .82rem;
}

.vigres-redakce__crumbs a {
  color: #6d7274;
  text-decoration: none;
}

.vigres-redakce__crumbs a:hover {
  color: var(--vg-teal);
}

/* Stejný vizuální jazyk jako uzamčený hero LUNA: surface, jemný border, radius, shadow. */
.vigres-redakce__hero {
  max-width: 960px;
  margin: 10px auto 34px;
  padding: clamp(30px, 5vw, 52px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: var(--vg-shadow);
}

.vigres-redakce__hero .vg-kicker {
  margin-bottom: 12px;
}

.vigres-redakce__hero h1 {
  max-width: 850px;
  margin: 0;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading);
  font-size: clamp(2.35rem, 5vw, 3.55rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -.038em;
}

.vigres-redakce__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
  color: #777c7d;
  font-family: var(--vg-font-body);
  font-size: .84rem;
  font-weight: 600;
}

.vigres-redakce__content {
  width: min(100%, 960px);
  margin-inline: auto;
  padding: clamp(24px, 4vw, 44px);
  border: 1px solid rgba(49,72,75,.07);
  border-radius: 30px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
  color: #4f5658;
  font-family: var(--vg-font-body);
  font-size: 16px;
  line-height: 1.75;
}

/* V76: render už neobsahuje historické Shoptet classes/style. */
.vigres-redakce__content :where(p, li, td, th, blockquote, strong, em, small, a, span, div) {
  font-family: var(--vg-font-body);
}

.vigres-redakce__content :where(h2, h3, h4, h5, h6, button) {
  font-family: var(--vg-font-heading);
}

.vigres-redakce-body,
.vigres-redakce-inner {
  width: 100%;
  margin: 0;
  padding: 0;
}

.vigres-redakce-section {
  margin: 56px 0;
}

.vigres-redakce__content p {
  margin: 0 0 18px;
  color: #4f5658;
  font-size: 1rem;
  line-height: 1.76;
}

.vigres-redakce__content ul,
.vigres-redakce__content ol {
  margin: 0 0 22px;
  padding-left: 1.35em;
}

.vigres-redakce__content li {
  margin: 7px 0;
  color: #4f5658;
  line-height: 1.7;
}

.vigres-redakce__content h2 {
  margin: 52px 0 18px;
  color: var(--vg-ink);
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.025em;
}

.vigres-redakce__content h3 {
  margin: 30px 0 10px;
  color: var(--vg-ink);
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.28;
  letter-spacing: -.012em;
}

.vigres-redakce__content h4 {
  margin: 26px 0 10px;
  color: var(--vg-ink);
  font-size: 1.05rem;
  font-weight: 700;
}

.vigres-redakce__content a {
  color: var(--vg-teal);
  font-weight: 700;
  text-decoration-color: rgba(49,72,75,.3);
  text-underline-offset: 2px;
}

.vigres-redakce-accent {
  color: var(--vg-green);
}

.vigres-redakce-lead {
  margin: 0 0 30px !important;
  color: #30383a !important;
  font-size: clamp(1.08rem, 2vw, 1.22rem) !important;
  line-height: 1.68 !important;
}

/* Obrázky */
.vigres-redakce__content img {
  max-width: 100%;
  height: auto;
}

.vigres-redakce-figure {
  margin: 0 0 36px;
}

.vigres-redakce-figure img {
  display: block;
  width: 100%;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(28,29,31,.06);
}

.vigres-redakce-figure--wide img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.vigres-redakce-figure--square {
  max-width: 720px;
  margin-inline: auto;
}

.vigres-redakce-figure--square img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

/* Boxy ve stejném systému jako LUNA karty */
.vigres-redakce-callout,
.vigres-redakce-card,
.vigres-redakce-related,
.vigres-redakce-cta {
  margin: 24px 0;
  padding: 22px 24px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 18px;
  background: #fbfaf7;
}

.vigres-redakce-callout--quote {
  border-left: 4px solid var(--vg-teal);
  background: #f0f3ef;
  color: #31423b;
  font-weight: 700;
}

.vigres-redakce-callout--soft,
.vigres-redakce-callout--info {
  background: #f4f5f1;
}

.vigres-redakce-callout--warning {
  border-color: #eadfcb;
  background: #faf5ec;
}

.vigres-redakce-grid {
  display: grid;
  gap: 14px;
  margin: 22px 0;
}

.vigres-redakce-grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.vigres-redakce-grid--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }

.vigres-redakce-grid .vigres-redakce-card {
  margin: 0;
  min-width: 0;
}

.vigres-redakce-card img {
  display: block;
  width: min(100%, 250px);
  margin: 0 auto 18px;
  border-radius: 14px;
  object-fit: contain;
}

.vigres-redakce-related {
  background: #f4f5f1;
}

.vigres-redakce-related ul {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.vigres-redakce-related li {
  position: relative;
  padding-left: 22px;
}

.vigres-redakce-related li::before {
  content: "→";
  position: absolute;
  left: 0;
  color: var(--vg-teal);
  font-weight: 800;
}

/* Produktový most — vzhled příbuzný hero LUNA, ale kompaktnější. */
.vigres-redakce-product-panel {
  overflow: hidden;
  margin: 56px 0;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 24px;
  background: #fbfaf7;
}

.vigres-redakce-product-panel__inner {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(280px,.92fr);
  align-items: center;
}

.vigres-redakce-product-panel__copy {
  padding: 30px;
}

.vigres-redakce-product-panel__media {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: #f7efe4;
}

.vigres-redakce-product-panel__media img {
  width: min(100%, 360px);
  height: auto;
  object-fit: contain;
}

.vigres-redakce-product-mini,
.vigres-redakce-products__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 18px;
}

.vigres-redakce-product-mini a,
.vigres-redakce-product-link {
  display: flex;
  min-height: 94px;
  flex-direction: column;
  justify-content: space-between;
  padding: 15px;
  border: 1px solid rgba(49,72,75,.09);
  border-radius: 14px;
  background: #fff;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.vigres-redakce-product-mini a:hover,
.vigres-redakce-product-link:hover {
  transform: translateY(-2px);
  border-color: rgba(49,72,75,.22);
  box-shadow: 0 10px 24px rgba(28,29,31,.055);
}

.vigres-redakce-product-mini strong,
.vigres-redakce-product-link strong {
  color: var(--vg-teal-dark);
  font-family: var(--vg-font-heading);
}

.vigres-redakce-product-mini span,
.vigres-redakce-product-link span {
  margin-top: 12px;
  color: #6d7274;
  font-size: .82rem;
  font-weight: 700;
}

.vigres-redakce-products {
  margin: 56px 0 0;
  padding: 26px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 20px;
  background: #f4f5f1;
}

.vigres-redakce-products h2 {
  margin-top: 0;
}

/* Tabulky */
.vigres-redakce-table-wrap {
  overflow-x: auto;
  margin: 24px 0;
  border: 1px solid var(--vg-border);
  border-radius: 16px;
  background: #fff;
}

.vigres-redakce-table,
.vigres-redakce__content table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}

.vigres-redakce-table th,
.vigres-redakce-table td,
.vigres-redakce__content table th,
.vigres-redakce__content table td {
  padding: 13px 15px;
  border: 1px solid #e8e7e2;
  text-align: left;
  vertical-align: top;
}

.vigres-redakce-table th,
.vigres-redakce__content table th {
  background: #f4f5f1;
  color: var(--vg-teal-dark);
  font-weight: 700;
}

/* FAQ */
.vigres-redakce-faq {
  margin: 26px 0;
  border-top: 1px solid var(--vg-border);
}

.vigres-redakce-faq__item {
  border-bottom: 1px solid var(--vg-border);
}

.vigres-redakce-faq__question {
  position: relative;
  width: 100%;
  padding: 18px 44px 18px 0;
  border: 0;
  background: transparent;
  color: var(--vg-ink);
  font-size: 1rem;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.vigres-redakce-faq__question::after {
  content: "+";
  position: absolute;
  right: 8px;
  top: 14px;
  color: var(--vg-teal);
  font-size: 1.35rem;
}

.vigres-redakce-faq__item.is-open .vigres-redakce-faq__question::after {
  content: "–";
}

.vigres-redakce-faq__answer {
  display: none;
  padding: 0 0 18px;
}

.vigres-redakce-faq__item.is-open .vigres-redakce-faq__answer {
  display: block;
}

.vigres-redakce-faq__answer[hidden] {
  display: none !important;
}

.vigres-redakce-faq__question:focus-visible {
  outline: 2px solid var(--vg-teal);
  outline-offset: 3px;
  border-radius: 8px;
}

/* Tlačítka */
.vigres-redakce-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.vigres-redakce-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 11px 18px;
  border: 1px solid var(--vg-teal);
  border-radius: 11px;
  background: var(--vg-teal);
  color: #fff !important;
  font-family: var(--vg-font-heading) !important;
  font-weight: 700;
  text-decoration: none !important;
}

.vigres-redakce-button:hover {
  background: var(--vg-teal-dark);
}

.vigres-redakce-button--ghost {
  background: #fff;
  color: var(--vg-teal) !important;
}

.vigres-redakce-checklist {
  margin: 24px 0;
  padding: 22px 24px;
  border: 1px solid rgba(49,72,75,.12);
  border-radius: 18px;
  background: #f4f5f1;
}

.vigres-redakce__footer {
  display: flex;
  max-width: 960px;
  align-items: flex-end;
  justify-content: space-between;
  gap: 34px;
  margin: 34px auto 0;
  padding: 32px 34px;
  border-radius: 28px;
  background: var(--vg-teal);
  color: rgba(255,255,255,.76);
}

.vigres-redakce__footer .vg-kicker {
  color: rgba(255,255,255,.58);
}

.vigres-redakce__footer h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(1.55rem,3vw,2rem);
}

.vigres-redakce__footer p {
  max-width: 620px;
  margin: 0;
}

.vigres-redakce__footer > a {
  flex: 0 0 auto;
  padding: 11px 16px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 11px;
  color: #fff;
  font-family: var(--vg-font-heading);
  font-size: .86rem;
  font-weight: 700;
  text-decoration: none;
}

@media (max-width: 900px) {
  .vigres-redakce-grid--3,
  .vigres-redakce-products__grid,
  .vigres-redakce-product-mini {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .vigres-redakce-product-panel__inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .vigres-redakce {
    padding-bottom: 64px;
  }

  .vigres-redakce__hero,
  .vigres-redakce__content {
    padding: 24px 20px;
    border-radius: 22px;
  }

  .vigres-redakce__hero h1 {
    font-size: clamp(2rem, 9vw, 2.65rem);
  }

  .vigres-redakce-grid--2,
  .vigres-redakce-grid--3,
  .vigres-redakce-products__grid,
  .vigres-redakce-product-mini {
    grid-template-columns: 1fr;
  }

  .vigres-redakce-section {
    margin: 42px 0;
  }

  .vigres-redakce-callout,
  .vigres-redakce-card,
  .vigres-redakce-related,
  .vigres-redakce-cta,
  .vigres-redakce-products {
    padding: 18px;
    border-radius: 16px;
  }

  .vigres-redakce-product-panel {
    margin: 42px 0;
    border-radius: 18px;
  }

  .vigres-redakce-product-panel__copy,
  .vigres-redakce-product-panel__media {
    padding: 20px;
  }

  .vigres-redakce__footer {
    align-items: flex-start;
    flex-direction: column;
    padding: 26px 22px;
    border-radius: 22px;
  }
}


/* =========================================================
   VIGRES v77 — REDAKCE: finální produktové bloky + polish
   ========================================================= */

/* První vizuál článku: bez zbytečné mezery, vždy konzistentně. */
.vigres-redakce-figure--hero {
  margin-top: 0 !important;
  margin-bottom: 34px !important;
}

.vigres-redakce-figure--hero img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 22px;
}

/* Jemnější redakční rozcestník / související čtení. */
.vigres-redakce-related {
  padding: 22px 24px;
  border: 1px solid rgba(49,72,75,.09);
  background: #f5f6f2;
  box-shadow: none;
}

.vigres-redakce-related h2 {
  margin-top: 0 !important;
  font-size: clamp(1.35rem,2.4vw,1.7rem) !important;
}

/*
 * Produktové mosty — 2 karty vedle sebe na desktopu.
 * Všechny varianty starého obsahu jsou po normalizaci stylované jednotně.
 */
.vigres-redakce-product-panel {
  margin: 52px 0;
  padding: 0;
  border: 1px solid rgba(49,72,75,.09);
  border-radius: 24px;
  background: linear-gradient(180deg,#fbfaf7 0%,#f7f6f2 100%);
  box-shadow: 0 14px 34px rgba(28,29,31,.045);
}

.vigres-redakce-product-panel__copy {
  padding: 30px 30px 24px;
  text-align: center;
}

.vigres-redakce-product-panel__copy > h2,
.vigres-redakce-product-panel__copy > h3,
.vigres-redakce-product-panel__copy > p {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* Pokud je ve starém bloku samostatné ilustrační médium, držíme ho kompaktní. */
.vigres-redakce-product-panel__media {
  padding: 24px 30px 30px;
  background: transparent;
}

.vigres-redakce-product-panel__media img {
  width: min(100%, 320px);
  border-radius: 18px;
}

/* V produktovém panelu nikdy nepoužívat 3 sloupce. */
.vigres-redakce-product-panel .vigres-redakce-grid,
.vigres-redakce-product-mini,
.vigres-redakce-products__grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 16px;
  align-items: stretch;
}

/* Starší produktové karty uvnitř článku. */
.vigres-redakce-product-panel .vigres-redakce-card,
.vigres-redakce-product-mini > a,
.vigres-redakce-product-link {
  min-width: 0;
  min-height: 100%;
  margin: 0;
  padding: 22px 18px 18px;
  border: 1px solid rgba(49,72,75,.085);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(28,29,31,.035);
  text-align: center;
}

.vigres-redakce-product-panel .vigres-redakce-card {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.vigres-redakce-product-panel .vigres-redakce-card img,
.vigres-redakce-product-mini img,
.vigres-redakce-product-link img {
  display: block;
  width: min(100%, 190px);
  height: 190px;
  margin: 0 auto 16px;
  object-fit: contain;
  border-radius: 14px;
}

.vigres-redakce-product-panel .vigres-redakce-card h3,
.vigres-redakce-product-panel .vigres-redakce-card h4,
.vigres-redakce-product-mini strong,
.vigres-redakce-product-link strong {
  width: 100%;
  margin: 0 0 6px;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading) !important;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.vigres-redakce-product-panel .vigres-redakce-card p,
.vigres-redakce-product-mini span,
.vigres-redakce-product-link span {
  width: 100%;
  margin: 0 auto 14px;
  color: #697072;
  font-size: .84rem;
  line-height: 1.5;
  text-align: center;
}

/* Tlačítko držet u spodní hrany, takže popisky obou karet jsou zarovnané. */
.vigres-redakce-product-panel .vigres-redakce-card .vigres-redakce-button,
.vigres-redakce-product-panel .vigres-redakce-card .vigres-redakce-button-row,
.vigres-redakce-product-mini .vigres-redakce-button,
.vigres-redakce-product-link .vigres-redakce-button {
  margin-top: auto;
}

.vigres-redakce-product-panel .vigres-redakce-card .vigres-redakce-button-row {
  width: 100%;
  justify-content: center;
}

.vigres-redakce-product-panel .vigres-redakce-button,
.vigres-redakce-product-mini .vigres-redakce-button {
  min-width: 118px;
}

/* U lichého počtu produktů je poslední karta stále půlširoká a vycentrovaná. */
.vigres-redakce-product-panel .vigres-redakce-grid > :last-child:nth-child(odd),
.vigres-redakce-product-mini > :last-child:nth-child(odd),
.vigres-redakce-products__grid > :last-child:nth-child(odd) {
  grid-column: 1 / -1;
  width: calc(50% - 8px);
  justify-self: center;
}

/* Spodní fallback doporučení, pokud v článku není tematický produktový most. */
.vigres-redakce-products {
  padding: 26px;
  border-radius: 20px;
  background: #f4f5f1;
}

.vigres-redakce-products h2,
.vigres-redakce-products > p {
  text-align: center;
}

.vigres-redakce-products .vigres-redakce-product-link {
  display: flex;
  min-height: 118px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

@media (max-width: 680px) {
  .vigres-redakce-product-panel .vigres-redakce-grid,
  .vigres-redakce-product-mini,
  .vigres-redakce-products__grid {
    grid-template-columns: 1fr !important;
  }

  .vigres-redakce-product-panel .vigres-redakce-grid > :last-child:nth-child(odd),
  .vigres-redakce-product-mini > :last-child:nth-child(odd),
  .vigres-redakce-products__grid > :last-child:nth-child(odd) {
    grid-column: auto;
    width: 100%;
  }

  .vigres-redakce-product-panel__copy,
  .vigres-redakce-product-panel__media {
    padding-left: 18px;
    padding-right: 18px;
  }

  .vigres-redakce-product-panel .vigres-redakce-card img,
  .vigres-redakce-product-mini img,
  .vigres-redakce-product-link img {
    height: 170px;
  }
}

/* ==========================================================
   V78 — REDAKCE: HORNÍ ČISTKA + SAMOSTATNÁ DOPORUČENÍ
   ========================================================== */

/* Po odstranění historického data nesmí zůstat prázdná horní plocha. */
.vigres-redakce__content {
  padding-top: 28px;
}

.vigres-redakce__content > :first-child,
.vigres-redakce__content .vigres-redakce-body > :first-child,
.vigres-redakce__content .vigres-redakce-inner > :first-child {
  margin-top: 0 !important;
}

.vigres-redakce__content .vigres-redakce-figure--hero,
.vigres-redakce__content .vigres-redakce-hero-image {
  margin-top: 0 !important;
}

.vigres-redakce__content .vigres-redakce-figure--hero {
  margin-bottom: 34px;
}

.vigres-redakce__content .vigres-redakce-figure--hero img,
.vigres-redakce__content img.vigres-redakce-hero-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(28,29,31,.06);
}

/* Doporučené produkty už nejsou součástí bílé karty článku. */
.vigres-redakce__recommendations {
  width: min(100%, 960px);
  margin: 30px auto 0;
}

.vigres-redakce__recommendations .vigres-redakce-products {
  margin: 0;
  padding: 34px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 26px;
  background: var(--vg-surface);
  box-shadow: 0 16px 38px rgba(28,29,31,.045);
}

.vigres-redakce__recommendations .vigres-redakce-products h2 {
  margin: 0 0 8px !important;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading);
  font-size: clamp(1.6rem, 3vw, 2rem);
  line-height: 1.12;
  text-align: center;
}

.vigres-redakce__recommendations .vigres-redakce-products > p {
  max-width: 650px;
  margin: 0 auto 24px;
  color: var(--vg-text);
  font-size: .94rem;
  line-height: 1.65;
  text-align: center;
}

.vigres-redakce__recommendations .vigres-redakce-products__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 18px;
  margin-top: 0;
  align-items: stretch;
}

.vigres-redakce__recommendations .vigres-redakce-product-link {
  display: flex;
  min-height: 350px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 24px 22px 20px;
  border: 1px solid rgba(49,72,75,.08);
  border-radius: 20px;
  background: #fbfaf7;
  color: var(--vg-ink) !important;
  text-align: center;
  text-decoration: none !important;
  box-shadow: none;
}

.vigres-redakce__recommendations .vigres-redakce-product-link:hover {
  transform: translateY(-2px);
  border-color: rgba(49,72,75,.18);
  box-shadow: 0 12px 28px rgba(28,29,31,.055);
}

.vigres-redakce__recommendations .vigres-redakce-product-link__image {
  display: block;
  width: 180px;
  height: 180px;
  margin: 0 auto 18px;
  object-fit: contain;
  border-radius: 16px;
}

.vigres-redakce__recommendations .vigres-redakce-product-link__name {
  display: block;
  width: 100%;
  margin: 0 0 7px;
  color: var(--vg-ink);
  font-family: var(--vg-font-heading) !important;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.vigres-redakce__recommendations .vigres-redakce-product-link__category {
  display: block;
  width: 100%;
  min-height: 22px;
  margin: 0 0 16px;
  color: #747a7c;
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.45;
  text-align: center;
}

.vigres-redakce__recommendations .vigres-redakce-product-link__cta {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  padding: 10px 16px;
  border-radius: 11px;
  background: var(--vg-teal);
  color: #fff;
  font-family: var(--vg-font-heading) !important;
  font-size: .84rem;
  font-weight: 700;
  line-height: 1;
}

/* U třech doporučení je třetí stále půlširoké a centrované. */
.vigres-redakce__recommendations .vigres-redakce-products__grid > :last-child:nth-child(odd) {
  grid-column: 1 / -1;
  width: calc(50% - 9px);
  justify-self: center;
}

@media (max-width: 680px) {
  .vigres-redakce__content {
    padding-top: 20px;
  }

  .vigres-redakce__recommendations {
    margin-top: 22px;
  }

  .vigres-redakce__recommendations .vigres-redakce-products {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .vigres-redakce__recommendations .vigres-redakce-products__grid {
    grid-template-columns: 1fr !important;
  }

  .vigres-redakce__recommendations .vigres-redakce-products__grid > :last-child:nth-child(odd) {
    grid-column: auto;
    width: 100%;
  }

  .vigres-redakce__recommendations .vigres-redakce-product-link {
    min-height: 320px;
  }

  .vigres-redakce__recommendations .vigres-redakce-product-link__image {
    width: 165px;
    height: 165px;
  }
}
\n\n/* ==========================================================\n   V79 — REDAKCE: HERO BEZ LEGACY MEZERY\n   ========================================================== */\n.vigres-redakce__content {\n  padding-top: clamp(18px, 2.4vw, 24px);\n}\n\n/* První obrazový blok musí začít okamžitě nahoře. */\n.vigres-redakce__content .vigres-redakce-body,\n.vigres-redakce__content .vigres-redakce-inner {\n  margin-top: 0 !important;\n  padding-top: 0 !important;\n}\n\n.vigres-redakce__content .vigres-redakce-figure--hero,\n.vigres-redakce__content > .vigres-redakce-figure--hero,\n.vigres-redakce__content .vigres-redakce-inner > .vigres-redakce-figure--hero,\n.vigres-redakce__content .vigres-redakce-body > .vigres-redakce-figure--hero {\n  margin-top: 0 !important;\n  padding-top: 0 !important;\n}\n\n/* Legacy prázdné zalomení před hero nikdy nesmí generovat výšku. */\n.vigres-redakce__content br:first-child,\n.vigres-redakce__content .vigres-redakce-body > br:first-child,\n.vigres-redakce__content .vigres-redakce-inner > br:first-child {\n  display: none !important;\n}\n
/* ==========================================================
   SHOP HUB / OBCHOD — v81
   ========================================================== */
.vg-shop-page{background:var(--vg-bg);color:var(--vg-ink)}
.vg-shop-kicker{display:inline-block;margin-bottom:12px;color:var(--vg-green);font-size:.76rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.vg-shop-hero{padding:72px 0 44px}
.vg-shop-hero__inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:28px;align-items:stretch}
.vg-shop-hero__copy,.vg-shop-hero__panel{border:1px solid var(--vg-border);border-radius:30px;background:var(--vg-surface);box-shadow:var(--vg-shadow)}
.vg-shop-hero__copy{padding:58px}
.vg-shop-hero__copy h1{max-width:780px;margin:0 0 20px;font-size:clamp(2.55rem,5.2vw,5.15rem);line-height:.98;letter-spacing:-.045em}
.vg-shop-hero__copy>p{max-width:760px;margin:0;color:var(--vg-text);font-size:1.08rem;line-height:1.75}
.vg-shop-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.vg-shop-hero__panel{display:flex;flex-direction:column;justify-content:flex-end;padding:36px;background:linear-gradient(145deg,#31484b 0%,#26383a 100%);color:#fff}
.vg-shop-hero__panel-kicker{margin-bottom:auto;color:rgba(255,255,255,.68);font-size:.76rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.vg-shop-hero__panel strong{display:block;margin:60px 0 12px;font-family:var(--vg-font-heading);font-size:2rem;line-height:1.1}
.vg-shop-hero__panel p{margin:0 0 22px;color:rgba(255,255,255,.75);line-height:1.7}
.vg-shop-hero__panel a{font-weight:900;text-decoration:none}
.vg-shop-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 20px;border:1px solid transparent;border-radius:999px;font-weight:900;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.vg-shop-btn:hover{transform:translateY(-1px)}
.vg-shop-btn--primary{background:var(--vg-teal);color:#fff;box-shadow:0 10px 24px rgba(49,72,75,.14)}
.vg-shop-btn--ghost{border-color:var(--vg-border);background:#fff;color:var(--vg-ink)}
.vg-shop-btn--light{background:#fff;color:var(--vg-teal)}
.vg-shop-btn--small{min-height:42px;padding:0 16px;font-size:.9rem}
.vg-shop-section{padding:58px 0 78px}
.vg-shop-section--soft{background:#f4f3ef}
.vg-shop-section__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);gap:48px;align-items:end;margin-bottom:30px}
.vg-shop-section__head h2{margin:0;font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.04;letter-spacing:-.035em}
.vg-shop-section__head>p{margin:0 0 4px;color:var(--vg-text);line-height:1.7}
.vg-shop-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.vg-shop-category-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-height:310px;overflow:hidden;border:1px solid var(--vg-border);border-radius:24px;background:#fff;text-decoration:none;box-shadow:0 10px 26px rgba(28,29,31,.035);transition:transform .22s ease,box-shadow .22s ease}
.vg-shop-category-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(28,29,31,.07)}
.vg-shop-category-card__visual{display:flex;align-items:center;justify-content:center;padding:22px;background:linear-gradient(145deg,#f1eee7,#faf9f6)}
.vg-shop-category-card__visual img{width:100%;max-width:250px;aspect-ratio:1/1;object-fit:contain}
.vg-shop-category-card__mark{display:grid;width:108px;aspect-ratio:1;place-items:center;border-radius:50%;background:var(--vg-teal);color:#fff;font-family:var(--vg-font-heading);font-size:2.4rem;font-weight:900}
.vg-shop-category-card__copy{display:flex;flex-direction:column;padding:28px}
.vg-shop-category-card__copy>span{color:var(--vg-green);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.vg-shop-category-card__copy h3{margin:8px 0 10px;font-size:1.55rem;line-height:1.1}
.vg-shop-category-card__copy p{margin:0 0 18px;color:var(--vg-text);font-size:.92rem;line-height:1.65}
.vg-shop-category-card__copy strong{margin-top:auto;color:var(--vg-teal);font-size:.88rem}
.vg-shop-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vg-shop-route-grid a{display:grid;grid-template-columns:auto 1fr;column-gap:14px;row-gap:4px;min-height:150px;padding:24px;border:1px solid var(--vg-border);border-radius:20px;background:#fff;text-decoration:none;transition:transform .2s ease,border-color .2s ease}
.vg-shop-route-grid a:hover{transform:translateY(-2px);border-color:#cfd4cf}
.vg-shop-route-grid span{grid-row:1/3;display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#eef1ed;color:var(--vg-green);font-size:.78rem;font-weight:900}
.vg-shop-route-grid strong{font-family:var(--vg-font-heading);font-size:1.12rem;line-height:1.25}
.vg-shop-route-grid small{color:var(--vg-text);font-size:.86rem;line-height:1.5}
.vg-shop-start{padding:0 0 78px;background:#f4f3ef}
.vg-shop-start__inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:36px 40px;border-radius:24px;background:var(--vg-teal);color:#fff}
.vg-shop-start__inner h2{max-width:700px;margin:0 0 10px;color:#fff;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.08}
.vg-shop-start__inner p{max-width:760px;margin:0;color:rgba(255,255,255,.72)}
.vg-shop-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.vg-shop-product-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--vg-border);border-radius:22px;background:#fff;box-shadow:0 8px 24px rgba(28,29,31,.035)}
.vg-shop-product-card__image{display:flex;aspect-ratio:1/1;align-items:center;justify-content:center;padding:20px;background:#f6f3ec}
.vg-shop-product-card__image img{width:100%;height:100%;object-fit:contain;transition:transform .24s ease}
.vg-shop-product-card:hover .vg-shop-product-card__image img{transform:scale(1.018)}
.vg-shop-product-card__body{display:flex;flex:1;flex-direction:column;padding:20px}
.vg-shop-product-card__meta{min-height:20px;margin-bottom:7px;color:var(--vg-green);font-size:.7rem;font-weight:800;text-transform:uppercase}
.vg-shop-product-card__meta a{text-decoration:none}
.vg-shop-product-card h3,.vg-shop-product-card__title{margin:0 0 12px;font-size:1.24rem;line-height:1.15}
.vg-shop-product-card h3 a,.vg-shop-product-card__title a{text-decoration:none}
.vg-shop-product-card__price{margin-top:auto;font-family:var(--vg-font-heading);font-size:1.12rem;font-weight:900}
.vg-shop-product-card__price del{margin-right:6px;color:var(--vg-muted);font-size:.9em;font-weight:700}
.vg-shop-product-card__price ins{text-decoration:none}
.vg-shop-product-card__stock{margin-top:4px;font-size:.76rem;font-weight:800}
.vg-shop-product-card__stock.is-stock{color:var(--vg-green)}
.vg-shop-product-card__stock.is-out{color:var(--vg-sale)}
.vg-shop-product-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.vg-shop-bottom{padding:0 0 92px}
.vg-shop-bottom__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vg-shop-bottom__grid a{display:flex;min-height:180px;flex-direction:column;padding:28px;border:1px solid var(--vg-border);border-radius:22px;background:#fff;text-decoration:none}
.vg-shop-bottom__grid span{color:var(--vg-green);font-size:.72rem;font-weight:900;letter-spacing:.12em}
.vg-shop-bottom__grid strong{margin:12px 0 8px;font-family:var(--vg-font-heading);font-size:1.35rem}
.vg-shop-bottom__grid small{color:var(--vg-text);line-height:1.55}
@media(max-width:1100px){
  .vg-shop-hero__inner{grid-template-columns:1fr}
  .vg-shop-hero__panel strong{margin-top:30px}
  .vg-shop-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vg-shop-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .vg-shop-hero{padding-top:42px}
  .vg-shop-hero__copy{padding:36px 28px}
  .vg-shop-section__head{grid-template-columns:1fr;gap:12px}
  .vg-shop-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vg-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vg-shop-start__inner{align-items:flex-start;flex-direction:column}
  .vg-shop-bottom__grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .vg-shop-hero__copy,.vg-shop-hero__panel{border-radius:22px}
  .vg-shop-hero__copy h1{font-size:2.55rem}
  .vg-shop-hero__actions{flex-direction:column}
  .vg-shop-btn{width:100%}
  .vg-shop-category-grid,.vg-shop-route-grid,.vg-shop-product-grid{grid-template-columns:1fr}
  .vg-shop-category-card{grid-template-columns:1fr;min-height:0}
  .vg-shop-category-card__visual{min-height:230px}
  .vg-shop-category-card__copy{padding:24px}
  .vg-shop-start__inner{padding:28px 24px}
  .vg-shop-product-card__actions{grid-template-columns:1fr 1fr}
}

/* =========================================================
   V82 — OBCHOD: chytrá filtrace + prémiové produktové karty
   ========================================================= */
.vg-shop-filter{
  margin:0 0 30px;
  padding:24px;
  border:1px solid var(--vg-border);
  border-radius:24px;
  background:linear-gradient(145deg,#fff 0%,#f7f6f2 100%);
  box-shadow:0 12px 30px rgba(28,29,31,.045)
}
.vg-shop-filter__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.vg-shop-filter__head>div{display:flex;flex-direction:column;gap:4px}
.vg-shop-filter__eyebrow{color:var(--vg-green);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.vg-shop-filter__head strong{font-family:var(--vg-font-heading);font-size:1.45rem;line-height:1.15}
.vg-shop-filter__count{flex:0 0 auto;color:var(--vg-muted);font-size:.86rem}
.vg-shop-filter__count b{color:var(--vg-ink)}
.vg-shop-filter__buttons{display:flex;flex-wrap:wrap;gap:9px}
.vg-shop-filter__buttons button{
  appearance:none;
  min-height:42px;
  padding:0 15px;
  border:1px solid #d9ddd8;
  border-radius:999px;
  background:#fff;
  color:var(--vg-ink);
  font:800 .84rem/1 var(--vg-font-body);
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease
}
.vg-shop-filter__buttons button:hover{transform:translateY(-1px);border-color:#bac6c0;box-shadow:0 7px 16px rgba(28,29,31,.06)}
.vg-shop-filter__buttons button.is-active{border-color:var(--vg-teal);background:var(--vg-teal);color:#fff;box-shadow:0 8px 18px rgba(49,72,75,.14)}
.vg-shop-filter-empty{margin:26px 0 0;padding:30px;border:1px dashed var(--vg-border);border-radius:20px;text-align:center;background:#faf9f6}
.vg-shop-filter-empty strong,.vg-shop-filter-empty span{display:block}
.vg-shop-filter-empty strong{font-family:var(--vg-font-heading);font-size:1.15rem}
.vg-shop-filter-empty span{margin-top:6px;color:var(--vg-muted)}
[hidden]{display:none!important}

.vg-shop-product-card{position:relative;text-align:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.vg-shop-product-card:hover{transform:translateY(-3px);border-color:#d6dad5;box-shadow:0 16px 34px rgba(28,29,31,.075)}
.vg-shop-product-card__image{position:relative;overflow:hidden}
.vg-shop-product-card__image img{max-width:100%;margin:auto}
.vg-shop-product-card__badge{
  position:absolute;
  z-index:2;
  top:12px;
  left:12px;
  max-width:calc(100% - 24px);
  padding:7px 11px;
  border-radius:999px;
  background:var(--vg-teal);
  color:#fff;
  font-size:.66rem;
  font-weight:900;
  line-height:1.15;
  letter-spacing:.02em;
  text-align:left;
  box-shadow:0 4px 12px rgba(28,29,31,.10)
}
.vg-shop-product-card__badge--luna{background:#9e6f3e}
.vg-shop-product-card__badge--synergy{background:#2e7d5a}
.vg-shop-product-card__badge--bundle{background:#5f6f89}
.vg-shop-product-card__badge--mona{background:#71868d}
.vg-shop-product-card__badge--lures{background:#7b8176}
.vg-shop-product-card__badge--titan{background:#a97b3f}
.vg-shop-product-card__badge--zenia{background:#9a803e}
.vg-shop-product-card__badge--atom{background:#b44747}
.vg-shop-product-card__badge--tyres{background:#ad694e}
.vg-shop-product-card__badge--urofit{background:#52788d}
.vg-shop-product-card__badge--nefrit{background:#465b72}
.vg-shop-product-card__badge--circle{background:#76566d}
.vg-shop-product-card__badge--triple{background:#69627b}
.vg-shop-product-card__badge--zonal{background:#73804e}
.vg-shop-product-card__badge--mantra{background:#526d4f}
.vg-shop-product-card__badge--central{background:#6e7168}
.vg-shop-product-card__badge--slim{background:#9a7747}
.vg-shop-product-card__badge--venus{background:#9a6878}
.vg-shop-product-card__badge--orion{background:#647468}
.vg-shop-product-card__badge--spirit{background:#7b5c3c}
.vg-shop-product-card__badge--lupo{background:#8f6f7d}
.vg-shop-product-card__body{align-items:center;text-align:center}
.vg-shop-product-card__meta{width:100%;text-align:center}
.vg-shop-product-card h3,.vg-shop-product-card__title{width:100%;text-align:center}
.vg-shop-product-card__price{width:100%;text-align:center}
.vg-shop-product-card__stock{width:100%;text-align:center}
.vg-shop-product-card__actions{width:100%;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:stretch}
.vg-shop-product-card__actions .vg-shop-btn{width:100%;min-width:0;padding:0 10px;white-space:nowrap;font-size:.78rem}
.vg-shop-product-card__actions .vg-shop-btn--primary{box-shadow:none}

@media(max-width:760px){
  .vg-shop-filter{padding:20px 18px;border-radius:20px}
  .vg-shop-filter__head{align-items:flex-start;flex-direction:column;gap:8px}
  .vg-shop-filter__buttons{gap:7px}
  .vg-shop-filter__buttons button{min-height:40px;padding:0 13px;font-size:.8rem}
}


/* =========================================================
   V83 — OBCHOD POLISH + SJEDNOCENÉ PRODUKTOVÉ PŘÍZNAKY
   Obchod je referenční systém pro velikost, usazení a barvy badges.
   ========================================================= */

/* Výraznější, lépe skenovatelná filtrace. */
.vg-shop-filter{
  margin-bottom:34px;
  padding:28px 30px;
  border-radius:26px;
  box-shadow:0 14px 34px rgba(28,29,31,.055)
}
.vg-shop-filter__head{align-items:center;margin-bottom:22px}
.vg-shop-filter__head strong{font-size:1.55rem}
.vg-shop-filter__count{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:0 14px;
  border:1px solid var(--vg-border);
  border-radius:999px;
  background:#fff;
  color:var(--vg-text);
  font-size:.84rem;
  font-weight:800
}
.vg-shop-filter__buttons{gap:10px 9px}
.vg-shop-filter__buttons button{
  min-height:44px;
  padding:0 17px;
  border-color:#d8ddd8;
  font-size:.86rem;
  box-shadow:0 3px 10px rgba(28,29,31,.025)
}
.vg-shop-filter__buttons button.is-active{
  border-color:var(--vg-teal);
  background:var(--vg-teal);
  color:#fff;
  box-shadow:0 9px 20px rgba(49,72,75,.17)
}

/* Produktový grid: stejné osy, výšky a klidnější vertikální rytmus. */
.vg-shop-product-grid{grid-auto-rows:1fr;align-items:stretch}
.vg-shop-product-card{height:100%}
.vg-shop-product-card__body{height:100%;padding:20px 18px 18px}
.vg-shop-product-card__meta{display:flex;min-height:2.15em;align-items:center;justify-content:center;margin-bottom:6px;line-height:1.25}
.vg-shop-product-card h3,.vg-shop-product-card__title{display:flex;min-height:2.45em;align-items:center;justify-content:center;margin-bottom:9px}
.vg-shop-product-card__price{margin-top:0;min-height:1.65em}
.vg-shop-product-card__stock{min-height:1.3em}
.vg-shop-product-card__actions{margin-top:auto;padding-top:14px}
.vg-shop-product-card__actions .vg-shop-btn{min-height:40px}

/* Kategorie: přesně stejná geometrie badge jako na /obchod/. */
.vg-category-card__badge{
  top:12px;
  left:12px;
  max-width:calc(100% - 24px);
  padding:7px 11px;
  border-radius:999px;
  background:var(--vg-teal);
  color:#fff;
  font-size:.66rem;
  font-weight:900;
  line-height:1.15;
  letter-spacing:.02em;
  text-align:left;
  box-shadow:0 4px 12px rgba(28,29,31,.10)
}

/* Stejná barevná mapa na kategoriích i v centrálním Obchodu. */
.vg-category-card__badge--luna{background:#9e6f3e}
.vg-category-card__badge--synergy{background:#2e7d5a}
.vg-category-card__badge--bundle{background:#5f6f89}
.vg-category-card__badge--mona{background:#71868d}
.vg-category-card__badge--lures{background:#7b8176}
.vg-category-card__badge--titan{background:#a97b3f}
.vg-category-card__badge--zenia{background:#9a803e}
.vg-category-card__badge--atom{background:#b44747}
.vg-category-card__badge--tyres{background:#ad694e}
.vg-category-card__badge--urofit{background:#52788d}
.vg-category-card__badge--nefrit{background:#465b72}
.vg-category-card__badge--circle{background:#76566d}
.vg-category-card__badge--triple{background:#69627b}
.vg-category-card__badge--zonal{background:#73804e}
.vg-category-card__badge--mantra{background:#526d4f}
.vg-category-card__badge--central{background:#6e7168}
.vg-category-card__badge--slim{background:#9a7747}
.vg-category-card__badge--venus{background:#9a6878}
.vg-category-card__badge--orion{background:#647468}
.vg-category-card__badge--spirit{background:#7b5c3c}
.vg-category-card__badge--lupo{background:#8f6f7d}

/* Akční badge drží protilehlou osu produktu. */
.vg-category-card__sale{top:12px;right:12px;padding:7px 11px;font-size:.66rem;line-height:1.15;font-weight:900;letter-spacing:.02em}

@media(max-width:760px){
  .vg-shop-filter{padding:22px 18px;border-radius:22px}
  .vg-shop-filter__head{align-items:flex-start}
  .vg-shop-filter__count{min-height:34px;padding:0 12px}
  .vg-shop-filter__buttons{gap:8px 7px}
  .vg-shop-filter__buttons button{min-height:42px;padding:0 14px;font-size:.81rem}
}


/* =========================================================
   V85 — Obchod: robustní ATOM badge + mobilní filtr jako accordion
   ========================================================= */
.vg-shop-filter__mobile-toggle{display:none}

@media(max-width:760px){
  .vg-shop-filter{padding:18px 16px 16px}
  .vg-shop-filter__head{margin-bottom:14px}
  .vg-shop-filter__head>div{gap:2px}
  .vg-shop-filter__head strong{font-size:1.32rem}
  .vg-shop-filter__count{min-height:32px;font-size:.78rem}

  .vg-shop-filter__mobile-toggle{
    display:flex;
    width:100%;
    min-height:58px;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:10px 14px 10px 16px;
    border:1px solid #d8ddd8;
    border-radius:16px;
    background:#fff;
    color:var(--vg-ink);
    text-align:left;
    cursor:pointer;
    box-shadow:0 5px 14px rgba(28,29,31,.035)
  }
  .vg-shop-filter__mobile-toggle>span:first-child{display:flex;min-width:0;flex-direction:column;gap:2px}
  .vg-shop-filter__mobile-toggle small{color:var(--vg-muted);font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .vg-shop-filter__mobile-toggle strong{overflow:hidden;font-family:var(--vg-font-heading);font-size:.95rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
  .vg-shop-filter__mobile-chevron{position:relative;width:30px;height:30px;flex:0 0 30px;border-radius:999px;background:#f2f3ef}
  .vg-shop-filter__mobile-chevron:before,.vg-shop-filter__mobile-chevron:after{content:"";position:absolute;top:14px;width:8px;height:2px;border-radius:2px;background:var(--vg-teal);transition:transform .2s ease}
  .vg-shop-filter__mobile-chevron:before{left:8px;transform:rotate(45deg)}
  .vg-shop-filter__mobile-chevron:after{right:8px;transform:rotate(-45deg)}
  .vg-shop-filter.is-mobile-open .vg-shop-filter__mobile-chevron:before{transform:rotate(-45deg)}
  .vg-shop-filter.is-mobile-open .vg-shop-filter__mobile-chevron:after{transform:rotate(45deg)}

  .vg-shop-filter__buttons{
    display:none;
    margin-top:10px;
    padding:10px;
    border:1px solid #e0e2dd;
    border-radius:16px;
    background:#faf9f6;
    gap:8px 7px
  }
  .vg-shop-filter.is-mobile-open .vg-shop-filter__buttons{display:flex}
  .vg-shop-filter__buttons button{min-height:40px;padding:0 13px;font-size:.79rem}
}

/* =========================================================
   v88 — VIGRES CART DRAWER / ONE DESIGN SYSTEM
   ========================================================= */
.vg-cart-link{position:relative}
.vg-cart-count{position:absolute;right:-7px;top:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--vg-green);color:#fff;font-family:var(--vg-font-body);font-size:10px;font-weight:800;line-height:18px;text-align:center;box-shadow:0 2px 8px rgba(49,72,75,.18);transition:transform .2s ease,opacity .2s ease}
.vg-cart-count.is-empty{opacity:0;transform:scale(.65);pointer-events:none}
.vg-cart-open{overflow:hidden}
.vg-mini-cart{position:fixed;inset:0;z-index:99999;pointer-events:none;visibility:hidden;font-family:var(--vg-font-body);color:var(--vg-ink)}
.vg-mini-cart.is-open{pointer-events:auto;visibility:visible}
.vg-mini-cart__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(38,56,58,.22);opacity:0;transition:opacity .26s ease;cursor:default;backdrop-filter:blur(2px)}
.vg-mini-cart.is-open .vg-mini-cart__backdrop{opacity:1}
.vg-mini-cart__panel{position:absolute;right:0;top:0;height:100%;width:min(432px,94vw);background:var(--vg-bg);border-left:1px solid rgba(49,72,75,.08);box-shadow:-24px 0 64px rgba(28,29,31,.12);transform:translateX(104%);transition:transform .32s cubic-bezier(.22,.8,.22,1);overflow:hidden;overscroll-behavior:contain}
.vg-mini-cart.is-open .vg-mini-cart__panel{transform:translateX(0)}
.vg-mini-cart__inner{height:100%;padding:26px 24px 24px;display:flex;flex-direction:column;transition:opacity .18s ease}
.vg-mini-cart__inner.is-updating{opacity:.58;pointer-events:none}
.vg-mini-cart__head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--vg-border)}
.vg-mini-cart__eyebrow{display:block;margin-bottom:4px;color:var(--vg-green);font-family:var(--vg-font-body);font-size:.67rem;font-weight:800;line-height:1.3;letter-spacing:.11em}
.vg-mini-cart__head h2{margin:0;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.55rem;font-weight:700;line-height:1.1}
.vg-mini-cart__close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid var(--vg-border);border-radius:11px;background:var(--vg-surface);color:var(--vg-teal);cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.vg-mini-cart__close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.vg-mini-cart__close:hover{background:#f3f2ee;border-color:#d4d4ce;transform:translateY(-1px)}
.vg-mini-cart__items{display:grid;gap:0;margin:6px 0 0;overflow:auto;scrollbar-width:thin;scrollbar-color:#d7d8d3 transparent}
.vg-mini-cart__item{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--vg-border)}
.vg-mini-cart__thumb{display:flex;align-items:center;justify-content:center;width:78px;height:78px;border:1px solid var(--vg-border);border-radius:16px;background:var(--vg-surface);overflow:hidden;text-decoration:none}
.vg-mini-cart__thumb img{display:block;width:100%;height:100%;object-fit:contain}
.vg-mini-cart__item-copy{min-width:0;display:flex;flex-direction:column;gap:12px}
.vg-mini-cart__item-top,.vg-mini-cart__item-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}
.vg-mini-cart__name{min-width:0;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:.95rem;font-weight:700;line-height:1.25;text-decoration:none}
.vg-mini-cart__name:hover{color:var(--vg-teal)}
.vg-mini-cart__remove{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--vg-muted);cursor:pointer;transition:background .18s ease,color .18s ease}
.vg-mini-cart__remove svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vg-mini-cart__remove:hover{background:#f2ecea;color:var(--vg-sale)}
.vg-mini-cart__stepper{display:grid;grid-template-columns:30px 34px 30px;height:34px;border:1px solid var(--vg-border);border-radius:10px;background:var(--vg-surface);overflow:hidden}
.vg-mini-cart__stepper button,.vg-mini-cart__stepper input{width:100%;min-width:0;height:100%;margin:0;padding:0;border:0;background:transparent;color:var(--vg-teal-dark);font-family:var(--vg-font-body);text-align:center}
.vg-mini-cart__stepper button{font-size:1rem;cursor:pointer;transition:background .18s ease}
.vg-mini-cart__stepper button:hover{background:#f3f4f0}
.vg-mini-cart__stepper input{border-inline:1px solid #ecece8;font-size:.78rem;font-weight:800;-moz-appearance:textfield}
.vg-mini-cart__stepper input::-webkit-inner-spin-button,.vg-mini-cart__stepper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.vg-mini-cart__line-price{color:var(--vg-ink);font-family:var(--vg-font-body);font-size:.9rem;font-weight:800;white-space:nowrap}
.vg-mini-cart__footer{margin-top:auto;padding-top:14px;background:var(--vg-bg)}
.vg-mini-cart__summary{padding:15px 0 5px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--vg-border);color:var(--vg-text);font-family:var(--vg-font-body);font-size:.88rem;font-weight:700}
.vg-mini-cart__summary strong{color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.18rem}
.vg-mini-cart__shipping-note{margin:3px 0 15px;color:var(--vg-muted);font-size:.73rem;line-height:1.45}
.vg-mini-cart__actions{display:grid;gap:9px}
.vg-mini-cart__primary,.vg-mini-cart__secondary{display:flex;min-height:48px;align-items:center;justify-content:center;margin:0;padding:0 18px;border-radius:11px;text-align:center;text-decoration:none;font-family:var(--vg-font-heading);font-size:.88rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background-color .2s ease,transform .2s ease,border-color .2s ease,color .2s ease}
.vg-mini-cart__primary{border:1px solid var(--vg-teal);background:var(--vg-teal);color:#fff}
.vg-mini-cart__primary:hover,.vg-mini-cart__primary:focus-visible{background:var(--vg-teal-dark);border-color:var(--vg-teal-dark);color:#fff;transform:translateY(-1px)}
.vg-mini-cart__secondary{border:1px solid var(--vg-border);background:var(--vg-surface);color:var(--vg-teal-dark)}
.vg-mini-cart__secondary:hover,.vg-mini-cart__secondary:focus-visible{background:#f3f2ee;border-color:#d6d7d2;transform:translateY(-1px)}
.vg-mini-cart__empty-wrap{margin:auto 0;display:grid;justify-items:center;text-align:center;gap:12px}
.vg-mini-cart__empty-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:var(--vg-surface);border:1px solid var(--vg-border);color:var(--vg-green)}
.vg-mini-cart__empty-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vg-mini-cart__empty{margin:0 0 4px;color:var(--vg-text);font-size:.9rem;line-height:1.6}
.vg-mini-cart__empty-wrap .vg-mini-cart__primary{width:100%}
.added_to_cart.wc-forward{display:none!important}
.add_to_cart_button.is-added,.vg-category-card__add.is-added,.single_add_to_cart_button.is-added{background:var(--vg-teal-dark)!important;border-color:var(--vg-teal-dark)!important;color:#fff!important}
.add_to_cart_button.is-loading,.vg-category-card__add.is-loading,.single_add_to_cart_button.is-loading{opacity:.68;pointer-events:none}

/* Minimalizovaný desktopový košík: malá kapsle, která se při hoveru rozvine. */
.vg-mini-cart-tab{position:fixed;right:14px;top:52%;z-index:99990;display:flex;align-items:center;gap:0;width:52px;height:52px;padding:0 14px;border:1px solid rgba(49,72,75,.09);border-radius:16px;background:rgba(255,255,255,.96);color:var(--vg-teal-dark);box-shadow:0 10px 28px rgba(28,29,31,.12);cursor:pointer;transform:translateY(-50%);overflow:hidden;white-space:nowrap;transition:width .25s cubic-bezier(.22,.8,.22,1),background .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease;backdrop-filter:blur(8px)}
.vg-mini-cart-tab:hover{width:112px;background:#fff;box-shadow:0 14px 34px rgba(28,29,31,.15);transform:translateY(calc(-50% - 1px))}
.vg-mini-cart-tab:focus-visible{outline:3px solid rgba(96,119,107,.24);outline-offset:3px}
.vg-mini-cart-tab.is-empty{opacity:0;visibility:hidden;pointer-events:none;transform:translate(12px,-50%)}
.vg-mini-cart-tab__icon{display:flex;align-items:center;justify-content:center;flex:0 0 23px}
.vg-mini-cart-tab__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vg-mini-cart-tab__label{max-width:0;margin-left:0;overflow:hidden;opacity:0;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:.78rem;font-weight:700;transition:max-width .22s ease,margin-left .22s ease,opacity .18s ease}
.vg-mini-cart-tab:hover .vg-mini-cart-tab__label{max-width:48px;margin-left:8px;opacity:1}
.vg-mini-cart-tab__count{position:absolute;right:4px;top:4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--vg-green);color:#fff;font-family:var(--vg-font-body);font-size:9px;font-weight:800;line-height:18px;text-align:center;box-shadow:0 2px 7px rgba(49,72,75,.16)}
.vg-mini-cart.is-open + .vg-mini-cart-tab{opacity:0;visibility:hidden;pointer-events:none;transform:translate(12px,-50%)}

@media(max-width:700px){
  .vg-mini-cart__backdrop{background:rgba(38,56,58,.28)}
  .vg-mini-cart__panel{top:auto;right:0;bottom:0;width:100%;height:auto;max-height:min(82vh,720px);border:0;border-radius:24px 24px 0 0;transform:translateY(104%);box-shadow:0 -20px 56px rgba(28,29,31,.14)}
  .vg-mini-cart.is-open .vg-mini-cart__panel{transform:translateY(0)}
  .vg-mini-cart__panel:before{content:"";display:block;width:40px;height:4px;border-radius:999px;background:#d1d2cd;margin:9px auto 0}
  .vg-mini-cart__inner{height:auto;max-height:calc(82vh - 13px);padding:15px 16px max(18px,env(safe-area-inset-bottom))}
  .vg-mini-cart__head{padding-bottom:13px}
  .vg-mini-cart__head h2{font-size:1.28rem}
  .vg-mini-cart__close{width:34px;height:34px;flex-basis:34px;border-radius:10px}
  .vg-mini-cart__items{max-height:38vh}
  .vg-mini-cart__item{grid-template-columns:66px minmax(0,1fr);gap:11px;padding:12px 0}
  .vg-mini-cart__thumb{width:66px;height:66px;border-radius:13px}
  .vg-mini-cart__item-copy{gap:9px}
  .vg-mini-cart__name{font-size:.88rem}
  .vg-mini-cart__stepper{grid-template-columns:28px 32px 28px;height:32px}
  .vg-mini-cart__line-price{font-size:.82rem}
  .vg-mini-cart__summary{padding-top:12px}
  .vg-mini-cart__actions{grid-template-columns:1fr 1fr}
  .vg-mini-cart__primary,.vg-mini-cart__secondary{min-height:46px;padding:0 9px;font-size:.77rem}

  /* v216 Mobil: plovoucí košík skrýt. V headeru už je plnohodnotná ikona košíku s počtem položek; druhý fixní vstup zbytečně překrýval obsah. */
  .vg-mini-cart-tab{
    display:none!important;
    right:16px;
    top:auto;
    bottom:max(18px,env(safe-area-inset-bottom));
    width:54px;
    height:54px;
    padding:0;
    justify-content:center;
    border-radius:18px;
    background:var(--vg-surface);
    border:1px solid var(--vg-border);
    box-shadow:0 12px 30px rgba(28,29,31,.16);
    transform:none;
    backdrop-filter:blur(10px);
  }
  body.single-product .vg-mini-cart-tab{bottom:calc(82px + max(12px,env(safe-area-inset-bottom)))}
  .vg-mini-cart-tab:hover{width:54px;transform:none;background:var(--vg-surface)}
  .vg-mini-cart-tab__icon{flex-basis:24px}
  .vg-mini-cart-tab__icon svg{width:24px;height:24px}
  .vg-mini-cart-tab__label{display:none!important}
  .vg-mini-cart-tab__count{right:-4px;top:-5px;min-width:20px;height:20px;padding:0 6px;line-height:20px;font-size:10px;background:var(--vg-green);box-shadow:0 3px 9px rgba(49,72,75,.2)}
  .vg-mini-cart-tab.is-empty{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px)}
  .vg-mini-cart.is-open + .vg-mini-cart-tab{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px)}
}

/* =========================================================
   V93 — JAK ZAČÍT / CONVERSION-FIRST ORIGINAL PAGE
   ========================================================= */
.vgjz93{--jz-teal:var(--vg-teal);--jz-green:var(--vg-green);--jz-bg:var(--vg-bg);--jz-ink:var(--vg-ink);--jz-text:var(--vg-text);--jz-border:var(--vg-border);background:var(--jz-bg);color:var(--jz-ink);font-family:var(--vg-font-body);overflow:hidden}
.vgjz93 *{box-sizing:border-box}.vgjz93 a{text-decoration:none}.vgjz93 h1,.vgjz93 h2,.vgjz93 h3,.vgjz93 strong,.vgjz93 .vgjz93-btn{font-family:var(--vg-font-heading)}
.vgjz93-shell{width:min(calc(100% - 64px),1200px);margin-inline:auto}.vgjz93-kicker{display:inline-block;margin:0 0 13px;color:var(--jz-green);font:800 .7rem/1 var(--vg-font-body);letter-spacing:.16em;text-transform:uppercase}.vgjz93-kicker--light{color:rgba(255,255,255,.7)}
.vgjz93-btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 19px;border:1px solid transparent;border-radius:11px;font-size:.86rem;font-weight:800;line-height:1;transition:.18s ease}.vgjz93-btn:hover{transform:translateY(-1px)}.vgjz93-btn--large{min-height:52px;padding:0 24px}.vgjz93-btn--primary{background:var(--jz-teal);color:#fff}.vgjz93-btn--primary:hover{background:var(--vg-teal-dark)}.vgjz93-btn--ghost{background:#fff;border-color:var(--jz-border);color:var(--jz-teal)}.vgjz93-btn--light{background:#fff;color:var(--jz-teal)}
.vgjz93-hero{padding:54px 0 50px}.vgjz93-hero__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:20px;align-items:stretch}.vgjz93-hero__copy{padding:58px 60px 48px;background:#fff;border:1px solid var(--jz-border);border-radius:26px;box-shadow:var(--vg-shadow)}.vgjz93-hero h1{max-width:780px;margin:0 0 20px;font-size:clamp(3.2rem,5.4vw,5.45rem);font-weight:700;line-height:.93;letter-spacing:-.05em}.vgjz93-hero h1 em{color:var(--jz-teal);font-style:normal}.vgjz93-hero__copy>p{max-width:700px;margin:0;color:var(--jz-text);font-size:1.03rem;line-height:1.7}.vgjz93-hero__actions{display:flex;align-items:center;gap:20px;margin-top:28px}.vgjz93-textlink{color:var(--jz-teal);font-size:.88rem;font-weight:800}.vgjz93-proofline{display:flex;flex-wrap:wrap;align-items:center;gap:13px;margin-top:31px;padding-top:24px;border-top:1px solid var(--jz-border);color:var(--jz-text);font-size:.78rem}.vgjz93-proofline b{color:var(--jz-ink);font-size:1rem}.vgjz93-proofline i{width:3px;height:3px;border-radius:50%;background:#bec3bd}
.vgjz93-hero__visual{position:relative;display:flex;min-height:100%;flex-direction:column;overflow:hidden;padding:30px;background:var(--jz-teal);color:#fff;border-radius:26px;box-shadow:var(--vg-shadow)}.vgjz93-hero__visual-copy>span{display:block;margin-bottom:9px;color:rgba(255,255,255,.62);font-size:.65rem;font-weight:900;letter-spacing:.15em}.vgjz93-hero__visual-copy strong{display:block;color:#fff;font-size:1.75rem;line-height:1.05}.vgjz93-hero__visual-copy p{margin:10px 0 0;color:rgba(255,255,255,.74);font-size:.86rem;line-height:1.55}.vgjz93-hero__products{display:flex;flex:1;align-items:flex-end;justify-content:center;min-height:220px;margin:8px -8px 4px}.vgjz93-hero__products img{width:49%;max-width:190px;height:auto;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(0,0,0,.18))}.vgjz93-hero__products img+img{margin-left:-34px}.vgjz93-hero__visual-link{padding-top:14px;border-top:1px solid rgba(255,255,255,.18);color:#fff;font-size:.82rem;font-weight:800}
.vgjz93-selector{padding:48px 0 70px}.vgjz93-heading{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr);gap:42px;align-items:end;margin-bottom:25px}.vgjz93-heading--center{display:block;text-align:center}.vgjz93-heading h2{margin:0;font-size:clamp(2.15rem,3.2vw,3.35rem);line-height:.98;letter-spacing:-.04em}.vgjz93-heading>p{margin:0;color:var(--jz-text);font-size:.9rem;line-height:1.55}
.vgjz93-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vgjz93-choice{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;min-height:112px;padding:18px;background:#fff;border:1px solid var(--jz-border);border-radius:15px;color:var(--jz-ink);text-align:left;cursor:pointer;transition:.18s ease}.vgjz93-choice:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(28,29,31,.05)}.vgjz93-choice>span{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#eef1ed;color:var(--jz-green);font-size:.65rem;font-weight:900}.vgjz93-choice strong{display:block;margin:2px 0 4px;font-size:.98rem}.vgjz93-choice small{display:block;color:var(--jz-text);font-size:.75rem;line-height:1.4}.vgjz93-choice.is-active{background:var(--jz-teal);border-color:var(--jz-teal);color:#fff}.vgjz93-choice.is-active>span{background:rgba(255,255,255,.14);color:#fff}.vgjz93-choice.is-active small{color:rgba(255,255,255,.72)}
.vgjz93-subfilters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:14px 16px;background:#fff;border:1px solid var(--jz-border);border-radius:14px}.vgjz93-subfilters>span{margin-right:4px;color:var(--jz-text);font-size:.75rem;font-weight:800}.vgjz93-subfilters button{min-height:34px;padding:0 12px;border:1px solid var(--jz-border);border-radius:999px;background:#fff;color:var(--jz-ink);font-size:.72rem;font-weight:800;cursor:pointer}.vgjz93-subfilters button:hover,.vgjz93-subfilters button.is-active{background:var(--jz-teal);border-color:var(--jz-teal);color:#fff}
.vgjz93-resultbar{display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;gap:32px;align-items:center;margin:18px 0 16px;padding:22px 24px;background:#eceae4;border-radius:16px}.vgjz93-resultbar span{display:block;margin-bottom:5px;color:var(--jz-green);font-size:.64rem;font-weight:900;letter-spacing:.14em}.vgjz93-resultbar strong{font-size:1.25rem}.vgjz93-resultbar p{margin:0;color:var(--jz-text);font-size:.83rem;line-height:1.55}.vgjz93-results{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;transition:opacity .15s ease,transform .15s ease}.vgjz93-results.is-updated{opacity:.45;transform:translateY(3px)}.vgjz93-card[hidden]{display:none!important}.vgjz93-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--jz-border);border-radius:17px;box-shadow:0 10px 26px rgba(28,29,31,.04)}.vgjz93-card__media{display:grid;aspect-ratio:1.15/1;place-items:center;overflow:hidden;background:#f4f1ea}.vgjz93-card__media img{width:100%;height:100%;object-fit:cover}.vgjz93-card__body{display:flex;min-height:250px;flex:1;flex-direction:column;align-items:center;padding:20px;text-align:center}.vgjz93-badge{display:inline-flex;min-height:24px;align-items:center;margin-bottom:9px;padding:0 9px;border-radius:999px;background:#eef1ed;color:var(--jz-green);font-size:.61rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.vgjz93-card h3{margin:0 0 7px;font-size:1.12rem;line-height:1.1}.vgjz93-card h3 a{color:inherit}.vgjz93-card p{max-width:290px;margin:0;color:var(--jz-text);font-size:.8rem;line-height:1.5}.vgjz93-card__price{margin-top:auto;padding-top:14px;font-family:var(--vg-font-heading);font-size:1rem;font-weight:800}.vgjz93-card__price del{margin-right:5px;color:var(--vg-muted);font-size:.82em}.vgjz93-card__actions{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.vgjz93-card__actions .vgjz93-btn{min-height:42px;padding:0 10px;font-size:.76rem}.vgjz93-more{text-align:center;margin-top:19px}.vgjz93-more a{color:var(--jz-teal);font-size:.82rem;font-weight:800}
.vgjz93-start{padding:70px 0;background:#f0eee8}.vgjz93-start__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:stretch}.vgjz93-start__copy{padding:48px 50px;background:#fff;border:1px solid var(--jz-border);border-radius:22px}.vgjz93-start h2{max-width:680px;margin:0 0 16px;font-size:clamp(2.35rem,3.6vw,3.8rem);line-height:.98;letter-spacing:-.04em}.vgjz93-start__copy>p{max-width:690px;margin:0 0 26px;color:var(--jz-text);font-size:.94rem;line-height:1.65}.vgjz93-start ul{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--jz-border)}.vgjz93-start li{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--jz-border)}.vgjz93-start li strong{font-size:.94rem}.vgjz93-start li span{color:var(--jz-text);font-size:.82rem;line-height:1.5}.vgjz93-start__quote{display:flex;flex-direction:column;justify-content:flex-end;padding:36px;background:var(--jz-teal);border-radius:22px;color:#fff}.vgjz93-start__quote>span{margin-bottom:auto;color:rgba(255,255,255,.55);font-size:.7rem;font-weight:900;letter-spacing:.14em}.vgjz93-start__quote strong{display:block;color:#fff;font-size:2.1rem;line-height:1.03}.vgjz93-start__quote p{margin:15px 0 0;color:rgba(255,255,255,.72);font-size:.86rem;line-height:1.6}
.vgjz93-why{padding:70px 0}.vgjz93-whygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.vgjz93-whygrid article{padding:28px;background:#fff;border:1px solid var(--jz-border);border-radius:16px}.vgjz93-whygrid article>span{display:grid;width:34px;height:34px;place-items:center;margin-bottom:28px;border-radius:50%;background:#eef1ed;color:var(--jz-green);font-size:.68rem;font-weight:900}.vgjz93-whygrid h3{margin:0 0 9px;font-size:1.05rem}.vgjz93-whygrid p{margin:0;color:var(--jz-text);font-size:.82rem;line-height:1.55}
.vgjz93-finalcta{padding:62px 0;background:var(--jz-teal)}.vgjz93-finalcta__inner{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center}.vgjz93-finalcta h2{max-width:720px;margin:0 0 10px;color:#fff;font-size:clamp(2.2rem,3.5vw,3.65rem);line-height:.98;letter-spacing:-.04em}.vgjz93-finalcta p{max-width:680px;margin:0;color:rgba(255,255,255,.72);font-size:.9rem}.vgjz93-finalcta__actions{display:grid;gap:12px;text-align:center}.vgjz93-finalcta__link{color:#fff;font-size:.78rem;font-weight:800}
.vgjz93-faq{padding:76px 0 92px}.vgjz93-faq__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.vgjz93-faq h2{margin:0 0 12px;font-size:clamp(2rem,3vw,3rem);line-height:1;letter-spacing:-.035em}.vgjz93-faq__grid>div:first-child p{max-width:360px;margin:0;color:var(--jz-text);font-size:.88rem;line-height:1.6}.vgjz93-faq__items{border-top:1px solid var(--jz-border)}.vgjz93-faq details{border-bottom:1px solid var(--jz-border)}.vgjz93-faq summary{position:relative;padding:21px 40px 21px 0;cursor:pointer;list-style:none;font-family:var(--vg-font-heading);font-size:.92rem;font-weight:800}.vgjz93-faq summary::-webkit-details-marker{display:none}.vgjz93-faq summary::after{content:'+';position:absolute;right:3px;top:50%;transform:translateY(-50%);font-size:1.12rem;font-weight:500}.vgjz93-faq details[open] summary::after{content:'−'}.vgjz93-faq details p{margin:-4px 0 20px;color:var(--jz-text);font-size:.86rem;line-height:1.6}
@media(max-width:900px){.vgjz93-shell{width:min(calc(100% - 40px),1200px)}.vgjz93-hero{padding:36px 0 40px}.vgjz93-hero__grid,.vgjz93-start__grid,.vgjz93-faq__grid{grid-template-columns:1fr}.vgjz93-hero__copy{padding:44px 38px}.vgjz93-hero__visual{min-height:360px}.vgjz93-heading{grid-template-columns:1fr;gap:10px}.vgjz93-choices{grid-template-columns:1fr 1fr}.vgjz93-results{grid-template-columns:1fr 1fr}.vgjz93-start{padding:56px 0}.vgjz93-whygrid{grid-template-columns:1fr}.vgjz93-finalcta__inner{grid-template-columns:1fr}.vgjz93-finalcta__actions{justify-self:start;text-align:left}.vgjz93-faq__grid{gap:30px}}
@media(max-width:640px){.vgjz93-shell{width:calc(100% - 28px)}.vgjz93-hero{padding:20px 0 28px}.vgjz93-hero__copy{padding:32px 23px;border-radius:20px}.vgjz93-hero h1{font-size:clamp(2.8rem,13vw,4rem)}.vgjz93-hero__copy>p{font-size:.92rem}.vgjz93-hero__actions{align-items:flex-start;flex-direction:column;gap:13px}.vgjz93-btn--large{width:100%}.vgjz93-proofline{gap:9px;font-size:.7rem}.vgjz93-hero__visual{min-height:310px;padding:24px;border-radius:20px}.vgjz93-hero__visual-copy strong{font-size:1.5rem}.vgjz93-selector{padding:38px 0 48px}.vgjz93-heading h2{font-size:2.05rem}.vgjz93-choices{grid-template-columns:1fr}.vgjz93-choice{min-height:88px}.vgjz93-resultbar{grid-template-columns:1fr;gap:8px;padding:18px}.vgjz93-results{grid-template-columns:1fr}.vgjz93-card__body{min-height:235px}.vgjz93-start__copy{padding:32px 23px}.vgjz93-start h2{font-size:2.25rem}.vgjz93-start li{grid-template-columns:1fr;gap:5px}.vgjz93-start__quote{min-height:300px;padding:28px}.vgjz93-start__quote strong{font-size:1.8rem}.vgjz93-why,.vgjz93-faq{padding:52px 0}.vgjz93-finalcta{padding:48px 0}.vgjz93-finalcta h2{font-size:2.35rem}}

/* =========================================================
   V94 — JAK ZAČÍT / ORIGINAL CONVERSION JOURNEY
   ========================================================= */
.vgjz94{--jz94-teal:var(--vg-teal);--jz94-green:var(--vg-green);--jz94-bg:var(--vg-bg);--jz94-ink:var(--vg-ink);--jz94-text:var(--vg-text);--jz94-border:var(--vg-border);background:var(--jz94-bg);color:var(--jz94-ink);font-family:var(--vg-font-body);overflow:hidden}.vgjz94 *{box-sizing:border-box}.vgjz94 a{text-decoration:none}.vgjz94 h1,.vgjz94 h2,.vgjz94 h3,.vgjz94 strong,.vgjz94 .vgjz94-btn{font-family:var(--vg-font-heading)}.vgjz94-shell{width:min(calc(100% - 64px),1200px);margin-inline:auto}.vgjz94-kicker{display:inline-block;margin:0 0 13px;color:var(--jz94-green);font-size:.68rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.vgjz94-kicker--light{color:rgba(255,255,255,.68)}
.vgjz94-btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 18px;border:0;border-radius:999px;background:var(--jz94-teal);color:#fff!important;font-size:.8rem;font-weight:800;line-height:1;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.vgjz94-btn:hover{transform:translateY(-1px);background:var(--vg-teal-dark);box-shadow:0 8px 22px rgba(47,78,80,.15)}.vgjz94-btn--light{background:#fff;color:var(--jz94-teal)!important}.vgjz94-btn--light:hover{background:#f7f7f4}
.vgjz94-hero{padding:42px 0 36px}.vgjz94-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:18px;align-items:stretch}.vgjz94-hero__copy{position:relative;display:flex;min-height:570px;flex-direction:column;justify-content:center;padding:58px 62px;background:#fff;border:1px solid var(--jz94-border);border-radius:28px;box-shadow:0 18px 48px rgba(28,29,31,.05)}.vgjz94-hero h1{max-width:720px;margin:0 0 22px;font-size:clamp(3.2rem,5vw,5.15rem);font-weight:700;line-height:.91;letter-spacing:-.055em}.vgjz94-hero h1 em{display:block;color:var(--jz94-teal);font-style:normal}.vgjz94-lead{max-width:690px;margin:0;color:var(--jz94-text);font-size:1.02rem;line-height:1.72}.vgjz94-hero__trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.vgjz94-hero__trust span{display:inline-flex;min-height:34px;align-items:center;padding:0 13px;border:1px solid var(--jz94-border);border-radius:999px;background:#fafaf8;color:var(--jz94-text);font-size:.72rem;font-weight:700}.vgjz94-hero__trust b{margin-right:4px;color:var(--jz94-ink);font-size:.92rem}
.vgjz94-picker{display:flex;min-height:570px;flex-direction:column;padding:32px;background:var(--jz94-teal);border-radius:28px;color:#fff;box-shadow:0 18px 48px rgba(47,78,80,.13)}.vgjz94-picker__head>span{display:block;margin-bottom:8px;color:rgba(255,255,255,.58);font-size:.64rem;font-weight:900;letter-spacing:.16em}.vgjz94-picker__head h2{margin:0 0 7px;color:#fff;font-size:2.15rem;line-height:.98;letter-spacing:-.035em}.vgjz94-picker__head p{margin:0;color:rgba(255,255,255,.67);font-size:.82rem}.vgjz94-picker__options{display:grid;gap:7px;margin-top:24px}.vgjz94-pick{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:center;width:100%;min-height:70px;padding:10px 13px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.055);color:#fff;text-align:center;cursor:pointer;transition:.18s ease}.vgjz94-pick:hover{background:rgba(255,255,255,.095)}.vgjz94-pick.is-active{background:#fff;border-color:#fff;color:var(--jz94-ink);box-shadow:0 10px 24px rgba(0,0,0,.12)}.vgjz94-pick i{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:rgba(255,255,255,.11);font-style:normal;font-size:.6rem;font-weight:900}.vgjz94-pick.is-active i{background:#eef2ef;color:var(--jz94-green)}.vgjz94-pick strong{display:block;margin-bottom:2px;font-size:.89rem}.vgjz94-pick small{display:block;color:rgba(255,255,255,.62);font-size:.69rem;line-height:1.35}.vgjz94-pick.is-active small{color:var(--jz94-text)}.vgjz94-picker__all{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);color:#fff;font-size:.78rem;font-weight:800}.vgjz94-picker__all span{font-size:1.1rem}
.vgjz94-recommend{padding:46px 0 64px}.vgjz94-recommend__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr);gap:40px;align-items:end;margin-bottom:19px}.vgjz94-recommend h2{max-width:760px;margin:0;font-size:clamp(2.2rem,3.4vw,3.65rem);line-height:.96;letter-spacing:-.045em}.vgjz94-recommend__top>p{margin:0;color:var(--jz94-text);font-size:.88rem;line-height:1.6}.vgjz94-subfilters{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:15px;padding:12px 14px;border:1px solid var(--jz94-border);border-radius:15px;background:#fff}.vgjz94-subfilters>span{margin-right:4px;color:var(--jz94-text);font-size:.7rem;font-weight:800}.vgjz94-subfilters button{min-height:34px;padding:0 12px;border:1px solid var(--jz94-border);border-radius:999px;background:#fff;color:var(--jz94-ink);font-family:var(--vg-font-body);font-size:.7rem;font-weight:800;cursor:pointer}.vgjz94-subfilters button:hover,.vgjz94-subfilters button.is-active{background:var(--jz94-teal);border-color:var(--jz94-teal);color:#fff}.vgjz94-products{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;transition:.18s ease}.vgjz94-products.is-updated{opacity:.45;transform:translateY(3px)}.vgjz94-product[hidden]{display:none!important}.vgjz94-product{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--jz94-border);border-radius:20px;box-shadow:0 12px 30px rgba(28,29,31,.045)}.vgjz94-product::before{content:"";position:absolute;z-index:2;left:16px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--card-accent,var(--jz94-green));box-shadow:0 0 0 5px rgba(255,255,255,.88)}.vgjz94-product__media{display:grid;aspect-ratio:1.12/1;place-items:center;overflow:hidden;background:#f2eee6}.vgjz94-product__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.vgjz94-product:hover .vgjz94-product__media img{transform:scale(1.018)}.vgjz94-product__body{display:flex;min-height:248px;flex:1;flex-direction:column;align-items:center;padding:19px 20px 18px;text-align:center}.vgjz94-product__eyebrow{margin-bottom:8px;color:var(--card-accent,var(--jz94-green));font-size:.58rem;font-weight:900;letter-spacing:.1em}.vgjz94-product h3{margin:0 0 7px;font-size:1.12rem;line-height:1.05}.vgjz94-product h3 a{color:inherit}.vgjz94-product p{max-width:300px;margin:0;color:var(--jz94-text);font-size:.78rem;line-height:1.47}.vgjz94-product__foot{width:100%;margin-top:auto;padding-top:14px}.vgjz94-product__price{margin-bottom:11px;font-family:var(--vg-font-heading);font-size:.98rem;font-weight:800}.vgjz94-product__price del{margin-right:5px;color:var(--vg-muted);font-size:.82em}.vgjz94-product__actions{display:grid;grid-template-columns:.8fr 1.2fr;gap:7px}.vgjz94-linkbtn{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border:1px solid var(--jz94-border);border-radius:999px;background:#fff;color:var(--jz94-ink);font-size:.73rem;font-weight:800}.vgjz94-product__actions .vgjz94-btn{min-height:42px;padding:0 10px;font-size:.73rem}.vgjz94-recommend__foot{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:19px;color:var(--jz94-text);font-size:.78rem}.vgjz94-recommend__foot a{color:var(--jz94-teal);font-weight:800}
.vgjz94-explain{padding:72px 0;background:#eeece6}.vgjz94-explain__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center}.vgjz94-explain__visual{position:relative;display:grid;min-height:470px;place-items:center;overflow:hidden;border-radius:30px;background:#e5e2da}.vgjz94-orbit{position:absolute;border:1px solid rgba(47,78,80,.14);border-radius:50%}.vgjz94-orbit--one{width:390px;height:390px}.vgjz94-orbit--two{width:280px;height:280px}.vgjz94-explain__photo{position:relative;z-index:2;width:82%;height:250px;overflow:hidden;border-radius:16px;box-shadow:0 22px 36px rgba(35,43,39,.12);background:#f7ead8}.vgjz94-explain__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 64%}.vgjz94-note{position:absolute;z-index:3;padding:8px 12px;border-radius:999px;background:#fff;box-shadow:0 8px 22px rgba(28,29,31,.07);color:var(--jz94-teal);font-size:.68rem;font-weight:800}.vgjz94-note--a{left:24px;top:52px}.vgjz94-note--b{right:20px;top:132px}.vgjz94-note--c{left:45px;bottom:52px}.vgjz94-explain__copy{padding-right:26px}.vgjz94-explain h2{max-width:720px;margin:0 0 18px;font-size:clamp(2.5rem,4vw,4.2rem);line-height:.95;letter-spacing:-.047em}.vgjz94-explain__copy>p{max-width:690px;margin:0;color:var(--jz94-text);font-size:.96rem;line-height:1.7}.vgjz94-facts{display:grid;gap:0;margin-top:27px;border-top:1px solid rgba(28,29,31,.11)}.vgjz94-facts>div{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid rgba(28,29,31,.11)}.vgjz94-facts>div>strong{color:var(--jz94-green);font-size:.7rem}.vgjz94-facts span{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.vgjz94-facts b{font-size:.88rem}.vgjz94-facts small{color:var(--jz94-text);font-size:.74rem}
.vgjz94-paths{padding:72px 0}.vgjz94-paths__head{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.vgjz94-paths h2{margin:0;font-size:clamp(2.4rem,3.7vw,3.8rem);line-height:.96;letter-spacing:-.045em}.vgjz94-pathgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.vgjz94-pathgrid a{display:flex;min-height:265px;flex-direction:column;padding:24px;border:1px solid var(--jz94-border);border-radius:19px;background:#fff;color:var(--jz94-ink);transition:.2s ease}.vgjz94-pathgrid a:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(28,29,31,.055)}.vgjz94-pathgrid span{display:grid;width:34px;height:34px;place-items:center;margin-bottom:auto;border-radius:50%;background:#eef1ed;color:var(--jz94-green);font-size:.64rem;font-weight:900}.vgjz94-pathgrid strong{display:block;margin-top:36px;font-size:1.18rem}.vgjz94-pathgrid small{display:block;min-height:62px;margin-top:7px;color:var(--jz94-text);font-size:.75rem;line-height:1.48}.vgjz94-pathgrid b{margin-top:15px;color:var(--jz94-teal);font-size:.74rem}
.vgjz94-close{padding:58px 0;background:var(--jz94-teal);color:#fff}.vgjz94-close__inner{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}.vgjz94-close h2{max-width:800px;margin:0 0 13px;color:#fff;font-size:clamp(2.4rem,3.8vw,4rem);line-height:.95;letter-spacing:-.046em}.vgjz94-close p{max-width:720px;margin:0;color:rgba(255,255,255,.7);font-size:.9rem;line-height:1.6}.vgjz94-close__actions{display:grid;gap:11px;text-align:center}.vgjz94-close__actions>a:last-child{color:#fff;font-size:.76rem;font-weight:800}
.vgjz94-faq{padding:68px 0 84px}.vgjz94-faq__grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:68px}.vgjz94-faq h2{margin:0 0 10px;font-size:clamp(2.1rem,3.1vw,3.25rem);line-height:.98;letter-spacing:-.04em}.vgjz94-faq__intro p{max-width:330px;margin:0;color:var(--jz94-text);font-size:.85rem;line-height:1.6}.vgjz94-faq__items{border-top:1px solid var(--jz94-border)}.vgjz94-faq details{border-bottom:1px solid var(--jz94-border)}.vgjz94-faq summary{position:relative;padding:20px 40px 20px 0;cursor:pointer;list-style:none;font-family:var(--vg-font-heading);font-size:.9rem;font-weight:800}.vgjz94-faq summary::-webkit-details-marker{display:none}.vgjz94-faq summary::after{content:'+';position:absolute;right:3px;top:50%;transform:translateY(-50%);font-size:1.1rem;font-weight:500}.vgjz94-faq details[open] summary::after{content:'−'}.vgjz94-faq details p{margin:-4px 0 19px;color:var(--jz94-text);font-size:.84rem;line-height:1.6}
@media(max-width:960px){.vgjz94-shell{width:min(calc(100% - 40px),1200px)}.vgjz94-hero__grid,.vgjz94-explain__grid,.vgjz94-faq__grid{grid-template-columns:1fr}.vgjz94-hero__copy,.vgjz94-picker{min-height:auto}.vgjz94-picker__all{margin-top:22px}.vgjz94-recommend__top{grid-template-columns:1fr;gap:10px}.vgjz94-products{grid-template-columns:1fr 1fr}.vgjz94-explain__copy{padding-right:0}.vgjz94-pathgrid{grid-template-columns:1fr 1fr}.vgjz94-close__inner{grid-template-columns:1fr}.vgjz94-close__actions{justify-self:start;text-align:left}}
@media(max-width:640px){.vgjz94-shell{width:calc(100% - 28px)}.vgjz94-hero{padding:20px 0 26px}.vgjz94-hero__copy{padding:32px 24px;border-radius:21px}.vgjz94-hero h1{font-size:clamp(2.65rem,12.5vw,3.85rem)}.vgjz94-lead{font-size:.91rem}.vgjz94-picker{padding:24px;border-radius:21px}.vgjz94-picker__head h2{font-size:1.8rem}.vgjz94-pick{min-height:64px}.vgjz94-recommend{padding:35px 0 48px}.vgjz94-recommend h2{font-size:2.25rem}.vgjz94-products{grid-template-columns:1fr}.vgjz94-recommend__foot{align-items:flex-start;flex-direction:column}.vgjz94-explain{padding:48px 0}.vgjz94-explain__visual{min-height:350px;border-radius:22px}.vgjz94-explain__photo{width:86%;height:220px;border-radius:14px}.vgjz94-orbit--one{width:300px;height:300px}.vgjz94-orbit--two{width:210px;height:210px}.vgjz94-note{font-size:.61rem}.vgjz94-note--a{left:12px;top:24px}.vgjz94-note--b{right:10px;top:88px}.vgjz94-note--c{left:18px;bottom:30px}.vgjz94-explain h2{font-size:2.45rem}.vgjz94-facts span{display:block}.vgjz94-facts small{display:block;margin-top:3px}.vgjz94-paths{padding:50px 0}.vgjz94-pathgrid{grid-template-columns:1fr}.vgjz94-pathgrid a{min-height:205px}.vgjz94-close{padding:46px 0}.vgjz94-close h2{font-size:2.5rem}.vgjz94-faq{padding:52px 0 64px}.vgjz94-faq__grid{gap:26px}}


/* =========================================================
   v97 — JAK ZAČÍT / PRODUKTOVÉ KARTY = KATEGORIE 1:1
   ========================================================= */
.vgjz94-products > .vg-category-card[hidden] { display:none !important; }
.vgjz94-products > .vg-category-card { min-width:0; }
.vgjz94-products > .vg-category-card .vg-category-card__media { min-height:0; }
.vgjz94-products > .vg-category-card .vg-category-card__media img { width:100%; max-width:none; height:100%; }
.vgjz94-products > .vg-category-card--bundle .vg-category-card__media img { object-fit:cover; }
@media (max-width:960px){
  .vgjz94-products > .vg-category-card .vg-category-card__media{aspect-ratio:1/1;}
}

/* =========================================================
   V99 — Jak začít: jediný konverzní blok
   ========================================================= */
.vgjz99{background:var(--vg-bg);color:var(--vg-ink);font-family:var(--vg-font-body)}
.vgjz99 *{box-sizing:border-box}.vgjz99 a{text-decoration:none}
.vgjz99-shell{width:min(calc(100% - 48px),1280px);margin-inline:auto}
.vgjz99-wrap{padding:34px 0 58px}
.vgjz99-panel{padding:46px 42px 34px;border:1px solid var(--vg-border);border-radius:28px;background:var(--vg-surface);box-shadow:0 18px 48px rgba(28,29,31,.045)}
.vgjz99-intro{text-align:center;max-width:880px;margin:0 auto 26px}
.vgjz99-kicker{display:inline-block;margin:0 0 12px;color:var(--vg-green);font-size:.68rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.vgjz99-intro h1,.vgjz99-resulthead h2{font-family:var(--vg-font-heading)}
.vgjz99-intro h1{margin:0;font-size:clamp(3.2rem,5.7vw,5.45rem);line-height:.9;letter-spacing:-.055em}
.vgjz99-intro h1 em{display:block;color:var(--vg-teal);font-style:normal}
.vgjz99-intro p{max-width:760px;margin:22px auto 0;color:var(--vg-text);font-size:1rem;line-height:1.7}
.vgjz99-primary{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:980px;margin:0 auto 34px}
.vgjz99-primary button,.vgjz99-subfilters button{min-height:40px;padding:0 16px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-body);font-size:.76rem;font-weight:800;cursor:pointer;transition:.18s ease}
.vgjz99-primary button:hover,.vgjz99-primary button.is-active,.vgjz99-subfilters button:hover,.vgjz99-subfilters button.is-active{background:var(--vg-teal);border-color:var(--vg-teal);color:#fff}
.vgjz99-resulthead{text-align:center;max-width:920px;margin:0 auto 18px;padding-top:28px;border-top:1px solid var(--vg-border)}
.vgjz99-resulthead h2{margin:0;font-size:clamp(2.2rem,3.6vw,3.7rem);line-height:.96;letter-spacing:-.045em}
.vgjz99-resulthead p{max-width:690px;margin:12px auto 0;color:var(--vg-text);font-size:.9rem;line-height:1.6}
.vgjz99-subfilters{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;margin:0 auto 18px;padding:11px 12px;border:1px solid var(--vg-border);border-radius:16px;background:#fbfbf9}
.vgjz99-subfilters>span{margin-right:4px;color:var(--vg-text);font-size:.7rem;font-weight:800}
.vgjz99-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;transition:.18s ease}
.vgjz99-products.is-updated{opacity:.5;transform:translateY(2px)}
.vgjz99-products>.vg-category-card[hidden]{display:none!important}
.vgjz99-products>.vg-category-card{min-width:0}
.vgjz99-products>.vg-category-card .vg-category-card__media{min-height:0;aspect-ratio:1/1}
.vgjz99-products>.vg-category-card .vg-category-card__media img{width:100%;max-width:none;height:100%;object-fit:cover}
.vgjz99-products>.vg-category-card--bundle .vg-category-card__media img{object-fit:cover}
.vgjz99-foot{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:20px;color:var(--vg-text);font-size:.78rem}
.vgjz99-foot a{color:var(--vg-teal);font-weight:800}
@media(max-width:900px){.vgjz99-shell{width:min(calc(100% - 32px),1280px)}.vgjz99-panel{padding:36px 24px 28px}.vgjz99-products{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.vgjz99-wrap{padding:18px 0 34px}.vgjz99-shell{width:calc(100% - 20px)}.vgjz99-panel{padding:28px 14px 20px;border-radius:22px}.vgjz99-intro{margin-bottom:20px}.vgjz99-intro h1{font-size:clamp(2.7rem,13vw,4rem)}.vgjz99-intro p{font-size:.9rem}.vgjz99-primary{gap:6px;margin-bottom:26px}.vgjz99-primary button,.vgjz99-subfilters button{min-height:38px;padding:0 12px;font-size:.7rem}.vgjz99-resulthead{padding-top:22px}.vgjz99-resulthead h2{font-size:2.25rem}.vgjz99-products{grid-template-columns:1fr}.vgjz99-foot{align-items:flex-start;flex-direction:column}.vgjz99-subfilters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:10px}.vgjz99-subfilters>*{flex:0 0 auto}}

/* v100 — one compact unified selector on Jak začít */
.vgjz100-filter{position:relative;max-width:760px;margin:0 auto 30px;z-index:8}
.vgjz100-filter__trigger{width:100%;min-height:68px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:12px 18px 12px 20px;border:1px solid var(--vg-border);border-radius:18px;background:#fbfbf9;color:var(--vg-ink);font-family:var(--vg-font-body);text-align:left;cursor:pointer;box-shadow:0 10px 30px rgba(28,29,31,.035);transition:.18s ease}
.vgjz100-filter__trigger:hover,.vgjz100-filter.is-open .vgjz100-filter__trigger{border-color:#c9d0cc;background:#fff}
.vgjz100-filter__label{color:var(--vg-muted);font-size:.72rem;font-weight:800;letter-spacing:.02em}
.vgjz100-filter__trigger strong{font-family:var(--vg-font-heading);font-size:1rem;font-weight:700;text-align:right}
.vgjz100-filter__chevron{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--vg-teal);color:#fff;font-size:1.25rem;line-height:1;transition:transform .18s ease}
.vgjz100-filter.is-open .vgjz100-filter__chevron{transform:rotate(180deg)}
.vgjz100-filter__menu{position:absolute;left:0;right:0;top:calc(100% + 8px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px;border:1px solid var(--vg-border);border-radius:18px;background:#fff;box-shadow:0 22px 58px rgba(28,29,31,.14)}
.vgjz100-filter__menu[hidden]{display:none!important}
.vgjz100-filter__menu button{min-height:44px;padding:8px 12px;border:1px solid var(--vg-border);border-radius:12px;background:#fbfbf9;color:var(--vg-ink);font-family:var(--vg-font-body);font-size:.74rem;font-weight:800;text-align:left;cursor:pointer;transition:.16s ease}
.vgjz100-filter__menu button:hover,.vgjz100-filter__menu button.is-active{background:var(--vg-teal);border-color:var(--vg-teal);color:#fff}
.vgjz99-resulthead{padding-top:22px}
@media(max-width:700px){
  .vgjz100-filter{margin-bottom:24px}
  .vgjz100-filter__trigger{min-height:62px;grid-template-columns:1fr auto;gap:8px;padding:10px 12px 10px 14px}
  .vgjz100-filter__label{grid-column:1/2;font-size:.64rem}
  .vgjz100-filter__trigger strong{grid-column:1/2;text-align:left;font-size:.92rem}
  .vgjz100-filter__chevron{grid-column:2/3;grid-row:1/3;width:34px;height:34px}
  .vgjz100-filter__menu{position:static;margin-top:7px;grid-template-columns:1fr 1fr;box-shadow:none}
  .vgjz100-filter__menu button{font-size:.7rem}
}
@media(max-width:430px){.vgjz100-filter__menu{grid-template-columns:1fr}}


/* v101 — Jak začít: praktický hybridní filtr */
.vgjz101-filter{max-width:1040px;margin:0 auto 28px}
.vgjz101-filter__desktop{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.vgjz101-filter__desktop button{min-height:40px;padding:0 15px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-body);font-size:.74rem;font-weight:800;line-height:1;white-space:nowrap;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.vgjz101-filter__desktop button:hover{border-color:#c8ceca;transform:translateY(-1px)}
.vgjz101-filter__desktop button.is-active{background:var(--vg-teal);border-color:var(--vg-teal);color:#fff;box-shadow:0 8px 22px rgba(49,72,75,.12)}
.vgjz101-filter__mobile{display:none}
@media(max-width:700px){
  .vgjz101-filter{margin-bottom:22px}
  .vgjz101-filter__desktop{display:none}
  .vgjz101-filter__mobile{display:block;position:relative;text-align:left}
  .vgjz101-filter__mobile span{display:block;margin:0 0 7px 3px;color:var(--vg-muted);font-size:.68rem;font-weight:800;letter-spacing:.02em}
  .vgjz101-filter__mobile select{width:100%;min-height:54px;appearance:none;-webkit-appearance:none;padding:0 48px 0 16px;border:1px solid var(--vg-border);border-radius:15px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:.96rem;font-weight:700;box-shadow:0 8px 24px rgba(28,29,31,.035);cursor:pointer}
  .vgjz101-filter__mobile:after{content:'⌄';position:absolute;right:16px;bottom:11px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--vg-teal);color:#fff;font-size:1rem;pointer-events:none}
}

/* v102 — Jak začít: segmented selector + mobile bottom sheet */
.vgjz102-filter{max-width:1080px;margin:0 auto 24px;position:relative;z-index:12}
.vgjz102-filter__label{display:block;margin:0 0 8px 3px;color:var(--vg-muted);font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.vgjz102-filter__desktop{display:block}
.vgjz102-segment{display:grid;grid-template-columns:.86fr .72fr .78fr .86fr 1.28fr .72fr;align-items:stretch;padding:5px;border:1px solid var(--vg-border);border-radius:17px;background:#f4f4f1;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.vgjz102-segment button{min-width:0;min-height:46px;padding:0 13px;border:0;border-radius:12px;background:transparent;color:var(--vg-text);font-family:var(--vg-font-body);font-size:.74rem;font-weight:800;white-space:nowrap;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.vgjz102-segment button+button{position:relative}
.vgjz102-segment button+button:before{content:'';position:absolute;left:-3px;top:12px;bottom:12px;width:1px;background:rgba(28,29,31,.07)}
.vgjz102-segment button:hover{color:var(--vg-ink);background:rgba(255,255,255,.62)}
.vgjz102-segment button.is-active{background:#fff;color:var(--vg-teal);box-shadow:0 4px 14px rgba(28,29,31,.075)}
.vgjz102-segment button.is-active:before,.vgjz102-segment button:hover:before,.vgjz102-segment button.is-open:before{opacity:0}
.vgjz102-more span{display:inline-block;margin-left:3px;font-size:1rem;font-weight:500;transition:transform .16s ease}
.vgjz102-more.is-open span{transform:rotate(45deg)}
.vgjz102-more.is-active{background:var(--vg-teal)!important;color:#fff!important;box-shadow:0 5px 16px rgba(49,72,75,.16)!important}
.vgjz102-morepanel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:7px;padding:8px;border:1px solid var(--vg-border);border-radius:15px;background:#fff;box-shadow:0 16px 42px rgba(28,29,31,.085)}
.vgjz102-morepanel[hidden]{display:none!important}
.vgjz102-morepanel button{min-height:42px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:var(--vg-text);font-family:var(--vg-font-body);font-size:.71rem;font-weight:800;text-align:left;cursor:pointer;transition:.15s ease}
.vgjz102-morepanel button:hover{background:#f3f5f2;color:var(--vg-ink)}
.vgjz102-morepanel button.is-active{background:var(--vg-teal);color:#fff}
.vgjz102-filter__mobile,.vgjz102-overlay,.vgjz102-sheet{display:none}

/* Keep recommendation visually connected to the selector. */
.vgjz102-filter + .vgjz99-resulthead{margin-top:0;padding-top:22px}

@media(max-width:900px){
  .vgjz102-segment{grid-template-columns:.8fr .7fr .75fr .82fr 1.2fr .72fr}
  .vgjz102-segment button{padding:0 9px;font-size:.68rem}
}

@media(max-width:700px){
  .vgjz102-filter{margin-bottom:18px}
  .vgjz102-filter__desktop{display:none}
  .vgjz102-filter__mobile{display:block}
  .vgjz102-mobiletrigger{display:flex;width:100%;min-height:56px;align-items:center;justify-content:space-between;gap:16px;padding:0 10px 0 16px;border:1px solid var(--vg-border);border-radius:15px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:.96rem;font-weight:700;text-align:left;box-shadow:0 8px 24px rgba(28,29,31,.035);cursor:pointer}
  .vgjz102-mobiletrigger__icon{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--vg-teal);color:#fff;font-family:var(--vg-font-body);font-size:1rem;transition:transform .18s ease}
  .vgjz102-mobiletrigger[aria-expanded="true"] .vgjz102-mobiletrigger__icon{transform:rotate(180deg)}
  .vgjz102-overlay{display:block;position:fixed;inset:0;z-index:99991;background:rgba(22,28,28,.38);opacity:0;backdrop-filter:blur(3px);transition:opacity .22s ease}
  .vgjz102-overlay[hidden]{display:none!important}
  .vgjz102-overlay.is-open{opacity:1}
  .vgjz102-sheet{display:block;position:fixed;left:0;right:0;bottom:0;z-index:99992;max-height:min(78vh,680px);padding:8px 14px calc(18px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;background:#fff;box-shadow:0 -20px 70px rgba(24,31,31,.2);transform:translateY(102%);transition:transform .22s cubic-bezier(.22,.8,.26,1);overflow:auto}
  .vgjz102-sheet[hidden]{display:none!important}
  .vgjz102-sheet.is-open{transform:translateY(0)}
  .vgjz102-sheet__handle{width:38px;height:4px;margin:2px auto 12px;border-radius:999px;background:#d7d8d4}
  .vgjz102-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 2px 14px;border-bottom:1px solid var(--vg-border)}
  .vgjz102-sheet__head span{display:block;margin-bottom:4px;color:var(--vg-green);font-size:.61rem;font-weight:900;letter-spacing:.14em}
  .vgjz102-sheet__head strong{font-family:var(--vg-font-heading);font-size:1.26rem}
  .vgjz102-sheet__head>button{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border:1px solid var(--vg-border);border-radius:50%;background:#fff;color:var(--vg-ink);font-size:1.35rem;line-height:1;cursor:pointer}
  .vgjz102-sheet__options{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-top:12px}
  .vgjz102-sheet__options button{min-height:48px;padding:9px 12px;border:1px solid var(--vg-border);border-radius:12px;background:#fbfbf9;color:var(--vg-ink);font-family:var(--vg-font-body);font-size:.72rem;font-weight:800;text-align:left;cursor:pointer}
  .vgjz102-sheet__options button.is-active{border-color:var(--vg-teal);background:var(--vg-teal);color:#fff}
  html.vgjz102-lock,html.vgjz102-lock body{overflow:hidden}
}
@media(max-width:410px){.vgjz102-sheet__options{grid-template-columns:1fr}.vgjz102-sheet{max-height:82vh}}

/* =========================================================
   V104 — Jak začít: smart command palette selector
   ========================================================= */
.vgjz103-filter{max-width:860px;margin:0 auto 26px;position:relative;z-index:30}
.vgjz103-filter__label{display:block;margin:0 0 8px 2px;color:var(--vg-muted);font-size:.64rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;text-align:left}
.vgjz103-trigger{width:100%;min-height:70px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:14px;padding:10px 11px 10px 18px;border:1px solid rgba(28,29,31,.085);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,250,248,.92));color:var(--vg-ink);font-family:var(--vg-font-body);text-align:left;cursor:pointer;box-shadow:0 12px 32px rgba(28,29,31,.05),inset 0 1px 0 #fff;backdrop-filter:blur(14px);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.vgjz103-trigger:hover{border-color:rgba(49,72,75,.20);box-shadow:0 16px 38px rgba(28,29,31,.075);transform:translateY(-1px)}
.vgjz103-trigger__mark{width:9px;height:9px;border-radius:50%;background:var(--vg-teal);box-shadow:0 0 0 5px rgba(49,72,75,.075)}
.vgjz103-trigger__copy{display:flex;min-width:0;flex-direction:column;gap:2px}
.vgjz103-trigger__copy small{color:var(--vg-muted);font-size:.62rem;font-weight:800;letter-spacing:.03em}
.vgjz103-trigger__copy strong{overflow:hidden;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:1.05rem;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.vgjz103-trigger__action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border:1px solid rgba(49,72,75,.08);border-radius:14px;background:var(--vg-teal);color:#fff;font-size:.71rem;font-weight:850;white-space:nowrap;box-shadow:0 7px 16px rgba(49,72,75,.12);transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
.vgjz103-trigger:hover .vgjz103-trigger__action{background:#294245;box-shadow:0 9px 20px rgba(49,72,75,.16)}
.vgjz103-overlay{display:block;position:fixed;inset:0;z-index:99991;background:rgba(20,27,27,.42);opacity:0;backdrop-filter:blur(5px);transition:opacity .22s ease}
.vgjz103-overlay[hidden]{display:none!important}.vgjz103-overlay.is-open{opacity:1}
.vgjz103-palette{position:fixed;left:50%;top:50%;z-index:99992;width:min(720px,calc(100vw - 40px));max-height:min(78vh,760px);padding:18px;border:1px solid rgba(255,255,255,.72);border-radius:28px;background:rgba(250,250,248,.97);box-shadow:0 36px 110px rgba(13,22,22,.28);transform:translate(-50%,-47%) scale(.975);opacity:0;overflow:auto;backdrop-filter:blur(22px);transition:transform .22s cubic-bezier(.22,.8,.26,1),opacity .18s ease}
.vgjz103-palette[hidden]{display:none!important}.vgjz103-palette.is-open{transform:translate(-50%,-50%) scale(1);opacity:1}
.vgjz103-palette__handle{display:none}
.vgjz103-palette__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:4px 4px 16px}
.vgjz103-palette__head span{display:block;margin-bottom:4px;color:var(--vg-green);font-size:.61rem;font-weight:900;letter-spacing:.14em}
.vgjz103-palette__head strong{font-family:var(--vg-font-heading);font-size:1.7rem;line-height:1.05;letter-spacing:-.03em}
.vgjz103-palette__head>button{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border:1px solid var(--vg-border);border-radius:50%;background:#fff;color:var(--vg-ink);font-size:1.35rem;line-height:1;cursor:pointer;transition:.15s ease}
.vgjz103-palette__head>button:hover{background:var(--vg-teal);border-color:var(--vg-teal);color:#fff}
.vgjz103-search{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:10px;margin:0 2px 12px;padding:0 15px;border:1px solid var(--vg-border);border-radius:16px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.vgjz103-search>span{position:relative;width:15px;height:15px;border:1.7px solid #7c8581;border-radius:50%}
.vgjz103-search>span:after{content:'';position:absolute;width:6px;height:1.7px;right:-5px;bottom:-2px;background:#7c8581;transform:rotate(45deg);border-radius:99px}
.vgjz103-search input{width:100%;height:52px;padding:0;border:0;outline:0;background:transparent;color:var(--vg-ink);font:700 .86rem/1 var(--vg-font-body)}
.vgjz103-search input::placeholder{color:#929895;font-weight:600}
.vgjz103-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.vgjz103-options button{position:relative;min-height:70px;padding:12px 42px 12px 14px;border:1px solid rgba(28,29,31,.09);border-radius:15px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-body);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}
.vgjz103-options button:after{content:'→';position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#9aa09d;font-size:1rem;transition:transform .15s ease,color .15s ease}
.vgjz103-options button:hover{border-color:rgba(49,72,75,.24);background:#fcfcfa;transform:translateY(-1px);box-shadow:0 8px 20px rgba(28,29,31,.045)}
.vgjz103-options button:hover:after{color:var(--vg-teal);transform:translate(2px,-50%)}
.vgjz103-options button small{display:block;margin-bottom:4px;color:var(--vg-muted);font-size:.61rem;font-weight:750}
.vgjz103-options button strong{display:block;font-family:var(--vg-font-heading);font-size:.93rem;line-height:1.15}
.vgjz103-options button.is-active{border-color:rgba(49,72,75,.28);background:linear-gradient(180deg,#f0f5f2,#edf2ef);box-shadow:inset 0 0 0 1px rgba(49,72,75,.03)}
.vgjz103-options button.is-active:after{content:'✓';color:var(--vg-teal);font-weight:900}
.vgjz103-options button[hidden]{display:none!important}
html.vgjz103-lock,html.vgjz103-lock body{overflow:hidden}
.vgjz103-filter + .vgjz99-resulthead{margin-top:0;padding-top:20px}

@media(max-width:700px){
  .vgjz103-filter{margin-bottom:18px}
  .vgjz103-filter__label{text-align:center;margin-bottom:7px}
  .vgjz103-trigger{min-height:64px;grid-template-columns:14px 1fr auto;gap:10px;padding:9px 9px 9px 14px;border-radius:18px}
  .vgjz103-trigger__mark{width:8px;height:8px;box-shadow:0 0 0 5px rgba(49,72,75,.08)}
  .vgjz103-trigger__copy small{font-size:.58rem}.vgjz103-trigger__copy strong{font-size:.95rem}
  .vgjz103-trigger__action{min-height:40px;padding:0 12px;border-radius:13px;font-size:.66rem}.vgjz103-trigger__action>span{display:none}
  .vgjz103-palette{left:0;right:0;top:auto;bottom:0;width:100%;max-height:82vh;padding:8px 12px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:26px 26px 0 0;transform:translateY(102%);opacity:1}
  .vgjz103-palette.is-open{transform:translateY(0)}
  .vgjz103-palette__handle{display:block;width:38px;height:4px;margin:2px auto 11px;border-radius:99px;background:#d7d9d5}
  .vgjz103-palette__head{padding:3px 2px 12px}.vgjz103-palette__head strong{font-size:1.35rem}.vgjz103-palette__head>button{width:38px;height:38px;flex-basis:38px}
  .vgjz103-search{margin-bottom:9px}.vgjz103-search input{height:48px;font-size:.8rem}
  .vgjz103-options{grid-template-columns:1fr 1fr;gap:7px}
  .vgjz103-options button{min-height:64px;padding:10px 34px 10px 11px;border-radius:14px}.vgjz103-options button small{font-size:.56rem}.vgjz103-options button strong{font-size:.82rem}.vgjz103-options button:after{right:11px}
}
@media(max-width:410px){.vgjz103-options{grid-template-columns:1fr}.vgjz103-palette{max-height:86vh}}

/* V105 — Obchod jako rychlý katalog: intro → filtr → produkty */
.vg-shop-page--v105{background:var(--vg-bg)}
.vg-shop-v105-intro{padding:52px 0 24px}
.vg-shop-v105-intro__row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:8px}
.vg-shop-v105-intro h1{max-width:820px;margin:0;font-size:clamp(2.4rem,4.2vw,4.5rem);line-height:.98;letter-spacing:-.045em}
.vg-shop-v105-intro p{max-width:760px;margin:18px 0 0;color:var(--vg-text);font-size:1rem;line-height:1.65}
.vg-shop-v105-intro p a{color:var(--vg-teal);font-weight:800;text-underline-offset:3px}
.vg-shop-v105-intro__count{flex:0 0 auto;margin-bottom:5px;color:var(--vg-muted);font-size:.88rem;white-space:nowrap}
.vg-shop-v105-intro__count b{color:var(--vg-ink)}
.vg-shop-v105-catalog{padding:10px 0 66px}
.vg-shop-page--v105 .vg-shop-filter{margin:0 0 24px;padding:22px 24px;border:1px solid var(--vg-border);border-radius:22px;background:rgba(255,255,255,.78);box-shadow:0 12px 34px rgba(28,29,31,.045)}
.vg-shop-page--v105 .vg-shop-filter__head{margin-bottom:16px}
.vg-shop-page--v105 .vg-shop-filter__head strong{font-size:1.25rem}
.vg-shop-page--v105 .vg-shop-filter__buttons{gap:7px}
.vg-shop-page--v105 .vg-shop-filter__buttons button{min-height:38px;padding:0 13px;border-color:#e5e4df;background:#fff;font-size:.78rem;box-shadow:none}
.vg-shop-page--v105 .vg-shop-filter__buttons button:hover{transform:none;border-color:#bbc7c1;box-shadow:none}
.vg-shop-page--v105 .vg-shop-filter__buttons button.is-active{background:var(--vg-teal);border-color:var(--vg-teal);box-shadow:none}
.vg-shop-page--v105 .vg-shop-product-grid{margin-top:0}
.vg-shop-bottom--v105{padding-top:10px}
@media (max-width:900px){
  .vg-shop-v105-intro{padding:38px 0 20px}
  .vg-shop-v105-intro__row{display:block}
  .vg-shop-v105-intro__count{display:none}
}
@media (max-width:760px){
  .vg-shop-v105-intro{padding:30px 0 16px}
  .vg-shop-v105-intro h1{font-size:2.35rem;line-height:1}
  .vg-shop-v105-intro p{margin-top:14px;font-size:.94rem;line-height:1.55}
  .vg-shop-v105-catalog{padding-top:4px}
  .vg-shop-page--v105 .vg-shop-filter{padding:14px;border-radius:18px;margin-bottom:18px}
  .vg-shop-page--v105 .vg-shop-filter__head{margin-bottom:10px}
}


/* =========================================================
   V107 — Obchod: moderní vyskakovací katalogový filtr
   Jak začít = poradce. Obchod = popup filtr celého katalogu.
   ========================================================= */
.vg-shop-page--v105 .vg-shop-filter{display:none!important}
.vg-shop-catalog-filter{position:relative;margin:0 0 24px}
.vg-shop-catalog-filter__trigger{width:100%;min-height:76px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 18px;border:1px solid rgba(28,29,31,.085);border-radius:22px;background:linear-gradient(180deg,#fff,#fbfbf8);color:var(--vg-ink);text-align:left;cursor:pointer;box-shadow:0 12px 34px rgba(28,29,31,.045),inset 0 1px 0 #fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.vg-shop-catalog-filter__trigger:hover{border-color:rgba(49,72,75,.22);box-shadow:0 16px 42px rgba(28,29,31,.07);transform:translateY(-1px)}
.vg-shop-catalog-filter__icon{display:grid;width:38px;height:38px;place-items:center;gap:3px;padding:10px;border-radius:13px;background:#eef2ef}
.vg-shop-catalog-filter__icon i{position:relative;display:block;width:17px;height:1.5px;border-radius:99px;background:var(--vg-teal)}
.vg-shop-catalog-filter__icon i:nth-child(1):after,.vg-shop-catalog-filter__icon i:nth-child(3):after{content:'';position:absolute;top:50%;width:4px;height:4px;border:1.5px solid var(--vg-teal);border-radius:50%;background:#eef2ef;transform:translateY(-50%)}
.vg-shop-catalog-filter__icon i:nth-child(1):after{left:3px}.vg-shop-catalog-filter__icon i:nth-child(3):after{right:3px}
.vg-shop-catalog-filter__copy{display:flex;min-width:0;flex-direction:column;gap:2px}
.vg-shop-catalog-filter__copy small{color:var(--vg-muted);font-size:.66rem;font-weight:850;letter-spacing:.04em}
.vg-shop-catalog-filter__copy strong{overflow:hidden;font-family:var(--vg-font-heading);font-size:1.08rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.vg-shop-catalog-filter__meta{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-muted);font-size:.76rem;font-weight:750;white-space:nowrap}
.vg-shop-catalog-filter__meta b{margin-right:4px;color:var(--vg-ink)}
.vg-shop-catalog-filter__clear{display:block;margin:9px 4px 0 auto;padding:0;border:0;background:transparent;color:var(--vg-teal);font:800 .72rem/1.3 var(--vg-font-body);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.vg-shop-catalog-filter__clear[hidden]{display:none!important}
.vg-shop-filter-overlay{position:fixed;inset:0;z-index:99991;background:rgba(19,26,27,.43);opacity:0;backdrop-filter:blur(5px);transition:opacity .2s ease}
.vg-shop-filter-overlay[hidden]{display:none!important}.vg-shop-filter-overlay.is-open{opacity:1}
.vg-shop-filter-dialog{position:fixed;left:50%;top:50%;z-index:99992;width:min(760px,calc(100vw - 40px));max-height:min(82vh,780px);padding:20px;border:1px solid rgba(255,255,255,.72);border-radius:30px;background:rgba(250,250,248,.98);box-shadow:0 38px 120px rgba(13,22,22,.30);overflow:auto;opacity:0;transform:translate(-50%,-47%) scale(.975);backdrop-filter:blur(22px);transition:opacity .18s ease,transform .22s cubic-bezier(.22,.8,.26,1)}
.vg-shop-filter-dialog[hidden]{display:none!important}.vg-shop-filter-dialog.is-open{opacity:1;transform:translate(-50%,-50%) scale(1)}
.vg-shop-filter-dialog__handle{display:none}
.vg-shop-filter-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:2px 2px 16px}
.vg-shop-filter-dialog__head span{display:block;margin-bottom:4px;color:var(--vg-green);font-size:.62rem;font-weight:900;letter-spacing:.14em}
.vg-shop-filter-dialog__head strong{font-family:var(--vg-font-heading);font-size:1.8rem;line-height:1.05;letter-spacing:-.035em}
.vg-shop-filter-dialog__head>button{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border:1px solid var(--vg-border);border-radius:50%;background:#fff;color:var(--vg-ink);font-size:1.35rem;line-height:1;cursor:pointer;transition:.15s ease}
.vg-shop-filter-dialog__head>button:hover{border-color:var(--vg-teal);background:var(--vg-teal);color:#fff}
.vg-shop-filter-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:14px;padding:4px;border:1px solid var(--vg-border);border-radius:15px;background:#f1f2ef}
.vg-shop-filter-tabs button{min-height:44px;border:0;border-radius:11px;background:transparent;color:var(--vg-text);font:850 .78rem/1 var(--vg-font-body);cursor:pointer;transition:.15s ease}
.vg-shop-filter-tabs button.is-active{background:#fff;color:var(--vg-teal);box-shadow:0 4px 14px rgba(28,29,31,.07)}
.vg-shop-filter-panel[hidden]{display:none!important}.vg-shop-filter-panel__intro{margin:0 2px 12px;color:var(--vg-muted);font-size:.8rem;line-height:1.55}
.vg-shop-filter-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.vg-shop-filter-options button{position:relative;min-height:68px;padding:12px 42px 12px 14px;border:1px solid rgba(28,29,31,.085);border-radius:15px;background:#fff;color:var(--vg-ink);font-family:var(--vg-font-body);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}
.vg-shop-filter-options button:after{content:'';position:absolute;right:16px;top:50%;width:8px;height:8px;border-right:1.5px solid #a3aaa6;border-top:1.5px solid #a3aaa6;transform:translateY(-50%) rotate(45deg)}
.vg-shop-filter-options button:hover{border-color:rgba(49,72,75,.22);background:#fcfcfa;transform:translateY(-1px);box-shadow:0 8px 22px rgba(28,29,31,.045)}
.vg-shop-filter-options button small{display:block;margin-bottom:4px;color:var(--vg-muted);font-size:.6rem;font-weight:750}
.vg-shop-filter-options button strong{display:block;font-family:var(--vg-font-heading);font-size:.94rem;line-height:1.16}
.vg-shop-filter-options button.is-active{border-color:rgba(49,72,75,.28);background:linear-gradient(180deg,#f0f5f2,#edf2ef)}
.vg-shop-filter-options button.is-active:after{width:9px;height:5px;border:0;border-left:2px solid var(--vg-teal);border-bottom:2px solid var(--vg-teal);transform:translateY(-65%) rotate(-45deg)}
.vg-shop-filter-dialog__foot{display:flex;justify-content:center;padding:14px 2px 1px}
.vg-shop-filter-dialog__all{min-height:42px;padding:0 16px;border:0;background:transparent;color:var(--vg-teal);font:850 .75rem/1 var(--vg-font-body);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
html.vg-shop-filter-lock,html.vg-shop-filter-lock body{overflow:hidden}

@media(max-width:700px){
  .vg-shop-catalog-filter__trigger{min-height:68px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:10px 13px;border-radius:19px}
  .vg-shop-catalog-filter__icon{width:34px;height:34px;padding:9px;border-radius:12px}
  .vg-shop-catalog-filter__copy strong{font-size:.98rem}.vg-shop-catalog-filter__meta{display:none}
  .vg-shop-filter-dialog{left:0;right:0;top:auto;bottom:0;width:100%;max-height:86vh;padding:8px 12px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:26px 26px 0 0;opacity:1;transform:translateY(102%)}
  .vg-shop-filter-dialog.is-open{transform:translateY(0)}
  .vg-shop-filter-dialog__handle{display:block;width:38px;height:4px;margin:2px auto 11px;border-radius:99px;background:#d7d9d5}
  .vg-shop-filter-dialog__head{padding:2px 2px 12px}.vg-shop-filter-dialog__head strong{font-size:1.4rem}
  .vg-shop-filter-tabs button{min-height:42px;font-size:.73rem}
  .vg-shop-filter-options{grid-template-columns:1fr 1fr;gap:7px}
  .vg-shop-filter-options button{min-height:64px;padding:10px 34px 10px 11px;border-radius:14px}.vg-shop-filter-options button small{font-size:.56rem}.vg-shop-filter-options button strong{font-size:.83rem}.vg-shop-filter-options button:after{right:12px}
}
@media(max-width:420px){.vg-shop-filter-options{grid-template-columns:1fr}.vg-shop-filter-dialog{max-height:89vh}}


/* =========================================================
   V108 — Obchod: stabilní popup při přepínání Potřeba / Řada
   Dialog má pevný viewportový rámec; mění se pouze obsah uvnitř.
   ========================================================= */
@media (min-width:701px){
  .vg-shop-filter-dialog{
    height:min(82vh,760px);
    max-height:none;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .vg-shop-filter-dialog[hidden]{display:none!important}
  .vg-shop-filter-panels{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:4px;
    scrollbar-gutter:stable;
  }
  .vg-shop-filter-dialog__head,
  .vg-shop-filter-tabs,
  .vg-shop-filter-dialog__foot{flex:0 0 auto}
}
@media (max-width:700px){
  .vg-shop-filter-dialog{
    height:86vh;
    max-height:86vh;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  .vg-shop-filter-dialog[hidden]{display:none!important}
  .vg-shop-filter-panels{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:2px;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .vg-shop-filter-dialog__handle,
  .vg-shop-filter-dialog__head,
  .vg-shop-filter-tabs,
  .vg-shop-filter-dialog__foot{flex:0 0 auto}
}
@media (max-width:420px){
  .vg-shop-filter-dialog{height:89vh;max-height:89vh}
}

/* =========================================================
   V109 — REDAKCE / RUBRIKY / KONTAKT
   ========================================================= */
.vg-editorial-home,.vg-rubriky-page,.vg-editorial-archive,.vg-contact-page{padding:26px 0 96px;background:var(--vg-bg)}
.vg-editorial-home__hero,.vg-rubriky-hero,.vg-editorial-archive__hero,.vg-contact-hero{padding:56px 0 38px;max-width:930px}
.vg-editorial-home__hero h1,.vg-rubriky-hero h1,.vg-editorial-archive__hero h1,.vg-contact-hero h1{margin:8px 0 16px;font:700 clamp(2.8rem,6vw,5rem)/.98 var(--vg-font-heading);letter-spacing:-.045em;color:var(--vg-ink)}
.vg-editorial-home__hero>p:last-of-type,.vg-rubriky-hero>p,.vg-contact-hero>p{max-width:760px;margin:0;color:#687072;font-size:1.08rem;line-height:1.65}
.vg-editorial-home__topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.vg-editorial-home__topics a{padding:9px 13px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-ink);font:700 .78rem/1 var(--vg-font-body);text-decoration:none}.vg-editorial-home__topics a:hover,.vg-editorial-home__topics .is-all{border-color:rgba(49,72,75,.2);background:#edf2ef;color:var(--vg-teal)}
.vg-editorial-feature{display:grid;grid-template-columns:1.12fr .88fr;min-height:440px;overflow:hidden;border:1px solid rgba(49,72,75,.08);border-radius:30px;background:#fff;box-shadow:0 18px 46px rgba(28,29,31,.055)}.vg-editorial-feature__media{min-height:440px;background:#ebe9e2}.vg-editorial-feature__media img{width:100%;height:100%;object-fit:cover;display:block}.vg-editorial-feature__media:empty{background:linear-gradient(135deg,#e7ebe5,#f4eee5)}.vg-editorial-feature__copy{display:flex;flex-direction:column;justify-content:center;padding:44px}.vg-editorial-feature__copy h2{margin:14px 0;font:700 clamp(2rem,3.4vw,3.1rem)/1.04 var(--vg-font-heading);letter-spacing:-.035em}.vg-editorial-feature__copy h2 a{color:var(--vg-ink);text-decoration:none}.vg-editorial-feature__copy>p{margin:0;color:#646c6e;line-height:1.7}.vg-editorial-feature__cta{align-self:flex-start;margin-top:24px;color:var(--vg-teal);font-weight:800;text-decoration:none}
.vg-editorial-card__meta{display:flex;align-items:center;gap:9px;color:#818788;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.vg-editorial-card__meta span{color:var(--vg-teal)}
.vg-editorial-list{padding-top:74px}.vg-editorial-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.vg-editorial-section-head h2{margin:6px 0 0;font:700 clamp(2rem,3.8vw,3rem)/1.05 var(--vg-font-heading);letter-spacing:-.035em}.vg-editorial-section-head>a{color:var(--vg-teal);font-weight:800;text-decoration:none}
.vg-editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.vg-editorial-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid rgba(49,72,75,.08);border-radius:22px;background:#fff;transition:transform .18s ease,box-shadow .18s ease}.vg-editorial-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(28,29,31,.055)}.vg-editorial-card__media{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,#e7ebe5,#f4eee5);overflow:hidden}.vg-editorial-card__media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s ease}.vg-editorial-card:hover .vg-editorial-card__media img{transform:scale(1.018)}.vg-editorial-card__body{display:flex;flex:1;flex-direction:column;padding:20px}.vg-editorial-card h3,.vg-editorial-card h2{margin:11px 0 10px;font:700 1.35rem/1.15 var(--vg-font-heading);letter-spacing:-.02em}.vg-editorial-card h3 a,.vg-editorial-card h2 a{color:var(--vg-ink);text-decoration:none}.vg-editorial-card__body>p{margin:0 0 18px;color:#6d7476;line-height:1.58;font-size:.91rem}.vg-editorial-card__link{margin-top:auto;color:var(--vg-teal);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-editorial-pagination{display:flex;justify-content:center;gap:7px;margin-top:34px}.vg-editorial-pagination .page-numbers{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--vg-border);border-radius:11px;background:#fff;color:var(--vg-ink);font-weight:700;text-decoration:none}.vg-editorial-pagination .current{background:var(--vg-teal);color:#fff;border-color:var(--vg-teal)}
.vg-editorial-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:72px;padding:36px;border-radius:28px;background:var(--vg-teal);color:rgba(255,255,255,.72)}.vg-editorial-bottom h2{max-width:670px;margin:8px 0;font:700 clamp(1.8rem,3vw,2.5rem)/1.06 var(--vg-font-heading);color:#fff}.vg-editorial-bottom p{margin:0}.vg-editorial-bottom__actions{display:flex;gap:9px;flex:0 0 auto}.vg-editorial-bottom__actions a{display:inline-flex;min-height:46px;align-items:center;padding:0 17px;border:1px solid rgba(255,255,255,.28);border-radius:12px;color:#fff;font-weight:800;text-decoration:none}.vg-editorial-bottom__actions .is-primary{background:#fff;color:var(--vg-teal);border-color:#fff}
.vg-rubriky-hero>a,.vg-editorial-archive__hero nav a{display:inline-block;margin-top:22px;color:var(--vg-teal);font-weight:800;text-decoration:none}.vg-rubriky-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.vg-rubrika-card{padding:28px;border:1px solid rgba(49,72,75,.08);border-radius:24px;background:#fff}.vg-rubrika-card__top{display:flex;justify-content:space-between;color:#8a8f90;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.vg-rubrika-card h2{margin:14px 0 10px;font:700 clamp(1.55rem,2.7vw,2.2rem)/1.08 var(--vg-font-heading);letter-spacing:-.025em}.vg-rubrika-card h2 a{color:var(--vg-ink);text-decoration:none}.vg-rubrika-card>p{color:#6a7273;line-height:1.6}.vg-rubrika-card__recent{display:grid;gap:7px;margin:18px 0;padding-top:16px;border-top:1px solid var(--vg-border)}.vg-rubrika-card__recent a{color:#4f5859;font-size:.88rem;font-weight:700;text-decoration:none}.vg-rubrika-card__recent a:before{content:'→';margin-right:8px;color:var(--vg-teal)}.vg-rubrika-card__cta{display:inline-block;margin-top:9px;color:var(--vg-teal);font-weight:800;text-decoration:none}
.vg-editorial-archive__hero nav{display:flex;gap:8px;align-items:center;color:#8a8f90;font-size:.82rem}.vg-editorial-archive__hero nav a{margin:0}.vg-editorial-archive__desc{max-width:730px;color:#687072;line-height:1.65}.vg-editorial-archive__desc p{margin:0}
.vg-contact-hero{max-width:980px;padding-bottom:48px}.vg-contact-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.vg-contact-hero__actions a{display:inline-flex;min-height:48px;align-items:center;padding:0 18px;border:1px solid rgba(49,72,75,.15);border-radius:13px;background:#fff;color:var(--vg-teal);font-weight:800;text-decoration:none}.vg-contact-hero__actions .is-primary{background:var(--vg-teal);color:#fff;border-color:var(--vg-teal)}
.vg-contact-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.vg-contact-quick article{padding:25px;border:1px solid rgba(49,72,75,.08);border-radius:22px;background:#fff}.vg-contact-quick article>span{color:#9aa09d;font:800 .7rem/1 var(--vg-font-body)}.vg-contact-quick h2{margin:15px 0 9px;font:700 1.25rem/1.16 var(--vg-font-heading)}.vg-contact-quick p{min-height:68px;margin:0 0 14px;color:#6b7374;font-size:.9rem;line-height:1.55}.vg-contact-quick a{color:var(--vg-teal);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-contact-main{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px}.vg-contact-form-card,.vg-contact-details{padding:34px;border:1px solid rgba(49,72,75,.08);border-radius:26px;background:#fff}.vg-contact-form-card h2,.vg-contact-details h2{margin:8px 0 24px;font:700 clamp(1.8rem,3vw,2.4rem)/1.06 var(--vg-font-heading);letter-spacing:-.025em}.vg-contact-form{display:grid;gap:16px}.vg-contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vg-contact-form label{display:grid;gap:7px;color:#525a5b;font-size:.8rem;font-weight:800}.vg-contact-form label span small{color:#949a9b;font-weight:600}.vg-contact-form input,.vg-contact-form select,.vg-contact-form textarea{width:100%;border:1px solid #dedfd9;border-radius:12px;background:#fbfbf9;color:var(--vg-ink);font:500 .95rem/1.4 var(--vg-font-body);outline:none}.vg-contact-form input,.vg-contact-form select{height:48px;padding:0 13px}.vg-contact-form textarea{padding:13px;resize:vertical}.vg-contact-form input:focus,.vg-contact-form select:focus,.vg-contact-form textarea:focus{border-color:rgba(49,72,75,.45);box-shadow:0 0 0 3px rgba(49,72,75,.07)}.vg-contact-form__consent{grid-template-columns:18px 1fr!important;align-items:start;font-weight:500!important;line-height:1.5}.vg-contact-form__consent input{width:16px;height:16px;margin-top:2px}.vg-contact-form__consent a{color:var(--vg-teal)}.vg-contact-form button{min-height:50px;border:0;border-radius:12px;background:var(--vg-teal);color:#fff;font:800 .86rem/1 var(--vg-font-heading);cursor:pointer}.vg-contact-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.vg-contact-alert{margin:0 0 18px;padding:12px 14px;border-radius:11px;font-size:.88rem;font-weight:700}.vg-contact-alert.is-success{background:#eef5f0;color:#315846}.vg-contact-alert.is-error{background:#faf0ed;color:#8a4c43}
.vg-contact-details dl{margin:0}.vg-contact-details dl>div{padding:16px 0;border-top:1px solid var(--vg-border)}.vg-contact-details dt{margin-bottom:5px;color:#8a9090;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.vg-contact-details dd{margin:0;color:#3e4748;line-height:1.55;font-weight:650}.vg-contact-details dd a{color:var(--vg-teal);text-decoration:none}.vg-contact-hours{display:grid;gap:5px;margin-top:20px;padding:18px;border-radius:16px;background:#f2f4f0}.vg-contact-hours strong{font-family:var(--vg-font-heading)}.vg-contact-hours span{color:#4e5858}.vg-contact-hours small{color:#7c8383;line-height:1.45}
@media(max-width:900px){.vg-editorial-feature{grid-template-columns:1fr}.vg-editorial-feature__media{min-height:auto;aspect-ratio:16/9}.vg-editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vg-contact-quick{grid-template-columns:1fr 1fr}.vg-contact-main{grid-template-columns:1fr}.vg-editorial-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.vg-editorial-home,.vg-rubriky-page,.vg-editorial-archive,.vg-contact-page{padding-top:8px;padding-bottom:68px}.vg-editorial-home__hero,.vg-rubriky-hero,.vg-editorial-archive__hero,.vg-contact-hero{padding:36px 0 28px}.vg-editorial-home__hero h1,.vg-rubriky-hero h1,.vg-editorial-archive__hero h1,.vg-contact-hero h1{font-size:clamp(2.35rem,12vw,3.35rem)}.vg-editorial-feature,.vg-rubrika-card,.vg-contact-form-card,.vg-contact-details{border-radius:20px}.vg-editorial-feature__copy{padding:25px 21px}.vg-editorial-feature__copy h2{font-size:1.8rem}.vg-editorial-list{padding-top:52px}.vg-editorial-section-head{align-items:flex-start;flex-direction:column}.vg-editorial-grid,.vg-rubriky-grid,.vg-contact-quick,.vg-contact-form__row{grid-template-columns:1fr}.vg-editorial-bottom{margin-top:52px;padding:26px 21px;border-radius:21px}.vg-editorial-bottom__actions{width:100%;flex-direction:column}.vg-editorial-bottom__actions a{justify-content:center}.vg-contact-quick p{min-height:0}.vg-contact-form-card,.vg-contact-details{padding:24px 20px}.vg-editorial-home__topics{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.vg-editorial-home__topics::-webkit-scrollbar{display:none}.vg-editorial-home__topics a{flex:0 0 auto}}

/* v110 — Redakce jako jediná obsahová větev + připnutý master */
.vg-editorial-feature.is-pinned{position:relative}
.vg-editorial-feature.is-pinned:before{content:'MASTER';position:absolute;z-index:2;top:18px;left:18px;padding:8px 11px;border-radius:999px;background:rgba(49,72,75,.92);color:#fff;font:800 .67rem/1 var(--vg-font-body);letter-spacing:.08em}
.vg-language-master-links{margin-top:64px;padding-top:42px;border-top:1px solid var(--vg-border)}
.vg-language-master-links>h2{margin:8px 0 24px}
.vg-language-master-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.vg-language-master-card{display:flex;min-height:120px;flex-direction:column;justify-content:space-between;gap:18px;padding:20px;border:1px solid var(--vg-border);border-radius:18px;background:#fff;color:var(--vg-ink);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.vg-language-master-card:hover{transform:translateY(-2px);border-color:rgba(49,72,75,.25);box-shadow:0 12px 26px rgba(28,29,31,.05)}
.vg-language-master-card span{font:700 1rem/1.35 var(--vg-font-heading)}
.vg-language-master-card strong{font-size:.78rem;color:var(--vg-teal)}
@media(max-width:650px){.vg-language-master-grid{grid-template-columns:1fr}.vg-editorial-feature.is-pinned:before{top:12px;left:12px}}

/* =========================================================
   V111 — Redakce: oblastní filtry + vzdušnější článkové karty
   ========================================================= */
.vg-editorial-home--v112 .vg-editorial-home__hero{max-width:1040px}
.vg-editorial-home__topics--filters{gap:9px;margin-top:30px}
.vg-editorial-home__topics--filters a{padding:10px 15px;border-color:rgba(49,72,75,.12);background:rgba(255,255,255,.78);transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.vg-editorial-home__topics--filters a:hover{transform:translateY(-1px)}
.vg-editorial-home__topics--filters a.is-active{border-color:var(--vg-teal);background:var(--vg-teal);color:#fff}
.vg-editorial-list.is-filtered{padding-top:18px}
.vg-editorial-filter-reset{align-self:center;color:var(--vg-teal);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-editorial-filter-reset:hover{text-decoration:underline;text-underline-offset:4px}
.vg-editorial-home--v112 .vg-editorial-grid{gap:22px}
.vg-editorial-home--v112 .vg-editorial-card{border-radius:24px}
.vg-editorial-home--v112 .vg-editorial-card__media{margin:12px 12px 0;aspect-ratio:16/10.6;border-radius:17px;background:#f1f0eb}
.vg-editorial-home--v112 .vg-editorial-card__media img{border-radius:17px}
.vg-editorial-home--v112 .vg-editorial-card__body{padding:23px 24px 25px}
.vg-editorial-home--v112 .vg-editorial-card h3{margin-top:13px;font-size:1.4rem;line-height:1.16}
.vg-editorial-home--v112 .vg-editorial-card__body>p{font-size:.93rem;line-height:1.62}
.vg-editorial-empty{grid-column:1/-1;padding:28px;border:1px solid var(--vg-border);border-radius:20px;background:#fff;color:var(--vg-muted)}
@media(max-width:900px){
  .vg-editorial-home--v112 .vg-editorial-card__media{aspect-ratio:16/10}
}
@media(max-width:650px){
  .vg-editorial-home__topics--filters{margin-top:24px}
  .vg-editorial-home__topics--filters a{padding:10px 14px}
  .vg-editorial-home--v112 .vg-editorial-card__media{margin:10px 10px 0;border-radius:15px}
  .vg-editorial-home--v112 .vg-editorial-card__body{padding:20px 20px 23px}
}


/* =========================================================
   V112 — REDAKCE: editorial thumbnails with breathing room
   ========================================================= */
.vg-editorial-home--v112 .vg-editorial-card__media{
  margin:12px 12px 0;
  aspect-ratio:16/10.4;
  padding:16px;
  box-sizing:border-box;
  border-radius:17px;
  background:#f3f1ec;
}
.vg-editorial-home--v112 .vg-editorial-card__media img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:12px;
  transform:none !important;
}
.vg-editorial-home--v112 .vg-editorial-card:hover .vg-editorial-card__media img{
  transform:none !important;
}
.vg-editorial-home--v112 .vg-editorial-card__body{
  padding:23px 24px 26px;
}
@media(max-width:650px){
  .vg-editorial-home--v112 .vg-editorial-card__media{
    margin:10px 10px 0;
    padding:12px;
  }
}


/* =========================================================
   V113 — REDAKCE: true 16:9 thumbnails + calmer editorial rhythm
   ========================================================= */
.vg-editorial-home--v112 .vg-editorial-home__hero .vg-kicker{
  margin:0 0 20px;
}
.vg-editorial-home--v112 .vg-editorial-home__hero h1{
  margin:0 0 18px;
}
.vg-editorial-home--v112 .vg-editorial-card__media{
  margin:12px 12px 0;
  padding:0;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:17px;
  background:#f1f0eb;
}
.vg-editorial-home--v112 .vg-editorial-card__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  border-radius:17px;
  transform:none !important;
}
.vg-editorial-home--v112 .vg-editorial-card:hover .vg-editorial-card__media img{
  transform:none !important;
}

/* Detail článku — kicker má vlastní vzduch a datum je jen jednou v metadatech. */
.vigres-redakce__hero .vg-kicker{
  margin:0 0 20px;
}
.vigres-redakce__hero h1{
  margin:0;
}
.vigres-redakce__meta{
  gap:10px;
  margin-top:22px;
  align-items:center;
}
.vigres-redakce__meta time,
.vigres-redakce__meta .vigres-redakce__read-time{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 11px;
  border:1px solid rgba(49,72,75,.10);
  border-radius:999px;
  background:#f6f7f4;
  color:#687072;
  font-size:.78rem;
  font-weight:700;
}
.vigres-redakce__meta .vigres-redakce__meta-sep{display:none}
@media(max-width:650px){
  .vg-editorial-home--v112 .vg-editorial-home__hero .vg-kicker{margin-bottom:15px}
  .vg-editorial-home--v112 .vg-editorial-card__media{margin:10px 10px 0;aspect-ratio:16/9}
  .vigres-redakce__hero .vg-kicker{margin-bottom:15px}
}


/* =========================================================
   V114 — Redakce: připnutý MASTER obraz 16:9 bez ořezu
   ========================================================= */
@media (min-width:901px){
  .vg-editorial-home--v112 .vg-editorial-feature{
    grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);
    min-height:0;
    align-items:stretch;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__media{
    min-height:0;
    aspect-ratio:16/9;
    background:#f1f0eb;
    overflow:hidden;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    padding:38px 42px;
  }
}
@media (max-width:900px){
  .vg-editorial-home--v112 .vg-editorial-feature__media{
    aspect-ratio:16/9;
    min-height:0;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__media img{
    width:100%;height:100%;object-fit:cover;object-position:center;display:block;
  }
}


/* =========================================================
   V115 — Redakce: master bez štítku + kultivovanější copy + oprava linky u rtů
   ========================================================= */
/* Samotný hero obrázek už obsahuje dost informací. Duplicitní MASTER badge pryč. */
.vg-editorial-home--v112 .vg-editorial-feature.is-pinned:before{
  display:none !important;
  content:none !important;
}

/* Připnutý článek: textová část nesmí tlačit do fotografie ani působit přerostle. */
@media (min-width:901px){
  .vg-editorial-home--v112 .vg-editorial-feature{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    min-width:0;
    padding:40px 46px;
    justify-content:center;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy .vg-editorial-card__meta{
    margin:0 0 16px;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy h2{
    max-width:540px;
    margin:0 0 18px;
    font-size:clamp(2rem,2.75vw,2.75rem);
    line-height:1.03;
    letter-spacing:-.034em;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy > p{
    max-width:520px;
    font-size:.98rem;
    line-height:1.64;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__cta{
    margin-top:22px;
  }
}

/* Zdrojový thumbnail článku o rtech má na horní/levé hraně tmavou linku.
   Jemné přiblížení ořízne pouze hraniční pixel, bez změny kompozice. */
.vg-editorial-home--v112 .vg-editorial-card--suche-a-popraskane-rty .vg-editorial-card__media img{
  transform:scale(1.012) !important;
}
.vg-editorial-home--v112 .vg-editorial-card--suche-a-popraskane-rty:hover .vg-editorial-card__media img{
  transform:scale(1.012) !important;
}

@media (max-width:900px){
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    padding:28px 26px 30px;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy h2{
    margin:0 0 15px;
    font-size:clamp(1.85rem,7vw,2.45rem);
    line-height:1.05;
  }
}

/* =========================================================
   V116 — Redakce: finální geometrie připnutého článku
   Oprava přetékání copy panelu: grid položky používají border-box.
   ========================================================= */
.vg-editorial-home--v112 .vg-editorial-feature,
.vg-editorial-home--v112 .vg-editorial-feature *{
  box-sizing:border-box;
}
@media (min-width:901px){
  .vg-editorial-home--v112 .vg-editorial-feature{
    grid-template-columns:minmax(0,56%) minmax(0,44%);
    align-items:stretch;
    min-height:0;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__media,
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    min-width:0;
    width:100%;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__media{
    aspect-ratio:16/9;
    overflow:hidden;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    position:relative;
    z-index:1;
    padding:42px 46px 42px 48px;
    background:#fff;
    justify-content:center;
    overflow:hidden;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy .vg-editorial-card__meta{
    margin:0 0 14px;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy h2{
    width:100%;
    max-width:460px;
    margin:0 0 17px;
    font-size:clamp(2rem,2.35vw,2.55rem);
    line-height:1.04;
    letter-spacing:-.032em;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__copy > p{
    width:100%;
    max-width:470px;
    margin:0;
    font-size:.96rem;
    line-height:1.62;
  }
  .vg-editorial-home--v112 .vg-editorial-feature__cta{
    margin-top:22px;
  }
}
@media (max-width:900px){
  .vg-editorial-home--v112 .vg-editorial-feature__copy{
    box-sizing:border-box;
    width:100%;
    padding:28px 26px 30px;
    background:#fff;
  }
}

/* ==========================================================
   v118 — JAK UŽÍVAT VIGRES
   ========================================================== */
.vgu118{background:var(--vg-bg);color:var(--vg-ink);font-family:var(--vg-font-body)}
.vgu118-shell{width:min(var(--vg-shell),calc(100% - 64px));margin:0 auto}
.vgu118-hero{padding:86px 0 58px;text-align:center;background:linear-gradient(180deg,#f6f3ec 0%,var(--vg-bg) 100%)}
.vgu118-kicker{display:block;font-size:12px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--vg-green);margin-bottom:18px}
.vgu118 h1,.vgu118 h2,.vgu118 h3{font-family:var(--vg-font-heading);letter-spacing:-.035em;color:var(--vg-teal-dark)}
.vgu118 h1{max-width:960px;margin:0 auto;font-size:clamp(48px,6vw,82px);line-height:.98;font-weight:800}
.vgu118 h1 em,.vgu118 h2 em{font-style:normal;color:var(--vg-green)}
.vgu118-lead{max-width:820px;margin:28px auto 0;font-size:20px;line-height:1.65;color:var(--vg-text)}
.vgu118-quick{max-width:900px;margin:40px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--vg-border);border:1px solid var(--vg-border);border-radius:20px;overflow:hidden;box-shadow:0 12px 30px rgba(28,29,31,.035)}
.vgu118-quick div{background:#fff;padding:20px 18px;display:flex;flex-direction:column;gap:4px}
.vgu118-quick strong{font:700 17px/1.25 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-quick span{font-size:13px;color:var(--vg-muted)}
.vgu118-choice{max-width:1000px;margin:44px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left}
.vgu118-choice__btn{appearance:none;border:1px solid var(--vg-border);background:#fff;border-radius:24px;padding:26px 28px;display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:center;cursor:pointer;transition:.2s ease;box-shadow:0 14px 34px rgba(28,29,31,.04);color:inherit}
.vgu118-choice__btn:hover{transform:translateY(-2px);border-color:#bdc8c2;box-shadow:0 18px 38px rgba(28,29,31,.07)}
.vgu118-choice__btn.is-active{border-color:rgba(49,72,75,.45);box-shadow:0 0 0 3px rgba(49,72,75,.08),0 18px 38px rgba(28,29,31,.065)}
.vgu118-choice__num{width:54px;height:54px;border-radius:17px;background:#eef2ef;display:grid;place-items:center;font:800 22px/1 var(--vg-font-heading);color:var(--vg-teal)}
.vgu118-choice__btn.is-active .vgu118-choice__num{background:var(--vg-teal);color:#fff}
.vgu118-choice__btn small{display:block;margin-bottom:5px;font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--vg-green)}
.vgu118-choice__btn strong{display:block;font:800 23px/1.15 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-choice__btn em{display:block;margin-top:7px;font-style:normal;font-size:14px;line-height:1.4;color:var(--vg-text)}
.vgu118-mode{padding:78px 0 72px;background:#fff}
.vgu118-panel[hidden]{display:none!important}
.vgu118-sectionhead{max-width:760px;margin-bottom:38px}
.vgu118-sectionhead--center{text-align:center;margin-left:auto;margin-right:auto}
.vgu118-sectionhead h2{font-size:clamp(36px,4.4vw,58px);line-height:1.03;margin:0;font-weight:800}
.vgu118-sectionhead p{font-size:17px;line-height:1.7;color:var(--vg-text);margin:20px 0 0;max-width:680px}
.vgu118-sectionhead--center p{margin-left:auto;margin-right:auto}
.vgu118-single-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.vgu118-usecard{border:1px solid var(--vg-border);background:#fbfbf9;border-radius:26px;padding:30px;min-height:330px;display:flex;flex-direction:column}
.vgu118-usecard--primary{background:linear-gradient(145deg,#eef3ef,#f9faf7);border-color:#d6e0da}
.vgu118-usecard__top span{display:block;font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--vg-green);margin-bottom:6px}
.vgu118-usecard__top strong{font:800 30px/1.1 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-dose{margin:24px 0 18px;padding:18px 20px;border-radius:18px;background:#fff;border:1px solid var(--vg-border);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.vgu118-dose b{font:800 25px/1 var(--vg-font-heading);color:var(--vg-teal)}
.vgu118-dose span{font-size:14px;font-weight:700;color:var(--vg-text)}
.vgu118-usecard p,.vgu118-combo p{font-size:15px;line-height:1.65;color:var(--vg-text);margin:0 0 20px}
.vgu118-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;font-size:14px;font-weight:800;color:var(--vg-teal);text-decoration:none}
.vgu118-link::after{content:'→';transition:transform .18s ease}
.vgu118-link:hover::after{transform:translateX(3px)}
.vgu118-memory{margin-top:22px;padding:20px 24px;border-radius:22px;background:var(--vg-teal-dark);color:#fff;display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:14px;align-items:center}
.vgu118-memory>span{font:800 17px/1.25 var(--vg-font-heading)}
.vgu118-memory div{padding-left:16px;border-left:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column;gap:2px}
.vgu118-memory b{font-size:13px}.vgu118-memory em{font-style:normal;font-size:12px;color:rgba(255,255,255,.72)}
.vgu118-combo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vgu118-combo{border:1px solid var(--vg-border);border-radius:26px;padding:30px;background:#fbfbf9;display:flex;flex-direction:column;min-height:320px}
.vgu118-combo--hero{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.35fr;column-gap:42px;align-items:center;background:linear-gradient(135deg,var(--vg-teal-dark),#385155);color:#fff;border:none;padding:38px 42px}
.vgu118-combo--hero .vgu118-combo__badge,.vgu118-combo--hero h3,.vgu118-combo--hero .vgu118-combo__intro{grid-column:1}
.vgu118-combo--hero .vgu118-timeline,.vgu118-combo--hero .vgu118-cta{grid-column:2;grid-row:1/5}
.vgu118-combo__badge{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--vg-green);margin-bottom:10px}
.vgu118-combo--hero .vgu118-combo__badge{color:#b8cec2}
.vgu118-combo h3{font-size:30px;line-height:1.1;margin:0 0 14px}
.vgu118-combo--hero h3{color:#fff;font-size:42px}
.vgu118-combo__intro{color:rgba(255,255,255,.78)!important;font-size:16px!important}
.vgu118-timeline{display:grid;gap:12px}
.vgu118-timeline div{background:#fff;color:var(--vg-teal-dark);border-radius:18px;padding:17px 20px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.vgu118-timeline span{width:100%;font-size:10px;letter-spacing:.12em;font-weight:800;color:var(--vg-green)}
.vgu118-timeline strong{display:block;width:100%;font:800 18px/1.25 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-timeline small{display:block;width:100%;font-size:13px;line-height:1.4;color:var(--vg-text);margin-top:-3px}
.vgu118-timeline i{font-style:normal;color:var(--vg-green);font-weight:900}
.vgu118-timeline__step--primary{box-shadow:inset 4px 0 0 var(--vg-green)}
.vgu118-timeline__step--primary strong{font-size:20px}
.vgu118-cta{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;background:var(--vg-teal);color:#fff;border-radius:14px;min-height:48px;padding:0 22px;font-size:14px;font-weight:800;transition:.2s ease}
.vgu118-combo--hero .vgu118-cta{margin-top:14px;background:#fff;color:var(--vg-teal-dark);align-self:end;grid-row:auto}
.vgu118-cta:hover{transform:translateY(-1px);filter:brightness(.96)}
.vgu118-formula{display:flex;align-items:center;gap:10px;margin:20px 0 24px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--vg-border);font:800 17px/1.2 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-formula span{color:var(--vg-green)}
.vgu118-stop{margin:18px 0 24px;padding:18px 20px;border-left:4px solid var(--vg-green);background:#eef2ef;border-radius:0 16px 16px 0;display:flex;flex-direction:column;gap:4px}
.vgu118-stop b{font:800 16px/1.2 var(--vg-font-heading);color:var(--vg-teal-dark)}
.vgu118-stop span{font-size:13px;color:var(--vg-text)}
.vgu118-combo--advanced{border-color:#d9ded9;background:linear-gradient(180deg,#fbfbf9 0%,#f6f8f5 100%)}
.vgu118-stop--strong{border-left-width:5px;background:#e9efeb;padding:20px 22px}
.vgu118-stop--strong b{font-size:17px}
.vgu118-stop--strong span{font-size:14px;line-height:1.55}

.vgu118-how{padding:76px 0;background:var(--vg-bg)}
.vgu118-how-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vgu118-how-grid article{background:#fff;border:1px solid var(--vg-border);border-radius:24px;padding:30px;text-align:center}
.vgu118-how-grid article>span{width:48px;height:48px;border-radius:16px;margin:0 auto 16px;display:grid;place-items:center;background:#eef2ef;color:var(--vg-teal);font:800 19px/1 var(--vg-font-heading)}
.vgu118-how-grid h3{font-size:24px;margin:0 0 10px}.vgu118-how-grid p{font-size:14px;line-height:1.65;color:var(--vg-text);margin:0}
.vgu118-sales{padding:0 0 76px;background:var(--vg-bg)}
.vgu118-sales__box{border-radius:30px;padding:44px 48px;background:var(--vg-teal-dark);color:#fff;display:grid;grid-template-columns:1fr auto;gap:46px;align-items:center}
.vgu118-sales__box h2{color:#fff;font-size:clamp(34px,4vw,52px);line-height:1.04;margin:0;max-width:760px}
.vgu118-sales__box p{font-size:16px;line-height:1.65;color:rgba(255,255,255,.72);max-width:680px;margin:18px 0 0}
.vgu118-sales__box .vgu118-kicker{color:#bdd0c6}.vgu118-sales__actions{display:flex;flex-direction:column;gap:14px;min-width:210px}
.vgu118-sales__actions .vgu118-cta{background:#fff;color:var(--vg-teal-dark)}
.vgu118-link--light{color:#fff;justify-content:center;margin:0}
.vgu118-faq{padding:78px 0 90px;background:#fff}
.vgu118-faq__shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}
.vgu118-faq__list{border-top:1px solid var(--vg-border)}
.vgu118-faq__item{border-bottom:1px solid var(--vg-border)}
.vgu118-faq__item button{width:100%;appearance:none;border:0;background:transparent;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left;font:800 16px/1.35 var(--vg-font-heading);color:var(--vg-teal-dark);cursor:pointer}
.vgu118-faq__item button b{font:400 24px/1 var(--vg-font-body);color:var(--vg-green)}
.vgu118-faq__item>div p{margin:0;padding:0 36px 20px 0;font-size:14px;line-height:1.7;color:var(--vg-text)}
.vgu118-note{grid-column:2;margin:10px 0 0;font-size:11px;line-height:1.65;color:var(--vg-muted)}
@media(max-width:900px){
  .vgu118-shell{width:min(100% - 40px,var(--vg-shell))}
  .vgu118-memory{grid-template-columns:1fr 1fr}.vgu118-memory>span{grid-column:1/-1}.vgu118-memory div:nth-child(4){grid-column:1/-1}
  .vgu118-combo--hero{grid-template-columns:1fr}.vgu118-combo--hero .vgu118-combo__badge,.vgu118-combo--hero h3,.vgu118-combo--hero .vgu118-combo__intro,.vgu118-combo--hero .vgu118-timeline,.vgu118-combo--hero .vgu118-cta{grid-column:1;grid-row:auto}
  .vgu118-sales__box{grid-template-columns:1fr}.vgu118-sales__actions{min-width:0;flex-direction:row;align-items:center}
  .vgu118-faq__shell{grid-template-columns:1fr;gap:24px}.vgu118-note{grid-column:1}
}
@media(max-width:700px){
  .vgu118-shell{width:min(100% - 28px,var(--vg-shell))}
  .vgu118-hero{padding:58px 0 38px}.vgu118 h1{font-size:44px}.vgu118-lead{font-size:17px;line-height:1.6}
  .vgu118-quick{grid-template-columns:1fr;margin-top:28px}.vgu118-quick div{padding:14px 16px}
  .vgu118-choice{grid-template-columns:1fr;margin-top:28px}.vgu118-choice__btn{padding:20px;grid-template-columns:46px 1fr}.vgu118-choice__num{width:46px;height:46px;border-radius:14px;font-size:18px}.vgu118-choice__btn strong{font-size:20px}
  .vgu118-mode{padding:56px 0}.vgu118-sectionhead h2{font-size:38px}.vgu118-sectionhead p{font-size:15px}
  .vgu118-single-grid,.vgu118-combo-grid,.vgu118-how-grid{grid-template-columns:1fr}.vgu118-usecard,.vgu118-combo{min-height:0;padding:24px}
  .vgu118-memory{grid-template-columns:1fr;padding:18px}.vgu118-memory>span,.vgu118-memory div:nth-child(4){grid-column:auto}.vgu118-memory div{border-left:0;border-top:1px solid rgba(255,255,255,.16);padding:10px 0 0}
  .vgu118-combo--hero{padding:28px 24px}.vgu118-combo--hero h3{font-size:34px}.vgu118-timeline div{align-items:flex-start}
  .vgu118-how{padding:56px 0}.vgu118-sales{padding-bottom:56px}.vgu118-sales__box{padding:30px 24px;border-radius:24px}.vgu118-sales__actions{flex-direction:column;align-items:stretch}.vgu118-link--light{min-height:44px}
  .vgu118-faq{padding:56px 0 70px}
}


/* =========================================================
   v121 — globální header, mobilní menu a finální footer
   ========================================================= */
.vg-header{position:relative;z-index:80}
.vg-header__inner{grid-template-columns:150px minmax(0,1fr) auto}
.vg-nav{gap:clamp(18px,2.2vw,32px)}
.vg-nav a{position:relative;padding:22px 0 20px;white-space:nowrap}
.vg-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:13px;height:2px;border-radius:2px;background:rgba(255,255,255,.9);transition:left .2s ease,right .2s ease,opacity .2s ease;opacity:0}
.vg-nav a:hover::after,.vg-nav a:focus-visible::after,.vg-nav a.is-active::after{left:0;right:0;opacity:1}
.vg-nav a.is-active{color:#fff}
.vg-menu-toggle{display:none;width:36px;height:36px;border:0;background:transparent;padding:0;place-items:center;cursor:pointer;color:#fff}
.vg-menu-toggle span{display:block;width:19px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.vg-menu-toggle span+span{margin-top:5px}
.vg-header.is-menu-open .vg-menu-toggle span:first-child{transform:translateY(3.25px) rotate(45deg)}
.vg-header.is-menu-open .vg-menu-toggle span:last-child{transform:translateY(-3.25px) rotate(-45deg)}
.vg-mobile-menu{background:var(--vg-teal);border-top:1px solid rgba(255,255,255,.12);box-shadow:0 24px 44px rgba(21,34,35,.18)}
.vg-mobile-menu[hidden]{display:none!important}
.vg-mobile-menu__inner{padding:18px 0 24px}
.vg-mobile-nav{display:grid}
.vg-mobile-nav a{padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.8);font:700 1rem/1.25 var(--vg-font-heading);text-decoration:none}
.vg-mobile-nav a.is-active{color:#fff}
.vg-mobile-menu__support{display:flex;flex-wrap:wrap;gap:10px 22px;padding-top:20px}
.vg-mobile-menu__support a{color:rgba(255,255,255,.72);font-size:.85rem;text-decoration:none}
html.vg-menu-lock{overflow:hidden}

.vg-footer{padding-top:64px}
.vg-footer__grid{grid-template-columns:1.35fr repeat(3,minmax(0,1fr));gap:clamp(32px,4vw,58px)}
.vg-footer__brand p{max-width:280px;line-height:1.7}
.vg-footer h3{margin:0 0 18px}
.vg-footer h4{margin:2px 0 16px;font-size:.76rem;letter-spacing:.12em}
.vg-footer ul{gap:9px}
.vg-footer a{text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.25);transition:color .18s ease,text-decoration-color .18s ease}
.vg-footer a:hover,.vg-footer a:focus-visible{color:#fff;text-decoration-color:rgba(255,255,255,.7)}
.vg-footer__bottom{align-items:center}
.vg-footer__contact{white-space:nowrap}

@media(max-width:980px){
  .vg-header__inner{grid-template-columns:120px minmax(0,1fr) auto;gap:18px}
  .vg-nav{gap:14px}
  .vg-nav a{font-size:.82rem}
  .vg-footer__grid{grid-template-columns:1.2fr repeat(3,1fr);gap:28px}
}
@media(max-width:720px){
  .vg-header__inner{grid-template-columns:1fr auto;gap:14px}
  .vg-header__icons{gap:8px}
  .vg-menu-toggle{display:grid}
  .vg-footer{padding:48px 0 26px}
  .vg-footer__grid{grid-template-columns:1fr 1fr;gap:30px 24px}
  .vg-footer__brand{grid-column:1/-1}
  .vg-footer__brand p{max-width:440px}
  .vg-footer__bottom{margin-top:32px;gap:12px}
  .vg-footer__contact{white-space:normal}
}
@media(max-width:480px){
  .vg-footer__grid{grid-template-columns:1fr}
  .vg-footer__brand{grid-column:auto}
}

/* =========================================================
   v122 — značka v headeru/footeru, výraznější utility ikony,
   inline hledání a přepínač CZK/EUR
   ========================================================= */
.vg-brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  text-decoration:none;
  color:#fff;
}
.vg-brand__symbol{
  width:31px;
  height:auto;
  display:block;
  flex:0 0 auto;
}
.vg-brand span{
  color:#fff;
  font-family:var(--vg-font-heading);
  font-size:1rem;
  font-weight:700;
  letter-spacing:.035em;
}
.vg-header__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
}
.vg-header__icons{gap:6px}
.vg-icon-link{
  width:38px;
  height:38px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:rgba(255,255,255,.94);
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.vg-icon-link:hover,.vg-icon-link:focus-visible,.vg-icon-link[aria-expanded="true"]{
  background:rgba(255,255,255,.11);
  color:#fff;
}
.vg-icon-link:active{transform:translateY(1px)}
.vg-icon-link svg{
  width:21px;
  height:21px;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.vg-cart-link{position:relative}
.vg-cart-count{
  position:absolute;
  right:0;
  top:0;
  min-width:16px;
  height:16px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border:2px solid var(--vg-teal);
  border-radius:999px;
  background:#fff;
  color:var(--vg-teal-dark);
  font:700 9px/1 var(--vg-font-body);
}
.vg-cart-count.is-empty{display:none}

.vg-currency-switch{
  display:inline-flex;
  align-items:center;
  padding:3px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.055);
}
.vg-currency-switch__item{
  min-width:42px;
  padding:7px 10px;
  border-radius:999px;
  color:rgba(255,255,255,.68);
  font:700 .72rem/1 var(--vg-font-heading);
  letter-spacing:.025em;
  text-align:center;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease;
}
.vg-currency-switch__item:hover,.vg-currency-switch__item:focus-visible{color:#fff}
.vg-currency-switch__item.is-active{
  background:#fff;
  color:var(--vg-teal-dark);
}
.vg-currency-switch--mobile{display:none}

.vg-header-search{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  z-index:90;
  background:var(--vg-teal);
  border-top:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 42px rgba(16,31,33,.18);
}
.vg-header-search[hidden]{display:none!important}
.vg-header-search__inner{padding:14px 0 18px}
.vg-header-search__form{
  min-height:56px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:6px 8px 6px 18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 28px rgba(21,34,35,.11);
}
.vg-header-search__form>svg{
  width:22px;
  height:22px;
  stroke:var(--vg-teal);
  stroke-width:1.8;
  stroke-linecap:round;
}
.vg-header-search__form input{
  width:100%;
  min-width:0;
  padding:10px 0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--vg-ink);
  font:500 1rem/1.3 var(--vg-font-body);
}
.vg-header-search__form input::placeholder{color:#8a9090}
.vg-header-search__submit{
  min-height:42px;
  padding:0 18px;
  border:0;
  border-radius:12px;
  background:var(--vg-teal-dark);
  color:#fff;
  font:700 .82rem/1 var(--vg-font-heading);
  cursor:pointer;
}
.vg-header-search__close{
  width:42px;
  height:42px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:#697273;
  font:400 26px/1 var(--vg-font-body);
  cursor:pointer;
}
.vg-header-search__close:hover,.vg-header-search__close:focus-visible{background:#f1f1ee;color:var(--vg-ink)}

.vg-mobile-menu__currency{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 2px 0;
}
.vg-mobile-menu__currency>span{
  color:rgba(255,255,255,.62);
  font:700 .72rem/1 var(--vg-font-heading);
  letter-spacing:.11em;
  text-transform:uppercase;
}

.vg-footer__logo{
  display:inline-flex;
  align-items:center;
  gap:13px;
  margin:0 0 18px;
  text-decoration:none!important;
}
.vg-footer__logo img{
  width:43px;
  height:auto;
  display:block;
}
.vg-footer__logo span{
  color:#fff;
  font:700 1.65rem/1 var(--vg-font-heading);
  letter-spacing:.025em;
}
.vg-footer__brand h3{display:none}

@media(max-width:1120px){
  .vg-header__inner{grid-template-columns:126px minmax(0,1fr) auto}
  .vg-nav{gap:12px}
  .vg-nav a{font-size:.78rem}
  .vg-currency-switch__item{min-width:38px;padding:7px 8px}
  .vg-header__actions{gap:8px}
}
@media(max-width:720px){
  .vg-brand__symbol{width:29px}
  .vg-brand span{font-size:.95rem}
  .vg-header__actions{gap:4px}
  .vg-header__icons{gap:2px}
  .vg-icon-link{width:36px;height:36px;border-radius:10px}
  .vg-icon-link svg{width:20px;height:20px}
  .vg-currency-switch--mobile{display:inline-flex}
  .vg-header-search__inner{padding:10px 0 14px}
  .vg-header-search__form{grid-template-columns:auto minmax(0,1fr) auto;padding-left:14px;gap:8px;border-radius:15px}
  .vg-header-search__submit{display:none}
  .vg-header-search__close{width:38px;height:38px}
  .vg-header-search__form input{font-size:.94rem}
  .vg-footer__logo img{width:39px}
  .vg-footer__logo span{font-size:1.5rem}
}
@media(max-width:420px){
  .vg-brand span{display:none}
  .vg-brand__symbol{width:34px}
}

/* =========================================================
   v124 — skutečné vyhledávání v headeru + stránka výsledků
   ========================================================= */
.vg-header-search__inner{position:relative}
.vg-live-search{position:absolute;z-index:60;top:calc(100% - 8px);left:0;right:0;max-height:min(62vh,620px);overflow:auto;border:1px solid var(--vg-border);border-radius:0 0 20px 20px;background:#fff;box-shadow:0 24px 50px rgba(20,39,40,.16)}
.vg-live-search[hidden]{display:none!important}
.vg-live-search__group{padding:12px 14px 8px}
.vg-live-search__group+.vg-live-search__group{border-top:1px solid var(--vg-border)}
.vg-live-search__label{padding:5px 8px 8px;color:#657572;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.vg-live-search__item{display:flex;min-height:58px;align-items:center;gap:12px;padding:9px 10px;border-radius:12px;color:var(--vg-ink);text-decoration:none;transition:background .16s ease}
.vg-live-search__item:hover,.vg-live-search__item:focus-visible{background:#f4f5f2;outline:0}
.vg-live-search__media{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;overflow:hidden;border-radius:10px;background:#f3f1ec}
.vg-live-search__media img{width:100%;height:100%;object-fit:cover}
.vg-live-search__copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.vg-live-search__copy strong{overflow:hidden;font-size:.91rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.vg-live-search__copy small{color:#79817e;font-size:.73rem}
.vg-live-search__price{margin-left:auto;font-size:.84rem;font-weight:800;white-space:nowrap}
.vg-live-search__price del{opacity:.45;margin-right:5px}.vg-live-search__price ins{text-decoration:none}
.vg-live-search__arrow{color:#60736d;font-weight:800}
.vg-live-search__all{display:block;padding:14px 22px 16px;border-top:1px solid var(--vg-border);color:var(--vg-deep);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-live-search__all:hover{text-decoration:underline}
.vg-live-search__loading,.vg-live-search__empty{padding:22px;color:#707975;font-size:.84rem}

.vg-search-page{padding:64px 0 100px;background:var(--vg-bg)}
.vg-search-page__hero{max-width:880px;margin-bottom:44px}
.vg-search-page__hero h1{margin:8px 0 14px;font-size:clamp(2.35rem,5vw,4.6rem);line-height:.98;letter-spacing:-.045em}
.vg-search-page__hero>p:last-child{color:var(--vg-muted);font-size:1.06rem}
.vg-search-page__section{margin-top:52px}
.vg-search-page__section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px;border-bottom:1px solid var(--vg-border);padding-bottom:12px}
.vg-search-page__section-head h2{margin:0;font-size:1.65rem}.vg-search-page__section-head span{color:var(--vg-muted);font-weight:800}
.vg-search-page__products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.vg-search-product{overflow:hidden;border:1px solid var(--vg-border);border-radius:22px;background:#fff}
.vg-search-product__media{display:block;aspect-ratio:4/3;overflow:hidden;background:#f4f0e7}
.vg-search-product__media img{width:100%;height:100%;object-fit:cover}
.vg-search-product__body{padding:20px}.vg-search-product__body h3{margin:5px 0 12px;font-size:1.35rem}.vg-search-product__body h3 a{color:var(--vg-ink);text-decoration:none}
.vg-search-product__price{margin-bottom:16px;font-size:1.08rem;font-weight:800}.vg-search-product__price ins{text-decoration:none}.vg-search-product__price del{opacity:.45;margin-right:7px}
.vg-search-product__link{color:var(--vg-deep);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-search-page__articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vg-search-article{padding:24px;border:1px solid var(--vg-border);border-radius:20px;background:#fff}
.vg-search-article h3{margin:8px 0 10px;font-size:1.28rem;line-height:1.16}.vg-search-article h3 a{color:var(--vg-ink);text-decoration:none}.vg-search-article>p:not(.vg-kicker){color:var(--vg-muted);line-height:1.6}.vg-search-article>a{color:var(--vg-deep);font-size:.82rem;font-weight:800;text-decoration:none}
.vg-search-page__empty{padding:42px;border:1px solid var(--vg-border);border-radius:24px;background:#fff}
@media(max-width:980px){.vg-search-page__products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.vg-live-search{left:0;right:0;top:100%;border-radius:0 0 16px 16px}.vg-live-search__price{font-size:.75rem}.vg-search-page{padding:38px 0 70px}.vg-search-page__products,.vg-search-page__articles{grid-template-columns:1fr}.vg-search-page__hero{margin-bottom:30px}}

/* =========================================================
   v127 — O VIGRES
   ========================================================= */
.vg-about-page{padding:0 0 100px;background:var(--vg-bg)}
.vg-about-page .vg-kicker{margin:0 0 14px;color:#637671;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.vg-about-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.82fr);gap:58px;align-items:center;padding:72px 0 82px}
.vg-about-hero__copy h1{max-width:780px;margin:0 0 24px;font-size:clamp(3rem,5.5vw,5.8rem);line-height:.94;letter-spacing:-.055em}
.vg-about-hero__lead{max-width:720px;margin:0;color:#596363;font-size:1.12rem;line-height:1.72}
.vg-about-hero__proof{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px;color:var(--vg-teal);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.vg-about-hero__proof i{color:#a7aeaa;font-style:normal}
.vg-about-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.vg-about-btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-ink);font-size:.85rem;font-weight:800;text-decoration:none;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.vg-about-btn:hover{transform:translateY(-1px);border-color:#bfc8c4}
.vg-about-btn.is-primary{border-color:var(--vg-teal);background:var(--vg-teal);color:#fff}
.vg-about-hero__media{position:relative;overflow:hidden;min-height:610px;border-radius:34px;background:#dde5db;box-shadow:var(--vg-shadow)}
.vg-about-hero__media:after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(180deg,transparent,rgba(25,39,39,.18));pointer-events:none}
.vg-about-hero__media img{width:100%;height:100%;min-height:610px;object-fit:cover;object-position:50% 50%}

.vg-about-manifesto{margin:0 0 28px;padding:70px;border-radius:34px;background:var(--vg-teal-dark);color:#fff}
.vg-about-manifesto .vg-kicker{color:#b9c8c5}.vg-about-manifesto h2{max-width:850px;margin:0 0 22px;color:#fff;font-size:clamp(2.2rem,4vw,4.4rem);line-height:1;letter-spacing:-.045em}
.vg-about-manifesto>p:not(.vg-kicker){max-width:760px;margin:0;color:rgba(255,255,255,.74);font-size:1.06rem;line-height:1.7}
.vg-about-manifesto__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:54px;background:rgba(255,255,255,.16)}
.vg-about-manifesto__grid article{padding:30px;background:var(--vg-teal-dark)}
.vg-about-manifesto__grid span{color:#a9bbb6;font-size:.72rem;font-weight:800;letter-spacing:.12em}.vg-about-manifesto__grid h3{margin:18px 0 10px;color:#fff;font-size:1.25rem}.vg-about-manifesto__grid p{margin:0;color:rgba(255,255,255,.66);font-size:.92rem;line-height:1.65}

.vg-about-split{display:grid;grid-template-columns:160px minmax(0,1fr);gap:42px;padding:92px 0;border-bottom:1px solid var(--vg-border)}
.vg-about-split__label{padding-top:5px}.vg-about-split__label span{display:block;color:#a5aaa7;font-size:.72rem;font-weight:800}.vg-about-split__label p{margin:8px 0 0;color:var(--vg-teal);font-size:.72rem;font-weight:800;letter-spacing:.14em}
.vg-about-split__content{max-width:900px}.vg-about-split h2{max-width:760px;margin:0 0 24px;font-size:clamp(2.35rem,4.4vw,4.7rem);line-height:.98;letter-spacing:-.048em}
.vg-about-bigcopy{max-width:800px;margin:0;color:#586261;font-size:1.12rem;line-height:1.72}
.vg-about-lines{margin-top:42px;border-top:1px solid var(--vg-border)}
.vg-about-lines>div{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1fr);gap:28px;padding:19px 0;border-bottom:1px solid var(--vg-border)}
.vg-about-lines strong{font-family:var(--vg-font-heading);font-size:1rem}.vg-about-lines span{color:#6d7473}
.vg-about-quote{max-width:780px;margin-top:40px;padding:28px 32px;border-left:3px solid var(--vg-teal);background:#f1f0eb;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:1.45rem;font-weight:700;line-height:1.35}

.vg-about-system{padding:92px 0}.vg-about-system>header{max-width:820px}.vg-about-system h2{margin:0 0 18px;font-size:clamp(2.4rem,4vw,4.4rem);line-height:1;letter-spacing:-.045em}.vg-about-system>header>p:last-child{max-width:720px;color:#65706e;font-size:1.04rem}
.vg-about-system__steps{list-style:none;margin:48px 0 28px;padding:0;border-top:1px solid var(--vg-border)}
.vg-about-system__steps li{display:grid;grid-template-columns:70px minmax(0,1fr);gap:22px;padding:27px 0;border-bottom:1px solid var(--vg-border)}
.vg-about-system__steps li>span{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:#e9eeeb;color:var(--vg-teal);font-weight:800}.vg-about-system__steps strong{font-family:var(--vg-font-heading);font-size:1.25rem}.vg-about-system__steps p{max-width:780px;margin:5px 0 0;color:#697371}
.vg-about-textlink{display:inline-flex;align-items:center;gap:8px;color:var(--vg-teal);font-weight:800;text-decoration:none}.vg-about-textlink:hover{text-decoration:underline}

.vg-about-perspectives{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;padding:70px;border:1px solid var(--vg-border);border-radius:34px;background:#fff}
.vg-about-perspectives__intro h2{margin:0;font-size:clamp(2rem,3.2vw,3.5rem);line-height:1.05;letter-spacing:-.04em}.vg-about-perspectives__cards{display:grid;gap:14px}
.vg-about-perspectives__cards article{padding:28px;border-radius:22px;background:#f5f4f0}.vg-about-perspectives__cards span{color:#667a74;font-size:.68rem;font-weight:800;letter-spacing:.13em}.vg-about-perspectives__cards h3{margin:10px 0 8px;font-size:1.3rem}.vg-about-perspectives__cards p{margin:0;color:#626b69;font-size:.92rem}

.vg-about-values{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding:100px 0}.vg-about-values__copy h2{margin:0;font-size:clamp(2.2rem,3.7vw,4rem);line-height:1.02;letter-spacing:-.045em}.vg-about-values__list{border-top:1px solid var(--vg-border)}
.vg-about-values__list>div{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:1px solid var(--vg-border)}.vg-about-values__list span{color:#98a29f;font-size:.72rem;font-weight:800}.vg-about-values__list p{margin:0;color:#666f6e}.vg-about-values__list strong{color:var(--vg-ink)}

.vg-about-final{display:flex;align-items:end;justify-content:space-between;gap:36px;padding:64px;border-radius:34px;background:var(--vg-teal);color:#fff}.vg-about-final .vg-kicker{color:#bdceca}.vg-about-final h2{margin:0 0 14px;color:#fff;font-size:clamp(2.5rem,4.3vw,4.8rem);line-height:.98;letter-spacing:-.045em}.vg-about-final p:not(.vg-kicker){margin:0;color:rgba(255,255,255,.7)}.vg-about-final__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.vg-about-btn.is-light{border-color:#fff;background:#fff;color:var(--vg-teal-dark)}.vg-about-btn.is-outline-light{border-color:rgba(255,255,255,.4);background:transparent;color:#fff}

@media(max-width:980px){
  .vg-about-hero{grid-template-columns:1fr;gap:38px;padding:54px 0 64px}.vg-about-hero__media{min-height:560px}.vg-about-hero__media img{min-height:560px;object-position:50% 42%}
  .vg-about-manifesto{padding:48px}.vg-about-manifesto__grid{grid-template-columns:1fr}
  .vg-about-split{grid-template-columns:100px minmax(0,1fr);gap:28px;padding:70px 0}
  .vg-about-perspectives,.vg-about-values{grid-template-columns:1fr;gap:38px}.vg-about-perspectives{padding:48px}.vg-about-values{padding:76px 0}
  .vg-about-final{align-items:flex-start;flex-direction:column}.vg-about-final__actions{justify-content:flex-start}
}
@media(max-width:720px){
  .vg-about-page{padding-bottom:64px}.vg-about-hero{padding:38px 0 48px}.vg-about-hero__copy h1{font-size:clamp(2.75rem,13vw,4rem)}.vg-about-hero__lead{font-size:1rem}.vg-about-actions{flex-direction:column}.vg-about-btn{width:100%}
  .vg-about-hero__media{min-height:440px;border-radius:24px}.vg-about-hero__media img{min-height:440px;object-position:50% 42%}
  .vg-about-manifesto{padding:34px 24px;border-radius:24px}.vg-about-manifesto__grid{margin-top:34px}.vg-about-manifesto__grid article{padding:24px 0}
  .vg-about-split{grid-template-columns:1fr;gap:12px;padding:58px 0}.vg-about-split__label{display:flex;gap:10px;align-items:center}.vg-about-split__label p{margin:0}.vg-about-lines>div{grid-template-columns:1fr;gap:4px}.vg-about-quote{padding:22px;font-size:1.2rem}
  .vg-about-system{padding:58px 0}.vg-about-system__steps li{grid-template-columns:52px minmax(0,1fr)}
  .vg-about-perspectives{padding:30px 22px;border-radius:24px}.vg-about-values{padding:62px 0}.vg-about-values__list>div{grid-template-columns:34px minmax(0,1fr)}
  .vg-about-final{padding:36px 24px;border-radius:24px}.vg-about-final__actions{width:100%;flex-direction:column}
}

/* =========================================================
   VIGRES v127 — O VIGRES: vzduch, vizuální pauzy, silnější CTA
   ========================================================= */
@media (min-width:1100px){
  .vg-about-hero{grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr);gap:54px}
  .vg-about-hero__media{min-height:650px}
  .vg-about-hero__media img{min-height:650px}
}
.vg-about-lines--cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:40px;border-top:0}
.vg-about-lines--cards>div{display:flex;min-height:176px;flex-direction:column;gap:9px;padding:24px;border:1px solid var(--vg-border);border-radius:20px;background:#fff}
.vg-about-lines--cards>div strong{font-size:1.08rem;line-height:1.25}
.vg-about-lines--cards>div>span:last-child{color:#687270;line-height:1.55}
.vg-about-lines__no{color:#8aa09a!important;font-size:.68rem!important;font-weight:800;letter-spacing:.12em}
.vg-about-honey-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(300px,.72fr);gap:54px;align-items:center}
.vg-about-honey-visual{margin:0;overflow:hidden;border-radius:28px;background:#f1ece1;box-shadow:var(--vg-shadow)}
.vg-about-honey-visual img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.vg-about-honey-visual figcaption{padding:16px 18px 18px;color:#6a7371;font-size:.82rem;line-height:1.5}
.vg-about-split--honey .vg-about-split__content{max-width:none}
.vg-about-split--honey .vg-about-bigcopy strong{color:var(--vg-ink)}
.vg-about-system__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:40px;border-top:0}
.vg-about-system__steps li{display:flex;min-height:210px;flex-direction:column;gap:18px;padding:26px;border:1px solid var(--vg-border);border-radius:20px;background:#fff}
.vg-about-system__steps li>span{width:38px;height:38px;flex:0 0 38px}
.vg-about-system__steps strong{font-size:1.18rem}
.vg-about-system__steps p{margin-top:8px;line-height:1.6}
.vg-about-system__steps p b{color:var(--vg-ink)}
.vg-about-final__actions .vg-about-btn{min-width:164px}
@media (max-width:900px){
  .vg-about-lines--cards{grid-template-columns:1fr}
  .vg-about-lines--cards>div{min-height:0}
  .vg-about-honey-grid{grid-template-columns:1fr;gap:32px}
  .vg-about-honey-visual{max-width:620px}
  .vg-about-system__steps{grid-template-columns:1fr}
  .vg-about-system__steps li{min-height:0}
}
@media (max-width:640px){
  .vg-about-honey-visual{border-radius:22px}
  .vg-about-lines--cards>div,.vg-about-system__steps li{padding:22px}
}

/* ==========================================================
   V128 — HOMEPAGE / APPLE-QUALITY SALES JOURNEY
   ========================================================== */
.vghp128{background:var(--vg-bg);color:var(--vg-ink);overflow:hidden}
.vghp128 *{box-sizing:border-box}
.vghp128 em{font-style:normal;color:var(--vg-teal)}
.vghp128-kicker{margin:0 0 18px;color:#6d7d79;font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.vghp128-kicker--light{color:rgba(255,255,255,.58)}
.vghp128-btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 20px;border:1px solid transparent;border-radius:999px;font-weight:850;text-decoration:none;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}
.vghp128-btn:hover{transform:translateY(-2px)}
.vghp128-btn--primary{background:var(--vg-teal);color:#fff;box-shadow:0 12px 24px rgba(49,72,75,.16)}
.vghp128-btn--ghost{border-color:var(--vg-border);background:#fff;color:var(--vg-ink)}
.vghp128-btn--light{background:#fff;color:var(--vg-teal-dark)}
.vghp128-btn--outline-light{border-color:rgba(255,255,255,.25);color:#fff}
.vghp128-textlink{display:inline-block;color:var(--vg-teal);font-size:.86rem;font-weight:850;text-decoration:none}
.vghp128-section{padding:96px 0}

.vghp128-hero{padding:54px 0 76px;background:linear-gradient(180deg,#f6f4ef 0%,var(--vg-bg) 100%)}
.vghp128-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);gap:24px;align-items:stretch}
.vghp128-hero__copy{display:flex;min-height:620px;flex-direction:column;justify-content:center;padding:66px 64px;border:1px solid rgba(49,72,75,.08);border-radius:34px;background:rgba(255,255,255,.92);box-shadow:0 24px 70px rgba(28,29,31,.055)}
.vghp128-hero h1{max-width:760px;margin:0 0 26px;font:700 clamp(3.65rem,5.5vw,6.1rem)/.9 var(--vg-font-heading);letter-spacing:-.06em}
.vghp128-lead{max-width:680px;margin:0;color:#60696a;font-size:1.05rem;line-height:1.78}
.vghp128-lead strong{color:var(--vg-ink)}
.vghp128-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.vghp128-proofline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:34px;padding-top:24px;border-top:1px solid var(--vg-border);color:#73797a;font-size:.75rem;font-weight:700}
.vghp128-proofline b{margin-right:4px;color:var(--vg-teal);font-size:1rem}
.vghp128-proofline i{width:3px;height:3px;border-radius:50%;background:#c6c8c4}
.vghp128-hero__visual{position:relative;overflow:hidden;min-height:620px;border-radius:34px;background:#efe8db;box-shadow:0 24px 70px rgba(28,29,31,.06)}
.vghp128-hero__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(17,29,28,.14) 100%);pointer-events:none}
.vghp128-hero__visual>img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.vghp128-hero__note{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(255,255,255,.84);backdrop-filter:blur(14px);box-shadow:0 12px 26px rgba(30,35,32,.1);font-size:.72rem}
.vghp128-hero__note span{color:#80908b;font-size:.62rem;font-weight:900;letter-spacing:.1em}
.vghp128-hero__note strong{font-size:.76rem}
.vghp128-hero__note--one{left:24px;top:24px}
.vghp128-hero__note--two{right:24px;bottom:24px}

.vghp128-statement{padding:0 0 94px}
.vghp128-statement__inner{padding:72px 70px;border-radius:34px;background:linear-gradient(145deg,#263a3d,#314b4e);color:#fff;box-shadow:0 22px 56px rgba(31,52,54,.12)}
.vghp128-statement h2{max-width:930px;margin:0;font:700 clamp(2.9rem,5.2vw,5.2rem)/.94 var(--vg-font-heading);letter-spacing:-.052em;color:#fff}
.vghp128-statement h2 em{color:#c8d8d1}
.vghp128-statement__inner>p:not(.vghp128-kicker){max-width:830px;margin:28px 0 0;color:rgba(255,255,255,.72);font-size:1rem;line-height:1.78}
.vghp128-statement__principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:54px;border-top:1px solid rgba(255,255,255,.12)}
.vghp128-statement__principles article{padding:28px 30px 0 0}
.vghp128-statement__principles article+article{padding-left:30px;border-left:1px solid rgba(255,255,255,.12)}
.vghp128-statement__principles span{display:block;margin-bottom:18px;color:rgba(255,255,255,.35);font-size:.63rem;font-weight:900;letter-spacing:.14em}
.vghp128-statement__principles strong{display:block;color:#fff;font-size:1rem}
.vghp128-statement__principles p{margin:10px 0 0;color:rgba(255,255,255,.58);font-size:.79rem;line-height:1.65}

.vghp128-sectionhead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.72fr);gap:80px;align-items:end;margin-bottom:44px}
.vghp128-sectionhead h2,.vghp128-formula h2,.vghp128-honey h2,.vghp128-system__top h2,.vghp128-bridge h2{margin:0;font:700 clamp(2.8rem,4.6vw,4.65rem)/.94 var(--vg-font-heading);letter-spacing:-.05em}
.vghp128-sectionhead>p{margin:0;color:var(--vg-text);line-height:1.75}
.vghp128-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.vghp128-path{display:flex;min-height:310px;flex-direction:column;justify-content:space-between;padding:30px;border:1px solid var(--vg-border);border-radius:28px;background:#fff;color:var(--vg-ink);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.vghp128-path:hover{transform:translateY(-5px);border-color:rgba(49,72,75,.2);box-shadow:0 18px 38px rgba(28,29,31,.07)}
.vghp128-path--dark{border-color:transparent;background:var(--vg-teal-dark);color:#fff}
.vghp128-path__index{color:#9ba09e;font-size:.66rem;font-weight:900;letter-spacing:.12em}
.vghp128-path small{color:#788581;font-size:.63rem;font-weight:900;letter-spacing:.14em}
.vghp128-path--dark small,.vghp128-path--dark .vghp128-path__index{color:rgba(255,255,255,.46)}
.vghp128-path h3{margin:8px 0 12px;font:700 2rem/1.02 var(--vg-font-heading);letter-spacing:-.03em;color:inherit}
.vghp128-path p{margin:0;color:#727879;font-size:.85rem;line-height:1.65}
.vghp128-path--dark p{color:rgba(255,255,255,.63)}
.vghp128-path b{font-size:.78rem;color:var(--vg-teal)}
.vghp128-path--dark b{color:#fff}

.vghp128-formula{padding-top:72px;border-top:1px solid var(--vg-border)}
.vghp128-formula__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:78px;align-items:center}
.vghp128-formula__copy>p:not(.vghp128-kicker){max-width:590px;margin:22px 0 26px;color:var(--vg-text);line-height:1.75}
.vghp128-formula__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vghp128-formula__cards article{min-height:230px;padding:28px 24px;border:1px solid var(--vg-border);border-radius:24px;background:#fff}
.vghp128-formula__cards span{display:block;margin-bottom:48px;color:#a6aba8;font-size:.62rem;font-weight:900;letter-spacing:.14em}
.vghp128-formula__cards strong{display:block;font-size:1rem}
.vghp128-formula__cards p{margin:10px 0 0;color:#777d7d;font-size:.78rem;line-height:1.6}

.vghp128-honey__grid{display:grid;grid-template-columns:minmax(400px,.82fr) minmax(0,1.18fr);gap:78px;align-items:center}
.vghp128-honey__visual{position:relative;overflow:hidden;min-height:590px;margin:0;border-radius:30px;background:#e8dfce}
.vghp128-honey__visual img{width:100%;height:100%;object-fit:cover;display:block}
.vghp128-honey__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(26,30,28,.48));pointer-events:none}
.vghp128-honey__visual figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}
.vghp128-honey__visual figcaption span{display:block;margin-bottom:7px;font-size:.62rem;font-weight:900;letter-spacing:.16em;opacity:.65}
.vghp128-honey__visual figcaption strong{font:700 1.65rem/1.05 var(--vg-font-heading)}
.vghp128-honey__copy>p:not(.vghp128-kicker){max-width:650px;margin:24px 0;color:var(--vg-text);line-height:1.78}
.vghp128-honey blockquote{max-width:620px;margin:30px 0 26px;padding:22px 24px;border-left:2px solid var(--vg-teal);background:#efeee9;color:#33383a;font-weight:800;line-height:1.55}

.vghp128-system{background:#f0efeb}
.vghp128-system__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.65fr);gap:72px;align-items:end;margin-bottom:44px}
.vghp128-system__top>p{margin:0;color:var(--vg-text);line-height:1.75}
.vghp128-system__card{display:grid;grid-template-columns:minmax(420px,.92fr) minmax(0,1.08fr);overflow:hidden;border:1px solid rgba(49,72,75,.08);border-radius:34px;background:#fff;box-shadow:0 22px 52px rgba(28,29,31,.05)}
.vghp128-system__image{min-height:570px;background:#ede5d8}
.vghp128-system__image img{width:100%;height:100%;object-fit:cover;display:block}
.vghp128-system__content{display:flex;flex-direction:column;justify-content:center;padding:58px 62px}
.vghp128-system__label{margin-bottom:16px;color:#71817c;font-size:.67rem;font-weight:900;letter-spacing:.15em}
.vghp128-system__content h3{max-width:520px;margin:0 0 30px;font:700 clamp(2.4rem,4vw,4rem)/.96 var(--vg-font-heading);letter-spacing:-.045em}
.vghp128-system__timeline{display:grid;gap:0;border-top:1px solid var(--vg-border)}
.vghp128-system__timeline>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:22px 0;border-bottom:1px solid var(--vg-border)}
.vghp128-system__timeline b{color:#90a09a;font-size:.65rem;letter-spacing:.1em}
.vghp128-system__timeline strong,.vghp128-system__timeline small{display:block}
.vghp128-system__timeline strong{font-size:.95rem}
.vghp128-system__timeline small{margin-top:5px;color:#777e7e;font-size:.78rem;line-height:1.5}
.vghp128-system__links{display:flex;gap:22px;margin-top:24px}.vghp128-system__links a{color:var(--vg-teal);font-size:.8rem;font-weight:850;text-decoration:none}
.vghp128-system__prices{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px;color:#777d7d;font-size:.75rem}.vghp128-system__prices .price{color:var(--vg-ink);font-weight:850}

.vghp128-clock{background:var(--vg-teal-dark);color:#fff}
.vghp128-clock__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.86fr);gap:70px;align-items:center}
.vghp128-clock__copy h2{margin:0;color:#fff;font:700 clamp(3rem,5vw,5rem)/.94 var(--vg-font-heading);letter-spacing:-.055em}.vghp128-clock__copy h2 em{color:#c6d8d0}
.vghp128-clock__copy>p:not(.vghp128-kicker){max-width:660px;margin:24px 0 30px;color:rgba(255,255,255,.67);line-height:1.76}
.vghp128-clock__dial{position:relative;width:min(480px,100%);aspect-ratio:1;margin-left:auto;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.07) 0 24%,transparent 25%),repeating-radial-gradient(circle,transparent 0 33%,rgba(255,255,255,.08) 33.2% 33.5%,transparent 33.7% 50%)}
.vghp128-clock__dial:before,.vghp128-clock__dial:after{content:"";position:absolute;background:rgba(255,255,255,.1)}.vghp128-clock__dial:before{left:50%;top:7%;bottom:7%;width:1px}.vghp128-clock__dial:after{top:50%;left:7%;right:7%;height:1px}
.vghp128-clock__core{position:absolute;z-index:2;left:50%;top:50%;display:grid;width:150px;aspect-ratio:1;place-content:center;transform:translate(-50%,-50%);border-radius:50%;background:#fff;color:var(--vg-teal-dark);text-align:center}.vghp128-clock__core span{font-size:.62rem;font-weight:900;letter-spacing:.14em;color:#89928f}.vghp128-clock__core strong{margin-top:7px;font:700 1.55rem/1.02 var(--vg-font-heading)}
.vghp128-clock__tag{position:absolute;z-index:2;padding:8px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.08);font-size:.67rem;font-weight:800;backdrop-filter:blur(8px)}
.vghp128-clock__tag--1{left:44%;top:4%}.vghp128-clock__tag--2{right:3%;top:25%}.vghp128-clock__tag--3{right:2%;bottom:27%}.vghp128-clock__tag--4{left:43%;bottom:4%}.vghp128-clock__tag--5{left:2%;bottom:27%}.vghp128-clock__tag--6{left:3%;top:25%}

.vghp128-bridge__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);gap:80px;align-items:center}
.vghp128-bridge__cards{display:grid;gap:12px}
.vghp128-bridge__cards article{padding:28px 30px;border:1px solid var(--vg-border);border-radius:24px;background:#f0efeb}
.vghp128-bridge__cards small{display:block;margin-bottom:10px;color:#8a918e;font-size:.6rem;font-weight:900;letter-spacing:.15em}.vghp128-bridge__cards strong{display:block;font-size:1.02rem}.vghp128-bridge__cards p{margin:10px 0 0;color:#737a7a;font-size:.8rem;line-height:1.65}

.vghp128-editorial{padding-top:80px;border-top:1px solid var(--vg-border)}
.vghp128-editorial__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.vghp128-article{overflow:hidden;border:1px solid var(--vg-border);border-radius:26px;background:#fff;color:var(--vg-ink);text-decoration:none;transition:transform .24s ease,box-shadow .24s ease}.vghp128-article:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(28,29,31,.07)}
.vghp128-article__image{aspect-ratio:16/9;overflow:hidden;background:#ecebe6}.vghp128-article__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.vghp128-article:hover .vghp128-article__image img{transform:scale(1.025)}
.vghp128-article__body{padding:24px}.vghp128-article__body span{color:#8a918f;font-size:.6rem;font-weight:900;letter-spacing:.12em}.vghp128-article__body h3{margin:12px 0 10px;font:700 1.45rem/1.08 var(--vg-font-heading);letter-spacing:-.025em}.vghp128-article__body p{margin:0 0 20px;color:#777d7d;font-size:.8rem;line-height:1.6}.vghp128-article__body b{color:var(--vg-teal);font-size:.75rem}.vghp128-editorial__all{margin-top:24px}

.vghp128-final{padding:28px 0 90px}.vghp128-final__inner{display:grid;grid-template-columns:minmax(0,1.15fr) auto;gap:40px;align-items:end;padding:62px 64px;border-radius:34px;background:linear-gradient(135deg,#2a4144,#385255);color:#fff;box-shadow:0 22px 56px rgba(31,52,54,.12)}
.vghp128-final h2{margin:0;color:#fff;font:700 clamp(3rem,5vw,5rem)/.92 var(--vg-font-heading);letter-spacing:-.055em}.vghp128-final h2 em{color:#c6d7d0}.vghp128-final p:not(.vghp128-kicker){max-width:650px;margin:22px 0 0;color:rgba(255,255,255,.65);line-height:1.7}.vghp128-final__actions{display:flex;gap:10px;align-items:center}

@media(max-width:1060px){
  .vghp128-hero__grid,.vghp128-formula__grid,.vghp128-honey__grid,.vghp128-system__card,.vghp128-clock__grid,.vghp128-bridge__grid{grid-template-columns:1fr}
  .vghp128-hero__copy{min-height:auto}.vghp128-hero__visual{min-height:560px}.vghp128-sectionhead,.vghp128-system__top{grid-template-columns:1fr;gap:20px}
  .vghp128-paths{grid-template-columns:1fr 1fr}.vghp128-path:first-child{grid-column:1/-1;min-height:250px}
  .vghp128-formula__cards{max-width:760px}.vghp128-honey__visual{min-height:520px}.vghp128-system__image{min-height:520px}.vghp128-clock__dial{margin:20px auto 0}.vghp128-editorial__grid{grid-template-columns:1fr 1fr}.vghp128-article:last-child{grid-column:1/-1}.vghp128-final__inner{grid-template-columns:1fr}.vghp128-final__actions{justify-self:start}
}
@media(max-width:720px){
  .vghp128-section{padding:64px 0}.vghp128-hero{padding:22px 0 48px}.vghp128-hero__grid{gap:14px}.vghp128-hero__copy{padding:38px 26px;border-radius:24px}.vghp128-hero h1{font-size:clamp(3rem,14vw,4.35rem)}.vghp128-lead{font-size:.94rem;line-height:1.68}.vghp128-actions{flex-direction:column;align-items:stretch}.vghp128-btn{width:100%}.vghp128-proofline{gap:9px}.vghp128-proofline i{display:none}.vghp128-proofline span{width:100%}.vghp128-hero__visual{min-height:420px;border-radius:24px}.vghp128-hero__note{padding:9px 11px}.vghp128-hero__note--one{left:14px;top:14px}.vghp128-hero__note--two{right:14px;bottom:14px}
  .vghp128-statement{padding-bottom:62px}.vghp128-statement__inner{padding:42px 26px;border-radius:24px}.vghp128-statement h2,.vghp128-sectionhead h2,.vghp128-formula h2,.vghp128-honey h2,.vghp128-system__top h2,.vghp128-bridge h2{font-size:clamp(2.5rem,11.5vw,3.6rem)}.vghp128-statement__principles{grid-template-columns:1fr;margin-top:38px}.vghp128-statement__principles article{padding:22px 0}.vghp128-statement__principles article+article{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}
  .vghp128-sectionhead{margin-bottom:28px}.vghp128-paths{grid-template-columns:1fr}.vghp128-path:first-child{grid-column:auto}.vghp128-path{min-height:240px;padding:25px;border-radius:22px}.vghp128-path h3{font-size:1.8rem}
  .vghp128-formula{padding-top:56px}.vghp128-formula__grid{gap:34px}.vghp128-formula__cards{grid-template-columns:1fr}.vghp128-formula__cards article{min-height:0}.vghp128-formula__cards span{margin-bottom:26px}
  .vghp128-honey__grid{gap:38px}.vghp128-honey__visual{min-height:460px;border-radius:22px}.vghp128-honey blockquote{margin-top:24px}
  .vghp128-system__top{margin-bottom:28px}.vghp128-system__card{border-radius:24px}.vghp128-system__image{min-height:360px}.vghp128-system__content{padding:36px 26px}.vghp128-system__content h3{font-size:2.5rem}.vghp128-system__links{flex-direction:column;gap:10px}
  .vghp128-clock__grid{gap:38px}.vghp128-clock__copy h2{font-size:clamp(2.7rem,12vw,3.8rem)}.vghp128-clock__dial{width:min(390px,100%)}.vghp128-clock__core{width:124px}.vghp128-clock__tag{font-size:.6rem;padding:7px 9px}
  .vghp128-bridge__grid{gap:36px}.vghp128-bridge__cards article{padding:24px 22px}.vghp128-editorial{padding-top:58px}.vghp128-editorial__grid{grid-template-columns:1fr}.vghp128-article:last-child{grid-column:auto}.vghp128-final{padding:18px 0 64px}.vghp128-final__inner{padding:42px 26px;border-radius:24px}.vghp128-final h2{font-size:clamp(2.7rem,12vw,3.9rem)}.vghp128-final__actions{width:100%;flex-direction:column}.vghp128-final__actions .vghp128-btn{width:100%}
}
\n\n/* ==========================================================\n   V130 — HOMEPAGE FINAL POLISH: VIDEO, CLICKABLE CLOCK, RHYTHM\n   ========================================================== */\n.vghp128-hero__visual:after{background:linear-gradient(180deg,transparent 72%,rgba(17,29,28,.08) 100%)}\n.vghp128-hero__note{display:none!important}\n\n.vghp129-video{background:#d8c8ad}\n.vghp129-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}\n.vghp129-video:after{background:linear-gradient(180deg,transparent 56%,rgba(21,26,24,.5) 100%)}\n.vghp129-mixpoints{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:30px 0 28px}\n.vghp129-mixpoints>span{display:flex;min-height:150px;flex-direction:column;padding:20px;border:1px solid var(--vg-border);border-radius:20px;background:#fff}\n.vghp129-mixpoints b{margin-bottom:auto;color:#9aa39f;font-size:.62rem;letter-spacing:.12em}\n.vghp129-mixpoints strong{display:block;margin-top:28px;font-size:.88rem}\n.vghp129-mixpoints small{display:block;margin-top:7px;color:#787f7d;font-size:.72rem;line-height:1.5}\n\n.vghp128-clock__grid{grid-template-columns:minmax(0,.94fr) minmax(500px,1.06fr);gap:64px}\n.vghp128-clock__dial{width:min(560px,100%)}\n.vghp128-clock__tag{color:#fff;text-decoration:none;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}\n.vghp128-clock__tag:hover,.vghp128-clock__tag:focus-visible{transform:translateY(-2px);border-color:rgba(255,255,255,.36);background:rgba(255,255,255,.16);box-shadow:0 8px 22px rgba(0,0,0,.12);outline:none}\n.vghp128-clock__tag:after{content:" ↗";opacity:.55;font-size:.72em}\n\n@media(max-width:1060px){\n  .vghp128-clock__grid{grid-template-columns:1fr}\n  .vghp128-clock__dial{width:min(520px,100%)}\n}\n@media(max-width:720px){\n  .vghp129-mixpoints{grid-template-columns:1fr}\n  .vghp129-mixpoints>span{min-height:0}\n  .vghp129-mixpoints b{margin-bottom:0}\n  .vghp129-mixpoints strong{margin-top:14px}\n  .vghp129-video{min-height:560px}\n  .vghp128-clock__dial{width:min(410px,100%)}\n}\n
/* ==========================================================
   V130 — HOMEPAGE PROCESS FILM
   ========================================================== */
.vghp130-process{padding-top:112px;padding-bottom:118px}
.vghp130-process__head{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.58fr);gap:92px;align-items:end;margin-bottom:44px}
.vghp130-process__head h2{max-width:760px;margin:0;font:700 clamp(3rem,5vw,5.1rem)/.92 var(--vg-font-heading);letter-spacing:-.055em}
.vghp130-process__head h2 em{color:var(--vg-teal);font-style:normal}
.vghp130-process__intro{padding-bottom:6px}
.vghp130-process__intro p{margin:0 0 22px;color:var(--vg-text);font-size:1rem;line-height:1.72}
.vghp130-process__visual{position:relative;overflow:hidden;aspect-ratio:16/9;margin:0;border-radius:32px;background:#d9cbb3;box-shadow:0 22px 60px rgba(30,41,39,.08)}
.vghp130-process__visual video{width:100%;height:100%;display:block;object-fit:cover}
.vghp130-process__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(17,28,26,.42) 100%);pointer-events:none}
.vghp130-process__visual figcaption{position:absolute;z-index:2;left:34px;right:34px;bottom:30px;color:#fff}
.vghp130-process__visual figcaption span{display:block;margin-bottom:7px;font-size:.62rem;font-weight:900;letter-spacing:.17em;opacity:.72}
.vghp130-process__visual figcaption strong{font:700 clamp(1.25rem,2vw,1.8rem)/1.05 var(--vg-font-heading)}
@media(max-width:960px){
  .vghp130-process__head{grid-template-columns:1fr;gap:24px;margin-bottom:34px}
  .vghp130-process__intro{max-width:720px}
}
@media(max-width:720px){
  .vghp130-process{padding-top:72px;padding-bottom:78px}
  .vghp130-process__head h2{font-size:clamp(2.55rem,11.8vw,3.55rem)}
  .vghp130-process__visual{aspect-ratio:4/3;border-radius:22px}
  .vghp130-process__visual figcaption{left:20px;right:20px;bottom:18px}
}

/* ==========================================================
   V131 — HOMEPAGE 9:16 VIDEO + USER-INITIATED PLAY + GA4
   ========================================================== */
.vghp131-process__stage{display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:clamp(48px,7vw,110px);align-items:center;max-width:1040px;margin:0 auto 34px}
.vghp131-video-card{margin:0}
.vghp131-video-wrap{position:relative;overflow:hidden;aspect-ratio:9/16;border-radius:30px;background:#d8c9ae;box-shadow:0 26px 70px rgba(30,41,39,.12)}
.vghp131-video-wrap video{display:block;width:100%;height:100%;object-fit:cover;background:#d8c9ae}
.vghp131-video-play{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:28px;border:0;background:linear-gradient(180deg,rgba(16,28,26,.04) 40%,rgba(16,28,26,.72) 100%);color:#fff;text-align:center;cursor:pointer;transition:opacity .22s ease,visibility .22s ease}
.vghp131-video-play.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.vghp131-video-play__icon{display:grid;place-items:center;width:72px;height:72px;margin-bottom:16px;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 14px 38px rgba(0,0,0,.18)}
.vghp131-video-play__icon:before{content:"";display:block;margin-left:4px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:13px solid #203c3a}
.vghp131-video-play__label b{display:block;font:700 1.08rem/1.1 var(--vg-font-heading)}
.vghp131-video-card figcaption{margin-top:16px;color:#59615e;text-align:center}
.vghp131-video-card figcaption strong{font-size:.8rem;line-height:1.45;font-weight:600}
.vghp131-process__side{max-width:570px}
.vghp131-process__eyebrow{margin:0 0 18px;color:#9aa19e;font-size:.62rem;font-weight:900;letter-spacing:.16em}
.vghp131-process__side h3{margin:0;font:700 clamp(2.7rem,4.5vw,4.8rem)/.93 var(--vg-font-heading);letter-spacing:-.055em}
.vghp131-process__side h3 em{color:var(--vg-teal);font-style:normal}
.vghp131-process__side>p:not(.vghp131-process__eyebrow){max-width:520px;margin:26px 0 0;color:#626967;font-size:.96rem;line-height:1.72}
.vghp131-process__microcopy{display:grid;gap:0;margin-top:30px;border-top:1px solid var(--vg-border)}
.vghp131-process__microcopy span{display:flex;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--vg-border);font-size:.82rem;font-weight:700}
.vghp131-process__microcopy b{color:#a0a6a3;font-size:.6rem;letter-spacing:.12em}

@media(max-width:900px){
  .vghp131-process__stage{grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:40px}
  .vghp131-process__side h3{font-size:clamp(2.5rem,6vw,3.8rem)}
}
@media(max-width:720px){
  .vghp131-process__stage{grid-template-columns:1fr;gap:34px;margin-bottom:24px}
  .vghp131-video-card{width:min(78vw,350px);margin:0 auto}
  .vghp131-video-wrap{border-radius:24px}
  .vghp131-video-play{padding:22px}
  .vghp131-video-play__icon{width:64px;height:64px}
  .vghp131-process__side{text-align:left}
  .vghp131-process__side h3{font-size:clamp(2.65rem,12vw,3.5rem)}
  .vghp130-process__head{margin-bottom:38px}
}


/* V132 — video cover polish */
.vghp131-video-play__label{display:block}
.vghp131-video-play__label b{font-size:1.04rem}
\n\n/* ==========================================================
   V134 — HOMEPAGE SYSTEM CROSSROADS
   ========================================================== */
.vghp133-system__products{
  display:grid;
  gap:0;
  margin-top:28px;
  border-top:1px solid var(--vg-border);
}
.vghp133-system__product-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  padding:18px 0;
  border-bottom:1px solid var(--vg-border);
}
.vghp133-system__product-row>span{
  color:var(--vg-ink);
  font-size:.88rem;
  font-weight:900;
  letter-spacing:.055em;
}
.vghp133-system__product-btn{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid rgba(49,72,75,.18);
  border-radius:999px;
  background:#fff;
  color:var(--vg-teal);
  font-size:.76rem;
  font-weight:850;
  text-decoration:none;
  transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.vghp133-system__product-btn:hover,
.vghp133-system__product-btn:focus-visible{
  transform:translateY(-1px);
  border-color:var(--vg-teal);
  background:var(--vg-teal);
  color:#fff;
  box-shadow:0 8px 18px rgba(49,72,75,.12);
  outline:none;
}
@media(max-width:720px){
  .vghp133-system__product-row{gap:14px;padding:15px 0}
  .vghp133-system__product-btn{min-height:40px;padding:0 15px;font-size:.72rem}
}


/* ==========================================================
   V134 — SYSTEM CARD / INLINE PRODUCT ACTIONS
   ========================================================== */
.vghp134-system__timeline{
  margin-top:2px;
}
.vghp134-system__step{
  grid-template-columns:42px minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center;
  padding:21px 0 !important;
}
.vghp134-system__step-btn{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  padding:0 19px;
  border:1px solid rgba(49,72,75,.18);
  border-radius:999px;
  background:#fff;
  color:var(--vg-teal);
  font-size:.75rem;
  font-weight:850;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}
.vghp134-system__step-btn:hover,
.vghp134-system__step-btn:focus-visible{
  transform:translateY(-1px);
  border-color:var(--vg-teal);
  background:var(--vg-teal);
  color:#fff;
  box-shadow:0 8px 18px rgba(49,72,75,.12);
  outline:none;
}
@media(max-width:720px){
  .vghp134-system__step{
    grid-template-columns:34px minmax(0,1fr) !important;
    gap:12px 14px !important;
    align-items:start;
    padding:19px 0 !important;
  }
  .vghp134-system__step-btn{
    grid-column:2;
    justify-self:start;
    min-height:40px;
    margin-top:2px;
    padding:0 16px;
    font-size:.72rem;
  }
}


/* ==========================================================
   V136 — HOMEPAGE FINAL RHYTHM / CLEAN SECTION TRANSITIONS
   ========================================================== */
/* Same-background chapters are separated by whitespace, not full-width rules. */
.vghp128-formula,
.vghp128-editorial{
  border-top:0 !important;
}

/* Final desktop rhythm: generous, but without double-padding dead zones. */
.vghp128-start{padding-top:88px;padding-bottom:76px}
.vghp128-formula{padding-top:72px;padding-bottom:86px}
.vghp130-process{padding-top:86px;padding-bottom:94px}
.vghp128-system{padding-top:90px;padding-bottom:94px}
.vghp128-clock{padding-top:94px;padding-bottom:94px}
.vghp128-bridge{padding-top:88px;padding-bottom:76px}
.vghp128-editorial{padding-top:74px;padding-bottom:84px}
.vghp128-final{padding-top:24px;padding-bottom:88px}

@media(max-width:720px){
  .vghp128-start{padding-top:62px;padding-bottom:50px}
  .vghp128-formula{padding-top:50px;padding-bottom:60px}
  .vghp130-process{padding-top:60px;padding-bottom:66px}
  .vghp128-system{padding-top:62px;padding-bottom:66px}
  .vghp128-clock{padding-top:66px;padding-bottom:66px}
  .vghp128-bridge{padding-top:60px;padding-bottom:50px}
  .vghp128-editorial{padding-top:54px;padding-bottom:62px}
  .vghp128-final{padding-top:16px;padding-bottom:60px}
}

/* =========================================================
   v137 — VIGRES CART PAGE / PREMIUM CHECKOUT ENTRY
   ========================================================= */
body.woocommerce-cart{background:var(--vg-bg)}
body.woocommerce-cart .vg-mini-cart-tab{display:none!important}
.vg-cart-page{min-height:calc(100vh - 280px);padding:56px 0 88px;background:var(--vg-bg);color:var(--vg-ink);font-family:var(--vg-font-body)}
.vg-cart-shell{width:min(calc(100% - 48px),1200px);margin:0 auto}
.vg-cart-kicker{display:block;margin:0 0 10px;color:var(--vg-green);font-size:.7rem;font-weight:800;line-height:1;letter-spacing:.15em;text-transform:uppercase}
.vg-cart-page__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px}
.vg-cart-page__head{position:relative;align-items:flex-start;display:block}
.vg-cart-page__title-wrap{max-width:none;padding-right:220px}
.vg-cart-page__lead{max-width:none}
.vg-cart-back{position:absolute;top:12px;right:0;white-space:nowrap}
.vg-cart-page__head h1{margin:0;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:clamp(2.45rem,4vw,4rem);font-weight:700;line-height:.95;letter-spacing:-.045em}
.vg-cart-back{color:var(--vg-teal);font-size:.85rem;font-weight:800;text-decoration:none;transition:color .18s ease,transform .18s ease}
.vg-cart-back:hover{color:var(--vg-green);transform:translateX(-2px)}

/* Woo classic cart becomes a clean two-column VIGRES layout. */
.vg-cart-classic>.woocommerce{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:28px;align-items:start}
.vg-cart-classic .woocommerce-notices-wrapper,.vg-cart-classic .woocommerce-message,.vg-cart-classic .woocommerce-error,.vg-cart-classic .woocommerce-info{grid-column:1/-1}
.vg-cart-classic .woocommerce-message,.vg-cart-classic .woocommerce-error,.vg-cart-classic .woocommerce-info,.vg-cart-classic .vg-cart-flash{position:relative;margin:0 0 18px!important;padding:16px 56px 16px 18px!important;border:1px solid #dfe8df!important;border-top:4px solid #94b719!important;border-radius:16px!important;background:#fff!important;box-shadow:0 10px 30px rgba(28,29,31,.05)!important;color:var(--vg-ink)!important}
.vg-cart-classic .woocommerce-message:before,.vg-cart-classic .woocommerce-error:before,.vg-cart-classic .woocommerce-info:before,.vg-cart-classic .vg-cart-flash:before{position:relative!important;top:auto!important;left:auto!important;display:inline-block!important;margin-right:10px!important;vertical-align:middle}
.vg-cart-classic .vg-cart-notice-close{position:absolute;top:50%;right:14px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:999px;background:transparent;color:var(--vg-muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease}
.vg-cart-classic .vg-cart-notice-close:hover{background:#f3f2ee;color:var(--vg-sale)}
.vg-cart-classic .woocommerce-cart-form{margin:0!important;padding:12px 26px 6px;border:1px solid var(--vg-border);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(28,29,31,.055)}
.vg-cart-classic .shop_table{width:100%;margin:0!important;border:0!important;border-collapse:collapse!important;background:transparent!important}
.vg-cart-classic .shop_table thead{display:none}
.vg-cart-classic .shop_table td{border:0!important;border-bottom:1px solid var(--vg-border)!important;padding:22px 10px!important;background:transparent!important;vertical-align:middle!important}
.vg-cart-classic .shop_table tr.cart_item:last-of-type td{border-bottom:1px solid var(--vg-border)!important}
.vg-cart-classic td.product-remove{width:38px;padding-left:0!important;padding-right:4px!important;order:9;vertical-align:middle!important;text-align:center!important}
.vg-cart-classic td.product-thumbnail{width:104px;padding-left:0!important}
.vg-cart-classic td.product-thumbnail img{display:block;width:88px!important;height:88px!important;object-fit:contain;border:1px solid var(--vg-border);border-radius:18px;background:var(--vg-surface)}
.vg-cart-classic td.product-name{min-width:150px}
.vg-cart-classic td.product-name a{color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.02rem;font-weight:700;line-height:1.25;text-decoration:none}
.vg-cart-classic td.product-name a:hover{color:var(--vg-green)}
.vg-cart-classic td.product-price,.vg-cart-classic td.product-subtotal{color:var(--vg-ink);font-size:.9rem;font-weight:700;white-space:nowrap}
.vg-cart-classic td.product-subtotal{font-family:var(--vg-font-heading);font-size:1rem}
.vg-cart-classic a.remove{position:relative;display:flex!important;align-items:center;justify-content:center;width:34px!important;height:34px!important;margin:0 auto!important;border-radius:10px!important;color:var(--vg-muted)!important;background:transparent!important;font-size:0!important;line-height:1!important;text-decoration:none!important;transition:background .18s ease,color .18s ease;overflow:hidden}
.vg-cart-classic a.remove:after{content:"×";position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);font-size:1.35rem;font-weight:400;line-height:1}
.vg-cart-classic a.remove:hover{background:#f5ece9!important;color:var(--vg-sale)!important}
.vg-cart-classic .quantity{display:grid!important;grid-template-columns:38px 44px 38px;width:120px;height:42px;border:1px solid var(--vg-border);border-radius:12px;background:var(--vg-surface);overflow:hidden}
.vg-cart-classic .quantity input.qty{grid-column:2;width:44px!important;min-width:0!important;height:40px!important;margin:0!important;padding:0!important;border:0!important;border-inline:1px solid #ecece8!important;border-radius:0!important;background:transparent!important;color:var(--vg-teal-dark)!important;font-weight:800!important;text-align:center!important;box-shadow:none!important;-moz-appearance:textfield}
.vg-cart-classic .quantity input.qty::-webkit-inner-spin-button,.vg-cart-classic .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.vg-cart-classic .quantity:before,.vg-cart-classic .quantity:after{display:grid;place-items:center;position:absolute;pointer-events:none;color:var(--vg-teal-dark);font-weight:700}
/* Keep native quantity input stable across Woo versions; visual shell matches VIGRES. */
.vg-cart-classic td.actions{padding:18px 0 12px!important;border-bottom:0!important}
.vg-cart-classic td.actions .coupon{display:flex;gap:8px;align-items:center;float:left!important}
.vg-cart-classic td.actions .coupon label{display:none!important}
.vg-cart-classic td.actions .coupon input{width:180px!important;min-height:44px;padding:0 13px!important;border:1px solid var(--vg-border)!important;border-radius:11px!important;background:var(--vg-surface)!important;color:var(--vg-ink)!important}
.vg-cart-classic td.actions button,.vg-cart-classic td.actions .button{min-height:44px!important;padding:0 16px!important;border:1px solid var(--vg-border)!important;border-radius:11px!important;background:#fff!important;color:var(--vg-teal-dark)!important;font-family:var(--vg-font-heading)!important;font-size:.8rem!important;font-weight:700!important;line-height:1!important;transition:.18s ease!important}
.vg-cart-classic td.actions button:hover,.vg-cart-classic td.actions .button:hover{background:#f3f2ee!important;transform:translateY(-1px)}
.vg-cart-classic td.actions>button[name="update_cart"]{float:right!important}

.vg-cart-classic .cart-collaterals{margin:0!important;padding:0!important;width:auto!important}
.vg-cart-classic .cart_totals{float:none!important;width:100%!important;margin:0!important;padding:26px 26px 24px;border:1px solid var(--vg-border);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(28,29,31,.055);position:sticky;top:108px}
.vg-cart-classic .cart_totals h2{margin:0 0 17px;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.35rem;font-weight:700;line-height:1.1}
.vg-cart-classic .cart_totals table{width:100%;margin:0 0 18px!important;border:0!important;border-collapse:collapse!important}
.vg-cart-classic .cart_totals th,.vg-cart-classic .cart_totals td{padding:13px 0!important;border:0!important;border-bottom:1px solid var(--vg-border)!important;background:transparent!important;color:var(--vg-text);font-size:.87rem;vertical-align:top!important}
.vg-cart-classic .cart_totals th{font-weight:600;text-align:left}
.vg-cart-classic .cart_totals td{text-align:right;color:var(--vg-ink);font-weight:700}
.vg-cart-classic .cart_totals tr.order-total th,.vg-cart-classic .cart_totals tr.order-total td{padding-top:18px!important;color:var(--vg-teal-dark)!important;font-family:var(--vg-font-heading);font-size:1.12rem;font-weight:700}
.vg-cart-classic .woocommerce-shipping-methods{margin:0;padding:0;list-style:none}
.vg-cart-classic .woocommerce-shipping-methods li{margin:0 0 6px}
.vg-cart-classic .woocommerce-shipping-destination,.vg-cart-classic .woocommerce-shipping-calculator{font-size:.72rem;line-height:1.45}
.vg-cart-classic .wc-proceed-to-checkout{padding:0!important;margin:4px 0 0!important}
.vg-cart-classic .checkout-button{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:54px!important;margin:0!important;padding:0 20px!important;border:1px solid var(--vg-teal)!important;border-radius:13px!important;background:var(--vg-teal)!important;color:#fff!important;font-family:var(--vg-font-heading)!important;font-size:.95rem!important;font-weight:800!important;line-height:1.1!important;text-decoration:none!important;box-shadow:none!important;transition:.18s ease!important}
.vg-cart-classic .checkout-button:hover{background:var(--vg-teal-dark)!important;border-color:var(--vg-teal-dark)!important;transform:translateY(-1px)}
.vg-cart-under-note{margin:14px 0 0 auto;width:min(100%,390px);color:var(--vg-muted);font-size:.74rem;line-height:1.5;text-align:center}

.vg-cart-empty{max-width:720px;margin:34px auto 40px;padding:62px 54px;text-align:center;border:1px solid var(--vg-border);border-radius:28px;background:#fff;box-shadow:0 18px 54px rgba(28,29,31,.055)}
.vg-cart-empty .vg-cart-kicker{margin-bottom:22px}
.vg-cart-empty__icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 24px;border:1px solid var(--vg-border);border-radius:20px;background:var(--vg-surface);color:var(--vg-teal)}
.vg-cart-empty__icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.vg-cart-empty h1{margin:0 0 14px;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:clamp(2.35rem,5vw,4rem);font-weight:700;line-height:.98;letter-spacing:-.045em}
.vg-cart-empty p{max-width:470px;margin:0 auto;color:var(--vg-text);font-size:1rem;line-height:1.65}
.vg-cart-empty__actions{display:flex;justify-content:center;gap:10px;margin-top:28px}
.vg-cart-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:12px;font-family:var(--vg-font-heading);font-size:.86rem;font-weight:800;text-decoration:none;transition:.18s ease}
.vg-cart-btn:hover{transform:translateY(-1px)}
.vg-cart-btn--primary{background:var(--vg-teal);border:1px solid var(--vg-teal);color:#fff}
.vg-cart-btn--primary:hover{background:var(--vg-teal-dark);border-color:var(--vg-teal-dark);color:#fff}
.vg-cart-btn--secondary{background:#fff;border:1px solid var(--vg-border);color:var(--vg-teal-dark)}
.vg-cart-btn--secondary:hover{background:#f3f2ee;color:var(--vg-teal-dark)}

@media(max-width:900px){
  .vg-cart-page{padding:38px 0 68px}
  .vg-cart-shell{width:min(calc(100% - 28px),1200px)}
  .vg-cart-page__head{align-items:flex-start;margin-bottom:20px}
  .vg-cart-classic>.woocommerce{grid-template-columns:1fr;gap:18px}
  .vg-cart-classic .cart_totals{position:static}
  .vg-cart-under-note{width:100%;margin-top:10px}
}
@media(max-width:700px){
  .vg-cart-page{padding:30px 0 52px}
  .vg-cart-page__head{display:block}
  .vg-cart-page__head h1{font-size:2.55rem}
  .vg-cart-back{display:inline-block;margin-top:13px}
  .vg-cart-classic .woocommerce-cart-form{padding:4px 16px 8px;border-radius:20px}
  .vg-cart-classic .shop_table,.vg-cart-classic .shop_table tbody,.vg-cart-classic .shop_table tr.cart_item{display:block!important;width:100%!important}
  .vg-cart-classic .shop_table tr.cart_item{position:relative;display:grid!important;grid-template-columns:78px minmax(0,1fr) auto;grid-template-areas:"thumb name remove" "thumb price price" "thumb qty subtotal";column-gap:13px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--vg-border)}
  .vg-cart-classic .shop_table tr.cart_item td{display:block!important;width:auto!important;padding:0!important;border:0!important;text-align:left!important}
  .vg-cart-classic td.product-thumbnail{grid-area:thumb}
  .vg-cart-classic td.product-thumbnail img{width:76px!important;height:76px!important;border-radius:15px}
  .vg-cart-classic td.product-name{grid-area:name;padding-right:5px!important}
  .vg-cart-classic td.product-price{grid-area:price;color:var(--vg-muted);font-size:.78rem}
  .vg-cart-classic td.product-quantity{grid-area:qty;align-self:end}
  .vg-cart-classic td.product-subtotal{grid-area:subtotal;align-self:end;justify-self:end;font-size:.95rem}
  .vg-cart-classic td.product-remove{grid-area:remove;justify-self:end}
  .vg-cart-classic a.remove{width:31px!important;height:31px!important}
  .vg-cart-classic td.actions{display:block!important;padding:15px 0 4px!important}
  .vg-cart-classic td.actions .coupon{float:none!important;display:grid;grid-template-columns:1fr auto;width:100%}
  .vg-cart-classic td.actions .coupon input{width:100%!important}
  .vg-cart-classic td.actions>button[name="update_cart"]{float:none!important;width:100%;margin-top:9px!important}
  .vg-cart-classic .cart_totals{padding:22px 18px 19px;border-radius:20px}
  .vg-cart-empty{margin:12px auto 28px;padding:46px 22px;border-radius:22px}
  .vg-cart-empty__actions{display:grid;grid-template-columns:1fr;gap:9px}
  .vg-cart-btn{width:100%}
}


/* =========================================================
   v138 — CART: product context + calmer shipping selector
   ========================================================= */
.vg-cart-product-note{
  display:block;
  max-width:300px;
  margin-top:7px;
  color:var(--vg-muted);
  font-family:var(--vg-font-body);
  font-size:.76rem;
  font-weight:400;
  line-height:1.48;
}

/* Shipping is a choice, not a dense Woo table cell. */
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals th{
  padding-top:16px!important;
  padding-right:16px!important;
}
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals td{
  padding:12px 0 16px!important;
  text-align:left!important;
  font-weight:400!important;
}
.vg-cart-classic .woocommerce-shipping-methods{
  display:grid;
  gap:8px;
  width:100%;
}
.vg-cart-classic .woocommerce-shipping-methods li{
  position:relative;
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:center;
  gap:9px;
  margin:0!important;
  padding:11px 12px;
  border:1px solid var(--vg-border);
  border-radius:12px;
  background:var(--vg-surface);
  color:var(--vg-ink);
}
.vg-cart-classic .woocommerce-shipping-methods input[type="radio"]{
  width:16px;
  height:16px;
  margin:0!important;
  accent-color:var(--vg-teal);
}
.vg-cart-classic .woocommerce-shipping-methods label{
  display:block;
  margin:0!important;
  color:var(--vg-teal-dark);
  font-size:.79rem;
  font-weight:700;
  line-height:1.35;
  cursor:pointer;
}
.vg-cart-classic .woocommerce-shipping-methods label img,
.vg-cart-classic .woocommerce-shipping-methods li img{
  display:none!important;
}
.vg-cart-classic .woocommerce-shipping-destination{
  margin:11px 0 0!important;
  padding:10px 11px;
  border-radius:10px;
  background:#f3f2ee;
  color:var(--vg-muted)!important;
  font-size:.69rem!important;
  font-weight:500!important;
  line-height:1.45!important;
  text-align:left!important;
}
.vg-cart-classic .woocommerce-shipping-calculator{
  margin:8px 0 0!important;
  text-align:left!important;
}
.vg-cart-classic .shipping-calculator-button{
  color:var(--vg-teal)!important;
  font-size:.72rem!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.vg-cart-classic .shipping-calculator-button:after{display:none!important}

@media(max-width:700px){
  .vg-cart-product-note{max-width:100%;margin-top:5px;font-size:.72rem;line-height:1.42}
  .vg-cart-classic .shop_table tr.cart_item{
    grid-template-areas:"thumb name remove" "thumb price price" "thumb qty subtotal";
  }
  .vg-cart-classic .woocommerce-shipping-methods li{padding:10px 11px}
  .vg-cart-classic .woocommerce-shipping-methods label{font-size:.76rem}
}

/* =========================================================
   v139 — CART: ultra-simple quantity + PPL delivery choice
   ========================================================= */
.vg-cart-classic td.actions>button[name="update_cart"]{
  display:none!important;
}
.vg-cart-classic .quantity{
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px 48px 42px!important;
  width:132px!important;
  height:44px!important;
  overflow:hidden!important;
}
.vg-cart-classic .quantity input.qty{
  grid-column:2!important;
  width:48px!important;
  height:42px!important;
}
.vg-cart-qty-btn{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  padding:0;
  border:0;
  background:#fff;
  color:var(--vg-teal-dark);
  font-family:var(--vg-font-heading);
  font-size:1.15rem;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:background .16s ease,color .16s ease;
}
.vg-cart-qty-btn:hover{background:#f1f3f1;color:var(--vg-green)}
.vg-cart-qty-btn--minus{grid-column:1;grid-row:1}
.vg-cart-qty-btn--plus{grid-column:3;grid-row:1}
.vg-cart-classic .quantity input.qty{grid-row:1}

/* Doprava: dvě velké volby, žádný technický Woo/PPL balast. */
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals{
  display:block!important;
}
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals th,
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals td{
  display:block!important;
  width:100%!important;
  padding-left:0!important;
  padding-right:0!important;
}
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals th{
  padding-bottom:7px!important;
  border-bottom:0!important;
  color:var(--vg-teal-dark)!important;
  font-family:var(--vg-font-heading);
  font-size:.95rem!important;
  font-weight:700!important;
}
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals td{
  padding-top:0!important;
}
.vg-cart-classic .woocommerce-shipping-methods{
  display:grid!important;
  gap:9px!important;
}
.vg-cart-classic .woocommerce-shipping-methods li{
  position:relative!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.vg-cart-classic .woocommerce-shipping-methods input[type="radio"]{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.vg-cart-classic .woocommerce-shipping-methods label{
  display:block!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer!important;
}
.vg-cart-classic .vg-ppl-choice{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:12px 14px;
  border:1px solid var(--vg-border);
  border-radius:15px;
  background:#fff;
  box-shadow:0 4px 16px rgba(28,29,31,.025);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.vg-cart-classic .woocommerce-shipping-methods input[type="radio"]:checked + label .vg-ppl-choice{
  border-color:var(--vg-teal);
  background:#f4f7f5;
  box-shadow:0 8px 24px rgba(49,72,75,.08), inset 0 0 0 1px var(--vg-teal);
}
.vg-cart-classic .woocommerce-shipping-methods label:hover .vg-ppl-choice{
  border-color:#bdc9c5;
  transform:translateY(-1px);
}
.vg-ppl-choice__brand{
  display:grid;
  place-items:center;
  width:52px;
  min-height:48px;
  border-radius:11px;
  background:#f2f5f6;
  color:#0a57a6;
}
.vg-ppl-choice__icon{display:block;width:27px;height:23px;margin-bottom:1px}
.vg-ppl-choice__icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vg-ppl-choice__ppl{display:block;margin-top:-1px;font-family:Arial,sans-serif;font-size:.54rem;font-weight:900;font-style:italic;letter-spacing:.03em}
.vg-ppl-choice__copy{min-width:0}
.vg-ppl-choice__copy strong{display:block;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:.84rem;font-weight:800;line-height:1.18}
.vg-ppl-choice__copy small{display:block;margin-top:3px;color:var(--vg-muted);font-size:.68rem;font-weight:500;line-height:1.35}
.vg-ppl-choice__price{color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:.88rem;font-weight:800;white-space:nowrap}
.vg-cart-classic .woocommerce-shipping-destination,
.vg-cart-classic .woocommerce-shipping-calculator{
  display:none!important;
}

@media(max-width:700px){
  .vg-cart-classic .quantity{width:126px!important;grid-template-columns:40px 46px 40px!important}
  .vg-cart-qty-btn{width:40px;height:42px}
  .vg-cart-classic .quantity input.qty{width:46px!important}
  .vg-cart-classic .vg-ppl-choice{grid-template-columns:46px minmax(0,1fr) auto;gap:10px;min-height:70px;padding:10px 11px;border-radius:13px}
  .vg-ppl-choice__brand{width:46px;min-height:44px}
  .vg-ppl-choice__copy strong{font-size:.8rem}
  .vg-ppl-choice__copy small{font-size:.64rem}
  .vg-ppl-choice__price{font-size:.82rem}
}

/* =========================================================
   v140 — CART STEP 1: products only, shipping in checkout
   ========================================================= */
.vg-cart-page__head{align-items:flex-start}
.vg-cart-page__head>div{max-width:720px}
.vg-cart-page__lead{max-width:660px;margin:14px 0 0;color:var(--vg-muted);font-size:1rem;line-height:1.65}
.vg-cart-classic .cart_totals h2{font-size:0!important;line-height:1!important}
.vg-cart-classic .cart_totals h2:after{content:"Souhrn";display:block;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.35rem;font-weight:700;line-height:1.1}
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals,
.vg-cart-classic .cart_totals .woocommerce-shipping-destination,
.vg-cart-classic .cart_totals .woocommerce-shipping-calculator{display:none!important}
.vg-cart-classic .cart_totals tr.order-total th{font-size:0!important}
.vg-cart-classic .cart_totals tr.order-total th:after{content:"Produkty celkem";font-family:var(--vg-font-heading);font-size:1.02rem;font-weight:700;color:var(--vg-teal-dark)}
.vg-cart-under-note{max-width:430px;margin:16px 0 0 auto!important;text-align:center;color:var(--vg-muted);font-size:.82rem;line-height:1.55}
@media (max-width: 760px){
  .vg-cart-page__lead{margin-top:10px;font-size:.92rem;line-height:1.55}
  .vg-cart-under-note{max-width:none;margin:12px 0 0!important;padding:0 8px}
}

/* =========================================================
   v141 — CART: progress, alignment, coupon visibility, full responsiveness
   ========================================================= */
.vg-order-progress{
  display:grid;
  grid-template-columns:auto minmax(72px,1fr) auto;
  align-items:start;
  gap:14px;
  width:min(720px,100%);
  margin:0 0 42px;
}
.vg-order-progress__step{
  display:grid;
  grid-template-columns:34px auto;
  align-items:center;
  gap:10px;
  min-width:0;
  color:var(--vg-muted);
}
.vg-order-progress__dot{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid var(--vg-border);
  border-radius:999px;
  background:#fff;
  color:var(--vg-muted);
  font-family:var(--vg-font-heading);
  font-size:.78rem;
  font-weight:800;
  box-shadow:0 5px 14px rgba(28,29,31,.04);
}
.vg-order-progress__label{
  font-family:var(--vg-font-heading);
  font-size:.82rem;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
.vg-order-progress__step.is-active{color:var(--vg-teal-dark)}
.vg-order-progress__step.is-active .vg-order-progress__dot{
  border-color:var(--vg-green);
  background:var(--vg-green);
  color:#fff;
  box-shadow:0 6px 18px rgba(96,119,107,.2);
}
.vg-order-progress__line{
  display:block;
  height:2px;
  margin-top:16px;
  overflow:hidden;
  border-radius:99px;
  background:#deded9;
}
.vg-order-progress__line span{display:block;width:50%;height:100%;background:var(--vg-green)}

.vg-cart-page__title-wrap{min-width:0}
.vg-cart-page__title-row{display:flex;align-items:center;gap:14px}
.vg-cart-page__title-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:54px;
  height:54px;
  border:1px solid var(--vg-border);
  border-radius:16px;
  background:#fff;
  color:var(--vg-teal);
  box-shadow:0 8px 24px rgba(28,29,31,.045);
}
.vg-cart-page__title-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.vg-cart-back{flex:0 0 auto;white-space:nowrap;margin-top:32px}

/* Product table: one price only, all final line prices share one right edge. */
.vg-cart-classic td.product-price{display:none!important}
.vg-cart-classic td.product-name{width:auto!important}
.vg-cart-classic td.product-quantity{width:150px!important;text-align:center!important}
.vg-cart-classic td.product-subtotal{width:118px!important;min-width:118px!important;text-align:right!important;padding-right:0!important}
.vg-cart-classic td.product-subtotal .amount{display:inline-block;min-width:92px;text-align:right}

/* Coupon must be unmistakable without becoming visually loud. */
.vg-cart-classic td.actions{padding:18px 0 12px!important}
.vg-cart-classic td.actions .coupon{
  position:relative;
  float:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  width:100%;
  padding:46px 14px 14px;
  border:1px solid #dfe5df;
  border-radius:16px;
  background:#f5f7f4;
}
.vg-cart-classic td.actions .coupon:before{
  content:"Máte slevový kód?";
  position:absolute;
  top:13px;
  left:14px;
  color:var(--vg-teal-dark);
  font-family:var(--vg-font-heading);
  font-size:.86rem;
  font-weight:800;
  line-height:1.2;
}
.vg-cart-classic td.actions .coupon input{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  background:#fff!important;
}
.vg-cart-classic td.actions .coupon button{
  min-height:48px!important;
  white-space:nowrap;
  background:#fff!important;
}

/* Summary: only one clear total; no empty shipping/subtotal rows. */
.vg-cart-classic .cart_totals .cart-subtotal,
.vg-cart-classic .cart_totals tr.shipping,
.vg-cart-classic .cart_totals tr.woocommerce-shipping-totals,
.vg-cart-classic .cart_totals .woocommerce-shipping-destination,
.vg-cart-classic .cart_totals .woocommerce-shipping-calculator{display:none!important}
.vg-cart-classic .cart_totals table{table-layout:fixed!important;margin-bottom:20px!important}
.vg-cart-classic .cart_totals tr.order-total{display:table-row!important}
.vg-cart-classic .cart_totals tr.order-total th,
.vg-cart-classic .cart_totals tr.order-total td{
  width:auto!important;
  padding:16px 0!important;
  vertical-align:middle!important;
  border-top:0!important;
  border-bottom:1px solid var(--vg-border)!important;
}
.vg-cart-classic .cart_totals tr.order-total th{font-size:0!important;text-align:left!important;white-space:nowrap}
.vg-cart-classic .cart_totals tr.order-total th:after{
  content:"Produkty celkem";
  display:inline-block;
  color:var(--vg-teal-dark);
  font-family:var(--vg-font-heading);
  font-size:1rem;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
.vg-cart-classic .cart_totals tr.order-total td{text-align:right!important;white-space:nowrap}
.vg-cart-classic .cart_totals tr.order-total td strong,
.vg-cart-classic .cart_totals tr.order-total td .amount{font-size:1.12rem!important;color:var(--vg-teal-dark)!important}
.vg-cart-under-note{display:none!important}

/* Tablet: avoid the unstable squeezed two-column phase. */
@media(max-width:1040px){
  .vg-cart-classic>.woocommerce{grid-template-columns:1fr!important;gap:20px!important}
  .vg-cart-classic .cart_totals{position:static!important}
  .vg-cart-page__head{gap:18px}
}

@media(max-width:760px){
  .vg-order-progress{grid-template-columns:auto minmax(42px,1fr) auto;gap:9px;margin-bottom:28px}
  .vg-order-progress__step{grid-template-columns:30px auto;gap:7px}
  .vg-order-progress__dot{width:30px;height:30px;font-size:.7rem}
  .vg-order-progress__line{margin-top:14px}
  .vg-order-progress__label{font-size:.72rem}
  .vg-cart-page__head{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;margin-bottom:20px!important}
  .vg-cart-page__title-row{gap:10px}
  .vg-cart-page__title-icon{width:46px;height:46px;border-radius:14px}
  .vg-cart-page__title-icon svg{width:23px;height:23px}
  .vg-cart-back{display:inline-flex!important;align-items:center;margin:0!important;max-width:100%;white-space:normal;line-height:1.35}
  .vg-cart-classic .shop_table tr.cart_item{
    grid-template-columns:78px minmax(0,1fr) auto!important;
    grid-template-areas:"thumb name remove" "thumb qty subtotal"!important;
    row-gap:12px!important;
  }
  .vg-cart-classic td.product-price{display:none!important}
  .vg-cart-classic td.product-quantity{grid-area:qty!important;width:auto!important;text-align:left!important;align-self:center!important}
  .vg-cart-classic td.product-subtotal{grid-area:subtotal!important;width:auto!important;min-width:0!important;justify-self:end!important;align-self:center!important;text-align:right!important}
  .vg-cart-classic td.product-subtotal .amount{min-width:0}
  .vg-cart-classic td.actions .coupon{grid-template-columns:1fr!important;padding-top:46px}
  .vg-cart-classic td.actions .coupon button{width:100%!important}
  .vg-cart-classic .cart_totals{padding:22px 18px 19px!important}
}

@media(max-width:520px){
  .vg-cart-shell{width:min(calc(100% - 22px),1200px)!important}
  .vg-order-progress{grid-template-columns:auto minmax(24px,1fr) auto;gap:6px}
  .vg-order-progress__step{grid-template-columns:28px auto;gap:6px}
  .vg-order-progress__dot{width:28px;height:28px}
  .vg-order-progress__line{margin-top:13px}
  .vg-order-progress__label{font-size:.66rem;white-space:normal;max-width:88px}
  .vg-cart-page__head h1{font-size:2.35rem!important}
  .vg-cart-page__lead{font-size:.88rem!important}
  .vg-cart-classic .woocommerce-cart-form{padding:2px 12px 8px!important}
  .vg-cart-classic .shop_table tr.cart_item{
    grid-template-columns:68px minmax(0,1fr) auto!important;
    grid-template-areas:"thumb name remove" "thumb qty subtotal"!important;
    column-gap:10px!important;
    padding:14px 0!important;
  }
  .vg-cart-classic td.product-thumbnail img{width:66px!important;height:66px!important}
  .vg-cart-classic td.product-name a{font-size:.95rem!important}
  .vg-cart-product-note{font-size:.68rem!important;line-height:1.35!important}
  .vg-cart-classic .quantity{width:116px!important;grid-template-columns:36px 44px 36px!important}
  .vg-cart-qty-btn{width:36px!important;height:42px!important}
  .vg-cart-classic .quantity input.qty{width:44px!important}
  .vg-cart-classic td.product-subtotal{font-size:.9rem!important}
  .vg-cart-classic .cart_totals tr.order-total th:after{font-size:.94rem}
  .vg-cart-classic .cart_totals tr.order-total td strong,.vg-cart-classic .cart_totals tr.order-total td .amount{font-size:1rem!important}
}


/* =========================================================
   v142 — CART MOBILE CLEANUP + PROGRESS + HEADER HAMBURGER
   ========================================================= */
/* Progress: three points on one line. The middle node clearly marks step 1. */
.vg-order-progress{
  display:block!important;
  width:min(760px,100%)!important;
  margin:0 0 38px!important;
}
.vg-order-progress__track{
  position:relative;
  height:38px;
  margin:0 16px;
}
.vg-order-progress__track:before{
  content:"";
  position:absolute;
  left:0;right:0;top:18px;
  height:2px;
  border-radius:99px;
  background:#d9dedb;
}
.vg-order-progress__fill{
  position:absolute;
  z-index:1;
  left:0;top:18px;
  width:50%;height:2px;
  border-radius:99px;
  background:var(--vg-green);
}
.vg-order-progress__node{
  position:absolute;
  z-index:2;
  top:7px;
  display:grid;
  place-items:center;
  width:24px;height:24px;
  border:1px solid var(--vg-border);
  border-radius:50%;
  background:#fff;
  color:var(--vg-muted);
  font:800 .68rem/1 var(--vg-font-heading);
  box-shadow:0 5px 14px rgba(28,29,31,.05);
  transform:translateX(-50%);
}
.vg-order-progress__node--start{left:0;width:12px;height:12px;top:13px;border:0;background:var(--vg-green)}
.vg-order-progress__node--middle{left:50%}
.vg-order-progress__node--end{left:100%}
.vg-order-progress__node.is-active{border-color:var(--vg-green);background:var(--vg-green);color:#fff;box-shadow:0 7px 18px rgba(96,119,107,.22)}
.vg-order-progress__labels{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:4px;
  color:var(--vg-muted);
  font:700 .8rem/1.25 var(--vg-font-heading);
}
.vg-order-progress__labels span{text-align:center}
.vg-order-progress__labels span.is-active{color:var(--vg-teal-dark)}

/* Header hamburger: use a real centred two-line icon instead of grid auto rows. */
@media(max-width:720px){
  .vg-menu-toggle{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    width:36px;height:36px;
  }
  .vg-menu-toggle span{display:block!important;width:20px!important;height:2px!important;margin:0!important;flex:0 0 2px;background:currentColor!important}
  .vg-header.is-menu-open .vg-menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .vg-header.is-menu-open .vg-menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
}

/* Woo responsive table injects labels via pseudo-elements; our card layout already provides context. */
@media(max-width:760px){
  .vg-cart-classic table.shop_table_responsive tr td:before,
  .vg-cart-classic table.shop_table_responsive tr td::before,
  .vg-cart-classic .shop_table tr.cart_item td:before,
  .vg-cart-classic .shop_table tr.cart_item td::before{
    content:none!important;
    display:none!important;
  }
  .vg-cart-classic .shop_table tr.cart_item:before,
  .vg-cart-classic .shop_table tr.cart_item::before{content:none!important;display:none!important}

  .vg-cart-classic .shop_table tr.cart_item{
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr) auto!important;
    grid-template-areas:
      "thumb name remove"
      "thumb qty subtotal"!important;
    align-items:center!important;
    column-gap:12px!important;
    row-gap:10px!important;
    padding:18px 0!important;
  }
  .vg-cart-classic td.product-thumbnail{grid-area:thumb!important;display:block!important;padding:0!important}
  .vg-cart-classic td.product-name{grid-area:name!important;display:block!important;padding:0!important;text-align:left!important}
  .vg-cart-classic td.product-remove{grid-area:remove!important;display:block!important;justify-self:end!important;align-self:start!important;padding:1px 0 0 8px!important}
  .vg-cart-classic td.product-quantity{grid-area:qty!important;display:block!important;padding:0!important;text-align:left!important;justify-self:start!important}
  .vg-cart-classic td.product-subtotal{grid-area:subtotal!important;display:block!important;padding:0!important;text-align:right!important;justify-self:end!important;align-self:center!important;white-space:nowrap!important}
  .vg-cart-classic td.product-subtotal .amount{display:block!important;min-width:0!important;text-align:right!important}
  .vg-cart-classic td.product-price{display:none!important}
  .vg-cart-classic .vg-cart-product-note{margin-top:5px!important}

  .vg-cart-classic td.actions{display:block!important;padding:16px 0 8px!important}
  .vg-cart-classic td.actions .coupon{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:46px 12px 12px!important}
  .vg-cart-classic td.actions .coupon input,.vg-cart-classic td.actions .coupon button{width:100%!important;max-width:none!important}
  .vg-cart-classic td.actions>button[name="update_cart"]{display:none!important}

  .vg-cart-classic .cart_totals table.shop_table_responsive tr td:before,
  .vg-cart-classic .cart_totals table.shop_table_responsive tr td::before{content:none!important;display:none!important}
  .vg-cart-classic .cart_totals tr.order-total{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important}
  .vg-cart-classic .cart_totals tr.order-total th,
  .vg-cart-classic .cart_totals tr.order-total td{display:block!important;width:auto!important;padding:14px 0!important;text-align:inherit!important}
  .vg-cart-classic .cart_totals tr.order-total td{text-align:right!important}
}

@media(max-width:520px){
  .vg-order-progress{margin-bottom:24px!important}
  .vg-order-progress__track{margin:0 12px;height:34px}
  .vg-order-progress__track:before,.vg-order-progress__fill{top:16px}
  .vg-order-progress__node{top:5px}
  .vg-order-progress__node--start{top:11px}
  .vg-order-progress__labels{gap:10px;font-size:.68rem;margin-top:2px}
  .vg-cart-classic .shop_table tr.cart_item{
    grid-template-columns:62px minmax(0,1fr) auto!important;
    column-gap:10px!important;
    row-gap:9px!important;
    padding:16px 0!important;
  }
  .vg-cart-classic td.product-thumbnail img{width:60px!important;height:60px!important}
  .vg-cart-classic td.product-name a{font-size:.94rem!important}
  .vg-cart-product-note{font-size:.7rem!important;line-height:1.36!important}
  .vg-cart-classic .quantity{width:108px!important;grid-template-columns:34px 40px 34px!important}
  .vg-cart-qty-btn{width:34px!important;height:40px!important}
  .vg-cart-classic .quantity input.qty{width:40px!important;height:40px!important}
  .vg-cart-classic td.product-subtotal{font-size:.88rem!important}
}


/* =========================================================
   v143 — CART FINAL MOBILE CLEANUP
   ========================================================= */
/* Woo can re-enable the unit-price cell in its own responsive CSS. Keep it hidden with stronger cart-specific selectors. */
@media(max-width:760px){
  body.woocommerce-cart .vg-cart-classic table.shop_table_responsive tr.cart_item td.product-price,
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item td.product-price{
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
  }
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item td.product-price *,
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item td.product-price:before,
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item td.product-price:after{
    display:none!important;
    content:none!important;
  }

  /* Keep only the final line price next to quantity. */
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item td.product-subtotal{
    grid-area:subtotal!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    align-self:center!important;
    justify-self:end!important;
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    color:var(--vg-ink)!important;
    font-size:.92rem!important;
    font-weight:800!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  /* Real visible coupon heading, independent of Woo's label/pseudo-element rules. */
  body.woocommerce-cart .vg-cart-classic td.actions{
    position:relative!important;
    padding:18px 0 8px!important;
  }
  body.woocommerce-cart .vg-cart-classic td.actions:before{
    content:"Máte slevový kód?";
    display:block!important;
    margin:0 0 9px!important;
    color:var(--vg-teal-dark)!important;
    font-family:var(--vg-font-heading)!important;
    font-size:.84rem!important;
    font-weight:800!important;
    line-height:1.2!important;
  }
  body.woocommerce-cart .vg-cart-classic td.actions .coupon{
    padding:12px!important;
  }
  body.woocommerce-cart .vg-cart-classic td.actions .coupon:before,
  body.woocommerce-cart .vg-cart-classic td.actions .coupon:after{
    display:none!important;
    content:none!important;
  }

  /* Slightly tighter mobile rows after removing the duplicate price. */
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item{
    row-gap:8px!important;
    padding:14px 0!important;
  }
}

@media(max-width:520px){
  body.woocommerce-cart .vg-cart-classic .shop_table tr.cart_item{
    grid-template-columns:62px minmax(0,1fr) auto!important;
    column-gap:10px!important;
    row-gap:8px!important;
    padding:13px 0!important;
  }
  body.woocommerce-cart .vg-cart-classic td.actions:before{
    margin-left:2px!important;
    font-size:.82rem!important;
  }
}

/* v145 — silent cart recalculation: never redraw/reflow the cart on +/- */
.vg-cart-classic.is-updating .woocommerce-cart-form,
.vg-cart-classic.is-updating .cart_totals {
  opacity: .82;
  transition: opacity .14s ease;
}
.vg-cart-classic .vg-cart-qty-btn:disabled,
.vg-cart-classic input.qty:disabled {
  cursor: wait;
}


/* =========================================================
   v150 — FINAL CART MICRO-UX
   Remove without Woo redraw, self-healing +/- controls,
   dismissible flash and calm free-shipping motivation.
   ========================================================= */
body.woocommerce-cart .vg-cart-page__head>div.vg-cart-page__title-wrap{
  width:100%!important;
  max-width:none!important;
  padding-right:220px!important;
}
body.woocommerce-cart .vg-cart-page__lead{
  width:100%!important;
  max-width:none!important;
}

body.woocommerce-cart .vg-cart-classic .vg-cart-flash,
body.woocommerce-cart .vg-cart-classic .woocommerce-message{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  grid-column:1/-1!important;
  width:100%!important;
  min-height:58px!important;
  margin:0 0 18px!important;
  padding:14px 54px 14px 18px!important;
  border:1px solid #dfe6df!important;
  border-top:3px solid #8aae22!important;
  border-radius:15px!important;
  background:#fff!important;
  color:var(--vg-ink)!important;
  box-shadow:0 10px 28px rgba(28,29,31,.045)!important;
  transform:translateY(0);
  opacity:1;
  transition:opacity .22s ease,transform .22s ease!important;
}
body.woocommerce-cart .vg-cart-classic .vg-cart-flash:before{display:none!important;content:none!important}
body.woocommerce-cart .vg-cart-classic .vg-cart-flash.is-dismissing{
  opacity:0!important;
  transform:translateY(-6px)!important;
}
body.woocommerce-cart .vg-cart-flash__check{
  display:grid;
  place-items:center;
  flex:0 0 20px;
  width:20px;
  height:20px;
  border-radius:999px;
  background:#8aae22;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
}
body.woocommerce-cart .vg-cart-flash__undo{
  margin-left:4px;
  color:var(--vg-teal-dark)!important;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}
body.woocommerce-cart .vg-cart-notice-close{
  position:absolute!important;
  top:50%!important;
  right:13px!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:32px!important;
  height:32px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#737b7d!important;
  font-size:1.35rem!important;
  font-weight:400!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.woocommerce-cart .vg-cart-notice-close:hover{background:#f1f2ef!important;color:var(--vg-ink)!important}

body.woocommerce-cart .vg-cart-classic .quantity{
  position:relative!important;
}
body.woocommerce-cart .vg-cart-classic .vg-cart-qty-btn{
  display:grid!important;
  place-items:center!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:2!important;
}
body.woocommerce-cart .vg-cart-classic .vg-cart-qty-btn--minus{grid-column:1!important;grid-row:1!important}
body.woocommerce-cart .vg-cart-classic .vg-cart-qty-btn--plus{grid-column:3!important;grid-row:1!important}
body.woocommerce-cart .vg-cart-classic .quantity input.qty{grid-column:2!important;grid-row:1!important}

body.woocommerce-cart .vg-cart-free-shipping{
  width:100%;
  margin:0 0 12px;
  padding:14px 15px 13px;
  border:1px solid #dce5dd;
  border-radius:15px;
  background:#f7f9f5;
  color:var(--vg-teal-dark);
}
body.woocommerce-cart .vg-cart-free-shipping__top{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:10px;
  font-size:.85rem;
  line-height:1.45;
}
body.woocommerce-cart .vg-cart-free-shipping__icon{
  display:grid;
  place-items:center;
  flex:0 0 23px;
  width:23px;
  height:23px;
  border-radius:999px;
  background:#e6eee7;
  color:var(--vg-green);
  font-size:.76rem;
  font-weight:900;
}
body.woocommerce-cart .vg-cart-free-shipping__bar{
  height:5px;
  overflow:hidden;
  border-radius:999px;
  background:#e1e6e1;
}
body.woocommerce-cart .vg-cart-free-shipping__bar>span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:var(--vg-green);
  transition:width .25s ease;
}
body.woocommerce-cart .vg-cart-free-shipping.is-complete{
  background:#f2f7f1;
  border-color:#d4e2d4;
}
body.woocommerce-cart .vg-cart-free-shipping.is-complete .vg-cart-free-shipping__icon{
  background:var(--vg-green);
  color:#fff;
}

@media(max-width:1000px){
  body.woocommerce-cart .vg-cart-page__head>div.vg-cart-page__title-wrap{
    padding-right:0!important;
  }
}
@media(max-width:720px){
  body.woocommerce-cart .vg-cart-classic .vg-cart-flash,
  body.woocommerce-cart .vg-cart-classic .woocommerce-message{
    align-items:flex-start!important;
    padding:13px 48px 13px 13px!important;
    font-size:.82rem!important;
    line-height:1.45!important;
  }
  body.woocommerce-cart .vg-cart-free-shipping{
    padding:12px 12px 11px;
  }
  body.woocommerce-cart .vg-cart-free-shipping__top{
    align-items:flex-start;
    font-size:.8rem;
  }
}


/* =========================================================
   v151 — CART FINAL ALIGNMENT
   Full-width reassurance copy + kicker aligned with H1 text.
   ========================================================= */
body.woocommerce-cart .vg-cart-page__head>div.vg-cart-page__title-wrap{
  padding-right:0!important;
}
body.woocommerce-cart .vg-cart-page__lead{
  width:100%!important;
  max-width:none!important;
  padding-right:0!important;
}
body.woocommerce-cart .vg-cart-page__title-wrap>.vg-cart-kicker{
  margin-left:68px;
}
@media(max-width:720px){
  body.woocommerce-cart .vg-cart-page__title-wrap>.vg-cart-kicker{
    margin-left:56px;
  }
}


/* =========================================================
   v153 — SHARED CHECKOUT HEADING
   Icon equals the combined height of kicker + H1.
   This component is intentionally reusable for checkout step 2.
   ========================================================= */
body.woocommerce-cart .vg-checkout-heading{
  display:flex;
  align-items:stretch;
  gap:18px;
  width:100%;
}
body.woocommerce-cart .vg-checkout-heading__copy{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:0;
  padding:2px 0 1px;
}
body.woocommerce-cart .vg-checkout-heading__copy>.vg-cart-kicker{
  margin:0!important;
  line-height:1.1;
}
body.woocommerce-cart .vg-checkout-heading__copy>h1{
  margin:0!important;
  line-height:.92!important;
}
body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon{
  align-self:stretch;
  width:92px!important;
  height:auto!important;
  min-height:92px!important;
  flex:0 0 92px!important;
  border-radius:24px!important;
}
body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon svg{
  width:38px!important;
  height:38px!important;
}
body.woocommerce-cart .vg-cart-page__title-wrap>.vg-cart-kicker{
  margin-left:0!important;
}
body.woocommerce-cart .vg-cart-page__lead{
  margin-top:18px!important;
}

@media(max-width:720px){
  body.woocommerce-cart .vg-checkout-heading{
    gap:12px;
  }
  body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon{
    width:66px!important;
    min-height:66px!important;
    flex-basis:66px!important;
    border-radius:18px!important;
  }
  body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon svg{
    width:28px!important;
    height:28px!important;
  }
  body.woocommerce-cart .vg-checkout-heading__copy{
    padding:1px 0;
  }
  body.woocommerce-cart .vg-checkout-heading__copy>h1{
    font-size:2.35rem!important;
  }
  body.woocommerce-cart .vg-checkout-heading__copy>.vg-cart-kicker{
    font-size:.64rem!important;
  }
  body.woocommerce-cart .vg-cart-page__lead{
    margin-top:14px!important;
  }
}


/* =========================================================
   v154 — CHECKOUT HEADING RHYTHM
   Keep the icon equal to the two-line title block, but bind kicker
   visually to the H1 instead of stretching it to the icon top edge.
   ========================================================= */
body.woocommerce-cart .vg-checkout-heading{
  align-items:center!important;
  gap:18px!important;
}
body.woocommerce-cart .vg-checkout-heading__copy{
  justify-content:center!important;
  gap:7px!important;
  padding:0!important;
}
body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon{
  align-self:center!important;
  width:86px!important;
  height:86px!important;
  min-height:86px!important;
  flex:0 0 86px!important;
  border-radius:22px!important;
}
body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon svg{
  width:35px!important;
  height:35px!important;
}
body.woocommerce-cart .vg-checkout-heading__copy>.vg-cart-kicker{
  margin:0!important;
  line-height:1!important;
}
body.woocommerce-cart .vg-checkout-heading__copy>h1{
  margin:0!important;
  line-height:.94!important;
}
body.woocommerce-cart .vg-cart-page__lead{
  margin-top:16px!important;
}
@media(max-width:720px){
  body.woocommerce-cart .vg-checkout-heading{
    gap:12px!important;
  }
  body.woocommerce-cart .vg-checkout-heading__copy{
    gap:5px!important;
  }
  body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon{
    width:62px!important;
    height:62px!important;
    min-height:62px!important;
    flex-basis:62px!important;
    border-radius:17px!important;
  }
  body.woocommerce-cart .vg-checkout-heading>.vg-cart-page__title-icon svg{
    width:26px!important;
    height:26px!important;
  }
  body.woocommerce-cart .vg-cart-page__lead{
    margin-top:13px!important;
  }
}

/* =========================================================
   v155 — CHECKOUT STEP 2 / DOPRAVA A PLATBA
   ========================================================= */
body.woocommerce-checkout{background:var(--vg-bg)}
body.woocommerce-checkout .vg-mini-cart-tab{display:none!important}
.vg-checkout-page{min-height:calc(100vh - 280px);padding:56px 0 88px;background:var(--vg-bg);color:var(--vg-ink);font-family:var(--vg-font-body)}
.vg-checkout-shell{width:min(calc(100% - 48px),1200px);margin:0 auto}
.vg-checkout-page__head{position:relative;display:block;margin:0 0 30px}
.vg-checkout-page__title-wrap{padding-right:190px}
.vg-checkout-page__lead{max-width:none;margin:16px 0 0;color:var(--vg-muted);font-size:1rem;line-height:1.55}
.vg-checkout-back{position:absolute;right:0;top:30px;color:var(--vg-teal);font-size:.85rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:color .18s ease,transform .18s ease}
.vg-checkout-back:hover{color:var(--vg-green);transform:translateX(-2px)}

/* Progress: second half active on checkout. */
.vg-order-progress--checkout .vg-order-progress__fill{width:100%!important}
.vg-order-progress--checkout .vg-order-progress__node--start,
.vg-order-progress--checkout .vg-order-progress__node--middle,
.vg-order-progress--checkout .vg-order-progress__node--end{background:var(--vg-green)!important;border-color:var(--vg-green)!important;color:#fff!important}
.vg-order-progress--checkout .vg-order-progress__labels .is-done{color:var(--vg-muted)!important}
.vg-order-progress--checkout .vg-order-progress__labels .is-active{color:var(--vg-teal-dark)!important;font-weight:800!important}

/* Shared two-line checkout heading. */
body.woocommerce-checkout .vg-checkout-heading{display:flex;align-items:center;gap:18px;width:100%}
body.woocommerce-checkout .vg-checkout-heading__copy{display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:0}
body.woocommerce-checkout .vg-checkout-heading__copy>.vg-cart-kicker{margin:0!important;line-height:1!important}
body.woocommerce-checkout .vg-checkout-heading__copy>h1{margin:0;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:clamp(2.3rem,4vw,3.65rem);font-weight:700;line-height:.94;letter-spacing:-.04em}
body.woocommerce-checkout .vg-checkout-page__title-icon{display:grid;place-items:center;width:86px;height:86px;min-height:86px;flex:0 0 86px;border:1px solid var(--vg-border);border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(28,29,31,.045)}
body.woocommerce-checkout .vg-checkout-page__title-icon svg{width:37px;height:37px;fill:none;stroke:var(--vg-teal);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Base Woo checkout cleanup. */
.vg-checkout-classic>.woocommerce{width:100%}
.vg-checkout-classic .woocommerce-notices-wrapper,
.vg-checkout-classic .woocommerce-error,
.vg-checkout-classic .woocommerce-message,
.vg-checkout-classic .woocommerce-info{margin:0 0 18px!important;border-radius:14px!important}
.vg-checkout-classic form.checkout{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(360px,.75fr);column-gap:28px;row-gap:0;align-items:start}
.vg-checkout-classic #customer_details{grid-column:1;grid-row:1/5;margin:0!important;padding:28px;border:1px solid var(--vg-border);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(28,29,31,.05)}
.vg-checkout-classic #order_review_heading{grid-column:2;grid-row:1;margin:0!important;padding:26px 26px 0;border:1px solid var(--vg-border);border-bottom:0;border-radius:24px 24px 0 0;background:#fff;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.35rem;font-weight:700;line-height:1.1;position:sticky;top:108px;z-index:2}
.vg-checkout-classic #order_review_heading{font-size:0!important}
.vg-checkout-classic #order_review_heading:after{content:"Souhrn objednávky";font-size:1.35rem}
.vg-checkout-classic #order_review{grid-column:2;grid-row:2;margin:0!important;padding:16px 26px 24px;border:1px solid var(--vg-border);border-top:0;border-radius:0 0 24px 24px;background:#fff;box-shadow:0 16px 42px rgba(28,29,31,.05);position:sticky;top:159px}
.vg-checkout-classic .col2-set{width:100%!important;float:none!important}
.vg-checkout-classic .col-1,.vg-checkout-classic .col-2{width:100%!important;float:none!important;margin:0!important}
.vg-checkout-classic .woocommerce-billing-fields>h3{margin:0 0 18px;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.35rem;line-height:1.1}
.vg-checkout-classic .woocommerce-billing-fields>h3{font-size:0}
.vg-checkout-classic .woocommerce-billing-fields>h3:after{content:"Kontaktní a doručovací údaje";font-size:1.35rem}
.vg-checkout-classic .woocommerce-additional-fields>h3{margin:26px 0 12px;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1rem}
.vg-checkout-classic .woocommerce-shipping-fields h3{margin:24px 0 12px;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1rem}
.vg-checkout-classic .woocommerce-shipping-fields h3 label{display:flex;align-items:center;gap:9px}

/* Fields: large touch targets and low cognitive load. */
.vg-checkout-classic .form-row{margin:0 0 14px!important;padding:0!important}
.vg-checkout-classic .form-row-first,.vg-checkout-classic .form-row-last{width:calc(50% - 6px)!important}
.vg-checkout-classic .form-row-first{float:left!important}
.vg-checkout-classic .form-row-last{float:right!important}
.vg-checkout-classic label{display:block;margin:0 0 6px;color:var(--vg-teal-dark);font-size:.78rem;font-weight:700;line-height:1.2}
.vg-checkout-classic .required{color:var(--vg-sale)}
.vg-checkout-classic input.input-text,
.vg-checkout-classic textarea,
.vg-checkout-classic select,
.vg-checkout-classic .select2-container .select2-selection--single{width:100%!important;min-height:50px!important;margin:0!important;border:1px solid var(--vg-border)!important;border-radius:12px!important;background:var(--vg-surface)!important;color:var(--vg-ink)!important;box-shadow:none!important;font-size:.95rem!important}
.vg-checkout-classic input.input-text,.vg-checkout-classic textarea{padding:12px 14px!important}
.vg-checkout-classic textarea{min-height:94px!important;resize:vertical}
.vg-checkout-classic .select2-container .select2-selection--single{display:flex!important;align-items:center;padding:0 14px!important}
.vg-checkout-classic .select2-selection__rendered{padding:0!important;color:var(--vg-ink)!important}
.vg-checkout-classic .select2-selection__arrow{top:12px!important;right:10px!important}
.vg-checkout-classic input:focus,.vg-checkout-classic textarea:focus,.vg-checkout-classic .select2-container--focus .select2-selection{border-color:var(--vg-green)!important;outline:2px solid rgba(46,125,90,.12)!important;outline-offset:0}

/* Order lines stay quiet; decisions get the visual emphasis. */
.vg-checkout-classic table.shop_table{width:100%;margin:0 0 18px!important;border:0!important;border-collapse:collapse!important;background:transparent!important}
.vg-checkout-classic table.shop_table th,.vg-checkout-classic table.shop_table td{padding:11px 0!important;border:0!important;border-bottom:1px solid var(--vg-border)!important;background:transparent!important;color:var(--vg-text);font-size:.82rem;vertical-align:top}
.vg-checkout-classic table.shop_table th{color:var(--vg-teal-dark);font-weight:700;text-align:left}
.vg-checkout-classic table.shop_table td.product-total,.vg-checkout-classic table.shop_table tfoot td{text-align:right;color:var(--vg-ink);font-weight:700;white-space:nowrap}
.vg-checkout-classic table.shop_table .product-name{padding-right:15px!important}
.vg-checkout-classic table.shop_table tfoot tr.order-total th,.vg-checkout-classic table.shop_table tfoot tr.order-total td{padding-top:16px!important;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.05rem;font-weight:800}

/* Shipping options — big, obvious cards. Reuse the PPL content already generated in v139. */
.vg-checkout-classic .woocommerce-shipping-methods{display:grid!important;gap:9px;margin:8px 0 0!important;padding:0!important;list-style:none!important}
.vg-checkout-classic .woocommerce-shipping-methods li{position:relative;margin:0!important;padding:0!important}
.vg-checkout-classic .woocommerce-shipping-methods input[type="radio"]{position:absolute;opacity:0;pointer-events:none}
.vg-checkout-classic .woocommerce-shipping-methods label{display:block!important;margin:0!important;cursor:pointer}
.vg-checkout-classic .vg-ppl-choice{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:72px;padding:11px 12px;border:1px solid var(--vg-border);border-radius:14px;background:var(--vg-surface);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.vg-checkout-classic .woocommerce-shipping-methods input[type="radio"]:checked + label .vg-ppl-choice{border-color:var(--vg-green);background:#f4f8f5;box-shadow:0 0 0 2px rgba(46,125,90,.09)}
.vg-checkout-classic .vg-ppl-choice__brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#00529b}
.vg-checkout-classic .vg-ppl-choice__icon{display:grid;place-items:center;width:31px;height:25px}
.vg-checkout-classic .vg-ppl-choice__icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vg-checkout-classic .vg-ppl-choice__ppl{font-size:.58rem;font-weight:900;letter-spacing:.06em}
.vg-checkout-classic .vg-ppl-choice__copy{display:flex;flex-direction:column;gap:2px;color:var(--vg-teal-dark)}
.vg-checkout-classic .vg-ppl-choice__copy strong{font-size:.82rem;line-height:1.2}
.vg-checkout-classic .vg-ppl-choice__copy small{color:var(--vg-muted);font-size:.68rem;line-height:1.3}
.vg-checkout-classic .vg-ppl-choice__price{color:var(--vg-ink);font-size:.8rem;font-weight:800;white-space:nowrap}

/* Payment methods as obvious selectable rows. */
.vg-checkout-classic #payment{margin:16px -4px 0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.vg-checkout-classic #payment ul.payment_methods{margin:0 0 16px!important;padding:0!important;border:0!important;list-style:none!important}
.vg-checkout-classic #payment ul.payment_methods>li{position:relative;margin:0 0 9px!important;padding:0!important;border:1px solid var(--vg-border);border-radius:14px;background:var(--vg-surface);overflow:hidden}
.vg-checkout-classic #payment ul.payment_methods>li>input{position:absolute;left:14px;top:18px;width:18px;height:18px;accent-color:var(--vg-green)}
.vg-checkout-classic #payment ul.payment_methods>li>label{display:block!important;margin:0!important;padding:16px 14px 16px 44px!important;color:var(--vg-teal-dark);font-size:.85rem;font-weight:800;cursor:pointer}
.vg-checkout-classic #payment .payment_box{margin:0!important;padding:0 14px 14px 44px!important;background:transparent!important;color:var(--vg-muted);font-size:.72rem;line-height:1.45}
.vg-checkout-classic #payment .payment_box:before{display:none!important}
.vg-checkout-classic #payment .place-order{margin:0!important;padding:15px 0 0!important;border-top:1px solid var(--vg-border);background:transparent!important}
.vg-checkout-classic #payment .woocommerce-privacy-policy-text,.vg-checkout-classic #payment .woocommerce-terms-and-conditions-wrapper{color:var(--vg-muted);font-size:.69rem;line-height:1.45}
.vg-checkout-classic #place_order{display:flex!important;align-items:center;justify-content:center;float:none!important;width:100%!important;min-height:56px!important;margin:16px 0 0!important;padding:0 20px!important;border:1px solid var(--vg-teal)!important;border-radius:13px!important;background:var(--vg-teal)!important;color:#fff!important;font-family:var(--vg-font-heading)!important;font-size:.95rem!important;font-weight:800!important;line-height:1!important;box-shadow:none!important;transition:background .18s ease,transform .18s ease!important}
.vg-checkout-classic #place_order:hover{background:var(--vg-teal-dark)!important;transform:translateY(-1px)}
.vg-checkout-classic .blockUI.blockOverlay{border-radius:20px!important;background:rgba(246,245,242,.72)!important}

@media(max-width:1040px){
  .vg-checkout-classic form.checkout{grid-template-columns:1fr!important;gap:20px!important}
  .vg-checkout-classic #customer_details{grid-column:1;grid-row:auto}
  .vg-checkout-classic #order_review_heading{grid-column:1;grid-row:auto;position:static!important;margin-top:0!important}
  .vg-checkout-classic #order_review{grid-column:1;grid-row:auto;position:static!important}
}
@media(max-width:720px){
  .vg-checkout-page{padding:28px 0 58px}
  .vg-checkout-shell{width:min(calc(100% - 20px),1200px)}
  .vg-checkout-page__head{display:flex;flex-direction:column;gap:13px;margin-bottom:24px}
  .vg-checkout-page__title-wrap{padding-right:0;width:100%}
  .vg-checkout-back{position:static;order:3;align-self:flex-start}
  body.woocommerce-checkout .vg-checkout-heading{gap:12px}
  body.woocommerce-checkout .vg-checkout-heading__copy{gap:5px}
  body.woocommerce-checkout .vg-checkout-page__title-icon{width:62px;height:62px;min-height:62px;flex-basis:62px;border-radius:17px}
  body.woocommerce-checkout .vg-checkout-page__title-icon svg{width:28px;height:28px}
  body.woocommerce-checkout .vg-checkout-heading__copy>h1{font-size:2.18rem}
  .vg-checkout-page__lead{margin-top:13px;font-size:.88rem;line-height:1.5}
  .vg-checkout-classic #customer_details{padding:20px 16px;border-radius:20px}
  .vg-checkout-classic #order_review_heading{padding:22px 18px 0;border-radius:20px 20px 0 0}
  .vg-checkout-classic #order_review{padding:14px 18px 20px;border-radius:0 0 20px 20px}
  .vg-checkout-classic .form-row-first,.vg-checkout-classic .form-row-last{float:none!important;width:100%!important}
  .vg-checkout-classic .vg-ppl-choice{grid-template-columns:44px minmax(0,1fr) auto;gap:9px;padding:10px}
}
@media(max-width:420px){
  body.woocommerce-checkout .vg-checkout-heading__copy>h1{font-size:1.88rem}
  .vg-checkout-classic .vg-ppl-choice{grid-template-columns:40px minmax(0,1fr);}
  .vg-checkout-classic .vg-ppl-choice__price{grid-column:2;margin-top:2px}
}


/* =========================================================
   v156 — CHECKOUT FLOW / SEPARATE SHIPPING + PAYMENT
   ========================================================= */

/* Left-column flow. */
.vg-checkout-classic form.checkout{align-items:start}
.vg-checkout-classic #customer_details{grid-column:1;grid-row:1;margin-bottom:18px!important}
.vg-checkout-classic .vg-checkout-decisions{grid-column:1;grid-row:2;display:grid;gap:16px}
.vg-checkout-decision{padding:24px 26px;border:1px solid var(--vg-border);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(28,29,31,.045)}
.vg-checkout-decision__head{display:grid;grid-template-columns:36px minmax(0,1fr);gap:13px;align-items:start;margin-bottom:18px}
.vg-checkout-decision__step{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--vg-teal);color:#fff;font-family:var(--vg-font-heading);font-size:.78rem;font-weight:800}
.vg-checkout-decision__step--soft{background:#edf3ef;color:var(--vg-green)}
.vg-checkout-decision__head h2{margin:1px 0 5px;color:var(--vg-teal-dark);font-family:var(--vg-font-heading);font-size:1.16rem;line-height:1.15}
.vg-checkout-decision__head p{margin:0;color:var(--vg-muted);font-size:.78rem;line-height:1.45}
.vg-checkout-decision__waiting{margin:0;padding:13px 14px;border-radius:12px;background:#f5f5f2;color:var(--vg-muted);font-size:.78rem;line-height:1.4}

/* Shipping selector lives here; PPL plugin controls stay untouched and Balíkovna can become a third card later. */
[data-vg-shipping-slot] .woocommerce-shipping-methods{display:grid!important;gap:10px!important;margin:0!important;padding:0!important;list-style:none!important}
[data-vg-shipping-slot] .woocommerce-shipping-methods li{position:relative!important;margin:0!important;padding:0!important}
[data-vg-shipping-slot] input.shipping_method{position:absolute!important;opacity:0!important;pointer-events:none!important}
[data-vg-shipping-slot] label{display:block!important;margin:0!important;cursor:pointer!important}
[data-vg-shipping-slot] .vg-ppl-choice{min-height:78px!important;padding:13px 14px!important;border-radius:15px!important;background:var(--vg-surface)!important}
[data-vg-shipping-slot] li.is-selected .vg-ppl-choice{border-color:var(--vg-green)!important;background:#f3f8f5!important;box-shadow:0 0 0 2px rgba(46,125,90,.09)!important}
[data-vg-shipping-slot] .vg-shipping-option--generic label{min-height:70px;padding:16px 16px 16px 48px!important;border:1px solid var(--vg-border);border-radius:15px;background:var(--vg-surface);color:var(--vg-teal-dark);font-weight:800;transition:.16s ease}
[data-vg-shipping-slot] .vg-shipping-option--generic label:before{content:"";position:absolute;left:16px;top:50%;width:17px;height:17px;border:2px solid #aeb7b3;border-radius:50%;transform:translateY(-50%);background:#fff;box-shadow:inset 0 0 0 4px #fff}
[data-vg-shipping-slot] .vg-shipping-option--generic.is-selected label{border-color:var(--vg-green);background:#f3f8f5;box-shadow:0 0 0 2px rgba(46,125,90,.09)}
[data-vg-shipping-slot] .vg-shipping-option--generic.is-selected label:before{border-color:var(--vg-green);background:var(--vg-green)}

/* Payment is now a dedicated decision block, not part of the summary. */
[data-vg-payment-slot] ul.payment_methods{display:grid!important;gap:10px!important;margin:0!important;padding:0!important;border:0!important;list-style:none!important}
[data-vg-payment-slot] .wc_payment_method{position:relative;margin:0!important;padding:0!important;border:1px solid var(--vg-border)!important;border-radius:15px!important;background:var(--vg-surface)!important;overflow:hidden;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
[data-vg-payment-slot] .wc_payment_method.is-selected{border-color:var(--vg-green)!important;background:#f3f8f5!important;box-shadow:0 0 0 2px rgba(46,125,90,.09)}
[data-vg-payment-slot] .wc_payment_method>input{position:absolute!important;left:16px!important;top:19px!important;width:18px!important;height:18px!important;accent-color:var(--vg-green)}
[data-vg-payment-slot] .wc_payment_method>label{display:block!important;margin:0!important;padding:17px 16px 17px 48px!important;color:var(--vg-teal-dark)!important;font-size:.86rem!important;font-weight:800!important;cursor:pointer!important}
[data-vg-payment-slot] .payment_box{margin:0!important;padding:0 16px 16px 48px!important;background:transparent!important;color:var(--vg-muted)!important;font-size:.74rem!important;line-height:1.48!important}
[data-vg-payment-slot] .payment_box:before{display:none!important}

/* Optional account: one checkbox, zero extra passwords. */
.vg-checkout-account-slot .woocommerce-account-fields{margin:0!important}
.vg-checkout-account-slot .woocommerce-account-fields>p{margin:0!important}
.vg-checkout-account-slot label.woocommerce-form__label-for-checkbox{display:flex!important;align-items:flex-start;gap:11px;margin:0!important;padding:14px 16px!important;border:1px solid var(--vg-border);border-radius:14px;background:var(--vg-surface);color:var(--vg-teal-dark);font-size:.84rem;font-weight:800;cursor:pointer}
.vg-checkout-account-slot #createaccount{flex:0 0 18px;width:18px!important;height:18px!important;margin:1px 0 0!important;accent-color:var(--vg-green)}
.vg-checkout-account-slot .create-account:not(p){margin-top:10px}
.vg-account-label-copy{line-height:1.4}

/* Right column is summary only. Native selectors are relocated to the left. */
.vg-checkout-classic #order_review_heading{grid-column:2;grid-row:1;align-self:start}
.vg-checkout-classic #order_review{grid-column:2;grid-row:1;align-self:start;padding-top:72px!important}
.vg-checkout-classic #order_review .woocommerce-shipping-totals{display:none!important}
.vg-checkout-classic #order_review #payment{margin:0!important;padding:0!important;background:transparent!important}
.vg-checkout-classic #order_review #payment>ul.payment_methods{display:none!important}
.vg-checkout-classic #order_review #payment .place-order{margin:0!important;padding-top:16px!important}
.vg-checkout-selected-shipping th,.vg-checkout-selected-shipping td{padding:13px 0!important}
.vg-checkout-selected-shipping td{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right!important}
.vg-checkout-selected-shipping td span{max-width:190px;color:var(--vg-text);font-size:.72rem;line-height:1.25;white-space:normal}
.vg-checkout-selected-shipping td strong{color:var(--vg-ink);font-size:.82rem}

/* Telephone is deliberately required for carrier notifications. */
.vg-checkout-classic #billing_phone_field label:after{content:" *";color:var(--vg-sale)}

/* Login/coupon prompts remain small utilities instead of becoming another decision block. */
.vg-checkout-classic .woocommerce-form-login-toggle,.vg-checkout-classic .woocommerce-form-coupon-toggle{margin-bottom:12px}

@media(max-width:1040px){
  .vg-checkout-classic #customer_details{grid-column:1;grid-row:1}
  .vg-checkout-classic .vg-checkout-decisions{grid-column:1;grid-row:2}
  .vg-checkout-classic #order_review_heading{grid-column:1;grid-row:3;position:static!important;margin-top:2px!important}
  .vg-checkout-classic #order_review{grid-column:1;grid-row:4;position:static!important;padding-top:14px!important}
}
@media(max-width:720px){
  .vg-checkout-decision{padding:19px 15px;border-radius:20px}
  .vg-checkout-decision__head{grid-template-columns:31px minmax(0,1fr);gap:10px;margin-bottom:14px}
  .vg-checkout-decision__step{width:29px;height:29px}
  .vg-checkout-decision__head h2{font-size:1.02rem}
  [data-vg-shipping-slot] .vg-ppl-choice{min-height:72px!important;padding:11px!important}
  [data-vg-payment-slot] .wc_payment_method>label{padding:15px 12px 15px 44px!important}
  [data-vg-payment-slot] .wc_payment_method>input{left:13px!important;top:17px!important}
  [data-vg-payment-slot] .payment_box{padding:0 12px 14px 44px!important}
}


/* =========================================================
   v157 — CHECKOUT FINAL CLARITY
   ========================================================= */
/* 1 = údaje, 2 = doprava, 3 = platba. */
.vg-checkout-classic .woocommerce-billing-fields>h3{display:flex!important;align-items:center;gap:13px;font-size:0!important;margin-bottom:18px!important}
.vg-checkout-classic .woocommerce-billing-fields>h3:before{content:"1";display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--vg-teal);color:#fff;font-family:var(--vg-font-heading);font-size:.78rem;font-weight:800}
.vg-checkout-classic .woocommerce-billing-fields>h3:after{content:"Kontaktní a doručovací údaje";font-size:1.35rem;line-height:1.15}

/* Země: čistá systémová šipka, žádný rozbitý select arrow. */
.vg-checkout-classic #billing_country_field .select2-container{width:100%!important}
.vg-checkout-classic #billing_country_field .select2-selection--single{position:relative!important;padding-right:44px!important}
.vg-checkout-classic #billing_country_field .select2-selection__arrow{right:14px!important;top:50%!important;width:18px!important;height:18px!important;transform:translateY(-50%)!important}
.vg-checkout-classic #billing_country_field .select2-selection__arrow b{display:none!important}
.vg-checkout-classic #billing_country_field .select2-selection__arrow:after{content:"";position:absolute;left:4px;top:4px;width:7px;height:7px;border-right:1.8px solid var(--vg-muted);border-bottom:1.8px solid var(--vg-muted);transform:rotate(45deg)}
.vg-checkout-classic #billing_country{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#707174 50%),linear-gradient(135deg,#707174 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:42px!important}

/* Telefon opravdu povinný. */
.vg-checkout-classic #billing_phone_field .optional{display:none!important}
.vg-checkout-classic #billing_phone_field label .required{display:inline!important;margin-left:3px;color:var(--vg-sale)!important;text-decoration:none!important}
.vg-checkout-classic #billing_phone_field label:after{content:none!important}

/* PPL bez ikon — pouze dvě velké, srozumitelné textové volby. */
[data-vg-shipping-slot] label img,[data-vg-shipping-slot] label svg,[data-vg-shipping-slot] .vg-ppl-choice__brand{display:none!important}
[data-vg-shipping-slot] .vg-shipping-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:72px;padding:15px 16px 15px 48px;border:1px solid var(--vg-border);border-radius:15px;background:var(--vg-surface);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;position:relative}
[data-vg-shipping-slot] label .vg-shipping-choice:before{content:"";position:absolute;left:16px;top:50%;width:18px;height:18px;border:2px solid #aeb7b3;border-radius:50%;transform:translateY(-50%);background:#fff;box-shadow:inset 0 0 0 4px #fff}
[data-vg-shipping-slot] li.is-selected .vg-shipping-choice{border-color:var(--vg-green);background:#f3f8f5;box-shadow:0 0 0 2px rgba(46,125,90,.09)}
[data-vg-shipping-slot] li.is-selected .vg-shipping-choice:before{border-color:var(--vg-green);background:var(--vg-green)}
[data-vg-shipping-slot] .vg-shipping-choice__copy{display:flex;flex-direction:column;gap:3px;min-width:0}
[data-vg-shipping-slot] .vg-shipping-choice__copy strong{color:var(--vg-teal-dark);font-size:.86rem;line-height:1.2}
[data-vg-shipping-slot] .vg-shipping-choice__copy small{color:var(--vg-muted);font-size:.7rem;line-height:1.35}
[data-vg-shipping-slot] .vg-shipping-choice__price{color:var(--vg-ink);font-size:.82rem;font-weight:800;white-space:nowrap}

/* Platba: cena metody je okamžitě vidět. */
[data-vg-payment-slot] .wc_payment_method>label{display:flex!important;align-items:center;gap:12px;padding-right:16px!important}
[data-vg-payment-slot] .vg-payment-price{margin-left:auto;color:var(--vg-ink);font-size:.8rem;font-weight:800;white-space:nowrap}

/* Rekapitulace: křížek u každé položky, bez návratu do kroku 1. */
.vg-checkout-product-name{display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:8px;align-items:start;width:100%}
.vg-checkout-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-5px -3px 0 0;padding:0;border:0;border-radius:9px;background:transparent;color:var(--vg-muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .16s ease,color .16s ease}
.vg-checkout-remove:hover{background:#f5ece9;color:var(--vg-sale)}
.vg-checkout-remove:disabled{opacity:.35;cursor:wait}
.vg-checkout-classic table.shop_table .product-name{padding-right:4px!important}

@media(max-width:720px){
  .vg-checkout-classic .woocommerce-billing-fields>h3{gap:10px}
  .vg-checkout-classic .woocommerce-billing-fields>h3:before{flex-basis:29px;width:29px;height:29px}
  .vg-checkout-classic .woocommerce-billing-fields>h3:after{font-size:1.02rem}
  [data-vg-shipping-slot] .vg-shipping-choice{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:68px;padding:12px 11px 12px 43px}
  [data-vg-shipping-slot] label .vg-shipping-choice:before{left:13px;width:17px;height:17px}
  [data-vg-shipping-slot] .vg-shipping-choice__copy small{font-size:.66rem}
  .vg-checkout-product-name{grid-template-columns:minmax(0,1fr) 28px}
}

/* =========================================================
   v158 — CHECKOUT FINAL UX FIXES
   ========================================================= */
/* Checkout nikdy nesmí přetéct doprava. */
body.woocommerce-checkout{overflow-x:hidden!important}
body.woocommerce-checkout .vg-checkout-page,
body.woocommerce-checkout .vg-checkout-shell,
body.woocommerce-checkout .vg-checkout-classic,
body.woocommerce-checkout .vg-checkout-classic>.woocommerce,
body.woocommerce-checkout .vg-checkout-classic form.checkout{max-width:100%!important;box-sizing:border-box!important}
body.woocommerce-checkout .vg-checkout-classic form.checkout{width:100%!important;min-width:0!important;grid-template-columns:minmax(0,1.38fr) minmax(330px,.72fr)!important}
body.woocommerce-checkout .vg-checkout-classic #customer_details,
body.woocommerce-checkout .vg-checkout-classic .vg-checkout-decisions,
body.woocommerce-checkout .vg-checkout-classic #order_review_heading,
body.woocommerce-checkout .vg-checkout-classic #order_review{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
body.woocommerce-checkout .vg-checkout-classic table.shop_table{table-layout:fixed!important}
body.woocommerce-checkout .vg-checkout-classic table.shop_table .product-total{width:88px!important}

/* Payment radio sedí na ose prvního řádku názvu, nikoli uprostřed celé karty. */
[data-vg-payment-slot] .wc_payment_method>input{
  top:17px!important;
  transform:none!important;
}
[data-vg-payment-slot] .wc_payment_method>label{
  align-items:flex-start!important;
  min-height:50px!important;
  line-height:1.25!important;
}
[data-vg-payment-slot] .vg-payment-price{padding-top:1px}

/* Garantovaná jednoduchá registrace z objednávky. */
.vg-checkout-account-v158 .vg-checkout-account-choice{
  display:flex!important;
  align-items:flex-start!important;
  gap:12px!important;
  margin:0!important;
  padding:15px 16px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:15px!important;
  background:var(--vg-surface)!important;
  cursor:pointer!important;
}
.vg-checkout-account-v158 .vg-checkout-account-choice>input{
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  margin:2px 0 0!important;
  accent-color:var(--vg-green)!important;
}
.vg-checkout-account-v158 .vg-checkout-account-choice>span{display:flex;min-width:0;flex-direction:column;gap:3px}
.vg-checkout-account-v158 .vg-checkout-account-choice strong{color:var(--vg-teal-dark);font-size:.86rem;line-height:1.25}
.vg-checkout-account-v158 .vg-checkout-account-choice small{color:var(--vg-muted);font-size:.7rem;font-weight:500;line-height:1.4}
.vg-checkout-account-status{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid #dbe7e0;border-radius:13px;background:#f3f8f5;color:var(--vg-teal-dark);font-size:.8rem;font-weight:800}
/* Když Woo vloží svůj standardní account checkbox, používáme pouze naši čistou variantu. */
.vg-checkout-classic #customer_details .woocommerce-account-fields{display:none!important}

/* Zákonný CTA text musí zůstat čitelný i na užší pravé kartě. */
.vg-checkout-classic #place_order{white-space:normal!important;line-height:1.25!important;min-height:58px!important;padding:11px 16px!important}

@media(max-width:1040px){
  body.woocommerce-checkout .vg-checkout-classic form.checkout{grid-template-columns:minmax(0,1fr)!important}
  body.woocommerce-checkout .vg-checkout-classic table.shop_table .product-total{width:100px!important}
}
@media(max-width:720px){
  body.woocommerce-checkout .vg-checkout-shell{width:calc(100% - 20px)!important}
  [data-vg-payment-slot] .wc_payment_method>input{top:15px!important}
  .vg-checkout-account-v158 .vg-checkout-account-choice{padding:13px!important}
}
.vg-postcode-country-error{display:block;margin-top:6px;color:var(--vg-sale);font-size:.7rem;font-weight:700;line-height:1.35}
.vg-checkout-classic .form-row.woocommerce-invalid #billing_postcode{border-color:var(--vg-sale)!important;outline:2px solid rgba(154,88,79,.09)!important}


/* =========================================================
   v159 — FINAL BUGFIXES
   ========================================================= */
/* Plovoucí produktová lišta: odstranění artefaktů „růžků“ na hraně viewportu.
   Solidní plocha + paint clipping je stabilnější než backdrop-filter při fixed+transform. */
.vg-floating-product__inner{
  overflow:hidden!important;
  contain:paint;
  background:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background-clip:padding-box!important;
}
.vg-floating-product:not(.is-visible){pointer-events:none!important}

/* Radio plateb drží osu prvního řádku i u rozbaleného popisu. */
[data-vg-payment-slot] .wc_payment_method{position:relative!important}
[data-vg-payment-slot] .wc_payment_method>input[type="radio"]{
  top:18px!important;
  margin:0!important;
}
[data-vg-payment-slot] .wc_payment_method>label{
  padding-top:15px!important;
  align-items:flex-start!important;
}


/* =========================================================
   v160 — FLOATING BAR: ONE PHYSICAL SURFACE, NO CORNER BLEED
   ========================================================= */
.vg-floating-product{
  border:1px solid rgba(49,72,75,.12)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 20px 55px rgba(20,28,29,.18),0 2px 7px rgba(20,28,29,.07)!important;
  overflow:clip!important;
  isolation:isolate!important;
  contain:layout paint!important;
  -webkit-mask-image:-webkit-radial-gradient(white,black)!important;
}
.vg-floating-product__inner{
  overflow:visible!important;
  contain:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
@media(max-width:660px){
  .vg-floating-product{border-radius:16px!important}
}

/* Platební radio musí po AJAX přepočtu zůstat vizuálně na stejné volbě. */
[data-vg-payment-slot] .wc_payment_method.is-selected{
  border-color:var(--vg-green)!important;
  background:#f3f8f5!important;
  box-shadow:0 0 0 2px rgba(46,125,90,.09)!important;
}

/* =========================================================
   v161 — CHECKOUT SHIPPING PROXY / PPL ISOLATION
   Native Woo/PPL shipping radios stay in order_review for plugin logic,
   while the customer interacts only with these independent cards.
   ========================================================= */
.vg-checkout-classic #order_review .woocommerce-shipping-totals{display:none!important}
[data-vg-shipping-slot] .vg-shipping-proxy-list{display:grid;gap:10px;margin:0;padding:0}
[data-vg-shipping-slot] .vg-shipping-proxy{
  appearance:none;-webkit-appearance:none;width:100%;margin:0;padding:0;border:0;background:transparent;
  display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:12px;text-align:left;
  cursor:pointer;color:inherit;font:inherit
}
[data-vg-shipping-slot] .vg-shipping-proxy__radio{
  width:18px;height:18px;border:2px solid #aeb7b3;border-radius:50%;background:#fff;
  box-shadow:inset 0 0 0 4px #fff;transition:.16s ease;justify-self:center
}
[data-vg-shipping-slot] .vg-shipping-proxy__content{display:block;min-width:0}
[data-vg-shipping-slot] .vg-shipping-proxy__content>.vg-shipping-choice{
  min-height:72px;padding:15px 16px;border:1px solid var(--vg-border);border-radius:15px;background:var(--vg-surface);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease
}
[data-vg-shipping-slot] .vg-shipping-proxy.is-selected .vg-shipping-proxy__radio{
  border-color:var(--vg-green);background:var(--vg-green)
}
[data-vg-shipping-slot] .vg-shipping-proxy.is-selected .vg-shipping-proxy__content>.vg-shipping-choice{
  border-color:var(--vg-green);background:#f3f8f5;box-shadow:0 0 0 2px rgba(46,125,90,.09)
}
[data-vg-shipping-slot] .vg-shipping-proxy:hover .vg-shipping-proxy__content>.vg-shipping-choice{border-color:#b9c9c1}
[data-vg-shipping-slot] .vg-shipping-proxy:focus-visible{outline:3px solid rgba(46,125,90,.18);outline-offset:3px;border-radius:16px}
[data-vg-shipping-slot] .vg-shipping-proxy .vg-shipping-choice{grid-template-columns:minmax(0,1fr) auto;padding-left:16px}
[data-vg-shipping-slot] .vg-shipping-proxy .vg-shipping-choice:before{display:none!important}
@media (max-width:680px){
  [data-vg-shipping-slot] .vg-shipping-proxy{grid-template-columns:18px minmax(0,1fr);gap:9px}
  [data-vg-shipping-slot] .vg-shipping-proxy__radio{width:17px;height:17px}
  [data-vg-shipping-slot] .vg-shipping-proxy__content>.vg-shipping-choice{min-height:68px;padding:12px 11px}
}


/* =========================================================
   v235 — CART + CHECKOUT IDENTICAL FULL-WIDTH PROGRESS
   =========================================================
   Pouze vizuální sjednocení průběhu objednávky.
   Košík i checkout používají plnou šířku stejného 1200px shellu,
   takže při přechodu mezi krokem 1 a 2 progress bar neposkočí.
   Checkout, měny, doprava, platby a business logika beze změny.
*/
body.woocommerce-cart .vg-order-progress,
body.woocommerce-checkout .vg-order-progress--checkout{
  width:100%!important;
}

/* =========================================================
   v163 — ORDER RECEIVED / VIGRES BRAND CULTURE
   ========================================================= */
body.woocommerce-order-received{
  background:var(--vg-bg,#F6F5F2)!important;
  color:var(--vg-text,#1C1D1F);
}
body.woocommerce-order-received .vg-thankyou-page{
  padding:54px 20px 88px;
  min-height:65vh;
}
body.woocommerce-order-received .vg-thankyou-shell{
  width:min(1200px,100%);
  margin:0 auto;
}
body.woocommerce-order-received .vg-thankyou-shell>.woocommerce{
  width:100%;max-width:none;margin:0;
}
body.woocommerce-order-received .woocommerce-order{
  display:block;
  width:100%;
}
body.woocommerce-order-received .vg-thankyou-hero{
  display:flex;align-items:flex-start;gap:22px;
  padding:30px 32px;margin:0 0 20px;
  border:1px solid var(--vg-border,#E2E1DC);
  border-radius:26px;background:#fff;
  box-shadow:0 18px 50px rgba(35,51,52,.07);
}
body.woocommerce-order-received .vg-thankyou-check{
  flex:0 0 64px;width:64px;height:64px;border-radius:20px;
  display:grid;place-items:center;
  background:#edf6f1;color:var(--vg-green,#2E7D5A);
  border:1px solid rgba(46,125,90,.16);
}
body.woocommerce-order-received .vg-thankyou-kicker{
  margin:1px 0 7px;font-size:12px;font-weight:800;letter-spacing:.16em;
  color:#527368;
}
body.woocommerce-order-received .vg-thankyou-hero h1{
  margin:0 0 8px;font-family:Ubuntu,system-ui,sans-serif;
  font-size:clamp(34px,4vw,52px);line-height:1.02;letter-spacing:-.035em;
  color:#17191a;
}
body.woocommerce-order-received .vg-thankyou-hero p{
  margin:0;max-width:760px;font-size:17px;line-height:1.6;color:#707174;
}
/* The branded hero replaces Woo's generic top heading when a plugin/theme adds one. */
body.woocommerce-order-received .woocommerce-order>h1:first-child,
body.woocommerce-order-received .woocommerce-order>h2:first-child,
body.woocommerce-order-received .woocommerce-order>p.woocommerce-notice:first-of-type{
  display:none!important;
}
body.woocommerce-order-received .woocommerce-order-overview{
  list-style:none!important;margin:0 0 20px!important;padding:18px 20px!important;
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;
  border:1px solid var(--vg-border,#E2E1DC);border-radius:22px;background:#fff;
  box-shadow:0 12px 34px rgba(35,51,52,.05);
}
body.woocommerce-order-received .woocommerce-order-overview li{
  min-width:0;margin:0!important;padding:5px 18px!important;
  border-right:1px solid #ecebe7!important;
  text-transform:none!important;font-size:11px!important;letter-spacing:.04em;
  color:#858789!important;
}
body.woocommerce-order-received .woocommerce-order-overview li:first-child{padding-left:4px!important}
body.woocommerce-order-received .woocommerce-order-overview li:last-child{border-right:0!important}
body.woocommerce-order-received .woocommerce-order-overview li strong{
  display:block;margin-top:5px;font-size:15px;line-height:1.35;letter-spacing:0;
  color:#263638;font-weight:800;text-transform:none;
  overflow-wrap:anywhere;
}
body.woocommerce-order-received .woocommerce-order>p:not(.woocommerce-notice),
body.woocommerce-order-received .woocommerce-order>div>p{
  color:#63686a;line-height:1.65;
}
body.woocommerce-order-received .woocommerce-order h2,
body.woocommerce-order-received .woocommerce-order h3{
  font-family:Ubuntu,system-ui,sans-serif;color:#243638;
  letter-spacing:-.02em;
}
body.woocommerce-order-received .woocommerce-order h2{font-size:25px;margin:30px 0 14px}
body.woocommerce-order-received .woocommerce-order h3{font-size:19px;margin:20px 0 10px}
/* Standard Woo blocks + custom bank/QR plugin output get the same calm card language. */
body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{
  margin:20px 0 0!important;padding:24px 26px!important;
  border:1px solid var(--vg-border,#E2E1DC)!important;border-radius:24px!important;
  background:#fff!important;box-shadow:0 12px 34px rgba(35,51,52,.045)!important;
}
body.woocommerce-order-received .wc-bacs-bank-details-account-name{margin-top:0!important}
body.woocommerce-order-received ul.wc-bacs-bank-details{
  list-style:none;margin:8px 0 0!important;padding:16px 0 0!important;
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid #ecebe7;
}
body.woocommerce-order-received ul.wc-bacs-bank-details li{
  margin:0!important;padding:4px 18px!important;border-right:1px solid #ecebe7;
  font-size:11px!important;color:#858789!important;text-transform:none!important;
}
body.woocommerce-order-received ul.wc-bacs-bank-details li:first-child{padding-left:0!important}
body.woocommerce-order-received ul.wc-bacs-bank-details li:last-child{border-right:0}
body.woocommerce-order-received ul.wc-bacs-bank-details li strong{
  display:block;margin-top:4px;font-size:15px;color:#243638;text-transform:none;
}
body.woocommerce-order-received table.woocommerce-table{
  width:100%;border-collapse:separate!important;border-spacing:0!important;
  border:1px solid var(--vg-border,#E2E1DC)!important;border-radius:18px!important;
  overflow:hidden;background:#fff;
}
body.woocommerce-order-received table.woocommerce-table th,
body.woocommerce-order-received table.woocommerce-table td{
  padding:14px 16px!important;border:0!important;border-bottom:1px solid #ecebe7!important;
  vertical-align:middle;
}
body.woocommerce-order-received table.woocommerce-table tr:last-child th,
body.woocommerce-order-received table.woocommerce-table tr:last-child td{border-bottom:0!important}
body.woocommerce-order-received table.woocommerce-table thead th{
  background:#fafaf8;font-size:12px;text-transform:none;color:#536062;font-weight:800;
}
body.woocommerce-order-received table.woocommerce-table tfoot th{color:#334548;font-weight:800}
body.woocommerce-order-received table.woocommerce-table tfoot tr:last-child th,
body.woocommerce-order-received table.woocommerce-table tfoot tr:last-child td{
  font-size:17px;font-weight:900;color:#1e3336;
}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{
  display:grid!important;grid-template-columns:1fr 1fr;gap:18px;margin:0!important;
}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column{
  float:none!important;width:auto!important;margin:0!important;
}
body.woocommerce-order-received .woocommerce-customer-details address{
  padding:18px 20px!important;border:1px solid #e7e6e1!important;border-radius:17px!important;
  background:#fafaf8;line-height:1.65;font-style:normal;
}
/* Catch the custom QR payment block even when it is emitted without Woo's usual classes. */
body.woocommerce-order-received .woocommerce-order img[src*="qr" i],
body.woocommerce-order-received .woocommerce-order img[alt*="QR" i]{
  display:block;max-width:230px;height:auto;padding:10px;background:#fff;
  border:1px solid #e4e3df;border-radius:16px;
}
body.woocommerce-order-received .woocommerce-order a{color:#365e53;text-underline-offset:3px}
body.woocommerce-order-received .woocommerce-order a:hover{color:#22483d}
@media(max-width:860px){
  body.woocommerce-order-received .woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
  body.woocommerce-order-received .woocommerce-order-overview li{border-right:0!important;border-bottom:1px solid #ecebe7;padding:12px 8px!important}
  body.woocommerce-order-received .woocommerce-order-overview li:nth-last-child(-n+1){border-bottom:0}
  body.woocommerce-order-received ul.wc-bacs-bank-details{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.woocommerce-order-received ul.wc-bacs-bank-details li{padding:10px 12px!important;border-right:0;border-bottom:1px solid #ecebe7}
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{grid-template-columns:1fr}
}
@media(max-width:620px){
  body.woocommerce-order-received .vg-thankyou-page{padding:28px 10px 60px}
  body.woocommerce-order-received .vg-thankyou-hero{padding:20px 18px;border-radius:20px;gap:14px}
  body.woocommerce-order-received .vg-thankyou-check{flex-basis:48px;width:48px;height:48px;border-radius:15px}
  body.woocommerce-order-received .vg-thankyou-check svg{width:23px;height:23px}
  body.woocommerce-order-received .vg-thankyou-kicker{font-size:10px}
  body.woocommerce-order-received .vg-thankyou-hero h1{font-size:32px}
  body.woocommerce-order-received .vg-thankyou-hero p{font-size:15px}
  body.woocommerce-order-received .woocommerce-order-overview{grid-template-columns:1fr;padding:8px 16px!important;border-radius:18px}
  body.woocommerce-order-received .woocommerce-order-overview li{padding:10px 0!important}
  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-customer-details{padding:18px 14px!important;border-radius:19px!important}
  body.woocommerce-order-received ul.wc-bacs-bank-details{grid-template-columns:1fr}
  body.woocommerce-order-received table.woocommerce-table th,
  body.woocommerce-order-received table.woocommerce-table td{padding:12px 10px!important;font-size:13px}
}

/* =========================================================
   v164 — THANK-YOU FINAL INFORMATION ARCHITECTURE
   Priority: confirmation → payment/QR → order → addresses.
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-page{padding-top:38px}
body.woocommerce-order-received .vg-thankyou-hero{
  margin-bottom:18px;
  background:linear-gradient(135deg,#fff 0%,#fbfcfa 100%);
}
body.woocommerce-order-received .vg-thankyou-section-head{
  margin:0 0 18px;
}
body.woocommerce-order-received .vg-thankyou-section-kicker{
  display:block;margin:0 0 5px;font-size:11px;font-weight:900;letter-spacing:.16em;color:#60776b;
}
body.woocommerce-order-received .vg-thankyou-section-head h2{
  margin:0 0 5px!important;font-size:26px!important;line-height:1.12!important;
}
body.woocommerce-order-received .vg-thankyou-section-head p{
  margin:0!important;color:#707174!important;font-size:14px;line-height:1.55;
}
body.woocommerce-order-received .vg-thankyou-payment{
  margin:0 0 18px;padding:24px 26px;
  border:1px solid var(--vg-border,#E2E1DC);border-radius:24px;background:#fff;
  box-shadow:0 14px 38px rgba(35,51,52,.055);
}
body.woocommerce-order-received .vg-thankyou-payment-grid{
  display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.55fr);gap:22px;align-items:stretch;
}
body.woocommerce-order-received .vg-thankyou-payment-qr,
body.woocommerce-order-received .vg-thankyou-payment-bank{
  min-width:0;border:1px solid #e8e7e2;border-radius:19px;background:#fafaf8;
}
body.woocommerce-order-received .vg-thankyou-payment-qr{
  display:flex;align-items:center;justify-content:center;padding:18px;
}
body.woocommerce-order-received .vg-thankyou-payment-qr>*{max-width:100%!important;margin:0!important}
body.woocommerce-order-received .vg-thankyou-payment-qr h2,
body.woocommerce-order-received .vg-thankyou-payment-qr h3{font-size:18px!important;margin:0 0 10px!important}
body.woocommerce-order-received .vg-thankyou-payment-qr img[src*="qr" i],
body.woocommerce-order-received .vg-thankyou-payment-qr img[alt*="QR" i]{
  max-width:220px!important;width:min(220px,100%)!important;padding:8px!important;border-radius:13px!important;
}
body.woocommerce-order-received .vg-thankyou-payment-bank{padding:4px 20px 18px}
body.woocommerce-order-received .vg-thankyou-payment-bank .woocommerce-bacs-bank-details{
  margin:0!important;padding:16px 0 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment-bank .woocommerce-bacs-bank-details h2{margin:8px 0 10px!important;font-size:20px!important}
body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
  grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:8px!important;
}
body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
  padding:11px 14px!important;border-bottom:1px solid #ecebe7;border-right:0!important;
}
body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(odd){padding-left:0!important}
body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){border-bottom:0}
body.woocommerce-order-received .woocommerce-order-overview.vg-thankyou-meta{
  margin:0 0 18px!important;box-shadow:none;background:#fbfbf9;
}
body.woocommerce-order-received .woocommerce-order-details.vg-thankyou-order-card{
  margin-top:18px!important;
}
body.woocommerce-order-received .vg-thankyou-order-card>h2{
  font-size:26px!important;margin:0 0 18px!important;
}
body.woocommerce-order-received .vg-thankyou-product-line{
  display:flex;align-items:center;gap:13px;min-width:0;
}
body.woocommerce-order-received .vg-thankyou-product-image{
  width:58px!important;height:58px!important;min-width:58px;object-fit:contain!important;padding:4px!important;
  border:1px solid #ecebe7!important;border-radius:13px!important;background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-product-name{min-width:0;font-weight:750;color:#263638}
body.woocommerce-order-received .woocommerce-customer-details{margin-top:18px!important}
body.woocommerce-order-received .woocommerce-customer-details>h2{font-size:26px!important;margin:0 0 18px!important}
body.woocommerce-order-received .vg-address-same-note{
  min-height:112px;display:flex;align-items:center;gap:12px;padding:18px 20px;
  border:1px solid #e7e6e1;border-radius:17px;background:#fafaf8;color:#5f6868;
}
body.woocommerce-order-received .vg-address-same-note span{
  flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf6f1;color:#2E7D5A;font-weight:900;
}
body.woocommerce-order-received .vg-address-same-note p{margin:0!important}

@media(max-width:860px){
  body.woocommerce-order-received .vg-thankyou-page{padding:22px 12px 60px}
  body.woocommerce-order-received .vg-thankyou-payment{padding:18px 16px;border-radius:20px}
  body.woocommerce-order-received .vg-thankyou-payment-grid{grid-template-columns:1fr;gap:12px}
  body.woocommerce-order-received .vg-thankyou-payment-qr{order:1;padding:13px 12px}
  body.woocommerce-order-received .vg-thankyou-payment-bank{order:2;padding:2px 14px 13px}
  body.woocommerce-order-received .vg-thankyou-payment-qr img[src*="qr" i],
  body.woocommerce-order-received .vg-thankyou-payment-qr img[alt*="QR" i]{max-width:190px!important;width:190px!important}
  body.woocommerce-order-received .vg-thankyou-section-head{margin-bottom:12px}
  body.woocommerce-order-received .vg-thankyou-section-head h2{font-size:22px!important}
  body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details{grid-template-columns:1fr}
  body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li,
  body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(odd){padding:9px 0!important;border-bottom:1px solid #ecebe7!important}
  body.woocommerce-order-received .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:last-child{border-bottom:0!important}
  body.woocommerce-order-received .vg-thankyou-product-image{width:48px!important;height:48px!important;min-width:48px}
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{grid-template-columns:1fr!important}
}

@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-hero{padding:17px 15px!important;gap:12px!important;margin-bottom:12px}
  body.woocommerce-order-received .vg-thankyou-check{flex-basis:44px!important;width:44px!important;height:44px!important;border-radius:14px!important}
  body.woocommerce-order-received .vg-thankyou-hero h1{font-size:29px!important;margin-bottom:5px!important}
  body.woocommerce-order-received .vg-thankyou-hero p{font-size:13px!important;line-height:1.45!important}
  body.woocommerce-order-received .vg-thankyou-payment{margin-bottom:12px;padding:15px 13px}
  body.woocommerce-order-received .vg-thankyou-section-kicker{font-size:9px}
  body.woocommerce-order-received .vg-thankyou-section-head p{font-size:12px}
  body.woocommerce-order-received .vg-thankyou-payment-qr img[src*="qr" i],
  body.woocommerce-order-received .vg-thankyou-payment-qr img[alt*="QR" i]{max-width:175px!important;width:175px!important}
  body.woocommerce-order-received .woocommerce-order-overview.vg-thankyou-meta{margin-bottom:12px!important}
  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-customer-details{margin-top:12px!important}
}


/* =========================================================
   v165 — THANK-YOU HARD RESET / ONE PAYMENT BLOCK
   QR left + bank details right. On mobile QR is first.
   ========================================================= */
body.woocommerce-order-received .woocommerce-order-overview.vg-thankyou-meta--hidden-v165{
  display:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165{
  margin:0 0 18px!important;
  padding:26px!important;
  overflow:hidden;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-section-head{
  margin:0 0 20px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-grid{
  display:grid!important;
  grid-template-columns:minmax(270px,.82fr) minmax(0,1.5fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr,
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank{
  min-width:0!important;
  margin:0!important;
  border:1px solid #e7e6e1!important;
  border-radius:20px!important;
  background:#fafaf8!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank{
  grid-column:2!important;
  padding:20px 22px!important;
}
/* QR plugin output can be an arbitrary div. Strip its legacy card chrome only
   inside our dedicated left column. */
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr > *{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr img,
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr canvas{
  display:block!important;
  width:210px!important;
  max-width:100%!important;
  height:auto!important;
  margin:10px auto!important;
  padding:7px!important;
  background:#fff!important;
  border:1px solid #e7e6e1!important;
  border-radius:13px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank .wc-bacs-bank-details-account-name{
  margin:0 0 15px!important;
  font-size:19px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #e7e6e1!important;
  border-radius:15px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
  min-width:0!important;
  margin:0!important;
  padding:13px 15px!important;
  border:0!important;
  border-right:1px solid #ecebe7!important;
  border-bottom:1px solid #ecebe7!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n){border-right:0!important}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){border-bottom:0!important}
body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li strong{
  overflow-wrap:anywhere!important;
}
body.woocommerce-order-received .woocommerce-order-details.vg-thankyou-order-card{
  margin:0 0 18px!important;
}
body.woocommerce-order-received .woocommerce-customer-details{
  margin:0!important;
}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns{
  align-items:start!important;
}

@media(max-width:860px){
  body.woocommerce-order-received .vg-thankyou-payment--v165{
    padding:18px 16px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr{
    grid-column:1!important;
    grid-row:1!important;
    padding:13px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank{
    grid-column:1!important;
    grid-row:2!important;
    padding:16px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr canvas{
    width:185px!important;
    margin:6px auto!important;
  }
}

@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-page{padding-top:16px!important}
  body.woocommerce-order-received .vg-thankyou-hero{margin-bottom:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v165{
    margin-bottom:10px!important;
    padding:14px 12px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-section-head{
    margin-bottom:10px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr{
    padding:10px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-qr canvas{
    width:172px!important;
    margin:4px auto!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank{
    padding:13px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li,
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n),
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){
    border-right:0!important;
    border-bottom:1px solid #ecebe7!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v165 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:last-child{
    border-bottom:0!important;
  }
}


/* =========================================================
   v166 — THANK-YOU FINAL POLISH
   One QR only, compact payment block, stable address grid.
   ========================================================= */
body.woocommerce-order-received .woocommerce-order-overview.vg-thankyou-meta--hidden-v166{
  display:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166{
  margin:0 0 18px!important;
  padding:24px 26px!important;
  overflow:hidden!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-section-head{
  margin:0 0 18px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-grid{
  display:grid!important;
  grid-template-columns:minmax(280px, .78fr) minmax(0, 1.45fr)!important;
  gap:20px!important;
  align-items:start!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr,
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank{
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border:1px solid #e7e6e1!important;
  border-radius:20px!important;
  background:#fafaf8!important;
  box-shadow:none!important;
  align-self:start!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr{
  grid-column:1!important;
  padding:18px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank{
  grid-column:2!important;
  padding:18px 20px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr > *{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr img,
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr canvas{
  display:block!important;
  width:205px!important;
  max-width:100%!important;
  height:auto!important;
  margin:10px auto!important;
  padding:7px!important;
  background:#fff!important;
  border:1px solid #e7e6e1!important;
  border-radius:13px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:12px 0 0!important;
  padding:0!important;
  border:1px solid #e7e6e1!important;
  border-radius:15px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
  min-width:0!important;
  margin:0!important;
  padding:12px 14px!important;
  border:0!important;
  border-right:1px solid #ecebe7!important;
  border-bottom:1px solid #ecebe7!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n){border-right:0!important}
body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){border-bottom:0!important}

/* Force Woo's legacy col-1 / col-2 rules out of the address recap. */
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:start!important;
  margin:0!important;
}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column.col-1,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column.col-2,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--billing-address,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--shipping-address{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--billing-address{grid-column:1!important;grid-row:1!important}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--shipping-address{grid-column:2!important;grid-row:1!important}
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column h2{
  margin:0 0 12px!important;
  font-size:21px!important;
}
body.woocommerce-order-received .woocommerce-customer-details address,
body.woocommerce-order-received .vg-address-same-note{
  min-height:150px!important;
  box-sizing:border-box!important;
}

@media(max-width:860px){
  body.woocommerce-order-received .vg-thankyou-payment--v166{padding:17px 15px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr{
    grid-column:1!important;grid-row:1!important;padding:12px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank{
    grid-column:1!important;grid-row:2!important;padding:15px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr canvas{
    width:182px!important;margin:5px auto!important;
  }
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns,
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns--addresses{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--billing-address,
  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--shipping-address{
    grid-column:1!important;grid-row:auto!important;
  }
  body.woocommerce-order-received .woocommerce-customer-details address,
  body.woocommerce-order-received .vg-address-same-note{min-height:0!important}
}

@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-payment--v166{padding:13px 11px!important;margin-bottom:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-section-head{margin-bottom:9px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr{padding:9px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-qr canvas{width:168px!important;margin:3px auto!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{grid-template-columns:1fr!important}
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li,
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n),
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){
    border-right:0!important;border-bottom:1px solid #ecebe7!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v166 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:last-child{border-bottom:0!important}
}


/* =========================================================
   v167 — THANK-YOU LOCK CANDIDATE
   Payment first, one QR, compact mobile, clean address recap.
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-payment--v167{
  margin:0 0 18px!important;
  padding:22px 24px!important;
  overflow:hidden!important;
  border:1px solid var(--vg-border,#E2E1DC)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(35,51,52,.045)!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-section-head{margin:0 0 16px!important}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-grid{
  display:grid!important;
  grid-template-columns:minmax(245px,.72fr) minmax(0,1.55fr)!important;
  gap:18px!important;
  align-items:start!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr,
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank{
  min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;
  border:1px solid #e7e6e1!important;border-radius:18px!important;
  background:#fafaf8!important;box-shadow:none!important;align-self:start!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr{padding:14px!important}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank{padding:14px 16px!important}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr>*{
  width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr img,
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr canvas{
  display:block!important;width:198px!important;max-width:100%!important;height:auto!important;
  margin:6px auto!important;padding:6px!important;background:#fff!important;
  border:1px solid #e7e6e1!important;border-radius:12px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details{
  width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details h2{
  margin:0 0 8px!important;font-size:19px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;
  margin:8px 0 0!important;padding:0!important;border:1px solid #e7e6e1!important;
  border-radius:14px!important;overflow:hidden!important;background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
  min-width:0!important;margin:0!important;padding:10px 12px!important;border:0!important;
  border-right:1px solid #ecebe7!important;border-bottom:1px solid #ecebe7!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n){border-right:0!important}
body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){border-bottom:0!important}
body.woocommerce-order-received .woocommerce-customer-details.vg-customer-details--same-address .woocommerce-columns,
body.woocommerce-order-received .woocommerce-customer-details.vg-customer-details--same-address .woocommerce-columns--addresses{
  grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr)!important;
}
body.woocommerce-order-received .vg-address-same-note{
  display:flex!important;align-items:center!important;gap:10px!important;
  padding:18px 20px!important;border:1px solid #e7e6e1!important;border-radius:17px!important;
  background:#fafaf8!important;line-height:1.5!important;font-style:normal!important;
}
body.woocommerce-order-received .vg-address-same-note span{
  display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;
  background:#edf6f1;color:#2E7D5A;font-weight:900;
}

@media(max-width:860px){
  body.woocommerce-order-received .vg-thankyou-payment--v167{padding:15px 14px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-grid{grid-template-columns:1fr!important;gap:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr{grid-column:1!important;grid-row:1!important;padding:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank{grid-column:1!important;grid-row:2!important;padding:13px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr canvas{width:176px!important;margin:3px auto!important}
  body.woocommerce-order-received .woocommerce-customer-details.vg-customer-details--same-address .woocommerce-columns,
  body.woocommerce-order-received .woocommerce-customer-details.vg-customer-details--same-address .woocommerce-columns--addresses{grid-template-columns:1fr!important}
}
@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-page{padding-top:14px!important}
  body.woocommerce-order-received .vg-thankyou-hero{margin-bottom:9px!important;padding:17px 15px!important;gap:12px!important}
  body.woocommerce-order-received .vg-thankyou-hero p{font-size:14px!important;line-height:1.45!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167{padding:11px 10px!important;margin-bottom:10px!important;border-radius:18px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-section-head{margin-bottom:7px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-section-head p{display:none!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-section-head h2{font-size:20px!important;margin-bottom:0!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr{padding:7px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-qr canvas{width:164px!important;margin:1px auto!important;padding:5px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank{padding:10px 11px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{grid-template-columns:1fr!important}
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li,
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-child(2n),
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:nth-last-child(-n+2){
    border-right:0!important;border-bottom:1px solid #ecebe7!important;padding:8px 10px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v167 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:last-child{border-bottom:0!important}
  body.woocommerce-order-received .woocommerce-customer-details address,
  body.woocommerce-order-received .vg-address-same-note{min-height:0!important}
}

/* =========================================================
   v168 — THANK-YOU FINAL COMPOSITION CANDIDATE
   Payment = QR + complete manual payment data.
   Recap = products left / billing + delivery right / note full width.
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-hero > div{min-width:0!important;max-width:none!important;width:100%!important}
body.woocommerce-order-received .vg-thankyou-hero p{
  max-width:none!important;
  width:auto!important;
  white-space:nowrap!important;
}

body.woocommerce-order-received .vg-thankyou-payment--v168{
  margin:0 0 18px!important;
  padding:22px 24px!important;
  overflow:hidden!important;
  border:1px solid var(--vg-border,#E2E1DC)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(35,51,52,.045)!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-section-head{margin:0 0 16px!important}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-section-head p{max-width:none!important}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-grid{
  display:grid!important;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.55fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr,
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank{
  min-width:0!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid #e7e6e1!important;
  border-radius:18px!important;
  background:#fafaf8!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr>*{
  width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr img,
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr canvas{
  display:block!important;
  width:198px!important;
  max-width:100%!important;
  height:auto!important;
  margin:8px auto 10px!important;
  padding:6px!important;
  background:#fff!important;
  border:1px solid #e7e6e1!important;
  border-radius:12px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details{
  width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank .woocommerce-bacs-bank-details h2{
  margin:0 0 8px!important;font-size:19px!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-account-name{
  margin:0 0 10px!important;font-size:15px!important;color:#263638!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #e7e6e1!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
  display:grid!important;
  grid-template-columns:minmax(120px,.55fr) minmax(0,1.45fr)!important;
  align-items:center!important;
  gap:14px!important;
  min-width:0!important;
  margin:0!important;
  padding:10px 12px!important;
  border:0!important;
  border-bottom:1px solid #ecebe7!important;
  background:#fff!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li:last-child{border-bottom:0!important}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li::before,
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact__label{
  color:#85888a!important;font-size:11px!important;font-weight:650!important;line-height:1.25!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact__value{
  min-width:0!important;color:#263638!important;font-size:14px!important;font-weight:750!important;overflow-wrap:anywhere!important;
}
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact--vs .vg-payment-fact__value,
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact--amount .vg-payment-fact__value{font-size:15px!important}

body.woocommerce-order-received .vg-thankyou-recap--v168{
  margin:0!important;
  padding:20px!important;
  border:1px solid var(--vg-border,#E2E1DC)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(35,51,52,.045)!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-recap-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)!important;
  gap:20px!important;
  align-items:start!important;
}
body.woocommerce-order-received .vg-thankyou-recap-products,
body.woocommerce-order-received .vg-thankyou-recap-addresses{min-width:0!important}
body.woocommerce-order-received .vg-thankyou-recap--v168 .woocommerce-order-details.vg-thankyou-order-card{
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-order-card>h2{
  margin:0 0 14px!important;font-size:21px!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-product-line{
  display:flex!important;align-items:center!important;gap:11px!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-product-name{
  display:flex!important;align-items:baseline!important;gap:7px!important;flex-wrap:wrap!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-product-qty-inline{
  display:inline!important;margin:0!important;color:#707174!important;font-size:12px!important;font-weight:650!important;text-decoration:none!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack{
  margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack>h2{display:none!important}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-columns,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  margin:0!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column.col-1,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column.col-2,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column--billing-address,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column--shipping-address{
  width:100%!important;max-width:none!important;float:none!important;grid-column:1!important;grid-row:auto!important;margin:0!important;padding:0!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack .woocommerce-column h2{
  margin:0 0 9px!important;font-size:17px!important;line-height:1.25!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-address-stack address,
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-address-same-note{
  min-height:0!important;margin:0!important;padding:15px 16px!important;border:1px solid #e7e6e1!important;border-radius:16px!important;background:#fafaf8!important;
}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-address-same-note{display:flex!important;align-items:center!important;gap:10px!important}
body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-address-same-note span{
  display:grid!important;place-items:center!important;flex:0 0 28px!important;width:28px!important;height:28px!important;border-radius:50%!important;background:#edf6f1!important;color:#2E7D5A!important;font-weight:900!important;
}
body.woocommerce-order-received .vg-thankyou-order-note{
  margin:20px 0 0!important;
  padding:17px 18px!important;
  border:1px solid #e7e6e1!important;
  border-radius:17px!important;
  background:#fafaf8!important;
}
body.woocommerce-order-received .vg-thankyou-order-note h2{margin:0 0 8px!important;font-size:17px!important}
body.woocommerce-order-received .vg-thankyou-order-note__body{color:#5f6668!important;font-size:14px!important;line-height:1.55!important}

@media(max-width:860px){
  body.woocommerce-order-received .vg-thankyou-hero p{white-space:normal!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168{padding:15px 14px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-grid{grid-template-columns:1fr!important;gap:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr{grid-column:1!important;grid-row:1!important;padding:10px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank{grid-column:1!important;grid-row:2!important;padding:13px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr canvas{width:176px!important;margin:3px auto!important}
  body.woocommerce-order-received .vg-thankyou-recap--v168{padding:15px 14px!important}
  body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-recap-grid{grid-template-columns:1fr!important;gap:18px!important}
}

@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-page{padding-top:14px!important}
  body.woocommerce-order-received .vg-thankyou-hero{margin-bottom:9px!important;padding:17px 15px!important;gap:12px!important}
  body.woocommerce-order-received .vg-thankyou-hero p{font-size:14px!important;line-height:1.45!important;white-space:normal!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168{padding:11px 10px!important;margin-bottom:10px!important;border-radius:18px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-section-head{margin-bottom:7px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-section-head p{display:none!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-section-head h2{font-size:20px!important;margin-bottom:0!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr{padding:7px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr img,
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr canvas{width:164px!important;margin:1px auto!important;padding:5px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank{padding:10px 11px!important}
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
    grid-template-columns:1fr!important;gap:3px!important;padding:8px 10px!important;
  }
  body.woocommerce-order-received .vg-thankyou-recap--v168{padding:12px 10px!important;border-radius:18px!important}
  body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-recap-grid{gap:16px!important}
  body.woocommerce-order-received .vg-thankyou-order-note{margin-top:16px!important;padding:14px!important}
}

/* =========================================================
   v169 — THANK-YOU FINAL MICRO-POLISH
   Pure visual refinement only. No checkout/PPL/currency/shipping/GA4 logic changes.
   ========================================================= */
@media(min-width:861px){
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-grid{
    align-items:start!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank{
    align-self:start!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
    padding:9px 12px!important;
  }
}

body.woocommerce-order-received .vg-thankyou-recap--v168 .vg-thankyou-product-qty-inline{
  color:#8b8f90!important;
  font-size:11px!important;
  font-weight:600!important;
}

@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li{
    gap:2px!important;
    padding:6px 10px!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-bank ul.wc-bacs-bank-details li::before,
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact__label{
    line-height:1.15!important;
  }
  body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-payment-fact__value{
    line-height:1.25!important;
  }
}


/* =========================================================
   v170 — thank-you PPL pickup point presentation
   ========================================================= */
body.woocommerce-order-received .vg-ppl-pickup-address-card {
  border: 1px solid #e2e1dc;
  border-radius: 14px;
  background: #fff;
  padding: 16px 18px;
}
body.woocommerce-order-received .vg-ppl-pickup-confirmation {
  display: flex;
  flex-direction: column;
  gap: 5px;
  color: #1c1d1f;
  line-height: 1.5;
}
body.woocommerce-order-received .vg-ppl-pickup-confirmation > strong {
  color: #2e7d5a;
  font-weight: 700;
}
body.woocommerce-order-received .vg-ppl-pickup-confirmation > small {
  margin-top: 3px;
  color: #707174;
  font-size: 12px;
}


/* =========================================================
   v174 — thank-you final continuation + QR clarity
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-payment-qr-hint{
  margin:8px 0 0!important;
  color:#707174!important;
  font-size:12px!important;
  line-height:1.45!important;
  text-align:center!important;
}
body.woocommerce-order-received .vg-thankyou-continue{
  display:flex!important;
  justify-content:center!important;
  margin:18px 0 4px!important;
}
body.woocommerce-order-received .vg-thankyou-continue__button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  background:#31484B!important;
  color:#fff!important;
  font-family:var(--vg-font-heading)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .vg-thankyou-continue__button:hover,
body.woocommerce-order-received .vg-thankyou-continue__button:focus-visible{
  background:#26383A!important;
  color:#fff!important;
}
@media(max-width:640px){
  body.woocommerce-order-received .vg-thankyou-payment-qr-hint{font-size:11px!important;margin-top:6px!important}
  body.woocommerce-order-received .vg-thankyou-continue{margin-top:14px!important}
  body.woocommerce-order-received .vg-thankyou-continue__button{width:100%!important;min-height:48px!important}
}


/* =========================================================
   v175 — thank-you QR restore + branded symbol + shipping wrap
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-check{
  position:relative!important;
  overflow:hidden!important;
}
body.woocommerce-order-received .vg-thankyou-check svg{display:none!important}
body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{
  display:block!important;
  width:38px!important;
  height:38px!important;
  background:#5f786c!important;
  -webkit-mask-image:url("assets/images/vigres-symbol-white.png")!important;
  mask-image:url("assets/images/vigres-symbol-white.png")!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-size:contain!important;
  mask-size:contain!important;
}
body.woocommerce-order-received .vg-thankyou-payment-qr .vg-thankyou-qr-source{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-row td .woocommerce-Price-amount{
  display:block!important;
  margin:0 0 3px!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-row td{
  line-height:1.45!important;
}
@media(max-width:620px){
  body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{width:29px!important;height:29px!important}
}
@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{width:27px!important;height:27px!important}
}

/* =========================================================
   v176 — thank-you composition corrections
   ========================================================= */
/* Hero: free-standing VIGRES symbol, no success badge/tile. */
body.woocommerce-order-received .vg-thankyou-check{
  flex:0 0 62px!important;
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  color:var(--vg-green,#60776b)!important;
}
body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{
  width:58px!important;
  height:58px!important;
  background:var(--vg-green,#60776b)!important;
}

/* QR: short instruction stays above the visual, never beside it. */
body.woocommerce-order-received .vg-thankyou-payment--v168 .vg-thankyou-payment-qr{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
body.woocommerce-order-received .vg-thankyou-payment-qr-hint{
  order:0!important;
  width:100%!important;
  margin:0 0 12px!important;
  text-align:center!important;
}
body.woocommerce-order-received .vg-thankyou-payment-qr .vg-thankyou-qr-visual{
  order:1!important;
  display:block!important;
  width:198px!important;
  max-width:100%!important;
  height:auto!important;
  margin:0 auto!important;
  padding:6px!important;
  background:#fff!important;
  border:1px solid #e7e6e1!important;
  border-radius:12px!important;
}

/* Shipping: label and price share the first row; carrier/service detail gets
   its own full-width line starting at the left edge below. */
body.woocommerce-order-received .vg-thankyou-shipping-row th,
body.woocommerce-order-received .vg-thankyou-shipping-row td{
  padding-bottom:4px!important;
  border-bottom:0!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-row td .woocommerce-Price-amount{
  display:inline!important;
  margin:0!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-detail-row td{
  padding-top:0!important;
  padding-bottom:14px!important;
  color:#707174!important;
  font-size:13px!important;
  line-height:1.45!important;
  text-align:left!important;
  border-bottom:1px solid #ecebe7!important;
}

@media(max-width:620px){
  body.woocommerce-order-received .vg-thankyou-check{
    flex-basis:48px!important;width:48px!important;height:48px!important;min-width:48px!important;
  }
  body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{width:44px!important;height:44px!important}
  body.woocommerce-order-received .vg-thankyou-payment-qr-hint{margin-bottom:9px!important;font-size:11px!important}
  body.woocommerce-order-received .vg-thankyou-payment-qr .vg-thankyou-qr-visual{width:176px!important}
  body.woocommerce-order-received .vg-thankyou-shipping-detail-row td{font-size:12px!important;padding-bottom:12px!important}
}
@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-check{
    flex-basis:44px!important;width:44px!important;height:44px!important;min-width:44px!important;
  }
  body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{width:41px!important;height:41px!important}
}


/* =========================================================
   v177 — thank-you hero check restore
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-check{
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  display:grid!important;
  place-items:center!important;
  background:#edf6f1!important;
  color:var(--vg-green,#60776b)!important;
  border:1px solid rgba(46,125,90,.16)!important;
  border-radius:20px!important;
  overflow:hidden!important;
}
body.woocommerce-order-received .vg-thankyou-check svg{
  display:block!important;
  width:28px!important;
  height:28px!important;
}
body.woocommerce-order-received .vg-thankyou-check .vg-thankyou-brand-symbol{
  display:none!important;
}
@media(max-width:620px){
  body.woocommerce-order-received .vg-thankyou-check{
    flex-basis:48px!important;width:48px!important;height:48px!important;min-width:48px!important;border-radius:15px!important;
  }
  body.woocommerce-order-received .vg-thankyou-check svg{width:23px!important;height:23px!important}
}
@media(max-width:540px){
  body.woocommerce-order-received .vg-thankyou-check{
    flex-basis:44px!important;width:44px!important;height:44px!important;min-width:44px!important;border-radius:14px!important;
  }
  body.woocommerce-order-received .vg-thankyou-check svg{width:21px!important;height:21px!important}
}


/* =========================================================
   v178 — shipping detail inside the left shipping cell
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-shipping-row th,
body.woocommerce-order-received .vg-thankyou-shipping-row td{
  vertical-align:top!important;
  padding-top:15px!important;
  padding-bottom:15px!important;
  border-bottom:1px solid #ecebe7!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-row th{
  line-height:1.25!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-detail{
  display:block!important;
  margin-top:5px!important;
  color:#7b8083!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.35!important;
  white-space:normal!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-row td{
  white-space:nowrap!important;
}
body.woocommerce-order-received .vg-thankyou-shipping-detail-row{
  display:none!important;
}
@media(max-width:620px){
  body.woocommerce-order-received .vg-thankyou-shipping-detail{
    margin-top:3px!important;
    font-size:11px!important;
  }
}


/* =========================================================
   v180 — thank-you anti-jump / anti-flash
   ========================================================= */
body.woocommerce-order-received .vg-thankyou-page.vg-thankyou-preparing .woocommerce-order{
  opacity:0!important;
  visibility:hidden!important;
}
body.woocommerce-order-received .vg-thankyou-page .woocommerce-order{
  opacity:1;
  visibility:visible;
  transition:opacity .10s ease-out;
}

/* =========================================================
   v192 — MY ACCOUNT / CUSTOMER PORTAL
   ========================================================= */
body.woocommerce-account .woocommerce{
  width:min(calc(100% - 64px),1200px);
  margin:0 auto;
  padding:66px 0 110px;
  color:var(--vg-ink);
}
body.woocommerce-account .woocommerce::after{content:"";display:block;clear:both}
body.woocommerce-account .woocommerce>h2:first-child,
body.woocommerce-account .woocommerce>h1:first-child{display:none}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  float:left;
  width:250px;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  float:right;
  width:calc(100% - 286px);
  min-height:480px;
}
.vg-account-nav{
  position:sticky;
  top:102px;
  overflow:hidden;
  border:1px solid var(--vg-border);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 30px rgba(28,29,31,.035);
}
.vg-account-nav__title{
  padding:20px 20px 16px;
  border-bottom:1px solid var(--vg-border);
  font-family:var(--vg-font-heading);
  font-size:1.18rem;
  font-weight:700;
}
.vg-account-nav ul{margin:0;padding:8px;list-style:none}
.vg-account-nav li{margin:0;padding:0}
.vg-account-nav a{
  display:flex;
  min-height:48px;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 13px;
  border-radius:12px;
  color:var(--vg-text);
  font-size:.86rem;
  font-weight:700;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.vg-account-nav a:hover{background:#f3f4f1;color:var(--vg-teal);transform:translateX(1px)}
.vg-account-nav .is-active>a{background:var(--vg-teal);color:#fff}
.vg-account-nav__arrow{font-size:1rem;opacity:.6}
.vg-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{margin-top:5px;border-top:1px solid var(--vg-border);padding-top:5px}
.vg-account-nav .woocommerce-MyAccount-navigation-link--customer-logout a{color:#8b5750}

.vg-account-dashboard{display:grid;gap:22px}
.vg-account-welcome{
  padding:28px 34px;
  border:1px solid var(--vg-border);
  border-radius:26px;
  background:#fff;
  box-shadow:var(--vg-shadow);
}
.vg-account-kicker{
  display:block;
  margin-bottom:9px;
  color:var(--vg-green);
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.16em;
}
.vg-account-welcome h1,.vg-account-welcome h2{
  margin:0 0 10px;
  font-family:var(--vg-font-heading);
  font-size:clamp(2rem,2.7vw,2.8rem);
  line-height:1;
  letter-spacing:-.04em;
}
.vg-account-welcome p{max-width:620px;margin:0;color:var(--vg-text);font-size:.94rem;line-height:1.65}
.vg-account-quickgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vg-account-quickcard{
  display:flex;
  min-height:218px;
  flex-direction:column;
  padding:25px;
  border:1px solid var(--vg-border);
  border-radius:22px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 10px 28px rgba(28,29,31,.035);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.vg-account-quickcard:hover{transform:translateY(-2px);border-color:rgba(49,72,75,.22);box-shadow:0 16px 34px rgba(28,29,31,.06)}
.vg-account-quickcard__eyebrow{margin-bottom:20px;color:var(--vg-green);font-size:.62rem;font-weight:900;letter-spacing:.13em}
.vg-account-quickcard strong{font-family:var(--vg-font-heading);font-size:1.16rem;line-height:1.2}
.vg-account-quickcard p{margin:10px 0 20px;color:var(--vg-text);font-size:.82rem;line-height:1.55}
.vg-account-quickcard__link{margin-top:auto;color:var(--vg-teal);font-size:.76rem;font-weight:800}
.vg-account-latest{
  padding:28px;
  border:1px solid var(--vg-border);
  border-radius:24px;
  background:#fff;
}
.vg-account-sectionhead{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.vg-account-sectionhead h2{margin:0;font-family:var(--vg-font-heading);font-size:1.55rem;letter-spacing:-.025em}
.vg-account-sectionhead a{color:var(--vg-teal);font-size:.78rem;font-weight:800;text-decoration:none}
.vg-account-ordercard{
  display:grid;
  grid-template-columns:1fr 1fr 1.2fr 1fr auto;
  gap:14px;
  align-items:center;
  padding:17px 18px;
  border:1px solid var(--vg-border);
  border-radius:16px;
  background:#fbfbf9;
}
.vg-account-ordercard>div span{display:block;margin-bottom:4px;color:var(--vg-muted);font-size:.66rem}
.vg-account-ordercard>div strong{font-size:.84rem}
.vg-account-ordercard__button,
.vg-account-empty a,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce input.button{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  padding:0 17px;
  border:0!important;
  border-radius:999px!important;
  background:var(--vg-teal)!important;
  color:#fff!important;
  font-family:var(--vg-font-heading)!important;
  font-size:.76rem!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.vg-account-empty{padding:28px;border:1px dashed var(--vg-border);border-radius:16px;text-align:center}
.vg-account-empty strong{display:block;font-family:var(--vg-font-heading);font-size:1.08rem}
.vg-account-empty p{margin:7px 0 17px;color:var(--vg-text);font-size:.84rem}

/* Native Woo account endpoints — visual normalization. */
body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{margin-top:0}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
  font-family:var(--vg-font-heading);
  color:var(--vg-ink);
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
  margin:0 0 18px!important;
  padding:16px 18px!important;
  border:1px solid #dce9e2!important;
  border-top:1px solid #dce9e2!important;
  border-radius:15px;
  background:#eef6f2;
  color:var(--vg-text);
}
body.woocommerce-account .woocommerce table.shop_table{
  overflow:hidden;
  border:1px solid var(--vg-border)!important;
  border-radius:18px!important;
  border-collapse:separate!important;
  background:#fff;
}
body.woocommerce-account .woocommerce table.shop_table th{padding:14px!important;background:#f8f8f6;font-size:.74rem}
body.woocommerce-account .woocommerce table.shop_table td{padding:15px!important;border-top:1px solid var(--vg-border)!important;font-size:.82rem}
body.woocommerce-account .woocommerce form,
body.woocommerce-account .woocommerce .woocommerce-Address{
  padding:24px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:20px!important;
  background:#fff;
}
body.woocommerce-account .woocommerce form .form-row{margin:0 0 15px!important}
body.woocommerce-account .woocommerce form label{margin-bottom:7px;color:var(--vg-text);font-size:.76rem;font-weight:800}
body.woocommerce-account .woocommerce input.input-text,
body.woocommerce-account .woocommerce input[type="email"],
body.woocommerce-account .woocommerce input[type="password"],
body.woocommerce-account .woocommerce input[type="text"],
body.woocommerce-account .woocommerce select{
  min-height:50px;
  padding:0 14px!important;
  border:1px solid #dedfd9!important;
  border-radius:12px!important;
  background:#fbfbf9!important;
  color:var(--vg-ink)!important;
  font:500 .9rem/1.4 var(--vg-font-body)!important;
  box-shadow:none!important;
  outline:none!important;
}
body.woocommerce-account .woocommerce input:focus,
body.woocommerce-account .woocommerce select:focus{border-color:rgba(49,72,75,.45)!important;box-shadow:0 0 0 3px rgba(49,72,75,.07)!important}
body.woocommerce-account .woocommerce .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:18px}
body.woocommerce-account .woocommerce .col2-set .col-1,
body.woocommerce-account .woocommerce .col2-set .col-2{float:none;width:auto}
body.woocommerce-account .woocommerce .woocommerce-form-login__rememberme{display:block;margin:5px 0 14px}
body.woocommerce-account .woocommerce-LostPassword{margin-top:13px}
body.woocommerce-account .woocommerce-LostPassword a{color:var(--vg-teal);font-weight:700}

@media(max-width:900px){
  body.woocommerce-account .woocommerce{width:min(calc(100% - 36px),760px);padding:42px 0 80px}
  body.woocommerce-account .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%}
  .vg-account-nav{position:static;margin-bottom:18px}
  .vg-account-nav__title{display:none}
  .vg-account-nav ul{display:flex;gap:5px;overflow-x:auto;padding:7px}
  .vg-account-nav li{flex:0 0 auto}
  .vg-account-nav a{min-height:42px;padding:0 12px;white-space:nowrap}
  .vg-account-nav__arrow{display:none}
  .vg-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{margin:0;padding:0;border:0}
  .vg-account-quickgrid{grid-template-columns:1fr}
  .vg-account-quickcard{min-height:170px}
  .vg-account-ordercard{grid-template-columns:1fr 1fr}
  .vg-account-ordercard__button{grid-column:1/-1}
}
@media(max-width:620px){
  body.woocommerce-account .woocommerce{width:calc(100% - 24px);padding:26px 0 64px}
  .vg-account-welcome{padding:25px 22px;border-radius:20px}
  .vg-account-welcome h1,.vg-account-welcome h2{font-size:2.15rem}
  .vg-account-quickcard{padding:21px;border-radius:18px}
  .vg-account-latest{padding:20px 16px;border-radius:20px}
  .vg-account-sectionhead{align-items:start;flex-direction:column;gap:8px}
  .vg-account-ordercard{grid-template-columns:1fr;padding:15px}
  .vg-account-ordercard__button{grid-column:auto}
  body.woocommerce-account .woocommerce .col2-set{grid-template-columns:1fr}
  body.woocommerce-account .woocommerce form,
  body.woocommerce-account .woocommerce .woocommerce-Address{padding:19px!important;border-radius:17px!important}
}


/* =========================================================
   v193 — My Account dashboard polish
   ========================================================= */
.vg-account-order-total strong{
  display:inline-block!important;
  white-space:nowrap!important;
}
.vg-account-status{
  display:inline-flex!important;
  min-height:28px;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:0 10px;
  border-radius:999px;
  background:#eef3ef;
  color:#486257;
  font-size:.75rem!important;
  font-weight:800!important;
  line-height:1.2;
  white-space:nowrap;
}
.vg-account-status--pending,
.vg-account-status--on-hold{
  background:#f7f0df;
  color:#82631f;
}
.vg-account-status--processing{
  background:#edf4f1;
  color:#2f6650;
}
.vg-account-status--completed{
  background:#eaf4ed;
  color:#2f6a46;
}
.vg-account-status--cancelled,
.vg-account-status--failed,
.vg-account-status--refunded{
  background:#f7ece9;
  color:#8b5148;
}
@media(max-width:560px){
  .vg-account-status{white-space:normal;text-align:center}
}

/* =========================================================
   v194 — MY ACCOUNT PORTAL CONSOLIDATION + DOCUMENTS
   ========================================================= */
body.woocommerce-account .woocommerce-MyAccount-content{min-width:0}
.vg-account-quickgrid--four{grid-template-columns:repeat(2,minmax(0,1fr))}
.vg-account-quickgrid--four .vg-account-quickcard{min-height:190px}

/* Shared page intro for account endpoints. */
.vg-account-pagehero{
  margin:0 0 20px;
  padding:25px 28px;
  border:1px solid var(--vg-border);
  border-radius:22px;
  background:#fff;
}
.vg-account-pagehero h1{margin:0 0 9px;font-family:var(--vg-font-heading);font-size:2rem;line-height:1.05;letter-spacing:-.035em}
.vg-account-pagehero p{max-width:680px;margin:0;color:var(--vg-text);font-size:.88rem;line-height:1.6}

/* Orders: remove old Woo table feeling while preserving Woo actions/pagination. */
body.woocommerce-account.woocommerce-orders .woocommerce-MyAccount-content table.shop_table,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table{
  border:0!important;
  border-radius:20px!important;
  box-shadow:0 10px 28px rgba(28,29,31,.025);
}
body.woocommerce-account .woocommerce-orders-table thead th{background:#f8f8f6!important;color:var(--vg-muted);font-size:.69rem!important;letter-spacing:.02em}
body.woocommerce-account .woocommerce-orders-table tbody tr{transition:background-color .15s ease}
body.woocommerce-account .woocommerce-orders-table tbody tr:hover{background:#fbfcfa}
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a{color:var(--vg-teal);font-family:var(--vg-font-heading);font-weight:800;text-decoration:none}
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status{font-weight:700;color:#54615d}
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total{white-space:nowrap}
body.woocommerce-account .woocommerce-pagination{margin-top:18px;text-align:left}

/* View order: compact intro, details, and aligned customer addresses. */
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content>p:first-child{
  margin:0 0 20px;
  padding:16px 18px;
  border:1px solid #dce9e2;
  border-radius:15px;
  background:#eef6f2;
  color:var(--vg-text);
  line-height:1.55;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-order-details{margin:0 0 24px}
body.woocommerce-account.woocommerce-view-order .woocommerce-order-details__title{margin:0 0 13px!important;font-size:1.45rem!important}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details{margin:0!important}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .col2-set{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
  align-items:start!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .woocommerce-column{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details h2{margin:0 0 10px!important;font-size:1.18rem!important}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details address{
  min-height:160px;
  margin:0!important;
  padding:18px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:var(--vg-text);
  font-style:normal!important;
  line-height:1.58;
}

/* Address overview: two equal cards aligned from the top. */
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content>p:first-child{
  margin:0 0 18px;
  color:var(--vg-text);
  font-size:.88rem;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address{
  display:flex;
  min-height:245px;
  flex-direction:column;
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:24px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:20px!important;
  background:#fff!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title h2{float:none!important;margin:0!important;font-size:1.28rem!important}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title a{float:none!important;color:var(--vg-teal);font-size:.78rem;font-weight:800;text-decoration:none}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address address{margin:auto 0 0;font-style:normal!important;color:var(--vg-text);line-height:1.6}

/* Account settings: remove the legacy fieldset frame and make password change a true section. */
body.woocommerce-account.woocommerce-edit-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm{padding:28px!important}
body.woocommerce-account.woocommerce-edit-account .woocommerce-EditAccountForm fieldset{
  margin:25px 0 20px!important;
  padding:22px 0 0!important;
  border:0!important;
  border-top:1px solid var(--vg-border)!important;
}
body.woocommerce-account.woocommerce-edit-account .woocommerce-EditAccountForm fieldset legend{
  padding:0 14px 0 0!important;
  color:var(--vg-ink)!important;
  font-family:var(--vg-font-heading)!important;
  font-size:1.2rem!important;
  font-weight:700!important;
}
body.woocommerce-account.woocommerce-edit-account .woocommerce-EditAccountForm em{
  display:block;
  margin:6px 0 0;
  color:var(--vg-muted);
  font-size:.72rem;
  font-style:normal!important;
  line-height:1.45;
}

/* Documents. */
.vg-account-documents{display:grid;gap:16px}
.vg-doc-list{display:grid;gap:10px}
.vg-doc-card{
  display:grid;
  grid-template-columns:1.45fr .75fr .8fr auto;
  gap:18px;
  align-items:center;
  padding:17px 18px;
  border:1px solid var(--vg-border);
  border-radius:16px;
  background:#fff;
}
.vg-doc-card>div>span{display:block;margin-bottom:4px;color:var(--vg-muted);font-size:.66rem}
.vg-doc-card>div>strong{font-size:.84rem}
.vg-doc-card__type>span{color:var(--vg-green)!important;font-weight:900;letter-spacing:.1em}
.vg-doc-card__amount strong{white-space:nowrap}
.vg-doc-card__action{text-align:right}
.vg-doc-card__pending{display:inline-flex!important;min-height:34px;align-items:center;padding:0 11px;border-radius:999px;background:#f3f3f0;color:var(--vg-muted)!important;font-size:.7rem!important;font-weight:700}
.vg-doc-note{margin:4px 2px 0;color:var(--vg-muted);font-size:.75rem;line-height:1.55}

@media(max-width:900px){
  .vg-account-quickgrid--four{grid-template-columns:1fr 1fr}
  body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .col2-set,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses{grid-template-columns:1fr!important}
  .vg-doc-card{grid-template-columns:1fr 1fr}
  .vg-doc-card__action{text-align:left}
}
@media(max-width:620px){
  .vg-account-quickgrid--four{grid-template-columns:1fr}
  .vg-account-pagehero{padding:22px 20px;border-radius:18px}
  .vg-account-pagehero h1{font-size:1.75rem}
  body.woocommerce-account .woocommerce-orders-table thead{display:none}
  body.woocommerce-account .woocommerce-orders-table,
  body.woocommerce-account .woocommerce-orders-table tbody,
  body.woocommerce-account .woocommerce-orders-table tr,
  body.woocommerce-account .woocommerce-orders-table td{display:block!important;width:100%!important}
  body.woocommerce-account .woocommerce-orders-table tr{margin:0 0 10px;padding:14px;border:1px solid var(--vg-border);border-radius:16px;background:#fff}
  body.woocommerce-account .woocommerce-orders-table td{display:flex!important;justify-content:space-between;gap:14px;padding:7px 0!important;border:0!important;text-align:right!important}
  body.woocommerce-account .woocommerce-orders-table td:before{float:none!important;color:var(--vg-muted);font-size:.68rem;font-weight:700;text-align:left}
  body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{justify-content:flex-end;padding-top:12px!important}
  body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details address{min-height:0}
  body.woocommerce-account.woocommerce-edit-address .woocommerce-Address{min-height:0;padding:20px!important}
  .vg-doc-card{grid-template-columns:1fr;padding:15px}
}


/* =========================================================
   v195 — MY ACCOUNT FINAL LAYOUT POLISH
   ========================================================= */

/* View order: force both addresses into one balanced row. */
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details,
body.woocommerce-account.woocommerce-view-order .woocommerce-columns--addresses,
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .woocommerce-columns{
  clear:both!important;
  width:100%!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-columns--addresses,
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .col2-set,
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .woocommerce-columns{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-column--billing-address,
body.woocommerce-account.woocommerce-view-order .woocommerce-column--shipping-address,
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .woocommerce-column{
  float:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details h2{
  margin:0 0 10px!important;
  font-size:1.16rem!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details address{
  min-height:150px!important;
  height:100%;
  box-sizing:border-box;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-order-details .shipped_via{
  display:block!important;
  margin:4px 0 0!important;
  color:var(--vg-muted)!important;
  font-size:.72rem!important;
  font-weight:400!important;
  line-height:1.4!important;
  white-space:normal!important;
}

/* Address overview: Woo may use u-columns/col2-set variants; cover all of them. */
body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses,
body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses.col2-set,
body.woocommerce-account.woocommerce-edit-address .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address,
body.woocommerce-account.woocommerce-edit-address .u-column1,
body.woocommerce-account.woocommerce-edit-address .u-column2{
  float:none!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:16px!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title h2{
  max-width:220px;
  line-height:1.18!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title a{
  align-self:start;
  white-space:nowrap;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address address{
  margin-top:auto!important;
  font-style:normal!important;
}

/* Account settings: customer language, not WordPress terminology. */
body.woocommerce-account.woocommerce-edit-account .woocommerce-EditAccountForm fieldset{
  position:relative;
}
body.woocommerce-account.woocommerce-edit-account .vg-account-password-note{
  margin:2px 0 18px!important;
  color:var(--vg-muted)!important;
  font-size:.76rem!important;
  line-height:1.5!important;
}
body.woocommerce-account.woocommerce-edit-account .woocommerce-EditAccountForm fieldset .form-row label{
  line-height:1.35!important;
}

/* Dashboard/order amount should never split currency from number. */
body.woocommerce-account .vg-account-order-total strong,
body.woocommerce-account .woocommerce-orders-table__cell-order-total,
body.woocommerce-account .woocommerce-order-details td.product-total{
  white-space:nowrap!important;
}

@media(max-width:900px){
  body.woocommerce-account.woocommerce-view-order .woocommerce-columns--addresses,
  body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .col2-set,
  body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details .woocommerce-columns,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-Addresses.col2-set,
  body.woocommerce-account.woocommerce-edit-address .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details address{min-height:0!important}
}


/* =========================================================
   v196 — ACCOUNT ADDRESSES + BUSINESS BILLING
   ========================================================= */
/* Hard reset Woo float/order rules so Billing + Shipping are always one clean row. */
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .col2-set.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-auto-flow:row!important;
  gap:18px!important;
  align-items:stretch!important;
  width:100%!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.u-column1,
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.col-1{
  grid-column:1!important;
  grid-row:1!important;
  order:1!important;
  clear:none!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.u-column2,
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.col-2{
  grid-column:2!important;
  grid-row:1!important;
  order:2!important;
  clear:none!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Address{
  display:flex!important;
  min-height:250px!important;
  flex-direction:column!important;
  box-sizing:border-box!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
  width:100%!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title h2{
  max-width:none!important;
  margin:0!important;
  font-size:1.25rem!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address-title a{
  margin-left:auto!important;
  text-align:right!important;
  white-space:normal!important;
}
body.woocommerce-account.woocommerce-edit-address .woocommerce-Address address{
  margin:auto 0 0!important;
}
.vg-business-address-meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px 14px;
  margin-top:10px;
  color:var(--vg-muted);
  font-size:.75rem;
}
.vg-business-address-meta span{display:block}
.vg-business-address-meta strong{color:var(--vg-ink);font-weight:700}

/* Business fields in Billing address editor. */
body.woocommerce-account .vg-business-billing-field label{font-weight:700}
body.woocommerce-account #billing_ico,
body.woocommerce-account #billing_dic{text-transform:none}
body.woocommerce-account #billing_dic{text-transform:uppercase}

@media(max-width:900px){
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .col2-set.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.u-column1,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.col-1{
    grid-column:1!important;grid-row:auto!important;
  }
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.u-column2,
  body.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content .woocommerce-Addresses>.col-2{
    grid-column:1!important;grid-row:auto!important;
  }
}


/* =========================================================
   v197 — ACCOUNT HISTORY / REORDER + NOTICE POLISH
   ========================================================= */
body.woocommerce-account .woocommerce-notices-wrapper{margin:0 0 18px!important}
body.woocommerce-account .woocommerce-notices-wrapper:empty{display:none!important}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error{
  position:relative!important;
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 20px!important;
  padding:14px 18px 14px 50px!important;
  border:1px solid #d6e7dd!important;
  border-top:1px solid #d6e7dd!important;
  border-radius:16px!important;
  background:#eef6f2!important;
  box-shadow:none!important;
  color:#4e5c59!important;
  font-size:.88rem!important;
  line-height:1.5!important;
  list-style:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error::before{
  content:'✓'!important;
  position:absolute!important;
  left:18px!important;
  top:50%!important;
  width:22px!important;
  height:22px!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#dfeee6!important;
  color:var(--vg-green)!important;
  font-family:Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error{
  border-color:#efd9d4!important;background:#fbf1ef!important;color:#77504a!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error::before{
  content:'!'!important;background:#f2dfdb!important;color:#9a584f!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::after,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::after,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error::after{display:none!important;content:none!important}

.vg-account-history{
  padding:24px 26px;
  border:1px solid var(--vg-border);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(28,29,31,.035);
}
.vg-account-historygrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.vg-account-stat{
  min-width:0;padding:17px 18px;border:1px solid var(--vg-border);border-radius:16px;background:#fafaf8;
}
.vg-account-stat span{display:block;margin-bottom:7px;color:var(--vg-muted);font-size:.67rem;font-weight:700}
.vg-account-stat strong{display:block;color:var(--vg-ink);font-family:var(--vg-font-heading);font-size:1.08rem;line-height:1.25;white-space:nowrap}
.vg-account-stat--product strong{font-size:.94rem;white-space:normal}
.vg-account-ordercard__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:max-content}
.vg-account-ordercard__button--secondary{background:#fff!important;color:var(--vg-teal)!important;border:1px solid var(--vg-teal)!important}

@media(max-width:1050px){
  .vg-account-historygrid{grid-template-columns:1fr 1fr}
  .vg-account-ordercard__actions{grid-column:1/-1;justify-content:flex-start;min-width:0}
}
@media(max-width:620px){
  .vg-account-history{padding:20px 16px;border-radius:20px}
  .vg-account-historygrid{grid-template-columns:1fr 1fr;gap:8px}
  .vg-account-stat{padding:14px}
  .vg-account-stat strong{font-size:.98rem;white-space:normal}
  .vg-account-ordercard__actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:7px}
  .vg-account-ordercard__actions .vg-account-ordercard__button{width:100%;justify-content:center;text-align:center}
}
@media(max-width:430px){
  .vg-account-historygrid{grid-template-columns:1fr}
  .vg-account-ordercard__actions{grid-template-columns:1fr}
}


/* =========================================================
   v198 — ORDER DETAIL + COUPONS
   ========================================================= */
body.woocommerce-account .vg-order-detail{display:grid;gap:18px;min-width:0}
body.woocommerce-account .vg-order-detail__topbar{display:flex;align-items:center;justify-content:space-between;gap:14px}
body.woocommerce-account .vg-account-backlink{display:inline-flex;align-items:center;min-height:42px;color:var(--vg-teal);font-size:.8rem;font-weight:800;text-decoration:none}
body.woocommerce-account .vg-account-backlink:hover{text-decoration:underline}
body.woocommerce-account .vg-order-detail__hero{margin:0}
body.woocommerce-account .vg-order-detail__products,
body.woocommerce-account .vg-order-detail__summary,
body.woocommerce-account .vg-order-address-card,
body.woocommerce-account .vg-order-note{background:#fff;border:1px solid var(--vg-border);border-radius:20px}
body.woocommerce-account .vg-order-detail__products{padding:24px}
body.woocommerce-account .vg-order-product-list{display:grid;gap:0;overflow:hidden;border:1px solid var(--vg-border);border-radius:16px}
body.woocommerce-account .vg-order-product{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:14px 16px;background:#fff;border-bottom:1px solid var(--vg-border)}
body.woocommerce-account .vg-order-product:last-child{border-bottom:0}
body.woocommerce-account .vg-order-product__media{width:72px;height:72px;overflow:hidden;border:1px solid var(--vg-border);border-radius:13px;background:#f7f5ef}
body.woocommerce-account .vg-order-product__media img{display:block;width:100%;height:100%;object-fit:cover}
body.woocommerce-account .vg-order-product__copy{min-width:0}
body.woocommerce-account .vg-order-product__name{display:block;color:var(--vg-teal);font-family:var(--vg-font-heading);font-size:1rem;font-weight:800;text-decoration:none}
body.woocommerce-account .vg-order-product__qty{display:block;margin-top:5px;color:var(--vg-muted);font-size:.75rem}
body.woocommerce-account .vg-order-product__copy .wc-item-meta{margin:5px 0 0;padding:0;list-style:none;color:var(--vg-muted);font-size:.72rem}
body.woocommerce-account .vg-order-product__price{font-family:var(--vg-font-heading);font-size:.92rem;font-weight:800;white-space:nowrap}
body.woocommerce-account .vg-order-product__action{display:flex;justify-content:flex-end}
body.woocommerce-account .vg-order-product__unavailable{color:var(--vg-muted);font-size:.72rem}
body.woocommerce-account .vg-order-detail__summary{overflow:hidden}
body.woocommerce-account .vg-order-summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--vg-border)}
body.woocommerce-account .vg-order-summary-row:last-child{border-bottom:0}
body.woocommerce-account .vg-order-summary-row span{font-size:.8rem;font-weight:700}
body.woocommerce-account .vg-order-summary-row small{display:block;margin-top:4px;color:var(--vg-muted);font-size:.72rem;font-weight:500}
body.woocommerce-account .vg-order-summary-row strong{font-size:.88rem;white-space:nowrap}
body.woocommerce-account .vg-order-summary-row--total strong{font-family:var(--vg-font-heading);font-size:1.05rem}
body.woocommerce-account .vg-order-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
body.woocommerce-account .vg-order-address-card{display:flex;min-height:230px;flex-direction:column;padding:24px}
body.woocommerce-account .vg-order-address-card h2{margin:4px 0 18px;font-family:var(--vg-font-heading);font-size:1.18rem}
body.woocommerce-account .vg-order-address-card address{margin:0;color:var(--vg-text);font-style:normal;line-height:1.65}
body.woocommerce-account .vg-order-address-card>a{display:block;margin-top:10px;color:var(--vg-green);font-size:.8rem}
body.woocommerce-account .vg-order-address-card__companymeta{display:grid;gap:3px;margin-top:14px;color:var(--vg-text);font-size:.76rem}
body.woocommerce-account .vg-order-address-same{display:flex;min-height:58px;align-items:center;margin-top:5px;padding:0 16px;border:1px solid #d9e6df;border-radius:13px;background:#eff6f2;color:var(--vg-text);font-size:.82rem}
body.woocommerce-account .vg-order-note{padding:22px 24px}
body.woocommerce-account .vg-order-note h2{margin:4px 0 8px;font-family:var(--vg-font-heading);font-size:1.15rem}
body.woocommerce-account .vg-order-note p{margin:0;color:var(--vg-text);line-height:1.6}
body.woocommerce-account .vg-order-detail__footeractions{display:flex;justify-content:flex-start}
body.woocommerce-account .vg-account-backlink--button{min-height:44px;padding:0 16px;border:1px solid var(--vg-teal);border-radius:999px;text-decoration:none}
body.woocommerce-account .vg-account-backlink--button:hover{background:var(--vg-teal);color:#fff;text-decoration:none}

body.woocommerce-account .vg-account-coupons{display:grid;gap:16px}
body.woocommerce-account .vg-coupon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.woocommerce-account .vg-coupon-card{display:flex;min-height:240px;flex-direction:column;padding:24px;background:#fff;border:1px solid var(--vg-border);border-radius:20px}
body.woocommerce-account .vg-coupon-card__code{margin:7px 0 4px;font-family:var(--vg-font-heading);font-size:1.45rem;letter-spacing:.04em}
body.woocommerce-account .vg-coupon-card__value{color:var(--vg-green);font-family:var(--vg-font-heading);font-size:2rem;font-weight:800}
body.woocommerce-account .vg-coupon-card p{margin:10px 0;color:var(--vg-text);font-size:.82rem;line-height:1.55}
body.woocommerce-account .vg-coupon-card__meta{margin:auto 0 14px;color:var(--vg-muted);font-size:.74rem}
body.woocommerce-account .vg-coupon-empty a{color:var(--vg-green);font-weight:800}

@media(max-width:900px){
 body.woocommerce-account .vg-order-product{grid-template-columns:64px minmax(0,1fr) auto}
 body.woocommerce-account .vg-order-product__action{grid-column:2/-1;justify-content:flex-start}
 body.woocommerce-account .vg-order-addresses{grid-template-columns:1fr}
 body.woocommerce-account .vg-coupon-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
 body.woocommerce-account .vg-order-detail__topbar{align-items:flex-start;flex-direction:column}
 body.woocommerce-account .vg-order-detail__products{padding:16px 12px}
 body.woocommerce-account .vg-order-product{grid-template-columns:58px minmax(0,1fr);gap:12px;padding:12px}
 body.woocommerce-account .vg-order-product__media{width:58px;height:58px}
 body.woocommerce-account .vg-order-product__price{grid-column:2;margin-top:-2px}
 body.woocommerce-account .vg-order-product__action{grid-column:1/-1}
 body.woocommerce-account .vg-order-product__action .vg-account-ordercard__button{width:100%;justify-content:center;text-align:center}
 body.woocommerce-account .vg-order-summary-row{padding:12px 14px}
 body.woocommerce-account .vg-order-address-card{min-height:0;padding:20px}
}

/* =========================================================
   v199 — MY ACCOUNT AUTH / LOGIN + REGISTRATION + RESET
   ========================================================= */
body.woocommerce-account:not(.logged-in) .woocommerce{width:min(calc(100% - 64px),1200px);margin:0 auto;padding:64px 0 90px}
body.woocommerce-account:not(.logged-in) .woocommerce>h2{display:none}
body.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-notices-wrapper{max-width:980px;margin:0 auto 18px}

.vg-auth-shell{display:grid;gap:26px}
.vg-auth-intro{max-width:780px;margin:0 auto;text-align:center}
.vg-auth-intro h1,.vg-auth-card h1,.vg-auth-card h2{font-family:var(--vg-font-heading);color:var(--vg-ink);letter-spacing:-.035em}
.vg-auth-intro h1{margin:8px 0 13px;font-size:clamp(2.5rem,5vw,4.4rem);line-height:.98}
.vg-auth-intro>p{max-width:670px;margin:0 auto;color:var(--vg-text);font-size:.94rem;line-height:1.7}
.vg-auth-benefits{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}
.vg-auth-benefits span{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;border:1px solid var(--vg-border);border-radius:999px;background:#fff;color:var(--vg-teal);font-size:.72rem;font-weight:800}

.vg-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:980px;margin:4px auto 0}
.vg-auth-card{padding:30px;border:1px solid var(--vg-border);border-radius:24px;background:#fff;box-shadow:0 16px 38px rgba(28,29,31,.045)}
.vg-auth-card h2{margin:9px 0 7px;font-size:1.75rem;line-height:1.08}
.vg-auth-card h1{margin:9px 0 10px;font-size:2.25rem;line-height:1.04}
.vg-auth-card__lead{margin:0 0 24px;color:var(--vg-text);font-size:.86rem;line-height:1.6}
.vg-auth-form{display:grid;gap:15px;margin:0!important}
.vg-auth-form p{margin:0!important}
.vg-auth-form label{display:block;margin:0 0 7px;color:#4d5657;font-size:.76rem;font-weight:800}
.vg-auth-form .required{color:#a65b51}
.vg-auth-form input[type=text],.vg-auth-form input[type=email],.vg-auth-form input[type=password]{width:100%;height:52px!important;padding:0 14px!important;border:1px solid #dedfd9!important;border-radius:13px!important;background:#fbfbf9!important;color:var(--vg-ink)!important;font-family:var(--vg-font-body)!important;font-size:.92rem!important;box-shadow:none!important;outline:none!important}
.vg-auth-form input:focus{border-color:rgba(49,72,75,.5)!important;box-shadow:0 0 0 3px rgba(49,72,75,.07)!important}
.vg-auth-form .password-input{display:block;position:relative;width:100%}
.vg-auth-form .show-password-input{right:12px!important;top:50%!important;transform:translateY(-50%)!important}
.vg-auth-form__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.vg-auth-form__meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:1px;color:var(--vg-text);font-size:.73rem}
.vg-auth-form__meta label{display:flex;align-items:center;gap:7px;margin:0;font-weight:600}
.vg-auth-form__meta input[type=checkbox]{width:15px;height:15px;margin:0}
.vg-auth-form__meta a{color:var(--vg-teal);font-weight:800;text-decoration:none}
.vg-auth-primary{display:inline-flex!important;width:max-content!important;min-height:48px!important;align-items:center!important;justify-content:center!important;margin:2px 0 0!important;padding:0 19px!important;border:0!important;border-radius:999px!important;background:var(--vg-teal)!important;color:#fff!important;font-family:var(--vg-font-heading)!important;font-size:.8rem!important;font-weight:700!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important}
.vg-auth-primary:hover{background:var(--vg-teal-dark)!important;color:#fff!important}
.vg-auth-privacy{color:var(--vg-muted);font-size:.7rem;line-height:1.5}

.vg-auth-single{max-width:620px;margin:0 auto}
.vg-auth-single>.vg-account-backlink{margin-bottom:14px}
.vg-auth-card--single{padding:34px}
.vg-auth-card--single .vg-auth-form{margin-top:24px!important}
.vg-auth-card--single .form-row-first,.vg-auth-card--single .form-row-last{float:none!important;width:100%!important}

body.woocommerce-account:not(.logged-in) .woocommerce-message,
body.woocommerce-account:not(.logged-in) .woocommerce-info,
body.woocommerce-account:not(.logged-in) .woocommerce-error{position:relative;margin:0 0 18px!important;padding:15px 18px 15px 48px!important;border:1px solid #d8e7df!important;border-radius:15px!important;background:#edf6f1!important;color:#52605c!important;font-size:.82rem!important;line-height:1.5!important;list-style:none!important}
body.woocommerce-account:not(.logged-in) .woocommerce-error{border-color:#ead9d6!important;background:#faf1ef!important;color:#81564e!important}
body.woocommerce-account:not(.logged-in) .woocommerce-message::before,
body.woocommerce-account:not(.logged-in) .woocommerce-info::before,
body.woocommerce-account:not(.logged-in) .woocommerce-error::before{content:'✓'!important;position:absolute!important;left:17px!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;width:21px!important;height:21px!important;place-items:center!important;border-radius:50%!important;background:#fff!important;color:var(--vg-green)!important;font-size:.75rem!important;font-weight:900!important}
body.woocommerce-account:not(.logged-in) .woocommerce-error::before{content:'!'!important;color:#9a584f!important}

@media(max-width:800px){
  body.woocommerce-account:not(.logged-in) .woocommerce{width:min(calc(100% - 36px),1200px);padding:40px 0 70px}
  .vg-auth-grid{grid-template-columns:1fr;max-width:600px}
  .vg-auth-intro h1{font-size:clamp(2.2rem,10vw,3.35rem)}
}
@media(max-width:520px){
  body.woocommerce-account:not(.logged-in) .woocommerce{width:calc(100% - 24px);padding:28px 0 56px}
  .vg-auth-intro{text-align:left}
  .vg-auth-benefits{justify-content:flex-start}
  .vg-auth-card,.vg-auth-card--single{padding:22px 18px;border-radius:19px}
  .vg-auth-card h2{font-size:1.5rem}
  .vg-auth-card h1{font-size:1.85rem}
  .vg-auth-form__row{grid-template-columns:1fr}
  .vg-auth-form__meta{align-items:flex-start;flex-direction:column;gap:9px}
  .vg-auth-primary{width:100%!important}
}


/* =========================================================
   v200 — customer auth rebuild
   ========================================================= */
body.woocommerce-account:not(.logged-in) .woocommerce{
  width:min(1180px,calc(100% - 48px))!important;
  margin:0 auto!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-shell{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-intro{
  width:100%!important;
  max-width:860px!important;
  margin:0 0 28px!important;
  text-align:left!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-intro h1{
  margin:7px 0 10px!important;
  font-size:clamp(2.45rem,4vw,4rem)!important;
  line-height:1!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-intro>p{
  max-width:780px!important;
  margin:0!important;
  font-size:1rem!important;
  line-height:1.65!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-benefits{display:none!important}
body.woocommerce-account:not(.logged-in) .vg-auth-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:24px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  align-items:stretch!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:38px!important;
  border-radius:26px!important;
  box-shadow:0 18px 42px rgba(28,29,31,.05)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-card h2{
  margin:8px 0 8px!important;
  font-size:2rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-card__lead{
  margin:0 0 26px!important;
  font-size:.92rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form{
  display:grid!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form .form-row,
body.woocommerce-account:not(.logged-in) .vg-auth-form .form-row-first,
body.woocommerce-account:not(.logged-in) .vg-auth-form .form-row-last,
body.woocommerce-account:not(.logged-in) .vg-auth-form .form-row-wide{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form__row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form input[type=text],
body.woocommerce-account:not(.logged-in) .vg-auth-form input[type=email],
body.woocommerce-account:not(.logged-in) .vg-auth-form input[type=password]{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:58px!important;
  box-sizing:border-box!important;
  font-size:1rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form .password-input{
  display:block!important;
  width:100%!important;
  max-width:none!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-primary{
  min-height:52px!important;
  padding:0 24px!important;
  font-size:.86rem!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text{
  margin:2px 0 0!important;
  color:var(--vg-muted)!important;
  font-size:.74rem!important;
  line-height:1.55!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text p{
  margin:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-privacy{
  margin-top:-4px!important;
  font-size:.72rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-card--login .vg-auth-primary{
  margin-top:4px!important;
}
@media(max-width:820px){
  body.woocommerce-account:not(.logged-in) .woocommerce{
    width:min(100% - 28px,680px)!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-grid{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-card{
    padding:28px 24px!important;
  }
}
@media(max-width:520px){
  body.woocommerce-account:not(.logged-in) .woocommerce{
    width:calc(100% - 20px)!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-intro{
    margin-bottom:20px!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-intro h1{
    font-size:2.4rem!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-card{
    padding:22px 18px!important;
    border-radius:20px!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-form__row{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-primary{
    width:100%!important;
  }
}

/* =========================================================
   v201 — simple login + standalone registration
   ========================================================= */
body.woocommerce-account:not(.logged-in) .woocommerce{
  width:min(560px,calc(100% - 32px))!important;
  margin:0 auto!important;
  padding:72px 0 110px!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-shell{
  width:100%!important;
  margin:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card{
  padding:36px!important;
  background:#fff!important;
  border:1px solid var(--vg-border)!important;
  border-radius:24px!important;
  box-shadow:var(--vg-shadow)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card h1{
  margin:8px 0 10px!important;
  font-family:var(--vg-font-heading)!important;
  font-size:2.35rem!important;
  line-height:1.05!important;
  color:var(--vg-ink)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-lead{
  margin:0 0 28px!important;
  color:var(--vg-text)!important;
  font-size:.94rem!important;
  line-height:1.6!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card .vg-auth-form{
  display:grid!important;
  gap:18px!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card .form-row{
  width:100%!important;float:none!important;margin:0!important;padding:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input[type=text],
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input[type=password]{
  width:100%!important;height:56px!important;box-sizing:border-box!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card .vg-auth-primary{
  width:100%!important;min-height:52px!important;margin-top:2px!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-register-cta{
  display:flex!important;justify-content:center!important;gap:7px!important;flex-wrap:wrap!important;
  margin:24px 0 0!important;padding:22px 0 0!important;border-top:1px solid var(--vg-border)!important;
  color:var(--vg-text)!important;font-size:.9rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-register-cta a{color:var(--vg-green)!important;font-weight:800!important}

.vg-registration-page{padding:70px 0 110px;background:var(--vg-bg)}
.vg-registration-shell{width:min(680px,calc(100% - 32px));margin:0 auto}
.vg-registration-card{padding:38px;background:#fff;border:1px solid var(--vg-border);border-radius:24px;box-shadow:var(--vg-shadow)}
.vg-registration-card h1{margin:8px 0 10px;font-family:var(--vg-font-heading);font-size:2.55rem;line-height:1.05;color:var(--vg-ink)}
.vg-registration-lead{margin:0 0 28px;color:var(--vg-text);font-size:.95rem;line-height:1.65}
.vg-registration-form{display:grid;gap:18px}
.vg-registration-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.vg-registration-form .form-row{margin:0;padding:0}
.vg-registration-form label{display:block;margin:0 0 8px;font-weight:800;font-size:.8rem;color:var(--vg-ink)}
.vg-registration-form input[type=text],.vg-registration-form input[type=email],.vg-registration-form input[type=password]{width:100%;height:56px;padding:0 16px;box-sizing:border-box;border:1px solid var(--vg-border);border-radius:14px;background:#fff;font:inherit;color:var(--vg-ink)}
.vg-registration-form small{display:block;margin-top:6px;color:var(--vg-muted);font-size:.72rem}
.vg-registration-form .vg-auth-primary{width:100%;min-height:52px;margin-top:2px}
.vg-registration-login{text-align:center;margin:24px 0 0;padding-top:22px;border-top:1px solid var(--vg-border);color:var(--vg-text);font-size:.9rem}
.vg-registration-login a{color:var(--vg-green);font-weight:800}
.vg-registration-privacy{margin:14px 0 0;text-align:center;color:var(--vg-muted);font-size:.7rem;line-height:1.55}
.vg-registration-errors{margin:0 0 20px!important}
@media(max-width:620px){
  body.woocommerce-account:not(.logged-in) .woocommerce{padding:42px 0 70px!important}
  body.woocommerce-account:not(.logged-in) .vg-auth-login-card,.vg-registration-card{padding:24px 20px!important;border-radius:20px!important}
  .vg-registration-page{padding:42px 0 70px}
  .vg-registration-row{grid-template-columns:1fr}
  .vg-registration-card h1{font-size:2.1rem}
}


/* =========================================================
   v203 — AUTH COMPONENT LOCK / LOGIN + REGISTRATION
   Login and registration intentionally share one visual system.
   ========================================================= */
body.woocommerce-account:not(.logged-in) .woocommerce,
.vg-registration-shell{
  width:min(560px,calc(100% - 32px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card,
.vg-registration-card{
  box-sizing:border-box!important;
  width:100%!important;
  padding:36px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:var(--vg-shadow)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card h1,
.vg-registration-card h1{
  margin:8px 0 10px!important;
  font-family:var(--vg-font-heading)!important;
  font-size:2.35rem!important;
  line-height:1.05!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
  color:var(--vg-ink)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-lead,
.vg-registration-lead{
  margin:0 0 28px!important;
  color:var(--vg-text)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.94rem!important;
  line-height:1.6!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form,
.vg-registration-form{
  display:grid!important;
  gap:18px!important;
  margin:0!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form label,
.vg-registration-form label{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--vg-ink)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.8rem!important;
  line-height:1.3!important;
  font-weight:800!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input[type=text],
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input[type=email],
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input[type=password],
.vg-registration-form input[type=text],
.vg-registration-form input[type=email],
.vg-registration-form input[type=password]{
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  box-sizing:border-box!important;
  padding:0 16px!important;
  border:1px solid var(--vg-border)!important;
  border-radius:14px!important;
  outline:0!important;
  background:#fff!important;
  color:var(--vg-ink)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.95rem!important;
  font-weight:400!important;
  box-shadow:none!important;
  appearance:none!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-login-card input:focus,
.vg-registration-form input:focus{
  border-color:rgba(49,72,75,.52)!important;
  box-shadow:0 0 0 3px rgba(49,72,75,.07)!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form .password-input,
.vg-registration-form .password-input{
  display:block!important;
  position:relative!important;
  width:100%!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form .show-password-input,
.vg-registration-form .show-password-input{
  top:50%!important;
  right:15px!important;
  transform:translateY(-50%)!important;
}
/* One button component everywhere in auth. */
body.woocommerce-account:not(.logged-in) .vg-auth-primary,
.vg-registration-form .vg-auth-primary{
  display:flex!important;
  width:100%!important;
  min-height:56px!important;
  height:56px!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  margin:2px 0 0!important;
  padding:0 24px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--vg-teal)!important;
  color:#fff!important;
  font-family:var(--vg-font-heading)!important;
  font-size:1rem!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  text-transform:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
  appearance:none!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-primary:hover,
.vg-registration-form .vg-auth-primary:hover{
  background:var(--vg-teal-dark)!important;
  color:#fff!important;
}
/* Remember-me: remove browser/Woo misalignment and own the control. */
body.woocommerce-account:not(.logged-in) .vg-auth-form__meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0!important;
  min-height:24px!important;
  color:var(--vg-text)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.78rem!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form__meta .woocommerce-form-login__rememberme{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  margin:0!important;
  padding:0!important;
  line-height:1.2!important;
  font-size:.78rem!important;
  font-weight:700!important;
  cursor:pointer!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form__meta input[type=checkbox]{
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #bfc4bf!important;
  border-radius:5px!important;
  background:#fff!important;
  vertical-align:middle!important;
  appearance:auto!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form__meta .woocommerce-form-login__rememberme span{
  display:inline-block!important;
  margin:0!important;
  line-height:18px!important;
}
body.woocommerce-account:not(.logged-in) .vg-auth-form__meta a{
  font-family:var(--vg-font-body)!important;
  font-size:.78rem!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.vg-registration-form small{
  margin-top:6px!important;
  color:var(--vg-muted)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.75rem!important;
  line-height:1.4!important;
}
.vg-registration-login,
body.woocommerce-account:not(.logged-in) .vg-auth-register-cta{
  margin:24px 0 0!important;
  padding:22px 0 0!important;
  border-top:1px solid var(--vg-border)!important;
  color:var(--vg-text)!important;
  font-family:var(--vg-font-body)!important;
  font-size:.9rem!important;
  line-height:1.45!important;
  text-align:center!important;
}
.vg-registration-login a,
body.woocommerce-account:not(.logged-in) .vg-auth-register-cta a{
  color:var(--vg-green)!important;
  font-family:var(--vg-font-body)!important;
  font-weight:800!important;
}
@media(max-width:620px){
  body.woocommerce-account:not(.logged-in) .vg-auth-login-card,
  .vg-registration-card{
    padding:24px 20px!important;
    border-radius:20px!important;
  }
  body.woocommerce-account:not(.logged-in) .vg-auth-form__meta{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:12px!important;
  }
  .vg-registration-row{grid-template-columns:1fr!important;gap:18px!important}
}


/* v204 auth hard lock */
.vg-registration-page .woocommerce-password-strength,
.vg-registration-page .woocommerce-password-hint,
.vg-registration-page .password-strength,
.vg-registration-page .password-strength-meter{display:none!important;}

/* =========================================================
   v205 — LEGAL / INFORMATION / COOKIE CONSENT DESIGN SYSTEM
   Same restrained VIGRES language as account + transactional email.
   ========================================================= */
.vg-legal-page{background:var(--vg-bg,#f6f5f2);padding:70px 0 110px;color:#1c1d1f}
.vg-legal-shell{max-width:1180px}
.vg-legal-hero{margin-bottom:34px;padding:42px 46px;background:#fff;border:1px solid #e2e1dc;border-radius:28px;box-shadow:0 16px 42px rgba(28,29,31,.045)}
.vg-legal-kicker{display:block;margin:0 0 10px;color:#2e7d5a;font-size:12px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.vg-legal-hero h1{margin:0;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.045em}
.vg-legal-updated{margin:15px 0 0;color:#707174;font-size:14px}
.vg-legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:34px;align-items:start}
.vg-legal-nav{position:sticky;top:110px;display:flex;flex-direction:column;gap:6px;padding:18px;background:#fff;border:1px solid #e2e1dc;border-radius:22px;box-shadow:0 14px 34px rgba(28,29,31,.035)}
.vg-legal-nav strong{display:block;padding:9px 12px 8px;font-size:18px;line-height:1.25}
.vg-legal-nav a{display:flex;align-items:center;min-height:42px;margin:0;padding:10px 12px;border:0;border-radius:12px;box-sizing:border-box;color:#606366;text-decoration:none;font-weight:700;font-size:14px;line-height:1.25;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.vg-legal-nav a:hover{background:#f1f4f1;color:#304f52;transform:translateX(1px)}
.vg-legal-nav a.is-active,.vg-legal-nav a.is-active:hover{background:#304f52;color:#fff;transform:none}
.vg-legal-content{padding:38px 42px;background:#fff;border:1px solid #e2e1dc;border-radius:26px;box-shadow:0 16px 42px rgba(28,29,31,.04)}
.vg-legal-content section{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid #eceae4}
.vg-legal-content section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.vg-legal-content h2{margin:0 0 14px;font-size:28px;line-height:1.15;letter-spacing:-.025em}
.vg-legal-content h3{margin:22px 0 10px;font-size:20px}
.vg-legal-content p,.vg-legal-content li{color:#5f6264;font-size:16px;line-height:1.75}
.vg-legal-content a{color:#2e7d5a;font-weight:700;text-underline-offset:3px}
.vg-legal-lead{margin:0 0 30px!important;font-size:20px!important;line-height:1.6!important;color:#44484a!important}
.vg-legal-company{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 30px;padding:20px 22px;background:#f6f5f2;border:1px solid #e2e1dc;border-radius:16px;color:#55595b;font-size:14px;line-height:1.55}
.vg-legal-company strong{width:100%;font-size:17px;color:#1c1d1f}
.vg-legal-grid2,.vg-legal-grid3{display:grid;gap:18px;margin-bottom:30px}.vg-legal-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.vg-legal-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
.vg-legal-card{margin:0!important;padding:25px!important;border:1px solid #e2e1dc!important;border-radius:18px;background:#fbfaf7}
.vg-legal-card h2{font-size:23px}
.vg-legal-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px}
.vg-legal-steps article{padding:23px;border:1px solid #e2e1dc;border-radius:18px;background:#fbfaf7}
.vg-legal-steps article>span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#edf5f1;color:#2e7d5a;font-weight:800;font-size:12px}
.vg-legal-steps h2{margin-top:17px;font-size:22px}
.vg-legal-steps p{margin-bottom:0}
.vg-legal-callout,.vg-legal-formbox{padding:25px 28px;background:#edf5f1;border:1px solid #d2e3da;border-radius:18px}.vg-legal-callout strong{font-size:20px}.vg-legal-callout p{margin-bottom:0}
.vg-legal-formbox{background:#fbfaf7;border-color:#e2e1dc}.vg-legal-formbox ul{padding-left:20px}
.vg-legal-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:0;border-radius:999px;background:#304f52;color:#fff!important;text-decoration:none!important;font:700 14px/1 Arial,sans-serif;cursor:pointer}
.vg-legal-tablewrap{overflow:auto;border:1px solid #e2e1dc;border-radius:16px}.vg-legal-table{width:100%;border-collapse:collapse;min-width:660px}.vg-legal-table th,.vg-legal-table td{padding:15px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #e8e7e2}.vg-legal-table th{background:#f6f5f2;font-size:13px}.vg-legal-table td{font-size:14px;line-height:1.55;color:#5f6264}

.vg-cookie-consent[hidden]{display:none!important}.vg-cookie-consent{position:fixed;z-index:999999;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:20px;background:rgba(24,29,30,.30);backdrop-filter:blur(4px)}
.vg-cookie-consent__panel{width:min(720px,100%);padding:26px 28px;background:#fff;border:1px solid #e2e1dc;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.18);font-family:Arial,Helvetica,sans-serif}
.vg-cookie-consent__intro h2{margin:0 0 8px;font-size:28px;line-height:1.1}.vg-cookie-consent__intro p{margin:0;color:#626668;font-size:15px;line-height:1.6}
.vg-cookie-consent__settings{display:grid;gap:9px;margin-top:18px}.vg-cookie-option{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;border:1px solid #e2e1dc;border-radius:13px}.vg-cookie-option span{display:flex;flex-direction:column}.vg-cookie-option small{color:#707174;margin-top:2px}.vg-cookie-option input{width:20px;height:20px;accent-color:#2e7d5a}
.vg-cookie-consent__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.vg-cookie-btn{min-height:46px;padding:0 19px;border:1px solid #304f52;border-radius:999px;background:#304f52;color:#fff;font:700 14px Arial,sans-serif;cursor:pointer}.vg-cookie-btn--ghost{background:#fff;color:#304f52}.vg-cookie-btn[data-vg-cookie-essential],.vg-cookie-btn[data-vg-cookie-all]{min-width:132px;text-align:center}.vg-cookie-consent__link{display:inline-block;margin-top:15px;color:#2e7d5a;font:700 13px Arial,sans-serif}

/* Footer scales to brand + 4 information columns. */
.vg-footer__grid{grid-template-columns:minmax(250px,1.35fr) repeat(3,minmax(150px,1fr))!important}
.vg-footer__bottom{flex-wrap:wrap;gap:8px 24px}

/* Print/document language: legal pages should look like VIGRES documents too. */
@media print{
 header,.vg-footer,.vg-legal-nav,.vg-cookie-consent{display:none!important}
 .vg-legal-page{padding:0;background:#fff}.vg-legal-shell{max-width:none}.vg-legal-layout{display:block}.vg-legal-hero,.vg-legal-content{border:0;box-shadow:none;padding:0}.vg-legal-content{font-family:Arial,Helvetica,sans-serif}.vg-legal-content a{color:#1c1d1f;text-decoration:none}
}
@media(max-width:900px){.vg-legal-layout{grid-template-columns:1fr}.vg-legal-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.vg-legal-nav strong{grid-column:1/-1}.vg-legal-grid3{grid-template-columns:1fr}.vg-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.vg-footer__brand{grid-column:1/-1}}
@media(max-width:680px){.vg-legal-page{padding:34px 0 70px}.vg-legal-hero{padding:27px 22px;border-radius:20px}.vg-legal-hero h1{font-size:40px}.vg-legal-content{padding:26px 20px;border-radius:20px}.vg-legal-grid2,.vg-legal-steps{grid-template-columns:1fr}.vg-legal-nav{grid-template-columns:1fr}.vg-cookie-consent{padding:10px}.vg-cookie-consent__panel{padding:22px 18px;border-radius:20px}.vg-cookie-consent__actions{display:grid;grid-template-columns:1fr}.vg-cookie-btn{width:100%}.vg-footer__grid{grid-template-columns:1fr!important}}

/* v207 — legal navigation spacing/state lock */
.vg-legal-nav > a + a{margin-top:0!important;}
.vg-legal-nav > a:not(.is-active):hover{background:#f1f4f1!important;color:#304f52!important;}
.vg-legal-nav > a.is-active{background:#304f52!important;color:#fff!important;}

/* =========================================================
   v208 — social links + newsletter
   ========================================================= */
.vg-social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.vg-social-link{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 11px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.8)!important;font-size:.75rem;font-weight:700;text-decoration:none!important}
.vg-social-link__mark{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:rgba(255,255,255,.10);color:#fff;font-size:.72rem;font-weight:900;line-height:1}
.vg-social-link:hover,.vg-social-link:focus-visible{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.32);color:#fff!important}
.vg-newsletter{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:44px;align-items:center;margin:0 0 54px;padding:28px 30px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.045)}
.vg-newsletter__kicker{display:block;margin-bottom:7px;color:rgba(255,255,255,.62);font-size:.65rem;font-weight:900;letter-spacing:.15em}
.vg-newsletter h3{margin:0 0 7px;color:#fff;font-family:var(--vg-font-heading);font-size:1.3rem;line-height:1.15;letter-spacing:-.02em}
.vg-newsletter p{max-width:470px;margin:0;color:rgba(255,255,255,.68);font-size:.84rem;line-height:1.55}
.vg-newsletter__formwrap{min-width:0}
.vg-newsletter__form{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.vg-newsletter__form input[type=email]{min-width:0;height:48px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font:600 .86rem/1 var(--vg-font-body);outline:none}
.vg-newsletter__form input[type=email]::placeholder{color:rgba(255,255,255,.44)}
.vg-newsletter__form input[type=email]:focus{border-color:rgba(255,255,255,.45);box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.vg-newsletter__form button{min-height:48px;padding:0 18px;border:0;border-radius:11px;background:#fff;color:var(--vg-teal);font:800 .82rem/1 var(--vg-font-heading);cursor:pointer}
.vg-newsletter__form button:hover,.vg-newsletter__form button:focus-visible{background:#eef2ee}
.vg-newsletter__formwrap small{display:block;margin-top:8px;color:rgba(255,255,255,.5);font-size:.68rem;line-height:1.45}
.vg-newsletter__formwrap small a{color:rgba(255,255,255,.78)}
.vg-newsletter__notice{margin:0 0 9px;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.09);color:#fff;font-size:.75rem;font-weight:700;line-height:1.4}
.vg-newsletter__hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.vg-contact-community{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;margin-top:18px}
.vg-contact-community__social,.vg-contact-community .vg-newsletter{margin:0;padding:30px;border:1px solid rgba(49,72,75,.08);border-radius:26px;background:#fff}
.vg-contact-community__social h2{margin:8px 0 10px;font:700 clamp(1.65rem,2.6vw,2.1rem)/1.08 var(--vg-font-heading);letter-spacing:-.025em;color:var(--vg-ink)}
.vg-contact-community__social>p:not(.vg-kicker){margin:0;color:#6b7374;font-size:.9rem;line-height:1.6}
.vg-contact-community .vg-social-link{border-color:var(--vg-border);color:var(--vg-teal)!important;background:#fff}
.vg-contact-community .vg-social-link__mark{background:#eef2ee;color:var(--vg-teal)}
.vg-contact-community .vg-newsletter{display:block;color:var(--vg-ink)}
.vg-contact-community .vg-newsletter__kicker{color:var(--vg-green)}
.vg-contact-community .vg-newsletter h3{color:var(--vg-ink);font-size:1.6rem}
.vg-contact-community .vg-newsletter p{color:#6b7374}
.vg-contact-community .vg-newsletter__form{margin-top:18px}
.vg-contact-community .vg-newsletter__form input[type=email]{border-color:var(--vg-border);background:#fbfbf9;color:var(--vg-ink)}
.vg-contact-community .vg-newsletter__form input[type=email]::placeholder{color:#9a9d9d}
.vg-contact-community .vg-newsletter__form button{background:var(--vg-teal);color:#fff}
.vg-contact-community .vg-newsletter__formwrap small{color:#83898a}
.vg-contact-community .vg-newsletter__formwrap small a{color:var(--vg-teal)}
.vg-contact-community .vg-newsletter__notice{background:#eef5f0;color:#315846}
@media(max-width:900px){.vg-newsletter{grid-template-columns:1fr;gap:18px}.vg-contact-community{grid-template-columns:1fr}}
@media(max-width:620px){.vg-newsletter{margin-bottom:38px;padding:22px 18px}.vg-newsletter__form{grid-template-columns:1fr}.vg-newsletter__form button{width:100%}.vg-contact-community__social,.vg-contact-community .vg-newsletter{padding:24px 20px}.vg-social-links{gap:7px}.vg-social-link{font-size:.72rem}}


/* =========================================================
   v209 — GLOBAL RESPONSIVE QA PASS
   Central safety layer based on the first full-site audit.
   Goal: lighter readable mobile typography, calmer stacked
   compositions, larger touch targets and safe overflow.
   ========================================================= */

/* Keep media and generic content from creating accidental horizontal scroll. */
.vg-main,
.vg-main section,
.vg-main article,
.vg-main .vg-shell{
  min-width:0;
}
.vg-main img,
.vg-main video,
.vg-main iframe,
.vg-main svg{
  max-width:100%;
}

@media (max-width:900px){
  /* Mobile/tablet typography: premium, lighter and substantially easier to scan. */
  /* Public editorial/shop content only. Protected transactional/legal systems retain their locked typography. */
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h1,
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h2,
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h3{
    font-weight:600!important;
    text-wrap:balance;
  }
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h1{line-height:1.08!important;letter-spacing:-.038em!important}
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h2{line-height:1.10!important;letter-spacing:-.032em!important}
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h3{line-height:1.14!important;letter-spacing:-.022em!important}

  /* Legal/information pages are a locked reading system: do not inherit the marketing centering/weight pass. */
  .vg-legal-page h1{font-weight:700!important;line-height:1.02!important;letter-spacing:-.045em!important;text-wrap:initial}
  .vg-legal-page h2{font-weight:700!important;line-height:1.15!important;letter-spacing:-.025em!important;text-wrap:initial}
  .vg-legal-page h3{font-weight:700!important;line-height:normal!important;letter-spacing:normal!important;text-wrap:initial}

  /* Once the editorial/marketing compositions stack, restore a clear central axis. */
  .vghp128-hero__copy,
  .vghp128-statement__inner,
  .vghp128-sectionhead,
  .vghp128-formula__copy,
  .vghp130-process__head,
  .vghp131-process__side,
  .vghp128-system__top,
  .vghp128-clock__copy,
  .vghp128-bridge__headline,
  .vghp128-final__inner,
  .vg-about-hero__copy,
  .vg-jak-zacit-hero__copy{
    text-align:center;
  }

  .vghp128-hero__copy p,
  .vghp128-statement__inner>p,
  .vghp128-sectionhead p,
  .vghp128-formula__copy>p,
  .vghp130-process__head p,
  .vghp131-process__side>p,
  .vghp128-system__top p,
  .vghp128-clock__copy>p,
  .vghp128-bridge__headline p,
  .vghp128-final__inner>div>p{
    margin-left:auto;
    margin-right:auto;
  }


  /* Protected reading/transactional zones must stay left aligned. */
  .vg-legal-page .vg-legal-hero,
  .vg-legal-page .vg-legal-content,
  .woocommerce-account .vg-main,
  .woocommerce-cart .vg-main,
  .woocommerce-checkout .vg-main{
    text-align:left;
  }

  .vghp128-actions,
  .vghp128-final__actions,
  .vghp130-process__actions,
  .vghp131-process__actions{
    justify-content:center;
  }

  /* Controls used in the header must remain comfortable touch targets. */
  .vg-icon-link,
  .vg-menu-toggle{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }

  .vg-cookie-btn{
    min-height:44px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
}

@media (max-width:430px){
  /* Hard caps only on display-size headings; smaller component titles keep their own scale. */
  body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .vg-main h1{
    font-size:clamp(2.25rem,10vw,2.65rem)!important;
  }
  .vghp128-statement h2,
  .vghp128-sectionhead h2,
  .vghp128-formula h2,
  .vghp128-honey h2,
  .vghp128-system__top h2,
  .vghp128-clock__copy h2,
  .vghp128-bridge h2,
  .vghp128-final h2,
  .vghp130-process__head h2{
    font-size:clamp(1.95rem,8.5vw,2.25rem)!important;
  }
  .vghp131-process__side h3,
  .vghp128-system__content h3{
    font-size:clamp(1.75rem,7.5vw,2rem)!important;
  }

  /* A little more breathing room around compact copy. */
  .vghp128-lead,
  .vghp131-process__side>p,
  .vghp128-clock__copy>p,
  .vghp128-final p:not(.vghp128-kicker){
    line-height:1.68!important;
  }
}

/* =========================================================
   v212 — TARGETED RESPONSIVE QA PASS
   Scope is deliberately limited to audited public components.
   Protected: header, footer, legal pages and checkout flow.
   ========================================================= */

/* 768-ish tablet layer: keep display typography controlled once layouts begin to stack. */
@media (max-width:820px){
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h1:not(#vg-cookie-title){
    font-size:clamp(2.65rem,6.4vw,3rem)!important;
    line-height:1.10!important;
    font-weight:600!important;
  }
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h2:not(#vg-cookie-title){
    font-size:clamp(2.15rem,5.2vw,2.5rem)!important;
    line-height:1.12!important;
    font-weight:600!important;
  }
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h3{
    line-height:1.16!important;
    font-weight:600!important;
  }

  /* Product video module: real grid, never a child wider than the viewport. */
  .vg-videos{min-width:0!important;overflow:hidden!important}
  .vg-videos__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    min-width:0!important;
  }
  .vg-video-card,
  .vg-video-card__media,
  .vg-video-card__body,
  .vg-video-card__video{min-width:0!important;max-width:100%!important}

  /* Article tables must remain inside their reading column. */
  .vigres-redakce-table-wrap{max-width:100%!important;overflow-x:auto!important}
  .vigres-redakce-table,
  .vigres-redakce__content table{
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
  }
  .vigres-redakce-table th,
  .vigres-redakce-table td,
  .vigres-redakce__content table th,
  .vigres-redakce__content table td{
    min-width:0!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}

/* 430px audit width can render a little wider internally in browser emulation.
   Use a safe 520px ceiling so the intended mobile layer always wins. */
@media (max-width:520px){
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h1:not(#vg-cookie-title){
    font-size:clamp(2.2rem,9.6vw,2.6rem)!important;
    line-height:1.12!important;
    font-weight:600!important;
    letter-spacing:-.035em!important;
  }
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h2:not(#vg-cookie-title){
    font-size:clamp(1.9rem,8.2vw,2.2rem)!important;
    line-height:1.14!important;
    font-weight:600!important;
    letter-spacing:-.028em!important;
  }
  body:not(.woocommerce-account):not(.woocommerce-cart):not(.woocommerce-checkout) .vg-main h3{
    font-size:min(1.875rem,8vw)!important;
    line-height:1.18!important;
    font-weight:600!important;
  }

  /* Product videos: one calm centred card per row on phones. */
  .vg-videos{padding:24px 18px!important}
  .vg-videos__grid{grid-template-columns:1fr!important;gap:16px!important}
  .vg-video-card{width:min(100%,360px)!important;margin-inline:auto!important}
  .vg-video-card__media{width:100%!important}
  .vg-video-card__play{max-width:52px!important;max-height:52px!important}

  /* Product category navigation: wrap instead of letting pills live outside viewport. */
  .vg-category-switcher{max-width:100%!important;overflow:hidden!important}
  .vg-category-switcher__inner{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    overflow:visible!important;
    gap:7px!important;
    padding:8px!important;
    border:1px solid var(--vg-border)!important;
    border-radius:16px!important;
  }
  .vg-category-switcher__item{
    flex:0 1 auto!important;
    max-width:100%!important;
    padding:10px 12px!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.2!important;
  }

  /* Redakce topic filters: two-column wrapping avoids one long pill escaping the shell. */
  .vg-editorial-home__topics,
  .vg-editorial-home__topics--filters{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-width:100%!important;
    gap:8px!important;
  }
  .vg-editorial-home__topics a,
  .vg-editorial-home__topics--filters a{
    display:flex!important;
    min-width:0!important;
    min-height:42px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:9px 10px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
    line-height:1.25!important;
  }

  /* Editorial tables: compact but readable, with no child overflowing the page. */
  .vigres-redakce-table th,
  .vigres-redakce-table td,
  .vigres-redakce__content table th,
  .vigres-redakce__content table td{
    padding:10px 8px!important;
    font-size:.78rem!important;
    line-height:1.45!important;
  }

  /* Stacked category recommendation cards use a central axis on phones. */
  .vg-category-after .vg-category-need,
  .vg-category-after .vg-category-need h3,
  .vg-category-after .vg-category-need p{text-align:center!important}
}

/* Customer portal has its own protected responsive solution — fix only its mobile nav overflow. */
@media (max-width:620px){
  body.woocommerce-account .vg-account-nav{overflow:visible!important}
  body.woocommerce-account .vg-account-nav ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    overflow:visible!important;
    padding:7px!important;
  }
  body.woocommerce-account .vg-account-nav li{min-width:0!important;width:auto!important}
  body.woocommerce-account .vg-account-nav a{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:8px 10px!important;
    justify-content:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
    line-height:1.25!important;
  }
  body.woocommerce-account .vg-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{
    grid-column:1/-1!important;
  }
}
@media (max-width:350px){
  body.woocommerce-account .vg-account-nav ul{grid-template-columns:1fr!important}
  body.woocommerce-account .vg-account-nav .woocommerce-MyAccount-navigation-link--customer-logout{grid-column:auto!important}
}

/* =========================================================
   v213 — ZERO ERROR QA CLEANUP
   Two audited tablet overflows only. No global typography,
   header, footer, legal or checkout changes.
   ========================================================= */
@media (min-width:621px) and (max-width:820px){
  /* Product category switcher: wrap all category pills at tablet width. */
  .vg-category-switcher{
    max-width:100%!important;
    overflow:hidden!important;
  }
  .vg-category-switcher__inner{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    padding:8px!important;
  }
  .vg-category-switcher__item{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.2!important;
  }

  /* Customer account navigation: wrap items on tablets so logout cannot escape the shell. */
  body.woocommerce-account .vg-account-nav{
    max-width:100%!important;
    overflow:hidden!important;
  }
  body.woocommerce-account .vg-account-nav ul{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:stretch!important;
    gap:6px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    padding:7px!important;
  }
  body.woocommerce-account .vg-account-nav li{
    flex:1 1 calc(25% - 6px)!important;
    min-width:0!important;
    width:auto!important;
  }
  body.woocommerce-account .vg-account-nav a{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:8px 9px!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
    line-height:1.2!important;
  }
}

/* =========================================================
   v214 — ACTIONABLE QA CLEANUP
   Only audited usability/readability issues. Stable system
   blocks remain structurally untouched.
   ========================================================= */

/* Genuine small body copy: keep supporting text comfortably readable. */
.vghp128-statement__principles article > p,
.vghp128-formula__cards article > p,
.vghp128-bridge__cards article > p,
.vghp128-editorial__grid .vghp128-article__body > p{
  font-size:max(.875rem,14px)!important;
  line-height:1.5!important;
}
.vgu118-note{
  font-size:13px!important;
  line-height:1.55!important;
}

/* Review pagination: 44px touch target while preserving the tiny visual dot. */
.vg-review-dots{gap:2px!important}
.vg-review-dot,
.vg-review-dot.is-active{
  position:relative!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
}
.vg-review-dot::before{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:7px;height:7px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:#d3d6d4;
}
.vg-review-dot.is-active::before{
  width:24px;
  border-radius:999px;
  background:var(--vg-teal);
}

/* Gift CTA was visually a button but its actual clickable box was too shallow. */
.vigres-gift-page .vigres-button--primary{
  display:inline-flex!important;
  min-height:44px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:11px 18px!important;
  line-height:1.25!important;
}

@media (max-width:820px){
  /* Category recommendation cards are a stacked composition at tablet widths. */
  .vg-category-after .vg-category-need,
  .vg-category-after .vg-category-need h3,
  .vg-category-after .vg-category-need p{
    text-align:center!important;
  }

  /* Long editorial headings: compact enough to remain scannable on phones/tablets. */
  .vigres-redakce-body .vigres-redakce-inner > h2,
  .vigres-redakce-body .vigres-redakce-inner > section > h2,
  .vigres-redakce-product-panel__copy > h2{
    font-size:clamp(1.45rem,4.8vw,1.9rem)!important;
    line-height:1.22!important;
    overflow-wrap:anywhere!important;
  }
  .vigres-redakce-card h3,
  .vg-editorial-card__body h3,
  .vghp128-article__body h3{
    font-size:clamp(1.35rem,4.2vw,1.65rem)!important;
    line-height:1.24!important;
    overflow-wrap:anywhere!important;
  }

  /* The process-side statement remains a display heading, but should not tower at 768px. */
  .vghp131-process__side h3{
    font-size:clamp(2rem,5.2vw,2.45rem)!important;
    line-height:1.14!important;
  }
}

@media (max-width:520px){
  /* Very long editorial article titles get one extra mobile cap. */
  .vigres-redakce__hero h1{
    font-size:clamp(2rem,9vw,2.35rem)!important;
    line-height:1.14!important;
    overflow-wrap:anywhere!important;
  }
  .vghp128-bridge__headline h2,
  .vg-about-manifesto h2,
  .vg-about-perspectives__intro h2,
  #vg-category-why-together-title{
    font-size:clamp(1.85rem,7.5vw,2.05rem)!important;
    line-height:1.16!important;
  }
}


/* =========================================================
   v215 — TYPOGRAPHY UNIFICATION
   Final web typography contract:
   Ubuntu = headings, navigation, buttons and CTA controls.
   Noto Sans = body/copy text.
   Scope is typography-only; no layout or commerce logic changes.
   ========================================================= */

/* Interactive UI / CTA typography. */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
a[class*="btn"],
a[class*="button"],
a[class*="cta"],
nav a {
  font-family:var(--vg-font-heading)!important;
}

/* Legal CTA controls were the only audited Arial UI elements. */
.vg-legal-button {
  font-family:var(--vg-font-heading)!important;
}

/* Cookie copy remains body text; cookie actions are CTA controls. */
.vg-cookie-consent__panel {
  font-family:var(--vg-font-body)!important;
}
.vg-cookie-btn,
.vg-cookie-consent__link {
  font-family:var(--vg-font-heading)!important;
}

}


/* =========================================================
   v216 — MOBILE CART CLEANUP
   - plovoucí mini-cart tab je na mobilech <=700px skrytý;
   - headerový košík zůstává jediným mobilním vstupem;
   - desktopový mini-cart a drawer beze změny.
   ========================================================= */


/* =========================================================
   v217 — MOBILE FLOATING CART RESTORE
   User-facing correction:
   - mobile floating cart is visible again;
   - moved safely inward/up from viewport edges;
   - badge remains fully visible;
   - desktop mini-cart/drawer and commerce logic unchanged.
   ========================================================= */
@media (max-width:700px){
  .vg-mini-cart-tab{
    display:flex!important;
    right:max(22px, env(safe-area-inset-right))!important;
    top:auto!important;
    bottom:calc(28px + env(safe-area-inset-bottom))!important;
    width:56px!important;
    height:56px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:18px!important;
    transform:none!important;
    overflow:visible!important;
    z-index:9997!important;
  }

  body.single-product .vg-mini-cart-tab{
    bottom:calc(92px + env(safe-area-inset-bottom))!important;
  }

  .vg-mini-cart-tab__count{
    right:-2px!important;
    top:-6px!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 6px!important;
    line-height:20px!important;
  }

  .vg-mini-cart-tab.is-empty{
    display:flex!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  .vg-mini-cart.is-open + .vg-mini-cart-tab{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}


/* =========================================================
   v218 — MOBILE FLOATING CART ROBUST RESTORE
   - floating cart is always rendered on mobile;
   - JS synchronizes count/state from the header cart badge;
   - avoids stale .is-empty state from page/session cache;
   - desktop behavior unchanged.
   ========================================================= */
@media (max-width:700px){
  .vg-mini-cart-tab,
  .vg-mini-cart-tab.is-empty{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    right:max(22px, env(safe-area-inset-right))!important;
    top:auto!important;
    bottom:calc(28px + env(safe-area-inset-bottom))!important;
    transform:none!important;
  }

  body.single-product .vg-mini-cart-tab,
  body.single-product .vg-mini-cart-tab.is-empty{
    bottom:calc(92px + env(safe-area-inset-bottom))!important;
  }

  .vg-mini-cart-tab.is-empty .vg-mini-cart-tab__count{
    display:none!important;
  }

  .vg-mini-cart.is-open + .vg-mini-cart-tab,
  .vg-mini-cart.is-open + .vg-mini-cart-tab.is-empty{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}


/* =========================================================
   v219 — MOBILE FLOATING CART POSITION LIFT
   - raises floating cart higher on mobile so it clears the
     mobile browser bottom bar and no longer sits too low.
   ========================================================= */
@media (max-width:700px){
  .vg-mini-cart-tab,
  .vg-mini-cart-tab.is-empty{
    bottom:calc(108px + env(safe-area-inset-bottom))!important;
  }

  body.single-product .vg-mini-cart-tab,
  body.single-product .vg-mini-cart-tab.is-empty{
    bottom:calc(164px + env(safe-area-inset-bottom))!important;
  }
}


/* =========================================================
   v220 — MOBILE FLOATING CART COUNT BADGE
   - preserves lifted mobile position from v219;
   - count badge is fully inside the floating button and legible;
   - count remains synchronized by existing v218 cart JS;
   - desktop unchanged.
   ========================================================= */
@media (max-width:700px){
  .vg-mini-cart-tab,
  .vg-mini-cart-tab.is-empty{
    bottom:calc(108px + env(safe-area-inset-bottom))!important;
    overflow:visible!important;
  }

  body.single-product .vg-mini-cart-tab,
  body.single-product .vg-mini-cart-tab.is-empty{
    bottom:calc(164px + env(safe-area-inset-bottom))!important;
  }

  .vg-mini-cart-tab__count{
    display:flex!important;
    position:absolute!important;
    right:3px!important;
    top:3px!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 5px!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    background:var(--vg-green)!important;
    color:#fff!important;
    font-family:var(--vg-font-heading)!important;
    font-size:10px!important;
    font-weight:800!important;
    line-height:1!important;
    box-shadow:0 2px 7px rgba(49,72,75,.22)!important;
    z-index:2!important;
  }

  .vg-mini-cart-tab.is-empty .vg-mini-cart-tab__count{
    display:none!important;
  }
}


/* =========================================================
   v227 — COOKIE CONSENT FIRST-LAYER UX
   - hlavní CTA: Souhlasím
   - sekundární CTA: Nastavení
   - odmítnutí volitelných cookies zůstává dostupné jedním klikem
   - consent logika ani localStorage klíč se nemění
========================================================= */
.vg-cookie-consent__actions{
  align-items:center;
}
.vg-cookie-btn--primary{
  min-width:138px;
}
.vg-cookie-btn--text{
  flex-basis:100%;
  width:max-content;
  min-width:0!important;
  min-height:auto;
  padding:4px 2px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#2e7d5a;
  text-decoration:underline;
  text-underline-offset:3px;
  box-shadow:none;
}
.vg-cookie-btn--text:hover,
.vg-cookie-btn--text:focus-visible{
  background:transparent;
  color:#245f46;
}
@media(max-width:680px){
  .vg-cookie-consent__actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .vg-cookie-btn--text{
    width:auto;
    justify-self:start;
    min-height:auto;
    padding:5px 2px;
  }
}


/* =========================================================
   v228 — COOKIE CONSENT VISUAL LAYOUT ONLY
   DŮLEŽITÉ: žádná změna HTML/JS/Consent Mode/localStorage.
   Desktop: Jen nezbytné | Nastavení | Souhlasím
   Mobile:  Souhlasím | Nastavení | Jen nezbytné
========================================================= */
.vg-cookie-consent__actions{
  display:grid!important;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
  width:100%;
  margin-top:22px;
}

.vg-cookie-consent__actions [data-vg-cookie-essential]{
  grid-column:1;
  justify-self:start;
}

.vg-cookie-consent__actions [data-vg-cookie-customize]{
  grid-column:2;
  justify-self:center;
}

.vg-cookie-consent__actions [data-vg-cookie-all]{
  grid-column:3;
  justify-self:end;
}

.vg-cookie-consent__actions [data-vg-cookie-save]{
  grid-column:3;
  justify-self:end;
}

/* Všechna hlavní tlačítka drží stejnou moderní výšku. */
.vg-cookie-consent__actions .vg-cookie-btn{
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  font-family:var(--vg-font-heading)!important;
  font-size:.86rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.005em;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}

/* Hlavní CTA. */
.vg-cookie-consent__actions .vg-cookie-btn--primary,
.vg-cookie-consent__actions [data-vg-cookie-save]{
  min-width:142px!important;
  border:1px solid #304f52;
  background:#304f52;
  color:#fff;
  box-shadow:0 7px 18px rgba(48,79,82,.14);
}
.vg-cookie-consent__actions .vg-cookie-btn--primary:hover,
.vg-cookie-consent__actions .vg-cookie-btn--primary:focus-visible,
.vg-cookie-consent__actions [data-vg-cookie-save]:hover,
.vg-cookie-consent__actions [data-vg-cookie-save]:focus-visible{
  background:#284548;
  border-color:#284548;
  box-shadow:0 9px 22px rgba(48,79,82,.18);
}

/* Nastavení = čistý outline. */
.vg-cookie-consent__actions .vg-cookie-btn--ghost{
  min-width:126px;
  border:1px solid #304f52;
  background:#fff;
  color:#304f52;
  box-shadow:none;
}
.vg-cookie-consent__actions .vg-cookie-btn--ghost:hover,
.vg-cookie-consent__actions .vg-cookie-btn--ghost:focus-visible{
  background:#f4f7f5;
}

/* Jen nezbytné = terciární ghost, záměrně méně dominantní. */
.vg-cookie-consent__actions .vg-cookie-btn--text{
  width:auto;
  min-width:126px!important;
  min-height:48px;
  padding:0 18px;
  border:1px solid #d9dfdc;
  border-radius:999px;
  background:transparent;
  color:#667371;
  text-decoration:none;
  box-shadow:none;
}
.vg-cookie-consent__actions .vg-cookie-btn--text:hover,
.vg-cookie-consent__actions .vg-cookie-btn--text:focus-visible{
  background:#fafbf9;
  border-color:#c8d1cd;
  color:#405654;
}

/* Odkaz zůstává klidný a oddělený od CTA řady. */
.vg-cookie-consent__link{
  margin-top:16px;
}

/* Mobil: nejdřív hlavní souhlas, potom nastavení, nakonec odmítnutí. */
@media(max-width:680px){
  .vg-cookie-consent__actions{
    display:flex!important;
    flex-direction:column;
    align-items:stretch;
    gap:9px;
  }

  .vg-cookie-consent__actions [data-vg-cookie-all],
  .vg-cookie-consent__actions [data-vg-cookie-save]{
    order:1;
  }

  .vg-cookie-consent__actions [data-vg-cookie-customize]{
    order:2;
  }

  .vg-cookie-consent__actions [data-vg-cookie-essential]{
    order:3;
  }

  .vg-cookie-consent__actions .vg-cookie-btn{
    width:100%;
  }

  .vg-cookie-consent__actions .vg-cookie-btn--text{
    width:100%;
  }
}


/* =========================================================
   v229 — COOKIE CTA INLINE ALIGNMENT ONLY
   Pouze vizuální oprava. Consent logika se nemění.
========================================================= */
@media(min-width:681px){
  .vg-cookie-consent__actions{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    width:auto!important;
    margin-top:22px!important;
  }

  .vg-cookie-consent__actions [data-vg-cookie-essential],
  .vg-cookie-consent__actions [data-vg-cookie-customize],
  .vg-cookie-consent__actions [data-vg-cookie-all],
  .vg-cookie-consent__actions [data-vg-cookie-save]{
    grid-column:auto!important;
    justify-self:auto!important;
    flex:0 0 auto!important;
    margin:0!important;
  }

  .vg-cookie-consent__actions .vg-cookie-btn{
    width:auto!important;
  }
}


/* =========================================================
   v230 — COOKIE CTA ORDER + CENTERING ONLY
   Desktop: Jen nezbytné | Nastavení | Souhlasím
   Celá skupina je vycentrovaná v banneru.
   Consent logika se nemění.
========================================================= */
@media(min-width:681px){
  .vg-cookie-consent__actions{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:14px!important;
    width:100%!important;
    margin-top:22px!important;
  }

  .vg-cookie-consent__actions [data-vg-cookie-essential]{
    order:1!important;
  }

  .vg-cookie-consent__actions [data-vg-cookie-customize]{
    order:2!important;
  }

  .vg-cookie-consent__actions [data-vg-cookie-all],
  .vg-cookie-consent__actions [data-vg-cookie-save]{
    order:3!important;
  }

  .vg-cookie-consent__actions [data-vg-cookie-essential],
  .vg-cookie-consent__actions [data-vg-cookie-customize],
  .vg-cookie-consent__actions [data-vg-cookie-all],
  .vg-cookie-consent__actions [data-vg-cookie-save]{
    margin:0!important;
    flex:0 0 auto!important;
  }
}


/* =========================================================
   v231 — COOKIE "VÍCE O COOKIES" CENTERING ONLY
   Pouze vizuální zarovnání odkazu na střed banneru.
   Consent logika se nemění.
========================================================= */
.vg-cookie-consent__link{
  display:block!important;
  width:max-content!important;
  margin:16px auto 0!important;
  text-align:center!important;
}


/* =========================================================
   v232 — CHECKOUT ERROR GUIDANCE
   Pouze UX validace checkoutu: viditelná hláška, zvýraznění,
   scroll a focus na první chybné pole. Měření ani checkout
   business logika se nemění.
========================================================= */
body.woocommerce-checkout .vg-checkout-error-toast{
  position:fixed;
  left:50%;
  top:92px;
  z-index:99997;
  width:min(560px,calc(100vw - 32px));
  transform:translate(-50%,-10px);
  opacity:0;
  pointer-events:none;
  padding:14px 18px;
  border:1px solid #e5c9c3;
  border-radius:16px;
  background:#fff8f6;
  color:#74483f;
  box-shadow:0 18px 48px rgba(28,29,31,.16);
  font-family:var(--vg-font-body);
  font-size:.9rem;
  font-weight:650;
  line-height:1.4;
  transition:opacity .18s ease,transform .18s ease;
}
body.woocommerce-checkout .vg-checkout-error-toast.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}
body.woocommerce-checkout .vg-checkout-error-toast strong{
  display:block;
  margin-bottom:2px;
  color:#683d35;
  font-family:var(--vg-font-heading);
  font-size:.95rem;
}
body.woocommerce-checkout .vg-checkout-classic .form-row.vg-checkout-error-target,
body.woocommerce-checkout .vg-checkout-classic .vg-checkout-error-target{
  position:relative;
  scroll-margin-top:130px;
}
body.woocommerce-checkout .vg-checkout-classic .form-row.vg-checkout-error-target input.input-text,
body.woocommerce-checkout .vg-checkout-classic .form-row.vg-checkout-error-target textarea,
body.woocommerce-checkout .vg-checkout-classic .form-row.vg-checkout-error-target select,
body.woocommerce-checkout .vg-checkout-classic .form-row.woocommerce-invalid input.input-text,
body.woocommerce-checkout .vg-checkout-classic .form-row.woocommerce-invalid textarea,
body.woocommerce-checkout .vg-checkout-classic .form-row.woocommerce-invalid select,
body.woocommerce-checkout .vg-checkout-classic .form-row.woocommerce-invalid .select2-selection{
  border-color:#b9685b!important;
  outline:3px solid rgba(185,104,91,.12)!important;
  outline-offset:0!important;
}
body.woocommerce-checkout .vg-checkout-classic .vg-checkout-error-target{
  animation:vgCheckoutErrorPulse .75s ease 2;
}
@keyframes vgCheckoutErrorPulse{
  0%,100%{filter:none}
  50%{filter:drop-shadow(0 0 8px rgba(185,104,91,.18))}
}
@media(max-width:680px){
  body.woocommerce-checkout .vg-checkout-error-toast{
    top:70px;
    width:calc(100vw - 24px);
    padding:13px 15px;
    border-radius:14px;
    font-size:.86rem;
  }
  body.woocommerce-checkout .vg-checkout-classic .form-row.vg-checkout-error-target,
  body.woocommerce-checkout .vg-checkout-classic .vg-checkout-error-target{
    scroll-margin-top:96px;
  }
}


/* =========================================================
   VIGRES v237 — KOŠÍKOVÁ IKONA JEN PŘED NÁKUPEM
   Od stránky košíku dál už floating mini-cart nemá UX smysl.
   ========================================================= */
body.woocommerce-cart #vg-mini-cart-tab,
body.woocommerce-checkout #vg-mini-cart-tab,
body.woocommerce-order-received #vg-mini-cart-tab,
body.woocommerce-cart [data-vg-cart-open].vg-mini-cart-tab,
body.woocommerce-checkout [data-vg-cart-open].vg-mini-cart-tab,
body.woocommerce-order-received [data-vg-cart-open].vg-mini-cart-tab{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}


/* =========================================================
   VIGRES v239 — PPL MAP IFRAME
   /ppl-map je technický iframe pro PPL widget, ne běžná stránka webu.
   Floating mini-cart se v něm nesmí zobrazit.
   ========================================================= */
body:has(#pplcz-parcelshop-info) #vg-mini-cart-tab,
body:has(#pplcz-parcelshop-info) [data-vg-mini-cart],
body:has(ppl-access-point-widget) #vg-mini-cart-tab,
body:has(ppl-access-point-widget) [data-vg-mini-cart]{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}


/* ==========================================================
   V244 — HOMEPAGE HEADING HIERARCHY LOCK
   Scope: homepage display typography only.
   H1 must remain clearly dominant over H2; display H3 stays
   one level below H2. No layout / commerce / SEO changes.
   ========================================================== */
@media (min-width:901px){
  .vghp128-hero h1{
    font-size:clamp(3.9rem,5.25vw,5.55rem);
    line-height:.91;
  }

  .vghp128-statement h2,
  .vghp128-sectionhead h2,
  .vghp128-formula h2,
  .vghp128-honey h2,
  .vghp128-system__top h2,
  .vghp128-clock__copy h2,
  .vghp128-bridge h2,
  .vghp128-final h2,
  .vghp130-process__head h2{
    font-size:clamp(2.65rem,3.75vw,4.05rem);
    line-height:.96;
    letter-spacing:-.045em;
  }

  .vghp131-process__side h3,
  .vghp128-system__content h3{
    font-size:clamp(2.25rem,3.15vw,3.2rem);
    line-height:.98;
    letter-spacing:-.04em;
  }
}
