/*
Theme Name: Tonkaboti Commerce
Author: Tonkaboti
Description: Clean Bengali boutique storefront for WooCommerce, with self-hosted fonts and native theme settings.
Version: 2.4.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: tonkaboti-commerce
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: e-commerce, custom-colors, custom-logo, custom-menu, featured-images, translation-ready
*/
:root{--tk-cream:#F1E9DC;--tk-terra:#713B32;--tk-green:#334D40;--tk-gold:#B59559;--tk-ink:#252521;--tk-width:1280px;--tk-hero-height:500px;--tk-columns:4;--tk-line:#e9e7e3;--tk-muted:#6a6964}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--tk-ink);font-family:"Tonkaboti Sans",system-ui,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:var(--tk-terra)}button,input,select,textarea{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto;vertical-align:middle}button{cursor:pointer}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.wrap{width:min(var(--tk-width),calc(100% - 80px));margin-inline:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;line-height:1.4}h2{font-size:clamp(26px,2.7vw,36px);margin-bottom:10px}h3{font-size:19px}.eyebrow{font-family:system-ui,sans-serif;font-size:11px;letter-spacing:.12em;color:var(--tk-muted);margin-bottom:14px}.text-link{display:inline-block;border-bottom:1px solid currentColor;font-size:13px;padding-bottom:3px}.btn,.button,button[type=submit],input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:46px;padding:12px 24px;border:1px solid var(--tk-terra);border-radius:3px;background:var(--tk-terra);color:#fff;font-size:14px;font-weight:500;line-height:1.5}.btn:hover,.button:hover,button[type=submit]:hover{background:var(--tk-green);border-color:var(--tk-green);color:white}.btn-light{background:white;border-color:white;color:var(--tk-ink)}:focus-visible{outline:2px solid var(--tk-terra);outline-offset:4px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.screen-reader-text:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;padding:12px;background:white;clip-path:none;z-index:10000}[hidden]{display:none!important}
.topbar{background:var(--tk-cream);padding:7px 16px;color:var(--tk-ink);text-align:center;font-size:11px}.site-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid var(--tk-line)}.site-header.is-sticky{position:sticky;top:0}.admin-bar .site-header.is-sticky{top:32px}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex-shrink:0;max-width:220px;overflow-wrap:anywhere;color:var(--tk-terra)}.brand>a{display:flex;flex-direction:column;align-items:center;line-height:1.2}.brand strong{font-size:31px;font-weight:600}.brand small{font:10px/1.4 system-ui,sans-serif;letter-spacing:.2em;margin-top:5px}.custom-logo{max-height:62px;max-width:180px;width:auto}.nav-menu{list-style:none;display:flex;gap:25px;padding:0;margin:0}.nav-menu>li{position:relative}.nav-menu a{display:block;padding:12px 0;font-size:13px}.nav-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;background:#fff;border:1px solid var(--tk-line);padding:12px 20px;list-style:none}.nav-menu .sub-menu .sub-menu{position:static;border:0;padding-left:14px}.nav-menu li:hover>.sub-menu,.nav-menu li:focus-within>.sub-menu{display:block}.header-tools{display:flex;gap:4px;align-items:center}.header-tools a,.header-tools button{min-height:44px;min-width:40px;display:flex;align-items:center;justify-content:center;gap:4px;border:0;background:none;color:var(--tk-ink);padding:4px}.tk-cart-count{font:10px system-ui,sans-serif}.menu-toggle{display:none;width:44px;height:44px;background:none;border:0;padding:12px}.menu-toggle span{height:1px;display:block;background:var(--tk-ink);margin:5px 0}.tk-search{padding-block:16px}.search-form{display:flex;gap:10px}.search-form label{flex:1}.search-field{width:100%;background:#fafafa;border:1px solid var(--tk-line);padding:12px}
.tk-banner{width:min(var(--tk-width),calc(100% - 80px));margin:28px auto 0;position:relative;border-radius:4px;overflow:hidden;background:#f7f4ef}.hero{display:grid;grid-template-columns:1fr 1.15fr;min-height:var(--tk-hero-height);background:#f7f4ef}.hero-media{grid-column:2;grid-row:1;overflow:hidden}.hero-picture{display:block;width:100%;height:100%}.hero-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:70% center}.hero-inner.wrap{grid-column:1;grid-row:1;min-width:0;width:100%;display:flex;align-items:center;padding:60px}.hero-content{width:100%;max-width:460px}.hero h1,.banner-title{font-size:clamp(36px,4vw,58px);line-height:1.35;letter-spacing:0;margin:0 0 22px;color:var(--tk-ink)}.hero-description{font-size:16px;line-height:1.9;color:var(--tk-muted);margin-bottom:26px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.is-slider .hero-inner{padding-bottom:95px}.slider-controls.wrap{position:absolute;bottom:24px;left:60px;width:auto;display:flex;align-items:center;gap:14px}.slider-arrows{display:flex;gap:5px}.slider-controls button{min-width:36px;min-height:36px;border:1px solid #d5d2cc;background:transparent;border-radius:3px;padding:6px;color:var(--tk-ink)}.slider-dots{display:flex;gap:0}.slider-dots button{border:0;min-width:24px;display:grid;place-items:center}.slider-dots span{width:5px;height:5px;border-radius:50%;background:var(--tk-ink);opacity:.3}.slider-dots [aria-current] span{opacity:1}.service-strip .wrap{display:flex;justify-content:center;gap:48px;padding-block:25px;font-size:11px;color:var(--tk-muted);border-bottom:1px solid var(--tk-line)}.service-strip span:before{content:'✓';margin-right:8px;color:var(--tk-green)}
.section{padding:60px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.section-head .eyebrow{display:none}.section-head p{font-size:13px;color:var(--tk-muted);margin:0}.section-head h2{font-weight:600}.section-head .text-link{flex-shrink:0}.section-note{font-size:12px;color:var(--tk-muted)}.categories{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.category-image{aspect-ratio:1/1.12;background:#f3f2ef;border-radius:3px;overflow:hidden}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.category-tile:hover .category-image img{transform:scale(1.03)}.category-caption{display:flex;justify-content:space-between;align-items:start;gap:8px;margin-top:14px}.category-caption h3{font-size:19px;margin-bottom:3px}.category-caption p{font-size:11px;color:var(--tk-muted);margin:0}.category-caption>span{font:18px system-ui,sans-serif}.collection-number{display:none}.categories-editorial{grid-template-columns:repeat(3,minmax(0,1fr))}.categories-editorial .category-image{aspect-ratio:1.5}.curated{padding-top:12px}.products-grid{display:grid;grid-template-columns:repeat(var(--tk-columns),minmax(0,1fr));gap:34px 24px}.product-card{min-width:0}.product-photo{position:relative;display:block;aspect-ratio:1/1.18;background:#f4f3f0;overflow:hidden;border-radius:3px}.product-photo img{width:100%;height:100%;object-fit:cover}.product-meta{padding-top:16px}.product-meta h3{font-size:15px;font-weight:500;margin:0 0 6px}.price{font-family:inherit;color:var(--tk-ink);font-size:14px;font-weight:600}.price del{font-size:12px;color:var(--tk-muted);font-weight:400}.price ins{text-decoration:none}.product-action{display:flex;justify-content:space-between;align-items:center;padding-top:12px;font-size:11px;color:var(--tk-muted)}.product-action span{font-size:18px}.sale-badge{position:absolute;top:10px;left:10px;background:white;border-radius:2px;padding:4px 8px;font-size:10px;color:var(--tk-terra)}.gift-section{padding-top:10px}.gift-feature{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--tk-line);border-radius:4px;overflow:hidden;background:#f7f4ef}.gift-copy{align-self:center;padding:50px}.gift-copy .eyebrow{font-size:11px}.gift-copy h2{font-size:clamp(26px,3vw,40px);max-width:390px}.gift-copy>p:not(.eyebrow){font-size:14px;color:var(--tk-muted);margin-block:20px 26px}.gift-copy .btn-light{background:var(--tk-terra);border-color:var(--tk-terra);color:white}.gift-image{max-height:390px;overflow:hidden}.gift-image img{width:100%;height:100%;object-fit:cover}.story{background:#fbfaf8}.story-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story-image{position:relative}.story-image img{width:100%;aspect-ratio:1.35;object-fit:cover;object-position:right;border-radius:3px}.story-image span{display:none}.story-copy{max-width:440px}.story-copy .eyebrow{font-size:11px}.story-copy>p:not(.eyebrow){font-size:14px;color:var(--tk-muted);margin-block:20px 25px}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.journal-image{display:block;aspect-ratio:1.5;overflow:hidden;background:#f3f2ef;margin-bottom:18px;border-radius:3px}.journal-image img{width:100%;height:100%;object-fit:cover}.journal-grid .eyebrow{font-size:11px;letter-spacing:0;margin-bottom:10px}.journal-grid h3{font-size:19px}.journal-grid article>p:not(.eyebrow){font-size:13px;color:var(--tk-muted)}
.site-footer{background:#f8f7f4;border-top:1px solid var(--tk-line);padding:50px 0 22px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-brand h2{font-size:30px;color:var(--tk-terra)}.footer-brand p{max-width:310px}.footer-grid h3{font-size:15px}.footer-grid p,.footer-grid li{font-size:12px;color:var(--tk-muted);line-height:1.9}.footer-grid ul{padding:0;margin:0;list-style:none}.footer-grid li{padding-bottom:7px}.social-links{display:flex;gap:20px;font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--tk-line);margin-top:35px;padding-top:22px;font:10px system-ui,sans-serif;color:var(--tk-muted)}.content-area{padding-block:50px;min-height:50vh}.entry-content{max-width:860px;margin:auto;overflow-wrap:anywhere}.entry-content h1,.content-area>h1{font-size:clamp(30px,4vw,44px)}.entry-content table{display:block;overflow:auto;max-width:100%}.entry-content img{height:auto}.entry-content p{margin-bottom:1.5em}input,select,textarea{max-width:100%}.empty-state{color:var(--tk-muted);padding-block:20px}.notice{padding:16px;background:#faf7ef;border-left:3px solid var(--tk-terra)}
.woocommerce .woocommerce-breadcrumb{font-size:12px;margin-bottom:25px}.woocommerce ul.products li.product a img{aspect-ratio:1/1.18;object-fit:cover;border-radius:3px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px;font-weight:500;line-height:1.6}.woocommerce ul.products li.product .price{color:var(--tk-ink);font-size:14px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--tk-terra);color:white;font-family:inherit;font-size:13px;font-weight:500;padding:13px 20px;border-radius:3px}.woocommerce div.product .product_title{font-size:32px}.woocommerce div.product p.price{color:var(--tk-ink)}.woocommerce .quantity .qty{padding:9px;min-height:43px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select{font-family:inherit;border:1px solid #dcdad5;background:white;padding:11px;border-radius:3px}.woocommerce table.shop_table{border:1px solid var(--tk-line);border-radius:3px}.woocommerce-message,.woocommerce-info{border-top-color:var(--tk-green)}.woocommerce span.onsale{background:white;color:var(--tk-terra);border:1px solid var(--tk-line);border-radius:2px;min-height:0;line-height:1.7;font-size:11px;padding:4px 8px}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:0}.woocommerce-cart .entry-content,.woocommerce-checkout .entry-content,.woocommerce-account .entry-content{max-width:none}
@media(max-width:1100px){.nav-menu{gap:16px}.nav-menu a{font-size:12px}.header-inner{gap:16px}.hero-inner.wrap{padding:40px}.slider-controls.wrap{left:40px}.categories{gap:14px}.category-caption h3{font-size:17px}.story-inner{gap:45px}.gift-copy{padding:36px}}
@media(max-width:900px){.wrap,.tk-banner{width:calc(100% - 40px)}.header-inner{min-height:76px;gap:10px;flex-wrap:wrap}.menu-toggle{display:block;order:-1}.brand{margin-right:auto}.brand strong{font-size:28px}.brand small{font-size:10px}.custom-logo{max-width:130px;max-height:58px}.primary-nav{width:100%;padding-block:12px}.nav-menu{flex-direction:column;gap:0}.nav-menu .sub-menu{display:block;position:static;border:0;padding:0 16px}.tk-js .primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:16px 24px;border-bottom:1px solid var(--tk-line);max-height:70vh;overflow:auto}.tk-js .primary-nav.is-open{display:block}.hero{min-height:460px;grid-template-columns:1fr 1fr}.hero-inner.wrap{padding:32px}.hero h1,.banner-title{font-size:40px}.hero-description{font-size:14px}.hero-actions{gap:18px}.slider-controls.wrap{left:32px}.categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px}.categories-editorial{grid-template-columns:repeat(3,minmax(0,1fr))}.categories-editorial .category-image{aspect-ratio:1/1.12}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-inner{gap:32px}.footer-grid{gap:30px}.service-strip .wrap{gap:24px}.is-slider .hero-inner{padding-bottom:100px}}
@media(max-width:600px){.wrap,.tk-banner{width:calc(100% - 32px)}.tk-banner{margin-top:16px}.topbar{font-size:10px}.header-inner{min-height:70px;gap:2px}.brand{max-width:calc(100vw - 180px)}.brand strong{font-size:25px}.header-tools a,.header-tools button{min-width:36px}.custom-logo{max-width:105px}.hero{display:flex;flex-direction:column;min-height:0}.hero-inner.wrap{order:0;padding:30px 26px;width:100%;min-height:280px}.hero-media{order:1;height:240px}.hero h1,.banner-title{font-size:38px;margin-bottom:16px}.hero-description{font-size:14px;margin-bottom:20px}.hero .eyebrow{font-size:10px}.hero-actions .btn{font-size:12px;padding:11px 18px;gap:15px}.hero-actions .text-link{font-size:12px}.is-slider .hero-inner{padding-bottom:30px;min-height:280px}.slider-controls.wrap{position:static;top:auto;bottom:auto;left:auto;width:100%;padding:12px 26px;gap:10px}.slider-controls button{min-width:32px;min-height:32px}.slider-dots button{min-width:22px}.service-strip .wrap{gap:12px;padding-block:18px;justify-content:space-between;font-size:11px}.service-strip span:before{display:none}.section{padding:38px 0}.section-head{gap:12px;margin-bottom:22px}.section-head h2{font-size:26px}.section-head p{font-size:11px}.section-head .text-link{font-size:11px}.section-note{display:none}.categories,.categories-editorial{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px}.category-image,.categories-editorial .category-image{aspect-ratio:1/1.15}.category-caption{margin-top:10px}.category-caption h3{font-size:16px}.category-caption p,.category-caption>span{display:none}.products-grid{gap:26px 16px}.product-meta{padding-top:12px}.product-meta h3{font-size:13px}.price{font-size:13px}.product-action{font-size:10px;padding-top:7px}.sale-badge{font-size:11px;left:8px;top:8px}.curated,.gift-section{padding-top:10px}.gift-feature{grid-template-columns:1fr}.gift-copy{padding:30px 26px}.gift-copy h2{font-size:29px}.gift-image{height:250px}.story-inner{grid-template-columns:1fr;gap:25px}.story-copy h2{font-size:29px}.journal-grid{grid-template-columns:1fr;gap:32px}.journal-grid h3{font-size:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.site-footer{padding-top:35px}.footer-bottom{flex-direction:column;gap:10px;margin-top:25px}.search-form button{padding:10px 14px}.content-area{padding-block:32px}.woocommerce div.product .product_title{font-size:27px}.woocommerce ul.products{display:flex;flex-wrap:wrap;gap:4%}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:48%;margin:0 0 25px}.admin-bar .site-header.is-sticky{top:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.category-tile:hover .category-image img{transform:none}}
/* 2.1: typography tokens and considered inner-page layouts. */
body{font-size:var(--tk-body-size,16px);line-height:var(--tk-leading,1.8)}h1,.hero h1,.banner-title{font-size:var(--tk-h1-size,44px)}h2,.section-head h2,.gift-copy h2,.story-copy h2{font-size:var(--tk-h2-size,34px)}h3{font-size:var(--tk-h3-size,22px)}.brand strong{font-size:var(--tk-brand-size,31px)}.nav-menu a{font-size:var(--tk-menu-size,13px)}.btn,.button,button[type=submit],input[type=submit],.woocommerce a.button,.woocommerce button.button{font-size:var(--tk-button-size,14px)}.product-meta h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:var(--tk-product-card-size,15px)}.hero-description,.story-copy>p:not(.eyebrow),.gift-copy>p:not(.eyebrow),.entry-content{font-size:var(--tk-body-size,16px)}.tk-reading,.tk-page .entry-content{width:100%;max-width:var(--tk-reading-width,760px);margin-inline:auto;line-height:var(--tk-leading,1.8)}

@media(max-width:600px){body,.hero-description,.story-copy>p:not(.eyebrow),.gift-copy>p:not(.eyebrow),.entry-content{font-size:var(--tk-body-mobile,16px)}h1,.hero h1,.banner-title{font-size:var(--tk-h1-mobile,32px)}h2,.section-head h2,.gift-copy h2,.story-copy h2{font-size:var(--tk-h2-mobile,27px)}h3{font-size:var(--tk-h3-mobile,20px)}.brand strong{font-size:var(--tk-brand-mobile,25px)}.product-meta h3{font-size:var(--tk-product-card-mobile,14px)}}
/* 2.2 shared shell, automatic slider geometry and footer typography. */
:root{--tk-gutter:80px}.site-header .header-inner.wrap,#main.wrap,.site-footer>.wrap{width:min(var(--tk-width),calc(100% - var(--tk-gutter)));max-width:none;margin-inline:auto}.tk-banner.is-slider .tk-slide{height:var(--tk-hero-height,500px);min-height:0;grid-template-rows:minmax(0,1fr)}.tk-banner.is-slider .hero-media{height:100%;min-height:0}.tk-banner.is-slider .hero-inner.wrap{min-height:0;overflow:auto}.tk-banner.is-slider .hero-picture,.tk-banner.is-slider .hero-picture img{width:100%;height:100%;object-fit:cover}.site-footer{font-size:var(--tk-footer-body-size,14px)}.site-footer h2,.site-footer h3,.site-footer p,.site-footer a{font-family:inherit}.site-footer .footer-brand h2{font-size:var(--tk-footer-brand-size,30px)}.site-footer .footer-grid h3{font-size:var(--tk-footer-heading-size,16px)}.site-footer .footer-grid p,.site-footer .footer-grid li,.site-footer .social-links{font-size:var(--tk-footer-body-size,14px)}.site-footer .footer-bottom{font-family:inherit;font-size:var(--tk-footer-small-size,11px)}
@media(max-width:900px){:root{--tk-gutter:40px}}
@media(max-width:600px){:root{--tk-gutter:32px}.tk-banner.is-slider .tk-slide{height:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--tk-slide-copy-height,280px) 260px}.tk-banner.is-slider .hero-inner.wrap{grid-column:1;grid-row:1;height:100%;min-height:0;padding-bottom:30px}.tk-banner.is-slider .hero-media{grid-column:1;grid-row:2;height:260px}.site-footer .footer-grid p,.site-footer .footer-grid li,.site-footer .social-links{font-size:var(--tk-footer-mobile-size,13px)}}

/* 2.4 product showcase */
.products-grid{gap:40px 24px}
.product-card{display:flex;flex-direction:column;min-width:0}
.pc-media{position:relative}
.product-photo img{transition:transform .5s ease}
.pc-alt{position:absolute;inset:0;opacity:0;transition:opacity .35s}
.pc-badges{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:6px}
.pc-badges .sale-badge{position:static;background:var(--tk-terra);color:#fff;border-radius:999px;padding:3px 11px;font-size:11px;font-weight:600;line-height:1.6}
.pc-badges .sale-badge.is-out{background:var(--tk-ink)}
.pc-actions{position:absolute;left:12px;right:12px;bottom:12px;z-index:3;opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}
.product-card:hover .pc-actions,.product-card:focus-within .pc-actions{opacity:1;transform:none}
.pc-actions .product-action.button{display:flex;width:100%;min-height:44px;justify-content:center;gap:8px;padding:10px 14px;border:0;border-radius:4px;background:rgba(255,255,255,.96);color:var(--tk-ink);font-size:13px;font-weight:600;box-shadow:0 4px 14px rgba(0,0,0,.14)}
.pc-actions .product-action.button:hover{background:var(--tk-terra);color:#fff}
.pc-actions .product-action.loading{opacity:.6;pointer-events:none}
.pc-actions .product-action.loading:after{content:'…';font-family:inherit;animation:none;position:static;margin:0}
.pc-actions .product-action.added:after{content:'✓';font-family:inherit;position:static;margin:0}
.pc-actions .added_to_cart{display:block;margin-top:6px;padding:6px;border-radius:4px;background:#fff;text-align:center;font-size:12px}
.product-meta{display:flex;flex-direction:column;gap:2px;padding-top:14px}
.pc-cat{margin:0 0 2px;font-size:11px;letter-spacing:.04em;color:var(--tk-muted)}
.pc-cat a:hover{color:var(--tk-terra)}
.product-meta h3{margin:0 0 4px}
.pc-desc{margin:4px 0 10px;font-size:14px;color:var(--tk-muted);max-width:46ch}
.pc-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px}
.pc-rating .star-rating{float:none;margin:0;font-size:12px}
.products-grid.is-showcase{grid-template-columns:repeat(4,minmax(0,1fr))}
.is-showcase .product-card.is-feature{grid-column:span 2;grid-row:span 2}
.is-feature .pc-media{flex:1;display:flex;flex-direction:column}
.is-feature .product-photo{flex:1;aspect-ratio:auto;min-height:420px}
.is-feature .product-photo img{position:absolute;inset:0}
.is-feature .product-meta h3{font-size:clamp(20px,2.1vw,28px)}
.is-feature .price{font-size:17px}
.products-grid.is-scroller{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 72px)/4);overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:14px;scrollbar-width:thin}
.is-scroller .product-card{scroll-snap-align:start}
@media(hover:hover){.product-card:hover .product-photo img{transform:scale(1.04)}.product-card:hover .pc-alt{opacity:1}}
@media(hover:none){.pc-actions{position:static;opacity:1;transform:none;margin-top:10px}.pc-actions .product-action.button{background:transparent;border:1px solid var(--tk-line);box-shadow:none}}
@media(max-width:900px){.products-grid.is-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}.is-showcase .product-card.is-feature{grid-column:1/-1;grid-row:auto}.is-feature .product-photo{min-height:0;aspect-ratio:4/3}.products-grid.is-scroller{grid-auto-columns:calc((100% - 24px)/2.4)}}
@media(max-width:600px){.products-grid{gap:28px 14px}.products-grid.is-scroller{grid-auto-columns:72%}.pc-badges{top:8px;left:8px}}

/* 2.4 cart drawer (desktop only; below 901px the cart link goes to the cart page) */
.tk-drawer{display:none}
@media(min-width:901px){
.tk-drawer{display:block;position:fixed;inset:0;z-index:9990;visibility:hidden;pointer-events:none;transition:visibility 0s linear .3s}
.admin-bar .tk-drawer{top:32px}
.tk-drawer.is-open{visibility:visible;pointer-events:auto;transition-delay:0s}
.tk-drawer-overlay{position:absolute;inset:0;background:rgba(37,37,33,.45);opacity:0;transition:opacity .3s}
.tk-drawer.is-open .tk-drawer-overlay{opacity:1}
.tk-drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,100vw);display:flex;flex-direction:column;background:#fff;box-shadow:-12px 0 32px rgba(0,0,0,.14);transform:translateX(100%);transition:transform .3s ease;outline:0}
.tk-drawer.is-open .tk-drawer-panel{transform:none}
.tk-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 24px;border-bottom:1px solid var(--tk-line)}
.tk-drawer-head h2{display:flex;align-items:center;gap:10px;margin:0;font-size:20px}
.tk-drawer-head .tk-cart-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:12px;background:var(--tk-cream);color:var(--tk-terra);font:600 12px system-ui,sans-serif}
.tk-drawer-close{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:none;color:var(--tk-ink)}
.tk-drawer-close:hover{background:var(--tk-cream)}
.tk-drawer .widget_shopping_cart_content{display:flex;flex:1;flex-direction:column;min-height:0}
.tk-drawer ul.cart_list{flex:1;margin:0;padding:6px 24px;overflow:auto;list-style:none}
.tk-drawer .woocommerce-mini-cart-item{position:relative;display:flow-root;margin:0;padding:16px 30px 16px 0;border-bottom:1px solid var(--tk-line);font-size:14px;line-height:1.5}
.tk-drawer .woocommerce-mini-cart-item:last-child{border-bottom:0}
.tk-drawer .woocommerce-mini-cart-item img{float:left;width:68px;height:84px;margin:0 14px 0 0;border-radius:3px;object-fit:cover}
.tk-drawer .woocommerce-mini-cart-item a:not(.remove){display:block;font-weight:600}
.tk-drawer .woocommerce-mini-cart-item .quantity{display:block;margin-left:82px;font-size:13px;color:var(--tk-muted)}
.tk-drawer .woocommerce-mini-cart-item dl.variation{margin:4px 0 0 82px;font-size:12px;color:var(--tk-muted)}
.tk-drawer .woocommerce-mini-cart-item dl.variation dt,.tk-drawer .woocommerce-mini-cart-item dl.variation dd{display:inline;float:none;margin:0}.tk-drawer .woocommerce-mini-cart-item dl.variation dd p{display:inline;margin:0}
.tk-drawer .woocommerce-mini-cart-item a.remove{position:absolute;top:14px;right:0;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:none;color:var(--tk-muted)!important;font-size:18px;line-height:1;font-weight:400}
.tk-drawer .woocommerce-mini-cart-item a.remove:hover{background:var(--tk-terra);color:#fff!important}
.tk-drawer .woocommerce-mini-cart__total{display:flex;justify-content:space-between;margin:0;padding:16px 24px;border-top:1px solid var(--tk-line);font-size:15px}
.tk-drawer .woocommerce-mini-cart__buttons{display:grid;gap:10px;margin:0;padding:0 24px 24px}
.tk-drawer .woocommerce-mini-cart__buttons .button{width:100%;margin:0}
.tk-drawer .woocommerce-mini-cart__buttons .button:not(.checkout){background:transparent;color:var(--tk-ink);border-color:var(--tk-line)}
.tk-drawer .woocommerce-mini-cart__buttons .button:not(.checkout):hover{background:var(--tk-cream);color:var(--tk-ink);border-color:var(--tk-cream)}
.tk-drawer .woocommerce-mini-cart__empty-message{margin:0;padding:56px 24px;text-align:center;color:var(--tk-muted)}
html.tk-drawer-open{overflow:hidden}
.tk-has-drawer .pc-actions .added_to_cart{display:none}
}
