/* =====================================================================
 * Purovitalis rebuild — tablet + mobile (agency Figma "Purovitalis final",
 * mobile board 4129:4428 + menu/interactions board 2151:5679, 2026-09-07).
 * Loads after rebuild.css. Only layout, sizing and the mobile menu: no copy,
 * no images change. Breakpoints: ≤1023px tablet/small laptop, ≤767px phone.
 * Patterns from the board: photo above copy on every split, cards become
 * one column (phone) or two (tablet), card rows become swipe tracks with a
 * "1 of N" line, 20px page edge, headings one step smaller.
 * ===================================================================== */

/* ---------- 1. Header + mobile menu ---------- */
.pv26-header__burger { display: none; }
.pv26-mobile { display: none; }
@media (max-width: 1023px) {
	.pv26-header { --pv-edge: 20px; }
	.pv26-header__bar { height: 64px; padding: 0 var(--pv-edge); align-items: center; }
	.pv26-header__nav { display: none; }
	.pv26-header__burger { display: inline-grid; place-items: center; width: 44px; height: 44px; margin-left: -12px; padding: 0; border: 0; background: none; cursor: pointer; color: var(--pv-color-black); }
	.pv26-header__burger-lines { display: grid; gap: 5px; width: 20px; }
	.pv26-header__burger-lines i { display: block; height: 1.5px; background: currentColor; border-radius: 2px; transition: transform 0.25s ease, opacity 0.2s ease; }
	.pv26-header__burger[aria-expanded="true"] .pv26-header__burger-lines i:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
	.pv26-header__burger[aria-expanded="true"] .pv26-header__burger-lines i:nth-child(2) { opacity: 0; }
	.pv26-header__burger[aria-expanded="true"] .pv26-header__burger-lines i:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
	.pv26-header__logo { position: absolute; left: 50%; transform: translateX(-50%); padding: 0; border: 0; }
	.pv26-header__logo img { height: 36px; }
	.pv26-header__actions > * { padding: 0 0 0 12px; border-left: 0; }
	/* Only the cart stays in the bar; account, search and language live in the menu. */
	.pv26-header__actions > .pv-header__cell--lang, .pv26-header__actions > .pv-header__icon:not(.pv-header__cart) { display: none; }
	.pv26-header__actions .pv-header__cart-count { top: -6px; right: -8px; }
	.pv26-mobile { display: block; position: absolute; left: 0; right: 0; top: 100%; z-index: 59; background: var(--pv-color-white); border-radius: 0 0 20px 20px; box-shadow: 0 30px 50px rgba(0, 0, 0, 0.12); max-height: calc(100vh - 64px); overflow-y: auto; opacity: 0; transform: translateY(-8px); transition: opacity 0.2s ease, transform 0.25s ease; }
	.pv26-mobile.is-open { opacity: 1; transform: none; }
	.pv26-mobile[hidden] { display: none; }
	.pv26-mobile__nav { padding: 8px var(--pv-edge) 28px; }
	.pv26-mobile__item { border-bottom: 1px solid var(--pv-border-default); }
	.pv26-mobile__link { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px 0; border: 0; background: none; font-family: var(--pv-font-heading); font-size: 16px; font-weight: 500; color: var(--pv-color-black); text-decoration: none; text-align: left; cursor: pointer; }
	.pv26-mobile__chev { transition: transform 0.2s ease; }
	.pv26-mobile__item.is-open .pv26-mobile__chev { transform: rotate(180deg); }
	.pv26-mobile__sub { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 8px; }
	.pv26-mobile__sub a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border-radius: 999px; background: var(--pv-color-grey); color: var(--pv-color-black); text-decoration: none; font-size: 15px; }
	.pv26-mobile__arrow { display: inline-flex; opacity: 0.6; }
	.pv26-mobile__arrow svg { width: 12px; height: 12px; }
	.pv26-mobile__cta { display: flex; justify-content: center; width: 100%; margin-top: 24px; height: 48px; font-size: 14px; }
	.pv26-mobile__bar { display: flex; align-items: center; gap: 10px; padding: 16px var(--pv-edge) 20px; background: var(--pv-color-grey); border-radius: 0 0 20px 20px; }
	.pv26-mobile__login { display: inline-flex; align-items: center; gap: 10px; height: 44px; padding: 0 22px; border: 1px solid var(--pv-color-black); border-radius: 999px; color: var(--pv-color-black); font-size: 14px; font-weight: 600; text-decoration: none; }
	.pv26-mobile__round { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--pv-color-black); border-radius: 50%; color: var(--pv-color-black); }
	.pv26-mobile__lang { margin-left: auto; }
	.pv26-mobile__lang .pv-header__cell--lang { display: flex; padding: 0; border: 0; }
	.pv26-mobile__lang .pv-dropdown__toggle { height: 44px; padding: 0 16px; border: 1px solid var(--pv-color-black); border-radius: 999px; background: var(--pv-color-white); font-size: 13px; font-weight: 700; }
	.pv26-mobile__lang .pv-dropdown__menu, .pv26-mobile__lang [id="pv-lang-menu"] { right: 0; left: auto; bottom: 100%; top: auto; }
	html.pv26-menu-open { overflow: hidden; }
}

/* ---------- 2. Page edge, containers, type ---------- */
/* Every page container follows --pv-edge below 1200px: 32px on tablet landscape / small laptops
   (same edge as the header there, Rein 2026-09-08), 24px on tablet portrait, 20px on phones. */
@media (max-width: 1199px) {
	.pv26-hero, .pv26-newsletter, .pv26-footer__panel, .pv26-footer__meta, .pv26-footer__legal, .pv26-stub,
	.pv26-reviews, .pv26-partner, .pv26-goals, .pv26-formula, .pv26-bestsellers, .pv26-quality, .pv26-membership, .pv26-articles,
	.pv26-shop-hero, .pv26-shop, .pv26-faq, .pv26-product, .pv26-delivery, .pv26-research, .pv26-product-reviews, .pv26-tested,
	.pv26-goal-blocks, .pv26-goal-intro, .pv26-goal-situations, .pv26-goal-explainer, .pv26-goal-products, .pv26-goal-support,
	.pv26-science, .pv26-learn, .pv26-post, .pv26-post__after, .pv26-about, .pv26-team, .pv26-quality-page, .pv26-work, .pv26-lipo,
	.pv26-faqp, .pv26-ship, .pv26-contact, .pv26-rv, .pv26-ing, .pv26-srch, .pv26-vc, .pv26-mp, .pv-account, .pv-cart, .pv-recommendations, .woocommerce-cart .woocommerce-notices-wrapper, .woocommerce .cross-sells {
		padding-left: var(--pv-edge) !important; padding-right: var(--pv-edge) !important;
	}
	.pv26-goal-explainer { padding-left: var(--pv-edge) !important; }
}
@media (max-width: 1023px) {
	:root { --pv-edge: 24px; --pv-text-h1: 40px; --pv-text-h2: 32px; }
	/* 40px section headings step down to 32. */
	.pv26-h2, .pv26-goal-block__title, .pv26-product__title, .pv26-tested__title, .pv26-learn__title, .pv26-post__title, .pv26-author__name,
	.pv26-faqp__title, .pv26-faqp__group-title, .pv26-ship__h, .pv26-contact__hero-title, .pv26-contact__h2, .pv26-rv__title, .pv26-ing__title, .pv26-ing__name,
	.pv26-srch__title, .pv26-mp__h2, .pv26-vc__h2, .pv26-quiz-card__title, .pv26-shop-hero__title { font-size: 32px !important; line-height: 1.05; }
	.pv26-hero__title { font-size: 40px; }
	/* Section rhythm: 104px gaps become 64. */
	.pv26-membership, .pv26-vc__how, .pv26-vc__earn, .pv26-vc__tiers, .pv26-vc__member, .pv26-vc__faq, .pv26-vc__refer, .pv26-vc__redeem,
	.pv26-mp__why, .pv26-mp__how, .pv26-mp__start, .pv26-mp__control, .pv26-mp__products, .pv26-mp__included, .pv26-mp__faq, .pv26-mp__closing,
	.pv26-lipo__why, .pv26-lipo__products, .pv26-lipo__bio, .pv26-goal-block + .pv26-goal-block { margin-top: 64px !important; }
	.pv26-faq { margin-top: 64px; }
}
@media (max-width: 767px) {
	:root { --pv-edge: 20px; --pv-text-h1: 34px; --pv-text-h2: 28px; }
	.pv26-h2, .pv26-goal-block__title, .pv26-product__title, .pv26-tested__title, .pv26-learn__title, .pv26-post__title, .pv26-author__name,
	.pv26-faqp__title, .pv26-faqp__group-title, .pv26-ship__h, .pv26-contact__hero-title, .pv26-contact__h2, .pv26-rv__title, .pv26-ing__title, .pv26-ing__name,
	.pv26-srch__title, .pv26-mp__h2, .pv26-vc__h2, .pv26-quiz-card__title, .pv26-shop-hero__title { font-size: 28px !important; }
	.pv26-hero__title { font-size: 34px; }
	.pv26-btn { max-width: 100%; }
}

