/* Evopure LipScore layer (evopure-lipscore.php + lipscore.js). Our own star components carry LipScore's real numbers; LipScore's
   widgets are styled into the system: DM Sans, navy, 1px navy-10% outlines, the 8px signature corner, no shadows, navy stars. */

:root { --evo-verified: #3E5B3A; }
/* homepage hero: the "★★★★★ Rated 4.8/5" line links to the reviews (evopure-lipscore.php); hover only */
.evo-hero__rating { color: inherit !important; text-decoration: none !important; }
.evo-hero__rating:hover, .evo-hero__rating:focus-visible { text-decoration: underline !important; text-underline-offset: 4px; text-decoration-thickness: 1px; }      /* THE verified mark: deep moss green. 6.3:1 as text on --evo-wash, 7.6:1 on white (WCAG AA) */

/* the LipScore widget that only supplies data: in the DOM, invisible */
.evo-ls-r .evo-ls-src, .evo-ls-service .evo-ls-src { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }

/* rating boxes keep their room from the first paint and appear only with real data (no layout shift, never a placeholder) */
.evo-ls-r { position: relative; }
.evo-ls-r:not(.is-ls-on) { visibility: hidden; }
.evo-ls-r.is-ls-on { visibility: visible; animation: evo-ls-in 260ms ease-out both; }
@keyframes evo-ls-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .evo-ls-r.is-ls-on { animation: none; } }

/* product card (.evo-pcard): the existing row spec in chrome.css (min-height 16px) holds the space */
.evo-pcard__rating.evo-ls-r .evo-pcard__count span span { color: inherit; }

/* PDP: stars beside the tag pill, a link to the review list */
.evo-pdp-topline:has(.evo-ls-r) { min-height: 23px; }
.evo-pdp-topline .evo-card-rating.evo-ls-r { text-decoration: none !important; color: var(--e-global-color-navy); }
.evo-pdp-topline .evo-card-rating.evo-ls-r:hover .evo-rating-count, .evo-pdp-topline .evo-card-rating.evo-ls-r:focus-visible .evo-rating-count { text-decoration: underline; text-underline-offset: 3px; }
.evo-pdp-topline .evo-card-rating.evo-ls-r .evo-rating-count { white-space: nowrap; }

