/* AVA Core — collection page (shop + category archives). Loaded by includes/shop.php after product_archive.css and
   ava-store.css, so this file carries the FRAME NUMBERS for the whole page (fidelity pass, Lane S1, 27 Sep 2026):
   frames 238:109133 `collection-flower` (1440 × 5231) and `collection-flower-mobile` (375 × 4530) — see qa/laneS1/collection-spec.md.
   Behaviour (facets, sort, load more, sheets) stays in theme/astra-child/assets/css/product_archive.css + ava-store.css;
   only sizes, spacing, type and colours are overridden here. Ink model (Lane H): Krub cap top = line-box top + (LH − size) / 2 + 0.09 em. */

:root {
    --plp-ink: #151515;
    --plp-muted: #6B685E;
    --plp-label: #807D75;
    --plp-count: #8A867C;
    --plp-gold: #AD8C5C;
    --plp-red: #FF4438;
    --plp-cream: #EDEBE1;
    --plp-border: #DCD8CA;
    --plp-divider: #DEDBD1;
    --plp-navy: #193E81;
    --plp-black: #0E0E0E;
}

/* ==========================================================================
   1. Header band (1d9cdad › cddd0d1): breadcrumb · H1 · intro · meta strip
   ========================================================================== */
/* band = 1d9cdad (full width; it also wraps the grid section 585eee5, so no overflow:hidden here — that would break the
   sticky sidebar; overflow-x: clip does not create a scroll container). The contour motif is the frame's own artwork
   (00-pre.png, page x 960–1440 × y 136–395, gold #AD8C5C at the frame's alpha), anchored to the band's top-right. */
.ava-plp-band { position: relative; overflow-x: clip; }
/* 2 Oct (user, Figma collection frame): the motif stops at the white band's bottom edge. Drawn as ::before it paints before the
   cream grid section 585eee5 (position: relative) in tree order, so that section covers any overhang on a category with a
   short intro (Edibles ran 26 px into the cream). Elementor uses .e-con::before for background overlays: hence the two
   classes and the reset of its left / size / radius / blend values. */
.e-con.ava-plp-band::before { content: ""; display: block; position: absolute; top: 0; right: 0; bottom: auto; left: auto; width: 480px; height: 259px;
	border-radius: 0; opacity: 1; mix-blend-mode: normal; pointer-events: none; z-index: auto;
	background: url(img/plp-band-contour.png) no-repeat 0 0 / 480px 259px; }
.ava-plp-band > .ava-plp-band__inner { position: relative; z-index: 1; }

/* breadcrumb (frame: 13 px, "/" #DCD8CA with 9–10 px either side, current item ink 600) — markup from
   ava_shop_crumb_defaults() in shop.php; Elementor's widget typography (5a0b053) is outranked on purpose */
.elementor-578 .elementor-element.elementor-element-5a0b053 .woocommerce-breadcrumb,
.ava-plp-band .woocommerce-breadcrumb { font-family: 'Krub', sans-serif; font-size: 13px !important; line-height: 24px !important; font-weight: 400; color: var(--plp-muted); margin: 0; }
.ava-plp-band .woocommerce-breadcrumb a { color: var(--plp-muted); text-decoration: none; }
.ava-plp-band .woocommerce-breadcrumb a:hover { color: var(--plp-red); }
.ava-plp-band .woocommerce-breadcrumb .ava-crumb-sep { color: var(--plp-border); margin: 0 8px; }
.ava-plp-band .woocommerce-breadcrumb .ava-crumb:last-child { color: var(--plp-ink); font-weight: 600; }

.ava-plp-h { font-family: 'Krub', sans-serif; color: var(--plp-ink); font-weight: 700; margin: 0; }
.ava-plp-h.ava-plp-h--1 { font-size: 36px; line-height: 44px; letter-spacing: -0.01em; margin: 16px 0 0; }
.ava-plp-h.ava-plp-h--2 { font-size: 36px; line-height: 48px; letter-spacing: -0.01em; margin: 0; }
.ava-plp-h.ava-plp-h--3 { font-size: 26px; line-height: 1.25; margin: 0 0 14px; }
.elementor-widget-shortcode .elementor-shortcode > .ava-plp-h.ava-plp-h--1 { margin-top: 16px; }

.ava-plp-intro { max-width: 720px; margin-top: 18px; }
.ava-plp-intro__text { font-size: 18px; line-height: 28px; color: var(--plp-muted); margin: 0 0 17px; }
.ava-plp-meta { list-style: none; margin: 0; padding: 0; display: block; font-size: 14px; line-height: 20px; color: var(--plp-muted); }
.ava-plp-meta li { display: inline; }
.ava-plp-meta li + li::before { content: "•"; margin: 0 12px; color: #C9C2AE; }
.ava-plp-meta strong { color: var(--plp-ink); font-weight: 700; }

/* FAQ band hides when the category has no FAQ rows ([cat_faq_data] prints nothing) */
.elementor-element-991a4f6:not(:has(.elementor-shortcode > *)) { display: none; }

/* ==========================================================================
   2. Grid section (585eee5): sidebar 280 · gap 40 · products 960 (3 × 300, gap 30 / rows 24)
   ========================================================================== */
.cpa-archive-wrap { grid-template-columns: 280px minmax(0, 1fr); gap: 40px; }
.cpa-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 30px; }

/* ---- sidebar ---- */
/* the box rules are desktop-only: at ≤767 the same element is the full-width filter drawer (product_archive.css, frame filter-drawer-mobile-full) */
@media (min-width: 768px) {
    .cpa-filter-sidebar { max-width: 280px; border: 1px solid var(--plp-border); border-radius: 12px; padding: 20px 20px 6px; margin-top: 2px; max-height: calc(100vh - var(--cpa-sticky-top, 24px) - 24px); }
}
.cpa-search-box { height: 42px; border: 1px solid var(--plp-red); border-radius: 10px; padding: 0 12px 0 16px; }
.cpa-search-box:focus-within { border-color: var(--plp-red); box-shadow: 0 0 0 3px rgba(255, 68, 56, 0.12); }
.cpa-search-icon { color: var(--plp-muted); }
.cpa-search-icon svg { width: 14px; height: 14px; }
.cpa-search-divider { width: 2px; height: 18px; margin: 0 11px 0 12px; }
.cpa-search-input, .cpa-search-input::placeholder { font-size: 15px; }
.cpa-search-input::placeholder { color: var(--plp-label); }

.cpa-filter-header { margin: 17px 0 0; height: 18px; }
.cpa-filter-title { font-size: 14.5px; line-height: 18px; font-weight: 700; letter-spacing: 0.04em; }
.cpa-clear-all { font-size: 13px; line-height: 18px; font-weight: 500; }

