.hsp-solution-framework-active .hsp-solution-single > .wp-block-shortcode:has(.hspes-page) {
    width: 100%;
    max-width: none !important;
    margin: 0 !important;
}

/* Industrial machinery solution: all page-specific rules stay inside its body scope. */
.hsp-solution-page--industrial-machinery .hspim-page {
    --hspim-navy: #0b3156;
    --hspim-blue: #174d78;
    --hspim-orange: #ed6b21;
    --hspim-line: #d7e0e8;
    --hspim-soft: #f5f7f9;
    color: #24394d;
    overflow: clip;
}

.hsp-solution-page--industrial-machinery .hspim-page a:focus-visible,
.hsp-solution-page--industrial-machinery .hspim-page button:focus-visible,
.hsp-solution-page--industrial-machinery .hspim-page input:focus-visible,
.hsp-solution-page--industrial-machinery .hspim-page textarea:focus-visible,
.hsp-solution-page--industrial-machinery .hspim-page summary:focus-visible {
    outline: 3px solid rgba(237, 107, 33, 0.45);
    outline-offset: 3px;
}

.hsp-solution-page--industrial-machinery .hspim-page .hspes-section {
    padding-block: 56px;
}

.hsp-solution-page--industrial-machinery .hspim-page .hspes-section-head {
    max-width: 780px;
}

.hsp-solution-page--industrial-machinery .hspim-page .hspes-section-head h2 {
    color: var(--hspim-navy);
}

