html,
.home {
    max-width: 100%;
    overflow-x: hidden;
}

@supports (overflow-x: clip) {
    html,
    .home {
        overflow-x: clip;
    }
}

:root,
.bde-global-css-vars {
    /* Keep cyan for large graphic surfaces, but use an accessible cyan for
     * small link text on white. #006f8f exceeds WCAG AA at normal text sizes. */
    --bde-links-color: #006f8f;
    --bde-links-color-hover: #005b76;
    --bde-button-text-text-color: #006f8f;
    --bde-button-text-text-color-hover: #005b76;
    --bde-button-primary-text-color: #13284b;
    --bde-button-primary-text-color-hover: #13284b;
    --bde-woo-buttons-and-links__text-link-color: #006f8f;
    --bde-woo-buttons-and-links__text-link-color-hover: #005b76;
}

/* White normal-size text on the Ultralift cyan button surface is 2.48:1.
 * Keep the brand cyan background and use navy text for WCAG AA contrast. */
.breakdance .button-atom--primary {
    --bde-button-primary-text-color: #13284b;
    --bde-button-primary-text-color-hover: #13284b;
}

.breakdance .button-atom--primary .button-atom__text,
.breakdance .button-atom--preset-06b1c814-6f18-4d95-b424-835955644b6f .button-atom__text {
    color: #13284b !important;
}

.breakdance .button-atom--preset-06b1c814-6f18-4d95-b424-835955644b6f {
    --bde-button-custom-text-color: #13284b;
    --bde-button-custom-text-color-hover: #13284b;
    color: #13284b !important;
}

.gform_wrapper .gform_button,
#gform_submit_button_2 {
    color: #13284b !important;
}

body {
    /* The inherited #6E6E6E label token fails on SBM's warm-grey panels. */
    --bde-palette-color-1-03cd452a-7aca-42cc-b0f0-31adaafdd07f: #4b4b4b;
}

.bde-skip-link {
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    padding: 0.75rem 1rem;
    color: #ffffff;
    background: #13284b;
    transform: translateY(-120%);
    transition: transform 0.15s ease-in-out;
}

.bde-skip-link:focus,
.bde-skip-link:focus-visible {
    transform: translateY(0);
}

.home .bde-text-16-282,
.home .bde-text-16-352 {
    color: #4a4a4a !important;
}

.home .button-atom--primary,
.home .gform_button {
    color: #13284b !important;
}

.home .bde-button-16-314 .button-atom__text {
    color: #13284b !important;
}

.home .ee-imagebox-content .button-atom__text {
    color: #006f8f !important;
}

