/* Shared reading surface for product, solution and preparation details. */
.detail-dialog{--detail-blue:#2854d9;--detail-ink:#203453;--detail-muted:#526175;position:fixed;inset:0;margin:auto;width:min(800px,calc(100% - 48px));max-width:none;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);padding:0;border:1px solid #dce5f1;border-radius:16px;background:#fff;color:var(--detail-ink);box-shadow:0 24px 100px #0208174d;overflow:hidden;overflow-wrap:anywhere;color-scheme:light}
.detail-dialog::backdrop{background:#040a1699;backdrop-filter:blur(5px)}
.detail-dialog[open]{display:flex;flex-direction:column;animation:detail-dialog-in .18s ease-out}
.detail-dialog .detail-dialog-heading{position:relative;flex:none;min-width:0;padding:28px 88px 24px 32px;border-bottom:1px solid #e1e8f2;background:#fff}
.detail-dialog .detail-dialog-heading .eyebrow{display:block;font-size:12px;line-height:1.5;letter-spacing:1px;color:var(--detail-blue)}
.detail-dialog .detail-dialog-heading h2{font-size:28px;line-height:1.4;font-weight:650;letter-spacing:-.5px;margin:8px 0 0;color:var(--detail-ink)}
.detail-dialog .detail-dialog-heading p{font-size:16px;line-height:1.75;color:var(--detail-muted);margin:10px 0 0}
.detail-dialog .close-modal{position:absolute;top:22px;right:22px;display:grid;place-items:center;flex:none;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0;z-index:4;border:1px solid #dce5f1;border-radius:50%;background:#fff;color:var(--detail-ink)}
.detail-dialog .close-modal:hover{width:44px;height:44px;background:#eef4ff;color:var(--detail-blue);border-color:#a9beff}
.detail-dialog button:focus-visible,.detail-dialog summary:focus-visible{outline:2px solid var(--detail-blue);outline-offset:3px}
/* Only the reading region scrolls; headings, close and product navigation remain available. */
.product-dialog-content,.detail-dialog>[data-dialog-scroll]{flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y}
.detail-dialog .detail-dialog-body{min-width:0;padding:20px 32px 26px}
.product-dialog-layout{display:block;min-width:0}
.product-dialog-art{display:none}
.product-dialog-art .product-mini-art{width:100%;max-width:280px;height:180px;margin:auto;background:none}
.product-dialog-art .iso-mini{transform:none!important}
.product-dialog-body .product-card-body{padding:0}
.detail-dialog .detail-dialog-body p,.detail-dialog .detail-dialog-body li{font-size:16px;line-height:1.85;color:var(--detail-muted)}
.detail-dialog .detail-dialog-body p{margin:0}
.detail-dialog .detail-dialog-body p+p{margin-top:12px}
/* Short capability and preparation rows share a title and one-line explanation. */
.product-dialog-body .product-card-body ul,.detail-dialog .guide-list,.detail-dialog .detail-capabilities{display:block;list-style:none;padding:0;margin:0}
.product-dialog-body .product-card-body li,.detail-dialog .guide-list li,.detail-dialog .detail-capabilities li{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:baseline;gap:18px;margin:0;padding:16px 0;border-top:0;border-bottom:0}
.product-dialog-body .product-card-body li+li,.detail-dialog .guide-list li+li,.detail-dialog .detail-capabilities li+li{border-top:1px solid #e1e8f2}
.product-dialog-body .product-card-body li:before,.detail-dialog .guide-list li:before,.detail-dialog .detail-capabilities li:before{content:none}
.product-dialog-body .product-card-body li strong,.detail-dialog .guide-list li strong,.detail-dialog .detail-capabilities li strong{display:block;min-width:0;font-size:17px;font-weight:600;line-height:1.7;color:var(--detail-ink)}
.product-dialog-body .product-card-body li span,.detail-dialog .guide-list li p,.detail-dialog .detail-capabilities li span{display:block;min-width:0;margin:0;font-size:16px;line-height:1.85;color:var(--detail-muted)}
.detail-dialog .detail-dialog-body>[data-contact],.detail-dialog .detail-dialog-body>#guide-to-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;width:fit-content;max-width:100%;min-height:46px;padding:10px 18px;margin:20px 0 0 auto;border:0;border-radius:6px;background:var(--detail-blue);color:#fff;font-size:16px;line-height:1.6;text-align:left;white-space:normal}
.detail-dialog .detail-dialog-body>[data-contact]:hover,.detail-dialog .detail-dialog-body>#guide-to-contact:hover{background:#1d42b4;color:#fff}
.detail-dialog .info-modal-body{display:block}
.product-dialog-switcher{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 32px;border-top:1px solid #e1e8f2;background:#f8faff}
.product-dialog-switcher button{min-width:0;min-height:44px;padding:8px 0;background:transparent;color:var(--detail-blue);font-size:15px;line-height:1.6;white-space:normal}
.product-dialog-switcher button:disabled{cursor:default;color:#8795a9;opacity:1}
.product-dialog-switcher span{flex:none;font-size:12px;color:#687991;letter-spacing:.5px}
@keyframes detail-dialog-in{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:600px){.detail-dialog{width:calc(100% - 20px);max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);border-radius:12px}.detail-dialog .detail-dialog-heading{padding:22px 70px 18px 20px}.detail-dialog .detail-dialog-heading h2{font-size:24px}.detail-dialog .detail-dialog-heading p{font-size:15px;line-height:1.65}.detail-dialog .close-modal{top:14px;right:14px}.detail-dialog .detail-dialog-body{padding:22px 20px 24px}.product-dialog-body .product-card-body li,.detail-dialog .guide-list li,.detail-dialog .detail-capabilities li{grid-template-columns:minmax(0,1fr);gap:5px;padding:14px 0}.product-dialog-switcher{padding:8px 20px;gap:8px}.product-dialog-switcher button{font-size:14px}}
@media(max-height:500px){.detail-dialog{max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px)}.detail-dialog .detail-dialog-heading{padding-block:14px}.detail-dialog .detail-dialog-heading h2{font-size:22px}.detail-dialog .detail-dialog-heading p{margin-top:5px;font-size:14px;line-height:1.5}.detail-dialog .close-modal{top:10px}.product-dialog-switcher{padding-block:3px}}
@media(prefers-reduced-motion:reduce){.detail-dialog[open]{animation:none}.detail-dialog *{scroll-behavior:auto}}
