/* Terelec storefront skin — tokens from the approved Figma design */
:root{--t-blue:#0C64BC;--t-blue-d:#17479D;--t-ink:#0F1B2D;--t-mute:#5B6B82;--t-line:#E1E6EE;--t-line2:#C9D2DE;--t-bg:#F4F6F9;--t-amber:#FFC531;--t-green:#1A8F5A;--t-r:10px}
body.terelec-sf{font-family:Inter,Arial,sans-serif;color:var(--t-ink)}
body.terelec-sf h1,body.terelec-sf h2,body.terelec-sf h3,body.terelec-sf h4,body.terelec-sf .product_title,body.terelec-sf .wd-entities-title{font-family:Inter,Arial,sans-serif;color:var(--t-ink);letter-spacing:-.01em}
/* replace WoodMart chrome */
body.terelec-sf header.whb-header,body.terelec-sf .whb-header,body.terelec-sf .wd-footer,body.terelec-sf footer.footer-container,body.terelec-sf .wd-prefooter{display:none!important}
body.terelec-sf.home .wd-page-title,body.terelec-sf.home .page-title{display:none!important}
.tsf-top *,.tsf-head *,.tsf-nav *,.tsf-home *,.tsf-foot *{box-sizing:border-box}
.tsf-top a,.tsf-head a,.tsf-nav a,.tsf-home a,.tsf-foot a{text-decoration:none}
.tsf-foot-brand img{height:auto;max-width:150px;display:block;margin-bottom:14px}
.tsf-wrap{max-width:1240px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:24px}
.tsf-i{width:18px;height:18px;flex:none;vertical-align:-4px}
/* top bar */
.tsf-top{background:var(--t-blue-d);color:#fff;font-size:13px}
.tsf-top .tsf-wrap{min-height:40px;gap:28px}
.tsf-top a{color:#fff}.tsf-top span,.tsf-top a{display:inline-flex;gap:6px;align-items:center}
.tsf-top-r{margin-left:auto}.tsf-top-r a{color:var(--t-amber);font-weight:600}
/* header */
.tsf-head{background:#fff;border-bottom:1px solid var(--t-line)}
.tsf-head .tsf-wrap{min-height:84px}
.tsf-logo img{height:42px;width:auto;display:block}
.tsf-search{flex:1;display:flex;align-items:center;border:2px solid var(--t-blue);border-radius:10px;padding:4px 4px 4px 14px;gap:10px;max-width:680px;color:var(--t-mute)}
.tsf-search input[type=search]{flex:1;border:0!important;box-shadow:none!important;height:40px;font-size:15px;padding:0;background:transparent}
.tsf-search button{background:var(--t-blue);color:#fff;border:0;border-radius:7px;height:40px;padding:0 22px;font-weight:600;cursor:pointer}
.tsf-icons{display:flex;gap:22px;margin-left:auto}
.tsf-icons a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--t-ink);position:relative}
.tsf-icons .tsf-i{width:22px;height:22px}
.tsf-cart b{position:absolute;top:-6px;right:-2px;background:var(--t-amber);color:var(--t-ink);border-radius:9px;font-size:11px;min-width:18px;height:18px;line-height:18px;text-align:center}
/* nav */
.tsf-nav{background:#fff;border-bottom:1px solid var(--t-line)}
.tsf-nav .tsf-wrap{min-height:50px;gap:30px;overflow-x:auto;white-space:nowrap}
.tsf-nav a{color:var(--t-ink);font-weight:600;font-size:14px}.tsf-nav a:hover{color:var(--t-blue)}
.tsf-nav-r{margin-left:auto;color:var(--t-blue)!important;display:inline-flex;gap:6px;align-items:center}
/* buttons */
.tsf-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--t-blue);color:#fff!important;border-radius:8px;padding:0 20px;height:46px;font-weight:600;font-size:15px;border:0;cursor:pointer;text-decoration:none}
.tsf-btn:hover{background:var(--t-blue-d)}
.tsf-btn-amber{background:var(--t-amber);color:var(--t-ink)!important}.tsf-btn-amber:hover{background:#f2b511}
.tsf-btn-ghost{background:transparent;border:1.5px solid #fff}.tsf-btn-ghost:hover{background:rgba(255,255,255,.12)}
.tsf-btn-block{width:100%;height:42px;font-size:14px}
body.terelec-sf .single_add_to_cart_button,body.terelec-sf .button.alt,body.terelec-sf .btn-color-primary{background:var(--t-blue)!important;border-radius:8px!important}
/* home */
.tsf-home{max-width:1200px;margin:0 auto;padding:28px 0 10px;display:flex;flex-direction:column;gap:44px}
.tsf-home section{margin:0}
.tsf-hero-row{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}
.tsf-hero{background:linear-gradient(135deg,var(--t-blue-d),var(--t-blue));color:#fff;border-radius:16px;padding:40px;display:flex;gap:20px;align-items:center}
.tsf-hero h1{color:#fff!important;font-size:40px;line-height:1.1;margin:10px 0 14px;font-weight:700}
.tsf-hero p{color:#dbe8f7;font-size:16px;line-height:1.6;margin:0 0 24px}
.tsf-hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.tsf-hero-art{flex:none;width:150px}
.tsf-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--t-amber)}
.tsf-eyebrow.dark{color:#8a6100}.tsf-eyebrow.blue{color:var(--t-blue)}
.tsf-side{display:flex;flex-direction:column;gap:20px}
.tsf-panel{border:1px solid var(--t-line);border-radius:14px;padding:24px;background:#fff}
.tsf-panel h2{font-size:19px;margin:8px 0 8px;font-weight:700}
.tsf-panel p{color:var(--t-mute);margin:0 0 16px}
.tsf-panel-amber{background:#FFF6DA;border-color:#F5DE8F}
.tsf-qo-row{display:flex;gap:8px;margin:10px 0}
.tsf-qo-row input{height:44px;border:1px solid var(--t-line2);border-radius:8px;padding:0 12px;flex:1;min-width:0}
.tsf-qo-row input[type=number]{flex:0 0 76px}
.tsf-qo a{font-size:13px;color:var(--t-mute)}
.tsf-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tsf-trust div{background:var(--t-bg);border-radius:12px;padding:18px 18px 18px 50px;position:relative;display:flex;flex-direction:column;gap:3px}
.tsf-trust .tsf-i{position:absolute;left:18px;top:19px;color:var(--t-blue)}
.tsf-trust b{font-size:14px}.tsf-trust span{font-size:13px;color:var(--t-mute)}
.tsf-sec-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.tsf-sec-h h2{font-size:26px;margin:0;font-weight:700}.tsf-sec-h a{color:var(--t-blue);font-weight:600;font-size:14px}
.tsf-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tsf-tile{border:1px solid var(--t-line);border-radius:12px;padding:22px 14px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;background:#fff;transition:border-color .15s,box-shadow .15s}
.tsf-tile:hover{border-color:var(--t-blue);box-shadow:0 6px 18px rgba(12,100,188,.10)}
.tsf-tile b{color:var(--t-ink);font-size:15px;margin-top:8px}.tsf-tile span{color:var(--t-mute);font-size:12.5px}
.tsf-dev{height:64px;width:auto}.tsf-dev.big{height:140px;width:100%}
.tsf-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tsf-card{border:1px solid var(--t-line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;background:#fff}
.tsf-card-img{background:var(--t-bg);border-radius:8px;height:150px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tsf-card-img img{max-height:140px;width:auto;object-fit:contain}
.tsf-badge{align-self:flex-start;background:#E5F4EC;color:var(--t-green);font-size:11.5px;font-weight:600;border-radius:5px;padding:3px 8px;display:inline-flex;gap:4px;align-items:center}
.tsf-badge .tsf-i{width:13px;height:13px}
.tsf-card h3{font-size:15px;line-height:1.35;margin:0;font-weight:600}.tsf-card h3 a{color:var(--t-ink)}
.tsf-sku{font-size:12px;color:var(--t-mute)}
.tsf-chips{display:flex;flex-wrap:wrap;gap:6px}.tsf-chips span{background:#EAF2FB;color:var(--t-blue-d);font-size:11.5px;font-weight:600;border-radius:5px;padding:3px 8px}
.tsf-price{margin-top:auto;font-size:18px;font-weight:700}.tsf-trade{font-size:13px;color:var(--t-green);font-weight:600}
.tsf-band{background:var(--t-ink);color:#fff;border-radius:16px;padding:36px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;align-items:center}
.tsf-band h2{color:#fff!important;font-size:26px;margin:0 0 8px}.tsf-band p{color:#b8c3d3;margin:0 0 18px}
.tsf-stat b{display:block;color:var(--t-amber);font-size:34px;font-weight:700}.tsf-stat span{color:#b8c3d3;font-size:14px}
/* footer */
.tsf-foot{background:var(--t-blue-d);color:#d8e4f3;margin-top:50px;font-size:14px}
.tsf-foot .tsf-wrap{flex-direction:column;align-items:stretch;padding-top:44px;padding-bottom:22px}
.tsf-foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:28px}
.tsf-foot h4{color:#fff!important;font-size:14px;margin:0 0 12px}
.tsf-foot a{color:#d8e4f3;display:block;margin-bottom:8px}.tsf-foot a:hover{color:#fff}
.tsf-foot-brand p a{display:inline}
.tsf-legal{border-top:1px solid rgba(255,255,255,.18);margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:#aac0dc;flex-wrap:wrap}
/* product page polish */
body.terelec-sf .terelec-spec th{width:42%;color:var(--t-mute);font-weight:500}
body.terelec-sf .terelec-spec td{font-weight:600}
/* responsive */
@media (max-width:1024px){.tsf-hero-row{grid-template-columns:1fr}.tsf-tiles,.tsf-cards{grid-template-columns:repeat(2,1fr)}.tsf-trust{grid-template-columns:repeat(2,1fr)}.tsf-band{grid-template-columns:1fr 1fr}.tsf-foot-grid{grid-template-columns:1fr 1fr}.tsf-icons span{display:none}}
@media (max-width:700px){.tsf-head .tsf-wrap{flex-wrap:wrap;gap:12px;padding-top:12px;padding-bottom:12px}.tsf-search{order:3;flex-basis:100%}.tsf-search input[type=search]{font-size:14px}.tsf-top .hide-s,.tsf-top-r{display:none}.tsf-hero{padding:26px}.tsf-hero h1{font-size:30px}.tsf-hero-art{display:none}.tsf-trust,.tsf-band{grid-template-columns:1fr}.tsf-home{padding:16px 16px 0}.tsf-sec-h h2{font-size:21px}}

/* home: full width, no blog sidebar */
body.terelec-sf.home .sidebar-container,body.terelec-sf.home aside.sidebar-container{display:none!important}
body.terelec-sf.home .site-content{flex:0 0 100%!important;max-width:100%!important;width:100%!important}
body.terelec-sf.home .main-page-wrapper,body.terelec-sf.home .wd-content-layout{background:#fff!important}
body.terelec-sf.home .wd-content-layout{padding-top:0!important}
.tsf-qo button.tsf-btn,.tsf-search button{background:var(--t-blue)!important;color:#fff!important;opacity:1!important;min-height:44px;border-radius:8px!important}
.tsf-qo button.tsf-btn:hover,.tsf-search button:hover{background:var(--t-blue-d)!important}
/* grid off on home */
body.terelec-sf.home main.wd-content-layout{display:block!important}
body.terelec-sf.home .wd-content-area{width:100%!important;max-width:100%!important}
/* product page buy box */
.tsf-buy{margin:18px 0 22px;display:flex;flex-direction:column;gap:16px;font-family:Inter,Arial,sans-serif}
.tsf-chips-lg span{font-size:13px;padding:5px 10px}
.tsf-buy-card{border:1px solid var(--t-line);border-radius:12px;padding:18px;background:var(--t-bg)}
.tsf-buy-h{font-size:18px;font-weight:700;color:var(--t-green)}
.tsf-buy-card p{margin:4px 0 14px;color:var(--t-mute);font-size:14px}
.tsf-buy-cta{display:flex;gap:10px;flex-wrap:wrap}
.tsf-btn-line{background:#fff;color:var(--t-blue)!important;border:1.5px solid var(--t-blue)}.tsf-btn-line:hover{background:#EAF2FB}
.tsf-buy-q{display:inline-block;margin-top:12px;font-size:13px;color:var(--t-blue);font-weight:600;text-decoration:none}
.tsf-buy-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--t-ink)}
.tsf-buy-list li{display:flex;gap:8px;align-items:center}.tsf-buy-list .tsf-i{color:var(--t-blue)}
body.terelec-sf .product_meta .tagged_as,body.terelec-sf .wd-product-tags{display:none!important}
body.terelec-sf.single-product .product_title{font-size:28px;line-height:1.25;font-weight:700}
/* archive cards */
.tsf-chips-loop{margin:6px 0 4px;justify-content:flex-start}
body.terelec-sf .wd-product .wd-entities-title{font-weight:600;font-size:14px;line-height:1.35}
body.terelec-sf .wd-product{border-radius:12px}
body.terelec-sf .term-description,body.terelec-sf .wd-shop-description{font-size:14px;color:var(--t-mute);max-height:4.8em;overflow:hidden;position:relative}
/* ===== v0.3 photography-led home ===== */
.tsf-v3{gap:36px}
.tsf-hero3{position:relative;border-radius:18px;overflow:hidden;min-height:440px;display:grid;grid-template-columns:1.35fr .8fr;gap:28px;align-items:center;padding:44px;background:linear-gradient(100deg,rgba(15,27,45,.92) 0%,rgba(23,71,157,.82) 45%,rgba(23,71,157,.25) 100%),var(--tsf-hero) center/cover no-repeat,var(--t-blue-d)}
.tsf-hero3-copy h1{color:#fff!important;font-size:46px;line-height:1.06;margin:12px 0 14px;font-weight:700;max-width:620px}
.tsf-hero3-copy p{color:#dbe8f7;font-size:17px;line-height:1.55;margin:0 0 24px;max-width:540px}
.tsf-hero3-ticks{list-style:none;padding:0;margin:22px 0 0;display:flex;gap:20px;flex-wrap:wrap;color:#fff;font-size:14px;font-weight:500}
.tsf-hero3-ticks li{display:flex;gap:6px;align-items:center}.tsf-hero3-ticks .tsf-i{color:var(--t-amber)}
.tsf-hero3-qo{background:#fff;border-radius:14px;padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:8px}
.tsf-hero3-qo h2{font-size:20px;margin:4px 0 6px;font-weight:700}
.tsf-hero3-qo .tsf-qo-row{margin:4px 0}
.tsf-hero3-qo a{font-size:13px;color:var(--t-blue);font-weight:600;margin-top:4px}
.tsf-promos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tsf-promo{position:relative;border-radius:14px;overflow:hidden;min-height:230px;padding:22px;display:flex;color:#fff!important;transition:transform .15s,box-shadow .15s}
.tsf-promo:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(15,27,45,.18)}
.tsf-promo-copy{position:relative;z-index:2;max-width:62%;display:flex;flex-direction:column;gap:6px}
.tsf-promo h3{color:inherit!important;font-size:21px;line-height:1.15;margin:0;font-weight:700}
.tsf-promo p{margin:0 0 10px;font-size:13.5px;line-height:1.45;opacity:.9}
.tsf-promo img{position:absolute;right:-8px;bottom:-6px;width:58%;max-height:85%;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.25));z-index:1}
.tsf-promo-blue{background:linear-gradient(140deg,#0C64BC,#17479D)}
.tsf-promo-amber{background:linear-gradient(140deg,#FFD25C,#FFC531);color:var(--t-ink)!important}
.tsf-promo-ink{background:linear-gradient(140deg,#1d2b44,#0F1B2D)}
.tsf-promo-photo{background:linear-gradient(0deg,rgba(15,27,45,.88),rgba(15,27,45,.25)),var(--tsf-bg) center/cover}
.tsf-promo-photo .tsf-promo-copy{max-width:100%;margin-top:auto}
.tsf-pill{align-self:flex-start;background:#fff;color:var(--t-blue);font-weight:700;font-size:13px;border-radius:999px;padding:8px 14px;margin-top:auto}
.tsf-promo-amber .tsf-pill{background:var(--t-ink);color:#fff}
.tsf-pill-amber{background:var(--t-amber);color:var(--t-ink)}
.tsf-tiles-photo .tsf-tile{padding:16px 14px 18px}
.tsf-tile-img{width:100%;height:130px;display:flex;align-items:center;justify-content:center;background:var(--t-bg);border-radius:10px;margin-bottom:6px;overflow:hidden}
.tsf-tile-img img{max-height:118px;max-width:86%;object-fit:contain;transition:transform .2s}
.tsf-tile:hover .tsf-tile-img img{transform:scale(1.06)}
.tsf-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tsf-banner{border-radius:16px;overflow:hidden;min-height:280px;display:flex;align-items:flex-end;padding:30px;color:#fff!important;background:linear-gradient(0deg,rgba(15,27,45,.9) 10%,rgba(15,27,45,.15) 70%),var(--tsf-bg) center/cover;transition:transform .15s}
.tsf-banner:hover{transform:translateY(-3px)}
.tsf-banner h3{color:#fff!important;font-size:25px;line-height:1.2;margin:6px 0 14px;max-width:440px;font-weight:700}
.tsf-card-img img{max-height:140px;max-width:88%;object-fit:contain}
.tsf-band{background:linear-gradient(90deg,rgba(15,27,45,.96) 35%,rgba(15,27,45,.8)),var(--tsf-bg) center/cover,var(--t-ink)}
@media (max-width:1024px){.tsf-hero3{grid-template-columns:1fr;padding:30px}.tsf-promos{grid-template-columns:1fr 1fr}.tsf-duo{grid-template-columns:1fr}}
@media (max-width:700px){.tsf-hero3-copy h1{font-size:31px}.tsf-hero3{min-height:0;padding:24px}.tsf-promos{grid-template-columns:1fr}.tsf-promo{min-height:190px}.tsf-banner{min-height:220px}}
/* v0.3.1: product photos sit on white stages (photos have white backgrounds) */
.tsf-promo img{right:16px;bottom:16px;width:44%;max-height:none;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:12px;padding:8px;box-shadow:0 10px 24px rgba(0,0,0,.22);filter:none}
.tsf-promo-copy{max-width:52%}
.tsf-tile-img,.tsf-card-img{background:#fff;border:1px solid var(--t-line)}
@media (max-width:700px){.tsf-promo img{width:38%}.tsf-promo-copy{max-width:58%}}
.tsf-promo{min-height:250px}
.tsf-promo img{width:40%;right:14px;bottom:14px}
.tsf-promo-copy{max-width:56%}
.tsf-pill{white-space:nowrap}
.tsf-promo .tsf-pill{position:absolute;left:22px;bottom:22px;margin:0;z-index:3}
.tsf-promo-photo .tsf-pill{position:static}
.tsf-promo-copy p{padding-bottom:44px}
.tsf-promo-photo .tsf-promo-copy p{padding-bottom:0}
.tsf-promo:not(.tsf-promo-photo) .tsf-promo-copy{position:static}
.tsf-hero3>*{min-width:0}
@media (max-width:700px){.tsf-top .tsf-wrap span.hide-s,.tsf-top .tsf-wrap span.tsf-top-r{display:none}.tsf-top .tsf-wrap{gap:16px;justify-content:space-between}.tsf-hero3-copy p{font-size:15px}.tsf-hero3-ticks{flex-direction:column;gap:8px}.tsf-nav .tsf-wrap{gap:20px}}

/* qo button v032 */
.tsf-hero3-qo button.tsf-btn,.tsf-hero3-qo button{background:var(--t-blue)!important;color:#fff!important;opacity:1!important;border:0!important;border-radius:8px!important;min-height:46px;font-weight:600;cursor:pointer}
.tsf-hero3-qo button:hover{background:var(--t-blue-d)!important}

/* cat tiles v033: title below the photo, never over it */
body.terelec-sf .cat-design-default .wd-cat-inner{display:flex!important;flex-direction:column;overflow:visible!important}
body.terelec-sf .cat-design-default .wd-cat-thumb{overflow:hidden;border-radius:10px}
body.terelec-sf .cat-design-default .wd-cat-thumb img{aspect-ratio:1/1;object-fit:contain;width:100%;height:auto}
body.terelec-sf .cat-design-default .wd-cat-content{position:static!important;inset:auto!important;transform:none!important;padding:14px 6px 6px!important;background:none!important}
body.terelec-sf .cat-design-default .wd-cat-content,body.terelec-sf .cat-design-default .wd-cat-content *{opacity:1!important;visibility:visible!important;height:auto!important;max-height:none!important;overflow:visible!important}
body.terelec-sf .cat-design-default .wd-cat-content>*{position:static!important;inset:auto!important;transform:none!important}
body.terelec-sf .cat-design-default .wd-cat-content .wd-entities-title{color:var(--t-ink)!important;font-size:17px!important;font-weight:700!important;text-transform:none!important;margin:0 0 4px!important;text-align:left}
body.terelec-sf .cat-design-default .wd-cat-count,body.terelec-sf .cat-design-default .wd-cat-count a{color:var(--t-blue)!important;font-size:13px!important;text-align:left}
