html { scroll-behavior: smooth; }
body { margin: 0; background: #080a0d; }
body.admin-bar .site-header { top: 32px; }
.hre-modal-open { overflow: hidden; }
.site-header a, footer a { text-decoration: none; }
.product-photo-cell .product-photo { width: 92px; height: 72px; object-fit: contain; background: #fff; border-radius: 3px; }
.syvecs-wordpress-catalogue .catalogue-table-wrap details summary { cursor: pointer; font-weight: 700; list-style: none; }
.syvecs-wordpress-catalogue .catalogue-table-wrap details summary::-webkit-details-marker { display: none; }
.syvecs-wordpress-catalogue .catalogue-table-wrap details p { margin: 12px 0 8px; max-width: 720px; }
.syvecs-wordpress-catalogue .catalogue-table-wrap details small { display: block; line-height: 1.55; }
.syvecs-wordpress-catalogue .hre-catalogue-description[open] { min-width: min(720px, 70vw); }
.syvecs-wordpress-catalogue .hre-catalogue-description-body { border-left: 3px solid #dcff2f; margin-top: 14px; padding: 4px 0 5px 16px; }
.syvecs-wordpress-catalogue .hre-catalogue-description-body h3 { color: #f1f2ee; font-size: 20px; margin: 0 0 10px; text-transform: uppercase; }
.syvecs-wordpress-catalogue .hre-catalogue-description-body h4 { color: #f1f2ee; font-size: 13px; margin: 18px 0 8px; text-transform: uppercase; }
.syvecs-wordpress-catalogue .hre-catalogue-description-body p { color: #c4c8c7; font-size: 12px; line-height: 1.65; }
.syvecs-wordpress-catalogue .hre-catalogue-description-body ul { color: #c4c8c7; font-size: 12px; line-height: 1.6; margin: 8px 0 16px; padding-left: 19px; }
.syvecs-wordpress-catalogue .hre-catalogue-description-body li { margin: 6px 0; }
.syvecs-wordpress-catalogue .hre-catalogue-description-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.syvecs-wordpress-catalogue .hre-catalogue-description-actions a { align-items: center; border: 1px solid #dcff2f; color: #dcff2f; display: inline-flex; font-size: 10px; font-weight: 800; justify-content: center; min-height: 36px; padding: 5px 10px; text-align: center; text-decoration: none; text-transform: uppercase; }
.syvecs-wordpress-catalogue .hre-catalogue-description-actions a:hover, .syvecs-wordpress-catalogue .hre-catalogue-description-actions a:focus { background: #dcff2f; color: #070808; }
@media (max-width: 782px) { .syvecs-wordpress-catalogue .hre-catalogue-description[open] { min-width: 0; } .syvecs-wordpress-catalogue .hre-catalogue-description-body { padding-left: 11px; } .syvecs-wordpress-catalogue .hre-catalogue-description-actions { align-items: stretch; flex-direction: column; } }
.catalogue-group[hidden], tr[hidden], .no-results[hidden], .lead-form-success[hidden], .lead-form-error[hidden], .cookie-consent[hidden], .cookie-preferences[hidden], .cookie-actions[hidden] { display: none !important; }
.hre-shop-shell { min-height: 70vh; }
.hre-woocommerce-content { padding: 70px clamp(20px, 5vw, 90px) 110px; background: #f2f1ed; color: #11161c; }
.hre-woocommerce-content .woocommerce { max-width: 1500px; margin: 0 auto; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { background: #fff; padding: 18px; border: 1px solid #d7d7d2; }
.woocommerce ul.products li.product .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button { min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; border-radius: 0; background: #dcff2f; color: #11161c; font-family: 'Barlow Condensed', sans-serif; font-weight: 800; line-height: 1.2; text-align: center; text-transform: uppercase; letter-spacing: .04em; }
.woocommerce div.product { background: #fff; padding: clamp(20px, 4vw, 55px); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #11161c; font-weight: 800; }
.woocommerce-message, .woocommerce-info { border-top-color: #dcff2f; }
.woocommerce-message::before, .woocommerce-info::before { color: #839b00; }
.hre-checkout-note { padding: 12px; background: #f4f4ef; border-left: 3px solid #dcff2f; }
.terms-acceptance-form { display: grid; gap: 15px; padding: 28px; background: #10151b; color: #fff; }
.terms-acceptance-form label { display: grid; gap: 7px; }
.terms-acceptance-form input, .terms-acceptance-form textarea { padding: 13px; border: 1px solid #42505c; background: #fff; color: #111; }
.terms-acceptance-form .accept-check { grid-template-columns: auto 1fr; align-items: start; }
.terms-acceptance-form button { padding: 14px 20px; border: 0; background: #dcff2f; font-weight: 800; cursor: pointer; }
.terms-form-result.success { color: #dcff2f; }
.terms-form-result.error { color: #ff8d8d; }
.hre-inline-purchase { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.hre-inline-purchase a { display: inline-flex; align-items: center; padding: 12px 18px; background: #dcff2f; color: #111; font-weight: 800; text-transform: uppercase; }
.page-content-shell { padding: 70px clamp(20px, 6vw, 100px); background: #f2f1ed; color: #111; }
@media (max-width: 782px) { body.admin-bar .site-header { top: 46px; } }

/* Full second-click Syvecs product information. */
.hre-full-product-description { max-width: 920px; }
.hre-full-product-description .hre-product-type { color: #b51f25; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.hre-full-product-description .hre-product-intro { font-size: 1.08rem; line-height: 1.75; }
.hre-full-product-description ul { margin: 1rem 0 1.5rem; padding-left: 1.25rem; }
.hre-full-product-description li { line-height: 1.6; margin: .55rem 0; }
.hre-product-order-note { background: #f2f2f2; border-left: 4px solid #b51f25; margin-top: 1.5rem; padding: 1.15rem 1.25rem; }
.hre-product-order-note p:last-child { margin-bottom: 0; }
.hre-manufacturer-reference { margin: 1.25rem 0 1.5rem; }
.hre-manufacturer-reference a { align-items: center; background: #11161c; color: #fff; display: inline-flex; font-family: 'Barlow Condensed', sans-serif; font-weight: 800; justify-content: center; letter-spacing: .04em; min-height: 44px; padding: .7rem 1rem; text-align: center; text-decoration: none; text-transform: uppercase; }
.hre-manufacturer-reference a:hover, .hre-manufacturer-reference a:focus { background: #b51f25; color: #fff; }
.hre-manufacturer-reference span { margin-left: .35rem; }

/* Itemised E9x and S85 V10 package selectors. */
.hre-ecu-options { border: 1px solid #d8d8d8; margin: 1.5rem 0; padding: 1rem; }
.hre-ecu-options legend { font-family: 'Barlow Condensed', sans-serif; font-size: 1.45rem; font-weight: 800; padding: 0 .4rem; text-transform: uppercase; }
.hre-options-help { color: #555; font-size: .92rem; }
.hre-ecu-options details { border-top: 1px solid #ddd; padding: .8rem 0; }
.hre-ecu-options summary { cursor: pointer; display: flex; font-weight: 700; gap: 1rem; justify-content: space-between; }
.hre-ecu-options summary span { color: #b51f25; white-space: nowrap; }
.hre-ecu-options label { align-items: flex-start; cursor: pointer; display: flex; gap: .65rem; padding: .85rem .25rem .2rem; }
.hre-ecu-options input[type='checkbox'] { height: 1.15rem; margin-top: .15rem; width: 1.15rem; }

/* Mandatory E92 M3 V10 package production acknowledgement. */
.hre-v10-lead-time { border: 2px solid #b51f25; margin: 1.5rem 0; padding: 1rem 1.1rem; }
.hre-v10-lead-time legend { color: #b51f25; font-family: 'Barlow Condensed', sans-serif; font-size: 1.45rem; font-weight: 800; padding: 0 .4rem; text-transform: uppercase; }
.hre-v10-lead-time label { align-items: flex-start; cursor: pointer; display: flex; font-weight: 800; gap: .75rem; line-height: 1.45; }
.hre-v10-lead-time input[type='checkbox'] { flex: 0 0 auto; height: 1.25rem; margin-top: .15rem; width: 1.25rem; }
.hre-v10-lead-time p { color: #626262; font-size: .88rem; margin: .75rem 0 0 2rem; }
.hre-v10-page-purchase { margin-top: 22px; }
.hre-v10-page-purchase .hre-v10-lead-time { border-color: #dcff2f; color: #fff; }
.hre-v10-page-purchase .hre-v10-lead-time legend { color: #dcff2f; }
.hre-v10-page-purchase .hre-v10-lead-time p { color: #c7cdca; }
.hre-v10-page-purchase button { background: #dcff2f; border: 0; color: #111; cursor: pointer; font-weight: 800; padding: 13px 18px; text-transform: uppercase; }
.hre-v10-page-purchase button:hover, .hre-v10-page-purchase button:focus { background: #fff; }
