/*
Theme Name: Midwest Goods Lite
Theme URI: https://www.midwestgoods.com/
Author: Codex
Description: Lightweight WooCommerce B2B wholesale theme with editable homepage promotions.
Version: 0.3.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: midwest-goods-lite
*/

:root{--navy:#092c54;--navy-dark:#071f3c;--blue:#0871b2;--green:#43b900;--ink:#222;--muted:#666;--line:#e3e3e3;--shell:1202px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html.has-age-gate{overflow:hidden}
[hidden]{display:none!important}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.45}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
.home-shell,.container{width:min(calc(100% - 64px),var(--shell));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;z-index:10000;background:#fff;padding:10px}
.skip-link:focus{left:10px;top:10px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header{background:#fff}
.nicotine-notice{height:52px;margin:4px 4px 0;border:1px solid #101010;display:flex;align-items:center;justify-content:center;background:#fff;color:#111;font-size:21px;font-weight:800;letter-spacing:.01em;text-align:center}
.top-ad{display:block;height:53px;overflow:hidden;background:#070707}
.top-ad picture,.top-ad img{width:100%;height:100%}
.top-ad img{object-fit:cover}
.header-main{height:118px;display:grid;grid-template-columns:42px 250px 115px minmax(260px,1fr) 112px 175px 85px;align-items:center;gap:11px}
.hamburger{width:36px;height:36px;padding:6px;border:0;background:transparent;cursor:pointer}
.hamburger span{display:block;height:2px;background:#102c45;margin:6px 0}
.site-logo img,.site-logo .custom-logo{width:250px;max-height:68px;object-fit:contain}
.site-logo .custom-logo-link{display:block}
.header-tagline{font-size:14px;line-height:1.25;color:#333}
.header-search{height:52px;border:2px solid #adc3dc;border-radius:5px;display:flex;overflow:hidden;background:#fff}
.header-search input[type=search]{min-width:0;flex:1;border:0;padding:0 16px;outline:0;color:#555}
.header-search button{width:50px;border:0;background:#fff;color:#92aac3;padding:12px;cursor:pointer}
.header-search svg,.header-phone svg,.header-actions svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.header-phone{display:flex;align-items:center;gap:7px;font-size:14px;line-height:1.2}
.header-phone svg{width:25px;flex:0 0 25px}
.header-whatsapp{font-size:13px;font-weight:700;line-height:1.35;text-align:left}
.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:13px;color:#0c263e}
.header-actions a{width:24px;height:27px}
.header-actions svg{width:100%;height:100%}
.nav-bar{height:50px;background:var(--navy);color:#fff}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}
.nav-inner nav{min-width:0;flex:1;height:100%}
.nav-list{height:100%;display:flex;align-items:stretch;gap:0;list-style:none;margin:0;padding:0;white-space:nowrap}
.nav-list li{display:flex;align-items:stretch}
.nav-list a{display:flex;align-items:center;gap:5px;padding:0 9px;color:#fff;font-weight:700;font-size:13px}
.nav-list a:hover,.nav-list a:focus{background:#0c3b70}
.nav-list a span{color:#f06a91;font-size:16px}
.nav-list li:nth-child(2) a span,.nav-list li:nth-child(8) a span{color:#9c70e1}
.nav-list li:nth-child(4) a span,.nav-list li:nth-child(9) a span{color:#e5a422}
.nav-list li:nth-child(5) a span{color:#00a36e}
.nav-cart{font-size:14px;white-space:nowrap;padding-left:8px}

.home-main{padding:15px 0 0}
.hero-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.hero-card{display:block;overflow:hidden;border-radius:3px;background:#111;aspect-ratio:1.13/1}
.hero-card img{width:100%;height:100%;object-fit:cover}
.feature-row{margin-top:10px;display:grid;grid-template-columns:2fr 1fr;gap:10px;height:355px}
.main-carousel{position:relative;overflow:hidden;border-radius:2px;background:#111}
.carousel-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .35s ease}
.carousel-slide.is-active{opacity:1;pointer-events:auto}
.carousel-slide img{width:100%;height:100%;object-fit:cover}
.carousel-dots{position:absolute;left:0;right:0;bottom:8px;z-index:2;display:flex;justify-content:center;gap:7px}
.carousel-dots button{width:8px;height:8px;border:1px solid #fff;border-radius:50%;padding:0;background:transparent;cursor:pointer;box-shadow:0 0 2px #000}
.carousel-dots button.is-active{background:#fff}
.feature-side{overflow:hidden;border-radius:2px;background:#111}
.feature-side img{width:100%;height:100%;object-fit:cover}

.home-section{padding-top:24px}
.home-section>h2,.product-section>h2{margin:0 0 18px;text-align:center;font-size:20px;line-height:1.2;font-weight:700;color:#252525}
.trending-section>h2{text-align:left;margin-bottom:12px}
.trending-list{height:155px;display:grid;grid-template-columns:repeat(10,minmax(90px,1fr));align-items:center;overflow:hidden}
.trend-item{position:relative;height:140px;display:flex;align-items:center;justify-content:center;border-right:1px solid #eee}
.trend-item img{width:91px;height:91px;object-fit:contain}
.trend-rank{position:absolute;left:0;bottom:3px;color:#dadada;font-size:61px;font-weight:800;line-height:.8;z-index:0}
.trend-item img{position:relative;z-index:1}
.image-grid{display:grid;gap:10px;margin-top:10px}
.image-grid a{display:block;overflow:hidden}
.image-grid img{width:100%;height:100%;object-fit:cover}
.image-grid-three{grid-template-columns:repeat(3,1fr);height:167px}
.brand-strip{height:87px;margin-top:0;overflow:hidden;border-top:1px solid #eee;border-bottom:1px solid #eee;background:#fff}
.brand-track{height:100%;display:flex;align-items:center;gap:26px;overflow-x:auto;scrollbar-width:none;padding:9px 10px}
.brand-track::-webkit-scrollbar{display:none}
.brand-track a{flex:0 0 73px;width:73px;height:63px;display:flex;align-items:center;justify-content:center}
.brand-track img{max-width:63px;max-height:57px;object-fit:contain;filter:grayscale(1)}
.image-grid-two{grid-template-columns:repeat(2,1fr);height:132px;margin-top:10px}
.image-grid-five{grid-template-columns:repeat(5,1fr);height:260px;margin-top:10px}
.product-section{padding-top:29px}
.product-row{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}
.home-product-card{min-width:0;border:1px solid #ececec;background:#fff;display:flex;flex-direction:column;position:relative}
.home-product-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1.02;padding:12px;overflow:hidden}
.home-product-image img{width:100%;height:100%;object-fit:contain}
.home-product-card h3{margin:0;padding:9px 10px 5px;min-height:78px;font-size:12px;line-height:1.45;font-weight:400;color:#383838}
.product-actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee;padding:10px}
.sign-in-button{min-width:74px;border:1px solid #ddd;border-radius:2px;background:#f8f8f8;padding:7px 10px;text-align:center;font-size:12px}
.product-price{color:#54b900;font-weight:700}
.heart{color:#777;font-size:20px}
.image-grid-four{grid-template-columns:repeat(4,1fr);height:166px;margin-top:32px}
.preorder-section{min-height:94px;padding-top:27px}
.preorder-section .product-row{margin-top:12px}

.flavor-section{padding-top:26px;padding-bottom:79px}
.flavor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 10px}
.flavor-grid a{height:272px;display:block;text-align:center;overflow:hidden}
.flavor-grid img{width:100%;height:213px;object-fit:cover}
.flavor-grid h3{margin:13px 0 0;font-size:13px;font-weight:500;color:#4b4b4b}
.seo-copy{border-top:1px solid #ededed;padding:22px 0 35px;color:#666;font-size:12px;line-height:1.8}
.seo-copy h1{margin:0 0 12px;color:#454545;font-size:18px;font-weight:700}
.seo-copy p{margin:0 0 11px}

.site-footer{background:#f6f7f7;color:#62686d;border-top:1px solid #ddd}
.footer-top{min-height:330px;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:50px;padding-top:54px;padding-bottom:38px}
.footer-brand>img{width:249px;height:50px;object-fit:contain;margin-bottom:20px}
.footer-brand p{margin:7px 0;font-size:12px;line-height:1.6}
.footer-social{display:flex;gap:8px;margin-top:16px}
.footer-social a{width:24px;height:24px;border:1px solid #afb4b7;display:flex;align-items:center;justify-content:center;font-size:12px}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links h2{margin:0 0 8px;color:#34393e;font-size:13px;font-weight:700}
.footer-links a{font-size:12px}
.footer-links a:hover{text-decoration:underline}
.footer-payments{height:92px;border-top:1px solid #e0e0e0;display:flex;align-items:center;justify-content:center;gap:24px;font-size:12px}
.footer-payments img{max-width:118px;max-height:44px;object-fit:contain}
.footer-bottom{min-height:191px;background:#eee;border-top:1px solid #dedede;text-align:center;color:#777;padding:28px 0}
.footer-bottom p{margin:0 auto 17px;max-width:1120px;font-size:10px;line-height:1.75}

.mwg-age-gate{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.78);padding:18px}
.age-card{width:540px;max-width:100%;min-height:560px;border:1px solid #ccc;border-radius:4px;background:#fff;padding:12px 68px 18px;text-align:center;box-shadow:0 1px 12px rgba(0,0,0,.45)}
.age-logo{width:320px;height:74px;object-fit:contain;margin:0 auto 7px}
.age-creative{width:100%;height:168px;object-fit:cover;margin-bottom:13px}
.age-card p{margin:0 auto 14px;font-size:12px;line-height:1.35;color:#444}
.age-card .age-question{color:#0871b2;font-size:15px;margin:18px 0}
.age-buttons{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.age-buttons button{height:47px;border:0;border-radius:4px;color:#fff;font-size:17px;font-weight:700;cursor:pointer}
.age-yes{background:#4abd00}.age-no{background:#0871b2}
.age-card .age-cookie{margin:10px -20px 0;font-size:11px;font-weight:700}
.age-social{margin-top:59px;display:flex;justify-content:center;gap:7px}
.age-social span{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#333;color:#fff;font-weight:700}
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:9999;min-height:55px;background:#0875b9;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 30px;font-size:13px}
.cookie-bar a{text-decoration:underline}
.cookie-bar button{width:140px;height:35px;border:0;background:#45c000;color:#fff;font-weight:700;cursor:pointer}

.woocommerce-breadcrumb{font-size:12px;color:#6b7682;margin:22px 0 14px}
.woocommerce-products-header__title,.product-detail h1{font-size:30px;line-height:1.15}
.products{list-style:none;padding:0}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;border:1px solid #e5e5e5;padding:13px}
.woocommerce ul.products li.product img{aspect-ratio:1/1;object-fit:contain}
.product-detail-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;padding-top:25px}
.product-detail .price{font-size:22px;margin:18px 0}.product-meta{color:#66788e;font-size:13px;margin-bottom:12px}

@media (max-width:1100px){
	.home-shell,.container{width:min(calc(100% - 32px),var(--shell))}
	.header-main{grid-template-columns:38px 205px minmax(230px,1fr) 105px 74px}.header-tagline,.header-whatsapp{display:none}.site-logo img,.site-logo .custom-logo{width:205px}
	.nav-list{overflow-x:auto}.nav-list a{padding-inline:8px}.nav-cart{display:none}
	.product-row{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:760px){
	.nicotine-notice{height:auto;min-height:42px;padding:7px 12px;font-size:14px}.top-ad{height:48px}
	.header-main{height:auto;min-height:116px;padding:14px 0;grid-template-columns:38px 1fr auto}.site-logo img,.site-logo .custom-logo{width:210px}.header-phone,.header-actions{display:none}.header-search{grid-column:1/-1;grid-row:2;height:44px}
	.nav-bar{height:auto;min-height:44px}.nav-inner{display:block}.nav-inner nav{height:auto}.nav-list{display:none;height:auto;flex-direction:column}.nav-list.is-open{display:flex}.nav-list a{padding:12px 10px}.nav-cart{display:none}
	.home-main{padding-top:10px}.home-shell,.container{width:min(calc(100% - 20px),var(--shell))}
	.hero-grid{grid-template-columns:repeat(2,1fr);gap:7px}.feature-row{grid-template-columns:1fr;height:210px}.feature-side{display:none}
	.trending-list{grid-template-columns:repeat(5,1fr);height:250px}.trend-item:nth-child(n+6){display:none}
	.image-grid-three{height:auto;grid-template-columns:1fr}.image-grid-three a{aspect-ratio:2.7/1}
	.brand-track{gap:14px}.image-grid-two{height:auto;grid-template-columns:1fr}.image-grid-two a{aspect-ratio:4.5/1}
	.image-grid-five{height:auto;grid-template-columns:repeat(2,1fr)}.image-grid-five a{aspect-ratio:.9/1}.image-grid-five a:last-child{display:none}
	.product-row{grid-template-columns:repeat(2,1fr)}.home-product-card h3{min-height:92px}
	.image-grid-four{height:auto;grid-template-columns:repeat(2,1fr)}.image-grid-four a{aspect-ratio:1.78/1}
	.flavor-section{padding-bottom:45px}.flavor-grid{grid-template-columns:repeat(2,1fr)}.flavor-grid a{height:auto}.flavor-grid img{height:auto;aspect-ratio:1.39/1}
	.footer-top{grid-template-columns:1fr 1fr;gap:30px;padding-top:36px}.footer-brand{grid-column:1/-1}.footer-payments{height:auto;min-height:82px;gap:13px;flex-wrap:wrap;padding:15px}.footer-payments img{max-width:72px;max-height:34px}
	.age-card{width:490px;min-height:0;padding:12px 35px 16px}.age-logo{height:60px}.age-creative{height:145px}.age-social{margin-top:25px}.cookie-bar{padding:9px 12px;font-size:11px}.cookie-bar button{width:80px;flex:0 0 80px}
	.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}.product-detail-grid{grid-template-columns:1fr}
}
@media (max-width:430px){
	.site-logo img,.site-logo .custom-logo{width:178px}.hero-grid{grid-template-columns:1fr 1fr}.home-section>h2,.product-section>h2{font-size:18px}
	.age-card{padding:10px 20px}.age-creative{height:122px}.age-buttons{gap:8px}.age-buttons button{font-size:14px}.age-card .age-cookie{margin-inline:0}.age-social{margin-top:18px}
}
@media (max-height:690px){
	.age-card{min-height:0;padding-top:8px;padding-bottom:10px}
	.age-logo{height:54px;margin-bottom:3px}
	.age-creative{height:142px;margin-bottom:8px}
	.age-card p{margin-bottom:8px}
	.age-card .age-question{margin:10px 0}
	.age-buttons button{height:45px}
	.age-social{margin-top:18px}
}

/* Catalog and editable content templates. */
.content-page{min-height:55vh}.page-header{padding:18px 0;border-bottom:1px solid #e6eaf0;margin-bottom:24px}.page-header h1{margin:0;font-size:clamp(26px,3vw,40px);line-height:1.15;color:var(--navy)}
.entry-content{font-size:16px;line-height:1.75}.entry-content>*{max-width:920px}.entry-content img{max-width:100%;height:auto}.entry-meta,.archive-description{color:#66788e}
.post-list,.search-results-grid{display:grid;gap:20px}.post-summary{padding:22px;border:1px solid #e2e7ed;border-radius:6px;background:#fff}.post-summary h2{margin:0 0 10px;font-size:22px}
.empty-state{max-width:760px;margin:30px auto;padding:48px 28px;text-align:center;border:1px solid #dfe5ec;border-radius:8px;background:#f8fafc}.empty-state h1,.empty-state h2{color:var(--navy)}
.product-grid,.search-results-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:20px 0 34px}
.product-card{display:flex;min-width:0;flex-direction:column;border:1px solid #e2e6eb;background:#fff;padding:13px;transition:box-shadow .2s ease,transform .2s ease}.product-card:hover{box-shadow:0 10px 28px rgba(11,36,63,.12);transform:translateY(-2px)}
.product-card-link{color:inherit}.product-card .product-image{aspect-ratio:1/1;display:grid;place-items:center;overflow:hidden;background:#fff}.product-card .product-image img{width:100%;height:100%;object-fit:contain}.product-card h2{font-size:14px;line-height:1.45;font-weight:600;margin:12px 0;min-height:60px}.product-card-meta{margin-top:auto}.product-card .stock{display:block;font-size:12px;margin-bottom:8px}.product-card .in-stock{color:#177245}.product-card .out-of-stock{color:#8a5b00}.product-card .price,.mwg-price-gate{font-size:14px;font-weight:700}.mwg-price-gate{display:inline-block;color:#095c8d;text-decoration:underline}
.product-detail .summary .product_title{font-size:clamp(26px,3vw,38px);line-height:1.15}.product-detail .summary .price{font-size:22px}.product-gallery img{max-width:100%;height:auto}.mwg-moq,.mwg-inventory-note{padding:12px 14px;background:#f4f7fa;border-left:4px solid var(--teal)}
@media (max-width:1000px){.product-grid,.search-results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.product-grid,.search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card{padding:9px}.product-card h2{font-size:12px;min-height:70px}.empty-state{padding:34px 18px}}
