/*=============== FLEET ===============*/
.fleet {
    padding-block: 205px 235px;
    background-color: var(--white);

    .fleet__container {
        .fleet__content {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            gap: 60px;

            .fleet__header {
                max-width: 834px;
                text-align: center;
                display: flex;
                flex-direction: column;
                gap: 16px;

                h2 {
                    font-size: 40px;
                    font-weight: var(--font-bold);
                    color: var(--headings);

                    .highlight {
                        color: var(--orang);
                    }
                }

                p {
                    font-size: 22px;
                    line-height: 1.7;
                    color: var(--subtext);
                }
            }

            .fleet__grid {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 49px 16px;

                .fleet__card {
                    background-color: var(--white);
                    border: 1px solid #D6D3D1;
                    border-radius: 22px;
                    overflow: hidden;
                    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
                    transition: transform 0.3s ease, box-shadow 0.3s ease;
                    display: flex;
                    flex-direction: column;
                    max-width: 425px;
                    width: 100%;

                    &:hover {
                        transform: translateY(-5px);
                        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
                    }

                    .card__img__wrapper {
                        position: relative;
                        width: 100%;
                        height: 312px;
                        overflow: hidden;

                        .card__img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            transition: transform 0.5s ease;
                        }

                        .card__tag {
                            position: absolute;
                            top: 12px;
                            right: 17px;
                            left: auto;
                            background-color: var(--blue);
                            color: var(--white);
                            padding: 3.5px 12px;
                            border-radius: 4px;
                            font-size: 18px;
                            font-weight: var(--font-semi-bold);
                            z-index: 2;
                        }
                    }

                    &:hover .card__img__wrapper .card__img {
                        transform: scale(1.05);
                    }

                    .card__body {
                        padding: 24px;
                        display: flex;
                        flex-direction: column;
                        gap: 6.5px;
                        flex-grow: 1;

                        .card__desc {
                            font-size: 22px;
                            color: var(--subtext);
                        }

                        .card__details {
                            display: flex;
                            flex-direction: column;
                            gap: 20px;
                            border-top: 1px solid #F3F4F6;
                            padding-top: 19px;

                            li {
                                display: flex;
                                align-items: center;
                                gap: 12px;
                                font-size: 20px;
                                color: var(--text);

                                i {
                                    color: var(--orang);
                                    font-size: 20px;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

/*=============== FORM FLEET ===============*/
.form__fleet {
    padding-block: 50px 50px;
    background-image: url('../image/bg-form.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100dvh;


    .form__fleet__container {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        width: 100%;

        .form__fleet__card {
            background-color: var(--white);
            border-radius: 12px;
            width: 100%;
            max-width: 975px;
            padding-block: 46.5px 73.5px;
            padding-inline: 64px;
            display: flex;
            flex-direction: column;
            gap: 33px;

            .form__fleet__header {
                display: flex;
                flex-direction: column;
                gap: 8px;

                h2 {
                    font-size: 28px;
                    font-weight: var(--font-medium);
                    color: #292524;
                }

                p {
                    font-size: 18px;
                    font-weight: var(--font-regular);
                    color: #57534E;
                }
            }

            .form__fleet__body {
                display: flex;
                flex-direction: column;
                gap: 14px;

                .form__grid {
                    display: grid;
                    grid-template-columns: repeat(2, 1fr);
                    gap: 22px;

                    .form__group {
                        display: flex;
                        flex-direction: column;

                        .form__input__wrapper {
                            display: flex;
                            align-items: center;
                            justify-content: space-between;
                            border: 1px solid #D6D3D1;
                            border-radius: 4px;
                            background-color: #FEFEFE;
                            padding: 14px 16px;
                            transition: all 0.3s ease;
                            position: relative;

                            &:focus-within {
                                border-color: var(--orang);
                            }

                            .form__input {
                                width: 100%;
                                border: none;
                                outline: none;
                                background: transparent;
                                font-size: 16px;
                                font-weight: var(--font-semi-bold);
                                color: var(--subtext);
                                text-align: right;

                            }
                        }

                        /* Custom Select Wrapper Styling */
                        .custom__select__wrapper {
                            position: relative;
                            display: flex;
                            flex-direction: column;

                            .custom__select__trigger {
                                display: flex;
                                align-items: center;
                                justify-content: space-between;
                                flex-direction: row-reverse;
                                border: 1px solid #D6D3D1;
                                border-radius: 4px;
                                background-color: #FEFEFE;
                                padding: 14px 16px;
                                cursor: pointer;
                                transition: all 0.3s ease;
                                width: 100%;

                                .select__arrow {
                                    font-size: 16px;
                                    color: var(--headings);
                                    transition: transform 0.3s ease, color 0.3s ease;
                                }

                                .custom__select__text {
                                    font-size: 18px;
                                    font-weight: var(--font-regular);
                                    color: var(--headings);
                                    user-select: none;
                                }
                            }

                            /* Open state styling */
                            &.open {
                                .custom__select__trigger {
                                    border-color: var(--orang) !important;
                                    box-shadow: 0 0 0 3px rgba(245, 166, 35, 0.1);

                                    .select__arrow {
                                        color: var(--orang);
                                        transform: rotate(180deg);
                                    }

                                    .custom__select__text {
                                        color: var(--orang);
                                    }
                                }

                                .custom__options {
                                    display: block;
                                }
                            }

                            /* Dropdown List */
                            .custom__options {
                                position: absolute;
                                top: calc(100% + 6px);
                                left: 0;
                                width: 100%;
                                background-color: var(--white);
                                border: 1px solid #E5E7EB;
                                border-radius: 8px;
                                box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
                                z-index: 99;
                                max-height: 240px;
                                overflow-y: auto;
                                display: none;

                                li {
                                    padding: 12px 18px;
                                    font-size: 16px;
                                    font-weight: var(--font-medium);
                                    color: var(--headings);
                                    cursor: pointer;
                                    text-align: right;
                                    transition: all 0.2s ease;

                                    &:hover {
                                        background-color: #F9FAFB;
                                        color: var(--orang);
                                        padding-right: 22px;
                                    }

                                    &.active {
                                        background-color: rgba(245, 166, 35, 0.05);
                                        color: var(--orang);
                                        font-weight: var(--font-bold);
                                    }
                                }
                            }
                        }
                    }
                }

                .form__submit__btn {
                    width: 100%;
                    background-color: var(--orang);
                    color: var(--white);
                    border: none;
                    border-radius: 6px;
                    padding: 16px;
                    font-size: 24px;
                    font-weight: var(--font-medium);
                    cursor: pointer;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    gap: 12px;
                    transition: background-color 0.3s ease;

                    i {
                        font-size: 20px;
                    }

                    &:hover {
                        background-color: var(--orang-hover);
                    }
                }
            }
        }
    }
}

/*=============== RESPONSIVE (FLEET) ===============*/
@media (max-width: 1200px) {
    .fleet {
        padding-block: 150px 100px;

        .fleet__container {
            .fleet__content {
                .fleet__grid {
                    gap: 30px 16px;
                }
            }
        }
    }
}

@media (max-width: 991px) {
    .fleet {
        padding-block: 170px 60px;

        .fleet__container {
            .fleet__content {
                gap: 40px;

                .fleet__header {
                    h2 {
                        font-size: 32px;
                    }

                    p {
                        font-size: 18px;
                    }
                }

                .fleet__grid {
                    grid-template-columns: repeat(2, 1fr);
                    gap: 25px 20px;

                    .fleet__card {
                        .card__img__wrapper {
                            height: 250px;
                        }

                        .card__body {
                            padding: 20px;

                            .card__desc {
                                font-size: 18px;
                            }

                            .card__details {
                                gap: 12px;
                                padding-top: 15px;

                                li {
                                    font-size: 16px;

                                    i {
                                        font-size: 16px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .form__fleet {
        padding-block: 150px;
        min-height: auto;

        .form__fleet__container {
            .form__fleet__card {
                padding: 40px 30px;
                gap: 30px;

                .form__fleet__header {
                    h2 {
                        font-size: 30px;
                    }

                    p {
                        font-size: 16px;
                    }
                }

                .form__fleet__body {
                    .form__grid {
                        gap: 15px;
                    }

                    .form__submit__btn {
                        font-size: 18px;
                        padding: 14px;
                    }
                }
            }
        }
    }
}

@media (max-width: 768px) {
    .fleet {
        .fleet__container {
            .fleet__content {
                .fleet__grid {
                    justify-items: center;
                }
            }
        }
    }

    .section {
        padding-inline: 1.5rem;
    }
}

@media (max-width: 576px) {
    .fleet {
        padding-block: 150px 60px;

        .fleet__container {
            .fleet__content {
                .fleet__header {
                    h2 {
                        font-size: 32px;
                    }

                    p {
                        font-size: 18px;
                    }
                }

                .fleet__grid {
                    grid-template-columns: 1fr;

                    .fleet__card {
                        .card__img__wrapper {
                            height: 270px;
                        }

                        .card__body {
                            padding: 17px;
                            gap: 22px;

                            .card__desc {
                                font-size: 18px;
                            }

                            .card__details {
                                gap: 18px;
                                padding-top: 15px;

                                li {
                                    font-size: 20px;

                                    i {
                                        font-size: 20px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .form__fleet {
        padding-block: 100px;

        .form__fleet__container {
            .form__fleet__card {
                padding: 30px 15px;

                .form__fleet__header {
                    text-align: center;
                    align-items: center;

                    h2 {
                        font-size: 24px;
                    }

                    p {
                        font-size: 16px;
                        width: 80%;
                    }
                }

                .form__fleet__body {
                    .form__grid {
                        grid-template-columns: 1fr;
                        gap: 22px;
                    }

                    .form__submit__btn {
                        font-size: 24px;
                        padding: 14px;
                    }
                }
            }
        }
    }
}