/* Produktseite: Bilder, Nutzen und Konfiguration als drei klare Bereiche. */
.shop-product{padding-top:122px;padding-bottom:36px;gap:clamp(28px,4vw,76px);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.shop-copy h1{font-size:clamp(34px,3.5vw,64px);max-width:15ch;line-height:1.09!important;margin:22px 0 24px}
.shop-copy .shop-lead{font-size:clamp(17px,1.25vw,21px);line-height:1.75;max-width:49ch}
.shop-copy p:not(.shop-lead){font-size:14px;max-width:49ch}.shop-copy .label{font-size:11px;letter-spacing:.16em}
.shop-photo-open>img{height:clamp(350px,29vw,570px);border-radius:16px;object-position:50% 62%}
.shop-gallery{min-width:0}.shop-thumbs{gap:10px}.shop-thumb{padding:5px;border-radius:10px}.shop-thumb img{height:clamp(58px,4.4vw,86px);border-radius:7px}.shop-thumb span{font-size:11px;padding:3px 0;line-height:1.4}
.shop-facts{font-size:12px;line-height:1.8;margin-top:26px}.shop-benefits{background:#ece7dc;border:0;border-radius:14px;padding:28px 32px;margin-bottom:42px;gap:40px;align-items:center}.shop-benefits h2{font-size:clamp(25px,2.3vw,36px);margin:10px 0 0}.shop-benefits p{margin:0;max-width:65ch}.shop-config-head{padding-bottom:24px}.shop-config-head h2{font-size:clamp(29px,2.8vw,43px);margin:12px 0 0}.shop-config-head p{max-width:48ch}.shop-frame{border:0;border-radius:16px}.shop-wrap{margin-bottom:54px}
@media(max-width:850px){.shop-product{grid-template-columns:1fr 1fr;gap:24px}.shop-photo-open>img{height:340px}.shop-benefits{gap:24px;padding:24px}.shop-thumb span{font-size:10px}}
@media(max-width:650px){.shop-product{grid-template-columns:1fr;padding-top:100px;padding-bottom:26px}.shop-copy h1{font-size:38px;max-width:18ch;margin:14px 0 18px}.shop-copy .shop-lead{font-size:17px}.shop-copy .btn{width:100%}.shop-photo-open>img{height:310px}.shop-benefits{grid-template-columns:1fr;padding:22px;margin-bottom:28px}.shop-benefits h2 br{display:none}.shop-config-head{padding-bottom:12px}.shop-config-head p{font-size:13px}.shop-thumb img{height:48px}.shop-thumbs{gap:4px}}

/* Footer: explizite Farben auch ohne die Theme-Variablen anderer Seiten. */
.site-footer{--dark-bg:#252922;--dark-ink:#faf8f2;--dark-line:#62665c;--mono:system-ui,sans-serif;background:var(--dark-bg);color:var(--dark-ink)}
.site-footer .footer-grid h3{color:#faf8f2}.site-footer .footer-grid a,.site-footer .footer-bottom{color:#e4e2db}.site-footer .footer-grid a:hover{color:#fff}

/* Gemeinsame Typografie für beide Produktabschnitte. */
.shop-benefits h2,.shop-config-head h2{font-family:Georgia,serif!important;font-size:clamp(28px,2.6vw,40px)!important;font-weight:400!important;line-height:1.2!important;letter-spacing:-.02em!important;margin:12px 0 0!important;text-wrap:balance}
.shop-benefits .label,.shop-config-head .label{font-family:Manrope,system-ui,sans-serif;font-size:11px;line-height:1.5;letter-spacing:.12em;color:#555b50}
.shop-benefits,.shop-config-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px;align-items:center}
.shop-benefits p,.shop-config-head p{font-size:15px;line-height:1.75;color:#3a3d36;margin:0;max-width:65ch}
.shop-config-head small{font-size:13px;line-height:1.7}
@media(max-width:650px){.shop-benefits,.shop-config-head{grid-template-columns:1fr;gap:20px}.shop-benefits h2,.shop-config-head h2{font-size:28px!important}.shop-config-head{padding-bottom:24px}}

/* Ruhiger Übergang vom Produktdetail zur Planung, gemeinsame Fluchtlinien. */
.shop-benefits{background:transparent;border-top:1px solid #d6d0c2;border-bottom:1px solid #d6d0c2;border-radius:0;padding:32px 0;margin-bottom:0}
.shop-config-head{padding-top:36px;padding-bottom:28px}
.shop-benefits,.shop-config-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px}
.shop-benefits h2,.shop-config-head h2{text-wrap:normal;letter-spacing:-.025em!important}
@media(max-width:650px){.shop-benefits,.shop-config-head{grid-template-columns:1fr;gap:16px}.shop-benefits{padding:26px 0}.shop-config-head{padding-top:28px}}

.shop-product-points{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:18px}
.shop-product-points li{position:relative;padding-left:22px}.shop-product-points li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background:#5b6650;border-radius:50%}
.shop-product-points strong{display:block;font:600 14px/1.6 Manrope,system-ui,sans-serif;color:#252922;margin-bottom:4px}.shop-product-points span{display:block;font-size:14px;line-height:1.7;color:#3a3d36;max-width:52ch}
.shop-wrap#konfigurator{scroll-margin-top:110px;border-top:1px solid #d6d0c2;padding-top:28px}
