/* Interior refinement: shared V3 typography, real equipment, readable technical detail. */
.page, .single { background: var(--white); }
.page-intro { padding-block: 42px 36px; }
.page-intro h1, .product-summary h1, .article-layout h1 { font-weight: 650; letter-spacing: -.03em; line-height: 1.12; }
.page-intro h1 { font-size: clamp(40px,4.5vw,64px); max-width: 24ch; }
.page-intro .lead { margin-bottom: 0; font-size: 19px; }
.catalog-heading { display: grid; grid-template-columns: 1.05fr 1fr; gap: 55px; align-items: end; }
.catalog-heading .lead { margin: 0; max-width: 47ch; font-size: 18px; }
.catalog .filter-links { border-top: 0; margin-bottom: 0; gap: 6px 30px; padding-block: 8px; }
.catalog-tools { border-top: 0; padding-top: 24px; margin-bottom: 12px; }
.catalog-summary { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; padding-bottom: 22px; }
.catalog-summary .result-count { margin: 0; flex-shrink: 0; }
.selection-guide { max-width: 630px; font-size: 14px; }
.selection-guide summary { min-height: 44px; padding-block: 10px; color: var(--blue); cursor: pointer; text-align: right; }
.selection-guide .prose { padding-top: 16px; }
.selection-guide .prose > :first-child { margin-top: 0; }
.selection-guide h2 { font-size: 23px; }
.selection-guide p { margin-bottom: 16px; }
.equipment-grid { gap: 42px 28px; }
.equipment-grid .family { display: flex; flex-direction: column; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.equipment-grid .photo-link { aspect-ratio: 1.5; background: #eff3f5; }
.equipment-grid .photo-link > img { object-fit: contain; transform: none; filter: none; clip-path: inset(2.6%); }
.equipment-grid .photo-link:hover > img { transform: scale(1.025); }
.equipment-grid .family h2, .equipment-grid .family h3 { font-size: 23px; font-weight: 650; letter-spacing: -.025em; line-height: 1.25; margin: 8px 0 12px; }
.equipment-grid .family p { min-height: 0; margin-bottom: 12px; }
.equipment-grid .family .equipment-image-note { font-size: 12px; margin: 12px 0 0; color: var(--muted); }
.equipment-grid .family .text-link { margin-top: auto; align-self: start; }
.inline-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.product-detail { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 55px 65px; }
.product-summary h1 { font-size: clamp(36px,4.1vw,58px); max-width: 18ch; }
.product-summary .lead { margin-top: 22px; }
.product-photo figure { background: var(--paper); }
.product-photo figcaption { line-height: 1.6; }
.product-photo > .drawing-note { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 22px; }
.product-photo .drawing-note p { margin-bottom: 8px; }
.product-specifications { padding-top: 45px; }
.product-specifications .section-heading { gap: 55px; margin-bottom: 28px; }
.product-specifications h2, .related-equipment h2, .factory-detail h2 { font-size: clamp(29px,3vw,42px); font-weight: 650; }
.product-specifications .section-heading p { font-size: 16px; }
.spec-tools { display: flex; gap: 20px; align-items: end; }
.spec-tools[hidden], [data-spec-status][hidden], .spec-empty[hidden], .article-toc[hidden] { display: none; }
.spec-tools label { display: flex; flex-direction: column; gap: 8px; font: 550 14px/1.5 Manrope,Arial,sans-serif; }
.spec-tools label:first-child { flex: 1; }
.spec-tools select { min-width: 195px; }
.spec-tools .button { flex-shrink: 0; }
.spec-empty { padding-block: 14px; }
.related-equipment .section-heading { gap: 60px; }
.related-equipment .section-heading p { font-size: 16px; }
.related-equipment .family h3 { font-size: 23px; }
.factory-detail { padding-block: 32px 54px; border-top: 0; }
.factory-detail .home-section-heading { gap: 32px; }
.factory-detail h3 { font-weight: 650; }
.factory-detail .workshop-photo { aspect-ratio: 1.4; }
.factory-detail .home-source-note { margin-bottom: 0; }
.editorial-layout .prose h2, .article-layout .prose h2 { font-size: 29px; line-height: 1.25; font-weight: 600; letter-spacing: -.025em; }
.editorial-layout .prose h3, .article-layout .prose h3 { font-size: 22px; line-height: 1.3; font-weight: 600; }
.prose { overflow-wrap: anywhere; }
.prose > p:first-child { margin-top: 0; }
.prose table { background: var(--paper); }
.article-layout { padding-top: 38px; gap: 40px 80px; }
.article-layout h1 { font-size: clamp(38px,4.5vw,62px); }
.article-layout > header { padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.article-layout > header .lead { font-size: 20px; }
.article-meta { margin-bottom: 10px; }
.article-toc { margin-bottom: 36px; }
.article-toc > a { display: block; padding-block: 12px; border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.5; }
.resource-list { margin-top: 26px; }
.resource-list h2 { font-weight: 600; line-height: 1.25; font-size: clamp(25px,2.5vw,34px); }
.resource-list article { grid-template-columns: minmax(0,1fr) 170px; padding-block: 30px; }
.quote-layout { grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); gap: 60px; }
.quote-aside { padding-top: 0; }
.quote-aside h2 { font-size: 30px; font-weight: 600; line-height: 1.2; }
.quote-aside .prose h2:first-child { margin-top: 0; }
.quote-aside .prose h2 { font-size: 24px; }
.quote-aside .prose p { font-size: 16px; }
.contact-actions { margin-top: 24px; }
.rfq-form { background: var(--paper); padding: 30px; }
.preview-notice { margin-bottom: 16px; }
.technical-details summary { min-height: 44px; display: list-item; padding-block: 8px; }
.rfq-form .upload-zone { background: var(--white); }
.rfq-form .consent { min-height: 44px; }
.quote-layout .form-success { background: var(--paper); }
.quote-band { padding-block: 50px; }
.quote-band h2 { font-size: clamp(30px,3.1vw,42px); font-weight: 600; }
@media (min-width:761px) and (max-width:1100px) {
  .equipment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-heading { gap: 30px; }
  .product-detail { gap: 40px; }
  .product-summary h1 { font-size: 38px; }
  .quote-layout { grid-template-columns: 1fr; gap: 30px; }
  .quote-aside { max-width: 68ch; }
}
@media (max-width:760px) {
  .page-intro { padding-block: 28px 28px; }
  .page-intro h1 { font-size: clamp(36px,9vw,44px); }
  .page-intro .lead { font-size: 17px; margin-top: 18px; }
  .catalog-heading { display: block; }
  .catalog .filter-links { gap: 4px 23px; }
  .catalog-tools { gap: 14px; padding-top: 18px; }
  .catalog-tools label:first-child { flex-basis: 100%; }
  .catalog-summary { flex-direction: column; gap: 0; padding-bottom: 16px; }
  .selection-guide summary { text-align: left; }
  .equipment-grid { grid-template-columns: 1fr; gap: 30px; }
  .equipment-grid .family h2, .equipment-grid .family h3 { font-size: 24px; }
  .product-detail { padding-top: 28px; gap: 32px; }
  .product-summary h1 { font-size: 38px; }
  .product-summary .lead { font-size: 17px; }
  .product-specifications .section-heading { margin-bottom: 24px; }
  .spec-tools { flex-wrap: wrap; gap: 14px; }
  .spec-tools label:first-child { flex-basis: 100%; }
  .spec-tools label:nth-child(2) { flex: 1; min-width: 0; }
  .spec-tools select { min-width: 0; }
  .product-specifications .table-scroll { margin-top: 18px; }
  #equipment-parameters tbody th { width: 44%; overflow-wrap: normal; hyphens: auto; }
  .factory-detail { padding-top: 10px; padding-bottom: 40px; }
  .factory-detail .home-section-heading { flex-direction: column; align-items: start; gap: 22px; }
  .factory-detail .home-workshop-grid { grid-template-columns: 1fr; gap: 28px; }
  .factory-detail .workshop-photo { aspect-ratio: 1.35; }
  .editorial-layout .prose h2, .article-layout .prose h2 { font-size: 27px; }
  .article-layout { padding-top: 28px; gap: 28px; }
  .article-layout h1 { font-size: 37px; }
  .article-layout > header .lead { font-size: 18px; }
  .resource-list article { grid-template-columns: 1fr; gap: 12px; }
  .quote-layout { grid-template-columns: 1fr; gap: 26px; }
  .rfq-form { padding: 24px 18px; }
  .quote-band { padding-block: 40px; }
}
@media print {
  .spec-tools, [data-spec-status], .spec-empty, .print-note, .related-equipment, .article-toc { display: none !important; }
  #equipment-parameters tr[hidden] { display: table-row !important; }
  .table-scroll { overflow: visible; }
}
