/* The three benefits share one centered card without manual column offsets. */
.home .et_pb_section_1 .et_pb_row_1.et_pb_row {
    width: 92% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 44px 48px !important;
    display: grid !important;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 32px !important;
    align-items: center;
    min-height: 144px;
    max-height: none !important;
    box-sizing: border-box;
}
.home .et_pb_section_1 .et_pb_row_1 > .et_pb_column {
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
}
.home .et_pb_section_1 .et_pb_row_1 .et_pb_text {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}
.home .et_pb_section_1 .et_pb_row_1 blockquote {
    margin: 0 !important;
    padding: 0 0 0 20px !important;
}
.home .et_pb_section_1 .et_pb_row_1 blockquote p {
    white-space: nowrap;
    padding-bottom: 0;
    line-height: 1.3;
}
.home .et_pb_section_1 .et_pb_row_1 .et_pb_text_inner > p:empty,
.home .et_pb_section_1 .et_pb_row_1 .et_pb_text_inner > p:last-child:not(:first-child) {
    display: none;
}
/* Keep the desktop benefits together in the center of the white card. */
@media (min-width: 981px) {
    .home .et_pb_section_1 .et_pb_row_1.et_pb_row {
        width: 86% !important;
        max-width: 1160px !important;
        grid-template-columns: repeat(3, max-content);
        justify-content: center;
        gap: clamp(40px, 6vw, 88px) !important;
    }
}
@media (min-width: 981px) and (max-width: 1200px) {
    .home .et_pb_section_1 .et_pb_row_1.et_pb_row {
        padding: 40px 32px !important;
        gap: 32px !important;
    }
    .home .et_pb_section_1 .et_pb_row_1 blockquote strong,
    .home .et_pb_section_1 .et_pb_row_1 blockquote span {
        font-size: 21px !important;
    }
}
@media (min-width: 600px) and (max-width: 980px) {
    /* Reduce the blue gap between the benefits card and product slider. */
    .home #main-content .et_pb_slider_0 {
        margin-top: 86px !important;
    }
    /* Keep the tablet header in view even when Divi assigns an inline scroll offset. */
    body.home #main-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        display: block !important;
        z-index: 99999 !important;
    }
    body.home.admin-bar #main-header { top: 32px !important; }
    @media (max-width: 782px) {
        body.home.admin-bar #main-header { top: 46px !important; }
    }
    .home .et_pb_section_1.et_pb_section {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box;
    }
    .home .et_pb_section_1 .et_pb_row_1.et_pb_row {
        width: calc(100% - 48px) !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        padding: 28px 24px !important;
        gap: 20px !important;
        min-height: 120px;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0, 12, 50, 0.12);
    }
    .home .et_pb_section_1 .et_pb_row_1 blockquote {
        padding-left: 14px !important;
        border-left-width: 3px;
    }
    .home .et_pb_section_1 .et_pb_row_1 blockquote p {
        white-space: normal;
        line-height: 1.4;
    }
    .home .et_pb_section_1 .et_pb_row_1 blockquote strong,
    .home .et_pb_section_1 .et_pb_row_1 blockquote span {
        font-size: 18px !important;
        color: #555 !important;
    }
}
@media (max-width: 599px) {
    .home .et_pb_section_1 .et_pb_row_1.et_pb_row {
        grid-template-columns: 1fr;
        padding: 32px !important;
        gap: 24px !important;
    }
    .home .et_pb_section_1 .et_pb_row_1 blockquote p { white-space: normal; }
}

/* Hide the header search glyph on desktop. */
@media (min-width: 981px) {
    #main-header #et_top_search {
        display: none !important;
    }
}

/* Slider chevrons for desktop, tablet and mobile, independent of the icon font. */
.home .et_pb_slider_0 .et-pb-slider-arrows a {
    color: #fff !important;
}
.home .et_pb_slider_0 .et-pb-arrow-prev::before,
.home .et_pb_slider_0 .et-pb-arrow-next::before {
    content: "" !important;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    vertical-align: middle;
}
.home .et_pb_slider_0 .et-pb-arrow-prev::before {
    transform: rotate(135deg);
}
.home .et_pb_slider_0 .et-pb-arrow-next::before {
    transform: rotate(-45deg);
}