.cpa-filter-section { margin-bottom: 0; }
.cpa-section-divider { border-top: 1px solid var(--plp-divider); margin: 12px 0 16px; }
.cpa-sec-quick + .cpa-filter-section .cpa-section-divider,
.cpa-sec-thc_range + .cpa-filter-section .cpa-section-divider, .cpa-sec-size + .cpa-filter-section .cpa-section-divider,
.cpa-sec-price_range + .cpa-filter-section .cpa-section-divider, .cpa-sec-brand + .cpa-filter-section .cpa-section-divider { margin-top: 17px; }
.cpa-category-section .cpa-section-heading { margin-top: 16px; margin-bottom: 4px; }
.cpa-section-heading { margin: 0 0 3px; font-size: 11px; line-height: 14px; }
.cpa-filter-sidebar .cpa-section-toggle,
.cpa-filter-sidebar .cpa-section-toggle:hover,
.cpa-filter-sidebar .cpa-section-toggle:focus,
.cpa-filter-sidebar .cpa-section-toggle:active { font-size: 11px; line-height: 14px; font-weight: 600; letter-spacing: 0.05em; color: var(--plp-label) !important; }

.cpa-category-link { padding: 8px 0; line-height: 18px; }
.cpa-category-name { font-size: 13.5px; line-height: 18px; color: var(--plp-ink); }
.cpa-category-count { font-size: 12px; line-height: 18px; color: var(--plp-count); }
.cpa-category-item.active .cpa-category-name { color: var(--plp-red); font-weight: 600; padding-left: 12px; }
.cpa-category-item.active .cpa-category-name::before { width: 3px; height: 16px; border-radius: 1px; }

