/*
Theme Name: KAGE
Theme URI: https://example.com
Author: KAGE
Description: Minimal monochrome WooCommerce theme for Elementor + ElementsKit (editable header, footer and pages).
Version: 1.3.2
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: kage
*/
/* KAGE – Appearance > Customize > Additional CSS */
:root{--kage-bg:#ECEBE7;--kage-alt:#F1F0EC;--kage-ink:#111111;--kage-muted:#6B6A66;--kage-line:#D9D8D3}
body{background:var(--kage-bg);color:var(--kage-ink);font-family:'Jost',sans-serif}
h1,h2,h3,h4,.woocommerce-loop-product__title{font-family:'Cinzel',serif;font-weight:400;letter-spacing:.2em;text-transform:uppercase}
.woocommerce ul.products li.product{background:var(--kage-alt);border:1px solid var(--kage-line);padding:24px;text-align:left;transition:.3s}
.woocommerce ul.products li.product:hover{border-color:var(--kage-ink)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px;letter-spacing:.25em;padding:14px 0 6px}
.woocommerce ul.products li.product .price{color:var(--kage-muted);font-size:12px;letter-spacing:.15em}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit{
  background:transparent;color:var(--kage-ink);border:1px solid var(--kage-ink);border-radius:0;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:14px 26px}
.woocommerce ul.products li.product .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--kage-ink);color:var(--kage-bg)}
.woocommerce span.onsale{background:var(--kage-ink);color:var(--kage-bg);border-radius:0;min-height:0;min-width:0;line-height:1;padding:8px 12px;font-size:10px;letter-spacing:.2em}

.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{background:#7A1C22}
.woocommerce ul.products li.product a img{aspect-ratio:3/4;object-fit:cover;width:100%}
.kage-main{max-width:1400px;margin:0 auto;padding:40px}
body.elementor-page .kage-main,body.page-template-elementor_canvas .kage-main{max-width:none;padding:0}

/* Contact form */
.kage-form label{display:block;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--kage-muted);margin-bottom:22px}
.kage-form input[type=text],.kage-form input[type=email],.kage-form textarea{display:block;width:100%;margin-top:8px;padding:14px 16px;background:var(--kage-bg);border:1px solid var(--kage-line);border-radius:0;font-family:'Jost',sans-serif;font-size:14px;color:var(--kage-ink);letter-spacing:.03em;text-transform:none}
.kage-form input:focus,.kage-form textarea:focus{outline:none;border-color:var(--kage-ink)}
.kage-form button{background:transparent;color:var(--kage-ink);border:1px solid var(--kage-ink);padding:16px 36px;font-size:11px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;font-family:'Jost',sans-serif}
.kage-form button:hover{background:var(--kage-ink);color:var(--kage-bg)}
.kage-msg{padding:14px 18px;border:1px solid var(--kage-ink);font-size:12px;letter-spacing:.1em;margin-bottom:24px}

