/* TruSupply — brand system. Self-hosted fonts, absolute plugin URLs (LiteSpeed-safe). */
@font-face{font-family:'TB Display';src:url('/wp-content/plugins/storefront-core/assets/fonts/Oswald-Bold.ttf') format('truetype');font-weight:500 700;font-display:swap;}
@font-face{font-family:'TB Sans';src:url('/wp-content/plugins/storefront-core/assets/fonts/Inter-Regular.ttf') format('truetype');font-weight:300 600;font-display:swap;}

:root{
  --tb-ink:#1c365c; --tb-ink-soft:#4a5b74; --tb-navy:#1c365c; --tb-navy-dk:#12233f;
  --tb-amber:#df9b28; --tb-amber-dk:#c4841c; --tb-cream:#eef2f6; --tb-paper:#fbfcfd;
  --tb-line:#dce3ea; --tb-sand:#e7edf3;
  --tb-display:'TB Display','Oswald',system-ui,sans-serif;
  --tb-sans:'TB Sans','Inter',system-ui,-apple-system,sans-serif;
}
html body{background:var(--tb-paper);color:var(--tb-ink);font-family:var(--tb-sans);font-size:16px;line-height:1.65;}
h1,h2,h3,h4,.tb-serif{font-family:var(--tb-display);font-weight:700;letter-spacing:.01em;color:var(--tb-ink);line-height:1.08;text-transform:uppercase;}
a{color:var(--tb-navy);} .tb-wrap{max-width:1240px;margin:0 auto;padding:0 1.5rem;}

/* header / nav */
.main-header-menu a,.ast-header-break-point .main-navigation a{font-family:var(--tb-sans);font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;color:var(--tb-ink)!important;font-weight:600;}
.site-header{border-bottom:1px solid var(--tb-line);} .custom-logo{max-height:52px!important;width:auto!important;}
.ast-site-header-cart .ast-cart-menu-wrap{color:var(--tb-ink);}

/* buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce a.button.alt,.woocommerce button.button.alt,.tb-btn{
  display:inline-block;background:var(--tb-navy);color:#fff!important;border:0;border-radius:3px;
  padding:.9rem 1.9rem;font-family:var(--tb-sans);font-size:.78rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;cursor:pointer;transition:background .18s;}
.woocommerce a.button:hover,.woocommerce button.button:hover,.tb-btn:hover{background:var(--tb-navy-dk);color:#fff!important;}
.tb-btn--amber{background:var(--tb-amber);color:#1c365c!important;} .tb-btn--amber:hover{background:var(--tb-amber-dk);color:#1c365c!important;}
.tb-btn--ghost{background:transparent;color:#fff!important;border:1.5px solid rgba(255,255,255,.8);}
.tb-btn--ghost:hover{background:#fff;color:var(--tb-ink)!important;}

/* hero (CSS gradient, no external image) */
.tb-hero{position:relative;min-height:560px;display:flex;align-items:center;color:#fff;overflow:hidden;
  background:radial-gradient(1200px 600px at 78% 18%,rgba(223,155,40,.18) 0%,rgba(223,155,40,0) 60%),
   linear-gradient(120deg,#12233f 0%,#1c365c 55%,#24466f 100%);}
.tb-hero::after{content:'';position:absolute;inset:0;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:46px 46px;pointer-events:none;}
.tb-hero__inner{position:relative;z-index:2;max-width:1240px;margin:0 auto;padding:5.5rem 1.5rem;width:100%;}
.tb-hero__kicker{color:var(--tb-amber);font-family:var(--tb-sans);font-size:.74rem;letter-spacing:.3em;text-transform:uppercase;margin:0 0 1.2rem;font-weight:700;}
.tb-hero__title{color:#fff;font-size:clamp(2.6rem,5.6vw,4.4rem);margin:0 0 1.3rem;max-width:18ch;}
.tb-hero__sub{color:#dfe6ee;font-family:var(--tb-sans);font-size:1.08rem;line-height:1.7;max-width:46ch;margin:0 0 2.2rem;text-transform:none;}
.tb-hero__cta{display:flex;gap:.9rem;flex-wrap:wrap;}

/* trust bar */
.tb-trust{background:var(--tb-navy);color:#eef2f6;}
.tb-trust ul{display:flex;flex-wrap:wrap;justify-content:center;gap:2.4rem;margin:0;padding:1rem 1.5rem;list-style:none;
  font-family:var(--tb-sans);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;}
.tb-trust li{opacity:.92;}

/* section scaffolding */
.tb-sec{padding:4.5rem 0;} .tb-sec--alt{background:var(--tb-cream);}
.tb-eyebrow{font-family:var(--tb-sans);font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;color:var(--tb-amber-dk);font-weight:700;margin:0 0 .7rem;}
.tb-h2{font-size:clamp(1.7rem,3.4vw,2.5rem);margin:0 0 .6rem;} .tb-lead{font-family:var(--tb-sans);color:var(--tb-ink-soft);text-transform:none;max-width:60ch;margin:0 auto;}
.tb-sec--center{text-align:center;}

/* category tiles */
.tb-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-top:2.6rem;}
.tb-cat{position:relative;display:block;aspect-ratio:4/3;border-radius:5px;overflow:hidden;background:var(--tb-sand);}
.tb-cat img{width:100%;height:100%;object-fit:cover;transition:transform .5s;} .tb-cat:hover img{transform:scale(1.06);}
.tb-cat::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,35,63,0) 40%,rgba(18,35,63,.78) 100%);}
.tb-cat span{position:absolute;left:0;right:0;bottom:1.2rem;z-index:2;text-align:center;color:#fff;font-family:var(--tb-display);
  font-size:1.1rem;text-transform:uppercase;letter-spacing:.04em;}

/* product grid polish + Astra loop belts (price/button overlap footgun) */
.woocommerce ul.products li.product{display:flex!important;flex-direction:column!important;text-align:left;background:#fff;
  border:1px solid var(--tb-line);border-radius:5px;padding:0 0 1.1rem;overflow:hidden;}
.woocommerce ul.products li.product img{border-radius:0;margin-bottom:.9rem;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--tb-display);font-size:1rem;
  text-transform:uppercase;padding:0 1rem;color:var(--tb-ink);}
