.hspd-double {
  --paper: #fdfefe;
  --ink: #102f49;
  --muted: #4a6376;
  --blue: #086b9a;
  --blue-deep: #07517a;
  --on-blue: #f8fcff;
  --rule: #d9e4eb;
  --input-rule: #9bafbe;
  --hero: #eaf2f6;
  --pale: #eff5f8;
  --well: #f2f7f9;
  --tint: #e4eef4;
  --shadow: 0 18px 60px rgb(16 47 73 / .16);
  --veil: rgb(16 47 73 / .5);
  --font: Arial, "Helvetica Neue", sans-serif;
  --container: 1264px;
  --gutter: clamp(16px, 3.4vw, 40px);
  --section-space: clamp(36px, 5vw, 64px);
  --grid-gap: 20px;
  --radius: 6px;
  --control: 46px;
}

.hspd-double * {
  box-sizing: border-box;
}

.hspd-double {
  margin: 0; color: var(--ink); font: 16px/1.55 var(--font);
}

.hspd-double [hidden] {
  display: none !important;
}

.hspd-double :is(h1,h2,h3) {
  margin: 0; min-width: 0; overflow-wrap: break-word;
}

.hspd-double h2 {
  font-size: clamp(27px, 3vw, 39px); line-height: 1.12; letter-spacing: -.028em; text-wrap: balance;
}

.hspd-double h3 {
  font-size: 20px; line-height: 1.24; letter-spacing: -.013em;
}

.hspd-double p,
.hspd-double figure,
.hspd-double dl,
.hspd-double dd {
  margin: 0;
}

.hspd-double a {
  color: var(--blue-deep); text-underline-offset: .18em;
}

.hspd-double a:hover {
  color: var(--blue);
}

.hspd-double :where(a, button, input, textarea, summary):focus-visible {
  outline: 2px solid var(--blue-deep); outline-offset: 3px;
}

.hspd-double :where(input,button,textarea) {
  color: inherit; font: inherit;
}

.hspd-double button {
  cursor: pointer;
}

.hspd-double button:disabled {
  cursor: not-allowed; opacity: .56;
}

.hspd-double img {
  display: block; max-width: 100%; height: auto;
}

.hspd-double svg {
  display: block; width: 17px; height: 17px; flex: none;
}

.hspd-double .container {
  width: min(100%, var(--container)); padding-inline: var(--gutter); margin-inline: auto;
}

.hspd-double #modelos,
.hspd-double #consulta {
  scroll-margin-top: 16px;
}

.hspd-double .breadcrumbs {
  display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; padding-block: 12px; color: var(--muted); font-size: 14px;
}

.hspd-double .breadcrumbs a {
  color: inherit; text-decoration: none;
}

.hspd-double .breadcrumbs a:hover {
  color: var(--blue-deep); text-decoration: underline;
}

.hspd-double .breadcrumbs [aria-current] {
  color: var(--ink);
}

.hspd-double .button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: var(--control);
  padding: 8px 16px; border: 1px solid transparent; border-radius: var(--radius); text-decoration: none;
  text-align: center; font-size: 15px; line-height: 1.25; font-weight: 700;
}

.hspd-double .primary {
  background: var(--blue); color: var(--on-blue);
}

.hspd-double .primary:is(:hover,:active) {
  background: var(--blue-deep); color: var(--on-blue);
}

.hspd-double .secondary {
  border-color: var(--input-rule); background: transparent; color: var(--blue-deep);
}

.hspd-double .secondary:is(:hover,:active) {
  border-color: var(--blue); background: var(--tint); color: var(--blue-deep);
}

.hspd-double .hero {
  background: var(--hero); border-bottom: 1px solid var(--rule);
}

.hspd-double .hero-inner {
  display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); align-items: center;
  gap: clamp(16px, 4vw, 52px); padding-block: 28px; min-height: 352px;
}

.hspd-double .hero h1 {
  font-size: clamp(36px, 4.55vw, 65px); line-height: 1.02; letter-spacing: -.047em;
}

.hspd-double .hero p {
  margin-block: 16px 24px; max-width: 43ch; color: var(--muted); font-size: 18px;
}

.hspd-double .hero-actions {
  display: flex; flex-wrap: wrap; gap: 12px;
}

.hspd-double .hero-image {
  width: min(100%, 524px); aspect-ratio: 1.64; height: auto; object-fit: cover; object-position: center;
  justify-self: end; mix-blend-mode: multiply;
}

.hspd-double .catalog {
  padding-block: clamp(36px, 4.3vw, 56px) var(--section-space);
}

.hspd-double .catalog-heading {
  margin-bottom: 24px;
}

.hspd-double .rfq .htan-form-field :is(input:not([type="file"], [type="checkbox"]), textarea) {
  width: 100%; min-width: 0; min-height: var(--control); border: 1px solid var(--input-rule);
  border-radius: var(--radius); background: var(--paper); padding: 8px 12px;
}

.hspd-double .product-grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--grid-gap);
}

.hspd-double .product {
  min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper);
}

