.elementor-kit-10{--e-global-color-primary:#ED1C24;--e-global-color-secondary:#000000;--e-global-color-text:#1B1D21;--e-global-color-accent:#C4141B;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Barlow Condensed";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Barlow";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Barlow Condensed";--e-global-typography-accent-font-weight:500;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --red:#ED1C24; --red-dark:#C4141B; --red-deep:#8F0E13; --red-tint:#FDE9EA; --red-soft:#F9C9CB; --black:#000000; --steel-900:#1B1D21; --steel-700:#3A3D44; --steel-500:#6B7078; --steel-300:#B8BCC3; --steel-200:#DDDFE3; --steel-100:#EFF0F2; --steel-50:#F7F7F8; --white:#FFFFFF; --rating:#F5B301; --success:#1F9D55; --warning:#E5A100; --info:#2F6FED; --font-display:Montserrat; --font-body:Barlow; --font-condensed:Barlow Condensed; --fs-display:clamp(36px, 5vw, 56px); --fs-h1:clamp(32px, 4vw, 44px); --fs-h2:clamp(26px, 3vw, 32px); --fs-h3:24px; --fs-h4:18px; --fs-body-lg:18px; --fs-body:16px; --fs-small:14px; --fs-caption:12px; --fs-stat:clamp(40px, 5vw, 64px); --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-6:24px; --sp-8:32px; --sp-12:48px; --sp-16:64px; --section-y:clamp(48px, 7vw, 80px); --container:1200px; --container-narrow:760px; --gutter:24px; --radius-sm:2px; --radius-md:4px; --control-h-sm:36px; --control-h:48px; --control-h-lg:56px; }
/* Start custom CSS *//* ===== MightyLu – WooCommerce brand styling (uses global variables from Elementor V4) ===== */

/* Layout */
.woocommerce #primary, .woocommerce-page #primary { margin-top: 0; }
.woocommerce .ast-woocommerce-container { padding-top: clamp(32px, 5vw, 56px); padding-bottom: clamp(48px, 7vw, 80px); }

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--steel-500); margin-bottom: 16px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--steel-500); text-decoration: none; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--black); }

/* Archive header */
.woocommerce .woocommerce-products-header__title.page-title { font-family: var(--font-display); font-weight: 800; font-size: var(--fs-h1); line-height: 1.05; letter-spacing: -.02em; color: var(--black); margin: 0 0 24px; }
.woocommerce .woocommerce-result-count { font-size: 14px; color: var(--steel-500); margin: 0 0 24px; line-height: 48px; }
.woocommerce .woocommerce-ordering { margin: 0 0 24px; }
.woocommerce .woocommerce-ordering select { height: 48px; min-width: 220px; padding: 0 40px 0 14px; border: 1px solid var(--steel-200); border-radius: var(--radius-md); background-color: var(--white); font-family: var(--font-body); font-size: 15px; color: var(--steel-900); box-shadow: none; }

/* Product grid */
.woocommerce ul.products, .woocommerce-page ul.products { gap: 24px; margin: 0 0 32px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { display: flex; flex-direction: column; width: auto; margin: 0; padding: 0; background: var(--white); border: 1px solid var(--steel-200); border-radius: var(--radius-md); overflow: hidden; transition: box-shadow 200ms, transform 200ms; }
.woocommerce ul.products li.product:hover { box-shadow: 0 2px 4px rgba(0,0,0,.08), 0 16px 40px rgba(0,0,0,.14); transform: translateY(-2px); }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap { position: relative; background: var(--white); border-bottom: 1px solid var(--steel-100); }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; padding: 16px; margin: 0; box-sizing: border-box; transition: transform 400ms; }
.woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap img { transform: scale(1.03); }
.woocommerce ul.products li.product .astra-shop-summary-wrap { display: flex; flex-direction: column; flex: 1; padding: 16px 20px 20px; }
.woocommerce ul.products li.product .ast-woo-product-category { font-family: var(--font-condensed); font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--steel-500); margin-bottom: 6px; opacity: 1; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--font-display); font-size: 17px; font-weight: 700; line-height: 1.3; letter-spacing: -.01em; color: var(--black); padding: 0; margin: 0 0 10px; }
.woocommerce ul.products li.product .ast-loop-product__link:hover .woocommerce-loop-product__title { color: var(--red-dark); }
.woocommerce ul.products li.product .price { font-family: var(--font-display); font-size: 18px; font-weight: 700; color: var(--black); margin: 0 0 16px; }
.woocommerce ul.products li.product .price del { font-size: 14px; font-weight: 400; color: var(--steel-500); opacity: 1; margin-right: 6px; }
.woocommerce ul.products li.product .price ins { color: var(--red-dark); text-decoration: none; font-weight: 700; }
.woocommerce ul.products li.product .button { margin-top: auto; width: 100%; }