/* Desktop design adapted to phone widths; no changes above 599px. */
@media (max-width: 599px) {
    .home #main-content .et_pb_section {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 36px 0 !important;
        box-sizing: border-box;
        display: block !important;
    }
    .home #main-content .et_pb_row {
        width: calc(100% - 40px) !important;
        max-width: 480px !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 auto !important;
        padding: 0 !important;
        transform: none !important;
        box-sizing: border-box;
    }
    .home #main-content .et_pb_column {
        min-width: 0 !important;
        margin: 0 !important;
    }
    .home #main-content .et_pb_row_0 > .et_pb_column,
    .home #main-content .et_pb_row_3 > .et_pb_column {
        width: 100% !important;
        display: flex !important;
        flex-direction: column;
        align-items: stretch !important;
        gap: 20px;
    }
    /* Leave room for half the benefits card plus a clear gap below the buttons. */
    .home #main-content .et_pb_section_0 { padding: 52px 0 120px !important; }
    .home #main-content .et_pb_heading_0 {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        margin: 0 0 32px !important;
        padding: 0 !important;
        transform: none !important;
    }
    .home .et_pb_heading_0 .et_pb_module_header {
        font-size: clamp(28px, 7.5vw, 36px) !important;
        line-height: 1.2 !important;
        text-align: center !important;
        padding: 0 !important;
    }
    .home #main-content .et_pb_button_module_wrapper {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
    }
    .home #page-container #main-content a.et_pb_button {
        width: 194px !important;
        max-width: 100% !important;
        min-height: 48px;
        box-sizing: border-box;
        margin: 0 auto !important;
        padding: 12px 20px !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
        border-radius: 3px !important;
    }
    .home #page-container #main-content .et_pb_row_0 a.et_pb_button { background: transparent !important; color: #fff !important; border: 2px solid #fff !important; }
    .home #main-content .et_pb_heading_1,
    .home #main-content .et-vb-row--no-module { display: none !important; }
    .home #main-content .et_pb_section_6 { display: block !important; height: 80px; padding: 0 !important; background: #001044 !important; }
    .home #main-content .et_pb_section_1 { display: flow-root !important; padding: 0 !important; }
    .home #main-content .et_pb_section_1 .et_pb_row_1 {
        position: relative;
        margin-top: 0 !important;
        transform: translateY(-50%) !important;
        padding: 24px !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        border-radius: 11px;
    }
    .home .et_pb_row_1 blockquote { padding-left: 14px !important; border-left-width: 3px; }
    .home .et_pb_row_1 blockquote strong,
    .home .et_pb_row_1 blockquote span { font-size: 17px !important; line-height: 1.4 !important; }
    .home #main-content .et_pb_section_2 { padding: 0 0 36px !important; }
    .home .et_pb_row_2 > .et_pb_column { width: 100% !important; }
    .home #main-content .et_pb_slider_0 {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        transform: none !important;
        animation: none !important;
        border-radius: 0;
        overflow: hidden;
    }
    .home .et_pb_slider_0 .et_pb_slide {
        padding: 0 28px !important;
        height: auto !important;
        min-height: 430px !important;
    }
    .home .et_pb_slider_0 .et_pb_container { width: 100% !important; height: auto !important; min-height: 430px !important; }
    .home .et_pb_slider_0 .et_pb_slider_container_inner { display: flex !important; flex-direction: column; padding: 24px 0 48px; }
    .home .et_pb_slider_0 .et_pb_slide_image {
        position: static !important;
        display: block !important;
        width: 100% !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        transform: none !important;
    }
    .home .et_pb_slider_0 .et_pb_slide_image img { width: auto !important; max-width: 100% !important; height: 140px !important; max-height: 140px !important; object-fit: contain; }
    .home .et_pb_slider_0 .et_pb_slide_description { width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; animation: none !important; text-align: center !important; }
    .home .et_pb_slider_0 .et_pb_slide_title { font-size: 24px !important; line-height: 1.2 !important; padding-bottom: 12px !important; }
    .home .et_pb_slider_0 .et_pb_slide_content,
    .home .et_pb_slider_0 .et_pb_slide_content * { font-size: 15px !important; line-height: 1.55 !important; }
    .home .et_pb_slider_0 .et_pb_more_button { margin-top: 18px !important; }
    .home .et_pb_slider_0 .et-pb-controllers { bottom: 16px !important; }
    .home .et_pb_slider_0 .et-pb-arrow-prev { left: 8px !important; opacity: 1 !important; }
    .home .et_pb_slider_0 .et-pb-arrow-next { right: 8px !important; opacity: 1 !important; }
    .home .et_pb_slider_0 .et-pb-slider-arrows a::before { width: 12px; height: 12px; }
    .home #main-content .et_pb_section_3 { padding: 12px 0 40px !important; }
    .home #main-content .et_pb_image_0,
    .home #main-content .et_pb_text_3 {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }
    .home .et_pb_image_0 { text-align: center !important; }
    .home .et_pb_image_0 img { width: 100%; max-width: 340px; height: auto; }
    .home .et_pb_text_3,
    .home .et_pb_text_3 span { font-size: 15px !important; line-height: 1.7 !important; }
    .home #main-content .et_pb_row_4 { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px !important; margin-top: 28px !important; padding-top: 0 !important; }
    .home .et_pb_row_4 > .et_pb_column { width: 100% !important; }
    .home .et_pb_row_4 > .et_pb_column:last-child { display: none !important; }
    .home .et_pb_row_4 .et_pb_text { width: 100% !important; margin: 0 !important; padding: 0 !important; transform: none !important; text-align: center !important; }
    .home .et_pb_row_4 p { padding-bottom: 4px !important; font-size: 12px !important; line-height: 1.5 !important; }
    .home .et_pb_row_4 p:first-child span,
    .home .et_pb_row_4 p:first-child strong { font-size: clamp(23px, 6vw, 28px) !important; }
    .home .et_pb_row_4 p:nth-child(n+3) { display: none; }
    .home #main-content .et_pb_section_4 { padding: 32px 0 16px !important; }
    .home #main-content .et_pb_heading_2 { width: 100% !important; max-width: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; }
    .home .et_pb_heading_2 .et_pb_module_header { font-size: 22px !important; line-height: 1.3 !important; text-align: left !important; padding: 0 !important; }
    .home #main-content .et_pb_section_5 { padding: 0 0 32px !important; }
    .home #main-content .et_pb_row_7 { width: calc(100% - 12px) !important; }
    .home .et_pb_row_7 > .et_pb_column { width: 100% !important; }
    .home #main-content .et_pb_image_1 { width: 100% !important; max-width: 100% !important; margin: 0 !important; transform: none !important; }
    .home .et_pb_image_1 img { width: 100% !important; height: auto !important; }
    .home .et_pb_scroll_top::before { content: "" !important; display: block; width: 10px; height: 10px; margin: 7px 3px 1px; border: solid white; border-width: 2px 0 0 2px; transform: rotate(45deg); }
}