/* The Applications hub card controls are ImageBox text links, not Breakdance
 * primary buttons. Override their inherited brand cyan without changing the
 * cyan used for large graphic surfaces elsewhere. */
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button .button-atom__text,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button .button-atom__icon-wrapper,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button svg {
    color: #006f8f !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:hover,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:focus,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:focus-visible,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:hover .button-atom__text,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:focus .button-atom__text,
body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:focus-visible .button-atom__text {
    color: #005b76 !important;
}

body.page-id-80 .bde-post-loop-80-181 .ee-imagebox-button:focus-visible {
    outline: 3px solid #13284b;
    outline-offset: 4px;
}

.home .bde-text-16-296,
.home span.application {
    color: #626262 !important;
}

.home .card-link button.button-atom,
.home .card-link .button-atom--text {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
}

.home .ee-imagebox-image img,
.home img.bde-image2-464-102 {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
}

/* Homepage conversion and design remediation, candidate 0.4.0. */
.home .ult-home-hero,
.home .ult-home-products,
.home .ult-home-custom,
.home .ult-home-projects,
.home .ult-home-applications,
.home .ult-home-installers,
.home .ult-home-contact {
    position: relative;
}

.home .ult-home-hero {
    min-height: min(680px, 75vh) !important;
}

.home .ult-home-hero h1 {
    max-width: 760px;
    font-weight: 500 !important;
    letter-spacing: -0.035em !important;
    text-wrap: balance;
}

.home .ult-home-hero .bde-text-16-284 {
    max-width: 660px;
    font-size: clamp(1rem, 1.15vw, 1.125rem);
    line-height: 1.65;
}

.home .ult-home-hero-actions .bde-button:first-child .button-atom {
    color: #13284b !important;
    background: #00b2e2 !important;
    border-color: #00b2e2 !important;
}

.home .ult-home-hero-actions .bde-button:last-child .button-atom {
    color: #13284b !important;
    background: transparent !important;
    border: 1px solid #13284b !important;
}

.home .ult-home-hero-actions .bde-button:last-child .button-atom__text {
    color: #13284b !important;
}

.home .ult-home-proof .bde-simple-counter__number {
    color: #13284b;
    font-weight: 600;
}

.home .ult-home-proof .bde-simple-counter__title {
    max-width: 15rem;
    line-height: 1.45;
}

.home .bde-simple-counter-16-290 .bde-simple-counter__suffix {
    font-size: 1rem;
    letter-spacing: 0.04em;
}

.home .ult-home-projects {
    background: #13284b !important;
}

.home .ult-home-reviews {
    background: #f4f7fa !important;
}

.home .ult-home-reviews .ult-review-heading {
    width: 100% !important;
    margin-bottom: 2rem !important;
    color: #13284b !important;
    font-size: clamp(2rem, 3vw, 3rem) !important;
    line-height: 1.15 !important;
    text-align: left;
}

.home .ult-review-grid {
    display: grid !important;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.home .ult-review-grid.ult-review-grid-single {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
}

.home .ult-review-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    align-items: flex-start;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    background: #ffffff;
    border: 1px solid #dce5e9;
    box-shadow: 0 12px 32px rgba(19, 40, 75, 0.07);
}

.home .ult-review-card .ult-review-quote {
    width: 100% !important;
    margin-bottom: 1.5rem !important;
    color: #292929 !important;
    font-size: clamp(1.2rem, 1.7vw, 1.55rem) !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}

.home .ult-review-stars {
    margin-bottom: 1rem;
    color: #d88a00;
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 0.12em;
}

.home .ult-review-author {
    margin-top: auto;
    color: #13284b !important;
    font-weight: 600;
}

.home .ult-review-source {
    margin-top: 0.25rem;
    color: #687681;
    font-size: 0.875rem;
}

/* Break up the white Product, Custom and Applications sequence without adding
 * another visually heavy colour block. */
.home .ult-home-custom {
    overflow: hidden;
    background: linear-gradient(135deg, #f3f6f8 0%, #edf3f6 100%) !important;
    border-top: 1px solid #dce5e9;
    border-bottom: 1px solid #dce5e9;
}

.home .ult-home-custom::before {
    position: absolute;
    top: 0;
    left: max(24px, calc((100% - var(--bde-section-width, 1260px)) / 2));
    width: clamp(72px, 8vw, 120px);
    height: 4px;
    content: '';
    background: #00b2e2;
}

.home .ult-home-applications .bde-image-box {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e1e6e9;
    box-shadow: 0 10px 28px rgba(19, 40, 75, 0.06);
}

.home .ult-home-products .ee-imagebox-image img {
    height: 220px !important;
}

.home .ult-home-applications .ee-imagebox-image img {
    height: 190px !important;
}

.home .ult-home-applications .ee-imagebox-title,
.home .ult-home-applications h3 {
    color: #13284b !important;
    font-weight: 650 !important;
}

.home .ult-home-applications .ee-imagebox-text {
    color: #454b52 !important;
}

.home .ult-home-products h2,
.home .ult-home-custom h2,
.home .ult-home-projects h2,
.home .ult-home-applications h2,
.home .ult-home-installers h2,
.home .ult-home-contact h2 {
    font-weight: 400 !important;
    letter-spacing: -0.025em !important;
    text-wrap: balance;
}

.home .ult-home-applications .ult-view-all-link {
    display: inline-block;
    margin-top: 1rem;
    color: #006f8f;
    font-weight: 500;
}

.home .ult-home-contact .gform_footer input[type='submit'] {
    color: #13284b !important;
    background: #00b2e2 !important;
}

.ult-header-menu .ult-header-cta > a,
.ult-header-menu .ult-header-cta .breakdance-link {
    display: inline-flex !important;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0.625rem 1rem !important;
    color: #13284b !important;
    background: #00b2e2 !important;
    font-weight: 600 !important;
    white-space: nowrap;
}

body.ultralift-copy-review.home .ult-copy-review::after {
    position: absolute;
    z-index: 5;
    top: 0.75rem;
    right: 0.75rem;
    content: 'Copy draft for review';
    padding: 0.3rem 0.55rem;
    color: #5b3b00;
    background: #fff1c7;
    border: 1px solid #d4a72c;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.ultralift-rescue-copy-review {
    max-width: var(--bde-section-width, 1260px);
    margin: 1rem auto;
    padding: 0.55rem 0.75rem;
    color: #5b3b00;
    background: #fff1c7;
    border: 1px solid #d4a72c;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.ult-resource-development-notice {
    max-width: 920px;
    padding: 1rem 1.125rem !important;
    color: #13284b !important;
    background: #eef8fb;
    border-left: 4px solid #00b2e2;
    line-height: 1.6;
}

.ult-resource-holding,
.ult-installer-interest {
    min-height: 62vh;
}

.ult-resource-holding .button-atom,
.ult-installer-interest .gform_button {
    color: #13284b !important;
    background: #00b2e2 !important;
    border-color: #00b2e2 !important;
}

.ult-installer-interest .gform_wrapper {
    width: 100%;
    margin-top: 1.5rem;
}

.ultralift-product-table-wrap {
    width: 100%;
    margin: 1.25rem 0;
    overflow-x: auto;
}

.ultralift-product-table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
    background: #ffffff;
}

.ultralift-product-table th,
.ultralift-product-table td {
    padding: 0.75rem 0.875rem;
    border: 1px solid #d7dfe3;
    text-align: left;
    vertical-align: top;
}

.ultralift-product-table th {
    color: #ffffff;
    background: #13284b;
    font-weight: 600;
}

.ultralift-product-table tbody tr:nth-child(even) {
    background: #f4f7fa;
}

@media (max-width: 1023px) {
    .ult-header-menu .ult-header-cta > a,
    .ult-header-menu .ult-header-cta .breakdance-link {
        margin: 0.5rem 1.5rem 1rem;
    }
}

@media (max-width: 767px) {
    .home .ult-home-hero {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        overflow-x: clip;
    }

    .home .ult-home-hero .section-container,
    .home .ult-home-hero .bde-columns,
    .home .ult-home-hero .bde-column {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .home .ult-home-hero .bde-columns {
        display: flex !important;
        flex-direction: column !important;
    }

    .home .ult-home-hero .bde-column:first-child {
        order: 1 !important;
        padding: 2rem 1.5rem 2.25rem !important;
    }

    .home .ult-home-hero .bde-column:last-child {
        order: 2 !important;
    }

    .home .ult-home-hero h1 {
        font-size: clamp(2rem, 9vw, 2.75rem) !important;
        line-height: 1.08 !important;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .home .ult-home-hero-actions {
        width: 100%;
        gap: 0.75rem !important;
    }

    .home .ult-home-hero-actions .bde-button,
    .home .ult-home-hero-actions .button-atom {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        white-space: normal;
    }

    .home .ult-home-hero .bde-image2-16-293 {
        height: clamp(230px, 58vw, 340px) !important;
    }

    .home .ult-home-proof {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }

    .home .ult-review-grid {
        grid-template-columns: 1fr;
    }

    .home .ult-home-products,
    .home .ult-home-custom,
    .home .ult-home-projects,
    .home .ult-home-applications,
    .home .ult-home-contact {
        padding-top: 3.5rem !important;
        padding-bottom: 3.5rem !important;
    }

    .home .ult-home-products .bde-grid,
    .home .ult-home-applications .bde-grid,
    .home .ult-home-projects .bde-loop {
        display: flex !important;
        grid-template-columns: none !important;
        gap: 1rem !important;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        padding: 0 0 1rem;
        scroll-snap-type: inline mandatory;
        scrollbar-color: #8a8a8a transparent;
        scrollbar-width: thin;
    }

    .home .ult-home-products .bde-image-box,
    .home .ult-home-applications .bde-image-box,
    .home .ult-home-projects .bde-loop-item {
        flex: 0 0 min(78vw, 430px) !important;
        width: min(78vw, 430px) !important;
        scroll-snap-align: start;
    }

    .home .ult-home-products .ee-imagebox-image img,
    .home .ult-home-applications .ee-imagebox-image img {
        height: 180px !important;
    }

    .home .ult-home-projects .bde-post-loop {
        width: 100%;
    }

    body.ultralift-copy-review.home .ult-copy-review::after {
        top: 0.5rem;
        right: 0.5rem;
    }
}

/* Keyboard and touch access across the supplied Breakdance templates. */
.breakdance a:not(.bde-skip-link),
.breakdance button,
.breakdance summary,
.breakdance input[type='submit'],
.breakdance input[type='button'] {
    touch-action: manipulation;
}

.breakdance button,
.breakdance summary,
.breakdance input[type='submit'],
.breakdance input[type='button'],
.breakdance .button-atom {
    min-height: 44px;
}

.ult-optimised-motion {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

.bde-gallery .swiper-pagination-bullet,
.bde-gallery .swiper-pagination-bullet-button,
.bde-gallery button[class*='pagination'],
.bde-gallery button[class*='dot'],
.breakdance [class*='gallery'] button[class*='dot'],
.breakdance [class*='gallery'] button[class*='pagination'],
.breakdance [class*='gallery'] [role='tab'] {
    min-width: 44px;
    min-height: 44px;
}

.breakdance [class*='category'] [class*='count'],
.breakdance [class*='category'] [class*='chip'],
.breakdance [class*='taxonomy'] [class*='count'],
.breakdance [class*='taxonomy'] [class*='chip'] {
    color: #394b55 !important;
}

.post-type-archive-product .ee-imagebox-text,
.post-type-archive-product [class*='category'] [class*='label'],
.tax-product-category .ee-imagebox-text,
.tax-product-category [class*='category'] [class*='label'],
.single-application [class*='eyebrow'],
.single-application [class*='label'],
.blog [class*='eyebrow'],
.page [class*='eyebrow'] {
    color: #394b55 !important;
}

.post-type-archive-product .breakdance .ee-imagebox-title,
.post-type-archive-product .breakdance .ee-imagebox-title a,
.tax-product-category .breakdance .ee-imagebox-title,
.tax-product-category .breakdance .ee-imagebox-title a,
.breakdance .bde-text-595-100,
.breakdance .bde-text-802-103,
.breakdance .bde-text-802-104,
.single-application .breakdance [class*='bde-text-'][class*='-103'] {
    color: #394b55 !important;
}

.ult-aeo a,
.ult-expertise a,
.ult-product-download a,
.ult-resource-category a:not(.ult-document-download) {
    color: #006f8f !important;
}

.ult-products-accordion__card-read-more,
.ult-products-accordion [class*='read-more'],
.ult-products-accordion [class*='category-count'],
.ult-products-accordion [class*='category-label'] {
    color: #006f8f !important;
}

/* Ingrid review: use the approved product movement as the catalogue image.
   Fixed geometry prevents video posters collapsing inside the original
   percentage-height card container. */
.ult-products-accordion__card-image .ult-product-card-motion {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.75rem;
    object-fit: contain;
    background: #ffffff;
}

.ult-products-accordion__card .ult-product-card-motion {
    transition: transform 0.5s ease;
}

.ult-products-accordion__card:hover .ult-product-card-motion {
    transform: scale(1.035);
}

.ult-products-accordion__card--slider-wall-mount .ult-products-accordion__card-image,
.ult-products-accordion__card--slider-with-manual-swivel .ult-products-accordion__card-image,
.ult-products-accordion__card--freedom-motorised-tv-mount .ult-products-accordion__card-image,
.ult-products-accordion__card--picasso-art-lift .ult-products-accordion__card-image,
.ult-products-accordion__card--picasso-duo .ult-products-accordion__card-image,
.ult-products-accordion__card--reveal-panel-lift .ult-products-accordion__card-image,
.ult-products-accordion__card--spartan-drop .ult-products-accordion__card-image,
.ult-products-accordion__card--spartan-drop-360 .ult-products-accordion__card-image,
.ult-products-accordion__card--motorised-tv-wall-lift .ult-products-accordion__card-image {
    padding-bottom: 0;
    aspect-ratio: 1 / 1;
}

.ult-products-accordion__card--slider-wall-mount .ult-products-accordion__card-image img,
.ult-products-accordion__card--slider-with-manual-swivel .ult-products-accordion__card-image img,
.ult-products-accordion__card--freedom-motorised-tv-mount .ult-products-accordion__card-image img,
.ult-products-accordion__card--picasso-art-lift .ult-products-accordion__card-image img,
.ult-products-accordion__card--picasso-duo .ult-products-accordion__card-image img,
.ult-products-accordion__card--reveal-panel-lift .ult-products-accordion__card-image img,
.ult-products-accordion__card--spartan-drop .ult-products-accordion__card-image img,
.ult-products-accordion__card--spartan-drop-360 .ult-products-accordion__card-image img,
.ult-products-accordion__card--motorised-tv-wall-lift .ult-products-accordion__card-image img {
    padding: 0.75rem;
}

.bde-image-box-16-208 .ee-imagebox-image .ult-optimised-motion {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    background: #ffffff;
}

/* Homepage product families: keep every card on the same media and content
 * grid. The supplied product renders use different source canvases, so the
 * shared 16:9 viewport and small optical corrections are intentional. */
.home .ult-home-products .bde-image-box {
    display: flex;
    height: 100%;
    flex-direction: column;
}

.home .ult-home-products .ee-imagebox-image {
    position: relative;
    display: flex;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #ffffff;
}

.home .ult-home-products .ee-imagebox-image img,
.home .ult-home-products .ee-imagebox-image video {
    position: absolute;
    inset: 0;
    display: block;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    aspect-ratio: auto !important;
    padding: 0.75rem;
    object-fit: contain !important;
    background: #ffffff;
}

.home .ult-home-products .ee-imagebox-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.home .ult-home-products .ee-imagebox-content .breakdance-link:last-child {
    margin-top: auto;
}

.home .ult-home-products .ee-imagebox-image img[src*='Camera-Lift'],
.home .ult-home-products .ee-imagebox-image video[poster*='Camera-Lift'],
.home .ult-home-products .ee-imagebox-image video[data-ult-motion-src*='Camera-Lift'] {
    transform: scale(1.65);
}

.ult-products-accordion__compare {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin: 0 0 2rem;
    padding: clamp(1.25rem, 3vw, 2rem);
    color: #ffffff !important;
    background: #13284b !important;
    border-left: 5px solid #2db6de;
}

.ult-products-accordion__guided-group + .ult-products-accordion__guided-group,
.ult-products-accordion__guided-group + .ult-products-accordion__additional-group {
    margin-top: clamp(3rem, 6vw, 5rem);
}

.ult-products-accordion__guided-group .ult-products-accordion__compare {
    margin-bottom: 1.25rem;
}

.ult-products-accordion__grid--guided {
    padding: clamp(1rem, 2.5vw, 1.5rem);
    background: #f4f7f9;
    border: 1px solid #d8e2e7;
    border-top: 0;
}

.ult-products-accordion__additional-group > h3 {
    margin: 0 0 1.25rem;
    color: #13284b;
    font-size: clamp(1.35rem, 2.5vw, 2rem);
}

.ult-products-accordion__compare h3 {
    margin: 0 0 0.5rem;
    color: #ffffff !important;
    font-size: clamp(1.25rem, 2vw, 1.75rem);
}

.ult-products-accordion__compare p {
    max-width: 720px;
    margin: 0;
    color: #eef7fb !important;
    line-height: 1.55;
}

.ult-products-accordion__compare .ult-products-accordion__compare-kicker {
    margin-bottom: 0.4rem;
    color: #78d8f1 !important;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ult-products-accordion__compare-button {
    display: inline-flex;
    min-height: 48px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    padding: 0.8rem 1rem;
    color: #13284b !important;
    background: #2db6de;
    border: 2px solid #2db6de;
    font-weight: 800;
    text-decoration: none !important;
}

.ult-products-accordion__compare-button:hover {
    color: #ffffff !important;
    background: transparent;
}

.ult-products-accordion__compare-button:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 4px;
}

@media (max-width: 700px) {
    .ult-products-accordion__compare {
        align-items: flex-start;
        flex-direction: column;
        gap: 1.25rem;
    }

    .ult-products-accordion__compare-button {
        width: 100%;
    }
}

/* Ingrid review: stable, deliberate crops for the two corrected homepage
   application tiles at desktop, tablet and phone widths. */
.bde-image-box-16-172 .ee-imagebox-image,
.bde-image-box-16-177 .ee-imagebox-image {
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.bde-image-box-16-172 .ee-imagebox-image img,
.bde-image-box-16-177 .ee-imagebox-image img {
    width: 100%;
    height: 100% !important;
    object-fit: cover !important;
}

.ult-youtube-facade {
    position: relative;
    display: block;
    width: 100%;
    min-height: 260px;
    padding: 0;
    overflow: hidden;
    background: #13284b;
    border: 0;
    cursor: pointer;
    aspect-ratio: 16 / 9;
}

.ult-youtube-facade img,
.ult-youtube-facade iframe {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
}

.ult-youtube-facade > span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 72px;
    height: 52px;
    background: #d54900;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
    transform: translate(-50%, -50%);
}

.ult-youtube-facade > span::after {
    position: absolute;
    top: 50%;
    left: 52%;
    width: 0;
    height: 0;
    content: '';
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 16px solid #ffffff;
    transform: translate(-50%, -50%);
}

.breakdance a:focus-visible,
.breakdance button:focus-visible,
.breakdance summary:focus-visible,
.breakdance input:focus-visible,
.breakdance textarea:focus-visible,
.breakdance select:focus-visible {
    outline: 3px solid #00b2e2;
    outline-offset: 3px;
}

.ultralift-rescue-404 {
    margin: 0;
    color: #292929;
    background: #f4f7fa;
    overflow-x: hidden;
}

.ultralift-rescue-404 *,
.ultralift-rescue-404 *::before,
.ultralift-rescue-404 *::after {
    box-sizing: border-box;
}

.ult-404__header,
.ult-404__footer {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.25rem max(1.5rem, calc((100vw - 1260px) / 2));
    color: #13284b;
    background: #ffffff;
}

.ult-404__header {
    border-bottom: 1px solid #d7e1e6;
}

.ult-404__brand {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 0.75rem;
    color: #13284b;
    font-size: 1.35rem;
    font-weight: 800;
    text-decoration: none;
}

.ult-404__mark {
    width: 0.8rem;
    height: 2rem;
    background: #00b2e2;
    clip-path: polygon(35% 0, 100% 18%, 63% 50%, 100% 82%, 35% 100%, 0 50%);
}

.ult-404__header nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
}

.ult-404__header nav a,
.ult-404__footer a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: #13284b;
    font-weight: 600;
}

.ult-404 {
    display: grid;
    min-height: 66vh;
    place-items: center;
    padding: clamp(4rem, 10vw, 8rem) 1.5rem;
}

.ult-404__inner {
    width: min(100%, 860px);
    padding: clamp(2rem, 6vw, 4.5rem);
    background: #ffffff;
    border-top: 5px solid #00b2e2;
    box-shadow: 0 18px 55px rgba(19, 40, 75, 0.12);
}

.ult-404__eyebrow {
    margin: 0 0 0.75rem;
    color: #006f8f;
    font-size: 0.875rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ult-404 h1 {
    margin: 0 0 1rem;
    color: #13284b;
    font-size: clamp(2.5rem, 7vw, 5rem);
    line-height: 1;
}

.ult-404 p {
    max-width: 680px;
    font-size: 1.1rem;
    line-height: 1.7;
}

.ult-404__actions,
.ult-404__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin: 2rem 0;
}

.ult-404__primary,
.ult-404__secondary {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0.8rem 1.1rem;
    color: #13284b;
    border: 2px solid #00b2e2;
    font-weight: 800;
    text-decoration: none;
}

.ult-404__primary {
    background: #00b2e2;
}

.ult-404__secondary {
    background: #ffffff;
}

.ult-404 .search-form {
    display: flex;
    gap: 0.5rem;
    width: 100%;
    margin-top: 2rem;
}

.ult-404 .search-field {
    min-width: 0;
    flex: 1 1 auto;
    min-height: 48px;
    padding: 0.75rem;
    border: 1px solid #7b8c96;
}

.ult-404 .search-submit {
    min-height: 48px;
    padding: 0.75rem 1rem;
    color: #ffffff;
    background: #13284b;
    border: 0;
    font-weight: 700;
}

.ult-404__links a {
    color: #006f8f;
    font-weight: 700;
}

.ult-404__footer {
    justify-content: flex-start;
    flex-wrap: wrap;
    color: #ffffff;
    background: #13284b;
}

.ult-404__footer a {
    color: #ffffff;
}

@media (max-width: 767px) {
    .ult-404__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .ult-404__header nav,
    .ult-404__actions,
    .ult-404 .search-form {
        width: 100%;
        flex-direction: column;
    }
}

.ultralift-technical-download-notice {
    display: grid;
    gap: 0.5rem;
    width: min(100%, 1200px);
    margin: 1.5rem auto 2.5rem;
    padding: 1.1rem 1.25rem;
    border-left: 4px solid #00b2e2;
    background: #eef8fb;
    color: #2e2e2e;
    line-height: 1.55;
}

.ultralift-technical-download-notice strong {
    color: #13284b;
}

.ult-approved-documents,
.ult-home-brochure,
.ult-resource-category {
    width: 100%;
    padding: clamp(3.5rem, 7vw, 6rem) max(1.5rem, calc((100vw - 1260px) / 2));
}

.ult-approved-documents {
    color: #13284b;
    background: #eef4f7;
    border-top: 1px solid #d7e1e6;
}

.ult-approved-documents__inner {
    width: min(100%, 1260px);
    margin: 0 auto;
}

.ult-resource-category {
    min-height: 62vh;
    color: #292929;
    background: #f4f7fa;
}

.ult-resource-category__inner {
    width: min(100%, 1060px);
    margin: 0 auto;
}

.ult-resource-category h2 {
    color: #13284b;
}

#ult-resource-category-title {
    max-width: 820px;
    margin: 0 0 1rem;
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1.08;
}

