/* Kálvária Elegant – presentation layer. No WooCommerce/plugin fields are hidden or replaced. */
body.klv-elegant{--klv-bg:#faf7f1;--klv-ink:#30251f;--klv-accent:#78613c;--klv-tint:#eae2d5;--klv-border:#d8cdbb;background:var(--klv-bg);color:var(--klv-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
body.klv-elegant h1,body.klv-elegant h2,body.klv-elegant h3,body.klv-elegant h4{font-family:Georgia,'Times New Roman',serif;color:var(--klv-ink);font-weight:400;letter-spacing:-.035em}
body.klv-elegant a{color:var(--klv-ink)}body.klv-elegant a:focus-visible,body.klv-elegant button:focus-visible,body.klv-elegant input:focus-visible,body.klv-elegant select:focus-visible,body.klv-elegant textarea:focus-visible{outline:3px solid var(--klv-accent);outline-offset:3px}
body.klv-elegant button,body.klv-elegant input,body.klv-elegant select,body.klv-elegant textarea{font-family:inherit}body.klv-elegant .col-full{max-width:1320px}
body.klv-elegant .site-header{background:var(--klv-bg)!important;color:var(--klv-ink);border-bottom:1px solid var(--klv-border);padding-top:22px;margin-bottom:0}
body.klv-elegant .site-header a,body.klv-elegant .site-branding .site-description{color:var(--klv-ink)}
body.klv-elegant .site-branding img{max-height:72px;max-width:170px;width:auto;object-fit:contain}body.klv-elegant .site-branding .site-title{font-family:Georgia,serif;letter-spacing:-.03em}
body.klv-elegant .site-search .widget_product_search input[type=search]{background:transparent;border:1px solid var(--klv-border);box-shadow:none;font-size:13px}
body.klv-elegant .storefront-primary-navigation{background:transparent;border-top:1px solid var(--klv-border)}
body.klv-elegant .main-navigation ul.menu>li>a,body.klv-elegant .main-navigation ul.nav-menu>li>a{padding-top:1.1em;padding-bottom:1.1em;font-size:13px}
body.klv-elegant .main-navigation ul ul,body.klv-elegant .site-header-cart .widget_shopping_cart{background:#f2ebe0;color:var(--klv-ink)}
body.klv-elegant .site-header-cart .cart-contents{padding-top:1.1em;padding-bottom:1.1em;font-size:13px}
body.klv-elegant .storefront-breadcrumb{margin-bottom:0;padding:1em 0;font-size:12px;color:var(--klv-accent)}
body.klv-elegant .button,body.klv-elegant button.alt,body.klv-elegant input[type=submit],body.klv-elegant .widget a.button.checkout{background:var(--klv-ink);color:var(--klv-bg);border-color:var(--klv-ink);font-weight:400;min-height:46px}
body.klv-elegant button.menu-toggle{background:transparent;color:var(--klv-ink);border-color:var(--klv-border);min-height:44px}
body.klv-elegant .woocommerce-info,body.klv-elegant .woocommerce-message{background:#514530;color:#fff}body.klv-elegant .woocommerce-info a,body.klv-elegant .woocommerce-message a{color:#fff}
body.klv-elegant .woocommerce-error{background:#a0372b;color:#fff}body.klv-elegant .woocommerce-error a{color:#fff}
body.klv-elegant .widget .widget-title,body.klv-elegant .widget .widgettitle{border-bottom-color:var(--klv-border);font-family:Georgia,serif;font-size:24px;font-weight:400}
body.klv-elegant .widget-area .widget{font-size:14px}body.klv-elegant .site-main{padding-top:25px}
/* Native catalog keeps product links, variant buttons, prices, sale/stock notices and pagination. */
body.klv-elegant ul.products li.product img{background:var(--klv-tint);border-radius:0;margin-bottom:1.2em}
body.klv-elegant ul.products li.product .woocommerce-loop-product__title,body.klv-elegant ul.products li.product h2{font-size:24px;line-height:1.2}
body.klv-elegant ul.products li.product .price{color:var(--klv-ink);font-size:15px}
body.klv-elegant .woocommerce-products-header h1{font-size:clamp(36px,4vw,60px);line-height:1.1}
body.klv-elegant .storefront-sorting{border-top:1px solid var(--klv-border);border-bottom:1px solid var(--klv-border);padding:15px 0}
body.klv-elegant .woocommerce-ordering select{background:var(--klv-bg);color:var(--klv-ink);border:1px solid var(--klv-border);min-height:44px}
/* Keep every native product control and hook output. Sidebar widgets remain below the full-width product. */
body.klv-elegant.single-product .content-area{width:100%;float:none;margin-right:0}
body.klv-elegant.single-product #secondary.widget-area{width:100%;float:none;margin:0 0 40px}
body.klv-elegant.single-product div.product .product_title{font-size:clamp(40px,4.6vw,66px);line-height:1.05;margin-bottom:18px}
body.klv-elegant.single-product div.product .woocommerce-product-gallery{background:var(--klv-tint)}
body.klv-elegant.single-product div.product .woocommerce-product-gallery img{border-radius:0}
body.klv-elegant.single-product div.product .summary{min-width:0}
body.klv-elegant.single-product div.product .summary>.price{font-family:Georgia,serif;font-size:30px;color:var(--klv-ink);border-bottom:1px solid var(--klv-border);padding-bottom:20px}
body.klv-elegant.single-product .woocommerce-product-details__short-description{font-size:15px;line-height:1.8}
body.klv-elegant.single-product form.cart{padding-top:15px;border-top:1px solid var(--klv-border)}
body.klv-elegant.single-product form.cart label{color:var(--klv-ink)}
body.klv-elegant.single-product form.cart input:not([type=radio]):not([type=checkbox]):not([type=hidden]),body.klv-elegant.single-product form.cart select,body.klv-elegant.single-product form.cart textarea{font-size:16px;min-height:48px;max-width:100%;background:var(--klv-bg);color:var(--klv-ink);border:1px solid var(--klv-border);box-shadow:none;scroll-margin-block:150px}
body.klv-elegant.single-product form.cart .single_add_to_cart_button{min-height:52px;background:var(--klv-ink);color:var(--klv-bg);font-size:14px}
body.klv-elegant.single-product form.cart table.variations{width:100%;margin-bottom:20px}
body.klv-elegant.single-product form.cart table.variations td{background:transparent}
body.klv-elegant.single-product form.cart .reset_variations{font-size:13px;text-decoration:underline;text-underline-offset:3px}
body.klv-elegant.single-product .woocommerce-tabs ul.tabs{border-color:var(--klv-border)}
body.klv-elegant.single-product .woocommerce-tabs ul.tabs li{border-color:var(--klv-border)}
body.klv-elegant img.allergen-icon,body.klv-elegant ul.products li.product img.allergen-icon{display:inline-block;width:24px;max-width:24px;height:24px;object-fit:contain;vertical-align:middle;margin:0 3px 3px 0;background:transparent}
body.klv-elegant .widget img.allergen-icon{width:20px;max-width:20px;height:20px}
/* Cart and checkout retain native markup, validation and shipping/payment blocks. */
body.klv-elegant.woocommerce-cart table.cart,body.klv-elegant.woocommerce-checkout table.shop_table{border:1px solid var(--klv-border)}
body.klv-elegant.woocommerce-cart table.cart th,body.klv-elegant.woocommerce-checkout table.shop_table th{background:var(--klv-tint)}
body.klv-elegant.woocommerce-cart table.cart td,body.klv-elegant.woocommerce-checkout table.shop_table td{background:#fdfbf7}
body.klv-elegant.woocommerce-checkout input.input-text,body.klv-elegant.woocommerce-checkout textarea.input-text{font-size:16px;border:1px solid var(--klv-border);box-shadow:none;background:#fffdf9}
body.klv-elegant .site-footer{background:var(--klv-ink);color:var(--klv-bg);padding-top:45px}
body.klv-elegant .site-footer a,body.klv-elegant .site-footer h1,body.klv-elegant .site-footer h2,body.klv-elegant .site-footer h3,body.klv-elegant .site-footer .widget-title{color:var(--klv-bg)}
body.klv-elegant .site-footer .widget-title{border-bottom-color:#685a4c}
body.klv-elegant .klv-footer-intro{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;padding-bottom:35px;margin-bottom:30px;border-bottom:1px solid #685a4c}
body.klv-elegant .klv-footer-brand{font:44px Georgia,serif;text-decoration:none}
body.klv-elegant .klv-footer-brand small{display:block;font:9px Arial,sans-serif;letter-spacing:.2em;margin-top:10px}
body.klv-elegant .klv-footer-intro p{font:24px/1.4 Georgia,serif;margin:0}
/* Accepted elegant homepage composition. */
body.klv-elegant-home #content>.col-full{max-width:none;margin:0;padding:0}
body.klv-elegant-home .klv-home-area{width:100%;float:none;margin:0}
body.klv-elegant-home .site-main{padding-top:0;margin:0}
body.klv-elegant .klv-eyebrow{font:600 10px/1.5 Arial,sans-serif;letter-spacing:.16em;color:var(--klv-accent);margin:0 0 24px}
body.klv-elegant .klv-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:15px 24px;border:0;border-radius:0;background:var(--klv-ink);color:var(--klv-bg);font-size:13px;text-decoration:none;font-weight:400;line-height:1.5}
body.klv-elegant .klv-text-link{display:inline-block;min-height:44px;padding:10px 0;font-size:13px;text-decoration:underline;text-underline-offset:6px}
body.klv-elegant .klv-hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;max-width:1440px;margin:auto;padding:65px 5% 60px;min-height:640px}
body.klv-elegant .klv-hero h1{font-size:clamp(50px,6.4vw,94px);line-height:1.06;letter-spacing:-.055em;margin:0 0 26px}
body.klv-elegant .klv-hero-copy>p:not(.klv-eyebrow){font-size:15px;line-height:1.8;margin-bottom:28px}
body.klv-elegant .klv-hero-copy .klv-text-link{display:block;width:fit-content;margin-top:10px}
body.klv-elegant .klv-hero-art{position:relative;aspect-ratio:1.02;background:#e6d8c5;border-radius:48% 48% 0 0;overflow:hidden}
body.klv-elegant .klv-hero-art>img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;padding:35px 12px 70px}
body.klv-elegant .klv-hero-caption{position:absolute;bottom:26px;left:0;width:100%;text-align:center}
body.klv-elegant .klv-hero-caption span{font-size:9px;letter-spacing:.2em}
body.klv-elegant .klv-hero-caption p{font:27px Georgia,serif;margin:5px}
body.klv-elegant .klv-vertical{position:absolute;right:13px;top:36%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em}
body.klv-elegant .klv-service-strip{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--klv-border);border-bottom:1px solid var(--klv-border);padding:22px 5%;font-size:10px;color:var(--klv-accent)}
body.klv-elegant .klv-service-strip span{display:flex;align-items:center;gap:16px}
body.klv-elegant .klv-service-strip b{font-size:12px;color:var(--klv-ink);font-weight:400}
body.klv-elegant .klv-collection,body.klv-elegant .klv-live-products,body.klv-elegant .klv-home-existing-content{padding:72px 5%;max-width:1440px;margin:auto}
body.klv-elegant .klv-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}
body.klv-elegant .klv-section-heading h2,body.klv-elegant .klv-feature h2,body.klv-elegant .klv-story h2,body.klv-elegant .klv-live-products h2{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.04em;margin:0}
body.klv-elegant .klv-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}
body.klv-elegant .klv-category-card{display:block;text-decoration:none}
body.klv-elegant .klv-image-wrap{aspect-ratio:1.4;background:var(--klv-tint);overflow:hidden}
body.klv-elegant .klv-image-wrap img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;transition:transform .35s;border-radius:0}
body.klv-elegant .klv-category-card:hover img{transform:scale(1.03)}
body.klv-elegant .klv-category-label{position:relative;padding:20px 30px 5px 0}
body.klv-elegant .klv-category-label h3{font-size:26px;margin:0;line-height:1.15}
body.klv-elegant .klv-category-label p{font-size:12px;color:var(--klv-accent);margin:8px 0 0}
body.klv-elegant .klv-category-label>span{position:absolute;right:0;top:20px;font-size:22px}
body.klv-elegant .klv-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--klv-tint)}
body.klv-elegant .klv-feature-image{aspect-ratio:1.3;overflow:hidden}
body.klv-elegant .klv-feature-image img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
body.klv-elegant .klv-feature-copy{padding:45px 15% 45px 12%}
body.klv-elegant .klv-feature-copy>p:not(.klv-eyebrow){font-size:14px;margin:22px 0 25px}
body.klv-elegant .klv-live-products h2{margin-bottom:35px}
body.klv-elegant .klv-live-products ul.products li.product h2{font-size:24px;margin-bottom:10px}
body.klv-elegant .klv-story{text-align:center;padding:65px 20px 85px}
body.klv-elegant .klv-story>p:not(.klv-eyebrow){max-width:590px;margin:25px auto 15px;font-size:15px}
body.klv-elegant .klv-mobile-order{display:none}
@media(min-width:768px){body.klv-elegant.single-product div.product .woocommerce-product-gallery{width:47%;margin-right:5%}body.klv-elegant.single-product div.product .summary{width:48%}}
@media(max-width:1050px){body.klv-elegant .klv-hero{min-height:540px;padding-top:40px}body.klv-elegant .klv-feature-copy{padding:35px 8%}body.klv-elegant .klv-service-strip span{gap:10px}body.klv-elegant .klv-service-strip b{font-size:11px}}
@media(max-width:767px){
body.klv-elegant .col-full{margin-left:5%;margin-right:5%}
body.klv-elegant .site-header{padding:15px 0 0}
body.klv-elegant .site-branding img{max-width:135px;max-height:60px}
body.klv-elegant .storefront-primary-navigation{border-top:0}
body.klv-elegant .site-main{padding-top:18px}
body.klv-elegant .site-content{overflow-wrap:break-word}
body.klv-elegant ul.products li.product .woocommerce-loop-product__title,body.klv-elegant ul.products li.product h2{font-size:22px}
body.klv-elegant.single-product div.product .product_title{font-size:46px}
body.klv-elegant.single-product div.product .summary>.price{font-size:28px}
body.klv-elegant.single-product div.product .woocommerce-product-gallery{margin-bottom:30px}
body.klv-elegant.single-product form.cart .single_add_to_cart_button{min-height:52px}
body.klv-elegant .klv-hero{grid-template-columns:1fr;gap:30px;padding:38px 6% 42px;min-height:0}
body.klv-elegant .klv-hero h1{font-size:clamp(56px,12vw,82px)}
body.klv-elegant .klv-hero-copy>p:not(.klv-eyebrow){font-size:14px}
body.klv-elegant .klv-hero-art{aspect-ratio:1.1;max-height:440px}
body.klv-elegant .klv-hero-art>img{padding:20px 12px 55px}
body.klv-elegant .klv-hero-caption{bottom:18px}
body.klv-elegant .klv-hero-caption p{font-size:24px}
body.klv-elegant .klv-service-strip{flex-direction:column;padding:20px 6%;gap:12px}
body.klv-elegant .klv-service-strip b{font-size:12px}
body.klv-elegant .klv-collection,body.klv-elegant .klv-live-products,body.klv-elegant .klv-home-existing-content{padding:45px 6%}
body.klv-elegant .klv-section-heading{display:block;margin-bottom:25px}
body.klv-elegant .klv-section-heading .klv-text-link{margin-top:15px}
body.klv-elegant .klv-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}
body.klv-elegant .klv-image-wrap{aspect-ratio:1.1}
body.klv-elegant .klv-category-label{padding:14px 14px 5px 0}
body.klv-elegant .klv-category-label h3{font-size:21px}
body.klv-elegant .klv-category-label p{font-size:10px}
body.klv-elegant .klv-category-label>span{top:14px;font-size:16px}
body.klv-elegant .klv-feature{grid-template-columns:1fr}
body.klv-elegant .klv-feature-image{aspect-ratio:1.4}
body.klv-elegant .klv-feature-copy{padding:32px 7% 40px}
body.klv-elegant .klv-feature .klv-button{font-size:12px;gap:12px}
body.klv-elegant .klv-story{padding:45px 6% 65px}
body.klv-elegant .klv-story h2{font-size:37px}
body.klv-elegant .klv-footer-intro{grid-template-columns:1fr 1fr;gap:25px}
body.klv-elegant .klv-footer-brand{font-size:34px}
body.klv-elegant .klv-footer-intro p{font-size:20px}
body.klv-elegant .klv-footer-intro>.klv-text-link{grid-column:1/-1;width:fit-content}
/* Keep Storefront's existing bottom account/search/cart bar; place the shortcut above it. */
body.klv-elegant.klv-has-mobile-order{padding-bottom:140px}
body.klv-elegant .klv-mobile-order:not([hidden]){position:fixed;left:0;right:0;bottom:0;z-index:100;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 5% calc(10px + env(safe-area-inset-bottom));background:var(--klv-bg);border-top:1px solid var(--klv-border);box-shadow:0 -3px 12px #0001}
body.klv-elegant .klv-mobile-order.klv-above-handheld{bottom:var(--klv-handheld-height,68px)}
body.klv-elegant .klv-mobile-order>span{font-size:11px;line-height:1.3}
body.klv-elegant .klv-mobile-order small{display:block;margin-top:5px;font-size:9px}
body.klv-elegant .klv-mobile-order .klv-button{font-size:11px;padding:12px 16px;min-height:46px;white-space:normal;max-width:55%}
}
@media(prefers-reduced-motion:reduce){body.klv-elegant .klv-image-wrap img{transition:none}}
/* Single-image galleries have no multi-image layout to flash. Zoom/swatches remain native. */
body.klv-elegant.single-product div.product .woocommerce-product-gallery.klv-gallery-single{opacity:1!important;transition:none!important}

