/* =========================================================
   Diesel Heaters 4U – compatibility helpers.
   main.css is the original design and is NOT modified; this file only adds:
   Elementor wrapper resets, WooCommerce basics, inner-page styles (blog, pages, forms), toast, wishlist.
   ========================================================= */

/* --- Elementor: let the original section markup show exactly as designed --- */
.dh4u-el,
.dh4u-el > .elementor-container,
.dh4u-el .elementor-column,
.dh4u-el .elementor-widget-wrap,
.dh4u-el .elementor-element-populated{padding:0!important;margin:0!important}
.dh4u-el > .elementor-container{max-width:none!important}
.dh4u-el .elementor-widget{margin-bottom:0!important}
.dh4u-el .elementor-widget-container{margin:0;padding:0}
.elementor-page .elementor img{border-radius:0}
.elementor-widget-html .cat-card img,.elementor-widget-shortcode .cat-card img{max-width:none}

/* --- Add to basket button (WooCommerce AJAX states) --- */
.product .btn.loading{opacity:.7;pointer-events:none}
.product .btn.added{background:var(--navy);border-color:var(--navy)}
.product a.added_to_cart{display:block;text-align:center;font-size:12px;font-weight:600;color:var(--red);margin-top:8px}
.product .price{font-weight:600}
.product .price del{opacity:.55;margin-right:4px}
.product .price ins{text-decoration:none}