.ult-resource-category__intro {
    max-width: 760px;
    margin: 0 0 2rem;
    font-size: 1.1rem;
    line-height: 1.7;
}

.ult-resource-category__detail {
    max-width: 820px;
    margin: 0 0 2rem;
    color: #394b55;
    line-height: 1.7;
}

.ult-resource-category__available,
.ult-resource-category__status,
.ult-resource-category__support {
    margin-top: 2rem;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background: #ffffff;
    border: 1px solid #d7e1e6;
}

.ult-resource-category__status {
    display: grid;
    gap: 0.35rem;
    border-left: 4px solid #2db6de;
}

.ult-resource-category__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.ult-resource-category__product-link {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: 0.7rem 0.85rem;
    background: #eef8fb;
    border: 1px solid #b9d9e3;
    font-weight: 700;
    text-decoration: none;
}

.ult-resource-category__support {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    color: #ffffff;
    background: #13284b;
}

.ult-resource-category__support h2,
.ult-resource-category__support p {
    color: #ffffff;
}

.ult-resource-category__support a {
    display: inline-flex;
    min-height: 48px;
    flex: 0 0 auto;
    align-items: center;
    padding: 0.8rem 1.1rem;
    color: #13284b;
    background: #2db6de;
    font-weight: 700;
}