/* 1.0.4: readable navigation and equal catalog image boxes; raster files are untouched. */
body.klv-elegant{font-size:18px;line-height:1.7}
body.klv-elegant .main-navigation ul.menu>li>a,
body.klv-elegant .main-navigation ul.nav-menu>li>a{font-size:19px;line-height:1.4;padding:1em .85em;font-weight:600;min-height:48px}
body.klv-elegant .main-navigation ul ul a{font-size:18px;line-height:1.45;padding:.8em 1em}
body.klv-elegant button.menu-toggle{font-size:19px;min-height:48px}
body.klv-elegant .site-search .widget_product_search input[type=search],
body.klv-elegant .site-header-cart .cart-contents{font-size:16px}
body.klv-elegant .storefront-breadcrumb{font-size:14px;line-height:1.6}
body.klv-elegant .widget-area .widget{font-size:16px}
body.klv-elegant.single-product .woocommerce-product-details__short-description,
body.klv-elegant .klv-hero-copy>p:not(.klv-eyebrow),
body.klv-elegant .klv-feature-copy>p:not(.klv-eyebrow),
body.klv-elegant .klv-story>p:not(.klv-eyebrow){font-size:17px;line-height:1.75}
body.klv-elegant .klv-button,body.klv-elegant .klv-text-link,
body.klv-elegant.single-product form.cart .single_add_to_cart_button{font-size:16px}
body.klv-elegant ul.products li.product .price{font-size:18px}
body.klv-elegant.single-product form.cart .reset_variations{font-size:15px}
body.klv-elegant .klv-category-label p{font-size:14px;line-height:1.5}
body.klv-elegant .klv-service-strip{font-size:13px}
body.klv-elegant .klv-service-strip b{font-size:14px}
/* Preserve the complete, unmodified photo on a consistent white square canvas. */
body.klv-elegant ul.products li.product{isolation:isolate}
body.klv-elegant ul.products li.product img.attachment-woocommerce_thumbnail,
body.klv-elegant ul.products li.product img.wp-post-image,
body.klv-elegant ul.products li.product img.woocommerce-placeholder{
 display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain;
 object-position:center;box-sizing:border-box;background:#fff;border:1px solid var(--klv-border);
 mix-blend-mode:normal;padding:clamp(8px,2vw,20px);margin-bottom:1.2em;
}
body.klv-elegant .klv-image-wrap{aspect-ratio:1 / 1;isolation:isolate;background:#fff;border:1px solid var(--klv-border)}
body.klv-elegant .klv-image-wrap img{padding:clamp(8px,2vw,20px);box-sizing:border-box}
body.klv-elegant .woocommerce-product-gallery__image--placeholder img.klv-logo-placeholder{
 display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain;
 box-sizing:border-box;padding:clamp(30px,8vw,70px);background:#fff;border:1px solid var(--klv-border);mix-blend-mode:normal;
}
body.klv-elegant ul.products li.product img.klv-logo-placeholder{padding:clamp(24px,5vw,50px)}
@media(max-width:767px){
 body.klv-elegant .main-navigation ul.menu>li>a,
 body.klv-elegant .main-navigation ul.nav-menu>li>a{font-size:19px;padding:.8em .25em;line-height:1.45}
 body.klv-elegant .main-navigation ul ul a{font-size:18px}
 body.klv-elegant .klv-feature .klv-button{font-size:15px}
 body.klv-elegant .klv-mobile-order>span{font-size:13px}
 body.klv-elegant .klv-mobile-order small{font-size:11px}
 body.klv-elegant .klv-mobile-order .klv-button{font-size:14px;min-height:48px}
}

/* Footer contrast must win over Storefront's inline theme-color stylesheet. */
body.klv-elegant #colophon.site-footer,
body.klv-elegant #colophon.site-footer .widget,
body.klv-elegant #colophon.site-footer .widget p,
body.klv-elegant #colophon.site-footer li{font-size:16px;line-height:1.7;color:#f8f3eb}
body.klv-elegant #colophon.site-footer a,
body.klv-elegant #colophon.site-footer .widget a,
body.klv-elegant #colophon.site-footer .site-info a{color:#f8f3eb!important}
body.klv-elegant #colophon.site-footer a:hover,
body.klv-elegant #colophon.site-footer a:focus{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
body.klv-elegant #colophon.site-footer a:focus-visible{outline-color:#f8f3eb}
body.klv-elegant #colophon.site-footer .site-info,
body.klv-elegant #colophon.site-footer .site-info a{font-size:15px;line-height:1.65}
body.klv-elegant #colophon.site-footer .klv-footer-brand small{font-size:15px;letter-spacing:.08em}
/* The mobile footer toolbar is inside colophon too: keep its new light links contrasted. */
body.klv-elegant #colophon.site-footer .storefront-handheld-footer-bar,
body.klv-elegant #colophon.site-footer .storefront-handheld-footer-bar ul li>a{background:#30251f}
body.klv-elegant #colophon.site-footer .storefront-handheld-footer-bar ul li>a .count{background:#f8f3eb;color:#30251f}

/* 1.0.5: keep the consent settings shortcut above the native mobile toolbars. */
@media(max-width:767px){
 body.klv-elegant{--klv-consent-shortcut-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
 body.klv-elegant.klv-has-mobile-order{--klv-consent-shortcut-bottom:calc(184px + env(safe-area-inset-bottom,0px))}
 body.klv-elegant #wpconsent-container::part(wpconsent-settings-button){bottom:var(--klv-consent-shortcut-bottom)!important}
 /* Fallback for a future/light-DOM rendering; current WPConsent uses the part above. */
 body.klv-elegant #wpconsent-consent-floating{bottom:var(--klv-consent-shortcut-bottom)!important}
}

/* 1.0.5: mobile consent actions remain readable within the viewport. */
@media(max-width:767px){
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-content){box-sizing:border-box;max-width:calc(100% - 24px);max-height:80vh;max-height:80dvh;overflow-y:auto;padding-left:16px;padding-right:16px}
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-buttons),
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-buttons-left){display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;gap:10px;padding-right:0;box-sizing:border-box}
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-accept-button),
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-cancel-button),
 body.klv-elegant #wpconsent-container::part(wpconsent-preferences-save-button){width:100%;max-width:100%;min-width:0;min-height:48px;height:auto;white-space:normal;overflow-wrap:anywhere;line-height:1.4;padding:12px 16px;box-sizing:border-box}
 body.klv-elegant #wpconsent-container::part(wpconsent-banner-footer){flex-wrap:wrap;gap:10px;min-width:0}
 body.klv-elegant #wpconsent-container::part(wpconsent-button-accept),
 body.klv-elegant #wpconsent-container::part(wpconsent-button-cancel),
 body.klv-elegant #wpconsent-container::part(wpconsent-button-preferences){min-width:0;max-width:100%;min-height:48px;height:auto;white-space:normal;overflow-wrap:anywhere;line-height:1.4;box-sizing:border-box}
}

