@charset "UTF-8";
/* Native Elementor build: the site is containers + widgets; this file only polishes what widget controls cannot express. */
@font-face { font-family: 'Dana Yad'; src: url('../fonts/DanaYad.woff') format('woff'), url('../fonts/DanaYad.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; }
.vn-hidden { display: none !important; }
body.viridian-site .elementor-widget-container, body.viridian-site .elementor-heading-title, body.viridian-site .elementor-button { font-family: 'Assistant', sans-serif; }
.vn-h strong { font-family: 'Dana Yad', 'Suez One', serif; font-weight: 400; color: #068994; font-size: 1.12em; line-height: 1; position: relative; top: .03em; }
.vn-h--white .elementor-heading-title { color: #fff; }
.vn-h--white strong { color: #068994; }
.vn-rich p { font-size: 1.125rem; line-height: 1.6; }
.vn-rich strong { font-weight: 700; }

/* Buttons */
.vn-btn .elementor-button { border-radius: 9999px; padding: .85rem 2.2rem; font-family: 'Assistant', sans-serif; font-size: 1.0625rem; font-weight: 600; line-height: 1.4; transition: all .3s cubic-bezier(.4,0,.2,1); }
.vn-btn--textured .elementor-button { background: url('../../../../uploads/viridian-assets/button--textured-teal.png') center / 100% 100% no-repeat; background-color: transparent; color: #fff; font-family: 'Dana Yad', 'Suez One', serif; font-weight: 400; font-size: 1.5rem; padding: 1.1rem 3rem 1rem; min-width: 250px; }
.vn-btn--textured .elementor-button:hover { background-image: url('../../../../uploads/viridian-assets/button--textured-teal--hover.png'); transform: scale(1.04); color: #fff; }
.vn-btn--hand .elementor-button { background: url('../../../../uploads/viridian-assets/button--hand-drawn-black.svg') center / 100% 100% no-repeat; background-color: transparent; color: #1e1e1e; font-family: 'Dana Yad', 'Suez One', serif; font-weight: 400; font-size: 1.5rem; padding: 1.1rem 3rem 1rem; min-width: 250px; }
.vn-btn--hand .elementor-button:hover { background-image: url('../../../../uploads/viridian-assets/button--hand-drawn-teal.svg'); color: #068994; }
.vn-btn--teal .elementor-button { background-color: #068994; color: #fff; }
.vn-btn--teal .elementor-button:hover { background-color: #00b1bc; }
.vn-btn--black .elementor-button { background-color: #1e1e1e; color: #fff; }
.vn-btn--black .elementor-button:hover { background-color: #068994; }
.vn-btn--white .elementor-button { background-color: #fff; color: #1e1e1e; border: 2px solid #1e1e1e; }

/* Header */
.vn-header { box-shadow: 0 1px 0 #e7e7e7; }
.vn-header .vn-logo img { width: 230px; height: auto; }
.vn-mega .e-n-menu-title { padding: 0 .5rem; }
.vn-mega .e-n-menu-title-text { font-family: 'Assistant', sans-serif; font-size: 1.125rem; font-weight: 500; color: #1e1e1e; text-underline-offset: .45em; text-decoration-thickness: 1px; }
.vn-mega .e-n-menu-title:hover .e-n-menu-title-text, .vn-mega .e-n-menu-title.e-current .e-n-menu-title-text { text-decoration: underline; }
.vn-mega .e-n-menu-content { border-top: 1px solid #e7e7e7; box-shadow: 0 24px 40px -20px rgba(0,0,0,.25); }
.vn-mega-col__title .elementor-heading-title { letter-spacing: .08em; }
.vn-mega-col__title a { color: inherit; }
.vn-mega-col__menu .elementor-nav-menu--main .elementor-item { padding: 3px 0; font-weight: 300; font-size: 1rem; }
.vn-mega-col__menu .elementor-icon-list-item { font-weight: 300; }
.vn-mega-col__menu .elementor-icon-list-icon { display: none; }
.vn-mega-col__menu .elementor-icon-list-text:hover { color: #068994; text-decoration: underline; }
.vn-mega-callout img { border-radius: 12px; }
.vn-search .e-search-form { max-width: 280px; }
.vn-search .e-search-input-wrapper { border: 1px solid #d1d1d1; border-radius: 9999px; background: #fff; padding: 0 .75rem; height: 42px; }
.vn-search .e-search-input { border: 0; background: transparent; font-family: 'Assistant', sans-serif; font-weight: 300; font-size: .95rem; box-shadow: none; }
.vn-search .e-search-submit { background: transparent; color: #1e1e1e; border: 0; padding: 0 .25rem; }
.vn-search .e-search-input:focus { outline: none; box-shadow: none; }
.vn-header__icons .elementor-icon { font-size: 20px; }
.vn-cart .elementor-menu-cart__toggle .elementor-button, .vn-cart .elementor-menu-cart__toggle .elementor-button:hover { background-color: transparent !important; color: #1e1e1e !important; padding: 0 !important; font-size: 20px; border: 0; box-shadow: none; }
.vn-cart .elementor-button-icon[data-counter]:before { background: #068994; color: #fff; font-family: 'Assistant', sans-serif; }

/* Hero slider */
.vn-hero .elementor-swiper-button { width: 48px; height: 48px; border-radius: 50%; background: rgba(255,255,255,.9); color: #1e1e1e; display: flex; align-items: center; justify-content: center; font-size: 18px; box-shadow: 0 2px 6px rgba(0,0,0,.15); }
.vn-hero .elementor-swiper-button:hover { background: #fff; }
.vn-hero .swiper-pagination-bullet { width: 10px; height: 10px; background: #fff; opacity: .6; }
.vn-hero .swiper-pagination-bullet-active { opacity: 1; background: #068994; }

/* Icon bar */
.vn-iconbar .vn-iconbar__icon img { width: 35px; height: 35px; }
.vn-iconbar__item .elementor-heading-title { color: #fff; font-size: 1rem; line-height: 1.25; font-weight: 400; }
.vn-iconbar__item .elementor-heading-title a { color: inherit; }
@media (max-width: 1024px) { .vn-iconbar { flex-wrap: wrap; } .vn-iconbar__item { width: 50%; } }

/* Cards in loop grids and carousels */
.vn-loop .swiper-slide, .vn-loop-grid .e-loop-item { text-align: center; }
.vn-card .vn-card__image img { width: 100%; height: auto; }
.vn-card .vn-card__title .elementor-heading-title, .vn-card .vn-card__title .elementor-heading-title a { font-family: 'Assistant', sans-serif; font-size: 1rem; font-weight: 700; line-height: 1.3; color: #1e1e1e; text-decoration: none; }
.vn-card .vn-card__title a:hover { color: #068994; }
.vn-card .vn-card__price .price { color: #068994; font-size: 1rem; font-weight: 400; }
.vn-card .vn-card__price .price del { color: #999; margin-inline-end: .4em; }
.vn-loop .elementor-swiper-button, .vn-carousel .elementor-swiper-button { width: 44px; height: 44px; border-radius: 50%; background: #fff; border: 1px solid #1e1e1e; color: #1e1e1e; display: flex; align-items: center; justify-content: center; font-size: 14px; }
.vn-loop .elementor-swiper-button:hover, .vn-carousel .elementor-swiper-button:hover { background: #1e1e1e; color: #fff; }
.vn-loop .swiper-scrollbar { display: none; }
.vn-loop--mega .swiper-slide { text-align: start; }

/* Health need tiles: the second image swaps in on hover */
.vn-tile { position: relative; }
.vn-tile .elementor-widget.vn-tile__on { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity .3s; }
.vn-tile:hover .elementor-widget.vn-tile__on { opacity: 1; }
.vn-tile img { width: 100%; height: auto; display: block; }

/* Reviews */
.vn-carousel--reviews .swiper-slide { display: flex; }
.vn-review { width: 100%; }
.vn-review--img img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; aspect-ratio: 1; }
.vn-review--txt { min-height: 100%; }
.vn-stars { display: flex; gap: 3px; justify-content: center; margin-bottom: .75rem; }
.vn-stars span { width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23068994'%3E%3Cpath d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01z'/%3E%3C/svg%3E") center / contain no-repeat; }

/* Rabbit hero */
.vn-rabbit .elementor-heading-title { max-width: 720px; margin: 0 auto; }

/* Pillars and people */
.vn-pillar img { max-width: 130px; }
.vn-person__img img { max-width: 260px; }
.vn-sec--team { background-size: 100% 100%; }

/* News cards */
.vn-news-card__image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid #e7e7e7; border-radius: 12px; }
.vn-news-card__date .elementor-icon-list-text { color: #888; font-size: .75rem; letter-spacing: .05em; text-transform: uppercase; }
.vn-news-card__title .elementor-heading-title a { color: #111; text-decoration: none; }
.vn-news-card__title .elementor-heading-title a:hover { color: #068994; }
.vn-loop--news .swiper-slide { text-align: start; }

/* Newsletter */
.vn-newsletter__box { position: relative; }
.vn-newsletter__form .elementor-form-fields-wrapper { position: relative; }
.vn-newsletter__form .elementor-field-group { padding: 0; margin: 0; }
.vn-newsletter__form .elementor-field-type-email input { width: 100%; padding: 1.1rem 1.75rem; padding-inline-end: 5rem; font-size: 1.25rem; background: #fff; border: 1px solid #d1d1d1; border-radius: 9999px; font-family: 'Assistant', sans-serif; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.vn-newsletter__form .elementor-field-type-email input:focus { outline: none; border-color: #068994; }
.vn-newsletter__form .elementor-field-type-submit { position: absolute; top: 50%; inset-inline-end: 8px; transform: translateY(-50%); width: auto; }
.vn-newsletter__form .elementor-field-type-submit .elementor-button { width: 48px; height: 48px; border-radius: 50%; background: #068994; color: #fff; padding: 0; display: flex; align-items: center; justify-content: center; }
.vn-newsletter__form .elementor-field-type-submit .elementor-button:hover { background: #00b1bc; }
.vn-newsletter__form .elementor-message { margin-top: 1rem; text-align: center; }

/* Footer */
.vn-footer .elementor-heading-title { color: #fff; letter-spacing: .08em; }
.vn-footer__menu .elementor-nav-menu--main .elementor-item { color: #fff; font-weight: 300; padding: 4px 0; }
.vn-footer__menu .elementor-nav-menu--main .elementor-item:hover { color: #fff; text-decoration: underline; }
.vn-footer__social .elementor-icon-list-icon { width: 28px; height: 28px; border-radius: 50%; background: #fff; display: inline-flex; align-items: center; justify-content: center; }
.vn-footer__social .elementor-icon-list-icon svg, .vn-footer__social .elementor-icon-list-icon i { color: #111; font-size: 12px; }
.vn-footer__social .elementor-icon-list-text { color: #fff; font-weight: 300; }
.vn-footer__badges .elementor-widget-image { width: auto; }
.vn-footer__badges img { max-width: 60px; height: auto; }
.vn-footer__legal a { color: #fff; }
.vn-footer__legal a:hover { text-decoration: underline; }

/* Product archive */
.vn-filters-bar { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.vn-filterbar { position: relative; z-index: 20; }
.vn-filterbar .filter-dropdown { z-index: 50; }
.vn-filterbar .filter-options { max-height: 18rem; overflow-y: auto; }
.vn-filterbar .filter-dropdown__footer { position: sticky; bottom: 0; background: #fff; }
.vn-filterbar .filter-option:hover { background: #f3f6f6; }
.vn-filterbar .filter-option input { accent-color: #068994; }
.vn-archive-hero { background-blend-mode: multiply; }
.vn-crumbs .woocommerce-breadcrumb { font-size: .875rem; color: #4b5563; }
.vn-crumbs .woocommerce-breadcrumb a { color: #4b5563; }
.vn-crumbs--light .woocommerce-breadcrumb, .vn-crumbs--light .woocommerce-breadcrumb a { color: #f1f1f1; }
.vn-archive-desc p { max-width: 700px; margin: 0 auto; }
.vn-filter .e-filter { gap: .5rem; }
.vn-filter .e-filter-item { padding: .55rem 1rem; font-size: .875rem; font-weight: 700; border: 1px solid #b0b0b0; border-radius: 9999px; background: #fff; color: #1e1e1e; white-space: nowrap; transition: all .2s; }
.vn-filter .e-filter-item:hover { border-color: #1e1e1e; color: #1e1e1e; }
.vn-filter .e-filter-item.e-active { background: #111; color: #fff; border-color: #111; }
.vn-filter--pills .e-filter-item { font-weight: 400; color: #5d5d5d; }
.vn-filter--pills .e-filter-item.e-active { background: #1e1e1e; color: #fff; }
.vn-sort-wrap .sort-by { display: flex; align-items: center; gap: .5rem; }
.vn-sort-wrap .sort-by__label { font-size: .875rem; color: #5d5d5d; }
.vn-loop-grid .e-loop-item { padding: 0; }

/* Product page */
.vn-pdp__badges .elementor-heading-title { letter-spacing: .15em; }
.vn-pdp__title .elementor-heading-title { font-weight: 600; }
.vn-pdp__en .elementor-heading-title { direction: ltr; text-align: end; }
.vn-pdp__rating .star-rating { color: #068994; }
.vn-pdp__rating .woocommerce-review-link { color: #4b5563; font-size: .875rem; }
.vn-pdp__short p { color: #888; }
.vn-pdp__label .elementor-heading-title { margin-top: .5rem; }
.vn-pdp__variants .variants--table { border: 0; }
.vn-pdp__cart .cart { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.vn-pdp__cart .variations, .vn-pdp__cart .reset_variations { display: none !important; }
.vn-pdp__cart .quantity { display: inline-flex; align-items: center; border: 1px solid #1e1e1e; border-radius: 9999px; overflow: hidden; }
.vn-pdp__cart .quantity .qty { width: 3.5rem !important; min-width: 3.5rem; border: 0 !important; text-align: center; padding: .8rem 0 !important; font-family: 'Assistant', sans-serif; font-size: 1rem; background: transparent; -moz-appearance: textfield; display: inline-block !important; }
.vn-pdp__cart .quantity .qty::-webkit-outer-spin-button, .vn-pdp__cart .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.vn-pdp__cart .vn-qty-btn { width: 2.5rem; height: 2.9rem; border: 0; background: transparent; font-size: 1.25rem; cursor: pointer; color: #1e1e1e; font-family: 'Assistant', sans-serif; }
.vn-pdp__cart .vn-qty-btn:hover { color: #068994; }
.vn-pdp__cart .quantity .qty:focus { outline: none; }
.vn-pdp__cart .single_add_to_cart_button, .vn-sticky-cart .single_add_to_cart_button { background: url('../../../../uploads/viridian-assets/button--textured-teal.png') center / 100% 100% no-repeat !important; background-color: transparent !important; color: #fff !important; font-family: 'Dana Yad', 'Suez One', serif !important; font-weight: 400 !important; font-size: 1.5rem !important; padding: 1.1rem 3rem 1rem !important; min-width: 250px; border: 0 !important; border-radius: 0 !important; line-height: 1.2 !important; transition: transform .3s; }
.vn-pdp__cart .single_add_to_cart_button:hover { background-image: url('../../../../uploads/viridian-assets/button--textured-teal--hover.png') !important; transform: scale(1.04); }
.vn-pdp__cart .single_add_to_cart_button.disabled { opacity: .5; }
.vn-pdp__cart .woocommerce-variation-price, .vn-pdp__cart .woocommerce-variation-availability { display: none; }
.vn-pdp__acc .e-n-accordion-item { border: 0; border-top: 1px solid #d1d1d1; border-radius: 0; }
.vn-pdp__acc .e-n-accordion-item:last-child { border-bottom: 1px solid #d1d1d1; }
.vn-pdp__acc .e-n-accordion-item > .e-con { padding-inline: 0; }
.vn-pdp__acc .e-n-accordion-item-title { padding: 1rem 0; font-family: 'Assistant', sans-serif; font-size: 1.125rem; font-weight: 700; color: #1e1e1e; }
.vn-pdp__acc .e-n-accordion-item-title-icon { color: #1e1e1e; font-size: 14px; }
.vn-pdp__ingredients table, .vn-pdp__ingredients .ingredients-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.vn-pdp__ingredients th, .vn-pdp__ingredients td { padding: .5rem .25rem; border-bottom: 1px solid #e7e7e7; text-align: start; }
.vn-trust .vn-trust__icon img { width: 40px; height: 40px; }
.vn-reasons__list ul { list-style: none; padding: 0; margin: 0; }
.vn-reasons__list li { position: relative; padding-inline-start: 2.25rem; margin-bottom: 1rem; font-size: 1.25rem; line-height: 1.4; }
.vn-reasons__list li::before { content: ''; position: absolute; inset-inline-start: 0; top: .2em; width: 24px; height: 24px; background: url('../../../../uploads/viridian-assets/icon--check.svg') center / contain no-repeat; }
.vn-iconcard__img img { max-width: 60px; }
.vn-igrid__img img { max-width: 90px; }
.vn-standards__icons img { max-width: 420px; }
.vn-kind__img img { border-radius: 12px; }
.vn-pdp__reviews .woocommerce-tabs .tabs { display: none; }
.vn-pdp__reviews .woocommerce-Tabs-panel { padding: 0; }
.vn-pdp__reviews .commentlist { list-style: none; padding: 0; }
.vn-pdp__reviews .comment_container { display: flex; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid #e7e7e7; }
.vn-pdp__reviews .comment_container img.avatar { width: 48px; height: 48px; border-radius: 50%; }
.vn-pdp__reviews .star-rating { color: #068994; }
.vn-pdp__reviews .comment-form input[type=text], .vn-pdp__reviews .comment-form input[type=email], .vn-pdp__reviews .comment-form textarea { width: 100%; padding: .75rem 1rem; border: 2px solid #b0b0b0; font-family: 'Assistant', sans-serif; }
.vn-pdp__reviews .comment-form .submit { background: #1e1e1e; color: #fff; border: 0; padding: .8rem 1.5rem; border-radius: 9999px; cursor: pointer; font-family: 'Assistant', sans-serif; font-weight: 600; }
@media (max-width: 767px) {
  .vn-pdp__grid { flex-direction: column; }
  .vn-pdp__left, .vn-pdp__info { width: 100% !important; }
  .vn-reasons { background-position: top center !important; }
  .vn-reasons__text { background: rgba(255,255,255,.92); border-radius: 12px; padding: 1.25rem; }
  .vn-quote__text, .vn-standards__text { background: rgba(255,255,255,.9); border-radius: 12px; padding: 1.25rem; }
  .vn-quote__text .elementor-heading-title { color: #1e1e1e !important; }
  .vn-standards__icons img { max-width: 100%; }
}

/* Sticky add-to-cart bar (shown once the product form scrolls out of view) */
.vn-sticky-cart { position: fixed; left: 0; right: 0; bottom: 0; z-index: 80; background: #fff; box-shadow: 0 -4px 24px rgba(0,0,0,.12); transform: translateY(110%); transition: transform .3s; padding: .75rem 1.5rem; }
.vn-sticky-cart.is-visible { transform: none; }
.vn-sticky-cart__inner { max-width: 1280px; margin: 0 auto; display: flex; align-items: center; gap: 1.5rem; }
.vn-sticky-cart__img { width: 56px; height: 56px; object-fit: contain; }
.vn-sticky-cart__title { font-weight: 700; font-size: 1rem; flex: 1; }
.vn-sticky-cart__price { color: #068994; font-weight: 600; white-space: nowrap; }
.vn-sticky-cart .single_add_to_cart_button { font-size: 1.25rem !important; padding: .8rem 2.2rem .7rem !important; min-width: 0; }
@media (max-width: 767px) { .vn-sticky-cart__title, .vn-sticky-cart__img { display: none; } .vn-sticky-cart__inner { justify-content: space-between; } }

/* FAQ, forms and content pages */
.vn-faq .e-n-accordion-item { border: 0; border-bottom: 1px solid #d1d1d1; border-radius: 0; }
.vn-faq .e-n-accordion-item-title { padding: 1rem .5rem; font-size: 1.125rem; font-weight: 600; }
.vn-form .elementor-field-group label { font-weight: 600; font-size: .95rem; }
.vn-form .elementor-field { border: 2px solid #b0b0b0; border-radius: 0; padding: .75rem 1rem; font-family: 'Assistant', sans-serif; }
.vn-form .elementor-field:focus { border-color: #068994; outline: none; }
.vn-form .elementor-button { background: #1e1e1e; border-radius: 9999px; padding: .9rem 2.5rem; font-weight: 600; }
.vn-form .elementor-button:hover { background: #068994; }
.vn-imgtext__img img { border-radius: 12px; width: 100%; }
.vn-fullimg img { width: 100%; display: block; }
.vn-post__content h2, .vn-post__content h3 { margin: 1.5em 0 .5em; }
.vn-post__content img { border-radius: 12px; }
.vn-post__hero img { width: 100%; border-radius: 12px; }

/* round2: archive filter buttons keep the source look regardless of the kit button colours */
.vn-filterbar .filter-btn { background: #fff !important; color: #1e1e1e !important; border: 1px solid #b0b0b0 !important; border-radius: 9999px !important; padding: .55rem 1rem !important; font-size: .9rem !important; font-weight: 700 !important; line-height: 1.2; }
.vn-filterbar .filter-btn:hover { border-color: #1e1e1e !important; }
.vn-filterbar .filter-btn--active { background: #111 !important; border-color: #111 !important; color: #fff !important; }
.vn-filterbar .filter-btn__badge { background: #068994; color: #fff; border-radius: 9999px; font-size: .7rem; padding: 0 .4rem; }
.vn-filterbar .filter-dropdown__close { background: transparent !important; color: #454545 !important; padding: 0 !important; }
.vn-filterbar .filter-dropdown__footer button { background: #111 !important; color: #fff !important; border-radius: .25rem !important; padding: .5rem 1rem !important; font-size: .9rem !important; }
.vn-filterbar .filter-dropdown__footer .clear { background: transparent !important; color: #4f4f4f !important; }
/* round2: quantity control */
.vn-pdp__cart form.cart { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.vn-pdp__cart form.cart .quantity { display: inline-flex !important; align-items: center; flex: 0 0 auto; width: auto !important; min-width: 9.5rem; height: 3.2rem; border: 1px solid #1e1e1e; border-radius: 9999px; overflow: hidden; margin: 0; }
.vn-pdp__cart form.cart .quantity input.qty { width: 3.5rem !important; min-width: 3.5rem; height: 100%; border: 0 !important; background: transparent !important; text-align: center; font-family: 'Assistant', sans-serif; font-size: 1rem; padding: 0 !important; margin: 0; box-shadow: none; }
.vn-pdp__cart form.cart .vn-qty-btn { width: 2.75rem; height: 100%; border: 0 !important; background: transparent !important; color: #1e1e1e !important; font-size: 1.35rem; cursor: pointer; padding: 0 !important; line-height: 1; }
.vn-pdp__cart form.cart .vn-qty-btn:hover { color: #068994 !important; }
/* round3: mega menu dropdown pinned to the viewport (Elementor computes its offset for LTR), mobile header */
.vn-mega .e-n-menu-content { position: fixed !important; left: 0 !important; right: 0 !important; width: 100vw !important; max-width: 100vw; top: var(--vn-header-h, 71px) !important; transform: none !important; }
.vn-mega .e-n-menu-toggle { background: transparent !important; color: #1e1e1e !important; border: 0 !important; padding: 0 !important; width: 40px; height: 40px; font-size: 24px; justify-content: center; }
.vn-mega .e-n-menu-toggle .e-n-menu-toggle-icon, .vn-mega .e-n-menu-toggle i, .vn-mega .e-n-menu-toggle svg { color: #1e1e1e; fill: #1e1e1e; font-size: 24px; width: 24px; height: 24px; }
@media (max-width: 767px) {
  .vn-header { padding: 10px 16px !important; }
  .vn-header .vn-header__center { order: -1; flex-grow: 0 !important; width: auto; }
  .vn-header .vn-logo img { width: 140px; }
  .vn-header .vn-header__icons { gap: 12px; }
  .vn-mega .e-n-menu-content { top: var(--vn-header-h, 60px) !important; max-height: calc(100vh - var(--vn-header-h, 60px)); overflow-y: auto; }
  .vn-mega .e-n-menu-content > .e-con { padding: 24px 16px !important; flex-direction: column; }
  .vn-mega-cols { flex-direction: column !important; width: 100% !important; }
  .vn-mega-callout { display: none; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .vn-header .vn-logo img { width: 170px; }
  .vn-search .e-search-form { max-width: 200px; }
}
/* round4: mobile add-to-cart row */
@media (max-width: 767px) {
  .vn-pdp__cart form.cart { gap: .75rem; }
  .vn-pdp__cart form.cart .single_add_to_cart_button { min-width: 0; flex: 1 1 auto; padding: .9rem 1.5rem .8rem !important; font-size: 1.25rem !important; }
  .vn-pdp__cart form.cart .quantity { min-width: 8rem; }
  .vn-iconbar { --flex-direction: row; --flex-wrap: wrap; }
  .vn-iconbar > .e-con-inner { flex-direction: row !important; flex-wrap: wrap !important; }
  .vn-iconbar__item { width: calc(50% - 12px) !important; --width: calc(50% - 12px); justify-content: flex-start !important; padding: 8px 4px !important; }
  .vn-iconbar > .e-con-inner { gap: 8px 24px; }
}

/* round5: measured against viridian-nutrition.com at 1920px */
.vn-pillar img { max-width: 300px; width: 100%; }
.vn-pillar .elementor-heading-title { font-size: 1rem; letter-spacing: .05em; }
.vn-sec--bestsellers .vn-card__price, .vn-sec--featured .vn-card__price { display: none; }
/* carousel arrows: thin chevrons beside the heading, outward facing */
.vn-loop .elementor-swiper-button, .vn-carousel .elementor-swiper-button { position: absolute; top: -72px !important; transform: none !important; width: 32px; height: 32px; border: 0 !important; background: transparent !important; color: #068994 !important; font-size: 22px !important; }
.vn-loop .elementor-swiper-button svg, .vn-carousel .elementor-swiper-button svg { width: 22px; height: 22px; fill: #068994; }
.vn-loop .elementor-swiper-button.swiper-button-disabled, .vn-carousel .elementor-swiper-button.swiper-button-disabled { color: #b8c4c6 !important; opacity: 1; }
.vn-loop .elementor-swiper-button-prev, .vn-carousel .elementor-swiper-button-prev { right: auto !important; left: 44px !important; }
.vn-loop .elementor-swiper-button-next, .vn-carousel .elementor-swiper-button-next { right: auto !important; left: 4px !important; }
.vn-loop--mega .elementor-swiper-button { display: none; }
/* newsletter */
.vn-newsletter__form .elementor-field-type-email input { padding: 1.15rem 1.75rem; padding-inline-end: 4rem; font-size: 1.25rem; font-weight: 300; border: 1px solid #b0b0b0; }
.vn-newsletter__form .elementor-field-type-submit .elementor-button { width: 44px; height: 44px; background: transparent !important; color: #068994 !important; }
.vn-newsletter__form .elementor-field-type-submit .elementor-button svg { width: 14px; height: 24px; fill: #068994; }
.vn-newsletter__form .elementor-field-type-submit .elementor-button:hover { background: transparent !important; color: #00b1bc !important; }
/* footer */
.vn-footer__menu .elementor-nav-menu--main .elementor-item { font-weight: 400; font-size: 1rem; padding: 6px 0; }
.vn-footer__social .elementor-icon-list-text { font-weight: 400; font-size: 1rem; }
.vn-footer__social .elementor-icon-list-item { padding: 3px 0; }
.vn-footer .elementor-heading-title { font-size: .875rem; letter-spacing: .06em; }
.vn-footer__badges { justify-content: flex-start; }
.vn-footer__badges img { max-width: 64px; }
/* header */
.vn-header .vn-logo img { width: 235px; max-width: none; }
.vn-search .e-search-form { max-width: 300px; }
.vn-search .e-search-input-wrapper { border: 0; border-bottom: 1px solid #1e1e1e; border-radius: 0; padding: 0; height: 40px; gap: .5rem; }
.vn-search .e-search-input { font-size: 1rem; font-weight: 300; padding: 0 .25rem; color: #1e1e1e; }
.vn-search .e-search-input::placeholder { color: #9a9a9a; }
.vn-search .e-search-icon svg, .vn-search .e-search-submit svg { fill: #1e1e1e; }
.vn-search .e-search-icon svg { width: 24px; height: 24px; }
.vn-search .e-search-submit svg { width: 12px; height: 20px; }
.vn-search .e-search-submit:hover svg { fill: #068994; }
.vn-header__icons .elementor-icon svg { width: 18px; height: auto; fill: #1e1e1e; }
.vn-header__icons .elementor-icon:hover svg { fill: #068994; }
.vn-cart .elementor-menu-cart__toggle .elementor-button svg { width: 28px; height: auto; fill: #1e1e1e; }
.vn-cart .elementor-menu-cart__toggle .elementor-button-icon { line-height: 1; }
.vn-mega .e-n-menu-title-text { font-weight: 700; }
/* round6: header search form as an underlined field with thin icons */
.vn-header .vn-logo { flex-shrink: 0; }
.vn-search { flex-shrink: 0; }
.vn-search .e-search-form { display: flex; align-items: center; gap: .5rem; width: 300px; max-width: 300px; border-bottom: 1px solid #1e1e1e; padding-bottom: 4px; }
.vn-search .e-search-input-wrapper { border: 0 !important; border-radius: 0; padding: 0; height: 36px; flex: 1 1 auto; min-width: 0; background: transparent; }
.vn-search .e-search-input { flex: 1 1 auto; min-width: 0; width: 100%; }
.vn-search .e-search-submit, .vn-search button.e-search-submit { background: transparent !important; color: #1e1e1e !important; border: 0 !important; padding: 0 !important; width: 24px; min-width: 0; height: 36px; min-height: 0 !important; border-radius: 0; box-shadow: none; }
.vn-search .e-search-submit:hover { color: #068994 !important; }
.vn-search .e-search-icon { display: flex; align-items: center; }
.vn-header__center { flex-grow: 0 !important; gap: 48px !important; }

/* round7: search input clears the magnifier; submit chevron visible */
.vn-search .e-search-input { padding-inline-start: 36px !important; padding-inline-end: 4px !important; }
.vn-search .e-search-icon { position: absolute; inset-inline-start: 4px; top: 50%; transform: translateY(-50%); }
.vn-search .e-search-input-wrapper { position: relative; }
.vn-search .e-search-submit { display: inline-flex !important; align-items: center; justify-content: center; opacity: 1 !important; visibility: visible !important; }
.vn-search .e-search-submit .e-search-submit-icon, .vn-search .e-search-submit svg { display: block; }

/* round8: newsletter submit icon, footer badges in one row */
.vn-newsletter__form .elementor-button-icon, .vn-newsletter__form .elementor-button-icon i { font-size: 22px; color: #068994; line-height: 1; }
.vn-newsletter__form .elementor-button-content-wrapper { display: flex; align-items: center; justify-content: center; }
.vn-footer__badges { gap: 20px !important; flex-wrap: nowrap !important; }
.vn-footer__badges img { max-width: 58px; }

/* round9 */
/* submit chevrons were white on white: Elementor paints the icon with the button text colour */
.vn-search .e-search-submit svg, .vn-search .e-search-submit svg path { fill: #1e1e1e !important; }
.vn-search .e-search-submit:hover svg, .vn-search .e-search-submit:hover svg path { fill: #068994 !important; }
.vn-search .e-search-submit svg { width: 12px !important; height: 20px !important; display: block; }
.vn-newsletter__form .elementor-button-icon svg, .vn-newsletter__form .elementor-button-icon svg path { fill: #068994 !important; }
.vn-newsletter__form .elementor-button-icon svg { width: 16px !important; height: 26px !important; display: block; }
/* product page: size table like the source (no boxes, grey selected row, bold price) */
.vn-pdp__variants .variants--table-row { border: 0 !important; border-radius: 0 !important; background: transparent !important; padding: 12px 16px; margin: 0; }
.vn-pdp__variants .variants--table-row:has(input:checked) { background: #f1f1f1 !important; }
.vn-pdp__variants .variants--table-row__price { font-weight: 700; color: #1e1e1e; }
.vn-pdp__variants .variants--table-row__sku { color: #9a9a9a; }
/* add to basket: wide sans bold, like ADD TO BASKET */
.vn-pdp__cart form.cart .single_add_to_cart_button { font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 1.05rem !important; letter-spacing: .08em; padding: 1.15rem 2rem !important; min-width: 0; flex: 1 1 auto; }
/* accordions: plain lines */
.vn-pdp__acc .e-n-accordion-item, .vn-pdp__acc .e-n-accordion-item-title, .vn-pdp__acc .e-n-accordion-item > .e-con { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.vn-pdp__acc .e-n-accordion-item { border-bottom: 1px solid #d1d1d1 !important; }
.vn-pdp__acc .e-n-accordion-item-title { padding: 18px 0 !important; }
.vn-pdp__acc .e-n-accordion-item > .e-con { padding: 0 0 18px !important; }
/* gallery thumbnails in a row under the main image */
.vn-pdp__gallery .woocommerce-product-gallery { display: flex; flex-direction: column; }
.vn-pdp__gallery .flex-control-thumbs { display: flex !important; flex-direction: row; flex-wrap: wrap; gap: 16px; width: 100% !important; margin: 24px 0 0 !important; padding: 0; justify-content: flex-start; }
.vn-pdp__gallery .flex-control-thumbs li { width: 110px !important; flex: 0 0 auto; margin: 0 !important; float: none !important; }
.vn-pdp__gallery .flex-control-thumbs li img { border: 0; opacity: .6; }
.vn-pdp__gallery .flex-control-thumbs li img.flex-active, .vn-pdp__gallery .flex-control-thumbs li img:hover { opacity: 1; }
.vn-pdp__title .elementor-heading-title { font-size: 2.75rem; font-weight: 700; }
/* breadcrumb chevrons */
.vn-crumbs .woocommerce-breadcrumb { color: #6b7280; font-size: .8125rem; }
/* mobile: logo must not collide with the hamburger; carousel arrows back to the sides */
@media (max-width: 767px) {
  .vn-header .vn-logo img { width: 150px !important; }
  .vn-loop .elementor-swiper-button, .vn-carousel .elementor-swiper-button { top: 40% !important; }
  .vn-loop .elementor-swiper-button-prev, .vn-carousel .elementor-swiper-button-prev { left: auto !important; right: 0 !important; }
  .vn-loop .elementor-swiper-button-next, .vn-carousel .elementor-swiper-button-next { left: 0 !important; }
}
/* round10: the fixed header has no spacer, so the page starts below it */
body.viridian-site { padding-top: var(--vn-header-h, 103px); }
body.viridian-site.admin-bar .vn-header { top: 32px; }

/* round11: side cart drawer */
.elementor-menu-cart__container { z-index: 9999; }
.elementor-menu-cart__main { width: 440px !important; max-width: 100vw; padding: 24px 28px !important; background: #fff; box-shadow: -10px 0 40px rgba(0,0,0,.15); font-family: 'Assistant', sans-serif; }
.elementor-menu-cart__close-button { width: 32px; height: 32px; color: #1e1e1e; }
.elementor-menu-cart__products { padding: 8px 0; }
.elementor-menu-cart__product { display: grid !important; grid-template-columns: 72px 1fr auto; gap: 8px 16px; align-items: center; padding: 16px 0 !important; border-bottom: 1px solid #e7e7e7 !important; }
.elementor-menu-cart__product-image { width: 72px; }
.elementor-menu-cart__product-image img { width: 72px; height: 72px; object-fit: contain; border-radius: 8px; border: 1px solid #e7e7e7; }
.elementor-menu-cart__product-name { font-size: 15px; font-weight: 700; color: #1e1e1e; }
.elementor-menu-cart__product-name a { color: inherit; }
.elementor-menu-cart__product-price { font-size: 14px; color: #1e1e1e; }
.elementor-menu-cart__product-price .quantity, .elementor-menu-cart__product .quantity { border: 0 !important; padding: 0 !important; margin: 0; display: inline !important; background: transparent !important; width: auto !important; min-width: 0 !important; height: auto !important; }
.elementor-menu-cart__product-price .quantity .amount { font-weight: 700; }
.elementor-menu-cart__product-remove { width: 24px; height: 24px; color: #9a9a9a; border: 1px solid #d1d1d1; border-radius: 50%; }
.elementor-menu-cart__subtotal { padding: 20px 0; font-size: 18px; font-weight: 700; border-bottom: 1px solid #e7e7e7; display: flex; justify-content: space-between; }
.elementor-menu-cart__footer-buttons { display: flex; flex-direction: column; gap: 12px; padding-top: 20px; }
.elementor-menu-cart__footer-buttons .elementor-button { width: 100% !important; border-radius: 9999px !important; padding: 16px 24px !important; font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 16px !important; letter-spacing: .04em; text-align: center; }
.elementor-menu-cart__footer-buttons .elementor-button--checkout { background: url('../../../../uploads/viridian-assets/button--textured-teal.png') center / 100% 100% no-repeat !important; background-color: transparent !important; color: #fff !important; border-radius: 0 !important; }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart { background: transparent !important; color: #1e1e1e !important; border: 2px solid #1e1e1e !important; }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover { background: #1e1e1e !important; color: #fff !important; }
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message { padding: 40px 0; text-align: center; font-size: 16px; }

/* round11: WooCommerce cart / checkout / account widgets */
.vn-wc, .vn-wc .woocommerce { font-family: 'Assistant', sans-serif; color: #1e1e1e; }
.vn-wc-sec .vn-wc__title .elementor-heading-title { margin-bottom: 8px; }
.vn-wc h3, .vn-wc .e-checkout__container h3, .vn-wc .cart-collaterals h2 { font-family: 'Assistant', sans-serif; font-size: 22px; font-weight: 700; color: #1e1e1e; }
.vn-wc table.shop_table { border: 0 !important; border-radius: 0; font-size: 15px; }
.vn-wc table.shop_table th, .vn-wc table.shop_table td { border: 0 !important; border-bottom: 1px solid #e7e7e7 !important; padding: 16px 8px !important; vertical-align: middle; }
.vn-wc table.shop_table thead th { font-weight: 700; color: #6b7280; font-size: 13px; letter-spacing: .04em; }
.vn-wc .cart table.cart td.product-thumbnail img { width: 80px !important; height: 80px; object-fit: contain; border: 1px solid #e7e7e7; border-radius: 8px; }
.vn-wc .cart table.cart td.product-name a { color: #1e1e1e; font-weight: 700; text-decoration: none; }
.vn-wc .cart table.cart td.product-remove a.remove { color: #9a9a9a !important; border: 1px solid #d1d1d1; border-radius: 50%; width: 24px; height: 24px; line-height: 22px; font-size: 16px; }
.vn-wc .cart table.cart td.product-remove a.remove:hover { background: #1e1e1e !important; color: #fff !important; }
.vn-wc .quantity { display: inline-flex !important; align-items: center; border: 1px solid #1e1e1e; border-radius: 9999px; overflow: hidden; height: 44px; width: auto !important; }
.vn-wc .quantity .qty { width: 3.5rem !important; border: 0 !important; text-align: center; background: transparent !important; font-family: 'Assistant', sans-serif; padding: 0 !important; height: 100%; box-shadow: none !important; }
.vn-wc .quantity .e-cart__qty-btn, .vn-wc .quantity .vn-qty-btn { width: 2.5rem; height: 100%; border: 0 !important; background: transparent !important; color: #1e1e1e !important; cursor: pointer; font-size: 1.2rem; padding: 0 !important; }
.vn-wc .coupon, .vn-wc .e-cart-section, .vn-wc .cart-collaterals, .vn-wc .e-checkout__container .e-checkout__order_review, .vn-wc .e-checkout__container .e-checkout__payment { background: #fff; }
.vn-wc .e-cart__container .e-cart-section, .vn-wc .e-checkout__container .e-checkout__order_review, .vn-wc .e-checkout__container .e-checkout__payment, .vn-wc .e-checkout__container .e-checkout__container-section { border: 1px solid #e7e7e7 !important; border-radius: 12px !important; padding: 24px !important; box-shadow: none !important; }
.vn-wc input.input-text, .vn-wc .input-text, .vn-wc select, .vn-wc textarea, .vn-wc .select2-container .select2-selection--single { border: 1px solid #b0b0b0 !important; border-radius: 6px !important; padding: 12px 14px !important; height: auto !important; min-height: 46px; font-family: 'Assistant', sans-serif !important; font-size: 15px; background: #fff !important; box-shadow: none !important; }
.vn-wc input.input-text:focus, .vn-wc select:focus, .vn-wc textarea:focus { border-color: #068994 !important; outline: none; }
.vn-wc .select2-container .select2-selection--single .select2-selection__rendered { line-height: 22px; padding: 0; }
.vn-wc .select2-container .select2-selection--single .select2-selection__arrow { height: 44px; }
.vn-wc form .form-row label { font-weight: 600; font-size: 14px; margin-bottom: 4px; }
.vn-wc .checkout_coupon .button, .vn-wc .coupon .button, .vn-wc .e-apply-coupon, .vn-wc button.button { background: #1e1e1e !important; color: #fff !important; border: 0 !important; border-radius: 9999px !important; padding: 12px 24px !important; font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; cursor: pointer; }
.vn-wc .coupon input.input-text { border-radius: 9999px !important; }
.vn-wc .checkout-button, .vn-wc #place_order, .vn-wc .woocommerce-form-login .button, .vn-wc .woocommerce-Button { background: url('../../../../uploads/viridian-assets/button--textured-teal.png') center / 100% 100% no-repeat !important; background-color: transparent !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; padding: 18px 32px !important; font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; width: 100%; text-align: center; }
.vn-wc .checkout-button:hover, .vn-wc #place_order:hover { transform: scale(1.02); }
.vn-wc .shop_table .order-total .amount, .vn-wc .cart-subtotal .amount { font-weight: 700; }
.vn-wc .woocommerce-shipping-methods label { font-weight: 400; }
.vn-wc .woocommerce-checkout-review-order-table td.product-name { font-weight: 600; }
.vn-wc .payment_box { background: #f6f6f6 !important; border-radius: 8px; }
.vn-wc .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; border: 1px solid #e7e7e7; border-radius: 12px; overflow: hidden; }
.vn-wc .woocommerce-MyAccount-navigation li { border-bottom: 1px solid #e7e7e7; }
.vn-wc .woocommerce-MyAccount-navigation li a { display: block; padding: 14px 18px; color: #1e1e1e; text-decoration: none; font-weight: 600; }
.vn-wc .woocommerce-MyAccount-navigation li.is-active a, .vn-wc .woocommerce-MyAccount-navigation li a:hover { background: #068994; color: #fff; }
.vn-wc .woocommerce-MyAccount-content { font-size: 15px; line-height: 1.7; }
.vn-wc .woocommerce-message, .vn-wc .woocommerce-info, .vn-wc .woocommerce-error { border-radius: 8px; background: #f6f5f2; border-top: 3px solid #068994; font-family: 'Assistant', sans-serif; }
.vn-wc .return-to-shop .button { background: #1e1e1e !important; color: #fff !important; border-radius: 9999px !important; padding: 14px 28px !important; }
@media (max-width: 767px) {
  .vn-header .vn-logo img { width: 120px !important; }
  .elementor-menu-cart__main { width: 100vw !important; }
}
/* round12: drawer above the header, account headings, no permanent underline on menu items */
.elementor-menu-cart__container { position: fixed !important; inset: 0 !important; z-index: 100000 !important; }
.elementor-menu-cart__main { z-index: 100001; top: 0 !important; bottom: 0 !important; height: 100vh !important; }
.elementor-menu-cart__main::before { content: '\05D4\05E2\05D2\05DC\05D4\20\05E9\05DC\05DB\05DD'; display: block; font-size: 22px; font-weight: 700; padding: 4px 0 16px; border-bottom: 1px solid #e7e7e7; margin-bottom: 8px; }
.vn-mega .e-n-menu-title.e-current .e-n-menu-title-text { text-decoration: none; }
.vn-mega .e-n-menu-title:hover .e-n-menu-title-text { text-decoration: underline; }
.vn-account h2, .vn-wc .woocommerce-MyAccount-content h2, .vn-wc .woocommerce-MyAccount-content h3 { font-size: 24px; font-weight: 700; font-family: 'Assistant', sans-serif; margin: 8px 0 16px; }
.vn-account .woocommerce-form-login .button, .vn-account .woocommerce-form-register .button { width: auto; min-width: 240px; padding: 16px 40px !important; }
/* round14 */
.vn-account h2, .vn-wc .woocommerce-MyAccount-content h2, .vn-wc .woocommerce-MyAccount-content h3, .vn-wc h2 { font-size: 24px !important; font-weight: 700 !important; font-family: 'Assistant', sans-serif !important; margin: 8px 0 16px !important; }

/* round15: about page timeline */
.vn-timeline .e-n-accordion-item { border: 0 !important; border-bottom: 1px solid #d1d1d1 !important; border-radius: 0 !important; }
.vn-timeline .e-n-accordion-item-title { padding: 16px 8px !important; font-size: 17px; font-weight: 700; }
.vn-timeline .e-n-accordion-item[open] > .e-n-accordion-item-title { background: #e5e5e5 !important; }
.vn-timeline .e-n-accordion-item > .e-con { padding: 8px 8px 20px !important; }

/* round16: top band */
.vn-search .e-search-form { border-bottom: 1px solid #c9c9c9; padding-bottom: 2px; }
.vn-search .e-search-input::placeholder { color: #8a8a8a; }
/* hero: thin light-teal chevrons at the sides, five small dots */
.vn-hero .elementor-swiper-button { width: 40px !important; height: 60px !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: #8fcdd3 !important; font-size: 40px !important; }
.vn-hero .elementor-swiper-button:hover { color: #068994 !important; }
.vn-hero .elementor-swiper-button svg { width: 24px; height: 40px; fill: #8fcdd3; }
.vn-hero .elementor-swiper-button-prev { left: 18px !important; right: auto !important; }
.vn-hero .elementor-swiper-button-next { right: 18px !important; left: auto !important; }
.vn-hero .swiper-pagination { display: flex !important; justify-content: center; gap: 10px; bottom: 14px !important; left: 0; right: 0; width: 100%; }
.vn-hero .swiper-pagination-bullet { width: 8px !important; height: 8px !important; margin: 0 !important; background: #068994 !important; opacity: .35 !important; border-radius: 50%; }
.vn-hero .swiper-pagination-bullet-active { opacity: 1 !important; }
/* icon bar: dividers between items, bold text, tighter bar */
.vn-iconbar { padding-top: 0 !important; padding-bottom: 0 !important; }
.vn-iconbar__item { border-inline-start: 1px solid rgba(255,255,255,.35); padding: 14px 16px !important; }
.vn-iconbar__item:first-child { border-inline-start: 0; }
.vn-iconbar__item .elementor-heading-title { font-weight: 700; font-size: 1rem; line-height: 1.3; }
.vn-iconbar .vn-iconbar__icon img { width: 30px; height: 30px; }
@media (max-width: 767px) {
  .vn-iconbar__item { border: 0; padding: 8px 4px !important; }
}
/* round17: hero arrows drawn as thin chevrons (the slides widget has no icon control) */
.vn-hero .elementor-swiper-button i, .vn-hero .elementor-swiper-button svg { display: none !important; }
.vn-hero .elementor-swiper-button { display: flex !important; align-items: center; justify-content: center; opacity: 1 !important; }
.vn-hero .elementor-swiper-button::before { content: ''; display: block; width: 22px; height: 22px; border-right: 2px solid #8fcdd3; border-bottom: 2px solid #8fcdd3; }
.vn-hero .elementor-swiper-button:hover::before { border-color: #068994; }
.vn-hero .elementor-swiper-button-next::before { transform: rotate(-45deg); margin-left: -8px; }
.vn-hero .elementor-swiper-button-prev::before { transform: rotate(135deg); margin-right: -8px; }

/* round18: mobile parity */
.vn-mega .e-n-menu-item:nth-child(4) { display: none; }
.vn-search-mobile .elementor-search-form__toggle { background: transparent !important; color: #1e1e1e !important; border: 0 !important; width: 32px; height: 32px; }
.vn-search-mobile .elementor-search-form__toggle i, .vn-search-mobile .elementor-search-form__toggle svg { font-size: 24px; width: 24px; height: 24px; fill: #1e1e1e; }
.vn-search-mobile .elementor-search-form__container { background: rgba(0,0,0,.92); }
.vn-search-mobile .elementor-search-form__input { font-family: 'Assistant', sans-serif; font-size: 28px; color: #fff; border-bottom: 1px solid #fff; }
@media (max-width: 767px) {
  .vn-header { padding: 14px 16px !important; }
  .vn-header .vn-header__icons { gap: 18px !important; }
  .vn-mega .e-n-menu-item:nth-child(4) { display: flex; }
  /* full-screen dark menu like the live site */
  .vn-mega .e-n-menu-wrapper { position: fixed !important; top: var(--vn-header-h, 63px) !important; left: 0 !important; right: 0 !important; bottom: 0 !important; width: 100vw !important; height: auto !important; background: #000; padding: 20px 24px 40px !important; overflow-y: auto; z-index: 9990; }
  .vn-mega .e-n-menu-heading { flex-direction: column !important; align-items: stretch !important; gap: 0 !important; width: 100%; }
  .vn-mega .e-n-menu-heading::before { content: '\05EA\05E4\05E8\05D9\05D8'; display: block; text-align: center; color: #fff; font-size: 26px; font-weight: 700; padding: 8px 0 20px; border-bottom: 1px solid #333; margin-bottom: 12px; }
  .vn-mega .e-n-menu-item { border-bottom: 1px solid #333; padding: 0 !important; }
  .vn-mega .e-n-menu-title { padding: 18px 0 !important; justify-content: space-between; width: 100%; }
  .vn-mega .e-n-menu-title-text { color: #fff !important; font-size: 26px !important; font-weight: 400 !important; text-decoration: none !important; }
  .vn-mega .e-n-menu-dropdown-icon { width: 44px; height: 44px; border-radius: 50%; background: #fff !important; color: #000 !important; display: flex; align-items: center; justify-content: center; }
  .vn-mega .e-n-menu-dropdown-icon i, .vn-mega .e-n-menu-dropdown-icon svg { font-size: 18px; color: #000; fill: #000; }
  .vn-mega .e-n-menu-content { position: static !important; width: 100% !important; left: auto !important; right: auto !important; top: auto !important; max-height: none; background: #000; }
  .vn-mega .e-n-menu-content > .e-con { background: #000 !important; padding: 8px 0 24px !important; }
  .vn-mega .e-n-menu-content .elementor-heading-title, .vn-mega .e-n-menu-content .elementor-heading-title a { color: #fff !important; }
  .vn-mega .e-n-menu-content .elementor-nav-menu--main .elementor-item, .vn-mega .e-n-menu-content .elementor-icon-list-text { color: #ddd !important; font-size: 17px; }
  .vn-mega .e-n-menu-content .vn-loop--mega, .vn-mega .e-n-menu-content .vn-btn { display: none; }
  .vn-mega-cols { gap: 24px !important; }
  /* filters as a bottom sheet */
  .vn-filterbar .filter-dropdown { position: fixed !important; left: 8px !important; right: 8px !important; top: auto !important; bottom: 8px !important; min-width: 0 !important; max-width: none !important; max-height: 70vh; z-index: 9995 !important; }
  .vn-filterbar .filter-options { max-height: 45vh; }
  .vn-filters-bar { gap: 10px; }
  /* footer: breathing room, centred badges, room for the WhatsApp button */
  .vn-footer { padding: 40px 20px 110px !important; }
  .vn-footer__cols { gap: 28px !important; }
  .vn-footer__badges { flex-wrap: wrap !important; justify-content: center !important; gap: 18px 22px !important; padding-top: 8px; }
  .vn-footer__badges img { max-width: 52px; }
  .vn-footer .e-con.e-flex > .e-con-inner { gap: 32px; }
  .vn-footer__legal, .vn-footer__legal .elementor-widget-container { text-align: center !important; }
  .vn-footer .vn-footer__legal p, .vn-footer .vn-footer__legal + .elementor-widget p { text-align: center; }
  /* no carousel arrows on mobile, swipe instead */
  .vn-loop .elementor-swiper-button, .vn-carousel .elementor-swiper-button { display: none !important; }
}
/* round19 */
/* touch targets of at least 44px in the header */
.vn-header__icons .elementor-icon, .vn-search-mobile .elementor-search-form__toggle, .vn-cart .elementor-menu-cart__toggle .elementor-button { min-width: 44px !important; min-height: 44px !important; display: inline-flex !important; align-items: center; justify-content: center; }
.vn-mega .e-n-menu-title { min-height: 44px; padding: 0 12px !important; }
/* WhatsApp button styled like the source's "Need help?" pill, still opening WhatsApp */
.viridian-whatsapp-float { background: #1e1e1e !important; border-radius: 9999px !important; width: auto !important; height: 56px !important; padding: 0 22px 0 18px !important; display: flex !important; align-items: center; gap: 10px; color: #fff !important; font-family: 'Assistant', sans-serif; font-size: 18px; font-weight: 700; box-shadow: 0 6px 20px rgba(0,0,0,.25); z-index: 9000 !important; left: 24px !important; right: auto !important; bottom: 24px !important; text-decoration: none; }
.viridian-whatsapp-float::after { content: '\05E6\05E8\05D9\05DB\05D9\05DD\20\05E2\05D6\05E8\05D4?'; }
.viridian-whatsapp-float .viridian-whatsapp__icon { width: 24px; height: 24px; }
/* mobile menu: dark full screen, white rows text, round chevron buttons */
@media (max-width: 767px) {
  .vn-mega .e-n-menu-wrapper { background: #000 !important; }
  .vn-mega .e-n-menu-title { background: transparent !important; padding: 18px 0 !important; min-height: 0; }
  .vn-mega .e-n-menu-title-text, .vn-mega .e-n-menu-title-container a { color: #fff !important; }
  .vn-mega .e-n-menu-dropdown-icon { width: 44px !important; min-width: 44px; height: 44px !important; border-radius: 50% !important; background: #fff !important; }
  .vn-mega .e-n-menu-dropdown-icon i, .vn-mega .e-n-menu-dropdown-icon svg { color: #000 !important; fill: #000 !important; font-size: 16px; width: 16px; height: 16px; }
  .viridian-whatsapp-float { height: 48px !important; font-size: 16px; left: 16px !important; bottom: 16px !important; }
}
/* blog archive: first post featured, like the source */
@media (min-width: 1025px) {
  .vn-blog-loop .e-loop-item:first-child { grid-column: 1 / -1; }
  .vn-blog-loop .e-loop-item:first-child .vn-news-card { display: grid; grid-template-columns: 1.15fr 1fr; gap: 40px; align-items: center; padding: 8px 0 24px; border-bottom: 1px solid #e7e7e7; margin-bottom: 8px; }
  .vn-blog-loop .e-loop-item:first-child .vn-news-card__image { grid-row: 1 / span 2; }
  .vn-blog-loop .e-loop-item:first-child .vn-news-card__image img { aspect-ratio: 16 / 10; }
  .vn-blog-loop .e-loop-item:first-child .vn-news-card__title .elementor-heading-title { font-size: 2.25rem; line-height: 1.15; }
  .vn-blog-loop .e-loop-item:first-child .vn-news-card__date { align-self: end; }
}
/* article template: wider hero, no rounding */
.vn-post__hero img, .vn-post__content img { border-radius: 0 !important; }
.vn-post .vn-post__hero { width: 100%; }
/* FAQ: more air */
.vn-faq .e-n-accordion-item-title { padding: 22px 8px !important; font-size: 1.2rem; }
.vn-faq .e-n-accordion-item > .e-con { padding: 0 8px 22px !important; }
.vn-faq-group { padding-top: 24px !important; }
/* round20 */
@media (max-width: 767px) {
  .vn-mega .e-n-menu-toggle { min-width: 44px !important; min-height: 44px !important; display: inline-flex !important; align-items: center; justify-content: center; }
  .vn-mega .e-n-menu-dropdown-icon::before { content: ''; display: block; width: 10px; height: 10px; border-left: 2px solid #000; border-bottom: 2px solid #000; transform: rotate(45deg); margin-right: -3px; }
  .vn-mega .e-n-menu-item[aria-expanded=true] .e-n-menu-dropdown-icon::before, .vn-mega .e-n-menu-title[aria-expanded=true] .e-n-menu-dropdown-icon::before { transform: rotate(-135deg); margin: 3px 0 0 0; }
}
.vn-form .elementor-button, .vn-form button.elementor-button { background: #1e1e1e !important; color: #fff !important; border-radius: 9999px !important; padding: .9rem 2.5rem !important; font-weight: 700 !important; }
.vn-form .elementor-button:hover { background: #068994 !important; }
.vn-faq .e-n-accordion-item, .vn-faq .e-n-accordion-item-title, .vn-faq .e-n-accordion-item > .e-con { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.vn-faq .e-n-accordion-item { border-bottom: 1px solid #d1d1d1 !important; }

/* round22: footer bottom bar on mobile */
@media (max-width: 767px) {
  .vn-footer__bottom .elementor-widget-text-editor, .vn-footer__bottom p { text-align: center !important; }
  .vn-footer__legal p { white-space: nowrap; }
  .vn-footer__bottom { padding-top: 20px !important; }
}

/* round21: search like the source */
.vn-search-open .elementor-icon svg { width: 22px; height: 22px; fill: #1e1e1e; }
.vn-search-panel { display: none !important; position: fixed !important; inset: 0 !important; z-index: 100002 !important; width: 100vw !important; height: 100vh !important; overflow-y: auto; }
.vn-search-panel.is-open { display: flex !important; }
body.vn-search-open-body { overflow: hidden; }
.vn-search-panel__head { width: 100%; }
.vn-search-close .elementor-icon { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.vn-search--panel .e-search-form { width: 100% !important; max-width: none !important; border-bottom: 1px solid #1e1e1e; padding-bottom: 8px; }
.vn-search--panel .e-search-input { font-size: 22px; }
.vn-search--panel .e-search-icon svg { width: 26px; height: 26px; }
.vn-search--panel .e-search-results-container, .vn-search--panel .e-search-results { position: static !important; width: 100% !important; box-shadow: none !important; border: 0 !important; padding: 24px 0 0 !important; background: transparent !important; }
.vn-search--panel .e-search-results-container::before { content: '\05EA\05D5\05E6\05D0\05D5\05EA\20\05D7\05D9\05E4\05D5\05E9'; display: block; font-size: 15px; font-weight: 700; letter-spacing: .12em; color: #6b7280; margin-bottom: 20px; }
.vn-search--panel .e-search-results-list { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
.vn-search--panel .vn-card__title .elementor-heading-title { font-size: 1.1rem; }
/* desktop live results under the header field */
.vn-search .e-search-results-container { z-index: 99999; }
.vn-search:not(.vn-search--panel) .e-search-results-container { width: 760px !important; max-width: calc(100vw - 32px); inset-inline-start: auto; inset-inline-end: 0; background: #fff; border: 1px solid #e7e7e7; box-shadow: 0 24px 40px -20px rgba(0,0,0,.25); padding: 24px !important; }
.vn-search:not(.vn-search--panel) .e-search-results-list { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 16px; }
.vn-search .e-search-results .vn-card__image img { max-width: 160px; }
.vn-search .e-search-nothing-found-message { padding: 16px 0; font-family: 'Assistant', sans-serif; }
/* round23: desktop results dropdown anchored to the field */
.vn-search:not(.vn-search--panel) .e-search-results-container { right: 0 !important; left: auto !important; inset-inline: auto !important; top: calc(100% + 10px) !important; }

/* round24 */
.vn-search--panel .e-search-results-container::before { white-space: nowrap; }
.vn-search--panel .e-search-results-container { width: 100% !important; }

/* round25: mobile product bands */
body.vn-sticky-visible .viridian-whatsapp-float { bottom: 96px !important; }
@media (max-width: 767px) {
  /* reasons: illustration on top at its own aspect (1440x900), list below on the paper background */
  .vn-reasons { background-size: 100% auto !important; background-position: top center !important; background-repeat: no-repeat !important; background-color: #f4f1eb !important; padding: calc(100vw * 0.625 + 16px) 16px 40px !important; min-height: 0 !important; }
  .vn-reasons__text { background: transparent !important; padding: 0 !important; }
  /* nutritionist quote: photo (393x504) on top, white text on the dark area below */
  .vn-quote { background-size: 100% auto !important; background-position: top center !important; background-repeat: no-repeat !important; background-color: #141414 !important; padding: calc(100vw * 1.283 - 40px) 16px 40px !important; min-height: 0 !important; }
  .vn-quote__text { background: transparent !important; padding: 0 !important; }
  .vn-quote__text .elementor-heading-title { color: #fff !important; font-size: 1.6rem !important; }
  .vn-quote__text strong { color: #7cd0d6 !important; }
  /* standards: paper texture (393x579) on top, text below */
  .vn-standards { background-size: 100% auto !important; background-position: top center !important; background-repeat: no-repeat !important; background-color: #ffffff !important; padding: calc(100vw * 1.0) 16px 40px !important; min-height: 0 !important; }
  .vn-standards__text { background: transparent !important; padding: 0 !important; }
  .vn-standards__text .elementor-heading-title { font-size: 1.7rem !important; }
  .vn-sticky-cart { padding: .6rem 1rem; }
  .vn-sticky-cart .single_add_to_cart_button { font-size: 1rem !important; padding: .8rem 1.6rem !important; }
}
/* round26 */
/* search panel: bestsellers until the visitor types */
.vn-search-panel.has-query .vn-search-default { display: none !important; }
.vn-search-default { width: 100%; }
.vn-search-default .vn-card__title .elementor-heading-title { font-size: 1.1rem; }
/* empty cart drawer */
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message { text-align: center; font-size: 26px; font-weight: 700; padding: 120px 0 24px !important; color: #1e1e1e; }
.elementor-menu-cart__main:has(.woocommerce-mini-cart__empty-message) .elementor-menu-cart__footer-buttons, .elementor-menu-cart__main:has(.woocommerce-mini-cart__empty-message) .elementor-menu-cart__subtotal { display: none !important; }
.vn-empty-cart { text-align: center; padding: 0 16px 40px; }
.vn-empty-cart__shop { display: inline-block; background: #1e1e1e; color: #fff !important; border-radius: 9999px; padding: 16px 32px; font-size: 18px; font-weight: 600; text-decoration: none; margin-bottom: 40px; }
.vn-empty-cart__account { font-size: 24px; font-weight: 700; margin-bottom: 12px; }
.vn-empty-cart__login { font-size: 18px; color: #1e1e1e; }
.vn-empty-cart__login a { color: #1e1e1e; text-decoration: underline; }
/* mobile submenu: full-screen dark panel with a back bar */
.vn-mega-back { display: none; }
@media (max-width: 767px) {
  .vn-mega .e-n-menu-content { position: fixed !important; top: var(--vn-header-h, 63px) !important; left: 0 !important; right: 0 !important; bottom: 0 !important; width: 100vw !important; max-width: none !important; height: auto !important; max-height: none !important; overflow-y: auto; background: #000 !important; z-index: 9995 !important; padding: 0 !important; }
  .vn-mega-back { display: flex; align-items: center; justify-content: space-between; padding: 22px 20px; border-bottom: 1px solid #333; position: sticky; top: 0; background: #000; z-index: 2; }
  .vn-mega-back__btn { display: inline-flex; align-items: center; gap: 12px; background: transparent; border: 0; color: #fff; font-family: 'Assistant', sans-serif; font-size: 18px; padding: 0; }
  .vn-mega-back__chev { width: 36px; height: 36px; border-radius: 50%; background: #2a2a2a; position: relative; display: inline-block; }
  .vn-mega-back__chev::before { content: ''; position: absolute; top: 13px; left: 15px; width: 9px; height: 9px; border-right: 2px solid #fff; border-top: 2px solid #fff; transform: rotate(45deg); }
  .vn-mega-back__title { color: #fff; font-size: 24px; font-weight: 700; }
  .vn-mega-back__close { width: 32px; height: 32px; background: transparent; border: 0; position: relative; }
  .vn-mega-back__close::before, .vn-mega-back__close::after { content: ''; position: absolute; top: 15px; left: 4px; width: 24px; height: 2px; background: #fff; transform: rotate(45deg); }
  .vn-mega-back__close::after { transform: rotate(-45deg); }
  .vn-mega .e-n-menu-content > .e-con { background: #000 !important; padding: 24px 20px 40px !important; flex-direction: column; }
  .vn-mega .e-n-menu-content .vn-mega-cols { flex-direction: column !important; width: 100% !important; gap: 8px !important; }
  .vn-mega .e-n-menu-content .vn-mega-col { width: 100% !important; gap: 0 !important; }
  .vn-mega .e-n-menu-content .vn-mega-col__title { margin: 28px 0 8px; }
  .vn-mega .e-n-menu-content .vn-mega-col__title .elementor-heading-title { color: #9a9a9a !important; font-size: 13px; letter-spacing: .12em; }
  .vn-mega .e-n-menu-content .elementor-nav-menu--main .elementor-item, .vn-mega .e-n-menu-content .elementor-icon-list-item { display: block; color: #fff !important; font-size: 22px !important; font-weight: 400; padding: 16px 0 !important; border-bottom: 1px solid #333; }
  .vn-mega .e-n-menu-content .elementor-icon-list-text { color: #fff !important; font-size: 22px !important; }
  .vn-mega .e-n-menu-content .elementor-nav-menu--main .elementor-item { padding: 16px 0 !important; }
  .vn-mega .e-n-menu-content .elementor-nav-menu--main li { border-bottom: 1px solid #333; }
  .vn-mega .e-n-menu-content .elementor-nav-menu--main li .elementor-item { border-bottom: 0; }
  .vn-mega .e-n-menu-content .vn-mega-callout, .vn-mega .e-n-menu-content .vn-loop--mega, .vn-mega .e-n-menu-content .vn-btn { display: none !important; }
}
/* round27 */
.vn-search-panel:not(.has-query) .e-search-results-container { display: none !important; }
.vn-search--panel .e-search-results, .vn-search--panel .e-search-results-list { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; width: 100% !important; }
.vn-search--panel .e-search-results > * { min-width: 0; }
@media (max-width: 767px) {
  /* header: hamburger | centred logo | icons */
  .vn-header { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; }
  .vn-header .vn-header__center { order: 0; grid-column: 1; justify-self: start; width: auto !important; }
  .vn-header .vn-logo { grid-column: 2; justify-self: center; }
  .vn-header .vn-header__icons { grid-column: 3; justify-self: end; width: auto !important; }
  .vn-header .vn-search-panel { grid-column: 1 / -1; }
  /* only the open submenu panel is shown; the others stay hidden */
  .vn-mega .e-n-menu-content:not(.e-active) { display: none !important; }
  .vn-mega .e-n-menu-content.e-active > .e-con { display: flex !important; }
  /* back bar buttons must not inherit the kit's button colours */
  .vn-mega-back__btn, .vn-mega-back__close { background: transparent !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; min-height: 0 !important; box-shadow: none !important; }
  .vn-mega-back__chev { background: #2a2a2a !important; }
}
/* round28 */
@media (max-width: 767px) {
  .vn-header .vn-header__center, .vn-header .vn-logo, .vn-header .vn-header__icons { grid-row: 1; }
  /* footer columns as accordions */
  .vn-footer__cols { gap: 0 !important; border-top: 1px solid #3a3a3a; }
  .vn-footer__acc { border-bottom: 1px solid #3a3a3a; padding: 18px 0 !important; gap: 0 !important; }
  .vn-footer__acc .vn-footer__title { cursor: pointer; position: relative; }
  .vn-footer__acc .vn-footer__title .elementor-heading-title { font-size: 22px !important; letter-spacing: 0 !important; color: #068994 !important; padding-inline-end: 40px; }
  .vn-footer__acc:not(.is-open) .vn-footer__title .elementor-heading-title { color: #fff !important; }
  .vn-footer__acc .vn-footer__title::after { content: ''; position: absolute; top: 4px; left: 8px; width: 12px; height: 12px; border-left: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(-45deg); transition: transform .2s; }
  .vn-footer__acc.is-open .vn-footer__title::after { transform: rotate(135deg); top: 10px; border-color: #068994; }
  .vn-footer__acc .vn-footer__menu, .vn-footer__acc .vn-footer__social { display: none; padding-top: 12px; }
  .vn-footer__acc.is-open .vn-footer__menu, .vn-footer__acc.is-open .vn-footer__social { display: block; }
  .vn-footer__acc .elementor-nav-menu--main .elementor-item { font-size: 20px !important; padding: 8px 0 !important; }
  .vn-footer__acc .elementor-icon-list-text { font-size: 20px !important; }
  .vn-footer__acc .elementor-icon-list-item { padding: 6px 0; }
  .vn-footer__badges { padding-top: 40px !important; }
}
/* round29: mobile product bands - the boxed inner container was centring content inside the desktop min-height */
@media (max-width: 767px) {
  .vn-reasons > .e-con-inner, .vn-quote > .e-con-inner, .vn-standards > .e-con-inner { min-height: 0 !important; height: auto !important; justify-content: flex-start !important; align-items: stretch !important; padding: 0 !important; gap: 0 !important; }
  .vn-reasons, .vn-quote, .vn-standards { height: auto !important; justify-content: flex-start !important; align-items: stretch !important; }
  .vn-reasons__art { display: none !important; }
  .vn-reasons { padding: calc(100vw * 0.625 + 12px) 16px 32px !important; }
  .vn-quote { padding: calc(100vw * 1.283 - 24px) 16px 36px !important; }
  .vn-standards { padding: calc(100vw * 0.82) 16px 32px !important; }
  .vn-standards__text .vn-standards__icons img { max-width: 100%; }
}

/* round30: filter bottom sheet */
@media (max-width: 767px) {
  body.vn-filter-open .viridian-whatsapp-float { display: none !important; }
  .vn-filterbar .filter-dropdown { display: flex !important; flex-direction: column; max-height: 78vh !important; bottom: 0 !important; left: 0 !important; right: 0 !important; border-radius: 16px 16px 0 0 !important; }
  .vn-filterbar .filter-dropdown:not(.is-open) { display: none !important; }
  .vn-filterbar .filter-dropdown__content { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
  .vn-filterbar .filter-options { flex: 1 1 auto; min-height: 0; max-height: none !important; overflow-y: auto; }
  .vn-filterbar .filter-dropdown__footer { flex: 0 0 auto; position: static; padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid #e7e7e7; background: #fff; }
  .vn-filterbar .filter-dropdown__footer button { padding: 12px 24px !important; font-size: 16px !important; }
}
/* round31 */
@media (max-width: 767px) { body:has(.filter-dropdown.is-open) .viridian-whatsapp-float, body:has(.vn-search-panel.is-open) .viridian-whatsapp-float, body:has(.elementor-menu-cart__container[aria-hidden=false]) .viridian-whatsapp-float { display: none !important; } }

/* round32: Yoast breadcrumbs */
.vn-crumbs #breadcrumbs, .vn-crumbs .elementor-breadcrumbs, .vn-crumbs nav { font-family: 'Assistant', sans-serif; font-size: .8125rem; color: #6b7280; margin: 0; }
.vn-crumbs #breadcrumbs a, .vn-crumbs nav a { color: inherit; text-decoration: none; }
.vn-crumbs #breadcrumbs a:hover, .vn-crumbs nav a:hover { color: #068994; }
.vn-crumbs .breadcrumb_last { color: #1e1e1e; }
.vn-crumbs--light #breadcrumbs, .vn-crumbs--light nav, .vn-crumbs--light .breadcrumb_last { color: #f1f1f1; }
.vn-rich .vn-crumbs { width: 100%; text-align: start; margin-bottom: 8px; }

/* round33: the desktop results box only shows when it holds results */
.vn-search:not(.vn-search--panel) .e-search-results-container:not(:has(.e-loop-item)), .vn-search:not(.vn-search--panel) .e-search-results-container.hidden { display: none !important; }
.vn-search:not(.vn-search--panel) .e-search-results-container:has(.e-search-nothing-found-message) { display: flex !important; }

/* round34: laptop widths - the menu stays on one line */
.vn-mega .e-n-menu-heading { flex-wrap: nowrap !important; }
.vn-mega .e-n-menu-item, .vn-mega .e-n-menu-title-text { white-space: nowrap; }
.vn-header__center { flex-shrink: 1; min-width: 0; }
@media (min-width: 768px) and (max-width: 1500px) {
  .vn-header { padding-left: 20px !important; padding-right: 20px !important; }
  .vn-header__center { gap: 24px !important; }
  .vn-search .e-search-form { width: 220px; max-width: 220px; }
  .vn-header .vn-logo img { width: 190px; }
  .vn-mega .e-n-menu-title { padding: 0 8px !important; }
  .vn-mega .e-n-menu-title-text { font-size: 1.0625rem !important; }
}
@media (min-width: 768px) and (max-width: 1200px) {
  .vn-search .e-search-form { width: 180px; max-width: 180px; }
  .vn-header .vn-logo img { width: 160px; }
  .vn-header__center { gap: 16px !important; }
}

/* round35: select fields in Elementor forms - one border, arrow inside the box */
.vn-form .elementor-select-wrapper { border: 0 !important; padding: 0 !important; background: transparent !important; position: relative; }
.vn-form .elementor-select-wrapper::before, .vn-form .elementor-select-wrapper::after { display: none !important; }
.vn-form .elementor-select-wrapper select.elementor-field { width: 100%; border: 2px solid #b0b0b0; border-radius: 0; padding: .75rem 1rem; padding-inline-end: 1rem; padding-inline-start: 2.75rem; font-family: 'Assistant', sans-serif; font-size: 1rem; color: #1e1e1e; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath stroke='%231e1e1e' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") no-repeat left 14px center / 16px; -webkit-appearance: none; appearance: none; height: auto; line-height: 1.5; }
.vn-form .elementor-select-wrapper select.elementor-field:focus { border-color: #068994; outline: none; }

/* round36: WooCommerce notices (added to cart, errors, info) */
.woocommerce-notices-wrapper { max-width: 1392px; margin: 0 auto; padding: 0 24px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; max-width: 1392px; margin: 20px auto !important; padding: 16px 24px !important; background: #f6f5f2 !important; border: 0 !important; border-inline-start: 4px solid #068994 !important; border-radius: 10px; color: #1e1e1e !important; font-family: 'Assistant', sans-serif; font-size: 1rem; line-height: 1.5; box-shadow: none; }
.woocommerce-error { border-inline-start-color: #c0392b !important; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none !important; }
.woocommerce-message .button, .woocommerce-info .button, .woocommerce-error .button { order: 2; margin: 0 !important; background: #1e1e1e !important; color: #fff !important; border-radius: 9999px !important; padding: 10px 22px !important; font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: .95rem !important; line-height: 1.3; white-space: nowrap; text-decoration: none; }
.woocommerce-message .button:hover { background: #068994 !important; }
.woocommerce-error li { margin: 0; }
@media (max-width: 767px) { .woocommerce-notices-wrapper { padding: 0 12px; } .woocommerce-message, .woocommerce-info, .woocommerce-error { padding: 14px 16px !important; margin: 12px auto !important; } .woocommerce-message .button { width: 100%; text-align: center; } }

/* round37: force the select arrow to the left (the compiled Tailwind forms reset paints one on the right) */
.vn-form select.elementor-field, .vn-form .elementor-select-wrapper select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath stroke='%231e1e1e' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") !important; background-position: left 14px center !important; background-repeat: no-repeat !important; background-size: 16px 16px !important; background-color: #fff !important; padding-inline-start: 2.75rem !important; padding-inline-end: 1rem !important; -webkit-print-color-adjust: exact; }

/* round38: Elementor's own select caret element */
.vn-form .select-caret-down-wrapper, .vn-form .elementor-select-wrapper .select-caret-down-wrapper, .vn-form .elementor-select-wrapper i, .vn-form .elementor-select-wrapper svg { display: none !important; }

/* round39: the results wrapper is a block; only the inner list is the 2-column grid (nested grids squeezed the cards) */
.vn-search--panel .e-search-results { display: block !important; width: 100% !important; grid-template-columns: none !important; }
.vn-search--panel .e-search-results-list { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px 16px; width: 100% !important; }
.vn-search--panel .e-search-results-list > .e-loop-item { width: 100%; min-width: 0; }
.vn-search:not(.vn-search--panel) .e-search-results { display: block !important; width: 100% !important; }

/* round40: header keeps the English physical layout (logo left, icons right); search chevron points left */
.vn-search .e-search-submit svg { transform: scaleX(-1); }
@media (min-width: 768px) {
  .vn-header { flex-direction: row-reverse !important; }
  .vn-header .vn-header__center { flex-direction: row-reverse !important; }
  .vn-header .vn-header__icons { flex-direction: row-reverse !important; }
  .vn-search:not(.vn-search--panel) .e-search-results-container { right: auto !important; left: 0 !important; }
}
@media (max-width: 767px) {
  .vn-header .vn-header__center { grid-column: 3; justify-self: end; }
  .vn-header .vn-header__icons { grid-column: 1; justify-self: start; }
}

/* round41: centre block sized to its content; icon order like the source */
@media (min-width: 768px) {
  .vn-header .vn-header__center { flex-grow: 1 !important; justify-content: center !important; gap: 48px !important; }
  .vn-header .vn-mega, .vn-header .vn-mega .e-n-menu, .vn-header .vn-mega .e-n-menu-wrapper, .vn-header .vn-mega .e-n-menu-heading { width: auto !important; flex: 0 0 auto !important; }
  .vn-header .vn-search { flex: 0 0 auto; }
}
@media (max-width: 767px) {
  .vn-header .vn-header__icons { flex-direction: row-reverse !important; }
}

/* round42: the icons block was sharing the free space with the centre block; now only the centre grows */
@media (min-width: 768px) {
  .vn-header .vn-header__icons { flex: 0 0 auto !important; width: auto !important; }
  .vn-header .vn-logo { flex: 0 0 auto !important; }
  .vn-header .vn-header__center { flex: 1 1 auto !important; width: auto !important; }
}

/* round43: nowrap was inherited by the dropdown content and glued the article titles together */
.vn-mega .e-n-menu-item { white-space: normal; }
.vn-mega .e-n-menu-title, .vn-mega .e-n-menu-title-text { white-space: nowrap; }
.vn-mega .e-n-menu-content, .vn-mega .e-n-menu-content * { white-space: normal; }
.vn-mega .e-n-menu-content .vn-news-card__title .elementor-heading-title { font-size: 1rem; line-height: 1.3; }

/* round44: mega menu panels like the source */
@media (min-width: 768px) {
  .vn-mega-cols > .e-con { padding-inline: 32px !important; border-inline-start: 1px solid #d9d9d9; min-height: 300px; }
  .vn-mega-cols > .e-con:first-child { padding-inline-start: 0 !important; border-inline-start: 0; }
  .vn-mega-cols > .e-con > .e-con { padding-inline: 0 !important; border: 0; min-height: 0; }
  .vn-mega-col__title { margin-bottom: 4px; }
  .vn-mega-col__title .elementor-heading-title { font-size: 17px !important; letter-spacing: .09em !important; }
  .vn-mega-col--sub .vn-mega-col__title .elementor-heading-title { font-size: 15px !important; margin-top: 12px; }
  .vn-mega-col__menu .elementor-nav-menu--main .elementor-item { font-size: 18px !important; font-weight: 400 !important; padding: 7px 0 !important; line-height: 1.4; }
  .vn-mega-col__menu .elementor-icon-list-item { font-size: 18px !important; font-weight: 400; }
  .vn-mega-col__menu .elementor-icon-list-text { font-size: 18px !important; }
  .vn-mega-col__menu .elementor-icon-list-items { gap: 0; }
  .vn-mega-callout img { width: 100%; max-width: 360px; border-radius: 0; }
  .vn-mega .e-n-menu-content > .e-con > .e-con-inner { align-items: flex-start; }
  .vn-mega .e-n-menu-content .vn-loop--mega { margin-top: 8px; }
  .vn-mega .e-n-menu-content .vn-news-card__title .elementor-heading-title { font-size: 1.05rem; line-height: 1.3; }
  .vn-mega .e-n-menu-content .vn-btn--hand .elementor-button { font-size: 1.35rem; min-width: 220px; padding: .9rem 2.4rem .8rem; }
}
/* round45: product label section */
.vn-label-sec:not(:has(.vn-label-img img)) { display: none !important; }
.vn-label-img img { width: 100%; max-width: 1200px; border: 1px solid #e7e7e7; border-radius: 8px; box-shadow: 0 8px 30px rgba(0,0,0,.08); background: #fff; cursor: zoom-in; }
.vn-pdp__gallery .flex-control-thumbs li img { object-fit: contain; background: #fff; }
@media (max-width: 767px) { .vn-label-img img { max-width: 100%; } }

/* round46 */
/* add to basket: fixed width like the source, never stretched */
.vn-pdp__cart form.cart .single_add_to_cart_button { flex: 0 0 auto !important; width: auto !important; min-width: 300px !important; max-width: 100%; }
/* notice: no outer frame */
.woocommerce-notices-wrapper, .woocommerce-notices-wrapper > * { outline: 0 !important; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top: 0 !important; border-right: 0 !important; border-bottom: 0 !important; border-left: 0 !important; border-inline-start: 4px solid #068994 !important; }
/* gallery zoom trigger: thin circle icon */
.vn-pdp__gallery .woocommerce-product-gallery__trigger { width: 40px; height: 40px; border-radius: 50%; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e1e1e' stroke-width='1.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L20 20M8 10.5h5M10.5 8v5'/%3E%3C/svg%3E") center / 20px no-repeat !important; box-shadow: 0 2px 8px rgba(0,0,0,.12); top: 12px; inset-inline-end: 12px; left: auto; right: auto; opacity: 1; }
.vn-pdp__gallery .woocommerce-product-gallery__trigger::before, .vn-pdp__gallery .woocommerce-product-gallery__trigger::after, .vn-pdp__gallery .woocommerce-product-gallery__trigger img { display: none !important; }
/* lightbox: large image, rtl-safe toolbar */
.elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .swiper-zoom-container img { max-width: 92vw !important; max-height: 88vh !important; width: auto; height: auto; }
.elementor-lightbox .elementor-lightbox-item { direction: ltr; }
/* mega menu: columns fade in one after another */
@media (min-width: 768px) {
  .vn-mega .e-n-menu-content.e-active .vn-mega-cols > .e-con, .vn-mega .e-n-menu-content.e-active .vn-mega-callout, .vn-mega .e-n-menu-content.e-active .vn-loop--mega, .vn-mega .e-n-menu-content.e-active .vn-btn { animation: vnMegaIn .45s cubic-bezier(.2,.7,.2,1) both; }
  .vn-mega .e-n-menu-content.e-active .vn-mega-cols > .e-con:nth-child(2) { animation-delay: .08s; }
  .vn-mega .e-n-menu-content.e-active .vn-mega-cols > .e-con:nth-child(3) { animation-delay: .16s; }
  .vn-mega .e-n-menu-content.e-active .vn-mega-callout, .vn-mega .e-n-menu-content.e-active .vn-loop--mega { animation-delay: .24s; }
  .vn-mega .e-n-menu-content.e-active .vn-btn { animation-delay: .12s; }
}
@keyframes vnMegaIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
/* kindness circles at the source size */
.vn-kind .vn-kind__img img { width: 100%; max-width: 380px; }
.vn-kind .vn-kind__img { text-align: center; }
/* torn-edge artwork shown whole (not cropped) on desktop */
@media (min-width: 1025px) {
  .vn-reasons { background-size: 100% auto !important; background-position: center bottom !important; min-height: calc(100vw * 0.469) !important; padding-top: 96px !important; padding-bottom: 96px !important; }
  .vn-quote { background-size: 100% auto !important; background-position: center top !important; background-color: #0e1a12 !important; min-height: calc(100vw * 0.543) !important; }
  .vn-standards { background-size: 100% auto !important; background-position: center top !important; background-color: #ffffff !important; min-height: calc(100vw * 0.53) !important; }
}
/* round47: health headlines edge to edge like the source; Dana Yad now a real font file */
.vn-sec--news { overflow: hidden; }
.vn-sec--news .vn-h { padding: 0 24px; }
.vn-sec--news .vn-loop--news .swiper { overflow: hidden; }
.vn-h strong { font-size: 1.32em; margin-inline: .06em; top: .06em; }

/* round48 */
/* 1+4: add to basket = textured brush image, fills the row like the source, Assistant bold (no handwriting) */
.vn-pdp__cart form.cart button.single_add_to_cart_button, .vn-pdp__cart form.cart button.single_add_to_cart_button:hover, .vn-pdp__cart form.cart button.single_add_to_cart_button:focus,
.vn-sticky-cart button.single_add_to_cart_button, .vn-sticky-cart button.single_add_to_cart_button:hover {
  background-image: url('../../../../uploads/viridian-assets/button--textured-teal.png') !important; background-size: 100% 100% !important; background-position: center !important; background-repeat: no-repeat !important; background-color: transparent !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: #fff !important;
  font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 1.1rem !important; letter-spacing: .08em !important; line-height: 1.2 !important;
}
.vn-pdp__cart form.cart button.single_add_to_cart_button { flex: 1 1 auto !important; width: auto !important; min-width: 0 !important; min-height: 65px !important; padding: 1rem 2rem !important; }
.vn-pdp__cart form.cart button.single_add_to_cart_button:hover { background-image: url('../../../../uploads/viridian-assets/button--textured-teal--hover.png') !important; transform: none; }
.vn-sticky-cart button.single_add_to_cart_button { min-height: 52px !important; padding: .7rem 2rem !important; font-size: 1rem !important; }
/* 2: lightbox toolbar always uses Elementor's icon font */
.elementor-lightbox [class^="eicon-"], .elementor-lightbox [class*=" eicon-"], .elementor-lightbox i { font-family: eicons !important; font-style: normal !important; font-weight: normal !important; }
/* 3: Dana Yad has one weight only; thicken it to sit against the bold heading like the source script */
.vn-h strong, .vn-btn--textured .elementor-button, .vn-btn--hand .elementor-button { -webkit-text-stroke: .028em currentColor; paint-order: stroke fill; }
/* 5: reasons to love: white torn-paper strips over the top and bottom edges, as in the source */
.vn-reasons { position: relative; overflow: hidden; }
.vn-reasons::before, .vn-reasons::after { content: ''; position: absolute; left: 0; right: 0; height: 100px; background-size: cover; background-repeat: no-repeat; background-position: center; pointer-events: none; z-index: 2; }
.vn-reasons::before { top: -1px; background-image: url('../../../../uploads/viridian-assets/bg-texture-white-top.png'); transform: scaleY(-1); }
.vn-reasons::after { bottom: -1px; background-image: url('../../../../uploads/viridian-assets/bg-texture-white-bottom.png'); transform: scaleY(-1); }
@media (max-width: 1024px) { .vn-reasons::before, .vn-reasons::after { height: 60px; } }
/* 6: zoom trigger without the square drop shadow */
.vn-pdp__gallery .woocommerce-product-gallery__trigger { box-shadow: none !important; border: 1px solid #e3e3e3 !important; overflow: hidden; text-indent: -9999px; }
.vn-pdp__gallery .woocommerce-product-gallery__trigger:hover { border-color: #068994 !important; }
/* 7: related carousel edge to edge */
.vn-related { overflow: hidden; }
.vn-related .vn-h { padding: 0 24px; }
.vn-related .vn-loop .swiper { overflow: hidden; }
/* round48b: variable products wrap qty + button in .woocommerce-variation-add-to-cart; lay it out as the row */
.vn-pdp__cart form.cart .woocommerce-variation-add-to-cart { display: flex; align-items: center; gap: 1rem; flex: 1 1 100%; width: 100%; flex-wrap: wrap; }
.vn-pdp__cart form.cart .woocommerce-variation-add-to-cart .quantity { flex: 0 0 auto; }
.vn-pdp__cart form.cart .woocommerce-variation-add-to-cart button.single_add_to_cart_button { flex: 1 1 auto !important; }
.vn-pdp__cart form.cart .single_variation_wrap { flex: 1 1 100%; width: 100%; }

/* round49 */
/* header search: room between the icon and the placeholder, text centred on the icon's axis */
.vn-search .e-search-form { gap: .75rem; }
.vn-search .e-search-icon { margin-inline-end: .25rem; }
.vn-search .e-search-input { height: 36px; line-height: 36px; padding: 0 .35rem 0 0; }
.vn-search .e-search-input::placeholder { line-height: 36px; }
/* in-page anchors (about#values etc.) land below the fixed header */
[id] { scroll-margin-top: calc(var(--vn-header-h, 100px) + 16px); }
/* round49b */
/* PhotoSwipe (product gallery lightbox): the toolbar is an LTR sprite layout; in RTL its buttons stacked on top of each other */
.pswp { direction: ltr; }
.pswp__top-bar { direction: ltr; }
.pswp__top-bar .pswp__button { float: right; position: relative; }
.pswp__counter { position: absolute; left: 0; font-family: 'Assistant', sans-serif; }
.pswp__button--share { display: none !important; }
.pswp__caption__center { font-family: 'Assistant', sans-serif; text-align: center; direction: rtl; }
/* hover on brush buttons keeps white text */
.vn-btn--textured .elementor-button:hover, .vn-btn--textured .elementor-button:focus, .vn-btn--textured .elementor-button:hover .elementor-button-text { color: #fff !important; }
/* one primary button system: brush image, 60px tall, capped width, Assistant bold */
.vn-pdp__cart form.cart button.single_add_to_cart_button { max-width: 460px; min-height: 60px !important; }
.vn-wc .checkout-button, .vn-wc a.checkout-button, .e-cart__container .checkout-button, .elementor-widget-woocommerce-cart .checkout-button, .elementor-widget-woocommerce-cart .checkout-button:hover,
.vn-wc #place_order, .elementor-widget-woocommerce-checkout #place_order, .elementor-widget-woocommerce-checkout #place_order:hover,
.vn-wc .woocommerce-form-login .button, .vn-wc .woocommerce-Button, .elementor-widget-woocommerce-my-account .woocommerce-Button {
  display: flex !important; align-items: center; justify-content: center; width: 100% !important; max-width: 460px !important; min-height: 60px !important; margin: 0 0 0 auto !important; padding: .9rem 2rem !important;
  background-image: url('../../../../uploads/viridian-assets/button--textured-teal.png') !important; background-size: 100% 100% !important; background-position: center !important; background-repeat: no-repeat !important; background-color: transparent !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: #fff !important; text-align: center;
  font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 1.1rem !important; letter-spacing: .08em !important; line-height: 1.2 !important;
}
.rtl .vn-wc .checkout-button, .rtl .elementor-widget-woocommerce-cart .checkout-button, .rtl .vn-wc #place_order, .rtl .elementor-widget-woocommerce-checkout #place_order { margin: 0 auto 0 0 !important; }
.vn-wc .coupon .button, .vn-wc .checkout_coupon .button, .vn-wc .e-apply-coupon, .vn-wc button.button { min-height: 56px !important; padding: 0 28px !important; font-family: 'Assistant', sans-serif !important; font-weight: 700 !important; font-size: 1rem !important; }
/* hand-drawn outline button: hover keeps the outline, text turns teal (no filled pill) */
.vn-btn--hand .elementor-button:hover, .vn-btn--hand .elementor-button:focus { background-color: transparent !important; background-image: url('../../../../uploads/viridian-assets/button--hand-drawn-teal.svg') !important; color: #068994 !important; }
.vn-btn--hand .elementor-button:hover .elementor-button-text { color: #068994 !important; }
/* round49c */
/* home: white torn-paper strips on the tiles, rabbit and team bands, like the source */
.vn-sec--tiles, .vn-rabbit, .vn-sec--team { position: relative; overflow: hidden; }
.vn-sec--tiles::before, .vn-sec--tiles::after, .vn-rabbit::before, .vn-rabbit::after, .vn-sec--team::before, .vn-sec--team::after { content: ''; position: absolute; left: 0; right: 0; height: 100px; background-size: cover; background-repeat: no-repeat; background-position: center; pointer-events: none; z-index: 2; }
.vn-sec--tiles::before, .vn-rabbit::before, .vn-sec--team::before { top: -1px; background-image: url('../../../../uploads/viridian-assets/bg-texture-white-top.png'); transform: scaleY(-1); }
.vn-sec--tiles::after, .vn-rabbit::after, .vn-sec--team::after { bottom: -1px; background-image: url('../../../../uploads/viridian-assets/bg-texture-white-bottom.png'); transform: scaleY(-1); }
@media (max-width: 1024px) { .vn-sec--tiles::before, .vn-sec--tiles::after, .vn-rabbit::before, .vn-rabbit::after, .vn-sec--team::before, .vn-sec--team::after { height: 60px; } }
/* carousel arrows: thin large teal chevrons like the source */
.vn-loop .elementor-swiper-button, .vn-carousel .elementor-swiper-button { width: 34px !important; height: 34px !important; background: transparent !important; }
.vn-loop .elementor-swiper-button svg, .vn-loop .elementor-swiper-button i, .vn-carousel .elementor-swiper-button svg, .vn-carousel .elementor-swiper-button i { display: none !important; }
.vn-loop .elementor-swiper-button::before, .vn-carousel .elementor-swiper-button::before { content: ''; display: block; width: 30px; height: 30px; background-color: #068994; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4L7 12l8 8'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4L7 12l8 8'/%3E%3C/svg%3E") center / contain no-repeat; transition: background-color .2s; }
.vn-loop .elementor-swiper-button-prev::before, .vn-carousel .elementor-swiper-button-prev::before { transform: scaleX(-1); }
.vn-loop .elementor-swiper-button:hover::before, .vn-carousel .elementor-swiper-button:hover::before { background-color: #00b1bc; }
.vn-loop .elementor-swiper-button.swiper-button-disabled::before, .vn-carousel .elementor-swiper-button.swiper-button-disabled::before { background-color: #b9dadc; }
.vn-loop .elementor-swiper-button-prev, .vn-carousel .elementor-swiper-button-prev { left: 52px !important; }
/* no gunk + guarantee pages */
.vn-nogunk__bottle img { max-width: 260px; }
.vn-nogunk__tag { font-family: 'Dana Yad', 'Suez One', serif; -webkit-text-stroke: .02em currentColor; }
.vn-stat { border: 3px solid #bfe3e3; border-radius: 50%; aspect-ratio: 1 / 1; text-align: center; }
.vn-stat .vn-stat__num { font-family: 'Assistant', sans-serif; line-height: 1; }
.vn-xlist .elementor-icon-list-icon { margin-inline-end: 8px; }
.vn-quoteboard img { width: 100%; }
.vn-nogunk__strip .vn-strip__img img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1 / 1; display: block; }
.vn-nogunk__strip .vn-strip__caption { padding: 28px 24px; }
.vn-post__content ul { padding-inline-start: 1.4rem; margin: 0 0 1rem; }
.vn-post__content li { margin-bottom: .5rem; }
/* PhotoSwipe buttons: the kit's global button padding stretched the sprite buttons to 64px */
.pswp .pswp__button, .elementor-kit-6 .pswp button.pswp__button { width: 44px !important; height: 44px !important; min-height: 0 !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background-color: transparent !important; line-height: 1 !important; }
.pswp .pswp__button--arrow--left, .pswp .pswp__button--arrow--right { width: 70px !important; height: 100px !important; }
.pswp .pswp__button--arrow--left::before, .pswp .pswp__button--arrow--right::before { width: 32px; height: 44px; }
.pswp__counter { line-height: 44px; }
.pswp .pswp__button--close { position: relative !important; top: 0 !important; float: right !important; }
.woocommerce-cart .vn-wc .e-cart__container a.checkout-button.button.alt, .woocommerce-cart .vn-wc a.checkout-button.button.alt, .woocommerce-checkout .vn-wc button#place_order.button.alt { background: url('../../../../uploads/viridian-assets/button--textured-teal.png') center / 100% 100% no-repeat transparent !important; }
.pswp__top-bar { display: flex !important; flex-direction: row-reverse; justify-content: flex-start; align-items: center; }
.pswp .pswp__top-bar .pswp__button { float: none !important; position: static !important; }
.pswp .pswp__top-bar .pswp__counter { position: absolute !important; left: 0; top: 0; }
.pswp .pswp__top-bar .pswp__preloader { position: absolute; left: 50%; }
/* round50 */
/* RTL: Elementor swaps the swiper buttons, so the element classed "prev" advances. Show it as the left-pointing arrow on the far left. */
.vn-loop .elementor-swiper-button-prev::before, .vn-carousel .elementor-swiper-button-prev::before { transform: none; }
.vn-loop .elementor-swiper-button-next::before, .vn-carousel .elementor-swiper-button-next::before { transform: scaleX(-1); }
.vn-loop .elementor-swiper-button-prev, .vn-carousel .elementor-swiper-button-prev { left: 4px !important; }
.vn-loop .elementor-swiper-button-next, .vn-carousel .elementor-swiper-button-next { left: 52px !important; }
/* product card: second image fades in on hover, like the source */
.vn-card { position: relative; }
.vn-card .vn-card__image img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; }
.vn-card .vn-card__hover { position: absolute; top: 0; left: 0; right: 0; aspect-ratio: 1 / 1; opacity: 0; transition: opacity .4s ease; pointer-events: none; margin: 0; }
.vn-card .vn-card__hover img { width: 100%; height: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.vn-card:hover .vn-card__hover { opacity: 1; }
@media (hover: none) { .vn-card .vn-card__hover { display: none; } }
/* round51: active filter pill, white label and chevron on the black pill */
.vn-filterbar .filter-btn--active, .vn-filterbar .filter-btn--active .filter-btn__label, .vn-filterbar .filter-btn--active .filter-btn__icon, .vn-filterbar .filter-btn--active span:not(.filter-btn__badge), .vn-filterbar .filter-btn--active svg { color: #fff !important; fill: #fff !important; stroke: #fff; }
/* round52: about timeline like the source: dividers only, grey open title in teal, thin plus/minus */
.vn-timeline { --n-accordion-border-width: 0; --n-accordion-border-color: transparent; --n-accordion-item-title-space-between: 0; --n-accordion-title-normal-color: #1e1e1e; --n-accordion-title-active-color: #068994; --n-accordion-icon-color: #1e1e1e; --n-accordion-icon-active-color: #068994; }
.vn-timeline .e-n-accordion-item, .vn-timeline details.e-n-accordion-item, .vn-timeline .e-n-accordion-item-title, .vn-timeline summary.e-n-accordion-item-title, .vn-timeline .e-n-accordion-item > .e-con { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.vn-timeline .e-n-accordion-item { border-top: 1px solid #d9d9d9 !important; margin: 0 !important; }
.vn-timeline .e-n-accordion-item:last-child { border-bottom: 1px solid #d9d9d9 !important; }
.vn-timeline .e-n-accordion-item-title { padding: 18px 12px !important; font-size: 18px !important; font-weight: 700 !important; background: transparent !important; color: #1e1e1e !important; }
.vn-timeline .e-n-accordion-item[open] > .e-n-accordion-item-title { background: #e5e5e5 !important; color: #068994 !important; }
.vn-timeline .e-n-accordion-item[open] > .e-n-accordion-item-title .e-n-accordion-item-title-text { color: #068994 !important; }
.vn-timeline .e-n-accordion-item-title-icon { color: #1e1e1e !important; font-size: 16px; font-weight: 300; }
.vn-timeline .e-n-accordion-item-title-icon svg { width: 14px; height: 14px; fill: currentColor; }
.vn-timeline .e-n-accordion-item > .e-con { padding: 16px 12px 24px !important; background: transparent !important; }
.vn-timeline .e-n-accordion-item > .e-con p { margin: 0 0 .5rem; }
/* no gunk hero: giant three-line headline beside a tilted bottle, hand-drawn ring button beneath (source: No Gunk, Muck, Yuck.) */
.vn-nogunk__title { line-height: .95 !important; letter-spacing: -.01em; }
.vn-nogunk__bottle img { max-width: 320px; width: 100%; transform: rotate(-12deg); }
.vn-nogunk__hero .vn-btn--hand .elementor-button { font-size: 1.9rem; padding: 1.2rem 3.4rem 1rem; min-width: 380px; }
.vn-nogunk__hero .vn-btn--hand .elementor-button::after { content: ''; display: block; position: absolute; left: 50%; bottom: -34px; width: 2px; height: 26px; background: #068994; transform: translateX(-50%); }
.vn-nogunk__hero .vn-btn--hand .elementor-button { position: relative; margin-bottom: 30px; }
@media (max-width: 767px) { .vn-nogunk__bottle img { max-width: 200px; } .vn-nogunk__hero .vn-btn--hand .elementor-button { min-width: 0; font-size: 1.4rem; } }
.vn-timeline details.e-n-accordion-item { border-top: 1px solid #d9d9d9 !important; }
.vn-timeline details.e-n-accordion-item:last-of-type { border-bottom: 1px solid #d9d9d9 !important; }
.vn-timeline .e-n-accordion-item-title-icon svg, .vn-timeline .e-n-accordion-item-title-icon i { display: none !important; }
.vn-timeline .e-n-accordion-item-title-icon::before { content: '+'; font-family: 'Assistant', sans-serif; font-weight: 300; font-size: 26px; line-height: 1; color: #1e1e1e; }
.vn-timeline .e-n-accordion-item[open] > .e-n-accordion-item-title .e-n-accordion-item-title-icon::before { content: '\2212'; color: #068994; }
/* brush and hand-drawn buttons keep the handwriting face (the source uses its script font there); only add-to-basket is Assistant */
.vn-btn--textured .elementor-button, .vn-btn--hand .elementor-button, .vn-btn--textured .elementor-button-text, .vn-btn--hand .elementor-button-text { font-family: 'Dana Yad', 'Suez One', serif !important; font-weight: 400 !important; font-size: 1.55rem !important; letter-spacing: 0 !important; }
.vn-nogunk__hero .vn-btn--hand .elementor-button, .vn-nogunk__hero .vn-btn--hand .elementor-button-text { font-size: 2rem !important; }
/* round53: no gunk - client boards carousel edge to edge, High Five band */
.vn-nogunk__quotes { overflow: hidden; }
.vn-nogunk__quotes .vn-h { padding: 0 24px; }
.vn-carousel--boards .swiper { overflow: hidden; }
.vn-carousel--boards .vn-quoteboard img { width: 100%; display: block; }
.vn-carousel--boards .elementor-swiper-button { top: -80px !important; }
.vn-nogunk__cleanlabel img { width: 100%; }
.vn-nogunk__highfive { background-position: center !important; }
