/* cf-vault-core catalog 1.0.0 (catalog views only, after core.css). .cfcat markup gets cv- classes at render time.
   Rules that must beat Astra/WooCommerce loop CSS (up to 0,4,2) use html body.cfv-scope .cfv-shop ... */

/* Hero */
html .cfv-scope .cfv-cat .cv-hero{gap:18px;padding-bottom:clamp(18px,2.4vw,30px)}
html .cfv-scope .cfv-sub{font-size:var(--cv-fs-sm);font-weight:600;color:var(--cv-mu)}
html .cfv-scope .cfv-aside{display:grid;gap:12px;min-width:0}
html .cfv-scope .cfv-search{max-width:none}
html .cfv-scope .cfv-search .cv-input.cv-input{min-width:0}
@media(max-width:599px){html .cfv-scope :is(.cfcat,.cfv-allp) .cv-ticks{grid-template-columns:minmax(0,1fr)}}

/* Category chips (a swipe row on phones) */
html .cfv-scope .cfv-cats{display:grid;gap:10px;margin-bottom:clamp(20px,2.6vw,32px)}
html .cfv-scope .cv-chips>li{flex:0 0 auto}
@media(max-width:767px){html .cfv-scope .cfv-cats .cv-chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:6px 16px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}html .cfv-scope .cfv-cats .cv-chips::-webkit-scrollbar{display:none}}
html .cfv-scope .cv-chip svg{color:#ffd978}
html .cfv-scope .cv-chip.cfv-chip--hi{border-color:#ffd978;background:rgba(240,195,90,.16);color:#fff1c4}

/* Term description (.cfcat intro), restyled, text unchanged */
html .cfv-scope .cfv-desc .cfcat-stack{display:grid;gap:14px}
@media(min-width:1024px){html .cfv-scope .cfv-desc .cfcat-stack{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px clamp(28px,3vw,48px);align-items:start}html .cfv-scope .cfv-desc .cfv-intro{grid-row:span 3}}
html .cfv-scope .cfv-intro h2{margin:0 0 10px;font-size:var(--cv-fs-lg);line-height:1.25;color:var(--cv-g-3)}
html .cfv-scope .cfv-intro p{margin:0;max-width:68ch;font-size:clamp(15.5px,.4vw + 14px,18px);line-height:1.6;color:var(--cv-body)}
html .cfv-scope .cfcat .cv-ticks{margin:16px 0 0;padding:0}
html .cfv-scope .cfcat svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html .cfv-scope .cv-ticks>li>svg,html .cfv-scope .cfcat-picks br{display:none}
html .cfv-scope .cfcat-picks-label{flex:0 0 100%;font-size:12.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--cv-g)}
html .cfv-scope .cfcat .cv-notice{margin:0}
html .cfv-scope .cfcat .cv-notice>span{min-width:0}
html .cfv-scope .cfcat :is(p,li,span) a:not(.cv-chip):not(.cv-btn){font-weight:600;text-decoration:underline;text-decoration-color:rgba(255,217,120,.45);text-underline-offset:3px}
html .cfv-scope .cfv-legacy{max-width:78ch}
html .cfv-scope .cfv-legacy :is(h2,h3,h4):empty{display:none}
html .cfv-scope .cfv-legacy :is(h2,h3,h4):empty+*{margin-top:0}
html .cfv-scope .cfv-desc .cfv-legacy h2{margin-top:0}

/* Shop block: WooCommerce's result count, sort select, grid and pagination (archives and the [products] shortcode) */
html .cfv-scope .cfv-shop .woocommerce{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 16px}
html .cfv-scope .cfv-shop .woocommerce>:is(ul,nav,.woocommerce-notices-wrapper,.cfv-none){flex:0 0 100%;width:100%;min-width:0}
html .cfv-scope .cfv-shop .woocommerce-notices-wrapper:empty{display:none}
html body.cfv-scope .cfv-shop .woocommerce-result-count{float:none;margin:0;font-size:14px;line-height:1.4;color:var(--cv-mu)}
html body.cfv-scope .cfv-shop .woocommerce-ordering{float:none;margin:0;flex:0 1 260px;min-width:0}
html body.cfv-scope .cfv-shop select.orderby.cv-input{min-height:44px;padding-left:18px;border-color:rgba(240,195,90,.55);border-radius:999px;font-size:14.5px;font-weight:700;color:#ffe6a3}
@media(max-width:479px){html body.cfv-scope .cfv-shop .woocommerce-ordering{flex:1 1 100%}}
html body.cfv-scope .cfv-shop ul.products.cv-pgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
@media(min-width:700px){html body.cfv-scope .cfv-shop ul.products.cv-pgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(min-width:1024px){html body.cfv-scope .cfv-shop ul.products.cv-pgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
html body.cfv-scope .cfv-shop ul.products.cv-pgrid::before,html body.cfv-scope .cfv-shop ul.products.cv-pgrid::after{content:none;display:none}
html body.cfv-scope .cfv-shop ul.products>li.product{display:flex;float:none;width:auto;min-width:0;margin:0;padding:0;border:0;text-align:left;list-style:none}
html body.cfv-scope .cfv-shop li.product .cv-pcard{flex:1 1 auto;width:100%}
html body.cfv-scope .cfv-shop li.product .cv-pcard__media img{margin:0;border-radius:10px}
html body.cfv-scope .cfv-shop li.product .cv-pcard__title a{display:inline;position:static;color:inherit}
html .cfv-scope .cv-pcard__buy a.added_to_cart{justify-content:center;width:100%}
html .cfv-scope .cv-sv.cfv-oos{border:1px solid rgba(184,191,205,.5);background:rgba(4,6,12,.86);box-shadow:none;color:#dfe4ee}
html .cfv-scope .cfv-is-oos .cv-pcard__media img{opacity:.55}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination{margin:clamp(24px,3vw,40px) 0 0;padding:0;text-align:center}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;border:0;white-space:normal}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul li{display:block;float:none;margin:0;padding:0;border:0;overflow:visible}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul li .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;margin:0;padding:0 13px;border:1px solid rgba(240,195,90,.38);border-radius:999px;background:rgba(255,255,255,.03);color:#ece6d6;font-size:15px;font-weight:700;line-height:1;text-decoration:none}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul li a.page-numbers:is(:hover,:focus-visible){border-color:rgba(255,217,120,.85);background:rgba(240,195,90,.15);color:#fff}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul li .page-numbers.current{border-color:#ffe39a;background:linear-gradient(180deg,#ffe49a,#f0bf4f 55%,#d99a2b);color:#1c1204}
html body.cfv-scope .cfv-shop nav.woocommerce-pagination ul li .page-numbers.dots{min-width:0;padding:0 4px;border-color:transparent;background:none;color:var(--cv-mu)}
html .cfv-scope .cfv-none{display:grid;gap:14px}
html .cfv-scope .cfv-none p{margin:0;max-width:66ch;line-height:1.6;color:var(--cv-body)}

/* Bottom guide (pcbdw .cfcat-bottom), restyled */
html .cfv-scope .cfv-guide .cfcat-stack{display:grid;gap:var(--cv-gap)}
html .cfv-scope .cfcat-head{margin:0}
html .cfv-scope .cfcat-head h2{margin:0;font-size:var(--cv-fs-section);line-height:1.08;letter-spacing:-.028em;color:#fff;text-wrap:balance}
html .cfv-scope .cfcat-head p{margin:0;max-width:62ch;font-size:clamp(15px,.3vw + 14px,17px);line-height:1.6;color:var(--cv-body)}
html .cfv-scope .cfcat-grid h3{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:var(--cv-fs-md);line-height:1.3;color:#fff}
html .cfv-scope .cfcat :is(h3,h4) svg{flex:0 0 auto;width:22px;height:22px;color:var(--cv-g)}
html .cfv-scope .cfcat .cv-card:not(.cv-rt) p{margin:0;font-size:15px;line-height:1.6;color:var(--cv-body)}
html .cfv-scope .cfcat .cv-card:not(.cv-rt) p+p{margin-top:10px}
html .cfv-scope .cfcat .cv-card--flat>h3{margin:0 0 14px;font-size:var(--cv-fs-lg);line-height:1.25;color:#fff}
html .cfv-scope .cfcat-rules{margin:0 0 12px}
html .cfv-scope .cfcat-rules>div{padding:14px 16px;border:1px solid var(--cv-line-2);border-radius:var(--cv-r-sm);background:var(--cv-fill-2)}
html .cfv-scope .cfcat-rules h4{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:15px;line-height:1.35;color:var(--cv-g-3)}
html .cfv-scope .cfcat-rules h4 svg{width:18px;height:18px}
html .cfv-scope .cfcat .cfcat-rules p{font-size:14px}
html .cfv-scope .cfcat .cv-rt{font-size:16px}
html .cfv-scope .cfcat .cv-rt h3:first-child{margin-top:0}
html .cfv-scope .cfcat-cta h3{margin:0;font-size:var(--cv-fs-section);line-height:1.08;letter-spacing:-.028em;color:#fff}
@media(min-width:900px){html .cfv-scope .cv-plate.cfcat-cta>*{grid-column:1}html .cfv-scope .cv-plate.cfcat-cta>.cfcat-btns{grid-column:2;grid-row:1/span 2}}
html .cfv-scope .cfv-guide .cfv-legacy{max-width:none;padding:var(--cv-pad);border:1px solid var(--cv-line-2);border-radius:var(--cv-r-md);background:var(--cv-fill-1)}
html .cfv-scope .cfv-help{margin-top:clamp(32px,4vw,56px)}

/* Browser QA 2026-09-25 (390/768/1440): the theme's clearfix ::before/::after on div.woocommerce became flex items and pushed
   the result count to the middle (desktop, tablet) or the right (phone) on archives, tags and search. Long guide prose capped at 78ch. */
html .cfv-scope .cfv-shop .woocommerce::before,html .cfv-scope .cfv-shop .woocommerce::after{content:none;display:none}
html .cfv-scope .cfcat .cv-rt>:is(p,ul,ol,h3,h4){max-width:78ch}