/* Owner-requested cream compositing: originals are untouched, this is not an alpha cutout. */
body.klv-elegant ul.products li.product img.attachment-woocommerce_thumbnail,
body.klv-elegant ul.products li.product img.wp-post-image,
body.klv-elegant ul.products li.product img.woocommerce-placeholder,
body.klv-elegant .woocommerce-product-gallery__image--placeholder img.klv-logo-placeholder{background:var(--klv-bg);border:0;mix-blend-mode:multiply}
body.klv-elegant ul.products li.product,
body.klv-elegant .klv-image-wrap,
body.klv-elegant .klv-hero-art,
body.klv-elegant .klv-feature-image,
body.klv-elegant.single-product div.product .woocommerce-product-gallery{background:var(--klv-bg);border:0;isolation:isolate}
body.klv-elegant .klv-image-wrap img,
body.klv-elegant .klv-hero-art>img,
body.klv-elegant .klv-feature-image img,
body.klv-elegant .site-branding img.custom-logo,
body.klv-elegant.single-product .woocommerce-product-gallery__image img,
body.klv-elegant.single-product .woocommerce-product-gallery .flex-control-thumbs img{mix-blend-mode:multiply}
/* Serif navigation in readable dark beige, including native mobile and submenu states. */
body.klv-elegant .main-navigation a,
body.klv-elegant .main-navigation a:visited,
body.klv-elegant button.menu-toggle{font-family:Georgia,'Times New Roman',serif;color:#80633f!important;font-weight:600}
body.klv-elegant .main-navigation ul.menu>li>a,
body.klv-elegant .main-navigation ul.nav-menu>li>a,
body.klv-elegant button.menu-toggle{font-size:20px}
body.klv-elegant .main-navigation ul ul a{font-size:18px}
body.klv-elegant .main-navigation a:hover,
body.klv-elegant .main-navigation a:focus,
body.klv-elegant .main-navigation .current-menu-item>a{color:#695032!important;text-decoration:underline;text-underline-offset:4px}
body.klv-elegant button.menu-toggle::before,
body.klv-elegant button.menu-toggle::after,
body.klv-elegant button.menu-toggle span::before{background-color:#80633f!important}

/* 1.0.6 candidate: use the available desktop row without reducing readable type. */
@media(min-width:1200px){
 body.klv-elegant .storefront-primary-navigation>.col-full{display:flex;align-items:center;gap:16px}
 body.klv-elegant .storefront-primary-navigation>.col-full::before,
 body.klv-elegant .storefront-primary-navigation>.col-full::after{display:none}
 body.klv-elegant.woocommerce-active .site-header .main-navigation{flex:1 1 auto;width:auto;min-width:0;float:none;clear:none;margin-right:0}
 body.klv-elegant.woocommerce-active .site-header .site-header-cart{flex:0 0 150px;width:150px;float:none;margin:0}
 body.klv-elegant .main-navigation .primary-navigation>ul.menu,
 body.klv-elegant .main-navigation .primary-navigation>ul.nav-menu{display:flex;flex-wrap:wrap;align-items:center;gap:0}
 body.klv-elegant .main-navigation .primary-navigation>ul.menu>li,
 body.klv-elegant .main-navigation .primary-navigation>ul.nav-menu>li{float:none;flex:0 0 auto}
 body.klv-elegant .main-navigation ul.menu>li>a,
 body.klv-elegant .main-navigation ul.nav-menu>li>a{padding-left:10px;padding-right:10px;white-space:nowrap}
 body.klv-elegant .site-header-cart .cart-contents{white-space:normal;line-height:1.4}
 body.klv-elegant .site-header-cart .widget_shopping_cart{width:320px;right:0}
 body.klv-elegant .site-header-cart:hover .widget_shopping_cart,
 body.klv-elegant .site-header-cart.focus .widget_shopping_cart{left:auto;right:0}
}

/* 1.0.7 home presentation: restore the accepted elegant prototype's warm panels. */
body.klv-elegant{font-size:19px}
body.klv-elegant .klv-hero-art{background:#e6d8c5;border-radius:48% 48% 0 0;isolation:isolate}
body.klv-elegant .klv-image-wrap{background:#ece4d8;aspect-ratio:1.4;border:0}
body.klv-elegant .klv-feature,
body.klv-elegant .klv-feature-image{background:#eae2d5}
body.klv-elegant ul.products li.product img.attachment-woocommerce_thumbnail,
body.klv-elegant ul.products li.product img.wp-post-image,
body.klv-elegant ul.products li.product img.woocommerce-placeholder{background:#ece4d8}
body.klv-elegant.single-product div.product .woocommerce-product-gallery,
body.klv-elegant .woocommerce-product-gallery__image--placeholder img.klv-logo-placeholder{background:#eae2d5}
body.klv-elegant .klv-hero-copy>p:not(.klv-eyebrow),
body.klv-elegant .klv-feature-copy>p:not(.klv-eyebrow),
body.klv-elegant .klv-story>p:not(.klv-eyebrow){font-size:19px;line-height:1.75}
body.klv-elegant.single-product .woocommerce-product-details__short-description{font-size:18px;line-height:1.75}
body.klv-elegant .klv-category-label p{font-size:16px;line-height:1.5}
body.klv-elegant .klv-eyebrow{font-size:12px}
body.klv-elegant ol.klv-service-strip{list-style:none;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:24px 5%}
body.klv-elegant .klv-service-strip>li{display:flex;align-items:center;gap:14px;min-width:0;margin:0;padding:0}
body.klv-elegant .klv-service-strip strong{font-size:16px;line-height:1.5;font-weight:500;color:var(--klv-ink)}
body.klv-elegant .klv-service-icon{width:44px;height:44px;flex:0 0 44px;color:var(--klv-accent)}
@media(max-width:767px){
 body.klv-elegant .klv-image-wrap{aspect-ratio:1.1}
 body.klv-elegant ol.klv-service-strip{grid-template-columns:1fr;gap:18px;padding:24px 6%}
 body.klv-elegant .klv-service-icon{width:40px;height:40px;flex-basis:40px}
}

/* 1.0.7: actual alpha PNGs keep their original colours over the restored beige panels. */
body.klv-elegant img[src*="/assets/processed-images/"],
body.klv-elegant .site-branding img.custom-logo{mix-blend-mode:normal!important}

/* 1.0.9 candidate: Storefront's old 120px cap cannot fit the larger serif menu label. */
@media(max-width:767px){
 body.klv-elegant button.menu-toggle{width:max-content;min-width:max-content;max-width:none;white-space:nowrap;overflow-wrap:normal;word-break:normal;padding:.6em .875em .6em 2.2em}
}

/* Product-only EPO floating summary. Native visibility, values and click delegation remain intact. */
body.klv-elegant.single-product .tm-floating-box{
 box-sizing:border-box;background:#f3ede3;color:#30251f;border:1px solid #d8cdbb;
 padding:22px;gap:18px;line-height:1.55;font-size:18px;
 box-shadow:0 8px 30px rgb(48 37 31 / 12%);
}
/* Only the default body-mounted floating box gets viewport sizing; embedded EPO variants retain their placement. */
body.klv-elegant.single-product>.tm-floating-box{
 width:min(340px,calc(100vw - 32px));max-width:calc(100vw - 32px);
 max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
 overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
}
body.klv-elegant.single-product .tm-floating-box .tm-fb{
 font-size:18px;line-height:1.55;margin:0;max-height:none;overflow:visible;
}
body.klv-elegant.single-product .tm-floating-box .tm-fb-title{font-size:17px;line-height:1.5;font-weight:600;color:#6c5037}
body.klv-elegant.single-product .tm-floating-box .tm-fb-value{font-size:18px;line-height:1.55;margin-bottom:14px;min-width:0;overflow-wrap:anywhere}
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals{
 font-size:18px;line-height:1.55;min-width:0;border-top:1px solid #d8cdbb;padding-top:16px;margin:0;
}
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals dt,
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals dd{overflow-wrap:anywhere;min-width:0}
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals .amount{color:#30251f}
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals .amount.final{font-family:Georgia,'Times New Roman',serif;font-size:28px;font-weight:600;line-height:1.35}
body.klv-elegant.single-product .tm-floating-box .tc-add-to-cart-button{
 box-sizing:border-box;flex:0 0 100%;width:100%;max-width:100%;min-width:0;
 min-height:56px;height:auto;padding:14px 18px;white-space:normal;overflow-wrap:anywhere;
 background:#6c5037;color:#faf7f1;border:1px solid #6c5037;border-radius:3px;
 font-size:18px;font-weight:600;line-height:1.45;text-align:center;margin:0;
}
body.klv-elegant.single-product .tm-floating-box .tc-add-to-cart-button:hover,
body.klv-elegant.single-product .tm-floating-box .tc-add-to-cart-button:focus{background:#543c29;color:#faf7f1;border-color:#543c29}
body.klv-elegant.single-product .tm-floating-box .tc-add-to-cart-button:focus-visible{outline:3px solid #80633f;outline-offset:3px}
@media(min-width:769px) and (max-width:1024px){
 body.klv-elegant.single-product>.tm-floating-box{width:min(300px,calc(100vw - 32px));padding:18px}
}
/* Do not override EPO's <=768px display:none !important. The native product form remains the mobile ordering path. */

/* Native allergen assignments with calm, legible artwork. Names are visible in the product summary. */
body.klv-elegant .klv-allergen-list{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;max-width:100%;margin:4px 0 12px}
body.klv-elegant .klv-allergen-chip{display:inline-flex;align-items:center;gap:7px;color:#493326;text-decoration:none}
body.klv-elegant .klv-allergen-label{display:none}
body.klv-elegant .klv-allergen-list img.allergen-icon,body.klv-elegant ul.products li.product .klv-allergen-list img.allergen-icon{width:28px;max-width:28px;height:28px;margin:0;mix-blend-mode:normal}
body.klv-elegant.single-product .summary>.klv-allergen-list{display:flex;gap:8px;margin:16px 0 24px}
body.klv-elegant.single-product .summary>.klv-allergen-list .klv-allergen-chip{border:1px solid #ddd0bc;background:#efe7da;border-radius:6px;padding:6px 10px;font-size:16px;line-height:1.4}
body.klv-elegant.single-product .summary>.klv-allergen-list .klv-allergen-label{display:inline}
body.klv-elegant.single-product .summary>.klv-allergen-list img.allergen-icon{width:32px;max-width:32px;height:32px}
body.klv-elegant .widget img.allergen-icon{width:26px;max-width:26px;height:26px}
body.klv-elegant .klv-allergen-chip:focus-visible{outline:2px solid #80633f;outline-offset:3px}

/* Kálvária 1.0.11 basket presentation candidate.
 * Append after elegant.css. Native Woo markup, visibility and events stay intact.
 * Deliberately no template replacement, payment iframe rules, content, or field hiding.
 */
body.klv-elegant{
 --klv-cart-surface:#f3ede3;--klv-cart-panel:#eae0d2;--klv-cart-input:#faf7f1;
 --klv-cart-border:#d7c8b5;--klv-cart-ink:#30251f;--klv-cart-coffee:#6c5037;
}

/* Native add-to-cart/empty-cart notices: same status semantics and text. */
body.klv-elegant .woocommerce-message,
body.klv-elegant .woocommerce-info{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);
 border:1px solid var(--klv-cart-border);border-left:4px solid #80633f;
 border-radius:6px;font-size:17px;line-height:1.65;box-shadow:none;
}
body.klv-elegant .woocommerce-message::before,
body.klv-elegant .woocommerce-info::before{color:#80633f}
body.klv-elegant .woocommerce-message a:not(.button),
body.klv-elegant .woocommerce-info a:not(.button){color:#493326;text-decoration:underline;text-underline-offset:3px}
body.klv-elegant .woocommerce-message .button,
body.klv-elegant .woocommerce-info .button{
 background-color:var(--klv-cart-coffee);color:#faf7f1;border:1px solid var(--klv-cart-coffee);
 border-left:1px solid var(--klv-cart-coffee)!important;border-radius:4px;
 min-height:44px;padding:10px 16px;font-size:16px;line-height:1.4;text-align:center;
}
body.klv-elegant .woocommerce-message .button:hover,
body.klv-elegant .woocommerce-info .button:hover{background-color:#543c29;color:#faf7f1;opacity:1}
/* Error/warning validation keeps its existing contrasting error styling. */

/* Basket and totals: retain Storefront's responsive table transforms. */
body.klv-elegant.woocommerce-cart .woocommerce-cart-form table.cart,
body.klv-elegant.woocommerce-cart .cart_totals{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);
 border:1px solid var(--klv-cart-border);border-radius:8px;
}
body.klv-elegant.woocommerce-cart .cart_totals{box-sizing:border-box;padding:24px}
body.klv-elegant.woocommerce-cart .cart_totals h2{
 font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.3;color:#493326;margin-bottom:20px;
}
body.klv-elegant.woocommerce-cart table.cart th,
body.klv-elegant.woocommerce-cart .cart_totals table th{background-color:var(--klv-cart-panel);color:#493326}
body.klv-elegant.woocommerce-cart table.cart tbody td,
body.klv-elegant.woocommerce-cart table.cart tbody tr:nth-child(2n) td,
body.klv-elegant.woocommerce-cart .cart_totals table td,
body.klv-elegant.woocommerce-cart .cart_totals table tbody tr:nth-child(2n) td{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);border-color:var(--klv-cart-border);
}
body.klv-elegant.woocommerce-cart table.cart td.product-name{font-size:18px;line-height:1.6}
body.klv-elegant.woocommerce-cart table.cart td.product-name>a{color:#493326;font-weight:600}
body.klv-elegant.woocommerce-cart table.cart td.product-thumbnail img{background-color:var(--klv-cart-panel);border-radius:6px}
body.klv-elegant.woocommerce-cart table.cart td.actions{background-color:var(--klv-cart-surface);padding:18px;border-top-color:var(--klv-cart-input)}
body.klv-elegant.woocommerce-cart table.cart td.product-remove{border-top-color:var(--klv-cart-input)}
body.klv-elegant.woocommerce-cart .cart_totals .order-total th,
body.klv-elegant.woocommerce-cart .cart_totals .order-total td{
 background-color:var(--klv-cart-panel);border-top:1px solid var(--klv-cart-border);font-size:21px;color:#493326;
}
body.klv-elegant.woocommerce-cart .wc-proceed-to-checkout{padding-bottom:0}

/* Original item metadata includes the chosen date/time and EPO extras. */
body.klv-elegant.woocommerce-cart table.cart dl.variation,
body.klv-elegant.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation,
body.klv-elegant .widget_shopping_cart dl.variation{font-size:15px;line-height:1.6;color:#594737}
body.klv-elegant.woocommerce-cart table.cart dl.variation dd,
body.klv-elegant.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd,
body.klv-elegant .widget_shopping_cart dl.variation dd{margin-bottom:6px;overflow-wrap:anywhere}
body.klv-elegant.woocommerce-cart table.cart dl.variation p,
body.klv-elegant.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation p,
body.klv-elegant .widget_shopping_cart dl.variation p{margin-bottom:0}

/* The header mini-cart is rebuilt by native fragments; style its stable classes. */
body.klv-elegant .widget_shopping_cart,
body.klv-elegant .site-header-cart .widget_shopping_cart{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);border:1px solid var(--klv-cart-border);
}
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart-item{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);font-size:16px;line-height:1.55;
 border-bottom:1px solid var(--klv-cart-border);
}
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart-item a:not(.remove){color:#493326}
body.klv-elegant .site-header-cart .widget_shopping_cart .buttons,
body.klv-elegant .site-header-cart .widget_shopping_cart .total,
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__buttons,
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__total{
 background-color:var(--klv-cart-panel);color:#493326;border-color:var(--klv-cart-border);
}
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__empty-message{font-size:16px;color:#594737}
body.klv-elegant .widget_shopping_cart .quantity{font-size:15px;color:#594737}
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__buttons a.button{
 background-color:var(--klv-cart-surface);color:#493326;border:1px solid #80633f;
 border-radius:4px;min-height:44px;padding:10px 14px;font-size:16px;line-height:1.4;text-align:center;
}
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__buttons a.checkout{
 background-color:var(--klv-cart-coffee);color:#faf7f1;border-color:var(--klv-cart-coffee);
}

/* Checkout order summary/payment outer shells; gateway fields remain native. */
body.klv-elegant.woocommerce-checkout #order_review{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);border:1px solid var(--klv-cart-border);border-radius:8px;
}
body.klv-elegant.woocommerce-checkout #order_review table.shop_table{border:0;background-color:var(--klv-cart-surface);margin-bottom:0}
body.klv-elegant.woocommerce-checkout #order_review table.shop_table th{background-color:var(--klv-cart-panel);color:#493326}
body.klv-elegant.woocommerce-checkout #order_review table.shop_table td,
body.klv-elegant.woocommerce-checkout #order_review table.shop_table tbody tr:nth-child(2n) td{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);border-color:var(--klv-cart-border);
}
body.klv-elegant.woocommerce-checkout #order_review .order-total th,
body.klv-elegant.woocommerce-checkout #order_review .order-total td{background-color:var(--klv-cart-panel);font-size:21px;color:#493326}
body.klv-elegant.woocommerce-checkout #payment,
body.klv-elegant.woocommerce-checkout #payment .payment_methods{background-color:var(--klv-cart-surface);color:var(--klv-cart-ink)}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>.wc_payment_method>label{font-size:17px;color:#493326}
body.klv-elegant.woocommerce-checkout #payment .payment_box,
body.klv-elegant.woocommerce-checkout #payment .place-order{
 background-color:var(--klv-cart-panel);color:var(--klv-cart-ink);font-size:16px;line-height:1.65;
}
body.klv-elegant.woocommerce-checkout #payment .woocommerce-terms-and-conditions{
 background-color:var(--klv-cart-surface);color:var(--klv-cart-ink);box-shadow:none;border:1px solid var(--klv-cart-border);
}
body.klv-elegant.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
body.klv-elegant.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper{font-size:15px;line-height:1.65;color:#594737}

/* Only basket coupon/quantity and customer address inputs; preserve payment input images/iframes. */
body.klv-elegant.woocommerce-cart .woocommerce-cart-form input.qty,
body.klv-elegant.woocommerce-cart .woocommerce-cart-form input[name=coupon_code],
body.klv-elegant.woocommerce-checkout #customer_details input.input-text,
body.klv-elegant.woocommerce-checkout #customer_details textarea.input-text{
 background-color:var(--klv-cart-input);color:var(--klv-cart-ink);border:1px solid var(--klv-cart-border);
 box-shadow:none;font-size:16px;min-height:46px;border-radius:4px;
}
/* Validation errors are not restyled by input rules; native invalid state remains visible. */
body.klv-elegant.woocommerce-checkout #customer_details .woocommerce-invalid input.input-text,
body.klv-elegant.woocommerce-checkout #customer_details .woocommerce-invalid textarea.input-text{border-color:#a0372b}

/* Stable native actions: visual styling only, no value/disabled/visibility override. */
body.klv-elegant.woocommerce-cart .woocommerce-cart-form .button,
body.klv-elegant.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
body.klv-elegant.woocommerce-cart .return-to-shop .button,
body.klv-elegant.woocommerce-checkout #payment #place_order{
 background-color:var(--klv-cart-coffee);border:1px solid var(--klv-cart-coffee);color:#faf7f1;
 border-radius:4px;min-height:50px;padding:13px 20px;font-size:18px;line-height:1.4;text-align:center;
 white-space:normal;overflow-wrap:anywhere;
}
body.klv-elegant.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
body.klv-elegant.woocommerce-checkout #payment #place_order:hover,
body.klv-elegant .widget_shopping_cart .woocommerce-mini-cart__buttons a.checkout:hover{background-color:#543c29;color:#faf7f1}
body.klv-elegant.woocommerce-cart .woocommerce-cart-form .button:disabled{opacity:.5;cursor:not-allowed}

@media(max-width:767px){
 body.klv-elegant.woocommerce-cart .cart_totals{padding:18px}
 body.klv-elegant.woocommerce-cart table.cart td.actions{padding:16px}
 body.klv-elegant .woocommerce-message .button,
 body.klv-elegant .woocommerce-info .button{float:none;display:block;width:100%;margin:0 0 12px;padding:12px 16px}
 body.klv-elegant.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
 body.klv-elegant.woocommerce-checkout #payment #place_order{font-size:18px;min-height:54px}
}

body.klv-elegant.woocommerce-checkout #payment .place-order{margin-top:0}

/* 1.0.12: Cart/checkout are ordering pages, not catalog-filter layouts.
 * Verified Storefront DOM: #primary.content-area, #secondary.widget-area.
 * Keep native responsive tables, checkout columns and all form controls.
 */
body.klv-elegant.woocommerce-cart #primary.content-area,
body.klv-elegant.woocommerce-checkout #primary.content-area{
 box-sizing:border-box;float:none;width:100%;max-width:none;min-width:0;margin-left:0;margin-right:0;
}
body.klv-elegant.woocommerce-cart #secondary.widget-area,
body.klv-elegant.woocommerce-checkout #secondary.widget-area{display:none}
body.klv-elegant.woocommerce-cart #main.site-main,
body.klv-elegant.woocommerce-checkout #main.site-main,
body.klv-elegant.woocommerce-cart .woocommerce-cart-form,
body.klv-elegant.woocommerce-checkout form.checkout{min-width:0;max-width:100%;box-sizing:border-box}
body.klv-elegant.woocommerce-cart table.cart{width:100%;table-layout:auto}
body.klv-elegant.woocommerce-cart table.cart td.product-name,
body.klv-elegant.woocommerce-cart table.cart dl.variation,
body.klv-elegant.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
 min-width:0;white-space:normal;word-break:normal;overflow-wrap:break-word;
}
@media(min-width:768px){
 body.klv-elegant.woocommerce-cart table.cart th.product-name,
 body.klv-elegant.woocommerce-cart table.cart td.product-name{width:44%}
}
/* No table/tr/td display override: Storefront retains stacked rows below 768px.
 * Category archives do not match either body scope; their filter remains visible.
 */

/* Reserve the header logo box before the image loads; keep the original asset and aspect. */
body.klv-elegant .site-header .site-branding img.custom-logo{
    display:block;
    width:115px;
    height:72px;
    max-width:100%;
    object-fit:contain;
    object-position:left center;
}
@media(max-width:767px){
    body.klv-elegant .site-header .site-branding img.custom-logo{
        width:96px;
        height:60px;
    }
}

/* Native EPO H2 output keeps the previous Storefront H3 visual size and inherited line-height. */
body.klv-elegant.single-product h2.tm-epo-element-label{font-size:1.618em;line-height:inherit}
/* Disabled remains disabled; legible muted coffee instead of translucent low-contrast text. */
body.klv-elegant.single-product form.variations_form .single_add_to_cart_button.disabled,
body.klv-elegant.single-product form.variations_form .single_add_to_cart_button:disabled{
 opacity:1!important;background-color:#756859!important;color:#faf7f1!important;
 border-color:#756859!important;cursor:not-allowed;
}

/* Reserve the final native Storefront icon gutter before its async icon CSS arrives.
 * Only category product-search inputs; no visibility, behavior or font changes.
 * This exact 2.617924em value is already the final Storefront icons.css value.
 */
body.klv-elegant.tax-product_cat:not(.rtl) .site-search .widget_product_search form input[type=search],
body.klv-elegant.tax-product_cat:not(.rtl) .site-search .widget_product_search form input[type=text]{padding-left:2.617924em}


/* 1.0.22: Cream checkout payment rows and native/Select2 address selectors.
 * Presentation only: native controls, values, validation and gateway events remain intact. */
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li,
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>label{
 background:#f3ede3;color:#493326;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li{
 border-bottom:1px solid #d8cdbb;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>label{
 padding:20px 22px;font-size:18px;line-height:1.5;cursor:pointer;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>input:checked+label{
 background:#e9dfcf;color:#493326;font-weight:600;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>input+label::before,
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>input:checked+label::before{
 color:#6b4b32;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods>li>input:focus-visible+label{
 outline:2px solid #7e603b;outline-offset:-4px;
}
body.klv-elegant.woocommerce-checkout #payment .payment_methods input[type=radio]{accent-color:#6b4b32}
body.klv-elegant.woocommerce-checkout #customer_details select:not(.select2-hidden-accessible),
body.klv-elegant.woocommerce-checkout #customer_details .select2-container .select2-selection--single{
 box-sizing:border-box;width:100%;min-height:50px;height:auto;background-color:#faf7f1;color:#493326;
 border:1px solid #d8cdbb;border-radius:4px;box-shadow:none;font-family:inherit;font-size:18px;line-height:1.5;
}
body.klv-elegant.woocommerce-checkout #customer_details select:not(.select2-hidden-accessible){
 padding:11px 38px 11px 14px;-webkit-appearance:none;appearance:none;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%236b4b32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
 background-position:right 14px center;background-repeat:no-repeat;
}
body.klv-elegant.woocommerce-checkout #customer_details select option{background:#faf7f1;color:#493326}
body.klv-elegant.woocommerce-checkout #customer_details .select2-container .select2-selection__rendered{
 color:#493326;line-height:26px;padding:11px 38px 11px 14px;
}
body.klv-elegant.woocommerce-checkout #customer_details .select2-container .select2-selection__arrow{
 height:48px;right:12px;
}
body.klv-elegant.woocommerce-checkout #customer_details .select2-container .select2-selection__arrow b{border-top-color:#6b4b32}
body.klv-elegant.woocommerce-checkout #customer_details .select2-container--open .select2-selection__arrow b{border-bottom-color:#6b4b32}
body.klv-elegant.woocommerce-checkout #customer_details select:focus-visible,
body.klv-elegant.woocommerce-checkout #customer_details .select2-selection--single:focus-visible{
 outline:2px solid #7e603b;outline-offset:2px;
}
body.klv-elegant.woocommerce-checkout #customer_details .woocommerce-invalid select,
body.klv-elegant.woocommerce-checkout #customer_details .woocommerce-invalid .select2-selection--single{border-color:#a0372b}
/* Select2 appends its open list to body, outside the address form. */
body.klv-elegant.woocommerce-checkout>.select2-container .select2-dropdown{
 background:#faf7f1;color:#493326;border-color:#d8cdbb;font-size:18px;line-height:1.5;
}
body.klv-elegant.woocommerce-checkout>.select2-container .select2-search__field{
 background:#faf7f1;color:#493326;border:1px solid #d8cdbb;border-radius:3px;font-size:18px;min-height:44px;
}
body.klv-elegant.woocommerce-checkout>.select2-container .select2-results__option{padding:10px 14px}
body.klv-elegant.woocommerce-checkout>.select2-container .select2-results__option[aria-selected=true]{background:#e9dfcf;color:#493326}
body.klv-elegant.woocommerce-checkout>.select2-container .select2-results__option--highlighted[aria-selected]{background:#493326;color:#faf7f1}
body.klv-elegant.woocommerce-checkout>.select2-container .select2-results__option[aria-disabled=true]{color:#796b5c}

/* 1.0.23: Explicit native payment label readability, preserving payment logic. */
body.klv-elegant.woocommerce-checkout #payment .payment_methods>.wc_payment_method>label{font-size:18px}

/* 1.0.25 candidate: append to elegant.css; native selection, disabled and form logic remain intact. */
body.klv-elegant{--klv-gold-dark:#806128;--klv-gold-panel:#e8d7b9;--klv-coffee-dark:#493326;--klv-picker-panel:#f2e9dc}
/* The existing three-step strip matches the hero's centered 1440px container. */
body.klv-elegant ol.klv-service-strip{box-sizing:border-box;width:100%;max-width:1440px;margin-inline:auto;padding-inline:5%;align-items:center}
body.klv-elegant .klv-service-strip>li{justify-content:center}
body.klv-elegant .klv-service-strip strong{text-align:center;color:var(--klv-coffee-dark)}
body.klv-elegant .klv-cta-icon{display:inline-block;flex:0 0 24px;width:24px;height:24px;vertical-align:middle}
body.klv-elegant .klv-text-link .klv-cta-icon{margin-left:8px}
/* Only actual shop/curated CTA buttons; navigation, CMP controls and disabled buttons keep their own rules. */
body.klv-elegant :is(.klv-button,ul.products li.product .button,form.cart .single_add_to_cart_button,.tm-floating-box .tc-add-to-cart-button,.wc-proceed-to-checkout .checkout-button,#place_order):not(:disabled):not(.disabled){background:var(--klv-gold-panel)!important;color:var(--klv-coffee-dark)!important;border:1px solid #a88a55!important;font-weight:600}
body.klv-elegant :is(.klv-button,ul.products li.product .button,form.cart .single_add_to_cart_button,.tm-floating-box .tc-add-to-cart-button,.wc-proceed-to-checkout .checkout-button,#place_order):not(:disabled):not(.disabled):hover{background:#ddc79f!important;color:#493326!important;border-color:#806128!important}
body.klv-elegant :is(.klv-button,ul.products li.product .button,form.cart .single_add_to_cart_button,.tm-floating-box .tc-add-to-cart-button,.wc-proceed-to-checkout .checkout-button,#place_order):focus-visible{outline:3px solid #806128;outline-offset:3px}
/* Native product names and amounts retain units, variation ranges and sale markup. */
body.klv-elegant ul.products li.product .woocommerce-loop-product__title,
body.klv-elegant.single-product div.product .product_title{color:var(--klv-gold-dark);font-weight:700}
body.klv-elegant ul.products li.product .price,
body.klv-elegant.single-product div.product .summary>.price,
body.klv-elegant.single-product .woocommerce-variation-price .price,
body.klv-elegant.single-product .tm-floating-box .tm-extra-product-options-totals .amount{color:var(--klv-gold-dark);font-weight:700}
/* EPO appends the shared date/time picker to body, outside the product form. */
body.klv-elegant .tm-datepicker .tm-ui-dp-container,
body.klv-elegant .tm-timepicker .tm-ui-dp-container{background:var(--klv-picker-panel)!important;color:var(--klv-coffee-dark);border-color:#cbb792!important;box-shadow:0 8px 28px rgb(73 51 38 / 16%)}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-header,
body.klv-elegant .tm-datepicker .tm-ui-dp-header,
body.klv-elegant .tm-datepicker .tm-ui-dp-buttonpane,
body.klv-elegant .tm-timepicker .tm-ui-widget-header{background:#e8d7b9!important;color:#493326;border-color:#cbb792}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-table,
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell{background:transparent}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell .ui-state-default{background:transparent;color:#493326}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell:not(.ui-state-disabled):not(.ui-tm-datepicker-unselectable):hover{background:#e2cda7}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell .ui-state-active,
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-tm-datepicker-current-day{background:#806128!important;color:#faf7f1!important;border-radius:3px}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-tm-datepicker-current-day .ui-state-default{color:#faf7f1!important}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-state-disabled,
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-tm-datepicker-unselectable{background:#eee4d5!important}
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-state-disabled .ui-state-default,
body.klv-elegant .tm-datepicker .tm-ui-dp-main-cell.ui-tm-datepicker-unselectable .ui-state-default{color:#93836e!important}
body.klv-elegant .tm-datepicker .tm-ui-dp-btn,
body.klv-elegant .tm-datepicker .tm-ui-dp-button-arrow{color:#806128}
body.klv-elegant .tm-datepicker .tm-ui-dp-btn:hover,
body.klv-elegant .tm-datepicker .tm-ui-dp-button-arrow:hover{color:#493326}
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div{background:var(--klv-picker-panel);color:#493326}
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div select,
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div input{background:#faf4ea;color:#493326;border-color:#cbb792;font-size:16px}
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div .ui-slider.ui-slider-horizontal{border-color:#a88a55}
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div .ui-slider-handle{background:#806128;border-color:#493326}
body.klv-elegant .tm-timepicker .ui-tm-timepicker-div .ui-slider-handle.ui-state-hover{background:#493326}
/* Desktop sorting/count/pagination share one row; narrow layouts wrap instead of clipping. */
body.klv-elegant .storefront-sorting{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 18px}
body.klv-elegant .storefront-sorting::before,body.klv-elegant .storefront-sorting::after{display:none}
body.klv-elegant .storefront-sorting>.woocommerce-notices-wrapper:empty{display:none}
body.klv-elegant .storefront-sorting>.woocommerce-notices-wrapper:not(:empty){flex-basis:100%}
body.klv-elegant .storefront-sorting>.woocommerce-ordering{float:none;margin:0;flex:1 1 210px;max-width:300px}
body.klv-elegant .storefront-sorting .woocommerce-ordering select{width:100%;max-width:100%;min-height:44px;background:#f2e9dc;color:#493326;border-color:#cbb792;font-size:14px}
body.klv-elegant .storefront-sorting>.woocommerce-result-count{float:none;margin:0;color:#806128;font-size:14px;line-height:1.4}
body.klv-elegant .storefront-sorting>.woocommerce-pagination{float:none;clear:none;margin:0;flex:0 1 auto}
body.klv-elegant .woocommerce-pagination ul.page-numbers{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;margin:0}
body.klv-elegant .woocommerce-pagination ul.page-numbers li{margin:0;border:0}
body.klv-elegant .woocommerce-pagination .page-numbers a,
body.klv-elegant .woocommerce-pagination .page-numbers span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;background:#f2e9dc;color:#806128;font-weight:600;border:1px solid #d8c7aa;border-radius:3px}
body.klv-elegant .woocommerce-pagination .page-numbers .current{background:#806128;color:#faf7f1;border-color:#806128}
body.klv-elegant .woocommerce-pagination .page-numbers a:hover{background:#e8d7b9;color:#493326}
@media(min-width:1200px){body.klv-elegant .storefront-sorting{gap:12px}body.klv-elegant .storefront-sorting>.woocommerce-ordering{flex:1 1 200px;min-width:180px}body.klv-elegant .storefront-sorting>.woocommerce-result-count{max-width:170px;flex:0 1 170px}body.klv-elegant .storefront-sorting>.woocommerce-pagination{flex-shrink:0}}
@media(max-width:767px){body.klv-elegant ol.klv-service-strip{padding-inline:6%}body.klv-elegant .klv-service-strip>li{justify-content:flex-start}body.klv-elegant .klv-service-strip strong{text-align:left}body.klv-elegant .storefront-sorting{justify-content:center}body.klv-elegant .storefront-sorting>.woocommerce-ordering{flex-basis:100%;max-width:none}body.klv-elegant .storefront-sorting>.woocommerce-pagination{flex-basis:100%}body.klv-elegant .storefront-sorting>.woocommerce-result-count{text-align:center}}

/* Native swatch wrapper/selected/disabled/focus states stay in control. */
body.klv-elegant .variations .klv-cake-slice-anchor{display:block;background:#faf7f1;text-indent:0;border-radius:4px}
body.klv-elegant .variations .klv-cake-slice-image{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;mix-blend-mode:normal}
body.klv-elegant .klv-quantity-unit{white-space:nowrap;font-size:inherit;color:inherit}
body.klv-elegant.woocommerce-cart td.product-quantity>.quantity:has(+.klv-quantity-unit){display:inline-block;vertical-align:middle}

/* 1.0.25 QA2: Verified native calendar headings and desktop result count must not wrap. */
body.klv-elegant .tm-datepicker .tm-ui-dp-container th{padding:6px 3px;white-space:nowrap;word-break:normal;overflow-wrap:normal;line-height:1.3;text-align:center}
@media(min-width:1200px){body.klv-elegant .storefront-sorting>.woocommerce-result-count{white-space:nowrap;max-width:none;min-width:max-content;flex:0 0 auto}}

/* 1.0.26: native datepicker weekday strip, including global table background overrides. */
body.klv-elegant .tm-datepicker .tm-ui-dp-container .tm-ui-dp-main-header table.ui-tm-datepicker-calendar,
body.klv-elegant .tm-datepicker .tm-ui-dp-container .tm-ui-dp-main-header table.ui-tm-datepicker-calendar :is(thead,tbody,tr,th){
 background:var(--klv-picker-panel,#f2e9dc)!important;color:var(--klv-coffee-dark,#493326);
}
/* The 1320px centered content plus two 340px panels and 24px clearances needs 2048px.
   Only the native body-mounted CLONE is hidden below that width. Original form totals,
   add-to-cart, EPO calculations, inline/embedded variants and native visibility stay intact. */
@media(max-width:2047px){
 body.klv-elegant.single-product>.tm-floating-box{display:none!important}
}

/* Only native date/time metadata of verified dkg products. Numeric values and EPO calculations remain untouched. */
body.klv-elegant .tm-epo-cart-row.klv-dkg-epo-pickup:not(.tc-epo-cart-row-total)>td.product-quantity::after,
body.klv-elegant .tm-epo-cart-row.klv-dkg-epo-pickup .mobile-product-quantity>small::after,
body.klv-elegant .tm-epo-checkout-row.klv-dkg-epo-pickup .tm-epo-checkout-quantity::after{content:" dkg";white-space:pre}

/* 1.0.26 QA2: code-native, category-specific icons; never platform emoji glyphs. */
body.klv-elegant .klv-category-label{padding-right:42px}
body.klv-elegant .klv-category-label>.klv-category-symbol{width:32px;height:32px;display:block;line-height:1;color:#806128}
body.klv-elegant .klv-category-symbol>.klv-category-icon{display:block;width:32px;height:32px;max-width:none;color:inherit}
@media(max-width:767px){body.klv-elegant .klv-category-label{padding-right:36px}body.klv-elegant .klv-category-label>.klv-category-symbol,body.klv-elegant .klv-category-symbol>.klv-category-icon{width:28px;height:28px}}
body.klv-elegant .klv-category-label h3{hyphens:auto;overflow-wrap:anywhere}

/* 1.0.27: retain native previous/next links and gallery trigger behavior; change surfaces only. */
body.klv-elegant.single-product .storefront-product-pagination a,
body.klv-elegant.single-product .storefront-product-pagination a:hover,
body.klv-elegant.single-product .storefront-product-pagination a:focus{
 background:#f2e9dc!important;color:#493326!important;border-color:#cbb792!important;
}
body.klv-elegant.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger{
 background:#e8d7b9!important;color:#493326!important;border:1px solid #b4986b;
}
body.klv-elegant.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:hover,
body.klv-elegant.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:focus{
 background:#ddc79f!important;color:#493326!important;
}
/* The native Storefront zoom image has background-color:#fff. Keep its size/opacity/position under jQuery Zoom. */
body.klv-elegant.single-product div.product .woocommerce-product-gallery img.zoomImg{background-color:#eae2d5!important}
/* Product information table: keep every attribute readable on the same beige surface. */
body.klv-elegant.single-product .woocommerce-tabs table.shop_attributes,
body.klv-elegant.single-product .woocommerce-tabs table.shop_attributes :is(tbody,tr,th,td){background:#f2e9dc!important;color:#493326;border-color:#d8c8af}
body.klv-elegant.single-product .woocommerce-tabs table.shop_attributes th{font-weight:600}
/* Native review empty-state and form, including its required fields and keyboard focus. */
body.klv-elegant.single-product #reviews .woocommerce-noreviews{background:#e8d7b9!important;color:#493326!important;border-left-color:#b4986b}
body.klv-elegant.single-product #reviews .woocommerce-noreviews::before{color:#806128}
body.klv-elegant.single-product #reviews :is(#review_form_wrapper,#review_form,#respond){background:#f2e9dc!important;color:#493326}
body.klv-elegant.single-product #reviews #respond :is(input[type=text],input[type=email],input[type=url],textarea){background:#faf4e9!important;color:#493326!important;border:1px solid #bba783;box-shadow:none;font-size:16px}
body.klv-elegant.single-product #reviews #respond :is(input[type=text],input[type=email],input[type=url],textarea):focus-visible{outline:3px solid #806128;outline-offset:2px}
body.klv-elegant.single-product #reviews #respond input#submit{background:#e8d7b9!important;color:#493326!important;border:1px solid #a88a55;font-size:17px;min-height:48px}
body.klv-elegant.single-product #reviews #respond input#submit:hover{background:#ddc79f!important}
body.klv-elegant.single-product .woocommerce-tabs ul.tabs li a:focus{outline-color:#806128}
body.klv-elegant.single-product .woocommerce-tabs ul.tabs li a:focus-visible,
body.klv-elegant.single-product #reviews :is(p.stars a,input#submit):focus-visible{outline:3px solid #806128;outline-offset:3px}

/* Wide two-column layouts only. The hook wrapper ends before tabs, upsells and related products. */
@supports(overflow:clip){
@media(min-width:1024px){
 body.klv-elegant.single-product .site:has(.klv-product-main){overflow-x:clip;overflow-y:visible}
 body.klv-elegant.single-product:has(.klv-product-main){overflow-x:clip;overflow-y:visible}
 body.klv-elegant.single-product div.product:has(>.klv-product-main){overflow:visible;display:flow-root}

 body.klv-elegant.single-product .klv-product-main{
  --klv-gallery-top:24px;display:grid;grid-template-columns:minmax(0,47fr) minmax(0,48fr);gap:5%;align-items:start;
 }
 body.klv-elegant.single-product.admin-bar .klv-product-main{--klv-gallery-top:56px}
 body.klv-elegant.single-product:has(.storefront-sticky-add-to-cart--slideInDown) .klv-product-main{--klv-gallery-top:144px}
 body.klv-elegant.single-product.admin-bar:has(.storefront-sticky-add-to-cart--slideInDown) .klv-product-main{--klv-gallery-top:176px}
 body.klv-elegant.single-product div.product .klv-product-main>.woocommerce-product-gallery{
  grid-column:1;grid-row:1;float:none;width:auto;margin-right:0;min-width:0;align-self:start;
  position:sticky;top:var(--klv-gallery-top);max-height:calc(100vh - var(--klv-gallery-top) - 24px);
  max-height:calc(100svh - var(--klv-gallery-top) - 24px);overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;
 }
 body.klv-elegant.single-product div.product .klv-product-main>.summary{
  grid-column:2;grid-row:1;float:none;width:auto;min-width:0;margin-right:0;
 }
 body.klv-elegant.single-product .klv-product-main>.woocommerce-product-gallery .woocommerce-product-gallery__image img:not(.zoomImg){
  width:auto;max-width:100%;height:auto;max-height:calc(100vh - var(--klv-gallery-top) - 150px);
  max-height:calc(100svh - var(--klv-gallery-top) - 150px);object-fit:contain;margin-left:auto;margin-right:auto;
 }
}
}

body.single-product .klv-product-swipe-hint{display:none;color:#705331;font:400 14px/1.5 Arial,sans-serif;text-align:center;margin:12px 8px}
@media(any-pointer:coarse){body.single-product .klv-product-swipe-hint{display:block}}
body.single-product .klv-product-companion{position:fixed;top:var(--klv-companion-top,0);left:0;right:0;z-index:95;display:flex;align-items:center;gap:10px;min-height:68px;padding:6px 14px;background:#e9dfcf;color:#493326;border-bottom:1px solid #bfa67c;box-shadow:0 2px 8px #49332618}
body.single-product .klv-product-companion[hidden]{display:none!important}
body.single-product .klv-product-companion img{width:56px;height:56px;object-fit:contain;flex:none;margin:0;border-radius:6px;background:#ece4d7}
body.single-product .klv-product-companion span{font:700 17px/1.2 Georgia,serif;flex:1;min-width:0;max-height:3.6em;overflow:hidden}
body.single-product .klv-product-companion button{min-height:44px;padding:8px 13px;flex:none;font:600 14px/1.2 Arial,sans-serif;border:1px solid #a78d65;background:#e4d4b4;color:#493326;border-radius:5px}
body.single-product .klv-product-companion button:focus-visible{outline:3px solid #86663d;outline-offset:2px}

/* 1.0.27 QA2: readable native header cart quantity. */
body.klv-elegant #site-header-cart .cart-contents .count{opacity:1;color:#725534}

/* 1.0.28: native cake-slice selection and keyboard focus in readable dark gold. */
body.klv-elegant.single-product .variations #picker_pa_szelet .swatch-wrapper:has(>.klv-cake-slice-anchor){background:#faf7f1;border-color:#cbb792}
body.klv-elegant.single-product .variations #picker_pa_szelet .swatch-wrapper.selected:has(>.klv-cake-slice-anchor),
body.klv-elegant.single-product .variations #picker_pa_szelet .swatch-wrapper:not(.disabled):has(>.klv-cake-slice-anchor):hover{border-color:#806128!important}
body.klv-elegant.single-product .variations #picker_pa_szelet .swatch-anchor.klv-cake-slice-anchor:focus{outline-color:#806128!important}
body.klv-elegant.single-product .variations #picker_pa_szelet .swatch-anchor.klv-cake-slice-anchor:focus-visible{outline:3px solid #806128!important;outline-offset:1px}

/* 1.0.29: reserve the server-rendered swipe row; reveal without changing its layout. */
body.single-product .klv-product-swipe-hint[data-klv-server-hint]:not([data-klv-hint-ready]){visibility:hidden}