/* Sale badge + on-card action */
.woocommerce .ast-onsale-card, .woocommerce span.onsale { top: 12px; left: 12px; right: auto; min-width: 0; min-height: 0; padding: 4px 10px; border-radius: 0; background: var(--red); color: var(--white); font-family: var(--font-condensed); font-size: 12px; font-weight: 600; line-height: 1.2; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce .ast-on-card-button.ast-select-options-trigger, .woocommerce .ast-on-card-button.ast-quick-view-trigger { background: var(--black); color: var(--white); border-radius: 0; box-shadow: none; }
.woocommerce .ast-on-card-button.ast-select-options-trigger:hover { background: var(--red); }

/* Buttons (shop, cart, checkout) */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce .button.wc-forward {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 20px; border: 0; border-radius: 0;
  background: var(--black); color: var(--white); font-family: var(--font-condensed); font-size: 14px; font-weight: 600; line-height: 1; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; transition: background-color 200ms; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { background: var(--steel-900); color: var(--white); }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce #place_order, .woocommerce .checkout-button { background: var(--red); color: var(--white); }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce #place_order:hover, .woocommerce .checkout-button:hover { background: var(--red-dark); color: var(--white); }
.woocommerce a.button:focus-visible, .woocommerce button.button:focus-visible { outline: 3px solid rgba(237,28,36,.45); outline-offset: 2px; }
.woocommerce a.added_to_cart { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--red-dark); margin-top: 8px; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; justify-content: center; gap: 6px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--steel-200); border-radius: 0; font-family: var(--font-condensed); font-size: 15px; font-weight: 600; color: var(--black); background: var(--white); }
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--black); border-color: var(--black); color: var(--white); }

/* ===== Single product ===== */
.woocommerce div.product { margin-bottom: 0; }
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper, .woocommerce div.product div.images .flex-viewport { border: 1px solid var(--steel-200); border-radius: var(--radius-md); background: var(--white); }
.woocommerce div.product div.images img { border-radius: var(--radius-md); }
.woocommerce div.product div.images .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.woocommerce div.product div.images .flex-control-thumbs li { width: auto; float: none; margin: 0; padding: 0; }
.woocommerce div.product div.images .flex-control-thumbs li img { border: 1px solid var(--steel-200); border-radius: 2px; opacity: .6; transition: opacity 150ms, border-color 150ms; }
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active, .woocommerce div.product div.images .flex-control-thumbs li img:hover { opacity: 1; border-color: var(--black); }
.woocommerce div.product .woocommerce-product-gallery__trigger { background: var(--white); border: 1px solid var(--steel-200); border-radius: 0; }

.woocommerce div.product .summary .single-product-category, .woocommerce div.product .summary .single-product-category a { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--red-dark); text-decoration: none; }
.woocommerce div.product .product_title { font-family: var(--font-display); font-weight: 800; font-size: clamp(28px, 3vw, 40px); line-height: 1.1; letter-spacing: -.02em; color: var(--black); margin: 8px 0 16px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { font-family: var(--font-display); font-size: 32px; font-weight: 700; color: var(--black); margin: 0 0 20px; }
.woocommerce div.product p.price del { font-size: 20px; font-weight: 400; color: var(--steel-500); opacity: 1; }
.woocommerce div.product p.price ins { color: var(--red-dark); text-decoration: none; }
.woocommerce div.product .woocommerce-product-details__short-description { font-size: 16px; line-height: 1.65; color: var(--steel-700); margin-bottom: 24px; }
.woocommerce div.product .woocommerce-product-details__short-description p { margin-bottom: 12px; }
.woocommerce div.product .stock { font-family: var(--font-condensed); font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce div.product .stock.in-stock { color: var(--success); }
.woocommerce div.product .stock.out-of-stock { color: var(--red-dark); }

.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px; margin: 0 0 24px; padding: 24px 0; border-top: 1px solid var(--steel-200); border-bottom: 1px solid var(--steel-200); }
.woocommerce div.product form.cart::before, .woocommerce div.product form.cart::after { display: none; }
.woocommerce div.product form.cart .quantity { margin: 0; }
.woocommerce .quantity .qty { width: 80px; height: 56px; padding: 0 8px; text-align: center; border: 1px solid var(--steel-200); border-radius: 0; font-family: var(--font-display); font-size: 17px; font-weight: 700; color: var(--black); box-shadow: none; }
.woocommerce div.product form.cart .single_add_to_cart_button { flex: 1; min-height: 56px; margin: 0; padding: 0 32px; font-size: 17px; }
.woocommerce div.product form.cart table.group_table { width: 100%; margin: 0; border: 0; }
.woocommerce div.product form.cart table.group_table td { padding: 10px 0; border-bottom: 1px solid var(--steel-100); vertical-align: middle; font-size: 15px; }
.woocommerce div.product form.cart table.group_table .quantity .qty { width: 64px; height: 44px; font-size: 15px; }
.woocommerce div.product form.cart table.group_table label a { color: var(--black); font-weight: 600; text-decoration: none; }
.woocommerce div.product .product_meta { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--steel-500); }
.woocommerce div.product .product_meta a { color: var(--black); text-decoration: none; }