/* Continuous manufacturer showcase on white. */
.home #main-content .et_pb_section_5 { background: #fff !important; }
.home #main-content .et_pb_section_5 .et_pb_row_7 { width: 92% !important; max-width: 1280px !important; }
.home #main-content .et_pb_section_5 .et_pb_image_1 { width: 100% !important; max-width: 100% !important; transform: none !important; margin: 0 !important; }
.home #main-content .et_pb_section_5 .et_pb_image_wrap { display: block; width: 100%; }
.home #main-content .centurius-brand-slider { display: block; position: relative; padding: 8px 0 16px; text-align: center; }
.home #main-content .centurius-brand-viewport { display: block; overflow: hidden; mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent); }
.home #main-content .centurius-brand-track { display: flex; width: max-content; animation: centurius-brands-scroll 120s linear infinite; }
.home #main-content .centurius-brand-set { display: flex; align-items: center; }
.home #main-content .centurius-brand-tile { display: flex; align-items: center; justify-content: center; flex: 0 0 210px; width: 210px; height: 112px; box-sizing: border-box; padding: 16px 24px; }
.home #main-content .centurius-brand-slider .centurius-brand-tile img { display: block !important; width: 100% !important; max-width: 168px !important; height: 72px !important; object-fit: contain; margin: 0 !important; padding: 0 !important; transform: none !important; }
/* Keep autoplay running under the mouse or keyboard focus; pause only on request. */
.home #main-content .centurius-brand-slider.is-paused .centurius-brand-track { animation-play-state: paused; }
.home #main-content .centurius-brand-pause { position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 44px; height: 44px; border: 1px solid #dce4ee; border-radius: 18px; color: #00245e; background: white; cursor: pointer; font: 16px Arial, sans-serif; }
@keyframes centurius-brands-scroll { to { transform: translateX(-50%); } }
@media (max-width: 599px) {
    .home #main-content .centurius-brand-slider { padding-top: 4px; }
    .home #main-content .centurius-brand-tile { flex-basis: 150px; width: 150px; height: 90px; padding: 12px 18px; }
    .home #main-content .centurius-brand-slider .centurius-brand-tile img { height: 60px !important; }
}
@media (prefers-reduced-motion: reduce) {
    .home #main-content .centurius-brand-track { animation: none; }
    .home #main-content .centurius-brand-viewport { overflow-x: auto; mask-image: none; }
    .home #main-content .centurius-brand-set[aria-hidden] { display: none; }
    .home #main-content .centurius-brand-pause { display: none; }
}

