/* Product-first layout: real photography, readable specifications and clear actions. */
body.woocommerce { background:#fff; }
.woocommerce .woocommerce-breadcrumb { margin-bottom:32px; color:#617086; line-height:1.7; }
.woocommerce div.product div.images { width:47%; }
.woocommerce div.product div.summary { width:47%; }
.woocommerce div.product .product_title { font-size:clamp(25px,2.3vw,34px); line-height:1.3; letter-spacing:-.025em; margin:0 0 22px; }
.woocommerce div.product p.price { color:#123e6b; font-size:26px; font-weight:650; margin:0 0 24px; }
.woocommerce div.product .woocommerce-product-details__short-description { color:#526075; padding-block:20px; border-block:1px solid #e3e9ef; }
.woocommerce div.product form.cart { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.woocommerce div.product form.cart .quantity { margin:0; }
.woocommerce .quantity .qty { min-height:46px; width:76px; border:1px solid #c3ceda; border-radius:5px; font:inherit; }
.woocommerce div.product form.cart .button { min-height:46px; padding:12px 30px; }
.woocommerce div.product .product_meta { font-size:13px; color:#617086; margin-top:22px; }
.woocommerce div.product .product_meta > span { display:block; }
.xspeed-product-support { display:flex; flex-wrap:wrap; gap:12px 22px; margin:24px 0 12px; }
.xspeed-product-support a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; font-weight:600; }
.xspeed-fitment-note { font-size:13px; color:#64748b; line-height:1.7; }
.xspeed-quote-panel { margin:24px 0; }
.xspeed-quote-panel p { color:#526075; font-size:14px; }
.xspeed-quote-actions { display:flex; flex-wrap:wrap; gap:12px; }
.woocommerce .xspeed-quote-actions a.button { display:inline-flex; align-items:center; min-height:46px; padding:12px 22px; background:#1e40af; color:#fff; }
.woocommerce .xspeed-quote-actions a.xspeed-quote-whatsapp { background:#fff; border:1px solid #b8c6d8; color:#123e6b; }
.woocommerce .xspeed-quote-actions a.button:hover { background:#123e6b; color:#fff; }
.woocommerce div.product p.stock { display:none; }
.woocommerce div.product .woocommerce-tabs { clear:both; padding-top:42px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding:0; display:flex; gap:24px; flex-wrap:wrap; border-bottom:1px solid #dce4ec; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin:0; border:0; border-radius:0; background:none; padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom:2px solid #1e40af; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding:14px 0; font-weight:600; }
.woocommerce div.product .woocommerce-tabs .panel { padding:24px 0; line-height:1.8; }
.woocommerce div.product .woocommerce-tabs h2 { font-size:25px; margin:28px 0 18px; }
.woocommerce div.product .woocommerce-tabs table { width:100%; border-collapse:collapse; margin:18px 0 30px; table-layout:fixed; }
.woocommerce div.product .woocommerce-tabs th,.woocommerce div.product .woocommerce-tabs td { padding:12px 16px; border-bottom:1px solid #e4eaf0; vertical-align:top; text-align:left; overflow-wrap:anywhere; }
.woocommerce div.product .woocommerce-tabs th { width:30%; background:#f7f9fb; font-weight:600; }
.woocommerce ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none; }
.woocommerce ul.products li.product { width:auto!important; margin:0!important; float:none; display:flex; flex-direction:column; padding:18px; transition:border-color .18s,box-shadow .18s; }
.woocommerce ul.products li.product:hover { border-color:#9aacbe; box-shadow:0 8px 24px #0b2d5b0b; }
.woocommerce ul.products li.product a img { aspect-ratio:1; object-fit:contain; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:16px; line-height:1.5; }
.woocommerce ul.products li.product .button { align-self:flex-start; margin-top:auto; background:#fff; color:#1e40af; border:1px solid #bdcadb; }
.woocommerce ul.products li.product .button:hover { background:#1e40af; color:#fff; }
.woocommerce ul.products li.product .price { font-size:18px; color:#123e6b; font-weight:600; margin:14px 0; }
@media(max-width:800px){.woocommerce div.product div.images,.woocommerce div.product div.summary{width:100%;float:none}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.woocommerce ul.products li.product{padding:12px}.woocommerce div.product .woocommerce-tabs ul.tabs{gap:16px}.woocommerce div.product .woocommerce-tabs th{width:38%}.woocommerce div.product .woocommerce-tabs th,.woocommerce div.product .woocommerce-tabs td{padding:10px 8px}.woocommerce div.product .woocommerce-tabs{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.woocommerce ul.products li.product{transition:none}}

/* Catalogue refinement: clear product hierarchy, quiet surfaces and useful detail. */
body.woocommerce { --catalogue-ink:#102d48; --catalogue-muted:#5a6b7c; --catalogue-line:#e2e8ee; }
body.woocommerce .content-area { padding-top:30px; }
.woocommerce .woocommerce-breadcrumb { color:#647487; font-size:12px; margin-bottom:30px; }
.woocommerce .woocommerce-breadcrumb a { color:#647487; text-decoration:none; }
.woocommerce .woocommerce-breadcrumb a:hover { color:#102d48; text-decoration:underline; }
.xspeed-catalogue-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:48px; padding:18px 0 36px; }
.xspeed-catalogue-heading > div { max-width:740px; }
.xspeed-catalogue-heading .category-kicker { margin:0 0 14px; color:#627387; font-size:10px; letter-spacing:.14em; }
.xspeed-catalogue-heading h1 { margin:0 0 16px; font-size:clamp(30px,3.1vw,46px); line-height:1.15; letter-spacing:-.035em; color:#102d48; }
.propeller-category .category-products { padding-top:0; }
.propeller-category .product-film-section { margin-top:60px; }
.xspeed-catalogue-heading p { margin:0; color:#5a6b7c; font-size:15px; line-height:1.8; }
.xspeed-finder-link { flex:0 0 210px; padding-bottom:5px; color:#627387; font-size:12px; text-decoration:none; }
.xspeed-finder-link strong { display:block; color:#123e6b; margin-top:6px; font-size:14px; font-weight:600; }
.xspeed-category-nav { display:flex; gap:8px; flex-wrap:wrap; padding:0 0 26px; border-bottom:1px solid #e2e8ee; }
.xspeed-category-nav a { padding:10px 16px; border:1px solid #e2e8ee; border-radius:5px; color:#4c6074; font-size:13px; text-decoration:none; transition:background .18s,border-color .18s,color .18s; }
.xspeed-category-nav a[aria-current],.xspeed-category-nav a:hover { border-color:#183e60; color:#102d48; background:#f0f5f9; }
.xspeed-catalogue-controls { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 0 16px; }
.xspeed-product-search { display:flex; align-items:center; width:min(100%,460px); min-height:46px; border:1px solid #d5dfe8; border-radius:6px; background:#fff; }
.xspeed-product-search:focus-within { outline:2px solid #8eafcf; outline-offset:2px; }
.xspeed-product-search input { min-width:0; width:100%; padding:12px 15px; border:0; background:transparent; color:#102d48; font:inherit; font-size:13px; }
.xspeed-product-search input:focus-visible { outline:none; }
.xspeed-product-search button { display:grid; place-items:center; flex:0 0 44px; min-height:44px; border:0; border-radius:0 5px 5px 0; background:transparent; color:#123e6b; cursor:pointer; }
.xspeed-product-search button:hover { background:#edf3f8; }
.xspeed-catalogue-controls > p { margin:0; font-size:12px; color:#627387; }
.xspeed-catalogue-controls > p span { margin-inline:8px; }
.xspeed-loop-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 0 22px; }
.xspeed-loop-toolbar .woocommerce-result-count,.xspeed-loop-toolbar .woocommerce-ordering { margin:0; float:none; color:#627387; font-size:12px; }
.xspeed-loop-toolbar select { max-width:100%; min-height:40px; padding:8px 30px 8px 12px; border:1px solid #e2e8ee; background:#fff; color:#4c6074; border-radius:5px; font:inherit; }
.woocommerce ul.products { gap:24px; margin-top:0; }
.woocommerce ul.products li.product { padding:0; border:1px solid #e2e8ee; border-radius:8px; overflow:hidden; background:#fff; transition:border-color .2s,box-shadow .2s,transform .2s; }
.woocommerce ul.products li.product:hover { transform:translateY(-3px); border-color:#b6c9d9; box-shadow:0 14px 30px #102d480a; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link.woocommerce-loop-product__link { display:flex; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { flex-direction:column; flex:1; padding:14px 16px 0; text-decoration:none; }
.woocommerce ul.products li.product a img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; margin:0 0 22px; border-radius:4px; }
.xspeed-card-sku { display:block; color:#6a7c8c; font-size:10px; font-weight:500; letter-spacing:.045em; line-height:1.5; overflow-wrap:anywhere; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#102d48; font-size:15px; font-weight:600; line-height:1.5; padding:8px 0 0; min-height:76px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.xspeed-card-reference { margin:10px 0 0; font-size:11px; line-height:1.5; color:#6a7c8c; overflow-wrap:anywhere; }
.xspeed-card-configuration { display:inline-block; margin-top:10px; padding:3px 7px; border-radius:3px; background:#f0f5f9; color:#49657e; font-size:10px; }
.woocommerce ul.products li.product .price { margin:auto 0 18px; padding-top:17px; color:#102d48; font-size:20px; line-height:1.4; font-weight:650; }
.woocommerce ul.products li.product .price::after { content:' USD'; font-size:10px; color:#627387; font-weight:400; }
.woocommerce ul.products li.product > a.button { display:block; align-self:stretch; margin:0 16px 16px; padding:11px 14px; text-align:center; background:#fff; border:1px solid #d4dfe8; border-radius:4px; color:#173c5e; font-size:12px; font-weight:600; }
.woocommerce ul.products li.product > a.button::after { content:' ↗'; margin-left:7px; }
.woocommerce ul.products li.product > a.button:hover { background:#123b5d; border-color:#123b5d; color:#fff; }
.woocommerce nav.woocommerce-pagination { margin:32px 0 10px; }
.woocommerce nav.woocommerce-pagination ul { border:0; display:inline-flex; flex-wrap:wrap; justify-content:center; max-width:100%; white-space:normal; gap:7px; }
.woocommerce nav.woocommerce-pagination ul li { border:0; }
.woocommerce nav.woocommerce-pagination ul li :is(a,span) { min-width:42px; min-height:42px; padding:12px; border:1px solid #e2e8ee; border-radius:4px; color:#173c5e; }
.woocommerce nav.woocommerce-pagination ul li span.current { background:#edf3f8; color:#102d48; }
body.single-product .content-area > div.product { display:grid; grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr); align-items:start; column-gap:64px; }
body.single-product .content-area > div.product::before,body.single-product .content-area > div.product::after { display:none; }
body.single-product .content-area > div.product > * { min-width:0; grid-column:1/-1; }
body.single-product .content-area > div.product > div.images { grid-column:1; width:100%; float:none; margin:0; padding:20px; border:1px solid #e5ebf0; border-radius:10px; background:#fff; }
/* The product container also owns the full-width tabs; a sticky summary would cover them. */
body.single-product .content-area > div.product > div.summary { grid-column:2; position:static; width:100%; float:none; margin:0; padding:6px 0 0; }
.woocommerce div.product .woocommerce-product-gallery__image img { aspect-ratio:1; object-fit:contain; }
.woocommerce div.product div.images .flex-control-thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; padding-top:18px; }
.woocommerce div.product div.images .flex-control-thumbs li { width:auto; float:none; border:1px solid #e5ebf0; border-radius:4px; overflow:hidden; }
.woocommerce div.product div.images .flex-control-thumbs img { aspect-ratio:1; object-fit:contain; opacity:.72; }
.woocommerce div.product div.images .flex-control-thumbs img.flex-active { opacity:1; outline:1px solid #335f83; outline-offset:-1px; }
.xspeed-product-eyebrow { display:flex; flex-wrap:wrap; gap:8px 14px; margin:0 0 16px; color:#5f7589; font-size:10px; letter-spacing:.12em; }
.xspeed-product-eyebrow span { letter-spacing:.025em; color:#798895; }
.woocommerce div.product .product_title { color:#102d48; font-size:clamp(25px,2.15vw,32px); line-height:1.25; letter-spacing:-.03em; margin:0 0 22px; font-weight:650; }
.xspeed-price-line { display:flex; align-items:baseline; gap:12px; }
.woocommerce div.product .xspeed-price-line p.price { margin:0; color:#102d48; font-size:32px; letter-spacing:-.035em; font-weight:650; }
.xspeed-price-line > span { color:#6a7c8c; font-size:11px; }
.xspeed-price-note { color:#6a7c8c; margin:7px 0 23px; font-size:11px; }
.woocommerce div.product .woocommerce-product-details__short-description { border:0; padding:0; color:#5a6b7c; font-size:14px; line-height:1.8; }
.woocommerce div.product .woocommerce-product-details__short-description p { margin:0 0 18px; }
.xspeed-key-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 28px; margin:24px 0; padding:23px 0; border-block:1px solid #e2e8ee; }
.xspeed-key-specs div { min-width:0; }
.xspeed-key-specs dt { color:#718193; font-size:10px; letter-spacing:.035em; }
.xspeed-key-specs dd { margin:5px 0 0; color:#173c5e; font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.xspeed-quote-panel { margin:22px 0 0; }
.xspeed-quote-panel > p { color:#627387; font-size:12px; line-height:1.8; margin:0 0 15px; }
.xspeed-quote-actions { display:grid; grid-template-columns:1.1fr 1fr; gap:10px; }
.woocommerce .xspeed-quote-actions a.button { justify-content:center; min-height:49px; padding:14px 16px; border:1px solid #173c5e; border-radius:5px; background:#fff; color:#173c5e; font-size:13px; font-weight:600; }
.woocommerce .xspeed-quote-actions a.xspeed-quote-whatsapp { color:#49657e; border-color:#d2dde6; }
.woocommerce .xspeed-quote-actions a.button:hover { background:#123b5d; border-color:#123b5d; color:#fff; }
.xspeed-product-support { gap:10px 24px; margin:16px 0 0; }
.xspeed-product-support a { min-height:38px; color:#355a7c; font-size:12px; text-decoration:none; }
.xspeed-product-support a:hover { text-decoration:underline; }
.xspeed-fitment-note { padding-top:13px; margin:12px 0 0; border-top:1px solid #e2e8ee; color:#718193; font-size:11px; line-height:1.8; }
.woocommerce div.product .woocommerce-tabs { padding-top:52px; margin-top:25px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { gap:30px; border-color:#e2e8ee; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-color:#173c5e; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color:#5a6b7c; font-size:14px; padding:16px 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:#102d48; }
.woocommerce div.product .woocommerce-tabs .panel { color:#526a80; font-size:14px; line-height:1.85; padding:28px 0; }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { display:none; }
.woocommerce div.product .woocommerce-tabs h2 { color:#173c5e; font-size:22px; font-weight:600; }
.woocommerce div.product .woocommerce-tabs table { max-width:900px; font-size:13px; }
.woocommerce div.product .woocommerce-tabs th { width:30%; background:#f5f8fb; color:#455e75; font-weight:500; }
.woocommerce div.product .woocommerce-tabs td { color:#173c5e; }
.woocommerce div.product details.xspeed-factory { max-width:900px; border-block:1px solid #e2e8ee; margin:35px 0; }
details.xspeed-factory summary { padding:22px 0; color:#173c5e; font-size:18px; font-weight:600; cursor:pointer; }
details.xspeed-factory > img { display:block; }
.woocommerce .related.products > h2 { font-size:25px; color:#102d48; letter-spacing:-.02em; margin:22px 0 28px; }
.xspeed-mobile-quote { display:none; }
.home .home-live-products .woocommerce ul.products li.product { background:#fff; color:#102d48; }
.home .home-live-products .woocommerce ul.products li.product .price { color:#102d48; }
.xspeed-all-products { display:inline-flex; min-height:44px; align-items:center; gap:10px; color:#173c5e; font-size:14px; font-weight:600; text-decoration:none; }
.xspeed-all-products:hover { text-decoration:underline; }
@media(max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}body.single-product .content-area > div.product{column-gap:34px}.xspeed-catalogue-heading{gap:26px}.xspeed-finder-link{flex-basis:190px}}
@media(max-width:800px){
 .xspeed-catalogue-heading{display:block;padding:12px 0 26px}.xspeed-catalogue-heading>div{max-width:680px}.xspeed-finder-link{display:inline-block;margin-top:18px}.xspeed-finder-link strong{display:inline;margin-left:4px}.xspeed-catalogue-heading p{font-size:14px}
 .xspeed-category-nav{gap:7px;padding-bottom:20px}.xspeed-category-nav a{padding:9px 12px;font-size:12px}.xspeed-catalogue-controls{display:block;padding-top:20px}.xspeed-product-search{width:100%}.xspeed-catalogue-controls>p{margin-top:13px;font-size:11px}.xspeed-loop-toolbar{padding-top:6px;gap:12px}.xspeed-loop-toolbar select{width:180px}
 .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.woocommerce ul.products li.product .woocommerce-LoopProduct-link{padding:10px 11px 0}.woocommerce ul.products li.product a img{margin-bottom:16px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;min-height:60px;line-height:1.5}.woocommerce ul.products li.product .price{font-size:19px;margin:auto 0 14px;padding-top:14px}.woocommerce ul.products li.product>a.button{font-size:11px;margin:0 11px 12px;padding:10px 6px}.xspeed-card-sku{font-size:9px}.xspeed-card-reference{font-size:10px}
 body.single-product{padding-bottom:calc(76px + env(safe-area-inset-bottom))}body.single-product .content-area > div.product{display:block}body.single-product .content-area > div.product>div.images{margin-bottom:30px;padding:12px}body.single-product .content-area > div.product>div.summary{padding-top:0}.woocommerce div.product .product_title{font-size:27px;max-width:650px}.woocommerce div.product .xspeed-price-line p.price{font-size:31px}.woocommerce .woocommerce-breadcrumb{font-size:11px;margin-bottom:22px}.woocommerce div.product .woocommerce-tabs{padding-top:24px}
 .xspeed-mobile-quote{position:fixed;inset:auto 0 0;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid #dbe5ee;background:#fffffff5;backdrop-filter:blur(12px);box-shadow:0 -5px 24px #102d4808}.xspeed-mobile-quote>div{color:#102d48;font-size:21px;font-weight:650;line-height:1.1}.xspeed-mobile-quote small{display:block;font-size:9px;color:#718193;font-weight:400;margin-top:5px}.xspeed-mobile-quote>a{padding:12px 18px;border:1px solid #173c5e;border-radius:4px;color:#173c5e;font-size:12px;font-weight:600;text-decoration:none}.xspeed-mobile-quote>a:hover{background:#173c5e;color:#fff}
}
@media(max-width:420px){.woocommerce ul.products{gap:10px}.xspeed-loop-toolbar .woocommerce-result-count{font-size:10px}.xspeed-loop-toolbar select{width:160px;font-size:11px}.xspeed-key-specs{gap:18px}.woocommerce .xspeed-quote-actions a.button{font-size:12px;padding-inline:8px}.woocommerce div.product .woocommerce-tabs th,.woocommerce div.product .woocommerce-tabs td{padding:12px 8px}}
@media(prefers-reduced-motion:reduce){.woocommerce ul.products li.product,.xspeed-category-nav a{transition:none}.woocommerce ul.products li.product:hover{transform:none}}
