.product-title {
	font-weight: 400;
	font-size: 90px;
	line-height: 110px;
	position: absolute;
	top: 200px;
	left: 150px;
	color: #FFF;
	text-shadow: 10px 10px 20px #000;
	font-family: 'Impact';
}

@media (max-width: 1024px) {
    h1 {
        font-size: 50px;
        padding-top: 60px;
        padding-bottom: 0px;
    }
}

@media (max-width: 768px) {
    h1 {
        font-size: 40px;
    }
}

#offers-section, #offers-section-mobile {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding-top: 120px;
    padding-bottom: 100px;
    background-color: #F8F8F8;

    .offers-search {
        position: absolute;
        top: -50px;

        #search-offers {
            width: 600px;
            font-size: 34px;
            color: #747474;
            padding: 40px;
            padding-left: 80px;
            border-radius: 20px;
            box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
        }

        .search-icon {
            position: absolute; 
            top: 20px; 
            left: 20px;
        }
    }

    .offers-grid {
        width: 100%;
        max-width: 1400px;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 30px;

        .offer-card {
            position: relative;
            height: 600px;
            width: 370px;
            box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
            transition: 0.3s;
            display: flex;
            flex-direction: column;
            justify-content: end;

            &:hover {
                transform: translateY(-40px);

                .offer-button {
                    bottom: -50px;
                }
            }

            .offer-image {
                width: 100%;
                height: auto;
                box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
                overflow: hidden;

                img {
                    width: 100%;
                    height: 310px;
                }

                .discount-label {
                    position: absolute;
                    width: 100px;
                    height: 100px;
                    background-color: #C60303;
                    border-radius: 50%;
                    top: 10px;
                    right: 10px;
                    color: white;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    flex-direction: column;
                    transform: rotate(-20deg);
                    font-size: 25px;
                    font-weight: 800;
                    line-height: 25px;
                }
            }

            .offer-dateBox {
                position: absolute;
                width: 220px;
                height: 40px;
                top: 290px;
                left: 20px;
                background-color: #FFA43F;
                border-radius: 20px;
                display: flex;
                justify-content: center;
                align-items: center;

                .offer-date {
                    color: white;
                    font-size: 25px;
                    font-family: 'Times new roman';
                }
            }

            .offer-details {
                height: 290px;
                padding: 20px;
                padding-top: 40px;
                display: flex;
                flex-direction: column;
                justify-content: space-between;
                background-color: #fff;

                .offer-title {
                    a {
                        font-size: 34px;
                        color: #474747 !important;
                        font-weight: 800;
                        text-decoration: none;
                    }
                }

                .offer-seatsAndPrice {
                    .offer-seats {
                        display: flex;
                        align-items: center;
                        height: 55px;

                        .seats {
                            font-size: 21px;
                            color: #474747;
                            font-weight: 600;
                        }
                        strong {
                            color: #FFA43F;
                            font-size: 34px;
                            margin-left: 10px;
                        }
                    }
                }

                .offer-price {
                    display: flex;
                    flex-direction: column;
                    margin-top: 10px;

                    .textBeforePrice {
                        display: flex;
                        flex-direction: column;
                        font-size: 21px;
                        color: #474747 !important;
                        font-weight: 400 !important;
                    }
                    .amount {
                        color: #FFA43F !important;
                        font-size: 34px;
                        font-family: 'Impact';
                        margin-top: -10px;
                    }
                    .allPrice {
                        display: flex;
                        gap: 10px;

                        .amount {
                            color: #C60303;
                        }

                        .regular{
                            margin-top: -10px;
                            color: #9D9D9D !important;

                            bdi {
                                font-size: 21px;
                                color: #9D9D9D !important;
                            }
                        }

                        .addPrice {
                            font-size: 21px;
                            color: #02406E;
                            font-family: 'Impact';
                            display: block;
                        }
                    }
                }
            }

            .offer-button {
                position: absolute;
                bottom: 0px;
                left: 50%;
                transform: translate(-50%, 0);
                width: 80%;
                transition: 0.3s;
                z-index: -1;

                a {
                    width: 100%;
                    text-align: center;
                    font-size: 30px;
                    font-weight: 600;
                    background-color: #FFA434;
                    border-radius: 0 0 20px 20px;
                    text-decoration: none;
                }
            }
        }
        .offer-card.no-seats-overlay {
            position: relative;
            opacity: 0.7;
        }

        .overlay {
            /* display: flex;
            flex-direction: column;
            justify-content: space-around;
            align-items: center;
            z-index: 10;
            pointer-events: auto; */

            span {
                width: 100%;
                height: 55px;
                display: flex;
                justify-content: center;
                align-items: center;
                color: black;
                background-color: #fff;
                font-size: 21px;
                position: absolute;
                top: 100px;
            }

            .reserve-button {
                background-color: unset;
                color: #FFA43F;
                border: none;
                box-shadow: none;
                height: 55px;
                width: 100%;
                font-size: 21px;
                cursor: pointer;
                z-index: 20; 
                display: flex;
                align-items: center;
                padding: 0px;
                position: absolute;
                bottom: 82px;
                padding-left: 19px;
                text-decoration: underline;
                a {
                    color: #FFA43F;
                }
            }
        }

        .no-seats-overlay .offer-image a {
            pointer-events: none; 
        }
    }
    .pagination {
        padding-top: 40px;
        display: flex;
        gap: 20px;

        .page-numbers {
            background-color: #fff;
            box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 34px;
            height: 60px;
            width: 60px;
            border-radius: 50%;
            text-decoration: none;
            color: #9D9D9D;
        }
        .current {
            color: black;
        }
        .next, .prev {
            padding-bottom: 6px;
        }
    }

    .offers-sort {
        position: absolute;
        top: 40px;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;

        #sort-offers {
            width: 300px;
        }
    }
}