/* ---------- 3. Split blocks: photo above copy ---------- */
@media (max-width: 1023px) {
	.pv26-goal-block, .pv26-goal-intro, .pv26-delivery, .pv26-team__expert, .pv26-about__hero, .pv26-about__founder, .pv26-work__hero, .pv26-work__ambition,
	.pv26-post__hero, .pv26-faq, .pv26-faqp__group, .pv26-faqp__more, .pv26-ship__section, .pv26-ing__card, .pv26-contact__body, .pv26-mp__how,
	.pv26-mp__start-grid, .pv26-mp__control-grid, .pv26-lipo__bio, .pv26-science-ingredients, .pv26-research__card, .pv26-partner__grid, .pv26-about__cards,
	.pv26-goal-explainer, .pv26-goal-support__grid, .pv26-vc__refer, .pv26-vc__refer.has-image, .pv26-vc__member, .pv26-author__hero, .pv26-author__blocks,
	.pv26-srch__ingredients, .pv26-ship__grid, .pv26-product { grid-template-columns: 1fr !important; }
	.pv26-goal-block__media, .pv26-goal-block--photo-left .pv26-goal-block__media, .pv26-goal-block:not(.pv26-goal-block--photo-left) .pv26-goal-block__media { order: 1; }
	.pv26-goal-block__copy, .pv26-goal-block--photo-left .pv26-goal-block__copy, .pv26-goal-block:not(.pv26-goal-block--photo-left) .pv26-goal-block__copy { order: 2; padding: 28px 0 0 !important; }
	.pv26-goal-block__media, .pv26-goal-intro__media, .pv26-delivery__media, .pv26-team__photo, .pv26-team__hero .pv26-goal-block__media, .pv26-about__founder-media, .pv26-post__media, .pv26-mp__how-media, .pv26-contact__hero, .pv26-work__photo--hero, .pv26-work__photo--tall, .pv26-shop-hero__media, .pv26-hero__media { height: 360px !important; }
	.pv26-goal-intro__copy, .pv26-delivery__copy, .pv26-mp__how-copy { padding-left: 0 !important; padding-right: 0 !important; }
	.pv26-mp__how-media { order: 1; } .pv26-mp__how-copy { order: 2; }
	.pv26-science-ingredients { min-height: 0 !important; }
	.pv26-science-ingredients__media { position: relative !important; inset: auto !important; width: 100% !important; height: 300px; }
	.pv26-tested__card, .pv26-card { padding: 40px 28px !important; min-height: 0 !important; }
	.pv26-tested__media, .pv26-membership .pv26-membership__media { position: relative !important; width: 100% !important; height: 300px; margin-top: 24px; inset: auto !important; }
	.pv26-about__science { min-height: 0 !important; padding: 40px 28px !important; }
	.pv26-about__card { min-height: 0 !important; }
	.pv26-goal-support__card { padding: 40px 24px !important; }
	.pv26-goal-support__item { min-height: 0 !important; }
	.pv26-research__card { min-height: 0 !important; }
	.pv26-post__body { grid-template-columns: 1fr !important; }
	.pv26-post__sticky { position: static !important; }
	.pv26-post__sticky .pv26-rail-product { max-width: none !important; }
	.pv26-faq { gap: 24px; }
	.pv26-faq__more { margin-top: 8px; max-width: none !important; }
	.pv26-accordion, .pv26-faqp__accordion, .pv26-vc__accordion, .pv26-lipo__accordion, .pv26-post__faq .pv26-accordion { max-width: none !important; margin-left: 0 !important; }
	.pv26-faqp__group { padding: 28px 24px !important; }
	.pv26-ing__card { padding: 28px 24px !important; }
	.pv26-ship__section { gap: 16px; }
	.pv26-mp__preview { padding-top: 220px !important; }
	.pv26-mp__preview-img { width: 300px !important; height: 300px !important; top: -20px !important; }
	.pv26-vc__status { min-height: 0 !important; padding: 32px 28px !important; }
	.pv26-vc__hero .pv26-goal-block__copy { padding: 0 0 24px !important; order: 1; }
	.pv26-vc__hero .pv26-vc__status { order: 2; }
	.pv26-goal-explainer__icon { max-width: 160px; }
	.pv26-hero__content, .pv26-shop-hero__content { position: static !important; transform: none !important; max-width: none !important; }
}
@media (max-width: 767px) {
	.pv26-goal-block__media, .pv26-goal-intro__media, .pv26-delivery__media, .pv26-team__photo, .pv26-team__hero .pv26-goal-block__media, .pv26-about__founder-media, .pv26-post__media, .pv26-mp__how-media, .pv26-contact__hero, .pv26-work__photo--hero, .pv26-work__photo--tall { height: 260px !important; border-radius: 16px; }
	.pv26-tested__card, .pv26-card, .pv26-about__science, .pv26-goal-support__card, .pv26-faqp__group, .pv26-ing__card { padding: 28px 20px !important; border-radius: 16px; }
	.pv26-vc__status { padding: 26px 20px !important; }
	.pv26-vc__points strong { font-size: 44px !important; }
}

/* ---------- 4. Home ---------- */
@media (max-width: 1023px) {
	/* Hero: photo on top, then the purple LifeCells block with the copy (Figma home). */
	.pv26-hero { padding: 0 !important; }
	.pv26-hero__media { height: auto !important; border-radius: 0; background: var(--pv-color-primary); }
	.pv26-hero__media .pv26-hero__img { position: relative !important; height: 360px; }
	.pv26-hero__content { padding: 40px var(--pv-edge) 48px; color: var(--pv-color-white); background: #564f78 url('../img/lifecells/lifecells-purple.webp') center / cover no-repeat; }
	.pv26-hero__content .pv26-btn--outline { border-color: var(--pv-color-white); color: var(--pv-color-white); }
	.pv26-hero__ctas { flex-direction: column; align-items: stretch; }
	.pv26-hero__ctas .pv26-btn { justify-content: center; }
	.pv26-hero__title { margin-bottom: 20px; }
	/* Goal cards: the Figma list rows — colour bar left, label + title, no artwork. */
	.pv26-goals__grid { grid-template-columns: 1fr !important; gap: 10px; }
	.pv26-goal-card { min-height: 0 !important; padding: 18px 20px 18px 30px !important; border-radius: 12px; background: var(--pv-color-grey); color: var(--pv-color-black) !important; display: grid; gap: 2px; }
	.pv26-goal-card__bg { display: none; }
	.pv26-goal-card__cover { display: none; }
	.pv26-goal-card::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 12px; border-radius: 12px 0 0 12px; background: var(--pv-goal, #ccc); }
	.pv26-goal-card--recovery::before { background: var(--pv-goal-recovery); } .pv26-goal-card--energy::before { background: var(--pv-goal-energy); } .pv26-goal-card--resilience::before { background: var(--pv-goal-resilience); }
	.pv26-goal-card--renewal::before { background: var(--pv-goal-renewal); } .pv26-goal-card--balance::before { background: var(--pv-goal-balance); } .pv26-goal-card--foundation::before { background: var(--pv-goal-foundation); }
	.pv26-goal-card__label { font-size: 13px; }
	.pv26-goal-card__title { font-size: 16px; font-weight: 700; margin: 0 !important; }
	.pv26-goal-card__cta { display: none; }
	.pv26-goal-card__circle { display: none; }
	/* Formula, bestsellers, quality and articles become swipe tracks. */
	.pv26-formula__grid, .pv26-bestsellers__grid { display: flex !important; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)); padding: 0 var(--pv-edge) 6px; }
	.pv26-formula__grid::-webkit-scrollbar, .pv26-bestsellers__grid::-webkit-scrollbar { display: none; }
	.pv26-formula__grid > *, .pv26-bestsellers__grid > * { flex: 0 0 min(82%, 340px); scroll-snap-align: start; min-height: 0 !important; }
	.pv26-formula__card { min-height: 460px !important; }
	.pv26-article-card { flex-basis: min(86%, 360px) !important; grid-template-columns: 1fr !important; }
	.pv26-quality__card { flex-basis: min(82%, 300px) !important; }
	.pv26-carousel__progress { max-width: none !important; width: auto !important; }
	.pv26-carousel__count { margin-left: 12px; font-size: 12px; color: #727272; white-space: nowrap; }
	.pv26-partner__grid { gap: 20px; }
	.pv26-membership .pv26-partner__copy { max-width: none; }
}
@media (max-width: 767px) {
	.pv26-hero__media .pv26-hero__img { height: 260px; }
}

/* ---------- 5. Shop, product, goals, learn, article ---------- */
@media (max-width: 1023px) {
	.pv26-shop-hero__media { height: auto !important; }
	.pv26-shop-hero__media .pv26-shop-hero__img { position: relative !important; height: 320px; }
	.pv26-shop-hero__content { padding: 28px 0 8px; }
	.pv26-goals-hero__figure { position: relative !important; width: 100% !important; margin-top: 16px; }
	.pv26-shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px; }
	.pv26-shop-grid .pv26-product-card, .pv26-goal-products .pv26-product-card, .pv26-srch__products .pv26-product-card { min-height: 0 !important; }
	.pv26-product-card { padding: 16px 16px 20px !important; }
	.pv26-product-card__media { height: 200px !important; }
	.pv26-quiz-card--shop { min-height: 0 !important; grid-column: 1 / -1; }
	.pv26-goal-products .pv26-carousel__progress { width: auto !important; }
	.pv26-goal-products__foot { flex-wrap: wrap; gap: 14px; }
	.pv26-goal-situations__grid { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)); padding: 0 var(--pv-edge) 6px; }
	.pv26-goal-situations__grid::-webkit-scrollbar { display: none; }
	.pv26-goal-situations__grid > * { flex: 0 0 min(82%, 320px); scroll-snap-align: start; }
	/* Product page: gallery on top, summary below, lifestyle strip stacked. */
	.pv26-gallery { height: 420px !important; }
	.pv26-product__summary, .pv26-product__details, .pv26-product__intro { max-width: none !important; }
	.pv26-product__lifestyle { grid-template-columns: 1fr 1fr !important; }
	.pv26-research__text, .pv26-research__list, .pv26-research__list .pv26-accordion__a p, .pv26-delivery__text, .pv26-delivery__copy .pv26-h2 { max-width: none !important; }
	.pv26-learn__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px; }
	.pv26-srch__tiles { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.pv26-post__lead, .pv26-post__intro.pv26-prose, .pv26-prose, .pv26-post__outro.pv26-prose, .pv26-post__end { max-width: none !important; }
}
@media (max-width: 767px) {
	.pv26-shop-hero__media .pv26-shop-hero__img { height: 240px; }
	.pv26-gallery { height: 340px !important; }
	.pv26-product-card__media { height: 150px !important; }
	.pv26-shop-grid .pv26-product-card .pv26-btn, .pv26-learn__grid .pv26-btn { font-size: 12px; padding: 0 12px; }
	.pv26-product__lifestyle { grid-template-columns: 1fr !important; }
	.pv26-learn__grid { gap: 12px; }
}