.ult-resource-category__back {
    margin-top: 1.5rem;
}

.ult-resource-category__back a {
    color: #006f8f;
    font-weight: 700;
}

@media (max-width: 767px) {
    .ult-resource-category__support {
        align-items: flex-start;
        flex-direction: column;
    }
}

.ult-document-eyebrow,
.ult-document-card__type {
    margin: 0 0 0.75rem;
    color: #52636e;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.ult-approved-documents h2,
.ult-home-brochure h2,
.ult-product-download h2 {
    margin: 0 0 1rem;
    color: #13284b;
}

.ult-approved-documents__intro {
    max-width: 780px;
    margin: 0 0 2rem;
    color: #394b55;
    line-height: 1.65;
}

.ult-approved-documents__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.ult-document-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 1.4rem;
    background: #ffffff;
    border: 1px solid #d7e1e6;
    border-radius: 4px;
    box-shadow: 0 8px 24px rgba(19, 40, 75, 0.06);
}

.ult-document-card h3 {
    margin: 0 0 0.65rem;
    color: #13284b;
    font-size: 1.3rem;
}

.ult-document-card > p:not(.ult-document-card__type) {
    margin: 0 0 1.25rem;
    color: #475964;
    line-height: 1.55;
}

.ult-document-card .ult-document-download {
    margin-top: auto;
}