@media (max-width: 1024px) {
    #offers-section, #offers-section-mobile {
        padding-top: 200px;
        padding-bottom: 50px;

        .offers-search {
            top: 50px;

            #search-offers {
                width: 500px;
                padding: 30px;
                font-size: 25px;
                padding-left: 60px;
            }

            .search-icon {
                top: 10px;
                left: 10px;
            }
        }

        .offers-sort {
            top: 150px;
            left: 100px;
        }
        .offers-grid {
            .offer-card {
                &:hover {
                    transform: none;
        
                    .offer-button {
                        bottom: unset;
                    }
                }
            }
        }
    }
}

@media (max-width: 768px) {
    #offers-section {
        padding-top: 150px;
        
        .offers-search {
            top: 30px;
            #search-offers {
                width: 300px;
                padding: 25px;
                font-size: 17px;
                padding-left: 40px;
                border-radius: 30px;
            }

            .search-icon {
                top: 10px;
                left: 10px;

                svg {
                    width: 30px;
                    height: 30px;
                }
            }
        }
        .offers-sort {
            top: 100px;
            left: 20px;
        }
    }
}


@media (min-width: 768px) {
    #offers-section-mobile {
        display: none;
    }
}
@media (max-width: 768px) {
    #offers-section {
        display: none;
    }
    #offers-section-mobile {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 80px 10px 100px 10px;
        background-color: #F8F8F8;
        overflow: hidden;
        justify-content: center;

        .offers-search {
            position: absolute;
            top: 30px;

            #search-offers-mobile {
                width: 300px;
                font-size: 17px;
                color: #747474;
                padding: 25px;
                padding-left: 40px;
                border-radius: 30px;
                box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
            }

            .search-icon {
                position: absolute; 
                top: 10px; 
                left: 10px;

                svg {
                    width: 30px;
                    height: 30px;
                }
            }
        }
        .offers-sort {
            top: 100px;
            left: 20px;
        } 
        .offers-grid {
            width: 100%;
            max-width: 100%;
            display: flex;
            flex-wrap: nowrap;
            justify-content: flex-start;
            overflow-x: auto; /* Przewijanie poziome */
            scroll-behavior: smooth; /* Płynne przewijanie */
            -webkit-overflow-scrolling: touch; /* Przewijanie na iOS */
            gap: 10px;
            margin-top: 60px;
            padding: 20px;
            box-sizing: border-box;

            .offer-card {
                flex: 0 0 auto; /* Zapobiega zwijaniu elementów */
                scroll-snap-align: start; /* Ustawienie pozycji snapowania */
                position: relative;
                height: 560px;
                width: 290px;
                box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
                transition: 0.3s;
                display: flex;
                flex-direction: column;
                justify-content: end;

                .offer-image {
                    width: 100%;
                    height: auto;
                    box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.25);
                    overflow: hidden;

                    img {
                        width: 100%;
                        height: 270px;
                    }

                    .discount-label {
                        position: absolute;
                        width: 100px;
                        height: 100px;
                        background-color: #C60303;
                        border-radius: 50%;
                        top: 10px;
                        right: 10px;
                        color: white;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        flex-direction: column;
                        transform: rotate(-20deg);
                        font-size: 25px;
                        font-weight: 800;
                        line-height: 25px;
                    }
                }

                .offer-dateBox {
                    position: absolute;
                    width: 220px;
                    height: 40px;
                    top: 250px;
                    left: 50%;
                    transform: translateX(-50%);
                    background-color: #FFA43F;
                    border-radius: 20px;
                    display: flex;
                    justify-content: center;
                    align-items: center;

                    .offer-date {
                        color: white;
                        font-size: 25px;
                        font-family: 'Times new roman';
                    }
                }

                .offer-details {
                    height: 290px;
                    padding: 20px;
                    padding-top: 40px;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                    background-color: #fff;

                    .offer-title {
                        a {
                            font-size: 28px;
                            color: #474747 !important;
                            font-weight: 800;
                            text-decoration: none;
                        }
                    }

                    .offer-seatsAndPrice {
                        .offer-seats {
                            display: flex;
                            align-items: center;
                            height: 55px;

                            .seats {
                                font-size: 17px;
                                color: #474747;
                                font-weight: 600;
                            }
                            strong {
                                color: #FFA43F;
                                font-size: 28px;
                                margin-left: 10px;
                            }
                        }
                    }

                    .offer-price {
                        display: flex;
                        flex-direction: column;
                        margin-top: 10px;

                        .textBeforePrice {
                            display: flex;
                            flex-direction: column;
                            font-size: 21px;
                            color: #474747 !important;
                            font-weight: 400 !important;
                        }
                        .amount {
                            color: #FFA43F !important;
                            font-size: 34px;
                            font-family: 'Impact';
                            margin-top: -10px;
                        }
                        .allPrice {
                            display: flex;
                            gap: 10px;

                            .amount {
                                color: #C60303;
                            }

                            .regular{
                                margin-top: -10px;
                                color: #9D9D9D !important;

                                bdi {
                                    font-size: 21px;
                                    color: #9D9D9D !important;
                                }
                            }

                            .addPrice {
                                font-size: 21px;
                                color: #02406E;
                                font-family: 'Impact';
                                display: block;
                            }
                        }
                    }
                }

                .offer-button {
                    position: absolute;
                    bottom: 0px;
                    left: 50%;
                    transform: translate(-50%, 0);
                    width: 80%;
                    transition: 0.3s;
                    z-index: -1;

                    a {
                        width: 100%;
                        text-align: center;
                        font-size: 30px;
                        font-weight: 600;
                        background-color: #FFA434;
                        border-radius: 0 0 20px 20px;
                        text-decoration: none;
                    }
                }
            }
            .offer-card.no-seats-overlay {
                position: relative;
                opacity: 0.7;
            }

            .overlay {
                span {
                    width: 100%;
                    height: 55px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    color: black;
                    background-color: #fff;
                    font-size: 21px;
                    position: absolute;
                    top: 100px;
                }

                .reserve-button {
                    background-color: unset;
                    color: #FFA43F;
                    border: none;
                    box-shadow: none;
                    height: 55px;
                    width: 100%;
                    font-size: 21px;
                    cursor: pointer;
                    z-index: 20; 
                    display: flex;
                    align-items: center;
                    padding: 0px;
                    position: absolute;
                    bottom: 82px;
                    padding-left: 19px;
                    text-decoration: underline;
                    a {
                        color: #FFA43F;
                    }
                }
            }

            .no-seats-overlay .offer-image a {
                pointer-events: none; 
            }
        }
    }
}