/* Storefront refinement layer: navigation, discovery and purchase flows. */
:root { --charcoal:#252a2b; --black:#181d1e; --text:#4b5456; --muted:#636e70; --soft:#f5f6f4; --line:#e0e5e2; --yellow:#f4cf50; --yellow-dark:#786017; --container:1200px; }
body { -webkit-font-smoothing:antialiased; }
button, input, select, textarea { font:inherit; }
input, select, textarea { max-width:100%; }
button, a, input, select, textarea { -webkit-tap-highlight-color:transparent; }
:where(a, button, input, select, textarea, summary):focus-visible { outline:3px solid #94721a; outline-offset:4px; }
:where(.site-header, .site-footer, .energy-home-hero) :focus-visible { outline-color:var(--yellow); }
:where(input, select, textarea) { accent-color:var(--yellow-dark); }
svg { flex-shrink:0; }
.section-link svg, .hero-browse-link svg, .hero-product-detail > svg, .energy-category-grid a > svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; }
.section, .energy-section { padding:76px 0; }
h1, h2, h3 { text-wrap:balance; }
.header-utility, .header-utility .container { min-height:32px; }
.header-utility { background:var(--black); color:#c4ccca; }
.header-utility .container { justify-content:space-between; }
.header-utility a { color:#dce1dd; text-decoration:none; }
.header-utility a:hover { color:var(--yellow); }
.header-branding__inner { min-height:84px; }
.brand__mark { width:34px; height:42px; }
.brand strong { font-size:1.72rem; }
.brand small { color:#c1c9c5; font-size:.57rem; }
.header-actions { gap:28px; }
.header-actions > a { display:inline-flex; align-items:center; gap:9px; color:#d1d7d3; }
.header-actions svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.5; }
.header-cart { padding-left:24px; border-left:1px solid #4a5050; gap:10px; }
.header-cart__total { font-size:.85rem !important; }
.header-cart__count { display:grid; place-items:center; min-width:24px; height:24px; padding:0 5px; border-radius:50%; background:var(--yellow); color:var(--black); font-size:.7rem; }
.header-navigation { background:#fff; border-bottom:1px solid var(--line); }
.header-navigation__inner { min-height:58px; }
.primary-nav ul { gap:32px; }
.primary-nav a { position:relative; display:flex; align-items:center; min-height:58px; font-size:.7rem; letter-spacing:.035em; }
.primary-nav .current-menu-item > a, .primary-nav a:hover { color:var(--black); }
.primary-nav a::after { content:""; position:absolute; bottom:0; left:0; right:0; height:3px; background:var(--yellow); transform:scaleX(0); transform-origin:left; transition:transform .18s; }
.primary-nav .current-menu-item > a::after, .primary-nav a:hover::after { transform:scaleX(1); }
.search-toggle { display:flex; gap:10px; width:auto; padding:0 14px; background:var(--soft); border-radius:6px; font-size:.76rem; font-weight:600; }
.search-toggle svg { width:18px; }
.header-search { top:calc(100% + 8px); border-radius:10px; }
.header-search input { min-width:0; width:100%; border-radius:5px 0 0 5px; font-size:16px; }
.header-search button { border-radius:0 5px 5px 0; }
.energy-home-hero { min-height:0; background:radial-gradient(ellipse at 80% 0, #3c4540 0, transparent 55%), var(--black); }
.energy-home-hero::before { opacity:.035; background:repeating-linear-gradient(90deg, transparent 0 99px, #fff 100px 101px); }
.energy-home-hero__inner { min-height:530px; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:72px; padding-block:52px; }
.energy-home-hero__copy { padding:0; }
.energy-home-hero__copy > .hero-eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:23px; color:#d2d9d1; font-size:.68rem; letter-spacing:.14em; }
.hero-eyebrow > span { width:7px; height:7px; background:var(--yellow); border-radius:50%; }
.energy-home-hero h1 { margin-bottom:22px; font-size:clamp(2.7rem,4.4vw,3.8rem); font-weight:700; line-height:1.09; letter-spacing:-.045em; }
.energy-home-hero h1 em { color:var(--yellow); font-style:normal; }
.energy-home-hero__copy > .hero-description { max-width:515px; font-size:.97rem; font-weight:400; line-height:1.75; letter-spacing:0; color:#c4cdc7; }
.hero-search { margin:26px 0 12px; padding:5px; border:1px solid #65716a; border-radius:9px; background:#fff; box-shadow:0 6px 24px #0002; }
.hero-search input { min-height:46px; color:var(--black); font-size:16px; padding:10px 12px; }
.hero-search input::placeholder { color:#66716c; }
.hero-search button { display:flex; align-items:center; justify-content:center; gap:8px; border-radius:5px; padding:0 18px; font-size:.84rem; }
.hero-search button:hover { background:#eac13a; }
.hero-search svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
.hero-search-examples { display:flex; flex-wrap:wrap; align-items:center; gap:8px; color:#adb9b0; font-size:.7rem; }
.hero-search-examples > span { margin-right:4px; }
.hero-search-examples a { display:inline-flex; align-items:center; min-height:32px; padding:3px 9px; border:1px solid #556159; border-radius:4px; color:#e2e8e3; text-decoration:none; }
.hero-search-examples a:hover { border-color:var(--yellow); color:var(--yellow); }
.hero-browse-link { display:inline-flex; align-items:center; gap:14px; margin-top:23px; color:#e7ece8; text-decoration:none; font-size:.83rem; }
.hero-browse-link:hover { color:var(--yellow); }
.energy-home-hero__product { align-self:center; padding:20px; border:1px solid #566159; border-radius:14px; background:#ffffff08; box-shadow:0 20px 55px #0002; }
.energy-home-hero__product::before { display:none; }
.energy-home-hero__product > .hero-product-eyebrow { margin-bottom:15px; padding:0; color:#d6decf; background:none; font-size:.61rem; letter-spacing:.12em; }
.energy-home-hero__product img { width:100%; aspect-ratio:1.32; padding:20px; object-fit:contain; background:white; border-radius:7px; mix-blend-mode:normal; filter:none; }
.hero-product-detail { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:17px; }
.hero-product-detail small { display:block; color:#aebcae; font-size:.59rem; letter-spacing:.1em; }
.energy-home-hero__product strong { display:block; margin-top:5px; color:#f5f7f2; font-size:1.06rem; text-transform:none; }
.hero-product-detail > svg { color:var(--yellow); }
.hero-product-note { display:block; margin-top:12px; color:#bac6ba; font-size:.66rem; line-height:1.5; }
.home-shortcuts { margin-top:0; border-bottom:1px solid var(--line); }
.home-shortcuts__grid { box-shadow:none; }
.home-shortcuts a { min-height:110px; padding:24px; background:white; column-gap:18px; }
.home-shortcuts a:nth-child(2) { background:white; color:var(--charcoal); }
.home-shortcuts a:hover { background:var(--soft); }
.home-shortcuts a > span { display:grid; place-items:center; width:42px; height:42px; border-radius:10px; color:var(--charcoal); background:#faf4da; }
.home-shortcuts svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.4; }
.home-shortcuts strong { font-size:.73rem; letter-spacing:.035em; }
.home-shortcuts small { margin-top:5px; font-size:.75rem; line-height:1.45; }
.energy-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:30px; text-align:left; }
.energy-section-heading h2 { margin:9px 0 0; font-size:clamp(1.6rem,2.8vw,2.15rem); line-height:1.2; text-transform:none; letter-spacing:-.035em; }
.energy-section-heading p { font-size:.64rem; }
.section-link { flex-shrink:0; display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:.8rem; font-weight:600; text-decoration:none; }
.section-link:hover { color:var(--yellow-dark); }
.home-categories { background:var(--soft); }
.energy-category-grid { gap:16px; }
.energy-category-grid a, .energy-category-grid a:nth-child(2n) { min-height:184px; padding:24px; color:var(--charcoal); background:#fff; border:1px solid var(--line); border-radius:10px; transition:border-color .2s, transform .2s; }
.energy-category-grid a:hover { border-color:#a8b4aa; transform:translateY(-3px); }
.energy-category-grid a::after { display:none; }
.energy-category-grid .category-symbol { margin:0 0 24px; color:var(--yellow-dark); }
.category-symbol svg { width:27px; height:27px; stroke:currentColor; stroke-width:1.4; fill:none; }
.energy-category-grid strong { color:var(--charcoal); font-size:1rem; }
.energy-category-grid small { max-width:85%; margin-top:8px; color:var(--muted); font-size:.77rem; line-height:1.5; }
.energy-category-grid a > svg { position:absolute; right:23px; top:27px; color:#89968e; }
.home-categories .centered-action { display:none; }
.energy-button, .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius:6px !important; text-transform:none; letter-spacing:0; font-size:.84rem !important; font-weight:700 !important; }
.energy-button--dark:hover { background:var(--black) !important; color:var(--yellow) !important; }
.woocommerce ul.products li.product { padding:16px; border-radius:10px; }
.woocommerce ul.products li.product a img { aspect-ratio:1.2; background:#f7f8f6; border-radius:6px; padding:20px; margin-bottom:16px; }
.product-card-category { margin:0 0 12px; padding:0; background:none; color:var(--yellow-dark); font-size:.62rem; letter-spacing:.045em; line-height:1.45; white-space:normal; max-width:100%; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { display:block; overflow:visible; min-height:0; margin-bottom:18px; font-size:.9rem; font-weight:600; line-height:1.55; letter-spacing:0; text-transform:none; overflow-wrap:anywhere; }
.woocommerce ul.products li.product .price { font-size:1.12rem; color:var(--charcoal); font-variant-numeric:tabular-nums; margin-bottom:16px; }
.woocommerce ul.products li.product .button { min-height:46px; background:#f5f0de !important; }
.woocommerce ul.products li.product .button:hover { background:var(--yellow) !important; color:var(--black) !important; transform:none; }
.woocommerce ul.products li.product .button.loading { opacity:.7; }
.product-service-label { display:inline-block; align-self:flex-start; margin-bottom:10px; padding:3px 8px; color:#5d4925; background:#f7eddc; border-radius:4px; font-size:.7rem; font-weight:600; }
.energy-service-band article { min-height:220px; padding:32px; }
.energy-service-band article > span { font-size:1rem; }
.energy-service-band h3 { margin-top:20px; font-size:.85rem; }
.energy-service-band p { color:#bcc7bf; }
.energy-service-band a { display:inline-block; margin-top:12px; color:var(--yellow); font-size:.8rem; text-decoration:none; }
.confidence-section h2 { font-size:clamp(2.2rem,4vw,3.5rem); letter-spacing:-.04em; line-height:1.1; }
.confidence-section__grid { gap:64px; }
.energy-cta h2 { font-size:clamp(1.8rem,3vw,2.5rem); letter-spacing:-.035em; }
.energy-cta p { margin:0; }
.energy-page-hero { background:var(--black); }
.energy-page-hero::after, .energy-title-frame::before, .energy-title-frame::after { display:none; }
.energy-page-hero__inner { min-height:164px; gap:30px; }
.energy-title-frame { max-width:850px; padding:28px 0; }
.energy-title-frame > span { display:block; margin-bottom:12px; color:var(--yellow); font-size:.63rem; letter-spacing:.12em; }
.energy-title-frame h1 { font-size:clamp(1.6rem,2.7vw,2.2rem); text-transform:none; line-height:1.25; text-wrap:pretty; }
.energy-breadcrumb strong { max-width:180px; }
.energy-breadcrumb { gap:10px; }
.shop-layout { grid-template-columns:230px minmax(0,1fr); gap:32px; padding-top:42px; }
.shop-category-list a { display:flex; align-items:center; min-height:44px; padding:10px 12px; border-radius:5px; color:var(--text); font-size:.8rem; line-height:1.5; text-transform:none; }
.shop-category-list a:hover { background:var(--soft); color:var(--black); }
.shop-category-list a[aria-current="page"] { background:#faf2d2; color:var(--black); font-weight:700; border-left:3px solid var(--yellow-dark); }
.shop-widget h2 { font-size:.82rem; letter-spacing:.015em; text-transform:none; }
.shop-widget--help, .shop-search { border-radius:8px; overflow:hidden; }
.shop-search input { font-style:normal; font-size:.85rem; }
.shop-widget--filter input { min-height:46px; border-radius:5px; font-size:16px; }
.shop-widget--filter label { font-size:.7rem; text-transform:none; }
.filter-reset { display:inline-flex; align-items:center; min-height:44px; margin-left:12px; color:var(--muted); font-size:.77rem; }
.woocommerce .woocommerce-ordering select { min-height:46px; border-radius:6px; font-size:.8rem; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width:44px; min-height:44px; border-radius:6px; }
.commerce-shell { padding-top:44px; }
.woocommerce div.product { gap:40px; }
.woocommerce div.product .woocommerce-product-gallery__wrapper { background:var(--soft); border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.woocommerce div.product p.price { font-size:1.85rem; color:var(--charcoal); }
.woocommerce div.product .woocommerce-product-details__short-description { color:var(--text); }
.woocommerce div.product form.cart { padding:22px 0; border-block:1px solid var(--line); }
.woocommerce .quantity .qty { min-width:64px; border-radius:5px; font-size:16px; }
.woocommerce div.product form.cart .button { flex:1; }
.product-fit-summary strong { overflow-wrap:anywhere; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { min-height:48px; }
.woocommerce div.product .woocommerce-tabs .panel { line-height:1.8; }
.woocommerce table.shop_table { border-radius:8px; overflow:hidden; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-radius:6px; font-size:.9rem; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { border-radius:5px; font-size:16px; min-height:48px; }
.woocommerce form.checkout .checkout-order-column { padding:24px; border:1px solid var(--line); border-radius:12px; background:#fafbf9; }
.woocommerce #payment { border-radius:8px; }
.woocommerce #payment #place_order:hover, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background:var(--charcoal) !important; }
.checkout-steps { counter-reset:checkout; }
.checkout-steps > * { display:flex; align-items:center; gap:8px; }
.checkout-steps > *::before { counter-increment:checkout; content:counter(checkout); display:grid; place-items:center; width:27px; height:27px; flex-shrink:0; border:1px solid var(--line); border-radius:50%; font-size:.7rem; }
.checkout-steps > .is-active::before { background:var(--yellow); color:var(--black); border-color:var(--yellow); }
.compatibility-form-wrap { border:1px solid var(--line); border-radius:12px; background:#fafbf9; }
.form-grid input, .form-grid select, .form-grid textarea { border-radius:5px; font-size:16px; }
.form-grid label { font-size:.8rem; }
.form-grid textarea { resize:vertical; min-height:140px; }
.form-fine-print, .form-section-heading p, .evidence-list p { font-size:.82rem; }
.compatibility-layout aside h2 { font-size:2rem; letter-spacing:-.035em; }
.catalog-type-links { gap:14px; background:none; }
.catalog-type-links a { border:1px solid var(--line); border-radius:8px; }
.catalog-type-links strong { font-size:.8rem; text-transform:none; }
.catalog-card-grid { gap:16px; background:none; grid-template-columns:repeat(3,minmax(0,1fr)); }
.catalog-card-grid a, .catalog-card-grid a:nth-child(3n+2) { padding:24px; color:var(--charcoal); background:#fff; border:1px solid var(--line); border-radius:8px; }
.catalog-card-grid span { color:var(--yellow-dark); }
.catalog-card-grid small { margin-top:8px; color:var(--muted); }
.catalog-card-grid a:hover { background:#fcf6df; }
.prose { max-width:820px; line-height:1.85; }
.prose h2, .prose h3, .section-heading h2 { text-transform:none; letter-spacing:-.025em; }
.prose a:not(.button):hover { color:var(--yellow-dark); }
.mdbg-guide-card { border-radius:10px; overflow:hidden; }
.mdbg-guide-card__body h2 { text-transform:none; }
.footer-product-rail { padding:40px 0; }
.site-footer { padding-top:58px; color:#bbc4bf; }
.footer-grid { gap:42px; }
.site-footer a:not(.brand), .footer-business address { color:#bbc4bf; }
.site-footer a:not(.brand) { display:inline-block; padding-block:4px; font-size:.81rem; }
.footer-brand p, .footer-business { font-size:.79rem; }
.footer-bottom { flex-wrap:wrap; gap:12px 28px; font-size:.72rem; }
.to-top { width:44px; height:44px; border:1px solid #cfb753; border-radius:8px; box-shadow:0 4px 14px #0001; }
.js .to-top { visibility:hidden; opacity:0; pointer-events:none; transition:opacity .2s; }
.js .to-top.is-visible { visibility:visible; opacity:1; pointer-events:auto; }
.cart-feedback { position:fixed; bottom:24px; left:50%; z-index:100; display:none; align-items:center; gap:22px; width:max-content; max-width:calc(100% - 32px); transform:translateX(-50%); padding:16px 20px; border:1px solid #626f63; border-radius:10px; background:var(--black); color:#fff; box-shadow:0 12px 35px #0003; font-size:.85rem; }
.cart-feedback.is-visible { display:flex; }
.cart-feedback a { color:var(--yellow); white-space:nowrap; min-height:44px; display:inline-flex; align-items:center; }
.cart-feedback button { border:0; color:#fff; background:transparent; min-width:44px; min-height:44px; cursor:pointer; font-size:1.3rem; }
@media (min-width:981px) { .woocommerce div.product div.images { align-self:start; position:sticky; top:28px; } }
@media (max-width:1100px) and (min-width:721px) { .primary-nav ul { gap:20px; } .search-toggle > span { display:none; } .energy-home-hero__inner { gap:36px; } }
@media (max-width:980px) {
  .energy-home-hero__inner { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:28px; }
  .energy-home-hero__product { width:100%; padding:15px; }
  .energy-home-hero h1 { font-size:2.75rem; }
  .home-shortcuts a { padding:20px 15px; column-gap:12px; }
  .home-shortcuts small { font-size:.69rem; }
  .woocommerce .shop-main ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .energy-breadcrumb { display:none; }
  .confidence-section__grid { gap:32px; }
  .woocommerce div.product { gap:32px; }
  .header-cart { padding-left:0; border:0; }
  .footer-grid { gap:32px; }
}
@media (max-width:720px) {
  .container { width:calc(100% - 36px); }
  .header-utility .container { justify-content:center; min-height:28px; }
  .header-utility a { display:none; }
  .header-branding__inner { min-height:70px; gap:12px; }
  .brand strong { font-size:1.4rem; }
  .brand small { font-size:.46rem; margin-top:6px; }
  .brand__mark { width:28px; height:36px; }
  .brand { gap:8px; }
  .header-cart { gap:5px; }
  .header-cart svg { width:23px; height:23px; }
  .header-cart__count { min-width:21px; height:21px; font-size:.62rem; }
  .nav-toggle { border-radius:5px; height:42px; cursor:pointer; }
  .header-navigation__inner { min-height:48px; justify-content:flex-end; }
  .search-toggle { min-height:44px; background:none; padding-right:0; }
  .primary-nav { top:48px; left:-18px; right:-18px; background:#fff; border-top:1px solid var(--line); padding:12px 24px; }
  .primary-nav ul { gap:0; }
  .primary-nav a { min-height:46px; font-size:.82rem; border-bottom:1px solid var(--line); }
  .primary-nav .current-menu-item > a { text-decoration:none; }
  .primary-nav a::after { right:auto; width:28px; }
  .header-search { top:calc(100% + 4px); padding:12px; }
  .header-search button { padding:10px 14px; }
  .energy-home-hero__inner { display:grid; grid-template-columns:1fr; gap:28px; min-height:0; padding-block:38px; }
  .energy-home-hero__copy { padding:0; }
  .energy-home-hero__copy > .hero-eyebrow { font-size:.59rem; margin-bottom:20px; }
  .energy-home-hero h1 { font-size:clamp(2rem,8.3vw,3.4rem); line-height:1.13; margin-bottom:18px; }
  .energy-home-hero__copy > .hero-description { font-size:.88rem; margin-bottom:20px; }
  .hero-search { grid-template-columns:minmax(0,1fr) auto; margin-top:20px; }
  .hero-search input { padding-inline:8px; min-height:48px; }
  .hero-search button { padding-inline:12px; min-height:48px; }
  .hero-search button svg { display:none; }
  .hero-browse-link { margin-top:18px; min-height:36px; }
  .energy-home-hero__product { display:grid; grid-template-columns:100px minmax(0,1fr); column-gap:16px; padding:16px; max-width:none; }
  .energy-home-hero__product > .hero-product-eyebrow { grid-column:2; grid-row:1; margin:0 0 8px; font-size:.53rem; }
  .energy-home-hero__product img { grid-column:1; grid-row:1 / 4; aspect-ratio:1; padding:10px; align-self:center; }
  .hero-product-detail { grid-column:2; padding:0; }
  .hero-product-detail > svg, .hero-product-detail small { display:none; }
  .energy-home-hero__product strong { margin:0; font-size:.86rem; }
  .hero-product-note { grid-column:2; font-size:.62rem; margin-top:7px; }
  .home-shortcuts__grid { grid-template-columns:1fr; }
  .home-shortcuts a { min-height:87px; padding:18px 0; column-gap:16px; }
  .home-shortcuts a:last-child { border-bottom:0; }
  .home-shortcuts small { font-size:.75rem; }
  .section, .energy-section { padding:48px 0; }
  .energy-section-heading { align-items:flex-start; flex-direction:column; gap:10px; margin-bottom:24px; }
  .energy-section-heading h2 { font-size:1.7rem; }
  .section-link { min-height:36px; }
  .energy-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .energy-category-grid a { min-height:190px; padding:18px; }
  .energy-category-grid .category-symbol { margin-bottom:20px; }
  .energy-category-grid strong { font-size:.86rem; }
  .energy-category-grid small { max-width:100%; font-size:.72rem; }
  .energy-category-grid a > svg { top:20px; right:15px; width:18px; }
  .woocommerce ul.products li.product { padding:15px; }
  .woocommerce ul.products li.product a img { aspect-ratio:1.45; padding:22px; margin-bottom:16px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { display:block; overflow:visible; min-height:0; padding:0; font-size:.92rem; line-height:1.55; }
  .product-card-category { margin:0 0 10px; padding:0; max-width:100%; font-size:.62rem; overflow:visible; white-space:normal; }
  .woocommerce ul.products li.product .price { font-size:1.12rem; }
  .woocommerce ul.products li.product .button { font-size:.82rem !important; min-height:46px; }
  .energy-service-band article { min-height:0; padding:28px 0; }
  .energy-service-band h3 { margin-top:12px; }
  .confidence-section__grid { gap:24px; }
  .energy-cta { padding:36px 0; }
  .energy-cta .container { gap:22px; }
  .energy-cta .energy-button { width:100%; }
  .energy-page-hero__inner { min-height:138px; }
  .energy-title-frame { padding:26px 0; }
  .energy-title-frame h1 { font-size:1.65rem; }
  .single-product .energy-title-frame h1 { font-size:1.28rem; line-height:1.35; }
  .shop-layout { gap:20px; padding-top:24px; }
  .shop-filter-toggle { border-radius:6px; }
  .shop-sidebar { padding:22px; border:1px solid var(--line); border-radius:8px; margin:0; }
  .shop-widget:last-child { margin-bottom:0; }
  .shop-search input, .woocommerce .woocommerce-ordering select { font-size:16px; }
  .commerce-shell { padding-top:28px; }
  .woocommerce div.product { gap:26px; }
  .woocommerce div.product .related ul.products { grid-template-columns:1fr; }
  .woocommerce div.product .woocommerce-product-gallery__image img { padding:20px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { width:auto; flex:1; text-align:center; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li a { font-size:.76rem; }
  .woocommerce form.checkout .checkout-order-column { padding:18px 12px; }
  .checkout-steps { justify-content:space-between; gap:8px; padding:24px 0; white-space:normal; font-size:.65rem; line-height:1.4; }
  .checkout-steps > * { flex:1; flex-direction:column; gap:7px; text-align:center; }
  .checkout-steps > *:not(:last-child)::after { display:none; }
  .catalog-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .catalog-card-grid a { padding:18px; }
  .compatibility-layout__grid { gap:32px; }
  .compatibility-layout aside h2 { font-size:1.85rem; }
  .prose { padding-block:42px; }
  .site-footer { padding-top:42px; }
  .footer-grid { gap:28px 20px; padding-bottom:32px; }
  .footer-grid > div:last-child { grid-column:1/-1; }
  .footer-grid > div:last-child ul { display:grid; grid-template-columns:1fr 1fr; column-gap:20px; }
  .site-footer a:not(.brand) { min-height:44px; display:flex; align-items:center; }
  .footer-business { max-width:none; }
  .footer-bottom { gap:12px; }
  .cart-feedback { bottom:12px; gap:12px; padding:10px 14px; font-size:.78rem; }
  .to-top { right:12px; bottom:12px; }
}
@media (max-width:560px) { .woocommerce .shop-main ul.products, .woocommerce ul.products { grid-template-columns:1fr; } }
@media (max-width:370px) {
  .container { width:calc(100% - 28px); }
  .brand strong { font-size:1.24rem; }
  .brand small { display:none; }
  .header-cart__count { min-width:19px; }
  .hero-search input { font-size:16px; }
  .hero-search button { padding-inline:9px; }
  .energy-category-grid { grid-template-columns:1fr; }
  .energy-category-grid a { min-height:160px; }
}
@media (prefers-reduced-motion:reduce) { *, *::before, *::after { scroll-behavior:auto !important; transition:none !important; } }
/* Final purchase and reading details. */
.checkout-steps { padding-top:40px; }
.checkout-steps > * { color:#66716b; }
.woocommerce form.checkout .checkout-order-column > #order_review { padding:0; border:0; background:transparent; }
.woocommerce .woocommerce-checkout-review-order-table { border:0; border-radius:0; }
.woocommerce .cart_totals { border-radius:10px; }
.woocommerce-cart table.cart td.actions .coupon { display:flex; gap:8px; }
.woocommerce-cart table.cart td.actions .coupon .input-text { width:180px; min-height:48px; margin:0; padding:10px 14px; border:1px solid var(--line); border-radius:5px; font-size:16px; }
.woocommerce .cart_totals h2, .woocommerce-checkout h3 { text-transform:none; letter-spacing:-.025em; }
.mdbg-blog .mdbg-blog-intro h2, .mdbg-guide-card .mdbg-guide-card__body h2 { text-transform:none; letter-spacing:-.025em; }
.mdbg-guide-hero img, .mdb-guide-toc, .mdb-guide-checklist { border-radius:8px; }
.mdbg-guide-content.prose { margin-inline:auto; }
@media (max-width:720px) {
  .checkout-steps { padding-top:24px; }
  .woocommerce-cart table.cart td.actions .coupon { width:100%; }
  .woocommerce-cart table.cart td.actions .coupon .input-text { width:50%; min-width:0; }
  .woocommerce-cart table.cart td.actions .coupon .button { flex:1; }
  .woocommerce .compatibility-table th { width:38%; font-size:.75rem; }
  .woocommerce .compatibility-table td { overflow-wrap:anywhere; font-size:.8rem; }
  .woocommerce .compatibility-table th, .woocommerce .compatibility-table td { padding:12px 10px; }
}
@media (max-width:560px) { .mdbg-guide-content .woocommerce ul.products { grid-template-columns:1fr; } }
.product-purchase-help { margin-top:24px; padding:18px; background:var(--soft); border-radius:8px; }
.product-purchase-help p { display:flex; align-items:flex-start; gap:12px; margin:0 0 14px; font-size:.8rem; line-height:1.65; }
.product-purchase-help p:last-child { margin:0; }
.product-purchase-help svg { width:21px; height:21px; fill:none; stroke:var(--yellow-dark); stroke-width:1.5; }
#compatibility-request { scroll-margin-top:24px; }
@media (max-width:720px) { .compatibility-layout .evidence-list { margin-top:20px; } }
.form-grid label:not(.checkbox-label) { display:block; }
.form-grid label:not(.checkbox-label) > input, .form-grid label:not(.checkbox-label) > select, .form-grid label:not(.checkbox-label) > textarea { display:block; margin-top:8px; font-weight:400; }
.form-grid label > span[aria-hidden="true"] { color:#a33328; }
.form-grid .checkbox-label { display:flex; gap:10px; }
.search-empty { border-radius:8px; padding:32px; }
.search-empty h2 { text-transform:none; font-size:1.8rem; }
@media (max-width:720px) { .search-empty { padding:25px; } }

/* Compact KKshop-style checkout: one delivery address, summary, shipping, payment. */
.hstormb-checkout-content { padding:42px 0 88px; }
.hstormb-checkout-content .woocommerce { width:100%; }
.hstormb-checkout-content .woocommerce form.checkout { display:block; }
.hstormb-checkout-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,420px); align-items:start; gap:clamp(36px,5vw,72px); }
.hstormb-checkout-details { grid-column:1; grid-row:1; min-width:0; }
.hstormb-checkout-summary { position:sticky; top:24px; grid-column:2; grid-row:1; min-width:0; margin:0; padding:24px; border:1px solid var(--line); border-radius:12px; background:#f7f8f6; }
.hstormb-checkout-title { margin-bottom:26px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.hstormb-checkout-title > span { display:block; margin-bottom:7px; color:var(--yellow-dark); font-size:.63rem; font-weight:800; letter-spacing:.11em; }
.hstormb-checkout-title h1 { margin:0; font-size:2.2rem; line-height:1.12; letter-spacing:-.04em; }
.hstormb-checkout-title p { margin:8px 0 0; color:var(--muted); font-size:.8rem; }
.hstormb-checkout-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:13px; }
.hstormb-checkout-section-heading h2 { margin:0; color:var(--charcoal); font-size:1.2rem; letter-spacing:-.025em; text-transform:none; }
.hstormb-checkout-section-heading a { color:var(--muted); font-size:.75rem; font-weight:600; }
.hstormb-checkout-field-group { margin-top:28px; }
.hstormb-checkout-field-group--contact { margin-top:0; }
.hstormb-checkout-content .form-row { float:none; width:100%; margin:0 0 12px; }
.hstormb-checkout-content .form-row label { display:block; margin-bottom:6px; color:#3f4949; font-size:.72rem; font-weight:650; }
.hstormb-checkout-content .form-row .required { color:#9b2e27; text-decoration:none; }
.hstormb-checkout-content .form-row input.input-text,
.hstormb-checkout-content .form-row textarea,
.hstormb-checkout-content .form-row select,
.hstormb-checkout-content .select2-container--default .select2-selection--single { min-height:48px; padding:10px 13px; border:1px solid #cbd2ce; border-radius:6px; box-shadow:none; background:#fff; font-size:16px; }
.hstormb-checkout-content .select2-container--default .select2-selection--single { display:flex; align-items:center; }
.hstormb-checkout-content .select2-container--default .select2-selection__rendered { padding-left:0; line-height:1.35; }
.hstormb-checkout-content .select2-container--default .select2-selection__arrow { top:11px; right:8px; }
.hstormb-checkout-content .form-row input:focus,
.hstormb-checkout-content .form-row textarea:focus { border-color:#94721a; outline:3px solid #f4cf5040; }
.hstormb-checkout-name-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.hstormb-checkout-location-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(110px,.72fr); gap:10px; }
.hstormb-checkout-location-row .form-row { min-width:0; }
.hstormb-checkout-location-row .select2-container { width:100% !important; }
.hstormb-address-match { margin:3px 0 0 !important; }
.hstormb-checkout-content .hstormb-address-match label { display:inline-flex; align-items:center; gap:9px; margin:0; color:var(--charcoal); font-size:.79rem; font-weight:600; cursor:pointer; }
.hstormb-address-match input { flex:0 0 auto; width:18px; height:18px; margin:0; opacity:1; }
.hstormb-billing-address { padding-top:24px; border-top:1px solid var(--line); }
.hstormb-billing-address[hidden] { display:none; }
.hstormb-checkout-shipping,
.hstormb-checkout-payment { margin-top:30px; padding-top:25px; border-top:1px solid var(--line); }
.hstormb-shipping-options { display:grid; gap:9px; }
.hstormb-shipping-option { display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:11px; min-height:66px; padding:11px 13px; border:1px solid #cbd2ce; border-radius:8px; background:#fff; cursor:pointer; }
.hstormb-shipping-option:has(input:checked) { border-color:#927518; box-shadow:0 0 0 1px #927518; background:#fffdf5; }
.hstormb-shipping-option input { width:17px; height:17px; margin:0; }
.hstormb-shipping-option span { display:grid; gap:3px; }
.hstormb-shipping-option strong { color:var(--charcoal); font-size:.82rem; }
.hstormb-shipping-option small { color:var(--muted); font-size:.68rem; line-height:1.4; }
.hstormb-shipping-option b { color:var(--charcoal); font-size:.82rem; white-space:nowrap; }
.hstormb-shipping-prompt { margin:0; padding:13px; border:1px solid var(--line); border-radius:8px; background:var(--soft); color:var(--muted); font-size:.78rem; }
.hstormb-shipping-prompt.is-error { border-color:#d9aaa6; color:#8f302a; background:#fff8f7; }
.hstormb-checkout-payment > p { margin:-5px 0 13px; color:var(--muted); font-size:.72rem; }
.hstormb-checkout-payment .woocommerce-checkout-payment { overflow:hidden; border:1px solid var(--line); border-radius:9px; background:#fff; }
.hstormb-checkout-payment #payment ul.payment_methods { margin:0; padding:18px; }
.hstormb-checkout-payment #payment div.form-row { margin:0; padding:18px; background:#fafbf9; }
.hstormb-checkout-payment #place_order { min-height:50px; }
.hstormb-checkout-summary > #order_review { margin:0; padding:0; border:0; background:transparent; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table { display:table; width:100%; margin:0; border:0; border-radius:0; background:transparent; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tbody,
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tfoot { display:table-row-group; width:auto; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tr { display:table-row; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table th,
.hstormb-checkout-summary .woocommerce-checkout-review-order-table td { display:table-cell; width:auto; padding:13px 0; border-top:1px solid var(--line); vertical-align:middle; font-size:.77rem; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tbody tr:first-child td { border-top:0; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table .product-name { width:auto; padding-right:12px; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table .product-total { width:92px; padding-left:8px; text-align:right; white-space:nowrap; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tfoot th { color:var(--muted); font-weight:600; text-transform:none; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table tfoot td { text-align:right; white-space:nowrap; }
.hstormb-checkout-summary .woocommerce-checkout-review-order-table .order-total th,
.hstormb-checkout-summary .woocommerce-checkout-review-order-table .order-total td { border-top:1px solid #9fa8a2; color:var(--charcoal); font-size:1rem; }
.hstormb-checkout-summary .woocommerce-shipping-methods { margin:0; padding:0; list-style:none; }
.hstormb-checkout-summary .woocommerce-shipping-methods input { display:none; }
.hstormb-order-item { display:grid; grid-template-columns:60px minmax(0,1fr); align-items:center; gap:11px; }
.hstormb-order-item__image { display:grid; width:60px; height:60px; padding:5px; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; place-items:center; }
.hstormb-order-item__image img { display:block; width:100%; height:100%; margin:0; object-fit:contain; }
.hstormb-order-item span { display:block; color:var(--charcoal); font-size:.74rem; font-weight:650; line-height:1.35; overflow-wrap:anywhere; }
.hstormb-order-item strong { display:block; margin-top:5px; color:var(--muted); font-size:.68rem; }
.hstormb-checkout-details #wc-stripe-express-checkout-element { margin-bottom:16px !important; }
.hstormb-checkout-details #wc-stripe-express-checkout-button-separator { margin-bottom:22px !important; }
.hstormb-checkout-content .woocommerce-form-login-toggle,
.hstormb-checkout-content .woocommerce-form-coupon-toggle,
.hstormb-checkout-content .create-account,
.hstormb-checkout-content .woocommerce-shipping-fields,
.hstormb-checkout-content .woocommerce-additional-fields { display:none !important; }

@media (max-width:980px) {
  .hstormb-checkout-layout { grid-template-columns:minmax(0,1fr) minmax(320px,380px); gap:28px; }
}
@media (max-width:820px) {
  .hstormb-checkout-content { padding:24px 0 58px; }
  .hstormb-checkout-layout { grid-template-columns:1fr; gap:24px; }
  .hstormb-checkout-details, .hstormb-checkout-summary { grid-column:auto; grid-row:auto; }
  .hstormb-checkout-summary { position:static; order:1; padding:18px; }
  .hstormb-checkout-details { order:2; }
  .hstormb-checkout-title { margin-bottom:20px; padding-bottom:15px; }
  .hstormb-checkout-title h1 { font-size:1.9rem; }
  .hstormb-checkout-field-group { margin-top:22px; }
  .hstormb-checkout-shipping, .hstormb-checkout-payment { margin-top:24px; padding-top:20px; }
}
@media (max-width:560px) {
  .hstormb-checkout-content { width:calc(100% - 30px); }
  .hstormb-checkout-name-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .hstormb-checkout-location-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .hstormb-checkout-location-row > .form-row:first-child { grid-column:1/-1; }
  .hstormb-checkout-location-row .form-row label { font-size:.72rem; white-space:normal; }
  .hstormb-checkout-location-row .form-row input.input-text,
  .hstormb-checkout-location-row .form-row select,
  .hstormb-checkout-location-row .select2-container--default .select2-selection--single { padding-right:10px; padding-left:10px; font-size:16px; }
  .hstormb-shipping-option { grid-template-columns:18px minmax(0,1fr) auto; padding:10px; }
  .hstormb-checkout-payment #payment ul.payment_methods,
  .hstormb-checkout-payment #payment div.form-row { padding:14px; }
}
/* Show useful feedback without covering or freezing the entire checkout. */
.cart-feedback { max-width:min(680px, calc(100% - 32px)); }
.cart-feedback > span { min-width:0; }
.cart-feedback .request-retry { min-width:110px; padding:8px 12px; border:1px solid var(--yellow); border-radius:5px; color:var(--yellow); font-size:.8rem; line-height:1.4; }
.cart-feedback .request-retry:hover { color:var(--black); background:var(--yellow); }
.woocommerce a.button[aria-busy="true"] { cursor:progress; }
form[aria-busy="true"] button[type="submit"] { cursor:progress; opacity:.75; }
@media (max-width:560px) {
  .cart-feedback { flex-wrap:wrap; gap:8px 14px; padding:14px; }
  .cart-feedback > span { flex:1 1 calc(100% - 50px); }
  .cart-feedback > button:last-child { position:absolute; right:6px; top:5px; }
  .cart-feedback > span { padding-right:30px; }
}
/* Keep the first product photo visible even when gallery enhancement is slow. */
.woocommerce div.product .woocommerce-product-gallery { opacity:1 !important; transition:none !important; }
