/* Generated by tools/build-assets.js. */
/* source: premium-categories-564.css */
/* TEVCO 5.6.4 — Premium categories hard isolation / cache-safe hotfix */
body.home .tevco-home-categories-v563{padding:56px 0 34px!important;background:linear-gradient(180deg,#f7f9fc 0%,#f1f5f9 100%)!important}
body.home .tevco-home-categories-v563 .tevco-section-head-v563{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:28px!important;margin:0 0 28px!important;flex-direction:row-reverse!important}
body.home .tevco-home-categories-v563 .tevco-categories-copy{text-align:right!important;margin-inline-start:auto!important}
body.home .tevco-home-categories-v563 .tevco-categories-copy h2{margin:0 0 10px!important;padding:0!important;color:#071f42!important;font-size:clamp(34px,3vw,54px)!important;line-height:1.08!important;font-weight:900!important;letter-spacing:-.03em!important;background:none!important}
body.home .tevco-home-categories-v563 .tevco-categories-copy h2:after{content:""!important;display:block!important;width:66px!important;height:5px!important;border-radius:99px!important;background:#e3292f!important;margin:13px 0 0 auto!important}
body.home .tevco-home-categories-v563 .tevco-categories-copy p{display:block!important;margin:0!important;max-width:720px!important;color:#6c7889!important;font-size:17px!important;line-height:1.85!important}
body.home .tevco-home-categories-v563 .tevco-categories-all{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:58px!important;padding:0 24px!important;border:1.5px solid #ccd6e3!important;border-radius:18px!important;background:#fff!important;color:#071f42!important;font-size:16px!important;font-weight:850!important;text-decoration:none!important;box-shadow:0 8px 24px rgba(7,31,66,.05)!important}
body.home .tevco-home-categories-v563 .tevco-categories-all b{font-size:26px!important;line-height:1!important;color:#e3292f!important}
body.home .tevco-home-categories-v563 .tevco-category-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;overflow:visible!important;padding:0!important;margin:0!important;scroll-snap-type:none!important}
body.home .tevco-home-categories-v563 .tevco-category-card{position:relative!important;display:block!important;min-width:0!important;max-width:none!important;min-height:610px!important;height:auto!important;padding:0!important;margin:0!important;overflow:hidden!important;border:1px solid rgba(7,31,66,.09)!important;border-radius:30px!important;background:#fff!important;color:#071f42!important;text-align:right!important;text-decoration:none!important;box-shadow:0 16px 42px rgba(7,31,66,.08)!important;transform:none!important;transition:.25s ease!important}
body.home .tevco-home-categories-v563 .tevco-category-card:hover{transform:translateY(-6px)!important;box-shadow:0 22px 54px rgba(7,31,66,.14)!important}
body.home .tevco-home-categories-v563 .tevco-category-media{position:relative!important;display:block!important;width:100%!important;height:370px!important;margin:0!important;padding:0!important;overflow:hidden!important;border-radius:30px 30px 0 0!important;background:#e8edf3!important}
body.home .tevco-home-categories-v563 .tevco-category-media img{display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:center!important;transform:none!important;transition:transform .4s ease!important}
body.home .tevco-home-categories-v563 .tevco-category-card:hover .tevco-category-media img{transform:scale(1.035)!important}
body.home .tevco-home-categories-v563 .tevco-category-panel{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;min-height:260px!important;margin:-36px 17px 17px!important;padding:22px 22px 20px!important;border:1px solid rgba(7,31,66,.06)!important;border-radius:25px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 12px 28px rgba(7,31,66,.08)!important;color:#071f42!important;text-align:right!important}
body.home .tevco-home-categories-v563 .tevco-category-icon{display:grid!important;place-items:center!important;flex:0 0 64px!important;width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important;margin:-37px 0 3px auto!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(227,41,47,.13)!important;border-radius:999px!important;background:#fff!important;color:#e3292f!important;box-shadow:0 10px 24px rgba(7,31,66,.1)!important}
body.home .tevco-home-categories-v563 .tevco-category-icon svg{display:block!important;flex:none!important;width:30px!important;height:30px!important;max-width:30px!important;max-height:30px!important;min-width:30px!important;min-height:30px!important}
body.home .tevco-home-categories-v563 .tevco-category-overline{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;margin:0!important;padding:0!important;color:#778396!important;font-size:13px!important;font-weight:700!important;background:none!important}
body.home .tevco-home-categories-v563 .tevco-category-overline b{color:#e3292f!important;font-size:20px!important;line-height:1!important}
body.home .tevco-home-categories-v563 .tevco-category-panel>strong{display:block!important;margin:1px 0 0!important;padding:0!important;min-height:0!important;background:none!important;color:#071f42!important;font-size:25px!important;font-weight:900!important;line-height:1.35!important;text-shadow:none!important}
body.home .tevco-home-categories-v563 .tevco-category-desc{display:block!important;min-height:68px!important;margin:0!important;padding:0!important;color:#687588!important;font-size:15px!important;line-height:1.7!important}
body.home .tevco-home-categories-v563 .tevco-category-link{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;min-height:54px!important;margin:auto 0 0!important;padding:0 16px!important;border:1.5px solid #d9e1eb!important;border-radius:999px!important;background:#fff!important;color:#071f42!important;font-size:16px!important;font-weight:900!important}
body.home .tevco-home-categories-v563 .tevco-category-link b{color:#e3292f!important;font-size:23px!important;line-height:1!important}
@media(max-width:1100px){body.home .tevco-home-categories-v563 .tevco-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){
 body.home .tevco-home-categories-v563{padding:34px 0 24px!important}
 body.home .tevco-home-categories-v563 .tevco-section-head-v563{flex-direction:column!important;align-items:stretch!important;gap:14px!important}
 body.home .tevco-home-categories-v563 .tevco-categories-copy h2{font-size:34px!important}
 body.home .tevco-home-categories-v563 .tevco-categories-copy p{font-size:14px!important}
 body.home .tevco-home-categories-v563 .tevco-categories-all{align-self:flex-start!important;min-height:48px!important;padding:0 17px!important;font-size:14px!important}
 body.home .tevco-home-categories-v563 .tevco-category-grid{display:flex!important;grid-template-columns:none!important;gap:12px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding:2px 2px 12px!important}
 body.home .tevco-home-categories-v563 .tevco-category-card{flex:0 0 84vw!important;min-width:84vw!important;min-height:535px!important;scroll-snap-align:start!important;border-radius:24px!important}
 body.home .tevco-home-categories-v563 .tevco-category-media{height:305px!important;border-radius:24px 24px 0 0!important}
 body.home .tevco-home-categories-v563 .tevco-category-panel{min-height:238px!important;margin:-30px 12px 12px!important;padding:18px!important;border-radius:20px!important}
 body.home .tevco-home-categories-v563 .tevco-category-panel>strong{font-size:22px!important}
 body.home .tevco-home-categories-v563 .tevco-category-desc{min-height:60px!important;font-size:14px!important}
}
/* source: banner-fit-591.css */
/**
 * TEVCO 5.9.1 — Responsive Banner Engine
 * Contract: every artwork is shown completely. No crop, zoom or stretch.
 */
body.home .tevco-banner-picture,
body.home .tevco-banner-picture img{display:block!important;width:100%!important;height:100%!important;max-width:none!important}
body.home .tevco-banner-picture{position:absolute!important;inset:0!important;overflow:hidden!important;background:#071f42!important}
body.home .tevco-banner-picture img{position:absolute!important;inset:0!important;object-fit:contain!important;object-position:center center!important;transform:none!important;scale:1!important;background:#071f42!important}

/* Hero: 1920×800 on desktop. The frame follows the artwork ratio rather than cropping it. */
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-slides{
  height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:12/5!important;background:#071f42!important
}
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-slide,
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-v55-slide-layout,
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-v55-slide-media,
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-v55-baked-media{height:100%!important;min-height:0!important}
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-slide-image img,
body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-v55-baked-media img{object-fit:contain!important;object-position:center!important;transform:none!important}

/* Promo cards: 1200×650 desktop, separate 900×1100 mobile art. */
body.home .tevco-home-promos .tevco-promo,
body.home .tevco-home-promos .tevco-promo:first-child{aspect-ratio:24/13!important;min-height:0!important;background:#071f42!important}
body.home .tevco-home-promos .tevco-promo picture img{object-fit:contain!important;object-position:center!important}

/* Wide screen campaign keeps its authored 1920×620 artwork intact. */
body.home .tevco-v260-wide-campaign{height:auto!important;min-height:0!important;aspect-ratio:96/31!important;background:#071f42!important;overflow:hidden!important}
body.home .tevco-v260-wide-campaign picture img{object-fit:contain!important;object-position:center!important}

/* Portrait campaigns are authored for 900×1100. */
body.home .tevco-v260-side-campaign,
body.home .tevco-weekly-campaign{height:auto!important;min-height:0!important;aspect-ratio:9/11!important;background:#071f42!important;overflow:hidden!important}
body.home .tevco-v260-side-campaign picture img,
body.home .tevco-weekly-campaign picture img{object-fit:contain!important;object-position:center!important}

/* Category campaigns: 1200×900 desktop; portrait mobile art below. */
body.home .tevco-v260-triple-campaigns>a{height:auto!important;min-height:0!important;aspect-ratio:4/3!important;background:#071f42!important;overflow:hidden!important}
body.home .tevco-v260-triple-campaigns picture img{object-fit:contain!important;object-position:center!important}

/* Installation card is a portrait placement: use the portrait artwork completely. */
body.home .tevco-install-card{height:auto!important;min-height:0!important;aspect-ratio:9/11!important;background:#071f42!important}
body.home .tevco-install-card .tevco-install-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
body.home .tevco-install-card .tevco-install-media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;object-position:center!important;transform:none!important;background:#071f42!important}

/* Phones + portrait tablets use the independent portrait artwork and portrait canvas. */
@media (max-width:760px), (max-width:1024px) and (orientation:portrait){
  body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-slides{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:9/11!important}
  body.home.tevco-storefront-550 .tevco-home-hero-v3 .tevco-slide-image img{object-fit:contain!important;object-position:center!important}
  body.home .tevco-home-promos.mobile-carousel .tevco-promo,
  body.home .tevco-home-promos.mobile-stack .tevco-promo,
  body.home .tevco-home-promos .tevco-promo{height:auto!important;min-height:0!important;aspect-ratio:9/11!important}
  body.home .tevco-v260-wide-campaign{height:auto!important;min-height:0!important;aspect-ratio:9/11!important}
  body.home .tevco-v260-triple-campaigns>a{height:auto!important;min-height:0!important;aspect-ratio:9/11!important}
}

/* When a dedicated mobile image is still missing, never crop the desktop image.
   Modern browsers also keep the desktop aspect ratio to avoid a tall empty canvas. */
@supports selector(.x:has(.y)){
  @media (max-width:760px), (max-width:1024px) and (orientation:portrait){
    body.home .tevco-home-promos .tevco-promo:has(.tevco-banner-picture.no-mobile-art){aspect-ratio:24/13!important}
    body.home .tevco-v260-wide-campaign:has(.tevco-banner-picture.no-mobile-art){aspect-ratio:96/31!important}
    body.home .tevco-v260-triple-campaigns>a:has(.tevco-banner-picture.no-mobile-art){aspect-ratio:4/3!important}
  }
}
/* source: storefront-priority-5104.css */
/**
 * TEVCO 5.10.4 — Storefront Visual & Responsive Priority
 * Priority: clear complete artwork, predictable section rhythm, no desktop/mobile artwork mix-up.
 */

/* Keep the homepage compact and consistent across large screens. */
body.home .tevco-section,
body.home .tevco-v260-section{padding-block:46px!important}
body.home .tevco-section-head,
body.home .tevco-v260-section-head{margin-bottom:20px!important}
body.home .tevco-container{width:min(1380px,calc(100% - 36px))!important}

/* AC category cards: product/category artwork is never visually chopped. */
body.home .tevco-ac-layout.has-installation{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;direction:rtl!important}
body.home .tevco-ac-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important}
body.home .tevco-ac-card{min-height:315px!important}
body.home .tevco-ac-media{height:205px!important;padding:10px!important;background:#f7f9fc!important}
body.home .tevco-ac-media img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}

/* Installation campaign: desktop and mobile are independent compositions.
   The image itself defines the height, so there is no crop, forced zoom or giant portrait art on desktop. */
body.home .tevco-install-card{display:block!important;position:relative!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;border-radius:18px!important;background:#071f42!important}
body.home .tevco-install-card .tevco-install-responsive-picture{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;overflow:hidden!important;background:#071f42!important}
body.home .tevco-install-card .tevco-install-responsive-picture img{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;background:#071f42!important}
body.home .tevco-install-card .tevco-install-overlay{z-index:1!important;background:linear-gradient(90deg,rgba(3,18,39,.06) 0,rgba(3,18,39,.22) 50%,rgba(3,18,39,.88) 100%)!important}
body.home .tevco-install-card .tevco-install-copy{z-index:2!important;right:clamp(20px,4vw,54px)!important;left:auto!important;bottom:50%!important;transform:translateY(50%)!important;max-width:430px!important}
body.home .tevco-install-card .tevco-install-copy strong{font-size:clamp(24px,2.4vw,38px)!important;line-height:1.2!important}
body.home .tevco-install-card .tevco-install-copy em{font-size:13px!important;line-height:1.85!important}
body.home .tevco-install-card .tevco-install-copy b{min-height:42px!important;align-items:center!important;padding:10px 16px!important}

/* Product rows: let products occupy the visual space instead of looking miniature. */
body.home .tevco-v260-product-rail .woocommerce ul.products{gap:14px!important}
body.home .tevco-v260-product-rail .woocommerce ul.products li.product a img{height:245px!important;padding:12px!important;object-fit:contain!important}
body.home .tevco-v260-product-rail .woocommerce-loop-product__title{font-size:13px!important;line-height:1.7!important}
body.home .tevco-v260-product-rail .price{font-size:18px!important}

/* Medium layouts: maintain four useful cards where there is enough room, then 2-up. */
@media (max-width:1100px){
 body.home .tevco-container{width:min(100% - 28px,980px)!important}
 body.home .tevco-ac-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.home .tevco-ac-card{min-height:300px!important}
 body.home .tevco-ac-media{height:200px!important}
}

/* Portrait tablet and mobile: use the dedicated portrait installation artwork, complete and uncropped. */
@media (max-width:760px), (max-width:1024px) and (orientation:portrait){
 body.home .tevco-section,
 body.home .tevco-v260-section{padding-block:34px!important}
 body.home .tevco-container{width:calc(100% - 20px)!important}
 body.home .tevco-ac-grid{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;gap:10px!important;scroll-snap-type:x mandatory!important;padding-bottom:7px!important}
 body.home .tevco-ac-card{min-width:min(74vw,270px)!important;min-height:286px!important;scroll-snap-align:start!important}
 body.home .tevco-ac-media{height:185px!important}
 body.home .tevco-install-card .tevco-install-overlay{background:linear-gradient(0deg,rgba(3,18,39,.94) 0,rgba(3,18,39,.34) 42%,rgba(3,18,39,.04) 72%)!important}
 body.home .tevco-install-card .tevco-install-copy{right:20px!important;left:20px!important;bottom:24px!important;transform:none!important;max-width:none!important}
 body.home .tevco-install-card .tevco-install-copy strong{font-size:26px!important}
 body.home .tevco-install-card .tevco-install-copy em{font-size:12px!important}
 body.home .tevco-v260-product-rail .woocommerce ul.products li.product a img{height:215px!important}
}
/* source: storefront-final-5108.css */
/**
 * TEVCO 5.10.8 — Final Storefront Polish & Performance
 * Final homepage authority: tighter rhythm, stronger retail hierarchy, consistent cards,
 * logo-ready brand rail, lightweight after-sales cards and below-fold paint deferral.
 */

/* ---------- Global homepage rhythm ---------- */
body.home{
  --tv5108-navy:#071f42;
  --tv5108-red:#e3292f;
  --tv5108-ink:#10243f;
  --tv5108-muted:#6d7b8e;
  --tv5108-line:#e3eaf2;
  --tv5108-soft:#f6f8fb;
  --tv5108-radius:16px;
  --tv5108-shadow:0 8px 26px rgba(7,31,66,.055);
}
body.home .tevco-home-builder-section{margin:0!important}
body.home .tevco-section,
body.home .tevco-v260-section{padding-block:38px!important}
body.home .tevco-home-builder-key-hero{padding-top:0!important}
body.home .tevco-section-head,
body.home .tevco-v260-section-head,
body.home .tevco-deal-head{margin-bottom:16px!important}
body.home .tevco-section-head h2,
body.home .tevco-v260-section-head h2,
body.home .tevco-deal-head h2{font-size:clamp(24px,2vw,32px)!important;line-height:1.25!important;letter-spacing:-.02em!important;color:var(--tv5108-ink)!important}
body.home .tevco-section-head p,
body.home .tevco-v260-section-head p,
body.home .tevco-deal-head p{max-width:720px!important;margin-top:5px!important;font-size:12.5px!important;line-height:1.75!important;color:var(--tv5108-muted)!important}
body.home .tevco-v260-section-head>div>span,
body.home .tevco-section-kicker{font-size:10px!important;font-weight:900!important;color:var(--tv5108-red)!important;letter-spacing:.01em!important}
body.home .tevco-v260-section-head>a,
body.home .tevco-section-head>a,
body.home .tevco-deal-head>a{min-height:36px!important;padding:8px 12px!important;border-radius:9px!important;font-size:10.5px!important;font-weight:850!important}

/* ---------- Header: denser, clearer, more premium ---------- */
body.home.tevco-storefront-550 .tevco-header-v55{border-bottom:1px solid #eef2f6!important;box-shadow:0 5px 20px rgba(7,31,66,.055)!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-header-main{min-height:78px!important;padding-block:9px!important;gap:18px!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-logo img{width:168px!important;max-width:168px!important;height:54px!important;max-height:54px!important;object-fit:contain!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap form{height:48px!important;min-height:48px!important;border-radius:11px!important;background:#f8fafc!important;border-color:#dbe4ee!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap input[type=search]{height:46px!important;font-size:12.5px!important;font-weight:600!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap button{height:48px!important;width:54px!important;min-width:54px!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-head-action{font-weight:750!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-nav-row{min-height:44px!important}
body.home.tevco-storefront-550 .tevco-header-v55 .tevco-menu>li>a{font-size:11.5px!important;font-weight:800!important}

/* ---------- Product rails: larger product, shorter card ---------- */
body.home .tevco-v260-product-rail .woocommerce ul.products,
body.home .tevco-products-section .woocommerce ul.products{gap:12px!important;align-items:stretch!important}
body.home .tevco-v260-product-rail .woocommerce ul.products li.product,
body.home .tevco-products-section .woocommerce ul.products li.product{
  min-height:390px!important;
  padding:10px!important;
  border:1px solid var(--tv5108-line)!important;
  border-radius:14px!important;
  box-shadow:0 5px 18px rgba(7,31,66,.04)!important;
  contain:layout paint!important;
}
body.home .tevco-v260-product-rail .woocommerce ul.products li.product:hover,
body.home .tevco-products-section .woocommerce ul.products li.product:hover{transform:translateY(-3px)!important;box-shadow:var(--tv5108-shadow)!important;border-color:#d3deea!important}
body.home .tevco-v260-product-rail .woocommerce ul.products li.product a img,
body.home .tevco-products-section .woocommerce ul.products li.product a img{
  height:218px!important;
  padding:4px!important;
  margin-bottom:8px!important;
  border-radius:10px!important;
  background:#fff!important;
  object-fit:contain!important;
  object-position:center!important;
}
body.home .tevco-v260-product-rail .woocommerce-loop-product__title,
body.home .tevco-products-section .woocommerce-loop-product__title{
  min-height:44px!important;
  margin:2px 0 5px!important;
  padding-inline:2px!important;
  font-size:12.5px!important;
  line-height:1.72!important;
  font-weight:800!important;
  color:var(--tv5108-ink)!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body.home .tevco-v260-product-rail .price,
body.home .tevco-products-section .price{margin:3px 0 7px!important;padding-inline:2px!important;font-size:17px!important;line-height:1.25!important;font-weight:950!important;color:var(--tv5108-navy)!important}
body.home .tevco-v260-product-rail .price ins,
body.home .tevco-products-section .price ins{font-size:17px!important;font-weight:950!important;color:var(--tv5108-navy)!important;text-decoration:none!important}
body.home .tevco-v260-product-rail .price del,
body.home .tevco-products-section .price del{font-size:10px!important;font-weight:650!important;color:#99a4b2!important}
body.home .tevco-v260-product-rail .button,
body.home .tevco-products-section .button{min-height:38px!important;margin:8px 0 0!important;border-radius:8px!important;font-size:10.5px!important;font-weight:900!important}
body.home .tevco-card-brand{font-size:8.5px!important;font-weight:900!important;color:var(--tv5108-red)!important}

/* ---------- Brand rail: logo-first, clean text fallback ---------- */
body.home .tevco-brands-section{background:#fff!important}
body.home .tevco-brand-carousel{position:relative!important}
body.home .tevco-brands{
  display:flex!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  gap:9px!important;
  padding:10px!important;
  border:1px solid var(--tv5108-line)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 4px 16px rgba(7,31,66,.028)!important;
}
body.home .tevco-brands a{
  flex:0 0 calc((100% - 63px)/8)!important;
  min-width:112px!important;
  scroll-snap-align:start!important;
  min-height:68px!important;
  padding:8px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  border:1px solid #edf1f5!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--tv5108-navy)!important;
  box-shadow:none!important;
}
body.home .tevco-brands::-webkit-scrollbar{display:none!important}
body.home .tevco-brands a:hover{transform:translateY(-2px)!important;border-color:#d1dce8!important;background:#fbfcfe!important}
body.home .tevco-brands a img{display:block!important;width:100%!important;max-width:104px!important;height:32px!important;max-height:32px!important;margin:0!important;padding:0!important;object-fit:contain!important;filter:none!important}
body.home .tevco-brands a>span{display:block!important;max-width:100%!important;font-size:12px!important;font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.home .tevco-brands a small{font-size:8px!important;color:#8a97a7!important;font-weight:700!important}
body.home .tevco-brand-arrow{width:32px!important;height:32px!important;border-radius:50%!important;box-shadow:0 5px 16px rgba(7,31,66,.12)!important}

/* ---------- After-sales: compact service row, not another heavy block ---------- */
body.home .tevco-home-after-sales{background:#f7f9fc!important}
body.home .tevco-home-after-sales .tevco-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
body.home .tevco-home-after-sales .tevco-service-grid article{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:11px!important;
  row-gap:2px!important;
  align-items:center!important;
  min-height:118px!important;
  padding:14px!important;
  border:1px solid var(--tv5108-line)!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 3px 14px rgba(7,31,66,.03)!important;
}
body.home .tevco-home-after-sales .tevco-service-grid article i{grid-row:1/3!important;width:40px!important;height:40px!important;margin:0!important;border-radius:11px!important;background:#eef4fa!important;color:var(--tv5108-navy)!important}
body.home .tevco-home-after-sales .tevco-service-grid article i svg{width:21px!important;height:21px!important;max-width:21px!important;max-height:21px!important}
body.home .tevco-home-after-sales .tevco-service-grid article>div{min-width:0!important}
body.home .tevco-home-after-sales .tevco-service-grid h3{margin:0 0 3px!important;font-size:13px!important;line-height:1.45!important;color:var(--tv5108-ink)!important}
body.home .tevco-home-after-sales .tevco-service-grid p{margin:0!important;font-size:9.5px!important;line-height:1.65!important;color:var(--tv5108-muted)!important}
body.home .tevco-home-after-sales .tevco-service-grid a{grid-column:2!important;margin:4px 0 0!important;padding:0!important;font-size:9px!important;line-height:1.4!important;font-weight:900!important;color:var(--tv5108-red)!important}

/* ---------- Campaigns/banners share one visual language ---------- */
body.home .tevco-promo,
body.home .tevco-v260-wide-campaign,
body.home .tevco-v260-triple-campaigns>a,
body.home .tevco-screen-campaign,
body.home .tevco-install-card{border-radius:15px!important;box-shadow:0 7px 22px rgba(7,31,66,.05)!important}
body.home .tevco-promo a,
body.home .tevco-v260-wide-campaign a,
body.home .tevco-category-campaign a,
body.home .tevco-install-card a{border-radius:8px!important;font-weight:900!important}

/* ---------- Below-the-fold rendering ---------- */
@supports (content-visibility:auto){
  body.home .tevco-home-builder-key-best_sellers,
  body.home .tevco-home-builder-key-promos,
  body.home .tevco-home-builder-key-category_campaigns,
  body.home .tevco-home-builder-key-brands,
  body.home .tevco-home-builder-key-after_sales,
  body.home .tevco-home-builder-key-growth_landing{
    content-visibility:auto;
    contain-intrinsic-size:auto 520px;
  }
}

/* Motion stays subtle and disappears for reduced-motion users. */
@media (prefers-reduced-motion:reduce){
 body.home .tevco-brands a,
 body.home .tevco-v260-product-rail .woocommerce ul.products li.product,
 body.home .tevco-products-section .woocommerce ul.products li.product{transition:none!important;transform:none!important}
}

/* ---------- Tablet ---------- */
@media (max-width:1100px){
 body.home .tevco-section,body.home .tevco-v260-section{padding-block:34px!important}
 body.home .tevco-brands a{flex-basis:calc((100% - 45px)/6)!important}
 body.home .tevco-home-after-sales .tevco-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.home .tevco-v260-product-rail .woocommerce ul.products li.product a img,
 body.home .tevco-products-section .woocommerce ul.products li.product a img{height:205px!important}
}

/* ---------- Mobile ---------- */
@media (max-width:760px){
 body.home .tevco-section,body.home .tevco-v260-section{padding-block:28px!important}
 body.home .tevco-section-head,body.home .tevco-v260-section-head,body.home .tevco-deal-head{margin-bottom:13px!important}
 body.home .tevco-section-head h2,body.home .tevco-v260-section-head h2,body.home .tevco-deal-head h2{font-size:21px!important}
 body.home .tevco-section-head p,body.home .tevco-v260-section-head p,body.home .tevco-deal-head p{font-size:11px!important;line-height:1.65!important}
 body.home.tevco-storefront-550 .tevco-header-v55 .tevco-header-main{padding-block:7px!important}
 body.home.tevco-storefront-550 .tevco-header-v55 .tevco-logo img{width:126px!important;max-width:126px!important;height:44px!important;max-height:44px!important}
 body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap form{height:44px!important;min-height:44px!important}
 body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap input[type=search]{height:42px!important;font-size:11.5px!important}
 body.home.tevco-storefront-550 .tevco-header-v55 .tevco-search-wrap button{height:44px!important;width:48px!important;min-width:48px!important}
 body.home .tevco-v260-product-rail .woocommerce ul.products li.product,
 body.home .tevco-products-section .woocommerce ul.products li.product{min-width:192px!important;width:192px!important;min-height:354px!important;padding:8px!important}
 body.home .tevco-v260-product-rail .woocommerce ul.products li.product a img,
 body.home .tevco-products-section .woocommerce ul.products li.product a img{height:174px!important;padding:2px!important}
 body.home .tevco-v260-product-rail .woocommerce-loop-product__title,
 body.home .tevco-products-section .woocommerce-loop-product__title{min-height:41px!important;font-size:11.5px!important}
 body.home .tevco-v260-product-rail .price,
 body.home .tevco-products-section .price,
 body.home .tevco-v260-product-rail .price ins,
 body.home .tevco-products-section .price ins{font-size:15px!important}
 body.home .tevco-brands{display:flex!important;overflow-x:auto!important;gap:8px!important;padding:8px!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important}
 body.home .tevco-brands::-webkit-scrollbar{display:none!important}
 body.home .tevco-brands a{min-width:104px!important;width:104px!important;min-height:62px!important;scroll-snap-align:start!important}
 body.home .tevco-brands a img{max-width:88px!important;height:28px!important;max-height:28px!important}
 body.home .tevco-home-after-sales .tevco-service-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}
 body.home .tevco-home-after-sales .tevco-service-grid article{grid-template-columns:34px minmax(0,1fr)!important;min-height:104px!important;padding:11px!important;column-gap:8px!important}
 body.home .tevco-home-after-sales .tevco-service-grid article i{width:34px!important;height:34px!important;border-radius:9px!important}
 body.home .tevco-home-after-sales .tevco-service-grid article i svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}
 body.home .tevco-home-after-sales .tevco-service-grid h3{font-size:11.5px!important}
 body.home .tevco-home-after-sales .tevco-service-grid p{font-size:8.5px!important}
 body.home .tevco-home-after-sales .tevco-service-grid a{font-size:8.5px!important}
}

@media (max-width:420px){
 body.home .tevco-home-after-sales .tevco-service-grid{grid-template-columns:1fr!important}
 body.home .tevco-home-after-sales .tevco-service-grid article{min-height:92px!important}
}
/* source: story-campaigns-5110.css */
/* TEVCO 5.11.0 — unified responsive campaign cards. Images contain no copy. */
body.home .tevco-home-story-section{
  padding-block:clamp(28px,3.2vw,48px)!important;
  background:#fff!important;
  overflow:hidden;
}
body.home .tevco-home-story-section + .tevco-home-story-section{padding-top:18px!important}
body.home .tevco-v260-category-campaigns:before{display:none!important;content:none!important}
body.home .tevco-story-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 clamp(18px,2vw,26px)!important}
body.home .tevco-story-heading>div{max-width:820px}
body.home .tevco-story-heading span{display:block;margin-bottom:5px;color:#e3292f;font-size:11px;line-height:1.3;font-weight:900;letter-spacing:.02em}
body.home .tevco-story-heading h2{margin:0;color:#071f42;font-size:clamp(25px,2.15vw,36px);line-height:1.18;font-weight:900;letter-spacing:-.025em}
body.home .tevco-story-heading p{max-width:720px;margin:8px 0 0;color:#68778d;font-size:13px;line-height:1.75}

body.home .tevco-story-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(14px,1.35vw,20px)!important;
  overflow:visible!important;
  padding:0!important;
}
body.home .tevco-story-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  aspect-ratio:8/3!important;
  overflow:hidden!important;
  border:1px solid rgba(7,31,66,.10)!important;
  border-radius:20px!important;
  background:#04142b!important;
  box-shadow:0 12px 32px rgba(7,31,66,.09)!important;
  isolation:isolate;
  text-decoration:none!important;
  color:#fff!important;
  transform:translateZ(0);
}
body.home .tevco-story-media,
body.home .tevco-story-media picture,
body.home .tevco-story-media img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
}
body.home .tevco-story-media img{
  object-fit:contain!important;
  object-position:center!important;
  background:#04142b!important;
  transform:none!important;
}
body.home .tevco-story-veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(3,15,34,.04) 0%,rgba(3,15,34,.12) 42%,rgba(3,15,34,.82) 76%,rgba(3,15,34,.95) 100%);
}
body.home .tevco-story-copy{
  position:absolute!important;
  z-index:2!important;
  top:50%!important;
  right:clamp(20px,2.5vw,38px)!important;
  left:auto!important;
  bottom:auto!important;
  width:min(43%,430px)!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  text-align:right!important;
  color:#fff!important;
}
body.home .tevco-story-eyebrow{display:inline-flex!important;align-items:center;min-height:26px;padding:4px 9px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.10);color:#fff!important;font-size:9px!important;line-height:1.2;font-weight:900!important;backdrop-filter:blur(6px)}
body.home .tevco-story-copy>strong{display:block;margin:8px 0 4px;color:#fff!important;font-size:clamp(19px,1.45vw,27px)!important;line-height:1.22;font-weight:900!important;letter-spacing:-.015em}
body.home .tevco-story-subtitle{display:block;max-width:36ch;margin:0 0 12px;color:rgba(255,255,255,.86)!important;font-size:clamp(10.5px,.82vw,13px)!important;line-height:1.65;font-weight:500}
body.home .tevco-story-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.88);border-radius:10px;background:#fff;color:#071f42!important;font-size:11px!important;font-weight:900!important;box-shadow:0 6px 18px rgba(0,0,0,.10)}
body.home .tevco-story-card.tone-red .tevco-story-cta{border-color:#e3292f;background:#e3292f;color:#fff!important}
body.home .tevco-story-cta i{font-style:normal;font-size:15px;transition:transform .18s ease}
@media (hover:hover){
 body.home .tevco-story-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
 body.home .tevco-story-card:hover{transform:translateY(-3px);border-color:rgba(227,41,47,.30)!important;box-shadow:0 18px 42px rgba(7,31,66,.14)!important}
 body.home .tevco-story-card:hover .tevco-story-cta i{transform:translateX(-3px)}
}

/* Laptop and landscape tablets keep the complete horizontal artwork. */
@media (max-width:1180px) and (orientation:landscape){
 body.home .tevco-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
 body.home .tevco-story-copy{right:20px!important;width:47%!important}
 body.home .tevco-story-copy>strong{font-size:20px!important}
 body.home .tevco-story-subtitle{font-size:10.5px!important;margin-bottom:9px!important}
}

/* Portrait tablets use the authored 900x1100 artwork, never a crop of desktop. */
@media (max-width:1024px) and (orientation:portrait){
 body.home .tevco-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
 body.home .tevco-story-card{aspect-ratio:9/11!important;border-radius:18px!important}
 body.home .tevco-story-veil{background:linear-gradient(180deg,rgba(3,15,34,0) 12%,rgba(3,15,34,.10) 29%,rgba(3,15,34,.88) 48%,rgba(3,15,34,.98) 100%)}
 body.home .tevco-story-copy{top:43%!important;right:18px!important;left:18px!important;width:auto!important;transform:none!important}
 body.home .tevco-story-copy>strong{font-size:clamp(19px,2.6vw,25px)!important}
 body.home .tevco-story-subtitle{font-size:12px!important}
}

/* iPhone + Android: one touch card per viewport, with independent mobile art. */
@media (max-width:767px){
 body.home .tevco-home-story-section{padding-block:28px!important}
 body.home .tevco-story-heading{margin-bottom:16px!important;padding-inline:2px}
 body.home .tevco-story-heading h2{font-size:26px!important}
 body.home .tevco-story-heading p{font-size:12px!important;line-height:1.65}
 body.home .tevco-story-grid{
   display:flex!important;
   grid-template-columns:none!important;
   gap:12px!important;
   overflow-x:auto!important;
   overscroll-behavior-inline:contain;
   scroll-snap-type:x mandatory!important;
   padding:2px 2px 10px!important;
   scrollbar-width:none!important;
   -webkit-overflow-scrolling:touch;
 }
 body.home .tevco-story-grid::-webkit-scrollbar{display:none!important}
 body.home .tevco-story-card{
   flex:0 0 min(88vw,420px)!important;
   width:min(88vw,420px)!important;
   aspect-ratio:9/11!important;
   border-radius:17px!important;
   scroll-snap-align:start!important;
   box-shadow:0 9px 24px rgba(7,31,66,.10)!important;
 }
 body.home .tevco-story-veil{background:linear-gradient(180deg,rgba(3,15,34,0) 10%,rgba(3,15,34,.08) 28%,rgba(3,15,34,.88) 47%,rgba(3,15,34,.985) 100%)}
 body.home .tevco-story-copy{top:42%!important;right:17px!important;left:17px!important;width:auto!important;transform:none!important}
 body.home .tevco-story-eyebrow{min-height:24px;font-size:8.5px!important}
 body.home .tevco-story-copy>strong{font-size:22px!important;margin-top:8px!important}
 body.home .tevco-story-subtitle{max-width:32ch;font-size:11.5px!important;line-height:1.6;margin-bottom:12px!important}
 body.home .tevco-story-cta{min-height:44px;padding-inline:15px;font-size:11px!important}
 body.home .tevco-home-promos.mobile-stack .tevco-story-grid{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;padding-bottom:0!important}
 body.home .tevco-home-promos.mobile-stack .tevco-story-card{width:100%!important;max-width:none!important;flex:none!important}
}
@media (max-width:390px){
 body.home .tevco-story-card{flex-basis:90vw!important;width:90vw!important}
 body.home .tevco-story-copy{top:40.5%!important;right:15px!important;left:15px!important}
 body.home .tevco-story-copy>strong{font-size:20px!important}
 body.home .tevco-story-subtitle{font-size:10.8px!important}
}
@media (prefers-reduced-motion:reduce){body.home .tevco-story-card,body.home .tevco-story-cta i{transition:none!important}}
/* source: lighthouse-5113.css */
/** TEVCO 5.11.3 — Lighthouse / accessibility finish */
:root{--tevco-muted-accessible:#52657d}
body.home .tevco-section p,
body.home .tevco-category-desc,
body.home .tevco-section-head p,
body.home .tevco-story-subtitle,
body.home .tevco-v55-trustbar small{color:var(--tevco-muted-accessible)}

/* Touch targets: preserve visual compactness while guaranteeing a usable hit area. */
body.home :is(.tevco-arrow,.tevco-slider-pause,.tevco-brand-arrow,.tevco-dots button),
body.home :is(a,button).tevco-categories-all,
body.home .tevco-category-link,
body.home .tevco-story-cta{min-width:44px;min-height:44px}
body.home .tevco-dots button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent}
body.home .tevco-dots button::before{content:"";width:10px;height:10px;border-radius:999px;background:currentColor;opacity:.38}
body.home .tevco-dots button.is-active::before{opacity:1}

/* Make focus states visible on keyboard navigation without changing the design. */
body.home :is(a,button):focus-visible{outline:3px solid #e3292f;outline-offset:3px}

/* Avoid tiny carousel controls on phones/tablets. */
@media (max-width:1024px){
  body.home :is(.tevco-arrow,.tevco-brand-arrow,.tevco-slider-pause){min-width:44px;min-height:44px}
}
