/*
Theme Name: TMB CO Theme
Theme URI: https://crawfordoutdoor.com
Author: Billy Day
Author URI: https://www.tmb-solutions.com
Description: Custom WooCommerce theme developed for Crawford Outdoor by TMB Solutions
Version: 2.9.33
Text Domain: tmb-co-theme
*/


/* Simple storefront homepage — dynamic TMB brand colors */
.tmb-store-home{background:var(--tmb-surface-bg,#fff);color:var(--tmb-primary,#182432)}
.tmb-store-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}
.tmb-store-intro{padding:44px 0;background:var(--tmb-color-60,#f5f6f6);border-bottom:1px solid var(--tmb-brand-border,rgba(24,36,50,.1))}
.tmb-store-intro__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:center;gap:48px}
.tmb-store-intro__copy{max-width:740px}
.tmb-store-kicker{margin:0 0 9px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.62}
.tmb-store-intro h1{margin:0;max-width:720px;font-size:clamp(34px,4.5vw,58px);line-height:1.02;letter-spacing:-.04em}
.tmb-store-intro__text{max-width:650px;margin:18px 0 0;font-size:17px;line-height:1.65;color:color-mix(in srgb,var(--tmb-primary,#182432) 76%,transparent)}
.tmb-store-intro__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tmb-store-button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:0 21px;background:var(--tmb-primary,#182432);color:#fff!important;text-decoration:none!important;font-weight:700;border:1px solid var(--tmb-primary,#182432);border-radius:4px;transition:transform .2s ease,opacity .2s ease}
.tmb-store-button:hover{transform:translateY(-2px);opacity:.9}
.tmb-store-button--secondary{background:transparent;color:var(--tmb-primary,#182432)!important}
.tmb-store-account-link{display:flex;min-height:150px;flex-direction:column;justify-content:flex-end;padding:25px;background:var(--tmb-surface-bg,#fff);border:1px solid var(--tmb-brand-border,rgba(24,36,50,.12));color:inherit!important;text-decoration:none!important;box-shadow:0 12px 35px color-mix(in srgb,var(--tmb-primary,#182432) 6%,transparent);transition:transform .2s ease,box-shadow .2s ease}
.tmb-store-account-link:hover{transform:translateY(-3px);box-shadow:0 16px 42px var(--tmb-brand-shadow,rgba(24,36,50,.1))}
.tmb-store-account-link span{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.58}
.tmb-store-account-link strong{margin-top:8px;font-size:19px;line-height:1.3}
.tmb-store-section{padding:64px 0}
.tmb-store-section--muted{background:var(--tmb-color-60,#f5f6f6)}
.tmb-store-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.tmb-store-heading h2{margin:0;font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.035em}
.tmb-store-heading>a{color:inherit;text-decoration:none;font-weight:700;white-space:nowrap}
.tmb-store-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}
.tmb-store-product{min-width:0}
.tmb-store-product__image{display:block;aspect-ratio:1/1;background:var(--tmb-color-60,#f2f3f3);overflow:hidden}
.tmb-store-product__image img{display:block;width:100%;height:100%;object-fit:contain;padding:18px;transition:transform .28s ease}
.tmb-store-product:hover .tmb-store-product__image img{transform:scale(1.035)}
.tmb-store-product__body{padding-top:14px}
.tmb-store-product h3{margin:0 0 7px;font-size:16px;line-height:1.35}
.tmb-store-product h3 a{color:inherit;text-decoration:none}
.tmb-store-product__price{margin-bottom:10px;font-weight:700}
.tmb-store-product__link{font-size:13px;font-weight:700;color:inherit;text-decoration:none}
.tmb-store-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.tmb-store-category{position:relative;display:flex;align-items:flex-end;min-height:240px;padding:18px;overflow:hidden;background:var(--tmb-secondary,#dfe3e4);color:#fff!important;text-decoration:none!important}
.tmb-store-category:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,16,24,.74),rgba(8,16,24,.05) 70%)}
.tmb-store-category img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.tmb-store-category:hover img{transform:scale(1.035)}
.tmb-store-category span{position:relative;z-index:1;font-size:18px;font-weight:700}
.tmb-store-brands{padding-bottom:80px}
.tmb-store-brand-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--tmb-brand-border,rgba(24,36,50,.1));border-left:1px solid var(--tmb-brand-border,rgba(24,36,50,.1))}
.tmb-store-brand-row a{display:flex;align-items:center;justify-content:center;min-height:130px;padding:22px;border-right:1px solid var(--tmb-brand-border,rgba(24,36,50,.1));border-bottom:1px solid var(--tmb-brand-border,rgba(24,36,50,.1));color:inherit;text-decoration:none;font-weight:700;text-align:center}
.tmb-store-brand-row img{display:block;max-width:100%;max-height:64px;width:auto;height:auto;object-fit:contain}
@media(max-width:900px){.tmb-store-products{grid-template-columns:repeat(2,minmax(0,1fr))}.tmb-store-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.tmb-store-category:first-child{grid-column:1/-1}.tmb-store-brand-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.tmb-store-shell{width:min(100% - 28px,1180px)}.tmb-store-intro{padding:32px 0}.tmb-store-intro__inner{grid-template-columns:1fr;gap:24px}.tmb-store-intro h1{font-size:38px}.tmb-store-intro__text{font-size:15px;line-height:1.55}.tmb-store-intro__actions{display:grid;grid-template-columns:1fr;margin-top:22px}.tmb-store-button{width:100%}.tmb-store-account-link{min-height:118px;padding:20px}.tmb-store-section{padding:46px 0}.tmb-store-heading{align-items:center;margin-bottom:22px}.tmb-store-heading h2{font-size:30px}.tmb-store-products{gap:24px 12px}.tmb-store-product__image img{padding:10px}.tmb-store-product h3{font-size:14px}.tmb-store-product__price{font-size:14px}.tmb-store-category{min-height:190px}.tmb-store-brand-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tmb-store-brand-row a{min-height:105px;padding:16px}.tmb-store-brand-row img{max-height:48px}}

/* Graphical product-brand archive hero — 2.9.24 */
.tmb-shop-archive__hero--brand{position:relative;isolation:isolate;min-height:clamp(330px,34vw,440px);display:flex;align-items:flex-end;overflow:hidden;border-radius:8px;background:linear-gradient(135deg,var(--tmb-primary,#182432),color-mix(in srgb,var(--tmb-primary,#182432) 72%,#000));color:#fff;box-shadow:0 20px 48px color-mix(in srgb,var(--tmb-primary,#182432) 14%,transparent)}
.tmb-shop-archive__hero--brand.has-brand-banner{background-image:var(--tmb-brand-archive-banner);background-size:cover;background-position:center}
.tmb-shop-archive__brand-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,15,23,.86) 0%,rgba(8,15,23,.55) 43%,rgba(8,15,23,.14) 78%,rgba(8,15,23,.04) 100%),linear-gradient(0deg,rgba(8,15,23,.66),transparent 58%)}
.tmb-shop-archive__hero-inner--brand{display:flex;align-items:flex-end;gap:24px;width:100%;padding:clamp(28px,4vw,44px)}
.tmb-shop-archive__brand-logo{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:150px;height:112px;padding:18px;background:rgba(255,255,255,.95);border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.tmb-shop-archive__brand-logo img{display:block;width:auto;max-width:100%;height:auto;max-height:78px;object-fit:contain}
.tmb-shop-archive__brand-copy{max-width:620px;padding-bottom:2px}
.tmb-shop-archive__hero--brand .tmb-shop-archive__title,.tmb-shop-archive__hero--brand .tmb-shop-archive__intro{color:#fff}
.tmb-shop-archive__hero--brand .tmb-shop-archive__title{margin:0;max-width:620px;font-size:clamp(38px,4.8vw,62px);line-height:.98;letter-spacing:-.04em;text-wrap:balance;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.tmb-shop-archive__hero--brand .tmb-shop-archive__intro{max-width:560px;margin-top:10px;font-size:15px;line-height:1.45;opacity:.86}
.tmb-shop-archive__brand-story-toggle{display:inline-flex;align-items:center;gap:9px;width:max-content;margin-top:13px;padding:9px 13px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(8,15,23,.22);color:#fff;font:inherit;font-size:12px;font-weight:800;letter-spacing:.03em;cursor:pointer;backdrop-filter:blur(8px);transition:background .2s ease,border-color .2s ease}
.tmb-shop-archive__brand-story-toggle:hover,.tmb-shop-archive__brand-story-toggle:focus-visible{background:rgba(8,15,23,.45);border-color:rgba(255,255,255,.66);outline:none}
.tmb-shop-archive__brand-story-less{display:none}.tmb-shop-archive__brand-story-toggle.is-expanded .tmb-shop-archive__brand-story-more{display:none}.tmb-shop-archive__brand-story-toggle.is-expanded .tmb-shop-archive__brand-story-less{display:inline}
.tmb-shop-archive__brand-story-arrow{display:inline-block;transition:transform .2s ease}.tmb-shop-archive__brand-story-toggle.is-expanded .tmb-shop-archive__brand-story-arrow{transform:rotate(180deg)}
.tmb-shop-archive__brand-story{margin-top:-14px;padding:30px clamp(24px,4vw,44px) 26px;background:var(--tmb-color-60,#f4f5f5);border:1px solid var(--tmb-brand-border,rgba(24,36,50,.1));border-top:0;border-radius:0 0 8px 8px}
.tmb-shop-archive__brand-story[hidden]{display:none!important}.tmb-shop-archive__brand-story-inner{max-width:820px}.tmb-shop-archive__brand-story .tmb-eyebrow{margin:0 0 8px;color:var(--tmb-primary,#182432);opacity:.58}.tmb-shop-archive__brand-story-content{color:var(--tmb-primary,#182432);font-size:15px;line-height:1.7}.tmb-shop-archive__brand-story-content p:first-child{margin-top:0}.tmb-shop-archive__brand-story-content p:last-child{margin-bottom:0}
@media(max-width:780px){.tmb-shop-archive__hero--brand{min-height:430px;align-items:flex-end;border-radius:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.tmb-shop-archive__brand-shade{background:linear-gradient(0deg,rgba(8,15,23,.91) 0%,rgba(8,15,23,.52) 58%,rgba(8,15,23,.12) 100%)}.tmb-shop-archive__hero-inner--brand{display:block;padding:26px 20px 28px}.tmb-shop-archive__brand-logo{width:122px;height:88px;padding:14px;margin-bottom:18px}.tmb-shop-archive__brand-logo img{max-height:60px}.tmb-shop-archive__hero--brand .tmb-shop-archive__title{font-size:clamp(36px,10.5vw,48px)}.tmb-shop-archive__hero--brand .tmb-shop-archive__intro{max-width:440px;font-size:14px}.tmb-shop-archive__brand-story{margin:0 calc(50% - 50vw);padding:24px 20px;border-radius:0}.tmb-shop-archive__brand-story-content{font-size:14px}}
@media(prefers-reduced-motion:reduce){.tmb-shop-archive__brand-story-arrow{transition:none}}}
