/* Product board view redesign: DESIGN.md aligned. */
.tm-product-view-page { background:#FFFFFF; color:#0F172A; }
.tm-product-view { width:min(var(--tm-container, 1400px), calc(100% - 48px)); margin:0 auto; padding:clamp(44px,6vw,88px) 0; }
.tm-product-view__hero { display:grid; grid-template-columns:minmax(280px, 480px) minmax(0,1fr); gap:clamp(30px,5vw,70px); align-items:start; margin-bottom:34px; }
.tm-product-view__media { border:1px solid #E2E8F0; border-radius:18px; background:#FFFFFF; padding:clamp(26px,4vw,46px); min-height:400px; display:flex; align-items:center; justify-content:center; box-shadow:none; }
.tm-product-view__media img { max-width:100%; max-height:440px; object-fit:contain; filter:none; mix-blend-mode:multiply; }
.tm-product-view__summary { padding-top:6px; }
.tm-product-view__eyebrow { margin:0 0 12px; color:#059669; font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.tm-product-view__summary h1 { margin:0; color:#0F172A; font-size:clamp(28px,4vw,44px); font-weight:780; letter-spacing:-.04em; line-height:1.18; }
.tm-product-view__meta { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 22px; }
.tm-product-view__meta span { display:inline-flex; align-items:center; min-height:30px; padding:0 10px; border-radius:999px; background:#F1F5F9; color:#475569; font-size:12px; font-weight:700; }
.tm-product-view__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.tm-product-view__actions a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 18px; border-radius:10px; border:1px solid #CBD5E1; background:#FFFFFF; color:#0F172A; font-size:14px; font-weight:750; text-decoration:none; }
.tm-product-view__actions a.is-primary { background:#059669; border-color:#059669; color:#FFFFFF; }
.tm-product-view__actions a.is-dark { background:#0F172A; border-color:#0F172A; color:#FFFFFF; }
.tm-product-spec { margin:28px 0 0; border:1px solid #E2E8F0; border-radius:16px; overflow:hidden; background:#FFFFFF; }
.tm-product-spec__head { padding:16px 18px; border-bottom:1px solid #E2E8F0; background:#F8FAFC; }
.tm-product-spec__head strong { display:block; color:#0F172A; font-size:15px; font-weight:760; }
.tm-product-spec table { width:100%; border-collapse:collapse; }
.tm-product-spec th, .tm-product-spec td { padding:13px 16px; border-bottom:1px solid #F1F5F9; text-align:left; font-size:13px; line-height:1.55; vertical-align:top; }
.tm-product-spec th { width:180px; background:#FCFCFD; color:#334155; font-weight:750; }
.tm-product-spec td { color:#475569; }
.tm-product-detail { margin-top:34px; padding:clamp(22px,4vw,42px); border:1px solid #E2E8F0; border-radius:18px; background:#FFFFFF; }
.tm-product-detail img { max-width:100%; height:auto; }
.tm-product-detail table { max-width:100%; }
.tm-product-view-admin { margin-top:20px; }
.tm-product-view-admin a { color:#059669; font-size:13px; font-weight:700; text-decoration:none; }
.tm-product-quote-prefill { padding:16px; border:1px solid #BBF7D0; border-radius:12px; background:#F0FDF4; color:#065F46; font-size:14px; line-height:1.65; }
@media(max-width:900px){ .tm-product-view__hero{grid-template-columns:1fr;} .tm-product-view__media{min-height:260px;} }
@media(max-width:560px){ .tm-product-view{width:min(100% - 28px, 1400px);} .tm-product-spec th,.tm-product-spec td{display:block;width:auto;} .tm-product-spec th{border-bottom:0;padding-bottom:4px;} .tm-product-spec td{padding-top:4px;} }
