/*
Theme Name: Modernes Projekt
Theme URI: https://modernesprojekt.de
Author: Modernes Projekt
Description: Modernes Projekt Heizungsersatzteile & Wärmepumpen
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: modernesprojekt
*/

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { background:#fff; border:1px solid #dde2e7; border-radius:22px; padding:18px; box-shadow:0 16px 45px rgba(10,32,56,.05); }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit { background:#ff6500; color:#fff; border-radius:12px; font-weight:800; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { background:#ff7a1a; color:#fff; }
.woocommerce div.product .product_title, .woocommerce-products-header__title { color:#0a2038; }

/* =========================================================
   Modernes Projekt
   ========================================================= */
.mp-shop-page,
.mp-single-product-page{background:var(--bg);}
.mp-shop-hero{padding:76px 0 48px;background:radial-gradient(circle at 86% 8%,rgba(255,101,0,.14),transparent 34%),linear-gradient(135deg,#f8fafc,#f3f5f7);border-bottom:1px solid rgba(10,32,56,.06)}
.mp-shop-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:center}
.mp-shop-hero h1{font-size:clamp(40px,5vw,68px);line-height:1;color:var(--ink);letter-spacing:-.045em;margin:10px 0 16px}
.mp-shop-hero p{font-size:1.06rem;max-width:720px;color:var(--text)}
.mp-shop-search{margin-top:28px;max-width:660px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:10px;box-shadow:0 18px 50px rgba(10,32,56,.08)}
.mp-shop-search form{display:flex;gap:10px}.mp-shop-search input[type=search]{padding:16px 18px;border-radius:14px}.mp-shop-search button{border:0;border-radius:14px;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;font-weight:900;padding:0 24px;cursor:pointer}
.mp-shop-help-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow);display:grid;gap:12px}.mp-shop-help-card strong{font-size:1.35rem;line-height:1.2;color:var(--ink)}.mp-shop-help-card span{color:var(--muted)}.mp-shop-help-card .btn{width:max-content;margin-top:8px}
.mp-shop-content{padding:54px 0 86px}.mp-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:0 12px 34px rgba(10,32,56,.05)}
.woocommerce .woocommerce-ordering select{border-radius:12px;padding:12px 40px 12px 14px;background:#fff;color:var(--ink)}
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 !important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none !important}.woocommerce ul.products li.product.mp-product-card{width:auto !important;margin:0 !important;float:none !important;background:#fff;border:1px solid var(--line);border-radius:24px;padding:0;overflow:hidden;box-shadow:0 18px 50px rgba(10,32,56,.06);transition:.24s ease;display:flex;flex-direction:column}.woocommerce ul.products li.product.mp-product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(255,101,0,.32)}
.mp-product-image{position:relative;display:grid;place-items:center;background:linear-gradient(135deg,#fff,#f5f7f9);aspect-ratio:1.18/1;padding:18px;border-bottom:1px solid var(--line)}.woocommerce ul.products li.product .mp-product-image img{width:100%;height:100%;object-fit:contain;margin:0}.mp-sale-badge{position:absolute;top:14px;left:14px;background:var(--orange);color:#fff;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:900;z-index:2}
.mp-product-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}.mp-product-cats,.mp-product-cats a{font-size:.78rem;color:var(--orange);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0;margin:0;color:var(--ink);font-size:1.08rem;line-height:1.28;font-weight:900}.woocommerce ul.products li.product .woocommerce-loop-product__title a{color:var(--ink)}.mp-product-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:.78rem;color:var(--muted)}.mp-product-meta span{background:#f5f7f9;border:1px solid var(--line);border-radius:999px;padding:5px 9px}.mp-product-meta .in-stock{color:#187145;background:#eaf8f0;border-color:#ccebd9}.mp-product-meta .out-stock{color:#8a2632;background:#fff0f0;border-color:#ffd1d1}.woocommerce ul.products li.product .price,.mp-product-price{font-size:1.15rem;font-weight:900;color:var(--ink);margin-top:auto}.woocommerce ul.products li.product .price ins{text-decoration:none}.mp-product-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;border:0;border-radius:13px;padding:13px 16px;font-weight:900;line-height:1;box-shadow:0 14px 26px rgba(255,101,0,.20)}.woocommerce ul.products li.product .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:linear-gradient(135deg,#eb5d00,var(--orange));color:#fff}.mp-details-link{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:13px;padding:11px 14px;font-weight:900;font-size:.9rem}
.mp-shop-pagination{margin-top:36px;text-align:center}.woocommerce nav.woocommerce-pagination ul{border:0;display:inline-flex;gap:8px}.woocommerce nav.woocommerce-pagination ul li{border:0}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:12px;background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:800;min-width:42px;padding:10px 13px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--orange);color:#fff;border-color:var(--orange)}

.mp-single-hero{padding:54px 0 88px;background:var(--bg)}.woocommerce .woocommerce-breadcrumb{margin-bottom:24px;color:var(--muted)}.woocommerce .woocommerce-breadcrumb a{color:var(--ink);font-weight:800}.mp-single-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:start}.mp-single-gallery,.mp-single-summary,.mp-product-tabs-wrap{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}.mp-single-gallery{padding:22px;overflow:hidden}.woocommerce div.product div.images{width:100%;float:none;margin:0}.woocommerce div.product div.summary{width:100%;float:none;margin:0}.mp-single-summary{padding:34px}.woocommerce div.product .product_title{font-size:clamp(30px,4vw,48px);line-height:1.08;color:var(--ink);letter-spacing:-.035em;margin:8px 0 12px}.mp-single-price .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--orange);font-size:1.7rem;font-weight:900}.mp-single-stock{display:inline-flex;margin:14px 0;padding:8px 12px;border-radius:999px;background:#eaf8f0;border:1px solid #ccebd9;color:#187145;font-weight:900}.mp-single-cart{margin:18px 0}.woocommerce div.product form.cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.woocommerce .quantity .qty{width:88px;border-radius:13px;padding:13px 10px;text-align:center}.mp-service-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.mp-service-boxes div{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:14px}.mp-service-boxes strong{display:block;color:var(--ink);font-size:.9rem}.mp-service-boxes span{display:block;color:var(--muted);font-size:.78rem;line-height:1.35}.mp-single-meta{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.mp-product-tabs-wrap{margin-top:30px;padding:30px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 22px;display:flex;gap:10px;flex-wrap:wrap}.woocommerce div.product .woocommerce-tabs ul.tabs:before{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li{border:1px solid var(--line);background:#f8fafc;border-radius:14px;padding:0;margin:0}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--ink);border-color:var(--ink)}.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:12px 16px;color:var(--ink);font-weight:900}.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:#fff}.woocommerce div.product .woocommerce-tabs .panel h2{color:var(--ink);margin-bottom:10px}

.mp-cart-page,.mp-checkout-title{padding:20px 0}.mp-cart-title,.mp-checkout-title{text-align:center;margin-bottom:26px}.mp-cart-title h1,.mp-checkout-title h1{font-size:clamp(34px,4vw,54px);line-height:1.05;color:var(--ink)}.mp-cart-title p,.mp-checkout-title p{color:var(--muted);max-width:760px;margin:8px auto 0}.mp-cart-card,.mp-cart-summary .cart_totals,.mp-checkout-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow);margin-bottom:24px}.woocommerce table.shop_table{border:0;border-collapse:separate;border-spacing:0}.woocommerce table.shop_table th{color:var(--ink);font-weight:900;background:#f8fafc}.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--line);padding:15px}.woocommerce a.remove{color:var(--orange)!important}.woocommerce a.remove:hover{background:var(--orange);color:#fff!important}.mp-cart-summary{display:flex;justify-content:flex-end}.mp-cart-summary .cart_totals{width:min(460px,100%)}.woocommerce .cart_totals h2{color:var(--ink)}.woocommerce .wc-proceed-to-checkout a.checkout-button{font-size:1rem;border-radius:14px;padding:16px 22px;background:linear-gradient(135deg,var(--orange),var(--orange2))}
.mp-checkout-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:28px;align-items:start}.mp-checkout-card h3,.woocommerce-billing-fields h3,.woocommerce-shipping-fields h3{color:var(--ink);font-size:1.35rem;margin-bottom:16px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff;color:var(--ink)}.woocommerce form .form-row label{font-weight:800;color:var(--ink)}.woocommerce-checkout #payment{background:#f8fafc;border:1px solid var(--line);border-radius:18px}.woocommerce-checkout #payment div.payment_box{background:#fff;border:1px solid var(--line);border-radius:14px}.woocommerce-checkout #payment div.payment_box:before{display:none}.woocommerce #payment #place_order{width:100%;border-radius:14px;padding:16px 20px;font-size:1rem;background:linear-gradient(135deg,var(--orange),var(--orange2))}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--orange);border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(10,32,56,.06)}.woocommerce-message::before,.woocommerce-info::before{color:var(--orange)}
.woocommerce .star-rating span::before,.woocommerce .star-rating::before{color:var(--orange)}
@media(max-width:980px){.mp-shop-hero-grid,.mp-single-grid,.mp-checkout-grid{grid-template-columns:1fr}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.mp-service-boxes{grid-template-columns:1fr}.mp-shop-toolbar{align-items:flex-start;flex-direction:column}.mp-shop-search form{flex-direction:column}.mp-shop-search button{padding:14px 20px}.mp-cart-summary{display:block}}
@media(max-width:640px){.woocommerce ul.products{grid-template-columns:1fr}.mp-shop-hero{padding:52px 0 36px}.mp-single-summary,.mp-product-tabs-wrap,.mp-cart-card,.mp-cart-summary .cart_totals,.mp-checkout-card{padding:18px;border-radius:20px}.mp-product-actions{flex-direction:column;align-items:stretch}.mp-product-actions .button,.mp-details-link{text-align:center}.woocommerce table.shop_table_responsive tr td::before{color:var(--ink);font-weight:900}.footer-grid{grid-template-columns:1fr}}
/* Rechtliche Seiten */
.page-datenschutz main,
.page-impressum main,
.page-agb main,
.page-widerruf main,
.page main {
  max-width: 980px;
  margin: 0 auto;
  padding: 70px 24px;
  line-height: 1.75;
  color: #334155;
}