/* --- Helpers --- */
.dh4u-hint{max-width:var(--container);margin:14px auto;padding:12px 24px;background:#fff8e5;border:1px dashed #e0b33a;color:#6b5200;font-size:13px}
.dh4u-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:9999;padding:13px 22px;border-radius:6px;color:#fff;font-size:14px;font-weight:500;box-shadow:0 12px 30px rgba(2,28,52,.25);transition:opacity .4s,transform .4s}
.dh4u-toast.ok{background:#1a8f4c}
.dh4u-toast.err{background:var(--red)}
.dh4u-toast.hide{opacity:0;transform:translate(-50%,12px);pointer-events:none}
.dh4u-wishlist .dh4u-wl-empty{padding:30px 0;color:var(--muted)}
.dh4u-wishlist .product-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.dh4u-wishlist .product-grid{grid-template-columns:repeat(2,1fr)}}

/* --- Inner pages (pages, blog, 404, WooCommerce shop) --- */
.page-banner-wp{background:var(--navy);color:#fff;padding:46px 0}
.page-banner-wp h1{font-size:34px;font-weight:700;line-height:1.2}
.page-banner-wp .crumbs{font-size:12px;opacity:.8;margin-bottom:8px}
.page-banner-wp .crumbs a:hover{text-decoration:underline}
.dh4u-section{padding:46px 0 60px}
.dh4u-content{max-width:900px;line-height:1.75;font-size:15px}
.dh4u-content h2,.dh4u-content h3,.dh4u-content h4{color:var(--navy);margin:28px 0 10px;line-height:1.3}
.dh4u-content h2{font-size:24px}.dh4u-content h3{font-size:19px}
.dh4u-content p,.dh4u-content ul,.dh4u-content ol{margin-bottom:16px}
.dh4u-content ul{list-style:disc;padding-left:22px}
.dh4u-content ol{padding-left:22px}
.dh4u-content a:not(.btn){color:var(--blue);text-decoration:underline}
.dh4u-content img{height:auto;border-radius:4px}
.dh4u-single-img{margin-bottom:20px}
.dh4u-meta{font-size:12px;color:var(--muted);margin-bottom:10px}
.dh4u-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:30px}
.dh4u-post{border:1px solid var(--border);border-radius:6px;padding:16px;background:#fff}
.dh4u-post-img{display:block;margin-bottom:12px}
.dh4u-post-img img{width:100%;height:190px;object-fit:cover;border-radius:4px}
.dh4u-post h2{font-size:18px;line-height:1.35;margin-bottom:6px;color:var(--navy)}
.dh4u-post h2 a:hover{color:var(--red)}
.dh4u-post p{font-size:13.5px;color:var(--muted);margin-bottom:10px}
.dh4u-post .read-more{color:var(--red);font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:6px}
.navigation.pagination{margin-top:20px}
.navigation.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.navigation.pagination a,.navigation.pagination span{padding:8px 14px;border:1px solid var(--border);border-radius:4px;font-weight:600}
.navigation.pagination .current{background:var(--red);border-color:var(--red);color:#fff}
@media(max-width:900px){.dh4u-posts{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.dh4u-posts{grid-template-columns:1fr}.page-banner-wp h1{font-size:26px}}

/* --- Forms (contact form) --- */
.dh4u-form{max-width:760px;margin-top:20px}
.dh4u-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dh4u-form .field{margin-bottom:16px}
.dh4u-form label{display:block;font-weight:600;font-size:13px;color:var(--navy);margin-bottom:6px}
.dh4u-form input,.dh4u-form select,.dh4u-form textarea{width:100%;border:1px solid #d5dbe4;border-radius:4px;padding:11px 14px;font-size:14px;background:#fff;color:var(--text);outline:none}
.dh4u-form input:focus,.dh4u-form select:focus,.dh4u-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(31,111,229,.12)}
.dh4u-form textarea{min-height:140px;resize:vertical}
.dh4u-ok,.dh4u-err{margin-top:16px;padding:12px 16px;border-radius:4px;font-size:14px}
.dh4u-ok{background:#e8f6ee;color:#14663a}
.dh4u-err{background:#fdecee;color:#9d1218}
@media(max-width:600px){.dh4u-form .row{grid-template-columns:1fr}}

/* --- WooCommerce basics (shop, product, cart, checkout, account) --- */
.woocommerce ul,.woocommerce ol{list-style:none}
.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:18px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 30px!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;border:1px solid var(--border);border-radius:5px;padding:14px;background:#fff;display:flex;flex-direction:column;text-align:left}
.woocommerce ul.products li.product img{height:150px;width:100%;object-fit:contain;margin-bottom:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13.5px;font-weight:500;color:var(--text);padding:0;margin-bottom:6px}
.woocommerce ul.products li.product .price{font-weight:600;color:var(--navy);margin-bottom:10px}
.woocommerce ul.products li.product .button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--red);color:#fff;border-radius:4px;font-weight:600;font-size:13px;padding:11px 20px;border:0}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background:var(--red-dark);color:#fff}
.woocommerce ul.products li.product .button{margin-top:auto;text-align:center}
.woocommerce span.onsale{background:var(--red);color:#fff;min-height:0;min-width:0;line-height:1;padding:7px 10px;border-radius:3px;font-size:12px}
.woocommerce div.product .product_title{font-size:28px;color:var(--navy);margin-bottom:10px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--red);font-weight:700;font-size:24px}
.woocommerce div.product div.images,.woocommerce div.product div.summary{margin-bottom:30px}
.woocommerce-tabs ul.tabs{display:flex;gap:6px;padding:0!important;margin:0 0 -1px!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:4px 4px 0 0;background:var(--soft);padding:0 6px;margin:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff}
.woocommerce-message,.woocommerce-info,.woocommerce-error{padding:14px 18px 14px 20px!important;margin-bottom:20px!important;border-top:3px solid var(--navy)}
.woocommerce table.shop_table{border-collapse:collapse;width:100%}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px;border-top:1px solid var(--border)}
.woocommerce .quantity .qty{padding:9px;border:1px solid #d5dbe4;border-radius:4px;width:70px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce-page form .form-row select{border:1px solid #d5dbe4;border-radius:4px;padding:10px 12px}
.woocommerce-pagination ul{display:flex;gap:8px;justify-content:center}
.woocommerce-pagination ul li a,.woocommerce-pagination ul li span{padding:8px 14px;border:1px solid var(--border);border-radius:4px;display:block}
.woocommerce-pagination ul li span.current{background:var(--red);border-color:var(--red);color:#fff}
@media(max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.woocommerce ul.products{grid-template-columns:1fr 1fr;gap:10px}}
