.hyundai-lp-wrap {
    &.lp-ioniq {
        --section-space: 2rem;
        --header-title-fs: 1.5rem;
        @media (min-width: 1024px) {
            --section-space: 4.5rem;
            --header-title-fs: 3rem;
        }
        .mpgd-header-content {
            h1 {
                font-size: 2.5rem;
                span {
                    font-size: 3.5rem;
                }
            }
        }
        .mpgd-links .btn {
            width: 75%;
        }
        .fact-cards {
            padding-block: var(--section-space);
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 2.5rem;
            @media (min-width: 768px) {
                flex-direction: row;
            }
            .fact-cards-item {
                display: flex;
                flex-direction: column;
                text-align: center;
                .fact-cards-item-content.bigger {
                    font-size: 2.5rem;
                    font-weight: 700;
                }
            }
        }
        .text-highlighted {
            color: #AC001A;
        }
        h2 {
            font-weight: 700;
            font-size: var(--header-title-fs);
        }
        .left-right-section {
            &.only-text {
                font-weight: 700;

                .section-wrapper {
                    align-items: start;
                    gap: 2rem;
                    justify-content: center;
                }

                .section-content {
                    padding: 0;
                }

                .section-content:nth-child(1) {
                    max-width: 300px;
                    width: 100%;
                    flex: 0 1 auto;
                }

                .section-content:nth-child(2) {
                    width: 100%;
                    flex: 1
                }

                .section-text {
                    &.bigger {
                        font-size: 1.5rem;
                        @media (min-width: 1024px) {
                            font-size: 2.5rem;
                        }
                    }
                }
            }
            &:not(.only-text) {
                .section-content {
                    max-width: 550px;

                    .section-title {
                        margin-bottom: 0.5rem;
                    }

                    .section-text {
                        font-size: 0.75rem;
                        margin-left: 0;
                        margin-top: 2rem;
                    }
                }
            }
        }
        .video-wrap {
            video {
                max-width: 100%;
            }
            &.full {
                video {
                    aspect-ratio: 16/9;
                    width: 100%;
                    display: block;
                    margin-block: var(--section-space);
                }
            }
        }
        .ioniq-grid-section {
            padding-block: var(--section-space);

            .grid-section-header {
                margin-block: 2.5rem;
                color: #000;
            }
            .grid-section-wrapper {
                display: grid;
                gap: 1.5rem;
                grid-template-areas:
                "img-left"
                "img-right"
                "text-content";

                img {
                    width: 100%;
                    height: auto;
                    display: block;
                    object-fit: cover;
                }
                .grid-item-left-img {
                    grid-area: img-left;
                }
                .grid-item-right-img {
                    grid-area: img-right;
                }
                .grid-item-text {
                    grid-area: text-content;
                }
                .grid-item-text {
                    padding-top: 1rem;
                    text-align: left;
                    display: flex;
                    flex-direction: column;
                    gap: 1rem;

                    h3 {
                        font-size: 1.75rem;
                        font-weight: 700;
                        margin: 0;
                    }
                    .lead-text {
                        font-size: 1.125rem;
                        font-weight: 700;
                        margin: 0;
                    }
                    .desc-text {
                        font-size: 0.875rem;
                        color: #4a4a4a;
                        margin: 0;
                    }
                }
                @media (min-width: 768px) {
                    grid-template-columns: 1fr 1fr;
                    column-gap: 4rem;
                    row-gap: 2rem;
                    grid-template-areas:
                    "img-left      img-right"
                    "text-content  img-right";
                    .grid-item-right-img {
                        align-self: end;
                        margin-top: 6rem;
                    }
                    .grid-item-text {
                        padding-top: 2rem;
                        justify-content: flex-start;
                    }
                }
            }
            &.grid-reversed {
                .grid-section-wrapper {
                    .video-wrap video {
                        aspect-ratio: 3 / 4;
                        margin-block: 0;
                    }

                    @media (min-width: 768px) {
                        grid-template-areas:
                    "img-left  img-right"
                    "img-left  text-content";

                        .grid-item-right-img {
                            align-self: stretch;
                            margin-top: 0;
                        }

                        .grid-item-left-img {
                            align-self: end;
                            margin-top: 6rem;
                        }

                        .grid-item-text {
                            padding-top: 1rem;
                        }
                    }
                }
            }
        }
        .section-specs {
            display: flex;
            flex-direction: column;
            justify-content: center;
            text-align: center;
            .section-specs-header-text {
                font-weight: 700;
            }
            .section-specs-footer-text {
                font-size: 0.875rem;
                max-width: 25rem;
                margin-top: 0.5rem;
                margin-inline: auto;
            }
            .section-specs-spacer {
                margin-inline: auto;
                text-align: center;
                margin-block: 2rem;
                width: 2px;
                background-color: #000;
                height: 200px;
                @media (min-width: 768px) {
                    margin-block: 4rem;
                    height: 250px;
                }
            }
            h3 {
                margin: 0;
            }
        }
        .ioniq-range-section {
            padding-block: var(--section-space);
            text-align: center;
            color: #000;
            display: flex;
            flex-direction: column;
            align-items: center;
            .range-stat {
                display: flex;
                flex-direction: column;
                align-items: center;
                line-height: 1;
                margin-bottom: 2rem;
                .num {
                    font-size: clamp(3.5rem, 9vw, 8.5rem);
                    font-weight: 700;
                }
                .unit {
                    font-size: 2rem;
                    font-weight: 700;
                    margin-top: 0.5rem;
                }
            }

            .transition-text {
                font-size: 1.25rem;
                font-weight: 700;
                margin: 0;
            }

            .range-graphic {
                margin-block: 2rem 3rem;
                width: 100%;
                max-width: 320px;

                img {
                    display: block;
                    width: 100%;
                    height: auto;
                    margin-inline: auto;
                }
            }
            .range-footer {
                max-width: 36rem;
                margin-inline: auto;

                h3 {
                    font-size: 1.5rem;
                    font-weight: 700;
                    line-height: 1.3;
                    margin: 0 0 1rem 0;

                    @media (min-width: 1024px) {
                        font-size: 1.85rem;
                    }
                }

                .disclaimer {
                    font-size: 0.75rem;
                    max-width: 25rem;
                    text-align: center;
                    margin-inline: auto;
                }
            }
        }
        .scrolling-gallery {
            margin-block: var(--section-space);
            img {
                margin-inline: auto;
                width: 100%;
                max-width: 100%;
                height: auto;
            }
            .scrolling-gallery-header {
                margin-block: var(--section-space);
                .scrolling-gallery-header-text {
                    font-size: 1rem;
                    font-weight: 700;
                }
            }
            .scrolling-gallery-header {
                margin-block: var(--section-space);
                .scrolling-gallery-header-text {
                    font-size: 1rem;
                    font-weight: 700;
                }
            }
            .scrolling-gallery-footer {
                .scrolling-gallery-footer-text {
                    font-size: 0.75rem;
                    max-width: 25rem;
                    margin-inline: auto;
                }
            }
        }
        .image-and-text {
            margin-block: var(--section-space);
            h3 {
                margin-top: 1rem;
                margin-bottom: 0;
            }
            strong {
                font-size: 0.875rem;
                display: block;
                margin-bottom: 1rem;
            }
            .image-and-text-paragraph {
                font-size: 0.75rem;
                max-width: 600px;
                font-weight: 500;
            }
        }
        .full-w-image-section {
            position: relative;
            .overlay-content {
                position: absolute;
                bottom: 10%;
                left: 5%;
                p {
                    color: #fff;
                    font-size: 0.875rem;
                    margin: 0;
                    &.bigger {
                        font-weight: 700;
                        font-size: 1.25rem;
                        @media (min-width: 768px) {
                            font-size: 2rem;
                        }
                    }
                }
            }
        }
        .ioniq-features-section {
            padding-block: var(--section-space);
            background-color: #fff;
            color: #000;

            .features-header {
                text-align: center;
                margin-bottom: 3.5rem;
                h2 {
                    font-size: var(--header-title-fs);
                    font-weight: 700;
                    margin: 0;
                    letter-spacing: -0.5px;
                }
            }

            .features-slider {
                position: relative;
                .feature-card {
                    display: flex;
                    flex-direction: column;
                    .card-image {
                        width: 100%;
                        aspect-ratio: 4 / 3;
                        overflow: hidden;
                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            display: block;
                        }
                    }
                    .card-content {
                        padding-top: 1.5rem;

                        h3 {
                            font-size: 1.25rem;
                            font-weight: 700;
                            margin: 0 0 0.75rem 0;
                            line-height: 1.3;
                        }

                        .text {
                            font-size: 0.875rem;
                            margin: 0;
                        }
                    }
                }
            }
        }
        .promo-hero-slider {
            margin-block: var(--section-space);
            .splide__slide img {
                width: 100%;
                aspect-ratio: 21 / 9;
                object-fit: cover;
                display: block;

                @media (max-width: 767px) {
                    aspect-ratio: 16 / 9;
                }
            }
            .splide__pagination {
                li:before {
                    display: none;
                }
            }
        }
        .mpgd-faq {
            .accordion-title {
                padding-right: 2rem;
            }
        }
    }
}