/* Header (matches reference) */
.kage-header{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:0 auto;padding:20px 40px;background:var(--kage-bg)}
.kage-header .kage-logo img{width:250px;height:auto;display:block}
.kage-header .kage-primary ul{display:flex;gap:70px;list-style:none;margin:0;padding:0}
.kage-header .kage-primary a,.kage-fallback-footer a{color:var(--kage-ink);text-decoration:none;font-size:11px;letter-spacing:.36em;text-transform:uppercase;padding-bottom:8px;border-bottom:1px solid transparent}
.kage-header .kage-primary .current-menu-item>a,.kage-header .kage-primary a:hover{border-bottom-color:var(--kage-ink)}
.kage-header .kage-icons{display:flex;gap:28px;align-items:center}
.kage-header .kage-icons a{color:var(--kage-ink);display:flex}
@media(max-width:800px){.kage-header{flex-wrap:wrap;gap:14px;padding:16px 20px}.kage-header .kage-primary ul{gap:22px}.kage-header .kage-logo img{width:170px}}
/* ElementsKit / Elementor header+footer menu: active page underline */
.kage-nav .elementor-icon-list-text{padding-bottom:8px;border-bottom:1px solid transparent;transition:.2s}
.kage-nav li:hover .elementor-icon-list-text,
body.kage-page-home .kage-nav li:nth-child(1) .elementor-icon-list-text,
body.kage-page-products .kage-nav li:nth-child(2) .elementor-icon-list-text,
body.kage-page-contact .kage-nav li:nth-child(3) .elementor-icon-list-text{border-bottom-color:#111}
.kage-main{max-width:1400px;margin:0 auto;padding:40px}
body.elementor-page .kage-main{max-width:none;padding:0}
.elementor-widget-image img{background:transparent}

/* Footer (matches reference) */
.kage-footer{background:var(--kage-bg);border-top:1px solid var(--kage-line)}
.kage-footer-inner{display:flex;align-items:center;justify-content:space-between;max-width:1400px;margin:0 auto;padding:28px 40px;gap:30px}
.kage-footer-left{display:flex;align-items:center;gap:28px}
.kage-flogo img{width:170px;height:auto;display:block}
.kage-fdivider{width:1px;height:26px;background:var(--kage-ink)}
.kage-fnav ul{display:flex;gap:50px;list-style:none;margin:0;padding:0}
.kage-fnav a{color:var(--kage-ink);text-decoration:none;font-size:9px;letter-spacing:.32em;text-transform:uppercase}
.kage-fnav a:hover{opacity:.6}
.kage-footer-right{display:flex;align-items:center;gap:26px}
.kage-social{display:flex;gap:26px}
.kage-social a{color:var(--kage-ink);display:flex}
.kage-fline{width:44px;height:1px;background:var(--kage-ink)}
.kage-ftag{font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--kage-ink);white-space:nowrap}
@media(max-width:900px){.kage-footer-inner{flex-direction:column;align-items:flex-start;padding:24px 20px}.kage-fnav ul{gap:24px;flex-wrap:wrap}.kage-footer-right{flex-wrap:wrap}}

/* Size guide button + popup + tab */
.kage-sg-tab{overflow-x:auto;-webkit-overflow-scrolling:touch}
.kage-sg-tab img{display:block;width:100%;height:auto}
@media(max-width:767px){.kage-sg-tab img{min-width:760px}}
.kage-sg-open{display:inline-block;margin-top:18px;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--kage-ink);text-decoration:none;border-bottom:1px solid var(--kage-ink);padding-bottom:6px}
.kage-sg-open:hover{opacity:.6}
.kage-sg{position:fixed;inset:0;z-index:100000;background:rgba(17,17,17,.78);display:none;align-items:center;justify-content:center;padding:24px}
.kage-sg.is-open{display:flex}
.kage-sg-box{position:relative;background:var(--kage-bg);max-width:1200px;width:100%;max-height:92vh;display:flex;flex-direction:column}
.kage-sg-close{position:absolute;top:6px;right:10px;z-index:2;background:var(--kage-bg);border:0;font-size:28px;line-height:1;color:var(--kage-ink);cursor:pointer;padding:2px 10px}
.kage-sg-body{overflow:auto;-webkit-overflow-scrolling:touch}
.kage-sg-body img{display:block;width:100%;height:auto}
@media(max-width:767px){.kage-sg{padding:10px}.kage-sg-body img{min-width:760px}}

