@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//fjgxki7k8x-staging.onrocket.site/wp-content/themes/woodmart/fonts/woodmart-font-2-400.woff2?v=8.3.9") format("woff2");
}

:root {
	--wd-text-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: #767676;
	--wd-text-font-size: 16px;
	--wd-title-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 500;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 500;
	--wd-widget-title-transform: capitalize;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Raleway", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 600;
	--wd-header-el-transform: capitalize;
	--wd-header-el-font-size: 17px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(25,58,86);
	--wd-alternative-color: rgb(255,235,52);
	--btn-default-transform: none;
	--btn-default-bgcolor: rgb(17,46,68);
	--btn-default-bgcolor-hover: rgb(4,59,88);
	--btn-accented-transform: none;
	--btn-accented-bgcolor: rgb(25,58,86);
	--btn-accented-bgcolor-hover: rgb(25,58,86);
	--btn-transform: capitalize;
	--btn-font-size: 14px;
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-archive-shop .wd-builder-off,.wd-wishlist-content,.related-and-upsells,.cart-collaterals,.wd-shop-product,.wd-fbt) .wd-products-with-bg, :is(.woodmart-archive-shop .wd-builder-off,.wd-wishlist-content,.related-and-upsells,.cart-collaterals,.wd-shop-product,.wd-fbt) .wd-products-with-bg :is(.wd-product,.wd-cat) {
	--wd-prod-bg:rgb(255,255,255);
	--wd-bordered-bg:rgb(255,255,255);
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(25,58,86);
	background-image: none;
}
html .wd-checkout-steps li {
	font-size: 26px;
	text-transform: capitalize;
}
html .wd-nav-mobile > li > a {
	text-transform: capitalize;
}
html table th {
	text-transform: capitalize;
}
.page .wd-page-content {
	background-color: rgb(246,245,248);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) .wd-page-content {
	background-color: rgb(246,245,248);
	background-image: none;
}
.single-product .wd-page-content {
	background-color: rgb(246,245,248);
	background-image: none;
}
.woodmart-archive-blog .wd-page-content {
	background-color: rgb(246,245,248);
	background-image: none;
}
.single-post .wd-page-content {
	background-color: rgb(246,245,248);
	background-image: none;
}
body, [class*=color-scheme-light], [class*=color-scheme-dark], .wd-search-form[class*="wd-header-search-form"] form.searchform, .wd-el-search .searchform {
	--wd-form-bg: rgb(255,255,255);
}
.wd-nav-arrows.wd-pos-sep:not(:where(.wd-custom-style)) {
	--wd-arrow-size: 42px;
	--wd-arrow-icon-size: 16px;
	--wd-arrow-offset-h: -21px;
	--wd-arrow-color: rgb(255,255,255);
	--wd-arrow-color-hover: rgba(255,255,255,0.9);
	--wd-arrow-color-dis: rgb(255,255,255);
	--wd-arrow-bg: rgb(25,58,86);
	--wd-arrow-bg-hover: rgb(25,58,86);
	--wd-arrow-bg-dis: rgb(25,58,86);
	--wd-arrow-radius: 24px;
}
.wd-nav-arrows.wd-pos-together:not(:where(.wd-custom-style)) {
	--wd-arrow-gap: 10px;
	--wd-arrow-size: 42px;
	--wd-arrow-icon-size: 16px;
	--wd-arrow-offset-h: -5px;
	--wd-arrow-offset-v: 5px;
	--wd-arrow-color: rgb(255,255,255);
	--wd-arrow-color-hover: rgba(255,255,255,0.8);
	--wd-arrow-color-dis: rgb(255,255,255);
	--wd-arrow-bg: rgb(52,82,239);
	--wd-arrow-bg-hover: rgba(52,82,239,0.9);
	--wd-arrow-bg-dis: rgb(52,82,239);
	--wd-arrow-radius: 24px;
}
.wd-nav-scroll {
	--wd-nscroll-bg: rgba(250,186,91,0.15);
	--wd-nscroll-drag-bg: rgb(250,186,91);
	--wd-nscroll-drag-bg-hover: rgba(250,186,91,0.9);
}
.product-labels .product-label.onsale {
	background-color: rgb(250,186,91);
}
.product-labels .product-label.new {
	background-color: rgb(25,58,86);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
.woocommerce-product-gallery {
	--wd-gallery-gap: 7px;
}

@media (max-width: 768.98px) {
	.wd-nav-arrows.wd-pos-sep:not(:where(.wd-custom-style)) {
		--wd-arrow-size: 32px;
	--wd-arrow-icon-size: 14px;
	--wd-arrow-offset-h: 62px;
	}
	.wd-nav-arrows.wd-pos-together:not(:where(.wd-custom-style)) {
		--wd-arrow-size: 32px;
	--wd-arrow-icon-size: 14px;
	}
	.woocommerce-product-gallery {
		--wd-gallery-gap: 4px;
	}

}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 35px;
--btn-default-color: #fff;
--btn-default-color-hover: #fff;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 35px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 35px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 0px;
}