/* collection wide card: right end of the meta row */
.evo-wcard__rating { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; color: var(--evo-navy, #1D293B); }
.evo-wcard__rating .evo-pcard__count { font-size: 12.5px; }

/* store rating line: footer (chrome.css .evo-footer .evo-stars), the collection proof band, the Reviews page */
.evo-ls-service .evo-stars__text [data-evo-ls-score] { font: inherit; }
.evo-ls-service--proof { grid-column: 1 / -1; display: inline-flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; justify-self: start; text-decoration: none !important; color: var(--e-global-color-white, #fff); }
.evo-ls-service--proof .evo-stars__base { color: color-mix(in srgb, var(--e-global-color-white, #fff) 28%, transparent); }
.evo-ls-service--proof .evo-stars__fill { color: var(--e-global-color-white, #fff); }
.evo-ls-service--proof .evo-stars__text, .evo-ls-service--page .evo-stars__text { font-family: var(--e-global-typography-subheadcaps-font-family), sans-serif; font-weight: var(--evo-caps-w, 600); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.evo-ls-service--proof .evo-stars__count { color: color-mix(in srgb, var(--e-global-color-white, #fff) 70%, transparent); font-weight: 500; }
.evo-ls-service--page { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; text-decoration: none !important; color: var(--evo-navy, #1D293B); }
.evo-ls-service--page .evo-stars__row { position: relative; display: inline-block; line-height: 0; white-space: nowrap; }
.evo-ls-service--page .evo-stars__base, .evo-ls-service--page .evo-stars__fill { display: inline-flex; gap: 3px; }
.evo-ls-service--page .evo-stars__base { color: color-mix(in srgb, var(--evo-navy, #1D293B) 20%, transparent); }
.evo-ls-service--page .evo-stars__fill { position: absolute; left: 0; top: 0; overflow: hidden; color: var(--evo-navy, #1D293B); }
.evo-ls-service--page .evo-stars__base svg, .evo-ls-service--page .evo-stars__fill svg { flex: none; display: block; width: 18px; height: 18px; }
.evo-ls-service--page .evo-stars__text { color: var(--evo-navy, #1D293B); }
.evo-ls-service--page .evo-stars__count { color: var(--evo-slate, #596C74); font-weight: 500; }

/* list sections: hidden when the product has no reviews (or LipScore is unreachable) */
.evo-ls-section.is-ls-none { display: none !important; }
.evo-spine.evo-spine--reviews { background: var(--evo-spine-grey, #E7EAEB); scroll-margin-top: calc(var(--evo-header-h, 76px) + 16px); }
.evo-spine.evo-spine--reviews .evo-spine__head { margin-bottom: 28px; }
.evo-ls-page { padding: clamp(48px, 5.6vw, 84px) 24px; background: var(--e-global-color-wash, #E7EAEB); }
.evo-ls-page__in { max-width: 960px; margin: 0 auto; }
.evo-ls-page__head { margin: 0 0 24px; }
@media (max-width: 767px) { .evo-ls-page { padding: 44px 16px; } }

/* ---------- LipScore review list (v2, 2026-10-05): grey band, white cards, navy accents. NO cream or sand anywhere in the band.
   LipScore draws the list; lipscore.js adds the structure (clamps, reply toggle, distribution bars, "Show more reviews"). ---------- */
.evo-spine.evo-spine--reviews { background: var(--evo-wash, #E7EAEB) !important; }
.evo-spine.evo-spine--reviews .evo-spine__title { color: var(--evo-navy, #1D293B); }
.evo-ls-reviews { --evo-ls-corner: var(--evo-radius-card, 24px); --evo-ls-cap: var(--e-global-typography-subheadcaps-font-family), "Helvetica Neue", Arial, sans-serif;
	--evo-ls-serif: var(--e-global-typography-h2-font-family), "new-spirit", Georgia, serif; --evo-ls-body: var(--e-global-typography-body-font-family, "DM Sans"), "DM Sans", sans-serif;
	max-width: 960px; margin: 0 auto; color: var(--evo-charcoal, #2B2B2B); }
.evo-ls-reviews[data-corner="sig"] { --evo-ls-corner: var(--evo-radius-sig, 8px); }
.evo-ls-reviews :is(div, span, p, a, button, article, time, strong, li):not([class*="icon"]):not([class*="thumb"]):not(.lipscore-review-author):not(.lipscore-review-summary-badge-rating) { font-family: var(--evo-ls-body) !important; box-shadow: none !important; text-shadow: none !important; }
/* stars: navy on a 20% navy track */
.evo-ls-reviews .lipscore-rating-star, .evo-ls-reviews .lipscore-rating-star path, .evo-ls-reviews svg.lipscore-svg-rating-star { fill: var(--evo-navy, #1D293B) !important; }
.evo-ls-reviews .lipscore-rating-star.lipscore-rating-star-inactive, .evo-ls-reviews .lipscore-rating-star.lipscore-rating-star-inactive path,
.evo-ls-reviews .lipscore-star-incomplete .lipscore-star-last-half, .evo-ls-reviews .lipscore-star-incomplete .lipscore-star-last-half path { fill: color-mix(in srgb, var(--evo-navy, #1D293B) 20%, transparent) !important; }

/* SUMMARY: the big score in New Spirit, navy bars on the grey, the LipScore "real reviews" mark kept as our trust signal */
.evo-ls-reviews .lipscore-review-summary { position: relative; margin: 0 0 28px !important; padding: 0 0 28px !important; border-bottom: 1px solid var(--evo-line) !important; background: transparent !important; }
.evo-ls-reviews .lipscore-review-summary-content { display: grid !important; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: clamp(24px, 5vw, 64px); align-items: center; justify-content: start; }
.evo-ls-reviews .lipscore-review-summary-badge { order: -1; text-align: left !important; margin: 0 !important; }
.evo-ls-reviews .lipscore-review-summary-badge-content { display: grid; justify-items: start; gap: 8px; }
.evo-ls-reviews .lipscore-review-summary-badge-rating { font-family: var(--evo-ls-serif) !important; font-style: italic; font-weight: 700 !important; font-size: clamp(56px, 6vw, 76px) !important; line-height: .9 !important; letter-spacing: -.02em; color: var(--evo-navy, #1D293B) !important; }
.evo-ls-reviews .lipscore-review-summary-badge-stars svg { width: 20px !important; height: 20px !important; }
.evo-ls-reviews .lipscore-review-summary-badge-votes { margin: 0 !important; font-family: var(--evo-ls-cap) !important; font-weight: var(--evo-caps-w, 600) !important; font-size: 10.5px !important; line-height: 1.5 !important; letter-spacing: .14em !important; text-transform: uppercase; color: var(--evo-slate, #596C74) !important; text-align: left !important; }
.evo-ls-reviews .lipscore-review-summary-distribution, .evo-ls-reviews .lipscore-rating-distribution, .evo-ls-reviews .lipscore-rating-distribution-content { display: block !important; width: 100% !important; max-width: 460px; float: none !important; }
.evo-ls-reviews .lipscore-rating-distribution-row { display: grid !important; grid-template-columns: auto minmax(0, 1fr) 2.6em; align-items: center; gap: 14px; width: 100% !important; margin: 0 0 6px !important; padding: 2px 0 !important; background: transparent !important; border: 0 !important; cursor: pointer; }
.evo-ls-reviews .lipscore-rating-distribution-row:hover .evo-ls-bar i, .evo-ls-reviews .lipscore-rating-distribution-row:focus-visible .evo-ls-bar i { background: var(--evo-navy-soft, #2C3B52); }
.evo-ls-reviews .lipscore-rating-distribution-stars svg { width: 13px !important; height: 13px !important; }
.evo-ls-bar { position: relative; display: block; height: 6px; background: var(--e-global-color-white, #fff); overflow: hidden; }
.evo-ls-bar i { position: absolute; inset: 0 auto 0 0; background: var(--evo-navy, #1D293B); transition: width var(--evo-t-section, 400ms) var(--evo-ease, ease); }
.evo-ls-reviews .lipscore-rating-distribution-count { font-size: 13px !important; font-weight: 500 !important; color: var(--evo-navy, #1D293B) !important; text-align: right; font-variant-numeric: tabular-nums; }
.evo-ls-reviews .lipscore-real-reviews-badge-container { position: absolute; right: 0; top: 0; }
.evo-ls-reviews .lipscore-review-list > .lipscore-real-reviews-badge-container, .evo-ls-reviews .lipscore-review-list-container > .lipscore-real-reviews-badge-container { display: none; }
.evo-ls-reviews .lipscore-ai-summary:empty { display: none; }

/* FILTER: one outline button */
.evo-ls-reviews .lipscore-review-list-filters { margin: 0 0 16px !important; }
.evo-ls-reviews .lipscore-review-list-filters-toggle, .evo-ls-reviews .lipscore-review-list-filter-toggle-btn { display: inline-flex !important; align-items: center; gap: 8px; padding: 10px 14px !important; border: 1px solid var(--evo-navy, #1D293B) !important; border-radius: 0 !important; background: transparent !important; color: var(--evo-navy, #1D293B) !important; font-family: var(--evo-ls-cap) !important; font-weight: var(--evo-caps-w, 600) !important; font-size: 11px !important; letter-spacing: .14em !important; text-transform: uppercase; text-decoration: none !important; }
.evo-ls-reviews .lipscore-review-list-filters-toggle:hover { background: var(--evo-navy, #1D293B) !important; color: var(--e-global-color-white, #fff) !important; }
.evo-ls-reviews .lipscore-dropdown-menu { background: var(--e-global-color-white, #fff) !important; border: 1px solid var(--evo-line) !important; border-radius: 0 var(--evo-radius-sig, 8px) 0 0 !important; }

/* THE REVIEW CARD: white, 1px line, the top-right corner only */
.evo-ls-reviews .lipscore-review-box { margin: 0 0 12px !important; padding: clamp(18px, 2.2vw, 26px) !important; background: var(--e-global-color-white, #fff) !important; border: 1px solid var(--evo-line) !important; border-radius: 0 var(--evo-ls-corner) 0 0 !important; }
.evo-ls-reviews .lipscore-review-box.evo-ls-off { display: none !important; }
.evo-ls-reviews .lipscore-review-header { display: flex !important; align-items: flex-start; justify-content: space-between; gap: 12px; margin: 0 0 12px !important; }
.evo-ls-reviews .lipscore-review-creation-info { display: flex !important; flex-flow: row wrap !important; align-items: baseline; gap: 4px 12px !important; margin: 0 0 8px !important; padding: 0 !important; }
.evo-ls-reviews .lipscore-review-creation-info > span { padding: 0 !important; line-height: 1.3 !important; }
.evo-ls-reviews .lipscore-review-creation-info > span:first-child { display: inline !important; }
.evo-ls-reviews .lipscore-widget-lang:empty { display: none !important; }
.evo-ls-reviews .lipscore-review-info-wrapper { display: grid !important; gap: 8px; }
.evo-ls-reviews .lipscore-review-creation-info *, .evo-ls-reviews .lipscore-review-info-wrapper > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.evo-ls-reviews .lipscore-review-footer-wrapper * { float: none !important; text-align: left !important; margin-left: 0 !important; }
.evo-ls-reviews .lipscore-review-footer-wrapper, .evo-ls-reviews .lipscore-review-imported-wrapper { display: block !important; width: auto !important; }
.evo-ls-reviews .lipscore-review-imported { white-space: nowrap; }
/* reviewer names: the site's caps label (Neue Haas, caps weight, eyebrow letter-spacing), everywhere a name shows */
.evo-ls-reviews .lipscore-review-author, .evo-ls-reviews .lipscore-review-author.lipscore-strong, .evo-ls-name {
	font-family: var(--e-global-typography-subheadcaps-font-family), "Helvetica Neue", Arial, sans-serif !important; font-style: normal !important; font-weight: var(--evo-caps-w, 600) !important;
	font-size: 12.5px !important; line-height: 1.3 !important; letter-spacing: .16em !important; text-transform: uppercase; color: var(--evo-navy, #1D293B) !important; }
.evo-ls-date { font-family: var(--e-global-typography-subheadcaps-font-family), sans-serif; font-weight: var(--evo-caps-w, 600); font-size: 10px; line-height: 1.3; letter-spacing: .14em; text-transform: uppercase; color: var(--evo-slate, #596C74); }
/* the review date only: the purchase date is hidden, the BUYER badge stays */
.evo-ls-reviews .lipscore-review-purchase-info { display: none !important; }
.evo-ls-reviews .lipscore-review-purchase { display: none !important; }      /* replaced by our green Verified buyer / Verified review badge (lipscore.js) */
.evo-ls-reviews .lipscore-review-header > .evo-ls-badge { align-self: flex-start; margin-top: 2px; }
.evo-ls-reviews .lipscore-review-info-delim { display: none !important; }
.evo-ls-reviews .lipscore-review-date, .evo-ls-reviews .lipscore-review-purchase-info, .evo-ls-reviews .lipscore-review-purchase, .evo-ls-reviews .lipscore-review-purchase * , .evo-ls-reviews .lipscore-review-imported, .evo-ls-reviews .lipscore-review-origin {
	font-family: var(--evo-ls-cap) !important; font-weight: var(--evo-caps-w, 600) !important; font-size: 10px !important; line-height: 1.4 !important; letter-spacing: .14em !important; text-transform: uppercase; color: var(--evo-slate, #596C74) !important; }
.evo-ls-reviews .lipscore-review-rating-stars-wrapper svg { width: 15px !important; height: 15px !important; }
.evo-ls-reviews .lipscore-review-purchase { text-align: right; flex: none; }
.evo-ls-reviews .lipscore-review-purchase-icon { display: flex !important; flex-direction: column; align-items: flex-end; gap: 4px; }
.evo-ls-reviews .lipscore-review-purchase-icon-badge { filter: grayscale(1) brightness(.35); }
.evo-ls-reviews .lipscore-review-content, .evo-ls-reviews .lipscore-review-content-wrapper { background: transparent !important; border: 0 !important; padding: 0 !important; margin: 0 !important; }
.evo-ls-reviews .lipscore-review-text { font-weight: var(--e-global-typography-body-font-weight, 300) !important; font-size: 16px !important; line-height: 1.6 !important; color: var(--evo-charcoal, #2B2B2B) !important; }
.evo-ls-reviews .lipscore-review-text.evo-ls-clamp:not(.is-open) { display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4; overflow: hidden; }
.evo-ls-more-btn, .evo-ls-reply-btn { display: inline-flex; align-items: center; gap: 6px; margin: 10px 0 0; padding: 0; border: 0; background: none; cursor: pointer; font-family: var(--evo-ls-cap, sans-serif) !important; font-weight: var(--evo-caps-w, 600); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--evo-navy, #1D293B); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.evo-ls-more-btn:hover, .evo-ls-reply-btn:hover { text-decoration-thickness: 2px; }
/* the Evopure reply: a navy box, the same corner, collapsed to two lines */
.evo-ls-reviews .lipscore-review-reply { position: relative; margin: 16px 0 0 !important; padding: 14px 18px !important; background: var(--evo-navy, #1D293B) !important; border: 0 !important; border-radius: 0 var(--evo-ls-corner) 0 0 !important; color: var(--e-global-color-white, #fff) !important; }
.evo-ls-reviews .lipscore-review-reply::before { display: none !important; }
.evo-ls-reviews .lipscore-review-reply, .evo-ls-reviews .lipscore-review-reply * { color: var(--e-global-color-white, #fff) !important; font-size: 14px !important; line-height: 1.55 !important; font-weight: var(--e-global-typography-body-font-weight, 300) !important; }
.evo-ls-reviews .lipscore-review-reply .lipscore-strong { font-weight: 600 !important; }
.evo-ls-reviews .lipscore-review-reply .lipscore-review-date { color: color-mix(in srgb, var(--e-global-color-white, #fff) 70%, transparent) !important; font-size: 10px !important; letter-spacing: .14em !important; }
.evo-ls-reviews .lipscore-review-reply.evo-ls-reply:not(.is-open) .evo-ls-reply__body { max-height: calc(2 * 1.55 * 14px); overflow: hidden; }
.evo-ls-reviews .lipscore-review-reply .evo-ls-reply-btn { color: var(--e-global-color-white, #fff) !important; font-size: 10px !important; }
/* no votes, no report flag */
.evo-ls-reviews .lipscore-review-vote-wrapper, .evo-ls-reviews .lipscore-review-flag-wrapper, .evo-ls-reviews .lipscore-review-footer { display: none !important; }
.evo-ls-reviews .lipscore-review-footer-wrapper { margin: 14px 0 0 !important; padding: 0 !important; background: transparent !important; text-align: left !important; }
.evo-ls-reviews .lipscore-review-imported-wrapper, .evo-ls-reviews .lipscore-review-origin { float: none !important; text-align: left !important; margin: 0 !important; }
.evo-ls-reviews .lipscore-review-reply.evo-ls-reply:not(.is-open) .evo-ls-reply__body * { margin-top: 0 !important; margin-bottom: 0 !important; }
.evo-ls-reviews .lipscore-review-footer-wrapper:not(:has(:not(:empty))) { display: none !important; }
/* SHOW MORE, then (only past 50) LipScore's own pages in a minimal row */
.evo-ls-showmore { display: flex; justify-content: center; margin: 24px 0 0; }
.evo-ls-showmore button { padding: 16px 28px; border: 1px solid var(--evo-navy, #1D293B); border-radius: 0; background: transparent; color: var(--evo-navy, #1D293B); cursor: pointer; font-family: var(--evo-ls-cap, sans-serif) !important; font-weight: var(--evo-caps-w, 600); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; transition: background var(--evo-t-hover, 250ms), color var(--evo-t-hover, 250ms); }
.evo-ls-showmore button:hover, .evo-ls-showmore button:focus-visible { background: var(--evo-navy, #1D293B); color: var(--e-global-color-white, #fff); }
.evo-ls-reviews.has-more .lipscore-paginator { display: none !important; }
.evo-ls-reviews .lipscore-paginator { display: flex !important; justify-content: center; gap: 6px; margin: 24px 0 0 !important; padding: 0 !important; list-style: none; }
.evo-ls-reviews .lipscore-paginator li a { display: inline-flex; min-width: 36px; height: 36px; align-items: center; justify-content: center; border: 1px solid var(--evo-line) !important; border-radius: 0 !important; background: var(--e-global-color-white, #fff) !important; color: var(--evo-navy, #1D293B) !important; font-family: var(--evo-ls-cap) !important; font-size: 11px !important; letter-spacing: .1em; text-decoration: none !important; }
.evo-ls-reviews .lipscore-paginator li.active a { background: var(--evo-navy, #1D293B) !important; border-color: var(--evo-navy, #1D293B) !important; color: var(--e-global-color-white, #fff) !important; }
.evo-ls-reviews a { color: var(--evo-navy, #1D293B); }
@media (max-width: 767px) {
	.evo-ls-reviews .lipscore-review-summary-content { grid-template-columns: 1fr; gap: 20px; }
	.evo-ls-reviews .lipscore-real-reviews-badge-container { top: 6px; }
	.evo-ls-reviews .lipscore-review-text { font-size: 15px !important; }
}

/* homepage slider: a real LipScore review without a verified purchase loses the tick disc */
.evo-review__verified .elementor-heading-title[data-evo-ls-unverified]::before { display: none !important; }
.evo-review__avatar:not(:has(img)) { display: none !important; }      /* placeholder avatar removed: no empty gap before the name */


/* ---------- buy box review (round 4): ONE unit on the PDP's white card. Rating line (stars · score · via Lipscore) → quote (DM Sans body) → name · date · tick badge. No inner rules. ---------- */
.evo-pdp-review.evo-ls-snip { display: grid; gap: 10px; min-height: 0; padding: 18px 20px 16px; align-content: start; background: var(--evo-wash, #E7EAEB); border-radius: 0 var(--evo-radius-sig, 8px) 0 0; }
.evo-ls-snip__trust { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; margin: 0; padding: 0; border: 0; text-decoration: none !important; }
.evo-ls-snip__line { font-family: var(--e-global-typography-body-font-family), sans-serif; font-weight: 300; font-size: 13px; line-height: 1.3; color: var(--evo-slate, #596C74); }
.evo-ls-snip__line strong { font-weight: 600; color: var(--e-global-color-navy, #1D293B); }
.evo-ls-snip__trust:hover .evo-ls-snip__line, .evo-ls-snip__trust:focus-visible .evo-ls-snip__line { text-decoration: underline; text-underline-offset: 3px; }
.evo-ls-snip__items { display: grid; }
.evo-ls-snip__item { display: none; gap: 8px; align-content: start; margin: 0; }
.evo-ls-snip__item.is-on { display: grid; }      /* only the chosen review takes room: no reserved space under a short one (the card sits below the CTA, so nothing above it moves) */
.evo-ls-snip__quote { margin: 0; padding: 0; border: 0; font-family: var(--e-global-typography-body-font-family), sans-serif; font-style: normal; font-weight: 300; font-size: 16.5px; line-height: 1.55; color: var(--e-global-color-charcoal, #2B2B2B); }
.evo-ls-snip__quote > span { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
.evo-ls-snip__more { justify-self: start; font-family: var(--evo-pdp-caps, sans-serif); font-weight: var(--evo-caps-w, 600); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--e-global-color-navy, #1D293B); text-decoration: underline; text-underline-offset: 4px; }
.evo-ls-snip__more[hidden] { display: none; }
.evo-ls-snip__who, .evo-lsx__who { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin: 4px 0 0; font-style: normal; }
/* the verified mark: the site's success mark (navy disc + white tick, as in every notice); muted when LipScore has no purchase on file */
.evo-ls-badge { display: inline-flex; align-items: center; gap: 7px; margin-left: auto; font-family: var(--e-global-typography-subheadcaps-font-family), sans-serif; font-weight: var(--evo-caps-w, 600); font-size: 10px; line-height: 1; letter-spacing: .14em; text-transform: uppercase; color: var(--evo-verified, #3E5B3A); white-space: nowrap; }
.evo-ls-tick { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 18px; height: 18px; border-radius: 50%; background: var(--evo-verified, #3E5B3A); color: var(--e-global-color-white, #fff); }
.evo-ls-tick svg { width: 11px; height: 11px; }
@media (max-width: 767px) { .evo-pdp-review.evo-ls-snip { padding: 16px 16px 14px; } .evo-ls-snip__quote { font-size: 16px; } }

/* the theme paints every button pink on hover/focus: not ours */
:is(.evo-lsx__nav, .evo-lsx__dot, .evo-ls-more-btn, .evo-ls-reply-btn, .evo-ls-showmore button):is(:hover, :focus, :active) { background-color: transparent; color: var(--evo-navy, #1D293B); border-color: var(--evo-navy, #1D293B); }
.evo-lsx__nav:is(:hover, :focus-visible), .evo-ls-showmore button:is(:hover, :focus-visible) { background-color: var(--evo-navy, #1D293B) !important; color: var(--evo-white, #fff) !important; }
.evo-lsx__nav:focus:not(:focus-visible), .evo-ls-showmore button:focus:not(:focus-visible) { background-color: transparent !important; color: var(--evo-navy, #1D293B) !important; }
.evo-ls-reviews .lipscore-review-reply .evo-ls-reply-btn:is(:hover, :focus, :active) { color: var(--evo-white, #fff) !important; background: transparent !important; }

/* ---------- "Write a review" in the reviews band head: shown only when LipScore's rating window is available ---------- */
.evo-ls-write { margin: 20px 0 0; text-align: center; }
.evo-ls-write__panel { margin: 16px auto 0; padding: 18px 20px; max-width: 420px; background: var(--e-global-color-white, #fff); border: 1px solid var(--evo-line); border-radius: 0 var(--evo-radius-sig, 8px) 0 0; }
.evo-ls-write__hint { margin: 0 0 10px !important; font-size: 14px !important; color: var(--evo-slate, #596C74) !important; }
.evo-ls-write__src .lipscore-rating-star { fill: var(--evo-navy, #1D293B) !important; }

/* ---------- announcement bar (B2): the review message keeps the bar's one-line height ---------- */
.evo-announce__msg { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }

/* ---------- homepage "In their words" (round 4): image = the WHOLE left half (full-bleed, full height, cover round the box); everything else on the right ---------- */
.evo-reviews:has(.evo-lsx) { padding: 0 !important; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.evo-reviews:has(.evo-lsx) > .e-con-inner { max-width: none !important; width: 100% !important; padding: 0 !important; gap: 0 !important; }
.evo-reviews:has(.evo-lsx) .evo-reviews__head, .evo-reviews:has(.evo-lsx) .evo-reviews__track { display: none !important; }
.evo-lsx { --evo-lsx-pos: 0; position: relative; display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; }
.evo-lsx.has-media { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 560px; background: var(--evo-wash, #E7EAEB); }      /* every review surface sits on the cool wash */
.evo-lsx__media { position: relative; overflow: hidden; background: var(--evo-wash, #E7EAEB); line-height: 0; }
.evo-lsx__img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; }
.evo-lsx__dots { position: absolute; inset: 0; }
.evo-lsx__dot { position: absolute; width: 44px; height: 44px; margin: -22px 0 0 -22px; padding: 0; border: 0; background: none; cursor: pointer; }
.evo-lsx__dot span { position: absolute; left: 50%; top: 50%; width: 14px; height: 14px; margin: -7px 0 0 -7px; border-radius: 50%; background: var(--evo-white, #fff); box-shadow: 0 0 0 1.5px var(--evo-navy, #1D293B); transition: transform var(--evo-t-hover, 250ms) var(--evo-ease, ease), background var(--evo-t-hover, 250ms); }
.evo-lsx__dot.is-on span { transform: scale(1.45); background: var(--evo-navy, #1D293B); box-shadow: 0 0 0 3px var(--evo-white, #fff); }
.evo-lsx__dot.is-on::after { content: ""; position: absolute; left: 50%; top: 50%; width: 40px; height: 40px; margin: -20px 0 0 -20px; border-radius: 50%; border: 1.5px solid var(--evo-white, #fff); animation: evo-lsx-ping 1.8s var(--evo-ease, ease) infinite; }
@keyframes evo-lsx-ping { 0% { transform: scale(.5); opacity: 1; } 100% { transform: scale(1.3); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .evo-lsx__dot.is-on::after { animation: none; opacity: .8; } }
.evo-lsx__dot:focus-visible { outline: 2px solid var(--evo-navy, #1D293B); outline-offset: 2px; border-radius: 50%; }
.evo-lsx__body { display: grid; gap: 14px; align-content: center; min-width: 0; max-width: 640px; padding: clamp(32px, 3.2vw, 48px) clamp(24px, 5vw, 80px); }
.evo-lsx__head { display: grid; gap: 8px; }
.evo-lsx__title { margin: 0; font-family: var(--e-global-typography-h2-font-family), serif; font-weight: 700; font-style: italic; font-size: clamp(30px, 2.9vw, 44px); line-height: 1.1; color: var(--evo-navy, #1D293B); }
.evo-lsx__sub { margin: 0 !important; font-family: var(--e-global-typography-body-font-family), sans-serif; font-weight: 300; font-size: 16px; line-height: 1.5; color: var(--evo-charcoal, #2B2B2B); }
.evo-lsx__slides { display: grid; }
.evo-lsx__slide { grid-area: 1 / 1; display: grid; gap: 10px; align-content: start; margin: 0; opacity: 0; visibility: hidden; transition: opacity var(--evo-t-section, 400ms) var(--evo-ease, ease), visibility 0s linear var(--evo-t-section, 400ms); }
.evo-lsx__slide.is-on { opacity: 1; visibility: visible; transition: opacity var(--evo-t-section, 400ms) var(--evo-ease, ease), visibility 0s; }
.evo-lsx__stars { font-size: 14px; letter-spacing: .22em; line-height: 1; color: var(--evo-navy, #1D293B); }
.evo-lsx__quote { margin: 0; padding: 0; border: 0; font-family: var(--e-global-typography-body-font-family), sans-serif; font-style: normal; font-weight: 300; font-size: 18px; line-height: 1.55; color: var(--evo-charcoal, #2B2B2B); }
.evo-lsx__product { max-width: 388px; margin-top: 6px; }
.evo-lsx__product .evo-rprod { border: 0; }
.evo-lsx__product .evo-rprod { grid-template-columns: 72px minmax(0, 1fr) auto; }
.evo-lsx__product .evo-rprod__img { width: 72px; height: 72px; }
.evo-lsx__controls { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 16px; }
.evo-lsx__nav { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 1.5px solid var(--evo-navy, #1D293B); background: transparent; color: var(--evo-navy, #1D293B); cursor: pointer; transition: background var(--evo-t-hover, 250ms), color var(--evo-t-hover, 250ms); }
.evo-lsx__nav--prev svg { transform: rotate(180deg); }
.evo-lsx__count { min-width: 3.2em; text-align: center; font-family: var(--e-global-typography-subheadcaps-font-family), sans-serif; font-weight: var(--evo-caps-w, 600); font-size: 12px; letter-spacing: .16em; color: var(--evo-navy, #1D293B); font-variant-numeric: tabular-nums; }
.evo-lsx__bar { position: relative; width: min(140px, 24vw); height: 2px; overflow: hidden; background: color-mix(in srgb, var(--evo-navy, #1D293B) 16%, transparent); }
.evo-lsx__bar i { position: absolute; inset: 0; background: var(--evo-navy, #1D293B); transform-origin: 0 50%; transform: scaleX(var(--evo-lsx-pos, 0)); }
.evo-lsx.is-auto .evo-lsx__bar i { transition: transform 120ms linear; }
.evo-lsx__all { margin-left: auto; font-family: var(--e-global-typography-subheadcaps-font-family), sans-serif; font-weight: var(--evo-caps-w, 600); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--evo-navy, #1D293B); text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 767px) {
	.evo-lsx.has-media { grid-template-columns: minmax(0, 1fr); min-height: 0; }
	.evo-lsx__media { aspect-ratio: 4 / 3; }      /* the photo's own ratio: no squash, the box stays centred */
	.evo-lsx__body { max-width: none; padding: 28px 16px 40px; gap: 16px; }
	.evo-lsx__quote { font-size: 17px; }
	.evo-lsx__all { margin-left: 0; flex-basis: 100%; }
}
.evo-reviews .evo-reviews__track:empty { display: none; }

/* order-received: the purchase widget is invisible by design */
.evo-ls-purchase { display: none !important; }