/* ---------- 6. Content pages ---------- */
@media (max-width: 1023px) {
	.pv26-lipo__steps, .pv26-vc__steps, .pv26-vc__tier-row, .pv26-mp__cards, .pv26-qp__grid4, .pv26-ing__principles { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px; }
	.pv26-vc__grid, .pv26-mp__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px; }
	.pv26-rv__grid { columns: 1 !important; }
	.pv26-contact__channel { grid-template-columns: 1fr !important; }
	.pv26-contact__hero-copy, .pv26-contact__text, .pv26-contact__h2 { max-width: none !important; }
	.pv26-contact__hero { height: auto !important; min-height: 0; }
	.pv26-contact__hero-img { position: relative !important; height: 260px; }
	.pv26-ship__countries, .pv26-ing__intro, .pv26-ing__tagline, .pv26-ing__products, .pv26-ing__closing, .pv26-qp__intro, .pv26-qp__steps-head, .pv26-qp__steps-note, .pv26-qp__closing, .pv26-learn__intro, .pv26-rv__intro, .pv26-faqp__intro, .pv26-vc__section-head, .pv26-mp__section-head, .pv26-mp__intro, .pv26-mp__h2, .pv26-mp__closing p, .pv26-vc__refer-copy, .pv26-lipo__how-head, .pv26-lipo__products-head, .pv26-lipo__def, .pv26-lipo__bio-copy .pv26-lipo__text, .pv26-about__text, .pv26-team__text, .pv26-work__text, .pv26-goal-intro__text, .pv26-goal-block__text, .pv26-goal-explainer__text, .pv26-goal-support__head, .pv26-goal-support__title, .pv26-goal-support__text, .pv26-tested__copy, .pv26-tested__text, .pv26-about__science-copy, .pv26-srch__form { max-width: none !important; }
	.pv26-mp__start, .pv26-mp__control, .pv26-vc__redeem, .pv26-vc__refer, .pv26-mp__closing, .pv26-lipo__bio, .pv26-ing__closing, .pv26-qp__closing, .pv26-mp__included { padding: 36px 24px !important; border-radius: 20px; }
	.pv26-vc__options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.pv26-vc__perks-wrap { overflow-x: auto; }
	.pv26-ship__table-wrap, .pv26-vc__table-wrap { overflow-x: auto; }
	.pv26-faqp__more { gap: 16px; }
}
@media (max-width: 767px) {
	.pv26-lipo__steps, .pv26-vc__steps, .pv26-vc__tier-row, .pv26-mp__cards, .pv26-qp__grid4, .pv26-ing__principles, .pv26-vc__grid, .pv26-mp__grid, .pv26-vc__options, .pv26-learn__grid, .pv26-srch__tiles, .pv26-mp__ticks { grid-template-columns: 1fr !important; }
	.pv26-mp__start, .pv26-mp__control, .pv26-vc__redeem, .pv26-vc__refer, .pv26-mp__closing, .pv26-lipo__bio, .pv26-ing__closing, .pv26-qp__closing, .pv26-mp__included { padding: 28px 20px !important; }
	.pv26-mp__preview { padding-top: 0 !important; } .pv26-mp__preview-img { display: none; }
	.pv26-vc__share-btns { flex-direction: column; }
	.pv26-vc__share-btn, .pv26-vc__link { width: 100%; justify-content: center; }
	/* Shipping zones: the table stacks into cards (Figma). */
	.pv26-ship__table table, .pv26-ship__table thead, .pv26-ship__table tbody, .pv26-ship__table tr, .pv26-ship__table td { display: block; width: 100%; }
	.pv26-ship__table thead { display: none; }
	.pv26-ship__table tr { padding: 16px 0; border-bottom: 1px solid var(--pv-border-default); }
	.pv26-ship__table td { padding: 4px 0; border: 0; }
	.pv26-ship__table td[data-label]::before { content: attr(data-label); display: block; font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #555; }
}

/* ---------- 7. Footer ---------- */
@media (max-width: 1023px) {
	.pv26-newsletter__inner { grid-template-columns: 1fr !important; gap: 16px; padding: 36px 28px !important; }
	.pv26-newsletter__title { max-width: none; }
	.pv26-newsletter__form { flex-direction: column; }
	.pv26-newsletter__form .pv26-btn { justify-content: center; }
	.pv26-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 28px 0; }
	.pv26-footer__col { padding: 0 20px 0 0 !important; }
	.pv26-footer__col + .pv26-footer__col { border-left: 0 !important; }
	.pv26-footer__col:nth-child(2n+1) { position: relative; }
	.pv26-footer__col:nth-child(n+3) { padding-top: 24px !important; border-top: 1px solid var(--pv-border-default); }
	.pv26-footer__meta { grid-template-columns: 1fr !important; gap: 20px; }
	.pv26-footer__payrow { gap: 10px; }
	.pv26-footer__legal { flex-wrap: wrap; gap: 6px 10px; }
}
@media (max-width: 767px) {
	.pv26-newsletter__inner { padding: 30px 20px !important; border-radius: 20px; }
	.pv26-footer__panel { padding-top: 24px; }
}

/* ---------- 8. Cart, checkout header, account ---------- */
@media (max-width: 1023px) {
	.pv-cart { grid-template-columns: 1fr !important; gap: 24px; }
	.pv-recommendations__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.pv-account { flex-direction: column; gap: 24px; }
	.pv-account__sidebar { flex: 0 0 auto !important; width: 100%; }
	.pv-overview__top { grid-template-columns: 1fr !important; }
}
@media (max-width: 767px) {
	.pv-recommendations__grid { grid-template-columns: 1fr !important; }
	.pv-recommendations__grid > :nth-child(4) { display: flex; }
}

/* ---------- 9. Fixes from the first mobile check ---------- */
@media (max-width: 1023px) {
	/* Shop hero: the copy sits under the photo on the page, so it is black on white, not white on cream. */
	.pv26-shop-hero__media { background: transparent !important; }
	.pv26-shop-hero__media .pv26-shop-hero__img { border-radius: 16px; }
	.pv26-shop-hero__content, .pv26-shop-hero__content .pv26-shop-hero__title, .pv26-shop-hero__content .pv26-shop-hero__intro { color: var(--pv-color-black) !important; }
	.pv26-goals-hero .pv26-shop-hero__media { background: var(--pv-color-grey) !important; padding: 0 0 8px; }
	.pv26-goals-hero .pv26-shop-hero__content, .pv26-goal-hero .pv26-shop-hero__content { padding: 28px var(--pv-edge) 8px; }
	/* Shop filters: label above its chips, the two groups stacked. */
	.pv26-shop-filters { display: grid !important; gap: 10px; }
	.pv26-shop-filters__label { margin: 0 !important; }
	.pv26-shop-filters__label--show { margin-top: 8px !important; }
}
@media (max-width: 1023px) {
	/* Product page order: gallery, summary (title, price, plan, button), then the lifestyle photos (Figma). */
	.pv26-product { display: flex !important; flex-direction: column; gap: 10px; } /* the gallery line sits close to the image and the title (Rein) */
	.pv26-product__media { display: contents; }
	.pv26-gallery { order: 1; }
	.pv26-product__summary { order: 2; }
	.pv26-product__lifestyle { order: 3; }
	/* Hero buttons stack full width. */
	.pv26-shop-hero__content .pv26-btn, .pv26-goal-block__copy .pv26-btn, .pv26-mp__ctas .pv26-btn, .pv26-vc__actions .pv26-btn { white-space: normal; text-align: center; }
	.pv26-shop-hero__ctas, .pv26-shop-hero__actions, .pv26-goal-hero__ctas, .pv26-mp__ctas, .pv26-vc__actions { display: flex; flex-direction: column; gap: 10px; }
	.pv26-shop-hero__ctas .pv26-btn, .pv26-shop-hero__actions .pv26-btn, .pv26-goal-hero__ctas .pv26-btn, .pv26-mp__ctas .pv26-btn, .pv26-vc__actions .pv26-btn { justify-content: center; }
	/* Situations track: wider cards, normal headings. */
	.pv26-goal-situations__card { padding: 32px 20px !important; }
	.pv26-goal-situations__grid > * { flex: 0 0 min(80%, 320px); padding: 24px 20px !important; }
	.pv26-goal-situations__grid h3, .pv26-goal-situations__grid .pv26-h3 { font-size: 20px !important; }
}