.ult-document-download {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    color: #13284b !important;
    background: #00b2e2;
    border: 2px solid #00b2e2;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
}

.ult-document-download:hover,
.ult-document-download:focus-visible {
    color: #ffffff !important;
    background: #13284b;
    border-color: #13284b;
}

.ult-document-download span {
    padding: 0.2rem 0.35rem;
    color: inherit;
    border: 1px solid currentColor;
    font-size: 0.625rem;
    letter-spacing: 0.08em;
}

.ult-product-download {
    width: 100%;
    margin: 2rem 0 0;
    padding: 1.5rem;
    color: #394b55;
    background: #eef8fb;
    border-left: 4px solid #00b2e2;
}

.ult-product-download > p:not(.ult-document-eyebrow) {
    max-width: 760px;
    line-height: 1.6;
}

.ult-home-brochure {
    color: #ffffff;
    background: #13284b;
}

.ult-home-brochure__inner {
    display: flex;
    width: min(100%, 1260px);
    margin: 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.ult-home-brochure h2,
.ult-home-brochure p {
    color: #ffffff;
}

.ult-home-brochure p:not(.ult-document-eyebrow) {
    max-width: 720px;
    margin-bottom: 0;
    line-height: 1.6;
}

.ult-home-brochure .ult-document-eyebrow {
    color: #8edff3;
}

.ult-home-brochure .ult-document-download {
    flex: 0 0 auto;
}

@media (max-width: 1023px) {
    .ult-approved-documents__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .ult-approved-documents__grid {
        grid-template-columns: 1fr;
    }

    .ult-home-brochure__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .ult-home-brochure .ult-document-download {
        width: 100%;
    }

    .ult-product-download {
        padding: 1.25rem;
    }
}

/* Resources landing page: clear current availability without empty accordions. */
.post-type-archive-resource .ult-resource-holding {
    position: relative;
    overflow: hidden;
    min-height: 440px;
    padding: clamp(4.5rem, 9vw, 8rem) max(1.5rem, calc((100vw - 1260px) / 2)) !important;
    align-items: flex-start !important;
    justify-content: center !important;
    color: #ffffff;
    background:
        radial-gradient(circle at 86% 20%, rgba(45, 182, 222, 0.24), transparent 32rem),
        linear-gradient(125deg, #0d1f3e 0%, #13284b 58%, #1a4369 100%);
}

.post-type-archive-resource .ult-resource-holding::after {
    position: absolute;
    right: -8rem;
    bottom: -15rem;
    width: 36rem;
    height: 36rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    content: "";
}

.post-type-archive-resource .ult-resource-holding > * {
    position: relative;
    z-index: 1;
    width: min(100%, 820px);
}

.post-type-archive-resource .ult-resource-holding .bde-text:first-child {
    margin-bottom: 1rem;
    color: #8edff3;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.post-type-archive-resource .ult-resource-holding h1 {
    max-width: 760px;
    margin: 0 0 1.25rem;
    color: #ffffff;
    font-size: clamp(2.5rem, 6vw, 5rem);
    line-height: 0.98;
    letter-spacing: -0.035em;
}

.post-type-archive-resource .ult-resource-holding .bde-text:not(:first-child) {
    max-width: 720px;
    color: #dce8f1;
    font-size: clamp(1rem, 1.8vw, 1.2rem);
    line-height: 1.7;
}

.post-type-archive-resource .ult-resource-holding .bde-button {
    width: auto;
    margin-top: 1rem;
}

.post-type-archive-resource .ult-resource-holding .button-atom {
    min-height: 48px;
    padding: 0.8rem 1.1rem;
    color: #13284b;
    background: #2db6de;
    border: 2px solid #2db6de;
}

.post-type-archive-resource .ult-resource-holding .bde-button:last-child .button-atom {
    color: #ffffff;
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.72);
}

.ult-approved-documents--resources {
    padding-top: clamp(4rem, 8vw, 7rem);
    padding-bottom: clamp(4rem, 8vw, 7rem);
    background: #f5f8fa;
}

.ult-approved-documents__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

.ult-approved-documents__heading .ult-approved-documents__intro {
    margin-bottom: 0;
}

.ult-approved-documents__status {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.6rem;
    margin: 0 0 0.25rem;
    padding: 0.65rem 0.85rem;
    color: #315161;
    background: #ffffff;
    border: 1px solid #d7e1e6;
    font-size: 0.82rem;
    font-weight: 700;
}

.ult-approved-documents__status span {
    width: 0.55rem;
    height: 0.55rem;
    background: #2db6de;
    border-radius: 50%;
}

.ult-resource-coming {
    margin-top: clamp(4rem, 8vw, 7rem);
    padding-top: clamp(3rem, 6vw, 5rem);
    border-top: 1px solid #ccd9df;
}

.ult-resource-coming__heading {
    max-width: 780px;
}

.ult-resource-coming__heading > p:not(.ult-document-eyebrow) {
    color: #475964;
    line-height: 1.65;
}

.ult-resource-coming__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 2rem;
}