/* Compact heading with the pause control alongside it. */
.home #main-content .et_pb_section_4 { padding: 40px 0 8px !important; margin: 0 !important; }
.home #main-content .et_pb_section_4 .et_pb_row_6 { width: 86% !important; max-width: 1160px !important; margin: 0 auto !important; padding: 0 !important; }
.home #main-content .et_pb_heading_2 { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; }
.home #main-content .centurius-brands-heading { position: relative; padding: 0 56px; box-sizing: border-box; }
.home #main-content .et_pb_heading_2 .et_pb_module_header { text-align: center !important; padding: 0 !important; line-height: 1.3 !important; }
.home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="schunk.svg"] { max-width: 140px !important; }
.home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="durag.png"] { max-width: 180px !important; }
.home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="mag.png"] { max-width: 130px !important; }
.home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="sitema.png"] { max-width: 150px !important; }
@media (max-width: 599px) {
    .home #main-content .et_pb_section_4 { padding-top: 28px !important; }
    .home #main-content .et_pb_section_4 .et_pb_row_6 { width: calc(100% - 40px) !important; }
    .home #main-content .centurius-brands-heading { padding: 0 42px; }
    .home #main-content .centurius-brand-pause { width: 36px; height: 36px; }
    .home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="schunk.svg"] { max-width: 100px !important; }
    .home #main-content .centurius-brand-slider .centurius-brand-tile img[src$="mag.png"] { max-width: 96px !important; }
}

/* Equal hero button widths on tablets. */
@media (min-width: 600px) and (max-width: 980px) {
    .home #page-container #main-content .et_pb_row_0 a.et_pb_button {
        width: 218px !important;
        min-width: 218px !important;
        max-width: 100% !important;
        box-sizing: border-box;
        text-align: center !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* Center both tablet hero buttons on the same vertical axis. */
@media (min-width: 600px) and (max-width: 980px) {
    .home #main-content .et_pb_row_0 .et_pb_button_module_wrapper {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        transform: none !important;
        text-align: center !important;
    }
    .home #page-container #main-content .et_pb_row_0 a.et_pb_button {
        display: inline-block !important;
        margin-left: auto !important;
        margin-right: auto !important;
        transform: none !important;
    }
}

/* Desktop hero: share one center line without fixed Divi module offsets. */
@media (min-width: 981px) {
    .home #main-content .et_pb_section_0 {
        margin: 0 !important;
        padding: 120px 0 164px !important;
        height: auto !important;
        min-height: 580px;
        box-sizing: border-box;
    }
    .home #main-content .et_pb_row_0 {
        width: 92% !important;
        max-width: 1280px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        transform: none !important;
        height: auto !important;
        min-height: 0 !important;
    }
    .home #main-content .et_pb_row_0 > .et_pb_column {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        width: 100% !important;
        margin: 0 !important;
        gap: 30px;
    }
    .home #main-content .et_pb_heading_0 {
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 80px !important;
        padding: 0 !important;
        transform: none !important;
    }
    .home #main-content .et_pb_heading_0 .et_pb_module_header {
        font-size: clamp(32px, 2.46vw, 44px) !important;
        line-height: 1.2 !important;
        text-align: center !important;
        padding: 0 !important;
    }
    .home #main-content .et_pb_row_0 .et_pb_button_module_wrapper {
        width: 194px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        text-align: center !important;
    }
    .home #page-container #main-content .et_pb_row_0 a.et_pb_button {
        width: 194px !important;
        box-sizing: border-box;
        margin: 0 !important;
        padding: 8px 16px !important;
        white-space: nowrap !important;
    }
}

/* Join the hero and benefits backgrounds without Divi's white section border. */
.home #main-content .et_pb_section_0 {
    border-bottom: 0 !important;
}
.home #main-content .et_pb_section_1 {
    border-top: 0 !important;
    background-color: #001044 !important;
}
.home #main-content .et_pb_section_1 {
    margin-top: 0 !important;
}
.home #main-content .et_builder_inner_content {
    background-color: #001044;
}
