:root {
  --ds-ink: #07111f;
  --ds-panel: #0d1b2d;
  --ds-blue: #1473e6;
  --ds-cyan: #59c7ff;
  --ds-orange: #ff6a3d;
  --ds-ice: #f3f6f8;
  --ds-line: #d4dce5;
  --ds-muted: #607084;
  --ds-white: #fff;
  --ds-max: 1420px;
}

/* OBDPoint 0.6 — approved commerce direction */
:root { --op-orange:#f0441d; --op-graphite:#17212b; --op-soft:#f5f7f9; --op-border:#dfe4e8; }
.ds-header { position:sticky; top:0; background:#fff; }
.ds-header-main { min-height:76px; display:grid; grid-template-columns:270px minmax(260px,1fr) auto; gap:1.5rem; align-items:center; }
.ds-header-main .ds-search { display:flex; }
.ds-header-main .ds-search label { min-width:0; flex:1; }
.ds-header-main .ds-search input { width:100%; min-width:0; border-radius:4px 0 0 4px; }
.ds-header-main .ds-search button { min-width:96px; border:0; border-radius:0 4px 4px 0; background:var(--op-orange); color:#fff; font-weight:800; }
.ds-actions { justify-self:end; display:flex; align-items:center; gap:.45rem; flex-wrap:nowrap; }
.ds-account { width:auto; min-width:102px; min-height:44px; padding:.35rem .55rem; border:0; gap:.5rem; flex:0 0 auto; }
.ds-account span { display:flex; flex-direction:column; min-width:max-content; text-align:left; line-height:1.05; white-space:nowrap; }
.ds-account small { margin-top:.22rem; color:#6b7280; font-size:.66rem; font-weight:500; }
.ds-cart { min-height:44px; padding:.35rem .55rem; border:0; gap:.42rem; }
.ds-cart svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ds-nav-row { border-top:1px solid #edf0f2; }
.ds-nav-row>.ds-container { min-height:44px; padding-block:.45rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.ds-nav { display:flex; align-items:center; gap:clamp(.65rem,1vw,1rem); width:100%; min-width:0; }
.ds-nav-row .ds-nav > ul { flex:1; min-width:0; justify-content:space-between; flex-wrap:nowrap; gap:clamp(.45rem,.8vw,.9rem); }
.ds-nav-row .ds-nav > ul > li { white-space:nowrap; }
.op-business-account { min-height:42px; padding:.48rem .9rem; display:inline-flex; align-items:center; gap:.4rem; border:1px solid var(--op-orange); border-radius:3px; color:var(--op-orange); font-size:.74rem; font-weight:850; white-space:nowrap; transition:background .18s ease,color .18s ease,transform .18s ease; }
.op-business-account:hover { background:var(--op-orange); color:#fff; transform:translateY(-2px); }

.op-home { background:#fff; }
.op-hero { position:relative; height:430px; overflow:hidden; background:#0d131a; color:#fff; }
.op-hero>img { width:100%; height:100%; object-fit:cover; object-position:center; }
.op-hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,9,13,.98) 0%,rgba(5,9,13,.88) 38%,rgba(5,9,13,.18) 72%); }
.op-hero-content { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.op-eyebrow { margin:0 0 .6rem; color:#ffb09e; font-size:.67rem; font-weight:850; letter-spacing:.16em; }
.op-hero h1 { margin:0; font-size:clamp(3rem,4.7vw,5rem); line-height:.86; letter-spacing:-.055em; }
.op-hero h1 span { color:var(--op-orange); }
.op-hero-lead { max-width:560px; margin:1rem 0 1.15rem; color:#d7dde4; font-size:1rem; }
.op-primary { min-height:48px; padding:0 1.35rem; display:inline-flex; gap:1.2rem; align-items:center; border-radius:3px; background:var(--op-orange); color:#fff; font-weight:850; }
.op-capabilities { width:min(720px,100%); margin-top:1.2rem; display:grid; grid-template-columns:repeat(4,1fr); border-left:1px solid rgba(255,255,255,.28); }
.op-capabilities div { padding:.2rem 1rem; display:grid; border-right:1px solid rgba(255,255,255,.28); }
.op-capabilities strong { font-size:.8rem; }
.op-capabilities small { margin-top:.15rem; color:#aeb8c4; font-size:.65rem; }

.op-catalog-layout { margin-top:.75rem; }
.op-primary-categories { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:.65rem; }
.op-primary-categories>a { grid-column:span 2; }
.op-primary-categories>a:nth-child(7) { grid-column:2 / span 2; }
.op-primary-categories>a { min-height:200px; padding:.55rem .65rem .7rem; display:grid; grid-template-columns:1fr auto; grid-template-rows:122px auto; gap:.35rem .5rem; align-items:center; border:0; background:#fff; overflow:hidden; transition:transform .2s ease,background .2s ease; }
.op-primary-categories .op-category-visual { grid-column:1 / -1; width:100%; height:122px; margin:0; display:grid; place-items:center; overflow:hidden; border:1px solid var(--op-border); border-radius:8px; background:#fff; }
.op-primary-categories img { width:100%; height:114px; object-fit:contain; object-position:center; transition:transform .22s ease; }
.op-primary-categories span { display:grid; }
.op-primary-categories strong { font-size:.82rem; transition:color .18s ease; }
.op-primary-categories small { margin-top:.18rem; color:#6b7280; font-size:.66rem; }
.op-primary-categories b { font-weight:500; transition:transform .18s ease,color .18s ease; }
.op-primary-categories>a:hover { transform:translateY(-4px); background:#fafbfc; }
.op-primary-categories>a:hover img { transform:scale(1.06); }
.op-primary-categories>a:hover strong,.op-primary-categories>a:hover b { color:var(--op-orange); }
.op-primary-categories>a:hover b { transform:translateX(5px); }

.op-nav-category-tree { position:relative; flex:0 0 auto; }
.op-nav-category-tree summary { min-height:36px; padding:.35rem .6rem; display:flex; align-items:center; justify-content:space-between; gap:.8rem; list-style:none; cursor:pointer; border:1px solid var(--op-border); border-radius:6px; background:#fff; color:var(--op-graphite); font-size:.82rem; font-weight:800; white-space:nowrap; }
.op-nav-category-tree summary::-webkit-details-marker { display:none; }
.op-nav-category-tree summary::after { content:'+'; color:var(--op-orange); font-size:1.3rem; line-height:1; font-weight:400; }
.op-nav-category-tree[open] summary::after { content:'−'; }
.op-nav-category-tree summary:focus-visible { outline:2px solid var(--op-orange); outline-offset:2px; }
.op-nav-category-panel { position:absolute; top:calc(100% + .45rem); left:0; z-index:60; width:340px; max-width:90vw; max-height:min(70vh,620px); overflow:auto; padding:.75rem; border:1px solid var(--op-border); border-radius:8px; background:#fff; box-shadow:0 16px 34px rgba(7,17,31,.16); }
.ds-nav .op-category-tree-list,.ds-nav .op-category-tree-list ul { margin:0; padding:0; list-style:none; }
.ds-nav .op-category-tree-list { display:grid; grid-template-columns:1fr; gap:.3rem; }
.ds-nav .op-category-tree-list .children { display:block; margin:.55rem 0 0 .15rem; padding-left:.7rem; border-left:1px solid #cfd7de; }
.op-category-tree-list>li { min-width:0; padding:.45rem .55rem; border:1px solid var(--op-border); border-radius:6px; background:#f8fafb; }
.op-category-tree-list>li>a { color:var(--op-graphite); font-size:.8rem; font-weight:800; }
.op-category-tree-list .children li { margin:.35rem 0; }
.op-category-tree-list .children a { color:#475563; font-size:.73rem; }
.ds-nav .op-category-tree-list a { white-space:normal; }
.ds-nav .op-category-tree-list a::after { display:none; }
.op-category-tree-list a:hover { color:var(--op-orange); }


.op-home-brands { margin-top:1rem; padding:1.1rem 1.2rem 1.25rem; border:1px solid var(--op-border); border-radius:8px; background:#f8fafb; }
.op-home-brands-heading { margin-bottom:.85rem; display:flex; align-items:end; justify-content:space-between; gap:1rem; }
.op-home-brands-heading small { color:var(--op-orange); font-size:.6rem; font-weight:850; letter-spacing:.12em; }
.op-home-brands-heading h2 { margin:.15rem 0 0; color:var(--op-graphite); font-size:1.3rem; }
.op-home-brands-heading>a { color:var(--op-orange); font-size:.72rem; font-weight:850; white-space:nowrap; }
.op-home-brand-list { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:.55rem; }
.op-home-brand-list>a { min-height:84px; padding:.6rem; display:flex; align-items:center; justify-content:center; border:1px solid var(--op-border); border-radius:6px; background:#fff; text-align:center; transition:border-color .18s ease,transform .18s ease; }
.op-home-brand-list>a:hover { border-color:var(--op-orange); transform:translateY(-2px); }
.op-home-brand-list .op-brand-mark { width:100%; height:46px; display:grid; place-items:center; }
.op-home-brand-list img { display:block; max-width:min(100%,130px); max-height:38px; width:auto; height:auto; object-fit:contain; }
.op-home-brand-list [data-brand="thinkcar"] img { max-height:34px; }
.op-home-brand-list .op-brand-name { color:var(--op-graphite); font-size:.76rem; line-height:1.25; font-weight:700; text-transform:uppercase; overflow-wrap:anywhere; }
.op-home-brand-list .op-brand-no-logo { display:flex; align-items:center; justify-content:center; }
.op-brand-no-logo .op-brand-mark { display:none; }
@media(max-width:1100px){.op-home-brand-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.op-home-brands{padding:.9rem}.op-home-brand-list{grid-template-columns:repeat(2,minmax(0,1fr))}.op-home-brands-heading h2{font-size:1.15rem}}


.op-vehicle-guide { margin-top:.75rem; padding:.85rem 1rem; display:grid; grid-template-columns:220px 1fr 190px; gap:1rem; align-items:center; border:1px solid var(--op-border); background:var(--op-soft); }
.op-guide-title,.op-guide-help { display:grid; }
.op-guide-title strong,.op-guide-help strong { text-transform:uppercase; font-size:.74rem; }
.op-guide-title small { color:#6b7280; font-size:.66rem; }
.op-guide-fields { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:.55rem; }
.op-guide-fields>a { min-height:42px; padding:0 .8rem; display:flex; align-items:center; justify-content:space-between; border:1px solid #cfd6dc; background:#fff; font-size:.72rem; }
.op-guide-fields .op-guide-submit { background:var(--op-graphite); color:#fff; border-color:var(--op-graphite); font-weight:800; }
.op-guide-help a { margin-top:.18rem; color:var(--op-orange); font-size:.68rem; font-weight:800; }
.op-guide-note { grid-column:1/-1; margin:0; color:#737d87; font-size:.63rem; text-align:center; }

.op-vehicle-cards { margin-top:.75rem; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
.op-vehicle-cards>a { min-height:195px; padding:.55rem .75rem .8rem; display:grid; grid-template-columns:1fr auto; align-items:end; border:0; background:#fff; transition:transform .2s ease,background .2s ease; }
.op-vehicle-cards>a:hover { transform:translateY(-4px); background:#fafbfc; }
.op-vehicle-cards .op-category-visual { grid-column:1 / -1; width:100%; height:120px; margin:0; display:grid; place-items:center; overflow:hidden; border:1px solid var(--op-border); border-radius:8px; background:#fff; }
.op-vehicle-cards img { width:100%; height:112px; object-fit:contain; object-position:center; filter:none; transition:transform .22s ease; }
.op-vehicle-cards>a:hover img { transform:scale(1.06); }
.op-vehicle-cards span { display:grid; }
.op-vehicle-cards strong { font-size:.86rem; transition:color .18s ease; }
.op-vehicle-cards small { margin-top:.2rem; color:#6b7280; font-size:.65rem; }
.op-vehicle-cards b { color:var(--op-orange); transition:transform .18s ease; }
.op-vehicle-cards>a:hover strong { color:var(--op-orange); }
.op-vehicle-cards>a:hover b { transform:translateX(5px); }

.op-shop-categories,.op-products { padding-top:1.4rem; }
.op-section-heading { display:flex; align-items:center; justify-content:space-between; }
.op-section-heading h2 { margin:0 0 .7rem; color:var(--op-graphite); font-size:1.2rem; }
.op-section-heading a { color:var(--op-orange); font-size:.7rem; font-weight:800; }
.op-compact-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:.55rem; }
.op-compact-grid>a { min-height:66px; padding:.75rem; display:grid; grid-template-columns:auto 1fr auto; gap:.65rem; align-items:center; border:1px solid var(--op-border); }
.op-compact-grid i { color:#98a2ad; font-size:.62rem; font-style:normal; }
.op-compact-grid strong { font-size:.7rem; }
.op-compact-grid b { color:var(--op-orange); font-weight:500; }

.op-feature-pair { margin-top:1.2rem; display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.op-multibrand,.op-updates { min-height:160px; padding:1.25rem; display:grid; grid-template-columns:52px minmax(0,1fr); gap:1rem; align-items:start; border:1px solid #dce5eb; background:linear-gradient(100deg,#f3f8fb,#fff); }
.op-feature-content { min-width:0; }
.op-feature-content small { color:var(--op-orange); font-size:.6rem; font-weight:850; letter-spacing:.12em; }
.op-multibrand h2,.op-updates h2 { margin:.25rem 0; color:var(--op-graphite); font-size:1.35rem; }
.op-multibrand p,.op-updates p { margin:.2rem 0 .75rem; color:#637180; font-size:.75rem; }
.op-feature-content a { color:var(--op-orange); font-size:.72rem; font-weight:850; }
.op-feature-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:var(--op-orange); color:#fff; }
.op-feature-icon svg { width:34px; height:34px; }
.op-update-icon { font-size:1.5rem; font-weight:900; }

.op-products { padding-bottom:1.4rem; }
.op-products .products { grid-template-columns:repeat(5,minmax(0,1fr)) !important; gap:.7rem !important; }
.op-products .products li.product { width:100% !important; box-shadow:none; }
.op-products .products li.product .woocommerce-loop-product__title { font-size:.78rem !important; }
.op-products .products li.product .woocommerce-loop-product__link img { aspect-ratio:1.18/1; }
.op-products .products li.product .woocommerce-loop-product__title { min-height:3.5em; }
.op-products .products li.product .button { margin-top:auto; }
.op-products .products li.product .price { color:var(--op-orange); font-size:.9rem; }
.op-audiences { padding:1rem 0 1.4rem; display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; }
.op-audiences article { padding:1.35rem; display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto auto; align-content:start; column-gap:1rem; border:0; background:linear-gradient(145deg,#fff,#f4f6f8); }
.op-audiences article>svg { grid-row:1 / 4; width:42px; height:42px; fill:none; stroke:var(--op-graphite); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.op-audiences small { color:var(--op-orange); font-size:.62rem; font-weight:850; letter-spacing:.12em; }
.op-audiences h2 { margin:.45rem 0; color:var(--op-graphite); font-size:1.15rem; }
.op-audiences p { margin:0; color:#667381; font-size:.75rem; }
.op-brands-page { padding:2.5rem 0 4rem; }
.op-brands-page h1 { margin:0 0 .5rem; color:var(--op-graphite); }
.op-brands-page>p { margin:0 0 2rem; color:#637180; }
.op-brand-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.8rem; }
.op-brand-grid a { min-height:96px; padding:.8rem; display:flex; align-items:center; justify-content:center; border:1px solid var(--op-border); border-radius:8px; background:#fff; text-align:center; transition:border-color .18s ease,transform .18s ease; }
.op-brand-grid a:hover { border-color:var(--op-orange); transform:translateY(-2px); }
.op-brand-grid .op-brand-mark { width:100%; height:60px; display:grid; place-items:center; }
.op-brand-grid img { display:block; max-width:min(100%,140px); max-height:42px; width:auto; height:auto; object-fit:contain; }
.op-brand-grid [data-brand="mk3"] img,
.op-brand-grid [data-brand="thinkcar"] img { max-height:38px; }
:is(.op-home-brand-list,.op-brand-grid) [data-brand="mbito"] img { filter:brightness(0) saturate(100%) invert(12%) sepia(13%) saturate(2052%) hue-rotate(165deg) brightness(94%); }
.op-brand-grid .op-brand-name { color:var(--op-graphite); font-size:.76rem; line-height:1.25; font-weight:700; text-transform:uppercase; overflow-wrap:anywhere; }
.op-brand-grid .op-brand-no-logo { display:flex; align-items:center; justify-content:center; }
.op-brand-grid .op-brand-no-logo .op-brand-mark { display:none; }
.op-service { border-top:2px solid var(--op-orange); background:linear-gradient(180deg,#f8fafc 0%,#eef2f5 100%); box-shadow:0 -7px 18px rgba(12,25,38,.045); }
.op-service>.ds-container { display:grid; grid-template-columns:repeat(4,1fr); }
.op-service article { min-height:86px; padding:1rem 1.25rem; display:grid; grid-template-columns:34px 1fr; gap:.85rem; align-items:center; border-right:1px solid var(--op-border); }
.op-service article:first-child { border-left:1px solid var(--op-border); }
.op-service article>svg { width:42px; height:42px; padding:7px; border:1px solid rgba(244,70,27,.35); border-radius:9px; background:#fff; fill:none; stroke:var(--op-graphite); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; box-shadow:0 3px 10px rgba(12,25,38,.06); }
.op-service article>div { display:grid; }
.op-service strong { font-size:.75rem; }
.op-service span { margin-top:.15rem; color:#677482; font-size:.64rem; }

@media(max-width:1100px){
  .ds-header-main{grid-template-columns:auto 1fr auto;gap:1rem}.ds-nav-row .ds-nav{top:121px}.op-business-account{padding-inline:.65rem}.op-primary-categories{grid-template-columns:repeat(3,1fr)}.op-compact-grid{grid-template-columns:repeat(3,1fr)}.op-products .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}.op-vehicle-guide{grid-template-columns:1fr}.op-guide-note{grid-column:auto}.op-service>.ds-container{grid-template-columns:repeat(2,1fr)}.op-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .op-primary-categories>a,.op-primary-categories>a:nth-child(7){grid-column:auto}
  .ds-nav-row .ds-nav > ul{flex-direction:column;align-items:stretch;gap:.35rem}
  .ds-nav .op-nav-category-tree{width:100%;margin-bottom:.65rem}
  .op-nav-category-panel{position:static;width:100%;max-width:none;max-height:55vh;margin-top:.35rem;box-shadow:none}
}
@media(max-width:700px){
  .ds-header-main{min-height:66px;grid-template-columns:1fr auto}.ds-header-main>.ds-search{display:none}.ds-nav-row{display:none}.ds-actions{gap:.15rem}.ds-account span,.ds-cart>span:not(.ds-cart-count),.op-business-account{display:none}.op-hero{height:600px}.op-hero>img{object-position:68% center}.op-hero-overlay{background:linear-gradient(0deg,rgba(5,9,13,.98) 12%,rgba(5,9,13,.48) 95%)}.op-hero-content{justify-content:flex-end;padding-bottom:2rem}.op-hero h1{font-size:3rem}.op-capabilities{grid-template-columns:repeat(2,1fr)}.op-primary-categories{grid-template-columns:1fr 1fr}.op-primary-categories>a{min-height:90px}.op-guide-fields{grid-template-columns:1fr}.op-vehicle-cards{grid-template-columns:1fr 1fr}.op-feature-pair{grid-template-columns:1fr}.op-products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.op-audiences{grid-template-columns:1fr}.op-service>.ds-container{grid-template-columns:1fr}.op-service article{border-left:0;border-right:0;border-bottom:1px solid var(--op-border)}.op-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ds-nav-row .ds-nav{top:66px}
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ds-ice); color: #111827; font: 16px/1.5 Inter, Aptos, "Segoe UI", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible { outline:3px solid rgba(240,68,29,.45); outline-offset:3px; }
.ds-container { width: min(var(--ds-max), 94vw); margin-inline: auto; }

.ds-utility { background: var(--ds-ink); color: #a9b7c9; font-size: .75rem; letter-spacing: .015em; }
.ds-utility .ds-container { min-height: 34px; display: flex; align-items: center; gap: 1.5rem; }
.ds-language { margin-left: auto; }
.ds-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.97); border-bottom: 1px solid #e4e9ef; box-shadow: 0 8px 26px rgba(7,17,31,.055); backdrop-filter: blur(14px); }
.admin-bar .ds-header { top: 32px; }
.ds-header-inner { min-height: 80px; display: grid; grid-template-columns: auto 1fr auto; gap: 3rem; align-items: center; }
.ds-brand { display: grid; grid-template-columns: 34px auto; grid-template-rows: auto auto; column-gap: .65rem; align-items: center; font-size: 1.18rem; font-weight: 900; letter-spacing: -.045em; }
.ds-brand-mark { grid-row: 1 / 3; width: 34px; height: 34px; display: grid; place-items: center; border: 2px solid var(--ds-blue); color: var(--ds-blue); font-size: 1rem; letter-spacing: 0; transform: rotate(-8deg); }
.ds-brand small { color: #718096; font-size: .53rem; line-height: 1; letter-spacing: .15em; }
.ds-brand-wrap { display: flex; align-items: center; min-width: 0; }
.ds-brand-logo,
.custom-logo-link { display: inline-flex; align-items: center; line-height: 0; }
.ds-brand-logo img,
.custom-logo { display: block; width: auto; height: 52px; max-width: 238px; object-fit: contain; }
.ds-nav ul { display: flex; justify-content: center; gap: clamp(1rem,1.6vw,2rem); margin: 0; padding: 0; list-style: none; font-size: .82rem; font-weight: 800; }
.ds-nav a { position: relative; }
.ds-nav a::after { content: ""; position: absolute; right: 100%; bottom: -.55rem; left: 0; height: 2px; background: var(--op-orange); transition: right .2s; }
.ds-nav a:hover { color: var(--op-orange); }
.ds-nav a:hover::after { right: 0; }
.ds-mobile-search { display:none; }
.ds-actions { display: flex; gap: .6rem; align-items: center; }
.ds-search input { width: min(25vw, 340px); height: 42px; padding: 0 .9rem; background: #f8fafc; border: 1px solid #cbd5e1; }
.ds-account, .ds-cart, .ds-menu-toggle { min-height: 42px; padding: 0 .8rem; display: flex; align-items: center; gap: .5rem; border: 1px solid #cbd5e1; background: #fff; font-size: .8rem; font-weight: 800; }
.ds-account { width: 42px; justify-content: center; padding: 0; color: var(--ds-ink); }
.ds-account svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ds-account:hover { color: var(--ds-orange); border-color: var(--ds-orange); }
.ds-cart-count { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; background: var(--ds-orange); color: #fff; font-size: .65rem; }
.ds-menu-toggle { display: none; }

.ds-hero { height: 650px; position: relative; overflow: hidden; background: var(--ds-ink); color: #fff; }
.ds-hero > img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.ds-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,10,19,.99), rgba(3,10,19,.9) 42%, rgba(3,10,19,.18) 78%); }
.ds-hero-grid { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(89,199,255,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(89,199,255,.16) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(90deg, #000, transparent 72%); }
.ds-hero-copy { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.ds-hero-copy > span, .ds-section-head small, .ds-business small, .ds-compat small { color: var(--ds-cyan); font-size: .72rem; font-weight: 850; letter-spacing: .14em; }
.ds-hero h1 { max-width: 780px; margin: 1rem 0; font-size: clamp(3.7rem, 6.7vw, 7.3rem); line-height: .86; letter-spacing: -.068em; }
.ds-hero h1 em { display: block; color: var(--ds-cyan); font-style: normal; }
.ds-hero p { max-width: 620px; color: #bdc8d9; font-size: 1.05rem; line-height: 1.7; }
.ds-hero-actions { display: flex; align-items: center; gap: 1.5rem; }
.ds-text-link { margin-top: 1rem; padding: .8rem 0; border-bottom: 1px solid rgba(255,255,255,.5); color: #fff; font-size: .86rem; font-weight: 750; }
.ds-hero-metrics { display: flex; gap: 2.5rem; margin: 2rem 0 0; }
.ds-hero-metrics div { display: grid; grid-template-columns: auto auto; gap: .55rem; align-items: baseline; }
.ds-hero-metrics dt { color: #fff; font-size: 1.2rem; font-weight: 900; }
.ds-hero-metrics dd { margin: 0; color: #93a4b8; font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.ds-button { min-height: 52px; margin-top: 1rem; padding: 0 1.4rem; display: inline-flex; align-items: center; justify-content: center; border: 0; background: var(--ds-blue); color: #fff; font-weight: 800; transition: background .2s, transform .2s; }
.ds-button:hover { background: #0f5fbe; transform: translateY(-2px); }

.ds-compat { position: relative; z-index: 3; margin-top: -1.2rem; display: grid; grid-template-columns: 1.15fr .85fr; background: #fff; border: 1px solid var(--ds-line); box-shadow: 0 18px 50px rgba(22,34,51,.12); }
.ds-compat > div { padding: 2rem; }
.ds-compat h2 { margin: .35rem 0 .65rem; font-size: clamp(1.8rem,3vw,2.7rem); line-height: 1; letter-spacing: -.04em; }
.ds-compat p { max-width: 720px; margin: 0; color: var(--ds-muted); line-height: 1.65; }
.ds-compat-note { background: var(--ds-panel); color: #fff; }
.ds-compat-note span { color: var(--ds-cyan); font-size: .67rem; font-weight: 850; letter-spacing: .12em; }
.ds-compat-note strong { display: block; margin: .45rem 0; font-size: 1rem; }
.ds-compat-note p { color: #aebed0; font-size: .86rem; }
.ds-compat-note .ds-button { min-height: 44px; margin-top: 1rem; background: var(--ds-orange); font-size: .82rem; }
.ds-trust { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 1.25rem; border-top: 1px solid var(--ds-line); border-left: 1px solid var(--ds-line); background: #fff; }
.ds-trust > div { min-height: 92px; padding: 1.15rem 1.25rem; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--ds-line); border-bottom: 1px solid var(--ds-line); }
.ds-trust strong { font-size: .86rem; }
.ds-trust span { margin-top: .2rem; color: var(--ds-muted); font-size: .76rem; }

.ds-categories { padding-block: 7rem 5rem; }
.ds-section-head { display: grid; grid-template-columns: 1fr 420px; gap: 3rem; align-items: end; margin-bottom: 2.5rem; }
.ds-section-head small { color: var(--ds-blue); }
.ds-section-head h2 { max-width: 800px; margin: .6rem 0 0; font-size: clamp(2.7rem,5vw,5rem); line-height: .95; letter-spacing: -.055em; }
.ds-section-head > p { margin: 0; color: var(--ds-muted); line-height: 1.7; }
.ds-category-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #cbd5e1; border-left: 1px solid #cbd5e1; }
.ds-category { min-height: 230px; padding: 1.25rem; display: grid; grid-template-columns: 1fr auto; align-content: space-between; border-right: 1px solid #cbd5e1; border-bottom: 1px solid #cbd5e1; background: #fff; transition: .2s; }
.ds-category > small { color: #8491a6; font-size: .66rem; font-weight: 800; }
.ds-category h3 { margin: 0; font-size: 1.05rem; }
.ds-category p { margin: .4rem 0 0; color: var(--ds-muted); font-size: .82rem; }
.ds-category b { color: var(--ds-blue); font-size: 1.1rem; font-weight: 500; }
.ds-category:hover { transform: translateY(-4px); background: var(--ds-panel); color: #fff; }
.ds-category:hover p { color: #b4c0d0; }
.ds-category:hover b { color: var(--ds-cyan); }

.ds-latest { padding-block: 6rem; background: #eef3f7; border-top: 1px solid var(--ds-line); }
.ds-latest .ds-section-head h2 { font-size: clamp(2.5rem,4vw,4.2rem); }
.ds-latest-action { display: flex; justify-content: center; margin-top: 2rem; }

.ds-products { padding-block: 6rem; background: var(--ds-ink); color: #fff; }
.ds-section-dark small { color: var(--ds-cyan); }
.ds-products .products { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }
.ds-products li.product { width: auto !important; margin: 0 !important; padding: 0 0 1rem !important; background: #fff; color: #111827; }
.ds-products li.product img { margin: 0 !important; aspect-ratio: 1/1; object-fit: contain; background: #eef2f6; }
.ds-products li.product h2, .ds-products li.product .price { padding-inline: 1rem; }
.ds-products li.product .button { margin-inline: 1rem; border-radius: 0; background: var(--ds-blue); color: #fff; }

.ds-business { display: grid; grid-template-columns: 1fr 1fr; background: var(--ds-blue); color: #fff; }
.ds-business > div { padding: 6rem max(4vw,calc((100vw - 1350px)/2)) 6rem 4vw; }
.ds-business h2 { margin: .7rem 0 1.3rem; font-size: clamp(2.8rem,5vw,5rem); line-height: .95; letter-spacing: -.06em; }
.ds-business > div > p { color: #d9efff; line-height: 1.7; }
.ds-business-points { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 1px !important; background: #b9c8da; }
.ds-business-points article { padding: 2rem; background: var(--ds-ice); color: #111827; }
.ds-business-points p { color: var(--ds-muted); font-size: .86rem; }

.ds-footer { padding-block: 4rem 1.5rem; background: var(--ds-ink); color: #fff; }
.ds-footer-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.1fr); gap: clamp(2rem,4vw,4rem); }
.ds-footer p, .ds-footer a { color: #9cabbf; font-size: .84rem; }
.ds-footer-logo { display: inline-flex; padding: .6rem .75rem; background: #fff; }
.ds-footer-logo img { display: block; width: auto; height: 38px; max-width: 174px; object-fit: contain; }
.ds-footer-contacts { display: grid; gap: .35rem; }
.ds-footer-contacts a:hover { color: #fff; }
.ds-footer ul { margin: 0; padding: 0; list-style: none; }
.ds-footer-menu { display:grid; gap:.55rem; }
.ds-footer-menu a:hover { color:#fff; }
.ds-footer nav>strong,.ds-footer-grid>div>strong { display:block; margin-bottom:1rem; color:#fff; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; }
.ds-copyright { padding-top: 3rem; color: #657287; font-size: .72rem; }
.ds-whatsapp { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 50; min-height: 48px; padding: 0 1rem; display: inline-flex; align-items: center; gap: .55rem; border-radius: 999px; background: #20b85a; color: #fff; box-shadow: 0 12px 30px rgba(7,17,31,.25); font-size: .8rem; font-weight: 800; }
.ds-whatsapp svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.ds-whatsapp:hover { background: #178f45; transform: translateY(-2px); }
.ds-content, .ds-shop-content { min-height: 60vh; padding-block: 4rem; }
.ds-shop-content .woocommerce-products-header { margin-bottom: 2rem; }
.woocommerce .woocommerce-breadcrumb { margin:0 0 1.25rem; color:var(--ds-muted); font-size:.76rem; line-height:1.55; }
.woocommerce .woocommerce-breadcrumb a { color:var(--op-graphite); font-weight:750; text-decoration:none; }
.woocommerce .woocommerce-breadcrumb a:hover { color:var(--op-orange); }
.ds-shop-content .woocommerce-products-header__title { margin: 0; color: var(--ds-ink); font-size: clamp(2.6rem,5vw,5rem); line-height: .95; letter-spacing: -.055em; }
.woocommerce .woocommerce-result-count { color: var(--ds-muted); font-size: .82rem; }
.woocommerce .woocommerce-ordering select { min-height: 44px; padding: 0 2.5rem 0 .8rem; border: 1px solid var(--ds-line); background: #fff; color: var(--ds-ink); font: inherit; }
.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1.25rem;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
  position: relative;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0 0 1.1rem;
  overflow: hidden;
  border: 1px solid #dce3ea;
  background: #fff;
  box-shadow: 0 6px 24px rgba(7,17,31,.045);
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.woocommerce ul.products li.product:hover { transform: translateY(-4px); border-color: #bdc9d6; box-shadow: 0 18px 38px rgba(7,17,31,.11); }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
  display: flex;
  flex: 1;
  flex-direction: column;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product > a:first-child img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0 0 .95rem;
  padding: clamp(.85rem, 1.5vw, 1.35rem);
  box-sizing: border-box;
  background: #f8fafc;
  object-fit: contain;
  object-position: center;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 3.25em; margin: 0; padding: 0 1rem !important; color: var(--ds-ink); font-size: .96rem !important; line-height: 1.45; letter-spacing: -.01em; }
.woocommerce ul.products li.product .price { margin: .7rem 0 0; padding: 0 1rem; color: var(--op-orange); font-size: 1rem; font-weight: 850; }
.woocommerce ul.products li.product .button {
  align-self: flex-start;
  min-height: 42px;
  margin: 1rem 1rem 0;
  padding: 0 1rem;
  display: inline-flex;
  align-items: center;
  border-radius: 0;
  background: var(--ds-ink);
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
}
.woocommerce ul.products li.product .button:hover { background: #cf3616; }
.ds-update-badge { position: absolute; top: .75rem; left: .75rem; z-index: 2; max-width: calc(100% - 1.5rem); padding: .5rem .65rem; display: grid; gap: .08rem; background: var(--ds-panel); color: #fff; line-height: 1.15; box-shadow: 0 6px 18px rgba(7,17,31,.18); }
.ds-update-badge strong { font-size: .66rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.ds-update-badge small { color: rgba(255,255,255,.88); font-size: .58rem; font-weight: 650; letter-spacing: .015em; }
.ds-update-lifetime { background: var(--ds-orange); }
.ds-update-summary { margin: 1rem 0; padding: .9rem 1rem; display: grid; gap: .18rem; border-left: 4px solid var(--ds-orange); background: #fff4ef; }
.ds-update-summary span { color: var(--ds-muted); font-size: .86rem; }
.ds-product-compatibility { margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--ds-line); background: var(--ds-ice); }
.ds-product-compatibility p { margin: .35rem 0 .55rem; color: var(--ds-muted); font-size: .88rem; }
.ds-product-compatibility a { color: var(--op-orange); font-size: .84rem; font-weight: 800; }
.woocommerce div.product { padding-bottom: 4rem; }
.woocommerce div.product div.images { padding: 1rem; border: 1px solid var(--ds-line); background: #fff; }
.woocommerce div.product div.summary { padding: clamp(1rem,2vw,2rem); border-top: 4px solid var(--op-orange); background: #fff; box-shadow: 0 15px 40px rgba(7,17,31,.07); }
.woocommerce div.product .product_title { margin: 0 0 1rem; color: var(--ds-ink); font-size: clamp(2rem,3.2vw,3.5rem); line-height: 1.02; letter-spacing: -.045em; }
.woocommerce div.product p.price { color: var(--op-orange); font-size: 1.45rem; font-weight: 900; }
.woocommerce div.product form.cart { display:flex; align-items:stretch; gap:.55rem; }
.woocommerce div.product form.cart .quantity .qty { min-height:46px; border:1px solid var(--ds-line); }
.woocommerce div.product form.cart .single_add_to_cart_button { min-height:46px; padding:0 1.25rem; border-radius:3px; background:var(--op-orange); color:#fff; font-weight:850; }
.woocommerce div.product form.cart .single_add_to_cart_button:hover { background:#cf3616; }
.woocommerce div.product .product_meta { padding-top: 1rem; border-top: 1px solid var(--ds-line); color: var(--ds-muted); font-size: .78rem; line-height:1.65; }
.woocommerce div.product .product_meta a { color:var(--op-graphite); font-weight:700; }
.woocommerce div.product .woocommerce-tabs { clear: both; padding-top: 3rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs { margin: 0 !important; padding: 0 !important; border-bottom: 1px solid var(--ds-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 .35rem 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: .9rem 1.15rem !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { background: var(--ds-ink); color: #fff !important; }
.woocommerce div.product .woocommerce-Tabs-panel { padding: clamp(1.25rem,3vw,3rem) !important; border: 1px solid var(--ds-line); border-top: 0; background: #fff; overflow-x:auto; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { margin: 0 .25rem; border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { min-width: 42px; min-height: 42px; display: grid; place-items: center; background: #fff; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--ds-ink); color: #fff; }
.woocommerce div.product .woocommerce-Tabs-panel table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.woocommerce div.product .woocommerce-Tabs-panel table th,
.woocommerce div.product .woocommerce-Tabs-panel table td {
  padding: .42rem .7rem .42rem 0;
  text-align: left !important;
  vertical-align: top;
}
.woocommerce div.product .woocommerce-Tabs-panel table th {
  width: 1%;
  padding-right: 2rem;
  white-space: nowrap;
}
.woocommerce div.product .woocommerce-Tabs-panel h2 {
  margin-top: 2rem;
  margin-bottom: .85rem;
}
.woocommerce div.product .woocommerce-Tabs-panel p,
.woocommerce div.product .woocommerce-Tabs-panel ul {
  max-width: 78rem;
}
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { top:1rem; left:1rem; z-index:99999; width:auto; height:auto; padding:.8rem 1rem; clip:auto; background:#fff; color:var(--ds-ink); font-weight:800; box-shadow:0 6px 24px rgba(7,17,31,.2); }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid rgba(240,68,29,.45); outline-offset:3px; }

@media (max-width: 1100px) {
	.ds-header-main { grid-template-columns:1fr auto; }
	.ds-header-main > .ds-search { display:none; }
	.ds-nav { display: none; position: absolute; top: 80px; right: 0; left: 0; padding: 1rem 3vw; background: #fff; border-bottom: 1px solid var(--ds-line); }
  .ds-nav.is-open { display: block; }
  .ds-nav ul { flex-direction: column; }
  .ds-header-inner { grid-template-columns: auto 1fr; }
  .ds-actions { justify-self: end; }
  .ds-menu-toggle { display: flex; }
  .ds-category-grid, .ds-products .products { grid-template-columns: repeat(2,1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ds-trust { grid-template-columns: repeat(2,1fr); }
  .ds-business { grid-template-columns: 1fr; }
  .ds-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
	.ds-nav-row { display:block; min-height:0; border:0; }
	.ds-nav-row > .ds-container { min-height:0; }
	.ds-nav { top:66px; z-index:30; padding:1rem; box-shadow:0 12px 24px rgba(7,17,31,.14); }
	.ds-nav.is-open .ds-mobile-search { display:block; margin-bottom:1rem; }
	.ds-nav .ds-mobile-search .ds-search { display:flex; }
	.ds-nav .ds-mobile-search .ds-search label { flex:1; min-width:0; }
	.ds-nav .ds-mobile-search .ds-search input { width:100%; }
	.ds-nav .ds-mobile-search .ds-search button { min-width:84px; border:0; background:var(--op-orange); color:#fff; font-weight:800; }
	.ds-brand-logo img,
	.custom-logo { height: 41px; max-width: 188px; }
  .ds-utility .ds-container span:not(:first-child) { display: none; }
  .ds-header-inner { min-height: 66px; }
  .ds-search, .ds-account { display: none; }
  .ds-brand { grid-template-rows: auto; }
  .ds-brand small { display: none; }
  .ds-brand-mark { grid-row: auto; }
  .ds-hero { height: 720px; }
  .ds-hero > img { object-position: 65% center; }
  .ds-hero-shade { background: linear-gradient(0deg,rgba(3,9,18,.99) 18%,rgba(3,9,18,.48) 88%); }
  .ds-hero-copy { justify-content: flex-end; padding-bottom: 3.4rem; }
  .ds-hero h1 { font-size: 3.45rem; }
  .ds-hero-actions { align-items: flex-start; flex-direction: column; gap: .25rem; }
  .ds-hero-metrics { gap: 1rem; flex-wrap: wrap; }
  .ds-hero-metrics div { grid-template-columns: 1fr; }
  .ds-compat, .ds-section-head { grid-template-columns: 1fr; }
  .ds-categories { padding-block: 5rem; }
  .ds-category-grid, .ds-products .products { grid-template-columns: 1fr; }
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 4.3em; padding-inline: .75rem !important; font-size: .82rem !important; }
  .woocommerce ul.products li.product .price { padding-inline: .75rem; font-size: .9rem; }
  .woocommerce ul.products li.product .button { margin-inline: .75rem; }
  .ds-trust { grid-template-columns: 1fr; }
  .ds-category { min-height: 180px; }
  .ds-business > div { padding: 4rem 1.25rem; }
  .ds-business-points { grid-template-columns: 1fr; }
  .ds-footer-grid { grid-template-columns: 1fr; }
  .ds-whatsapp { right: 1rem; bottom: 1rem; width: 48px; padding: 0; justify-content: center; }
  .ds-whatsapp span { display: none; }
  .ds-container { width: min(var(--ds-max),calc(100% - 2rem)); }
  .woocommerce div.product .woocommerce-Tabs-panel table th {
    padding-right: 1rem;
    white-space: normal;
  }
	.woocommerce div.product .woocommerce-Tabs-panel table { min-width:620px; }
	.woocommerce div.product .woocommerce-tabs ul.tabs { display:flex; overflow-x:auto; }
	.woocommerce div.product .woocommerce-tabs ul.tabs li { flex:0 0 auto; }
}

@media (max-width: 480px) {
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
  .woocommerce ul.products li.product .button { width:calc(100% - 1.5rem); justify-content:center; text-align:center; }
  .woocommerce div.product div.summary { padding: 1rem; }
  .woocommerce div.product .woocommerce-Tabs-panel { padding: 1rem !important; }
}

/* 0.7.3 homepage polish */
.ds-header-main .ds-actions { display:flex; align-items:center; gap:.45rem; justify-self:end; }
.ds-header-main .ds-account,
.ds-header-main .ds-cart { min-height:44px; padding:.35rem .55rem; border:0; background:#fff; }
.ds-header-main .op-business-account { min-height:42px; padding:.48rem .9rem; border:1px solid var(--op-orange); background:#fff; color:var(--op-orange); }
.ds-header-main .ds-account { min-width:102px; flex:0 0 auto; }
.ds-header-main .ds-account span { display:flex; flex-direction:column; min-width:max-content; white-space:nowrap; }
.ds-header-main .op-business-account { min-height:44px; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; white-space:nowrap; }
.ds-header-main .op-business-account:hover { background:var(--op-orange); color:#fff; }

@media (max-width:700px) {
  .ds-header-main .ds-actions { gap:.15rem; }
  .ds-header-main .ds-account { display:flex; }
  .ds-header-main .ds-account span,
  .ds-header-main .ds-cart>span:not(.ds-cart-count),
  .ds-header-main .op-business-account { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition-duration: .01ms !important; }
}

/* 0.8.7 business enquiry */
.op-business-page { background:#f5f7f9; }
.op-business-hero { padding:4.5rem 0 4rem; color:#fff; background:linear-gradient(110deg,#0d1721 0%,#172737 72%,#21394c 100%); }
.op-business-hero .op-eyebrow { margin:0 0 .8rem; color:#ff6a43; font-size:.72rem; font-weight:850; letter-spacing:.14em; }
.op-business-hero h1 { max-width:760px; margin:0; color:#fff; font-size:clamp(2.2rem,4.5vw,4.2rem); line-height:1.02; }
.op-business-hero p:last-child { max-width:760px; margin:1.2rem 0 0; color:#dce5eb; font-size:1rem; line-height:1.7; }
.op-business-layout { padding:3rem 0 4rem; display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:2rem; align-items:start; }
.op-business-benefits,.op-business-form-wrap { padding:2rem; background:#fff; border:1px solid var(--op-border); }
.op-business-layout h2 { margin:0 0 .65rem; color:var(--op-graphite); font-size:1.55rem; }
.op-business-benefits ul { margin:1.4rem 0 0; padding:0; display:grid; gap:.2rem; list-style:none; }
.op-business-benefits li { padding:1rem 0; display:grid; gap:.25rem; border-bottom:1px solid var(--op-border); }
.op-business-benefits li strong { font-size:.9rem; }
.op-business-benefits li span,.op-business-form-wrap>p { color:#667381; font-size:.78rem; line-height:1.55; }
.op-business-contact { margin-top:1.5rem; padding:1.2rem; display:grid; gap:.45rem; background:#f2f5f7; border-left:3px solid var(--op-orange); }
.op-business-contact a { color:var(--op-orange); font-size:.76rem; font-weight:800; }
.op-business-form { margin-top:1.5rem; display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.op-business-form label { display:grid; gap:.4rem; color:var(--op-graphite); font-size:.72rem; font-weight:800; }
.op-business-form input,.op-business-form select,.op-business-form textarea { width:100%; min-height:46px; padding:.75rem .85rem; border:1px solid #cfd7de; border-radius:2px; background:#fff; color:var(--op-graphite); font:inherit; font-weight:500; }
.op-business-form textarea { min-height:130px; resize:vertical; }
.op-business-form input:focus,.op-business-form select:focus,.op-business-form textarea:focus { outline:2px solid rgba(244,70,27,.22); border-color:var(--op-orange); }
.op-form-wide { grid-column:1 / -1; }
.op-form-consent { display:flex!important; grid-template-columns:18px 1fr!important; align-items:start; font-weight:500!important; line-height:1.45; }
.op-form-consent input { width:18px; min-height:18px; margin:.1rem 0 0; }
.op-business-form button { min-height:50px; border:0; cursor:pointer; justify-content:center; }
.op-form-hp { position:absolute; left:-9999px; }
.op-form-notice { margin:1rem 0; padding:1rem; font-size:.78rem; font-weight:750; }
.op-form-notice.is-success { color:#14532d; background:#dcfce7; border:1px solid #86efac; }
.op-form-notice.is-error { color:#7f1d1d; background:#fee2e2; border:1px solid #fca5a5; }
@media (max-width:800px) {
  .op-business-hero { padding:3.2rem 0; }
  .op-business-layout { grid-template-columns:1fr; padding-top:1.5rem; }
}
@media (max-width:520px) {
  .op-business-benefits,.op-business-form-wrap { padding:1.25rem; }
  .op-business-form { grid-template-columns:1fr; }
  .op-business-form label,.op-form-wide { grid-column:1; }
  .ds-footer { padding-block:3rem 1.5rem; }
  .ds-footer-grid { gap:2.25rem; }
  .ds-copyright { padding-top:2rem; padding-right:4.25rem; line-height:1.5; }
}

/* 0.9.2 customer information, support and guide structure */
.op-info-page { min-height:65vh; background:#f5f7f9; }
.op-page-hero,.op-article-header { padding:clamp(3.5rem,7vw,6.5rem) 0; color:#fff; background:linear-gradient(115deg,#0b1520 0%,#172939 70%,#203b4e 100%); }
.op-page-hero .op-eyebrow,.op-article-header .op-eyebrow { color:#ff8d70; }
.op-page-hero h1,.op-article-header h1 { max-width:920px; margin:0; color:#fff; font-size:clamp(2.6rem,5vw,5.4rem); line-height:.96; letter-spacing:-.05em; }
.op-page-hero p:last-child { max-width:760px; margin:1.15rem 0 0; color:#d8e0e7; font-size:clamp(.92rem,1.5vw,1.08rem); line-height:1.7; }
.op-info-layout,.op-guides-layout,.op-article-index { padding-block:clamp(2rem,5vw,5rem); }
.op-info-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.op-info-card { min-height:230px; padding:clamp(1.35rem,3vw,2.2rem); display:grid; grid-template-columns:auto 1fr; gap:1.3rem; align-items:start; border:1px solid var(--op-border); background:#fff; scroll-margin-top:130px; }
.op-card-index { margin:0; color:var(--op-orange); font-size:.78rem; font-weight:900; }
.op-info-card h2 { margin:0 0 .7rem; font-size:clamp(1.35rem,2.5vw,2rem); }
.op-info-card p { margin:0; color:#667381; line-height:1.7; }
.op-policy-link { display:inline-flex; align-items:center; gap:.4rem; margin-top:1.25rem; color:var(--op-orange); font-size:.85rem; font-weight:800; }
.op-policy-link:hover,.op-policy-link:focus-visible { color:var(--op-graphite); text-decoration:underline; }
.op-draft-label { margin-top:1.25rem; display:inline-flex; color:#7a858e; font-size:.68rem; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.op-info-help { margin-top:1rem; padding:1.4rem 1.6rem; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; background:var(--op-graphite); color:#fff; }
.op-info-help p { margin:.25rem 0 0; color:#cfd8df; font-size:.8rem; }
.op-contact-layout { padding-block:clamp(2rem,5vw,5rem); display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:1.25rem; align-items:start; }
.op-contact-details { padding:2rem; border:1px solid var(--op-border); background:#fff; }
.op-contact-details h2 { margin-top:0; }
.op-contact-details dl { margin:1.5rem 0; display:grid; gap:0; }
.op-contact-details dl div { padding:.85rem 0; display:grid; grid-template-columns:145px 1fr; gap:1rem; border-bottom:1px solid var(--op-border); }
.op-contact-details dt { color:#6c7781; font-size:.72rem; font-weight:750; }
.op-contact-details dd { margin:0; font-size:.82rem; font-weight:750; }
.op-contact-details dd a,.op-contact-note a { color:var(--op-orange); font-weight:800; overflow-wrap:anywhere; }
.op-contact-details dd a:hover,.op-contact-details dd a:focus-visible { color:var(--op-graphite); text-decoration:underline; }
.op-contact-note { margin-top:1.5rem; padding:1rem; border-left:3px solid var(--op-orange); background:#f3f6f8; font-size:.8rem; line-height:1.6; }
.op-faq-list { padding-block:clamp(2rem,5vw,5rem); }
.op-faq-list details { border-bottom:1px solid #ccd5dc; background:#fff; }
.op-faq-list summary { padding:1.25rem 1.4rem; display:grid; grid-template-columns:150px 1fr auto; gap:1rem; align-items:center; color:var(--op-graphite); font-weight:850; cursor:pointer; list-style:none; }
.op-faq-list summary::-webkit-details-marker { display:none; }
.op-faq-list summary::after { content:'+'; color:var(--op-orange); font-size:1.4rem; }
.op-faq-list details[open] summary::after { content:'–'; }
.op-faq-list summary span { color:var(--op-orange); font-size:.7rem; letter-spacing:.07em; text-transform:uppercase; }
.op-faq-list details>p { max-width:850px; margin:0; padding:0 1.4rem 1.4rem 174px; color:#667381; line-height:1.7; }
.op-guides-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.op-guides-grid article { min-height:230px; padding:1.6rem; display:flex; flex-direction:column; border:1px solid var(--op-border); background:#fff; }
.op-guides-grid article>span { color:var(--op-orange); font-size:.72rem; font-weight:900; }
.op-guides-grid h2 { margin:1.4rem 0 .6rem; font-size:1.25rem; }
.op-guides-grid p { margin:0; color:#667381; line-height:1.65; }
.op-guides-grid small { margin-top:auto; padding-top:1.3rem; color:#8a949c; font-weight:750; text-transform:uppercase; }
.op-article-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.op-article-grid article { overflow:hidden; border:1px solid var(--op-border); background:#fff; }
.op-article-grid article>div { padding:1.25rem; }
.op-article-image { display:block; aspect-ratio:16/9; overflow:hidden; background:#e9eef2; }
.op-article-image img { width:100%; height:100%; object-fit:cover; }
.op-article-grid h2 { margin:.4rem 0 .7rem; font-size:1.25rem; }
.op-article-grid p { color:#667381; line-height:1.65; }
.op-article-meta { color:#8a949c!important; font-size:.68rem; font-weight:750; letter-spacing:.05em; text-transform:uppercase; }
.op-text-link { color:var(--op-orange); font-size:.78rem; font-weight:850; }
.op-empty-state { padding:clamp(2rem,5vw,5rem); text-align:center; border:1px solid var(--op-border); background:#fff; }
.op-article-featured { margin-top:2rem; }
.op-article-featured img { width:100%; max-height:640px; object-fit:cover; }
.op-article-content { max-width:920px; padding-block:clamp(2rem,5vw,5rem); font-size:1rem; line-height:1.8; }
.op-article-content :where(h2,h3) { margin-top:2.2em; line-height:1.15; }
.op-article-content :where(img,video,iframe) { max-width:100%; height:auto; }
.op-article-support { margin-top:3rem; padding:1.3rem; border-left:4px solid var(--op-orange); background:#f3f6f8; }
.op-article-support p { margin:.35rem 0; }
.op-article-support a { color:var(--op-orange); font-weight:850; }

/* Stable product hierarchy shared by all WooCommerce products. */
.single-product .ds-shop-content { padding-top:2rem; }
.single-product .woocommerce div.product { display:flow-root; }
.single-product .woocommerce-product-details__short-description { color:#526171; font-size:.94rem; line-height:1.65; }
.single-product .woocommerce div.product form.cart { margin-top:1.25rem; }
.single-product .woocommerce div.product .single_add_to_cart_button { flex:1; justify-content:center; }
.single-product .related.products { clear:both; padding-top:3rem; }
.single-product .related.products>h2 { font-size:clamp(1.6rem,3vw,2.4rem); }
.single-product .ds-product-comparison img { display:block; width:100%; height:auto; }
.single-product .ds-product-comparison>a { display:block; overflow-x:auto; }
.single-product .ds-tab-source { margin-top:1rem; font-size:.78rem; }
.single-product .ds-tab-source a { color:var(--op-orange); font-weight:800; }
.single-product .ds-vehicle-coverage { max-width:760px; }
.single-product .ds-vehicle-coverage p { color:#526171; line-height:1.7; }
.single-product .ds-vehicle-coverage .button { margin-top:.5rem; }

@media(max-width:900px) {
  .op-info-sections,.op-contact-layout { grid-template-columns:1fr; }
  .op-guides-grid,.op-article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px) {
  .op-page-hero,.op-article-header { padding:3rem 0; }
  .op-info-sections,.op-guides-grid,.op-article-grid { grid-template-columns:1fr; }
  .op-info-card { min-height:0; grid-template-columns:1fr; gap:.65rem; }
  .op-info-help { align-items:flex-start; flex-direction:column; }
  .op-faq-list summary { grid-template-columns:1fr auto; }
  .op-faq-list summary span { grid-column:1/-1; }
  .op-faq-list details>p { padding:0 1.2rem 1.2rem; }
  .op-contact-details { padding:1.25rem; }
  .op-contact-details dl div { grid-template-columns:1fr; gap:.25rem; }
}

/* 0.9.28 catalog filters: classic WooCommerce archive, no extra plugin. */
.op-shop-layout { display:grid; grid-template-columns:minmax(215px,245px) minmax(0,1fr); gap:clamp(1.5rem,2.5vw,2.5rem); align-items:start; }
.op-catalog-main { min-width:0; }
.op-catalog-filters { min-width:0; border:1px solid var(--op-border); border-radius:8px; background:#f8fafb; }
.op-filter-drawer > summary { padding:1rem 1.1rem; display:flex; align-items:center; justify-content:space-between; gap:.7rem; cursor:pointer; list-style:none; color:var(--op-graphite); font-size:.95rem; font-weight:850; }
.op-filter-drawer > summary::-webkit-details-marker { display:none; }
.op-filter-drawer > summary::after { content:'+'; margin-left:auto; color:var(--op-orange); font-size:1.35rem; font-weight:400; }
.op-filter-drawer[open] > summary::after { content:'−'; }
.op-filter-count { min-width:1.3rem; height:1.3rem; display:inline-grid; place-items:center; border-radius:50%; background:var(--op-orange); color:#fff; font-size:.7rem; }
.op-filter-body { padding:0 1.1rem 1.2rem; border-top:1px solid var(--op-border); }
.op-filter-group { margin:0; padding:1.1rem 0; border:0; border-bottom:1px solid var(--op-border); }
.op-filter-group h2,.op-filter-group label:not(.op-filter-stock),.op-filter-group legend { display:block; margin:0 0 .65rem; color:var(--op-graphite); font-size:.78rem; font-weight:800; }
.op-filter-all { display:block; margin:.4rem 0; color:var(--op-graphite); font-size:.78rem; font-weight:700; }
.op-filter-all.is-current,.op-filter-categories .current-cat>a { color:var(--op-orange); font-weight:850; }
.op-filter-categories,.op-filter-categories ul { margin:0; padding:0; list-style:none; }
.op-filter-categories { max-height:360px; overflow:auto; padding-right:.3rem; }
.op-filter-categories li { margin:.42rem 0; }
.op-filter-categories .children { margin:.35rem 0 .6rem .45rem; padding-left:.65rem; border-left:1px solid var(--op-border); }
.op-filter-categories a { display:block; color:#475563; font-size:.76rem; line-height:1.35; overflow-wrap:anywhere; }
.op-filter-categories a:hover,.op-filter-all:hover { color:var(--op-orange); }
.op-filter-form select,.op-filter-price input { width:100%; min-height:42px; padding:.55rem .65rem; border:1px solid #cbd5de; border-radius:4px; background:#fff; color:var(--op-graphite); font:inherit; font-size:.8rem; }
.op-attribute-drawer > summary { display:flex; align-items:center; justify-content:space-between; gap:.5rem; cursor:pointer; list-style:none; color:var(--op-graphite); font-size:.8rem; font-weight:800; }
.op-attribute-drawer > summary::-webkit-details-marker { display:none; }
.op-attribute-drawer > summary::after { content:'+'; color:var(--op-orange); font-size:1.15rem; font-weight:500; }
.op-attribute-drawer[open] > summary::after { content:'−'; }
.op-attribute-fields { display:grid; gap:.55rem; padding-top:.9rem; }
.op-attribute-fields label { margin:0 !important; }
.op-attribute-fields select { margin-bottom:.35rem; }
.op-filter-price { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
.op-filter-price label { min-width:0; font-weight:700; }
.op-filter-price input { margin-top:.35rem; }
.op-filter-stock { display:flex; align-items:center; gap:.5rem; color:var(--op-graphite); font-size:.78rem; font-weight:700; }
.op-filter-stock input { width:17px; height:17px; accent-color:var(--op-orange); }
.op-filter-actions { padding-top:1.1rem; display:flex; align-items:center; gap:.75rem; }
.op-filter-actions button { min-height:42px; padding:.55rem .85rem; border:0; border-radius:4px; background:var(--op-orange); color:#fff; font-size:.78rem; font-weight:850; cursor:pointer; }
.op-filter-actions button:hover { background:#cf3616; }
.op-filter-actions a { color:#526171; font-size:.78rem; font-weight:750; }
.op-filter-actions a:hover { color:var(--op-orange); }
@media (max-width:800px) {
  .op-shop-layout { grid-template-columns:1fr; gap:1.25rem; }
  .op-filter-categories { max-height:250px; }
}
@media (max-width:480px) {
  .woocommerce .ds-shop-content ul.products { grid-template-columns:1fr; }
  .woocommerce .ds-shop-content ul.products li.product .woocommerce-loop-product__title { min-height:0; font-size:1rem !important; }
  .woocommerce .ds-shop-content ul.products li.product .button { width:calc(100% - 2rem); margin-inline:1rem; justify-content:center; }
}
