/* Hydraulics uses the shared campaign typography and 6px controls. */
[data-campaign="hydraulics"] .campaign-overview p + p { margin-block-start: 16px; }
[data-campaign="hydraulics"] .technical-features h2 { margin-block-start: 0; }
[data-campaign="hydraulics"] .application-card h3 { padding-block-end: 5px; }
[data-campaign="hydraulics"] .application-caption { margin: 0; padding: 0 18px 17px; background: #f3f3f3; color: #626262; font-size: 14px; line-height: 1.5; }
.hydraulics-range-note { margin-block-start: 22px; color: #626262; font-size: 15px; line-height: 1.7; }
.hydraulics-components { padding-block: 54px 22px; }
.hydraulics-components > h2 { font-size: 36px; line-height: 1.15; margin-block-end: 28px; }
.hydraulics-component-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.hydraulics-component { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); }
.hydraulics-component-photo { background: #fff; }
.hydraulics-component-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.hydraulics-component-copy { flex: 1; padding: 18px; border-block-start: 1px solid var(--line); background: #f3f3f3; }
.hydraulics-component h3 { margin: 0 0 10px; font-size: 23px; line-height: 1.2; }
.hydraulics-component p { margin: 0; color: #626262; font-size: 14px; line-height: 1.65; }
[data-campaign="hydraulics"] .campaign-value { padding-block: 32px; }
.hydraulics-request { align-self: start; }
.hydraulics-request h3 { margin-block-start: 0; }
.hydraulics-request .button { margin-block-start: 22px; }
.hydraulics-sources { margin-block-start: 18px; font-size: 13px; }
.hydraulics-sources summary { cursor: pointer; width: fit-content; }
.hydraulics-sources ul { display: flex; flex-wrap: wrap; gap: 10px 22px; padding: 0; margin-block: 14px 0; list-style: none; }
.hydraulics-sources a { text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
@media (max-width: 1000px) { .hydraulics-component-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 650px) {
  [data-campaign="hydraulics"] .application-caption { padding: 0 12px 12px; font-size: 13px; }
  .hydraulics-components { padding-block: 36px 12px; }
  .hydraulics-components > h2 { font-size: 31px; }
  .hydraulics-component-grid { gap: 12px; }
  .hydraulics-component-copy { padding: 12px; }
  .hydraulics-component h3 { font-size: 21px; }
  .hydraulics-component p { font-size: 13px; }
}