/* Tabs */
.woocommerce div.product .woocommerce-tabs { clear: both; padding-top: clamp(40px, 6vw, 72px); }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 32px; margin: 0 0 32px; padding: 0; border-bottom: 1px solid var(--steel-200); background: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs::after, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; border: 0; box-shadow: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 0 -1px; padding: 0; border: 0; border-radius: 0; background: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 12px 0; font-family: var(--font-condensed); font-size: 15px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--steel-500); border-bottom: 3px solid transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a, .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--black); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { border-bottom-color: var(--red); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 760px; margin: 0; padding: 0; font-size: 17px; line-height: 1.65; color: var(--steel-900); }
.woocommerce div.product .woocommerce-tabs .panel h2 { font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--black); margin: 32px 0 12px; }
.woocommerce div.product .woocommerce-tabs .panel h2:first-child { margin-top: 0; }
.woocommerce div.product .woocommerce-tabs .panel ul { margin: 0 0 16px 1.25em; }
.woocommerce div.product .woocommerce-tabs .panel li { margin-bottom: 8px; }
.woocommerce div.product .woocommerce-tabs .panel img { border-radius: var(--radius-md); }
.woocommerce table.shop_attributes { border: 0; }
.woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td { padding: 12px 0; border: 0; border-bottom: 1px solid var(--steel-200); background: none; font-style: normal; }
.woocommerce table.shop_attributes th { width: 40%; color: var(--steel-500); font-weight: 500; }

/* Related / upsells */
.woocommerce .related.products, .woocommerce .upsells.products { padding-top: clamp(48px, 7vw, 80px); clear: both; }
.woocommerce .related.products > h2, .woocommerce .upsells.products > h2 { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-h2); letter-spacing: -.02em; color: var(--black); margin-bottom: 32px; }

/* Notices */
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error { border: 1px solid var(--steel-200); border-left: 3px solid var(--black); border-radius: 0; background: var(--steel-50); color: var(--steel-900); font-size: 15px; }
.woocommerce .woocommerce-message { border-left-color: var(--success); }
.woocommerce .woocommerce-error { border-left-color: var(--red); }