.hspd-double .product-photo {
  min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); place-items: center; height: 192px;
  background: var(--well); border-bottom: 1px solid var(--rule); border-radius: var(--radius) var(--radius) 0 0; overflow: clip;
}

.hspd-double .product-photo img {
  width: min(100%, 272px); height: 192px; object-fit: contain; mix-blend-mode: multiply; transform: scale(1.1);
}

.hspd-double .product-inner {
  min-width: 0; display: flex; flex: 1; flex-direction: column; padding: 20px;
}

.hspd-double .product-reference {
  color: var(--blue-deep); font-size: 14px; font-weight: 700; overflow-wrap: break-word;
}

.hspd-double .product h3 {
  margin-block: 4px;
}

.hspd-double .product h3 a {
  color: var(--ink); text-decoration: none;
}

.hspd-double .product h3 a:hover {
  color: var(--blue-deep); text-decoration: underline;
}

.hspd-double .product-detail {
  color: var(--muted); font-size: 15px; line-height: 1.45;
}

.hspd-double .example-reference {
  margin-top: 20px; color: var(--muted); font-size: 14px;
}

.hspd-double .product-specs {
  display: grid; gap: 12px; margin-block: 12px 16px;
}

.hspd-double .product-specs > div {
  padding-block-start: 10px; border-top: 1px solid var(--rule); min-width: 0;
}

.hspd-double .product-specs dt {
  color: var(--muted); font-size: 14px;
}

.hspd-double .product-specs dd {
  margin-top: 2px; font-size: 20px; line-height: 1.24; font-weight: 700; font-variant-numeric: tabular-nums;
}

.hspd-double .product-specs.by-axis {
  grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 8px;
}

.hspd-double .product-specs.by-axis dd {
  font-size: 25px;
}

.hspd-double .product-actions {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 12px; margin-top: auto;
}

.hspd-double .file-links {
  display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px;
}

.hspd-double .file-links a {
  font-weight: 700; font-size: 14px; text-decoration: none;
}

.hspd-double .file-links a:hover {
  text-decoration: underline;
}

.hspd-double .product-action {
  min-height: 41px; padding-inline: 12px; font-size: 14px;
}

.hspd-double .plan-section {
  background: var(--well); border-block: 1px solid var(--rule);
}

.hspd-double .plan-inner {
  display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); align-items: center; gap: clamp(24px, 5.6vw, 72px); padding-block: var(--section-space);
}

.hspd-double .plan-copy p {
  margin-top: 16px; color: var(--muted); max-width: 51ch;
}

.hspd-double .plan-copy .button {
  margin-top: 24px;
}

.hspd-double .plan-drawing {
  min-width: 0;
}

.hspd-double .plan-drawing a {
  display: block; background: var(--paper); border: 1px solid var(--rule); border-radius: var(--radius);
}

.hspd-double .plan-drawing img {
  width: 100%; max-height: 374px; object-fit: contain;
}

.hspd-double .rfq-band {
  background: var(--pale); border-bottom: 1px solid var(--rule);
}

.hspd-double .rfq {
  display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: start; gap: 48px; padding-block: var(--section-space);
}

.hspd-double .rfq-copy p {
  max-width: 36ch; margin-top: 16px; color: var(--muted);
}

.hspd-double .rfq .hsp-compact-attachment-form__grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px;
}

.hspd-double .rfq :is(.htan-form-wrap, form) {
  margin: 0; min-width: 0;
}

.hspd-double .rfq .htan-form-field {
  display: grid; gap: 4px; min-width: 0;
}

.hspd-double .rfq .htan-form-field-wide {
  grid-column: 1 / -1;
}

.hspd-double .rfq .htan-form-field label,
.hspd-double .rfq .htan-form-label {
  font-weight: 700; font-size: 14px;
}

.hspd-double .rfq .htan-form-field textarea {
  min-height: 106px; resize: vertical;
}

.hspd-double .rfq .htan-upload-field {
  position: relative;
}

.hspd-double .rfq .htan-upload-field input[type="file"] {
  position: absolute; inset: auto 0 24px; width: 100%; height: var(--control); opacity: 0; cursor: pointer;
}

.hspd-double .rfq .htan-upload-field small {
  color: var(--muted); font-size: 13px;
}

.hspd-double .rfq .hsp-file-picker {
  display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; min-height: var(--control);
  padding: 8px 12px; border: 1px dashed var(--input-rule); border-radius: var(--radius);
  background: var(--paper); color: var(--blue-deep); cursor: pointer;
}

.hspd-double .rfq .htan-upload-field input:focus-visible + .hsp-file-picker {
  outline: 2px solid var(--blue-deep); outline-offset: 3px;
}

.hspd-double .rfq .hsp-file-picker__name {
  color: var(--muted); font-weight: 400; overflow-wrap: break-word;
}

.hspd-double .rfq .htan-consent label {
  font-weight: 400;
}

.hspd-double .rfq .htan-consent input {
  margin-inline-end: 8px;
}

.hspd-double .rfq .button {
  width: 100%;
}

.hspd-double .rfq-error {
  margin-top: 12px; color: var(--muted);
}

.hspd-double .questions {
  padding-block: var(--section-space);
}