.hsp-solution-page--industrial-machinery .hspim-hero {
    padding-block: 56px;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-hero__heading {
    max-width: 1180px;
}

.hsp-solution-page--industrial-machinery .hspim-hero h1 {
    max-width: 1180px;
    margin: 0;
    color: var(--hspim-navy);
    font-size: clamp(44px, 5vw, 60px);
    line-height: 1.04;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

.hsp-solution-page--industrial-machinery .hspim-hero__intro {
    max-width: 900px;
    margin: 22px 0 0;
    color: #3c4852;
    font-size: 18px;
    line-height: 1.65;
}

.hsp-solution-page--industrial-machinery .hspim-hero__heading .hspes-actions {
    margin-top: 24px;
}

.hsp-solution-page--industrial-machinery .hspim-hero__media {
    width: 100%;
    margin: 34px 0 0;
    overflow: hidden;
    border: 1px solid var(--hspim-line);
    border-radius: 3px;
    background: #f3f5f7;
}

.hsp-solution-page--industrial-machinery .hspim-hero__media picture,
.hsp-solution-page--industrial-machinery .hspim-hero__media img {
    display: block;
    width: 100%;
}

.hsp-solution-page--industrial-machinery .hspim-hero__media img {
    height: auto;
}

.hsp-solution-page--industrial-machinery .hspim-hero__note {
    margin: 18px 0 0;
    padding: 12px 16px;
    border-left: 3px solid var(--hspim-orange);
    color: #24394d;
    background: #f7f8f9;
    font-size: 16px;
    line-height: 1.55;
}

.hsp-solution-page--industrial-machinery .hspim-priorities {
    border-block: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-priorities__grid,
.hsp-solution-page--industrial-machinery .hspim-functions__grid,
.hsp-solution-page--industrial-machinery .hspim-validation__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--hspim-line);
    border-radius: 4px;
    background: var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-priorities__grid article,
.hsp-solution-page--industrial-machinery .hspim-function-card,
.hsp-solution-page--industrial-machinery .hspim-validation__grid article {
    min-width: 0;
    padding: 1.35rem 1.25rem;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-priorities__grid h3,
.hsp-solution-page--industrial-machinery .hspim-function-card h3,
.hsp-solution-page--industrial-machinery .hspim-validation__grid h3 {
    margin: 0;
    color: var(--hspim-navy);
    font-size: 1rem;
    line-height: 1.35;
}

.hsp-solution-page--industrial-machinery .hspim-priorities__grid p,
.hsp-solution-page--industrial-machinery .hspim-function-card p,
.hsp-solution-page--industrial-machinery .hspim-validation__grid p {
    margin: 0.65rem 0 0;
    color: #4e6173;
    font-size: 0.94rem;
    line-height: 1.58;
}

.hsp-solution-page--industrial-machinery .hspim-configurator .hspim-access-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-access-card {
    display: grid;
    grid-template-rows: 174px auto auto 1fr auto;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--hspim-line);
    border-radius: 4px;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-access-card[data-selected="true"] {
    border-color: var(--hspim-orange);
    box-shadow: inset 0 0 0 1px var(--hspim-orange);
}

.hsp-solution-page--industrial-machinery .hspim-access-card figure {
    display: grid;
    place-items: center;
    min-width: 0;
    margin: 0;
    padding: 0.75rem;
    border-bottom: 1px solid var(--hspim-line);
    background: var(--hspim-soft);
}

.hsp-solution-page--industrial-machinery .hspim-access-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hsp-solution-page--industrial-machinery .hspim-access-card h3,
.hsp-solution-page--industrial-machinery .hspim-access-card > p,
.hsp-solution-page--industrial-machinery .hspim-access-card > button {
    margin-inline: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-access-card h3 {
    margin-block: 1rem 0;
    color: var(--hspim-navy);
    font-size: 1.05rem;
    line-height: 1.35;
}

.hsp-solution-page--industrial-machinery .hspim-access-card > p {
    margin-block: 0.55rem 0;
    color: #4e6173;
    font-size: 0.9rem;
    line-height: 1.5;
}

.hsp-solution-page--industrial-machinery .hspim-access-card .hspim-access-card__decision {
    padding-top: 0.65rem;
    border-top: 1px solid #e7edf2;
}

.hsp-solution-page--industrial-machinery .hspim-access-card > button {
    min-height: 42px;
    margin-block: 1rem;
    padding: 0.55rem 0.85rem;
    border: 1px solid var(--hspim-blue);
    border-radius: 3px;
    color: var(--hspim-blue);
    background: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.hsp-solution-page--industrial-machinery .hspim-access-card > button:hover,
.hsp-solution-page--industrial-machinery .hspim-access-card > button[aria-pressed="true"] {
    color: #fff;
    background: var(--hspim-blue);
}

.hsp-solution-page--industrial-machinery .hspim-configurator .hspes-environment-row {
    margin-top: 1.5rem;
    border: 1px solid var(--hspim-line);
    border-radius: 4px;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-configurator .hspes-environment-option {
    border-radius: 3px;
}

.hsp-solution-page--industrial-machinery .hspim-configurations {
    margin-top: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration {
    border: 1px solid var(--hspim-line);
    border-top: 3px solid var(--hspim-blue);
    border-radius: 4px;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-configuration + .hspim-configuration {
    margin-top: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration > header h3,
.hsp-solution-page--industrial-machinery .hspim-configuration > header p {
    margin: 0;
}

.hsp-solution-page--industrial-machinery .hspim-configuration > header p {
    margin-top: 0.35rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
    padding: 0 1.15rem 1.15rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content h4 {
    margin: 0 0 0.65rem;
    color: var(--hspim-navy);
    font-size: 0.95rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content ul,
.hsp-solution-page--industrial-machinery .hspim-function-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content li + li,
.hsp-solution-page--industrial-machinery .hspim-function-card li + li {
    margin-top: 0.45rem;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content a,
.hsp-solution-page--industrial-machinery .hspim-function-card a,
.hsp-solution-page--industrial-machinery .hspim-manufacturing aside a {
    color: var(--hspim-blue);
    text-decoration: underline;
    text-decoration-color: rgba(23, 77, 120, 0.32);
    text-underline-offset: 0.18em;
}

.hsp-solution-page--industrial-machinery .hspim-configuration__content a:hover,
.hsp-solution-page--industrial-machinery .hspim-function-card a:hover,
.hsp-solution-page--industrial-machinery .hspim-manufacturing aside a:hover {
    color: var(--hspim-orange);
    text-decoration-color: currentColor;
}

.hsp-solution-page--industrial-machinery .hspim-service-tip {
    padding: 1rem;
    border-left: 3px solid var(--hspim-orange);
    background: var(--hspim-soft);
}

.hsp-solution-page--industrial-machinery .hspim-service-tip p {
    margin: 0;
    color: #344d62;
    line-height: 1.55;
}

.hsp-solution-page--industrial-machinery .hspim-function-card ul {
    margin-top: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-products__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-products .hsp-solution-product-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--hspim-line);
    border-radius: 4px;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-products .hsp-solution-product-card a {
    display: block;
    height: 100%;
    color: var(--hspim-navy);
    text-decoration: none;
}

.hsp-solution-page--industrial-machinery .hspim-products figure {
    aspect-ratio: 4 / 3;
    margin: 0;
    padding: 0.75rem;
    border-bottom: 1px solid var(--hspim-line);
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-products img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hsp-solution-page--industrial-machinery .hspim-products h3 {
    margin: 0;
    padding: 1rem;
    font-size: 1rem;
    line-height: 1.45;
}

.hsp-solution-page--industrial-machinery .hspim-resources {
    border-block: 1px solid var(--hspim-line);
    background: var(--hspim-soft);
}

.hsp-solution-page--industrial-machinery .hspim-resource-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.9rem;
}

.hsp-solution-page--industrial-machinery .hspim-resource-link {
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 70px;
    padding: 1rem 1.1rem;
    border: 1px solid var(--hspim-line);
    border-radius: 3px;
    color: var(--hspim-navy);
    background: #fff;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    text-decoration: none;
}

.hsp-solution-page--industrial-machinery .hspim-resource-link:hover,
.hsp-solution-page--industrial-machinery .hspim-resource-link:focus-visible {
    border-color: var(--hspim-orange);
    color: var(--hspim-orange);
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

.hsp-solution-page--industrial-machinery .hspim-selection table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--hspim-line);
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-selection th,
.hsp-solution-page--industrial-machinery .hspim-selection td {
    padding: 0.9rem 1rem;
    border: 1px solid var(--hspim-line);
    font-size: 0.95rem;
    line-height: 1.5;
    text-align: left;
    vertical-align: top;
}

.hsp-solution-page--industrial-machinery .hspim-selection thead th {
    color: #fff;
    background: var(--hspim-navy);
}

.hsp-solution-page--industrial-machinery .hspim-selection tbody th {
    width: 34%;
    color: var(--hspim-navy);
    background: #f8fafb;
}

.hsp-solution-page--industrial-machinery .hspim-validation > .hspes-container > .hspes-note {
    margin-top: 1.25rem;
}

.hsp-solution-page--industrial-machinery .hspim-process__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    border-block: 1px solid var(--hspim-line);
    list-style: none;
}

.hsp-solution-page--industrial-machinery .hspim-process__grid li {
    min-width: 0;
    padding: 1.35rem;
}

.hsp-solution-page--industrial-machinery .hspim-process__grid li + li {
    border-left: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-process__grid span {
    display: block;
    margin-bottom: 0.65rem;
    color: var(--hspim-orange);
    font-size: 1.2rem;
    font-weight: 800;
}

.hsp-solution-page--industrial-machinery .hspim-process__grid h3 {
    margin: 0;
    color: var(--hspim-navy);
    font-size: 1rem;
}

.hsp-solution-page--industrial-machinery .hspim-process__grid p {
    margin: 0.55rem 0 0;
    color: #4e6173;
    font-size: 0.93rem;
    line-height: 1.55;
}

.hsp-solution-page--industrial-machinery .hspim-manufacturing {
    border-top: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-manufacturing__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, 0.7fr);
    gap: 2rem;
}

.hsp-solution-page--industrial-machinery .hspim-manufacturing__grid p,
.hsp-solution-page--industrial-machinery .hspim-manufacturing__grid li {
    line-height: 1.65;
}

.hsp-solution-page--industrial-machinery .hspim-manufacturing__grid aside {
    align-self: start;
    padding: 1.25rem;
    border-left: 3px solid var(--hspim-orange);
    background: var(--hspim-soft);
}

.hsp-solution-page--industrial-machinery .hspim-manufacturing__grid aside p {
    margin: 0;
}

.hsp-solution-page--industrial-machinery .hspim-faq__list {
    border-top: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-faq details {
    border-bottom: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-faq summary {
    padding: 1.05rem 0;
    color: var(--hspim-navy);
    font-weight: 750;
    cursor: pointer;
}

.hsp-solution-page--industrial-machinery .hspim-faq details p {
    margin: 0;
    padding: 0 0 1.1rem;
    color: #4e6173;
    line-height: 1.65;
}

.hsp-solution-page--industrial-machinery .hspim-rfq {
    border-top: 1px solid var(--hspim-line);
}

.hsp-solution-page--industrial-machinery .hspim-rfq .htan-form-wrap--compact {
    border: 1px solid var(--hspim-line);
    border-radius: 4px;
    box-shadow: none;
}

@media (max-width: 1024px) {
    .hsp-solution-page--industrial-machinery .hspim-page .hspes-section,
    .hsp-solution-page--industrial-machinery .hspim-hero {
        padding-block: 48px;
    }

    .hsp-solution-page--industrial-machinery .hspim-priorities__grid,
    .hsp-solution-page--industrial-machinery .hspim-functions__grid,
    .hsp-solution-page--industrial-machinery .hspim-validation__grid,
    .hsp-solution-page--industrial-machinery .hspim-products__grid,
    .hsp-solution-page--industrial-machinery .hspim-resource-grid,
    .hsp-solution-page--industrial-machinery .hspim-process__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hsp-solution-page--industrial-machinery .hspim-configurator .hspim-access-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hsp-solution-page--industrial-machinery .hspim-process__grid li:nth-child(3) {
        border-left: 0;
        border-top: 1px solid var(--hspim-line);
    }

    .hsp-solution-page--industrial-machinery .hspim-process__grid li:nth-child(4) {
        border-top: 1px solid var(--hspim-line);
    }
}

@media (max-width: 768px) {
    .hsp-solution-page--industrial-machinery .hspim-configuration__content,
    .hsp-solution-page--industrial-machinery .hspim-manufacturing__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .hsp-solution-page--industrial-machinery .hspim-page .hspes-section,
    .hsp-solution-page--industrial-machinery .hspim-hero {
        padding-block: 38px;
    }

    .hsp-solution-page--industrial-machinery .hspim-page .hspes-container {
        width: min(100% - 2rem, 1180px);
    }

    .hsp-solution-page--industrial-machinery .hspim-hero h1 {
        font-size: clamp(36px, 10vw, 42px);
        line-height: 1.08;
        overflow-wrap: normal;
        word-break: normal;
    }

    .hsp-solution-page--industrial-machinery .hspim-hero .hspes-actions,
    .hsp-solution-page--industrial-machinery .hspim-manufacturing .hspes-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--industrial-machinery .hspim-priorities__grid,
    .hsp-solution-page--industrial-machinery .hspim-functions__grid,
    .hsp-solution-page--industrial-machinery .hspim-validation__grid,
    .hsp-solution-page--industrial-machinery .hspim-products__grid,
    .hsp-solution-page--industrial-machinery .hspim-resource-grid,
    .hsp-solution-page--industrial-machinery .hspim-process__grid,
    .hsp-solution-page--industrial-machinery .hspim-configurator .hspim-access-grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--industrial-machinery .hspim-configurator .hspes-environment-options {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .hsp-solution-page--industrial-machinery .hspim-configurator .hspes-environment-option {
        width: 100%;
    }

    .hsp-solution-page--industrial-machinery .hspim-selection table,
    .hsp-solution-page--industrial-machinery .hspim-selection tbody,
    .hsp-solution-page--industrial-machinery .hspim-selection tr,
    .hsp-solution-page--industrial-machinery .hspim-selection th,
    .hsp-solution-page--industrial-machinery .hspim-selection td {
        display: block;
        width: 100%;
    }

    .hsp-solution-page--industrial-machinery .hspim-selection thead {
        display: none;
    }

    .hsp-solution-page--industrial-machinery .hspim-selection tr {
        border: 1px solid var(--hspim-line);
        border-bottom: 0;
    }

    .hsp-solution-page--industrial-machinery .hspim-selection tr:last-child {
        border-bottom: 1px solid var(--hspim-line);
    }

    .hsp-solution-page--industrial-machinery .hspim-selection th,
    .hsp-solution-page--industrial-machinery .hspim-selection td {
        border: 0;
    }

    .hsp-solution-page--industrial-machinery .hspim-selection td::before {
        display: block;
        margin-bottom: 0.35rem;
        color: #6b7785;
        font-size: 0.76rem;
        font-weight: 700;
        text-transform: uppercase;
        content: attr(data-label);
    }

    .hsp-solution-page--industrial-machinery .hspim-process__grid li,
    .hsp-solution-page--industrial-machinery .hspim-process__grid li + li,
    .hsp-solution-page--industrial-machinery .hspim-process__grid li:nth-child(3),
    .hsp-solution-page--industrial-machinery .hspim-process__grid li:nth-child(4) {
        border: 0;
        border-bottom: 1px solid var(--hspim-line);
    }

    .hsp-solution-page--industrial-machinery .hspim-process__grid li:last-child {
        border-bottom: 0;
    }

    .hsp-solution-page--industrial-machinery .hspim-rfq .hspes-form-grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--industrial-machinery .hspim-rfq .htan-form-field-wide {
        grid-column: auto;
    }
}

.hspes-page {
    --hsp-ink: var(--wp--custom--hsp--dark, #111820);
    --hsp-dark: var(--wp--custom--hsp--dark-secondary, #24303b);
    --hsp-accent: var(--wp--custom--hsp--accent, #d92d32);
    --hsp-accent-hover: var(--wp--custom--hsp--accent-hover, #b91f25);
    --hsp-surface: var(--wp--custom--hsp--light, #f3f5f7);
    --hsp-surface-secondary: var(--wp--custom--hsp--medium, #e8ebef);
    --hsp-border: var(--wp--custom--hsp--border, #d6dbe1);
    --hsp-text: #151a1f;
    --hsp-muted: #5f6872;
    --hsp-white: #fff;
    width: 100%;
    max-width: none;
    margin: 0;
    overflow-x: clip;
    background: var(--hsp-white);
    color: var(--hsp-text);
}

.hspes-page *,
.hspes-page *::before,
.hspes-page *::after {
    box-sizing: border-box;
}

.hspes-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.hspes-narrow {
    max-width: 900px;
}

.hspes-breadcrumb-wrap {
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-breadcrumbs ol {
    display: flex;
    gap: 9px;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 14px 0;
    list-style: none;
    font-size: 14px;
}

.hspes-breadcrumbs li {
    display: flex;
    align-items: center;
}

.hspes-breadcrumbs li + li::before {
    content: "/";
    margin-right: 9px;
    color: #8b949d;
}

.hspes-breadcrumbs a {
    color: var(--hsp-dark);
    text-decoration: none;
}

.hspes-hero {
    padding: 62px 0 70px;
    background: linear-gradient(135deg, var(--hsp-surface) 0%, var(--hsp-white) 70%);
}

.hspes-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, .95fr);
    gap: 64px;
    align-items: center;
}

.hspes-hero h1 {
    max-width: 760px;
    margin: 0 0 24px;
    color: var(--hsp-ink);
    font-size: clamp(40px, 5vw, 64px);
    line-height: 1.04;
    letter-spacing: -.035em;
}

.hspes-hero__copy > p {
    max-width: 720px;
    margin: 0 0 15px;
    color: #3c4852;
    font-size: 18px;
    line-height: 1.68;
}

.hspes-note {
    padding-left: 16px;
    border-left: 3px solid var(--hsp-accent);
    color: #46525c;
    font-size: 16px;
    line-height: 1.62;
}

.hspes-hero__media {
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-surface-secondary);
}

.hspes-hero__image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
}

.hspes-actions {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 26px;
}

.hspes-btn {
    display: inline-flex;
    min-height: 46px;
    padding: 10px 18px;
    align-items: center;
    justify-content: center;
    border: 1px solid #aeb6bf;
    border-radius: 3px;
    background: var(--hsp-white);
    color: var(--hsp-ink);
    font-weight: 750;
    text-decoration: none;
    cursor: pointer;
}

.hspes-btn:hover,
.hspes-btn:focus-visible {
    border-color: var(--hsp-accent);
    color: var(--hsp-accent-hover);
}

.hspes-btn--primary {
    border-color: var(--hsp-accent);
    background: var(--hsp-accent);
    color: var(--hsp-white);
}

.hspes-btn--primary:hover,
.hspes-btn--primary:focus-visible {
    border-color: var(--hsp-accent-hover);
    background: var(--hsp-accent-hover);
    color: var(--hsp-white);
}

.hspes-section {
    padding: 72px 0;
}

.hspes-section--surface {
    background: var(--hsp-surface);
}

.hspes-section--dark {
    background: var(--hsp-ink);
    color: var(--hsp-white);
}

.hspes-section-head {
    max-width: 860px;
    margin: 0 0 32px;
}

.hspes-section-head h2 {
    margin: 0 0 13px;
    color: var(--hsp-ink);
    font-size: clamp(29px, 3.2vw, 42px);
    line-height: 1.14;
    letter-spacing: -.025em;
}

.hspes-section-head p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 17px;
    line-height: 1.65;
}

.hspes-section--dark .hspes-section-head h2,
.hspes-section--dark .hspes-section-head p {
    color: var(--hsp-white);
}

.hspes-cabinet-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.hspes-cabinet-card {
    border: 1px solid var(--hsp-border);
    background: var(--hsp-white);
    padding: 22px;
}

.hspes-cabinet-card a {
    display: inline-flex;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.hspes-cabinet-card[data-selected="true"] {
    box-shadow: inset 0 4px 0 var(--hsp-accent);
}

.hspes-cabinet-card figure {
    margin: 0 0 20px;
    overflow: hidden;
    background: var(--hsp-surface);
}

.hspes-cabinet-card img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
}

.hspes-cabinet-card h3 {
    margin: 0 0 10px;
    color: var(--hsp-ink);
    font-size: 22px;
}

.hspes-cabinet-card p {
    margin: 0 0 16px;
    color: var(--hsp-muted);
    line-height: 1.58;
}

.hspes-cabinet-card span,
.hspes-family-fallback a {
    color: var(--hsp-accent);
    font-weight: 750;
}

.hspes-environment-options {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.hspes-environment-option,
.hspes-product-tabs button {
    display: inline-flex;
    min-height: 44px;
    padding: 9px 15px;
    align-items: center;
    border: 1px solid #aeb6bf;
    background: var(--hsp-white);
    color: var(--hsp-dark);
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.hspes-environment-option.is-active,
.hspes-product-tabs button.is-active {
    border-color: var(--hsp-accent);
    background: var(--hsp-accent);
    color: var(--hsp-white);
}

.hspes-environment-panels {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 24px;
}

.hspes-environment-panel {
    padding: 22px;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-environment-panel h3 {
    margin: 0 0 8px;
    color: var(--hsp-ink);
    font-size: 19px;
}

.hspes-environment-panel p {
    margin: 0;
    color: var(--hsp-muted);
    line-height: 1.6;
}

.hspes-page.is-enhanced .hspes-environment-panel:not(.is-active),
.hspes-page.is-enhanced .hspes-configuration:not(.is-active),
.hspes-page.is-enhanced .hspes-hotspot-panel:not(.is-active),
.hspes-page.is-enhanced .hspes-product-group:not(.is-active) {
    display: none;
}

.hspes-configuration {
    scroll-margin-top: 110px;
    padding: 30px;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-configuration + .hspes-configuration {
    margin-top: 22px;
}

.hspes-configuration > header {
    max-width: 760px;
    margin-bottom: 26px;
}

.hspes-configuration > header h3 {
    margin: 0 0 9px;
    color: var(--hsp-ink);
    font-size: 26px;
}

.hspes-configuration > header p {
    margin: 0;
    color: var(--hsp-muted);
    line-height: 1.62;
}

.hspes-configuration__groups {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--hsp-border);
    border-left: 1px solid var(--hsp-border);
}

.hspes-configuration__groups article {
    padding: 22px;
    border-right: 1px solid var(--hsp-border);
    border-bottom: 1px solid var(--hsp-border);
}

.hspes-configuration__groups h3,
.hspes-related-grid h3 {
    margin: 0 0 13px;
    color: var(--hsp-ink);
    font-size: 18px;
}

.hspes-configuration__groups ul,
.hspes-hotspot-panel ul,
.hspes-related-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hspes-configuration__groups li + li,
.hspes-hotspot-panel li + li,
.hspes-related-grid li + li {
    margin-top: 9px;
}

.hspes-configuration__groups a,
.hspes-hotspot-panel a,
.hspes-related-grid a {
    color: var(--hsp-accent);
    font-weight: 650;
    text-decoration: none;
}

.hspes-hotspot-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(300px, 1fr);
    gap: 34px;
    align-items: start;
}

.hspes-hotspot-map {
    position: relative;
    min-width: 0;
    background: var(--hsp-dark);
}

.hspes-hotspot-map > img {
    display: block;
    width: 100%;
    height: auto;
}

.hspes-hotspot {
    position: absolute;
    display: flex;
    min-width: 44px;
    min-height: 44px;
    padding: 9px 12px;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--hsp-white);
    border-radius: 3px;
    background: var(--hsp-accent);
    color: var(--hsp-white);
    font: inherit;
    font-size: 14px;
    font-weight: 750;
    cursor: pointer;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .28);
}

.hspes-hotspot--bisagras { left: 12%; top: 32%; }
.hspes-hotspot--cierre { right: 12%; top: 48%; }
.hspes-hotspot--manija { right: 22%; top: 30%; }
.hspes-hotspot--mantenimiento { left: 29%; bottom: 12%; }

.hspes-hotspot.is-active {
    outline: 4px solid rgba(255, 255, 255, .48);
}

.hspes-hotspot-panel {
    padding: 26px;
    border: 1px solid #46515c;
    background: var(--hsp-dark);
}

.hspes-hotspot-panel + .hspes-hotspot-panel {
    margin-top: 18px;
}

.hspes-hotspot-panel h3 {
    margin: 0 0 11px;
    color: var(--hsp-white);
    font-size: 24px;
}

.hspes-hotspot-panel p {
    margin: 0 0 20px;
    color: #e4e8ec;
    line-height: 1.62;
}

.hspes-hotspot-panel a {
    color: #ff7d80;
}

.hspes-family-fallback {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.hspes-family-fallback article {
    padding: 24px;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-family-fallback h3 {
    margin: 0 0 16px;
    color: var(--hsp-ink);
    font-size: 20px;
}

.hspes-product-tabs {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.hspes-product-group > h3 {
    margin: 0 0 20px;
    color: var(--hsp-ink);
    font-size: 24px;
}

.hspes-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.hsp-solution-product-card a {
    display: block;
    color: inherit;
    text-decoration: none;
}

.hsp-solution-product-card__media {
    margin: 0 0 14px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: var(--hsp-surface);
}

.hsp-solution-product-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .2s ease;
}

.hsp-solution-product-card a:hover img,
.hsp-solution-product-card a:focus-visible img {
    transform: scale(1.025);
}

.hsp-solution-product-card__category {
    margin: 0 0 6px;
    color: var(--hsp-muted);
    font-size: 14px;
    font-weight: 650;
}

.hsp-solution-product-card__title {
    display: -webkit-box;
    min-height: 2.8em;
    margin: 0;
    overflow: hidden;
    color: var(--hsp-ink);
    font-size: 18px;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hspes-related-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border-top: 1px solid var(--hsp-border);
    border-left: 1px solid var(--hsp-border);
}

.hspes-related-grid > section {
    padding: 22px;
    border-right: 1px solid var(--hsp-border);
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-table-wrap {
    overflow-x: auto;
}

.hspes-selection-table {
    width: 100%;
    border-collapse: collapse;
}

.hspes-selection-table th,
.hspes-selection-table td {
    padding: 16px 18px;
    border: 1px solid var(--hsp-border);
    text-align: left;
    vertical-align: top;
}

.hspes-selection-table thead th {
    background: var(--hsp-ink);
    color: var(--hsp-white);
}

.hspes-selection-table tbody th {
    width: 42%;
    background: var(--hsp-surface);
    color: var(--hsp-ink);
}

.hspes-selection-table td {
    color: var(--hsp-muted);
    line-height: 1.55;
}

.hspes-validation-grid,
.hspes-process {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--hsp-border);
    border-left: 1px solid var(--hsp-border);
    list-style-position: inside;
}

.hspes-validation-grid article,
.hspes-process li {
    padding: 24px;
    border-right: 1px solid var(--hsp-border);
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-validation-grid h3,
.hspes-process h3 {
    margin: 0 0 10px;
    color: var(--hsp-ink);
    font-size: 19px;
}

.hspes-process h3 {
    display: inline;
    margin-left: 4px;
}

.hspes-validation-grid p,
.hspes-process p {
    margin: 12px 0 0;
    color: var(--hsp-muted);
    line-height: 1.58;
}

.hspes-manufacturing > .hspes-container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 48px;
    align-items: center;
}

.hspes-manufacturing > .hspes-container:has(.hspes-manufacturing__copy:only-child) {
    grid-template-columns: 1fr;
}

.hspes-manufacturing__copy {
    max-width: 760px;
}

.hspes-manufacturing__copy > p,
.hspes-manufacturing__copy li {
    color: #e3e7ea;
    line-height: 1.65;
}

.hspes-manufacturing__copy ul {
    margin: 22px 0 0;
    padding-left: 20px;
}

.hspes-evidence-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.hspes-evidence-grid figure {
    margin: 0;
    overflow: hidden;
    background: var(--hsp-dark);
}

.hspes-evidence-grid figure:first-child:last-child,
.hspes-evidence-grid figure:nth-child(3) {
    grid-column: 1 / -1;
}

.hspes-evidence-grid img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 210px;
    object-fit: cover;
}

.hspes-faq details {
    border-top: 1px solid var(--hsp-border);
}

.hspes-faq details:last-child {
    border-bottom: 1px solid var(--hsp-border);
}

.hspes-faq summary {
    padding: 20px 42px 20px 0;
    color: var(--hsp-ink);
    font-size: 18px;
    font-weight: 750;
    cursor: pointer;
}

.hspes-faq details > div {
    padding: 0 0 22px;
}

.hspes-faq p {
    margin: 0;
    color: var(--hsp-muted);
    line-height: 1.65;
}

.hspes-technical-review {
    padding: 20px 0;
    border-block: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hspes-technical-review .hspes-container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.hspes-technical-review p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 15px;
}

.hspes-rfq {
    background: var(--hsp-dark);
    color: var(--hsp-white);
}

.hspes-rfq .hspes-section-head h2,
.hspes-rfq .hspes-section-head p {
    color: var(--hsp-white);
}

.hspes-rfq .htan-form-wrap--compact {
    padding: 28px;
    background: var(--hsp-white);
    color: var(--hsp-text);
}

.hspes-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.hspes-rfq .htan-form-field {
    display: grid;
    gap: 7px;
}

.hspes-rfq .htan-form-field-wide {
    grid-column: 1 / -1;
}

.hspes-rfq input:not([type="checkbox"]),
.hspes-rfq textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #aeb6bf;
    background: var(--hsp-white);
    color: var(--hsp-text);
    font: inherit;
}

.hspes-rfq textarea {
    resize: vertical;
}

.hspes-rfq .htan-consent {
    display: block;
}

.hspes-rfq .htan-consent label {
    display: flex;
    gap: 9px;
    align-items: flex-start;
}

.hspes-rfq .htan-consent input {
    margin-top: 5px;
}

.hspes-rfq .htan-consent a {
    color: var(--hsp-accent);
}

.hspes-page :focus-visible {
    outline: 3px solid rgba(217, 45, 50, .38);
    outline-offset: 3px;
}

.hspes-page .htan-honeypot {
    position: absolute !important;
    left: -10000px !important;
}

@media (max-width: 980px) {
    .hspes-hero__grid {
        grid-template-columns: 1fr 1fr;
        gap: 34px;
    }

    .hspes-configuration__groups,
    .hspes-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hspes-hotspot-layout,
    .hspes-manufacturing > .hspes-container {
        grid-template-columns: 1fr;
    }

    .hspes-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hspes-validation-grid,
    .hspes-process {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .hspes-container {
        width: min(100% - 28px, 1180px);
    }

    .hspes-hero {
        padding: 40px 0 48px;
    }

    .hspes-hero__grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .hspes-hero h1 {
        font-size: 40px;
    }

    .hspes-section {
        padding: 54px 0;
    }

    .hspes-actions,
    .hspes-technical-review .hspes-container {
        align-items: flex-start;
        flex-direction: column;
    }

    .hspes-actions .hspes-btn {
        width: 100%;
    }

    .hspes-cabinet-grid,
    .hspes-environment-panels,
    .hspes-configuration__groups,
    .hspes-related-grid,
    .hspes-validation-grid,
    .hspes-process,
    .hspes-family-fallback {
        grid-template-columns: 1fr;
    }

    .hspes-environment-options,
    .hspes-product-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 5px;
    }

    .hspes-environment-option,
    .hspes-product-tabs button {
        flex: 0 0 auto;
    }

    .hspes-configuration {
        padding: 22px;
    }

    .hspes-hotspot {
        padding: 7px 9px;
        font-size: 12px;
    }

    .hspes-selection-table,
    .hspes-selection-table tbody,
    .hspes-selection-table tr,
    .hspes-selection-table th,
    .hspes-selection-table td {
        display: block;
        width: 100%;
    }

    .hspes-selection-table thead {
        display: none;
    }

    .hspes-selection-table tr {
        margin-bottom: 14px;
        border: 1px solid var(--hsp-border);
    }

    .hspes-selection-table th,
    .hspes-selection-table td {
        border: 0;
    }

    .hspes-selection-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 7px;
        color: var(--hsp-ink);
        font-weight: 750;
    }

    .hspes-form-grid {
        grid-template-columns: 1fr;
    }

    .hspes-rfq .htan-form-field-wide {
        grid-column: auto;
    }

    .hspes-rfq .htan-form-wrap--compact {
        padding: 20px;
    }
}

@media (max-width: 480px) {
    .hspes-product-grid,
    .hspes-evidence-grid {
        grid-template-columns: 1fr;
    }

    .hspes-evidence-grid figure {
        grid-column: auto !important;
    }
}

/* Electrical cabinet visual-alignment patch, v1.0.3. */
.hspes-configurator {
    background: var(--hsp-white);
}

.hspes-cabinet-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.hspes-cabinet-card__action {
    margin-top: auto;
    padding-top: 4px;
}

.hspes-cabinet-card__action button {
    min-height: 44px;
    padding: 8px 0;
    border: 0;
    background: transparent;
    color: var(--hsp-accent);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}

.hspes-cabinet-card__action button:hover,
.hspes-cabinet-card__action button:focus-visible {
    color: var(--hsp-accent-hover);
}

.hspes-environment-row {
    display: flex;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
    margin: 26px 0 18px;
    padding: 16px 18px;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hspes-environment-row > strong {
    color: var(--hsp-ink);
    font-size: 17px;
}

.hspes-environment-row .hspes-environment-options {
    margin: 0;
}

.hspes-configurator__results {
    background: #24303b;
}

.hspes-configuration {
    padding: 30px;
    border: 0;
    background: #24303b;
    color: var(--hsp-white);
}

.hspes-configuration + .hspes-configuration {
    margin-top: 1px;
}

.hspes-configuration > header {
    display: flex;
    max-width: none;
    gap: 24px;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}

.hspes-configuration > header h3 {
    color: var(--hsp-white);
}

.hspes-configuration > header p {
    max-width: 720px;
    color: #dce2e7;
}

.hspes-configuration__status {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.hspes-configuration__status span {
    display: inline-flex;
    min-height: 32px;
    padding: 5px 10px;
    align-items: center;
    border: 1px solid #697681;
    border-radius: 999px;
    background: #172029;
    color: var(--hsp-white);
    font-size: 13px;
    font-weight: 750;
}

.hspes-configuration__status span:last-child {
    border-color: var(--hsp-accent);
    background: var(--hsp-accent);
}

.hspes-configuration__groups {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border-color: #4c5964;
}

.hspes-configuration__groups article {
    border-color: #4c5964;
    background: #2d3a46;
}

.hspes-configuration__groups h4 {
    margin: 0 0 13px;
    color: var(--hsp-white);
    font-size: 17px;
}

.hspes-configuration__groups a {
    color: #ff8588;
}

.hspes-configuration__environment {
    margin-top: 18px;
}

.hspes-configuration__environment-copy {
    margin: 0;
    color: #dce2e7;
    line-height: 1.6;
}

.hspes-configuration__environment-copy + .hspes-configuration__environment-copy {
    margin-top: 10px;
}

.hspes-page.is-enhanced .hspes-configuration__environment-copy:not(.is-active),
.hspes-page.is-enhanced .hspes-configuration__environment-group:not(.is-active) {
    display: none;
}

.hspes-hotspots-section {
    background: #f3f5f7;
}

.hspes-hotspot-layout {
    grid-template-columns: minmax(0, 1.86fr) minmax(310px, 1fr);
    gap: 0;
    overflow: hidden;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-white);
}

.hspes-hotspot-map {
    background: var(--hsp-white);
}

.hspes-hotspot-panels {
    min-height: 100%;
    padding: 30px;
    background: #24303b;
}

.hspes-hotspot {
    border-color: var(--hsp-white);
    background: #24303b;
}

.hspes-hotspot.is-active {
    background: var(--hsp-accent);
    outline-color: rgba(217, 45, 50, .28);
}

.hspes-hotspot-panel {
    padding: 0;
    border: 0;
    background: transparent;
}

.hspes-hotspot-panel + .hspes-hotspot-panel {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #4c5964;
}

.hspes-family-fallback {
    gap: 22px;
}

.hspes-family-fallback article {
    min-width: 0;
    padding: 0;
    overflow: hidden;
}

.hspes-family-card > a {
    display: flex;
    height: 100%;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
}

.hspes-family-card figure {
    margin: 0;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: var(--hsp-surface);
}

.hspes-family-card figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .2s ease;
}

.hspes-family-card__body {
    display: flex;
    height: 100%;
    padding: 20px;
    flex-direction: column;
}

.hspes-family-fallback .hspes-family-card h3 {
    margin: 0 0 10px;
}

.hspes-family-card p {
    margin: 0;
    color: var(--hsp-muted);
    line-height: 1.55;
}

.hspes-family-card__action {
    margin-top: auto;
    padding-top: 18px;
}

.hspes-family-card:hover figure img,
.hspes-family-card > a:focus-visible figure img {
    transform: scale(1.025);
}

.hspes-related-band {
    padding: 30px 0;
    border-top: 1px solid var(--hsp-border);
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hspes-related-band h2 {
    margin: 0 0 18px;
    color: var(--hsp-ink);
    font-size: 24px;
}

.hspes-related-grid {
    display: flex;
    gap: 14px 26px;
    flex-wrap: wrap;
    border: 0;
}

.hspes-related-grid > div {
    display: flex;
    gap: 9px;
    align-items: baseline;
}

.hspes-related-grid > div > strong {
    color: var(--hsp-ink);
    white-space: nowrap;
}

.hspes-related-grid ul {
    display: flex;
    gap: 7px 14px;
    flex-wrap: wrap;
}

.hspes-related-grid li + li {
    margin: 0;
}

.hspes-related-grid li + li::before {
    content: "·";
    margin-right: 14px;
    color: #9aa4ad;
}

.hspes-validation-grid article {
    position: relative;
}

.hspes-validation-icon {
    display: inline-flex;
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    align-items: center;
    justify-content: center;
    border: 1px solid #c9d0d6;
    border-radius: 50%;
    color: var(--hsp-accent);
}

.hspes-process {
    position: relative;
    gap: 0;
    border: 0;
    counter-reset: none;
    list-style: none;
}

.hspes-process::before {
    content: "";
    position: absolute;
    top: 15px;
    right: 12.5%;
    left: 12.5%;
    height: 2px;
    background: var(--hsp-border);
}

.hspes-process li {
    position: relative;
    padding: 42px 24px 0;
    border: 0;
    background: transparent;
}

.hspes-process li::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 50%;
    width: 16px;
    height: 16px;
    transform: translateX(-50%);
    border: 4px solid var(--hsp-white);
    border-radius: 50%;
    background: var(--hsp-accent);
    box-shadow: 0 0 0 1px var(--hsp-accent);
}

.hspes-process h3 {
    display: block;
    margin: 0 0 8px;
    text-align: center;
}

.hspes-process p {
    margin-top: 0;
    text-align: center;
}

.hspes-manufacturing > .hspes-container {
    gap: 0;
    align-items: stretch;
}

.hspes-manufacturing__copy {
    max-width: none;
    padding: clamp(30px, 5vw, 58px);
    background: #24303b;
}

.hspes-manufacturing__copy .hspes-section-head h2,
.hspes-manufacturing__copy > p,
.hspes-manufacturing__copy li {
    color: var(--hsp-white);
}

.hspes-evidence-grid {
    min-height: 100%;
    background: var(--hsp-white);
}

.hspes-evidence-grid figure {
    position: relative;
    background: var(--hsp-white);
}

.hspes-evidence-grid figcaption {
    position: absolute;
    right: 16px;
    bottom: 14px;
    left: 16px;
    padding: 8px 10px;
    background: rgba(17, 24, 32, .86);
    color: var(--hsp-white);
    font-size: 12px;
    line-height: 1.4;
}

.hspes-evidence-placeholder img {
    object-fit: contain;
}

.hspes-technical-review {
    padding: 20px 0;
    border-top: 1px solid var(--hsp-border);
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hspes-technical-review .hspes-container {
    display: flex;
    gap: 10px 24px;
    align-items: center;
    justify-content: space-between;
}

.hspes-technical-review p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 14px;
}

.hspes-technical-review a {
    color: var(--hsp-accent);
    font-weight: 700;
}

@media (max-width: 980px) {
    .hspes-configuration__groups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hspes-family-fallback {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hspes-hotspot-layout {
        grid-template-columns: minmax(0, 1.6fr) minmax(290px, 1fr);
    }
}

@media (max-width: 760px) {
    .hspes-environment-row,
    .hspes-configuration > header {
        align-items: flex-start;
        flex-direction: column;
    }

    .hspes-configuration__status {
        justify-content: flex-start;
    }

    .hspes-hotspot-layout,
    .hspes-manufacturing > .hspes-container {
        grid-template-columns: 1fr;
    }

    .hspes-related-grid,
    .hspes-related-grid > div {
        align-items: flex-start;
        flex-direction: column;
    }

    .hspes-process {
        grid-template-columns: 1fr;
    }

    .hspes-process::before {
        top: 8px;
        bottom: 8px;
        left: 8px;
        width: 2px;
        height: auto;
    }

    .hspes-process li {
        padding: 0 0 28px 38px;
    }

    .hspes-process li::before {
        top: 2px;
        left: 8px;
    }

    .hspes-process h3,
    .hspes-process p {
        text-align: left;
    }
}

@media (max-width: 560px) {
    .hspes-family-fallback,
    .hspes-configuration__groups {
        grid-template-columns: 1fr;
    }

    .hspes-environment-row {
        padding: 14px;
    }

    .hspes-configuration,
    .hspes-hotspot-panels {
        padding: 22px;
    }
}

/* Control cabinet solution variant. Keep every rule within its page body class. */
.hsp-solution-page--control-cabinets .hspcc-page {
    --hsp-ink: #082f55;
    --hsp-dark: #163a5f;
    --hsp-accent: #e76f21;
    --hsp-accent-hover: #c95812;
    --hsp-surface: #f5f7f9;
    --hsp-surface-secondary: #eaf0f4;
    --hsp-border: #d5dee6;
    --hsp-text: #1b2732;
    --hsp-muted: #596a78;
}

.hsp-solution-page--control-cabinets .hspcc-page a:focus-visible,
.hsp-solution-page--control-cabinets .hspcc-page button:focus-visible,
.hsp-solution-page--control-cabinets .hspcc-page input:focus-visible,
.hsp-solution-page--control-cabinets .hspcc-page textarea:focus-visible,
.hsp-solution-page--control-cabinets .hspcc-page summary:focus-visible {
    outline: 3px solid rgba(231, 111, 33, .42);
    outline-offset: 3px;
}

.hsp-solution-page--control-cabinets .hspcc-page .hspes-section {
    padding-block: 64px;
}

.hsp-solution-page--control-cabinets .hspcc-page .hspes-section-head {
    margin-bottom: 28px;
}

.hsp-solution-page--control-cabinets .hspcc-page .hspes-section-head h2 {
    font-size: clamp(28px, 3vw, 39px);
}

.hsp-solution-page--control-cabinets .hspcc-hero {
    padding-block: 56px 62px;
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(430px, .92fr);
    gap: 54px;
}

.hsp-solution-page--control-cabinets .hspcc-hero h1 {
    margin-bottom: 20px;
    color: var(--hsp-ink);
    font-size: clamp(40px, 4.5vw, 60px);
}

.hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__media {
    overflow: visible;
    border: 0;
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__image {
    aspect-ratio: 60 / 41;
    object-fit: contain;
}

.hsp-solution-page--control-cabinets .hspcc-measurements {
    border-block: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hsp-solution-page--control-cabinets .hspcc-measurements__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-block: 1px solid var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-measurements__grid article {
    min-width: 0;
    padding: 20px 22px;
    border-left: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-measurements__grid article:first-child {
    border-left: 0;
}

.hsp-solution-page--control-cabinets .hspcc-measurements__grid h3 {
    margin: 0 0 8px;
    color: var(--hsp-ink);
    font-size: 18px;
    line-height: 1.3;
}

.hsp-solution-page--control-cabinets .hspcc-measurements__grid p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 15px;
    line-height: 1.55;
}

.hsp-solution-page--control-cabinets .hspcc-configurator {
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-configurator .hspes-cabinet-grid {
    gap: 18px;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card {
    display: flex;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card[data-selected="true"] {
    border-color: var(--hsp-accent);
    box-shadow: none;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card figure {
    margin: 0;
    padding: 14px;
    border-bottom: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hsp-solution-page--control-cabinets .hspcc-zone-card img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 18 / 13;
    object-fit: contain;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card h3,
.hsp-solution-page--control-cabinets .hspcc-zone-card > p,
.hsp-solution-page--control-cabinets .hspcc-zone-card > button {
    margin-inline: 20px;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card h3 {
    margin-top: 19px;
    margin-bottom: 8px;
    color: var(--hsp-ink);
    font-size: 20px;
    line-height: 1.3;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card > p {
    margin-top: 0;
    margin-bottom: 10px;
    color: var(--hsp-muted);
    font-size: 15px;
    line-height: 1.55;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card .hspcc-zone-card__decision {
    color: #3c4d5b;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card > button {
    min-height: 44px;
    margin-top: auto;
    margin-bottom: 18px;
    padding: 8px 0;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: var(--hsp-accent);
    font: inherit;
    font-weight: 800;
    text-align: left;
    cursor: pointer;
}

.hsp-solution-page--control-cabinets .hspcc-zone-card > button:hover,
.hsp-solution-page--control-cabinets .hspcc-zone-card > button[aria-pressed="true"] {
    border-bottom-color: var(--hsp-accent);
    color: var(--hsp-accent-hover);
}

.hsp-solution-page--control-cabinets .hspcc-configurator .hspes-environment-row {
    margin-top: 22px;
    background: var(--hsp-surface);
}

.hsp-solution-page--control-cabinets .hspcc-configurator .hspes-environment-option {
    border-radius: 2px;
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-configurator .hspes-environment-option.is-active {
    border-color: var(--hsp-accent);
    background: var(--hsp-accent);
    color: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-configurations {
    border: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-configuration {
    padding: 26px 28px;
    border: 0;
    background: #fff;
    color: var(--hsp-text);
}

.hsp-solution-page--control-cabinets .hspcc-configuration + .hspcc-configuration {
    margin-top: 0;
    border-top: 1px solid var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-configuration > header h3 {
    color: var(--hsp-ink);
}

.hsp-solution-page--control-cabinets .hspcc-configuration > header p {
    color: var(--hsp-muted);
}

.hsp-solution-page--control-cabinets .hspcc-configuration .hspes-configuration__status span {
    border-color: var(--hsp-border);
    border-radius: 2px;
    background: var(--hsp-surface);
    color: var(--hsp-dark);
}

.hsp-solution-page--control-cabinets .hspcc-configuration .hspes-configuration__status strong {
    color: var(--hsp-accent-hover);
}

.hsp-solution-page--control-cabinets .hspcc-configuration__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr);
    gap: 36px;
}

.hsp-solution-page--control-cabinets .hspcc-configuration__content h4 {
    margin: 0 0 12px;
    color: var(--hsp-ink);
    font-size: 17px;
}

.hsp-solution-page--control-cabinets .hspcc-configuration__content ul {
    display: flex;
    gap: 8px 18px;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hsp-solution-page--control-cabinets .hspcc-configuration__content a,
.hsp-solution-page--control-cabinets .hspcc-function-card a {
    color: var(--hsp-dark);
    font-weight: 700;
    text-decoration: none;
}

.hsp-solution-page--control-cabinets .hspcc-configuration__content a:hover,
.hsp-solution-page--control-cabinets .hspcc-function-card a:hover {
    color: var(--hsp-accent-hover);
    text-decoration: underline;
}

.hsp-solution-page--control-cabinets .hspcc-material-tip {
    padding-left: 24px;
    border-left: 3px solid var(--hsp-accent);
}

.hsp-solution-page--control-cabinets .hspcc-material-tip p {
    margin: 0;
    color: var(--hsp-muted);
    line-height: 1.6;
}

.hsp-solution-page--control-cabinets .hspcc-functions {
    border-top: 1px solid var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-functions__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.hsp-solution-page--control-cabinets .hspcc-function-card {
    min-width: 0;
    padding: 22px;
    border: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-function-card h3 {
    margin: 0 0 10px;
    color: var(--hsp-ink);
    font-size: 20px;
}

.hsp-solution-page--control-cabinets .hspcc-function-card p {
    margin: 0 0 15px;
    color: var(--hsp-muted);
    font-size: 15px;
    line-height: 1.55;
}

.hsp-solution-page--control-cabinets .hspcc-function-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hsp-solution-page--control-cabinets .hspcc-function-card li + li {
    margin-top: 8px;
}

.hsp-solution-page--control-cabinets .hspcc-function-card a {
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.hsp-solution-page--control-cabinets .hspcc-products__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.hsp-solution-page--control-cabinets .hspcc-products .hsp-solution-product-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-products .hsp-solution-product-card a {
    display: flex;
    height: 100%;
    color: var(--hsp-ink);
    flex-direction: column;
    text-decoration: none;
}

.hsp-solution-page--control-cabinets .hspcc-products figure {
    margin: 0;
    aspect-ratio: 4 / 3;
    border-bottom: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-products img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hsp-solution-page--control-cabinets .hspcc-products h3 {
    margin: 0;
    padding: 17px 18px 19px;
    font-size: 17px;
    line-height: 1.42;
}

.hsp-solution-page--control-cabinets .hspcc-related {
    background: var(--hsp-surface);
}

.hsp-solution-page--control-cabinets .hspcc-resource-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.hsp-solution-page--control-cabinets .hspcc-resource-link {
    display: flex;
    min-height: 70px;
    min-width: 0;
    padding: 18px 20px;
    align-items: center;
    border: 1px solid var(--hsp-border);
    border-radius: 3px;
    background: #fff;
    color: var(--hsp-dark);
    font-weight: 750;
    line-height: 1.35;
    text-align: left;
    text-decoration: none;
}

.hsp-solution-page--control-cabinets .hspcc-resource-link:hover,
.hsp-solution-page--control-cabinets .hspcc-resource-link:focus-visible {
    border-color: var(--hsp-accent);
    color: var(--hsp-accent-hover);
    text-decoration: underline;
}

.hsp-solution-page--control-cabinets .hspcc-selection table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--hsp-border);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-selection th,
.hsp-solution-page--control-cabinets .hspcc-selection td {
    padding: 15px 18px;
    border-bottom: 1px solid var(--hsp-border);
    text-align: left;
    vertical-align: top;
    line-height: 1.5;
}

.hsp-solution-page--control-cabinets .hspcc-selection thead th {
    background: var(--hsp-ink);
    color: #fff;
    font-size: 15px;
}

.hsp-solution-page--control-cabinets .hspcc-selection tbody th {
    width: 34%;
    color: var(--hsp-ink);
    font-size: 16px;
}

.hsp-solution-page--control-cabinets .hspcc-selection tbody td {
    color: var(--hsp-muted);
}

.hsp-solution-page--control-cabinets .hspcc-validation__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    border: 1px solid var(--hsp-border);
    background: var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-validation__grid article {
    min-width: 0;
    padding: 23px;
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-validation__grid h3 {
    margin: 0 0 9px;
    color: var(--hsp-ink);
    font-size: 19px;
}

.hsp-solution-page--control-cabinets .hspcc-validation__grid p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 15px;
    line-height: 1.55;
}

.hsp-solution-page--control-cabinets .hspcc-validation > .hspes-container > .hspes-note {
    max-width: 920px;
    margin: 24px 0 0;
}

.hsp-solution-page--control-cabinets .hspcc-process__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hsp-solution-page--control-cabinets .hspcc-process__grid li {
    min-width: 0;
    padding: 0 24px 0 0;
    background: transparent;
}

.hsp-solution-page--control-cabinets .hspcc-process__grid li + li {
    padding-left: 24px;
    border-left: 1px solid var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-process__grid span {
    display: inline-flex;
    width: 38px;
    height: 38px;
    margin-bottom: 14px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--hsp-accent);
    color: var(--hsp-accent-hover);
    font-weight: 800;
}

.hsp-solution-page--control-cabinets .hspcc-process__grid h3 {
    margin: 0 0 8px;
    color: var(--hsp-ink);
    font-size: 19px;
}

.hsp-solution-page--control-cabinets .hspcc-process__grid p {
    margin: 0;
    color: var(--hsp-muted);
    font-size: 15px;
    line-height: 1.55;
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing {
    border-block: 1px solid var(--hsp-border);
    background: var(--hsp-surface);
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, .6fr);
    gap: 52px;
    align-items: start;
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid p,
.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid li {
    color: var(--hsp-muted);
    font-size: 16px;
    line-height: 1.65;
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid aside {
    padding: 22px;
    border: 1px solid var(--hsp-border);
    border-left: 4px solid var(--hsp-accent);
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid aside p {
    margin: 0;
    color: var(--hsp-dark);
}

.hsp-solution-page--control-cabinets .hspcc-manufacturing__grid aside a {
    color: var(--hsp-accent-hover);
    font-weight: 750;
}

.hsp-solution-page--control-cabinets .hspcc-faq__list {
    border-top: 1px solid var(--hsp-border);
}

.hsp-solution-page--control-cabinets .hspcc-faq details {
    border-bottom: 1px solid var(--hsp-border);
    background: transparent;
}

.hsp-solution-page--control-cabinets .hspcc-faq summary {
    padding: 19px 34px 19px 0;
    color: var(--hsp-ink);
    font-size: 17px;
    font-weight: 750;
    cursor: pointer;
}

.hsp-solution-page--control-cabinets .hspcc-faq details p {
    margin: 0;
    padding: 0 34px 20px 0;
    color: var(--hsp-muted);
    line-height: 1.65;
}

.hsp-solution-page--control-cabinets .hspcc-rfq {
    background: var(--hsp-ink);
}

.hsp-solution-page--control-cabinets .hspcc-rfq .htan-form-wrap--compact {
    border: 1px solid #45627a;
    border-radius: 2px;
    background: #fff;
}

.hsp-solution-page--control-cabinets .hspcc-rfq input:not([type="checkbox"]),
.hsp-solution-page--control-cabinets .hspcc-rfq textarea {
    border-radius: 2px;
}

@media (max-width: 1024px) {
    .hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(350px, .85fr);
        gap: 36px;
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid,
    .hsp-solution-page--control-cabinets .hspcc-functions__grid,
    .hsp-solution-page--control-cabinets .hspcc-products__grid,
    .hsp-solution-page--control-cabinets .hspcc-validation__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid article:nth-child(3) {
        border-left: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid article:nth-child(n + 3) {
        border-top: 1px solid var(--hsp-border);
    }

    .hsp-solution-page--control-cabinets .hspcc-resource-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .hsp-solution-page--control-cabinets .hspcc-page .hspes-container {
        width: min(100% - 32px, 1180px);
    }

    .hsp-solution-page--control-cabinets .hspcc-page .hspes-section {
        padding-block: 52px;
    }

    .hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__media {
        max-width: 620px;
    }

    .hsp-solution-page--control-cabinets .hspcc-configurator .hspes-cabinet-grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--control-cabinets .hspcc-zone-card {
        display: grid;
        grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
        grid-template-rows: auto auto 1fr auto;
    }

    .hsp-solution-page--control-cabinets .hspcc-zone-card figure {
        grid-row: 1 / 5;
        border-right: 1px solid var(--hsp-border);
        border-bottom: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-zone-card > button {
        margin-top: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-configuration__content,
    .hsp-solution-page--control-cabinets .hspcc-manufacturing__grid {
        grid-template-columns: 1fr;
        gap: 26px;
    }

    .hsp-solution-page--control-cabinets .hspcc-material-tip {
        padding-top: 18px;
        padding-left: 0;
        border-top: 3px solid var(--hsp-accent);
        border-left: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-process__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-process__grid li:nth-child(3) {
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 560px) {
    .hsp-solution-page--control-cabinets .hspcc-page .hspes-container {
        width: min(100% - 28px, 1180px);
    }

    .hsp-solution-page--control-cabinets .hspcc-hero {
        padding-block: 42px 48px;
    }

    .hsp-solution-page--control-cabinets .hspcc-hero h1 {
        font-size: clamp(34px, 10.4vw, 44px);
        line-height: 1.08;
    }

    .hsp-solution-page--control-cabinets .hspcc-hero .hspes-hero__copy > p {
        font-size: 17px;
    }

    .hsp-solution-page--control-cabinets .hspcc-hero .hspes-actions,
    .hsp-solution-page--control-cabinets .hspcc-manufacturing .hspes-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid,
    .hsp-solution-page--control-cabinets .hspcc-functions__grid,
    .hsp-solution-page--control-cabinets .hspcc-products__grid,
    .hsp-solution-page--control-cabinets .hspcc-resource-grid,
    .hsp-solution-page--control-cabinets .hspcc-validation__grid,
    .hsp-solution-page--control-cabinets .hspcc-process__grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid article {
        border-top: 1px solid var(--hsp-border);
        border-left: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-measurements__grid article:first-child {
        border-top: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-zone-card {
        display: flex;
    }

    .hsp-solution-page--control-cabinets .hspcc-zone-card figure {
        border-right: 0;
        border-bottom: 1px solid var(--hsp-border);
    }

    .hsp-solution-page--control-cabinets .hspcc-configurator .hspes-environment-options {
        display: grid;
        width: 100%;
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--control-cabinets .hspcc-configurator .hspes-environment-option {
        width: 100%;
        justify-content: flex-start;
        text-align: left;
    }

    .hsp-solution-page--control-cabinets .hspcc-configuration {
        padding: 22px;
    }

    .hsp-solution-page--control-cabinets .hspcc-selection table,
    .hsp-solution-page--control-cabinets .hspcc-selection tbody,
    .hsp-solution-page--control-cabinets .hspcc-selection tr,
    .hsp-solution-page--control-cabinets .hspcc-selection th,
    .hsp-solution-page--control-cabinets .hspcc-selection td {
        display: block;
        width: 100%;
    }

    .hsp-solution-page--control-cabinets .hspcc-selection thead {
        display: none;
    }

    .hsp-solution-page--control-cabinets .hspcc-selection tr {
        padding: 16px 18px;
        border-bottom: 1px solid var(--hsp-border);
    }

    .hsp-solution-page--control-cabinets .hspcc-selection tr:last-child {
        border-bottom: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-selection th,
    .hsp-solution-page--control-cabinets .hspcc-selection td {
        padding: 0;
        border: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-selection td::before {
        content: attr(data-label);
        display: block;
        margin: 8px 0 3px;
        color: var(--hsp-accent-hover);
        font-size: 13px;
        font-weight: 800;
    }

    .hsp-solution-page--control-cabinets .hspcc-process__grid li,
    .hsp-solution-page--control-cabinets .hspcc-process__grid li + li,
    .hsp-solution-page--control-cabinets .hspcc-process__grid li:nth-child(3) {
        padding: 0;
        border-left: 0;
    }

    .hsp-solution-page--control-cabinets .hspcc-rfq .hspes-form-grid {
        grid-template-columns: 1fr;
    }

    .hsp-solution-page--control-cabinets .hspcc-rfq .htan-form-field-wide {
        grid-column: auto;
    }
}

/* Final machinery-page contrast corrections must follow shared framework rules. */
.hsp-solution-page--industrial-machinery .hspim-configuration,
.hsp-solution-page--industrial-machinery .hspim-configuration > header,
.hsp-solution-page--industrial-machinery .hspim-configuration__content {
    color: #24394d;
    background-color: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-configuration h3,
.hsp-solution-page--industrial-machinery .hspim-configuration h4,
.hsp-solution-page--industrial-machinery .hspim-configuration strong {
    color: #0b3156;
}

.hsp-solution-page--industrial-machinery .hspim-configuration p,
.hsp-solution-page--industrial-machinery .hspim-configuration li {
    color: #3c4852;
}

.hsp-solution-page--industrial-machinery .hspim-configuration a {
    color: #0b3156;
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-underline-offset: 3px;
}

.hsp-solution-page--industrial-machinery .hspim-configuration a:hover,
.hsp-solution-page--industrial-machinery .hspim-configuration a:focus-visible {
    color: #b54b13;
}

.hsp-solution-page--industrial-machinery .hspim-rfq {
    color: #fff;
    background: #24303b;
}

.hsp-solution-page--industrial-machinery .hspim-rfq .hspes-section-head h2 {
    color: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-rfq .hspes-section-head p {
    color: #dce2e7;
}

.hsp-solution-page--industrial-machinery .hspim-rfq .htan-form-wrap--compact {
    color: #24394d;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-rfq label {
    color: #24394d;
}

.hsp-solution-page--industrial-machinery .hspim-rfq input:not([type="checkbox"]),
.hsp-solution-page--industrial-machinery .hspim-rfq textarea {
    color: #172c3f;
    background: #fff;
}

.hsp-solution-page--industrial-machinery .hspim-rfq input::placeholder,
.hsp-solution-page--industrial-machinery .hspim-rfq textarea::placeholder {
    color: #65717c;
    opacity: 1;
}

.hsp-solution-page--industrial-machinery .hspim-rfq .htan-consent a {
    color: #0b3156;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.hsp-solution-page--industrial-machinery .hspim-rfq .htan-form-error,
.hsp-solution-page--industrial-machinery .hspim-rfq .htan-form-notice {
    color: #7f1d1d;
}