/* Responsive */
@media (max-width: 921px) {
  .woocommerce ul.products, .woocommerce-page ul.products { gap: 16px; }
  .woocommerce div.product form.cart .single_add_to_cart_button { min-width: 0; }
}
@media (max-width: 544px) {
  .woocommerce ul.products li.product .astra-shop-summary-wrap { padding: 12px 14px 14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px; }
  .woocommerce .woocommerce-ordering, .woocommerce .woocommerce-ordering select { width: 100%; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { gap: 20px; }
}

/* Shop intro + category pills (Shop page content: <ul class="ml-shop-cats">; category descriptions: plain links) */
.woocommerce .page-description, .woocommerce .term-description { margin: -8px 0 32px; }
.woocommerce .page-description > p:first-child { max-width: 640px; font-size: var(--fs-body-lg); line-height: 1.55; color: var(--steel-700); margin: 0 0 20px; }
.woocommerce .ml-shop-cats, .woocommerce .term-description p { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.woocommerce .ml-shop-cats li { margin: 0; }
.woocommerce .ml-shop-cats a, .woocommerce .term-description a { display: inline-flex; align-items: center; padding: 8px 16px; border: 1px solid var(--steel-200); border-radius: 999px; background: var(--white); font-family: var(--font-body); font-size: 14px; font-weight: 500; line-height: 1.2; color: var(--steel-900); text-decoration: none; transition: border-color 150ms, background-color 150ms, color 150ms; }
.woocommerce .ml-shop-cats a:hover, .woocommerce .term-description a:hover { border-color: var(--black); color: var(--black); }
.post-type-archive-product .ml-shop-cats li:first-child a,
.term-foldable-weight-benches .term-description a[href$="/foldable-weight-benches/"],
.term-home-gym-set .term-description a[href$="/home-gym-set/"],
.term-dumbbells .term-description a[href$="/dumbbells/"],
.term-barbell .term-description a[href$="/barbell/"],
.term-storage-solutions .term-description a[href$="/storage-solutions/"],
.term-voltra-travel-platform .term-description a[href$="/voltra-travel-platform/"],
.term-klappbare-hantelbaenke .term-description a[href$="/klappbare-hantelbaenke/"],
.term-home-gym-sets .term-description a[href$="/home-gym-sets/"],
.term-kurzhanteln .term-description a[href$="/kurzhanteln/"],
.term-langhantel .term-description a[href$="/langhantel/"],
.term-aufbewahrungsloesungen .term-description a[href$="/aufbewahrungsloesungen/"],
.term-voltra-reiseplattform .term-description a[href$="/voltra-reiseplattform/"],
.term-sklopive-klupe-za-vjezbanje .term-description a[href$="/sklopive-klupe-za-vjezbanje/"],
.term-home-gym-setovi .term-description a[href$="/home-gym-setovi/"],
.term-bucice .term-description a[href$="/bucice/"],
.term-sipka .term-description a[href$="/sipka/"],
.term-rjesenja-za-pohranu .term-description a[href$="/rjesenja-za-pohranu/"],
.term-voltra-putna-platforma .term-description a[href$="/voltra-putna-platforma/"] { background: var(--black); border-color: var(--black); color: var(--white); }

/* Notice buttons (Astra colours them like the notice text) */
.woocommerce .woocommerce-message .button, .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-message a.button.wc-forward { background: var(--black) !important; color: var(--white) !important; }
.woocommerce .woocommerce-message .button:hover, .woocommerce .woocommerce-info .button:hover { background: var(--red) !important; color: var(--white) !important; }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; }
.woocommerce .woocommerce-message::after, .woocommerce .woocommerce-info::after { display: none; }
.woocommerce .woocommerce-message .button { order: 2; margin: 0; float: none; }
.woocommerce .woocommerce-message::before, .woocommerce .woocommerce-info::before { top: 50%; transform: translateY(-50%); }

/* Product description: centred reading column */
.woocommerce div.product .woocommerce-tabs { max-width: 860px; margin-left: auto; margin-right: auto; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: none; }

/* Cart + checkout pages (native Woo/Astra, full width) */
.woocommerce-cart .site-content > .ast-container, .woocommerce-checkout .site-content > .ast-container { max-width: 1200px; padding-left: 24px; padding-right: 24px; }
.woocommerce-cart #primary, .woocommerce-checkout #primary { padding: clamp(32px, 5vw, 56px) 0 clamp(48px, 7vw, 80px); margin: 0; }
.woocommerce-cart .entry-title, .woocommerce-checkout .entry-title { font-family: var(--font-display); font-weight: 800; font-size: var(--fs-h1); letter-spacing: -.02em; color: var(--black); margin-bottom: 32px; }
.woocommerce table.shop_table { border: 1px solid var(--steel-200); border-radius: 0; border-collapse: collapse; }
.woocommerce table.shop_table th { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--steel-500); background: var(--steel-50); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 14px 16px; border-top: 1px solid var(--steel-200); vertical-align: middle; }
.woocommerce table.shop_table td.product-name a { color: var(--black); font-weight: 600; text-decoration: none; }
.woocommerce-cart .cart-collaterals .cart_totals { width: 100%; max-width: 440px; float: right; padding: 0; border: 0; }
.woocommerce-cart .cart-collaterals .cart_totals h2 { font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--black); margin: 0 0 16px; padding: 0; background: none; border: 0; }
.woocommerce-cart .cart_totals table.shop_table th { width: 45%; background: var(--steel-50); }
.woocommerce-cart .cart_totals .order-total th, .woocommerce-cart .cart_totals .order-total td, .woocommerce-checkout .order-total th, .woocommerce-checkout .order-total td { font-family: var(--font-display); font-size: 18px; font-weight: 700; color: var(--black); }
.woocommerce-cart .wc-proceed-to-checkout { padding: 16px 0 0; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 56px; font-size: 17px; margin: 0; }
.woocommerce-cart table.cart td.actions .coupon .input-text { height: 44px; min-width: 180px; border: 1px solid var(--steel-200); border-radius: 0; padding: 0 12px; }
.woocommerce-checkout h3, .woocommerce-checkout #order_review_heading { font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--black); }
.woocommerce form .form-row .input-text, .woocommerce form .form-row select, .woocommerce-page form .form-row .input-text { min-height: 48px; border: 1px solid var(--steel-200); border-radius: 0; box-shadow: none; }
@media (max-width: 921px) {
  .woocommerce-cart .cart-collaterals .cart_totals { float: none; max-width: none; }
  .woocommerce-cart .site-content > .ast-container, .woocommerce-checkout .site-content > .ast-container { padding-left: 16px; padding-right: 16px; }
}

/* Shipping cost table on the Shipping pages */
.ml-ship-table { margin: 16px 0 32px; overflow-x: auto; }
.ml-ship-table table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 15px; }
.ml-ship-table th, .ml-ship-table td { padding: 12px 14px; border: 1px solid var(--steel-200); text-align: left; vertical-align: top; }
.ml-ship-table thead th { background: var(--steel-50); font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--steel-700); }
.ml-ship-table td:not(:first-child) { white-space: nowrap; font-weight: 600; color: var(--black); }