.hspd-double .questions h2 {
  font-size: clamp(25px,2.65vw,34px); margin-bottom: 16px;
}

.hspd-double .questions details {
  border-top: 1px solid var(--rule);
}

.hspd-double .questions details:last-child {
  border-bottom: 1px solid var(--rule);
}

.hspd-double .questions summary {
  padding-block: 12px; min-height: 44px; cursor: pointer; font-weight: 700;
}

.hspd-double .questions details p {
  max-width: 67ch; padding-bottom: 16px; color: var(--muted);
}

.hspd-double .variant-dialog {
  width: min(calc(100% - 32px), 940px); max-width: none; max-height: min(84dvh,720px);
  margin: auto; padding: 0; border: 0; border-radius: var(--radius); box-shadow: var(--shadow);
  background: var(--paper); color: var(--ink); overscroll-behavior: contain;
}

.hspd-double .variant-dialog::backdrop {
  background: var(--veil);
}

.hspd-double .dialog-head {
  position: sticky; top: 0; z-index: 1; display: flex; align-items: start; justify-content: space-between; gap: 12px;
  padding: 16px 24px; background: var(--paper); border-bottom: 1px solid var(--rule);
}

.hspd-double .dialog-head h2 {
  font-size: clamp(22px,3vw,29px); text-wrap: wrap;
}

.hspd-double .dialog-head p,
.hspd-double .dialog-note {
  margin-top: 4px; color: var(--muted); font-size: 14px;
}

.hspd-double .dialog-close {
  display: grid; place-items: center; flex: none; width: 44px; height: 44px;
  border: 1px solid var(--rule); border-radius: var(--radius); background: var(--paper);
}

.hspd-double .dialog-close:hover {
  background: var(--well);
}

.hspd-double .variant-table {
  width: 100%; border-collapse: collapse; font-size: 15px;
}

.hspd-double .variant-table thead {
  background: var(--well);
}

.hspd-double .variant-table :is(th, td) {
  padding: 12px 16px; border-bottom: 1px solid var(--rule); text-align: start;
}

.hspd-double .variant-table tr > :first-child {
  padding-inline-start: 24px;
}

.hspd-double .variant-table tr > :last-child {
  padding-inline-end: 24px;
}

.hspd-double .variant-table tbody th {
  overflow-wrap: break-word;
}

.hspd-double .variant-value {
  font-variant-numeric: tabular-nums;
}

.hspd-double .variant-label {
  display: none;
}

.hspd-double .variant-table .button {
  min-height: 39px; font-size: 14px;
}

.hspd-double .dialog-note {
  margin: 0; padding: 12px 24px; background: var(--well);
}

@media (max-width: 960px) {
.hspd-double .rfq {
  gap: 24px;
}
}

@media (max-width: 700px) {
.hspd-double .variant-table :is(tbody,thead) {
  display: block;
}

.hspd-double .variant-table thead {
  position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap;
}

.hspd-double .variant-table tbody tr {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 12px;
    padding: 16px; border-bottom: 1px solid var(--rule);
}

.hspd-double .variant-table tbody tr > :is(th, td) {
  min-width: 0; padding: 0; border: 0;
}

.hspd-double .variant-table tbody th {
  grid-column: 1 / -1;
}

.hspd-double .variant-label {
  display: block; color: var(--muted); font-size: 14px;
}

.hspd-double .variant-files {
  grid-column: 1; align-self: center;
}

.hspd-double .variant-quote {
  grid-column: 2; justify-self: end;
}

.hspd-double .dialog-head {
  padding-inline: 16px;
}

.hspd-double .dialog-note {
  padding-inline: 16px;
}

.hspd-double .rfq,
.hspd-double .plan-inner {
  grid-template-columns: minmax(0,1fr);
}
}

@media (max-width: 620px) {
.hspd-double .hero-inner {
  grid-template-columns: minmax(0,1fr); gap: 12px; padding-block: 24px;
}

.hspd-double .hero h1 {
  font-size: clamp(35px,8.6vw,51px);
}

.hspd-double .hero p {
  margin-block: 12px 16px; font-size: 16px;
}

.hspd-double .hero-image {
  width: min(100%, 375px); justify-self: center;
}

.hspd-double .product-grid {
  grid-template-columns: minmax(0,1fr);
}

.hspd-double .product-photo,
.hspd-double .product-photo img {
  height: 176px;
}

.hspd-double .product-inner {
  padding: 16px;
}

.hspd-double .rfq .hsp-compact-attachment-form__grid {
  grid-template-columns: minmax(0,1fr);
}
}
.hspd-double { background: var(--paper); }
.hspd-double :is(h1, h2, h3) { color: var(--ink); }
.hspd-double #modelos, .hspd-double #consulta { scroll-margin-top: 110px; }
.hspd-double .dialog-close { font-size: 24px; line-height: 1; }
.hspd-double .variant-files small { display: block; margin-top: 3px; color: var(--muted); }
.hspd-double .variant-table tbody th { overflow-wrap: anywhere; }
.hspd-double .plan-drawing img { margin-inline: auto; }