.ult-resource-coming__card {
    min-height: 245px;
    padding: 1.5rem;
    background: #e8eff3;
    border-top: 4px solid #2db6de;
}

.ult-resource-coming__card > span {
    display: block;
    margin-bottom: 2rem;
    color: #71838d;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
}

.ult-resource-coming__card h3 {
    margin: 0 0 0.75rem;
    color: #13284b;
}

.ult-resource-coming__card p {
    margin: 0;
    color: #475964;
    line-height: 1.6;
}

.ult-resource-support {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.75rem, 4vw, 3rem);
    color: #ffffff;
    background: #13284b;
}

.ult-resource-support h2,
.ult-resource-support p {
    color: #ffffff;
}

.ult-resource-support h2 {
    margin: 0 0 0.6rem;
}

.ult-resource-support p:not(.ult-document-eyebrow) {
    max-width: 680px;
    margin: 0;
    line-height: 1.6;
}

.ult-resource-support .ult-document-eyebrow {
    color: #8edff3;
}

.ult-resource-support__link {
    display: inline-flex;
    min-height: 48px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 0.8rem 1.1rem;
    color: #13284b !important;
    background: #2db6de;
    font-weight: 700;
    text-decoration: none !important;
}

/* Genuine Ultralift application imagery with optional accessible rotation. */
.ult-application-hero-rotator {
    position: relative;
    overflow: hidden;
    background: #f2f5f7;
}

