/*
Theme Name: KF Store
Author: KF
Description: Mobile-first lightweight WooCommerce storefront, using standard commerce templates.
Version: 1.0.0
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: kf-store
*/
:root{--brand:#17483e;--ink:#182322;--muted:#64706b;--line:#e0e5e1;--soft:#f5f7f4;--radius:12px}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:15px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}a{color:inherit;text-decoration:none}a:hover{color:var(--brand)}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,.button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--brand);color:#fff;border:0;border-radius:6px;cursor:pointer;padding:12px 20px;font-weight:650;line-height:1.4}button:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#263b34;color:#fff}input:not([type=checkbox]):not([type=radio]),select,textarea{padding:12px;border:1px solid #cad3cd;border-radius:6px;max-width:100%;background:#fff;color:var(--ink)}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}.wrap{width:min(1280px,calc(100% - 48px));margin:auto}.notice-bar{background:var(--brand);color:white;text-align:center;font-size:12px;padding:7px 12px}.site-header{background:white;border-bottom:1px solid var(--line);position:relative;z-index:30}.header-row{min-height:88px;display:flex;gap:30px;align-items:center;justify-content:space-between}.brand{font-size:25px;font-weight:800;letter-spacing:-.8px}.brand img{max-height:54px;width:auto;max-width:200px;display:block}.header-search{display:flex;flex:1;max-width:480px}.header-search input{width:100%;border-radius:6px 0 0 6px!important}.header-search button{border-radius:0 6px 6px 0}.header-actions{display:flex;gap:20px;align-items:center;font-size:14px;white-space:nowrap}.mobile-toggle{display:none;background:none;color:var(--ink);font-size:24px;padding:6px}.store-nav{border-top:1px solid #f0f2ef}.store-nav ul{margin:0;padding:0;list-style:none;display:flex;gap:28px}.store-nav li{position:relative}.store-nav a{display:block;padding:12px 0;font-size:14px;font-weight:600}.store-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;max-height:70vh;overflow:auto;background:white;box-shadow:0 12px 25px #183b2420;padding:12px;z-index:40}.store-nav li:hover>.sub-menu,.store-nav li:focus-within>.sub-menu{display:block}.store-nav .sub-menu a{padding:8px}.hero{position:relative;min-height:420px;display:flex;align-items:center;background:var(--soft);overflow:hidden}.hero picture{position:absolute;inset:0}.hero picture img{width:100%;height:100%;object-fit:cover}.hero.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0009,transparent 85%)}.hero-content{position:relative;z-index:1;padding:64px 0;max-width:560px}.has-image .hero-content{color:white}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;font-weight:650}.hero h1{font-size:clamp(30px,4.7vw,58px);line-height:1.1;letter-spacing:-1.7px;margin:18px 0 20px}.hero p{max-width:400px;margin-bottom:30px}.hero .button{display:inline-block;background:white;color:var(--brand)}.hero:not(.has-image) .button{background:var(--brand);color:white}.section{padding:52px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.section h2{font-size:29px;line-height:1.25;margin:0;letter-spacing:-.7px}.section-head a{font-size:14px;text-decoration:underline}.category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.category-card{background:var(--soft);border-radius:var(--radius);padding:18px;text-align:center;font-weight:650}.category-card img{aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;border-radius:8px;width:100%;margin-bottom:12px}.benefits{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:28px 0}.benefits strong{display:block}.benefits span{font-size:13px;color:var(--muted)}.site-main{padding:36px 0 60px;min-height:50vh}.site-main h1{font-size:clamp(26px,3vw,40px);line-height:1.2;letter-spacing:-1px}.site-footer{background:var(--soft);border-top:1px solid var(--line);padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-grid h3{font-size:14px;margin:0 0 15px}.footer-grid a{display:block;margin:7px 0;font-size:14px;color:#526158}.footer-note{font-size:12px;color:var(--muted);padding-top:35px;margin-top:25px;border-top:1px solid var(--line)}.page-content{max-width:820px;margin:auto;overflow-wrap:anywhere}.page-content h1{margin-bottom:30px}.page-content h2{font-size:24px}.page-content a{color:var(--brand);text-decoration:underline}.page-content table{width:100%;border-collapse:collapse}.page-content td,.page-content th{padding:8px;border:1px solid var(--line)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.blog-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.pagination{padding:30px 0}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:15px;top:15px;z-index:99;background:white;padding:10px}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin:25px 0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;float:none!important;display:flex;flex-direction:column;min-width:0}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1;object-fit:contain;background:#f6f7f5;border-radius:10px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px;line-height:1.45;letter-spacing:0;min-height:44px;font-weight:600;padding:8px 0}.woocommerce ul.products li.product .price{color:var(--ink);font-weight:700;font-size:16px}.woocommerce ul.products li.product .button{margin-top:10px;font-size:12px;align-self:flex-start;padding:10px 16px}.woocommerce span.onsale{background:var(--brand);min-height:0;line-height:1.6;padding:4px 10px;border-radius:5px;top:10px;left:10px;margin:0}.woocommerce div.product{overflow:hidden}.woocommerce div.product div.images{width:48%!important}.woocommerce div.product div.summary{width:46%!important}.woocommerce div.product div.images img{max-height:620px;object-fit:contain;aspect-ratio:1;background:var(--soft);border-radius:10px}.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.woocommerce div.product div.images .flex-control-thumbs li{width:calc(20% - 8px)}.woocommerce div.product div.images .flex-control-thumbs img{aspect-ratio:1;max-height:100px}.woocommerce div.product .product_title{font-size:32px;line-height:1.25}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--brand);font-size:26px}.woocommerce div.product .woocommerce-product-details__short-description{color:var(--muted)}.woocommerce div.product form.cart{margin:25px 0}.woocommerce div.product form.cart .variations td{display:block;padding:4px 0}.woocommerce div.product form.cart .variations select{min-width:190px;max-width:100%}.woocommerce div.product form.cart .button{padding:15px 28px}.woocommerce .quantity .qty{width:75px}.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:30px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;border-bottom:1px solid var(--line)}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:white;border:0;padding:10px 18px;margin:0}.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--brand)}.woocommerce div.product .woocommerce-tabs .panel{padding:20px 0;overflow-wrap:anywhere}.woocommerce div.product .woocommerce-tabs .panel img{max-height:900px;width:auto}.woocommerce table.shop_table{border:1px solid var(--line);border-radius:8px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px}.woocommerce .cart-collaterals .cart_totals{background:var(--soft);padding:25px;border-radius:10px}.woocommerce-cart table.cart img{width:72px;border-radius:6px}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:48%}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{width:100%;line-height:1.5}.woocommerce form .form-row label{font-size:14px;font-weight:600}.woocommerce .checkout #customer_details{margin-bottom:30px}.woocommerce-checkout #payment{background:var(--soft);border:1px solid var(--line);border-radius:8px}.woocommerce-checkout #payment div.payment_box{background:white}.woocommerce-checkout #payment ul.payment_methods{padding:20px}.woocommerce-checkout #payment .place-order{padding:20px}.woocommerce #payment #place_order{float:none;width:100%;padding:16px}.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{border-top-color:var(--brand);background:var(--soft)}.woocommerce .woocommerce-info:before,.woocommerce .woocommerce-message:before{color:var(--brand)}.woocommerce-error{background:#fff4f1}.woocommerce .woocommerce-breadcrumb{font-size:12px;margin-bottom:24px}.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:5px;justify-content:center}.woocommerce nav.woocommerce-pagination ul li{border:1px solid var(--line);border-radius:5px;overflow:hidden}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:38px;padding:12px}.woocommerce .woocommerce-result-count{font-size:13px;color:var(--muted)}.woocommerce .woocommerce-ordering select{padding:8px}.woocommerce-account .woocommerce-MyAccount-navigation{background:var(--soft);padding:20px;border-radius:8px}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px}.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{font-weight:700;color:var(--brand)}.woocommerce #reviews #comments ol.commentlist li .comment-text{border-color:var(--line);border-radius:8px}.woocommerce .star-rating{color:#977326}.woocommerce .products .star-rating{margin:5px 0}.woocommerce .related.products{clear:both}.woocommerce .related.products h2{font-size:26px}.woocommerce .select2-container .select2-selection--single{height:46px;border-color:#cad3cd;border-radius:6px}.woocommerce .select2-container .select2-selection--single .select2-selection__rendered{line-height:44px}.woocommerce .select2-container .select2-selection--single .select2-selection__arrow{height:44px}table{max-width:100%}pre{white-space:pre-wrap}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b8d6c7;outline-offset:3px}
@media(max-width:900px){.header-search{max-width:300px}.header-actions .account-link{display:none}.store-nav ul{gap:18px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.footer-grid{gap:25px}.woocommerce div.product .product_title{font-size:26px}}
@media(max-width:640px){.wrap{width:calc(100% - 30px)}.header-row{min-height:70px;gap:10px;flex-wrap:wrap;padding:12px 0}.mobile-toggle{display:block}.brand{font-size:22px;flex:1}.brand img{max-width:150px;max-height:42px}.header-search{order:4;width:100%;max-width:none;flex-basis:100%}.header-search input{padding:9px}.header-search button{padding:9px 16px}.header-actions{gap:10px;font-size:13px}.store-nav{display:none}.store-nav.open{display:block}.store-nav ul{display:block}.store-nav a{padding:10px 8px}.store-nav .sub-menu{display:block;position:static;box-shadow:none;max-height:none;padding:0 0 0 20px;background:#f8faf7}.hero{min-height:350px}.hero-content{padding:45px 0;max-width:290px}.hero h1{letter-spacing:-.8px}.hero.has-image:after{background:linear-gradient(90deg,#000b,#0002)}.hero picture img{object-position:center}.hero p{font-size:14px}.section{padding:34px 0}.section h2{font-size:24px}.section-head{gap:15px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card{padding:12px;font-size:13px}.benefits{gap:15px;padding:22px 0}.benefits strong{font-size:12px}.benefits span{font-size:11px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.site-footer{padding-top:32px}.site-main{padding-top:24px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;min-height:42px}.woocommerce ul.products li.product .price{font-size:14px}.woocommerce ul.products li.product .button{font-size:11px;padding:9px 12px}.woocommerce .woocommerce-result-count{float:none;margin-bottom:10px}.woocommerce .woocommerce-ordering{float:none}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:100%!important}.woocommerce div.product div.images{margin-bottom:24px}.woocommerce div.product .product_title{font-size:26px}.woocommerce div.product form.cart .button{min-width:170px}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:100%;float:none}.woocommerce .cart-collaterals .cart_totals{padding:18px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:10px}.woocommerce-cart table.cart .product-name{overflow-wrap:anywhere}.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px}.woocommerce-cart table.cart td.actions .coupon .input-text{width:50%!important}.woocommerce .woocommerce-MyAccount-navigation,.woocommerce .woocommerce-MyAccount-content{width:100%;float:none}.woocommerce .woocommerce-MyAccount-content{padding-top:20px}.blog-grid{grid-template-columns:1fr}.woocommerce div.product .woocommerce-tabs ul.tabs li{padding:8px 10px;font-size:13px}}

/* Keep native commerce action buttons in the selected brand palette. */
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background-color:var(--brand);color:#fff}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background-color:#263b34;color:#fff}
.hero:not(.has-image) .hero-content{max-width:760px;margin-inline:auto;text-align:center}
.hero:not(.has-image) p{margin-inline:auto}
