/* Produktwelt: gemeinsame Markenbasis ../assets/site-v12.css; nur Shop-Komponenten lokal. */
.shop-page{background:#fff}
.shop-hero{background:linear-gradient(115deg,#fff 0%,#fbfcff 48%,#eef2ff 100%);overflow:hidden}
.shop-hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center;padding:80px 0 85px}
.shop-hero h1{font-size:clamp(46px,5.8vw,75px);line-height:1.03;letter-spacing:-.049em;margin:18px 0 25px}
.shop-hero h1 span{color:var(--brand)}
.shop-hero p{font-size:19px;color:var(--text);max-width:640px}
.shop-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}.shop-actions>span{font-size:13px;color:var(--muted);font-weight:650}
.shop-hero-note{padding:38px;border-radius:28px;background:var(--navy);color:#fff;box-shadow:var(--shadow);position:relative;border:1px solid rgba(255,255,255,.06)}
.shop-hero-note strong{font-size:24px;line-height:1.2}.shop-hero-note p{font-size:15px;color:#bcd0e8;margin:16px 0 22px}.shop-hero-note>span{display:inline-block;background:rgba(69,211,133,.13);color:#95e8b1;border-radius:99px;padding:8px 12px;font-size:12px;font-weight:850}
.shop-catalog{background:var(--soft)}.shop-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.shop-head h2{margin:8px 0 0;font-size:clamp(32px,3.5vw,45px);letter-spacing:-.04em}
.shop-search{display:flex;align-items:center;gap:8px;padding:11px 16px;background:white;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.shop-search input{background:none;border:0;outline:0;min-width:200px;color:var(--ink);font:inherit}
.shop-page .kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px}.shop-page .kind{display:grid;gap:9px;padding:26px;text-align:left;background:#fff;border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;font:inherit;color:var(--ink);transition:border .15s,transform .15s}.shop-page .kind:hover{transform:translateY(-2px)}.shop-page .kind strong{font-size:25px}.shop-page .kind span{color:var(--muted);font-size:14px}.shop-page .kind em{font-style:normal;color:var(--brand);font-size:13px;font-weight:850}.shop-page .kind.selected{border-color:var(--brand);background:#f2f4ff}
.shop-page .categories{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:19px}.shop-page .categories button{border:1px solid #dce3ee;background:#fff;padding:9px 16px;border-radius:99px;cursor:pointer;color:var(--text);font:inherit;font-weight:700}.shop-page .categories button.active{background:var(--brand);border-color:var(--brand);color:#fff}
.shop-status{font-size:14px;min-height:22px;color:var(--muted);margin:0 0 17px}.shop-page .products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.shop-page .product{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.shop-page .product-image{aspect-ratio:5/3;background:#f5f8fd;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.shop-page .product-image img{height:100%;width:100%;object-fit:contain}.shop-page .product-info{padding:23px;display:flex;flex:1;flex-direction:column;gap:12px}.shop-page .product-info h3{font-size:19px;line-height:1.3;margin:0}.shop-page .meta{color:var(--muted);font-size:12px}.shop-page .desc{color:var(--text);font-size:14px;margin:0}.shop-page .stock{color:var(--green);font-size:13px;font-weight:800}.shop-page .stock.unverified{color:#aa631e}.shop-page .bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:auto;padding-top:8px}.shop-page .price{font-weight:900;font-size:23px;letter-spacing:-.035em}.shop-page .ask{border:0;background:var(--brand);color:#fff;border-radius:11px;padding:11px 15px;cursor:pointer;font:inherit;font-size:14px;font-weight:800}.shop-page .ask:hover{background:var(--brand-dark)}.shop-page .ask:focus-visible{outline:3px solid #e97d27;outline-offset:2px}
.shop-pickup{background:var(--navy);color:#fff;padding:58px 0}.shop-pickup-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.shop-pickup h2{font-size:36px;margin:12px 0}.shop-pickup p{color:#c1d0e0;max-width:680px}.shop-pickup .button{flex-shrink:0}
#requestDialog{width:min(560px,calc(100% - 28px));border:0;border-radius:22px;padding:0;box-shadow:0 30px 90px #101b3480;max-height:calc(100vh - 32px);overflow:auto;color:var(--ink)}#requestDialog::backdrop{background:#0b1c31b3}#requestDialog form{display:grid;gap:13px;padding:32px}#requestDialog form h2{font-size:28px;margin:0}#requestDialog form p{font-size:14px;color:var(--text);margin:0}#requestDialog form label:not(.privacy){display:grid;gap:5px;font-size:14px;font-weight:750}#requestDialog form input:not([type=checkbox]){width:100%;background:#fff;border:1px solid #cbd5e1;border-radius:9px;padding:11px;font:inherit}#requestDialog form .privacy{display:flex;gap:10px;align-items:start;font-size:13px}#requestDialog form .privacy input{width:auto;margin-top:5px}#requestDialog .close{justify-self:end;font-size:28px;cursor:pointer;border:0;background:none}#requestDialog #formStatus{font-weight:700;color:var(--brand-dark);overflow-wrap:anywhere}#requestDialog .button{width:100%}#requestDialog button:disabled{opacity:.55;cursor:wait}.trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
@media(max-width:1000px){.shop-hero-inner{grid-template-columns:1fr;gap:18px;padding:50px 0}.shop-hero-note{max-width:600px}.shop-page .products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.shop-page .kinds{grid-template-columns:1fr}.shop-head{flex-direction:column;align-items:stretch}.shop-search input{flex:1;min-width:0}.shop-pickup-inner{flex-direction:column;align-items:flex-start}}
@media(max-width:600px){.shop-hero h1{font-size:45px}.shop-actions{flex-direction:column;align-items:stretch}.shop-actions .button{width:100%}.shop-page .products{grid-template-columns:1fr}.shop-page .kind{padding:20px}#requestDialog form{padding:22px}.shop-pickup h2{font-size:29px}}

/* 1.2.17.42 – kompakte Artikelkarten und Produktdetailansicht */
.shop-page .product-image{border:0;border-radius:0;width:100%;padding:0;cursor:pointer;font:inherit;transition:background .15s}
.shop-page .product-image:hover{background:#edf1ff}
.shop-page .product-image:focus-visible,.shop-page .product-title:focus-visible,.shop-page .details-button:focus-visible{outline:3px solid #e97d27;outline-offset:2px}
.shop-page .product-title{font:inherit;font-size:inherit;line-height:inherit;font-weight:inherit;letter-spacing:inherit;color:inherit;text-align:left;border:0;background:none;padding:0;cursor:pointer}
.shop-page .product-title:hover{color:var(--brand)}
.shop-page .desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.shop-page .bottom{flex-direction:column;align-items:stretch;gap:13px}
.shop-page .card-actions{display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap}
.shop-page .details-button{border:1px solid #cfd7eb;color:var(--brand);background:#fff;border-radius:11px;padding:11px 12px;cursor:pointer;font:inherit;font-size:14px;font-weight:800}
.shop-page .details-button:hover{background:#f2f4ff;border-color:var(--brand)}
.shop-page .card-actions .ask{flex:1}
#detailDialog{width:min(970px,calc(100% - 30px));max-height:calc(100vh - 32px);padding:0;overflow:auto;border:0;border-radius:24px;box-shadow:0 35px 105px #07193088;color:var(--ink)}
#detailDialog::backdrop{background:#0b1c31c4}
.product-detail{padding:32px;position:relative}
.detail-close{position:absolute;right:17px;top:14px;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:12px;background:#edf2fa;font-size:29px;cursor:pointer;color:var(--ink);z-index:1}
.detail-close:hover{background:#dbe5f4}
.detail-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start}
.detail-picture{display:flex;align-items:center;justify-content:center;background:#f6f8fc;border-radius:18px;min-height:360px;padding:20px;position:sticky;top:0}
.detail-picture img{display:block;max-width:100%;max-height:480px;width:100%;object-fit:contain}
.detail-content{padding:14px 36px 12px 0}
.detail-content h2{font-size:clamp(26px,3vw,38px);line-height:1.15;letter-spacing:-.03em;margin:13px 0}
.detail-article{font-size:12px;color:var(--muted);margin:0 0 12px}
.detail-purchase{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0 25px}
.detail-purchase strong{font-size:29px;letter-spacing:-.035em}
.detail-purchase .stock{font-size:14px}
.detail-section{border-top:1px solid var(--line);padding-top:17px;margin:20px 0}
.detail-section h3{font-size:17px;margin:0 0 9px}
.detail-section p{margin:0;color:var(--text);line-height:1.65;overflow-wrap:anywhere;white-space:pre-line}
.detail-technical{max-height:360px;overflow:auto}
.detail-empty{font-size:14px;color:var(--muted)}
.detail-reserve{width:100%;text-align:center;margin-top:20px}
.detail-footnote{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.6}
@media(max-width:760px){.detail-layout{grid-template-columns:1fr;gap:12px}.product-detail{padding:22px}.detail-picture{min-height:180px;max-height:320px;position:static}.detail-picture img{max-height:280px}.detail-content{padding:8px 0}.detail-close{right:10px;top:10px}}