.page main h1,
.page main h2 {
  color: #0a2038;
  line-height: 1.25;
}

.page main h1 {
  font-size: 42px;
  margin-bottom: 24px;
}

.page main h2 {
  font-size: 24px;
  margin-top: 36px;
  margin-bottom: 12px;
}

.page main p {
  font-size: 17px;
  margin-bottom: 16px;
}

.page main a {
  color: #ff6500;
  font-weight: 700;
}
/* Header Suche + Warenkorb */
.header-tools{
  display:flex;
  align-items:center;
  gap:18px;
}

.header-search{
  width:360px;
  height:54px;
  display:flex;
  align-items:center;
}

.header-search .dgwt-wcas-search-wrapp,
.header-search .dgwt-wcas-search-form,
.header-search .dgwt-wcas-sf-wrapp{
  width:100% !important;
  height:54px !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.header-search input.dgwt-wcas-search-input{
  width:100% !important;
  height:54px !important;
  min-height:54px !important;
  background:#eeeeee !important;
  border:0 !important;
  border-radius:999px !important;
  box-shadow:none !important;
  padding:0 22px 0 58px !important;
  font-size:15px !important;
  color:#0a2038 !important;
}

.header-search input.dgwt-wcas-search-input::placeholder{
  color:#6e7b87 !important;
  opacity:1 !important;
}

.header-search .dgwt-wcas-ico-magnifier{
  position:absolute !important;
  left:22px !important;
  right:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:22px !important;
  height:22px !important;
}

.header-search .dgwt-wcas-search-submit{
  display:none !important;
}

.header-cart{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:14px;
  background:#fff;
  border:1px solid #dde2e7;
  color:#0a2038;
  transition:.25s;
}

.header-cart:hover{
  background:#ff6500;
  color:#fff;
}

.cart-count{
  position:absolute;
  top:-6px;
  right:-6px;
  background:#ff6500;
  color:#fff;
  min-width:22px;
  height:22px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:800;
}

@media(max-width:980px){
  .header-search{
    display:none;
  }
}