/* Checkout (Germanized order: payment → legal checkbox → order summary → button) */
.woocommerce-checkout #order_review, .woocommerce-checkout #customer_details { border-color: var(--steel-200) !important; border-radius: 0; }
.woocommerce-checkout #order_payment_heading { font-family: var(--font-display); font-size: 22px; font-weight: 700; color: var(--black); }
.woocommerce-checkout #payment { background: none; border-radius: 0; }
.woocommerce-checkout .wc-gzd-checkbox-placeholder { font-size: 15px; line-height: 1.5; margin: 16px 0; }
.woocommerce-checkout .wc-gzd-checkbox-placeholder a { color: var(--red-dark); }
.woocommerce-checkout .woocommerce-checkout-review-order-table { margin: 16px 0 0; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name { font-weight: 600; color: var(--black); }
.woocommerce-checkout .wc-gzd-order-submit { padding-top: 16px; }
.woocommerce-checkout #place_order { width: 100%; min-height: 60px; height: auto; padding: 14px 16px; font-size: 18px; line-height: 1.25; letter-spacing: .04em; white-space: normal; text-align: center; float: none; }
@media (max-width: 544px) { .woocommerce-checkout #place_order { font-size: 16px; } }
/* Germanized shows its own "incl. VAT" row – hide WooCommerce's duplicate "(includes … VAT)" */
.woocommerce .order-total small.includes_tax { display: none; }

/* Germanized shopmarks – product cards: flatten Astra wrappers so the legal info sits between price and button */
.woocommerce ul.products li.product { position: relative; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap, .woocommerce ul.products li.product .astra-shop-summary-wrap { display: contents; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { order: 0; display: block; border-bottom: 1px solid var(--steel-100); margin-bottom: 16px; }
.woocommerce ul.products li.product .ast-woo-product-category { order: 1; }
.woocommerce ul.products li.product .ast-loop-product__link { order: 2; }
.woocommerce ul.products li.product .price { order: 3; margin-bottom: 6px; }
.woocommerce ul.products li.product .wc-gzd-additional-info-loop { order: 4; }
.woocommerce ul.products li.product .button, .woocommerce ul.products li.product a.added_to_cart { order: 5; }
.woocommerce ul.products li.product .ast-woo-product-category, .woocommerce ul.products li.product .ast-loop-product__link, .woocommerce ul.products li.product .price, .woocommerce ul.products li.product .wc-gzd-additional-info-loop, .woocommerce ul.products li.product > .astra-shop-summary-wrap > .button { margin-left: 20px; margin-right: 20px; }
.woocommerce ul.products li.product .astra-shop-summary-wrap > .button { width: auto; margin-top: auto; margin-bottom: 20px; }
.woocommerce ul.products li.product .astra-shop-summary-wrap > .button { margin-left: 20px; margin-right: 20px; }
.woocommerce ul.products li.product a.added_to_cart { margin: -12px 20px 16px; }
.woocommerce .wc-gzd-additional-info { font-size: 13px; line-height: 1.45; color: var(--steel-500); margin: 0 0 2px; }
.woocommerce ul.products li.product p.wc-gzd-additional-info.wc-gzd-additional-info-loop { font-size: 13px; line-height: 1.45; margin: 0 20px 2px; color: var(--steel-500); }
.woocommerce ul.products li.product p.wc-gzd-additional-info-loop.delivery-time-info { margin-bottom: 16px; }
@media (max-width: 544px) { .woocommerce ul.products li.product p.wc-gzd-additional-info.wc-gzd-additional-info-loop { margin-left: 14px; margin-right: 14px; } }
.woocommerce .wc-gzd-additional-info a, .woocommerce .legal-price-info a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.woocommerce div.product .legal-price-info { margin: -12px 0 12px; }
.woocommerce div.product .legal-price-info p, .woocommerce div.product .summary .wc-gzd-additional-info { font-size: 14px; color: var(--steel-500); margin: 0 0 4px; }
@media (max-width: 544px) {
  .woocommerce ul.products li.product .ast-woo-product-category, .woocommerce ul.products li.product .ast-loop-product__link, .woocommerce ul.products li.product .price, .woocommerce ul.products li.product .wc-gzd-additional-info-loop, .woocommerce ul.products li.product .astra-shop-summary-wrap > .button { margin-left: 14px; margin-right: 14px; }
  .woocommerce ul.products li.product .astra-shop-summary-wrap > .button { margin-bottom: 14px; }
}

/* EU legal guarantee notice (Germanized, printed after the Elementor footer) */
.wc-gzd-legal-guarantee-footer { background: var(--black); margin: 0 !important; padding: 0 24px 40px; text-align: center; }
.wc-gzd-legal-guarantee-footer .wc-gzd-legal-guarantee-image-preview { display: inline-block; height: 96px; width: auto; border-radius: 4px; }
.wc-gzd-popover { max-width: min(640px, 92vw); padding: 0; border: 0; border-radius: 6px; }
.wc-gzd-popover img { width: 100%; height: auto; }
.wc-gzd-popover-caption { text-align: center; margin: 8px 0 12px; font-size: 14px; }
.woocommerce-checkout .wc-gzd-legal-guarantee { margin: 16px 0; }
.woocommerce-checkout .wc-gzd-legal-guarantee img { max-height: 96px; width: auto; }

/* ===== Blog (Astra single post + archives) ===== */
body.single-post, body.blog, body.archive.category { background: var(--white); }
.single-post.ast-separate-container .ast-article-single, .blog.ast-separate-container .ast-article-post, .archive.category.ast-separate-container .ast-article-post { background: transparent; }
.single-post.ast-separate-container .ast-article-single { padding: 56px 0 24px; }
.single-post .site-content > .ast-container { max-width: 808px; }
.single-post .ast-single-post-featured-section, .single-post .entry-content > .post-thumb { display: none; }
.single-post .entry-header { margin-bottom: 32px; }
.single-post .entry-title { font-family: var(--font-display); font-weight: 800; font-size: clamp(30px, 4vw, 46px); line-height: 1.12; letter-spacing: -0.02em; color: var(--black); margin-bottom: 16px; }
.single-post .entry-meta, .single-post .entry-meta a { font-family: var(--font-condensed); font-size: 14px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--steel-500); }
.single-post .entry-content { font-family: var(--font-body); font-size: 18px; line-height: 1.7; color: var(--steel-900); }
.single-post .entry-content p, .single-post .entry-content ul, .single-post .entry-content ol { margin-bottom: 1.25em; }
.single-post .entry-content h2 { font-family: var(--font-display); font-weight: 800; font-size: clamp(24px, 2.6vw, 32px); line-height: 1.2; letter-spacing: -0.01em; color: var(--black); margin: 48px 0 16px; }
.single-post .entry-content h3, .single-post .entry-content h4 { font-family: var(--font-display); font-weight: 700; font-size: 21px; line-height: 1.3; color: var(--black); margin: 32px 0 12px; }
.single-post .entry-content a { color: var(--red-dark); text-decoration: underline; text-underline-offset: 3px; }
.single-post .entry-content a:hover { color: var(--black); }
.single-post .entry-content li { margin-bottom: 0.4em; }
.single-post .entry-content figure { margin: 32px 0; }
.single-post .entry-content figure:first-child { margin-top: 0; }
.single-post .entry-content img { border-radius: var(--radius-md); height: auto; }
.single-post .entry-content blockquote { border-left: 3px solid var(--red); padding: 4px 0 4px 24px; margin: 32px 0; font-size: 20px; color: var(--steel-700); }
.single-post .entry-content table { width: 100%; border-collapse: collapse; font-size: 16px; }
.single-post .entry-content th, .single-post .entry-content td { border: 1px solid var(--steel-200); padding: 10px 12px; text-align: left; }
.single-post .entry-content .wp-block-embed, .single-post .entry-content iframe { margin: 32px 0; max-width: 100%; }
.single-post .post-navigation { border-top: 1px solid var(--steel-200); padding-top: 24px; margin-top: 48px; font-family: var(--font-condensed); text-transform: uppercase; letter-spacing: 0.05em; }
.single-post .comments-area { border-top: 1px solid var(--steel-200); margin-top: 32px; }
/* Archives */
.blog .ast-archive-description, .archive.category .ast-archive-description { background: transparent; padding: 56px 0 8px; margin: 0; }
.blog .ast-archive-title, .archive.category .ast-archive-title { font-family: var(--font-display); font-weight: 800; font-size: var(--fs-h1); letter-spacing: -0.02em; color: var(--black); }
.blog .ast-article-inner, .archive.category .ast-article-inner { border: 1px solid var(--steel-200); border-radius: var(--radius-md); overflow: hidden; height: 100%; transition: transform 200ms, box-shadow 200ms; background: var(--white); }
.blog .ast-article-inner:hover, .archive.category .ast-article-inner:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(0,0,0,0.08); }
.blog .ast-article-post .post-content, .archive.category .ast-article-post .post-content { padding: 0 0 20px; }
.blog .post-thumb img, .archive.category .post-thumb img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; display: block; }
.blog .ast-article-post .cat-links, .archive.category .ast-article-post .cat-links { display: block; padding: 20px 20px 0; font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.blog .ast-article-post .cat-links a, .archive.category .ast-article-post .cat-links a { color: var(--red-dark); }
.blog .ast-article-post .entry-title, .archive.category .ast-article-post .entry-title { padding: 8px 20px 0; font-family: var(--font-display); font-weight: 700; font-size: 19px; line-height: 1.3; }
.blog .ast-article-post .entry-title a, .archive.category .ast-article-post .entry-title a { color: var(--black); }
.blog .ast-article-post .ast-blog-meta-container, .archive.category .ast-article-post .ast-blog-meta-container { display: none; }
.blog .ast-excerpt-container, .archive.category .ast-excerpt-container { padding: 8px 20px 0; font-size: 15px; line-height: 1.55; color: var(--steel-700); }
.blog .ast-pagination .page-numbers, .archive.category .ast-pagination .page-numbers { min-width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--steel-200); font-family: var(--font-condensed); font-weight: 600; color: var(--black); }
.blog .ast-pagination .page-numbers.current, .blog .ast-pagination a.page-numbers:hover, .archive.category .ast-pagination .page-numbers.current, .archive.category .ast-pagination a.page-numbers:hover { background: var(--black); border-color: var(--black); color: var(--white); }
@media (max-width: 767px) { .single-post.ast-separate-container .ast-article-single { padding: 32px 0 16px; } .single-post .entry-content { font-size: 17px; } }
/* 404 */
body.error404 { background: var(--white); }
.error404 .site-content > .ast-container { max-width: 100%; padding: 0; }

/* Author box (Astra Pro Blog Pro) */
body.single-post .ast-single-author-box { margin: 24px 0 48px; padding: 0; background: var(--steel-50); border: 1px solid var(--steel-200); border-left: 3px solid var(--red); border-radius: 0; }
body.single-post .ast-single-author-box .ast-author-meta { background: transparent !important; padding: 28px !important; text-align: left !important; }
body.single-post .ast-single-author-box .about-author { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--red-dark); margin: 0; text-align: left !important; }
body.single-post .ast-single-author-box .about-author-title-wrapper { padding: 0 0 16px; }
body.single-post .ast-single-author-box .ast-author-details { display: flex !important; align-items: flex-start; gap: 20px; text-align: left !important; }
body.single-post .ast-single-author-box .post-author-avatar { flex: 0 0 auto; margin: 0; text-align: left !important; }
body.single-post .ast-single-author-box .post-author-avatar img { width: 88px !important; height: 88px !important; min-width: 0 !important; max-width: none; aspect-ratio: 1 / 1; box-shadow: none !important; border: 0 !important; border-radius: 50%; object-fit: cover; }
body.single-post .ast-single-author-box .author-title, body.single-post .ast-single-author-box .post-author-desc, body.single-post .ast-single-author-box .post-author-bio a { text-align: left !important; display: block; }
body.single-post .ast-single-author-box .post-author-bio { flex: 1; text-align: left !important; }
body.single-post .ast-single-author-box .author-title { font-family: var(--font-display); font-size: 20px; font-weight: 700; color: var(--black); margin: 0 0 6px; }
body.single-post .ast-single-author-box .post-author-bio a { text-decoration: none; pointer-events: none; }
body.single-post .ast-single-author-box .post-author-desc { font-size: 15px; line-height: 1.6; color: var(--steel-700); }
@media (max-width: 544px) {
  body.single-post .ast-single-author-box .ast-author-meta { padding: 20px !important; }
  body.single-post .ast-single-author-box .ast-author-details { flex-direction: column; gap: 12px; }
  body.single-post .ast-single-author-box .post-author-avatar img { width: 72px !important; height: 72px !important; }
}