.ult-application-hero-rotator img {
    width: 100% !important;
    height: 100% !important;
    min-height: 440px;
    object-fit: var(--ult-image-fit, cover);
    object-position: center;
    background: #f2f5f7;
    transition: opacity 240ms ease;
}

.ult-application-hero-rotator img[data-ult-fit="contain"] {
    object-fit: contain;
}

.ult-application-hero-rotator__image--changing {
    opacity: 0.25;
}

.ult-application-hero-rotator__controls {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.55rem 0.65rem;
    background: rgba(13, 31, 62, 0.9);
}

.ult-application-hero-rotator__dots {
    display: flex;
    gap: 0.45rem;
}

.ult-application-hero-rotator__dot {
    position: relative;
    width: 24px;
    height: 24px;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
}

.ult-application-hero-rotator__dot::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0.68rem;
    height: 0.68rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.64);
    content: '';
    transform: translate(-50%, -50%);
}

.ult-application-hero-rotator__dot[aria-current="true"]::after {
    background: #2db6de;
}

.ult-application-hero-rotator__pause {
    min-height: 32px;
    padding: 0.25rem 0.55rem;
    color: #ffffff;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.66);
    font-size: 0.74rem;
    font-weight: 700;
    cursor: pointer;
}

.ult-application-hero-rotator__dot:focus-visible,
.ult-application-hero-rotator__pause:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .breakdance *,
    .breakdance *::before,
    .breakdance *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .ult-application-hero-rotator img {
        transition: none;
    }
}