.cpa-checkbox-list { margin-top: 5px !important; }
.cpa-checkbox-row { padding: 5px 0; line-height: 18px; }
.cpa-sec-grow .cpa-checkbox-row { padding: 8px 0; }
.cpa-custom-checkbox { width: 18px; height: 18px; border: 1px solid #D1CCBF; border-radius: 4px; }
.cpa-custom-checkbox.checked { border-color: var(--plp-red); }
.cpa-checkbox-label { margin-left: 10px; font-size: 13.5px; line-height: 18px; color: var(--plp-ink); }
.cpa-checkbox-item.active .cpa-checkbox-label { font-weight: 500; }
.cpa-checkbox-count { font-size: 12px; line-height: 18px; color: var(--plp-count); }

.cpa-pill-wrap, .cpa-thc-pill-wrap { gap: 8px; margin-top: 10px; }
.cpa-pill, .cpa-thc-pill { height: 32px; padding: 0 14px; border: 1px solid var(--plp-divider); font-size: 12px; font-weight: 600; line-height: 30px; }
.cpa-pill:hover, .cpa-thc-pill:hover { border-color: var(--plp-ink); }
.cpa-pill.active, .cpa-thc-pill.active { border-color: var(--plp-red); }
.cpa-sec-quick, .cpa-sec-thc_range, .cpa-sec-size, .cpa-sec-price_range { padding-bottom: 0; }

.cpa-brand-list { max-height: 157px; padding-right: 12px !important; scrollbar-color: var(--plp-red) var(--plp-cream); }
.cpa-brand-list::-webkit-scrollbar { width: 4px; }
.cpa-brand-list::-webkit-scrollbar-track { background: var(--plp-cream); border-radius: 2px; }
.cpa-brand-list::-webkit-scrollbar-thumb { background: var(--plp-red); border-radius: 2px; }
.cpa-sec-brand .cpa-checkbox-list { margin-top: 7px !important; }

.cpa-filter-section.is-collapsible .cpa-section-divider { margin-bottom: 0; }
.cpa-filter-section.is-collapsible .cpa-section-heading { margin: 0; line-height: 58px; }
.cpa-filter-sidebar .cpa-filter-section.is-collapsible .cpa-section-toggle,
.cpa-filter-sidebar .cpa-filter-section.is-collapsible .cpa-section-toggle:hover,
.cpa-filter-sidebar .cpa-filter-section.is-collapsible .cpa-section-toggle:focus,
.cpa-filter-sidebar .cpa-filter-section.is-collapsible .cpa-section-toggle:active { height: 58px; padding: 0; font-size: 13px; line-height: 58px; font-weight: 700; letter-spacing: 0; color: var(--plp-ink) !important; }
.cpa-filter-section.is-collapsible .cpa-section-icon { width: 11px; height: 11px; }
.cpa-filter-section.is-collapsible .cpa-section-icon::before,
.cpa-filter-section.is-collapsible .cpa-section-icon::after { width: 11px; height: 2px; top: 4.5px; border-radius: 0; }
.cpa-filter-section.is-collapsible .cpa-section-body { padding: 0 0 12px; }
.cpa-filter-section.is-collapsible + .cpa-filter-section.is-collapsible .cpa-section-divider { margin-top: 0; }

/* ---- toolbar ---- */
.cpa-products-toolbar { margin-bottom: 18px; min-height: 38px; gap: 16px; }
.cpa-showing-count { font-size: 14px; line-height: 20px; color: var(--plp-ink); }
.cpa-showing-count strong { font-weight: 700; }
.cpa-toolbar-controls { gap: 24px; }
.cpa-soldout-toggle { gap: 11px; font-size: 14px; line-height: 20px; font-weight: 400; color: var(--plp-ink); }
.cpa-toggle-ui { width: 46px; height: 26px; }
.cpa-toggle-ui::after { width: 20px; height: 20px; top: 3px; left: 3px; box-shadow: none; }
.cpa-soldout-toggle input:checked + .cpa-toggle-ui::after { transform: translateX(20px); }
.cpa-archive-wrap .cpa-sort-btn,
.cpa-archive-wrap .cpa-sort-btn:hover,
.cpa-archive-wrap .cpa-sort-btn:focus,
.cpa-archive-wrap .cpa-sort-btn:active { min-width: 220px; height: 38px; padding: 0 15px 0 15px; border: 1px solid var(--plp-border) !important; font-size: 13px; font-weight: 400; gap: 12px; }
.cpa-sort-btn__chev { width: 9px; height: 6px; color: #323232; }

/* sort menu (frame sort-dropdown-open: 220 × 378 incl. the 1 px #DCD8CA border, radius 12, no shadow, padding 4 5 3,
   rows 46, text 15 px at +20, the selected row an inset 208 × 44 cream box radius 8 with red 500 text + 12 px check 14 from its edge) */
.cpa-sort-menu:not(.is-sheet) { width: 220px; right: 0; top: calc(100% + 8px); padding: 4px 5px 3px; border: 1px solid var(--plp-border); border-radius: 12px; box-shadow: none; overflow: hidden; }
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option,
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option:hover,
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option:focus,
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option:active { height: 46px; padding: 0 14px 0 15px; border-radius: 8px; font-size: 15px; line-height: 46px; }
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option.is-selected,
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option.is-selected:hover,
.cpa-archive-wrap .cpa-sort-menu:not(.is-sheet) .cpa-sort-option.is-selected:focus { height: 44px; margin: 1px 0; line-height: 44px; font-weight: 500; }
.cpa-sort-option__check { width: 12px; height: 12px; }

/* ---- active chips ---- */
.cpa-chips-row { gap: 8px; margin-bottom: 18px; min-height: 28px; }
.cpa-chips-list { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-left: 2px; }
.cpa-chips-label { font-size: 13px; line-height: 20px; font-weight: 400; color: var(--plp-muted); margin-right: 1px; }
.cpa-archive-wrap .cpa-chip,
.cpa-archive-wrap .cpa-chip:hover,
.cpa-archive-wrap .cpa-chip:focus { height: 28px; padding: 0 10px 0 12px; gap: 8px; font-size: 12px; font-weight: 500; }
.cpa-chip-x { font-size: 15px; font-weight: 400; }
.cpa-archive-wrap .cpa-chips-clear,
.cpa-archive-wrap .cpa-chips-clear:hover,
.cpa-archive-wrap .cpa-chips-clear:focus { padding: 0; font-size: 13px; line-height: 20px; font-weight: 400; }

/* ---- product card 300 × 500: media 300 + body 200 ---- */
.cpa-product-card { border: 1px solid var(--plp-border); border-radius: 14px; }
.cpa-product-card.is-sold-out .cpa-card-media { background: #F3F2EE; }
.cpa-card-badges { top: 12px; left: 12px; gap: 6px; }
.cpa-card-badge { height: 22px; padding: 0 8px; font-size: 10px; font-weight: 600; letter-spacing: 0.08em; }
.cpa-card-badge.is-navy, .cpa-card-badge.is-new { background: var(--plp-navy); }
.cpa-card-badge.is-gray { background: #7E7E7E; }
.cpa-card-body { padding: 10px 14px 15px; min-height: 200px; }
.cpa-card-meta-row { margin-bottom: 14px; min-height: 16px; gap: 8px; }
.cpa-card-cats { gap: 10px; }
.cpa-card-cat, .cpa-card-strain { font-size: 11px; line-height: 16px; font-weight: 600; letter-spacing: 0.08em; }
.cpa-card-strain { color: var(--plp-muted); }
.cpa-card-rating { font-size: 12px; line-height: 16px; font-weight: 500; color: var(--plp-muted); gap: 4px; }
.cpa-card-star { color: var(--plp-gold); font-size: 12px; }
.cpa-card-reviews { color: var(--plp-muted); }
.cpa-card-new { font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: 0.06em; }
.cpa-card-brand { font-size: 10px; line-height: 14px; font-weight: 700; letter-spacing: 0.14em; color: var(--plp-gold); margin-bottom: 4px; }
.cpa-card-body .cpa-card-title { font-size: 16px; line-height: 22px; font-weight: 600; margin: 0 0 5px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
/* the 200 px body holds a 2-line title unless both the spec and the dominance lines print (frame card: 1-line titles) */
.cpa-card-body:has(.cpa-card-specs):has(.cpa-card-dominance) .cpa-card-title { -webkit-line-clamp: 1; }
.cpa-card-specs { font-size: 13.5px; line-height: 19px; color: var(--plp-muted); }
.cpa-card-specs__cat { display: none; }
.cpa-card-dominance { font-size: 13px; line-height: 18px; color: var(--plp-count); margin-top: 4px; }
.cpa-card-footer { padding-top: 20px; align-items: center; gap: 12px; }
.cpa-card-price-row { gap: 8px; align-items: baseline; }
.cpa-card-price, .cpa-card-from { font-size: 20px; line-height: 24px; font-weight: 700; }
.cpa-card-regular { font-size: 20px; line-height: 24px; font-weight: 500; color: #8A8A8A; }
.cpa-card-unit, .cpa-card-similar { margin-top: 0; font-size: 13px; line-height: 17px; color: var(--plp-muted); }
.cpa-card-similar { line-height: 17px; }
.cpa-products-grid .ava-atc, .cpa-guides-cards .ava-atc { min-width: 120px; min-height: 36px; }
.cpa-products-grid .ava-btn.ava-btn { min-width: 120px; height: 36px; padding: 0 10px; border-width: 1px; font-size: 14.5px; font-weight: 400; letter-spacing: 0.04em; gap: 4px; }
.cpa-products-grid .ava-btn.ava-btn[data-act="select"] { gap: 8px; }
/* DISCONTINUED is drawn filled red (white text), black on hover, like the other states (product-card-atc-a) */
.cpa-products-grid .ava-atc .ava-btn.ava-btn--outline-red[disabled] { background: var(--plp-red); border-color: var(--plp-red); color: #ffffff !important; opacity: 1; }
.cpa-products-grid .ava-atc .ava-btn.ava-btn--outline-red[disabled]:hover { background: var(--plp-ink); border-color: var(--plp-ink); }
.cpa-products-grid .ava-btn[data-act="select"] svg { width: 12px; height: 12px; }
.cpa-products-grid .ava-stepper { width: 120px; height: 36px; border-width: 1px; }
.cpa-products-grid .ava-stepper.ava-stepper button { width: 38px; font-size: 17px; }
.cpa-products-grid .ava-stepper__qty { font-size: 15px; }

/* ---- LOVE Club tile (500 tall like the cards) ---- */
.cpa-join-card { background-color: var(--plp-black); border-radius: 18px; padding: 37px 48px 39px; }
.cpa-join-card .cpa-join-title { font-size: 36px; line-height: 48px; letter-spacing: 0; margin: 0 0 17px; }
.cpa-join-copy { font-size: 15px; line-height: 23px; max-width: 200px; margin: 0 0 24px; }
.cpa-join-btn { height: 47px; padding: 0 20px; font-size: 15.5px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }

/* ---- load more 180 × 46 ---- */
.cpa-load-more-wrap { margin-top: 24px; }
.cpa-archive-wrap .cpa-load-more,
.cpa-archive-wrap .cpa-load-more:hover,
.cpa-archive-wrap .cpa-load-more:focus,
.cpa-archive-wrap .cpa-load-more:active { min-width: 180px; height: 46px; padding: 0 48px; background: var(--plp-black) !important; font-size: 14.5px; font-weight: 600; letter-spacing: 0.04em; }
.cpa-skeleton { border-radius: 14px; }

/* ==========================================================================
   3. Answer band (2276845): white card 174 tall, radius 20, icon + 30/700 question + 15/23 answer
   ========================================================================== */
.cpa-answer { border-radius: 20px; padding: 40px 10px 40px 48px; gap: 28px; align-items: center; }
.cpa-answer__icon { margin-top: 0; }
.cpa-answer .cpa-answer__q { font-size: 30px; line-height: 36px; letter-spacing: -0.03em; margin: 0 0 11px; }
.cpa-answer__a { font-size: 15px; line-height: 23px; color: #191919; }

/* answer band motif: the frame's ribbon (page x 960–1440 × the band's 300 px, white at the frame's alpha) replaces
   the Elementor background (Group-1.svg sat 150 px too far left) */
.elementor-578 .elementor-element.elementor-element-2276845:not(.elementor-motion-effects-element-type-background) {
	background-image: url(img/plp-answer-contour.png) !important; background-position: calc(50% + 240px) 0 !important;
	background-size: 480px 300px !important; background-repeat: no-repeat !important; }

/* ==========================================================================
   4. FAQ (991a4f6): left column 381 · gap 64 · card 835 (radius 8, open 111, closed 72)
   ========================================================================== */
.elementor-578 .elementor-element.elementor-element-17958cf .elementor-heading-title { font-size: 13px; line-height: 16px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--plp-red); margin: 0; }
.elementor-578 .elementor-element-0ec4716 .ava-plp-h--2 { margin-top: 13px; }
.elementor-578 .elementor-element.elementor-element-fe91bb0 { margin-top: 11px; font-size: 18px; line-height: 29px; color: var(--plp-muted); }
.elementor-578 .elementor-element.elementor-element-fe91bb0 p, .elementor-578 .elementor-element.elementor-element-fe91bb0 .elementor-widget-container { font-size: 18px; line-height: 29px; color: var(--plp-muted); margin: 0; }
.cpa-cat-faq-section .cpc-faq-accordion { background: var(--plp-cream); border: 1px solid #E7E5D9; border-radius: 8px; }
.cpa-cat-faq-section .cpc-faq-item { border-bottom: 1px solid #E5E2D6; }
.cpa-cat-faq-section .cpc-faq-item:last-child { border-bottom: none; }
.cpa-cat-faq-section .cpc-faq-question { padding: 23px 30px 22px 27px; }
.cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-question { padding: 21px 30px 14px 27px; }
.cpa-cat-faq-section .cpc-faq-question:hover { background-color: rgba(255, 255, 255, 0.3); }
.cpa-cat-faq-section .cpc-faq-question-text { font-size: 20px; line-height: 26px; font-weight: 700; padding-right: 16px; }
.cpa-cat-faq-section .cpc-faq-toggle-icon { width: 16px; height: 17px; }
.cpa-cat-faq-section .cpc-faq-toggle-icon::before { width: 16px; height: 2px; }
.cpa-cat-faq-section .cpc-faq-toggle-icon::after { width: 2px; height: 16px; }
.cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-toggle-icon::before { height: 3px; }
.cpa-cat-faq-section .cpc-faq-answer { padding: 0 30px 25px 27px; }
.cpa-cat-faq-section .cpc-faq-answer-inner, .cpa-cat-faq-section .cpc-faq-answer-inner p { font-size: 16px; line-height: 24px; color: var(--plp-muted); margin: 0; }

/* ==========================================================================
   5. Learn (1c0c60b): H2 32/700 · red cards 195 × 260 · strain card 621 × 259
   ========================================================================== */
.elementor-578 .elementor-element-0951fdf .ava-plp-h { font-size: 31px; line-height: 37px; letter-spacing: -0.03em; margin: 0; }
.cpa-guides-wrap { grid-template-columns: 625px minmax(0, 1fr); gap: 34px; align-items: stretch; }
.cpa-guides-wrap.is-strain-only, .cpa-guides-wrap.is-posts-only { grid-template-columns: 1fr; }
.cpa-guides-cards { gap: 20px; min-height: 260px; }
.cpa-guide-card { background: var(--plp-red); color: #ffffff; border-radius: 16px; padding: 24px 22px 23px; min-height: 260px; box-shadow: none; }
.cpa-guide-orb { display: none; }
.cpa-guide-dot { width: 14px; height: 14px; background: var(--plp-black); margin-bottom: 11px; }
.cpa-guide-card .cpa-guide-title { font-size: 17px; line-height: 20px; font-weight: 600; margin: 0 0 13px; color: #ffffff; }
.cpa-guide-excerpt { font-size: 13px; line-height: 20px; color: rgba(255, 255, 255, 0.8); margin: 0 0 16px; }
.cpa-guide-link { font-size: 12.5px; line-height: 16px; font-weight: 700; color: #ffffff !important; }
.cpa-guide-link:hover { color: var(--plp-black) !important; }
.cpa-guide-card.is-placeholder { outline-color: rgba(255, 255, 255, 0.7); }
.cpa-strain-glance { border: 1px solid #EEECE4; border-radius: 12px; padding: 20px 24px 18px; }
.cpa-strain-glance .cpa-strain-glance-title { font-size: 20px; line-height: 26px; margin: 0 0 20px; }
.cpa-strain-table-wrap, .cpa-strain-table { margin: 0; }
.cpa-strain-glance table.cpa-strain-table { border: 0; border-collapse: collapse; border-spacing: 0; width: 100%; }
.cpa-strain-glance table.cpa-strain-table tr { border: 0; }
.cpa-strain-table th, .cpa-strain-table td { padding: 10px 12px 11px 0; line-height: 20px; border: 0; }
.cpa-strain-table th:last-child, .cpa-strain-table td:last-child { padding-right: 0; }
.cpa-strain-table thead th { font-size: 11.5px; line-height: 16px; font-weight: 400; letter-spacing: 0; color: #7B786F; padding: 0 12px 8px 0; border-bottom: 1px solid #EFEDE8; }
.cpa-strain-table thead th:nth-child(1), .cpa-strain-table tbody th { width: 112px; }
.cpa-strain-table thead th:nth-child(2) { width: 225px; }
.cpa-strain-table tbody tr:first-child th, .cpa-strain-table tbody tr:first-child td { padding-top: 17px; }
.cpa-strain-table tbody th { font-size: 15px; font-weight: 700; }
.cpa-strain-table tbody td { font-size: 15px; }
.cpa-strain-disclaimer { margin: 4px 0 0; font-size: 12px; line-height: 16px; color: #96958D; }
.cpa-copy-m { display: none; }

/* learn band motif: the frame's white ribbon (page x 500–1122 × 459, behind the cards) */
.ava-plp-learn-band { position: relative; overflow: hidden; }
.ava-plp-learn-band::before { content: ""; position: absolute; top: 0; left: calc(50% - 220px); width: 622px; height: 459px; pointer-events: none;
	background: url(img/plp-learn-contour.png) no-repeat 0 0 / 622px 459px; }
.ava-plp-learn-band > .e-con-inner { position: relative; z-index: 1; }

/* ==========================================================================
   6. Visit (c3112bb): navy 800 + map 480, 298 tall, radius 18
   ========================================================================== */
.cpa-visit { grid-template-columns: 62.5% 37.5%; border-radius: 18px; background: var(--plp-navy); min-height: 298px; }
.cpa-visit__card { background-color: var(--plp-navy); padding: 43px 48px 44px; }
.cpa-visit__eyebrow { font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.12em; margin-bottom: 10px; }
.cpa-visit .cpa-visit__title { font-size: 28px; line-height: 34px; margin: 0 0 15px; }
.cpa-visit__body { font-size: 15px; line-height: 23px; color: #ffffff; max-width: 690px; margin: 0 0 15px; }
.cpa-visit__actions { gap: 11px; }
.cpa-visit__btn, .cpa-visit__btn:hover, .cpa-visit__btn:focus { height: 42px; padding: 0 22px; font-size: 15px; font-weight: 600; }
.cpa-visit__btn--outline { border: 1.5px solid rgba(255, 255, 255, 0.55); }
.cpa-visit__map { min-height: 298px; }
.cpa-visit__map-label { left: 15px; top: 20px; height: 30px; display: inline-flex; align-items: center; padding: 0 12px; font-size: 11px; font-weight: 700; letter-spacing: 0.06em; box-shadow: 0 6px 18px rgba(21, 21, 21, 0.18); }
.cpa-visit__title .cpa-copy-m, .cpa-visit__body .cpa-copy-m { display: none; }

/* ==========================================================================
   7. Laptop / tablet (no frames): keep the 1440 composition and scale
   ========================================================================== */
@media (max-width: 1439px) {
    .cpa-guides-wrap { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .cpa-guides-cards { min-height: 0; }
}
@media (min-width: 768px) and (max-width: 1100px) { .cpa-filter-sidebar { max-width: 240px; } }
@media (max-width: 1100px) {
    .cpa-archive-wrap { grid-template-columns: 240px minmax(0, 1fr); gap: 24px; }
    .cpa-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
    .cpa-guides-wrap { grid-template-columns: 1fr; gap: 24px; }
    .cpa-guide-card { min-height: 0; }
    .cpa-visit { grid-template-columns: 1fr; }
    .cpa-visit__map { min-height: 260px; }
    .cpa-answer { padding: 32px 32px 32px 40px; }
}

/* ==========================================================================
   8. Mobile 375 (frame collection-flower-mobile): gutters 20, 2 × 160 cards (gap 15) 310 tall,
      the filter bar + chips sit on the white band, cream starts 8 px above the cards
   ========================================================================== */
@media (max-width: 767px) {
    .e-con.ava-plp-band::before { width: 151px; height: 145px; background-image: url(img/plp-band-contour-m.png); background-size: 151px 145px; }
    .elementor-578 .elementor-element.elementor-element-5a0b053 .woocommerce-breadcrumb,
    .ava-plp-band .woocommerce-breadcrumb { font-size: 13px !important; line-height: 24px !important; }
    .ava-plp-h.ava-plp-h--1, .elementor-widget-shortcode .elementor-shortcode > .ava-plp-h.ava-plp-h--1 { font-size: 20px; line-height: 24px; letter-spacing: -0.01em; margin-top: 21px; }
    .ava-plp-intro { margin-top: 24px; max-width: none; }
    .ava-plp-intro__text { font-size: 15px; line-height: 23px; margin-bottom: 23px; }
    .ava-plp-meta { font-size: 13px; line-height: 18px; }
    .ava-plp-meta li + li::before { content: "·"; margin: 0 5px; color: var(--plp-muted); }

    /* the cream section paints white behind the bar + chips; the grid wrap and load-more carry the cream */
    .elementor-578 .elementor-element.elementor-element-585eee5:not(.elementor-motion-effects-element-type-background) { background-color: #ffffff !important; }
    .cpa-archive-wrap { grid-template-columns: 1fr; gap: 0; }
    .cpa-mobile-filter-bar { margin: 0; gap: 8px; }
    .cpa-archive-wrap .cpa-mobile-filters-btn,
    .cpa-archive-wrap .cpa-mobile-filters-btn:hover,
    .cpa-archive-wrap .cpa-mobile-filters-btn:focus,
    .cpa-archive-wrap .cpa-mobile-filters-btn:active { height: 34px; padding: 0 12px 0 12px; gap: 8px; border: 1px solid var(--plp-border) !important; font-size: 13px; font-weight: 600; }
    .cpa-mobile-filters-icon svg { width: 16px; height: 16px; }
    .cpa-filter-badge { min-width: 18px; height: 18px; padding: 0 5px; font-size: 11px; }
    .cpa-mobile-count { font-size: 13px; line-height: 18px; font-weight: 500; }
    .cpa-mobile-count strong { font-weight: 700; }
    .cpa-mobile-filter-bar .cpa-sort-btn__chev { width: 7px; height: 5px; }
    .cpa-archive-wrap .cpa-mobile-filter-bar .cpa-sort-btn,
    .cpa-archive-wrap .cpa-mobile-filter-bar .cpa-sort-btn:hover,
    .cpa-archive-wrap .cpa-mobile-filter-bar .cpa-sort-btn:focus,
    .cpa-archive-wrap .cpa-mobile-filter-bar .cpa-sort-btn:active { min-width: 0; height: 34px; padding: 0 10px 0 12px; gap: 7px; font-size: 13px; font-weight: 500; }
    .cpa-active-chips:has(.cpa-chips-row) { margin-top: 12px; }
    .cpa-chips-row { margin-bottom: 0; gap: 10px 8px; min-height: 0; align-items: center; flex-wrap: nowrap; }
    .cpa-chips-list { gap: 10px 8px; }
    .cpa-archive-wrap .cpa-chip,
    .cpa-archive-wrap .cpa-chip:hover,
    .cpa-archive-wrap .cpa-chip:focus { height: 29px; padding: 0 10px 0 12px; font-size: 12px; }
    .cpa-archive-wrap .cpa-chips-clear,
    .cpa-archive-wrap .cpa-chips-clear:hover,
    .cpa-archive-wrap .cpa-chips-clear:focus { margin-left: auto; align-self: center; flex-shrink: 0; }
    .cpa-products-grid-wrap { margin: 12px -20px 0; padding: 8px 20px 23px; background: var(--plp-cream); }
    .cpa-load-more-wrap { margin: -23px -20px 0; padding: 31px 20px 23px; background: var(--plp-cream); }
    .cpa-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 15px; }
    .cpa-archive-wrap .cpa-load-more,
    .cpa-archive-wrap .cpa-load-more:hover,
    .cpa-archive-wrap .cpa-load-more:focus,
    .cpa-archive-wrap .cpa-load-more:active { min-width: 141px; height: 48px; padding: 0 28px; font-size: 13.5px; letter-spacing: 0.1em; }

    /* filter drawer sheet (frame filter-drawer-mobile-full): handle 40 × 5 at 10, "Filters" 22 / 700 ascender at 30, × 14 px
       centred (346, 40), 1 px rule at 67, body 29 / 40 / 24 / 20 (content 20–335), footer: "Clear all" 15 / 600 + Show N
       results 262 × 48 radius 4 15 / 600 ending at 355 */
    .cpa-archive-wrap .cpa-mobile-sheet-header { height: 68px; padding: 26px 64px 0 20px; align-items: flex-start; border-bottom-color: #DCD8CA; }
    .cpa-archive-wrap .cpa-mobile-sheet-header::before { top: 10px; height: 5px; border-radius: 3px; }
    .cpa-archive-wrap .cpa-mobile-sheet-title { font-size: 22px; line-height: 28px; font-weight: 700; }
    .cpa-archive-wrap .cpa-filter-sidebar .cpa-filter-close,
    .cpa-archive-wrap .cpa-filter-sidebar .cpa-filter-close:hover,
    .cpa-archive-wrap .cpa-filter-sidebar .cpa-filter-close:focus,
    .cpa-archive-wrap .cpa-filter-sidebar .cpa-filter-close:active { top: 18px; right: 7px; }
    .cpa-archive-wrap .cpa-filter-sidebar .cpa-filter-close svg { width: 17px; height: 17px; }
    .cpa-filter-sidebar .cpa-search-box { border-radius: 8px; }
    .cpa-filter-sidebar .cpa-search-icon svg { width: 16px; height: 16px; }
    .cpa-archive-wrap .cpa-filter-sheet-body { padding: 29px 40px 24px 20px; }
    .cpa-archive-wrap .cpa-mobile-sheet-footer { padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px)); border-top-color: #DCD8CA; }
    .cpa-archive-wrap .cpa-mobile-sheet-footer .cpa-clear-all { font-size: 15px; font-weight: 600; }
    .cpa-archive-wrap .cpa-show-results-btn,
    .cpa-archive-wrap .cpa-show-results-btn:hover,
    .cpa-archive-wrap .cpa-show-results-btn:focus,
    .cpa-archive-wrap .cpa-show-results-btn:active { flex: 0 0 262px; max-width: none; height: 48px; border-radius: 4px; font-size: 15px; font-weight: 600; }

    /* card 160 × 310: media 160, body 150 */
    .cpa-product-card { border-radius: 12px; }
    .cpa-card-badges { top: 11px; left: 10px; }
    .cpa-card-badge { height: 22px; font-size: 9px; padding: 0 8px; }
    .cpa-card-body { padding: 12px 10px 10px; min-height: 150px; }
    .cpa-card-meta-row { flex-wrap: nowrap; align-items: flex-start; margin-bottom: 10px; min-height: 0; gap: 6px; }
    .cpa-card-cats { flex-direction: column; align-items: flex-start; gap: 1px; }
    .cpa-card-cat, .cpa-card-strain { font-size: 9px; line-height: 12px; letter-spacing: 0.06em; }
    .cpa-card-rating { font-size: 10px; line-height: 12px; font-weight: 400; }
    .cpa-card-new { font-size: 10px; line-height: 12px; }
    .cpa-card-star { font-size: 10px; }
    .cpa-card-brand { font-size: 9.5px; line-height: 13px; letter-spacing: 0.05em; margin-bottom: 7px; }
    .cpa-card-body .cpa-card-title { font-size: 13px; line-height: 17px; font-weight: 600; margin: 0 0 6px; }
    /* 150 px body: one title line when the spec line prints (collection-flower-mobile); no dominance line on mobile */
    .cpa-card-body:has(.cpa-card-specs) .cpa-card-title { -webkit-line-clamp: 1; }
    .cpa-card-dominance { display: none; }
    .cpa-card-specs { font-size: 11.5px; line-height: 16px; }
    .cpa-card-dominance { font-size: 11px; line-height: 15px; margin-top: 2px; }
    .cpa-card-footer { padding-top: 4px; gap: 6px; align-items: center; }
    .cpa-card-price, .cpa-card-from { font-size: 20px; line-height: 22px; }
    .cpa-card-regular { font-size: 16px; line-height: 22px; }
    .cpa-card-unit { font-size: 10px; line-height: 12px; }
    .cpa-card-similar { font-size: 11px; line-height: 14px; }
    .cpa-products-grid .ava-atc { min-width: 0; min-height: 29px; }
    .cpa-products-grid .ava-atc .ava-btn[data-act="add"],
    .cpa-products-grid .ava-atc .ava-btn[data-act="select"] { width: 29px; min-width: 29px; height: 29px; }
    .cpa-products-grid .ava-atc .ava-btn[data-act="add"] > span,
    .cpa-products-grid .ava-atc .ava-btn[data-act="select"]::before { font-size: 20px; }
    .cpa-products-grid .ava-atc .ava-btn[data-act="notify"] { min-width: 0; height: 29px; padding: 0 8px; font-size: 10px; letter-spacing: 0.06em; }
    .cpa-products-grid .ava-btn.ava-btn--outline, .cpa-products-grid .ava-btn.ava-btn--outline-red { min-width: 0; height: 29px; padding: 0 8px; font-size: 10px; }
    .cpa-products-grid .ava-atc .ava-stepper { width: 82px; height: 29px; }
    .cpa-products-grid .ava-atc .ava-stepper button { width: 26px; font-size: 15px; }
    .cpa-products-grid .ava-stepper__qty { font-size: 14px; min-width: 20px; }

    /* LOVE Club tile at tile 5 (frame: row 3, column 1) — DOM keeps it after product 7 for desktop */
    .cpa-products-grid > .cpa-product-card:nth-child(-n+4) { order: 0; }
    .cpa-products-grid > .cpa-join-card { order: 1; }
    .cpa-products-grid > .cpa-product-card:nth-child(n+5), .cpa-products-grid > .cpa-skeleton, .cpa-products-grid > .cpa-loading-more { order: 2; }
    .cpa-join-card { padding: 34px 19px 33px; border-radius: 12px; }
    .cpa-join-card .cpa-join-title { font-size: 20px; line-height: 24px; margin: 0 0 13px; }
    .cpa-join-copy { font-size: 13px; line-height: 20px; max-width: none; margin-bottom: 16px; }
    .cpa-join-btn { height: 41px; padding: 0 12px; font-size: 14px; letter-spacing: 0; }

    .elementor-578 .elementor-element.elementor-element-2276845:not(.elementor-motion-effects-element-type-background) { background-image: none !important; }
    .ava-plp-learn-band::before { display: none; }
    /* answer band: black card, no icon */
    .cpa-answer { flex-direction: column; gap: 0; background: var(--plp-black); color: #ffffff; border-radius: 12px; padding: 20px 20px 23px; }
    .cpa-answer__icon { display: none; }
    .cpa-answer .cpa-answer__q { font-size: 20px; line-height: 25px; letter-spacing: 0; color: #ffffff; margin: 0 0 12px; }
    .cpa-answer__a { font-size: 13px; line-height: 20px; color: #CCC9BD; }

    /* FAQ */
    .elementor-578 .elementor-element-0ec4716 .ava-plp-h--2 { font-size: 23px; line-height: 28px; letter-spacing: -0.04em; margin-top: 10px; }
    .elementor-578 .elementor-element.elementor-element-fe91bb0 { margin-top: 14px; font-size: 15px; line-height: 24px; }
    .elementor-578 .elementor-element.elementor-element-fe91bb0 p, .elementor-578 .elementor-element.elementor-element-fe91bb0 .elementor-widget-container { font-size: 15px; line-height: 24px; }
    .cpa-cat-faq-section .cpc-faq-accordion { border-color: var(--plp-border); }
    .cpa-cat-faq-section .cpc-faq-item .cpc-faq-question, .cpa-cat-faq-section .cpc-faq-item .cpc-faq-question:hover, .cpa-cat-faq-section .cpc-faq-item .cpc-faq-question:focus { padding: 17px 17px 17px 15px; background: transparent !important; color: var(--plp-ink) !important; border: 0 !important; border-radius: 0 !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important; line-height: 20px !important; font-size: 14px !important; }
    .cpa-cat-faq-section .cpc-faq-question-text { text-transform: none !important; letter-spacing: 0 !important; }
    .cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-question, .cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-question:hover, .cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-question:focus { padding: 15px 17px 11px 15px; }
    .cpa-cat-faq-section .cpc-faq-question-text { font-size: 14px; line-height: 20px; font-weight: 600; padding-right: 12px; }
    .cpa-cat-faq-section .cpc-faq-toggle-icon { width: 10px !important; height: 10px !important; display: block !important; }
    .cpa-cat-faq-section .cpc-faq-toggle-icon::before { width: 10px; height: 2px; }
    .cpa-cat-faq-section .cpc-faq-toggle-icon::after { width: 2px; height: 10px; }
    .cpa-cat-faq-section .cpc-faq-item.is-active .cpc-faq-toggle-icon::before { height: 2px; }
    .cpa-cat-faq-section .cpc-faq-answer { padding: 0 17px 14px 15px; }
    .cpa-cat-faq-section .cpc-faq-answer-inner, .cpa-cat-faq-section .cpc-faq-answer-inner p { font-size: 12.5px; line-height: 21px; }

    /* learn: black cards with a red dot, one-line titles; strain card 191 tall */
    .elementor-578 .elementor-element-0951fdf .ava-plp-h { font-size: 23px; line-height: 28px; letter-spacing: -0.04em; }
    .cpa-guides-wrap { gap: 14px; }
    .cpa-guides-cards { flex-direction: column; gap: 13px; }
    .cpa-guide-card { background: var(--plp-ink); border-radius: 12px; padding: 18px 17px 18px; min-height: 126px; display: grid; grid-template-columns: 14px minmax(0, 1fr); column-gap: 7px; align-content: start; }
    .cpa-guide-dot { background: var(--plp-red); margin: 3px 0 0; }
    .cpa-guide-card .cpa-guide-title { font-size: 16px; line-height: 19px; font-weight: 700; margin: 0 0 5px; grid-column: 2; }
    .cpa-guide-excerpt { grid-column: 2; font-size: 13px; line-height: 20px; color: #DBDBDB; margin: 0 0 6px; }
    .cpa-guide-link { grid-column: 2; font-size: 12.5px; line-height: 16px; margin-top: 0; }
    .cpa-strain-glance { border-color: #DDD9CB; border-radius: 12px; padding: 13px 18px 14px; }
    .cpa-strain-glance .cpa-strain-glance-title { font-size: 17px; line-height: 22px; margin: 0 0 9px; }
    .cpa-strain-table thead { display: table-header-group; }
    .cpa-strain-table thead th { font-size: 9px; line-height: 12px; padding: 0 6px 8px 0; }
    .cpa-strain-table thead th:nth-child(1), .cpa-strain-table tbody th { width: 62px; }
    .cpa-strain-table thead th:nth-child(2) { width: 114px; }
    .cpa-strain-table th:last-child, .cpa-strain-table td:last-child { padding-right: 0; white-space: nowrap; }
    .cpa-strain-table tbody tr { display: table-row; padding: 0; border: 0; }
    .cpa-strain-table tbody th, .cpa-strain-table tbody td { display: table-cell; width: auto; padding: 8.5px 6px 8.5px 0; font-size: 10px; line-height: 14px; }
    .cpa-strain-table tbody tr:first-child th, .cpa-strain-table tbody tr:first-child td { padding-top: 12px; }
    .cpa-strain-disclaimer { margin-top: 5px; font-size: 8px; line-height: 11px; }

    /* visit: single navy card, the mobile frame's copy, one button, no map */
    .cpa-visit { grid-template-columns: 1fr; border-radius: 12px; min-height: 0; }
    .cpa-visit__card { padding: 22px 22px 23px; }
    .cpa-visit__eyebrow { margin-bottom: 8px; }
    .cpa-visit .cpa-visit__title { font-size: 19px; line-height: 24px; margin: 0 0 14px; }
    .cpa-visit__body { font-size: 13px; line-height: 20px; margin-bottom: 13px; color: rgba(255, 255, 255, 0.88); }
    .cpa-visit__btn, .cpa-visit__btn:hover, .cpa-visit__btn:focus { height: 39px; padding: 0 21px; font-size: 13px; flex: 0 0 auto; }
    .cpa-visit__btn--outline, .cpa-visit__map { display: none; }
}

/* >>> Lane V2 shop */
/* d = Figma 238:109133: generated by tools/qa/V2_fixgen.py (node ids per rule in qa/laneV2/cmp/shop-238-109133-d-ava-shop.css.css) */
@media (min-width: 1025px) {
  html body:not(#v2x) .elementor-578 .elementor-element-5a0b053 span.ava-crumb-sep { line-height: 17px !important; display: inline-block !important; vertical-align: top !important; padding-top: 3.5px !important; padding-bottom: 3.5px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-5a0b053 span.ava-crumb { line-height: 17px !important; display: inline-block !important; vertical-align: top !important; padding-top: 3.5px !important; padding-bottom: 3.5px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-8a74b7d h1.ava-plp-h.ava-plp-h--1 { line-height: 46.8px !important; position: relative !important; top: -1.4px !important; margin-bottom: -2.8px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-3e24a0f .ava-plp-meta > li { line-height: 18px !important; display: inline-block !important; vertical-align: top !important; padding-top: 1px !important; padding-bottom: 1px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-17958cf > h3.elementor-heading-title { letter-spacing: 1.56px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-0ec4716 h2.ava-plp-h.ava-plp-h--2 { line-height: 46.8px !important; padding-top: 0.6px !important; padding-bottom: 1.8px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-fe91bb0 { line-height: 27.9px !important; padding-top: 0.55px !important; padding-bottom: 1.65px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-7f5caf4 span.cpc-faq-question-text { line-height: 24px !important; padding-top: 1px !important; padding-bottom: 1px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-7f5caf4 .cpc-faq-answer-inner > p { line-height: 24.8px !important; position: relative !important; top: -0.4px !important; margin-bottom: -0.8px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-0951fdf h2.ava-plp-h.ava-plp-h--2 { font-size: 30px !important; letter-spacing: -0.5px !important; line-height: 39px !important; position: relative !important; top: -1px !important; margin-bottom: -2px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-4a19232 tr > th { font-weight: 600 !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-4a19232 tr > td { font-size: 14px !important; }
}

/* m = Figma 1:6353: generated by tools/qa/V2_fixgen.py (node ids per rule in qa/laneV2/cmp/shop-1-6353-m-ava-shop.css.css) */
@media (max-width: 767px) {
  html body:not(#v2x) .elementor-578 .elementor-element-5a0b053 span.ava-crumb-sep { line-height: 17px !important; display: inline-block !important; vertical-align: top !important; padding-top: 3.5px !important; padding-bottom: 3.5px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-5a0b053 span.ava-crumb { line-height: 17px !important; display: inline-block !important; vertical-align: top !important; padding-top: 3.5px !important; padding-bottom: 3.5px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-8a74b7d h1.ava-plp-h.ava-plp-h--1 { letter-spacing: 0 !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-3e24a0f .ava-plp-meta > li { color: #151515 !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-17958cf > h3.elementor-heading-title { font-size: 12px !important; letter-spacing: 1.44px !important; line-height: 14.4px !important; padding-top: 0.8px !important; padding-bottom: 0.8px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-0ec4716 h2.ava-plp-h.ava-plp-h--2 { font-size: 22px !important; letter-spacing: -0.3px !important; line-height: 29px !important; position: relative !important; top: -0.5px !important; margin-bottom: -1px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-fe91bb0 { line-height: 22.5px !important; padding-top: 0.75px !important; padding-bottom: 2.25px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-7f5caf4 span.cpc-faq-question-text { line-height: 17.92px !important; padding-top: 1.04px !important; padding-bottom: 1.04px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-7f5caf4 .cpc-faq-answer-inner > p { font-size: 13px !important; line-height: 19.76px !important; padding-top: 0.62px !important; padding-bottom: 1.86px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-0951fdf h2.ava-plp-h.ava-plp-h--2 { font-size: 22px !important; letter-spacing: -0.3px !important; line-height: 29px !important; position: relative !important; top: -0.5px !important; margin-bottom: -1px !important; }
  html body:not(#v2x) .elementor-578 .elementor-element-4a19232 tr > th { font-weight: 600 !important; }
}
/* <<< Lane V2 shop */

/* >>> Auditor B — collection tokens (Figma MCP 238:109133 desktop / 1:6353 mobile) */
/* band meta: "48 products" 14 / 600 (13 / 600 on mobile) */
html body:not(#abx) .ava-plp-meta li:nth-child(1) strong { font-weight: 600; }
/* rail: facet counts 13 / 400 #807D75 (all lists); CANNABINOID / TERPENES toggles 13 / 600 / .26 px */
html body:not(#abx) .cpa-archive-wrap .cpa-checkbox-count { font-size: 13px !important; color: #807D75 !important; }
html body:not(#abx) .elementor-578 .cpa-archive-wrap .cpa-sec-cannabinoid .cpa-section-label, html body:not(#abx) .elementor-578 .cpa-archive-wrap .cpa-sec-terpene .cpa-section-label, html body:not(#abx) .cpa-archive-wrap .cpa-filter-sidebar .cpa-sec-cannabinoid .cpa-section-label, html body:not(#abx) .cpa-archive-wrap .cpa-filter-sidebar .cpa-sec-terpene .cpa-section-label { font-weight: 600 !important; letter-spacing: 0.26px !important; }
/* strain chart 238:109843: rows 42 apart, card 261 */
@media (min-width: 768px) {
  html body:not(#abx) .elementor-578 .cpa-strain-glance { padding-top: 21px !important; padding-bottom: 15px !important; }
  html body:not(#abx) .elementor-578 .cpa-strain-table tbody tr:not(:first-child) th, html body:not(#abx) .elementor-578 .cpa-strain-table tbody tr:not(:first-child) td { padding-top: 11px !important; padding-bottom: 11px !important; }
}
@media (max-width: 767px) {
  /* card badge (SOLD OUT 1:6427 card badge): 22 tall, 10 / 600 / .8 px, radius 6 */
  html body:not(#abx) .cpa-product-card .cpa-card-badge { font-size: 10px !important; letter-spacing: 0.8px !important; border-radius: 6px !important; }
  /* guide cards: blurb white at 90 % */
  html body:not(#abx) .elementor-578 .cpa-guide-excerpt, html body:not(#abx) .elementor-578 .elementor-element-4a19232 p.cpa-guide-excerpt { color: rgba(255, 255, 255, 0.9) !important; }
}
/* <<< Auditor B — collection tokens */

/* >>> Lane M-STORE (D44): mobile frame 1:6532 draws "Join FREE" in mixed case */
@media (max-width: 767px) {
  html body .cpa-join-btn .ava-cm { text-transform: none !important; }
}
/* <<< Lane M-STORE */
/* AUDIT2 2 Oct (store): answer-band ribbon at the frame's page x 960–1440 (238:109769). The rule above resolves
   calc(50% + 240px) against (band − image) = (1440 − 480) / 2, so the 480 px ribbon starts at x 720, 240 px left of the frame.
   Right-anchored up to 1440 (keeps the whole ribbon at 768–1440), centre + 240 … + 720 above it (D39). */
@media (min-width: 768px) and (max-width: 1440px) {
	.elementor-578 .elementor-element.elementor-element-2276845:not(.elementor-motion-effects-element-type-background) { background-position: right 0 top 0 !important; }
}
@media (min-width: 1441px) {
	.elementor-578 .elementor-element.elementor-element-2276845:not(.elementor-motion-effects-element-type-background) { background-position: calc(50% + 480px) 0 !important; }
}

/* AUDIT2 2 Oct (store): collection template 578 between 768 and 1359 px. Its boxed containers have no side padding, so
   below 1280 the crumb, H1, filter rail, cards and the answer / FAQ / learn / visit cards run to the screen edge (x 0; at
   1024 the second card column ends on the viewport edge). Keep a gutter: 20 px (the phone gutter) at 768–1023 where the
   rail + two card columns need the width, then the PDP template's 40 px; the term is 0 from 1360 up, so 1366 / 1440 keep
   their 43 / 80 px. */
@media (min-width: 768px) {
	.elementor-578 > .e-con > .e-con-inner,
	.elementor-578 > .e-con > .e-con.e-con-boxed > .e-con-inner { box-sizing: border-box; padding-left: max(0px, calc(40px - max(0px, (100% - 1280px) / 2))); padding-right: max(0px, calc(40px - max(0px, (100% - 1280px) / 2))); }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.elementor-578 > .e-con > .e-con-inner,
	.elementor-578 > .e-con > .e-con.e-con-boxed > .e-con-inner { padding-left: 20px; padding-right: 20px; }
}