.woocommerce ul.products li.product .price{color:var(--tb-navy)!important;font-family:var(--tb-sans);font-weight:700;
  padding:.2rem 1rem .6rem;position:static!important;float:none!important;transform:none!important;}
.woocommerce ul.products li.product .button,.woocommerce ul.products li.product .added_to_cart{
  position:static!important;float:none!important;transform:none!important;margin:0 1rem;}
.woocommerce ul.products li.product .ast-on-card-button,.ast-card-action-tooltip,.ast-select-options-trigger{display:none!important;}
.astra-shop-summary-wrap{display:flex;flex-direction:column;}
.woocommerce-product-gallery{opacity:1!important;}

/* story band */
.tb-story{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center;}
.tb-story img{width:100%;border-radius:6px;} .tb-story .tb-lead{margin:0;}

/* values */
.tb-vals{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:2.6rem;text-align:center;}
.tb-val h3{font-size:1.05rem;margin:.9rem 0 .5rem;} .tb-val p{font-family:var(--tb-sans);color:var(--tb-ink-soft);text-transform:none;font-size:.95rem;margin:0;}
.tb-val__i{width:54px;height:54px;margin:0 auto;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--tb-cream);color:var(--tb-navy);font-family:var(--tb-display);font-size:1.4rem;}

/* newsletter */
.tb-news{background:var(--tb-navy);color:#fff;text-align:center;padding:4rem 1.5rem;}
.tb-news h2{color:#fff;} .tb-news p{font-family:var(--tb-sans);color:#dfe6ee;text-transform:none;max-width:46ch;margin:.6rem auto 1.6rem;}

@media(max-width:1000px){.tb-cats{grid-template-columns:1fr 1fr;}}
@media(max-width:900px){.tb-vals{grid-template-columns:1fr;}.tb-story{grid-template-columns:1fr;}}
@media(max-width:560px){.tb-cats{grid-template-columns:1fr;}.tb-hero{min-height:460px;}}

/* hide Astra site-title text (logo carries the wordmark) */
.site-title,.ast-site-title-wrap .site-title{display:none!important;}