/* Footer legal links (Privacy / Terms / Returns) */
.kage-legal{border-top:1px solid var(--kage-line)}
.kage-legal-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 30px;max-width:1400px;margin:0 auto;padding:16px 40px}
.kage-legal-links{display:flex;flex-wrap:wrap;gap:10px 32px;list-style:none;margin:0;padding:0}
.kage-legal-links a{color:var(--kage-muted);text-decoration:none;font-size:9px;letter-spacing:.3em;text-transform:uppercase;transition:color .2s}
.kage-legal-links a:hover,.kage-legal-links .elementor-icon-list-item:hover .elementor-icon-list-text{color:var(--kage-ink)}
.kage-legal-copy{font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--kage-muted)}
/* Legal pages (Elementor): readable lists + links */
.kage-legal-page ul,.kage-legal-page ol{margin:0 0 .6em;padding-left:1.3em}
.kage-legal-page li{margin-bottom:.45em}
.kage-legal-page strong{font-weight:500;color:var(--kage-ink)}
@media(max-width:900px){.kage-legal-inner{padding:16px 20px}}
@media(max-width:767px){
	.kage-legal-inner{flex-direction:column;align-items:center;text-align:center;padding:20px 18px 26px}
	.kage-legal-links{justify-content:center;gap:10px 22px}
	.kage-legal-copy{white-space:normal}
	/* Elementor footer: legal row stacks and centres */
	.kage-legal-row{--flex-direction:column!important;flex-direction:column!important}
	.kage-legal-row>.e-con-inner{flex-direction:column!important;align-items:center;gap:12px}
	.kage-legal-row .e-con{--width:100%!important;width:100%!important;min-height:0!important}
	.kage-legal-row .elementor-icon-list-items{justify-content:center;flex-wrap:wrap;gap:10px 0}
	.kage-legal-row .elementor-widget-text-editor{text-align:center!important}
}