/* Pillar article components (key box, TOC, tables, CTA, FAQ) */
.single-post .entry-content .ml-keybox { background: var(--steel-50); border: 1px solid var(--steel-200); border-left: 3px solid var(--red); padding: 24px 28px; margin: 32px 0; }
.single-post .entry-content .ml-keybox ul { margin: 0 0 0 1.2em; }
.single-post .entry-content .ml-keybox p:not(.ml-keybox__title) { margin-bottom: 8px; }
.single-post .entry-content .ml-keybox__title, .single-post .entry-content .ml-toc__title, .single-post .entry-content .ml-cta__title { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--red-dark); margin: 0 0 12px; }
.single-post .entry-content .ml-toc { border: 1px solid var(--steel-200); padding: 24px 28px; margin: 32px 0 48px; }
.single-post .entry-content .ml-toc ol { margin: 0 0 0 1.2em; columns: 2; column-gap: 32px; }
.single-post .entry-content .ml-toc li { break-inside: avoid; margin-bottom: 6px; }
.single-post .entry-content .ml-toc a { text-decoration: none; color: var(--steel-900); }
.single-post .entry-content .ml-toc a:hover { color: var(--red); }
.single-post .entry-content h2[id] { scroll-margin-top: 100px; }
.single-post .entry-content .ml-look-for { background: var(--steel-50); padding: 12px 16px; border-radius: var(--radius-md); }
.single-post .entry-content .ml-table { overflow-x: auto; }
.single-post .entry-content .ml-table table { min-width: 560px; font-size: 15px; }
.single-post .entry-content .ml-table thead th { background: var(--black); color: var(--white); font-family: var(--font-condensed); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: 13px; border-color: var(--black); }
.single-post .entry-content .ml-table tbody tr:nth-child(even) td { background: var(--steel-50); }
.single-post .entry-content .ml-cta { background: var(--black); color: var(--white); padding: 32px; margin: 40px 0; }
.single-post .entry-content .ml-cta p { color: var(--steel-100); margin-bottom: 16px; }
.single-post .entry-content .ml-cta .ml-cta__title { color: var(--red); font-size: 14px; }
.single-post .entry-content .ml-cta__buttons { display: flex; flex-wrap: wrap; gap: 12px; margin: 0 !important; }
.single-post .entry-content a.ml-cta__btn { display: inline-block; background: var(--red); color: var(--white); font-family: var(--font-condensed); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: 15px; padding: 14px 24px; text-decoration: none; border: 2px solid var(--red); }
.single-post .entry-content a.ml-cta__btn:hover { background: var(--red-dark); border-color: var(--red-dark); color: var(--white); }
.single-post .entry-content a.ml-cta__btn--ghost { background: transparent; border-color: var(--white); }
.single-post .entry-content a.ml-cta__btn--ghost:hover { background: var(--white); color: var(--black); border-color: var(--white); }
.single-post .entry-content .schema-faq-section { border-bottom: 1px solid var(--steel-200); padding: 18px 0; }
.single-post .entry-content .schema-faq-section:first-child { border-top: 1px solid var(--steel-200); }
.single-post .entry-content .schema-faq-question { display: block; font-family: var(--font-display); font-size: 18px; color: var(--black); margin-bottom: 8px; }
.single-post .entry-content .schema-faq-answer { margin: 0; }
@media (max-width: 767px) {
  .single-post .entry-content .ml-toc ol { columns: 1; }
  .single-post .entry-content .ml-keybox, .single-post .entry-content .ml-toc, .single-post .entry-content .ml-cta { padding: 20px; }
}
/* Product spec table */
.woocommerce div.product .woocommerce-Tabs-panel table.ml-spec { width: 100%; border-collapse: collapse; margin: 0 0 32px; font-size: 15px; }
.woocommerce div.product .woocommerce-Tabs-panel table.ml-spec th, .woocommerce div.product .woocommerce-Tabs-panel table.ml-spec td { border: 1px solid var(--steel-200); padding: 10px 14px; text-align: left; vertical-align: top; }
.woocommerce div.product .woocommerce-Tabs-panel table.ml-spec th { width: 34%; background: var(--steel-50); font-family: var(--font-condensed); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: 13px; color: var(--black); }
/* In-article product box */
.single-post .entry-content .ml-pbox { display: grid; grid-template-columns: 220px 1fr; gap: 28px; align-items: center; margin: 40px 0; padding: 24px; background: var(--white); border: 1px solid var(--steel-200); border-top: 3px solid var(--red); box-shadow: 0 10px 30px rgba(0,0,0,0.06); }
.single-post .entry-content .ml-pbox__media { display: block; background: var(--steel-50); border-radius: var(--radius-md); overflow: hidden; }
.single-post .entry-content .ml-pbox__media img { display: block; width: 100%; height: auto; border-radius: 0; mix-blend-mode: multiply; }
.single-post .entry-content .ml-pbox__body p { margin: 0 0 10px; }
.single-post .entry-content .ml-pbox__eyebrow { font-family: var(--font-condensed); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--red-dark); }
.single-post .entry-content .ml-pbox__title { font-family: var(--font-display); font-size: 22px; font-weight: 800; line-height: 1.2; color: var(--black); }
.single-post .entry-content .ml-pbox__lead { color: var(--steel-700); }
.single-post .entry-content .ml-pbox__facts { list-style: none; margin: 0 0 14px; padding: 0; }
.single-post .entry-content .ml-pbox__facts li { position: relative; padding-left: 22px; margin-bottom: 6px; font-size: 15px; }
.single-post .entry-content .ml-pbox__facts li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 10px; height: 10px; background: var(--red); clip-path: polygon(0 50%, 40% 90%, 100% 10%, 85% 0, 40% 60%, 12% 35%); }
.single-post .entry-content .ml-pbox__price { font-size: 15px; color: var(--steel-700); }
.single-post .entry-content .ml-pbox__price strong { font-family: var(--font-display); font-size: 24px; color: var(--black); margin-right: 4px; }
.single-post .entry-content .ml-pbox__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin: 6px 0 0 !important; }
.single-post .entry-content a.ml-pbox__btn { display: inline-block; background: var(--red); color: var(--white); font-family: var(--font-condensed); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: 15px; padding: 13px 24px; text-decoration: none; }
.single-post .entry-content a.ml-pbox__btn:hover { background: var(--red-dark); color: var(--white); }
.single-post .entry-content a.ml-pbox__link { font-size: 15px; color: var(--steel-900); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) {
  .single-post .entry-content .ml-pbox { grid-template-columns: 1fr; gap: 16px; padding: 18px; }
  .single-post .entry-content .ml-pbox__media { max-width: 260px; margin: 0 auto; width: 100%; }
}/* End custom CSS */