@media (max-width: 767px) {
    .home [data-entrance-animation],
    .home [class*='entrance-animation'],
    .home [class*='bde-animate'] {
        opacity: 1 !important;
        transform: none !important;
        animation: none !important;
        transition: none !important;
    }

    .post-type-archive-resource .ult-resource-holding {
        min-height: 0;
        padding-top: 4rem !important;
        padding-bottom: 4rem !important;
    }

    .post-type-archive-resource .ult-resource-holding .bde-button {
        width: 100%;
    }

    .ult-approved-documents__heading,
    .ult-resource-support {
        align-items: flex-start;
        flex-direction: column;
    }

    .ult-approved-documents__status {
        align-self: flex-start;
    }

    .ult-resource-coming__grid {
        grid-template-columns: 1fr;
    }

    .ult-resource-coming__card {
        min-height: 0;
    }

    .ult-resource-support__link {
        width: 100%;
    }

    .ult-application-hero-rotator img {
        min-height: 320px;
    }

    .ult-application-hero-rotator__controls {
        right: 0.75rem;
        bottom: 0.75rem;
    }
}

/* Legacy article repair: constrain the 1280px projector embed and full-width
 * media without changing the ranking-sensitive article URL or copy. */
.postid-2729 .breakdance iframe,
.postid-2729 .breakdance video,
.postid-2729 .breakdance img,
.postid-2729 .breakdance table {
    display: block;
    max-width: 100% !important;
}

.postid-2729 .breakdance iframe {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1280 / 315;
}

.postid-2729 .breakdance table {
    overflow-x: auto;
}
