.product-info{display:flex;flex:1;flex-direction:column;min-width:0}
.product-image-button{display:flex;align-items:center;justify-content:center;width:100%;height:165px;margin-top:25px;padding:0;background:transparent}
.product-image-button img{width:100%;height:100%;object-fit:contain}
.product-image-button:hover img{transform:translateY(-2px)}
.product-image-button img{transition:transform .2s}
.product-info .product-type{margin-top:0}
.product-info .product-name{display:block;width:100%}
.product-info .availability{padding-top:0}
.product-info .product-bottom{margin-top:0}
.product-card .product-bottom{align-items:flex-start;flex-direction:column}
.product-card .product-bottom .btn{width:100%;min-height:44px;font-size:12px}
.product-card .product-bottom form{width:100%;margin:0}
#modal-title:focus{outline:none}
#modal-content .modal-eyebrow{color:#7a826d;font-size:9px;font-weight:750;letter-spacing:1.5px;margin:0 0 12px;text-transform:uppercase}
#modal-content .modal-intro{line-height:1.8;margin:0 0 22px;max-width:620px}
.btn-wide{width:100%}
.city-list,.selector-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 4px}
.choice-button{width:100%;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:5px;padding:17px 18px;text-align:left;transition:background .18s,border-color .18s}
.choice-button:hover,.choice-button.active{background:#fff8dc;border-color:#d8b841}
.choice-button>span:first-child{flex:1}
.choice-button strong{display:block;font-size:14px;font-weight:750;line-height:1.35}
.choice-button small{display:block;color:#7c8471;font-size:11px;line-height:1.7;margin-top:7px;font-weight:400}
.choice-button .icon{width:18px;height:18px;flex-shrink:0}
.selector-options .choice-button{min-height:108px}
.selector-result-note{padding:20px 22px;background:var(--paper);border-left:3px solid var(--yellow);border-radius:0 5px 5px 0;margin:24px 0}
.selector-result-note>strong{font-size:13px}
#modal-content .selector-result-note p{margin:8px 0 0;line-height:1.8;font-size:12px}
#modal-content .selector-result-note>p:first-child{margin-top:0}
.back-button{margin-top:20px}
.product-detail{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:start}
.detail-image{position:sticky;top:0;display:flex;align-items:center;justify-content:center;min-height:300px;background:#f8f9f5;border-radius:6px}
.detail-image img{width:100%;height:280px;object-fit:contain;padding:15px;mix-blend-mode:multiply}
#modal-content .product-detail h2{font-size:25px;line-height:1.25;overflow-wrap:anywhere}
.detail-specs{margin:20px 0 17px}
.detail-specs>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line);font-size:11px;line-height:1.6}
.detail-specs dt{color:#7a836d}
.detail-specs dd{margin:0;text-align:right;font-weight:700}
#modal-content .product-detail .availability{font-size:10px;margin:15px 0}
#modal-content .product-detail .product-bottom .btn{margin-top:0;min-height:42px}
.comparison-scroll{overflow:auto;margin:12px -5px 5px;padding-bottom:6px;overscroll-behavior-x:contain}
#modal-content .comparison-table{min-width:100%;width:max-content;max-width:none;font-size:11px}
#modal-content .comparison-table th,#modal-content .comparison-table td{min-width:170px;max-width:200px;padding:13px 16px;vertical-align:top}
#modal-content .comparison-table th:first-child{min-width:160px;max-width:180px;background:#f7f8f3;font-weight:500;color:#717a65}
#modal-content .comparison-table thead th{font-weight:750}
.comparison-table thead img{width:100px;height:100px;object-fit:contain;margin:0 auto 15px}
.comparison-table thead span{display:block;min-height:37px;line-height:1.6}
.comparison-table thead .text-button{font-size:10px;margin-top:10px;font-weight:400;color:#828a77}
.comparison-table tbody td{line-height:1.6}
.info-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:27px 0 20px}
.info-steps>div{border-top:1px solid var(--line);padding-top:16px}
.info-steps>div:only-child{grid-column:1/-1}
.info-steps>div>span{font-size:10px;color:#939b86;letter-spacing:1px}
.info-steps h3{font-size:14px;font-weight:750;line-height:1.5;margin:12px 0 8px}
#modal-content .info-steps p{font-size:11px;line-height:1.9;margin:0}
@media(max-width:650px){.product-detail{grid-template-columns:1fr;gap:23px}.detail-image{position:static;min-height:190px}.detail-image img{height:190px}.info-steps{grid-template-columns:1fr;gap:16px}.info-steps h3{margin-top:5px}.info-steps>div{padding-top:12px}.info-steps>div>span{float:right}.product-detail .product-bottom{flex-direction:row;align-items:center}.product-detail .product-bottom .btn{width:auto}}
@media(max-width:520px){.product-image-button{height:120px;margin-top:17px}.city-list,.selector-options{grid-template-columns:1fr}.choice-button{min-height:61px;padding:14px 16px}.selector-options .choice-button{min-height:83px}.choice-button strong{font-size:13px}.choice-button small{font-size:10px;margin-top:4px}.selector-result-note{padding:17px}#modal-content .modal-intro{font-size:12px}.btn-wide{font-size:11px}.comparison-table thead img{height:80px;width:80px}#modal-content .comparison-table th,#modal-content .comparison-table td{min-width:155px}}
/* Keep the equipment itself prominent in the manufacturer composition. */
img[src*="/3-1.png"] { clip-path: inset(0 50% 0 0); transform: translateX(24%) scale(1.18); }
.category-card:hover img[src*="/3-1.png"] { transform: translate(24%,-4px) scale(1.18); }
.product-visual { overflow: hidden; }
@media (min-width: 851px) {
  .product-type { font-size: 8px; }
  .product-specs { font-size: 10px; }
  .availability { font-size: 10px; }
  .product-tag { font-size: 9px; }
  .catalog-note { font-size: 10px; }
  .category-card p, .category-link { font-size: 11px; }
  .service-strip strong { font-size: 12px; }
  .service-strip small { font-size: 11px; }
  .tabs button, .sort-label select { font-size: 12px; }
}
@media (max-width:520px) {
  .main-header { display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px 10px; }
  .main-header .brand { grid-column:1;grid-row:1; }
  .header-actions { grid-column:2;grid-row:1;justify-content:flex-end;margin-left:0; }
  .catalog-button { grid-column:1;grid-row:2;padding:12px 10px; }
  .search-box { grid-column:2;grid-row:2;min-width:0;width:100%; }
  .hero h1 { font-size:42px;letter-spacing:-2.6px; }
  .category-nav,.tabs { scrollbar-width:none; }
  .category-nav::-webkit-scrollbar,.tabs::-webkit-scrollbar { display:none; }
  .product-name { font-size:13px; }
  .product-specs,.availability { font-size:9px; }
  .product-tag { font-size:8px;max-width:115px; }
  .category-link { font-size:9px; }
}
.brand svg { flex-shrink:0; }
.hero.hero-text-only { grid-template-columns: 1fr; } .hero-product[hidden] { display: none; }

#tok-inquiry { width: min(480px, calc(100% - 32px)); }
#tok-inquiry [data-close-inquiry] { font-size: 23px; }
.inquiry-model { margin: 12px 0 20px; }
.inquiry-form { display: grid; gap: 13px; }
.inquiry-form[hidden], .inquiry-status:empty { display: none; }
.inquiry-form label { display: block; font-weight: 700; }
.inquiry-form label span { color: var(--muted); font-size: 12px; font-weight: 400; }
.inquiry-form input:not([type=hidden]), .inquiry-form textarea { display: block; width: 100%; min-height: 44px; margin-top: 5px; padding: 9px 11px; border: 1px solid #999e90; border-radius: 4px; color: inherit; background: white; font: inherit; font-weight: 400; }
.inquiry-form textarea { resize: vertical; }
.inquiry-form .btn { justify-self: start; min-height: 44px; }
.inquiry-status { margin: 14px 0 0; }
.store-contacts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-style: normal; }
.store-contacts a { text-decoration: underline; text-underline-offset: 3px; }
.tok-cart-link { font-weight: 750; min-width: max-content; }

.catalog-page { padding-top: clamp(22px, 4vw, 48px); padding-bottom: clamp(40px, 6vw, 78px); }
.catalog-breadcrumbs { display: flex; gap: 10px; align-items: center; margin-bottom: 20px; font-size: 13px; color: var(--muted); }
.catalog-breadcrumbs a:hover { text-decoration: underline; }
.catalog-page .catalog-section { padding-top: 0; }
.catalog-page h1 { margin: 0; font-size: clamp(28px, 5vw, 52px); line-height: 1.1; letter-spacing: -.04em; }
.catalog-summary { max-width: 68ch; margin: 0 0 24px; color: var(--muted); line-height: 1.6; }
.catalog-page .tabs a { padding: 9px 14px; border: 1px solid #e1e3db; border-radius: 4px; font-size: 12px; white-space: nowrap; }
.catalog-page .tabs a:hover { border-color: #92998a; }
.catalog-page .tabs a.active { color: #fff; background: var(--ink); border-color: var(--ink); }
.utility-links a { color: inherit; }