/* ---------- 10. Home, round 2 (Rein's review, 2026-09-07) ---------- */
@media (max-width: 1023px) {
	/* Every section heading on small screens: 30px (Rein). */
	.pv26-h2, .pv26-partner__title, .pv26-membership__title, .pv26-goal-block__title, .pv26-product__title, .pv26-tested__title, .pv26-learn__title, .pv26-post__title, .pv26-author__name,
	.pv26-faqp__title, .pv26-faqp__group-title, .pv26-ship__h, .pv26-contact__hero-title, .pv26-contact__h2, .pv26-rv__title, .pv26-ing__title, .pv26-ing__name,
	.pv26-srch__title, .pv26-mp__h2, .pv26-vc__h2, .pv26-quiz-card__title, .pv26-shop-hero__title, .pv26-goals__title, .pv26-about__title, .pv26-team__title { font-size: 30px !important; line-height: 1.05; }
	.pv26-formula__body h3, .pv26-quality__card h3, .pv26-goal-situation h3, .pv26-formula__card h3 { font-size: 20px !important; }
	.pv26-article-card__body h3 { font-size: 18px !important; }
	/* 1. Hero copy white; both buttons the same full-width pill. */
	.pv26-hero__content .pv26-hero__title, .pv26-hero__content .pv26-hero__sub { color: var(--pv-color-white) !important; }
	.pv26-hero__ctas .pv26-btn { width: 100%; height: 48px; justify-content: center; font-size: 14px; }
	/* 2. Trustpilot line, then the scrolling reviews on their own row. */
	.pv26-reviews { flex-wrap: wrap; gap: 12px 16px; }
	.pv26-reviews__ticker { flex: 1 0 100%; }
	/* 3. Orange partner card: product image first, then the copy. */
	.pv26-partner__grid { display: flex !important; flex-direction: column; gap: 20px; }
	.pv26-partner__media { order: -1; }
	.pv26-partner__media img { max-height: 330px; width: auto; transform: none; }
	.pv26-partner .pv26-card { padding: 32px 24px 36px !important; }
	/* 5/6. Swipe tracks start on the heading line and run to the right edge; progress + "1 of N" below. */
	.pv26-formula__grid, .pv26-bestsellers__grid, .pv26-goal-situations__grid { margin: 0 calc(-1 * var(--pv-edge)) 0 0 !important; padding: 0 var(--pv-edge) 6px 0 !important; }
	.pv26-formula__grid > *, .pv26-bestsellers__grid > * { flex: 0 0 min(84%, 320px); }
	.pv26-formula__card { min-height: 0 !important; }
	.pv26-formula__media { position: relative !important; inset: auto !important; height: 220px; }
	.pv26-formula__body { min-height: 0 !important; padding: 24px 22px 28px !important; background: var(--pv-color-grey); backdrop-filter: none; }
	.pv26-mobile-foot { display: flex; align-items: center; gap: 12px; margin-top: 18px; }
	.pv26-mobile-foot .pv26-carousel__progress { flex: 1 1 auto; height: 4px; border-radius: 99px; background: rgba(0, 0, 0, 0.1); overflow: hidden; margin: 0; }
	.pv26-mobile-foot .pv26-carousel__progress span { display: block; height: 100%; border-radius: 99px; background: var(--pv-color-black); }
	.pv26-mobile-foot .pv26-carousel__count, .pv26-carousel__count { flex: none; font-size: 12px; color: #555; white-space: nowrap; }
	.pv26-section-head { display: block !important; }
	.pv26-section-head .pv26-btn { display: none; } /* moved under the progress line by the script */
	.pv26-mobile-btn { margin-top: 18px; }
	.pv26-mobile-btn .pv26-btn { width: auto; }
	/* The quiz card leaves the product track and sits under it as its own block. */
	.pv26-bestsellers .pv26-quiz-card { min-height: 0 !important; margin-top: 28px; padding: 36px 24px !important; }
	/* Existing carousels (quality, articles, goal products): progress + count on one line. */
	.pv26-carousel__count[hidden] { display: none; }
	.pv26-section-head--ondark ~ .pv26-carousel .pv26-carousel__count, .pv26-card--purple .pv26-carousel__count { color: rgba(255, 255, 255, 0.85); }
	.pv26-mobile-foot .pv26-carousel__progress { max-width: none !important; width: auto !important; }
	/* 7/8/9. Purple quality card, grey articles card and the membership card run edge to edge. */
	.pv26-quality, .pv26-articles, .pv26-membership { padding-left: 0 !important; padding-right: 0 !important; }
	.pv26-quality .pv26-card, .pv26-articles__inner, .pv26-membership .pv26-card { border-radius: 0 !important; padding: 40px var(--pv-edge) 44px !important; }
	.pv26-quality .pv26-carousel__track, .pv26-articles .pv26-carousel__track { margin-right: calc(-1 * var(--pv-edge)) !important; padding-right: var(--pv-edge) !important; }
	.pv26-quality__card { flex-basis: min(82%, 300px) !important; min-height: 0 !important; padding: 36px 24px 32px !important; }
	.pv26-article-card { flex-basis: calc((100% - 16px) / 1.2) !important; }
	.pv26-article-card__media { height: 200px; }
	.pv26-article-card__body { padding: 24px 22px 26px !important; }
	.pv26-section-head--ondark .pv26-btn { display: none; }
	.pv26-quality .pv26-mobile-btn .pv26-btn, .pv26-articles .pv26-mobile-btn .pv26-btn { display: inline-flex; }
	/* Membership: photo on top, uncropped, then the copy. */
	.pv26-membership .pv26-partner__grid { display: flex !important; flex-direction: column; gap: 8px; position: static; }
	.pv26-membership .pv26-membership__media { order: -1; position: relative !important; width: 100% !important; height: auto !important; inset: auto !important; margin: 0 0 8px; -webkit-mask-image: none; mask-image: none; }
	.pv26-membership .pv26-membership__media img { width: auto; max-width: 100%; height: auto; max-height: 300px; margin: 0 auto; object-fit: contain; }
	.pv26-membership .pv26-partner__copy { max-width: none; }
	/* 10. Footer: no grey panel, payment marks as a plain wrapped row. */
	.pv26-footer__panel, .pv26-footer__cols { background: transparent !important; border-radius: 0; padding-top: 0; padding-bottom: 0; }
	.pv26-footer__payments { padding: 0 !important; background: transparent !important; gap: 10px 14px; }
	.pv26-footer__payments img, .pv26-footer__payments svg { height: 16px; }
	/* Mobile menu fixes: sub-menus closed by default, the panel fits the visual viewport. */
	.pv26-mobile__sub[hidden] { display: none !important; }
	.pv26-mobile { max-height: calc(100vh - 64px); max-height: calc(100dvh - 64px); }
}
@media (max-width: 767px) {
	.pv26-formula__grid > *, .pv26-bestsellers__grid > * { flex-basis: 84%; }
	.pv26-shop-grid .pv26-product-card__desc { display: none; }
}

/* ---------- 11. Home, round 3 (Rein) ---------- */
@media (max-width: 1023px) {
	/* 1. Formula cards: image flush at the top and the same height in every card, no shadow "gradient". */
	.pv26-formula__card { justify-content: flex-start !important; box-shadow: none !important; }
	.pv26-formula__media { height: 220px !important; }
	.pv26-formula__media img { width: 100% !important; height: 100% !important; object-fit: cover; }
	/* 1/2. Swipe tracks bleed to both screen edges; the first card still sits on the heading line, and when you slide the cards reach the left edge. */
	.pv26-formula__grid, .pv26-bestsellers__grid, .pv26-goal-situations__grid,
	.pv26-quality .pv26-carousel__track, .pv26-articles .pv26-carousel__track, .pv26-goal-products .pv26-carousel__track {
		margin-left: calc(-1 * var(--pv-edge)) !important; margin-right: calc(-1 * var(--pv-edge)) !important;
		padding-left: var(--pv-edge) !important; padding-right: var(--pv-edge) !important;
		scroll-padding-left: var(--pv-edge); scroll-padding-right: var(--pv-edge);
	}
	.pv26-goal-situations__card .pv26-goal-situations__grid { margin-left: -20px !important; margin-right: -20px !important; padding-left: 20px !important; padding-right: 20px !important; }
	/* 3. Membership: copy first, the photo at the bottom running to the screen edges. */
	.pv26-membership .pv26-membership__media { order: 2; width: auto !important; margin: 24px calc(-1 * var(--pv-edge)) calc(-1 * 44px) !important; }
	.pv26-membership .pv26-membership__media img { display: block; }
	.pv26-membership .pv26-membership__media img { width: 100%; max-height: none; object-fit: cover; object-position: 55% 50%; }
	/* 4. Air between the currency switcher and the payment marks. */
	.pv26-footer__payrow { gap: 16px 20px; }
	.pv26-footer__currency { flex: 1 0 100%; }
	/* 5. Language pill in the menu bar sits on the beige like its neighbours. */
	.pv26-mobile__lang .pv-dropdown__toggle { background: transparent; }
}

/* 6. Product cards on touch screens show the bottle only (no hover swap, no swipe — Rein, 2026-09-08). */
@media (max-width: 1023px) { .pv26-product-card__img--alt { display: none !important; } .pv26-product-card__media img { opacity: 1 !important; } }

/* ---------- 12. Tablet landscape / small laptops, 1024–1199px (Rein) ----------
   Desktop layout stays, but the type steps down, the header cells tighten so the nav no longer
   pushes past the screen, the hero is shorter and the footer runs in two rows of three columns. */
@media (min-width: 1024px) and (max-width: 1199px) {
	:root { --pv-edge: 32px; --pv-text-h1: 44px; --pv-text-h2: 34px; }
	.pv26-goal-card__title { font-size: 28px; }
	.pv26-hero__media { height: 540px; }
	.pv26-hero__title { margin-bottom: 26px; }
	.pv26-hero__sub { margin-bottom: 32px; }
	/* Header: 80 → 68px, tighter cells, 13px labels. */
	.pv26-header__bar { height: 68px; padding: 0 var(--pv-edge); }
	.pv26-header__logo { padding-right: 20px; }
	.pv26-header__logo img { height: 40px; }
	.pv26-header__link { padding: 0 13px; font-size: 13px; }
	.pv26-header__actions > * { padding: 0 14px; font-size: 13px; }
	.pv26-header__actions .pv-header__icon svg { height: 17px; }
	/* Footer: six narrow columns → two rows of three. */
	.pv26-footer__cols { grid-template-columns: repeat(3, 1fr); row-gap: 36px; padding: 48px 12px; }
	.pv26-footer__col:nth-child(4) { border-left: 0; }
	.pv26-footer__col:nth-child(n+4) { padding-top: 32px; border-top: 1px solid var(--pv-border-default); }
}

/* The "1 of N" counter is a mobile pattern only (Rein): on desktop the progress line stands alone. */
@media (min-width: 1024px) { .pv26-carousel__count { display: none !important; } }

/* ---------- 13. Below the 1440 board: fixed-pixel two-column grids turn fluid ----------
   The desktop grids are set in board pixels (659 + 659 etc.). Under 1440px they push the page
   wider than the screen (horizontal scroll on laptops, Rein 2026-09-08); the same proportions
   as fractions keep the design and stop the overflow. */
@media (min-width: 1024px) and (max-width: 1439px) {
	.pv26-delivery, .pv26-goal-block, .pv26-goal-intro, .pv26-team__expert, .pv26-post__hero, .pv26-about__hero, .pv26-work__hero,
	.pv26-ship__section { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.pv26-product { grid-template-columns: minmax(0, 659fr) minmax(0, 685fr); }
	.pv26-faq { grid-template-columns: minmax(0, 545fr) minmax(0, 799fr); }
	.pv26-research__card, .pv26-about__founder, .pv26-work__ambition { grid-template-columns: minmax(0, 431fr) minmax(0, 913fr); }
	.pv26-goal-explainer { grid-template-columns: minmax(0, 268fr) minmax(0, 659fr); }
	.pv26-about__cards { grid-template-columns: minmax(0, 774fr) minmax(0, 544fr); }
	.pv26-goal-products .pv26-carousel__progress { width: auto; max-width: none; flex: 1 1 auto; }
}


/* ---------- 14. Goal page per the Figma mobile column (Doel – Energie, 2026-09-08) ----------
   Full-bleed goal-coloured hero with the render on top; intro photo edge to edge; the grey situations
   block and the coloured support block run edge to edge with swipe tracks (line + "1 of N"); the
   explainer icon centred; product cards with the bottle only and the line + count under the track. */
@media (max-width: 1023px) {
	/* Hero */
	.pv26-goal-hero { padding: 0 !important; }
	.pv26-goal-hero .pv26-shop-hero__media { border-radius: 0 !important; padding: 0 0 36px; overflow: hidden; background: var(--pv-lc) center / cover no-repeat, var(--pv-goal) !important; } /* the generic shop-hero rule above made it transparent */
	.pv26-goal-hero .pv26-goals-hero__figure {
		position: relative !important; width: 100% !important; height: 360px !important; margin: 0 !important;
		/* The render dissolves into the goal colour on every side instead of ending on a hard line: the bottom
		   fade carries the copy, the top and sides hide the capsules the file itself cuts off (Rein, 2026-09-08 + 09-10). */
		-webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 12%, #000 58%, transparent 100%), linear-gradient(to right, transparent 0%, #000 10%, #000 90%, transparent 100%);
		mask-image: linear-gradient(to bottom, transparent 0%, #000 12%, #000 58%, transparent 100%), linear-gradient(to right, transparent 0%, #000 10%, #000 90%, transparent 100%);
		-webkit-mask-composite: source-in;
		mask-composite: intersect;
	}
	/* Cover, not contain: the file's cut edges land on the faded figure edges and the bottle in the middle stays whole. */
	.pv26-goal-hero .pv26-goals-hero__figure img { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
	/* The bottle sits right of centre in these wide artworks, so the crop window follows it. */
	.pv26-goal-hero .pv26-goals-hero__figure.is-wide img, .pv26-goal-hero .pv26-goals-hero__figure.is-opaque img { object-fit: cover; object-position: 72% 45% !important; }
	.pv26-goal-hero .pv26-shop-hero__content { position: relative; top: auto; left: auto; transform: none; max-width: none; padding: 8px var(--pv-edge) 0; }
	.pv26-goal-hero .pv26-shop-hero__content .pv26-shop-hero__title, .pv26-goal-hero .pv26-shop-hero__content .pv26-shop-hero__intro { color: var(--pv-goal-ink) !important; }
	/* Both buttons full width: a long primary next to a short outline button looked unaligned (Rein, 2026-09-09). */
	.pv26-goal-hero__ctas { margin-top: 24px; align-items: stretch; }
	.pv26-goal-hero__ctas .pv26-btn { width: 100%; min-width: 0; }
	/* Intro: photo edge to edge, square corners */
	.pv26-goal-intro { padding: 0 !important; margin-top: 0 !important; gap: 0 !important; }
	.pv26-goal-intro__media { height: 320px !important; border-radius: 0 !important; }
	.pv26-goal-intro__copy { padding: 28px var(--pv-edge) 0 !important; }
	/* Situations: grey block edge to edge, cards in a swipe track */
	.pv26-goal-situations { padding: 0 !important; margin-top: 40px !important; }
	.pv26-goal-situations__card { border-radius: 0 !important; padding: 40px var(--pv-edge) 40px !important; }
	.pv26-goal-situations__card .pv26-h2 { margin-bottom: 24px; }
	.pv26-goal-situations__card .pv26-goal-situations__grid { margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; gap: 14px; }
	.pv26-goal-situations__grid > * { flex: 0 0 280px !important; padding: 24px 20px 28px !important; border-radius: 16px; }
	.pv26-goal-situations__card .pv26-btn { margin-top: 24px; }
	/* Explainer: icon centred, no dead space above */
	.pv26-goal-explainer { display: flex !important; flex-direction: column; align-items: center; margin: 48px auto 0 !important; padding: 0 var(--pv-edge) !important; gap: 0; }
	.pv26-goal-explainer__icon { width: 150px !important; height: 150px !important; max-width: none; margin: 0 0 28px; }
	.pv26-goal-explainer__copy { width: 100%; }
	.pv26-goal-explainer__copy .pv26-h2 { max-width: none; margin-bottom: 18px; }
	/* Products: bottle only, line + count under the track, the outline button under that */
	.pv26-goal-products { margin-top: 48px !important; }
	.pv26-goal-products .pv26-product-card { flex: 0 0 280px !important; }
	.pv26-goal-products .pv26-product-card__media { height: 230px !important; }
	.pv26-goal-products__foot { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; gap: 12px 12px; margin-top: 18px; }
	.pv26-goal-products__foot .pv26-carousel__progress { display: block !important; flex: 1 1 120px !important; width: auto !important; max-width: none !important; height: 4px; border-radius: 99px; background: rgba(0, 0, 0, 0.1); overflow: hidden; margin: 0; }
	.pv26-goal-products__foot .pv26-carousel__progress span { display: block; height: 100%; border-radius: 99px; background: var(--pv-color-black); }
	.pv26-goal-products__foot .pv26-carousel__count { flex: none; }
	.pv26-goal-products__foot .pv26-btn { flex: 0 0 auto; margin-top: 12px; }
	.pv26-goal-products__foot .pv26-mobile-foot { flex: 1 1 100%; margin: 0; }
	/* Support ("Choose the support"): coloured block edge to edge, cards in a swipe track, white line */
	.pv26-goal-support { padding: 0 !important; margin-top: 48px !important; }
	.pv26-goal-support__card { border-radius: 0 !important; padding: 40px var(--pv-edge) 36px !important; }
	.pv26-goal-support__head { margin-bottom: 28px; max-width: none; }
	.pv26-goal-support__grid { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv26-goal-support__grid::-webkit-scrollbar { display: none; }
	.pv26-goal-support__item { flex: 0 0 280px; scroll-snap-align: start; padding: 32px 20px 28px !important; }
	.pv26-goal-support__title { font-size: 24px; }
	.pv26-goal-support .pv26-mobile-foot { margin-top: 20px; }
	.pv26-goal-support .pv26-mobile-foot .pv26-carousel__progress { background: rgba(255, 255, 255, 0.35); }
	.pv26-goal-support .pv26-mobile-foot .pv26-carousel__progress span { background: var(--pv-color-white); }
	.pv26-goal-support .pv26-mobile-foot .pv26-carousel__count { color: var(--pv-goal-ink); }
}
@media (max-width: 767px) {
	.pv26-goal-hero .pv26-goals-hero__figure { height: 330px !important; }
	.pv26-goal-intro__media { height: 300px !important; }
	/* Split photos run edge to edge with square corners on phones (Figma) */
	.pv26-goal-block__media, .pv26-delivery__media, .pv26-post__media, .pv26-team__hero .pv26-goal-block__media { margin-left: calc(-1 * var(--pv-edge)) !important; margin-right: calc(-1 * var(--pv-edge)) !important; width: auto !important; border-radius: 0 !important; }
	.pv26-goal-block__media img, .pv26-delivery__media img, .pv26-post__media img { border-radius: 0 !important; }
}

/* ---------- 15. Shop page per the Figma mobile column (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Hero photo edge to edge with square corners, copy under it on the page edge */
	.pv26-shop-hero { padding: 0 !important; }
	.pv26-shop-hero:not(.pv26-goal-hero):not(.pv26-goals-hero) .pv26-shop-hero__media { border-radius: 0 !important; }
	.pv26-shop-hero:not(.pv26-goal-hero):not(.pv26-goals-hero) .pv26-shop-hero__media .pv26-shop-hero__img { border-radius: 0 !important; height: 350px; }
	.pv26-shop-hero:not(.pv26-goal-hero):not(.pv26-goals-hero) .pv26-shop-hero__content { padding: 28px var(--pv-edge) 0; }
	/* "Choose your goal" is a heading on the board */
	.pv26-shop-filters__label { font-size: 26px !important; font-weight: 700 !important; line-height: 1.1; margin-bottom: 4px !important; }
	.pv26-shop-filters__label--show { margin-top: 20px !important; }
}
@media (max-width: 767px) {
	/* Two-up product cards as on the board: type, name, description, price, a normal black button, no chips */
	.pv26-shop-grid .pv26-product-card__chips { display: none !important; }
	.pv26-shop-grid .pv26-product-card__desc { display: block !important; font-size: 13px; color: #555; }
	.pv26-shop-grid .pv26-product-card__media { height: 130px !important; }
	.pv26-shop-grid .pv26-product-card .pv26-btn { font-size: 13px; height: 44px; padding: 0 16px; }
}

/* ---------- 16. Product page per the Figma mobile column (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Goal-page cards: room for three chips on one line (Rein) */
	.pv26-goal-products .pv26-product-card { flex-basis: 300px !important; }
	/* Gallery: on white, no arrows, line + "1 of N" under the image */
	.pv26-gallery { background: var(--pv-color-grey) !important; border-radius: 20px !important; height: 360px !important; } /* same beige card as desktop; the Figma white was the render's own background (Rein, 2026-09-09) */
	.pv26-gallery__arrow { display: none !important; }
	.pv26-gallery__progress { order: 1; width: auto !important; margin: 14px 0 0; }
	.pv26-product__media .pv26-mobile-foot { order: 1; margin: 8px 0 0; }
	.pv26-product__media .pv26-mobile-foot .pv26-gallery__progress { flex: 1 1 auto; order: 0; margin: 0; height: 4px; }
	/* Lifestyle photos: one wide, two squares */
	.pv26-product__lifestyle { grid-template-columns: 1fr 1fr !important; gap: 12px !important; margin-top: 8px; }
	.pv26-product__lifestyle-item { height: 160px !important; border-radius: 16px; }
	.pv26-product__lifestyle-item--1 { grid-column: 1 / -1; height: 220px !important; }
	/* Research: plain, no grey card */
	.pv26-research { margin-top: 56px !important; }
	.pv26-research__card { background: transparent !important; padding: 0 !important; border-radius: 0 !important; }
	/* Reviews: grey block edge to edge, intro full width, link under it, white cards */
	.pv26-product-reviews { margin-top: 56px !important; padding: 40px var(--pv-edge) 36px !important; background: var(--pv-color-grey); }
	.pv26-product-reviews__lead { display: block !important; }
	.pv26-product-reviews__intro { max-width: none !important; }
	.pv26-product-reviews__all { margin-top: 12px; }
	.pv26-product-reviews .pv26-carousel__track { margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; scroll-padding-left: var(--pv-edge); }
	.pv26-product-reviews .pv26-review-card { background: var(--pv-color-white); }
	/* Tested: purple block edge to edge, photo on top, copy under it */
	.pv26-tested { padding: 0 !important; margin-top: 0 !important; }
	.pv26-tested__card { border-radius: 0 !important; display: flex; flex-direction: column; padding: 0 0 40px !important; min-height: 0 !important; }
	.pv26-tested__media { order: -1; position: relative !important; width: 100% !important; height: 320px !important; margin: 0 0 28px !important; inset: auto !important; }
	.pv26-tested__media img { object-position: center; }
	.pv26-tested__copy { padding: 0 var(--pv-edge); max-width: none; }
}

/* Progress line on the dark cards is white (board), not black (Rein, 2026-09-08). */
.pv26-quality .pv26-carousel__progress, .pv26-card--purple .pv26-carousel__progress, .pv26-quality .pv26-mobile-foot .pv26-carousel__progress { background: rgba(255, 255, 255, 0.3) !important; }
.pv26-quality .pv26-carousel__progress span, .pv26-card--purple .pv26-carousel__progress span { background: var(--pv-color-white) !important; }
.pv26-quality .pv26-carousel__count { color: var(--pv-color-white); }

/* ---------- 17. Goals overview + product liposomal block per the board (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Liposomal block on the product page: photo first */
	.pv26-delivery__media { order: -1; }
	.pv26-delivery { gap: 0 !important; }
	.pv26-delivery__copy { padding-top: 28px !important; }
	/* Goals overview hero: photo edge to edge, square, copy on the page edge */
	.pv26-goals-hero { padding: 0 !important; }
	.pv26-goals-hero .pv26-shop-hero__media { border-radius: 0 !important; padding: 0; background: url('../img/lifecells/lifecells-purple.webp') center / cover no-repeat, linear-gradient(108deg, #2a2340 0%, #3c2f5e 34%, #5a3c8c 66%, #7c3f73 100%) !important; }
	.pv26-goals-hero .pv26-goals-hero__figure { margin: 0 !important; height: 360px !important; border-radius: 0; overflow: hidden; }
	.pv26-goals-hero .pv26-goals-hero__figure img { object-fit: cover; }
	.pv26-goals-hero .pv26-shop-hero__content { padding: 28px var(--pv-edge) 0; }
	/* Goal blocks: the goal chip sits on the photo, top left */
	/* The goal chip straddles the top edge of the photo, half on the white, half on the image (Figma) */
	.pv26-goal-block__media { position: relative; overflow: visible !important; }
	.pv26-goal-block__media img { border-radius: 0; }
	.pv26-goal-block__media .pv26-goal-chip { position: absolute; top: 0; left: var(--pv-edge); transform: translateY(-50%); z-index: 2; margin: 0; }
	.pv26-goal-block { padding-top: 16px; }
}

/* ---------- 18. One product slider everywhere + science/liposomal pages per the board (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Every horizontal product track: 310px cards (three chips on one line), bottle 230px, no card hover swap */
	.pv26-bestsellers__grid > .pv26-product-card, .pv26-goal-products .pv26-product-card, .pv26-lipo__products .pv26-product-card, .pv26-mp__products .pv26-product-card,
	.pv-recommendations .pv26-product-card, .pv26-carousel__track > .pv26-product-card, .pv26-srch__products .pv26-product-card, .pv26-ing__products .pv26-product-card {
		flex: 0 0 310px !important; min-height: 0 !important; scroll-snap-align: start;
	}
	.pv26-bestsellers__grid .pv26-product-card__media, .pv26-goal-products .pv26-product-card__media, .pv26-lipo__products .pv26-product-card__media, .pv26-mp__products .pv26-product-card__media,
	.pv-recommendations .pv26-product-card__media, .pv26-carousel__track > .pv26-product-card .pv26-product-card__media { height: 230px !important; }
	.pv26-product-card__chips { flex-wrap: nowrap; white-space: nowrap; }
	/* Science page: the ingredients block is photo on grey edge to edge, copy on white under it */
	.pv26-science-ingredients { display: flex !important; flex-direction: column; background: transparent !important; border-radius: 0 !important; padding: 0 !important; margin-left: calc(-1 * var(--pv-edge)) !important; margin-right: calc(-1 * var(--pv-edge)) !important; }
	.pv26-science-ingredients__media { order: -1; height: 340px !important; margin: 0 !important; background: var(--pv-color-grey); border-radius: 0 !important; -webkit-mask-image: none; mask-image: none; }
	.pv26-science-ingredients__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; } /* fills the block (Rein) */
	.pv26-science-ingredients__copy { padding: 28px var(--pv-edge) 0 !important; }
	.pv26-science-ingredients__text { max-width: none !important; }
	/* Liposomal page: photos edge to edge, square */
	.pv26-lipo__photo, .pv26-lipo__media, .pv26-lipo .pv26-goal-block__media { margin-left: calc(-1 * var(--pv-edge)) !important; margin-right: calc(-1 * var(--pv-edge)) !important; width: auto !important; border-radius: 0 !important; }
	.pv26-lipo__photo img, .pv26-lipo__media img { border-radius: 0 !important; }
}

/* ---------- 19. Liposomal technology page on small screens (Rein, 2026-09-08) ---------- */
@media (max-width: 1023px) {
	.pv26-lipo__hero-actions { display: none !important; }                       /* no hero buttons on mobile */
	.pv26-lipo__what .pv26-science-ingredients__media { display: none !important; } /* the cells render is dropped on mobile */
	.pv26-lipo__what { margin-left: 0 !important; margin-right: 0 !important; }
	.pv26-lipo__what .pv26-science-ingredients__copy { padding: 0 !important; }
	/* "How does it work": purple LifeCells block edge to edge, diagram hidden, the three steps as a swipe track with line + count */
	.pv26-lipo__how { margin: 56px calc(-1 * var(--pv-edge)) 0 !important; padding: 40px var(--pv-edge) 36px !important; border-radius: 0 !important; }
	.pv26-lipo__diagram { display: none !important; }
	.pv26-lipo__steps { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 24px calc(-1 * var(--pv-edge)) 0 !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv26-lipo__steps::-webkit-scrollbar { display: none; }
	.pv26-lipo__step { flex: 0 0 280px; scroll-snap-align: start; display: block !important; padding: 24px 20px 28px; border-radius: 16px; background: rgba(255, 255, 255, 0.12); }
	.pv26-lipo__step .pv26-lipo__num { margin-bottom: 14px; }
	.pv26-lipo__how .pv26-mobile-foot { margin-top: 20px; }
	.pv26-lipo__how .pv26-mobile-foot .pv26-carousel__progress { background: rgba(255, 255, 255, 0.3); }
	.pv26-lipo__how .pv26-mobile-foot .pv26-carousel__progress span { background: var(--pv-color-white); }
	.pv26-lipo__how .pv26-mobile-foot .pv26-carousel__count { color: var(--pv-color-white); }
	/* "What does that give you": orange LifeCells block edge to edge */
	.pv26-lipo__bio { margin: 56px calc(-1 * var(--pv-edge)) 0 !important; padding: 40px var(--pv-edge) 36px !important; border-radius: 0 !important; }
}

/* ---------- 20. Learn tiles two-up on phones, as on the board (2026-09-08) ---------- */
@media (max-width: 767px) {
	.pv26-learn__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	.pv26-tile { border-radius: 16px; }
	.pv26-tile__media { aspect-ratio: 155 / 170; }
	.pv26-tile__body { padding: 14px 14px 16px !important; gap: 10px; min-height: 0 !important; }
	.pv26-tile__title { font-size: 14px !important; line-height: 1.3; font-weight: 400; }
	.pv26-tile__arrow { width: 26px; height: 26px; flex: none; }
}

/* ---------- 21. Goals overview hero, liposomal gap, about/team/work pages (Rein, 2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Goals overview: white copy on the purple LifeCells, room under it, the render fades into the background */
	.pv26-goals-hero .pv26-shop-hero__content { padding: 8px var(--pv-edge) 40px; }
	.pv26-goals-hero .pv26-shop-hero__content, .pv26-goals-hero .pv26-shop-hero__content .pv26-shop-hero__title, .pv26-goals-hero .pv26-shop-hero__content .pv26-shop-hero__intro { color: var(--pv-color-white) !important; }
	.pv26-goals-hero .pv26-goals-hero__figure { -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 62%, transparent 100%); mask-image: linear-gradient(to bottom, #000 0%, #000 62%, transparent 100%); }
	/* Liposomal page: the hero copy ends where the next heading starts */
	.pv26-lipo__hero .pv26-goal-block__copy { padding-bottom: 0 !important; }
	.pv26-lipo__what { margin-top: 32px !important; }
	/* About: the "from science to formula" photo on top, copy on white under it; founder photo edge to edge */
	.pv26-about__science { display: flex !important; flex-direction: column; background: transparent !important; border-radius: 0 !important; padding: 0 !important; margin: 40px calc(-1 * var(--pv-edge)) 0 !important; }
	.pv26-about__science-bg { position: relative !important; inset: auto !important; height: 320px !important; object-position: center; }
	.pv26-about__science-copy { padding: 28px var(--pv-edge) 0 !important; max-width: none !important; }
	.pv26-about__science-copy .pv26-goal-block__title, .pv26-about__science-copy .pv26-about__text { max-width: none !important; }
	.pv26-about__founder { gap: 0 !important; margin-top: 40px !important; }
	.pv26-about__founder-media { margin: 0 calc(-1 * var(--pv-edge)) !important; height: 340px !important; border-radius: 0 !important; }
	.pv26-about__founder-copy { padding-top: 28px; }
	/* Team: expert photo edge to edge, copy on the page edge */
	.pv26-team__photo { margin: 0 calc(-1 * var(--pv-edge)) !important; height: 340px !important; border-radius: 0 !important; }
	.pv26-team__copy { padding: 24px 0 0 !important; }
	/* Work: ambition copy on the page edge, jobs under it */
	.pv26-work__ambition { padding: 0 !important; margin-top: 40px !important; gap: 24px !important; }
	.pv26-work__ambition-copy { padding: 0 !important; }
}

/* ---------- 22. Contact + shipping pages per the board (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Contact: photo edge to edge, square, no dark wash; the copy under it on the page edge; grey form block edge to edge */
	.pv26-contact { padding-left: 0 !important; padding-right: 0 !important; }
	.pv26-contact__hero { display: block !important; height: auto !important; border-radius: 0 !important; background: transparent !important; margin: 0 !important; }
	.pv26-contact__hero::after { display: none !important; }
	.pv26-contact__hero-img { position: relative !important; inset: auto !important; display: block; width: 100%; height: 350px !important; object-fit: cover; }
	.pv26-contact__hero-copy { padding: 28px var(--pv-edge) 0 !important; max-width: none !important; color: var(--pv-color-black) !important; }
	.pv26-contact__hero-title { color: var(--pv-color-black) !important; }
	.pv26-contact__body { padding: 0 !important; margin-top: 8px !important; gap: 0 !important; }
	.pv26-contact__info { padding: 24px var(--pv-edge) 40px !important; }
	.pv26-contact__form { margin: 0 !important; border-radius: 0 !important; padding: 40px var(--pv-edge) 44px !important; background: var(--pv-color-grey); }
	/* Shipping costs: zones as left-aligned rows, price and delivery side by side */
	.pv26-ship__card { border-radius: 0 !important; margin-left: calc(-1 * var(--pv-edge)) !important; margin-right: calc(-1 * var(--pv-edge)) !important; padding: 40px var(--pv-edge) 32px !important; }
	.pv26-ship__card-title { text-align: left !important; margin-bottom: 20px !important; }
	.pv26-ship__table tr { display: grid !important; grid-template-columns: 1fr 1fr; gap: 12px 16px; text-align: left !important; padding: 20px 0 !important; border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
	.pv26-ship__table tr > :first-child { grid-column: 1 / -1; }
	.pv26-ship__table tr > :nth-child(4) { grid-column: 1 / -1; }
	.pv26-ship__table td, .pv26-ship__table th { text-align: left !important; padding: 0 !important; }
	.pv26-ship__table td::before { display: block; font-weight: 700; text-transform: none !important; letter-spacing: 0 !important; font-size: 15px !important; color: var(--pv-color-black) !important; margin-bottom: 2px; }
	.pv26-ship__table thead { display: none !important; }
	.pv26-ship__countries { display: block; font-weight: 400; }
}

/* ---------- 23. About cards, learn head + quiz card, article page (Rein, 2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* About: founder's head stays in frame; the two cards use the newsletter card's inset */
	.pv26-about__founder-media img { object-position: 50% 0 !important; }
	.pv26-about__card { padding: 36px 28px !important; border-radius: 26px; }
	/* Learn: no dead space above the heading; the wide quiz card stacks */
	.pv26-learn__head { padding: 24px 0 0 !important; gap: 18px; }
	.pv26-quiz-card--wide { display: flex !important; flex-direction: column; align-items: flex-start; gap: 16px; padding: 36px 24px !important; min-height: 0 !important; }
	.pv26-quiz-card--wide .pv26-quiz-card__title { max-width: none !important; }
	.pv26-quiz-card__aside { flex: none; width: 100%; }
	.pv26-quiz-card__aside .pv26-quiz-card__text, .pv26-quiz-card--wide .pv26-quiz-card__text { margin: 0 0 18px !important; }
	/* Article: photo first, meta + title under it; the grey body runs edge to edge; cards keep a small inset */
	.pv26-post__hero { display: flex !important; flex-direction: column; gap: 0 !important; padding-top: 0 !important; }
	.pv26-post__media { order: -1; margin: 0 calc(-1 * var(--pv-edge)) 24px !important; width: auto !important; height: 300px !important; border-radius: 0 !important; }
	.pv26-post__main { padding: 0 !important; }
	.pv26-post__body { margin: 32px calc(-1 * var(--pv-edge)) 0 !important; padding: 24px var(--pv-edge) 32px !important; border-radius: 0 !important; }
	.pv26-post__card { padding: 24px 20px !important; border-radius: 16px; }
	/* Featured product strip and the wide rail product stack on small screens */
	.pv26-post-strip { flex-wrap: wrap; gap: 14px 16px; padding: 16px !important; }
	.pv26-post-strip__copy { flex: 1 1 60%; }
	.pv26-post-strip .pv26-btn { flex: 1 1 100%; justify-content: center; }
	.pv26-rail-product--wide { flex-direction: column !important; text-align: center !important; align-items: center !important; padding: 24px 20px !important; }
	.pv26-rail-product--wide .pv26-rail-product__body { align-items: center !important; }
	.pv26-rail-product--wide .pv26-rail-product__actions { flex-direction: column !important; width: 100%; }
	.pv26-rail-product--wide .pv26-rail-product__add { width: 100% !important; justify-content: center; }
	/* "Read more about … here:" on its own line, the linked title under it */
	.pv26-prose__more { flex-wrap: wrap; gap: 8px 10px; }
	.pv26-prose__more-lead { flex: 1 1 calc(100% - 34px); }
	.pv26-prose__more > a, .pv26-prose__more-link { flex: 1 1 100%; padding-left: 34px; }
}
@media (max-width: 767px) {
	.pv26-about__card { padding: 30px 20px !important; border-radius: 20px; }
	.pv26-post__media { height: 260px !important; }
}
@media (max-width: 767px) { .pv26-learn__grid .pv26-quiz-card .pv26-btn { font-size: 13px; height: 44px; padding: 0 20px; } }

/* ---------- 24. Rein's third walk-through: quality, ingredients, FAQ, contact, membership, reviews, Vital Club, legal, blog ToC (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Blog: the "In this article" index is dropped on small screens (it landed under the article) */
	.pv26-post__toc { display: none !important; }
	/* Quality: the four "what is tested" cards and the four steps become swipe tracks; steps block edge to edge */
	.pv26-qp__grid4 { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv26-qp__grid4::-webkit-scrollbar { display: none; }
	.pv26-qp__grid4 > * { flex: 0 0 280px; scroll-snap-align: start; min-height: 0 !important; }
	.pv26-qp__steps { margin: 56px calc(-1 * var(--pv-edge)) 0 !important; padding: 40px var(--pv-edge) 36px !important; border-radius: 0 !important; }
	.pv26-qp__steps-head { text-align: left; max-width: none; margin-bottom: 24px; }
	.pv26-qp__steps .pv26-qp__h2, .pv26-qp__steps-head p { text-align: left !important; max-width: none !important; margin-left: 0 !important; }
	.pv26-qp__steps .pv26-mobile-foot .pv26-carousel__progress { background: rgba(255, 255, 255, 0.3); }
	.pv26-qp__steps .pv26-mobile-foot .pv26-carousel__progress span { background: var(--pv-color-white); }
	.pv26-qp__steps .pv26-mobile-foot .pv26-carousel__count { color: var(--pv-color-white); }
	/* Quality: certificate table becomes a list of batch cards */
	.pv26-qp__filter { flex-direction: column; align-items: stretch !important; gap: 12px; }
	.pv26-qp__filter-field { width: 100%; flex: none !important; min-height: 0 !important; height: auto !important; }
	.pv26-qp__filter select, .pv26-qp__filter input { width: 100% !important; }
	.pv26-qp__table-wrap { overflow: visible !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
	.pv26-qp__table, .pv26-qp__table tbody { display: block; width: 100%; }
	.pv26-qp__table thead { display: none; }
	.pv26-qp__table tr { display: block; padding: 18px 20px; margin: 0 0 12px; border: 1px solid #e5e2dc; border-radius: 16px; background: var(--pv-color-white); }
	.pv26-qp__table tr[hidden] { display: none; }
	.pv26-qp__table td { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 6px 0 !important; border: 0 !important; text-align: right; }
	.pv26-qp__table td::before { content: attr(data-label); flex: 0 0 auto; font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #555; text-align: left; }
	.pv26-qp__table td.pv26-qp__td-product { display: block; padding: 0 0 10px !important; font-weight: 700; font-size: 17px; text-align: left; border-bottom: 1px solid #efece6 !important; margin-bottom: 6px; }
	.pv26-qp__table td.pv26-qp__td-product::before { display: none; }
	.pv26-qp__table td.pv26-qp__td-action { display: block; padding-top: 14px !important; text-align: left; }
	.pv26-qp__table td.pv26-qp__td-action::before { display: none; }
	.pv26-qp__table td.pv26-qp__td-action .pv26-btn { width: 100%; justify-content: center; }
	/* Ingredients: heading + intro above the "jump to" select, nothing squeezed */
	.pv26-ing__head { flex-direction: column !important; align-items: stretch !important; gap: 20px; margin-top: 56px !important; }
	.pv26-ing__head > * { max-width: none !important; }
	.pv26-ing__jump { flex: none !important; width: 100%; }
	.pv26-ing__jump select { width: 100%; }
	/* FAQ: the two buttons at the bottom under each other, a little air under every answer */
	.pv26-faqp__more { display: block !important; padding: 0 !important; margin-top: 40px !important; }
	.pv26-faqp__more-actions { flex-direction: column; align-items: stretch; gap: 10px; }
	.pv26-faqp__more-actions .pv26-btn { justify-content: center; }
	.pv26-accordion__item.is-open .pv26-accordion__a { padding-bottom: 14px; } /* air under an OPEN answer only; padding on the inner div leaked through the closed state */
	/* Contact: the woman stays in frame; the form card sits on the page edge; the select styled like the inputs */
	.pv26-contact__hero-img { object-position: 78% 50% !important; }
	.pv26-contact__body { grid-template-columns: minmax(0, 1fr) !important; }
	.pv26-contact__card { min-width: 0; width: auto !important; margin: 0 !important; padding: 40px var(--pv-edge) 44px !important; border-radius: 0 !important; } /* .pv26-contact already has no side padding on small screens */
	.pv26-contact__form { padding: 0 !important; }
	.pv26-contact__field { min-width: 0; }
	.pv26-contact__field input, .pv26-contact__field textarea, .pv26-contact__field select { width: 100%; box-sizing: border-box; }
	.pv26-contact__field--select { position: relative; display: block; }
	.pv26-contact__field--select select { appearance: none; -webkit-appearance: none; height: 52px; padding: 0 56px 0 20px; border: 1px solid var(--pv-color-black); border-radius: 99px; background: var(--pv-color-white); font: inherit; font-weight: 700; color: var(--pv-color-black); }
	.pv26-contact__field--select::after { content: ''; position: absolute; right: 8px; top: 50%; width: 36px; height: 36px; transform: translateY(-50%); border-radius: 50%; background: var(--pv-color-black) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 14px no-repeat; pointer-events: none; }
	/* Membership: bestsellers and the "why" cards as swipe tracks */
	.pv26-mp__grid, .pv26-mp__cards { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv26-mp__grid::-webkit-scrollbar, .pv26-mp__cards::-webkit-scrollbar { display: none; }
	.pv26-mp__cards > * { flex: 0 0 280px; scroll-snap-align: start; min-height: 0 !important; }
	.pv26-mp__grid > .pv26-product-card { flex: 0 0 310px !important; scroll-snap-align: start; }
	/* Reviews: the score boxes wrap instead of pushing the page wide; cards on the newsletter card's inset; buttons stacked */
	.pv26-rv__sources { flex-wrap: wrap; }
	.pv26-rv__source { min-width: 0 !important; width: 100% !important; flex: 1 1 100% !important; flex-wrap: wrap; }
	.pv26-rv__card { padding: 36px 28px !important; }
	.pv26-rv__more { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
	.pv26-rv__more .pv26-btn { justify-content: center; }
	/* Vital Club: "Use your points" orange block edge to edge with the rewards in a track; tier table readable; less air above the badge */
	.pv26-vc__redeem { margin: 56px calc(-1 * var(--pv-edge)) 0 !important; padding: 40px var(--pv-edge) 36px !important; border-radius: 0 !important; }
	.pv26-vc__options { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv26-vc__options::-webkit-scrollbar { display: none; }
	.pv26-vc__options > * { flex: 0 0 260px; scroll-snap-align: start; }
	.pv26-vc__perks { font-size: 13px !important; }
	.pv26-vc__perks th, .pv26-vc__perks td { padding: 12px 10px !important; }
	.pv26-vc__perks th:first-child, .pv26-vc__perks td:first-child { position: sticky; left: 0; background: var(--pv-color-white); min-width: 150px; }
	.pv26-vc__perks th:not(:first-child), .pv26-vc__perks td:not(:first-child) { width: 72px !important; min-width: 72px; }
	.pv26-vc__perks th { font-size: 11px !important; }
	.pv26-vc__hero .pv26-goal-block__copy { padding-top: 8px !important; }
	.pv26-vc__hero .pv26-goal-block__title { margin-top: 12px !important; }
	/* Legal pages */
	.pv26-legal { padding: 28px var(--pv-edge) 64px; }
	.pv26-legal__title { font-size: 32px; }
	.pv26-legal__body h2 { font-size: 22px; }
	.pv26-legal__body { overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
	.pv26-rv__card { padding: 30px 20px !important; }
}

/* Ingredients closing: buttons under each other, no dead space before the newsletter (Rein, 2026-09-08) */
@media (max-width: 1023px) {
	.pv26-ing__closing { margin-top: 48px !important; margin-bottom: 0 !important; padding-bottom: 0 !important; }
	.pv26-ing__closing-actions { flex-direction: column; align-items: stretch; gap: 10px; }
	.pv26-ing__closing-actions .pv26-btn { justify-content: center; }
	.pv26-ing { padding-bottom: 0 !important; }
}

/* ---------- 25. Cart page on phones (Rein, 2026-09-08) ---------- */
@media (max-width: 900px) {
	.pv-cart { padding: 16px var(--pv-edge) 24px !important; gap: 20px !important; }
	.pv-cart__header { margin-bottom: 8px; }
	/* Each line: thumbnail left, name / badges / controls right, price under the name column */
	.pv-cart__list { border: 0 !important; border-radius: 0 !important; background: transparent !important; overflow: visible !important; }
	.pv-cart-item { display: grid !important; grid-template-columns: 64px minmax(0, 1fr); grid-template-areas: "img details" "img price"; column-gap: 14px !important; row-gap: 6px !important; align-items: start !important; padding: 16px 0 !important; }
	.pv-cart-item + .pv-cart-item { border-top: 1px solid var(--pv-border-default); }
	.pv-cart-item__image { grid-area: img; }
	.pv-cart-item__image img { width: 64px !important; height: 64px !important; }
	.pv-cart-item__details { grid-area: details; gap: 6px !important; }
	.pv-cart-item__name { font-size: 16px !important; line-height: 1.25; }
	.pv-cart-item__name a { text-decoration: none; }
	.pv-cart-item__price { grid-area: price; width: auto !important; padding-left: 0 !important; text-align: left !important; font-size: 16px !important; white-space: normal !important; }
	.pv-cart-item__controls { flex-wrap: wrap; gap: 10px 14px !important; }
	.pv-cart__update { display: none !important; } /* the stepper updates live */
	/* Summary card */
	.pv-summary { padding: 24px 20px !important; border-radius: 16px; }
	/* Sticky bar: readable label, full-height button */
	.pv-cart-sticky { padding: 12px var(--pv-edge) calc(12px + env(safe-area-inset-bottom)) !important; }
	.pv-cart-sticky .pv-btn { color: #fff !important; background: var(--pv-color-black) !important; border-color: var(--pv-color-black) !important; padding: 14px 28px !important; font-size: 15px; }
	/* Recommendations: the site's product slider, not one giant card per row */
	.pv-recommendations { padding: 8px var(--pv-edge) 96px !important; } /* the bottom room is for the sticky bar */
	.pv-recommendations__grid { display: flex !important; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--pv-edge); scrollbar-width: none; margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; }
	.pv-recommendations__grid::-webkit-scrollbar { display: none; }
	.pv-recommendations__grid > * { flex: 0 0 310px !important; display: flex !important; scroll-snap-align: start; }
	/* Routine bump card: stacked */
	.pv-cart .pv-bump--cart { padding: 20px !important; border-radius: 16px; }
}
/* Cart buttons: white label whatever scope the colour variables live in; recommendation bottles do not sit on their caption */
.pv-cart .pv-btn--primary, .pv-cart-sticky .pv-btn--primary, .pv-cart-empty .pv-btn--primary, .pv-cart--empty .pv-btn--primary { color: #fff !important; }
@media (max-width: 1023px) { .pv-recommendations .pv26-product-card__media img { transform: scale(1.12) !important; } }
/* Cart on phones, round 2 (Rein): name flush with the thumbnail, tighter lines; the summary is a full-width beige band without a border */
@media (max-width: 900px) {
	.pv-cart-item__name { margin: 0 !important; }
	.pv-cart-item__details { gap: 4px !important; }
	.pv-cart-item__details .variation { margin: 2px 0 0 !important; }
	.pv-cart-item__badges { margin-top: 2px; }
	.pv-cart-item__controls { margin-top: 6px !important; }
	.pv-cart-item__price { margin-top: 2px; }
	.pv-cart__summary { margin: 8px calc(-1 * var(--pv-edge)) 0 !important; }
	.pv-summary { border: 0 !important; border-radius: 0 !important; background: var(--pv-color-grey) !important; padding: 32px var(--pv-edge) 36px !important; box-shadow: none !important; }
	.pv-summary .pv-rewards { background: var(--pv-color-white); border-color: transparent; }
	.pv-payment-icons { border-top-color: rgba(0, 0, 0, 0.1); }
}

/* ---------- 26. Shop + product page, Rein's fourth walk-through (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Shop hero: the runner sits on the right of the photo */
	.pv26-shop-hero:not(.pv26-goal-hero):not(.pv26-goals-hero) .pv26-shop-hero__media .pv26-shop-hero__img { object-position: 72% 50%; }
	/* Shop: the Show chips become one dropdown (built by rebuild-mobile.js); the goal chips stay chips */
	.pv26-shop-filters__chips.has-select { display: none !important; }
	.pv26-dd { position: relative; margin: 4px 0 8px; }
	.pv26-dd__toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 50px; padding: 0 20px; border: 1px solid var(--pv-color-black); border-radius: 999px; background: var(--pv-color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 20px center / 14px no-repeat; font: inherit; font-size: 15px; font-weight: 400; color: var(--pv-color-black); text-align: left; cursor: pointer; }
	.pv26-dd__toggle[aria-expanded="true"] { border-radius: 25px 25px 0 0; }
	.pv26-dd__menu { position: absolute; z-index: 20; left: 0; right: 0; top: calc(100% - 1px); margin: 0; padding: 6px; list-style: none; border: 1px solid var(--pv-color-black); border-top: 0; border-radius: 0 0 20px 20px; background: var(--pv-color-white); box-shadow: 0 14px 30px rgba(30, 25, 15, 0.12); }
	.pv26-dd__menu[hidden] { display: none; }
	.pv26-dd__option { display: flex; align-items: center; min-height: 44px; padding: 0 14px; border-radius: 12px; font-size: 15px; cursor: pointer; }
	.pv26-dd__option:hover, .pv26-dd__option:focus-visible { background: var(--pv-color-grey); outline: none; }
	.pv26-dd__option.is-active { font-weight: 600; background: var(--pv-color-grey); }
	.pv26-shop-filters__select { display: block; width: 100%; height: 50px; padding: 0 48px 0 20px; border: 1px solid var(--pv-color-black); border-radius: 999px; background: var(--pv-color-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 20px center / 14px no-repeat; appearance: none; -webkit-appearance: none; font: inherit; font-size: 15px; font-weight: 700; color: var(--pv-color-black); margin: 4px 0 8px; }
	/* Product: gallery swipes natively (scroll-snap), less air under it, shorter lifestyle photos */
	.pv26-gallery__track { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; transform: none !important; transition: none !important; -webkit-overflow-scrolling: touch; }
	.pv26-gallery__track::-webkit-scrollbar { display: none; }
	.pv26-gallery__slide { flex: 0 0 100%; scroll-snap-align: start; }
	.pv26-product__summary { padding-top: 6px !important; }
	.pv26-product__lifestyle-item { height: 140px !important; }
	.pv26-product__lifestyle-item--1 { height: 200px !important; }
	/* Plan boxes: title, then the benefits, then the price with "/ month" beside it */
	.pv-purchase-option__body { display: flex !important; flex-direction: column !important; gap: 6px !important; }
	.pv-purchase-option__heading { display: contents !important; }
	.pv-purchase-option__title { order: 1 !important; }
	.pv-purchase-option__text { order: 2 !important; margin: 0 !important; }
	.pv-purchase-option__price { order: 3 !important; margin-top: 4px !important; text-align: left !important; }
	.pv-purchase-option__price > *, .pv-purchase-option__price span { display: inline !important; }
	/* Research: beige card again, all answers closed by default (script) */
	.pv26-research__card { background: var(--pv-color-grey) !important; padding: 24px 20px !important; border-radius: 16px !important; }
	/* Reviews: white section, beige cards, the next card peeks in */
	.pv26-product-reviews { background: transparent !important; padding: 0 var(--pv-edge) !important; }
	.pv26-product-reviews .pv26-review-card { background: var(--pv-color-grey) !important; flex: 0 0 calc(100vw - 2 * var(--pv-edge) - 36px) !important; }
}

/* ---------- 27. Shop cards + product spacing, Rein's fifth pass (2026-09-08) ---------- */
@media (max-width: 1023px) {
	/* Air under the review line before the next section */
	.pv26-product-reviews { padding-bottom: 40px !important; }
	.pv26-product-reviews .pv26-carousel__progress { margin-top: 18px; }
}
@media (max-width: 767px) {
	/* Shop cards: wider and shorter — less padding, tighter gap, a full-width button */
	.pv26-shop-grid { gap: 10px !important; }
	.pv26-shop-grid .pv26-product-card { padding: 12px 12px 16px !important; }
	.pv26-shop-grid .pv26-product-card__media { height: 118px !important; margin: 6px 0 10px !important; }
	.pv26-shop-grid .pv26-product-card__type { font-size: 12px; }
	.pv26-shop-grid .pv26-product-card__name { font-size: 15px; line-height: 1.2; }
	.pv26-shop-grid .pv26-product-card__desc { margin-top: 4px; }
	.pv26-shop-grid .pv26-product-card__price { margin-top: auto !important; padding-top: 8px; } /* keeps price + button on one line across the row */
	.pv26-shop-grid .pv26-product-card .pv26-btn { width: 100%; justify-content: center; margin-top: 10px; }
	.pv26-shop-grid .pv26-product-card__actions { width: 100%; }
}

/* ---------- 28. Tablet band 768–1023: two columns where a phone stacks (Rein, 2026-09-08) ---------- */
@media (min-width: 768px) and (max-width: 1023px) {
	/* Hero buttons side by side and smaller */
	.pv26-goal-hero__ctas, .pv26-shop-hero__ctas, .pv26-shop-hero__actions, .pv26-mp__ctas, .pv26-vc__actions { flex-direction: row !important; flex-wrap: wrap; gap: 12px; }
	.pv26-goal-hero__ctas .pv26-btn, .pv26-shop-hero__ctas .pv26-btn, .pv26-shop-hero__actions .pv26-btn, .pv26-mp__ctas .pv26-btn, .pv26-vc__actions .pv26-btn { width: auto !important; height: 46px; padding: 0 22px; font-size: 14px; }
	.pv26-goal-hero__ctas .pv26-btn--primary { width: auto !important; }
	/* Goals overview: two goal rows side by side */
	.pv26-goals__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	/* Learn: three article tiles */
	.pv26-learn__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
	.pv26-tile__media { aspect-ratio: 431 / 330; }
	/* About, team, work, science: keep the two-column split instead of stacked full-bleed photos */
	.pv26-goal-block, .pv26-about__founder, .pv26-team__expert, .pv26-work__ambition {
		display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; align-items: center; gap: 26px !important;
	}
	.pv26-goal-block__media, .pv26-about__founder-media, .pv26-team__photo { order: 0 !important; height: 380px !important; margin: 0 !important; width: auto !important; border-radius: 26px !important; }
	.pv26-goal-block__media img, .pv26-about__founder-media img, .pv26-team__photo img { border-radius: 26px !important; }
	.pv26-goal-block--photo-left .pv26-goal-block__media { order: -1 !important; }
	.pv26-goal-block__copy { order: 0 !important; padding: 0 !important; }
	.pv26-about__founder-copy, .pv26-team__copy, .pv26-work__ambition-copy { padding: 0 !important; }
	.pv26-about__science { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; align-items: center; margin: 40px 0 0 !important; border-radius: 26px !important; overflow: hidden; }
	.pv26-about__science-bg { height: 100% !important; min-height: 340px; }
	.pv26-about__science-copy { padding: 40px !important; }
	/* Product page: square lifestyle photos, a calmer tested photo, review cards that stay inside the page */
	.pv26-product__lifestyle-item { height: auto !important; aspect-ratio: 1 / 1; }
	.pv26-product__lifestyle-item--1 { grid-column: 1 / -1; aspect-ratio: 2 / 1; }
	.pv26-tested__media { height: 300px !important; }
	.pv26-tested__media img { object-fit: cover; object-position: center 30%; }
}
@media (max-width: 1023px) {
	/* Review cards never run past the page edge */
	.pv26-product-reviews .pv26-carousel__track { margin: 0 calc(-1 * var(--pv-edge)) !important; padding: 0 var(--pv-edge) 4px !important; scroll-padding-left: var(--pv-edge); }
	.pv26-product-reviews .pv26-review-card { flex: 0 0 min(420px, calc(100% - 36px)) !important; }
}

/* ---------- 28. One card padding on phones (Rein, 2026-09-09) ----------
   Review cards, FAQ "more" box, newsletter, research/post/about cards all had their own
   numbers (40/38/30, 26/32, 30/20 …). One value pair, one radius. */
@media (max-width: 767px) {
	.pv26-review-card, .pv26-product-reviews .pv26-review-card, .pv26-faq__more, .pv26-newsletter__inner,
	.pv26-research__card, .pv26-post__card, .pv26-about__card, .pv26-rv__card, .pv26-goal-situations__card,
	.pv26-quiz-card, .pv26-bestsellers .pv26-quiz-card, .pv26-quiz-card--wide, .pv26-ing__card, .pv26-faqp__group,
	.pv26-goal-support__card, .pv26-card:not(.pv26-tested__card), .pv26-about__science {
		padding: 28px 20px !important;
		border-radius: 20px !important;
	}
	/* not the tested card (it carries .pv26-card too): on the product page it is a full-bleed, square block (section 16) */
}

/* ---------- 29. Press page ---------- */
@media (max-width: 1023px) {
	.pv26-press { padding: 0 var(--pv-edge) 52px; }
	.pv26-press__hero { grid-template-columns: 1fr; height: auto; min-height: 0; }
	.pv26-press__hero-figure { position: relative; width: 100%; height: 300px; order: -1; -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 60%, transparent 100%); mask-image: linear-gradient(to bottom, #000 0%, #000 60%, transparent 100%); }
	.pv26-press__hero-copy { padding: 8px var(--pv-edge) 36px; max-width: none; }
	.pv26-press__intro { grid-template-columns: 1fr; gap: 16px; padding-top: 52px; }
	.pv26-press__tiles { grid-template-columns: 1fr; gap: 16px; margin-top: 36px; }
	.pv26-press__tile { height: 420px; }
	.pv26-press__tile-bar { height: 96px; padding: 0 28px; font-size: 24px; }
	.pv26-press__resources, .pv26-press__mentions { margin-top: 52px; }
	.pv26-press__mentions, .pv26-press__enquiry { padding: 28px 20px; border-radius: 20px; }
	.pv26-press__mention { flex-direction: column; gap: 12px; width: min(490px, 82vw); }
	.pv26-press__mention-media { width: 100%; height: 220px; }
	.pv26-press__mention-card { width: 100%; height: auto; padding: 24px 20px; }
	.pv26-press__h2 { font-size: var(--pv-text-h2); }
}
