/*
Theme Name: Tetrabro Surgical
Theme URI: https://tetrabrosurgical.com
Author: Tetrabro Surgical
Description: Custom WooCommerce theme for Tetrabro Surgical, a surgical instrument manufacturer in Sialkot, Pakistan.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.0
WC requires at least: 9.0
Text Domain: tetrabro
*/

/* ---------- Design system (from the approved designs) ---------- */
*{box-sizing:border-box}
a{color:#0176ac}a:hover{color:#015a85}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;color:#111111;font-weight:600}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.nl{color:#1E2A38;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;padding:8px 0}
.nl:hover{color:#0176ac}
.inst{border:0;background:transparent;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:18px;transition:transform .4s ease,opacity .4s ease}
.inst:hover img{filter:drop-shadow(0 30px 22px rgba(1,60,110,.38))!important}
.pick{display:flex;align-items:center;gap:12px;width:100%;padding:6px 10px 6px 6px;border:0;background:transparent;border-radius:12px;cursor:pointer;text-align:left;font:inherit;transition:background .25s ease}
.pick:hover{background:#EAF2F9}
.ruler{background-image:repeating-linear-gradient(to bottom,#BCD6E8 0 1px,transparent 1px 10px),repeating-linear-gradient(to bottom,#7FAFD0 0 1.5px,transparent 1.5px 50px);background-size:8px 100%,16px 100%;background-repeat:no-repeat;background-position:right top,right top}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#0176ac}
.ccard{transition:transform .3s ease,box-shadow .3s ease}
.ccard:hover{transform:translateY(-6px);box-shadow:0 26px 44px -26px rgba(1,50,90,.45)}
.ccard img{transition:transform .5s ease}
.ccard:hover img{transform:translate(-50%,-50%) rotate(-6deg) scale(1.06)!important}
.pcard{transition:box-shadow .25s ease,border-color .25s ease}
.pcard:hover{box-shadow:0 22px 40px -24px rgba(1,50,90,.45);border-color:#C9DDEC}
.pcard img{transition:scale .45s ease}
.pcard:hover img{scale:1.07}
.chip{height:44px;padding:0 20px;border-radius:999px;border:1.5px solid #D3E4F0;background:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:700;font-size:14px;cursor:pointer}
.faq{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;border:0;background:transparent;cursor:pointer;text-align:left;font-family:'Montserrat',sans-serif;font-weight:700;font-size:17px;color:#111111}
.faq:hover{color:#0176ac}
.flink{color:#44505F;text-decoration:none;font-size:15px}
.flink:hover{color:#0176ac}
input,select,textarea{font:inherit;color:#1E2A38}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid #0176ac;outline-offset:2px}
.dd{position:relative}
.dd-menu{position:absolute;top:calc(100% + 14px);left:-28px;width:340px;padding:10px;background:#FFFFFF;border:1px solid #E3ECF2;border-radius:20px;box-shadow:0 30px 60px -24px rgba(1,40,80,.35);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:60}
.dd-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{opacity:1;visibility:visible;transform:none}
.dd-item{display:flex;align-items:center;gap:14px;padding:10px;border-radius:14px;text-decoration:none}
.dd-item:hover{background:#F4F8FB}
.dd-img{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dd-img img{max-width:78%;max-height:40px;object-fit:contain;display:block}
.dd-all{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding:14px 14px;border-radius:14px;background:#0176ac;color:#FFFFFF!important;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px}
.dd-all:hover{background:#015a85}
.tile{display:flex;align-items:center;gap:14px;padding:12px 18px 12px 12px;border-radius:18px;border:1.5px solid #E3ECF2;background:#FFFFFF;cursor:pointer;font:inherit;text-align:left;transition:border-color .2s ease,box-shadow .2s ease}
.tile:hover{border-color:#9CC3DE}
.side-link{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:0;border-radius:12px;background:transparent;cursor:pointer;font:inherit;font-size:15.5px;text-align:left}
.side-link:hover{background:#F4F8FB}
.chk{display:flex;align-items:center;gap:12px;font-size:15.5px;color:#1E2A38;cursor:pointer;padding:6px 0}
.chk input{width:18px;height:18px;accent-color:#0176ac}
input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #0176ac;outline-offset:2px}
.dia{position:absolute;width:252px;height:252px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.dia img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.dia:hover img{transform:scale(1.08)}
.rim{position:absolute;width:270px;height:270px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.spec{transition:transform .3s ease,box-shadow .3s ease}
.spec:hover{transform:translateY(-4px);box-shadow:0 22px 40px -26px rgba(1,50,90,.45)}
.lx-card{position:relative;padding:24px 26px;background:#FFFFFF;border-radius:22px;border:1px solid #E3ECF2;display:flex;flex-direction:column;gap:10px;box-shadow:0 20px 40px -32px rgba(1,50,90,.4)}
.seg{transition:transform .4s ease;filter:drop-shadow(0 12px 12px rgba(1,50,90,.18))}
.xp:hover .seg{transform:translate(var(--dx),var(--dy))}
.row{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #EEF3F7}
.fld{height:54px;padding:0 16px;border:1.5px solid #D9E4EE;border-radius:14px;background:#FAFCFD;font-size:16px}
.fld:focus{border-color:#0176ac;background:#FFFFFF}
.chip:hover{border-color:#0176ac}
.tb-clist{position:relative}
.clink{position:relative;display:flex;align-items:center;gap:24px;padding:26px 20px;text-decoration:none;border-radius:20px;transition:background .25s ease}
.clink::after,.tb-clist::before{content:"";position:absolute;left:20px;right:20px;height:1px;background:#E3ECF2;transition:opacity .25s ease;pointer-events:none}
.clink::after{bottom:0}
.tb-clist::before{top:0}
.clink:hover::after,.clink:has(+ .clink:hover)::after,.tb-clist:has(> .clink:first-child:hover)::before{opacity:0}
.clink:hover{background:#F4F8FB}
.idx{font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#9AA8B6;width:28px;flex-shrink:0;align-self:flex-start;padding-top:4px}
.lbl{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0176ac}
.val{font-family:'Montserrat',sans-serif;font-weight:600;font-size:clamp(22px,2.3vw,32px);line-height:1.2;letter-spacing:-.01em;color:#111111;overflow-wrap:anywhere;transition:color .25s ease}
.clink:hover .val{color:#0176ac}
.arr{width:56px;height:56px;border-radius:50%;border:1.5px solid #D3E4F0;color:#111111;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}
.clink:hover .arr{background:#0176ac;border-color:#0176ac;color:#FFFFFF;transform:rotate(-45deg)}
.topic{padding:9px 16px;border-radius:999px;background:#F4F8FB;border:1px solid #E3ECF2;font-size:14.5px;font-weight:600;color:#1E2A38}
.soc{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 18px;border-radius:999px;border:1.5px solid #D3E4F0;color:#1E2A38;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;transition:border-color .2s ease,color .2s ease}
.soc:hover{border-color:#0176ac;color:#0176ac}
.topic-btn{display:flex;align-items:center;gap:14px;width:100%;padding:10px 12px;border:0;border-radius:16px;cursor:pointer;text-align:left;font:inherit;transition:background .2s ease,box-shadow .2s ease}
.topic-btn:hover{background:#FFFFFF!important}
.qa{border:1.5px solid #E3ECF2;border-radius:20px;transition:border-color .25s ease,background .25s ease}
.qa:hover{border-color:#BCD6E8!important}
.qa-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 20px 22px 24px;border:0;background:transparent;cursor:pointer;font-family:'Montserrat',sans-serif;font-weight:600;font-size:18px;line-height:1.35;color:#111111;text-align:left}
.qa-btn:hover{color:#0176ac}
input[type=search]::-webkit-search-cancel-button{cursor:pointer}
@media (max-width:1100px){.navx{display:none!important}.side{display:none!important}.sidebar{flex:1 1 100%!important}.lx-grid{grid-template-columns:1fr!important}.lx-col{gap:20px!important}.cs-card{position:static!important;width:auto!important;margin-top:20px}.hero-art{transform:scale(.72);transform-origin:center}}
@media (max-width:700px){.xp{transform:scale(.58);margin:-120px}}
@media (max-width:900px){.sidebar{flex-basis:100%!important}}

/* ---------- Theme additions ---------- */
html{scroll-behavior:smooth}
body{margin:0;background:#FFFFFF;font-family:'Source Sans 3',system-ui,sans-serif;color:#33404F;-webkit-font-smoothing:antialiased}
main{display:block}
button{font:inherit}
.tb-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tb-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:10px;background:#111111;color:#FFFFFF;text-decoration:none}
.tb-skip:focus{top:12px;color:#FFFFFF}
[hidden]{display:none!important}

/* Header */
.tb-cart-count{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:#0176ac;color:#FFFFFF;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:2px solid #FFFFFF}
.tb-burger{display:none;width:46px;height:46px;border:1.5px solid #D3E4F0;border-radius:12px;background:#FFFFFF;color:#1E2A38;align-items:center;justify-content:center;cursor:pointer}
.tb-mnav{display:flex;flex-direction:column;padding:12px 24px 22px;background:#FFFFFF;border-top:1px solid #E3ECF2;box-shadow:0 24px 40px -24px rgba(1,40,80,.35)}
.tb-mnav a{padding:13px 4px;border-bottom:1px solid #EEF3F7;color:#1E2A38;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:16px}
.tb-mnav a.tb-mnav-sub{display:flex;align-items:center;gap:10px;padding-left:18px;font-weight:500;font-size:15px;color:#44505F}
.tb-mnav a.tb-mnav-quote{margin-top:16px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF;text-align:center}
.tb-mnav-search{display:flex;align-items:center;gap:8px;height:50px;margin-bottom:8px;padding:0 6px 0 16px;border:1.5px solid #D3E4F0;border-radius:999px;background:#F4F8FB}
.tb-mnav-search button{width:38px;height:38px;border:0;border-radius:50%;background:#0176ac;color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center}

/* Buttons */
.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 30px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF!important;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:15.5px;cursor:pointer;box-shadow:0 16px 30px -16px rgba(1,118,172,.8);transition:background .2s ease}
.tb-btn:hover{background:#015a85}
.tb-btn-ghost{background:#FFFFFF;color:#1E2A38!important;border:1.5px solid #D3E4F0;box-shadow:none}
.tb-btn-ghost:hover{background:#F4F8FB;border-color:#0176ac}
.tb-fsoc{width:44px;height:44px;border-radius:50%;background:#FFFFFF;border:1px solid #D3E4F0;color:#0176ac;display:inline-flex;align-items:center;justify-content:center}
.tb-fsoc:hover{border-color:#0176ac}

/* Hero instrument picker */
.pick .pk-dot{width:28px;height:28px;border-radius:50%;background:#E3EFF8;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .25s ease,color .25s ease}
.pick .pk-name{flex:1;font-weight:600;font-size:16.5px;color:#1E2A38}
.pick .pk-num{font-family:'Montserrat',sans-serif;font-weight:800;font-size:12.5px;color:#9AA8B6}
.pick.is-on{background:#EAF2F9}
.pick.is-on .pk-dot{background:#0176ac;color:#FFFFFF}
.pick.is-on .pk-name{font-weight:700}
.pick.is-on .pk-num{color:#0176ac}
.inst{opacity:.5}
.inst img{height:500px;width:auto;display:block;filter:drop-shadow(0 16px 14px rgba(1,60,110,.18)) saturate(.7);transition:filter .4s ease}
.inst .inst-pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#FFFFFF;color:#1E2A38;border:1px solid #D3E4F0;font-family:'Montserrat',sans-serif;font-weight:800;font-size:12.5px;white-space:nowrap}
.inst.is-on{transform:translateY(-16px) scale(1.04);opacity:1}
.inst.is-on img{filter:drop-shadow(0 30px 24px rgba(1,60,110,.4))}
.inst.is-on .inst-pill{background:#0176ac;color:#FFFFFF;border-color:#0176ac}

/* Filter chips + homepage FAQ */
.chip{transition:background .2s ease,color .2s ease,border-color .2s ease;color:#1E2A38}
.chip.is-on{background:#0176ac;color:#FFFFFF;border-color:#0176ac}
.faq-ic{width:36px;height:36px;border-radius:50%;background:#F4F8FB;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .25s ease,color .25s ease}
.faq-ic svg{transition:transform .25s ease}
.faq[aria-expanded="true"] .faq-ic{background:#0176ac;color:#FFFFFF}
.faq[aria-expanded="true"] .faq-ic svg{transform:rotate(45deg)}

/* Product card */
.pcard{display:flex;flex-direction:column;gap:12px;padding:14px 14px 18px;background:#FFFFFF;border:1px solid #E3ECF2;border-radius:20px;min-width:0}
.pcard-img{position:relative;border-radius:14px;background:#F4F8FB;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pcard-price{font-family:'Montserrat',sans-serif;font-weight:600;font-size:18px;color:#111111}
.pcard-price del{font-size:14px;color:#9AA8B6;font-weight:500}
.pcard-price ins{text-decoration:none}
.tb-add{height:44px;padding:0 16px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF!important;display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat',sans-serif;font-weight:600;font-size:13.5px;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .2s ease}
.tb-add:hover{background:#015a85}
.tb-add.loading{opacity:.6}

a.added_to_cart{display:none}

/* Shop */
.tile{color:inherit;text-decoration:none}
.tile.is-on{border-color:#0176ac;box-shadow:0 16px 30px -18px rgba(1,118,172,.6)}
.side-link{color:#1E2A38;text-decoration:none;font-weight:500}
.side-link.is-on{background:#FFFFFF;color:#0176ac;font-weight:700}
.tb-view{width:44px;height:44px;border-radius:12px;border:1.5px solid #D3E4F0;background:#FFFFFF;color:#1E2A38;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.tb-view.is-on{border-color:#0176ac;background:#0176ac;color:#FFFFFF}
.tb-grid.is-list{grid-template-columns:1fr!important}
.tb-grid.is-list .pcard{display:grid;grid-template-columns:220px minmax(0,1fr) auto;align-items:center;gap:12px 24px}
.tb-grid.is-list .pcard-img{height:150px!important}
.tb-grid.is-list .pcard-img img{max-height:120px!important}
.tb-grid.is-list .pcard h3{margin:0!important;font-size:18px!important}
.tb-grid.is-list .pcard > div:last-child{margin:0!important;gap:24px!important}
.tb-pages .page-numbers{min-width:46px;height:46px;padding:0 10px;border-radius:12px;border:1.5px solid #D3E4F0;background:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;color:#1E2A38;text-decoration:none}
.tb-pages .page-numbers.current{background:#0176ac;border-color:#0176ac;color:#FFFFFF}
.tb-pages .page-numbers.dots{border:0}

/* Single product */
.tb-sprice{font-family:'Montserrat',sans-serif;font-weight:600;font-size:28px;color:#111111}
.tb-sprice del{font-size:18px;color:#9AA8B6}
.tb-sprice ins{text-decoration:none}
.tb-buy form.cart{display:flex;align-items:center;gap:12px;margin:0}
.tb-buy .quantity .qty{width:84px;height:56px;padding:0 10px;border:1.5px solid #D3E4F0;border-radius:999px;text-align:center;font-size:16px}
.tb-buy .single_add_to_cart_button{min-height:56px;padding:0 30px!important;border:0!important;border-radius:999px!important;background:#0176ac!important;color:#FFFFFF!important;font-family:'Montserrat',sans-serif!important;font-weight:600!important;font-size:15.5px!important;cursor:pointer}
.tb-buy .single_add_to_cart_button:hover{background:#015a85!important}
.tb-buy .stock{margin:0;font-weight:600}
.tb-pdesc p{margin:0 0 16px}
.tb-pdesc ul{margin:0 0 16px;padding-left:20px}
.tb-pdesc li{margin:0 0 6px}

/* FAQs page */
.topic-btn{background:transparent}
.topic-btn .tp-ic{width:40px;height:40px;border-radius:12px;background:#FFFFFF;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease}
.topic-btn .tp-label{flex:1;font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;color:#1E2A38}
.topic-btn .tp-count{min-width:28px;height:26px;padding:0 8px;border-radius:999px;background:#FFFFFF;color:#5B6779;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.topic-btn.is-on{background:#FFFFFF;box-shadow:0 14px 28px -20px rgba(1,50,90,.5)}
.topic-btn.is-on .tp-ic,.topic-btn.is-on .tp-count{background:#0176ac;color:#FFFFFF}
.topic-btn.is-on .tp-label{color:#0176ac}
.qa{background:#FFFFFF}
.qa.is-open{border-color:#BCD6E8;background:#FAFCFE}
.qa-ic{width:40px;height:40px;border-radius:50%;background:#F4F8FB;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .25s ease,color .25s ease}
.qa-ic svg{transition:transform .25s ease}
.qa.is-open .qa-ic{background:#0176ac;color:#FFFFFF}
.qa.is-open .qa-ic svg{transform:rotate(45deg)}
.qa-tag{align-self:flex-start;padding:4px 10px;border-radius:999px;background:#EAF3FA;color:#0176ac;font-size:12px;font-weight:700}
.tb-faq-go{padding:12px 20px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px;cursor:pointer}
.tb-faq-empty:not([hidden]){display:flex}

/* Contact Form 7: enquiry */
.tb-enquiry .wpcf7-form{display:flex;flex-direction:column;gap:26px}
.tb-types{margin:0;padding:0;border:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.tb-types legend{padding:0;margin:0 auto 14px;font-family:'Montserrat',sans-serif;font-weight:600;font-size:19px;color:#111111}
.tb-types .wpcf7-radio{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.tb-types .wpcf7-list-item{margin:0}
.tb-types .wpcf7-list-item label{position:relative;min-height:46px;padding:0 18px;border-radius:999px;border:1.5px solid #D3E4F0;background:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:700;font-size:14px;color:#1E2A38;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .2s ease,border-color .2s ease,color .2s ease}
.tb-types .wpcf7-list-item label:hover{border-color:#0176ac}
.tb-types .wpcf7-list-item input{position:absolute;opacity:0;width:1px;height:1px}
.tb-types .wpcf7-list-item label::before{content:"";width:15px;height:15px;opacity:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}
.tb-types .wpcf7-list-item label:has(input:checked){background:#0176ac;border-color:#0176ac;color:#FFFFFF}
.tb-types .wpcf7-list-item label:has(input:checked)::before{opacity:1}
.tb-types .wpcf7-list-item label:has(input:focus-visible){outline:2px solid #0176ac;outline-offset:2px}
.tb-divider{height:1px;background:#EEF3F7}
.tb-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 20px}
.tb-field{display:flex;flex-direction:column;gap:8px}
.tb-field > span:first-child{font-size:14.5px;font-weight:600;color:#1E2A38}
.tb-field.tb-full{grid-column:1/-1}
.tb-field .wpcf7-form-control-wrap{display:block}
.tb-field .fld{width:100%}
.tb-field select.fld{padding:0 12px}
.tb-field textarea{width:100%;padding:14px 16px;border:1.5px solid #D9E4EE;border-radius:14px;background:#FAFCFD;font-size:16px;resize:vertical}
.tb-field textarea:focus{border-color:#0176ac;background:#FFFFFF}
.tb-formbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid #EEF3F7}
.tb-notes{display:flex;flex-direction:column;gap:6px}
.tb-note{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;color:#5B6779}
.tb-note::before{content:"";width:17px;height:17px;flex-shrink:0;background:#0176ac;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.tb-note-lock{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='11' x='3' y='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E")}
.tb-note-tag{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1'/%3E%3C/svg%3E")}
.tb-submit-wrap{position:relative;display:inline-flex;align-items:center}
.wpcf7-submit.tb-submit{min-height:58px;padding:0 36px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:600;font-size:16px;cursor:pointer;box-shadow:0 18px 32px -16px rgba(1,118,172,.8);transition:background .2s ease}
.wpcf7-submit.tb-submit:hover{background:#015a85}
.tb-cf7 .wpcf7-spinner{margin:0 0 0 12px}
.tb-cf7 .wpcf7-not-valid-tip{margin-top:6px;font-size:13.5px;color:#C4161F}
.tb-cf7 .wpcf7-not-valid{border-color:#df1d26!important}
.tb-cf7 .wpcf7-response-output{margin:0!important;padding:14px 18px!important;border-radius:14px;border-width:1.5px!important;font-size:15px}

/* Contact Form 7: newsletter */
.tb-nl{display:flex;flex-wrap:wrap;gap:10px}
.tb-nl .wpcf7-form-control-wrap{flex:1 1 260px;display:flex;flex-direction:column}
.tb-nl-input{flex:1;width:100%;height:54px;padding:0 20px;border:0;border-radius:999px;background:#FFFFFF;font-size:15.5px}
.wpcf7-submit.tb-nl-btn{height:54px;padding:0 28px;border:2px solid #FFFFFF;border-radius:999px;background:transparent;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:700;font-size:15px;cursor:pointer;transition:background .2s ease,color .2s ease}
.wpcf7-submit.tb-nl-btn:hover{background:#FFFFFF;color:#0176ac}
.tb-newsletter .wpcf7-spinner{display:none}
.tb-newsletter .wpcf7-not-valid-tip{margin:6px 0 0 16px;color:#FFFFFF;font-weight:600}
.tb-newsletter .wpcf7-response-output{margin:10px 0 0!important;padding:10px 16px!important;border-radius:12px;border-color:rgba(255,255,255,.6)!important;color:#FFFFFF}

/* Page content + WooCommerce blocks (cart, checkout, account) */
.tb-content > *:first-child{margin-top:0}
.tb-content img{max-width:100%;height:auto}
.tb-content .wc-block-components-button:not(.is-link),.tb-content .wp-element-button,.tb-content .woocommerce-button,.tb-content .woocommerce-Button,.tb-content button.button,.tb-content a.button{border-radius:999px!important;background:#0176ac!important;color:#FFFFFF!important;border:0!important;font-family:'Montserrat',sans-serif!important;font-weight:600!important;text-decoration:none!important}
.tb-content .wc-block-components-button:not(.is-link):hover,.tb-content .wp-element-button:hover,.tb-content button.button:hover,.tb-content a.button:hover{background:#015a85!important}
.tb-content .woocommerce-MyAccount-navigation > ul{list-style:none;margin:0;padding:12px;border-radius:20px;background:#F4F8FB}
.tb-content .woocommerce-MyAccount-navigation > ul > li > a{display:block;padding:12px 14px;border-radius:12px;color:#1E2A38;text-decoration:none;font-weight:600}
.tb-content .woocommerce-MyAccount-navigation > ul > li.is-active > a{background:#FFFFFF;color:#0176ac}
.tb-content .woocommerce-form-row input.input-text,.tb-content .woocommerce-form-row select{height:50px;padding:0 14px;border:1.5px solid #D9E4EE;border-radius:12px;background:#FAFCFD}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:#0176ac!important;border-radius:14px;background:#F4F8FB!important}
.woocommerce-message::before,.woocommerce-info::before{color:#0176ac!important}
.woocommerce-message .button{border-radius:999px!important;background:#0176ac!important;color:#FFFFFF!important}

/* Responsive */
@media (max-width:1100px){.tb-burger{display:inline-flex}.tb-hero-art{height:540px!important}.inst img{height:400px}}
@media (min-width:1101px){.tb-mnav{display:none!important}}
@media (max-width:700px){
.tb-bar{gap:12px!important;padding:8px 16px!important}
.tb-logo{height:42px!important}
.tb-quote-btn{display:none!important}
.tb-topline{display:none}
.tb-hero-art{height:400px!important}
.tb-hero-art > span[aria-hidden]{display:none}
.inst img{height:280px}
.tb-hero-hint{display:none!important}
.tb-grid.is-list .pcard{grid-template-columns:1fr}
.pcard-img{height:190px!important}
.tb-enquiry{border-radius:24px!important}
.tb-formbar .tb-submit-wrap,.tb-formbar .wpcf7-submit{width:100%}
footer > div:first-child > div:first-child{padding:26px 22px!important}
}

/* Classic (PHP) WooCommerce: cart, checkout, my account */
.woocommerce table.shop_table{border:1px solid #E3ECF2!important;border-radius:20px!important;border-collapse:separate!important;overflow:hidden;margin:0 0 28px!important}
.woocommerce table.shop_table th{padding:16px 18px!important;background:#F4F8FB;font-family:'Montserrat',sans-serif;font-weight:600;color:#111111}
.woocommerce table.shop_table td{padding:16px 18px!important;border-top:1px solid #E3ECF2!important;vertical-align:middle}
.woocommerce table.shop_table img{width:64px!important;height:64px;object-fit:contain;border-radius:12px;background:#F4F8FB}
.woocommerce table.shop_table td.product-name a{color:#111111;font-weight:600;text-decoration:none}
.woocommerce a.remove{color:#df1d26!important}
.woocommerce a.remove:hover{background:#df1d26!important;color:#FFFFFF!important}
.woocommerce .cart_totals h2,.woocommerce-checkout h3,#order_review_heading,.woocommerce-MyAccount-content h2,.woocommerce h2{font-size:24px;font-weight:600;margin:0 0 16px}
.woocommerce form .form-row{margin:0 0 14px}
.woocommerce form .form-row label{font-weight:600;font-size:14.5px;color:#1E2A38;margin-bottom:6px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce .coupon input.input-text,.woocommerce form.login input.input-text,.woocommerce form.register input.input-text{height:50px;padding:0 14px!important;border:1.5px solid #D9E4EE!important;border-radius:12px!important;background:#FAFCFD;font-size:16px}
.woocommerce form .form-row textarea{min-height:110px;padding:12px 14px!important;border:1.5px solid #D9E4EE!important;border-radius:12px!important;background:#FAFCFD}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:#0176ac!important;background:#FFFFFF}
.woocommerce .select2-container .select2-selection--single{height:50px;border:1.5px solid #D9E4EE;border-radius:12px;background:#FAFCFD}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:47px;padding-left:14px}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px;right:8px}
.woocommerce .coupon input.input-text{width:200px!important;margin-right:8px!important}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.checkout-button,.woocommerce #place_order{min-height:50px;padding:14px 26px!important;border:0!important;border-radius:999px!important;background:#0176ac!important;color:#FFFFFF!important;font-family:'Montserrat',sans-serif!important;font-weight:600!important;font-size:15px!important;line-height:1.3!important;text-decoration:none!important}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.checkout-button:hover,.woocommerce #place_order:hover{background:#015a85!important}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{opacity:.55;padding:14px 26px!important}
.woocommerce a.checkout-button{font-size:16px!important;padding:18px 26px!important}
.woocommerce .cart-collaterals .cart_totals{padding:26px;border-radius:22px;background:#F4F8FB}
.woocommerce .cart-collaterals .cart_totals table.shop_table{background:#FFFFFF}
.woocommerce .quantity .qty{width:72px;height:44px;border:1.5px solid #D3E4F0;border-radius:999px;text-align:center}
.woocommerce-checkout #payment{border-radius:22px!important;background:#F4F8FB!important}
.woocommerce-checkout #payment ul.payment_methods{padding:20px 22px!important;border-bottom:1px solid #E3ECF2!important}
.woocommerce-checkout #payment div.payment_box{border-radius:14px;background:#FFFFFF!important;color:#44505F}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#FFFFFF!important}
.woocommerce-checkout #payment div.form-row{padding:20px 22px!important}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{margin-bottom:20px}
.woocommerce-cart .cart-empty,.woocommerce .woocommerce-info{padding:18px 22px 18px 52px!important;border-radius:16px;font-size:16px}
.woocommerce .return-to-shop{margin-top:16px}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon{padding:26px!important;border:1px solid #E3ECF2!important;border-radius:22px!important}
.woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:24px}
.woocommerce-account .woocommerce-MyAccount-content{font-size:16.5px;line-height:1.65}

/* Quote cart (Quotes for WooCommerce): no prices to show */
.tb-quote-cart .shop_table .product-price,.tb-quote-cart .shop_table .product-subtotal,.tb-quote-cart .cart_totals h2,.tb-quote-cart .cart_totals table.shop_table,.tb-quote-cart .woocommerce-checkout-review-order-table .product-total,.tb-quote-cart .woocommerce-checkout-review-order-table tfoot{display:none!important}
.tb-quote-cart .cart_totals::before{content:"Ready to send your list? We'll reply with a quote by email or WhatsApp.";display:block;margin-bottom:16px;font-size:16px;line-height:1.55;color:#33404F}

/* Side cart */
.tb-lock,.tb-lock body{overflow:hidden}
.tb-drawer{position:fixed;inset:0;z-index:1000}
.tb-drawer-overlay{position:absolute;inset:0;background:rgba(10,30,50,.45);opacity:0;transition:opacity .3s ease}
.tb-drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(440px,100vw);background:#FFFFFF;display:flex;flex-direction:column;box-shadow:-30px 0 60px -30px rgba(1,40,80,.45);transform:translateX(100%);transition:transform .3s ease}
.tb-drawer.is-open .tb-drawer-overlay{opacity:1}
.tb-drawer.is-open .tb-drawer-panel{transform:none}
.tb-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid #E3ECF2}
.tb-drawer-head h2{margin:0;font-size:22px;font-weight:600;display:flex;align-items:baseline;gap:10px}
.tb-drawer-count{font-family:'Source Sans 3',sans-serif;font-size:15px;font-weight:600;color:#5B6779}
.tb-drawer-close{width:44px;height:44px;border:1.5px solid #D3E4F0;border-radius:50%;background:#FFFFFF;color:#1E2A38;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.tb-drawer-close:hover{border-color:#0176ac;color:#0176ac}
.tb-drawer-body,.tb-drawer-body .widget_shopping_cart_content{flex:1;min-height:0;display:flex;flex-direction:column}
.tb-mc-list{flex:1;min-height:0;overflow:auto;margin:0;padding:6px 24px;list-style:none}
.tb-mc-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid #EEF3F7;transition:opacity .2s ease}
.tb-mc-item.is-busy{opacity:.5;pointer-events:none}
.tb-mc-img{width:76px;height:76px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.tb-mc-img img{max-width:80%;max-height:60px;object-fit:contain;display:block}
.tb-mc-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.tb-mc-cat{font-size:12px;font-weight:700}
.tb-mc-name{font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;line-height:1.3;color:#111111;text-decoration:none}
.tb-mc-name:hover{color:#0176ac}
.tb-mc-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}
.tb-qty{display:inline-flex;align-items:center;height:36px;border:1.5px solid #D3E4F0;border-radius:999px}
.tb-qty button{width:34px;height:34px;border:0;background:transparent;color:#1E2A38;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%}
.tb-qty button:hover{color:#0176ac;background:#F4F8FB}
.tb-qty span{min-width:28px;text-align:center;font-weight:700;font-size:15px;color:#111111}
.tb-mc-price{font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;color:#111111}
.tb-mc-remove{width:38px;height:38px;border-radius:50%;color:#5B6779!important;display:inline-flex!important;align-items:center;justify-content:center;align-self:start}
.tb-mc-remove:hover{background:#FCE8E9!important;color:#df1d26!important}
.tb-mc-foot{display:flex;flex-direction:column;gap:12px;padding:20px 24px 24px;border-top:1px solid #E3ECF2;background:#FFFFFF}
.tb-mc-note{margin:0;font-size:15px;line-height:1.55;color:#44505F}
.tb-mc-total{margin:0;display:flex;justify-content:space-between;font-family:'Montserrat',sans-serif;font-weight:600;font-size:17px;color:#111111}
.tb-mc-checkout{width:100%}
.tb-mc-continue{border:0;background:transparent;color:#0176ac;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px;cursor:pointer;padding:6px}
.tb-mc-continue:hover{color:#015a85}
.tb-mc-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:40px 24px}
.tb-mc-empty-ic{width:72px;height:72px;border-radius:50%;background:#F4F8FB;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;margin-bottom:8px}
.tb-add.is-added{background:#099266}
.tb-buy .single_add_to_cart_button.loading{opacity:.6}

/* Side cart: beat WooCommerce's legacy widget styles (.woocommerce ul.cart_list ...) */
#tb-cart .tb-mc-list{margin:0;padding:6px 24px;list-style:none}
#tb-cart .tb-mc-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:14px;margin:0;padding:16px 0;list-style:none;position:static}
#tb-cart .tb-mc-item::before,#tb-cart .tb-mc-item::after{content:none;display:none}
#tb-cart .tb-mc-item a{font-weight:inherit}
#tb-cart .tb-mc-img{display:flex}
#tb-cart .tb-mc-item img{float:none;width:auto;height:auto;max-width:80%;max-height:60px;margin:0;box-shadow:none}
#tb-cart .tb-mc-name{display:block;font-weight:600;overflow-wrap:anywhere}
#tb-cart .tb-mc-remove{position:static;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;font-size:inherit;line-height:1;border-radius:50%;background:transparent;color:#5B6779!important}
#tb-cart .tb-mc-remove:hover{background:#FCE8E9!important;color:#df1d26!important}

/* Product card footer */
.pcard-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:auto 4px 0}
.pcard-foot.no-price .tb-add{flex:1;justify-content:center}

/* Checkout: details left, order right */
.tb-co-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px 56px;align-items:start}
.tb-checkout #customer_details .col-1,.tb-checkout #customer_details .col-2{float:none!important;width:100%!important}
.tb-co-side{position:sticky;top:24px;padding:28px;border-radius:24px;background:#F4F8FB;border:1px solid #E3ECF2}
.tb-co-side #order_review_heading{margin:0 0 18px}
.tb-co-side table.shop_table{background:#FFFFFF}
.woocommerce-checkout .tb-co-side #payment{background:#FFFFFF!important;border:1px solid #E3ECF2}
@media (max-width:960px){.tb-co-grid{grid-template-columns:1fr}.tb-co-side{position:static}}

/* Header account icon (matches the cart circle) */
.tb-icon-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid #D3E4F0;display:inline-flex;align-items:center;justify-content:center;color:#1E2A38;flex-shrink:0;transition:border-color .2s ease,color .2s ease}
.tb-icon-btn:hover,.tb-icon-btn[aria-current]{border-color:#0176ac;color:#0176ac}
.tb-cart-open[aria-controls]:hover{border-color:#0176ac;color:#0176ac}
@media (max-width:380px){.tb-bar .tb-icon-btn{display:none}}

/* Header search: icon + dropdown */
.tb-search{position:relative}
.tb-search-toggle{background:#FFFFFF;cursor:pointer;padding:0}
.tb-search-toggle.is-on{border-color:#0176ac;background:#0176ac;color:#FFFFFF}
.tb-search-panel{position:absolute;top:calc(100% + 30px);right:-12px;width:min(440px,calc(100vw - 32px));padding:12px;background:#FFFFFF;border:1px solid #E3ECF2;border-radius:22px;box-shadow:0 30px 60px -24px rgba(1,40,80,.35);z-index:60;animation:tbDrop .18s ease}
.tb-search-panel::before{content:"";position:absolute;top:-7px;right:29px;width:12px;height:12px;background:#FFFFFF;border-left:1px solid #E3ECF2;border-top:1px solid #E3ECF2;transform:rotate(45deg)}
.tb-search-panel form{display:flex;align-items:center;gap:8px}
.tb-search-field{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:50px;padding:0 16px;border:1.5px solid #D3E4F0;border-radius:999px;background:#F4F8FB}
.tb-search-field:focus-within{border-color:#0176ac;background:#FFFFFF}
.tb-search-field input{flex:1;min-width:0;border:0;background:transparent;font-size:15.5px;outline:none}
.tb-search-go{height:50px;padding:0 22px;border:0;border-radius:999px;background:#0176ac;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px;cursor:pointer}
.tb-search-go:hover{background:#015a85}
@keyframes tbDrop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:700px){.tb-search{display:none}}

/* Live search suggestions */
.tb-suggest{margin-top:10px;max-height:min(60vh,460px);overflow:auto;border-top:1px solid #EEF3F7;padding-top:8px}
.tb-sg-group{padding:8px 10px 6px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5B6779}
.tb-sg-opt{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:14px;color:#1E2A38;text-decoration:none}
.tb-sg-opt > svg{margin-left:auto;color:#9AA8B6;flex-shrink:0;transition:transform .2s ease,color .2s ease}
.tb-sg-opt:hover,.tb-sg-opt.is-active{background:#F4F8FB;color:#0176ac}
.tb-sg-opt:hover > svg,.tb-sg-opt.is-active > svg{color:#0176ac;transform:translateX(2px)}
.tb-sg-catlink{font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px}
.tb-sg-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}
.tb-sg-img{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tb-sg-img img{max-width:80%;max-height:40px;object-fit:contain;display:block}
.tb-sg-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.tb-sg-name{font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px;line-height:1.3;color:#111111}
.tb-sg-spec{font-size:12.5px;font-weight:700}
.tb-suggest mark{background:#FDF0B8;color:inherit;border-radius:3px;padding:0 1px}
.tb-sg-all{justify-content:center;margin-top:6px;padding:12px;border-top:1px solid #EEF3F7;border-radius:0 0 14px 14px;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#0176ac}
.tb-sg-all > svg{margin-left:0}
.tb-sg-empty{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;font-size:15px;color:#44505F}
.tb-sg-empty .tb-sg-opt{padding:6px 0;color:#0176ac;font-weight:600;font-family:'Montserrat',sans-serif;font-size:14px}
.tb-sg-empty .tb-sg-opt:hover,.tb-sg-empty .tb-sg-opt.is-active{background:transparent}
.tb-suggest-m{margin:-2px 0 8px;border:1px solid #E3ECF2;border-radius:16px;padding:6px}
.tb-mnav .tb-suggest a{border-bottom:0;padding:8px 10px;font-size:15px}
.tb-live.is-loading .tb-search-field::after,.tb-live.is-loading.tb-mnav-search::after{content:"";width:16px;height:16px;border:2px solid #D3E4F0;border-top-color:#0176ac;border-radius:50%;animation:tbSpin .7s linear infinite;flex-shrink:0}
@keyframes tbSpin{to{transform:rotate(360deg)}}

/* Hero instruments: no box outline on hover/click; keyboard focus shows on the number pill */
.inst,.inst:hover,.inst:focus,.inst:active{outline:none!important;border:0;box-shadow:none;-webkit-tap-highlight-color:transparent}
.inst:focus-visible .inst-pill{outline:2px solid #0176ac;outline-offset:3px}
.pick:focus:not(:focus-visible){outline:none}

/* OEM & Private Label page */
.oem-card{display:flex;flex-direction:column;gap:16px;padding:30px 28px;background:#FFFFFF;border-radius:24px;border:1px solid #E3ECF2;box-shadow:0 24px 48px -36px rgba(1,50,90,.35);transition:transform .3s ease,box-shadow .3s ease}
.oem-card:hover{transform:translateY(-4px);box-shadow:0 30px 56px -34px rgba(1,50,90,.45)}
.oem-spec{display:flex;flex-direction:column;gap:16px;padding:14px 14px 20px;border-radius:22px;background:#FFFFFF;border:1px solid #E3ECF2;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}
.oem-spec:hover{transform:translateY(-4px);box-shadow:0 26px 44px -28px rgba(1,50,90,.45)}
.oem-spec > span:last-child{padding:0 6px}
.oem-spec-arrow{width:42px;height:42px;border-radius:50%;border:1.5px solid #D3E4F0;color:#111111;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease,border-color .2s ease}
.oem-spec:hover .oem-spec-arrow{background:#0176ac;border-color:#0176ac;color:#FFFFFF}
.oem-faq .faq:not([aria-expanded="true"]) .faq-ic{background:#FFFFFF}

/* My Account: layout */
.logged-in.woocommerce-account .tb-content > .woocommerce{display:grid;grid-template-columns:300px minmax(0,1fr);gap:36px 48px;align-items:start}
.logged-in.woocommerce-account .tb-content > .woocommerce > :not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content){grid-column:1/-1}
.woocommerce-account .woocommerce-MyAccount-navigation.tb-acc-nav,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto;margin:0}
.woocommerce-account .woocommerce-MyAccount-content{font-size:16.5px;line-height:1.65;color:#33404F}

/* My Account: navigation */
.tb-acc-nav{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px}
.tb-acc-user{display:flex;align-items:center;gap:14px;padding:18px;border-radius:20px;background:#FFFFFF;border:1px solid #E3ECF2}
.tb-acc-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#0176ac,#099266);color:#FFFFFF;font-family:'Montserrat',sans-serif;font-weight:700;font-size:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.tb-acc-who{display:flex;flex-direction:column;min-width:0}
.tb-acc-name{font-family:'Montserrat',sans-serif;font-weight:600;font-size:16px;color:#111111;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-acc-mail{font-size:14px;color:#5B6779;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-content .tb-acc-nav > ul{list-style:none;margin:0;padding:8px;border-radius:20px;background:#F4F8FB;display:flex;flex-direction:column;gap:2px}
.tb-content .tb-acc-nav > ul > li > a{display:flex;align-items:center;gap:12px;padding:9px 12px 9px 9px;border-radius:14px;color:#1E2A38;text-decoration:none;font-weight:600;font-size:15.5px;transition:background .2s ease,color .2s ease}
.tb-acc-ic{width:36px;height:36px;border-radius:10px;background:#FFFFFF;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease}
.tb-acc-label{flex:1}
.tb-acc-chev{color:#9AA8B6;opacity:0;transition:opacity .2s ease}
.tb-content .tb-acc-nav > ul > li > a:hover{background:#FFFFFF}
.tb-acc-nav li a:hover .tb-acc-chev{opacity:1}
.tb-content .tb-acc-nav > ul > li.is-active > a{background:#FFFFFF;color:#0176ac;box-shadow:0 12px 24px -18px rgba(1,50,90,.5)}
.tb-acc-nav li.is-active .tb-acc-ic{background:#0176ac;color:#FFFFFF}
.tb-acc-nav li.is-active .tb-acc-chev{opacity:1;color:#0176ac}
.tb-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout{margin-top:6px;padding-top:6px;border-top:1px solid #E3ECF2}
.tb-content .tb-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout a{color:#C4161F}
.tb-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout .tb-acc-ic{color:#df1d26}
.tb-acc-help{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:20px;background:#0176ac}
.tb-acc-help a{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;margin-top:4px;border-radius:999px;background:#FFFFFF;color:#0176ac!important;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:13.5px}

/* My Account: dashboard */
.tb-dash{display:flex;flex-direction:column;gap:24px}
.tb-dash-hero{position:relative;overflow:hidden;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 32px;padding:clamp(24px,3vw,36px);border-radius:24px;background:#EAF3FA}
.tb-dash-ring{position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:#DCEBF7}
.tb-dash-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.tb-dash-tile{display:flex;align-items:center;gap:14px;padding:18px;border-radius:20px;border:1px solid #E3ECF2;background:#FFFFFF;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.tb-dash-tile:hover{transform:translateY(-2px);border-color:#BCD6E8;box-shadow:0 20px 36px -26px rgba(1,50,90,.45)}
.tb-dash-tile-ic{width:48px;height:48px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.tb-dash-tile-go{margin-left:auto;width:34px;height:34px;border-radius:50%;border:1.5px solid #D3E4F0;color:#111111;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease,color .2s ease,border-color .2s ease}
.tb-dash-tile:hover .tb-dash-tile-go{background:#0176ac;border-color:#0176ac;color:#FFFFFF}
.tb-dash-recent{display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:24px;border:1px solid #E3ECF2}
.tb-dash-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.tb-dash-list li{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #EEF3F7}
.tb-dash-num{font-family:'Montserrat',sans-serif;font-weight:700;color:#0176ac;min-width:64px}
.tb-status{padding:5px 12px;border-radius:999px;font-size:12.5px;font-weight:700;background:#F4F8FB;color:#44505F;white-space:nowrap}
.tb-status-completed{background:#E6F4EE;color:#077A55}
.tb-status-processing{background:#E5F0F8;color:#0176ac}
.tb-status-on-hold,.tb-status-pending{background:#FDF5DC;color:#8A6A00}
.tb-status-cancelled,.tb-status-failed,.tb-status-refunded{background:#FCE8E9;color:#C4161F}
.tb-dash-view{width:34px;height:34px;border-radius:50%;border:1.5px solid #D3E4F0;display:inline-flex;align-items:center;justify-content:center;color:#111111;flex-shrink:0}
.tb-dash-view:hover{background:#0176ac;border-color:#0176ac;color:#FFFFFF}
.tb-dash-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:28px 16px;border-radius:18px;background:#F4F8FB}
.tb-dash-empty-ic{width:56px;height:56px;border-radius:50%;background:#FFFFFF;color:#0176ac;display:inline-flex;align-items:center;justify-content:center;margin-bottom:6px}

/* My Account: orders, addresses, account details */
.woocommerce-account .woocommerce-orders-table .button,.woocommerce-account .order-again .button{min-height:auto!important;padding:9px 18px!important;font-size:13.5px!important}
.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:16px}
.woocommerce-account .woocommerce-Addresses::before,.woocommerce-account .woocommerce-Addresses::after{display:none}
.woocommerce-account .woocommerce-Addresses .woocommerce-Address{float:none!important;width:auto!important;margin:0!important;padding:24px;border-radius:20px;border:1px solid #E3ECF2;background:#FFFFFF}
.woocommerce-account .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.woocommerce-account .woocommerce-Address-title::before,.woocommerce-account .woocommerce-Address-title::after{display:none}
.woocommerce-account .woocommerce-Address-title h2{margin:0!important;font-size:19px!important}
.woocommerce-account .woocommerce-Address-title a.edit{float:none!important;font-family:'Montserrat',sans-serif;font-weight:600;font-size:13.5px;color:#0176ac;text-decoration:none;padding:7px 14px;border-radius:999px;background:#E5F0F8}
.woocommerce-account .woocommerce-Address address{font-style:normal;line-height:1.7;color:#44505F}
.woocommerce-account .woocommerce-EditAccountForm,.woocommerce-account .woocommerce-address-fields{padding:28px;border-radius:24px;border:1px solid #E3ECF2;background:#FFFFFF}
.woocommerce-account .woocommerce-EditAccountForm fieldset{margin:20px 0;padding:20px;border:1px solid #E3ECF2;border-radius:18px}
.woocommerce-account .woocommerce-EditAccountForm legend{padding:0 8px;font-family:'Montserrat',sans-serif;font-weight:600;color:#111111}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child{margin-top:0}
@media (max-width:900px){.logged-in.woocommerce-account .tb-content > .woocommerce{grid-template-columns:1fr}.tb-acc-nav{position:static}}
.logged-in.woocommerce-account .tb-content > .woocommerce::before,.logged-in.woocommerce-account .tb-content > .woocommerce::after{content:none!important;display:none!important}
.logged-in.woocommerce-account .tb-content > .woocommerce > .woocommerce-MyAccount-navigation{grid-column:1}
.logged-in.woocommerce-account .tb-content > .woocommerce > .woocommerce-MyAccount-content{grid-column:2}
@media (max-width:900px){.logged-in.woocommerce-account .tb-content > .woocommerce > .woocommerce-MyAccount-content{grid-column:1}}

/* Address cards: drop WooCommerce clearfix pseudo-elements inside the flex title row */
.woocommerce-account .woocommerce .addresses .woocommerce-Address-title::before,.woocommerce-account .woocommerce .addresses .woocommerce-Address-title::after{content:none!important;display:none!important}
.woocommerce-account .woocommerce .addresses .woocommerce-Address-title a.edit{margin-left:auto}

/* WooCommerce notices: theme icons instead of the WooCommerce icon font */
.woocommerce-info::before,.woocommerce-message::before,.woocommerce-error::before{font-family:inherit!important;content:""!important;width:20px;height:20px;top:19px!important;left:20px!important;background:#0176ac;-webkit-mask:var(--tb-n) center/contain no-repeat;mask:var(--tb-n) center/contain no-repeat}
.woocommerce-info{--tb-n:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E")}
.woocommerce-message{--tb-n:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E")}
.woocommerce-error{--tb-n:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4'/%3E%3Cpath d='M12 16h.01'/%3E%3C/svg%3E")}
.woocommerce-error::before{background:#df1d26}
.woocommerce-message::before{background:#099266}
.woocommerce-info,.woocommerce-message,.woocommerce-error{padding:18px 22px 18px 54px!important;border-radius:16px!important;line-height:1.6}
.woocommerce-account .woocommerce-info .button,.woocommerce-account .woocommerce-message .button{min-height:auto!important;padding:10px 20px!important;font-size:14px!important}

/* Legal pages (Privacy Policy, Terms & Conditions) */
.tb-legal-wrap{max-width:1320px;margin:0 auto;padding:72px 24px 96px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:40px 72px;align-items:start}
.tb-legal-side{position:sticky;top:24px;display:flex;flex-direction:column;gap:16px}
.tb-legal-toc{padding:20px 12px 12px;border-radius:20px;background:#F4F8FB}
.tb-legal-toc-h{display:block;padding:0 12px 10px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5B6779}
.tb-legal-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;display:flex;flex-direction:column;gap:2px}
.tb-legal-toc li{counter-increment:toc}
.tb-legal-toc a{display:flex;gap:10px;padding:8px 12px;border-radius:12px;color:#1E2A38;text-decoration:none;font-size:14.5px;font-weight:600;line-height:1.35;transition:background .2s ease,color .2s ease}
.tb-legal-toc a::before{content:counter(toc,decimal-leading-zero);font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;color:#9AA8B6;padding-top:2px;min-width:20px}
.tb-legal-toc a:hover,.tb-legal-toc a.is-on{background:#FFFFFF;color:#0176ac}
.tb-legal-toc a.is-on::before{color:#0176ac}
.tb-legal-help{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:20px;background:#0176ac}
.tb-legal-help a{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;margin-top:2px;border-radius:999px;background:#FFFFFF;color:#0176ac!important;text-decoration:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:13.5px}
.tb-legal{max-width:820px;font-size:17px;line-height:1.75;color:#33404F}
.tb-legal-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid #E3ECF2;font-size:14.5px;color:#5B6779}
.tb-legal-badge{padding:6px 14px;border-radius:999px;background:#E5F0F8;color:#0176ac;font-weight:700;font-size:13.5px}
.tb-legal-meta + p{font-size:19px;line-height:1.7;color:#1E2A38}
.tb-legal h2{display:flex;align-items:baseline;gap:14px;margin:44px 0 14px;font-size:clamp(22px,2vw,26px);line-height:1.25;letter-spacing:-.01em;scroll-margin-top:24px}
.tb-legal-num{flex-shrink:0;padding:4px 9px;border-radius:8px;background:#E5F0F8;color:#0176ac;font-size:13.5px;font-weight:700;transform:translateY(-3px)}
.tb-legal p{margin:0 0 16px}
.tb-legal ul{margin:0 0 18px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.tb-legal ul li{position:relative;padding-left:26px}
.tb-legal ul li::before{content:"";position:absolute;left:4px;top:.7em;width:8px;height:8px;border-radius:50%;background:#0176ac}
.tb-legal strong{color:#111111}
.tb-legal h2:last-of-type + p{padding:22px 24px;border-radius:18px;background:#F4F8FB}
@media (max-width:960px){.tb-legal-wrap{grid-template-columns:1fr}.tb-legal-side{position:static}}
/* Accordions and topic buttons: no square focus box after a mouse click; rounded ring for keyboard users */
.qa-btn:focus:not(:focus-visible),.faq:focus:not(:focus-visible),.topic-btn:focus:not(:focus-visible),.chip:focus:not(:focus-visible){outline:none}
.qa-btn:focus-visible{outline:2px solid #0176ac;outline-offset:-2px;border-radius:20px}
.topic-btn:focus-visible,.chip:focus-visible{outline:2px solid #0176ac;outline-offset:2px}

/* Tablet: banner same as desktop (text left, scaled art right), buttons and trust items in one line */
@media (min-width:768px) and (max-width:1100px){
.tb-hero > div{flex-wrap:nowrap!important;gap:28px!important;padding-top:24px!important;padding-bottom:24px!important}
.tb-hero-text{flex:1 1 0!important;min-width:0}
.tb-hero h1{font-size:clamp(34px,4.6vw,48px)!important}
.tb-hero-btns{flex-wrap:nowrap!important;gap:10px!important}
.tb-hero-btns a{white-space:nowrap;min-height:50px!important;padding:0 18px!important;font-size:14px!important}
.tb-hero-art{flex:1.1 1 0!important;height:756px!important;zoom:.72}
.tb-hero .inst img{height:500px}
.tb-hero .side{display:flex!important}
.tb-trust > div{flex-wrap:nowrap!important;padding:22px 12px!important}
.tb-trust > div > div{flex:1 1 0!important;min-width:0;padding:4px 14px!important;gap:12px!important}
.tb-trust > div > div > span:first-child{width:44px!important;height:44px!important;border-radius:12px!important}
.tb-trust > div > div > span:last-child > span:first-child{font-size:14px!important}
.tb-trust > div > div > span:last-child > span:last-child{font-size:13px!important}
}
@media (min-width:768px) and (max-width:899px){
.tb-hero-text{flex:1.15 1 0!important}
.tb-hero-art{flex:1 1 0!important;zoom:.5}
.tb-hero-btns a{padding:0 14px!important;font-size:13px!important;gap:6px!important}
.tb-hero-text > span:first-child{font-size:11px!important;letter-spacing:.08em!important;padding:7px 12px!important}
}
@media (min-width:768px) and (max-width:1100px){.tb-trust > div > div{flex-direction:column!important;align-items:center!important;text-align:center;gap:10px!important;padding:6px 12px!important}.tb-trust > div > div > span:last-child{align-items:center}}
/* Tablet header: logo left next to the menu button, quote button shown */
@media (min-width:768px) and (max-width:1100px){.tb-bar{grid-template-columns:auto auto minmax(0,1fr)!important;gap:18px!important}.tb-bar > a{justify-self:start!important}.tb-logo{height:50px!important}}
/* Tablet: 3 products per row */
@media (min-width:768px) and (max-width:1100px){.tb-featured,.tb-grid:not(.is-list),.tb-related{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.pcard h3{font-size:15.5px!important}}
/* Tablet: Featured Set keeps text left, instruments right */
@media (min-width:768px) and (max-width:1100px){.tb-promo{flex-wrap:nowrap!important;gap:24px!important}.tb-promo-text{flex:1.2 1 0!important}.tb-promo-art{flex:1 1 0!important;height:360px!important}.tb-promo-art img{height:380px!important}.tb-promo-btns{flex-wrap:nowrap!important;gap:10px!important}.tb-promo-btns a{white-space:nowrap;min-height:50px!important;padding:0 16px!important;font-size:13.5px!important}}
@media (min-width:768px) and (max-width:899px){.tb-promo-art{height:320px!important}.tb-promo-art img{height:330px!important}}
/* Tablet: four principle boxes in one row */
@media (min-width:768px) and (max-width:1100px){.tb-principles{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}.tb-principles > div{padding:22px 16px!important;gap:10px!important}.tb-principles > div > span:first-child{width:48px!important;height:48px!important;border-radius:14px!important}.tb-principles h3{font-size:17px!important}.tb-principles p{font-size:14px!important}}
/* Tablet: process steps in one row */
@media (min-width:768px) and (max-width:1100px){.tb-steps{flex-wrap:nowrap!important;gap:18px!important}.tb-steps > div{flex:1 1 0!important}.tb-steps > div > div{height:160px!important}.tb-steps > div > div img{max-height:120px!important}.tb-steps h3{font-size:17px!important}.tb-steps p{font-size:14.5px!important}.tb-steps > .side{display:block!important}}
/* Tablet & mobile: private label preview above the OEM text */
@media (max-width:1100px){#oem > div > div{flex-basis:100%!important}#oem .tb-oem-preview{order:-1}}
/* Tablet: OEM boxes in one row, each stacked (icon, heading, description) */
@media (min-width:768px) and (max-width:1100px){#oem .tb-oem-list{flex-direction:row!important;gap:14px!important}#oem .tb-oem-list > li{flex:1 1 0;min-width:0;flex-direction:column;align-items:center!important;text-align:center;gap:12px!important;padding:22px 16px!important}#oem .tb-oem-list > li > span:last-child{align-items:center;gap:6px!important}}

/* Homepage FAQ: intro + buttons left, questions right; tablet/mobile: intro, questions, then buttons */
.tb-hfaq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);grid-template-rows:auto 1fr;grid-template-areas:"intro list" "btns list";column-gap:80px;row-gap:20px;align-items:start}
.tb-hfaq-intro{grid-area:intro;display:flex;flex-direction:column;gap:20px;min-width:0}
.tb-hfaq-btns{grid-area:btns;display:flex;flex-direction:column;gap:20px;min-width:0}
.tb-hfaq-list{grid-area:list}
@media (max-width:1100px){.tb-hfaq{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"intro" "list" "btns";row-gap:32px}}
/* Mobile: centre the WhatsApp number in the top bar */
@media (max-width:700px){.tb-header > div:first-child > div{justify-content:center!important}}
/* Mobile: centre the banner content */
@media (max-width:767px){.tb-hero-text{align-items:center!important;text-align:center}.tb-hero-text > span:first-child{align-self:center!important;font-size:11px!important;letter-spacing:.08em!important;padding:7px 12px!important;white-space:nowrap}.tb-hero-text p{margin-left:auto!important;margin-right:auto!important}.tb-hero-btns{justify-content:center}}
/* Mobile: show the Explore card (selected instrument) centred below the instruments */
@media (max-width:767px){.tb-hero-art{flex-direction:column!important;justify-content:flex-start!important;gap:18px;height:auto!important;padding:8px 0 4px}.tb-hero .side{display:flex!important;position:relative!important;right:auto!important;top:auto!important;width:100%!important;max-width:320px;text-align:left}}
/* Mobile: trust items separated by bottom borders instead of right borders */
@media (max-width:767px){.tb-trust > div{gap:0!important;padding:10px 20px!important}.tb-trust > div > div{flex:1 1 100%!important;border-right:0!important;border-bottom:1px solid #E6EDF3;padding:16px 4px!important}.tb-trust > div > div:last-child{border-bottom:0}}

/* Mobile: Shop by Specialty intro centred, "View all instruments" after the cards */
@media (max-width:767px){#shop .tb-spec-head{display:contents!important}#shop .tb-spec-intro{align-items:center;text-align:center;margin:0 auto}#shop .tb-spec-cards{order:1}#shop .tb-spec-all{order:2;align-self:center}}
/* Mobile: shorter specialty boxes */
@media (max-width:767px){#shop .ccard{height:290px!important}#shop .ccard img{max-height:150px;object-fit:contain;top:40%!important}}

/* Mobile: Featured Instruments header centred */
@media (max-width:767px){.tb-feat-head{flex-direction:column!important;align-items:center!important;text-align:center}.tb-feat-head > div:first-child{align-items:center}.tb-filters{justify-content:center}.tb-filters .chip{height:40px;padding:0 16px;font-size:13.5px}}
/* Mobile: 2 products per row */
@media (max-width:767px){
.tb-featured,.tb-grid:not(.is-list),.tb-related{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.pcard{padding:10px 10px 12px!important;gap:10px!important;border-radius:16px!important}
.pcard-img{height:140px!important;border-radius:12px!important}
.pcard-img img{max-height:110px!important}
.pcard-img > span{top:8px!important;left:8px!important;font-size:10.5px!important;padding:3px 8px!important}
.pcard h3{font-size:14px!important;margin:2px 2px 0!important;text-align:center}
.pcard-foot{margin:auto 2px 0!important;flex-wrap:wrap;gap:8px!important}
.pcard-foot .tb-add{height:38px!important;padding:0 10px!important;font-size:12.5px!important;gap:6px!important;flex:1;justify-content:center}
.pcard-foot .tb-add svg{width:14px!important;height:14px!important}
.pcard-price{font-size:15px!important}
}
/* Mobile: Featured Set centred, buttons after the instruments */
@media (max-width:767px){.tb-promo{flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;text-align:center;gap:18px!important}.tb-promo-text{display:contents!important}.tb-promo-text > *{position:relative;max-width:100%}.tb-promo-text p{margin:0 auto!important}.tb-promo-text > div{justify-content:center}.tb-promo-art{order:1;flex:0 0 auto!important;width:100%;height:280px!important}.tb-promo-art img{height:280px!important}.tb-promo-btns{order:2;justify-content:center;margin-top:0!important}}
/* Mobile: Why Tetrabro centred */
@media (max-width:767px){#about > div > div:first-child{align-items:center!important;text-align:center}#about > div > div:first-child > div{flex-direction:column!important;text-align:center;gap:12px!important}.tb-principles{gap:12px!important}.tb-principles > div{align-items:center!important;text-align:center;padding:20px 14px!important;gap:10px!important}.tb-principles > div > span:first-child{width:48px!important;height:48px!important;border-radius:14px!important}.tb-principles h3{font-size:17px!important}.tb-principles p{font-size:14px!important}}
@media (max-width:767px){.tb-principles{grid-template-columns:minmax(0,1fr)!important}.tb-principles > div{padding:24px 20px!important}.tb-principles p{max-width:300px}}
/* Mobile: homepage FAQ intro and buttons centred */
@media (max-width:767px){.tb-hfaq-intro,.tb-hfaq-btns{align-items:center!important;text-align:center}.tb-hfaq-btns > a{align-self:center!important;text-align:left}}
/* Mobile: CTA boxes centred */
@media (max-width:767px){.tb-cta{flex-direction:column!important;align-items:center!important;text-align:center}.tb-cta > div{align-items:center!important;justify-content:center!important;flex-basis:auto!important;width:100%}.tb-cta p{margin-left:auto!important;margin-right:auto!important}}
/* Newsletter: keep the email field at full button height at every width */
.tb-nl .wpcf7-form-control-wrap{flex:1 1 260px}
.tb-nl-input{flex:0 0 auto!important;height:54px!important}
/* Mobile: newsletter centred, full-width button */
@media (max-width:767px){footer > div:first-child > div:first-child{flex-direction:column!important;align-items:stretch!important;text-align:center;padding:26px 20px!important}footer > div:first-child > div:first-child > span{align-items:center}.tb-newsletter{flex:1 1 auto!important;width:100%}.tb-nl{flex-direction:column}.tb-nl .wpcf7-form-control-wrap{flex:0 0 auto!important;width:100%}.tb-nl-input{text-align:center}.wpcf7-submit.tb-nl-btn{width:100%}}
/* Mobile: footer centred */
@media (max-width:767px){footer > div:first-child > div:nth-child(2){gap:36px!important}footer > div:first-child > div:nth-child(2) > div{flex-basis:100%!important;align-items:center!important;text-align:center}footer > div:first-child > div:nth-child(2) img{align-self:center!important}footer > div:first-child > div:nth-child(2) p{margin-left:auto!important;margin-right:auto!important}footer > div:first-child > div:nth-child(2) > div > div{justify-content:center}footer > div:last-child > div{flex-direction:column;justify-content:center!important;text-align:center;gap:4px!important}}
/* Mobile: 50px top/bottom section padding */
@media (max-width:767px){main > section:not(.tb-hero):not(.tb-trust) > div:first-child{padding-top:50px!important;padding-bottom:50px!important}main > section:not(.tb-hero):not(.tb-trust) > div:first-child[style*="padding:0 24px"]{padding-top:0!important}footer > div:first-child{padding-top:50px!important}footer > div:first-child > div:first-child + div{margin-top:0}}
/* Mobile: OEM intro centred and above the preview image */
@media (max-width:767px){#oem > div{flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;text-align:center;gap:22px!important}#oem > div > div:not(.tb-oem-preview){display:contents!important}#oem .eyebrow,#oem h2,#oem > div > div:not(.tb-oem-preview) > p{order:-2}#oem > div > div:not(.tb-oem-preview) > p{margin:0 auto!important}#oem .tb-oem-preview{order:-1;width:100%}#oem .tb-oem-list{width:100%;text-align:left}#oem > div > div:not(.tb-oem-preview) > div{justify-content:center}#oem > div > div:not(.tb-oem-preview) > a{align-self:center!important}}
/* Mobile: hide the WhatsApp card in the homepage FAQ section */
@media (max-width:767px){.tb-hfaq-btns > a:first-child{display:none!important}}

/* Mobile: About page content centred */
@media (max-width:767px){
.tb-ab{text-align:center}
.tb-ab [style*="flex-direction:column"]:not(.xp *){align-items:center}
.tb-ab [style*="align-self:flex-start"]{align-self:center!important}
.tb-ab [style*="display:flex;flex-wrap:wrap;gap:12px"]{justify-content:center}
.tb-ab-who [style*="display:flex;align-items:center;gap:12px;font-weight:600"]{justify-content:center;text-align:left}
.tb-ab-story [style*="padding:22px 24px 22px 64px"]{padding:58px 20px 22px!important}
.tb-ab-story [style*="padding:22px 24px 22px 64px"] > svg{left:50%!important;transform:translateX(-50%)}
.tb-ab-story [style*="border-top:1px solid #DCE7EF"]{justify-content:center}
.tb-ab-make [style*="justify-content:space-between"]{flex-direction:column;align-items:center!important}
.tb-ab-make [style*="minmax(520px,1fr)"]{grid-template-columns:minmax(0,1fr)!important}
.tb-ab-make .spec{flex-direction:column;align-items:center!important;text-align:center;gap:16px!important}
.tb-ab-make .spec > span:first-child{width:100%!important;max-width:280px}
.tb-ab-crafted [style*="display:flex;align-items:center;gap:10px;padding:0 4px"]{justify-content:center}
}
@media (max-width:767px){.tb-ab-crafted [style*="height:120px;border-radius:16px"]{align-self:stretch!important}.tb-ab-crafted [style*="max-width:250px"]{max-width:320px!important;width:100%}}
/* Mobile: About "Who We Are" photo before the points, shorter; location point hidden */
@media (max-width:767px){.tb-ab-who > div{flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;gap:22px!important}.tb-ab-who > div > div:first-child{display:contents!important}.tb-ab-who > div > div:last-child{order:1;flex:0 0 auto!important;width:100%}.tb-ab-who img{height:260px!important}.tb-ab-who [style*="border-top:1px solid #E3ECF2"]{order:2;align-self:stretch}.tb-ab-who > div > div:first-child > div:last-child{order:3}.tb-ab-who [style*="border-top:1px solid #E3ECF2"] > span:first-child{display:none!important}}

/* Mobile: Our Story ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â readable 4-principles card, placed after the description, before the signature */
@media (max-width:767px){
.tb-ab-story > div{flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;gap:22px!important}
.tb-ab-story > div > div:last-child{display:contents!important}
.tb-ab-story > div > div:first-child{order:1;flex:0 0 auto!important;align-self:stretch;width:100%}
.tb-ab-story [style*="border-top:1px solid #DCE7EF"]{order:2;align-self:stretch}
.tb-ab-story [style*="padding:22px 24px 22px 64px"]{align-self:stretch}

.xp{transform:none!important;margin:0!important;width:100%!important;height:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:296px 16px 16px;border-radius:28px!important}
.xp > span[style*="width:470px"]{display:none}
.xp > span[style*="width:330px"]{width:236px!important;height:236px!important;top:146px!important}
.xp > span[style*="font-size:64px"]{top:146px!important;font-size:44px!important}
.xp > img.seg{width:92px!important}
.xp > img.seg:nth-of-type(1){left:calc(50% - 100px)!important;top:46px!important}
.xp > img.seg:nth-of-type(2){left:calc(50% + 8px)!important;top:46px!important}
.xp > img.seg:nth-of-type(3){left:calc(50% - 100px)!important;top:154px!important}
.xp > img.seg:nth-of-type(4){left:calc(50% + 8px)!important;top:154px!important}
.xp > div{position:static!important;width:auto!important;align-items:center!important;text-align:center!important;gap:6px!important;padding:14px 10px;border-radius:16px;background:#F4F8FB}
.xp > div > span:first-child{justify-content:center}
.xp > div[style*="right:34px"] > span:first-child{flex-direction:row-reverse}
.xp > div > span:first-child > span[style*="font-size:18px"]{font-size:15.5px!important}
.xp > div > span:last-child{font-size:13.5px!important;line-height:1.45!important}
}
/* Mobile: Our Story principle tiles one per row, stacked (badge, name, description) */
@media (max-width:767px){.xp{grid-template-columns:minmax(0,1fr)!important}.xp > div > span:first-child,.xp > div[style*="right:34px"] > span:first-child{flex-direction:column!important;gap:8px!important}.xp > div[style*="right:34px"] > span:first-child > span:last-child{order:-1}.xp > div{padding:16px 14px!important}.xp > div > span:first-child > span[style*="font-size:18px"]{font-size:16.5px!important}.xp > div > span:last-child{font-size:14.5px!important}}
/* Mobile: smaller logo mark in the Our Story card */
@media (max-width:767px){.xp{padding-top:226px!important}.xp > span[style*="width:330px"]{width:184px!important;height:184px!important;top:112px!important}.xp > span[style*="font-size:64px"]{top:112px!important;font-size:34px!important}.xp > img.seg{width:68px!important}.xp > img.seg:nth-of-type(1){left:calc(50% - 74px)!important;top:38px!important}.xp > img.seg:nth-of-type(2){left:calc(50% + 6px)!important;top:38px!important}.xp > img.seg:nth-of-type(3){left:calc(50% - 74px)!important;top:118px!important}.xp > img.seg:nth-of-type(4){left:calc(50% + 6px)!important;top:118px!important}}
/* Mobile: FAQs page help card after the questions, centred */
@media (max-width:767px){.tb-faq-row{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:28px!important}.tb-faq-row > aside{display:contents!important}.tb-faq-main{order:1;flex:0 0 auto!important}.tb-faq-help{order:2;align-items:center!important;text-align:center}.tb-faq-help a{align-self:center!important}}
@media (max-width:767px){.tb-faq-main > div:first-child{flex-direction:column!important;align-items:center!important;text-align:center;gap:4px!important}}
/* Mobile: hide the FAQs page "Talk to our team" card */
@media (max-width:767px){.tb-faq-help{display:none!important}}
/* Mobile: Contact "Get in Touch" intro centred */
@media (max-width:767px){.tb-ct > div > div:first-child{align-items:center!important;text-align:center}.tb-ct > div > div:first-child > div{align-items:center}.tb-ct > div > div:first-child [style*="flex-wrap:wrap;gap:8px"]{justify-content:center}.tb-ct > div > div:first-child > a{align-self:center!important}}

/* Mobile: Contact list as centred boxes, no 01-04 numbers */
@media (max-width:767px){
.tb-clist{gap:12px;border-top:0!important}
.tb-clist::before,.tb-clist .clink::after{display:none!important}
.tb-clist .idx,.tb-clist .clink .arr{display:none!important}
.tb-clist .clink,.tb-clist > div{flex-direction:column;align-items:center!important;text-align:center;gap:8px!important;padding:22px 16px!important;border:1px solid #E3ECF2!important;border-radius:20px!important;background:#FFFFFF}
.tb-clist [style*="flex-direction:column"]{align-items:center}
.tb-clist .lbl{justify-content:center}
.tb-clist .val{font-size:19px!important;overflow-wrap:normal!important}
.tb-clist [style*="flex-wrap:wrap;gap:10px"]{justify-content:center}
}

/* Mobile: enquiry type capsules all full width; submit button full width */
@media (max-width:767px){
.tb-types .wpcf7-form-control-wrap{display:block;width:100%;align-self:stretch}
.tb-types .wpcf7-radio{display:grid!important;grid-template-columns:minmax(0,1fr);gap:10px!important;width:100%}
.tb-types .wpcf7-list-item{display:block;width:100%;margin:0}
.tb-types .wpcf7-list-item label{width:100%;justify-content:center}
.tb-types .wpcf7-list-item label::before{position:absolute;left:18px;top:50%;margin-top:-7.5px}
.tb-formbar{flex-direction:column;align-items:stretch!important}
.tb-formbar .tb-submit-wrap{display:flex;flex-direction:column;align-items:center;width:100%}
.tb-formbar .wpcf7-submit{width:100%}
}
/* Account page: no horizontal scroll on small screens */
@media (max-width:900px){.logged-in.woocommerce-account .tb-content > .woocommerce{grid-template-columns:minmax(0,1fr)!important}}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content,.tb-acc-user,.tb-dash,.tb-dash-hero,.tb-dash-tiles,.tb-dash-recent{min-width:0;max-width:100%}
@media (max-width:767px){.tb-dash-hero{padding:24px 20px!important}.tb-dash-hero .tb-btn{width:100%}.tb-dash-list li{flex-wrap:wrap}.woocommerce-account table.shop_table{display:block;overflow-x:auto}}

/* My Account (mobile): accordion menu + centred content */
@media (max-width:767px){
.tb-acc-panel{list-style:none;padding:14px 4px 10px;text-align:center}
.tb-acc-nav .tb-acc-chev{opacity:1!important;transition:transform .2s ease}
.tb-acc-nav li.is-open .tb-acc-chev{transform:rotate(90deg)}
.tb-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout .tb-acc-chev{opacity:0!important}
.tb-acc-panel .tb-dash-hero{flex-direction:column;align-items:center!important;text-align:center}
.tb-acc-panel .tb-dash-hero > div{align-items:center;width:100%}
.tb-acc-panel .tb-dash-hero .eyebrow{justify-content:center}
.tb-acc-panel .tb-dash-tiles{grid-template-columns:minmax(0,1fr)!important}
.tb-acc-panel .tb-dash-tile{flex-direction:column;text-align:center;gap:10px}
.tb-acc-panel .tb-dash-tile > span:nth-child(2){align-items:center}
.tb-acc-panel .tb-dash-tile-go{display:none}
.tb-acc-panel .tb-dash-recent > div:first-child{flex-direction:column;justify-content:center}
.tb-acc-panel .tb-dash-list li{flex-direction:column;justify-content:center;text-align:center;gap:8px}
.tb-acc-panel .tb-dash-list li > span{align-items:center}
.tb-acc-panel .woocommerce-Address-title{flex-direction:column!important;gap:10px!important}
.tb-acc-panel .woocommerce-Address-title a.edit{margin-left:0!important}
.tb-acc-panel form .form-row{text-align:center}
.tb-acc-panel form .form-row input,.tb-acc-panel form .form-row select,.tb-acc-panel form .form-row textarea{text-align:left}
.tb-acc-panel .woocommerce-EditAccountForm,.tb-acc-panel .woocommerce-address-fields{padding:20px 16px!important}
.tb-acc-panel .woocommerce-info,.tb-acc-panel .woocommerce-message,.tb-acc-panel .woocommerce-error{text-align:left}
.tb-acc-panel .woocommerce-info .button,.tb-acc-panel .woocommerce-message .button{float:none!important;display:flex!important;justify-content:center;width:100%;margin-top:12px!important}
}
/* Mobile: account help card centred */
@media (max-width:767px){.tb-acc-help{align-items:center!important;text-align:center}.tb-acc-help a{align-self:center!important}}
/* Mobile: checkout headings centred */
@media (max-width:767px){.tb-checkout h3,.tb-checkout #order_review_heading{text-align:center}}
/* Mobile: order review (Your Quote Request) content centred */
@media (max-width:767px){.tb-co-side,.tb-co-side table.shop_table th,.tb-co-side table.shop_table td,.tb-co-side #payment ul.payment_methods li,.tb-co-side .woocommerce-privacy-policy-text,.tb-co-side .woocommerce-terms-and-conditions-wrapper,.tb-co-side .form-row.place-order{text-align:center!important}.tb-co-side #place_order{float:none!important;width:100%!important;margin-top:8px}.tb-co-side{padding:22px 16px!important}}

/* Shop (mobile): Filters button + specialty dropdown, filter drawer */
.tb-shop-mbar,.tb-fdrawer-head,.tb-fdrawer-overlay{display:none}
@media (max-width:767px){
.tb-shop-mbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px 20px 0}
.tb-filter-open{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border:1.5px solid #D3E4F0;border-radius:999px;background:#FFFFFF;color:#1E2A38;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14.5px;cursor:pointer;flex-shrink:0}
.tb-filter-count{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#0176ac;color:#FFFFFF;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.tb-cat-select{display:flex;min-width:0}
.tb-cat-select select{height:46px;max-width:210px;padding:0 38px 0 16px;border:1.5px solid #D3E4F0;border-radius:999px;background:#FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E2A38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px;-webkit-appearance:none;appearance:none;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#1E2A38;text-overflow:ellipsis}
.tb-shop-tiles{display:none!important}
.tb-shop-side{position:fixed!important;top:0;left:0;bottom:0;z-index:1001;width:min(340px,88vw)!important;flex:none!important;background:#FFFFFF;overflow-y:auto;padding:0 16px 24px;transform:translateX(-105%);transition:transform .3s ease;box-shadow:30px 0 60px -30px rgba(1,40,80,.45)}
.tb-shop-side.is-open{transform:none}
.tb-shop-side .tb-side-spec{display:none!important}
.tb-fdrawer-head{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1;margin:0 -16px 16px;padding:16px 16px;background:#FFFFFF;border-bottom:1px solid #E3ECF2;font-family:'Montserrat',sans-serif;font-weight:600;font-size:20px;color:#111111}
.tb-filter-close{width:42px;height:42px;border:1.5px solid #D3E4F0;border-radius:50%;background:#FFFFFF;color:#1E2A38;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.tb-fdrawer-overlay:not([hidden]){display:block;position:fixed;inset:0;z-index:1000;background:rgba(10,30,50,.45)}
}

.tb-bulk-m{display:none}
@media (max-width:767px){
.tb-shop-tools{display:none!important}
.tb-shop-side .tb-bulk-card{display:none!important}
.tb-bulk-m{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;margin-top:8px;padding:28px 22px;border-radius:22px;background:#0176ac;color:#FFFFFF}
}
@media (max-width:767px){.tb-shop-tiles + section > div{padding-top:20px!important}.tb-shop-side{box-shadow:none!important}.tb-shop-side.is-open{box-shadow:30px 0 60px -30px rgba(1,40,80,.45)!important}}
@media (max-width:767px){#main > section.tb-shop-tiles + section > div:first-child{padding-top:20px!important}}
/* Mobile: Related Instruments heading centred, View all after the products */
@media (max-width:767px){.tb-rel-head{display:contents!important}.tb-rel-intro{align-items:center;text-align:center}.tb-related{order:1}.tb-rel-all{order:2;align-self:center}}
/* Product page: category label sits close under the title */
.single-product h1 + a.eyebrow{margin-top:-10px}
/* Mobile: hide the legal pages contents box */
@media (max-width:767px){.tb-legal-toc{display:none!important}}
/* Mobile: legal help box after the content, centred, buttons inline */
@media (max-width:767px){.tb-legal-side{order:2}.tb-legal-help{flex-direction:row!important;flex-wrap:wrap;justify-content:center;text-align:center;gap:10px!important}.tb-legal-help > span{flex-basis:100%}.tb-legal-help a{align-self:center!important;margin-top:4px!important}}
/* Catalog data: article number, length chips, specifications table (products with catalog specs only) */
.tb-artno{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:-8px;padding:6px 12px 6px 6px;border-radius:999px;background:#F4F8FB;border:1px solid #E3ECF2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;font-weight:600;letter-spacing:.02em;color:#1E2A38}
.tb-artno > span{padding:3px 9px;border-radius:999px;background:#0176ac;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.tb-lens{display:flex;flex-direction:column;gap:10px}
.tb-lens-label{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5B6779}
.tb-lens-row{display:flex;flex-wrap:wrap;gap:8px}
.tb-lens .chip{height:40px;padding:0 18px}
.tb-lens .chip:disabled{cursor:default;opacity:1}
.tb-lens .chip:focus-visible{outline:3px solid rgba(1,118,172,.35);outline-offset:2px}
.tb-size-link{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin-top:-8px;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#0176ac;text-decoration:none}
.tb-size-link:hover{text-decoration:underline}
.tb-specs{width:100%;border:1px solid #E3ECF2;border-radius:20px;border-collapse:separate;border-spacing:0;overflow:hidden;background:#FFFFFF;font-size:15.5px}
.tb-specs th,.tb-specs td{padding:14px 22px;text-align:left;vertical-align:top;border-bottom:1px solid #E3ECF2}
.tb-specs tr:last-child th,.tb-specs tr:last-child td{border-bottom:0}
.tb-specs th{width:38%;background:#F4F8FB;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#1E2A38}
.tb-specs td{color:#33404F}
.tb-specs .tb-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600;color:#111111}
@media (max-width:767px){.tb-specs-sec > div{padding-bottom:56px!important}.tb-specs,.tb-specs tbody,.tb-specs tr,.tb-specs th,.tb-specs td{display:block;width:100%}.tb-specs th{padding:12px 18px 2px;background:#FFFFFF;border-bottom:0;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:#5B6779}.tb-specs td{padding:2px 18px 12px}.tb-specs tr{border-bottom:1px solid #E3ECF2}.tb-specs tr:last-child{border-bottom:0}}
/* Card article number (catalog products only) */
.pcard-sku{margin:-6px 4px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;font-weight:600;letter-spacing:.02em;color:#5B6779}
.tb-grid.is-list .pcard-img{grid-row:1 / span 2}
.tb-grid.is-list .pcard h3{grid-column:2;grid-row:1;align-self:end}
.tb-grid.is-list .pcard-sku{grid-column:2;grid-row:2;align-self:start;margin:0}
.tb-grid.is-list .pcard > div:last-child{grid-column:3;grid-row:1 / span 2}
@media (max-width:700px){.tb-grid.is-list .pcard-img,.tb-grid.is-list .pcard h3,.tb-grid.is-list .pcard-sku,.tb-grid.is-list .pcard > div:last-child{grid-column:auto;grid-row:auto}}
@media (max-width:767px){.pcard-sku{font-size:11.5px;margin-top:-4px}}
/* Sub-category navigation on specialty pages */
.tb-subnav{display:flex;flex-wrap:wrap;gap:8px}
.tb-subnav .chip{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;text-decoration:none}
.tb-subnav-n{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#0176ac;color:#FFFFFF;font-size:12px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.tb-subnav .chip.is-on .tb-subnav-n{background:#FFFFFF;color:#0176ac}
@media (max-width:767px){.tb-subnav{gap:8px}.tb-subnav .chip{height:40px;padding:0 14px;font-size:13.5px;max-width:100%}}
.tb-side-subs{display:flex;flex-direction:column;gap:4px;margin:4px 0 8px 18px}
.tb-side-subs[hidden]{display:none}
.tb-side-chev{transition:transform .2s ease}
.tb-side-toggle[aria-expanded="true"] .tb-side-chev{transform:rotate(90deg)}
@media (prefers-reduced-motion:reduce){.tb-side-chev{transition:none}}
/* Product page hover magnifier */
.tb-zoom-lens{position:absolute;left:0;top:0;width:210px;height:210px;border-radius:50%;border:4px solid #FFFFFF;box-shadow:0 14px 34px -10px rgba(20,40,60,.45),0 0 0 1px rgba(1,118,172,.18);background-repeat:no-repeat;pointer-events:none;opacity:0;transform:scale(.85);transition:opacity .15s ease,transform .15s ease;z-index:3}
.tb-zoom-lens.is-on{opacity:1;transform:scale(1)}
.tb-zoom-ready .tb-zoom-img{cursor:zoom-in}
@media (prefers-reduced-motion:reduce){.tb-zoom-lens{transition:none}}
@media (hover:none),(pointer:coarse){.tb-zoom-lens{display:none}}
/* Bright polished steel photos: add a thin dark edge so the instrument doesn't blend into the pale card. Image file unchanged. */
img[src*="/luer-bone-rongeur"],img[src*="/dental-extraction-forceps-lower"],img[src*="/senn-miller-retractor"],img[src*="/langenbeck-retractor"]{filter:drop-shadow(0 0 1px rgba(30,45,60,.75)) drop-shadow(0 0 3px rgba(30,45,60,.3)) drop-shadow(0 18px 16px rgba(20,40,60,.24))!important}
.tb-side-sub{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:10px;font-size:14.5px;color:#33404F;text-decoration:none}
.tb-side-sub span{min-width:26px;height:24px;padding:0 8px;border-radius:999px;background:#0176ac;color:#FFFFFF;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 12px -6px rgba(1,118,172,.7)}
.tb-side-sub:hover{background:#FFFFFF}
.tb-side-sub.is-on{background:#FFFFFF;color:#0176ac;font-weight:700}
.tb-side-sub{padding:10px 12px;font-weight:600}
.tb-side-sub.is-on{background:#0176ac;color:#FFFFFF;box-shadow:0 12px 22px -14px rgba(1,118,172,.8)}
.tb-side-sub.is-on span{background:#FFFFFF;color:#0176ac;box-shadow:none}
/* PDF catalogue downloads */
.tb-catdl{display:flex;align-items:center;gap:16px;padding:14px 16px 14px 14px;border-radius:18px;background:var(--catbg,#F4F8FB);border:1.5px solid transparent;text-decoration:none;color:#1E2A38;transition:border-color .2s ease,box-shadow .2s ease}
.tb-catdl:hover{border-color:var(--cat,#0176ac);box-shadow:0 16px 30px -22px rgba(1,50,90,.55)}
.tb-catdl-ic{width:48px;height:48px;border-radius:14px;background:var(--cat,#0176ac);color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.tb-catdl-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.tb-catdl-tx b{font-family:'Montserrat',sans-serif;font-weight:700;font-size:16px;color:#111111}
.tb-catdl-tx span{font-size:14px;color:#44505F}
.tb-catdl-btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:999px;background:#FFFFFF;color:#111111;font-family:'Montserrat',sans-serif;font-weight:700;font-size:14px;flex-shrink:0;box-shadow:0 8px 18px -12px rgba(1,50,90,.5)}
@media (max-width:767px){.tb-catdl{flex-wrap:wrap;gap:12px}.tb-catdl-tx b{font-size:15px}.tb-catdl-btn{width:100%;justify-content:center}}
.tb-pdl{align-self:flex-start;display:inline-flex;align-items:flex-start;gap:8px;line-height:1.45;font-family:'Montserrat',sans-serif;font-weight:600;font-size:14px;color:#0176ac;text-decoration:none}
.tb-pdl-tx{min-width:0}
.tb-pdl-sz{color:#5B6779;font-weight:500;white-space:nowrap}
.tb-pdl:hover{text-decoration:underline}
.tb-fpdf{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:8px;margin-top:6px;font-size:13.5px}
.tb-fpdf > span{grid-column:1 / -1;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#5B6779}
.tb-fpdf a{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 14px;border-radius:999px;border:1.5px solid #BCD6E8;background:#FFFFFF;color:#0176ac;font-family:'Montserrat',sans-serif;font-weight:600;text-decoration:none;white-space:nowrap;transition:border-color .2s ease,background .2s ease,color .2s ease}
.tb-fpdf a:hover{border-color:#0176ac;background:#0176ac;color:#FFFFFF}
.tb-crumb{display:inline-flex;align-items:center;gap:8px;min-width:0}
.tb-pdl svg{margin-top:2px;flex-shrink:0}
/* Hero: five real product photos at one shared height (--h); each instrument's width follows its photo's shape (--a, sum --s) */
.tb-hero .inst-row{--h:430px;--g:18px;gap:var(--g);width:min(100%,calc(var(--h) * var(--s) + var(--g) * (var(--n) - 1)))}
.tb-hero .inst-row .inst{flex:var(--a) 1 0;min-width:0}
.tb-hero .inst-row .inst img{width:100%!important;height:auto!important;max-width:none}
@media (max-width:767px){.tb-hero .inst-row{--h:300px;--g:10px}.tb-hero .inst-row .inst{gap:12px}}
@media (min-width:768px){.tb-hero .side{top:24px!important}.tb-hero .inst-row{--h:410px;margin-top:84px!important}}
