.quote-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:rgba(15,23,42,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}.quote-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}.quote-modal__dialog{position:relative;width:100%;max-width:460px;max-height:calc(100dvh - 2.5rem);overflow-y:auto;background:var(--color-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:clamp(1.35rem,3.5vw,1.9rem);transform:translateY(16px) scale(.97);opacity:0;transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .28s ease}.quote-modal.is-open .quote-modal__dialog{transform:translateY(0) scale(1);opacity:1}.quote-modal__close{position:absolute;top:.85rem;right:.85rem;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:none;background:var(--color-bg-alt);color:var(--color-muted);cursor:pointer;transition:background var(--transition),color var(--transition)}.quote-modal__close:hover{background:var(--color-primary-soft);color:var(--color-primary)}.quote-modal__header{margin-bottom:1.1rem;padding-right:2.5rem}.quote-modal__header h3{font-size:1.4rem;margin:0 0 .35rem}.quote-modal__header p{color:var(--color-muted);margin:0;font-size:.95rem}.quote-modal__form{display:grid;grid-gap:.7rem;gap:.7rem}.quote-field{display:flex;flex-direction:column;gap:.3rem}.quote-field label{font-size:.85rem;font-weight:600;color:var(--color-heading)}.quote-field__input{width:100%;font:inherit;font-size:.95rem;padding:.65rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-body);transition:border-color var(--transition),box-shadow var(--transition)}.quote-field__input::placeholder{color:#94a3b8}.quote-field__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(47,107,255,.15)}textarea.quote-field__input{resize:vertical;min-height:70px}.quote-field__input--readonly{background:var(--color-bg-alt);color:var(--color-heading);font-weight:600;cursor:default}.quote-field__input.has-error{border-color:#dc2626}.quote-field__input.has-error:focus{box-shadow:0 0 0 3px rgba(220,38,38,.15)}.quote-field__error{font-size:.8rem;color:#dc2626}.quote-modal__submit{width:100%;margin-top:.4rem}.quote-modal__submit:disabled{opacity:.75;cursor:not-allowed}.quote-modal__error{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.85rem}.quote-modal__spinner{width:1.05em;height:1.05em;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:quoteSpin .7s linear infinite}@keyframes quoteSpin{to{transform:rotate(1turn)}}.quote-modal__success{text-align:center;padding:1rem .5rem .5rem}.quote-modal__success-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#ecfdf5;color:#059669;margin-bottom:1.1rem;animation:quotePop .4s cubic-bezier(.16,1,.3,1) both}.quote-modal__success h3{font-size:1.4rem;margin:0 0 .5rem}.quote-modal__success p{color:var(--color-muted);margin:0 0 1.5rem}@keyframes quotePop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion:reduce){.quote-modal,.quote-modal__dialog,.quote-modal__success-icon{transition:none;animation:none}.quote-modal__spinner{animation-duration:.001ms}}.product{display:grid;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media (min-width:900px){.product{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(2rem,3.5vw,3.5rem)}.product__media{position:-webkit-sticky;position:sticky;top:96px}}.product__body .eyebrow{margin-bottom:.75rem}.product__lead{font-size:1.12rem;line-height:1.75;color:var(--color-body);margin:0}.variant{margin-top:1.75rem}.variant__head{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.7rem}.variant__label{font-weight:700;color:var(--color-heading)}.variant__value{color:var(--color-muted)}.variant__swatches{display:flex;flex-wrap:wrap;gap:.7rem}.variant__swatch{width:46px;height:46px;padding:3px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.variant__swatch:hover{border-color:var(--color-primary-soft-2);transform:translateY(-1px)}.variant__swatch.is-active{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.variant__swatch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.variant__dot{display:block;width:100%;height:100%;border-radius:50%;background:var(--swatch,#ccc);box-shadow:inset 0 0 0 1px rgba(15,23,42,.14)}.product__quick{list-style:none;display:grid;grid-gap:.75rem;gap:.75rem;margin:1.5rem 0 2rem}@media (min-width:500px){.product__quick{grid-template-columns:repeat(2,1fr)}}.product__quick li{display:flex;align-items:center;gap:.55rem;font-weight:500;color:var(--color-body)}.product__quick svg{color:var(--color-primary);flex-shrink:0}.product__actions{display:flex;flex-wrap:wrap;gap:.75rem}.feature{height:100%}.icon-chip--sm{width:40px;height:40px;border-radius:10px;margin:0}.product-detail{display:grid;grid-gap:3rem;gap:3rem;align-items:start}@media (min-width:860px){.product-detail{grid-template-columns:1fr 1fr;gap:4rem}}.spec-table{width:100%;border-collapse:collapse;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.spec-table td,.spec-table th{text-align:left;padding:.85rem 1.1rem;border-bottom:1px solid var(--color-border)}.spec-table tr:last-child td,.spec-table tr:last-child th{border-bottom:none}.spec-table tr:nth-child(2n){background:var(--color-bg-alt)}.spec-table th{color:var(--color-heading);font-weight:600;width:42%}.spec-table td{color:var(--color-muted)}.applications{list-style:none;display:grid;grid-gap:1rem;gap:1rem}.applications li{display:flex;align-items:center;gap:.85rem;padding:.9rem 1.1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-body);font-weight:500;transition:transform var(--transition),box-shadow var(--transition)}.applications li:hover{transform:translateX(4px);box-shadow:var(--shadow-sm)}.advantage{position:relative;height:100%}.advantage__num{display:inline-block;font-size:2rem;font-weight:800;color:var(--color-primary-soft-2);line-height:1;margin-bottom:.75rem}