@media (min-width: 1222px) {
[data-vc-full-width]:not([data-vc-stretch-content]),
:is(.vc_section, .vc_row).wd-section-stretch {
padding-left: calc((100vw - 1222px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
padding-right: calc((100vw - 1222px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
}
}


.wd-page-title {
background-color: rgb(25,58,86);
}

/* ════════════════════════════════════════════════════════════════
   KRONFÖNSTER — Theme Options CSS (Clean Version)
   Last updated: 2026-04-13
   
   REMOVED:
   • PEWC card overrides (padding:0, checkmark) — conflicts with style.css
   • Kron Legacy (lightbox, video) — already in style.css
   
   THIS FILE OWNS:
   • Kron page layout (wrapper + sidebar card)
   • Custom page components (kf-hero, kf-section, kf-btn, kf-card, etc.)
   • Cart / Checkout / Thank You page WPBakery layouts
   • Cart notice styling
   • Single product overrides (breadcrumb, trust, Pris label, mobile bar)
   • Product page content (message box, description, tabs, trust bar)
   
   style.css OWNS:
   • PEWC addon cards, product configurator
   • Sticky sidebar + CTA, mobile bottom bar base
   • Mega menu, footer, archive/category, widget sidebar
════════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════
   KRONFÖNSTER — Theme Options Custom CSS (Clean Edition)
   
   CSS OWNERSHIP:
   • style.css (child theme): PEWC cards, product page, archive,
     sidebar, mega menu, footer, sticky column, ATC hide
   • This file (Theme Options): Page layouts (kf-*), cart, checkout,
     thank you, single product improvements, trust signals
   
   LOAD ORDER: style.css → Theme Options (this wins on conflicts)
════════════════════════════════════════════════════════════════ */
.eg-everest-lightbox-overlay {
	display:none;
}

.wpcf7-response-output {
	display:none;
}

/* ── PEWC checkmark fix (style.css has broken ¹3 encoding) ── */
.pewc-radio-image-wrapper:has(input:checked)::after {
    content: "✓" !important;
    position: absolute;
    top: 10px;
    right: 10px;
    background: #193A56;
    color: white;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    z-index: 3;
    line-height: 1;
}

/* ════════════════════════════════════════════════════════
   KRON LAYOUT — Page wrapper + sidebar card
════════════════════════════════════════════════════════ */
.kron-page-wrapper { background-color: #f4f7f9 !important; padding: 20px 0 !important; }
.kron-main-container { max-width: 1400px !important; margin: 0 auto; display: flex !important; gap: 50px !important; padding: 0 10px; }
.kron-content-card { flex: 2.5 !important; background: transparent !important; padding: 0 !important; border: none !important; box-shadow: none !important; min-width: 0; }
.kron-sidebar-area { flex: 1 !important; min-width: 320px; }
.kron-sidebar-card { background: #ffffff !important; border-radius: 12px !important; overflow: hidden !important; box-shadow: 0 10px 30px rgba(22,58,85,0.08) !important; position: sticky; top: 100px; border: 1px solid rgba(22,58,85,0.05) !important; }
.sidebar-widget-padding { padding: 30px !important; }
.sidebar-map-box { height: 160px; position: relative; overflow: hidden; }
.sidebar-map-box img { width: 100%; height: 100%; object-fit: cover; }
.kron-sidebar-card h4.kron-page-title-small { font-weight: 800 !important; color: #193a56 !important; text-transform: uppercase !important; font-size: 16px !important; margin-bottom: 20px !important; display: block !important; border: none !important; }
.sidebar-hours-box { background: #193a56; padding: 25px; border-radius: 10px; color: #fff !important; margin-top: 10px; }
.sidebar-hours-box p { color: #fff !important; margin: 0; font-size: 14px; }
.hours-label { font-size: 10px !important; text-transform: uppercase; opacity: 0.6; margin-bottom: 10px !important; }
@media (max-width: 1024px) {
    .kron-main-container { flex-direction: column !important; padding: 0 20px; }
    .kron-sidebar-card { position: static !important; }
}


/* ════════════════════════════════════════════════════════
   CUSTOM PAGE COMPONENTS — Full kf-* design system
   Used in WPBakery vc_raw_html blocks on custom pages.
   Brand: Primary #163A55 (navy), Accent #FFEB34 (yellow)
════════════════════════════════════════════════════════ */

/* ── Overflow fix ── */
body, .site-wrapper, .main-page-wrapper, .page-wrapper, .site-content,
.content-area, .hentry, article.page, .entry-content, .post-content,
.wpb_wrapper, .vc_column-inner { overflow-x: visible !important; }

body .entry-content .kf-fw { width: 100vw !important; max-width: 100vw !important; position: relative !important; left: 50% !important; right: 50% !important; margin-left: -50vw !important; margin-right: -50vw !important; box-sizing: border-box !important; }

/* ── WoodMart content area ── */
.page-template-default .site-content, .page-template-default .content-area, .page-template-default #content, .page-template-default .hentry, .page-template-default article.page { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; }
.wd-content-area, .site-content .entry-content, .site-content .post-content { box-shadow: none !important; border-radius: 0 !important; }
#main, .main-page-wrapper, .site-main, .hentry, article.page > .entry-content, .entry-content > .wpb_wrapper, .entry-content > div:first-child { padding-top: 0 !important; margin-top: 0 !important; }
.kf-page, .entry-content .kf-page > *:last-child { padding-bottom: 0 !important; margin-bottom: 0 !important; }
.wd-col.col-xs-12.col-sm-12.col-md-12 { max-width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
.wpb_column.vc_col-sm-12 { padding-left: 0 !important; padding-right: 0 !important; }
.kf-page { color: #242424; }
.kf-page * { box-sizing: border-box; }

/* ── HERO ── */
body .entry-content .kf-hero { height: 480px !important; background-size: cover !important; background-position: center !important; background-color: #163A55 !important; position: relative !important; overflow: hidden !important; margin: 0 !important; margin-top: -40px !important; }
body .entry-content .kf-hero-has-title { position: relative !important; }
body .entry-content .kf-hero-title { position: absolute !important; top: 8% !important; left: 50% !important; transform: translateX(-50%) !important; background: rgba(22,58,85,0.82) !important; padding: 16px 48px !important; text-align: center !important; white-space: nowrap !important; z-index: 2 !important; border-bottom: 3px solid #FFEB34 !important; }
body .entry-content .kf-hero-title h1 { font-size: 34px !important; font-weight: 700 !important; color: #ffffff !important; margin: 0 !important; text-transform: uppercase !important; letter-spacing: 0.08em !important; }

/* ── INTRO ── */
body .entry-content .kf-intro { padding: 56px 12% 48px !important; background: transparent !important; box-shadow: none !important; border-radius: 0 !important; border: none !important; text-align: center !important; }
body .entry-content .kf-intro h1 { font-size: 30px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 20px 0 !important; line-height: 1.25 !important; }
body .entry-content .kf-intro p { font-size: 17px !important; color: #555 !important; line-height: 1.85 !important; margin: 0 auto !important; max-width: 760px !important; }

/* ── BUTTONS ── */
body .entry-content .kf-btns { display: flex !important; flex-wrap: wrap !important; gap: 14px !important; align-items: center !important; }
body .entry-content .kf-btn { display: inline-flex !important; align-items: center !important; gap: 10px !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.07em !important; text-transform: uppercase !important; text-decoration: none !important; cursor: pointer !important; padding: 14px 26px !important; border-radius: 4px !important; line-height: 1 !important; position: relative !important; overflow: hidden !important; transition: all 0.22s ease !important; white-space: nowrap !important; }
body .entry-content .kf-btn::after { content: '\2192' !important; font-size: 16px !important; font-weight: 400 !important; opacity: 0 !important; transform: translateX(-6px) !important; transition: opacity 0.22s ease, transform 0.22s ease !important; display: inline-block !important; line-height: 1 !important; }
body .entry-content .kf-btn:hover::after { opacity: 1 !important; transform: translateX(0) !important; }
body .entry-content .kf-btn:hover { gap: 14px !important; text-decoration: none !important; }
body .entry-content .kf-btn-dark { background: #163A55 !important; color: #fff !important; border: 2px solid #163A55 !important; }
body .entry-content .kf-btn-dark:hover { background: #0f2a3f !important; border-color: #0f2a3f !important; color: #fff !important; }
body .entry-content .kf-btn-outline { background: transparent !important; color: #163A55 !important; border: 2px solid #163A55 !important; }
body .entry-content .kf-btn-outline:hover { background: #163A55 !important; color: #fff !important; }
body .entry-content .kf-btn-light { background: transparent !important; color: #fff !important; border: 2px solid rgba(255,255,255,0.75) !important; padding: 15px 30px !important; font-size: 13px !important; }
body .entry-content .kf-btn-light:hover { background: rgba(255,255,255,0.15) !important; border-color: #fff !important; color: #fff !important; }
body .entry-content .kf-btn-light::after { color: #FFEB34 !important; }
body .entry-content .kf-btn-yellow { background: #FFEB34 !important; color: #163A55 !important; border: 2px solid #FFEB34 !important; }
body .entry-content .kf-btn-yellow:hover { background: #f5df20 !important; border-color: #f5df20 !important; color: #163A55 !important; }

/* ── SECTIONS ── */
body .entry-content .kf-section { padding: 72px 6% !important; background: #ffffff !important; }
body .entry-content .kf-section-grey { padding: 72px 6% !important; background: #f4f6f8 !important; }
body .entry-content .kf-section-navy { padding: 72px 6% !important; background: #163A55 !important; }
body .entry-content .kf-section-title { font-size: 24px !important; font-weight: 800 !important; color: #163A55 !important; text-align: center !important; text-transform: uppercase !important; letter-spacing: 0.07em !important; margin: 0 0 48px 0 !important; line-height: 1.25 !important; }

/* ── USP STRIP ── */
body .entry-content .kf-usp { background: #163A55 !important; padding: 52px 6% !important; display: flex !important; justify-content: center !important; align-items: center !important; gap: 0 !important; margin: 0 !important; }
body .entry-content .kf-usp-item { flex: 1 !important; max-width: 380px !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 18px !important; text-align: center !important; padding: 0 36px !important; border-right: 1px solid rgba(255,255,255,0.12) !important; }
body .entry-content .kf-usp-item:last-child { border-right: none !important; }
body .entry-content .kf-usp-item span { font-size: 15px !important; font-weight: 700 !important; color: #ffffff !important; line-height: 1.3 !important; letter-spacing: 0.03em !important; }

/* ── FLEX ROW ── */
body .entry-content .kf-row { display: flex !important; gap: 24px !important; margin-bottom: 24px !important; width: 100% !important; align-items: flex-start !important; }
body .entry-content .kf-row:last-child { margin-bottom: 0 !important; }
body .entry-content .kf-col { flex: 1 1 0 !important; min-width: 0 !important; width: 50% !important; }

/* ── MATERIAL CARDS ── */
body .entry-content .kf-card { background: #ffffff !important; border-radius: 8px !important; overflow: hidden !important; box-shadow: 0 2px 16px rgba(22,58,85,0.08) !important; display: flex !important; flex-direction: column !important; height: 100% !important; transition: box-shadow 0.22s ease, transform 0.22s ease !important; }
body .entry-content .kf-card:hover { box-shadow: 0 8px 32px rgba(22,58,85,0.14) !important; transform: translateY(-3px) !important; }
body .entry-content .kf-card-imgbox { width: 100% !important; height: 240px !important; overflow: hidden !important; background: #d8e2ea !important; flex-shrink: 0 !important; }
body .entry-content .kf-card-imgbox img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; transition: transform 0.4s ease !important; }
body .entry-content .kf-card:hover .kf-card-imgbox img { transform: scale(1.04) !important; }
body .entry-content .kf-card-body { padding: 28px 24px !important; flex: 1 !important; display: flex !important; flex-direction: column !important; border-top: 3px solid transparent !important; transition: border-color 0.22s !important; }
body .entry-content .kf-card:hover .kf-card-body { border-top-color: #FFEB34 !important; }
body .entry-content .kf-card-body h3 { font-size: 20px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 12px 0 !important; text-align: center !important; }
body .entry-content .kf-card-body p { font-size: 14px !important; color: #5a6a7a !important; line-height: 1.75 !important; margin: 0 !important; text-align: center !important; }

details.kf-card-mer { border-top: 1px solid rgba(22,58,85,0.1) !important; margin-top: 18px !important; }
details.kf-card-mer summary { display: flex !important; align-items: center !important; gap: 8px !important; padding: 12px 0 !important; font-size: 13px !important; font-weight: 700 !important; color: #163A55 !important; cursor: pointer !important; list-style: none !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; }
details.kf-card-mer summary::-webkit-details-marker { display: none !important; }
details.kf-card-mer summary .kf-mer-arrow { font-size: 12px !important; transition: transform 0.2s !important; display: inline-block !important; }
details.kf-card-mer[open] summary .kf-mer-arrow { transform: rotate(180deg) !important; }
.kf-card-mer-body { padding: 4px 0 16px !important; font-size: 14px !important; color: #4a5a6a !important; line-height: 1.8 !important; }
.kf-card-mer-body p { margin: 0 0 12px 0 !important; }
.kf-card-mer-body p:last-child { margin-bottom: 0 !important; }
.kf-card-mer-body strong { color: #163A55 !important; font-weight: 700 !important; }

/* ── SPLIT CTA ── */
body .entry-content .kf-split { display: flex !important; min-height: 360px !important; margin: 0 !important; }
body .entry-content .kf-split-img { flex: 1 1 60% !important; background-size: cover !important; background-position: center !important; background-color: #163A55 !important; min-height: 300px !important; }
body .entry-content .kf-split-txt { flex: 0 0 40% !important; background: #163A55 !important; padding: 64px 52px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: flex-start !important; }
body .entry-content .kf-split-txt h2 { font-size: 30px !important; font-weight: 900 !important; color: #ffffff !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; margin: 0 0 12px 0 !important; line-height: 1.2 !important; }
body .entry-content .kf-split-txt p { font-size: 16px !important; color: rgba(255,255,255,0.8) !important; margin: 0 0 28px 0 !important; line-height: 1.6 !important; }

/* ── BLOG CARDS ── */
body .entry-content .kf-blog-card { display: flex !important; flex-direction: column !important; text-decoration: none !important; background: #ffffff !important; box-shadow: 0 2px 16px rgba(22,58,85,0.07) !important; border-radius: 8px !important; overflow: hidden !important; height: 100% !important; transition: box-shadow 0.22s, transform 0.22s !important; }
body .entry-content .kf-blog-card:hover { box-shadow: 0 8px 32px rgba(22,58,85,0.14) !important; transform: translateY(-3px) !important; text-decoration: none !important; }
body .entry-content .kf-blog-card img { width: 100% !important; height: 200px !important; object-fit: cover !important; display: block !important; background: #d8e2ea !important; }
body .entry-content .kf-blog-body { padding: 20px 24px !important; border-top: 3px solid #FFEB34 !important; }
body .entry-content .kf-blog-body h3 { font-size: 16px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 8px 0 !important; line-height: 1.4 !important; }
body .entry-content .kf-blog-body p { font-size: 14px !important; color: #5a6a7a !important; line-height: 1.6 !important; margin: 0 !important; }

/* ── TESTIMONIAL ── */
body .entry-content .kf-testi-section { background: #f4f6f8 !important; padding: 72px 6% !important; }
body .entry-content .kf-testi-inner { display: flex !important; gap: 56px !important; align-items: flex-start !important; max-width: 1100px !important; margin: 0 auto !important; }
body .entry-content .kf-testi-img { flex: 0 0 300px !important; width: 300px !important; border-radius: 8px !important; overflow: hidden !important; box-shadow: 0 4px 24px rgba(22,58,85,0.12) !important; }
body .entry-content .kf-testi-img img { width: 100% !important; display: block !important; }
body .entry-content .kf-testi-body { flex: 1 !important; min-width: 0 !important; }
body .entry-content .kf-testi-intro { font-size: 15px !important; color: #555 !important; line-height: 1.75 !important; margin: 0 0 20px 0 !important; }
body .entry-content .kf-testi-quote { font-size: 16px !important; font-style: italic !important; color: #333 !important; line-height: 1.8 !important; margin: 0 0 24px 0 !important; border-left: 4px solid #FFEB34 !important; padding: 8px 0 8px 24px !important; background: rgba(255,235,52,0.06) !important; }
body .entry-content .kf-testi-name { font-weight: 700 !important; color: #163A55 !important; font-size: 16px !important; margin: 0 0 24px 0 !important; }

/* ── FEATURES — Alternating img|text ── */
body .entry-content .kf-features-wrap { background: #fff !important; margin: 0 !important; padding: 0 !important; }
body .entry-content .kf-features-title { font-size: 24px !important; font-weight: 800 !important; color: #163A55 !important; text-align: center !important; text-transform: uppercase !important; letter-spacing: 0.07em !important; margin: 0 !important; padding: 64px 6% 52px !important; background: #fff !important; }
body .entry-content .kf-alt-row { display: flex !important; min-height: 440px !important; align-items: stretch !important; }
body .entry-content .kf-alt-img { flex: 1 1 25% !important; overflow: hidden !important; min-height: 400px !important; position: relative !important; background: #d8e2ea !important; }
body .entry-content .kf-alt-img img { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; transition: transform 0.5s ease !important; }
body .entry-content .kf-alt-img:hover img { transform: scale(1.04) !important; }
body .entry-content .kf-alt-txt { flex: 1 1 25% !important; background: #ffffff !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; padding: 48px 40px !important; text-align: center !important; }
body .entry-content .kf-alt-txt h3 { font-size: 22px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 18px 0 !important; line-height: 1.3 !important; }
body .entry-content .kf-alt-txt p { font-size: 15px !important; color: #5a6a7a !important; line-height: 1.8 !important; margin: 0 0 20px 0 !important; }
body .entry-content .kf-alt-txt p:last-child { margin-bottom: 0 !important; }

/* ── PRODUCT CARDS ── */
body .entry-content .kf-prod-card { background: #ffffff !important; border-radius: 8px !important; overflow: hidden !important; box-shadow: 0 2px 16px rgba(22,58,85,0.08) !important; display: flex !important; flex-direction: column !important; height: 100% !important; transition: box-shadow 0.22s, transform 0.22s !important; }
body .entry-content .kf-prod-card:hover { box-shadow: 0 8px 32px rgba(22,58,85,0.14) !important; transform: translateY(-3px) !important; }
body .entry-content .kf-prod-imgbox { width: 100% !important; height: 260px !important; overflow: hidden !important; background: #d8e2ea !important; flex-shrink: 0 !important; position: relative !important; }
body .entry-content .kf-prod-imgbox img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; position: absolute !important; top: 0 !important; left: 0 !important; transition: transform 0.4s ease !important; }
body .entry-content .kf-prod-card:hover .kf-prod-imgbox img { transform: scale(1.04) !important; }
body .entry-content .kf-prod-body { padding: 24px !important; flex: 1 !important; display: flex !important; flex-direction: column !important; border-top: 3px solid #FFEB34 !important; }
body .entry-content .kf-prod-body h3 { font-size: 18px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 12px 0 !important; text-align: left !important; }
body .entry-content .kf-prod-body p { font-size: 14px !important; color: #5a6a7a !important; line-height: 1.75 !important; margin: 0 0 20px 0 !important; text-align: left !important; flex: 1 !important; }
body .entry-content .kf-prod-body .kf-btns { justify-content: flex-start !important; }

/* ── SHOWROOM ── */
body .entry-content .kf-showroom-cta { display: flex !important; min-height: 460px !important; margin: 0 !important; }
body .entry-content .kf-showroom-gallery { flex: 1 1 58% !important; min-height: 380px !important; max-height: 480px !important; overflow: hidden !important; position: relative !important; background: #163A55 !important; }
body .entry-content .kf-showroom-gallery > div, body .entry-content .kf-showroom-gallery .woodmart-gallery, body .entry-content .kf-showroom-gallery .wd-gallery-img, body .entry-content .kf-showroom-gallery .wd-carousel-container, body .entry-content .kf-showroom-gallery .swiper-container, body .entry-content .kf-showroom-gallery .swiper-wrapper, body .entry-content .kf-showroom-gallery .swiper-slide { height: 100% !important; min-height: 380px !important; }
body .entry-content .kf-showroom-gallery img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; }
body .entry-content .kf-showroom-panel { flex: 0 0 42% !important; background: #163A55 !important; padding: 64px 52px !important; display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: flex-start !important; }
body .entry-content .kf-showroom-panel h2 { font-size: 24px !important; font-weight: 900 !important; color: #ffffff !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; margin: 0 0 12px 0 !important; line-height: 1.35 !important; }
body .entry-content .kf-showroom-panel p { font-size: 15px !important; color: rgba(255,255,255,0.75) !important; margin: 0 0 28px !important; line-height: 1.65 !important; }

/* ── FAQ ── */
body .entry-content .kf-faq-section { padding: 72px 6% !important; background: #f4f6f8 !important; }
body .entry-content .kf-faq-intro { text-align: center !important; max-width: 680px !important; margin: 0 auto 52px !important; }
body .entry-content .kf-faq-intro h2 { font-size: 24px !important; font-weight: 800 !important; color: #163A55 !important; text-transform: uppercase !important; letter-spacing: 0.07em !important; margin: 0 0 14px 0 !important; }
body .entry-content .kf-faq-intro p { font-size: 16px !important; color: #5a6a7a !important; margin: 0 !important; line-height: 1.6 !important; }
body .entry-content .kf-faq-group { margin-bottom: 40px !important; }
body .entry-content .kf-faq-group-title { font-size: 13px !important; font-weight: 800 !important; color: #163A55 !important; text-transform: uppercase !important; letter-spacing: 0.12em !important; margin: 0 0 14px 0 !important; padding: 0 0 12px 0 !important; border-bottom: 2px solid #163A55 !important; }
details.kf-faq-item { background: #ffffff !important; border-radius: 6px !important; margin-bottom: 4px !important; border: 1px solid rgba(22,58,85,0.09) !important; overflow: hidden !important; transition: border-color 0.2s !important; }
details.kf-faq-item[open] { border-color: #163A55 !important; }
details.kf-faq-item summary { padding: 17px 52px 17px 20px !important; font-size: 15px !important; font-weight: 600 !important; color: #163A55 !important; cursor: pointer !important; list-style: none !important; position: relative !important; user-select: none !important; line-height: 1.45 !important; transition: background 0.15s !important; }
details.kf-faq-item summary::-webkit-details-marker { display: none !important; }
details.kf-faq-item summary::after { content: '+' !important; position: absolute !important; right: 18px !important; top: 50% !important; transform: translateY(-50%) !important; font-size: 22px !important; font-weight: 300 !important; color: #163A55 !important; transition: transform 0.2s !important; line-height: 1 !important; }
details.kf-faq-item[open] summary::after { transform: translateY(-50%) rotate(45deg) !important; }
details.kf-faq-item summary:hover { background: rgba(22,58,85,0.03) !important; }
.kf-faq-answer { padding: 0 20px 20px !important; font-size: 14px !important; color: #5a6a7a !important; line-height: 1.8 !important; border-top: 1px solid rgba(22,58,85,0.07) !important; }
.kf-faq-answer p { margin: 14px 0 0 0 !important; }

/* ── USP BOTTOM ── */
body .entry-content .kf-usp-bottom { background: #ffffff !important; padding: 60px 4% !important; display: flex !important; justify-content: center !important; align-items: flex-start !important; gap: 0 !important; border-top: 1px solid #e8edf0 !important; }
body .entry-content .kf-usp-bottom-item { flex: 1 !important; max-width: 260px !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; padding: 0 24px !important; position: relative !important; }
body .entry-content .kf-usp-bottom-item:not(:last-child)::after { content: '' !important; position: absolute !important; right: 0 !important; top: 15% !important; bottom: 15% !important; width: 1px !important; background: #dde3e8 !important; }
body .entry-content .kf-usp-bottom-icon { width: 100px !important; height: auto !important; max-height: 130px !important; display: block !important; margin: 0 auto 16px !important; }
body .entry-content .kf-usp-bottom-title { font-size: 16px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 6px 0 !important; }
body .entry-content .kf-usp-bottom-sub { font-size: 14px !important; color: #7a8a9a !important; margin: 0 !important; line-height: 1.5 !important; }

/* ── SUB-PAGE LAYOUTS ── */
body .entry-content .kf-content-2col { padding: 64px 6% !important; background: #fff !important; }
body .entry-content .kf-content-2col-grey { padding: 64px 6% !important; background: #f4f6f8 !important; }
body .entry-content .kf-content-col { flex: 1 1 0 !important; min-width: 0 !important; padding: 0 28px !important; }
body .entry-content .kf-content-col h2 { font-size: 22px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 18px !important; text-align: center !important; }
body .entry-content .kf-content-col p { font-size: 15px !important; color: #5a6a7a !important; line-height: 1.8 !important; text-align: center !important; margin: 0 0 20px !important; }
body .entry-content .kf-content-col .kf-btns { justify-content: center !important; }
body .entry-content .kf-img-pair { display: flex !important; gap: 3px !important; background: #163A55 !important; }
body .entry-content .kf-img-pair-col { flex: 1 !important; overflow: hidden !important; }
body .entry-content .kf-img-pair-col img { width: 100% !important; height: 380px !important; object-fit: cover !important; display: block !important; transition: transform 0.5s ease !important; }
body .entry-content .kf-img-pair-col:hover img { transform: scale(1.04) !important; }
body .entry-content .kf-cta-banner { background: #f4f6f8 !important; padding: 56px 6% !important; text-align: center !important; border-top: 4px solid #163A55 !important; border-bottom: 4px solid #163A55 !important; }
body .entry-content .kf-cta-banner h2 { font-size: 26px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 28px !important; }
body .entry-content .kf-cta-banner .kf-btns { justify-content: center !important; }
body .entry-content .kf-longtext { padding: 56px 10% !important; background: #fff !important; }
body .entry-content .kf-longtext h2 { font-size: 23px !important; font-weight: 700 !important; color: #163A55 !important; text-align: center !important; margin: 0 0 32px !important; }
body .entry-content .kf-longtext h3 { font-size: 18px !important; font-weight: 700 !important; color: #163A55 !important; text-align: center !important; margin: 32px 0 14px !important; }
body .entry-content .kf-longtext p { font-size: 15px !important; color: #5a6a7a !important; line-height: 1.85 !important; text-align: center !important; margin: 0 0 18px !important; }
body .entry-content .kf-longtext a { color: #163A55 !important; text-decoration: underline !important; }

body .entry-content .kf-accordion-section { padding: 56px 6% !important; background: #f4f6f8 !important; }
body .entry-content .kf-accordion-section h2 { font-size: 26px !important; font-weight: 700 !important; color: #163A55 !important; text-align: center !important; margin: 0 0 18px !important; }
body .entry-content .kf-accordion-section .kf-lead { font-size: 16px !important; color: #5a6a7a !important; line-height: 1.75 !important; text-align: center !important; margin: 0 auto 40px !important; max-width: 720px !important; }
details.kf-acc-item { background: #fff !important; border: 1px solid rgba(22,58,85,0.1) !important; border-radius: 6px !important; margin-bottom: 6px !important; overflow: hidden !important; transition: border-color 0.2s !important; }
details.kf-acc-item[open] { border-color: #163A55 !important; border-left: 4px solid #163A55 !important; }
details.kf-acc-item summary { padding: 18px 52px 18px 22px !important; font-size: 15px !important; font-weight: 600 !important; color: #163A55 !important; cursor: pointer !important; list-style: none !important; position: relative !important; user-select: none !important; line-height: 1.45 !important; transition: background 0.15s !important; }
details.kf-acc-item summary::-webkit-details-marker { display: none !important; }
details.kf-acc-item summary::after { content: '\u2228' !important; position: absolute !important; right: 20px !important; top: 50% !important; transform: translateY(-50%) !important; font-size: 15px !important; color: #163A55 !important; }
details.kf-acc-item[open] summary::after { content: '\u2227' !important; }
details.kf-acc-item summary:hover { background: rgba(22,58,85,0.03) !important; }
.kf-acc-body { padding: 4px 22px 22px !important; font-size: 14px !important; color: #5a6a7a !important; line-height: 1.8 !important; border-top: 1px solid rgba(22,58,85,0.07) !important; }
.kf-acc-body p { margin: 14px 0 0 !important; }
.kf-acc-body p:first-child { margin-top: 0 !important; }
.kf-acc-body strong { color: #163A55 !important; font-weight: 700 !important; }

body .entry-content .kf-video-section { padding: 64px 6% !important; background: #ffffff !important; text-align: center !important; }
body .entry-content .kf-video-section h2 { font-size: 24px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 32px !important; }
body .entry-content .kf-video-wrap { position: relative !important; padding-bottom: 56.25% !important; height: 0 !important; overflow: hidden !important; max-width: 880px !important; margin: 0 auto !important; background: #000 !important; border-radius: 8px !important; box-shadow: 0 8px 40px rgba(22,58,85,0.2) !important; }
body .entry-content .kf-video-wrap iframe { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; border: 0 !important; }

body .entry-content .kf-steps-section { padding: 64px 6% !important; background: #f4f6f8 !important; }
body .entry-content .kf-steps-section h2 { font-size: 24px !important; font-weight: 700 !important; color: #163A55 !important; text-align: center !important; margin: 0 0 16px !important; }
body .entry-content .kf-steps-section .kf-steps-lead { font-size: 16px !important; color: #5a6a7a !important; line-height: 1.75 !important; text-align: center !important; margin: 0 auto 40px !important; max-width: 720px !important; }
body .entry-content .kf-steps { display: flex !important; gap: 20px !important; }
body .entry-content .kf-step { flex: 1 !important; background: #ffffff !important; border-radius: 8px !important; padding: 28px 24px !important; box-shadow: 0 2px 16px rgba(22,58,85,0.07) !important; border-top: 4px solid #163A55 !important; transition: box-shadow 0.22s, transform 0.22s !important; }
body .entry-content .kf-step:hover { box-shadow: 0 8px 32px rgba(22,58,85,0.12) !important; transform: translateY(-3px) !important; }
body .entry-content .kf-step h3 { font-size: 17px !important; font-weight: 700 !important; color: #163A55 !important; margin: 0 0 12px !important; }
body .entry-content .kf-step p { font-size: 14px !important; color: #5a6a7a !important; line-height: 1.7 !important; margin: 0 !important; }

/* ── Custom pages mobile ── */
@media screen and (max-width: 860px) {
    body .entry-content .kf-hero { height: 260px !important; }
    body .entry-content .kf-intro { padding: 40px 6% 32px !important; }
    body .entry-content .kf-intro h1 { font-size: 24px !important; }
    body .entry-content .kf-hero-title { white-space: normal !important; width: 82% !important; }
    body .entry-content .kf-hero-title h1 { font-size: 22px !important; }
    body .entry-content .kf-usp { flex-direction: column !important; padding: 40px 6% !important; }
    body .entry-content .kf-usp-item { border-right: none !important; border-bottom: 1px solid rgba(255,255,255,0.12) !important; max-width: 100% !important; padding: 20px 0 !important; }
    body .entry-content .kf-usp-item:last-child { border-bottom: none !important; }
    body .entry-content .kf-row { flex-direction: column !important; gap: 16px !important; }
    body .entry-content .kf-col { width: 100% !important; flex: 1 1 100% !important; }
    body .entry-content .kf-split { flex-direction: column !important; }
    body .entry-content .kf-split-img { min-height: 240px !important; flex: none !important; }
    body .entry-content .kf-split-txt { flex: none !important; padding: 40px 6% !important; }
    body .entry-content .kf-split-txt h2 { font-size: 22px !important; }
    body .entry-content .kf-testi-inner { flex-direction: column !important; gap: 32px !important; }
    body .entry-content .kf-testi-img { flex: none !important; width: 100% !important; }
    body .entry-content .kf-alt-row { flex-direction: column !important; min-height: auto !important; }
    body .entry-content .kf-alt-img { flex: none !important; height: 240px !important; min-height: 240px !important; }
    body .entry-content .kf-alt-txt { flex: none !important; padding: 32px 6% !important; }
    body .entry-content .kf-showroom-cta { flex-direction: column !important; }
    body .entry-content .kf-showroom-gallery { flex: none !important; width: 100% !important; min-height: 280px !important; max-height: 360px !important; }
    body .entry-content .kf-showroom-panel { flex: none !important; padding: 40px 6% !important; }
    body .entry-content .kf-btns { flex-direction: column !important; align-items: stretch !important; }
    body .entry-content .kf-btn { text-align: center !important; justify-content: center !important; white-space: normal !important; }
    body .entry-content .kf-usp-bottom { flex-wrap: wrap !important; gap: 36px !important; padding: 48px 6% !important; }
    body .entry-content .kf-usp-bottom-item { flex: 0 0 calc(50% - 18px) !important; max-width: calc(50% - 18px) !important; }
    body .entry-content .kf-usp-bottom-item::after { display: none !important; }
    body .entry-content .kf-content-2col .kf-row, body .entry-content .kf-content-2col-grey .kf-row { flex-direction: column !important; }
    body .entry-content .kf-content-col { padding: 0 0 32px !important; }
    body .entry-content .kf-img-pair { flex-direction: column !important; gap: 3px !important; }
    body .entry-content .kf-img-pair-col img { height: 240px !important; }
    body .entry-content .kf-steps { flex-direction: column !important; }
    body .entry-content .kf-longtext { padding: 40px 6% !important; }
    body .entry-content .kf-accordion-section { padding: 40px 6% !important; }
    body .entry-content .kf-steps-section { padding: 40px 6% !important; }
    body .entry-content .kf-cta-banner { padding: 40px 6% !important; }
}
@media screen and (max-width: 480px) {
    body .entry-content .kf-hero { height: 210px !important; }
    body .entry-content .kf-prod-imgbox { height: 210px !important; }
    body .entry-content .kf-usp-bottom-item { flex: 0 0 100% !important; max-width: 100% !important; }
}


/* ════════════════════════════════════════════════════════
   CART PAGE — WPBakery layout
════════════════════════════════════════════════════════ */
.kf-cart-trust-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0 28px; max-width: 1200px; margin: 0 auto; padding: 10px 24px; }
.kf-cart-trust-item { display: flex; align-items: center; gap: 7px; color: #c8d8e8; font-size: 12.5px; white-space: nowrap; padding: 5px 0; }
.kf-cart-trust-item svg { color: #FFEB34; flex-shrink: 0; }
.kf-cart-trust-phone { color: #fff; font-weight: 600; }
.kf-cart-trust-phone a { color: #FFEB34 !important; text-decoration: none; }
.kf-cart-trust-phone a:hover { text-decoration: underline; }
.kf-cart-header { padding: 18px 0; }
.kf-cart-header-inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.kf-cart-page-title { font-size: clamp(20px, 2.5vw, 28px) !important; color: #163A55 !important; margin: 0 !important; font-weight: 700; }
.kf-cart-steps { display: flex; align-items: center; gap: 6px; font-size: 13px; }
.kf-cart-step { display: flex; align-items: center; gap: 6px; color: #9aabb8; font-weight: 500; white-space: nowrap; }
.kf-cart-step--active { color: #163A55; font-weight: 700; }
.kf-cart-step-num { width: 22px; height: 22px; border-radius: 50%; background: #e2eaf0; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; color: #9aabb8; flex-shrink: 0; }
.kf-cart-step--active .kf-cart-step-num { background: #163A55; color: #fff; }
.kf-cart-step-arrow { color: #c0cdd6; font-size: 16px; }
.woocommerce-cart .shop_table { border: 1px solid #e4ecf2 !important; border-radius: 8px !important; overflow: hidden; box-shadow: 0 2px 14px rgba(22,58,85,0.06); border-collapse: separate !important; border-spacing: 0 !important; }
.woocommerce-cart .shop_table thead tr { background: #163A55 !important; }
.woocommerce-cart .shop_table thead th { color: #fff !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 1.2px !important; padding: 13px 20px !important; border: none !important; background: transparent !important; }
.woocommerce-cart .shop_table tbody tr { border-bottom: 1px solid #f0f5f8 !important; }
.woocommerce-cart .shop_table tbody tr:hover { background: #fafcfd; }
.woocommerce-cart .shop_table tbody td { padding: 18px 20px !important; vertical-align: middle !important; border: none !important; color: #1a2a3a; font-size: 14px; }
.woocommerce-cart .product-thumbnail img { width: 72px !important; height: 72px !important; object-fit: cover; border-radius: 6px; border: 1px solid #e4ecf2; }
.woocommerce-cart .product-name a { color: #163A55 !important; font-weight: 600; font-size: 14px; text-decoration: none; }
.woocommerce-cart .product-name a:hover { text-decoration: underline; }
.woocommerce-cart .product-name .variation dt, .woocommerce-cart .product-name .variation dd { font-size: 12px !important; color: #6a7a8a !important; margin: 0 !important; display: inline; }
.woocommerce-cart td.product-remove a.remove::before, .woocommerce-cart td.product-remove a.remove::after { display: none !important; content: none !important; }
.woocommerce-cart td.product-remove a.remove { color: #c0cdd6 !important; font-size: 20px !important; width: 28px; height: 28px; border-radius: 50%; display: flex !important; align-items: center; justify-content: center; }
.woocommerce-cart td.product-remove a.remove:hover { color: #e05252 !important; background: #fef0f0 !important; }
.woocommerce-cart .quantity input.qty { width: 58px !important; border: 1.5px solid #c8d8e8 !important; border-radius: 4px !important; padding: 7px 8px !important; font-size: 14px; text-align: center; color: #163A55; font-weight: 600; background: #fff !important; }
.woocommerce-cart .quantity input.qty:focus { border-color: #163A55 !important; box-shadow: 0 0 0 3px rgba(22,58,85,0.1) !important; }
.woocommerce-cart .product-subtotal bdi, .woocommerce-cart .product-price bdi { font-weight: 700; color: #163A55 !important; font-size: 15px; }
.woocommerce-cart .actions { background: #f5f8fa !important; border-top: 1px solid #e4ecf2 !important; padding: 14px 20px !important; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.woocommerce-cart .actions a.button:not([name="update_cart"]), .woocommerce-cart .actions .kf-continue-shopping { background: transparent !important; color: #163A55 !important; border: none !important; font-size: 13px !important; font-weight: 600; padding: 9px 4px !important; text-decoration: none; box-shadow: none !important; }
.woocommerce-cart .actions a.button:not([name="update_cart"]):hover { text-decoration: underline; }
.woocommerce-cart .actions .button[name="update_cart"] { background: transparent !important; border: 1.5px solid #163A55 !important; color: #163A55 !important; border-radius: 4px !important; padding: 9px 18px !important; font-size: 13px !important; font-weight: 600; box-shadow: none !important; }
.woocommerce-cart .actions .button[name="update_cart"]:hover { background: #163A55 !important; color: #fff !important; }
.woocommerce-cart .coupon { display: flex; align-items: center; gap: 0; }
.woocommerce-cart .coupon label { display: none; }
.woocommerce-cart .coupon input#coupon_code { border: 1.5px solid #c8d8e8 !important; border-right: none !important; border-radius: 4px 0 0 4px !important; padding: 9px 14px !important; font-size: 13px; min-width: 160px; }
.woocommerce-cart .coupon .button { border-radius: 0 4px 4px 0 !important; background: #163A55 !important; color: #fff !important; border: none !important; padding: 9px 16px !important; font-size: 13px !important; font-weight: 600; }
.woocommerce-cart .coupon .button:hover { background: #0f2a40 !important; }
.woocommerce-cart .cart_totals { background: #fff; border: 1px solid #e4ecf2; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 14px rgba(22,58,85,0.07); }
.woocommerce-cart .cart_totals h2 { background: #163A55 !important; color: #fff !important; font-size: 12px !important; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; padding: 15px 22px !important; margin: 0 !important; }
.woocommerce-cart .cart_totals table { border: none !important; }
.woocommerce-cart .cart_totals table tr { border-bottom: 1px solid #f0f5f8 !important; }
.woocommerce-cart .cart_totals table th, .woocommerce-cart .cart_totals table td { padding: 13px 22px !important; font-size: 13px; border: none !important; background: transparent !important; }
.woocommerce-cart .cart_totals table th { color: #6a7a8a; font-weight: 600; }
.woocommerce-cart .cart_totals table td { color: #1a2a3a; }
.woocommerce-cart .cart_totals tr.order-total { border-top: 2px solid #e4ecf2 !important; }
.woocommerce-cart .cart_totals tr.order-total th, .woocommerce-cart .cart_totals tr.order-total td { background: #f5f8fa !important; padding: 16px 22px !important; }
.woocommerce-cart .cart_totals tr.order-total th { font-size: 14px !important; font-weight: 700 !important; color: #163A55 !important; }
.woocommerce-cart .cart_totals tr.order-total td strong { font-size: 22px; font-weight: 800; color: #163A55; }
.woocommerce-cart .wc-proceed-to-checkout { padding: 18px 22px 22px !important; background: #f5f8fa; border-top: 1px solid #e4ecf2; }
.woocommerce-cart .wc-proceed-to-checkout::before { content: "\2713  S\00e4ker betalning \2014 krypterad och trygg"; display: block; font-size: 11.5px; color: #7a8a98; text-align: center; margin-bottom: 10px; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button { display: block !important; width: 100% !important; background: #163A55 !important; color: #fff !important; border: none !important; border-radius: 6px !important; padding: 15px 24px !important; font-size: 15px !important; font-weight: 700 !important; text-align: center; text-decoration: none; cursor: pointer; box-shadow: 0 4px 14px rgba(22,58,85,0.22); transition: background 0.18s, transform 0.12s; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover { background: #0f2a40 !important; transform: translateY(-1px); box-shadow: 0 6px 18px rgba(22,58,85,0.30); }
.kf-cart-reassurance-inner { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.kf-cart-reassure-item { display: flex; align-items: center; gap: 14px; padding: 22px 28px; flex: 1 1 200px; border-right: 1px solid #dde8ee; }
.kf-cart-reassure-item:last-child { border-right: none; }
.kf-cart-reassure-item svg { flex-shrink: 0; }
.kf-cart-reassure-item div { display: flex; flex-direction: column; gap: 2px; }
.kf-cart-reassure-item strong { font-size: 13px; color: #163A55; font-weight: 700; }
.kf-cart-reassure-item span { font-size: 12px; color: #6a7a8a; }
.kf-cart-reassure-item a { color: #163A55 !important; font-weight: 600; text-decoration: none; }
.kf-cart-reassure-item a:hover { text-decoration: underline; }
.woocommerce-cart .pswp, .woocommerce-cart .pswp__bg, .woocommerce-cart .pswp__scroll-wrap { display: none !important; visibility: hidden !important; }
.woocommerce-cart .page-title, .woocommerce-cart .entry-title { display: none !important; }
@media (max-width: 860px) {
    .kf-cart-trust-item:not(.kf-cart-trust-phone) { display: none; }
    .kf-cart-header-inner { flex-direction: column; align-items: flex-start; gap: 10px; }
    .kf-cart-reassure-item { border-right: none; border-bottom: 1px solid #dde8ee; padding: 16px 20px; flex: 1 1 100%; }
    .kf-cart-reassure-item:last-child { border-bottom: none; }
}
@media (max-width: 600px) { .kf-cart-steps { font-size: 12px; gap: 4px; } .kf-cart-step-num { width: 18px; height: 18px; font-size: 10px; } }


/* ════════════════════════════════════════════════════════
   CHECKOUT PAGE
════════════════════════════════════════════════════════ */
body.woocommerce-checkout .woocommerce-checkout .form-row label { font-size: 13px; color: #163A55; font-weight: 600; margin-bottom: 4px; }
body.woocommerce-checkout .woocommerce-checkout .form-row input.input-text, body.woocommerce-checkout .woocommerce-checkout .form-row select, body.woocommerce-checkout .woocommerce-checkout .form-row textarea { border: 1.5px solid #c8d8e8 !important; border-radius: 4px !important; padding: 10px 14px !important; font-size: 14px; color: #1a2a3a; background: #fff !important; transition: border-color 0.15s; }
body.woocommerce-checkout .woocommerce-checkout .form-row input.input-text:focus, body.woocommerce-checkout .woocommerce-checkout .form-row select:focus, body.woocommerce-checkout .woocommerce-checkout .form-row textarea:focus { border-color: #163A55 !important; outline: none !important; box-shadow: 0 0 0 3px rgba(22,58,85,0.1) !important; }
body.woocommerce-checkout .woodmart-title-container { font-size: 20px !important; color: #163A55 !important; font-weight: 700 !important; padding-bottom: 12px; border-bottom: 2px solid #e8edf2; margin-bottom: 20px !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table { border: 1px solid #e4ecf2 !important; border-radius: 8px !important; overflow: hidden; box-shadow: 0 2px 14px rgba(22,58,85,0.06); border-collapse: separate !important; border-spacing: 0 !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead tr { background: #163A55 !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th { color: #fff !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 1.2px !important; padding: 13px 18px !important; border: none !important; background: transparent !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr { border-bottom: 1px solid #f0f5f8 !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td { padding: 12px 18px !important; border: none !important; font-size: 13px; color: #1a2a3a; vertical-align: middle !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td.product-name { color: #163A55; font-weight: 500; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-thumbnail img { width: 48px !important; height: 48px !important; object-fit: cover; border-radius: 4px; border: 1px solid #e4ecf2; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr { border-bottom: 1px solid #f0f5f8 !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th, body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { padding: 13px 18px !important; border: none !important; font-size: 13px; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th { color: #6a7a8a; font-weight: 600; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { color: #1a2a3a; font-weight: 600; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total { border-top: 2px solid #e4ecf2 !important; border-bottom: none !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th { font-size: 14px !important; font-weight: 700 !important; color: #163A55 !important; background: #f5f8fa !important; padding: 16px 18px !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td { background: #f5f8fa !important; padding: 16px 18px !important; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td strong { font-size: 22px; font-weight: 800; color: #163A55; }
body.woocommerce-checkout .wc_payment_methods { border: 1px solid #e4ecf2 !important; border-radius: 8px !important; overflow: hidden; padding: 0 !important; margin: 0 !important; }
body.woocommerce-checkout .wc_payment_methods li.wc_payment_method { border-bottom: 1px solid #f0f5f8 !important; padding: 14px 18px !important; margin: 0 !important; list-style: none !important; }
body.woocommerce-checkout .wc_payment_methods li.wc_payment_method:last-child { border-bottom: none !important; }
body.woocommerce-checkout .wc_payment_methods li.wc_payment_method label { font-size: 14px; color: #163A55; font-weight: 600; cursor: pointer; }
body.woocommerce-checkout .payment_box { background: #f5f8fa !important; border-radius: 6px; padding: 14px 16px !important; margin-top: 10px; font-size: 13px; color: #5a6a7a; line-height: 1.6; }
body.woocommerce-checkout #place_order, body.woocommerce-checkout .wc-proceed-to-checkout .checkout-button, body.woocommerce-checkout button.button.alt { display: block !important; width: 100% !important; background: #163A55 !important; color: #fff !important; border: none !important; border-radius: 6px !important; padding: 16px 24px !important; font-size: 16px !important; font-weight: 700 !important; text-align: center; cursor: pointer; letter-spacing: 0.3px; box-shadow: 0 4px 14px rgba(22,58,85,0.22); transition: background 0.18s, transform 0.12s; }
body.woocommerce-checkout #place_order:hover, body.woocommerce-checkout button.button.alt:hover { background: #0f2a40 !important; transform: translateY(-1px); box-shadow: 0 6px 18px rgba(22,58,85,0.30); }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { padding: 14px 0; font-size: 13px; color: #6a7a8a; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a { color: #163A55 !important; font-weight: 600; }
body.woocommerce-checkout td.product-remove a.remove::before, body.woocommerce-checkout td.product-remove a.remove::after { display: none !important; content: none !important; }
body.woocommerce-checkout td.product-remove a.remove { color: #c0cdd6 !important; font-size: 18px !important; width: 24px; height: 24px; border-radius: 50%; display: flex !important; align-items: center; justify-content: center; }
body.woocommerce-checkout td.product-remove a.remove:hover { color: #e05252 !important; background: #fef0f0 !important; }
@media (max-width: 860px) { body.woocommerce-checkout .woodmart-title-container { font-size: 18px !important; } }


/* ════════════════════════════════════════════════════════
   THANK YOU PAGE
════════════════════════════════════════════════════════ */
.kf-order-next-steps { background: #fff; border: 1px solid #e4ecf2; border-radius: 8px; padding: 32px; margin-bottom: 36px; box-shadow: 0 2px 14px rgba(22,58,85,0.06); }
.kf-order-next-title { font-size: 20px !important; font-weight: 700; color: #163A55; margin: 0 0 24px 0 !important; text-align: center; }
.kf-order-steps-grid { display: flex; gap: 20px; margin-bottom: 24px; }
.kf-order-step-item { flex: 1; display: flex; align-items: flex-start; gap: 14px; padding: 18px; background: #f5f8fa; border-radius: 6px; border-left: 3px solid #163A55; }
.kf-order-step-icon { flex-shrink: 0; width: 40px; height: 40px; background: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(22,58,85,0.1); }
.kf-order-step-item strong { font-size: 14px; color: #163A55; display: block; margin-bottom: 4px; }
.kf-order-step-item span { font-size: 13px; color: #6a7a8a; line-height: 1.5; }
.kf-order-contact { text-align: center; padding-top: 16px; border-top: 1px solid #e4ecf2; }
.kf-order-contact p { font-size: 14px; color: #5a6a7a; margin: 0; }
.kf-order-contact a { color: #163A55 !important; text-decoration: none; }
.kf-order-contact a:hover { text-decoration: underline; }
.woocommerce-order-received .page-title, .woocommerce-order-received .entry-title { display: none !important; }
.woocommerce-order-received .woocommerce-table { border: 1px solid #e4ecf2 !important; border-radius: 8px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0 !important; }
.woocommerce-order-received .woocommerce-table thead tr { background: #163A55 !important; }
.woocommerce-order-received .woocommerce-table thead th { color: #fff !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 1.2px !important; padding: 13px 18px !important; border: none !important; background: transparent !important; }
.woocommerce-order-received .woocommerce-table tbody tr { border-bottom: 1px solid #f0f5f8 !important; }
.woocommerce-order-received .woocommerce-table tbody td { padding: 13px 18px !important; border: none !important; font-size: 13px; color: #1a2a3a; }
.woocommerce-order-received .woocommerce-table tfoot tr { border-bottom: 1px solid #f0f5f8 !important; }
.woocommerce-order-received .woocommerce-table tfoot th, .woocommerce-order-received .woocommerce-table tfoot td { padding: 13px 18px !important; border: none !important; }
@media (max-width: 768px) { .kf-order-steps-grid { flex-direction: column; gap: 12px; } .kf-order-next-steps { padding: 24px 18px; } }


/* ════════════════════════════════════════════════════════
   CART NOTICE
════════════════════════════════════════════════════════ */
.custom-cart-notice { background-color: #fef8f0; border: 1px solid #f0c36d; border-left: 4px solid #e2901c; border-radius: 6px; padding: 20px 24px; margin-bottom: 24px; font-size: 14px; line-height: 1.7; color: #333; }
.custom-cart-notice strong:first-child { color: #e2901c; font-size: 15px; display: block; margin-bottom: 4px; }
.custom-cart-notice .highlight { font-weight: 700; color: #222; }
.custom-cart-notice .fee { display: block; margin-top: 6px; font-size: 1.1em; font-weight: 700; color: #c0392b; }


/* ════════════════════════════════════════════════════════
   SINGLE PRODUCT — All overrides & improvements
════════════════════════════════════════════════════════ */

/* ── 1. Breadcrumb ── */
.single-product .wd-breadcrumbs, .single-product .woocommerce-breadcrumb { font-size: 12px !important; color: #8899a6 !important; padding: 0 !important; margin-bottom: 8px !important; line-height: 1.5 !important; }
.single-product .wd-breadcrumbs a, .single-product .woocommerce-breadcrumb a { color: #5a7a94 !important; text-decoration: none !important; transition: color 0.15s !important; font-weight: 400 !important; }
.single-product .wd-breadcrumbs a:hover, .single-product .woocommerce-breadcrumb a:hover { color: #163A55 !important; text-decoration: underline !important; }
.single-product .wd-breadcrumbs .breadcrumb-separator, .single-product .woocommerce-breadcrumb > span:not(:last-child)::after { content: "\203A" !important; margin: 0 6px !important; color: #b4c5d2 !important; font-size: 13px !important; }
.single-product .wd-breadcrumbs span:last-child, .single-product .woocommerce-breadcrumb > span:last-child { color: #3d5a70 !important; font-weight: 500 !important; }
.single-product nav.wd-breadcrumbs { background: transparent !important; border: none !important; box-shadow: none !important; }

/* ── 2. Sidebar trust strip ── */
.kf-trust-strip { display: flex; flex-direction: column; gap: 0; margin: 16px 0; border: 1px solid #e2e8ed; border-radius: 10px; overflow: hidden; background: #fff; }
.kf-trust-item { display: flex; align-items: center; gap: 12px; padding: 13px 16px; font-size: 13px; color: #334862; line-height: 1.4; border-bottom: 1px solid #f0f4f7; }
.kf-trust-item:last-child { border-bottom: none; }
.kf-trust-icon { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; min-width: 34px; border-radius: 50%; background: #edf3f8; }
.kf-trust-icon svg { width: 17px; height: 17px; fill: none; stroke: #163A55; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.kf-trust-label { display: flex; flex-direction: column; }
.kf-trust-label strong { color: #163A55; font-weight: 700; font-size: 13px; }
.kf-trust-label span { color: #6a7f91; font-size: 11.5px; margin-top: 1px; }
.kf-payment-row { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 10px 16px; background: #f8fafb; border: 1px solid #e2e8ed; border-radius: 8px; margin: 0 0 12px; }
.kf-payment-row img { height: 20px; width: auto; opacity: 0.7; filter: grayscale(30%); transition: opacity 0.15s, filter 0.15s; }
.kf-payment-row img:hover { opacity: 1; filter: grayscale(0%); }
.kf-payment-label { font-size: 11px; color: #8899a6; white-space: nowrap; }
.kf-secure-line { display: flex; align-items: center; justify-content: center; gap: 5px; font-size: 11.5px; color: #6a7f91; margin-bottom: 10px; }
.kf-secure-line svg { width: 13px; height: 13px; stroke: #4a9e6f; fill: none; stroke-width: 2; }

/* ── 3. "Pris" label ── */
 
.kf-sticky .wd-single-price { position: relative; }
.kf-sticky .wd-single-price .price::before {
    content: "Pris: " !important;
    color: rgba(255,255,255,.7) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}
/* If PEWC already added its own label, hide our pseudo-element */
.kf-sticky .wd-single-price .price:has(.pewc-label-before:not(:empty))::before {
    display: none !important;
}
/* Style the PEWC label consistently */
.kf-sticky .wd-single-price .pewc-label-before:not(:empty) {
    color: rgba(255,255,255,.7) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    margin-right: 4px !important;
}
/* Fallback for browsers without :has() */
@supports not selector(:has(*)) {
    .kf-sticky .wd-single-price .price::before {
        content: none !important;
    }
}
/* Also override the old wrong selector so it doesn't conflict */
.kf-sticky .wd-product-price .price::before {
    content: none !important;
}

/* ── 4. Mobile bottom bar ── */
@media (max-width: 767px) {
    .single-product .ax-mobile-cta { display: block !important; position: fixed !important; bottom: 0 !important; left: 0 !important; width: 100% !important; z-index: 99999 !important; background: linear-gradient(180deg, #1a3f5c 0%, #163A55 100%) !important; padding: 0 !important; border-top: none !important; box-shadow: 0 -8px 30px rgba(22,58,85,.25) !important; }
    .ax-cta-container { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 12px 16px !important; gap: 12px !important; max-width: 480px !important; margin: 0 auto !important; }
    .ax-cta-info { display: flex !important; flex-direction: column !important; flex: 1 !important; min-width: 0 !important; }
    #ax-mobile-price { font-size: 20px !important; font-weight: 900 !important; color: #FFEB34 !important; line-height: 1.2 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
    #ax-mobile-price .woocommerce-Price-amount, #ax-mobile-price bdi { color: #FFEB34 !important; font-weight: 900 !important; }
    .ax-mobile-save-label, .ax-cta-info .ax-mobile-tax { font-size: 10px !important; color: rgba(255,255,255,.55) !important; margin-top: 1px !important; }
    .ax-cta-actions { display: flex !important; align-items: center !important; gap: 10px !important; flex-shrink: 0 !important; }
    .ax-qty-group { display: flex !important; align-items: center !important; background: rgba(255,255,255,.12) !important; border: 1px solid rgba(255,255,255,.2) !important; border-radius: 8px !important; overflow: hidden !important; height: 42px !important; }
    .ax-qty-group button { width: 34px !important; height: 100% !important; border: none !important; background: transparent !important; color: #fff !important; font-weight: 700 !important; font-size: 18px !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; }
    .ax-qty-group button:active { background: rgba(255,255,255,.15) !important; }
    #ax-qty-mobile { width: 32px !important; text-align: center !important; border: none !important; background: transparent !important; color: #fff !important; font-weight: 800 !important; font-size: 15px !important; height: 100% !important; -moz-appearance: textfield !important; }
    #ax-qty-mobile::-webkit-outer-spin-button, #ax-qty-mobile::-webkit-inner-spin-button { -webkit-appearance: none !important; }
    #ax-btn-submit-mobile { width: 50px !important; height: 50px !important; border-radius: 12px !important; background: #FFEB34 !important; color: #163A55 !important; border: none !important; font-size: 20px !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; flex-shrink: 0 !important; box-shadow: 0 2px 10px rgba(255,235,52,.3) !important; transition: transform 0.15s, box-shadow 0.15s !important; }
    #ax-btn-submit-mobile:active { transform: scale(0.95) !important; box-shadow: 0 1px 4px rgba(255,235,52,.2) !important; }
    #ax-btn-submit-mobile i { color: #163A55 !important; }
    .ax-mobile-cta::before { content: ""; display: block; height: env(safe-area-inset-bottom, 0px); background: #163A55; }
    body.single-product { padding-bottom: 90px !important; }
}

/* ── 5. Title, SKU, drawing board, misc ── */
.single-product .product_title, .single-product .wd-product-title h1 { font-size: 22px !important; font-weight: 700 !important; color: #163A55 !important; line-height: 1.3 !important; text-transform: none !important; margin-bottom: 4px !important; }
.kf-sticky .wd-product-meta .sku_wrapper { font-size: 12px !important; color: #8899a6 !important; }
.drawboard-placeholder #drawBoard { border-color: #dce6ee !important; border-radius: 10px !important; background: #f5f8fb !important; }
.kf-cta-note { color: #8899a6 !important; font-size: 11px !important; }
.pewc-total-only { background: #163A55 !important; color: #fff !important; border-radius: 10px !important; padding: 14px 18px !important; margin: 16px 0 8px !important; }

/* ── 6. Full-width product trust bar ── */
.kf-product-trust-bar { background: #163A55; padding: 0; width: 100%; }
.kf-product-trust-bar .kf-trust-inner { display: flex; align-items: center; justify-content: center; gap: 0; max-width: 1400px; margin: 0 auto; padding: 14px 20px; flex-wrap: wrap; }
.kf-product-trust-bar .kf-trust-pill { display: flex; align-items: center; gap: 8px; padding: 0 28px; border-right: 1px solid rgba(255,255,255,0.12); white-space: nowrap; }
.kf-product-trust-bar .kf-trust-pill:last-child { border-right: none; }
.kf-product-trust-bar .kf-trust-pill svg { width: 18px; height: 18px; stroke: #FFEB34; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.kf-product-trust-bar .kf-trust-pill span { font-size: 13px; font-weight: 600; color: rgba(255,255,255,0.9); }
.kf-product-trust-bar .kf-trust-pill a { color: #FFEB34 !important; text-decoration: none; font-weight: 700; }
.kf-product-trust-bar .kf-trust-pill a:hover { text-decoration: underline; }
@media (max-width: 860px) {
    .kf-product-trust-bar .kf-trust-inner { flex-direction: column; gap: 6px; padding: 12px 16px; }
    .kf-product-trust-bar .kf-trust-pill { border-right: none; padding: 4px 0; border-bottom: 1px solid rgba(255,255,255,0.08); }
    .kf-product-trust-bar .kf-trust-pill:last-child { border-bottom: none; }
}

/* ── 7. Message box / info notice ── */
.single-product .vc_message_box, .single-product .woocommerce-message, .single-product .woocommerce-info { background: #f0f6fb !important; border: 1px solid #c8dce8 !important; border-left: 4px solid #163A55 !important; border-radius: 6px !important; padding: 16px 20px !important; margin: 16px 0 !important; font-size: 14px !important; line-height: 1.7 !important; color: #2a4a62 !important; }
.single-product .vc_message_box p, .single-product .woocommerce-info p { margin: 0 !important; }
.single-product .vc_message_box a { color: #163A55 !important; font-weight: 600 !important; text-decoration: underline !important; }
.single-product .vc_message_box a:hover { color: #0f2a3f !important; }
.single-product .vc_message_box-warning, .single-product .vc_message_box.vc_color-warning { background: #fef8f0 !important; border-color: #f0c36d !important; border-left-color: #e2901c !important; color: #5a4020 !important; }

/* ── 8. Product description text ── */
.single-product .woocommerce-product-details__short-description, .single-product .product-description { font-size: 14.5px !important; line-height: 1.8 !important; color: #3d5060 !important; margin-bottom: 16px !important; }
.single-product .woocommerce-product-details__short-description p, .single-product .product-description p { margin: 0 0 12px 0 !important; }
.single-product .woocommerce-product-details__short-description p:last-child, .single-product .product-description p:last-child { margin-bottom: 0 !important; }
.single-product .woocommerce-product-details__short-description strong { color: #163A55 !important; }
.single-product .woocommerce-Tabs-panel--description { font-size: 14.5px !important; line-height: 1.85 !important; color: #3d5060 !important; }
.single-product .woocommerce-Tabs-panel--description p { margin: 0 0 14px 0 !important; }
.single-product .woocommerce-Tabs-panel--description h2, .single-product .woocommerce-Tabs-panel--description h3 { font-size: 18px !important; font-weight: 700 !important; color: #163A55 !important; margin: 24px 0 12px 0 !important; }
.single-product .woocommerce-Tabs-panel--description ul, .single-product .woocommerce-Tabs-panel--description ol { padding-left: 24px !important; margin: 0 0 14px 0 !important; }
.single-product .woocommerce-Tabs-panel--description li { font-size: 14px !important; line-height: 1.75 !important; color: #4a5f72 !important; margin-bottom: 6px !important; }

/* ── 9. Additional information table ── */
.single-product .woocommerce-product-attributes { border: 1px solid #e4ecf2 !important; border-radius: 8px !important; overflow: hidden !important; border-collapse: separate !important; border-spacing: 0 !important; width: 100% !important; margin: 0 !important; }
.single-product .woocommerce-product-attributes tr { border-bottom: 1px solid #f0f4f7 !important; }
.single-product .woocommerce-product-attributes tr:last-child { border-bottom: none !important; }
.single-product .woocommerce-product-attributes th { background: #f5f8fa !important; color: #163A55 !important; font-size: 13px !important; font-weight: 700 !important; padding: 12px 18px !important; text-align: left !important; width: 35% !important; border: none !important; vertical-align: middle !important; }
.single-product .woocommerce-product-attributes td { padding: 12px 18px !important; font-size: 13px !important; color: #3d5060 !important; border: none !important; vertical-align: middle !important; }
.single-product .woocommerce-product-attributes td p { margin: 0 !important; }

/* ── 10. Tab headings ── */
.single-product .woocommerce-tabs .wd-nav-tabs, .single-product .woocommerce-tabs ul.tabs { border-bottom: 2px solid #e4ecf2 !important; margin-bottom: 24px !important; padding: 0 !important; list-style: none !important; display: flex !important; gap: 0 !important; }
.single-product .woocommerce-tabs .wd-nav-tabs li, .single-product .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; }
.single-product .woocommerce-tabs .wd-nav-tabs li a, .single-product .woocommerce-tabs ul.tabs li a { display: block !important; padding: 12px 24px !important; font-size: 13px !important; font-weight: 700 !important; color: #6a7f91 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; text-decoration: none !important; border-bottom: 3px solid transparent !important; margin-bottom: -2px !important; transition: color 0.15s, border-color 0.15s !important; }
.single-product .woocommerce-tabs .wd-nav-tabs li a:hover, .single-product .woocommerce-tabs ul.tabs li a:hover { color: #163A55 !important; }
.single-product .woocommerce-tabs .wd-nav-tabs li.active a, .single-product .woocommerce-tabs ul.tabs li.active a { color: #163A55 !important; border-bottom-color: #163A55 !important; }

/* ── 11. Related products heading ── */
.single-product .related.products > h2, .single-product .upsells.products > h2, .single-product section.related > h2 { font-size: 20px !important; font-weight: 800 !important; color: #163A55 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; margin: 48px 0 24px 0 !important; padding-bottom: 12px !important; border-bottom: 2px solid #e4ecf2 !important; }

/* ── 12. Produktblad PDF link ── */
.single-product a[href$=".pdf"], .single-product .kf-produktblad-link { display: inline-flex !important; align-items: center !important; gap: 8px !important; padding: 10px 18px !important; background: #f0f6fb !important; border: 1px solid #c8dce8 !important; border-radius: 6px !important; color: #163A55 !important; font-size: 13px !important; font-weight: 600 !important; text-decoration: none !important; transition: background 0.15s, border-color 0.15s !important; margin: 8px 0 !important; }
.single-product a[href$=".pdf"]:hover, .single-product .kf-produktblad-link:hover { background: #e0edf6 !important; border-color: #9abdd4 !important; }
.single-product a[href$=".pdf"]::before, .single-product .kf-produktblad-link::before { content: "\1F4C4" !important; font-size: 16px !important; }

/* ── 13. PEWC accordion bleed fix (high specificity override) ── */
html body.single-product div[class^="pewc-group-wrap"] { overflow: hidden !important; position: relative !important; }
html body.single-product div[class^="pewc-group-wrap"] .pewc-group-content-wrapper { overflow: hidden !important; }
html body.single-product div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display: none"], html body.single-product div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display:none"] { max-height: 0 !important; padding: 0 !important; margin: 0 !important; opacity: 0 !important; visibility: hidden !important; }
html body.single-product div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display: block"], html body.single-product div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display:block"] { max-height: none !important; opacity: 1 !important; visibility: visible !important; padding: 10px 0 !important; }

/* ════════════════════════════════════════════════════════════════
   SINGLE PRODUCT — Additional Fixes (v4)
   Appended at end of Theme Options = highest CSS priority
════════════════════════════════════════════════════════════════ */


/* ── 1. PRODUCT TRUST BAR (full-width, top of product page) ── */

.kf-product-trust-bar {
    display: flex;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
    padding: 14px 20px;
    background: #f5f8fa;
    border-bottom: 1px solid #e4ecf2;
    margin: 0 -15px 20px;
    font-size: 13px;
    color: #334862;
}
.kf-product-trust-bar .kf-pt-item {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
.kf-product-trust-bar .kf-pt-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #e2ecf3;
    flex-shrink: 0;
}
.kf-product-trust-bar .kf-pt-icon svg {
    width: 14px;
    height: 14px;
    stroke: #163A55;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.kf-product-trust-bar .kf-pt-text {
    font-weight: 600;
    color: #163A55;
}
.kf-product-trust-bar .kf-pt-sub {
    font-weight: 400;
    color: #6a7f91;
    font-size: 12px;
}
@media (max-width: 767px) {
    .kf-product-trust-bar {
        gap: 10px 20px;
        padding: 10px 14px;
        font-size: 11px;
    }
    .kf-product-trust-bar .kf-pt-sub { display: none; }
}


/* ── 1. ACCORDION ICON FIX ──
   Our ::after chevron conflicts with PEWC's native toggle.
   Remove ours, style PEWC's native toggle white on navy. */
 
html body div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper::after {
    display: none !important;
    content: none !important;
}
/* Style PEWC's own toggle icon so it's visible on navy background */
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper i,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper .pewc-group-toggle-icon,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper svg,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper [class*="toggle"],
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper .dashicons,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper span.pewc-open-close-group {
    color: #fff !important;
    fill: #fff !important;
    font-size: 18px !important;
    opacity: 0.8;
    transition: opacity 0.15s;
}
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper:hover i,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper:hover svg,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper:hover [class*="toggle"],
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper:hover span.pewc-open-close-group {
    opacity: 1;
}

/* ══════════════════════════════════════════════════
   OVERRIDE 2: PEWC accordion bleed fix
   
   Content bleeds through semi-closed navy accordion tabs.
   Add overflow control to group wrappers.
══════════════════════════════════════════════════ */

html body div[class^="pewc-group-wrap"] {
    overflow: hidden !important;
    position: relative !important;
}
html body div[class^="pewc-group-wrap"] .pewc-group-content-wrapper {
    overflow: hidden !important;
}
/* When PEWC JS sets display:none, enforce zero dimensions */
html body div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display: none"],
html body div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display:none"] {
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}
/* Open groups show normally */
html body div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display: block"],
html body div[class^="pewc-group-wrap"] .pewc-group-content-wrapper[style*="display:block"] {
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Chevron arrow on heading */
html body div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper {
    position: relative !important;
    padding-right: 40px !important;
}
html body div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper::after {
    content: "" !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid rgba(255,255,255,.6) !important;
    border-bottom: 2px solid rgba(255,255,255,.6) !important;
    transform: translateY(-50%) rotate(45deg) !important;
    transition: transform 0.2s ease !important;
}


/* ── 3. EXTRA QUANTITY HIDE (below PEWC Totalt field) ── */

@media (min-width: 993px) {
    .single-product .pewc-total-only ~ .quantity,
    .single-product .pewc-total ~ .quantity,
    .single-product form.cart > .quantity:not(.kf-qty-pill) {
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
}


/* ── 4. MESSAGE BOX — Navy branded style ── */

html body.single-product .vc_message_box {
    background: #f5f8fa !important;
    border: 1px solid #e4ecf2 !important;
    border-left: 4px solid #163A55 !important;
    border-radius: 8px !important;
    padding: 16px 20px !important;
    color: #334862 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    box-shadow: none !important;
    margin-bottom: 20px !important;
}
html body.single-product .vc_message_box .vc_message_box-icon {
    color: #163A55 !important;
}


/* ── 5. ADDITIONAL INFO TABLE — Rounded, branded headers ── */

html body.single-product .woocommerce-product-attributes {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid #e4ecf2 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    width: 100% !important;
}
html body.single-product .woocommerce-product-attributes th {
    background: #f5f8fa !important;
    color: #163A55 !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #e4ecf2 !important;
    text-align: left !important;
    border-right: 1px solid #e4ecf2 !important;
}
html body.single-product .woocommerce-product-attributes td {
    padding: 12px 16px !important;
    font-size: 13px !important;
    color: #4a5568 !important;
    border-bottom: 1px solid #f0f5f8 !important;
}
html body.single-product .woocommerce-product-attributes tr:last-child th,
html body.single-product .woocommerce-product-attributes tr:last-child td {
    border-bottom: none !important;
}


/* ── 6. TAB HEADINGS ── */

html body.single-product .wd-tab-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    text-transform: none !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #e4ecf2 !important;
    margin-bottom: 20px !important;
}


/* ── 7. RELATED PRODUCTS HEADING ── */

html body.single-product .wd-entities-title {
    font-size: 30px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    margin-bottom: 20px !important;
}


/* ── 8. PRODUCT DESCRIPTION TEXT ── */

html body.single-product .woocommerce-product-details__short-description,
html body.single-product .wd-single-content {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #4a5568 !important;
}
html body.single-product .woocommerce-product-details__short-description p,
html body.single-product .wd-single-content p {
    margin-bottom: 12px !important;
}


/* ── 9. PRODUKTBLAD PDF LINK ── */

html body.single-product .wd-single-content a[href*=".pdf"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #163A55 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 8px 14px !important;
    border: 1px solid #e4ecf2 !important;
    border-radius: 6px !important;
    transition: all 0.15s !important;
    margin-top: 8px !important;
}
html body.single-product .wd-single-content a[href*=".pdf"]:hover {
    background: #f5f8fa !important;
    border-color: #163A55 !important;
}
html body.single-product .wd-single-content a[href*=".pdf"]::before {
    content: "????";
    font-size: 14px;
}


/* ── 10. MOBILE BAR — Navy override (highest specificity) ── */

@media (max-width: 767px) {
    html body.single-product .ax-mobile-cta {
        display: block !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100% !important;
        z-index: 99999 !important;
        background: #163A55 !important;
        padding: 0 !important;
        border-top: none !important;
        box-shadow: 0 -6px 24px rgba(22,58,85,.3) !important;
    }
    html body.single-product .ax-cta-container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        gap: 12px !important;
        max-width: 480px !important;
        margin: 0 auto !important;
    }
    html body.single-product #ax-mobile-price {
        font-size: 19px !important;
        font-weight: 900 !important;
        color: #FFEB34 !important;
    }
    html body.single-product #ax-mobile-price .woocommerce-Price-amount,
    html body.single-product #ax-mobile-price bdi {
        color: #FFEB34 !important;
        font-weight: 900 !important;
        font-size: inherit !important;
    }
    html body.single-product .ax-mobile-save-label {
        font-size: 10px !important;
        color: rgba(255,255,255,.5) !important;
    }
    html body.single-product .ax-qty-group {
        background: rgba(255,255,255,.1) !important;
        border: 1px solid rgba(255,255,255,.2) !important;
    }
    html body.single-product .ax-qty-group button {
        background: transparent !important;
        color: #fff !important;
    }
    html body.single-product #ax-qty-mobile {
        background: transparent !important;
        color: #fff !important;
        font-weight: 800 !important;
    }
    html body.single-product #ax-btn-submit-mobile {
        background: #FFEB34 !important;
        color: #163A55 !important;
        box-shadow: 0 2px 10px rgba(255,235,52,.25) !important;
    }
    html body.single-product #ax-btn-submit-mobile i {
        color: #163A55 !important;
    }
}


/* ── 11. BREADCRUMB — Clean override ── */

html body.single-product .wd-breadcrumbs,
html body.single-product .woocommerce-breadcrumb {
    font-size: 12px !important;
    color: #8899a6 !important;
    padding: 0 !important;
    margin-bottom: 6px !important;
}
html body.single-product .wd-breadcrumbs a {
    color: #5a7a94 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
}
html body.single-product .wd-breadcrumbs a:hover {
    color: #163A55 !important;
    text-decoration: underline !important;
}
html body.single-product nav.wd-breadcrumbs {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Hide our decorative chevron — PEWC's native toggle handles expand/collapse */
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper::after {
    display: none !important;
}
/* Style PEWC's native toggle icon white so it's visible on navy */
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper i,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper .pewc-group-toggle,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper svg,
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper span[class*="toggle"],
div[class^="pewc-group-wrap"] .pewc-group-heading-wrapper .dashicons {
    color: #fff !important;
    fill: #fff !important;
    font-size: 18px !important;
}


@media (min-width: 993px) {
    /* Broader qty+ATC hide — works regardless of WPBakery column class */
    .single-product form.cart > .quantity,
    .single-product form.cart > div.quantity,
    .single-product .pewc-total-only ~ .quantity,
    .single-product .pewc-total ~ .quantity {
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
    .single-product form.cart .single_add_to_cart_button:not(.kf-cta-btn) {
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
}

@media screen and (min-width:767px) {
    .pewc-checkboxes-images-wrapper.pewc-columns-3 .pewc-checkbox-image-wrapper {
        width: 100% !important;
    }
}

@media (min-width: 993px) {
    .single-product .quantity {
        --wd-form-height: 42px;
        display: inline-flex;
        vertical-align: top;
        white-space: nowrap;
        visibility: hidden !important;
    }
}
	
/* ════════════════════════════════════════════════════════════════
   KRONFÖNSTER — Category / Archive Page CSS
   Append to Theme Options CSS (at the very end)
   
   Covers:
   1. "Visa Mer" toggle button
   2. Extra description / FAQ section
   3. "från X kr" pricing on cards
   4. Material pill badges (replaces Flatsome buttons)
   5. "Konfigurera →" CTA button
   6. Custom badges
   7. Subcategory thumbnail pricing
   8. Filter sidebar fixes
   9. Category description layout
════════════════════════════════════════════════════════════════ */


/* ── 1. VISA MER BUTTON — Styled for WoodMart ── */

button.toggle-cat-desc-btn {
    background: transparent !important;
    color: #163A55 !important;
    border: 1.5px solid #163A55 !important;
    border-radius: 4px !important;
    padding: 9px 24px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.18s ease !important;
    margin-top: 12px !important;
    margin-bottom: 24px !important;
    letter-spacing: 0.02em !important;
}
button.toggle-cat-desc-btn:hover {
    background: #163A55 !important;
    color: #fff !important;
}

.separator-border {
    border-top: 1px solid #e4ecf2 !important;
    margin-bottom: 16px !important;
}

/* Description closed state */
div.term-description-closed {
    overflow: hidden !important;
    max-height: 100px !important;
    position: relative !important;
}
div.term-description-closed::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 50px !important;
    background: linear-gradient(transparent, #fff) !important;
    pointer-events: none !important;
}

/* Shop description (main shop page) */
div.shop-main-desc-closed {
    overflow: hidden !important;
    max-height: 100px !important;
    position: relative !important;
}
div.shop-main-desc-closed::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 50px !important;
    background: linear-gradient(transparent, #fff) !important;
    pointer-events: none !important;
}


/* ── 2. CATEGORY DESCRIPTION BELOW PRODUCTS ── */

.kf-cat-desc-below {
    max-width: 1200px;
    margin: 40px auto 0;
    padding: 0 20px;
}
.kf-cat-desc-below .term-description {
    font-size: 15px;
    line-height: 1.8;
    color: #2d3748;
}
.kf-cat-desc-below .term-description h2,
.kf-cat-desc-below .term-description h3 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    margin: 32px 0 14px !important;
}
.kf-cat-desc-below .term-description p {
    margin-bottom: 14px !important;
}
.kf-cat-desc-below .term-description a {
    color: #163A55 !important;
    text-decoration: underline !important;
}


/* ── EXTRA DESCRIPTION / FAQ SECTION ── */

.kf-cat-extra-desc {
    max-width: 1200px;
    margin: 40px auto 0;
    padding: 32px 24px;
    background: #f9fafb;
    border-radius: 10px;
    border: 1px solid #e4ecf2;
}
.kf-cat-extra-desc h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    margin: 0 0 24px 0 !important;
}
.kf-cat-extra-desc h3 {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    margin: 24px 0 8px !important;
}
.kf-cat-extra-desc p {
    font-size: 14px !important;
    line-height: 1.75 !important;
    color: #4a5568 !important;
    margin-bottom: 12px !important;
}

/* FAQ accordion styling (sc_fs_multi_faq shortcode) */
.kf-cat-extra-desc .faq-item,
.kf-cat-extra-desc .sc_fs_multi_faq {
    margin-bottom: 6px !important;
}
.kf-cat-extra-desc .faq_q_wrapper,
.kf-cat-extra-desc [class*="headline"] {
    background: #fff !important;
    border: 1px solid #e4ecf2 !important;
    border-radius: 6px !important;
    padding: 16px 48px 16px 20px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #163A55 !important;
    cursor: pointer !important;
    position: relative !important;
    transition: background 0.15s !important;
}
.kf-cat-extra-desc .faq_q_wrapper:hover,
.kf-cat-extra-desc [class*="headline"]:hover {
    background: #f0f5fa !important;
}
.kf-cat-extra-desc .faq_a_wrapper,
.kf-cat-extra-desc .faq-answer {
    padding: 4px 20px 20px !important;
    font-size: 14px !important;
    color: #4a5568 !important;
    line-height: 1.75 !important;
}


/* ── 3. "FRÅN X KR" PRICING ON CARDS ── */

.kf-from-price {
    display: block !important;
    font-size: 14px !important;
    color: #6a7a8a !important;
    margin-top: 4px !important;
    font-weight: 400 !important;
}
.kf-from-price strong {
    color: #163A55 !important;
    font-weight: 800 !important;
    font-size: 16px !important;
}

/* Re-show the price wrapper that was hidden */
.product-category .price-wrapper,
.product-list-content .price-wrapper {
    display: block !important;
}

/* On archive pages, show the price wrapper */
body.tax-product_cat .price-wrapper,
body.post-type-archive-product .price-wrapper {
    display: block !important;
}


/* ── 4. MATERIAL PILL BADGES ── */

.kf-material-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin-top: 6px !important;
    justify-content: center !important;
}
.kf-material-pill {
    display: inline-block !important;
    padding: 3px 10px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border-radius: 20px !important;
    background: #f0f4f7 !important;
    color: #163A55 !important;
    border: 1px solid #d1dce5 !important;
    text-decoration: none !important;
    transition: all 0.15s !important;
    line-height: 1.4 !important;
}
.kf-material-pill:hover {
    background: #163A55 !important;
    color: #fff !important;
    border-color: #163A55 !important;
    text-decoration: none !important;
}

/* Legacy: hide old Flatsome-styled buttons if any remain */
.material-buttons-wrapper .button.button-primary.is-xssmall {
    display: inline-block !important;
    padding: 3px 10px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border-radius: 20px !important;
    background: #f0f4f7 !important;
    color: #163A55 !important;
    border: 1px solid #d1dce5 !important;
    text-transform: none !important;
}


/* ── 5. CTA BUTTON ON PRODUCT CARDS ── */

.kf-card-cta {
    padding: 0 12px 12px !important;
    text-align: center !important;
}
.kf-card-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 9px 20px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    background: transparent !important;
    border: 1.5px solid #163A55 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    transition: all 0.18s ease !important;
    width: 100% !important;
    justify-content: center !important;
}
.kf-card-btn:hover {
    background: #163A55 !important;
    color: #fff !important;
    text-decoration: none !important;
}
.kf-card-btn-arrow {
    font-size: 14px !important;
    transition: transform 0.18s !important;
}
.kf-card-btn:hover .kf-card-btn-arrow {
    transform: translateX(3px) !important;
}


/* ── 6. CUSTOM BADGES ON ARCHIVE ── */

.custom-badge-wrapper {
    position: absolute !important;
    top: 45px !important;
    right: 8px !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    align-items: flex-end !important;
}
.custom-badge {
    display: inline-block !important;
    padding: 3px 8px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    background: #163A55 !important;
    color: #fff !important;
    border-radius: 3px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.02em !important;
}


/* ── 7. SUBCATEGORY THUMBNAIL PRICING ── */

.kf-subcat-price {
    font-size: 14px !important;
    color: #6a7a8a !important;
    margin-top: 6px !important;
    font-weight: 400 !important;
    text-align: center !important;
}
.kf-subcat-price strong {
    color: #163A55 !important;
    font-weight: 700 !important;
}
.kf-subcat-count {
    font-size: 12px !important;
    color: #9aabb8 !important;
    margin-top: 2px !important;
    text-align: center !important;
}


/* ── 8. FILTER SIDEBAR FIXES ── */

/* Fix text color on checkboxes/labels */
.wd-widget .wd-filter-item label,
.wd-widget .wd-filter-item a,
.widget_layered_nav label,
.widget_layered_nav a,
.wd-widget-layered-nav label,
.wd-widget-layered-nav a {
    color: #334862 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
}
.wd-widget .wd-filter-item label:hover,
.wd-widget .wd-filter-item a:hover {
    color: #163A55 !important;
}

/* Filter headings */
.wd-widget .widget-title,
.wd-widget .widgettitle {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 2px solid #e4ecf2 !important;
}

/* Checkbox styling */
.wd-widget input[type="checkbox"],
.widget_layered_nav input[type="checkbox"] {
    accent-color: #163A55 !important;
}

/* Filter count badges */
.wd-widget .count,
.widget_layered_nav .count {
    color: #9aabb8 !important;
    font-size: 12px !important;
}

/* Sort dropdown styling */
.wd-shop-sorting select,
.woocommerce-ordering select {
    border: 1.5px solid #c8d8e8 !important;
    border-radius: 4px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    color: #163A55 !important;
}


/* ── 9. GENERAL ARCHIVE/CATEGORY LAYOUT ── */

/* Product card hover */
.products .product-grid-item .product-element-top {
    transition: box-shadow 0.22s ease, transform 0.22s ease !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}
.products .product-grid-item:hover .product-element-top {
    box-shadow: 0 4px 20px rgba(22,58,85,0.1) !important;
}

/* Product title in grid */
.products .product-grid-item .wd-entities-title,
.products .product-grid-item .product-title a {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #163A55 !important;
    text-decoration: none !important;
}
.products .product-grid-item .product-title a:hover {
    color: #0f2a3f !important;
}

/* Category page title */
.woocommerce-products-header__title,
body.tax-product_cat .page-title,
body.tax-product_cat .entry-title {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #163A55 !important;
}


/* ── 10. RESPONSIVE ── */

@media (max-width: 767px) {
    .kf-card-btn {
        padding: 8px 16px !important;
        font-size: 11px !important;
    }
    .kf-cat-desc-below {
        padding: 0 16px;
    }
    .kf-cat-extra-desc {
        padding: 24px 16px;
        margin: 24px 16px 0;
        border-radius: 8px;
    }
    .kf-from-price strong {
        font-size: 14px !important;
    }
    .custom-badge {
        font-size: 9px !important;
        padding: 2px 6px !important;
    }
}

/* ── CATEGORY CTA BANNER ── */
.kf-cat-cta-banner {
    background: #163A55;
    border-radius: 8px;
    padding: 20px 28px;
    margin-top: 20px;
}
.kf-cat-cta-inner {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.kf-cat-cta-text {
    flex: 1;
    min-width: 200px;
}
.kf-cat-cta-text strong {
    display: block;
    color: #FFEB34;
    font-size: 16px;
    font-weight: 800;
}
.kf-cat-cta-text span {
    color: rgba(255,255,255,.7);
    font-size: 13px;
}
.kf-cat-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 12px 24px;
    background: #FFEB34;
    color: #163A55 !important;
    font-weight: 700;
    font-size: 13px;
    border-radius: 4px;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: all 0.18s;
    white-space: nowrap;
}
.kf-cat-cta-btn:hover {
    background: #f5df20;
    transform: translateY(-1px);
    text-decoration: none !important;
}
@media (max-width: 600px) {
    .kf-cat-cta-inner { flex-direction: column; text-align: center; }
    .kf-cat-cta-btn { width: 100%; justify-content: center; }
}

/* ── BREADCRUMB — Category pages match single product ── */
.tax-product_cat .wd-breadcrumbs,
.tax-product_cat .woocommerce-breadcrumb {
    font-size: 12px !important;
    color: #8899a6 !important;
    padding: 0 !important;
    margin-bottom: 8px !important;
    line-height: 1.5 !important;
}
.tax-product_cat .wd-breadcrumbs a,
.tax-product_cat .woocommerce-breadcrumb a {
    color: #5a7a94 !important;
    text-decoration: none !important;
    transition: color 0.15s !important;
    font-weight: 400 !important;
}
.tax-product_cat .wd-breadcrumbs a:hover,
.tax-product_cat .woocommerce-breadcrumb a:hover {
    color: #163A55 !important;
    text-decoration: underline !important;
}
.tax-product_cat .wd-breadcrumbs .breadcrumb-separator,
.tax-product_cat .woocommerce-breadcrumb > span:not(:last-child)::after {
    content: "›" !important;
    margin: 0 6px !important;
    color: #b4c5d2 !important;
    font-size: 13px !important;
}
.tax-product_cat .wd-breadcrumbs span:last-child,
.tax-product_cat .woocommerce-breadcrumb > span:last-child {
    color: #3d5a70 !important;
    font-weight: 500 !important;
}
.tax-product_cat nav.wd-breadcrumbs {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* ================================================================
   KRONFÖNSTER — Trust Sections CSS v2
================================================================ */

/* ── WHY CHOOSE US ── */
.kf-why-wrap { background:#f5f8fa; padding:60px 0; box-sizing:border-box; }
.kf-why-inner { max-width:1080px; margin:0 auto; padding:0 24px; box-sizing:border-box; }
.kf-why-header { text-align:center; margin-bottom:44px; }
.kf-why-title { font-size:clamp(22px,3vw,32px) !important; font-weight:800 !important; color:#163A55 !important; margin:0 0 12px !important; }
.kf-why-sub { font-size:15px !important; color:#5a6a7a !important; max-width:580px; margin:0 auto !important; line-height:1.7 !important; }
.kf-why-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px 44px; margin-bottom:48px; }
@media(max-width:620px){ .kf-why-grid{ grid-template-columns:1fr; gap:20px; } }
.kf-why-item { display:flex; align-items:flex-start; gap:12px; }
.kf-why-chk { flex-shrink:0; margin-top:1px; }
.kf-why-item strong { display:block; font-size:14px; font-weight:700; color:#163A55; margin-bottom:4px; }
.kf-why-item p { font-size:13.5px !important; color:#5a6a7a !important; line-height:1.65 !important; margin:0 !important; }
.kf-why-stats { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; background:#163A55; border-radius:10px; padding:24px 16px; }
.kf-why-stat { display:flex; flex-direction:column; align-items:center; padding:8px 32px; flex:1 0 100px; }
.kf-why-num { font-size:34px; font-weight:800; color:#FFEB34; line-height:1; display:flex; align-items:baseline; gap:2px; }
.kf-why-unit { font-size:17px; font-weight:600; color:rgba(255,235,52,.7); }
.kf-why-lbl { font-size:11px; font-weight:500; color:rgba(200,216,232,.8); margin-top:5px; text-transform:uppercase; letter-spacing:.07em; text-align:center; }
.kf-why-sep { width:1px; height:44px; background:rgba(200,216,232,.2); flex-shrink:0; }
@media(max-width:560px){ .kf-why-sep{display:none;} .kf-why-stat{flex:0 0 50%;padding:10px 0;} }

/* ── REVIEWS SECTION ── */
.kf-rev-wrap { background:#fff; padding:60px 0 68px; border-top:1px solid #e8eef3; box-sizing:border-box; overflow:hidden; }
.kf-rev-inner { max-width:1080px; margin:0 auto; padding:0 24px; box-sizing:border-box; }
.kf-rev-hdr { text-align:center; margin-bottom:44px; }
.kf-rev-title { font-size:clamp(20px,2.8vw,28px) !important; font-weight:800 !important; color:#163A55 !important; margin:0 0 10px !important; }
.kf-rev-sub { font-size:14.5px !important; color:#5a6a7a !important; margin:0 !important; }

/* CRITICAL grid fix — prevents column blowout */
.kf-rev-cols { display:grid; grid-template-columns:1fr 1fr; gap:36px; min-width:0; }
@media(max-width:760px){ .kf-rev-cols{grid-template-columns:1fr; gap:44px;} }

/* CRITICAL: min-width:0 on grid children stops overflow */
.kf-rev-col { display:flex; flex-direction:column; min-width:0; overflow:hidden; }

/* Source badge */
.kf-rev-src { display:flex; align-items:center; gap:9px; font-size:13.5px; font-weight:700; color:#163A55; margin-bottom:16px; padding-bottom:14px; border-bottom:2px solid #163A55; }
.kf-rev-src--tp { border-color:#00B67A; }
.kf-src-stars { margin-left:auto; font-size:15px; letter-spacing:1px; }
.kf-src-stars--g  { color:#FBBC05; }
.kf-src-stars--tp { color:#00B67A; }

/* Carousel shell — clips the track */
.kf-cs-wrap { flex:1; overflow:hidden; position:relative; min-width:0; border-radius:10px; }

/* Viewport — the actual clipping window */
.kf-cs-viewport { overflow:hidden; width:100%; position:relative; border-radius:10px; }

/* Track — slides horizontally, no fixed width */
.kf-cs-track { display:flex; will-change:transform; }

/* Review card — width set by JS to match viewport */
.kf-rc { flex-shrink:0; background:#fff; border:1px solid #e4ecf2; border-radius:10px; padding:22px 20px 18px; box-sizing:border-box; display:flex; flex-direction:column; min-height:190px; box-shadow:0 2px 12px rgba(22,58,85,.06); }
.kf-rc--g  { border-left:4px solid #163A55; }
.kf-rc--tp { border-left:4px solid #00B67A; }
.kf-rc-stars { font-size:17px; letter-spacing:2px; margin-bottom:12px; line-height:1; }
.kf-rc-stars--g  { color:#FBBC05; }
.kf-rc-stars--tp { color:#00B67A; }
.kf-rc-txt { font-size:13.5px !important; color:#3a4a5a !important; line-height:1.75 !important; margin:0 0 auto !important; font-style:italic !important; flex:1; }
.kf-rc-foot { display:flex; align-items:center; gap:10px; margin-top:16px; padding-top:14px; border-top:1px solid #f0f5f8; }
.kf-rc-av { width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; flex-shrink:0; }
.kf-rc-av--g  { background:#163A55; color:#FFEB34; }
.kf-rc-av--tp { background:#00B67A; color:#fff; }
.kf-rc-nm { font-weight:700; font-size:13px; color:#163A55; }
.kf-rc-mt { font-size:11.5px; color:#8a9aaa; margin-top:1px; }
.kf-rc-lnk { margin-left:auto; color:#b0bec9; text-decoration:none; padding:5px; border-radius:5px; display:flex; align-items:center; transition:color .2s,background .2s; flex-shrink:0; }
.kf-rc-lnk:hover { color:#163A55; background:#f0f5f8; }
.kf-rc-lnk--tp:hover { color:#00B67A; }

/* Navigation */
.kf-cs-nav { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:14px; }
.kf-nb { width:34px; height:34px; border-radius:50%; border:1.5px solid #cdd8e2; background:#fff; color:#163A55; cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; transition:background .2s,border-color .2s,color .2s; flex-shrink:0; }
.kf-nb:hover { background:#163A55; border-color:#163A55; color:#fff; }
.kf-nb--tp:hover { background:#00B67A; border-color:#00B67A; }
.kf-dots-row { display:flex; gap:5px; flex-wrap:wrap; justify-content:center; max-width:160px; }
.kf-dot { width:7px; height:7px; border-radius:50%; background:#cdd8e2; border:none; padding:0; cursor:pointer; transition:background .2s,transform .2s; flex-shrink:0; }
.kf-dot--on { background:#163A55; transform:scale(1.35); }

/* Read-all link */
.kf-all-lnk { display:inline-block; font-size:12.5px; font-weight:600; color:#163A55 !important; text-decoration:none !important; margin-top:12px; border-bottom:1.5px solid transparent; transition:border-color .2s; align-self:flex-start; }
.kf-all-lnk:hover { border-bottom-color:#163A55; }
.kf-all-lnk--tp { color:#00B67A !important; }
.kf-all-lnk--tp:hover { border-bottom-color:#00B67A; }

.kf-delivery-info {
  background: #f0f5f8;
  border: 1px solid #dde8ee;
  border-left: 4px solid #163A55;
  border-radius: 6px;
  padding: 14px 16px;
  margin: 14px 0;
  font-size: 13px;
  color: #3a4a5a;
}
.kf-delivery-info strong {
  display: flex;
  align-items: center;
  font-size: 13px;
  font-weight: 700;
  color: #163A55;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 10px;
}
.kf-delivery-info ul {
  margin: 0 0 8px !important;
  padding: 0 !important;
  list-style: none !important;
}
.kf-delivery-info ul li {
  font-size: 13.5px;
  color: #3a4a5a;
  margin-bottom: 3px;
}
.kf-delivery-info p {
  font-size: 11.5px !important;
  color: #8a9aaa !important;
  margin: 6px 0 0 !important;
  font-style: italic;
}@media (min-width: 1025px) {
	.pets-border-radius {
	border-radius: 80px;
}


/* ============================================================
SPRÖJS & GRID 3
   ============================================================ */

.pewc-radio-images-wrapper.child-product-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
}

.pewc-radio-image-wrapper {
    padding: 0 !important; 
    margin: 0 !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    width: 100% !important;
}

.pewc-radio-image-wrapper label {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pewc-radio-image-wrapper picture, 
.pewc-radio-image-wrapper img {
    width: 100% !important;
    height: auto !important;
    min-height: 120px !important;
    max-height: none !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
    padding: 4px !important;
}


.pewc-radio-image-desc {
    font-size: 10px !important;
    line-height: 1.1 !important;
    padding: 6px 2px !important;
    background: #f9f9f9 !important;
    border-top: 1px solid #eee !important;
    font-weight: 700 !important;
    text-align: center !important;
    min-height: 35px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}


.pewc-radio-image-wrapper:has(input:checked) {
    border: 2px solid #193A56 !important;
    background-color: #f0f7ff !important;
}

.pewc-radio-image-wrapper input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
}

@media (max-width: 576px) {
	.pewc-radio-images-wrapper.child-product-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
}
}