/* Light product cards: product title, price and links always black */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce ul.products li.product a,
.woocommerce ul.products li.product a:hover,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .amount,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price del{color:#111!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{opacity:1;font-weight:500}
.woocommerce ul.products li.product .price del{opacity:.5}
.woocommerce ul.products li.product .button{color:#111!important}
.woocommerce ul.products li.product .button:hover{color:#ECEBE7!important;background:#111}

/* Optional dark product cards: Customize > KAGE Product Cards > Dark */
body.kage-cards-dark .woocommerce ul.products li.product{background:#111;border:1px solid #111;color:#ECEBE7!important;padding:0;text-align:left;overflow:hidden}
body.kage-cards-dark .woocommerce ul.products li.product:hover{border-color:#111!important;box-shadow:0 10px 28px rgba(0,0,0,.28)}
body.kage-cards-dark .woocommerce ul.products li.product a img{margin:0 0 14px;width:100%;aspect-ratio:3/4;object-fit:cover}
body.kage-cards-dark .woocommerce ul.products li.product .woocommerce-loop-product__title{color:#ECEBE7!important;padding:4px 20px 6px;font-size:12px;letter-spacing:.25em}
body.kage-cards-dark .woocommerce ul.products li.product .price{color:#B9B8B3!important;padding:0 20px;display:block;font-size:12px;letter-spacing:.15em}
body.kage-cards-dark .woocommerce ul.products li.product .price del{opacity:.5}
body.kage-cards-dark .woocommerce ul.products li.product .price ins{color:#ECEBE7!important;background:transparent;text-decoration:none}
body.kage-cards-dark .woocommerce ul.products li.product .button{margin:16px 20px 20px;background:transparent;color:#ECEBE7!important;border:1px solid #ECEBE7}
body.kage-cards-dark .woocommerce ul.products li.product .button:hover{background:#ECEBE7;color:#111!important;border-color:#ECEBE7!important}
body.kage-cards-dark .woocommerce ul.products li.product .added_to_cart{color:#ECEBE7!important;margin:0 20px 20px;display:inline-block;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
body.kage-cards-dark .woocommerce ul.products li.product .onsale{background:#7A1C22;color:#fff!important;top:14px;left:14px;right:auto;margin:0}
body.kage-cards-dark .woocommerce ul.products li.product .star-rating{margin:0 20px 8px;color:#ECEBE7!important}

/* Search overlay */
.kage-search{position:fixed;left:0;right:0;top:0;z-index:99999;background:rgba(236,235,231,.98);border-bottom:1px solid var(--kage-line);transform:translateY(-100%);transition:transform .35s ease;visibility:hidden}
.kage-search.is-open{transform:translateY(0);visibility:visible;box-shadow:0 12px 40px rgba(0,0,0,.12)}
.admin-bar .kage-search{top:32px}
.kage-search-inner{max-width:1100px;margin:0 auto;padding:44px 40px;display:flex;align-items:center;gap:24px}
.kage-search form{display:flex;flex:1;align-items:center;gap:20px;border-bottom:1px solid var(--kage-ink)}
.kage-search input[type=search]{flex:1;background:transparent;border:0;outline:0;box-shadow:none;font-family:'Cinzel',serif;font-size:22px;letter-spacing:.18em;text-transform:uppercase;color:var(--kage-ink);padding:12px 0}
.kage-search input[type=search]::placeholder{color:var(--kage-muted);opacity:.7}
.kage-search form button{background:transparent;border:0;color:var(--kage-ink);font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer}
.kage-search-close{background:transparent;border:0;font-size:34px;line-height:1;color:var(--kage-ink);cursor:pointer}
.kage-archive-title{font-size:20px;letter-spacing:.25em;margin:0 0 30px}
.kage-main .woocommerce-products-header__title{font-size:22px;letter-spacing:.25em}

/* ================= Single product page ================= */
.woocommerce a:not(.button):not(.kage-search-close){color:var(--kage-ink)}
.woocommerce-breadcrumb{font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--kage-muted);margin:0 0 28px}
.woocommerce-breadcrumb a{color:var(--kage-muted)!important;text-decoration:none}

.woocommerce div.product{position:relative}
.woocommerce div.product div.images{width:54%;float:left;margin-bottom:40px}
.woocommerce div.product div.summary{width:42%;float:right;margin-bottom:40px}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{width:100%;height:auto;display:block}
.woocommerce div.product div.images .woocommerce-product-gallery__image{background:#fff;border:1px solid var(--kage-line)}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 0;padding:0;list-style:none}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto;float:none;margin:0}
.woocommerce div.product div.images .flex-control-thumbs li img{opacity:.7;border:1px solid var(--kage-line);background:#fff;transition:.2s;cursor:pointer}
.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{opacity:1;border-color:var(--kage-ink)}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{background:var(--kage-bg);border:1px solid var(--kage-line);border-radius:0;top:14px;right:14px}

.woocommerce div.product .product_title{font-family:'Cinzel',serif;font-weight:400;font-size:28px;line-height:1.35;letter-spacing:.2em;text-transform:uppercase;color:var(--kage-ink);margin:0 0 18px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--kage-ink)!important;font-family:'Jost',sans-serif;font-size:20px;letter-spacing:.12em;margin:0 0 22px}
.woocommerce div.product p.price ins{text-decoration:none;background:transparent}
.woocommerce div.product p.price del{opacity:.45;margin-right:8px}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--kage-muted);font-size:14px;line-height:1.9;letter-spacing:.03em;margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--kage-line)}
.woocommerce div.product p.stock{color:var(--kage-muted);font-size:10px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 18px}
.woocommerce div.product p.stock.out-of-stock{color:#7A1C22}

.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0 0 28px}
.woocommerce div.product form.cart .quantity{margin:0}
.woocommerce .quantity .qty{width:76px;height:50px;border:1px solid var(--kage-ink);background:transparent;border-radius:0;text-align:center;font-family:'Jost',sans-serif;font-size:14px;color:var(--kage-ink);padding:0}
.woocommerce div.product form.cart .button,.woocommerce div.product form.cart .single_add_to_cart_button{height:50px;padding:0 44px;background:var(--kage-ink)!important;color:var(--kage-bg)!important;border:1px solid var(--kage-ink)!important;border-radius:0;font-size:11px;letter-spacing:.32em;text-transform:uppercase;transition:.25s}
.woocommerce div.product form.cart .button:hover{background:transparent!important;color:var(--kage-ink)!important}
.woocommerce div.product form.cart select{height:50px;border:1px solid var(--kage-ink);background:transparent;border-radius:0;padding:0 14px;font-family:'Jost',sans-serif;min-width:200px}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{padding:6px 0;text-align:left}
.woocommerce div.product form.cart .variations label{font-size:11px;letter-spacing:.25em;text-transform:uppercase}
.woocommerce div.product form.cart .reset_variations{font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin-left:12px}

.woocommerce div.product .product_meta{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--kage-muted);display:grid;gap:8px;padding-top:20px;border-top:1px solid var(--kage-line)}
.woocommerce div.product .product_meta>span{display:block}
.woocommerce div.product .product_meta a{color:var(--kage-ink)!important;text-decoration:none;border-bottom:1px solid var(--kage-ink)}

/* tabs */
.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:20px}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:36px;padding:0;margin:0 0 28px;border-bottom:1px solid var(--kage-line);list-style:none;overflow:visible}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;border-radius:0;margin:0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:0 0 14px;font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:400;color:var(--kage-muted)!important;display:block;border-bottom:1px solid transparent;margin-bottom:-1px}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--kage-ink)!important;border-bottom-color:var(--kage-ink)}
.woocommerce div.product .woocommerce-tabs .panel{margin:0;padding:0;color:var(--kage-muted);line-height:1.9}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:15px;letter-spacing:.3em;margin:0 0 16px;color:var(--kage-ink)}

/* related / upsells */
.woocommerce .related.products,.woocommerce .upsells.products{clear:both;padding-top:30px}
.woocommerce .related.products>h2,.woocommerce .upsells.products>h2{font-size:16px;letter-spacing:.3em;margin:0 0 26px}

/* product grids everywhere: 4 columns */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important}
@media(max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
	.woocommerce div.product div.images,.woocommerce div.product div.summary{width:100%;float:none}
	.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
	.woocommerce div.product .product_title{font-size:22px}
}

/* buttons: replace default purple everywhere (cart, checkout) */
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt,
.woocommerce a.checkout-button,.woocommerce #place_order{background:var(--kage-ink)!important;color:var(--kage-bg)!important;border:1px solid var(--kage-ink)!important;border-radius:0;font-size:11px;letter-spacing:.3em;text-transform:uppercase}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce a.checkout-button:hover,.woocommerce #place_order:hover{background:transparent!important;color:var(--kage-ink)!important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--kage-ink);background:var(--kage-alt);color:var(--kage-ink)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--kage-ink)}

/* ===== Single product gallery: thumbnails on LEFT, smaller main image ===== */
.woocommerce div.product div.images.woocommerce-product-gallery:has(.flex-control-thumbs){
	display:grid;
	grid-template-columns:88px minmax(0,1fr);
	gap:14px;
	align-items:start;
}
.woocommerce div.product div.images .flex-viewport{grid-column:2;grid-row:1;width:100%}
.woocommerce div.product div.images .flex-control-thumbs{
	grid-column:1;grid-row:1;
	display:flex;flex-direction:column;gap:10px;
	margin:0;max-height:620px;overflow-y:auto;scrollbar-width:thin;
}
.woocommerce div.product div.images .flex-control-thumbs li{width:100%}
.woocommerce div.product div.images .flex-control-thumbs li img{width:100%;height:auto;display:block}

/* main image height: change 620px to make it taller/shorter */
.woocommerce div.product div.images .woocommerce-product-gallery__image img:not(.zoomImg){
	width:100%;height:620px;object-fit:contain;object-position:center;background:#fff;
}

@media(max-width:1000px){
	.woocommerce div.product div.images .woocommerce-product-gallery__image img:not(.zoomImg){height:440px}
	.woocommerce div.product div.images .flex-control-thumbs{max-height:440px}
}
@media(max-width:800px){
	.woocommerce div.product div.images.woocommerce-product-gallery:has(.flex-control-thumbs){grid-template-columns:64px minmax(0,1fr);gap:10px}
	.woocommerce div.product div.images .woocommerce-product-gallery__image img:not(.zoomImg){height:320px}
	.woocommerce div.product div.images .flex-control-thumbs{max-height:320px;gap:8px}
}

/* Product with NO gallery images: featured image only, full width, no thumbnail column */
.woocommerce div.product div.images.woocommerce-product-gallery:not(:has(.flex-control-thumbs)){display:block}
.woocommerce div.product div.images.woocommerce-product-gallery:not(:has(.flex-control-thumbs)) .woocommerce-product-gallery__wrapper{width:100%;margin:0}
.woocommerce div.product div.images.woocommerce-product-gallery:not(:has(.flex-control-thumbs)) .woocommerce-product-gallery__image{width:100%}

/* =====================================================================
   KAGE – Premium mobile / tablet
   Header: [hamburger LEFT] [logo CENTER] [search + cart RIGHT]
   ===================================================================== */
.kage-burger,.kage-drawer-close,.kage-drawer-foot,.kage-overlay{display:none}
.kage-header .kage-icons a{position:relative}
.kage-cart-count{position:absolute;top:-7px;right:-9px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#111;color:#ECEBE7;font:500 9px/16px 'Jost',sans-serif;letter-spacing:0;text-align:center;box-sizing:border-box}
.kage-cart-count.is-empty{display:none}

@media(max-width:1000px){
	html{-webkit-text-size-adjust:100%}
	body.kage-menu-open{overflow:hidden}

	/* --- header --- */
	.kage-header{position:sticky;top:0;z-index:900;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0;padding:12px 18px;
		background:var(--kage-bg);border-bottom:1px solid var(--kage-line)}
	body.admin-bar .kage-header{top:46px}
	.kage-header .kage-logo{grid-column:2;justify-self:center}
	.kage-header .kage-logo img{width:128px}
	.kage-burger{grid-column:1;justify-self:start;display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;margin-left:-10px;padding:0 10px;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
	.kage-burger span{display:block;height:1.5px;background:var(--kage-ink);transition:transform .3s,opacity .3s,width .3s}
	.kage-burger span:nth-child(2){width:70%}
	.kage-header .kage-icons{grid-column:3;justify-self:end;gap:6px}
	.kage-header .kage-icons a{width:44px;height:44px;align-items:center;justify-content:center}
	.kage-header .kage-icons .kage-cart-link{margin-right:-10px}
	.kage-header .kage-icons .kage-icon-menu{display:none}
	.kage-cart-count{top:7px;right:3px}

	/* --- slide-in drawer --- */
	.kage-header .kage-primary{box-sizing:border-box;position:fixed;top:0;left:0;bottom:0;z-index:1001;width:min(84vw,340px);background:var(--kage-bg);padding:84px 30px 28px;display:flex;flex-direction:column;overflow-y:auto;
		transform:translateX(-102%);transition:transform .38s cubic-bezier(.22,.8,.24,1);box-shadow:none;visibility:hidden}
	body.admin-bar .kage-header .kage-primary{top:46px}
	body.kage-menu-open .kage-header .kage-primary{transform:none;visibility:visible;box-shadow:12px 0 40px rgba(0,0,0,.18)}
	.kage-header .kage-primary ul{flex-direction:column;gap:0;width:100%}
	.kage-header .kage-primary li{border-bottom:1px solid var(--kage-line)}
	.kage-header .kage-primary a{display:block;padding:20px 0;font-family:'Cinzel',serif;font-size:15px;letter-spacing:.3em;border-bottom:0}
	.kage-header .kage-primary .current-menu-item>a{opacity:.55}
	.kage-drawer-close{display:block;position:absolute;top:18px;right:18px;width:44px;height:44px;background:none;border:0;font-size:32px;font-weight:200;line-height:1;color:var(--kage-ink);cursor:pointer}
	.kage-drawer-foot{display:flex;flex-direction:column;gap:14px;margin-top:auto;padding-top:34px}
	.kage-header .kage-primary .kage-drawer-foot a{padding:0;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase}
	.kage-drawer-foot span{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--kage-muted)}
	.kage-overlay{display:block;position:fixed;inset:0;z-index:1000;background:rgba(17,17,17,.45);opacity:0;transition:opacity .35s;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
	.kage-overlay[hidden]{display:none}
	.kage-overlay.is-on{opacity:1}
	body.kage-menu-open .kage-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
	body.kage-menu-open .kage-burger span:nth-child(2){opacity:0}
	body.kage-menu-open .kage-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
}
@media(min-width:783px) and (max-width:1000px){body.admin-bar .kage-header,body.admin-bar .kage-header .kage-primary{top:32px}}

/* ---------- Phone ---------- */
@media(max-width:767px){
	.kage-main{padding:22px 18px 40px}
	.kage-main .woocommerce-products-header__title{font-size:18px;letter-spacing:.22em}
	.woocommerce-breadcrumb{margin:0 0 18px;font-size:9px;white-space:nowrap;overflow-x:auto;scrollbar-width:none}

	/* product grid */
	.woocommerce ul.products{gap:12px}
	.woocommerce ul.products li.product{padding:10px 10px 14px}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:10px;letter-spacing:.16em;padding:10px 0 4px;line-height:1.5}
	.woocommerce ul.products li.product .price{font-size:11px}
	.woocommerce ul.products li.product .button{display:block;width:100%;box-sizing:border-box;margin-top:10px;padding:11px 6px;font-size:9px;letter-spacing:.2em;text-align:center}
	body.kage-cards-dark .woocommerce ul.products li.product .button{margin:12px 12px 14px;width:auto}
	body.kage-cards-dark .woocommerce ul.products li.product .woocommerce-loop-product__title,body.kage-cards-dark .woocommerce ul.products li.product .price{padding-left:12px;padding-right:12px}
	.woocommerce .woocommerce-ordering select{width:100%}
	.woocommerce-result-count{float:none;margin:0 0 12px;font-size:11px;letter-spacing:.1em;color:var(--kage-muted)}

	/* single product */
	.woocommerce div.product div.images,.woocommerce div.product div.summary{margin-bottom:26px}
	.woocommerce div.product .product_title{font-size:19px;letter-spacing:.16em;line-height:1.45;margin-bottom:12px}
	.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:18px;margin-bottom:16px}
	.woocommerce div.product .woocommerce-product-details__short-description{font-size:13.5px;line-height:1.8}
	.woocommerce div.product form.cart{flex-wrap:nowrap;gap:10px}
	.woocommerce div.product form.cart .quantity{flex:0 0 auto}
	.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;padding:0 12px;letter-spacing:.24em}
	.woocommerce div.product form.cart.variations_form,.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{flex-wrap:wrap}
	.woocommerce div.product form.cart select{width:100%;min-width:0}
	.woocommerce div.product .woocommerce-tabs ul.tabs{gap:26px;overflow-x:auto!important;white-space:nowrap;scrollbar-width:none;margin-bottom:20px}
	.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none}
	.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:10px;letter-spacing:.24em}
	.woocommerce div.product .woocommerce-tabs .panel{font-size:14px}
	.woocommerce .related.products>h2,.woocommerce .upsells.products>h2{font-size:13px;letter-spacing:.26em;margin-bottom:18px}
	.woocommerce div.product div.images .woocommerce-product-gallery__trigger{top:8px;right:8px}

	/* forms: 16px prevents iOS zoom-on-focus */
	input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],input[type=search],textarea,select,.woocommerce .quantity .qty{font-size:16px}
	.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid var(--kage-line);border-radius:0;padding:13px 14px;background:transparent}
	.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:var(--kage-ink);outline:0}
	.kage-form button{width:100%}

	/* cart / checkout */
	.woocommerce-cart .cart_totals,.woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;float:none!important}
	.woocommerce a.checkout-button{display:block;padding:18px;text-align:center}
	.woocommerce table.shop_table{border-radius:0;border-color:var(--kage-line)}
	.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px;width:100%;margin-bottom:10px}
	.woocommerce-cart table.cart td.actions .coupon input{flex:1;width:auto!important;min-width:0}
	.woocommerce-checkout #order_review{margin-top:24px}
	.woocommerce-message,.woocommerce-info,.woocommerce-error{font-size:12.5px;letter-spacing:.03em}

	/* search overlay */
	.kage-search-inner{padding:26px 18px;gap:12px}

	/* footer */
	.kage-footer-inner{align-items:center;text-align:center;padding:34px 18px 30px;gap:22px}
	.kage-footer-left{flex-direction:column;gap:14px}
	.kage-fdivider{display:none}
	.kage-fnav ul{justify-content:center;gap:12px 26px}
	.kage-footer-right{flex-direction:column;gap:16px}
	.kage-fline{width:30px}
	.kage-ftag{white-space:normal}

	/* ---- Elementor pages (Home / Contact / Product intro): stack into one column ---- */
	.elementor .e-con{--gap:18px}
	.elementor>.e-con{--padding-top:30px;--padding-bottom:30px;--padding-left:18px;--padding-right:18px}
	/* hero + contact (top-level boxed rows) */
	.elementor>.e-con:first-child{--flex-direction:column!important;--min-height:0px!important;min-height:0!important}
	.elementor>.e-con:first-child>.e-con-inner{flex-direction:column!important;min-height:0!important}
	.elementor>.e-con:first-child>.e-con-inner>.e-con{--width:100%!important;width:100%!important;min-height:0!important}
	/* collection mosaic: hoodie card + 2x2 cards => single column list */
	.elementor>.e-con>.e-con-inner>.e-con:nth-child(2){--flex-direction:column!important;flex-direction:column!important}
	.elementor>.e-con>.e-con-inner>.e-con:nth-child(2)>.e-con,
	.elementor>.e-con>.e-con-inner>.e-con:nth-child(2)>.e-con>.e-con{--width:100%!important;width:100%!important}
	.elementor>.e-con>.e-con-inner>.e-con:nth-child(2)>.e-con>.e-con{--flex-direction:column!important;flex-direction:column!important}
	.elementor>.e-con>.e-con-inner>.e-con:nth-child(2)>.e-con>.e-con>.e-con{--width:100%!important;width:100%!important}
	/* every card keeps text left / image right */
	.elementor .e-con:has(>.e-con>.elementor-widget-image){--flex-direction:row!important;flex-direction:row!important;min-height:0!important}
	.elementor .e-con:has(>.e-con>.elementor-widget-image)>.e-con{min-height:0!important}
	.elementor .e-con:has(>.e-con>.elementor-widget-image)>.e-con:first-child{--width:48%!important;width:48%!important}
	.elementor .e-con:has(>.e-con>.elementor-widget-image)>.e-con:last-child{--width:52%!important;width:52%!important}
	.elementor-widget-heading h1.elementor-heading-title{font-size:26px!important;letter-spacing:.18em}
	.elementor-widget-heading h2.elementor-heading-title{font-size:17px!important;letter-spacing:.24em}
	.elementor-widget-heading h3.elementor-heading-title{font-size:14px!important;letter-spacing:.2em}
}
@media(max-width:380px){
	.kage-header .kage-logo img{width:112px}
	.woocommerce ul.products li.product{padding:8px 8px 12px}
}

@media(max-width:380px){
	.woocommerce div.product div.images .woocommerce-product-gallery__image img:not(.zoomImg){height:280px}
	.woocommerce div.product div.images .flex-control-thumbs{max-height:280px}
}
