/* =========================================================
   ENTARTICA BOOKING ENGINE
   CLEAN RESPONSIVE DESIGN
   ========================================================= */


/* =========================================================
   GLOBAL
   ========================================================= */

#entartica-booking-app {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 28px 24px 80px;
    box-sizing: border-box;

    font-family: Arial, Helvetica, sans-serif;
    color: #172033;
}

#entartica-booking-app *,
#entartica-booking-app *::before,
#entartica-booking-app *::after {
    box-sizing: border-box;
}


/* =========================================================
   MAIN WRAPPER
   ========================================================= */

.entartica-booking-wrapper {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.entartica-booking-header {
    text-align: center;
    margin-bottom: 38px;
}

.entartica-step-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 7px 18px;
    margin-bottom: 14px;

    border-radius: 50px;

    background: #172b4d;
    color: #ffffff;

    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.entartica-booking-header h2 {
    margin: 0 0 10px;
    text-transform: uppercase;
    color: #172033;

    font-size: 42px;
    line-height: 1.15;
    font-weight: 600;
}

.entartica-booking-header p {
    margin: 0;

    color: #667085;

    font-size: 18px;
    line-height: 1.6;
}

.entartica-booking-header p strong {
    color: #172033;
}


/* =========================================================
   STEP 1 — PARK GRID
   ========================================================= */
/* =========================================================
   STEP 1 — PARK GRID
   ========================================================= */
/* =========================================================
   STEP 1 — ENTARTICA LOCATION SELECTOR
   ========================================================= */

#entartica-booking-app .entartica-location-screen {
    width: 100%;
    max-width: 900px;

    margin: 20px auto;

    padding: 28px 26px 30px;

    box-sizing: border-box;

    background:
        linear-gradient(
            180deg,
            #48c5e3 0%,
            #69cfe7 52%,
            #a9e4ef 100%
        );

    border: 1px solid rgba(255,255,255,0.55);

    border-radius: 22px;

    box-shadow:
        0 18px 45px rgba(31, 78, 121, 0.16);
}


/* =========================================================
   HEADER
   ========================================================= */

#entartica-booking-app
.entartica-location-screen
.entartica-booking-header {
    margin: 0 0 22px;

    text-align: center;
}


#entartica-booking-app
.entartica-location-screen
.entartica-booking-header h2 {
    max-width: 680px;

    margin: 0 auto 8px;

    color: #55206f;

    font-size: 30px;
    line-height: 1.08;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 0;
}


#entartica-booking-app
.entartica-location-screen
.entartica-booking-header p {
    margin: 0;

    color: #55206f;

    font-size: 14px;
    line-height: 1.4;

    font-weight: 600;
}


/* =========================================================
   OUR LOCATIONS BAR
   ========================================================= */

#entartica-booking-app .entartica-location-heading {
    display: flex;

    align-items: center;
    justify-content: space-between;

    width: 100%;

    min-height: 50px;

    margin: 0 0 14px;

    padding: 0 18px;

    box-sizing: border-box;

    background: #55206f;

    border-radius: 10px;

    color: #ffffff;

    font-size: 16px;
    line-height: 1;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 0.2px;
}


#entartica-booking-app
.entartica-location-arrow {
    display: flex;
    align-items: center;

    font-size: 21px;
    line-height: 1;
}


/* =========================================================
   PARK GRID
   ========================================================= */

#entartica-booking-app .entartica-park-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 12px;

    width: 100%;
}


/* =========================================================
   PARK CARD
   ========================================================= */

#entartica-booking-app .entartica-park-card {
    display: flex;

    align-items: center;

    width: 100%;
    min-width: 0;
    height: 86px;

    margin: 0;
    padding: 9px 18px;

    box-sizing: border-box;

    background:
        linear-gradient(
            100deg,
            rgba(255,255,255,0.13),
            rgba(255,255,255,0.28)
        );

    border: 1px solid #ec1684;

    border-radius: 11px;

    color: #55206f;

    appearance: none;
    -webkit-appearance: none;

    cursor: pointer;

    text-align: left;

    box-shadow:
        0 2px 7px rgba(84, 32, 111, 0.04);

    transition:
        transform 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}


#entartica-booking-app .entartica-park-card:hover {
    background:
        rgba(255,255,255,0.42);

    border-color: #d90074;

    transform: translateY(-2px);

    box-shadow:
        0 7px 18px rgba(84, 32, 111, 0.12);
}


/* =========================================================
   PARK IMAGE
   ========================================================= */

#entartica-booking-app .entartica-park-image {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 62px;

    width: 62px;
    height: 62px;

    margin: 0 15px 0 0;

    padding: 4px;

    box-sizing: border-box;

    overflow: hidden;

    background: #e8edf1;

    border-radius: 50%;
}


#entartica-booking-app .entartica-park-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    border-radius: 50%;

    transition:
        transform 0.25s ease;
}


#entartica-booking-app
.entartica-park-card:hover
.entartica-park-image img {
    transform: scale(1.06);
}


/* =========================================================
   PARK CONTENT
   ========================================================= */

#entartica-booking-app .entartica-park-content {
    display: flex;
    align-items: center;

    flex: 1;

    min-width: 0;

    padding: 0;
}


#entartica-booking-app .entartica-park-content h3 {
    overflow: hidden;

    margin: 0;

    color: #55206f;

    font-size: 18px;
    line-height: 1.15;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 0.1px;

    white-space: nowrap;

    text-overflow: ellipsis;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    #entartica-booking-app .entartica-location-screen {
        max-width: 720px;

        padding: 24px 20px 26px;
    }


    #entartica-booking-app
    .entartica-location-screen
    .entartica-booking-header h2 {
        font-size: 27px;
    }


    #entartica-booking-app .entartica-park-card {
        height: 82px;

        padding-left: 14px;
        padding-right: 14px;
    }


    #entartica-booking-app .entartica-park-image {
        flex-basis: 56px;

        width: 56px;
        height: 56px;

        margin-right: 12px;
    }


    #entartica-booking-app .entartica-park-content h3 {
        font-size: 16px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    #entartica-booking-app .entartica-location-screen {
        width: 100%;
        max-width: 100%;

        margin: 10px auto;

        padding: 20px 12px 24px;

        border-radius: 16px;
    }


    #entartica-booking-app
    .entartica-location-screen
    .entartica-booking-header {
        margin-bottom: 17px;
    }


    #entartica-booking-app
    .entartica-location-screen
    .entartica-booking-header h2 {
        font-size: 19px;

        line-height: 1.1;
    }


    #entartica-booking-app
    .entartica-location-screen
    .entartica-booking-header p {
        margin-top: 6px;

        font-size: 11px;
    }


    /* LOCATION BAR */

    #entartica-booking-app .entartica-location-heading {
        min-height: 42px;

        margin-bottom: 9px;

        padding: 0 13px;

        border-radius: 8px;

        font-size: 12px;
    }


    #entartica-booking-app
    .entartica-location-arrow {
        font-size: 17px;
    }


    /* 2 COLUMN MOBILE GRID */

    #entartica-booking-app .entartica-park-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;
    }


    /* MOBILE CARD */

    #entartica-booking-app .entartica-park-card {
        flex-direction: column;

        justify-content: center;
        align-items: center;

        height: 108px;

        padding: 8px 5px;

        border-radius: 9px;

        text-align: center;
    }


    /* MOBILE IMAGE */

    #entartica-booking-app .entartica-park-image {
        flex: 0 0 auto;

        width: 48px;
        height: 48px;

        margin: 0 0 6px;

        padding: 3px;
    }


    /* MOBILE NAME */

    #entartica-booking-app .entartica-park-content {
        justify-content: center;

        width: 100%;
    }


    #entartica-booking-app .entartica-park-content h3 {
        width: 100%;

        font-size: 11.5px;

        line-height: 1.15;

        text-align: center;

        white-space: nowrap;

        overflow: hidden;

        text-overflow: ellipsis;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

    #entartica-booking-app .entartica-location-screen {
        padding-left: 9px;
        padding-right: 9px;
    }


    #entartica-booking-app .entartica-park-grid {
        gap: 7px;
    }


    #entartica-booking-app .entartica-park-card {
        height: 102px;

        padding: 7px 4px;
    }


    #entartica-booking-app .entartica-park-image {
        width: 44px;
        height: 44px;
    }


    #entartica-booking-app .entartica-park-content h3 {
        font-size: 10.5px;
    }

}
/* =========================================================
   STEP 2 — CALENDAR
   ========================================================= */

/* =========================================================
   STEP 2 — DATE SCREEN
   ========================================================= */

#entartica-booking-app .entartica-date-screen {
    width: 100%;
}


/* =========================================================
   STEP 2 HEADER
   ========================================================= */

#entartica-booking-app
.entartica-date-screen
.entartica-booking-header {
    margin-bottom: 26px;

    text-align: center;
}


#entartica-booking-app
.entartica-date-screen
.entartica-step-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 34px;

    margin-bottom: 12px;

    padding: 0 18px;

    border-radius: 20px;

    background: #172b4d;

    color: #ffffff;

    font-size: 12px;
    font-weight: 500;

    letter-spacing: 0.6px;
}


#entartica-booking-app
.entartica-date-screen
.entartica-booking-header h2 {
    margin: 0 0 8px;

    color: #172b4d;

    font-size: 38px;
    line-height: 1.08;

    font-weight: 600;

    text-transform: uppercase;
}


#entartica-booking-app
.entartica-date-screen
.entartica-booking-header p {
    margin: 0;

    color: #667085;

    font-size: 16px;
    line-height: 1.5;
}


#entartica-booking-app
.entartica-date-screen
.entartica-booking-header p strong {
    color: #172b4d;

    font-weight: 600;
}


/* =========================================================
   CALENDAR CARD
   ========================================================= */

#entartica-booking-app .entartica-calendar-card {
    width: 100%;
    max-width: 760px;

    margin: 0 auto;

    padding: 26px 30px 28px;

    box-sizing: border-box;

    background: #ffffff;

    border: 1px solid #e1e6ee;

    border-radius: 20px;

    box-shadow:
        0 12px 35px rgba(16, 24, 40, 0.08);
}


/* =========================================================
   SELECTED PARK ROW
   ========================================================= */

#entartica-booking-app .entartica-selected-park-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    width: 100%;
}


/* =========================================================
   BACK TO PARKS
   ========================================================= */

#entartica-booking-app .entartica-date-back-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-height: 40px;
    min-width: 145px;

    margin: 0;
    padding: 9px 16px;

    border: 1px solid #d6dde7 !important;

    border-radius: 9px !important;

    background: #172b4d !important;

    color: #ffffff !important;

    font-family: Arial, Helvetica, sans-serif !important;

    font-size: 13px !important;
    font-weight: 600 !important;

    line-height: 1.2 !important;

    cursor: pointer;

    box-shadow: none !important;

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}


#entartica-booking-app
.entartica-date-back-button:hover {
    background: #f5f7fa !important;

    border-color: #172b4d !important;

    color: #172b4d !important;

    transform: translateY(-1px);
}


#entartica-booking-app
.entartica-date-back-button span {
    font-size: 16px;

    line-height: 1;
}


/* =========================================================
   SELECTED PARK
   ========================================================= */

#entartica-booking-app .entartica-selected-park-name {
    display: flex;

    flex-direction: column;

    align-items: flex-end;

    min-width: 0;
}


#entartica-booking-app
.entartica-selected-park-name span {
    margin-bottom: 3px;

    color: #7b8494;

    font-size: 11px;
    line-height: 1.2;

    font-weight: 500;
}


#entartica-booking-app
.entartica-selected-park-name strong {
    color: #172b4d;

    font-size: 19px;
    line-height: 1.2;

    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   DIVIDER
   ========================================================= */

#entartica-booking-app .entartica-date-divider {
    width: 100%;

    height: 1px;

    margin: 18px 0 24px;

    background: #e9edf2;
}


/* =========================================================
   CALENDAR WRAPPER
   ========================================================= */

#entartica-booking-app .entartica-calendar-wrapper {
    display: flex;

    justify-content: center;

    width: 100%;

    margin: 0 auto;
}


#entartica-booking-app
.entartica-calendar-wrapper input {
    position: absolute;

    width: 1px;
    height: 1px;

    opacity: 0;

    pointer-events: none;
}


/* =========================================================
   FLATPICKR
   ========================================================= */
   
.flatpickr-rContainer {
    width: 100%;
}

.flatpickr-days{
    width: 100%;
}
.dayContainer{
    width: 100%;
    min-width: 100%;
}

#entartica-booking-app
.flatpickr-calendar {
    width: 100% !important;
    max-width: 440px !important;

    margin: 0 auto !important;

    background: #ffffff !important;

    border: 1px solid #e1e6ee !important;

    border-radius: 16px !important;

    box-shadow:
        0 8px 25px rgba(16, 24, 40, 0.06) !important;

    overflow: hidden;
}


#entartica-booking-app
.flatpickr-calendar.inline {
    display: block;

    top: auto;
}


#entartica-booking-app
.flatpickr-months {
    padding: 10px 10px 4px;
}


#entartica-booking-app
.flatpickr-current-month {
    color: #172b4d;

    font-size: 16px;

    font-weight: 600;
}


#entartica-booking-app
.flatpickr-weekdays {
    background: #f7f9fc;
}


#entartica-booking-app
span.flatpickr-weekday {
    color: #526071;

    font-size: 11px;

    font-weight: 600;
}


#entartica-booking-app
.flatpickr-day {
    max-width: none;

    height: 44px;

    line-height: 44px;

    border-radius: 9px;

    color: #344054;

    font-size: 14px;
}


#entartica-booking-app
.flatpickr-day:hover {
    background: #eef3f8;

    border-color: transparent;

    color: #172b4d;
}


#entartica-booking-app
.flatpickr-day.selected,
#entartica-booking-app
.flatpickr-day.startRange,
#entartica-booking-app
.flatpickr-day.endRange {
    background: #172b4d !important;

    border-color: #172b4d !important;

    color: #ffffff !important;
}


#entartica-booking-app
.flatpickr-day.today {
    border-color: #9aa7b8;

    color: #172b4d;
}


#entartica-booking-app
.flatpickr-day.prevMonthDay,
#entartica-booking-app
.flatpickr-day.nextMonthDay {
    color: #c8ced7;
}


/* =========================================================
   SELECTED DATE
   ========================================================= */

#entartica-booking-app .entartica-selected-date {
    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    width: 100%;

    min-height: 72px;

    margin-top: 22px;

    padding: 13px 18px;

    box-sizing: border-box;

    background: #f7f9fc;

    border: 1px solid #e5eaf0;

    border-radius: 12px;

    text-align: center;
}


#entartica-booking-app
.entartica-selected-date span {
    margin-bottom: 5px;

    color: #7b8494;

    font-size: 11px;
    line-height: 1.2;

    font-weight: 600;

    letter-spacing: 0.5px;

    text-transform: uppercase;
}


#entartica-booking-app
.entartica-selected-date strong {
    color: #172b4d;

    font-size: 15px;
    line-height: 1.4;

    font-weight: 600;
}


/* =========================================================
   CONTINUE ACTION
   ========================================================= */

#entartica-booking-app .entartica-date-action {
    display: flex;

    justify-content: flex-end;

    width: 100%;

    margin-top: 18px;
}


#entartica-booking-app .entartica-date-next-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-width: 205px;
    min-height: 45px;

    margin: 0;
    padding: 11px 20px;

    border: 1px solid #172b4d !important;

    border-radius: 9px !important;

    background: #172b4d !important;

    color: #ffffff !important;

    font-family: Arial, Helvetica, sans-serif !important;

    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1.2 !important;

    cursor: pointer;

    box-shadow:
        0 6px 16px rgba(23, 43, 77, 0.13);

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


#entartica-booking-app
.entartica-date-next-button:hover:not(:disabled) {
    background: #0d1d36 !important;

    border-color: #0d1d36 !important;

    transform: translateY(-1px);

    box-shadow:
        0 9px 20px rgba(23, 43, 77, 0.17);
}


#entartica-booking-app
.entartica-date-next-button span {
    font-size: 17px;

    line-height: 1;

    transition:
        transform 0.2s ease;
}


#entartica-booking-app
.entartica-date-next-button:hover:not(:disabled)
span {
    transform: translateX(3px);
}


#entartica-booking-app
.entartica-date-next-button:disabled {
    background: #c9d0d9 !important;

    border-color: #c9d0d9 !important;

    color: #ffffff !important;

    cursor: not-allowed;

    box-shadow: none;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    #entartica-booking-app
    .entartica-date-screen
    .entartica-booking-header h2 {
        font-size: 32px;
    }


    #entartica-booking-app .entartica-calendar-card {
        max-width: 680px;

        padding: 24px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    #entartica-booking-app
    .entartica-date-screen
    .entartica-booking-header {
        margin-bottom: 18px;
    }


    #entartica-booking-app
    .entartica-date-screen
    .entartica-step-label {
        min-height: 30px;

        padding: 0 15px;

        font-size: 10px;
    }


    #entartica-booking-app
    .entartica-date-screen
    .entartica-booking-header h2 {
        font-size: 25px;
    }


    #entartica-booking-app
    .entartica-date-screen
    .entartica-booking-header p {
        font-size: 13px;
    }


    #entartica-booking-app .entartica-calendar-card {
        padding: 18px 14px 20px;

        border-radius: 16px;
    }


    /* PARK + BACK SAME ROW */

    #entartica-booking-app
    .entartica-selected-park-row {
        gap: 10px;
    }


    #entartica-booking-app
    .entartica-date-back-button {
        min-width: auto;

        min-height: 38px;

        padding: 8px 12px;

        font-size: 12px !important;
    }


    #entartica-booking-app
    .entartica-selected-park-name
    span {
        font-size: 9px;
    }


    #entartica-booking-app
    .entartica-selected-park-name
    strong {
        font-size: 16px;
    }


    #entartica-booking-app
    .entartica-date-divider {
        margin: 15px 0 18px;
    }


    #entartica-booking-app
    .flatpickr-calendar {
        max-width: 100% !important;

        border-radius: 13px !important;
    }


    #entartica-booking-app
    .flatpickr-day {
        height: 40px;

        line-height: 40px;

        font-size: 13px;
    }


    #entartica-booking-app
    .entartica-selected-date {
        min-height: 68px;

        margin-top: 17px;

        padding: 11px 12px;
    }


    #entartica-booking-app
    .entartica-selected-date strong {
        font-size: 14px;
    }


    #entartica-booking-app
    .entartica-date-action {
        margin-top: 14px;
    }


    #entartica-booking-app
    .entartica-date-next-button {
        width: 100%;

        min-width: 0;

        min-height: 44px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

    #entartica-booking-app
    .entartica-date-screen
    .entartica-booking-header h2 {
        font-size: 19px;
    }


    #entartica-booking-app
    .entartica-calendar-card {
        padding-left: 10px;
        padding-right: 10px;
    }


    #entartica-booking-app
    .entartica-date-back-button {
        padding-left: 9px;
        padding-right: 9px;

        font-size: 11px !important;
    }


    #entartica-booking-app
    .entartica-selected-park-name
    strong {
        font-size: 14px;
    }


    #entartica-booking-app
    .flatpickr-day {
        height: 37px;

        line-height: 37px;

        font-size: 12px;
    }

}
/* =========================================================
   STEP 3 — CATEGORY TABS
   ========================================================= */

.entartica-category-tabs {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 10px;

    width: 100%;

    margin: 0 0 30px;
    padding: 0;
}


/*
 * IMPORTANT:
 * Strong selector prevents Elementor / theme button
 * styles from making tabs look like default buttons.
 */

#entartica-booking-app .entartica-category-tab {
    appearance: none;
    -webkit-appearance: none;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 0;
    min-height: 44px;

    margin: 0;
    padding: 10px 22px;

    border: 1px solid #d9dee7 !important;
    border-radius: 10px !important;

    background: #ffffff !important;
    color: #172b4d !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    text-decoration: none;

    box-shadow: none !important;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}


/* CATEGORY TAB — HOVER */

#entartica-booking-app .entartica-category-tab:hover {
    background: #f5f7fa !important;
    color: #172b4d !important;

    border-color: #172b4d !important;

    transform: translateY(-1px);
}


/* CATEGORY TAB — ACTIVE */

#entartica-booking-app .entartica-category-tab.active {
    background: #172b4d !important;
    color: #ffffff !important;

    border-color: #172b4d !important;

    box-shadow:
        0 7px 18px rgba(23, 43, 77, 0.18) !important;
}


/* CATEGORY TAB — ACTIVE HOVER */

#entartica-booking-app .entartica-category-tab.active:hover {
    background: #0d1d36 !important;
    color: #ffffff !important;

    border-color: #0d1d36 !important;
}


/* =========================================================
   STEP 3 — MOBILE PREPARATION
   ========================================================= */

@media (max-width: 700px) {

    #entartica-booking-app {
        padding: 25px 15px 50px;
    }

    .entartica-booking-header {
        margin-bottom: 28px;
    }

    .entartica-booking-header h2 {
        font-size: 30px;
    }

    .entartica-booking-header p {
        font-size: 16px;
    }

    .entartica-selected-info {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 16px;
    }

    .entartica-category-tabs {
        justify-content: flex-start;

        flex-wrap: nowrap;

        overflow-x: auto;
        overflow-y: hidden;

        gap: 8px;

        padding: 2px 2px 10px;

        margin-bottom: 22px;

        -webkit-overflow-scrolling: touch;

        scrollbar-width: thin;
    }

    #entartica-booking-app .entartica-category-tab {
        flex: 0 0 auto;

        min-height: 42px;

        padding: 10px 16px;

        font-size: 13px !important;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    #entartica-booking-app {
        padding-left: 12px;
        padding-right: 12px;
    }

    .entartica-booking-header h2 {
        font-size: 27px;
    }

    #entartica-booking-app .entartica-category-tab {
        padding: 9px 14px;

        font-size: 12px !important;
    }

}
/* =========================================================
   STEP 3 — PRODUCT CONTAINER
   ========================================================= */

.entartica-products-container {
    width: 100%;
}


/* =========================================================
   STEP 3 — PRODUCT GRID
   ========================================================= */


#entartica-booking-app .entartica-product-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    width: 100%;
}


/* =========================================================
   STEP 3 — PRODUCT CARD
   ========================================================= */

#entartica-booking-app .entartica-product-card {
    display: flex;
    align-items: stretch;
    gap: 16px;

    width: 100%;
    box-sizing: border-box;

    padding: 14px;

    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;

    box-shadow: 0 5px 18px rgba(23, 43, 77, 0.07);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

#entartica-booking-app .entartica-product-card:hover {
    transform: translateY(-2px);
    border-color: #cfd8e3;
    box-shadow: 0 10px 25px rgba(23, 43, 77, 0.11);
}

/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

#entartica-booking-app .entartica-product-image {
    flex: 0 0 135px;
    width: 135px;
    height: 135px;

    overflow: hidden;
    border-radius: 12px;
    background: #f1f5f9;
}

#entartica-booking-app .entartica-product-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* =========================================================
   PRODUCT CONTENT
   ========================================================= */

#entartica-booking-app .entartica-product-content {
    flex: 1;
    min-width: 0;
    margin-top: 5px;
    display: flex;
    flex-direction: column;
}


/* PRODUCT NAME */

#entartica-booking-app .entartica-product-content h3 {
    margin: 0 0 2px;
    text-transform: uppercase;
    color: #172033;

    font-size: 18px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   PRODUCT INCLUSIONS
   ========================================================= */

#entartica-booking-app .entartica-product-inclusions {
    margin-bottom: 7px;
}

#entartica-booking-app .entartica-product-inclusions strong {
    display: block;

    margin-bottom: 2px;

    color: #667085;

    font-size: 12px;
    font-weight: 600;
}

#entartica-booking-app .entartica-product-inclusions p {
    margin: 0;

    color: #667085;

    font-size: 13px;
    line-height: 1.45;
}

/* =========================================================
   PRODUCT DURATION
   ========================================================= */

#entartica-booking-app .entartica-product-duration {
    margin-top: 3px;

    color: #667085;

    font-size: 12px;
    font-weight: 500;
}


/* =========================================================
   PRODUCT BOTTOM
   ========================================================= */

#entartica-booking-app .entartica-product-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-top: auto;
    padding-top: 2px;
}



/* =========================================================
   PRODUCT PRICE
   ========================================================= */

#entartica-booking-app .entartica-product-price {
    color: #172b4d;

    font-size: 18px;
    font-weight: 600;
}


/* =========================================================
   QUANTITY CONTROL
   ========================================================= */

#entartica-booking-app .entartica-quantity-control {
    display: inline-flex;
    align-items: center;

    width: auto;
    min-width: 118px;
    height: 40px;

    overflow: hidden;

    border: 1px solid #d9dee7;
    border-radius: 10px;

    background: #ffffff;
}


/* PLUS / MINUS */

#entartica-booking-app .entartica-quantity-control button {
    appearance: none;
    -webkit-appearance: none;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 38px;
    min-width: 38px;
    height: 38px;

    margin: 0;
    padding: 0;

    border: 0;
    border-radius: 0;

    background: #f5f7fa !important;
    color: #172b4d !important;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 21px;
    font-weight: 600;
    line-height: 1;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}

#entartica-booking-app .entartica-quantity-control button:hover {
    background: #e9edf3 !important;
    color: #172b4d !important;
}


/* QUANTITY NUMBER */

#entartica-booking-app .entartica-qty-value {
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 40px;
    height: 38px;

    color: #172033;

    font-size: 15px;
    font-weight: 600;
    line-height: 1;
}


/* =========================================================
   PRODUCT ACTIONS
   ========================================================= */

#entartica-booking-app .entartica-product-action {
    flex: 0 0 auto;
}

#entartica-booking-app .entartica-qty-add {
    min-width: 82px;
    height: 38px;

    padding: 0 18px;

    border: 1.5px solid #f8c63e;
    border-radius: 9px;

    background: #f8c63e;
    color: #172b4d;

    font-size: 13px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

#entartica-booking-app .entartica-qty-add:hover {
    background: #172b4d;
    color: #ffffff;
    transform: translateY(-1px);
}
/* =========================================================
   BACK BUTTON
   ========================================================= */

#entartica-booking-app .entartica-back-button {
    appearance: none;
    -webkit-appearance: none;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 155px;
    min-height: 46px;

    margin: 0;
    padding: 11px 20px;

    border: 1px solid #d7dee8 !important;
    border-radius: 10px !important;

    background: #ffffff !important;
    color: #172b4d !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    text-decoration: none;

    box-shadow: none !important;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


/* BACK HOVER */

#entartica-booking-app .entartica-back-button:hover {
    background: #f5f7fa !important;
    color: #172b4d !important;

    border-color: #172b4d !important;

    transform: translateY(-1px);

    box-shadow:
        0 5px 14px rgba(16, 24, 40, 0.07) !important;
}


@media (max-width: 900px) {

    #entartica-booking-app .entartica-product-grid {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 600px) {

    #entartica-booking-app .entartica-product-card {
        gap: 12px;
        padding: 11px;
    }
    
    #entartica-booking-app .entartica-product-card {
    display: grid;
   
}

#entartica-booking-app .entartica-product-content {
padding: 5px;
}

    #entartica-booking-app .entartica-product-image {
        flex: 0 0 105px;
        width: 105px;
        height: 105px;
    }

    #entartica-booking-app .entartica-product-content h3 {
        font-size: 16px;
    }

    #entartica-booking-app .entartica-product-price {
        font-size: 12px;
    }

    #entartica-booking-app .entartica-qty-add {
        min-width: 70px;
        height: 36px;
        padding: 0 14px;
        font-size: 10px;
        margin: 10px 0px 0px;
    }

}

/* =========================================================
   REVIEW BOOKING BUTTON
   ========================================================= */

#entartica-booking-app .entartica-products-actions
.entartica-next-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 190px;
    min-height: 46px;

    margin: 0;
    padding: 12px 22px;

    border: 1px solid #172b4d !important;
    border-radius: 10px !important;

    background: #172b4d !important;
    color: #ffffff !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    cursor: pointer;

    box-shadow:
        0 7px 18px rgba(23, 43, 77, 0.14);

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


/* REVIEW HOVER */

#entartica-booking-app .entartica-products-actions
.entartica-next-button:hover {
    background: #0d1d36 !important;
    border-color: #0d1d36 !important;

    transform: translateY(-1px);

    box-shadow:
        0 9px 22px rgba(23, 43, 77, 0.18);
}


/* REVIEW DISABLED */

#entartica-booking-app .entartica-products-actions
.entartica-next-button:disabled {
    opacity: 0.45;

    cursor: not-allowed;

    transform: none;

    box-shadow: none;
}


/* =========================================================
   PRODUCT GRID — TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #entartica-booking-app .entartica-product-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 22px;
    }


}


/* =========================================================
   PRODUCT GRID — MOBILE
   ========================================================= */

@media (max-width: 700px) {

    #entartica-booking-app .entartica-product-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }

  

 

    
 

  


    /* ACTION BUTTONS */

    #entartica-booking-app .entartica-products-actions,
    #entartica-booking-app .entartica-review-actions {
        flex-direction: column-reverse;

        align-items: stretch;

        gap: 10px;
    }

    #entartica-booking-app .entartica-products-actions
    .entartica-back-button,

    #entartica-booking-app .entartica-products-actions
    .entartica-next-button {
        width: 100%;
        min-width: 0;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    #entartica-booking-app .entartica-product-image {
        height: 200px;
        width: 100%;
    }

    #entartica-booking-app .entartica-product-content h3 {
        font-size: 19px;
    }

    #entartica-booking-app .entartica-product-price {
        font-size: 21px;
    }

}
/* =========================================================
   STEP 4 — REVIEW
   ========================================================= */

.entartica-review-summary {
    width: 100%;
}


/* =========================================================
   REVIEW INFO
   ========================================================= */

#entartica-booking-app .entartica-review-info {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 20px;

    width: 100%;

    margin-bottom: 24px;
    padding: 20px;

    background: #f7f9fc;

    border: 1px solid #e4e8ef;
    border-radius: 14px;
}

#entartica-booking-app .entartica-review-info > div {
    min-width: 0;
}

#entartica-booking-app .entartica-review-info span {
    display: block;

    margin-bottom: 5px;

    color: #7b8494;

    font-size: 12px;
    font-weight: 500;
}

#entartica-booking-app .entartica-review-info strong {
    display: block;

    color: #172b4d;

    font-size: 16px;
    font-weight: 600;
}


/* =========================================================
   REVIEW ITEMS
   ========================================================= */

#entartica-booking-app .entartica-review-items {
    width: 100%;

    overflow: hidden;

    background: #ffffff;

    border: 1px solid #e1e6ee;
    border-radius: 14px;
}

#entartica-booking-app .entartica-review-item {
    display: grid;

    grid-template-columns:
        90px minmax(0, 1fr) auto;

    align-items: center;

    gap: 18px;

    padding: 20px;

    border-bottom: 1px solid #edf0f4;
}

#entartica-booking-app .entartica-review-item:last-child {
    border-bottom: 0;
}


/* =========================================================
   REVIEW IMAGE
   ========================================================= */

#entartica-booking-app .entartica-review-item-image {
    width: 90px;
    height: 70px;

    overflow: hidden;

    border-radius: 9px;

    background: #f3f5f8;
}

#entartica-booking-app .entartica-review-item-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* =========================================================
   REVIEW CONTENT
   ========================================================= */

#entartica-booking-app .entartica-review-item-content {
    min-width: 0;
}

#entartica-booking-app .entartica-review-item-content h3 {
    margin: 0 0 7px;

    color: #172b4d;

    font-size: 17px;
    line-height: 1.35;
    font-weight: 600;
}

#entartica-booking-app .entartica-review-item-content p {
    margin: 0 0 8px;

    color: #687386;

    font-size: 13px;
    line-height: 1.5;
}

#entartica-booking-app .entartica-review-item-content > span {
    display: block;

    margin-bottom: 7px;

    color: #7b8494;

    font-size: 12px;
}

#entartica-booking-app .entartica-review-item-price {
    color: #172b4d;

    font-size: 13px;
    font-weight: 600;
}


/* =========================================================
   REVIEW ITEM TOTAL
   ========================================================= */

#entartica-booking-app .entartica-review-item-total {
    white-space: nowrap;

    color: #172b4d;

    font-size: 17px;
    font-weight: 600;
}


/* =========================================================
   REVIEW TOTAL
   ========================================================= */

#entartica-booking-app .entartica-review-total {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-top: 18px;
    padding: 20px 0;

    border-top: 1px solid #e1e6ee;
}

#entartica-booking-app .entartica-review-total span {
    color: #172b4d;

    font-size: 18px;
    font-weight: 600;
}

#entartica-booking-app .entartica-review-total strong {
    color: #172b4d;

    font-size: 28px;
    font-weight: 600;
}


/* =========================================================
   REVIEW ACTIONS
   ========================================================= */

#entartica-booking-app .entartica-review-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    width: 100%;

    margin-top: 30px;
}


/* =========================================================
   REVIEW BACK BUTTON
   ========================================================= */

#entartica-booking-app .entartica-review-actions
.entartica-back-button {
    width: auto;
    min-width: 155px;
}


/* =========================================================
   REVIEW / CHECKOUT BUTTON
   ========================================================= */

#entartica-booking-app .entartica-review-actions
.entartica-next-button {
    width: auto;
    min-width: 190px;

    margin-top: 0;
}


/* =========================================================
   LOADING
   ========================================================= */

#entartica-booking-app .entartica-booking-loading {
    width: 100%;

    padding: 60px 20px;

    text-align: center;

    color: #667085;

    font-size: 17px;
}


/* =========================================================
   EMPTY STATE
   ========================================================= */

#entartica-booking-app .entartica-empty-state {
    width: 100%;

    padding: 45px 30px;

    text-align: center;

    color: #667085;

    background: #ffffff;

    border: 1px solid #e6e9ef;
    border-radius: 14px;
}


/* =========================================================
   ERROR
   ========================================================= */

#entartica-booking-app .entartica-error,
#entartica-booking-app .entartica-booking-error {
    width: 100%;
    max-width: 650px;

    margin: 30px auto;
    padding: 20px;

    text-align: center;

    border-radius: 12px;

    background: #fff4f4;
    color: #b42318;

    border: 1px solid #fecdca;
}


/* =========================================================
   NO IMAGE
   ========================================================= */

#entartica-booking-app .entartica-no-image {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    background: #f1f3f6;

    color: #98a2b3;

    font-size: 16px;
    font-weight: 600;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #entartica-booking-app {
        padding: 35px 20px 60px;
    }


    .entartica-park-grid,
    #entartica-booking-app .entartica-product-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 22px;
    }


    .entartica-booking-header h2 {
        font-size: 36px;
    }


  

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    #entartica-booking-app {
        padding: 25px 15px 50px;
    }


    .entartica-booking-header {
        margin-bottom: 28px;
    }


    .entartica-booking-header h2 {
        font-size: 30px;
    }


    .entartica-booking-header p {
        font-size: 16px;
    }


    .entartica-park-grid,
    #entartica-booking-app .entartica-product-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }


    .entartica-park-image {
        height: 220px;
    }


    .entartica-park-content {
        padding: 20px;
    }


    .entartica-park-content h3 {
        font-size: 22px;
    }


    .entartica-calendar-card {
        padding: 20px 15px;
    }


    .entartica-selected-park {
        flex-direction: column;

        align-items: flex-start;

        gap: 6px;
    }


    .flatpickr-calendar {
        max-width: 100% !important;
    }


    .flatpickr-day {
        height: 40px !important;
        line-height: 40px !important;
    }


    .entartica-selected-info,
    .entartica-review-info {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 15px;
    }


    /* CATEGORY TABS */

    #entartica-booking-app .entartica-category-tabs {
        justify-content: flex-start;

        flex-wrap: nowrap;

        overflow-x: auto;
        overflow-y: hidden;

        gap: 8px;

        padding: 2px 2px 10px;

        -webkit-overflow-scrolling: touch;

        scrollbar-width: thin;
    }


    #entartica-booking-app .entartica-category-tab {
        flex: 0 0 auto;

        min-height: 42px;

        padding: 10px 16px;

        font-size: 13px !important;
    }


    /* PRODUCT */



    


   


    /* ACTION BUTTONS */

    #entartica-booking-app .entartica-products-actions,
    #entartica-booking-app .entartica-review-actions {
        flex-direction: column-reverse;

        align-items: stretch;

        gap: 10px;
    }


    #entartica-booking-app .entartica-products-actions
    .entartica-back-button,

    #entartica-booking-app .entartica-products-actions
    .entartica-next-button,

    #entartica-booking-app .entartica-review-actions
    .entartica-back-button,

    #entartica-booking-app .entartica-review-actions
    .entartica-next-button {
        width: 100%;

        min-width: 0;
    }


    /* REVIEW ITEMS */

    #entartica-booking-app .entartica-review-item {
        grid-template-columns:
            65px minmax(0, 1fr);

        gap: 12px;

        padding: 15px;

        align-items: flex-start;
    }


    #entartica-booking-app .entartica-review-item-image {
        width: 65px;
        height: 55px;
    }


    #entartica-booking-app .entartica-review-item-content h3 {
        font-size: 15px;
    }


    #entartica-booking-app .entartica-review-item-total {
        grid-column: 2;

        justify-self: start;

        font-size: 16px;
    }


    #entartica-booking-app .entartica-review-total {
        padding: 16px 0;
    }


    #entartica-booking-app .entartica-review-total span {
        font-size: 16px;
    }


    #entartica-booking-app .entartica-review-total strong {
        font-size: 22px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    #entartica-booking-app {
        padding-left: 12px;
        padding-right: 12px;
    }


    .entartica-booking-header h2 {
        font-size: 19px;
    }


    .entartica-park-image {
        height: 200px;
    }


 


    #entartica-booking-app .entartica-category-tab {
        padding: 9px 14px;

        font-size: 12px !important;
    }


    .flatpickr-day {
        height: 37px !important;
        line-height: 37px !important;

        font-size: 13px !important;
    }


    #entartica-booking-app .entartica-review-item {
        grid-template-columns:
            55px minmax(0, 1fr);
    }


    #entartica-booking-app .entartica-review-item-image {
        width: 55px;
        height: 50px;
    }

}


/* =========================================================
   STEP 3 - BOOKING CONTEXT ROW
   ========================================================= */
/* =========================================================
   STEP 3 — BOOKING CONTEXT
   ========================================================= */

#entartica-booking-app .entartica-booking-context-row {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 24px;

    margin: 0 0 26px;
    padding: 14px 16px;

    background: #f7f9fc;

    border: 1px solid #e4e8ef;
    border-radius: 16px;

    box-shadow: 0 4px 14px rgba(23, 43, 77, 0.05);

    box-sizing: border-box;
}


/* =========================================================
   BACK BUTTON
   ========================================================= */

#entartica-booking-app .entartica-context-back-button {
    flex: 0 0 auto;
    gap: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 112px;
    height: 44px;

    padding: 0 18px;

    border: 0;
    border-radius: 10px;

    background: #172b4d;
    color: #ffffff;

    font-size: 14px;
    font-weight: 600;

    line-height: 1;

    cursor: pointer;

    box-shadow: 0 6px 16px rgba(23, 43, 77, 0.16);

    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

#entartica-booking-app .entartica-context-back-button:hover {
    background: #0e203c;

    transform: translateY(-1px);

    box-shadow: 0 8px 20px rgba(23, 43, 77, 0.22);
}


/* =========================================================
   PARK + DATE INFORMATION
   ========================================================= */

#entartica-booking-app .entartica-context-info {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;

    gap: 12px;

    margin-left: auto;
}


/* Individual information card */

#entartica-booking-app .entartica-context-info > div {
    min-width: 180px;

    display: flex;
    align-items: center;
    gap: 9px;

    padding: 9px 14px;

    background: #ffffff;

    border: 1px solid #e4e8ef;
    border-radius: 10px;

    box-sizing: border-box;

    white-space: nowrap;
}


/* Label */

#entartica-booking-app .entartica-context-info span {
    color: #7a8494;

    font-size: 12px;
    font-weight: 500;

    line-height: 1.2;
}


/* Value */

#entartica-booking-app .entartica-context-info strong {
    color: #172b4d;

    font-size: 15px;
    font-weight: 600;

    line-height: 1.2;
}


/* =========================================================
   CATEGORY TABS SPACING
   ========================================================= */

#entartica-booking-app .entartica-category-tabs {
    margin-top: 4px;
    margin-bottom: 24px;
}


/* =========================================================
   PRODUCTS
   ========================================================= */

#entartica-booking-app .entartica-products-container {
    width: 100%;
}


/* =========================================================
   REVIEW ACTION AREA
   ========================================================= */

#entartica-booking-app .entartica-products-actions {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    margin-top: 28px;
    padding-top: 22px;

    border-top: 1px solid #e8ecf2;
}


/* Review Booking */

#entartica-booking-app .entartica-products-actions .entartica-next-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 210px;
    min-height: 48px;

    margin: 0;
    gap: 10px;
    padding: 12px 24px;

    border: 1px solid #172b4d !important;
    border-radius: 11px !important;

    background: #172b4d !important;
    color: #ffffff !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1.2;

    cursor: pointer;

    box-shadow: 0 7px 18px rgba(23, 43, 77, 0.14);

    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease,
        opacity 0.2s ease;
}


/* Active */

#entartica-booking-app .entartica-products-actions
.entartica-next-button.active {
    opacity: 1;
}


/* Hover */

#entartica-booking-app .entartica-products-actions
.entartica-next-button.active:hover {
    background: #0e203c !important;

    transform: translateY(-1px);

    box-shadow: 0 10px 24px rgba(23, 43, 77, 0.20);
}


/* Disabled */

#entartica-booking-app .entartica-products-actions
.entartica-next-button:disabled {
    opacity: 0.45;

    cursor: not-allowed;

    transform: none;

    box-shadow: none;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    #entartica-booking-app .entartica-booking-context-row {
        gap: 18px;
        padding: 13px;
    }

    #entartica-booking-app .entartica-context-info {
        gap: 10px;
    }

    #entartica-booking-app .entartica-context-info > div {
        min-width: 155px;
        padding: 8px 11px;
    }

    #entartica-booking-app .entartica-context-info strong {
        font-size: 14px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    #entartica-booking-app .entartica-booking-context-row {
        flex-direction: column;
        align-items: stretch;

        gap: 12px;

        margin-bottom: 22px;
        padding: 12px;
    }


    /* Back button */

    #entartica-booking-app .entartica-context-back-button {
        width: 100%;
        min-width: 0;
        height: 44px;
    }


    /* Park + Date */

    #entartica-booking-app .entartica-context-info {
        width: 100%;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 10px;

        margin-left: 0;
    }


    #entartica-booking-app .entartica-context-info > div {
        min-width: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;

        gap: 4px;

        padding: 10px 12px;

        white-space: normal;
    }


    #entartica-booking-app .entartica-context-info span {
        font-size: 11px;
    }


    #entartica-booking-app .entartica-context-info strong {
        font-size: 14px;

        word-break: break-word;
    }


    /* Category */

    #entartica-booking-app .entartica-category-tabs {
        margin-bottom: 20px;
    }


    /* Review area */

    #entartica-booking-app .entartica-products-actions {
        justify-content: stretch;

        margin-top: 24px;
        padding-top: 18px;
    }


    #entartica-booking-app .entartica-products-actions
    .entartica-next-button {
        width: 100%;
        min-width: 0;
        min-height: 48px;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    #entartica-booking-app .entartica-booking-context-row {
        padding: 10px;
        border-radius: 14px;
    }


    #entartica-booking-app .entartica-context-info {
        grid-template-columns: 1fr;
    }


    #entartica-booking-app .entartica-context-info > div {
        min-height: 52px;
    }


    #entartica-booking-app .entartica-context-info strong {
        font-size: 13px;
    }


    #entartica-booking-app .entartica-products-actions {
        margin-top: 20px;
        padding-top: 16px;
    }
}



/* =========================================================
   STEP 4 — FINAL REVIEW DESIGN
   ========================================================= */

#entartica-booking-app .entartica-review-context {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 24px;

    margin: 0 0 26px;
    padding: 14px 16px;

    background: #f7f9fc;

    border: 1px solid #e3e8ef;
    border-radius: 16px;

    box-shadow:
        0 4px 14px rgba(23, 43, 77, 0.05);

    box-sizing: border-box;
}


/* =========================================================
   REVIEW BACK BUTTON
   ========================================================= */

#entartica-booking-app .entartica-review-back-button {
    flex: 0 0 auto;
    gap: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 170px;
    height: 44px;

    padding: 0 18px;

    border: 0;
    border-radius: 10px;

    background: #172b4d !important;
    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1;

    cursor: pointer;

    box-shadow:
        0 6px 16px rgba(23, 43, 77, 0.15);

    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

#entartica-booking-app .entartica-review-back-button:hover {
    background: #0e203c !important;

    transform: translateY(-1px);

    box-shadow:
        0 8px 20px rgba(23, 43, 77, 0.20);
}


/* =========================================================
   PARK + DATE
   ========================================================= */

#entartica-booking-app .entartica-review-context-info {
    display: flex;
    align-items: stretch;

    gap: 12px;

    margin-left: auto;
}


#entartica-booking-app .entartica-review-context-info > div {
    min-width: 180px;

    display: flex;
    align-items: center;

    gap: 9px;

    padding: 9px 14px;

    background: #ffffff;

    border: 1px solid #e3e8ef;
    border-radius: 10px;

    box-sizing: border-box;

    white-space: nowrap;
}


#entartica-booking-app .entartica-review-context-info span {
    color: #7a8494;

    font-size: 12px;
    font-weight: 500;
}


#entartica-booking-app .entartica-review-context-info strong {
    color: #172b4d;

    font-size: 15px;
    font-weight: 600;
}


/* =========================================================
   REVIEW ITEMS CONTAINER
   ========================================================= */

#entartica-booking-app .entartica-review-items {
    width: 100%;

    overflow: hidden;

    background: #ffffff;

    border: 1px solid #e1e6ee;
    border-radius: 16px;

    box-shadow:
        0 4px 14px rgba(23, 43, 77, 0.04);
}


/* =========================================================
   REVIEW ITEM
   ========================================================= */

#entartica-booking-app .entartica-review-item {
    width: 100%;

    display: grid;

    grid-template-columns:
        150px minmax(0, 1fr) 300px;

    align-items: center;

    gap: 20px;

    padding: 20px;

    box-sizing: border-box;

    border-bottom: 1px solid #edf0f4;
}


#entartica-booking-app .entartica-review-item:last-child {
    border-bottom: 0;
}


/* =========================================================
   IMAGE
   ========================================================= */

#entartica-booking-app .entartica-review-item-image {
    width: 150px;
    height: 150px;

    overflow: hidden;

    border-radius: 10px;

    background: #f1f3f6;

    flex-shrink: 0;
}


#entartica-booking-app .entartica-review-item-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* =========================================================
   CONTENT
   ========================================================= */

#entartica-booking-app .entartica-review-item-content {
    min-width: 0;
}


#entartica-booking-app .entartica-review-item-content h3 {
    margin: 0 0 8px;

    color: #172b4d;

    font-size: 19px;
    font-weight: 600;

    line-height: 1.25;
}


/* =========================================================
   INCLUSIONS
   ========================================================= */

#entartica-booking-app .entartica-review-inclusions {
    width: 100%;

    max-width: 850px;

    margin: 0 0 8px;

    color: #667085;

    font-size: 14px;
    line-height: 1.55;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;

    overflow: hidden;
}


/* =========================================================
   DURATION
   ========================================================= */

#entartica-booking-app .entartica-review-duration {
    display: block;

    margin-bottom: 8px;

    color: #7a8494;

    font-size: 12px;
    font-weight: 500;
}


/* =========================================================
   UNIT PRICE
   ========================================================= */

#entartica-booking-app .entartica-review-unit-price {
    color: #172b4d;

    font-size: 13px;
    font-weight: 600;
}


/* =========================================================
   PRICE + QUANTITY AREA
   ========================================================= */

#entartica-booking-app .entartica-review-item-actions {
    display: flex;

    align-items: center;
    justify-content: flex-end;

    gap: 16px;

    min-width: 0;
}


/* =========================================================
   QUANTITY
   ========================================================= */




/* =========================================================
   ITEM TOTAL
   ========================================================= */

#entartica-booking-app .entartica-review-item-total {
    min-width: 92px;

    text-align: right;

    color: #172b4d;

    font-size: 18px;
    font-weight: 600;

    white-space: nowrap;
}


/* =========================================================
   GRAND TOTAL
   ========================================================= */

#entartica-booking-app .entartica-review-total {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-top: 18px;

    padding: 20px 4px;

    border-top: 1px solid #dfe5ec;

    box-sizing: border-box;
}


#entartica-booking-app .entartica-review-total span {
    color: #172b4d;

    font-size: 18px;
    font-weight: 600;
}


#entartica-booking-app .entartica-review-total strong {
    color: #172b4d;

    font-size: 28px;
    font-weight: 600;
}


/* =========================================================
   CHECKOUT ACTION
   ========================================================= */

#entartica-booking-app .entartica-review-actions {
    width: 100%;

    display: flex;
    justify-content: flex-end;
    align-items: center;

    margin-top: 18px;

    padding-bottom: 10px;
}


#entartica-booking-app .entartica-review-checkout-button {
    min-width: 220px;
    min-height: 50px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 12px 24px;

    border: 1px solid #172b4d !important;
    border-radius: 11px !important;

    background: #172b4d !important;
    color: #ffffff !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1.2;

    cursor: pointer;

    box-shadow:
        0 8px 20px rgba(23, 43, 77, 0.16);

    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


#entartica-booking-app .entartica-review-checkout-button:hover {
    background: #0e203c !important;

    transform: translateY(-1px);

    box-shadow:
        0 10px 24px rgba(23, 43, 77, 0.22);
}


#entartica-booking-app .entartica-review-checkout-button:disabled {
    opacity: 0.5;

    cursor: not-allowed;

    transform: none;

    box-shadow: none;
}


/* =========================================================
   EMPTY
   ========================================================= */

#entartica-booking-app .entartica-review-empty {
    min-height: 180px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 30px;

    text-align: center;
}


#entartica-booking-app .entartica-review-empty strong {
    color: #172b4d;

    font-size: 17px;
}


#entartica-booking-app .entartica-review-empty span {
    color: #7a8494;

    font-size: 13px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1040px) {

    #entartica-booking-app .entartica-review-item {
        grid-template-columns:
            130px minmax(0, 1fr) 250px;

        gap: 15px;

        padding: 15px;
    }


    #entartica-booking-app .entartica-review-item-image {
        width: 100%;
        height: 142px;
    }
    
    #entartica-booking-app .entartica-product-image {
        width: 100%;
        height: 200px;

}
    
    #entartica-booking-app .entartica-product-card {
        display: grid;
    }
        
    #entartica-booking-app .entartica-review-inclusions {
        max-width: 100%;
    }


    #entartica-booking-app .entartica-review-item-actions {
        gap: 10px;
    }


    #entartica-booking-app .entartica-review-item-total {
        min-width: 78px;
        font-size: 16px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    #entartica-booking-app .entartica-review-context {
        flex-direction: column;
        align-items: stretch;

        gap: 12px;

        padding: 12px;
    }


    #entartica-booking-app .entartica-review-back-button {
        width: 100%;
        min-width: 0;
    }


    #entartica-booking-app .entartica-review-context-info {
        width: 100%;

        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;

        margin-left: 0;
    }


    #entartica-booking-app .entartica-review-context-info > div {
        min-width: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 4px;

        padding: 10px 12px;

        white-space: normal;
    }


    #entartica-booking-app .entartica-review-context-info strong {
        font-size: 14px;
        word-break: break-word;
    }


    #entartica-booking-app .entartica-review-item {
        grid-template-columns:
            70px minmax(0, 1fr);

        gap: 13px;

        padding: 15px;
    }


    #entartica-booking-app .entartica-review-item-image {
        width: 70px;
        height: 65px;
    }


    #entartica-booking-app .entartica-review-item-content h3 {
        font-size: 16px;
    }


    #entartica-booking-app .entartica-review-inclusions {
        max-width: 100%;

        font-size: 13px;

        -webkit-line-clamp: 4;
    }


    #entartica-booking-app .entartica-review-item-actions {
        grid-column: 2;

        justify-content: space-between;

        margin-top: 4px;
    }


    #entartica-booking-app .entartica-review-item-total {
        min-width: auto;

        font-size: 16px;
    }


    #entartica-booking-app .entartica-review-total {
        padding: 18px 2px;
    }


    #entartica-booking-app .entartica-review-total span {
        font-size: 16px;
    }


    #entartica-booking-app .entartica-review-total strong {
        font-size: 23px;
    }


    #entartica-booking-app .entartica-review-actions {
        justify-content: stretch;

        margin-top: 12px;
    }


    #entartica-booking-app .entartica-review-checkout-button {
        width: 100%;
        min-width: 0;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    #entartica-booking-app .entartica-review-context-info {
        grid-template-columns: 1fr;
    }

#entartica-booking-app .entartica-review-item{
    display: block;
}

    #entartica-booking-app .entartica-review-item {
        grid-template-columns:
            58px minmax(0, 1fr);

        gap: 11px;

        padding: 13px;
    }


    #entartica-booking-app .entartica-review-item-image {
        width: 100%;
        height: 200px;
    }
#entartica-booking-app .entartica-review-item-content {
    padding: 10px 5px;
}

    #entartica-booking-app .entartica-review-item-actions {
        flex-wrap: wrap;

        gap: 9px;
    }


    #entartica-booking-app .entartica-review-quantity {
        height: 38px;
    }


    #entartica-booking-app .entartica-review-qty-minus,
    #entartica-booking-app .entartica-review-qty-plus {
        width: 36px;
        height: 38px;
    }


    #entartica-booking-app .entartica-review-qty-value {
        height: 38px;
        min-width: 38px;
    }


    #entartica-booking-app .entartica-review-total strong {
        font-size: 21px;
    }
}


/* =========================================================
 * QUANTITY CONTROL — MATCH EXACT DESIGN
 * ========================================================= */

.entartica-quantity-control,
.entartica-review-quantity {
    display: inline-flex;
    align-items: stretch;
    height: 48px;
    min-width: 142px;
    border: 1px solid #d8e0ea;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
    box-sizing: border-box;
}

/* Minus / Plus */
.entartica-quantity-control button,
.entartica-review-quantity button {
    width: 47px;
    min-width: 47px;
    height: 100%;
    padding: 0;
    margin: 0;
    border: 0;
    background: #f1f4f8;
    color: #082c57;
    font-size: 22px;
    font-weight: 600;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* Center quantity */
.entartica-quantity-control .entartica-quantity-value,
.entartica-review-quantity .entartica-review-qty-value {
    width: 48px;
    min-width: 48px;
    height: 100%;
    padding: 0;
    margin: 0;
    background: #ffffff;
    color: #082c57;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

/* Hover */
.entartica-quantity-control button:hover,
.entartica-review-quantity button:hover {
    background: #e8edf3;
}

/* Review page quantity */
.entartica-review-quantity {
    min-width: 142px;
    height: 48px;
    border-radius: 12px;
}

.entartica-review-quantity button {
    width: 47px;
    min-width: 47px;
}

.entartica-review-quantity .entartica-review-qty-value {
    width: 48px;
    min-width: 48px;
}  

/* =========================================
   ENTARTICA — ADD MORE PASSES MODAL
========================================= */

#entartica-add-passes-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    font-family: inherit;
}

#entartica-add-passes-modal[style*="display: block"],
#entartica-add-passes-modal[style*="display:flex"] {
    display: flex !important;
}

.entartica-add-passes-overlay {
    position: absolute;
    inset: 0;
    background: rgba(10, 20, 38, 0.72);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
}

.entartica-add-passes-dialog {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 850px;
    max-height: 85vh;
    overflow-y: auto;
    background: #ffffff;
    border: 1px solid #e5eaf2;
    border-radius: 22px;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.25);
    padding: 28px;
    animation: entarticaModalIn 0.25s ease-out;
    color: #172744;
}

@keyframes entarticaModalIn {
    from {
        opacity: 0;
        transform: translateY(15px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* HEADER */

.entartica-add-passes-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 22px;
    border-bottom: 1px solid #e8edf4;
    margin-bottom: 22px;
}

.entartica-add-passes-header h2 {
    margin: 0 0 8px;
    color: #172744;
    font-size: 27px;
    font-weight: 600;
    line-height: 1.25;
}

.entartica-add-passes-header p {
    margin: 0;
    color: #718096;
    font-size: 14px;
    line-height: 1.6;
}

#entartica-close-add-passes {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f5f7fb;
    color: #172744;
    font-size: 27px;
    line-height: 1;
    cursor: pointer;
    transition: 0.2s ease;
}

#entartica-close-add-passes:hover {
    background: #172744;
    color: #ffffff;
}

/* AVAILABLE PASSES CONTAINER */

.entartica-add-passes-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    min-height: 40px;
}

/* PASS CARD
   Use this class for each card generated by JavaScript.
*/

.entartica-add-pass-card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 16px;
    border: 1px solid #e1e8f1;
    border-radius: 16px;
    background: #ffffff;
    transition: border-color 0.2s ease,
                box-shadow 0.2s ease,
                transform 0.2s ease;
}

.entartica-add-pass-card:hover {
    border-color: #9aafd0;
    box-shadow: 0 8px 24px rgba(23, 39, 68, 0.08);
    transform: translateY(-2px);
}

.entartica-add-pass-card img {
    display: block;
    width: 100%;
    height: 155px;
    object-fit: cover;
    border-radius: 11px;
    background: #f1f4f9;
}

.entartica-add-pass-card h3 {
    margin: 0 0 7px;
    color: #172744;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
}

.entartica-add-pass-card p {
    margin: 0;
    color: #718096;
    font-size: 13px;
    line-height: 1.6;
}

.entartica-add-pass-price {
    color: #172744;
    font-size: 19px;
    font-weight: 600;
}

/* QUANTITY CONTROLS */

.entartica-add-pass-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
}

.entartica-add-pass-qty-controls {
    display: flex;
    align-items: center;
    gap: 0;
    overflow: hidden;
    border: 1px solid #dce4ef;
    border-radius: 10px;
    background: #f3f6fa;
}

.entartica-add-pass-qty-controls button {
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 0;
    background: #f3f6fa;
    color: #172744;
    font-size: 20px;
    font-weight: 600;
    cursor: pointer;
}

.entartica-add-pass-qty-controls button:hover {
    background: #e3eaf4;
}

.entartica-add-pass-qty-controls span {
    min-width: 34px;
    text-align: center;
    color: #172744;
    font-size: 15px;
    font-weight: 600;
}

/* FOOTER */

.entartica-add-passes-footer {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding-top: 22px;
    margin-top: 22px;
    border-top: 1px solid #e8edf4;
}

.entartica-add-passes-footer button {
    min-height: 46px;
    padding: 12px 20px;
    border: 1px solid #dce4ef;
    border-radius: 11px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s ease;
}

#entartica-cancel-add-passes {
    background: #ffffff;
    color: #172744;
}

#entartica-cancel-add-passes:hover {
    background: #f3f6fa;
}

#entartica-confirm-add-passes {
    border-color: #172d50;
    background: #172d50;
    color: #ffffff;
}

#entartica-confirm-add-passes:hover {
    background: #25456f;
}

#entartica-confirm-add-passes:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

/* ADD MORE PASSES BUTTON */

.entartica-add-more-wrapper {
    padding: 20px 0;
}

.entartica-add-more-passes-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 12px 20px;
    border: 1px solid #d5dfed;
    border-radius: 12px;
    background: #ffffff;
    color: #172d50;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s ease;
}


/* Step 3 - More Info button */
.entartica-product-card .entartica-pass-more-info {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    align-items: center;
    justify-content: center;
    padding: 8px 20px !important;
    margin: 0px 0 0px !important;
    background: #172b4d !important;
    color: #ffffff !important;
    border: 1px solid #172b4d !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    cursor: pointer;
    box-shadow: none !important;
}

.entartica-product-card .entartica-pass-more-info:hover {
    background: #243d65 !important;
    color: #ffffff !important;
    border-color: #243d65 !important;
}


.entartica-add-more-passes-btn span {
    font-size: 22px;
    line-height: 1;
}

.entartica-add-more-passes-btn:hover {
    border-color: #172d50;
    background: #f3f6fb;
}

.entartica-add-more-wrapper > p {
    margin: 9px 0 0;
    color: #718096;
    font-size: 13px;
}

/* EMPTY STATE */

.entartica-add-passes-empty {
    grid-column: 1 / -1;
    padding: 35px 20px;
    border: 1px dashed #d5dfed;
    border-radius: 14px;
    background: #f8fafd;
    color: #718096;
    text-align: center;
    line-height: 1.7;
}

/* MOBILE */

@media (max-width: 640px) {
    #entartica-add-passes-modal {
        padding: 10px;
    }

    .entartica-add-passes-dialog {
        max-height: 92vh;
        padding: 18px;
        border-radius: 17px;
    }

    .entartica-add-passes-header h2 {
        font-size: 22px;
    }

    .entartica-add-passes-list {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .entartica-add-pass-card {
        padding: 12px;
    }

    .entartica-product-card .entartica-pass-more-info{
            padding: 8px 14px !important;
            font-size: 10px !important;
            margin: 10px 0px 0px !important
    }
    .entartica-add-pass-card img {
        height: 175px;
    }

    .entartica-add-passes-footer {
        flex-direction: column-reverse;
    }

    .entartica-add-passes-footer button {
        width: 100%;
    }
}




/* =========================================================
   BOOKING ENGINE POLISH — consistent typography and spacing
   ========================================================= */
:root {
  --entartica-navy: #172b4d;
  --entartica-navy-deep: #102f5b;
  --entartica-yellow: #ffc83d;
  --entartica-text: #172033;
  --entartica-muted: #667085;
  --entartica-border: #e1e7ef;
  --entartica-surface: #f7f9fc;
}
#entartica-booking-app { color: var(--entartica-text); font-size: 15px; line-height: 1.5; }
#entartica-booking-app img { max-width: 100%; }
#entartica-booking-app h1,
#entartica-booking-app h2,
#entartica-booking-app h3,
#entartica-booking-app h4,
#entartica-booking-app p { overflow-wrap: anywhere; }
#entartica-booking-app .entartica-booking-header { margin-bottom: 28px; }
#entartica-booking-app .entartica-booking-header h2,
#entartica-booking-app .entartica-date-screen .entartica-booking-header h2 {
  font-size: clamp(18px, 4.8vw, 22px) !important; line-height: 1.18; letter-spacing: -.025em;
}
#entartica-booking-app .entartica-booking-header p,
#entartica-booking-app .entartica-date-screen .entartica-booking-header p { font-size: 15px; line-height: 1.55; }
#entartica-booking-app .entartica-location-screen,
#entartica-booking-app .entartica-calendar-card { box-shadow: 0 8px 26px rgba(16,24,40,.07); }
#entartica-booking-app .entartica-product-grid { gap: 16px; }
#entartica-booking-app .entartica-product-card { min-width: 0; gap: 14px; padding: 14px; border-color: var(--entartica-border); border-radius: 14px; box-shadow: 0 3px 12px rgba(23,43,77,.045); }
#entartica-booking-app .entartica-product-content { min-width: 0; gap: 5px; }
#entartica-booking-app .entartica-product-content h3 { font-size: clamp(13px,1vw,17px); line-height: 1.3; letter-spacing: 0; }
#entartica-booking-app .entartica-product-bottom { flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; padding-top: 0px; }
#entartica-booking-app .entartica-product-price { font-size: 17px; line-height: 1.25; }
#entartica-booking-app .entartica-quantity-control { flex: 0 0 auto; min-width: 112px; height: 32px; }
#entartica-booking-app .entartica-quantity-control button { flex: 0 0 36px; width: 36px; min-width: 36px; height: 36px; padding: 0; font-size: 20px; }
#entartica-booking-app .entartica-qty-value { flex: 1 1 32px; min-width: 32px; height: 36px; font-variant-numeric: tabular-nums; }
#entartica-booking-app .entartica-qty-add {  height: auto; padding: 8px 14px; line-height: 1.2; }
#entartica-booking-app .entartica-review-info { gap: 16px; padding: 18px; }
#entartica-booking-app .entartica-review-item { gap: 14px; padding: 16px; }
#entartica-booking-app .entartica-review-item-content h3 { font-size: 15px; line-height: 1.35; }
#entartica-booking-app .entartica-review-total strong { font-size: clamp(22px,2.5vw,28px); }
@media (max-width: 700px) {
  #entartica-booking-app { padding: 22px 14px 40px; }
  #entartica-booking-app .entartica-product-grid { grid-template-columns: minmax(0,1fr); gap: 12px; }
  #entartica-booking-app .entartica-product-card { display: grid; grid-template-columns: 94px minmax(0,1fr); align-items: start; gap: 12px; padding: 11px; }
  #entartica-booking-app .entartica-product-image { width: 94px; height: 94px; min-width: 0; }
  #entartica-booking-app .entartica-product-content { padding: 0; }
  #entartica-booking-app .entartica-product-content h3 { font-size: 15px; }
  #entartica-booking-app .entartica-product-bottom { align-items: flex-start; flex-direction: row; gap: 0px; align-items:center;}
  #entartica-booking-app .entartica-product-price { font-size: 14px; }
}

/* =========================================================
   ENTARTICA PASS DETAILS POPUP — CONSOLIDATED RESPONSIVE UI
   Desktop: gallery/content/summary | Tablet/mobile: stacked
   ========================================================= */

.entartica-pass-info-overlay,
.entartica-pass-info-overlay * { box-sizing: border-box; }

.entartica-pass-info-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  background: rgba(9, 24, 46, .74) !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  overflow: auto !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v3 {
  position: relative !important;
  width: min(1240px, calc(100vw - 40px)) !important;
  max-width: 1240px !important;
  max-height: min(900px, 94vh) !important;
  margin: auto !important;
  overflow: hidden !important;
  border: 1px solid #e2e9f2 !important;
  border-radius: 22px !important;
  background: #fff !important;
  color: #10284c !important;
  box-shadow: 0 28px 90px rgba(0, 16, 43, .32) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  line-height: 1.45;
}

.entartica-v3-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .78fr) minmax(270px, .68fr) !important;
  align-items: stretch !important;
  min-width: 0 !important;
  max-height: min(900px, 94vh) !important;
  overflow: hidden !important;
}

.entartica-v3-main,
.entartica-v3-content-panel,
.entartica-v3-summary-panel {
  min-width: 0 !important;
  min-height: 0 !important;
}

.entartica-v3-main {
  padding: 26px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-gutter: stable;
}

.entartica-v3-content-panel {
  padding: 24px 20px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border-left: 1px solid #e6ecf3 !important;
  background: #fff !important;
  scrollbar-gutter: stable;
}

.entartica-v3-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin: 0 0 20px !important;
  padding: 0 44px 0 0 !important;
}

.entartica-v3-header > div:first-child { min-width: 0 !important; flex: 1 1 auto !important; }
.entartica-v3-eyebrow {
  display: block !important;
  margin: 0 0 7px !important;
  color: #6b82a0 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
.entartica-v3-header h2 {
  margin: 0 0 9px !important;
  color: #10284c !important;
  font-size: clamp(23px, 2.1vw, 32px) !important;
  line-height: 1.16 !important;
  font-weight: 600 !important;
  letter-spacing: -.025em !important;
  overflow-wrap: anywhere !important;
}
.entartica-pass-info-rating {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 6px 0 0 !important;
  color: #71829b !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}
.entartica-pass-info-rating span:first-child {
  color: #f6b72c !important;
  font-size: 18px !important;
  letter-spacing: 1px !important;
}
.entartica-pass-info-close {
  position: absolute !important;
  z-index: 20 !important;
  top: 14px !important;
  right: 14px !important;
  display: grid !important;
  place-items: center !important;
  width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #dce4ee !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #10284c !important;
  font-size: 26px !important;
  line-height: 1 !important;
  box-shadow: 0 3px 12px rgba(14, 39, 73, .08) !important;
  cursor: pointer !important;
}
.entartica-pass-info-close:hover { background: #f2f6fb !important; }

.entartica-modal-qty {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  gap: 0 !important;
  min-width: max-content !important;
  height: 40px !important;
  overflow: hidden !important;
  border: 1px solid #d5deea !important;
  border-radius: 10px !important;
  background: #fff !important;
}
.entartica-modal-qty button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #102f5b !important;
  color: #fff !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}
.entartica-modal-qty button:hover { background: #194779 !important; }
.entartica-modal-qty span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 40px !important;
  min-width: 40px !important;
  height: 38px !important;
  margin: 0 !important;
  color: #102f5b !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  font-variant-numeric: tabular-nums !important;
}

.entartica-v3-hero { overflow: hidden !important; border-radius: 15px !important; background: #edf3f8 !important; }
.entartica-pass-info-main-image {
  display: block !important;
  width: 100% !important;
  height: clamp(210px, 28vh, 320px) !important;
  margin: 0 !important;
  object-fit: cover !important;
}
.entartica-v3-thumbnails {
  display: flex !important;
  gap: 8px !important;
  overflow-x: auto !important;
  padding: 10px !important;
  background: #f7f9fc !important;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}
.entartica-v3-thumb {
  flex: 0 0 64px !important;
  width: 64px !important;
  height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  border-radius: 8px !important;
  background: #fff !important;
  cursor: pointer !important;
}
.entartica-v3-thumb.is-active { border-color: #1769d2 !important; }
.entartica-v3-thumb img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }

.entartica-v3-price-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding: 17px 0 !important;
  border-bottom: 1px solid #e8edf4 !important;
}
.entartica-v3-label {
  display: block !important;
  margin: 0 0 3px !important;
  color: #7b8ba2 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}
.entartica-pass-info-price {
  display: inline-block !important;
  margin: 0 !important;
  color: #10284c !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}
.entartica-v3-per { margin-left: 5px !important; color: #7889a0 !important; font-size: 12px !important; }
.entartica-v3-primary-add {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 42px !important;
  padding: 0 15px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: #102f5b !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
}
.entartica-v3-primary-add span { font-size: 19px !important; }
.entartica-v3-primary-add:hover { background: #174477 !important; }

.entartica-v3-section { min-width: 0 !important; margin: 22px 0 0 !important; }
.entartica-v3-section h3 {
  margin: 0 0 10px !important;
  color: #10284c !important;
  font-size: 17px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
}
.entartica-v3-section > p { margin: 0 !important; color: #667995 !important; font-size: 13px !important; line-height: 1.6 !important; }
.entartica-pass-info-video {
  display: block !important;
  width: 100% !important;
  max-height: 260px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  background: #081a30 !important;
}
.entartica-pass-info-steps {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 9px !important;
}
.entartica-pass-info-step {
  display: grid !important;
  grid-template-columns: 32px 72px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  padding: 10px !important;
  border: 1px solid #e4eaf2 !important;
  border-radius: 12px !important;
  background: #fbfcfe !important;
}
.entartica-pass-info-step > img {
  display: block !important;
  width: 72px !important;
  height: 68px !important;
  margin: 0 !important;
  border-radius: 9px !important;
  object-fit: cover !important;
}
.entartica-v3-step-number {
  display: grid !important;
  width: 30px !important;
  height: 30px !important;
  place-items: center !important;
  border-radius: 9px !important;
  background: #eaf2fc !important;
  color: #1b5ea9 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}
.entartica-pass-info-step h4,
.entartica-pass-info-step strong {
  display: block !important;
  margin: 0 0 4px !important;
  color: #132c50 !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
}
.entartica-pass-info-step p { margin: 0 !important; color: #71819a !important; font-size: 11px !important; line-height: 1.45 !important; }

.entartica-v3-section-heading {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 0 10px !important;
}
.entartica-v3-section-heading h3 { margin: 0 !important; }
.entartica-v3-optional { color: #7b8ba2 !important; font-size: 11px !important; white-space: nowrap !important; }

.entartica-related-carousel {
  display: flex !important;
  align-items: stretch !important;
  gap: 10px !important;
  overflow-x: auto !important;
  padding: 2px 2px 12px !important;
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: thin;
}
.entartica-related-card {
  display: grid !important;
  grid-template-rows: 118px minmax(0, 1fr) !important;
  flex: 0 0 165px !important;
  width: 165px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  scroll-snap-align: start !important;
}
.entartica-related-card > img,
.entartica-related-card > .entartica-v3-image-placeholder {
  display: block !important;
  width: 100% !important;
  height: 118px !important;
  margin: 0 !important;
  object-fit: cover !important;
}
.entartica-related-card-body {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 8px !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 10px !important;
}
.entartica-related-card-body strong {
  display: block !important;
  min-height: 2em !important;
  color: #172b4d !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  overflow-wrap: anywhere !important;
}
.entartica-v3-related-price { margin-top: auto !important; color: #10284c !important; font-size: 15px !important; line-height: 1.25 !important; font-weight: 600 !important; }
.entartica-related-card-body button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 38px !important;
  margin: 2px 0 0 !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #ffc83d !important;
  color: #10284c !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  cursor: pointer !important;
}
.entartica-related-card-body button:hover { background: #f3b91f !important; }

/* Booking summary */
.entartica-v3-summary-panel {
  display: flex !important;
  flex-direction: column !important;
  border-left: 1px solid #e5ebf3 !important;
  background: #f7f9fc !important;
}
.entartica-v3-summary-heading { padding: 25px 22px 18px !important; border-bottom: 1px solid #e5ebf3 !important; background: #fff !important; }
.entartica-v3-summary-heading .entartica-v3-eyebrow { margin-bottom: 6px !important; }
.entartica-v3-summary-heading h3 { margin: 0 !important; color: #10284c !important; font-size: clamp(20px, 1.8vw, 26px) !important; line-height: 1.2 !important; font-weight: 600 !important; letter-spacing: -.02em !important; }
.entartica-v3-selected-list {
  flex: 1 1 auto !important;
  min-height: 100px !important;
  max-height: 40vh !important;
  padding: 14px !important;
  overflow-y: auto !important;
  scrollbar-gutter: stable;
}
.entartica-v3-summary-note { margin: 0 !important; padding: 0 18px 18px !important; color: #8493a8 !important; font-size: 12px !important; line-height: 1.5 !important; }
.entartica-v3-summary-bottom {
  flex: 0 0 auto !important;
  padding: 19px 20px 21px !important;
  background: #102f5b !important;
  color: #fff !important;
}
.entartica-v3-summary-bottom .entartica-v3-label { color: #c4d2e4 !important; }
.entartica-modal-total { display: block !important; margin: 0 0 16px !important; color: #fff !important; font-size: clamp(24px, 2.1vw, 30px) !important; line-height: 1.2 !important; font-weight: 600 !important; overflow-wrap: anywhere !important; }
.entartica-modal-done {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: #ffc83d !important;
  color: #10284c !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
}
.entartica-modal-done:hover { background: #f3b91f !important; }

/* Responsive tablet: keep gallery + details together; summary below */
@media (max-width: 1050px) {
  .entartica-pass-info-modal.entartica-pass-modal-v3 { width: min(800px, calc(100vw - 28px)) !important; max-height: 94vh !important; }
  .entartica-v3-layout { grid-template-columns: minmax(0, 1fr) !important; max-height: 94vh !important; overflow-y: auto !important; }
  .entartica-v3-main, .entartica-v3-content-panel { padding: 22px !important; overflow: visible !important; }
  .entartica-v3-content-panel { border-left: 0 !important; border-top: 1px solid #e6ecf3 !important; }
  .entartica-v3-summary-panel { border-left: 0 !important; border-top: 1px solid #e5ebf3 !important; overflow: visible !important; }
  .entartica-v3-summary-heading { padding: 18px 20px 14px !important; }
  .entartica-v3-selected-list { max-height: 230px !important; }
  .entartica-v3-summary-note { padding-bottom: 14px !important; }
  .entartica-v3-summary-bottom { position: sticky !important; bottom: 0 !important; z-index: 5 !important; }
  .entartica-pass-info-steps { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Mobile */
@media (max-width: 600px) {
  .entartica-pass-info-overlay { align-items: stretch !important; padding: 0 !important; }
  .entartica-pass-info-modal.entartica-pass-modal-v3 { width: 100% !important; height: 100dvh !important; max-height: 100dvh !important; border-radius: 0 !important; }
  .entartica-v3-layout { height: 100% !important; max-height: 100dvh !important; }
  .entartica-v3-main, .entartica-v3-content-panel { padding: 18px 15px !important; }
  .entartica-v3-header { flex-wrap: wrap !important; gap: 10px !important; margin-bottom: 15px !important; padding: 24px 42px 0 0 !important; }
  .entartica-v3-header h2 { font-size: 23px !important; }
  .entartica-v3-eyebrow { font-size: 9px !important; }
  .entartica-pass-info-rating { font-size: 11px !important; }
  .entartica-modal-qty { height: 36px !important; }
  .entartica-modal-qty button { flex-basis: 34px !important; width: 34px !important; min-width: 34px !important; height: 34px !important; font-size: 19px !important; }
  .entartica-modal-qty span { flex-basis: 34px !important; min-width: 34px !important; height: 34px !important; font-size: 14px !important; }
  .entartica-pass-info-main-image { height: 230px !important; }
  .entartica-v3-thumbnails { gap: 7px !important; padding: 8px !important; }
  .entartica-v3-thumb { flex-basis: 58px !important; width: 58px !important; height: 48px !important; }
  .entartica-v3-price-row { padding: 14px 0 !important; }
  .entartica-v3-primary-add { min-height: 40px !important; padding: 0 12px !important; font-size: 12px !important; }
  .entartica-v3-section { margin-top: 19px !important; }
  .entartica-v3-section h3 { font-size: 16px !important; }
  .entartica-pass-info-steps { grid-template-columns: minmax(0, 1fr) !important; gap: 8px !important; }
  .entartica-pass-info-step { grid-template-columns: 30px 66px minmax(0, 1fr) !important; gap: 9px !important; padding: 9px !important; }
  .entartica-pass-info-step > img { width: 66px !important; height: 62px !important; }
  .entartica-pass-info-step h4, .entartica-pass-info-step strong { font-size: 12px !important; }
  .entartica-pass-info-step p { font-size: 11px !important; }
  .entartica-related-card { flex-basis: 148px !important; width: 148px !important; grid-template-rows: 105px minmax(0, 1fr) !important; }
  .entartica-related-card > img, .entartica-related-card > .entartica-v3-image-placeholder { height: 105px !important; }
  .entartica-related-card-body { padding: 9px !important; }
  .entartica-related-card-body strong { font-size: 11px !important; }
  .entartica-v3-related-price { font-size: 14px !important; }
  .entartica-related-card-body button { min-height: 36px !important; font-size: 11px !important; }
  .entartica-v3-summary-heading { padding: 17px 58px 13px 16px !important; }
  .entartica-v3-summary-heading h3 { font-size: 21px !important; }
  .entartica-v3-selected-list { min-height: 70px !important; max-height: 200px !important; padding: 10px !important; }
  .entartica-v3-summary-bottom { padding: 15px 16px max(16px, env(safe-area-inset-bottom)) !important; }
  .entartica-modal-total { font-size: 25px !important; margin-bottom: 12px !important; }
  #entartica-booking-app .entartica-review-info { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; padding: 14px !important; }
  #entartica-booking-app .entartica-review-item { grid-template-columns: 64px minmax(0, 1fr) !important; gap: 10px !important; padding: 12px !important; }
  #entartica-booking-app .entartica-review-item-image { width: 64px !important; height: 64px !important; }
  #entartica-booking-app .entartica-review-item-total { grid-column: 2 !important; }
  #entartica-booking-app .entartica-review-actions { flex-direction: column-reverse !important; align-items: stretch !important; gap: 10px !important; }
  #entartica-booking-app .entartica-review-actions .entartica-back-button,
  #entartica-booking-app .entartica-review-actions .entartica-next-button { width: 100% !important; min-width: 0 !important; }
}
@media (max-width: 360px) {
  .entartica-pass-info-step { grid-template-columns: 28px 58px minmax(0, 1fr) !important; gap: 7px !important; }
  .entartica-pass-info-step > img { width: 58px !important; height: 56px !important; }
  .entartica-related-card { flex-basis: 138px !important; width: 138px !important; }
}


/* ==========================================================
   ENTARTICA PASS POPUP V4 — REFERENCE-MATCHED RESPONSIVE UI
   Appended as the single final popup override layer.
   ========================================================== */
body.entartica-popup-open { overflow: hidden !important; }

.entartica-pass-info-overlay,
body > .entartica-pass-info-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
  background: rgba(11, 24, 43, .78) !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  overflow: hidden !important;
  font-family: Inter, Arial, Helvetica, sans-serif !important;
  color: #132b50 !important;
}
.entartica-pass-info-overlay *,
.entartica-pass-info-overlay *::before,
.entartica-pass-info-overlay *::after { box-sizing: border-box !important; }

.entartica-pass-info-modal.entartica-pass-modal-v4 {
  position: relative !important;
  width: min(1500px, 100%) !important;
  max-width: 1500px !important;
  height: min(900px, 92vh) !important;
  max-height: 92vh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(245, 196, 57, .75) !important;
  border-radius: 24px !important;
  background: #fff !important;
  color: #132b50 !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-close {
  position: absolute !important;
  z-index: 30 !important;
  top: 14px !important;
  right: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  border: 1px solid #e0e7f0 !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #132b50 !important;
  font: 600 27px/1 Arial, sans-serif !important;
  box-shadow: 0 4px 15px rgba(20, 43, 78, .10) !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v4-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .76fr) minmax(300px, .64fr) !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
.entartica-pass-modal-v4 .entartica-v4-left,
.entartica-pass-modal-v4 .entartica-v4-middle,
.entartica-pass-modal-v4 .entartica-v3-summary-panel {
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #c5cfdd transparent;
}
.entartica-pass-modal-v4 .entartica-v4-left {
  padding: 26px 22px 24px !important;
  background: #fff !important;
}
.entartica-pass-modal-v4 .entartica-v4-middle {
  padding: 30px 20px 24px !important;
  border-left: 1px solid #e8edf4 !important;
  border-right: 1px solid #e8edf4 !important;
  background: #fff !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-panel {
  display: flex !important;
  flex-direction: column !important;
  padding: 27px 0 0 !important;
  background: #f7f9fc !important;
}
.entartica-pass-modal-v4 .entartica-v4-product-header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
  padding: 0 46px 0 0 !important;
}
.entartica-pass-modal-v4 .entartica-v4-heading-copy { min-width: 0 !important; }
.entartica-pass-modal-v4 .entartica-v3-eyebrow {
  display: block !important;
  margin: 0 0 7px !important;
  color: #6882a7 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}
.entartica-pass-modal-v4 .entartica-v4-product-header h2 {
  margin: 0 0 8px !important;
  color: #132b50 !important;
  font-size: clamp(18px, 1vw, 31px) !important;
  line-height: 1.12 !important;
  font-weight: 600 !important;
  letter-spacing: -.6px !important;
  text-transform: none !important;
  overflow-wrap: anywhere !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-rating {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 0 8px !important;
  color: #f4b72e !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-rating span:first-child {
  color: #f5b629 !important;
  font-size: 17px !important;
  letter-spacing: 1px !important;
  white-space: nowrap !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-rating span:last-child { color: #f0a91b !important; }
.entartica-pass-modal-v4 .entartica-v4-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px 12px !important;
  color: #6d7f98 !important;
  font-size: 11px !important;
}
.entartica-pass-modal-v4 .entartica-modal-qty {
  display: inline-grid !important;
  grid-template-columns: 40px 42px 40px !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  height: 40px !important;
  margin-top: 2px !important;
  overflow: hidden !important;
  border: 1px solid #d7e0ec !important;
  border-radius: 9px !important;
  background: #fff !important;
}
.entartica-pass-modal-v4 .entartica-modal-qty button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #142e55 !important;
  color: #fff !important;
  font: 700 22px/1 Arial, sans-serif !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-modal-qty span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  height: 40px !important;
  color: #142e55 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v4-gallery-block {
  margin: 0 0 16px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 13px !important;
  background: #eef3f8 !important;
}
.entartica-pass-modal-v4 .entartica-v4-hero {
  position: relative !important;
  width: 100% !important;
  height: clamp(210px, 27vh, 310px) !important;
  overflow: hidden !important;
  border-radius: 13px !important;
  background: #e8eff6 !important;
}
.entartica-pass-modal-v4 .entartica-v4-hero > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.entartica-pass-modal-v4 .entartica-v4-gallery-prev,
.entartica-pass-modal-v4 .entartica-v4-gallery-next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.8) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.96) !important;
  color: #142e55 !important;
  font: 500 25px/1 Arial, sans-serif !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v4-gallery-prev { left: 10px !important; }
.entartica-pass-modal-v4 .entartica-v4-gallery-next { right: 10px !important; }
.entartica-pass-modal-v4 .entartica-v4-watch-video {
  position: absolute !important;
  right: 10px !important;
  bottom: 10px !important;
  padding: 8px 11px !important;
  border: 1px solid rgba(255,255,255,.7) !important;
  border-radius: 8px !important;
  background: rgba(13, 35, 66, .92) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v3-thumbnails {
  display: flex !important;
  gap: 8px !important;
  padding: 10px !important;
  overflow-x: auto !important;
  background: #f7f9fc !important;
  scrollbar-width: thin;
}
.entartica-pass-modal-v4 .entartica-v3-thumb {
  flex: 0 0 58px !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  border-radius: 8px !important;
  background: #e8edf4 !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v3-thumb.is-active { border-color: #f6bf32 !important; }
.entartica-pass-modal-v4 .entartica-v3-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.entartica-pass-modal-v4 .entartica-v4-price-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 23px !important;
  padding: 0 0 18px !important;
  border-bottom: 1px solid #e7edf4 !important;
}
.entartica-pass-modal-v4 .entartica-v3-label {
  display: block !important;
  margin: 0 0 3px !important;
  color: #7487a0 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-price {
  display: inline-block !important;
  margin-right: 5px !important;
  color: #142e55 !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v3-per { color: #7487a0 !important; font-size: 11px !important; }
.entartica-pass-modal-v4 .entartica-v3-primary-add {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  min-height: 40px !important;
  padding: 9px 13px !important;
  border: 1px solid #f5c43b !important;
  border-radius: 8px !important;
  background: #f8c63e !important;
  color: #142e55 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v3-primary-add span { font-size: 18px !important; line-height: 1 !important; }
.entartica-pass-modal-v4 .entartica-v4-section-heading {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 0 12px !important;
}
.entartica-pass-modal-v4 .entartica-v4-section-heading h3 {
  margin: 0 0 4px !important;
  color: #142e55 !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v4-section-heading p {
  margin: 0 !important;
  color: #7b8ca4 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
.entartica-pass-modal-v4 .entartica-v3-optional {
  color: #7b8ca4 !important;
  font-size: 10px !important;
  white-space: nowrap !important;
}
.entartica-pass-modal-v4 .entartica-related-carousel {
  display: grid !important;
  grid-auto-columns: minmax(125px, 1fr) !important;
  grid-auto-flow: column !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 2px 2px 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  align-items: stretch !important;
  scrollbar-width: thin;
}
.entartica-pass-modal-v4 .entartica-related-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 5px !important;
  border: 1px solid #e1e8f1 !important;
  border-radius: 11px !important;
  background: #fff !important;
  box-shadow: 0 3px 12px rgba(20, 46, 85, .04) !important;
}
.entartica-pass-modal-v4 .entartica-related-card > img,
.entartica-pass-modal-v4 .entartica-v3-image-placeholder {
  display: block !important;
  width: 100% !important;
  height: 88px !important;
  min-height: 88px !important;
  object-fit: cover !important;
  border-radius: 7px !important;
  background: #edf2f8 !important;
}
.entartica-pass-modal-v4 .entartica-v3-image-placeholder {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #7b8ca4 !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-related-card-body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 7px !important;
  min-width: 0 !important;
  padding: 8px 1px 0 !important;
}
.entartica-pass-modal-v4 .entartica-related-card-body strong {
  display: -webkit-box !important;
  min-height: 22px !important;
  overflow: hidden !important;
  color: #142e55 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  overflow-wrap: anywhere !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}
.entartica-pass-modal-v4 .entartica-v3-related-price {
  display: block !important;
  margin-top: auto !important;
  color: #142e55 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  margin-bottom: 5px;
}
.entartica-pass-modal-v4 .entartica-related-card-body button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 32px !important;
  margin: 0 !important;
  padding: 6px 7px !important;
  border: 1px solid #f4c43e !important;
  border-radius: 7px !important;
  background: #f8c63e !important;
  color: #142e55 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-related-card-body button.is-added {
  border-color: #c8d8cc !important;
  background: #e9f5ec !important;
  color: #23633c !important;
}
.entartica-pass-modal-v4 .entartica-v4-info-section { margin: 0 0 25px !important; }
.entartica-pass-modal-v4 .entartica-v4-info-section h3 {
  margin: 0 0 12px !important;
  color: #142e55 !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v4-inclusions {
  color: #63758f !important;
  font-size: 12px !important;
  line-height: 1.8 !important;
  overflow-wrap: anywhere !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-video {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  max-height: 190px !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #e8eef5 !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-steps {
  display: flex !important;
  flex-direction: column !important;
  gap: 11px !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-step {
  display: grid !important;
  grid-template-columns: 30px 66px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 9px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.entartica-pass-modal-v4 .entartica-v3-step-number {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 29px !important;
  height: 29px !important;
  border-radius: 50% !important;
  background: #e7f1ff !important;
  color: #2672ce !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-step > img {
  display: block !important;
  width: 66px !important;
  height: 62px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  background: #edf2f8 !important;
}
.entartica-pass-modal-v4 .entartica-v4-step-copy { min-width: 0 !important; }
.entartica-pass-modal-v4 .entartica-pass-info-step h4 {
  margin: 1px 0 4px !important;
  color: #142e55 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  overflow-wrap: anywhere !important;
}
.entartica-pass-modal-v4 .entartica-pass-info-step p {
  margin: 0 !important;
  color: #7788a0 !important;
  font-size: 10.5px !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-heading {
  padding: 0 22px 18px !important;
  border-bottom: 1px solid #e5ebf3 !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-heading h3 {
  margin: 0 !important;
  color: #142e55 !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v3-selected-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 9px !important;
  padding: 14px 14px 10px !important;
  overflow: visible !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-item {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 9px !important;
  position: relative !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 10px 28px 10px 9px !important;
  border: 1px solid #e4ebf4 !important;
  border-radius: 10px !important;
  background: #fff !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-item > img,
.entartica-pass-modal-v4 .entartica-v3-summary-item-placeholder {
  width: 54px !important;
  height: 60px !important;
  border-radius: 7px !important;
  object-fit: cover !important;
  background: #edf2f8 !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-item-placeholder {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #7b8ca4 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-item-info { min-width: 0 !important; }
.entartica-pass-modal-v4 .entartica-v3-summary-item-info strong {
  display: -webkit-box !important;
  margin: 0 0 5px !important;
  overflow: hidden !important;
  color: #142e55 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  overflow-wrap: anywhere !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-item-info span {
  color: #667b96 !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
}
.entartica-pass-modal-v4 .entartica-v3-line-total {
  color: #142e55 !important;
  font-size: 11px !important;
  white-space: nowrap !important;
}
.entartica-pass-modal-v4 .entartica-v3-remove-item {
  position: absolute !important;
  top: 5px !important;
  right: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 21px !important;
  height: 21px !important;
  min-width: 21px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 5px !important;
  background: transparent !important;
  color: #71829a !important;
  font-size: 17px !important;
  cursor: pointer !important;
}
.entartica-pass-modal-v4 .entartica-v3-empty {
  padding: 22px 14px !important;
  color: #8191a8 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  text-align: center !important;
}
.entartica-pass-modal-v4 .entartica-v3-empty.has-error { color: #b42318 !important; }
.entartica-pass-modal-v4 .entartica-v3-summary-note {
  margin: 0 !important;
  padding: 0 20px 18px !important;
  color: #8392a8 !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
  text-align: center;
}
.entartica-pass-modal-v4 .entartica-v4-capacity-note {
  padding: 0 20px 12px !important;
  color: #b54708 !important;
  font-size: 11px !important;
}
.entartica-pass-modal-v4 .entartica-v3-summary-bottom {
  margin-top: auto !important;
  padding: 18px 18px 20px !important;
  background: #142f57 !important;
  color: #fff !important;
}
.entartica-pass-modal-v4 .entartica-v3-total-label {
  margin: 0 0 4px !important;
  color: #d2ddef !important;
  font-size: 12px !important;
}
.entartica-pass-modal-v4 .entartica-modal-total {
  margin: 0 0 17px !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  overflow-wrap: anywhere !important;
}
.entartica-pass-modal-v4 .entartica-modal-done {
  display: flex !important;
  align-items: center !important;
    text-transform: uppercase;
  justify-content: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid #f7c63e !important;
  border-radius: 9px !important;
  background: #f8c63e !important;
  color: #142e55 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}
.entartica-pass-modal-v4 .entartica-modal-done span { font-size: 20px !important; line-height: 1 !important; }
.entartica-pass-modal-v4 .entartica-v4-trust-list {
  display: grid !important;
  gap: 12px !important;
  margin: 12px 14px 18px !important;
  padding: 13px !important;
  border-radius: 10px !important;
  background: #edf4fc !important;
}
.entartica-pass-modal-v4 .entartica-v4-trust-list > div {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  gap: 9px !important;
  align-items: center !important;
}
.entartica-pass-modal-v4 .entartica-v4-trust-list > div > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: #dceaff !important;
  color: #245a9a !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.entartica-pass-modal-v4 .entartica-v4-trust-list strong {
  display: block !important;
  color: #142e55 !important;
  font-size: 10px !important;
  line-height: 1.3 !important;
}
.entartica-pass-modal-v4 .entartica-v4-trust-list small {
  display: block !important;
  margin-top: 2px !important;
  color: #7a8ca5 !important;
  font-size: 9px !important;
  line-height: 1.35 !important;
}
.entartica-pass-modal-v4 .entartica-v4-no-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 220px !important;
  background: #edf2f8 !important;
  color: #7b8ca4 !important;
  border-radius: 12px !important;
}
@media (max-width: 1120px) {
  .entartica-pass-modal-v4.entartica-pass-info-modal {
    width: min(1000px, 100%) !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-layout {
    grid-template-columns: minmax(0, 1fr) minmax(260px, .82fr) !important;
  }
  .entartica-pass-modal-v4 .entartica-v3-summary-panel {
    grid-column: 1 / -1 !important;
    height: auto !important;
    overflow: visible !important;
    border-top: 1px solid #e5ebf3 !important;
  }
  .entartica-pass-modal-v4 {
    height: 94vh !important;
    max-height: 94vh !important;
    overflow-y: auto !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-layout {
    height: auto !important;
    overflow: visible !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-left,
  .entartica-pass-modal-v4 .entartica-v4-middle {
    height: auto !important;
    overflow: visible !important;
  }
  .entartica-pass-modal-v4 .entartica-v3-summary-bottom { margin-top: 0 !important; }
  .entartica-pass-modal-v4 .entartica-v4-trust-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 700px) {
  .entartica-pass-info-overlay,
  body > .entartica-pass-info-overlay {
    align-items: stretch !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  .entartica-pass-info-modal.entartica-pass-modal-v4 {
    width: 100% !important;
    max-width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
    border: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }
  .entartica-pass-modal-v4 .entartica-pass-info-close {
    position: sticky !important;
    float: right !important;
    top: 10px !important;
    right: 10px !important;
    margin: 10px 10px -50px 0 !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    height: auto !important;
    overflow: visible !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-left,
  .entartica-pass-modal-v4 .entartica-v4-middle,
  .entartica-pass-modal-v4 .entartica-v3-summary-panel {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-left { padding: 24px 16px 22px !important; }
  .entartica-pass-modal-v4 .entartica-v4-middle {
    padding: 22px 16px 8px !important;
    border-top: 1px solid #e8edf4 !important;
    border-bottom: 1px solid #e8edf4 !important;
    border-left: 0 !important;
    border-right: 0 !important;
  }
  .entartica-pass-modal-v4 .entartica-v3-summary-panel { padding-top: 0 !important; }
  .entartica-pass-modal-v4 .entartica-v4-product-header {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    padding-right: 42px !important;
    margin-bottom: 15px !important;
  }
  .entartica-pass-modal-v4 .entartica-v4-product-header h2 { font-size: 23px !important; }
  .entartica-pass-modal-v4 .entartica-modal-qty {
    grid-template-columns: 32px 32px 32px !important;
    height: 34px !important;
  }
  .entartica-pass-modal-v4 .entartica-modal-qty button {
    width: 32px !important;
    min-width: 32px !important;
    height: 34px !important;
    font-size: 19px !important;
  }
  .entartica-pass-modal-v4 .entartica-modal-qty span { height: 34px !important; font-size: 15px !important; }
  .entartica-pass-modal-v4 .entartica-v4-hero { height: clamp(205px, 55vw, 330px) !important; }
  .entartica-pass-modal-v4 .entartica-v3-thumb { flex-basis: 54px !important; width: 54px !important; height: 54px !important; min-width: 54px !important; }
  .entartica-pass-modal-v4 .entartica-v4-price-row { margin-bottom: 20px !important; }
  .entartica-pass-modal-v4 .entartica-v4-section-heading { align-items: flex-start !important; }
  .entartica-pass-modal-v4 .entartica-v4-section-heading h3 { font-size: 16px !important; }
  .entartica-pass-modal-v4 .entartica-related-carousel {
    grid-auto-columns: minmax(132px, 42%) !important;
  }
  .entartica-pass-modal-v4 .entartica-related-card > img,
  .entartica-pass-modal-v4 .entartica-v3-image-placeholder { height: 100px !important; min-height: 100px !important; }
  .entartica-pass-modal-v4 .entartica-pass-info-step {
    grid-template-columns: 30px 72px minmax(0, 1fr) !important;
    gap: 10px !important;
  }
  .entartica-pass-modal-v4 .entartica-pass-info-step > img { width: 72px !important; height: 68px !important; }
  .entartica-pass-modal-v4 .entartica-pass-info-step h4 { font-size: 13px !important; }
  .entartica-pass-modal-v4 .entartica-pass-info-step p { font-size: 11px !important; }
  .entartica-pass-modal-v4 .entartica-v3-summary-heading { padding: 22px 16px 15px !important; }
  .entartica-pass-modal-v4 .entartica-v3-summary-heading h3 { font-size: 21px !important; }
  .entartica-pass-modal-v4 .entartica-v3-selected-list { padding: 12px 12px 8px !important; }
  .entartica-pass-modal-v4 .entartica-v3-summary-bottom { padding: 17px 16px 18px !important; }
  .entartica-pass-modal-v4 .entartica-v4-trust-list { grid-template-columns: 1fr !important; }
}
@media (max-width: 390px) {
  .entartica-pass-modal-v4 .entartica-v4-left { padding-left: 12px !important; padding-right: 12px !important; }
  .entartica-pass-modal-v4 .entartica-v4-product-header h2 { font-size: 20px !important; }
  .entartica-pass-modal-v4 .entartica-v4-meta { font-size: 10px !important; }
  .entartica-pass-modal-v4 .entartica-v4-price-row { align-items: flex-start !important; }
  .entartica-pass-modal-v4 .entartica-v3-primary-add { padding: 8px 10px !important; font-size: 11px !important; }
  .entartica-pass-modal-v4 .entartica-related-carousel { grid-auto-columns: minmax(125px, 48%) !important; }
  .entartica-pass-modal-v4 .entartica-v3-summary-item {
    grid-template-columns: 46px minmax(0, 1fr) auto !important;
    gap: 7px !important;
  }
  .entartica-pass-modal-v4 .entartica-v3-summary-item > img,
  .entartica-pass-modal-v4 .entartica-v3-summary-item-placeholder {
    width: 46px !important; height: 52px !important;
  }
}

/* =========================================================
   ENTARTICA V4 HOTFIX — SUMMARY ITEMS MUST NOT COVER REVIEW CTA
   Keep this block at the very end of the active stylesheet.
   ========================================================= */
.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-panel {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-heading {
  flex: 0 0 auto !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-selected-list {
  flex: 1 1 auto !important;
  min-height: 72px !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-width: thin !important;
  padding-bottom: 12px !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-note {
  flex: 0 0 auto !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-bottom {
  position: relative !important;
  z-index: 2 !important;
  flex: 0 0 auto !important;
  margin-top: 0 !important;
  isolation: isolate !important;
  box-shadow: 0 -5px 16px rgba(20, 47, 87, .06) !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-item {
  flex: 0 0 auto !important;
  width: 100% !important;
}

.entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-modal-done {
  position: relative !important;
  z-index: 3 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: 10px !important;
  flex: 0 0 auto !important;
}

@media (max-width: 1120px) {
  .entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-panel {
    overflow: visible !important;
  }
  .entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-selected-list {
    flex: 0 1 auto !important;
    max-height: 360px !important;
    min-height: 70px !important;
    overflow-y: auto !important;
  }
}

@media (max-width: 700px) {
  .entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-panel {
    overflow: visible !important;
  }
  .entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-selected-list {
    flex: 0 0 auto !important;
    max-height: 280px !important;
    min-height: 64px !important;
    overflow-y: auto !important;
  }
  .entartica-pass-info-modal.entartica-pass-modal-v4 .entartica-v3-summary-bottom {
    position: sticky !important;
    bottom: 0 !important;
  }
}



/* =========================================================
   ENTARTICA — STEP 1 DESIGN POLISH
   Visual changes only. Booking functionality unchanged.
   ========================================================= */

/* Refined location selector */
#entartica-booking-app .entartica-location-screen {
    width: 100%;
    max-width: 900px;
    margin: 12px auto;
    padding: 24px 24px 26px;
    box-sizing: border-box;

    background: linear-gradient(
        145deg,
        #eaf8fc 0%,
        #c9edf5 55%,
        #b1e4ef 100%
    );

    border: 1px solid #d5edf4;
    border-radius: 20px;
    box-shadow: 0 12px 32px rgba(8, 44, 87, 0.10);
}

/* Header */
#entartica-booking-app
.entartica-location-screen .entartica-booking-header {
    margin: 0 0 20px;
    text-align: center;
}

#entartica-booking-app
.entartica-location-screen .entartica-step-label {
    margin-bottom: 12px;
    padding: 7px 17px;
    background: #082c57;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
}

#entartica-booking-app
.entartica-location-screen .entartica-booking-header h2 {
    max-width: 680px;
    margin: 0 auto 9px;
    color: #082c57;
    font-size: clamp(24px, 2.2vw, 32px);
    line-height: 1.14;
    font-weight: 600;
    letter-spacing: -0.4px;
    text-wrap: balance;
}

#entartica-booking-app
.entartica-location-screen .entartica-booking-header p {
    margin: 0;
    color: #36536c;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 500;
}

/* Locations heading bar */
#entartica-booking-app .entartica-location-heading {
    min-height: 44px;
    margin: 0 0 12px;
    padding: 0 16px;
    background: #082c57;
    border-radius: 9px;
    color: #fff;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: 0.35px;
}

/* Location grid */
#entartica-booking-app .entartica-park-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

/* Cards */
#entartica-booking-app .entartica-park-card {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    min-width: 0;
    min-height: 76px;
    height: auto;
    margin: 0;
    padding: 10px 14px;

    background: rgba(255, 255, 255, 0.68);
    border: 1px solid #c5dfe9;
    border-radius: 12px;
    color: #082c57;
    box-shadow: 0 2px 6px rgba(8, 44, 87, 0.04);

    text-align: left;
    cursor: pointer;

    transition:
        transform 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

#entartica-booking-app .entartica-park-card:hover {
    transform: translateY(-2px);
    background: #fff;
    border-color: #82bfd5;
    box-shadow: 0 7px 18px rgba(8, 44, 87, 0.10);
}

#entartica-booking-app .entartica-park-card:focus-visible {
    outline: 3px solid #ffc928;
    outline-offset: 3px;
}

/* Circular destination images */
#entartica-booking-app .entartica-park-image {
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    margin: 0;
    padding: 3px;
    overflow: hidden;

    background: #fff;
    border: 1px solid rgba(8, 44, 87, 0.10);
    border-radius: 50%;
}

#entartica-booking-app .entartica-park-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    transition: transform 220ms ease;
}

#entartica-booking-app
.entartica-park-card:hover .entartica-park-image img {
    transform: scale(1.06);
}

/* Destination names */
#entartica-booking-app .entartica-park-content {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
}

#entartica-booking-app .entartica-park-content h3 {
    margin: 0;
    color: #082c57;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 600;
    letter-spacing: 0.15px;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

/* Laptop and tablet: compact, viewport-aware spacing */
@media (min-width: 651px) and (max-height: 900px) {
    #entartica-booking-app:has(.entartica-location-screen) {
        padding: 12px 20px 16px;
    }

    #entartica-booking-app .entartica-location-screen {
        margin-top: 0;
        margin-bottom: 0;
        padding: clamp(16px, 2.5vh, 22px);
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-booking-header {
        margin-bottom: clamp(12px, 2vh, 18px);
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-step-label {
        margin-bottom: 9px;
        padding: 6px 15px;
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-booking-header h2 {
        font-size: clamp(23px, 2vw, 29px);
    }

    #entartica-booking-app .entartica-location-heading {
        min-height: 40px;
        margin-bottom: 10px;
    }

    #entartica-booking-app .entartica-park-grid {
        gap: 8px;
    }

    #entartica-booking-app .entartica-park-card {
        min-height: clamp(58px, 8vh, 72px);
        padding: 8px 12px;
        gap: 11px;
    }

    #entartica-booking-app .entartica-park-image {
        flex-basis: clamp(40px, 5.8vh, 50px);
        width: clamp(40px, 5.8vh, 50px);
        height: clamp(40px, 5.8vh, 50px);
    }

    #entartica-booking-app .entartica-park-content h3 {
        font-size: clamp(13px, 1.2vw, 16px);
    }
}

/* Narrow tablet */
@media (min-width: 651px) and (max-width: 900px) {
    #entartica-booking-app .entartica-location-screen {
        max-width: 760px;
        padding: 20px;
    }

    #entartica-booking-app .entartica-park-card {
        gap: 10px;
        padding-right: 10px;
        padding-left: 10px;
    }

    #entartica-booking-app .entartica-park-content h3 {
        font-size: 14px;
    }
}

/* Mobile: keep the two-column concept and allow natural scrolling */
@media (max-width: 650px) {
    #entartica-booking-app:has(.entartica-location-screen) {
        padding: 12px 12px 20px;
    }

    #entartica-booking-app .entartica-location-screen {
        max-width: 100%;
        margin: 0 auto;
        padding: 18px 12px 16px;
        border-radius: 16px;
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-booking-header {
        margin-bottom: 16px;
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-booking-header h2 {
        font-size: clamp(18px, 4.8vw, 22px);
        line-height: 1.16;
        letter-spacing: -0.2px;
    }

    #entartica-booking-app
    .entartica-location-screen .entartica-booking-header p {
        margin-top: 6px;
        font-size: 12px;
        line-height: 1.45;
    }

    #entartica-booking-app .entartica-location-heading {
        min-height: 40px;
        margin-bottom: 9px;
        padding: 0 12px;
        font-size: 12px;
    }

    #entartica-booking-app .entartica-park-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    #entartica-booking-app .entartica-park-card {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 6px;
        min-height: 94px;
        height: auto;
        padding: 9px 5px;
        border-radius: 10px;
        text-align: center;
    }

    #entartica-booking-app .entartica-park-image {
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        margin: 0;
    }

    #entartica-booking-app .entartica-park-content {
        justify-content: center;
        width: 100%;
    }

    #entartica-booking-app .entartica-park-content h3 {
        width: 100%;
        font-size: clamp(10px, 2.8vw, 12px);
        line-height: 1.2;
        text-align: center;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

/* Very narrow phones */
@media (max-width: 360px) {
    #entartica-booking-app .entartica-location-screen {
        padding-right: 9px;
        padding-left: 9px;
    }

    #entartica-booking-app .entartica-park-grid {
        gap: 6px;
    }

    #entartica-booking-app .entartica-park-card {
        min-height: 88px;
        padding: 7px 3px;
    }

    #entartica-booking-app .entartica-park-image {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }

    #entartica-booking-app .entartica-park-content h3 {
        font-size: 10px;
    }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    #entartica-booking-app .entartica-park-card,
    #entartica-booking-app .entartica-park-image img {
        transition: none;
    }

    #entartica-booking-app .entartica-park-card:hover {
        transform: none;
    }
}


/* STEP 1 — Center booking container across devices */

#entartica-booking-app {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    background: linear-gradient(180deg, #eaf8fc 0%, #f4fbfd 58%, #ffffff 100%) !important;
}

#entartica-booking-app .entartica-location-screen {
    width: min(100% - 32px, 1240px);
    margin: 24px auto;
    box-sizing: border-box;
    
}

/* Laptop and tablet: center vertically when space permits */
@media (min-width: 651px) {
    #entartica-booking-app:has(.entartica-location-screen) {
        min-height: 100vh;
        min-height: 100dvh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 20px 0;
        box-sizing: border-box;
    }

    #entartica-booking-app .entartica-location-screen {
        margin-top: auto;
        margin-bottom: auto;
    }
}

/* Mobile: center horizontally, retain natural page scrolling */
@media (max-width: 650px) {
    #entartica-booking-app:has(.entartica-location-screen) {
        display: block;
        min-height: 0;
        padding: 12px 0;
    }

    #entartica-booking-app .entartica-location-screen {
        width: calc(100% - 0px);
        margin: 0 auto;
    }
    
    #entartica-booking-app .entartica-progress-step{
        flex-direction: column;
    }
}



/* =========================================================
   STEP 2 — FINAL COMPACT DESIGN
   Matches Step 1 width | Responsive | Visual-only changes
   ========================================================= */

#entartica-booking-app .entartica-date-screen {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 24px 22px;
    box-sizing: border-box;
    border: 1px solid rgba(255,255,255,.8);
    border-radius: 22px;
    background: linear-gradient(145deg, #e8f8fc 0%, #c9eff6 58%, #afe6ef 100%);
    box-shadow: 0 14px 36px rgba(8,44,87,.09);
}

#entartica-booking-app .entartica-date-screen .entartica-booking-header {
    margin: 0 auto 20px;
    text-align: center;
}

#entartica-booking-app .entartica-date-screen .entartica-step-label {
    margin-bottom: 10px;
    background: #082c57;
    font-weight: 600;
    letter-spacing: .8px;
}

#entartica-booking-app .entartica-date-screen .entartica-booking-header h2 {
    margin: 0 0 8px;
    color: #082c57;
    font-size: clamp(27px, 3vw, 36px);
    line-height: 1.12;
    font-weight: 600;
    letter-spacing: -.45px;
}

#entartica-booking-app .entartica-date-screen .entartica-booking-header p {
    color: #425b76;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
}

#entartica-booking-app .entartica-date-screen .entartica-booking-header p strong {
    color: #082c57;
    font-weight: 600;
}

/* White inner card — compact like Step 1 */

#entartica-booking-app .entartica-calendar-card {
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding: 20px 22px;
    background: rgba(255,255,255,.94);
    border: 1px solid #e0ebf1;
    border-radius: 17px;
    box-shadow: 0 7px 22px rgba(8,44,87,.06);
}

/* Top row */

#entartica-booking-app .entartica-selected-park-row {
    gap: 14px;
}

#entartica-booking-app .entartica-date-back-button {
    min-width: 140px;
    min-height: 40px;
    border-radius: 9px !important;
    background: #082c57 !important;
    border-color: #082c57 !important;
    font-weight: 600 !important;
}

#entartica-booking-app .entartica-date-back-button:hover {
    background: #123e70 !important;
    border-color: #123e70 !important;
    color: #fff !important;
}

#entartica-booking-app .entartica-selected-park-name strong {
    color: #082c57;
    font-weight: 600;
}

#entartica-booking-app .entartica-date-divider {
    margin: 14px 0 18px;
    background: #e4edf3;
}

/* Calendar */

#entartica-booking-app .entartica-calendar-wrapper {
    width: 100%;
}

#entartica-booking-app .flatpickr-calendar {
    width: 100% !important;
    max-width: 440px !important;
    margin: 0 auto !important;
    border: 1px solid #dce8ef !important;
    border-radius: 15px !important;
    box-shadow: 0 6px 18px rgba(8,44,87,.055) !important;
}

#entartica-booking-app .flatpickr-months {
    padding: 8px 8px 3px;
}

#entartica-booking-app .flatpickr-current-month {
    color: #082c57;
    font-weight: 600;
}

#entartica-booking-app span.flatpickr-weekday {
    color: #52677d;
    font-weight: 600;
}

#entartica-booking-app .flatpickr-day {
    border-radius: 8px;
    color: #34475d;
}

#entartica-booking-app .flatpickr-day:hover {
    background: #e8f6fb;
    border-color: transparent;
    color: #082c57;
}

#entartica-booking-app .flatpickr-day.selected,
#entartica-booking-app .flatpickr-day.startRange,
#entartica-booking-app .flatpickr-day.endRange {
    background: #082c57 !important;
    border-color: #082c57 !important;
    color: #fff !important;
}

/* Selected date */

#entartica-booking-app .entartica-selected-date {
    min-height: 66px;
    margin-top: 16px;
    padding: 11px 14px;
    background: #edf8fc;
    border: 1px solid #d1e8f1;
    border-radius: 11px;
}

#entartica-booking-app .entartica-selected-date span {
    font-weight: 600;
    letter-spacing: .55px;
}

#entartica-booking-app .entartica-selected-date strong {
    color: #082c57;
    font-size: 15px;
    font-weight: 600;
}

/* Continue button */

#entartica-booking-app .entartica-date-action {
    margin-top: 14px;
}

#entartica-booking-app .entartica-date-next-button {
    min-width: 190px;
    min-height: 44px;
    border: 1px solid #082c57 !important;
    border-radius: 9px !important;
    background: #082c57 !important;
    color: #fff !important;
    font-weight: 600 !important;
    box-shadow: 0 5px 14px rgba(8,44,87,.13);
}

#entartica-booking-app .entartica-date-next-button:hover:not(:disabled) {
    background: #123e70 !important;
    border-color: #123e70 !important;
}

#entartica-booking-app .entartica-date-next-button:disabled {
    cursor: not-allowed;
}

/* Laptop / tablet */

@media (min-width: 651px) {
    #entartica-booking-app:has(.entartica-date-screen) {
        min-height: 100vh;
        min-height: 100dvh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 16px 20px;
        box-sizing: border-box;
    }
}

/* Mobile */

@media (max-width: 650px) {
    #entartica-booking-app:has(.entartica-date-screen) {
        display: block;
        min-height: 0;
        padding: 12px 0;
    }
    
    #entartica-booking-app .entartica-category-tab-name{
        font-size: 10px !important;
    }

    #entartica-booking-app .entartica-date-screen {
        width: calc(100% - 24px);
        max-width: 900px;
        margin: 0 auto;
        padding: 18px 12px;
        border-radius: 17px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-booking-header {
        margin-bottom: 15px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-booking-header h2 {
        font-size: clamp(18px, 4.8vw, 22px);
        line-height: 1.15;
        letter-spacing: -.2px;
    }
    
    #entartica-booking-app:has(.entartica-products-container) .entartica-booking-header h2{
        font-size: clamp(18px, 4.8vw, 22px) !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-booking-header p {
        font-size: 13px;
    }

    #entartica-booking-app .entartica-calendar-card {
        padding: 14px 11px;
        border-radius: 14px;
    }

    #entartica-booking-app .entartica-selected-park-row {
        gap: 8px;
    }

    #entartica-booking-app .entartica-date-back-button {
        min-width: 0;
        min-height: 38px;
        padding: 8px 10px;
        font-size: 12px !important;
    }

    #entartica-booking-app .entartica-selected-park-name strong {
        font-size: 12px;
    }

    #entartica-booking-app .entartica-date-divider {
        margin: 13px 0 15px;
    }

    #entartica-booking-app .flatpickr-calendar {
        max-width: 100% !important;
    }

    #entartica-booking-app .flatpickr-day {
        height: 39px;
        line-height: 39px;
        font-size: 13px;
    }

    #entartica-booking-app .entartica-selected-date {
        min-height: 64px;
        margin-top: 13px;
        padding: 10px 7px;
    }

    #entartica-booking-app .entartica-selected-date strong {
        font-size: 14px;
    }

    #entartica-booking-app .entartica-date-action {
        margin-top: 12px;
    }

    #entartica-booking-app .entartica-date-next-button {
        width: 100%;
        min-width: 0;
        min-height: 46px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #entartica-booking-app .entartica-date-back-button,
    #entartica-booking-app .entartica-date-next-button {
        transition: none !important;
    }
}



/* =========================================================
   STEP 3 — SCOPED WIDTH + VISUAL FIX
   Only active when the Step 3 product container is rendered.
   Step 1, Step 2 and Step 4 rules are left untouched.
   ========================================================= */

#entartica-booking-app:has(.entartica-products-container) {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 28px 32px 56px !important;
    box-sizing: border-box !important;
    background: linear-gradient(180deg, #eaf8fc 0%, #f4fbfd 58%, #ffffff 100%) !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-booking-wrapper {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-booking-header {
    width: 100% !important;
    max-width: none !important;
    text-align: center;
    margin: 0 auto 30px !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-booking-header h2 {
    color: #172b4d !important;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.12 !important;
    font-weight: 600 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-booking-header p {
    color: #667085 !important;
    font-size: 16px !important;
}

/* Context bar, category tabs, product grid and actions use the same width */
#entartica-booking-app:has(.entartica-products-container) .entartica-booking-context-row,
#entartica-booking-app:has(.entartica-products-container) .entartica-selected-info,
#entartica-booking-app:has(.entartica-products-container) .entartica-category-tabs,
#entartica-booking-app:has(.entartica-products-container) .entartica-products-container,
#entartica-booking-app:has(.entartica-products-container) .entartica-product-grid,
#entartica-booking-app:has(.entartica-products-container) .entartica-products-actions {
    width: 100% !important;
    max-width: none !important;
}

/* Step 3 context bar */
#entartica-booking-app:has(.entartica-products-container) .entartica-booking-context-row,
#entartica-booking-app:has(.entartica-products-container) .entartica-selected-info {
    box-sizing: border-box;
    margin: 0 0 28px !important;
    padding: 18px 22px !important;
    border: 1px solid #dceaf0 !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.9) !important;
    box-shadow: 0 8px 24px rgba(8,44,87,.06) !important;
}

/* Category tabs */
#entartica-booking-app:has(.entartica-products-container) .entartica-category-tabs {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 28px !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-category-tab {
    border-radius: 11px !important;
    border-color: #d5e0e9 !important;
    background: #fff !important;
    color: #172b4d !important;
    font-weight: 500 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-category-tab.active {
    background: #172b4d !important;
    color: #fff !important;
    border-color: #172b4d !important;
}

/* Two equal-width product columns on desktop */
#entartica-booking-app:has(.entartica-products-container) .entartica-product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-product-card {
    width: 100% !important;
    min-width: 0 !important;
    padding: 10px !important;
    border: 1px solid #dce8ee !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(8,44,87,.065) !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-product-card:hover {
    border-color: #bfdce6 !important;
    box-shadow: 0 12px 28px rgba(8,44,87,.11) !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-product-content h3 {
    color: #172b4d !important;
    font-weight: 600 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-product-price {
    color: #082c57 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-qty-add {
    background: #ffc928 !important;
    border-color: #ffc928 !important;
    border-radius: 10px !important;
    color: #082c57 !important;
    font-weight: 600 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-pass-more-info {
    background: #082c57 !important;
    border-color: #082c57 !important;
    color: #fff !important;
    border-radius: 9px !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-products-actions {
    margin-top: 28px !important;
}

/* Tablet */
@media (max-width: 1024px) {
    #entartica-booking-app:has(.entartica-products-container) {
        padding: 24px 20px 44px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-card {
        gap: 12px !important;
        padding: 12px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-image {
        flex-basis: 112px !important;
        width: 112px !important;
        height: 112px !important;
    }
}

/* Mobile */
@media (max-width: 700px) {
    #entartica-booking-app:has(.entartica-products-container) {
        padding: 20px 12px 36px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-booking-context-row,
    #entartica-booking-app:has(.entartica-products-container) .entartica-selected-info {
        padding: 14px !important;
        margin-bottom: 20px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-category-tabs {
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 2px 2px 10px;
        margin-bottom: 20px !important;
        -webkit-overflow-scrolling: touch;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-category-tab {
        flex: 0 0 auto;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-card {
        display: flex !important;
        gap: 10px !important;
        padding: 10px !important;
                align-items: center;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-image {
        flex: 0 0 100px !important;
        width: 100px !important;
        height: 120px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-product-content h3 {
        font-size: 11px !important;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-products-actions {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    #entartica-booking-app:has(.entartica-products-container) .entartica-products-actions .entartica-next-button,
    #entartica-booking-app:has(.entartica-products-container) .entartica-products-actions .entartica-back-button {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* =========================================================
   STEP 4 — ADD MORE PASSES MODAL
   Scoped override layer: does not alter Steps 1–3 or the main review page.
   ========================================================= */

#entartica-add-passes-modal {
    padding: clamp(12px, 2vw, 28px) !important;
    isolation: isolate;
}

#entartica-add-passes-modal .entartica-add-passes-overlay {
    background: rgba(12, 25, 45, 0.70) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

#entartica-add-passes-modal .entartica-add-passes-dialog {
    display: flex !important;
    flex-direction: column !important;
    width: min(900px, calc(100vw - 40px)) !important;
    max-width: 1100px !important;
    max-height: min(86vh, 850px) !important;
    padding: 24px 26px 18px !important;
    overflow: hidden !important;
    border: 1px solid #e0e7f1 !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 28px 90px rgba(7, 20, 40, .30) !important;
    color: #172b4d !important;
}

#entartica-add-passes-modal .entartica-add-passes-header {
    flex: 0 0 auto !important;
    align-items: center !important;
    padding: 0 0 18px !important;
    margin: 0 0 18px !important;
    border-bottom: 1px solid #e5ebf3 !important;
    gap: 18px !important;
}

#entartica-add-passes-modal .entartica-add-passes-header h2 {
    margin: 0 0 5px !important;
    color: #172b4d !important;
    font-size: clamp(23px, 2vw, 30px) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: -.35px !important;
}

#entartica-add-passes-modal .entartica-add-passes-header p {
    color: #667792 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
}

#entartica-add-passes-modal #entartica-close-add-passes {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 14px !important;
    background: #f5f8fc !important;
    color: #172b4d !important;
    font-size: 27px !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

#entartica-add-passes-modal #entartica-close-add-passes:hover {
    border-color: #172b4d !important;
    background: #172b4d !important;
    color: #fff !important;
}

#entartica-add-passes-modal .entartica-add-passes-list {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-content: start !important;
    gap: 14px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    padding: 1px 4px 8px 1px !important;
    scrollbar-width: thin;
    scrollbar-color: #aebbd0 #f2f5f9;
}

#entartica-add-passes-modal .entartica-add-pass-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    gap: 9px !important;
    padding: 12px !important;
    border: 1px solid #dfe7f1 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(23, 43, 77, .035) !important;
    transform: none !important;
}

#entartica-add-passes-modal .entartica-add-pass-card:hover {
    border-color: #a8bad4 !important;
    box-shadow: 0 7px 20px rgba(23, 43, 77, .08) !important;
    transform: translateY(-1px) !important;
}

#entartica-add-passes-modal .entartica-add-pass-card img {
    display: block !important;
    width: 100% !important;
    height: clamp(155px, 14vw, 155px) !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 10px !important;
    background: #f1f5f9 !important;
}

#entartica-add-passes-modal .entartica-add-pass-card h3 {
    margin: 0 0 8px !important;
    color: #172b4d !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

#entartica-add-passes-modal .entartica-add-pass-card p {
    margin: 0 !important;
    color: #687991 !important;
    font-size: 11.5px !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere;
}

#entartica-add-passes-modal .entartica-add-pass-quantity {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-top: auto !important;
    padding-top: 3px !important;
}

#entartica-add-passes-modal .entartica-add-pass-price {
    color: #172b4d !important;
    font-size: clamp(17px, 1.5vw, 21px) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    overflow-wrap: anywhere;
}

#entartica-add-passes-modal .entartica-add-pass-qty-controls {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    border: 1px solid #dce5f0 !important;
    border-radius: 10px !important;
    background: #f3f6fa !important;
    overflow: hidden !important;
}

#entartica-add-passes-modal .entartica-add-pass-qty-controls button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #f3f6fa !important;
    color: #172b4d !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

#entartica-add-passes-modal .entartica-add-pass-qty-controls button:hover {
    background: #e4ebf4 !important;
    color: #172b4d !important;
}

#entartica-add-passes-modal .entartica-add-pass-qty-controls span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    min-height: 38px !important;
    padding: 0 4px !important;
    color: #172b4d !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

#entartica-add-passes-modal .entartica-add-passes-footer {
    flex: 0 0 auto !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    padding: 16px 0 0 !important;
    margin: 8px 0 0 !important;
    border-top: 1px solid #e5ebf3 !important;
    background: #fff !important;
}

#entartica-add-passes-modal .entartica-add-passes-footer button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 11px 22px !important;
    border-radius: 10px !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
}

#entartica-add-passes-modal #entartica-cancel-add-passes {
    border: 1px solid #d7e1ef !important;
    background: #fff !important;
    color: #172b4d !important;
}

#entartica-add-passes-modal #entartica-cancel-add-passes:hover {
    background: #f4f7fb !important;
    border-color: #aabbd1 !important;
}

#entartica-add-passes-modal #entartica-confirm-add-passes {
    border: 1px solid #172b4d !important;
    background: #172b4d !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(23, 43, 77, .16) !important;
}

#entartica-add-passes-modal #entartica-confirm-add-passes:hover:not(:disabled) {
    border-color: #0d1d36 !important;
    background: #0d1d36 !important;
}

#entartica-add-passes-modal .entartica-add-passes-empty {
    grid-column: 1 / -1 !important;
}

/* Mobile: keep modal usable and cards stacked, without affecting other steps. */
@media (max-width: 640px) {
    #entartica-add-passes-modal {
        align-items: center !important;
        padding: 8px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-dialog {
        width: calc(100vw - 16px) !important;
        max-width: none !important;
        max-height: 94dvh !important;
        padding: 16px 13px 12px !important;
        border-radius: 17px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-header {
        gap: 10px !important;
        padding-bottom: 14px !important;
        margin-bottom: 13px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-header h2 {
        font-size: 22px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-header p {
        font-size: 13px !important;
    }

    #entartica-add-passes-modal #entartica-close-add-passes {
        flex-basis: 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        height: 40px !important;
        border-radius: 11px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-list {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 11px !important;
        padding-right: 2px !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-card {
        gap: 8px !important;
        padding: 11px !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-card img {
        height: clamp(145px, 43vw, 205px) !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-card h3 {
        font-size: 16px !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-card p {
        font-size: 12px !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-quantity {
        flex-wrap: nowrap !important;
    }

    #entartica-add-passes-modal .entartica-add-pass-price {
        font-size: 18px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-footer {
        gap: 8px !important;
        padding-top: 12px !important;
        margin-top: 6px !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-footer button {
        min-height: 43px !important;
        padding: 10px 12px !important;
        font-size: 13px !important;
    }
}

@media (max-width: 360px) {
    #entartica-add-passes-modal .entartica-add-pass-quantity {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-footer {
        flex-direction: column-reverse !important;
    }

    #entartica-add-passes-modal .entartica-add-passes-footer button {
        width: 100% !important;
    }
}

/* Entartica Booking — Step 4 Add-ons UI */
/* ENTARTICA ADD-ONS — MATCH ADD MORE PASSES DESIGN
   Paste this at the END of the active booking CSS file.
   Keeps existing JavaScript and add-on functionality unchanged. */

/* Modal shell: same visual language as Add More Passes */
#entartica-addons-modal.entartica-addons-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  font-family: inherit !important;
  box-sizing: border-box !important;
}

#entartica-addons-modal[style*="display: block"],
#entartica-addons-modal[style*="display:flex"],
#entartica-addons-modal[style*="display: flex"] {
  display: flex !important;
}

#entartica-addons-modal .entartica-addons-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(10, 20, 38, .72) !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

#entartica-addons-modal .entartica-addons-dialog {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 850px !important;
  max-height: 85vh !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid #e5eaf2 !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 25px 80px rgba(0, 0, 0, .25) !important;
  color: #172744 !important;
  animation: entarticaModalIn .25s ease-out;
  box-sizing: border-box !important;
}

/* Header typography and close button match Add More Passes */
#entartica-addons-modal .entartica-addons-header {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 20px !important;
  padding: 28px 28px 22px !important;
  margin: 0 !important;
  border-bottom: 1px solid #e8edf4 !important;
  background: #fff !important;
}

#entartica-addons-modal .entartica-addons-eyebrow {
  margin: 0 0 7px !important;
  color: #f5222d !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
}

#entartica-addons-modal .entartica-addons-header h2 {
  margin: 0 0 8px !important;
  color: #172744 !important;
  font-size: 27px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

#entartica-addons-modal .entartica-addons-header p {
  margin: 0 !important;
  color: #718096 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

#entartica-addons-modal .entartica-addons-close {
  flex: 0 0 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #f5f7fb !important;
  color: #172744 !important;
  font-size: 27px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

#entartica-addons-modal .entartica-addons-close:hover {
  background: #172744 !important;
  color: #fff !important;
}

/* Scrollable add-ons list */
#entartica-addons-modal .entartica-addons-list {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-content: stretch !important;
  gap: 12px !important;
  padding: 18px 28px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

/* Horizontal flex card: image | title/description/price | quantity */
#entartica-addons-modal .entartica-addon-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 14px !important;
  border: 1px solid #e1e8f1 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
  box-sizing: border-box !important;
}

#entartica-addons-modal .entartica-addon-card:hover {
  border-color: #9aafd0 !important;
  box-shadow: 0 8px 24px rgba(23, 39, 68, .08) !important;
  transform: none !important;
}

#entartica-addons-modal .entartica-addon-card-image {
  flex: 0 0 112px !important;
  width: 112px !important;
  height: 96px !important;
  min-height: 96px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 11px !important;
  background: #f1f4f9 !important;
}

#entartica-addons-modal .entartica-addon-card-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
}

#entartica-addons-modal .entartica-addon-image-placeholder {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  place-items: center !important;
  color: #172744 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

#entartica-addons-modal .entartica-addon-card-copy {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  align-self: center !important;
}

#entartica-addons-modal .entartica-addon-card-copy h3 {
  margin: 0 0 6px !important;
  color: #172744 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

#entartica-addons-modal .entartica-addon-card-copy p {
  margin: 0 0 7px !important;
  color: #718096 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  overflow-wrap: anywhere !important;
}

#entartica-addons-modal .entartica-addon-card-price {
  display: inline-block !important;
  color: #172744 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

/* Quantity control styling mirrors Add More Passes */
#entartica-addons-modal .entartica-addon-qty-controls {
  flex: 0 0 122px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0 !important;
  width: 122px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #dce4ef !important;
  border-radius: 10px !important;
  background: #f3f6fa !important;
  box-sizing: border-box !important;
}

#entartica-addons-modal .entartica-addon-qty-controls button {
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f3f6fa !important;
  color: #172744 !important;
  font-family: inherit !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

#entartica-addons-modal .entartica-addon-qty-controls button:hover {
  background: #e3eaf4 !important;
}

#entartica-addons-modal .entartica-addon-qty-controls span {
  flex: 1 1 auto !important;
  min-width: 24px !important;
  margin: 0 !important;
  text-align: center !important;
  color: #172744 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}

/* Footer matches Add More Passes footer */
#entartica-addons-modal .entartica-addons-footer {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 18px 28px 22px !important;
  margin: 0 !important;
  border-top: 1px solid #e8edf4 !important;
  background: #fff !important;
}

#entartica-addons-modal .entartica-addons-total-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  color: #718096 !important;
  font-size: 13px !important;
}

#entartica-addons-modal .entartica-addons-total-wrap strong {
  color: #172744 !important;
  font-size: 23px !important;
  font-weight: 500 !important;
}

#entartica-addons-modal .entartica-addons-footer-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

#entartica-addons-modal .entartica-addons-footer-actions button {
  min-height: 46px !important;
  margin: 0 !important;
  padding: 12px 20px !important;
  border: 1px solid #dce4ef !important;
  border-radius: 11px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: .2s ease !important;
}

#entartica-addons-modal .entartica-addons-cancel {
  background: #fff !important;
  color: #172744 !important;
}

#entartica-addons-modal .entartica-addons-cancel:hover {
  background: #f3f6fa !important;
}

#entartica-addons-modal .entartica-addons-confirm {
  border-color: #172d50 !important;
  background: #172d50 !important;
  color: #fff !important;
}

#entartica-addons-modal .entartica-addons-confirm:hover {
  border-color: #25456f !important;
  background: #25456f !important;
}

#entartica-addons-modal .entartica-addons-empty {
  padding: 35px 20px !important;
  border: 1px dashed #d5dfed !important;
  border-radius: 14px !important;
  background: #f8fafd !important;
  color: #718096 !important;
  text-align: center !important;
  line-height: 1.7 !important;
}

#entartica-addons-modal .entartica-addons-empty strong {
  color: #172744 !important;
}

/* Tablet */
@media (max-width: 800px) {
  #entartica-addons-modal .entartica-addons-dialog {
    max-width: 680px !important;
    max-height: 90vh !important;
  }

  #entartica-addons-modal .entartica-addons-header {
    padding: 22px 20px 18px !important;
  }

  #entartica-addons-modal .entartica-addons-list {
    padding: 14px 20px !important;
  }

  #entartica-addons-modal .entartica-addon-card {
    gap: 12px !important;
    padding: 12px !important;
  }

  #entartica-addons-modal .entartica-addon-card-image {
    flex-basis: 92px !important;
    width: 92px !important;
    height: 86px !important;
    min-height: 86px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls {
    flex-basis: 108px !important;
    width: 108px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls button {
    flex-basis: 32px !important;
    width: 32px !important;
    min-width: 32px !important;
  }

  #entartica-addons-modal .entartica-addons-footer {
    padding: 16px 20px 18px !important;
  }
}

/* Mobile: preserve horizontal image + details + quantity layout */
@media (max-width: 600px) {
  #entartica-addons-modal {
    padding: 10px !important;
  }

  #entartica-addons-modal .entartica-addons-dialog {
    width: 100% !important;
    max-width: none !important;
    max-height: 92vh !important;
    border-radius: 17px !important;
  }

  #entartica-addons-modal .entartica-addons-header {
    gap: 10px !important;
    padding: 18px 16px 15px !important;
  }

  #entartica-addons-modal .entartica-addons-header h2 {
    font-size: 22px !important;
  }

  #entartica-addons-modal .entartica-addons-header p {
    font-size: 13px !important;
  }

  #entartica-addons-modal .entartica-addons-close {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 36px !important;
    font-size: 23px !important;
  }

  #entartica-addons-modal .entartica-addons-list {
    padding: 12px !important;
    gap: 10px !important;
  }

  #entartica-addons-modal .entartica-addon-card {
    flex-direction: row !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 9px !important;
    border-radius: 12px !important;
  }

  #entartica-addons-modal .entartica-addon-card-image {
    flex: 0 0 68px !important;
    width: 68px !important;
    height: 72px !important;
    min-height: 72px !important;
    border-radius: 9px !important;
  }

  #entartica-addons-modal .entartica-addon-card-copy h3 {
    margin-bottom: 4px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
  }

  #entartica-addons-modal .entartica-addon-card-copy p {
    margin-bottom: 4px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  #entartica-addons-modal .entartica-addon-card-price {
    font-size: 12px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls {
    flex: 0 0 82px !important;
    width: 82px !important;
    margin-left: auto !important;
    border-radius: 8px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls button {
    flex: 0 0 23px !important;
    width: 23px !important;
    min-width: 23px !important;
    height: 29px !important;
    font-size: 17px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls span {
    min-width: 12px !important;
    font-size: 12px !important;
  }

  #entartica-addons-modal .entartica-addons-footer {
    align-items: center !important;
    flex-direction: row !important;
    gap: 10px !important;
    padding: 12px !important;
  }

  #entartica-addons-modal .entartica-addons-total-wrap {
    font-size: 11px !important;
  }

  #entartica-addons-modal .entartica-addons-total-wrap strong {
    font-size: 20px !important;
  }

  #entartica-addons-modal .entartica-addons-footer-actions {
    gap: 7px !important;
  }

  #entartica-addons-modal .entartica-addons-footer-actions button {
    min-height: 40px !important;
    padding: 9px 11px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 360px) {
  #entartica-addons-modal .entartica-addon-card {
    gap: 6px !important;
    padding: 7px !important;
  }

  #entartica-addons-modal .entartica-addon-card-image {
    flex-basis: 56px !important;
    width: 56px !important;
    height: 64px !important;
    min-height: 64px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls {
    flex-basis: 74px !important;
    width: 74px !important;
  }

  #entartica-addons-modal .entartica-addon-qty-controls button {
    flex-basis: 21px !important;
    width: 21px !important;
    min-width: 21px !important;
  }
}

/* =========================================================
   ENTARTICA STEP 4 — ADD MORE PASSES + ADD-ONS
   Desktop: side by side
   Mobile: vertically stacked
   Infinite glow animation
   ========================================================= */

/* Keep both button wrappers aligned */
#entartica-booking-app .entartica-add-more-wrapper {
    display: inline-flex !important;
    flex-direction: column !important;
    vertical-align: top !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 12px 16px 0 !important;
    box-sizing: border-box !important;
}

/* Both buttons: same size and appearance */
#entartica-booking-app #entartica-add-more-passes,
#entartica-booking-app #entartica-open-addons {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;

    min-height: 54px !important;
    min-width: 190px !important;
    padding: 0 26px !important;
    margin: 0 !important;

    border: 1px solid #d5e0ef !important;
    border-radius: 17px !important;

    background: #ffffff !important;
    color: #082c57 !important;

    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;

    white-space: nowrap !important;
    text-align: center !important;
    cursor: pointer !important;
    box-sizing: border-box !important;

    animation: entarticaInfiniteButtonGlow 2s ease-in-out infinite !important;
    transition: transform .2s ease, background-color .2s ease !important;
}

/* Hover effect */
#entartica-booking-app #entartica-add-more-passes:hover,
#entartica-booking-app #entartica-open-addons:hover {
    transform: translateY(-2px) !important;
    background: #f5f9ff !important;
}

/* Infinite soft glow */
@keyframes entarticaInfiniteButtonGlow {
    0%, 100% {
        box-shadow:
            0 0 0 0 rgba(8, 44, 87, 0),
            0 4px 12px rgba(8, 44, 87, .08);
        border-color: #d5e0ef;
    }

    50% {
        box-shadow:
            0 0 0 5px rgba(8, 44, 87, .08),
            0 8px 24px rgba(8, 44, 87, .20);
        border-color: #8ea8cb;
    }
}

/* Helper text below each button */
#entartica-booking-app .entartica-add-more-wrapper > p {
    margin: 12px 0 0 !important;
    line-height: 1.5 !important;
}

/* =========================================================
   ADD-ONS VISIBILITY
   JS must set the attribute only after checking the
   selected park's actual active add-ons.
   ========================================================= */

/* No active add-ons: hide ONLY the add-ons wrapper.
   Do not hide the shared Add More Passes wrapper. */
#entartica-booking-app[data-entartica-addons="empty"]
.entartica-add-more-wrapper.entartica-addons-wrapper {
    display: none !important;
}

/* Hide add-ons trigger/modal if no add-ons are available */
#entartica-booking-app[data-entartica-addons="empty"] #entartica-open-addons,
#entartica-booking-app[data-entartica-addons="empty"] #entartica-addons-modal,
#entartica-booking-app[data-entartica-addons="empty"] .entartica-addons-section {
    display: none !important;
}

/* When add-ons exist, show their wrapper */
#entartica-booking-app[data-entartica-addons="available"]
.entartica-add-more-wrapper.entartica-addons-wrapper {
    display: inline-flex !important;
    flex-direction: column !important;
    vertical-align: top !important;
    margin: 0 12px 16px 0 !important;
}

/* =========================================================
   MOBILE — stack buttons vertically
   ========================================================= */
@media (max-width: 600px) {
    #entartica-booking-app .entartica-add-more-wrapper {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 14px !important;
    }

    #entartica-booking-app #entartica-add-more-passes,
    #entartica-booking-app #entartica-open-addons {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 54px !important;
        padding: 0 18px !important;
        font-size: 17px !important;
    }

    #entartica-booking-app[data-entartica-addons="available"]
    .entartica-add-more-wrapper.entartica-addons-wrapper {
        display: flex !important;
        width: 100% !important;
        margin: 0 0 14px !important;
    }
}

.entartica-selected-addons{
    text-align: center;
    border: 1.5px solid #ededed;
    padding: 10px;
    border-radius: 10px;
    margin-top: 10px;
    background: #ffffff !important;
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
    #entartica-booking-app #entartica-add-more-passes,
    #entartica-booking-app #entartica-open-addons {
        animation: none !important;
        transition: none !important;
    }
}

/* Entartica Prayagraj boat booking — scoped styling only; other parks unchanged */
.entartica-prayagraj-screen{max-width:1440px;margin:0 auto;padding:24px 0 48px;color:#102746}
.entartica-prayagraj-screen .entartica-booking-header{margin:0 0 22px}
.entartica-prayagraj-screen .entartica-booking-header h2{margin:8px 0;color:#082c57;font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.15}
.entartica-prayagraj-screen .entartica-booking-header p{margin:8px 0 0;color:#64748b;font-size:15px}
.entartica-prayagraj-screen .entartica-booking-context-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 26px;margin-bottom:26px;background:rgba(255,255,255,.92);border:1px solid #dce6f0;border-radius:22px;box-shadow:0 12px 32px rgba(8,44,87,.06)}
.entartica-prayagraj-screen .entartica-context-back-button{border:0;border-radius:14px;padding:16px 24px;background:#082c57;color:#fff;font-size:15px;font-weight:600;box-shadow:0 8px 20px rgba(8,44,87,.16);cursor:pointer}
.entartica-prayagraj-screen .entartica-context-info{display:flex;gap:12px;flex-wrap:wrap}
.entartica-prayagraj-screen .entartica-context-info>div{display:flex;align-items:center;gap:12px;min-width:210px;padding:13px 18px;border:1px solid #e0e7ef;border-radius:14px;background:#fff}
.entartica-prayagraj-screen .entartica-context-info span{color:#718096;font-size:13px}.entartica-prayagraj-screen .entartica-context-info strong{color:#082c57;font-size:16px}
.entartica-prayagraj-filter{padding:24px 26px;margin:0 0 24px;border:1px solid #dce6f0;border-radius:20px;background:#fff;box-shadow:0 8px 26px rgba(8,44,87,.045)}
.entartica-prayagraj-filter label{display:block;margin:0 0 12px;color:#082c57;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.entartica-prayagraj-filter select{display:block;width:100%;min-height:56px;padding:13px 17px;border:1px solid #cbd8e7;border-radius:13px;background:#fff;color:#082c57;font-size:17px;outline:none;box-shadow:none}
.entartica-prayagraj-filter select:focus{border-color:#1d5b9e;box-shadow:0 0 0 3px rgba(29,91,158,.12)}
.entartica-prayagraj-boat-grid{width:100%;min-width:0}
.entartica-prayagraj-boat-grid-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.entartica-prayagraj-boat-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dce5ef;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(8,44,87,.075);transition:transform .2s ease,box-shadow .2s ease}
.entartica-prayagraj-boat-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(8,44,87,.13)}
.entartica-prayagraj-boat-card>img{display:block;width:100%;height:245px;object-fit:cover;background:#eaf2f8}
.entartica-prayagraj-boat-card .entartica-no-image{display:grid;place-items:center;height:245px;background:linear-gradient(135deg,#eaf5fa,#d5e7f3);color:#082c57;font-weight:600;font-size:24px}
.entartica-prayagraj-boat-card-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px}
.entartica-prayagraj-boat-card-content h3{margin:0 0 10px;color:#082c57;font-size:21px;line-height:1.35;font-weight:600}
.entartica-prayagraj-boat-card-content>p{margin:0 0 16px;color:#64748b;font-size:14px;line-height:1.65}
.entartica-prayagraj-boat-price{margin: auto 0 18px;color:#082c57;font-size:23px;font-weight:600}
.entartica-prayagraj-boat-price small{display:block;margin-top:4px;color:#718096;font-size:12px;font-weight:500}
.entartica-prayagraj-selected-package{margin:0 0 14px;padding:8px 11px;border-radius:9px;background:#eaf5ee;color:#17633a;font-size:12px;font-weight:600}
.entartica-prayagraj-card-actions{display:flex;width:100%;gap:10px;margin-top:4px}
.entartica-prayagraj-card-actions button{flex:1;min-height:46px;padding:11px 13px;border-radius:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}
.entartica-prayagraj-more-info{border:1px solid #c8d7e7;background:#fff;color:#082c57}
.entartica-prayagraj-more-info:hover{border-color:#082c57;background:#f3f8fc}
.entartica-prayagraj-choose{border:1px solid #082c57;background:#082c57;color:#fff}
.entartica-prayagraj-choose:hover{background:#10457e}
.entartica-prayagraj-screen .entartica-empty-state{padding:44px 24px;border:1px solid #e0e7ef;border-radius:18px;background:#fff;color:#64748b;text-align:center;font-size:16px}
.entartica-prayagraj-screen .entartica-products-actions{display:flex;justify-content:flex-end;margin-top:28px;padding-top:24px;border-top:1px solid #e0e7ef}
.entartica-prayagraj-screen #entartica-review-button{min-width:230px;min-height:56px;padding:14px 24px;border:0;border-radius:14px;background:#082c57;color:#fff;font-size:16px;font-weight:600;cursor:pointer}
.entartica-prayagraj-screen #entartica-review-button:disabled{background:#98a4b4;cursor:not-allowed}

/* More Info / package-selection modal */
.entartica-prayagraj-modal-overlay{position:fixed!important;inset:0!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:22px!important;background:rgba(5,18,36,.72)!important;backdrop-filter:blur(5px);overflow-y:auto!important}
.entartica-prayagraj-modal{position:relative!important;width:min(1440px,96vw)!important;max-width:1440px!important;max-height:calc(100vh - 44px)!important;margin:auto!important;overflow:auto!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 30px 90px rgba(0,0,0,.35)!important;color:#142b46!important}
.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;top:12px!important;float:right!important;z-index:20!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:12px 12px -54px 0!important;border:1px solid #dbe4ee!important;border-radius:50%!important;background:#fff!important;color:#082c57!important;font-size:29px!important;line-height:1!important;box-shadow:0 4px 14px rgba(8,44,87,.12)!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-layout{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr) minmax(250px,.7fr)!important;gap:0!important;align-items:stretch!important}
.entartica-prayagraj-modal .entartica-v4-left{min-width:0!important;padding:34px 28px!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-v4-product-header{padding:0 42px 20px 0!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{display:block!important;margin-bottom:9px!important;color:#c43a3a!important;font-size:11px!important;font-weight:600!important;letter-spacing:.15em!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{margin:0 0 12px!important;color:#082c57!important;font-size:clamp(24px,2.4vw,34px)!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-meta{display:flex!important;flex-wrap:wrap!important;gap:10px!important;color:#64748b!important;font-size:13px!important}
.entartica-prayagraj-modal .entartica-v4-gallery-block{margin-bottom:24px!important}
.entartica-prayagraj-modal .entartica-v4-hero{position:relative!important;overflow:hidden!important;border-radius:16px!important;background:#eaf2f8!important}
.entartica-prayagraj-modal .entartica-v4-hero img{display:block!important;width:100%!important;height:clamp(240px,32vh,390px)!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev],.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;background:rgba(8,44,87,.88)!important;color:#fff!important;font-size:27px!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev]{left:12px!important}.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{right:12px!important}
.entartica-prayagraj-modal .entartica-v3-thumbnails{display:flex!important;gap:10px!important;overflow-x:auto!important;margin-top:11px!important;padding-bottom:4px!important}
.entartica-prayagraj-modal .entartica-v3-thumb{flex:0 0 76px!important;width:76px!important;height:60px!important;padding:0!important;overflow:hidden!important;border:2px solid transparent!important;border-radius:9px!important;background:#edf2f7!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v3-thumb.is-active{border-color:#082c57!important}.entartica-prayagraj-modal .entartica-v3-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-info-section{margin:0 0 22px!important;padding:20px!important;border:1px solid #e3eaf2!important;border-radius:15px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v4-info-section h3,.entartica-prayagraj-modal .entartica-v4-related-section h3{margin:0 0 15px!important;color:#082c57!important;font-size:18px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-info-section video{display:block!important;max-height:320px!important;border-radius:10px!important;background:#071b31!important}
.entartica-prayagraj-modal .entartica-pass-info-step{display:flex!important;gap:14px!important;align-items:flex-start!important;margin:12px 0!important;padding:13px!important;border-radius:12px!important;background:#f5f8fb!important}
.entartica-prayagraj-modal .entartica-pass-info-step img{width:90px!important;height:76px!important;flex:0 0 90px!important;object-fit:cover!important;border-radius:9px!important}
.entartica-prayagraj-modal .entartica-pass-info-step h4{margin:0 0 5px!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-pass-info-step p{margin:0!important;color:#64748b!important;font-size:13px!important;line-height:1.55!important}
.entartica-prayagraj-modal .entartica-v4-middle{min-width:0!important;padding:34px 22px!important;background:#f8fafc!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:12px 0 20px!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{display:flex!important;gap:9px!important;align-items:center!important;min-width:0!important;padding:14px 12px!important;border:1px solid #d6e0eb!important;border-radius:12px!important;background:#fff!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label:has(input:checked){border-color:#082c57!important;background:#edf4fb!important;box-shadow:0 0 0 1px #082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options input{accent-color:#082c57!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong{display:block!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options small{display:block!important;margin-top:3px!important;color:#718096!important;font-size:11px!important}
.entartica-prayagraj-modal .entartica-prayagraj-capacity-label{display:block!important;margin:0 0 8px!important;color:#344b64!important;font-size:13px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-capacity]{width:100%!important;min-height:48px!important;padding:11px 13px!important;border:1px solid #cbd8e7!important;border-radius:10px!important;background:#fff!important;color:#082c57!important;font-size:15px!important}
.entartica-prayagraj-modal .entartica-prayagraj-package-price{display:block!important;margin-top:16px!important;padding:17px!important;border-radius:13px!important;background:#eaf2fa!important;color:#082c57!important;font-size:24px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions{margin-top:14px!important;color:#475569!important;font-size:13px!important;line-height:1.7!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions h4{margin:0 0 8px!important;color:#082c57!important;font-size:14px!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions ul{padding-left:20px!important;margin:0!important}
.entartica-prayagraj-modal .entartica-v3-summary-panel{position:sticky!important;top:0!important;display:flex!important;flex-direction:column!important;min-width:0!important;min-height:100%!important;padding:34px 22px 24px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v3-summary-heading h3{margin:8px 0 20px!important;color:#082c57!important;font-size:23px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-summary]{padding:17px!important;border:1px solid #e1e8f0!important;border-radius:13px!important;background:#f8fafc!important;color:#475569!important;font-size:14px!important;line-height:1.6!important;overflow-wrap:anywhere!important}
.entartica-prayagraj-modal [data-boat-summary] p{margin:0 0 8px!important}.entartica-prayagraj-modal [data-boat-summary] p:last-child{margin-bottom:0!important}.entartica-prayagraj-modal [data-boat-summary] strong{color:#082c57!important}
.entartica-prayagraj-modal .entartica-v3-summary-bottom{margin-top:auto!important;padding-top:24px!important}.entartica-prayagraj-modal .entartica-v3-total-label{margin-bottom:5px!important;color:#64748b!important;font-size:13px!important}.entartica-prayagraj-modal [data-boat-total]{display:block!important;margin-bottom:18px!important;color:#082c57!important;font-size:32px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-save-boat]{width:100%!important;min-height:52px!important;padding:13px 16px!important;border:0!important;border-radius:12px!important;background:#082c57!important;color:#fff!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important}.entartica-prayagraj-modal [data-save-boat]:disabled{background:#a5afbd!important;cursor:not-allowed!important}
.entartica-prayagraj-modal .entartica-v4-related-section{margin-top:24px!important}.entartica-prayagraj-modal .entartica-related-carousel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.entartica-prayagraj-modal .entartica-related-card{overflow:hidden!important;border:1px solid #e1e8f0!important;border-radius:12px!important;background:#fff!important}.entartica-prayagraj-modal .entartica-related-card>img{display:block!important;width:100%!important;height:100px!important;object-fit:cover!important}.entartica-prayagraj-modal .entartica-related-card-body{display:flex!important;flex-direction:column!important;gap:7px!important;padding:12px!important}.entartica-prayagraj-modal .entartica-related-card-body strong{color:#082c57!important;font-size:13px!important}.entartica-prayagraj-modal .entartica-related-card-body span{color:#64748b!important;font-size:12px!important}.entartica-prayagraj-modal .entartica-related-card-body button{padding:9px 10px!important;border:0!important;border-radius:8px!important;background:#082c57!important;color:#fff!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important}
@media(max-width:1100px){.entartica-prayagraj-boat-grid-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1;position:static!important;border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-v4-middle{border-right:0!important}}
@media(max-width:680px){.entartica-prayagraj-screen{padding:14px 0 28px}.entartica-prayagraj-screen .entartica-booking-context-row{padding:16px;border-radius:16px}.entartica-prayagraj-screen .entartica-context-info{width:100%}.entartica-prayagraj-screen .entartica-context-info>div{flex:1;min-width:0;padding:11px}.entartica-prayagraj-filter{padding:18px;border-radius:16px}.entartica-prayagraj-filter select{font-size:15px}.entartica-prayagraj-boat-grid-inner{grid-template-columns:1fr;gap:17px}.entartica-prayagraj-boat-card>img,.entartica-prayagraj-boat-card .entartica-no-image{height:220px}.entartica-prayagraj-boat-card-content{padding:18px}.entartica-prayagraj-screen .entartica-products-actions{justify-content:stretch}.entartica-prayagraj-screen #entartica-review-button{width:100%;min-width:0}
.entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}.entartica-prayagraj-modal{width:100%!important;max-height:calc(100vh - 16px)!important;border-radius:15px!important}.entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important}.entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{width:100%!important;padding:22px 16px!important;border-right:0!important}.entartica-prayagraj-modal .entartica-v4-left{padding-top:30px!important}.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:24px!important}.entartica-prayagraj-modal .entartica-v4-hero img{height:230px!important}.entartica-prayagraj-modal .entartica-v4-info-section{padding:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options{gap:8px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{padding:11px 8px!important}.entartica-prayagraj-modal .entartica-related-carousel{grid-template-columns:repeat(2,minmax(0,1fr))!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;margin-right:8px!important}}

/* CHANGE 1: Match the existing Entartica horizontal ride-card design.
   Applies only to Prayagraj; all font weights are capped at 600. */
.entartica-prayagraj-booking,
.entartica-prayagraj-screen{font-weight:400!important}
.entartica-prayagraj-booking *,
.entartica-prayagraj-screen *{font-weight:inherit}
.entartica-prayagraj-booking .entartica-booking-header h2,
.entartica-prayagraj-screen .entartica-booking-header h2{font-weight:600!important}
.entartica-prayagraj-booking .entartica-booking-header p,
.entartica-prayagraj-screen .entartica-booking-header p{font-weight:400!important}
.entartica-prayagraj-booking .entartica-context-back-button,
.entartica-prayagraj-screen .entartica-context-back-button,
.entartica-prayagraj-booking .entartica-context-info strong,
.entartica-prayagraj-screen .entartica-context-info strong,
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label,
.entartica-prayagraj-screen .entartica-prayagraj-filter label,
.entartica-prayagraj-booking .entartica-product-content h3,
.entartica-prayagraj-screen .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-booking .entartica-product-price,
.entartica-prayagraj-screen .entartica-prayagraj-boat-price,
.entartica-prayagraj-booking .entartica-product-bottom button,
.entartica-prayagraj-screen .entartica-prayagraj-card-actions button,
.entartica-prayagraj-booking #entartica-prayagraj-review,
.entartica-prayagraj-screen #entartica-review-button{font-weight:600!important}

/* Current live markup: .entartica-prayagraj-booking + .entartica-product-card */
.entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:22px 24px!important;margin:0 0 24px!important;border:1px solid #dce6f0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 8px 26px rgba(8,44,87,.045)!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label{display:block!important;margin:0 0 12px!important;color:#082c57!important;font-size:13px!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.entartica-prayagraj-booking #entartica-prayagraj-boarding-point{width:100%!important;min-height:52px!important;padding:12px 16px!important;border:1px solid #cbd8e7!important;border-radius:12px!important;background:#fff!important;color:#082c57!important;font-size:16px!important;font-weight:400!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel p{margin:12px 0 0!important;color:#64748b!important;font-size:14px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list{width:100%!important;min-width:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 30px!important;align-items:stretch!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:0!important;min-width:0!important;min-height:252px!important;padding:24px!important;overflow:hidden!important;border:1px solid #d9e5ef!important;border-radius:27px!important;background:#fff!important;box-shadow:0 10px 28px rgba(8,44,87,.06)!important;transition:box-shadow .18s ease,transform .18s ease!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 32px rgba(8,44,87,.1)!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 203px!important;width:203px!important;max-width:203px!important;height:203px!important;margin:0 22px 0 0!important;overflow:hidden!important;border-radius:18px!important;background:#edf3f8!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image .entartica-no-image{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;background:#edf3f8!important;color:#082c57!important;font-size:20px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{margin:0 0 16px!important;color:#082c57!important;font-size:24px!important;line-height:1.25!important;text-transform:uppercase!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-usp{margin:0 0 12px!important;color:#64748b!important;font-size:15px!important;line-height:1.5!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{margin:0 0 20px!important;color:#082c57!important;font-size:23px!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price small{display:block!important;margin-top:4px!important;color:#64748b!important;font-size:12px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-selected-label{margin:0 0 12px!important;color:#17633a!important;font-size:12px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%!important;margin-top:auto!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;padding:12px 24px!important;border-radius:14px!important;font-size:15px!important;line-height:1.2!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info{border:1px solid #082c57!important;background:#082c57!important;color:#fff!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info:hover{background:#10457e!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add{margin-left:auto!important;border:1px solid #ffc928!important;background:#ffc928!important;color:#082c57!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add:hover{background:#f4b900!important}
.entartica-prayagraj-booking .entartica-empty-state{font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-review{font-weight:600!important}

/* Enforce the requested maximum weight of 600 in the Prayagraj modal too. */
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{font-weight:400!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2,
.entartica-prayagraj-modal .entartica-v4-info-section h3,
.entartica-prayagraj-modal .entartica-v4-related-section h3,
.entartica-prayagraj-modal .entartica-v3-summary-heading h3,
.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong,
.entartica-prayagraj-modal .entartica-prayagraj-package-price,
.entartica-prayagraj-modal [data-boat-total],
.entartica-prayagraj-modal [data-save-boat],
.entartica-prayagraj-modal .entartica-related-card-body button{font-weight:600!important}

@media(max-width:1100px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{grid-template-columns:1fr!important;gap:18px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{min-height:230px!important;padding:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex-basis:180px!important;width:180px!important;max-width:180px!important;height:180px!important}
}
@media(max-width:600px){
 .entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{flex-direction:column!important;min-height:0!important;padding:16px!important;border-radius:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 auto!important;width:100%!important;max-width:none!important;height:220px!important;margin:0 0 17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{font-size:20px!important;margin-bottom:10px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{font-size:21px!important;margin-bottom:16px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{gap:8px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{min-height:46px!important;padding:10px 13px!important;font-size:13px!important}
}


/* FINAL OVERRIDE — Prayagraj horizontal cards matching the supplied reference */
.entartica-prayagraj-booking{
  width:100%!important;
  max-width:1440px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  color:#102746!important;
}
.entartica-prayagraj-booking *,
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{
  box-sizing:border-box!important;
  font-weight:400!important;
}
.entartica-prayagraj-booking h1,
.entartica-prayagraj-booking h2,
.entartica-prayagraj-booking h3,
.entartica-prayagraj-booking h4,
.entartica-prayagraj-booking strong,
.entartica-prayagraj-booking b,
.entartica-prayagraj-booking button,
.entartica-prayagraj-modal h1,
.entartica-prayagraj-modal h2,
.entartica-prayagraj-modal h3,
.entartica-prayagraj-modal h4,
.entartica-prayagraj-modal strong,
.entartica-prayagraj-modal b,
.entartica-prayagraj-modal button{
  font-weight:600!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boarding-point{
  display:block!important;width:100%!important;min-height:54px!important;
  padding:12px 16px!important;border:1px solid #cbd8e7!important;
  border-radius:12px!important;background:#fff!important;color:#082c57!important;
  font-size:16px!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list{
  display:block!important;width:100%!important;max-width:none!important;
  margin:22px 0!important;padding:0!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;align-items:stretch!important;width:100%!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list article.entartica-product-card{
  display:flex!important;flex-direction:row!important;align-items:stretch!important;
  gap:20px!important;width:100%!important;min-width:0!important;min-height:220px!important;
  padding:24px!important;margin:0!important;overflow:hidden!important;
  border:1px solid #d8e5f0!important;border-radius:26px!important;
  background:#fff!important;box-shadow:0 10px 28px rgba(8,44,87,.07)!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{
  display:block!important;flex:0 0 203px!important;width:203px!important;max-width:203px!important;
  height:203px!important;margin:0!important;padding:0!important;overflow:hidden!important;
  border-radius:18px!important;background:#edf3f8!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;border-radius:18px!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content{
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
  align-items:flex-start!important;justify-content:flex-start!important;min-width:0!important;
  padding:0!important;margin:0!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{
  margin:0 0 14px!important;color:#082c57!important;font-size:23px!important;
  line-height:1.3!important;font-weight:600!important;text-transform:uppercase!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-usp{
  margin:0 0 12px!important;color:#64748b!important;font-size:15px!important;line-height:1.5!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{
  margin:0 0 18px!important;color:#082c57!important;font-size:23px!important;
  line-height:1.25!important;font-weight:600!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price small{
  display:block!important;margin-top:4px!important;color:#64748b!important;font-size:12px!important;font-weight:400!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{
  display:flex!important;flex-direction:row!important;align-items:center!important;
  justify-content:flex-start!important;gap:12px!important;width:100%!important;
  margin-top:auto!important;padding:0!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:50px!important;padding:12px 24px!important;border-radius:14px!important;
  font-size:15px!important;line-height:1.2!important;font-weight:600!important;white-space:nowrap!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info{
  border:1px solid #082c57!important;background:#082c57!important;color:#fff!important;
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add{
  margin-left:auto!important;border:1px solid #ffc928!important;background:#ffc928!important;color:#082c57!important;
}
.entartica-prayagraj-booking .entartica-booking-header h2{font-weight:600!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label{font-weight:600!important}
.entartica-prayagraj-booking .entartica-context-info strong{font-weight:600!important}
.entartica-prayagraj-booking .entartica-products-actions button{font-weight:600!important}
@media(max-width:1100px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{
  grid-template-columns:1fr!important;gap:18px!important;
 }
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list article.entartica-product-card{
  min-height:200px!important;padding:20px!important;
 }
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{
  flex-basis:180px!important;width:180px!important;max-width:180px!important;height:180px!important;
 }
}
@media(max-width:600px){
 .entartica-prayagraj-booking{padding-left:12px!important;padding-right:12px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list article.entartica-product-card{
  flex-direction:column!important;gap:15px!important;min-height:0!important;padding:16px!important;border-radius:20px!important;
 }
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{
  flex:0 0 auto!important;width:100%!important;max-width:none!important;height:220px!important;margin:0!important;
 }
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{font-size:19px!important;margin-bottom:9px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{font-size:21px!important;margin-bottom:14px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{gap:8px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{
  flex:1 1 0!important;min-width:0!important;min-height:44px!important;padding:10px 8px!important;font-size:13px!important;
 }
}


/* Entartica Prayagraj — exact live markup fix based on DevTools screenshot */
/* Target: #entartica-prayagraj-boats > .entartica-prayagraj-boat-grid-inner */
.entartica-prayagraj-screen #entartica-prayagraj-boats,
.entartica-prayagraj-booking #entartica-prayagraj-boats {
  width: 100% !important;
  min-width: 0 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats > .entartica-prayagraj-boat-grid-inner,
.entartica-prayagraj-booking #entartica-prayagraj-boats > .entartica-prayagraj-boat-grid-inner {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
  width: 100% !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 20px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 252px !important;
  padding: 24px !important;
  overflow: hidden !important;
  border: 1px solid #d9e5ef !important;
  border-radius: 27px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(8,44,87,.06) !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card > img,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card > img {
  display: block !important;
  flex: 0 0 203px !important;
  width: 203px !important;
  min-width: 203px !important;
  max-width: 203px !important;
  height: 203px !important;
  margin: 0 !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card > .entartica-no-image,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card > .entartica-no-image {
  display: grid !important;
  flex: 0 0 203px !important;
  width: 203px !important;
  min-width: 203px !important;
  height: 203px !important;
  place-items: center !important;
  border-radius: 18px !important;
  background: #edf3f8 !important;
  color: #082c57 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  padding: 0 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3 {
  margin: 0 0 10px !important;
  color: #082c57 !important;
  font-size: clamp(16px, 1.45vw, 20px) !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content > p,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content > p {
  margin: 0 0 12px !important;
  color: #64748b !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-price,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-price {
  margin: 0 0 10px !important;
  color: #082c57 !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-price small,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-price small {
  display: block !important;
  margin-top: 4px !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-selected-package,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-selected-package {
  margin: 0 0 10px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-card-actions,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-card-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: auto !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-card-actions button,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-card-actions button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 22px !important;
  border-radius: 13px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-more-info,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-more-info {
  border: 1px solid #082c57 !important;
  background: #082c57 !important;
  color: #fff !important;
}
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-choose,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-choose {
  margin-left: auto !important;
  border: 1px solid #ffc928 !important;
  background: #ffc928 !important;
  color: #082c57 !important;
}
/* Limit all Prayagraj font weights to 600 or below */
.entartica-prayagraj-screen #entartica-prayagraj-boats *,
.entartica-prayagraj-booking #entartica-prayagraj-boats * { font-weight: 400; }
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-price,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-price,
.entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-card-actions button,
.entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-card-actions button { font-weight: 600 !important; }
@media (max-width: 1100px) {
  .entartica-prayagraj-screen #entartica-prayagraj-boats > .entartica-prayagraj-boat-grid-inner,
  .entartica-prayagraj-booking #entartica-prayagraj-boats > .entartica-prayagraj-boat-grid-inner { grid-template-columns: 1fr !important; gap: 18px !important; }
}
@media (max-width: 600px) {
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card { flex-direction: column !important; gap: 16px !important; min-height: 0 !important; padding: 16px !important; border-radius: 20px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card > img,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card > img { flex: 0 0 auto !important; width: 100% !important; min-width: 0 !important; max-width: none !important; height: 220px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card > .entartica-no-image,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card > .entartica-no-image { flex: 0 0 auto !important; width: 100% !important; min-width: 0 !important; height: 200px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-boat-card-content h3 { font-size: 20px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-card-actions,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-card-actions { gap: 8px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-card-actions button,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-card-actions button { flex: 1 1 auto !important; min-width: 0 !important; padding: 11px 12px !important; font-size: 13px !important; }
  .entartica-prayagraj-screen #entartica-prayagraj-boats .entartica-prayagraj-choose,
  .entartica-prayagraj-booking #entartica-prayagraj-boats .entartica-prayagraj-choose { margin-left: 0 !important; }
}
/* More Info / package-selection modal */
.entartica-prayagraj-modal-overlay{position:fixed!important;inset:0!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:22px!important;background:rgba(5,18,36,.72)!important;backdrop-filter:blur(5px);overflow-y:auto!important}
.entartica-prayagraj-modal{position:relative!important;width:min(1440px,96vw)!important;max-width:1440px!important;max-height:calc(100vh - 44px)!important;margin:auto!important;overflow:auto!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 30px 90px rgba(0,0,0,.35)!important;color:#142b46!important}
.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;top:12px!important;float:right!important;z-index:20!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:12px 12px -54px 0!important;border:1px solid #dbe4ee!important;border-radius:50%!important;background:#fff!important;color:#082c57!important;font-size:29px!important;line-height:1!important;box-shadow:0 4px 14px rgba(8,44,87,.12)!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-layout{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr) minmax(250px,.7fr)!important;gap:0!important;align-items:stretch!important}
.entartica-prayagraj-modal .entartica-v4-left{min-width:0!important;padding:34px 28px!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-v4-product-header{padding:0 42px 20px 0!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{display:block!important;margin-bottom:9px!important;color:#c43a3a!important;font-size:11px!important;font-weight:600!important;letter-spacing:.15em!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{margin:0 0 12px!important;color:#082c57!important;font-size:clamp(24px,2.4vw,34px)!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-meta{display:flex!important;flex-wrap:wrap!important;gap:10px!important;color:#64748b!important;font-size:13px!important}
.entartica-prayagraj-modal .entartica-v4-gallery-block{margin-bottom:24px!important}
.entartica-prayagraj-modal .entartica-v4-hero{position:relative!important;overflow:hidden!important;border-radius:16px!important;background:#eaf2f8!important}
.entartica-prayagraj-modal .entartica-v4-hero img{display:block!important;width:100%!important;height:clamp(240px,32vh,390px)!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev],.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;background:rgba(8,44,87,.88)!important;color:#fff!important;font-size:27px!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev]{left:12px!important}.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{right:12px!important}
.entartica-prayagraj-modal .entartica-v3-thumbnails{display:flex!important;gap:10px!important;overflow-x:auto!important;margin-top:11px!important;padding-bottom:4px!important}
.entartica-prayagraj-modal .entartica-v3-thumb{flex:0 0 76px!important;width:76px!important;height:60px!important;padding:0!important;overflow:hidden!important;border:2px solid transparent!important;border-radius:9px!important;background:#edf2f7!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v3-thumb.is-active{border-color:#082c57!important}.entartica-prayagraj-modal .entartica-v3-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-info-section{margin:0 0 22px!important;padding:20px!important;border:1px solid #e3eaf2!important;border-radius:15px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v4-info-section h3,.entartica-prayagraj-modal .entartica-v4-related-section h3{margin:0 0 15px!important;color:#082c57!important;font-size:18px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-info-section video{display:block!important;max-height:320px!important;border-radius:10px!important;background:#071b31!important}
.entartica-prayagraj-modal .entartica-pass-info-step{display:flex!important;gap:14px!important;align-items:flex-start!important;margin:12px 0!important;padding:13px!important;border-radius:12px!important;background:#f5f8fb!important}
.entartica-prayagraj-modal .entartica-pass-info-step img{width:90px!important;height:76px!important;flex:0 0 90px!important;object-fit:cover!important;border-radius:9px!important}
.entartica-prayagraj-modal .entartica-pass-info-step h4{margin:0 0 5px!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-pass-info-step p{margin:0!important;color:#64748b!important;font-size:13px!important;line-height:1.55!important}
.entartica-prayagraj-modal .entartica-v4-middle{min-width:0!important;padding:34px 22px!important;background:#f8fafc!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:12px 0 20px!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{display:flex!important;gap:9px!important;align-items:center!important;min-width:0!important;padding:14px 12px!important;border:1px solid #d6e0eb!important;border-radius:12px!important;background:#fff!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label:has(input:checked){border-color:#082c57!important;background:#edf4fb!important;box-shadow:0 0 0 1px #082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options input{accent-color:#082c57!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong{display:block!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options small{display:block!important;margin-top:3px!important;color:#718096!important;font-size:11px!important}
.entartica-prayagraj-modal .entartica-prayagraj-capacity-label{display:block!important;margin:0 0 8px!important;color:#344b64!important;font-size:13px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-capacity]{width:100%!important;min-height:48px!important;padding:11px 13px!important;border:1px solid #cbd8e7!important;border-radius:10px!important;background:#fff!important;color:#082c57!important;font-size:15px!important}
.entartica-prayagraj-modal .entartica-prayagraj-package-price{display:block!important;margin-top:16px!important;padding:17px!important;border-radius:13px!important;background:#eaf2fa!important;color:#082c57!important;font-size:24px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions{margin-top:14px!important;color:#475569!important;font-size:13px!important;line-height:1.7!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions h4{margin:0 0 8px!important;color:#082c57!important;font-size:14px!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions ul{padding-left:20px!important;margin:0!important}
.entartica-prayagraj-modal .entartica-v3-summary-panel{position:sticky!important;top:0!important;display:flex!important;flex-direction:column!important;min-width:0!important;min-height:100%!important;padding:34px 22px 24px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v3-summary-heading h3{margin:8px 0 20px!important;color:#082c57!important;font-size:23px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-summary]{padding:17px!important;border:1px solid #e1e8f0!important;border-radius:13px!important;background:#f8fafc!important;color:#475569!important;font-size:14px!important;line-height:1.6!important;overflow-wrap:anywhere!important}
.entartica-prayagraj-modal [data-boat-summary] p{margin:0 0 8px!important}.entartica-prayagraj-modal [data-boat-summary] p:last-child{margin-bottom:0!important}.entartica-prayagraj-modal [data-boat-summary] strong{color:#082c57!important}
.entartica-prayagraj-modal .entartica-v3-summary-bottom{margin-top:auto!important;padding-top:24px!important}.entartica-prayagraj-modal .entartica-v3-total-label{margin-bottom:5px!important;color:#64748b!important;font-size:13px!important}.entartica-prayagraj-modal [data-boat-total]{display:block!important;margin-bottom:18px!important;color:#082c57!important;font-size:32px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-save-boat]{width:100%!important;min-height:52px!important;padding:13px 16px!important;border:0!important;border-radius:12px!important;background:#082c57!important;color:#fff!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important}.entartica-prayagraj-modal [data-save-boat]:disabled{background:#a5afbd!important;cursor:not-allowed!important}
.entartica-prayagraj-modal .entartica-v4-related-section{margin-top:24px!important}.entartica-prayagraj-modal .entartica-related-carousel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.entartica-prayagraj-modal .entartica-related-card{overflow:hidden!important;border:1px solid #e1e8f0!important;border-radius:12px!important;background:#fff!important}.entartica-prayagraj-modal .entartica-related-card>img{display:block!important;width:100%!important;height:100px!important;object-fit:cover!important}.entartica-prayagraj-modal .entartica-related-card-body{display:flex!important;flex-direction:column!important;gap:7px!important;padding:12px!important}.entartica-prayagraj-modal .entartica-related-card-body strong{color:#082c57!important;font-size:13px!important}.entartica-prayagraj-modal .entartica-related-card-body span{color:#64748b!important;font-size:12px!important}.entartica-prayagraj-modal .entartica-related-card-body button{padding:9px 10px!important;border:0!important;border-radius:8px!important;background:#082c57!important;color:#fff!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important}
@media(max-width:1100px){.entartica-prayagraj-boat-grid-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1;position:static!important;border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-v4-middle{border-right:0!important}}
@media(max-width:680px){.entartica-prayagraj-screen{padding:14px 0 28px}.entartica-prayagraj-screen .entartica-booking-context-row{padding:16px;border-radius:16px}.entartica-prayagraj-screen .entartica-context-info{width:100%}.entartica-prayagraj-screen .entartica-context-info>div{flex:1;min-width:0;padding:11px}.entartica-prayagraj-filter{padding:18px;border-radius:16px}.entartica-prayagraj-filter select{font-size:15px}.entartica-prayagraj-boat-grid-inner{grid-template-columns:1fr;gap:17px}.entartica-prayagraj-boat-card>img,.entartica-prayagraj-boat-card .entartica-no-image{height:220px}.entartica-prayagraj-boat-card-content{padding:18px}.entartica-prayagraj-screen .entartica-products-actions{justify-content:stretch}.entartica-prayagraj-screen #entartica-review-button{width:100%;min-width:0}
.entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}.entartica-prayagraj-modal{width:100%!important;max-height:calc(100vh - 16px)!important;border-radius:15px!important}.entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important}.entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{width:100%!important;padding:22px 16px!important;border-right:0!important}.entartica-prayagraj-modal .entartica-v4-left{padding-top:30px!important}.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:24px!important}.entartica-prayagraj-modal .entartica-v4-hero img{height:230px!important}.entartica-prayagraj-modal .entartica-v4-info-section{padding:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options{gap:8px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{padding:11px 8px!important}.entartica-prayagraj-modal .entartica-related-carousel{grid-template-columns:repeat(2,minmax(0,1fr))!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;margin-right:8px!important}}

/* CHANGE 1: Match the existing Entartica horizontal ride-card design.
   Applies only to Prayagraj; all font weights are capped at 600. */
.entartica-prayagraj-booking,
.entartica-prayagraj-screen{font-weight:400!important}
.entartica-prayagraj-booking *,
.entartica-prayagraj-screen *{font-weight:inherit}
.entartica-prayagraj-booking .entartica-booking-header h2,
.entartica-prayagraj-screen .entartica-booking-header h2{font-weight:600!important}
.entartica-prayagraj-booking .entartica-booking-header p,
.entartica-prayagraj-screen .entartica-booking-header p{font-weight:400!important}
.entartica-prayagraj-booking .entartica-context-back-button,
.entartica-prayagraj-screen .entartica-context-back-button,
.entartica-prayagraj-booking .entartica-context-info strong,
.entartica-prayagraj-screen .entartica-context-info strong,
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label,
.entartica-prayagraj-screen .entartica-prayagraj-filter label,
.entartica-prayagraj-booking .entartica-product-content h3,
.entartica-prayagraj-screen .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-booking .entartica-product-price,
.entartica-prayagraj-screen .entartica-prayagraj-boat-price,
.entartica-prayagraj-booking .entartica-product-bottom button,
.entartica-prayagraj-screen .entartica-prayagraj-card-actions button,
.entartica-prayagraj-booking #entartica-prayagraj-review,
.entartica-prayagraj-screen #entartica-review-button{font-weight:600!important}

/* Current live markup: .entartica-prayagraj-booking + .entartica-product-card */
.entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:22px 24px!important;margin:0 0 24px!important;border:1px solid #dce6f0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 8px 26px rgba(8,44,87,.045)!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label{display:block!important;margin:0 0 12px!important;color:#082c57!important;font-size:13px!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.entartica-prayagraj-booking #entartica-prayagraj-boarding-point{width:100%!important;min-height:52px!important;padding:12px 16px!important;border:1px solid #cbd8e7!important;border-radius:12px!important;background:#fff!important;color:#082c57!important;font-size:16px!important;font-weight:400!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel p{margin:12px 0 0!important;color:#64748b!important;font-size:14px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list{width:100%!important;min-width:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 30px!important;align-items:stretch!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:0!important;min-width:0!important;min-height:252px!important;padding:24px!important;overflow:hidden!important;border:1px solid #d9e5ef!important;border-radius:27px!important;background:#fff!important;box-shadow:0 10px 28px rgba(8,44,87,.06)!important;transition:box-shadow .18s ease,transform .18s ease!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 32px rgba(8,44,87,.1)!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 203px!important;width:203px!important;max-width:203px!important;height:203px!important;margin:0 22px 0 0!important;overflow:hidden!important;border-radius:18px!important;background:#edf3f8!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image .entartica-no-image{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;background:#edf3f8!important;color:#082c57!important;font-size:20px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{margin:0 0 16px!important;color:#082c57!important;font-size:24px!important;line-height:1.25!important;text-transform:uppercase!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-usp{margin:0 0 12px!important;color:#64748b!important;font-size:15px!important;line-height:1.5!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{margin:0 0 20px!important;color:#082c57!important;font-size:23px!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price small{display:block!important;margin-top:4px!important;color:#64748b!important;font-size:12px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-selected-label{margin:0 0 12px!important;color:#17633a!important;font-size:12px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%!important;margin-top:auto!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;padding:12px 24px!important;border-radius:14px!important;font-size:15px!important;line-height:1.2!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info{border:1px solid #082c57!important;background:#082c57!important;color:#fff!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info:hover{background:#10457e!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add{margin-left:auto!important;border:1px solid #ffc928!important;background:#ffc928!important;color:#082c57!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add:hover{background:#f4b900!important}
.entartica-prayagraj-booking .entartica-empty-state{font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-review{font-weight:600!important}

/* Enforce the requested maximum weight of 600 in the Prayagraj modal too. */
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{font-weight:400!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2,
.entartica-prayagraj-modal .entartica-v4-info-section h3,
.entartica-prayagraj-modal .entartica-v4-related-section h3,
.entartica-prayagraj-modal .entartica-v3-summary-heading h3,
.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong,
.entartica-prayagraj-modal .entartica-prayagraj-package-price,
.entartica-prayagraj-modal [data-boat-total],
.entartica-prayagraj-modal [data-save-boat],
.entartica-prayagraj-modal .entartica-related-card-body button{font-weight:600!important}

@media(max-width:1100px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{grid-template-columns:1fr!important;gap:18px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{min-height:230px!important;padding:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex-basis:180px!important;width:180px!important;max-width:180px!important;height:180px!important}
}
@media(max-width:600px){
 .entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{flex-direction:column!important;min-height:0!important;padding:16px!important;border-radius:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 auto!important;width:100%!important;max-width:none!important;height:220px!important;margin:0 0 17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{font-size:20px!important;margin-bottom:10px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{font-size:21px!important;margin-bottom:16px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{gap:8px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{min-height:46px!important;padding:10px 13px!important;font-size:13px!important}
}

/* FINAL MODAL DESIGN — based on the supplied premium rate-card reference.
   Scoped to Prayagraj only; no banner/header image is added. */
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{font-weight:400!important;box-sizing:border-box!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{font-weight:600!important;letter-spacing:.13em!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2,
.entartica-prayagraj-modal .entartica-v3-summary-heading h3,
.entartica-prayagraj-modal .entartica-v4-info-section h3,
.entartica-prayagraj-modal .entartica-v4-related-section h3,
.entartica-prayagraj-modal .entartica-prayagraj-gold-option strong,
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card h4,
.entartica-prayagraj-modal [data-boat-total],
.entartica-prayagraj-modal [data-save-boat]{font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.25fr) minmax(290px,.72fr) minmax(260px,.65fr)!important;min-height:680px!important}
.entartica-prayagraj-modal .entartica-v4-left{padding:30px 26px!important}
.entartica-prayagraj-modal .entartica-v4-middle{padding:30px 22px!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:clamp(24px,2.1vw,34px)!important;line-height:1.2!important}
.entartica-prayagraj-modal .entartica-v4-hero img{height:clamp(220px,28vh,320px)!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-fixed{display:block!important;margin:12px 0 20px!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option{display:flex!important;align-items:center!important;gap:12px!important;min-height:76px!important;padding:14px!important;border:1.5px solid #c99425!important;border-radius:13px!important;background:linear-gradient(110deg,#fff9e8,#fff)!important;color:#082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-badge{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border-radius:50%!important;background:#d9a62c!important;color:#fff!important;font-size:21px!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option strong{display:block!important;font-size:16px!important;color:#082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option small{display:block!important;margin-top:4px!important;color:#66758a!important;font-size:12px!important}
.entartica-prayagraj-modal .entartica-prayagraj-fixed-label{margin-left:auto!important;padding:6px 9px!important;border-radius:20px!important;background:#f8e9b9!important;color:#79540b!important;font-size:11px!important;white-space:nowrap!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card{margin-top:16px!important;padding:16px!important;border:1px solid #f1d58b!important;border-radius:13px!important;background:#fffaf0!important;color:#4f5d70!important;font-size:13px!important;line-height:1.6!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card h4{margin:0 0 9px!important;color:#805b0b!important;font-size:14px!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card p{margin:0!important;color:#66758a!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card ul{margin:0!important;padding-left:19px!important}
.entartica-prayagraj-modal .entartica-v3-summary-panel{padding:30px 20px 22px!important}
.entartica-prayagraj-modal [data-boat-total]{font-size:30px!important}
.entartica-prayagraj-modal [data-save-boat]{min-height:52px!important}
@media(max-width:1100px){
 .entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1!important;position:static!important;border-top:1px solid #e5ebf2!important}
}
@media(max-width:680px){
 .entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}
 .entartica-prayagraj-modal{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:14px!important}
 .entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important;min-height:0!important}
 .entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{width:100%!important;padding:20px 15px!important;border-right:0!important}
 .entartica-prayagraj-modal .entartica-v4-left{padding-top:30px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header{padding-right:28px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:23px!important}
 .entartica-prayagraj-modal .entartica-v4-hero img{height:220px!important}
 .entartica-prayagraj-modal .entartica-v4-info-section{padding:14px!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{border-top:1px solid #e5ebf2!important}
 .entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;top:6px!important;margin:6px 6px -44px 0!important}
 .entartica-prayagraj-modal .entartica-related-carousel{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Package rate-card layout: Silver and Gold are both visible, using live ACF prices. */
.entartica-prayagraj-modal .entartica-prayagraj-rate-column{min-width:0!important;background:#f8fafc!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-section{padding:20px 16px!important;background:transparent!important;border:0!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-section>h3{margin-bottom:16px!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card{margin:0 0 17px!important;padding:10px!important;border:1px solid #d7e2ef!important;border-radius:13px!important;background:#fff!important;overflow:hidden!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card h4{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 10px!important;padding:2px 5px!important;color:#082c57!important;font-size:15px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-icon{display:inline-grid!important;place-items:center!important;width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:50%!important;background:#536b87!important;color:#fff!important;font-size:19px!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-gold{border-color:#f0d38a!important;background:linear-gradient(145deg,#fffaf0,#fff)!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-gold .entartica-prayagraj-rate-icon{background:#dba92e!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table-wrap{width:100%!important;overflow-x:auto!important;border:1px solid #dce5ef!important;border-radius:10px!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table{width:100%!important;min-width:290px!important;border-collapse:separate!important;border-spacing:0!important;margin:0!important;background:#fff!important;font-size:12px!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table th{padding:10px 6px!important;background:#082c57!important;color:#fff!important;text-align:center!important;text-transform:uppercase!important;font-size:10px!important;font-weight:600!important;letter-spacing:.02em!important;border-right:1px solid rgba(255,255,255,.25)!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table th:last-child{border-right:0!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table td{padding:8px 6px!important;text-align:center!important;vertical-align:middle!important;border-right:1px solid #e1e8f0!important;border-bottom:1px solid #e1e8f0!important;color:#173456!important;font-size:12px!important;font-weight:400!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table tr:last-child td{border-bottom:0!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table td:last-child{border-right:0!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table td:nth-child(2){color:#f20e54!important;font-size:15px!important;font-weight:600!important;white-space:nowrap!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table button{min-height:34px!important;padding:7px 10px!important;border:0!important;border-radius:8px!important;background:#f20e54!important;color:#fff!important;font-size:11px!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table button.is-selected{background:#082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-table tr.is-selected td{background:#edf4ff!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-usp{margin:10px 2px 0!important;color:#53677f!important;font-size:13px!important;line-height:1.5!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card{margin-top:12px!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 14px!important}
.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.08fr) minmax(360px,1fr) minmax(250px,.7fr)!important}
@media(max-width:1180px){
 .entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1fr) minmax(340px,1fr)!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-column{grid-column:2!important;grid-row:1!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1!important}
}
@media(max-width:680px){
 .entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-column{order:2!important;border-right:0!important;border-top:1px solid #e5ebf2!important}
 .entartica-prayagraj-modal .entartica-v4-left{order:1!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{order:3!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-section{padding:12px 0!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-table{min-width:280px!important}
 .entartica-prayagraj-modal .entartica-prayagraj-inclusions-card ul{grid-template-columns:1fr!important}
}

/* FINAL OVERRIDES — Prayagraj only; typography capped at 600 */
.entartica-prayagraj-booking *,
.entartica-prayagraj-modal *{font-weight:400!important;box-sizing:border-box!important}
.entartica-prayagraj-booking h1,.entartica-prayagraj-booking h2,.entartica-prayagraj-booking h3,
.entartica-prayagraj-booking h4,.entartica-prayagraj-booking strong,
.entartica-prayagraj-modal h1,.entartica-prayagraj-modal h2,.entartica-prayagraj-modal h3,
.entartica-prayagraj-modal h4,.entartica-prayagraj-modal strong,
.entartica-prayagraj-booking button,.entartica-prayagraj-modal button,
.entartica-prayagraj-modal .entartica-prayagraj-rate-table th,
.entartica-prayagraj-modal .entartica-prayagraj-rate-table td:nth-child(2){font-weight:600!important}

/* Boat list: reference-style horizontal cards */
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 28px!important;align-items:stretch!important
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{
 display:flex!important;flex-direction:row!important;align-items:stretch!important;min-width:0!important;min-height:210px!important;padding:20px!important;overflow:hidden!important;border:1px solid #dce5ef!important;border-radius:24px!important;background:#fff!important;box-shadow:0 8px 24px rgba(8,44,87,.06)!important
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{
 flex:0 0 180px!important;width:180px!important;max-width:180px!important;height:180px!important;margin:0 20px 0 0!important;overflow:hidden!important;border-radius:18px!important
}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image img{width:100%!important;height:100%!important;object-fit:cover!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-card-content,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-details{display:flex!important;flex:1!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-title{margin:0 0 10px!important;color:#082c57!important;font-size:20px!important;line-height:1.35!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{margin:0 0 14px!important;color:#082c57!important;font-size:22px!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;margin-top:auto!important}

/* Popup: no oversized page-style header; retain three-column image/details/rate-summary layout */
.entartica-prayagraj-modal-overlay{padding:18px!important;overflow-y:auto!important}
.entartica-prayagraj-modal{width:min(1500px,96vw)!important;max-height:calc(100dvh - 36px)!important;border-radius:24px!important}
.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.15fr) minmax(330px,.9fr) minmax(250px,.65fr)!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:clamp(22px,2vw,30px)!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{font-weight:600!important}
/* Silver is intentionally unavailable; show Gold package as the fixed selectable package. */
.entartica-prayagraj-modal [data-package-tier="silver"],
.entartica-prayagraj-modal [data-tier="silver"],
.entartica-prayagraj-modal .entartica-silver-package,
.entartica-prayagraj-modal .entartica-prayagraj-silver{display:none!important}
.entartica-prayagraj-modal .entartica-gold-package,
.entartica-prayagraj-modal .entartica-prayagraj-gold{display:block!important}

@media(max-width:1100px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{grid-template-columns:1fr!important}
 .entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr)!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1!important}
}
@media(max-width:700px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{padding:14px!important;min-height:0!important;border-radius:18px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 112px!important;width:112px!important;max-width:112px!important;height:112px!important;margin-right:14px!important;border-radius:13px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-title{font-size:15px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{font-size:18px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{flex-wrap:wrap!important;gap:8px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{min-height:40px!important;padding:9px 12px!important;font-size:13px!important}
 .entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}
 .entartica-prayagraj-modal{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:16px!important}
 .entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important}
 .entartica-prayagraj-modal .entartica-v4-left{order:1!important;padding:20px 16px!important;border-right:0!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-column{order:2!important;border-right:0!important;border-top:1px solid #e5ebf2!important;padding:16px!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{order:3!important;padding:16px!important}
 .entartica-prayagraj-modal .entartica-v4-hero img{height:220px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header{padding-right:38px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:22px!important}
 .entartica-prayagraj-modal .entartica-prayagraj-rate-table{min-width:280px!important}
 .entartica-prayagraj-modal .entartica-prayagraj-inclusions-card ul{grid-template-columns:1fr!important}
}
@media(max-width:380px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex-basis:88px!important;width:88px!important;max-width:88px!important;height:100px!important;margin-right:10px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-title{font-size:14px!important}
}
/* Entartica Prayagraj boat booking — scoped styling only; other parks unchanged */
.entartica-prayagraj-screen{max-width:1440px;margin:0 auto;padding:24px 0 48px;color:#102746}
.entartica-prayagraj-screen .entartica-booking-header{margin:0 0 22px}
.entartica-prayagraj-screen .entartica-booking-header h2{margin:8px 0;color:#082c57;font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.15}
.entartica-prayagraj-screen .entartica-booking-header p{margin:8px 0 0;color:#64748b;font-size:15px}
.entartica-prayagraj-screen .entartica-booking-context-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 26px;margin-bottom:26px;background:rgba(255,255,255,.92);border:1px solid #dce6f0;border-radius:22px;box-shadow:0 12px 32px rgba(8,44,87,.06)}
.entartica-prayagraj-screen .entartica-context-back-button{border:0;border-radius:14px;padding:16px 24px;background:#082c57;color:#fff;font-size:15px;font-weight:600;box-shadow:0 8px 20px rgba(8,44,87,.16);cursor:pointer}
.entartica-prayagraj-screen .entartica-context-info{display:flex;gap:12px;flex-wrap:wrap}
.entartica-prayagraj-screen .entartica-context-info>div{display:flex;align-items:center;gap:12px;min-width:210px;padding:13px 18px;border:1px solid #e0e7ef;border-radius:14px;background:#fff}
.entartica-prayagraj-screen .entartica-context-info span{color:#718096;font-size:13px}.entartica-prayagraj-screen .entartica-context-info strong{color:#082c57;font-size:16px}
.entartica-prayagraj-filter{padding:24px 26px;margin:0 0 24px;border:1px solid #dce6f0;border-radius:20px;background:#fff;box-shadow:0 8px 26px rgba(8,44,87,.045)}
.entartica-prayagraj-filter label{display:block;margin:0 0 12px;color:#082c57;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.entartica-prayagraj-filter select{display:block;width:100%;min-height:56px;padding:13px 17px;border:1px solid #cbd8e7;border-radius:13px;background:#fff;color:#082c57;font-size:17px;outline:none;box-shadow:none}
.entartica-prayagraj-filter select:focus{border-color:#1d5b9e;box-shadow:0 0 0 3px rgba(29,91,158,.12)}
.entartica-prayagraj-boat-grid{width:100%;min-width:0}
.entartica-prayagraj-boat-grid-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.entartica-prayagraj-boat-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dce5ef;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(8,44,87,.075);transition:transform .2s ease,box-shadow .2s ease}
.entartica-prayagraj-boat-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(8,44,87,.13)}
.entartica-prayagraj-boat-card>img{display:block;width:100%;height:245px;object-fit:cover;background:#eaf2f8}
.entartica-prayagraj-boat-card .entartica-no-image{display:grid;place-items:center;height:245px;background:linear-gradient(135deg,#eaf5fa,#d5e7f3);color:#082c57;font-weight:600;font-size:24px}
.entartica-prayagraj-boat-card-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px}
.entartica-prayagraj-boat-card-content h3{margin:0 0 10px;color:#082c57;font-size:21px;line-height:1.35;font-weight:600}
.entartica-prayagraj-boat-card-content>p{margin:0 0 16px;color:#64748b;font-size:14px;line-height:1.65}
.entartica-prayagraj-boat-price{margin: auto 0 18px;color:#082c57;font-size:23px;font-weight:600}
.entartica-prayagraj-boat-price small{display:block;margin-top:4px;color:#718096;font-size:12px;font-weight:500}
.entartica-prayagraj-selected-package{margin:0 0 14px;padding:8px 11px;border-radius:9px;background:#eaf5ee;color:#17633a;font-size:12px;font-weight:600}
.entartica-prayagraj-card-actions{display:flex;width:100%;gap:10px;margin-top:4px}
.entartica-prayagraj-card-actions button{flex:1;min-height:46px;padding:11px 13px;border-radius:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}
.entartica-prayagraj-more-info{border:1px solid #c8d7e7;background:#fff;color:#082c57}
.entartica-prayagraj-more-info:hover{border-color:#082c57;background:#f3f8fc}
.entartica-prayagraj-choose{border:1px solid #082c57;background:#082c57;color:#fff}
.entartica-prayagraj-choose:hover{background:#10457e}
.entartica-prayagraj-screen .entartica-empty-state{padding:44px 24px;border:1px solid #e0e7ef;border-radius:18px;background:#fff;color:#64748b;text-align:center;font-size:16px}
.entartica-prayagraj-screen .entartica-products-actions{display:flex;justify-content:flex-end;margin-top:28px;padding-top:24px;border-top:1px solid #e0e7ef}
.entartica-prayagraj-screen #entartica-review-button{min-width:230px;min-height:56px;padding:14px 24px;border:0;border-radius:14px;background:#082c57;color:#fff;font-size:16px;font-weight:600;cursor:pointer}
.entartica-prayagraj-screen #entartica-review-button:disabled{background:#98a4b4;cursor:not-allowed}

/* More Info / package-selection modal */
.entartica-prayagraj-modal-overlay{position:fixed!important;inset:0!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:22px!important;background:rgba(5,18,36,.72)!important;backdrop-filter:blur(5px);overflow-y:auto!important}
.entartica-prayagraj-modal{position:relative!important;width:min(1440px,96vw)!important;max-width:1440px!important;max-height:calc(100vh - 44px)!important;margin:auto!important;overflow:auto!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 30px 90px rgba(0,0,0,.35)!important;color:#142b46!important}
.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;top:12px!important;float:right!important;z-index:20!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:12px 12px -54px 0!important;border:1px solid #dbe4ee!important;border-radius:50%!important;background:#fff!important;color:#082c57!important;font-size:29px!important;line-height:1!important;box-shadow:0 4px 14px rgba(8,44,87,.12)!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-layout{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr) minmax(250px,.7fr)!important;gap:0!important;align-items:stretch!important}
.entartica-prayagraj-modal .entartica-v4-left{min-width:0!important;padding:34px 28px!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-v4-product-header{padding:0 42px 20px 0!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{display:block!important;margin-bottom:9px!important;color:#c43a3a!important;font-size:11px!important;font-weight:600!important;letter-spacing:.15em!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{margin:0 0 12px!important;color:#082c57!important;font-size:clamp(24px,2.4vw,34px)!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-meta{display:flex!important;flex-wrap:wrap!important;gap:10px!important;color:#64748b!important;font-size:13px!important}
.entartica-prayagraj-modal .entartica-v4-gallery-block{margin-bottom:24px!important}
.entartica-prayagraj-modal .entartica-v4-hero{position:relative!important;overflow:hidden!important;border-radius:16px!important;background:#eaf2f8!important}
.entartica-prayagraj-modal .entartica-v4-hero img{display:block!important;width:100%!important;height:clamp(240px,32vh,390px)!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev],.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;background:rgba(8,44,87,.88)!important;color:#fff!important;font-size:27px!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v4-hero [data-boat-prev]{left:12px!important}.entartica-prayagraj-modal .entartica-v4-hero [data-boat-next]{right:12px!important}
.entartica-prayagraj-modal .entartica-v3-thumbnails{display:flex!important;gap:10px!important;overflow-x:auto!important;margin-top:11px!important;padding-bottom:4px!important}
.entartica-prayagraj-modal .entartica-v3-thumb{flex:0 0 76px!important;width:76px!important;height:60px!important;padding:0!important;overflow:hidden!important;border:2px solid transparent!important;border-radius:9px!important;background:#edf2f7!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-v3-thumb.is-active{border-color:#082c57!important}.entartica-prayagraj-modal .entartica-v3-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-v4-info-section{margin:0 0 22px!important;padding:20px!important;border:1px solid #e3eaf2!important;border-radius:15px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v4-info-section h3,.entartica-prayagraj-modal .entartica-v4-related-section h3{margin:0 0 15px!important;color:#082c57!important;font-size:18px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-info-section video{display:block!important;max-height:320px!important;border-radius:10px!important;background:#071b31!important}
.entartica-prayagraj-modal .entartica-pass-info-step{display:flex!important;gap:14px!important;align-items:flex-start!important;margin:12px 0!important;padding:13px!important;border-radius:12px!important;background:#f5f8fb!important}
.entartica-prayagraj-modal .entartica-pass-info-step img{width:90px!important;height:76px!important;flex:0 0 90px!important;object-fit:cover!important;border-radius:9px!important}
.entartica-prayagraj-modal .entartica-pass-info-step h4{margin:0 0 5px!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-pass-info-step p{margin:0!important;color:#64748b!important;font-size:13px!important;line-height:1.55!important}
.entartica-prayagraj-modal .entartica-v4-middle{min-width:0!important;padding:34px 22px!important;background:#f8fafc!important;border-right:1px solid #e5ebf2!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:12px 0 20px!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{display:flex!important;gap:9px!important;align-items:center!important;min-width:0!important;padding:14px 12px!important;border:1px solid #d6e0eb!important;border-radius:12px!important;background:#fff!important;cursor:pointer!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options label:has(input:checked){border-color:#082c57!important;background:#edf4fb!important;box-shadow:0 0 0 1px #082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-tier-options input{accent-color:#082c57!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong{display:block!important;color:#082c57!important;font-size:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options small{display:block!important;margin-top:3px!important;color:#718096!important;font-size:11px!important}
.entartica-prayagraj-modal .entartica-prayagraj-capacity-label{display:block!important;margin:0 0 8px!important;color:#344b64!important;font-size:13px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-capacity]{width:100%!important;min-height:48px!important;padding:11px 13px!important;border:1px solid #cbd8e7!important;border-radius:10px!important;background:#fff!important;color:#082c57!important;font-size:15px!important}
.entartica-prayagraj-modal .entartica-prayagraj-package-price{display:block!important;margin-top:16px!important;padding:17px!important;border-radius:13px!important;background:#eaf2fa!important;color:#082c57!important;font-size:24px!important;font-weight:600!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions{margin-top:14px!important;color:#475569!important;font-size:13px!important;line-height:1.7!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions h4{margin:0 0 8px!important;color:#082c57!important;font-size:14px!important}.entartica-prayagraj-modal .entartica-prayagraj-inclusions ul{padding-left:20px!important;margin:0!important}
.entartica-prayagraj-modal .entartica-v3-summary-panel{position:sticky!important;top:0!important;display:flex!important;flex-direction:column!important;min-width:0!important;min-height:100%!important;padding:34px 22px 24px!important;background:#fff!important}
.entartica-prayagraj-modal .entartica-v3-summary-heading h3{margin:8px 0 20px!important;color:#082c57!important;font-size:23px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-boat-summary]{padding:17px!important;border:1px solid #e1e8f0!important;border-radius:13px!important;background:#f8fafc!important;color:#475569!important;font-size:14px!important;line-height:1.6!important;overflow-wrap:anywhere!important}
.entartica-prayagraj-modal [data-boat-summary] p{margin:0 0 8px!important}.entartica-prayagraj-modal [data-boat-summary] p:last-child{margin-bottom:0!important}.entartica-prayagraj-modal [data-boat-summary] strong{color:#082c57!important}
.entartica-prayagraj-modal .entartica-v3-summary-bottom{margin-top:auto!important;padding-top:24px!important}.entartica-prayagraj-modal .entartica-v3-total-label{margin-bottom:5px!important;color:#c8cfd9 !important;font-size:13px!important}.entartica-prayagraj-modal [data-boat-total]{display:block!important;margin-bottom:18px!important;color:#082c57!important;font-size:32px!important;font-weight:600!important}
.entartica-prayagraj-modal [data-save-boat]{width:100%!important;min-height:52px!important;padding:13px 16px!important;border:0!important;border-radius:12px!important;background:#082c57!important;color:#fff!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important}.entartica-prayagraj-modal [data-save-boat]:disabled{background:#a5afbd!important;cursor:not-allowed!important}
.entartica-prayagraj-modal .entartica-v4-related-section{margin-top:24px!important}.entartica-prayagraj-modal .entartica-related-carousel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.entartica-prayagraj-modal .entartica-related-card{overflow:hidden!important;border:1px solid #e1e8f0!important;border-radius:12px!important;background:#fff!important}.entartica-prayagraj-modal .entartica-related-card>img{display:block!important;width:100%!important;height:100px!important;object-fit:cover!important}.entartica-prayagraj-modal .entartica-related-card-body{display:flex!important;flex-direction:column!important;gap:7px!important;padding:12px!important}.entartica-prayagraj-modal .entartica-related-card-body strong{color:#082c57!important;font-size:13px!important}.entartica-prayagraj-modal .entartica-related-card-body span{color:#64748b!important;font-size:12px!important}.entartica-prayagraj-modal .entartica-related-card-body button{padding:9px 10px!important;border:0!important;border-radius:8px!important;background:#082c57!important;color:#fff!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important}
@media(max-width:1100px){.entartica-prayagraj-boat-grid-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1;position:static!important;border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-v4-middle{border-right:0!important}}
@media(max-width:680px){.entartica-prayagraj-screen{padding:14px 0 28px}.entartica-prayagraj-screen .entartica-booking-context-row{padding:16px;border-radius:16px}.entartica-prayagraj-screen .entartica-context-info{width:100%}.entartica-prayagraj-screen .entartica-context-info>div{flex:1;min-width:0;padding:11px}.entartica-prayagraj-filter{padding:18px;border-radius:16px}.entartica-prayagraj-filter select{font-size:15px}.entartica-prayagraj-boat-grid-inner{grid-template-columns:1fr;gap:17px}.entartica-prayagraj-boat-card>img,.entartica-prayagraj-boat-card .entartica-no-image{height:220px}.entartica-prayagraj-boat-card-content{padding:18px}.entartica-prayagraj-screen .entartica-products-actions{justify-content:stretch}.entartica-prayagraj-screen #entartica-review-button{width:100%;min-width:0}
.entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}.entartica-prayagraj-modal{width:100%!important;max-height:calc(100vh - 16px)!important;border-radius:15px!important}.entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important}.entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{width:100%!important;padding:22px 16px!important;border-right:0!important}.entartica-prayagraj-modal .entartica-v4-left{padding-top:30px!important}.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:24px!important}.entartica-prayagraj-modal .entartica-v4-hero img{height:230px!important}.entartica-prayagraj-modal .entartica-v4-info-section{padding:15px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options{gap:8px!important}.entartica-prayagraj-modal .entartica-prayagraj-tier-options label{padding:11px 8px!important}.entartica-prayagraj-modal .entartica-related-carousel{grid-template-columns:repeat(2,minmax(0,1fr))!important}.entartica-prayagraj-modal .entartica-v3-summary-panel{border-top:1px solid #e5ebf2!important}.entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;margin-right:8px!important}}

/* CHANGE 1: Match the existing Entartica horizontal ride-card design.
   Applies only to Prayagraj; all font weights are capped at 600. */
.entartica-prayagraj-booking,
.entartica-prayagraj-screen{font-weight:400!important}
.entartica-prayagraj-booking *,
.entartica-prayagraj-screen *{font-weight:inherit}
.entartica-prayagraj-booking .entartica-booking-header h2,
.entartica-prayagraj-screen .entartica-booking-header h2{font-weight:600!important}
.entartica-prayagraj-booking .entartica-booking-header p,
.entartica-prayagraj-screen .entartica-booking-header p{font-weight:400!important}
.entartica-prayagraj-booking .entartica-context-back-button,
.entartica-prayagraj-screen .entartica-context-back-button,
.entartica-prayagraj-booking .entartica-context-info strong,
.entartica-prayagraj-screen .entartica-context-info strong,
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label,
.entartica-prayagraj-screen .entartica-prayagraj-filter label,
.entartica-prayagraj-booking .entartica-product-content h3,
.entartica-prayagraj-screen .entartica-prayagraj-boat-card-content h3,
.entartica-prayagraj-booking .entartica-product-price,
.entartica-prayagraj-screen .entartica-prayagraj-boat-price,
.entartica-prayagraj-booking .entartica-product-bottom button,
.entartica-prayagraj-screen .entartica-prayagraj-card-actions button,
.entartica-prayagraj-booking #entartica-prayagraj-review,
.entartica-prayagraj-screen #entartica-review-button{font-weight:600!important;    display: flex;gap: 10px;align-items: center;}

/* Current live markup: .entartica-prayagraj-booking + .entartica-product-card */
.entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:22px 24px!important;margin:0 0 24px!important;border:1px solid #dce6f0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 8px 26px rgba(8,44,87,.045)!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel label{display:block!important;margin:0 0 12px!important;color:#082c57!important;font-size:13px!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.entartica-prayagraj-booking #entartica-prayagraj-boarding-point{width:100%!important;min-height:52px!important;padding:12px 16px!important;border:1px solid #cbd8e7!important;border-radius:12px!important;background:#fff!important;color:#082c57!important;font-size:16px!important;font-weight:400!important}
.entartica-prayagraj-booking .entartica-prayagraj-point-panel p{margin:12px 0 0!important;color:#64748b!important;font-size:14px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list{width:100%!important;min-width:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 30px!important;align-items:stretch!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:0!important;min-width:0!important;min-height:252px!important;padding:24px!important;overflow:hidden!important;border:1px solid #d9e5ef!important;border-radius:27px!important;background:#fff!important;box-shadow:0 10px 28px rgba(8,44,87,.06)!important;transition:box-shadow .18s ease,transform .18s ease!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 32px rgba(8,44,87,.1)!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 203px!important;width:203px!important;max-width:203px!important;height:203px!important;margin:0 22px 0 0!important;overflow:hidden!important;border-radius:18px!important;background:#edf3f8!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image .entartica-no-image{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;background:#edf3f8!important;color:#082c57!important;font-size:20px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{margin:0 0 16px!important;color:#082c57!important;font-size:24px!important;line-height:1.25!important;text-transform:uppercase!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-usp{margin:0 0 12px!important;color:#64748b!important;font-size:15px!important;line-height:1.5!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{margin:0 0 20px!important;color:#082c57!important;font-size:23px!important;line-height:1.2!important;font-weight:600!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price small{display:block!important;margin-top:4px!important;color:#64748b!important;font-size:12px!important;font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-selected-label{margin:0 0 12px!important;color:#17633a!important;font-size:12px!important;font-weight:500!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%!important;margin-top:auto!important;padding:0!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;padding:12px 24px!important;border-radius:14px!important;font-size:15px!important;line-height:1.2!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info{border:1px solid #082c57!important;background:#082c57!important;color:#fff!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-pass-more-info:hover{background:#10457e!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add{margin-left:auto!important;border:1px solid #ffc928!important;background:#ffc928!important;color:#082c57!important}
.entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-qty-add:hover{background:#f4b900!important}
.entartica-prayagraj-booking .entartica-empty-state{font-weight:400!important}
.entartica-prayagraj-booking #entartica-prayagraj-review{font-weight:600!important}

/* Enforce the requested maximum weight of 600 in the Prayagraj modal too. */
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{font-weight:400!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2,
.entartica-prayagraj-modal .entartica-v4-info-section h3,
.entartica-prayagraj-modal .entartica-v4-related-section h3,
.entartica-prayagraj-modal .entartica-v3-summary-heading h3,
.entartica-prayagraj-modal .entartica-prayagraj-tier-options strong,
.entartica-prayagraj-modal .entartica-prayagraj-package-price,
.entartica-prayagraj-modal [data-boat-total],
.entartica-prayagraj-modal [data-save-boat],
.entartica-prayagraj-modal .entartica-related-card-body button{font-weight:600!important}

@media(max-width:1100px){
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-grid,
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-grid{grid-template-columns:1fr!important;gap:18px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{min-height:230px!important;padding:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex-basis:180px!important;width:180px!important;max-width:180px!important;height:180px!important}
}
@media(max-width:600px){
 .entartica-prayagraj-booking .entartica-prayagraj-point-panel{padding:17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-prayagraj-boat-card{flex-direction:column!important;min-height:0!important;padding:16px!important;border-radius:20px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-image{flex:0 0 auto!important;width:100%!important;max-width:none!important;height:220px!important;margin:0 0 17px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-content h3{font-size:20px!important;margin-bottom:10px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-price{font-size:21px!important;margin-bottom:16px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom{gap:8px!important}
 .entartica-prayagraj-booking #entartica-prayagraj-boat-list .entartica-product-bottom button{min-height:46px!important;padding:10px 13px!important;font-size:13px!important}
}

/* FINAL MODAL DESIGN — based on the supplied premium rate-card reference.
   Scoped to Prayagraj only; no banner/header image is added. */
.entartica-prayagraj-modal,
.entartica-prayagraj-modal *{font-weight:400!important;box-sizing:border-box!important}
.entartica-prayagraj-modal .entartica-v3-eyebrow{font-weight:600!important;letter-spacing:.13em!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2,
.entartica-prayagraj-modal .entartica-v3-summary-heading h3,
.entartica-prayagraj-modal .entartica-v4-info-section h3,
.entartica-prayagraj-modal .entartica-v4-related-section h3,
.entartica-prayagraj-modal .entartica-prayagraj-gold-option strong,
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card h4,
.entartica-prayagraj-modal [data-boat-total],
.entartica-prayagraj-modal [data-save-boat]{font-weight:600!important}
.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.25fr) minmax(290px,.72fr) minmax(260px,.65fr)!important;min-height:680px!important}
.entartica-prayagraj-modal .entartica-v4-left{padding:30px 26px!important}
.entartica-prayagraj-modal .entartica-v4-middle{padding:30px 22px!important}
.entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:clamp(24px,2.1vw,34px)!important;line-height:1.2!important}
.entartica-prayagraj-modal .entartica-v4-hero img{height:clamp(220px,28vh,320px)!important;object-fit:cover!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-fixed{display:block!important;margin:12px 0 20px!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option{display:flex!important;align-items:center!important;gap:12px!important;min-height:76px!important;padding:14px!important;border:1.5px solid #c99425!important;border-radius:13px!important;background:linear-gradient(110deg,#fff9e8,#fff)!important;color:#082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-badge{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border-radius:50%!important;background:#d9a62c!important;color:#fff!important;font-size:21px!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option strong{display:block!important;font-size:16px!important;color:#082c57!important}
.entartica-prayagraj-modal .entartica-prayagraj-gold-option small{display:block!important;margin-top:4px!important;color:#66758a!important;font-size:12px!important}
.entartica-prayagraj-modal .entartica-prayagraj-fixed-label{margin-left:auto!important;padding:6px 9px!important;border-radius:20px!important;background:#f8e9b9!important;color:#79540b!important;font-size:11px!important;white-space:nowrap!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card{margin-top:16px!important;padding:16px!important;border:1px solid #f1d58b!important;border-radius:13px!important;background:#fffaf0!important;color:#4f5d70!important;font-size:13px!important;line-height:1.6!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card h4{margin:0 0 9px!important;color:#805b0b!important;font-size:14px!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card p{margin:0!important;color:#66758a!important}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions-card ul{margin:0!important;padding-left:19px!important}
.entartica-prayagraj-modal .entartica-v3-summary-panel{padding:30px 20px 22px!important}
.entartica-prayagraj-modal [data-boat-total]{font-size:30px!important; color:#fff !important;}
.entartica-prayagraj-modal [data-save-boat]{min-height:52px!important}
@media(max-width:1100px){
 .entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1!important;position:static!important;border-top:1px solid #e5ebf2!important}
}
@media(max-width:680px){
 .entartica-prayagraj-modal-overlay{align-items:flex-start!important;padding:8px!important}
 .entartica-prayagraj-modal{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:14px!important}
 .entartica-prayagraj-modal .entartica-v4-layout{display:flex!important;flex-direction:column!important;min-height:0!important}
 .entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{width:100%!important;padding:20px 15px!important;border-right:0!important}
 .entartica-prayagraj-modal .entartica-v4-left{padding-top:30px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header{padding-right:28px!important}
 .entartica-prayagraj-modal .entartica-v4-product-header h2{font-size:23px!important}
 .entartica-prayagraj-modal .entartica-v4-hero img{height:220px!important}
 .entartica-prayagraj-modal .entartica-v4-info-section{padding:14px!important}
 .entartica-prayagraj-modal .entartica-v3-summary-panel{border-top:1px solid #e5ebf2!important}
 .entartica-prayagraj-modal .entartica-pass-info-close{position:sticky!important;top:6px!important;margin:6px 6px -44px 0!important}
 .entartica-prayagraj-modal .entartica-related-carousel{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Prayagraj popup: reference-matched 3-column package rate-card layout (park 35 only) */
.entartica-prayagraj-modal .entartica-prayagraj-packages{padding:20px!important;background:transparent!important;border:0!important}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card{margin:14px 0 18px;padding:10px 10px 12px;border:1px solid #d9e3ef;border-radius:14px;background:linear-gradient(145deg,#f5f8fc,#fff);overflow:hidden}
.entartica-prayagraj-modal .entartica-prayagraj-rate-gold{border-color:#f4d17a;background:linear-gradient(145deg,#fff8e7,#fff)}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card h4{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0 4px;color:#082c57;font-size:18px;font-weight:600}
.entartica-prayagraj-modal .entartica-prayagraj-rate-gold h4{color:#6e4a00}
.entartica-prayagraj-modal .entartica-prayagraj-tier-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#536b86;color:#fff;font-size:22px;flex:0 0 38px}
.entartica-prayagraj-modal .entartica-prayagraj-rate-gold .entartica-prayagraj-tier-icon{background:#e4ac26}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;overflow:hidden;border:1px solid #dce5ef;border-radius:10px;background:#fff}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card th{padding:11px 5px;background:#082c57;color:#fff;font-size:11px;font-weight:600;text-align:center}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card td{padding:9px 5px;border-top:1px solid #e1e8f0;border-right:1px solid #e1e8f0;color:#29435f;font-size:13px;text-align:center;overflow-wrap:anywhere}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card td:nth-child(2){color:#f5225d;font-size:16px;font-weight:600;white-space:nowrap}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card td:last-child,.entartica-prayagraj-modal .entartica-prayagraj-rate-card th:last-child{border-right:0}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card [data-select-tier]{min-width:68px;padding:9px 11px;border:0;border-radius:9px;background:#f5225d;color:#fff;font-size:12px;font-weight:600;cursor:pointer}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card [data-select-tier].is-selected{background:#082c57;box-shadow:0 0 0 2px #d3e2f2}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions{padding:14px 15px;border:1px solid #f0cf7c;border-radius:12px;background:#fffaf0}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions h4{margin:0 0 8px;color:#172b45;font-size:15px;font-weight:600}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0px 0px;margin:0;padding-left:18px}
.entartica-prayagraj-modal .entartica-prayagraj-usp{margin:16px 0 0;color:#475569;font-size:14px;line-height:1.6}
@media(max-width:1100px){.entartica-prayagraj-modal .entartica-v4-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.entartica-prayagraj-modal .entartica-v4-left{border-bottom:1px solid #e5ebf2}.entartica-prayagraj-modal .entartica-v4-middle{border-bottom:1px solid #e5ebf2}.entartica-prayagraj-modal .entartica-v3-summary-panel{grid-column:1/-1}}
@media(max-width:680px){.entartica-prayagraj-modal .entartica-prayagraj-rate-card{padding:8px 6px}.entartica-prayagraj-modal .entartica-prayagraj-rate-card h4{font-size:15px}.entartica-prayagraj-modal .entartica-prayagraj-rate-card th{font-size:9px;padding:9px 3px}.entartica-prayagraj-modal .entartica-prayagraj-rate-card td{font-size:11px;padding:8px 3px}.entartica-prayagraj-modal .entartica-prayagraj-rate-card td:nth-child(2){font-size:13px}.entartica-prayagraj-modal .entartica-prayagraj-rate-card [data-select-tier]{min-width:52px;padding:8px 6px;font-size:11px}.entartica-prayagraj-modal .entartica-prayagraj-inclusions ul{grid-template-columns:1fr}.entartica-prayagraj-modal .entartica-v4-left,.entartica-prayagraj-modal .entartica-v4-middle,.entartica-prayagraj-modal .entartica-v3-summary-panel{padding:18px 13px!important}}

/* ==========================================================
   PRAYAGRAJ MODAL FINAL OVERRIDES — PARK 35 ONLY
   Keep legacy styles for every other park untouched.
   ========================================================== */
.entartica-prayagraj-modal .entartica-v4-layout,
.entartica-prayagraj-modal .entartica-prayagraj-modal-layout {
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 1.08fr) minmax(250px, .72fr) !important;
  align-items: stretch !important;
}
.entartica-prayagraj-modal .entartica-v4-left,
.entartica-prayagraj-modal .entartica-v4-middle,
.entartica-prayagraj-modal .entartica-v3-summary-panel { min-width: 0 !important; }
.entartica-prayagraj-modal .entartica-v4-middle {
  max-height: calc(100vh - 46px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card {
  border: 1px solid #dce5ef !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card.is-active-tier.entartica-prayagraj-rate-silver {
  border-color: #9eb2c8 !important;
  background: linear-gradient(145deg, #eef4fa 0%, #fff 70%) !important;
  box-shadow: 0 0 0 1px rgba(82, 108, 139, .14) !important;
}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card.is-active-tier.entartica-prayagraj-rate-gold {
  border-color: #e7ad24 !important;
  background: linear-gradient(145deg, #fff0c8 0%, #fffaf0 72%) !important;
  box-shadow: 0 0 0 1px rgba(231, 173, 36, .22) !important;
}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card button[data-select-tier] {
  min-width: 70px !important;
  min-height: 38px !important;
  border: 1px solid #f5225d !important;
  border-radius: 10px !important;
  background: #f5225d !important;
  color: #fff !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}
.entartica-prayagraj-modal .entartica-prayagraj-rate-card button[data-select-tier].is-selected {
  border-color: #082c57 !important;
  background: #082c57 !important;
  box-shadow: 0 0 0 3px rgba(8, 44, 87, .13) !important;
}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions:empty { display: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.entartica-prayagraj-modal .entartica-prayagraj-inclusions {
  padding: 14px 16px !important;
  border: 1px solid #efc96b !important;
  border-radius: 13px !important;
  background: #fffaf0 !important;
}
.entartica-prayagraj-modal .entartica-prayagraj-inclusions h4 { margin: 0 0 8px !important; color: #6e4b00 !important; }
.entartica-prayagraj-modal .entartica-prayagraj-summary-price { padding-top: 8px !important; border-top: 1px solid #e1e8f0 !important; color: #f5225d !important; }
.entartica-prayagraj-modal [data-save-boat] {
  min-height: 54px !important;
  padding: 13px 18px !important;
  border: 1px solid #fff !important;
  border-radius: 12px !important;
  background: #082c57 !important;
  color: #fff !important;
  box-shadow: 0 5px 14px rgba(8, 44, 87, .16) !important;
  font-weight: 600 !important;
}
.entartica-prayagraj-modal [data-save-boat]:hover:not(:disabled) { background: #103d70 !important; }
.entartica-prayagraj-modal [data-save-boat]:disabled { opacity: .48 !important; cursor: not-allowed !important; }
.entartica-prayagraj-modal .entartica-v4-gallery-block { margin-bottom: 20px !important; }
.entartica-prayagraj-modal .entartica-v4-info-section video { width: 100% !important; max-width: 100% !important; }
.entartica-prayagraj-modal .entartica-v4-related-section { margin-top: 22px !important; }

@media (max-width: 1100px) {
  .entartica-prayagraj-modal { width: min(980px, 96vw) !important; max-height: calc(100dvh - 24px) !important; }
  .entartica-prayagraj-modal .entartica-v4-layout,
  .entartica-prayagraj-modal .entartica-prayagraj-modal-layout {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }
  .entartica-prayagraj-modal .entartica-v3-summary-panel {
    grid-column: 1 / -1 !important;
    position: relative !important;
    min-height: 0 !important;
    border-top: 1px solid #e5ebf2 !important;
  }
  .entartica-prayagraj-modal .entartica-v4-middle { max-height: none !important; overflow: visible !important; }
}
@media (max-width: 700px) {
  .entartica-prayagraj-modal-overlay { align-items: flex-start !important; padding: 8px !important; overflow-y: auto !important; }
  .entartica-prayagraj-modal { width: 100% !important; max-width: 100% !important; max-height: none !important; margin: 0 !important; border-radius: 15px !important; overflow: visible !important; }
  .entartica-prayagraj-modal .entartica-v4-layout,
  .entartica-prayagraj-modal .entartica-prayagraj-modal-layout { display: flex !important; flex-direction: column !important; }
  .entartica-prayagraj-modal .entartica-v4-left,
  .entartica-prayagraj-modal .entartica-v4-middle,
  .entartica-prayagraj-modal .entartica-v3-summary-panel { width: 100% !important; padding: 22px 16px !important; border-right: 0 !important; }
  .entartica-prayagraj-modal .entartica-v4-middle { border-top: 1px solid #e5ebf2 !important; border-bottom: 1px solid #e5ebf2 !important; }
  .entartica-prayagraj-modal .entartica-v4-product-header { padding-right: 34px !important; }
  .entartica-prayagraj-modal .entartica-v4-product-header h2 { font-size: clamp(22px, 6vw, 30px) !important; }
  .entartica-prayagraj-modal .entartica-v4-hero img { height: clamp(190px, 55vw, 300px) !important; }
  .entartica-prayagraj-modal .entartica-prayagraj-rate-card { padding: 10px !important; }
  .entartica-prayagraj-modal .entartica-prayagraj-rate-card table { width: 100% !important; table-layout: fixed !important; }
  .entartica-prayagraj-modal .entartica-prayagraj-rate-card th,
  .entartica-prayagraj-modal .entartica-prayagraj-rate-card td { padding: 9px 5px !important; font-size: 12px !important; overflow-wrap: anywhere !important; }
  .entartica-prayagraj-modal .entartica-prayagraj-rate-card button[data-select-tier] { min-width: 58px !important; padding: 8px 7px !important; }
  .entartica-prayagraj-modal .entartica-prayagraj-tier-options { grid-template-columns: 1fr !important; }
  .entartica-prayagraj-modal .entartica-related-carousel { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .entartica-prayagraj-modal .entartica-v3-summary-bottom { margin-top: 16px !important; padding: 18px !important; border: 1px solid #dbe5f0 !important; border-radius: 14px !important; }
  .entartica-prayagraj-modal .entartica-pass-info-close { position: sticky !important; top: 8px !important; margin: 8px 8px -48px auto !important; }
}


/* =========================================================
   STEP 1 — CATEGORY THUMBNAILS + STICKY LEFT NAV
   Scoped to the regular category/pass booking interface.
   ========================================================= */
#entartica-booking-app:has(.entartica-products-container) .entartica-booking-wrapper {
    display: grid !important;
    grid-template-columns: 250px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 24px !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-booking-context-row,
#entartica-booking-app:has(.entartica-products-container) .entartica-selected-info,
#entartica-booking-app:has(.entartica-products-container) .entartica-booking-header {
    grid-column: 1 / -1 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-category-tabs {
    grid-column: 1 !important;
    grid-row: 3 !important;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    justify-content: stretch !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 14px !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border: 1px solid #dce8ee !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(8,44,87,.06) !important;
    z-index: 5 !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-products-container {
    grid-column: 2 !important;
    grid-row: 3 !important;
    min-width: 0 !important;
    max-height: calc(100vh - 232px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: 2px 8px 18px 2px !important;
    scrollbar-gutter: stable;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-category-tab {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 12px 8px !important;
    border: 1px solid #e1e8ef !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: #082c57 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    white-space: normal !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

#entartica-booking-app:has(.entartica-products-container) .entartica-category-tab.active {
    border: 2px solid #082c57 !important;
    background: #f0f6fb !important;
    color: #082c57 !important;
    padding: 11px 7px !important;
    box-shadow: 0 3px 10px rgba(8,44,87,.08) !important;
}

#entartica-booking-app .entartica-category-tab-image {
    width: 64px !important;
    height: 64px !important;
    flex: 0 0 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #f2f6f9 !important;
}

#entartica-booking-app .entartica-category-tab-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

#entartica-booking-app .entartica-category-tab-placeholder {
    color: #8091a5 !important;
    font-size: 24px !important;
}

#entartica-booking-app .entartica-category-tab-name {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    font-weight: 500 !important;
}

@media (max-width: 900px) {
    #entartica-booking-app:has(.entartica-products-container) .entartica-booking-wrapper {
        grid-template-columns: 190px minmax(0, 1fr) !important;
        column-gap: 16px !important;
    }
    #entartica-booking-app .entartica-category-tab-image {
        width: 54px !important; height: 54px !important; flex-basis: 54px !important;
    }
}

@media (max-width: 700px) {
    #entartica-booking-app:has(.entartica-products-container) .entartica-booking-wrapper {
        display: flex !important; flex-direction: column !important; gap: 16px !important;
    }
    #entartica-booking-app:has(.entartica-products-container) .entartica-category-tabs {
        position: sticky !important; top: 0 !important; z-index: 10 !important;
        width: 100% !important; max-height: none !important;
        display: flex !important; flex-direction: row !important;
        gap: 10px !important; padding: 10px !important;
        overflow-x: auto !important; overflow-y: hidden !important;
        background: rgba(255,255,255,.97) !important;
    }
    #entartica-booking-app:has(.entartica-products-container) .entartica-category-tab {
        flex: 0 0 108px !important; width: 108px !important;
        min-height: 100px !important; padding: 8px !important;
    }
    #entartica-booking-app .entartica-category-tab-image {
        width: 52px !important; height: 52px !important; flex-basis: 52px !important;
    }
    #entartica-booking-app:has(.entartica-products-container) .entartica-products-container {
        width: 100% !important; max-height: none !important; overflow: visible !important;
        padding: 0 !important;
    }
}

/* =========================================================
   FIXED BOOKING BAR + CLICKABLE LIVE CART — regular pass flow
   Scoped to the standard category/pass interface only.
   ========================================================= */
#entartica-booking-app:has(#entartica-products-container) {
  padding-bottom: 112px !important;
}
#entartica-booking-app:has(#entartica-products-container) .entartica-products-actions {
  display: none !important;
}
#entartica-fixed-booking-dock {
  position: fixed !important;
  z-index: 99990 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100% !important;
  padding: 10px max(15px, calc((100vw - 1480px) / 2)) !important;
  box-sizing: border-box !important;
  border-top: 1px solid #dce7ef !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 -10px 32px rgba(8,44,87,.12) !important;
  backdrop-filter: blur(12px) !important;
}
#entartica-fixed-booking-dock button,
#entartica-cart-drawer button { font: inherit; }
#entartica-fixed-booking-dock .entartica-cart-summary-button {
  display: flex !important; align-items: center !important; gap: 14px !important;
  min-width: 0 !important; flex: 1 1 auto !important; padding: 4px 8px !important;
  border: 0 !important; background: transparent !important; color: #082c57 !important;
  text-align: left !important; cursor: pointer !important; border-radius: 12px !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-button:hover { background: #f4f8fc !important; }
#entartica-fixed-booking-dock .entartica-cart-icon {
  position: relative !important; display: grid !important; place-items: center !important;
  width: 52px !important; height: 52px !important; flex: 0 0 52px !important;
  border-radius: 50% !important; background: #edf5fc !important; font-size: 24px !important;
}
#entartica-fixed-booking-dock .entartica-cart-count {
  position: absolute !important; top: -3px !important; right: -3px !important;
  display: grid !important; place-items: center !important; min-width: 23px !important; height: 23px !important;
  padding: 0 5px !important; border-radius: 99px !important; background: #ffc928 !important;
  color: #082c57 !important; font-size: 12px !important; font-weight: 600 !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-text { display: flex !important; flex-direction: column !important; gap: 3px !important; min-width: 0 !important; }
#entartica-fixed-booking-dock .entartica-cart-summary-title { font-size: 16px !important; font-weight: 600 !important; color: #082c57 !important; }
#entartica-fixed-booking-dock .entartica-cart-summary-count { font-size: 13px !important; color: #667991 !important; }
#entartica-fixed-booking-dock .entartica-cart-summary-total { margin-left: 18px !important; padding-left: 22px !important; border-left: 1px solid #e1e8ef !important; font-size: 22px !important; font-weight: 600 !important; white-space: nowrap !important; color: #082c57 !important; }
#entartica-fixed-booking-dock .entartica-cart-review-cta,
#entartica-cart-drawer .entartica-cart-drawer-review {
  display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 14px !important;
  min-height: 56px !important; min-width: 260px !important; padding: 14px 28px !important;
  border: 2px solid #ffc928 !important; border-radius: 14px !important; background: #082c57 !important;
  color: #fff !important; font-size: 16px !important; font-weight: 600 !important; cursor: pointer !important;
  box-shadow: 0 5px 16px rgba(8,44,87,.14) !important; transition: transform .18s ease, background .18s ease !important;
}
#entartica-fixed-booking-dock .entartica-cart-review-cta:not(:disabled):hover,
#entartica-cart-drawer .entartica-cart-drawer-review:hover { transform: translateY(-1px) !important; background: #0b3b72 !important; }
#entartica-fixed-booking-dock .entartica-cart-review-cta:disabled { opacity: .48 !important; cursor: not-allowed !important; box-shadow: none !important; }
#entartica-cart-drawer {
  position: fixed !important; z-index: 99991 !important; right: max(24px, calc((100vw - 1480px) / 2)) !important;
  bottom: 94px !important; width: min(520px, calc(100vw - 32px)) !important; max-height: min(65vh, 620px) !important;
  display: flex !important; flex-direction: column !important; overflow: hidden !important;
  border: 1px solid #dce7ef !important; border-radius: 20px !important; background: #fff !important;
  box-shadow: 0 18px 60px rgba(8,44,87,.22) !important; opacity: 0 !important; visibility: hidden !important;
  transform: translateY(10px) !important; transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}
#entartica-cart-drawer.is-open { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; }
#entartica-cart-drawer .entartica-cart-drawer-head { display: flex !important; align-items: flex-start !important; justify-content: space-between !important; gap: 14px !important; padding: 20px 22px !important; border-bottom: 1px solid #e7edf3 !important; }
#entartica-cart-drawer .entartica-cart-drawer-head strong { display: block !important; color: #082c57 !important; font-size: 18px !important; }
#entartica-cart-drawer .entartica-cart-drawer-subtitle { display: block !important; margin-top: 4px !important; color: #718096 !important; font-size: 12px !important; }
#entartica-cart-drawer .entartica-cart-close { border: 0 !important; background: #f2f6fa !important; color: #082c57 !important; width: 34px !important; height: 34px !important; border-radius: 50% !important; font-size: 23px !important; cursor: pointer !important; }
#entartica-cart-drawer .entartica-cart-drawer-items { overflow-y: auto !important; padding: 6px 20px !important; }
#entartica-cart-drawer .entartica-cart-line { display: grid !important; grid-template-columns: 58px minmax(0,1fr) auto 28px !important; align-items: center !important; gap: 12px !important; padding: 14px 0 !important; border-bottom: 1px solid #edf1f5 !important; }
#entartica-cart-drawer .entartica-cart-line img,
#entartica-cart-drawer .entartica-cart-line-placeholder { display: grid !important; place-items: center !important; width: 58px !important; height: 58px !important; object-fit: cover !important; border-radius: 11px !important; background: #edf4fa !important; color: #082c57 !important; font-weight: 600 !important; }
#entartica-cart-drawer .entartica-cart-line-info { min-width: 0 !important; display: flex !important; flex-direction: column !important; gap: 4px !important; }
#entartica-cart-drawer .entartica-cart-line-info strong { color: #17365e !important; font-size: 13px !important; line-height: 1.35 !important; }
#entartica-cart-drawer .entartica-cart-line-info small { color: #728197 !important; font-size: 11px !important; }
#entartica-cart-drawer .entartica-cart-line-price { color: #082c57 !important; font-size: 13px !important; font-weight: 600 !important; }
#entartica-cart-drawer .entartica-cart-line-controls { display: flex !important; align-items: center !important; gap: 8px !important; border: 1px solid #dce6f0 !important; border-radius: 10px !important; padding: 4px !important; }
#entartica-cart-drawer .entartica-cart-line-controls button { display: grid !important; place-items: center !important; width: 25px !important; height: 25px !important; border: 0 !important; border-radius: 7px !important; background: #edf5fc !important; color: #082c57 !important; font-size: 18px !important; cursor: pointer !important; }
#entartica-cart-drawer .entartica-cart-line-controls span { min-width: 12px !important; text-align: center !important; color: #082c57 !important; font-size: 12px !important; font-weight: 600 !important; }
#entartica-cart-drawer .entartica-cart-remove { border: 0 !important; background: transparent !important; color: #8a97a8 !important; font-size: 21px !important; cursor: pointer !important; }
#entartica-cart-drawer .entartica-cart-remove:hover { color: #d12c35 !important; }
#entartica-cart-drawer .entartica-cart-empty { padding: 34px 12px !important; text-align: center !important; color: #082c57 !important; line-height: 1.7 !important; }
#entartica-cart-drawer .entartica-cart-empty small { color: #718096 !important; }
#entartica-cart-drawer .entartica-cart-drawer-footer { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 16px 22px !important; border-top: 1px solid #e7edf3 !important; color: #082c57 !important; font-size: 15px !important; }
#entartica-cart-drawer .entartica-cart-drawer-footer strong { font-size: 20px !important; }
#entartica-cart-drawer .entartica-cart-drawer-review { width: calc(100% - 40px) !important; min-width: 0 !important; margin: 0 20px 20px !important; }
@media (max-width: 700px) {
  #entartica-booking-app:has(#entartica-products-container) { padding-bottom: 100px !important; }
  #entartica-fixed-booking-dock { gap: 10px !important; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important; }
  #entartica-fixed-booking-dock .entartica-cart-icon { width: 42px !important; height: 42px !important; flex-basis: 42px !important; font-size: 20px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-button { gap: 8px !important; padding: 2px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-title { font-size: 12px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-count { font-size: 10px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-total { display: none !important; }
  #entartica-fixed-booking-dock .entartica-cart-review-cta { min-width: 0 !important; min-height: 48px !important; padding: 11px 14px !important; border-radius: 12px !important; gap: 7px !important; font-size: 12px !important; white-space: nowrap !important; }
  #entartica-cart-drawer { left: 10px !important; right: 10px !important; bottom: calc(76px + env(safe-area-inset-bottom)) !important; width: auto !important; max-height: 68vh !important; }
  #entartica-cart-drawer .entartica-cart-line { grid-template-columns: 46px minmax(0,1fr) auto 22px !important; gap: 8px !important; }
  #entartica-cart-drawer .entartica-cart-line img,
  #entartica-cart-drawer .entartica-cart-line-placeholder { width: 46px !important; height: 46px !important; }
  #entartica-cart-drawer .entartica-cart-line-controls { gap: 4px !important; }
}


/* =========================================================
   COMPACT SHARED STEP HEADER — STEPS 1 TO 4
   Scoped to the Entartica booking app.
   ========================================================= */
#entartica-booking-app .entartica-compact-step-header {
    width: 100%; display: flex; align-items: center; justify-content: space-between;
    gap: 24px; margin: 0 0 22px; padding: 16px 20px; box-sizing: border-box;
    background: rgba(255,255,255,.96); border: 1px solid #dceaf2; border-radius: 18px;
    box-shadow: 0 8px 24px rgba(8,44,87,.07);
}
#entartica-booking-app .entartica-compact-context {
    display: flex; align-items: center; gap: 18px; min-width: 0; flex: 1 1 auto;
}
#entartica-booking-app .entartica-compact-back {
    display: inline-flex; align-items: center; justify-content: center; gap: 0px; flex: 0 0 auto;
    min-height: 50px; padding: 0 20px; border: 0; border-radius: 12px;
    background: #082c57; color: #fff; font-size: 15px; font-weight: 600; cursor: pointer;
    box-shadow: 0 5px 14px rgba(8,44,87,.15);
}
#entartica-booking-app .entartica-compact-back:hover { background: #061f40; color: #fff; }
#entartica-booking-app .entartica-compact-meta {
    display: flex; align-items: center; gap: 10px; padding-left: 18px;
    border-left: 1px solid #d6e3ef; min-width: 0;
}
#entartica-booking-app .entartica-compact-meta-icon {
    color: #082c57; font-size: 50px; font-weight: 600; line-height: 1;
}
#entartica-booking-app .entartica-compact-meta small {
    display: block; margin-bottom: 3px; color: #7890ad; font-size: 11px; font-weight: 600;
    letter-spacing: .06em; text-transform: uppercase;
}
#entartica-booking-app .entartica-compact-meta strong {
    display: block; color: #082c57; font-size: 16px; font-weight: 600; line-height: 1.2;
    overflow-wrap: anywhere;
}
#entartica-booking-app .entartica-step-progress {
    display: flex; align-items: center; justify-content: flex-end; gap: 8px;
    flex: 0 1 650px; min-width: 0;
}
#entartica-booking-app .entartica-progress-step {
    display: flex;  align-items: center; justify-content: center;
    gap: 5px; min-width: 76px; color: #7d91ad; text-align: center;
}
#entartica-booking-app .entartica-progress-marker {
    display: flex; align-items: center; justify-content: center; width: 34px; height: 34px;
    border-radius: 50%; background: #eaf0f6; color: #536b89; border: 1px solid #d8e3ee;
    font-size: 14px; font-weight: 600; box-sizing: border-box;
}
#entartica-booking-app .entartica-progress-label {
    font-size: 11px; line-height: 1.2; white-space: nowrap; font-weight: 600;
}
#entartica-booking-app .entartica-progress-step.is-complete .entartica-progress-marker {
    color: #fff; background: #082c57; border-color: #082c57;
}
#entartica-booking-app .entartica-progress-step.is-active { color: #082c57; }
#entartica-booking-app .entartica-progress-step.is-active .entartica-progress-marker {
    background: #ffc928; color: #082c57; border-color: #ffc928; box-shadow: 0 0 0 4px rgba(255,201,40,.18);
}
#entartica-booking-app .entartica-progress-step.is-active .entartica-progress-label { font-weight: 600; }
#entartica-booking-app .entartica-progress-connector {
    height: 2px; width: clamp(10px, 2vw, 32px); flex: 0 1 32px; margin-top: -18px;
    background: #d6e2ee;
}
#entartica-booking-app .entartica-progress-step.is-complete + .entartica-progress-connector { background: #082c57; }
#entartica-booking-app .entartica-location-screen .entartica-location-heading { margin-top: 0; }
#entartica-booking-app .entartica-date-screen .entartica-calendar-card { margin-top: 0; }
@media (max-width: 1100px) {
    #entartica-booking-app .entartica-compact-step-header { align-items: stretch; flex-direction: column; gap: 14px; }
    #entartica-booking-app .entartica-step-progress { flex: 1 1 auto; width: 100%; justify-content: space-between; }
    /*#entartica-booking-app .entartica-progress-step { flex: 1 1 0; min-width: 0; }*/
    #entartica-booking-app .entartica-progress-connector { flex: 0 1 24px; width: 24px; }
}
@media (max-width: 640px) {
    #entartica-booking-app .entartica-compact-step-header { padding: 12px; margin-bottom: 14px; border-radius: 14px; gap: 12px; }
    #entartica-booking-app .entartica-compact-context { flex-wrap: wrap; gap: 10px; }
    #entartica-booking-app .entartica-compact-back { min-height: 42px; padding: 0 12px; font-size: 23px; }
    #entartica-booking-app .entartica-compact-meta { padding-left: 10px; gap: 6px; }
    #entartica-booking-app .entartica-compact-meta-icon { font-size: 50px; }
    #entartica-booking-app .entartica-compact-meta strong { font-size: 13px; }
    #entartica-booking-app .entartica-compact-meta small { font-size: 9px; }
    #entartica-booking-app .entartica-step-progress { gap: 3px; }
    #entartica-booking-app .entartica-progress-step { gap: 4px; }
    #entartica-booking-app .entartica-progress-marker { width: 28px; height: 28px; font-size: 12px; }
    #entartica-booking-app .entartica-progress-label { white-space: normal; font-size: 9px; max-width: 72px; }
    #entartica-booking-app .entartica-progress-connector { width: 8px; flex-basis: 8px; margin-top: -15px; }
    .entartica-booking-wrapper.entartica-review-screen{padding: 10px !important;
        
    }
}


/* =========================================================
   HEADER LAYOUT HOTFIX — full-width grid item + no squeezed metadata
   Append after existing rules so it overrides previous responsive styles.
   ========================================================= */
#entartica-booking-app .entartica-compact-step-header {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  grid-column: 1 / -1 !important;
  align-self: stretch !important;
  position: relative !important;
  z-index: 2 !important;
}
#entartica-booking-app .entartica-compact-context {
  display: flex !important;
  flex: 0 1 auto !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  gap: 16px !important;
  min-width: 0 !important;
  width: auto !important;
}
#entartica-booking-app .entartica-compact-back {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  max-width: none !important;
}
#entartica-booking-app .entartica-compact-meta {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  min-width: max-content !important;
  width: auto !important;
  white-space: nowrap !important;
}
#entartica-booking-app .entartica-compact-meta > span:last-child {
  min-width: max-content !important;
  width: auto !important;
}
#entartica-booking-app .entartica-compact-meta strong {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
#entartica-booking-app .entartica-step-progress {
  display: flex !important;
  flex: 1 1 620px !important;
  width: auto !important;
  min-width: 0 !important;
  justify-content: flex-end !important;
  gap: 6px !important;
}
#entartica-booking-app .entartica-progress-step {
  /*flex: 1 1 0 !important;*/
  min-width: 78px !important;
}
#entartica-booking-app .entartica-progress-connector {
  flex: 0 1 30px !important;
  width: 30px !important;
}
/* Step 2: let the outer shell span the content width; keep the calendar card compact. */
#entartica-booking-app .entartica-date-screen {
  width: 100% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#entartica-booking-app .entartica-date-screen .entartica-calendar-card {
  width: 100% !important;
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Step 3 wrappers are grids: the header must occupy every grid column. */
#entartica-booking-app .entartica-booking-wrapper:has(#entartica-category-tabs) > .entartica-compact-step-header,
#entartica-booking-app .entartica-booking-wrapper:has(#entartica-products-container) > .entartica-compact-step-header {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}
@media (max-width: 1100px) {
  #entartica-booking-app .entartica-compact-step-header {
    flex-flow: column nowrap !important;
    align-items: stretch !important;
    gap: 14px !important;
  }
  #entartica-booking-app .entartica-compact-context {
    flex-flow: row wrap !important;
    flex: 0 0 auto !important;
    width: 100% !important;
  }
  #entartica-booking-app .entartica-step-progress {
    flex: 0 0 auto !important;
    width: 100% !important;
    justify-content: space-between !important;
  }
  #entartica-booking-app .entartica-progress-step { min-width: 0 !important; }
}
@media (max-width: 640px) {
  #entartica-booking-app .entartica-compact-context {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
  }
  #entartica-booking-app .entartica-compact-back {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
    min-height: 42px !important;
  }
  #entartica-booking-app .entartica-compact-meta {
    min-width: 0 !important;
    width: auto !important;
    padding-left: 10px !important;
    white-space: normal !important;
  }
  #entartica-booking-app .entartica-compact-meta > span:last-child,
  #entartica-booking-app .entartica-compact-meta strong {
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  #entartica-booking-app .entartica-step-progress { gap: 3px !important; }
  #entartica-booking-app .entartica-progress-step { min-width: 0 !important; }
  #entartica-booking-app .entartica-progress-label { white-space: normal !important; font-size: 9px !important; max-width: 74px !important; }
  #entartica-booking-app .entartica-progress-connector { flex: 0 1 10px !important; width: 10px !important; }
  #entartica-booking-app .entartica-date-screen { padding: 12px !important; }
}


/* =========================================================
   FINAL UI POLISH — COMPACT 4-STEP BOOKING HEADER
   Scoped to booking app; does not change booking logic.
   Font weights intentionally capped at 600.
   ========================================================= */
#entartica-booking-app .entartica-step-progress {
  gap: clamp(6px, 1.5vw, 20px) !important;
  align-items: center !important;
}
#entartica-booking-app .entartica-progress-step {
  /*min-width: 0 !important;*/
  /*flex: 1 1 0 !important;*/
  gap: 7px !important;
}
#entartica-booking-app .entartica-progress-number {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-width: 1px !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
#entartica-booking-app .entartica-progress-label {
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
}
#entartica-booking-app .entartica-progress-step.is-active .entartica-progress-label {
  font-weight: 600 !important;
  text-transform: uppercase;
}
#entartica-booking-app .entartica-progress-connector {
  height: 2px !important;
  flex: 0 1 clamp(12px, 2vw, 30px) !important;
  width: auto !important;
  background: #d7e3ef !important;
  margin: 0 !important;
}
#entartica-booking-app .entartica-compact-header,
#entartica-booking-app .entartica-step-header {
  border-radius: 18px !important;
  padding: 14px 18px !important;
  box-shadow: 0 8px 24px rgba(8,44,87,.055) !important;
}
#entartica-booking-app .entartica-compact-meta strong,
#entartica-booking-app .entartica-compact-meta > span:last-child {
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
#entartica-booking-app .entartica-date-screen {
  padding-bottom: 100px !important;
}
#entartica-booking-app .entartica-date-action {
  position: sticky !important;
  bottom: 12px !important;
  z-index: 30 !important;
  display: flex !important;
  justify-content: center !important;
  padding: 12px 0 max(12px, env(safe-area-inset-bottom)) !important;
  margin-top: 18px !important;
  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.96) 28%) !important;
}
#entartica-booking-app .entartica-date-next-button {
  min-height: 48px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 16px rgba(8,44,87,.12) !important;
}
#entartica-booking-app .entartica-date-back-button,
#entartica-booking-app .entartica-compact-back {
  font-size:24px;
  border-radius: 12px !important;
  font-weight: 600 !important;
  width: 50px;
    height: 50px;
    border-radius: 100px !important;
}
@media (max-width: 767px) {
  #entartica-booking-app { padding: 12px 0px 100px !important; }
  #entartica-booking-app .entartica-compact-header,
  #entartica-booking-app .entartica-step-header {
    padding: 10px !important;
    border-radius: 14px !important;
    gap: 10px !important;
  }
  #entartica-booking-app .entartica-step-progress { gap: 3px !important; }
  #entartica-booking-app .entartica-progress-step { gap: 5px !important; }
  #entartica-booking-app .entartica-progress-number {
    width: 30px !important; height: 30px !important; min-width: 30px !important;
    font-size: 12px !important;
  }
  #entartica-booking-app .entartica-progress-label {
    font-size: 10px !important; line-height: 1.2 !important; max-width: 76px !important; 
  }
  #entartica-booking-app .entartica-progress-connector {
    flex-basis: 8px !important; width: 8px !important;
  }
  #entartica-booking-app .entartica-compact-meta strong,
  #entartica-booking-app .entartica-compact-meta > span:last-child {
    font-size: 13px !important;
  }
  #entartica-booking-app .entartica-date-screen { padding-bottom: 90px !important; }
  #entartica-booking-app .entartica-date-action {
    bottom: 6px !important;
    padding: 10px 0 max(10px, env(safe-area-inset-bottom)) !important;
  }
  #entartica-booking-app .entartica-date-next-button { width: 100% !important; }
}

/* =========================================================
   APPROVED HEADER LAYOUT — steps 1–4
   Header-only overrides; booking and product styles unchanged.
   ========================================================= */
#entartica-booking-app .entartica-compact-step-header {
    display: grid !important;
    grid-template-columns: minmax(70px, 0.2fr) minmax(440px, 3fr) minmax(180px, 1fr) !important;
    align-items: center !important;
    column-gap: 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
}
#entartica-booking-app .entartica-header-left,
#entartica-booking-app .entartica-header-right {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    gap: 12px !important;
}
#entartica-booking-app .entartica-header-left { justify-content: flex-start !important; }
#entartica-booking-app .entartica-header-right { justify-content: flex-end !important; }
#entartica-booking-app .entartica-header-right .entartica-compact-meta {
    padding-left: 14px !important;
    margin-left: 0 !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
}
#entartica-booking-app .entartica-step-progress {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: clamp(4px, .8vw, 14px) !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
}
#entartica-booking-app .entartica-progress-step {
    /*flex: 1 1 0 !important;*/
    min-width: 0 !important;
    gap: 15px !important;
}
#entartica-booking-app .entartica-progress-label {
    white-space: normal !important;
    text-align: center !important;
    /*max-width: 110px !important;*/
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}
#entartica-booking-app .entartica-progress-connector {
    display: block !important;
    flex: 0 1 clamp(14px, 2.5vw, 38px) !important;
    width: auto !important;
    min-width: 14px !important;
    height: 2px !important;
    margin: 0px 0 0 !important;
    background: #d7e3ef !important;
}
#entartica-booking-app .entartica-header-step-1 {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 22px 24px !important;
}
#entartica-booking-app .entartica-header-step-1 .entartica-step-progress {
    width: min(100%, 920px) !important;
    margin: 0 auto !important;
}
#entartica-booking-app .entartica-compact-meta strong,
#entartica-booking-app .entartica-compact-meta small { font-weight: 600 !important; }

@media (max-width: 1100px) {
    #entartica-booking-app .entartica-compact-step-header {
        grid-template-columns: minmax(140px, .8fr) minmax(360px, 1.7fr) minmax(145px, .8fr) !important;
        column-gap: 12px !important;
        padding: 14px !important;
    }
    #entartica-booking-app .entartica-compact-back {
        min-height: 44px !important;
        padding: 0 24px !important;
        font-size: 23px !important;
    }
    #entartica-booking-app .entartica-compact-meta { gap: 7px !important; padding-left: 10px !important; }
    #entartica-booking-app .entartica-compact-meta-icon { font-size: 50px !important; }
    #entartica-booking-app .entartica-compact-meta strong { font-size: 13px !important; }
    #entartica-booking-app .entartica-compact-meta small { font-size: 10px !important; }
    #entartica-booking-app .entartica-progress-label { font-size: 11px !important; }
}
@media (max-width: 767px) {
    #entartica-booking-app .entartica-compact-step-header {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 28px !important;
        padding: 14px 12px !important;
    }
    #entartica-booking-app .entartica-header-step-1 { padding: 18px 10px !important; }
    #entartica-booking-app .entartica-header-left,
    #entartica-booking-app .entartica-header-right {
        width: 100% !important;
        justify-content: space-between !important;
    }
    #entartica-booking-app .entartica-header-step-2 .entartica-header-left,
    #entartica-booking-app .entartica-header-step-3 .entartica-header-left,
    #entartica-booking-app .entartica-header-step-4 .entartica-header-left {
        display: grid !important;
        grid-template-columns: minmax(0, auto) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 10px !important;
        z-index: 99999 !important;
    }
    #entartica-booking-app .entartica-header-left .entartica-compact-back { justify-self: start !important; }
    #entartica-booking-app .entartica-header-right {
        border-top: 1px solid #d6e3ef !important;
        padding-top: 10px !important;
        justify-content: flex-end !important;
        flex-wrap: wrap !important;
        position: absolute;
        right: 15px;
        top: 0;
    }
    #entartica-booking-app .entartica-header-right .entartica-compact-meta:first-child { padding-left: 0 !important; border-left: 0 !important; }
    #entartica-booking-app .entartica-step-progress {
        display: flex !important;
        width: 100% !important;
        gap: 3px !important;
        align-items: flex-start !important;
    }
    #entartica-booking-app .entartica-progress-step { flex: 1 1 0 !important; min-width: 0 !important; }
    #entartica-booking-app .entartica-progress-marker { width: 30px !important; height: 30px !important; font-size: 12px !important; }
    #entartica-booking-app .entartica-progress-label { font-size: 10px !important; line-height: 1.2 !important; max-width: 76px !important; }
    #entartica-booking-app .entartica-progress-connector { flex: 1 1 1px !important; min-width: 8px !important; margin-top: 14px !important; }
}


/* =========================================================
   FINAL HEADER ALIGNMENT + TEXT BACK BUTTON
   Applies to Steps 2, 3 and 4. Booking logic is unchanged.
   ========================================================= */

#entartica-booking-app .entartica-compact-step-header:not(.entartica-header-step-1) {
    display: grid !important;
    grid-template-columns: minmax(64px, auto) minmax(0, 1fr) max-content !important;
    grid-template-areas: "back progress meta" !important;
    align-items: center !important;
    column-gap: clamp(12px, 1.6vw, 24px) !important;
    row-gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
}

#entartica-booking-app .entartica-header-left {
    grid-area: back !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
}

#entartica-booking-app .entartica-step-progress {
    grid-area: progress !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    gap: clamp(5px, .8vw, 14px) !important;
}

#entartica-booking-app .entartica-header-right {
    grid-area: meta !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    gap: 10px !important;
    position: static !important;
    border-top: 0 !important;
    padding-top: 0 !important;
}

#entartica-booking-app .entartica-compact-back {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 64px !important;
    min-height: 34px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #082c57 !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-shadow: 0 5px 14px rgba(8,44,87,.15) !important;
    cursor: pointer !important;
}

#entartica-booking-app .entartica-compact-back:hover {
    background: #061f40 !important;
    color: #ffffff !important;
}

#entartica-booking-app .entartica-compact-back:focus-visible {
    outline: 2px solid #ffc928 !important;
    outline-offset: 3px !important;
}

#entartica-booking-app .entartica-header-right .entartica-compact-meta {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

#entartica-booking-app .entartica-progress-label {
    white-space: nowrap !important;
}

/* Laptop / compact desktop: preserve the same left-centre-right alignment. */
@media (min-width: 768px) and (max-width: 1100px) {
    #entartica-booking-app .entartica-compact-step-header:not(.entartica-header-step-1) {
        grid-template-columns: minmax(58px, auto) minmax(0, 1fr) max-content !important;
        column-gap: 10px !important;
        padding: 14px 12px !important;
    }

    #entartica-booking-app .entartica-compact-back {
        min-width: 58px !important;
        min-height: 38px !important;
        padding: 0 20px !important;
        font-size: 16px !important;
    }

    #entartica-booking-app .entartica-step-progress {
        gap: 5px !important;
    }

    #entartica-booking-app .entartica-progress-step {
        gap: 5px !important;
    }

    #entartica-booking-app .entartica-progress-label {
        font-size: 10px !important;
    }

    #entartica-booking-app .entartica-progress-connector {
        min-width: 9px !important;
        flex-basis: 12px !important;
    }

    #entartica-booking-app .entartica-compact-meta {
        gap: 6px !important;
        padding-left: 9px !important;
    }

    #entartica-booking-app .entartica-compact-meta-icon {
        font-size: 30px !important;
    }

    #entartica-booking-app .entartica-compact-meta strong {
        font-size: 12px !important;
    }

    #entartica-booking-app .entartica-compact-meta small {
        font-size: 9px !important;
    }
}

/* Mobile: BACK at left, park/date at right, progress centred below. */
@media (max-width: 767px) {
    #entartica-booking-app .entartica-compact-step-header:not(.entartica-header-step-1) {
        display: grid !important;
        grid-template-columns: minmax(0, auto) minmax(0, 1fr) !important;
        grid-template-areas:
            "back meta"
            "progress progress" !important;
        align-items: center !important;
        column-gap: 8px !important;
        row-gap: 16px !important;
        padding: 12px !important;
    }

    #entartica-booking-app .entartica-header-left {
        width: auto !important;
        justify-content: flex-start !important;
    }

    #entartica-booking-app .entartica-header-right {
        width: 100% !important;
        justify-content: flex-end !important;
        flex-wrap: nowrap !important;
        gap: 7px !important;
        position: static !important;
        border-top: 0 !important;
        padding: 0 !important;
    }

    #entartica-booking-app .entartica-compact-back {
        min-width: 54px !important;
        min-height: 34px !important;
        padding: 0 24px !important;
        border-radius: 8px !important;
        font-size: clamp(12px, 3.2vw, 14px) !important;
        font-weight: 500 !important;
    }

    #entartica-booking-app .entartica-header-right .entartica-compact-meta {
        min-width: 0 !important;
        padding-left: 7px !important;
        gap: 4px !important;
        border-left: 1px solid #d6e3ef !important;
    }

    #entartica-booking-app .entartica-compact-meta-icon {
        font-size: 23px !important;
    }

    #entartica-booking-app .entartica-compact-meta small {
        margin-bottom: 2px !important;
        font-size: 8px !important;
    }

    #entartica-booking-app .entartica-compact-meta strong {
        font-size: clamp(10px, 2.8vw, 12px) !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    #entartica-booking-app .entartica-step-progress {
        width: 100% !important;
        justify-content: center !important;
        align-items: flex-start !important;
        gap: 3px !important;
    }

    #entartica-booking-app .entartica-progress-step {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        gap: 4px !important;
    }

    #entartica-booking-app .entartica-progress-marker {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        font-size: 12px !important;
    }

    #entartica-booking-app .entartica-progress-label {
        max-width: 78px !important;
        font-size: 9px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        text-align: center !important;
    }

    #entartica-booking-app .entartica-progress-connector {
        flex: 0 1 10px !important;
        width: 10px !important;
        min-width: 6px !important;
        margin: 13px 0 0 !important;
    }
}

@media (max-width: 380px) {
    #entartica-booking-app .entartica-compact-step-header:not(.entartica-header-step-1) {
        column-gap: 5px !important;
        padding: 10px 8px !important;
    }

    #entartica-booking-app .entartica-compact-back {
        min-width: 48px !important;
        min-height: 30px !important;
        padding: 0 20px !important;
        font-size: 12px !important;
    }

    #entartica-booking-app .entartica-header-right {
        gap: 4px !important;
    }

    #entartica-booking-app .entartica-compact-meta-icon {
        display: none !important;
    }

    #entartica-booking-app .entartica-progress-label {
        font-size: 8px !important;
    }
}

/* =========================================================
   STEP 2 — CALENDAR + PARK INFORMATION LAYOUT
   Scoped only to Step 2. Existing steps and global styles
   remain unchanged.
   ========================================================= */

#entartica-booking-app .entartica-date-screen .entartica-date-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 24px;
    width: 100%;
    margin: 24px auto 0;
}

#entartica-booking-app .entartica-date-screen .entartica-date-panel {
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0;
    padding: 26px 28px 28px;
    background: #ffffff;
    border: 1px solid #e1e6ee;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(16, 24, 40, 0.07);
}

#entartica-booking-app .entartica-date-screen .entartica-date-panel-heading {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    width: 100%;
    align-items: center;
}

#entartica-booking-app .entartica-date-screen .entartica-date-heading-icon {
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #eef3f8;
    color: #172b4d;
    font-size: 21px;
    line-height: 1;
}

#entartica-booking-app .entartica-date-screen .entartica-date-panel-heading h2 {
    margin: 0 0 5px;
    color: #172b4d;
    font-size: 14px;
    line-height: 1.25;
    font-weight: 600;
    text-transform: uppercase;
}

#entartica-booking-app .entartica-date-screen .entartica-date-panel-heading p {
    margin: 0;
    color: #667085;
    font-size: 12px;
    line-height: 1;
}

#entartica-booking-app .entartica-date-screen .entartica-date-divider {
    margin: 20px 0 22px;
}

#entartica-booking-app .entartica-date-screen .entartica-calendar-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0;
}

#entartica-booking-app .entartica-date-screen .flatpickr-calendar {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

#entartica-booking-app .entartica-date-screen .entartica-selected-date {
    margin-top: 18px;
}

#entartica-booking-app .entartica-date-screen .entartica-date-action {
    margin-top: 16px;
}

/* PARK INFORMATION PANEL */

#entartica-booking-app .entartica-date-screen .entartica-park-information {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e1e6ee;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(16, 24, 40, 0.07);
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    padding: 24px;
    color: #667085;
    font-size: 14px;
    text-align: center;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 78px;
    padding: 16px 20px;
    background: #172b4d;
    color: #ffffff;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-heading-icon {
    display: inline-flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid rgba(255,255,255,0.25);
    border-radius: 10px;
    background: rgba(255,255,255,0.12);
    color: #ffffff;
    font-size: 21px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-heading > div {
    flex: 1;
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-heading h2 {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-heading small {
    display: block;
    color: rgba(255,255,255,0.75);
    font-size: 11px;
    line-height: 1.3;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    margin: 0;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,0.35) !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    cursor: pointer;
    box-shadow: none !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-content {
    padding: 20px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-image {
    width: 100%;
    height: 205px;
    margin: 0 0 17px;
    overflow: hidden;
    border-radius: 12px;
    background: #f1f5f9;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-title-row h3 {
    margin: 0;
    color: #172b4d;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 30px;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 600;
    white-space: nowrap;
}

#entartica-booking-app .entartica-date-screen .entartica-park-status > span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
}

#entartica-booking-app .entartica-date-screen .entartica-park-status.is-open {
    background: #eaf8ef;
    color: #16803c;
}

#entartica-booking-app .entartica-date-screen .entartica-park-status.is-closed {
    background: #fff1f0;
    color: #c43228;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 13px;
    color: #667085;
    font-size: 13px;
    line-height: 1.5;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location > span {
    flex: 0 0 auto;
    color: #172b4d;
    font-size: 16px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-description {
    margin: 0 0 17px;
    color: #667085;
    font-size: 13px;
    line-height: 1.65;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support {
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #e5eaf0;
    border-radius: 12px;
    background: #f7f9fc;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support h3 {
    margin: 0 0 5px;
    color: #172b4d;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support p {
    margin: 0 0 13px;
    color: #526071;
    font-size: 12px;
    line-height: 1.5;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-call,
#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 38px;
    padding: 9px 13px;
    border: 1px solid #172b4d;
    border-radius: 8px;
    background: #172b4d;
    color: #ffffff !important;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 600;
    text-decoration: none !important;
    transition: background 0.2s ease, transform 0.2s ease;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp {
    border-color: #16834a;
    background: #16834a;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-call:hover,
#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp:hover {
    transform: translateY(-1px);
    color: #ffffff !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager {
    display: grid;
    gap: 9px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e8edf2;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #172b4d;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name > span:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #eef3f8;
    font-size: 16px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name small,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-name strong {
    display: block;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name small {
    margin-bottom: 2px;
    color: #7b8494;
    font-size: 10px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name strong {
    color: #172b4d;
    font-size: 13px;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-phone,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-email {
    color: #526071;
    font-size: 12px;
    line-height: 1.5;
    text-decoration: none;
    overflow-wrap: anywhere;
}

/* TABLET */

@media (max-width: 900px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 16px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel {
        padding: 22px 18px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        padding: 16px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-image {
        height: 175px;
    }
}

/* MOBILE — calendar first, expandable park information below */

@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 15px;
        margin-top: 16px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel {
        padding: 18px 14px 20px;
        border-radius: 15px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel-heading {
        gap: 10px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-heading-icon {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
        font-size: 18px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel-heading h2 {
        font-size: 17px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel-heading p {
        font-size: 12px;
        line-height: 1.55;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-divider {
        margin: 16px 0 17px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        border-radius: 14px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        min-height: 70px;
        padding: 13px 14px;
        gap: 9px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading-icon {
        flex-basis: 34px;
        width: 34px;
        height: 34px;
        font-size: 18px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading h2 {
        font-size: 14px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
      display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        padding: 14px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-image {
        height: 190px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-title-row h3 {
        font-size: 17px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-support {
        padding: 13px;
    }
}

/* SMALL MOBILE */

@media (max-width: 380px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-panel {
        padding: 15px 10px 17px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel-heading h2 {
        font-size: 15px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        padding: 11px 10px;
        gap: 7px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
        padding: 6px 7px;
        font-size: 9px !important;
    }
}


/* =========================================================
   STEP 2 — PARK INFORMATION CONTENT (MATCHES UPDATED JS)
   Only Step 2 Park Information styles are refined below.
   No styles for Step 1, Step 3, Step 4 or global header changed.
   ========================================================= */

#entartica-booking-app .entartica-date-screen .entartica-park-info-location,
#entartica-booking-app .entartica-date-screen .entartica-park-info-description {
    display: block;
    margin: 0 0 14px;
    padding: 13px 14px;
    border: 1px solid #e7edf4;
    border-radius: 11px;
    background: #f8fafc;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location > strong,
#entartica-booking-app .entartica-date-screen .entartica-park-info-description > strong {
    display: block;
    margin: 0 0 6px;
    color: #172b4d;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 600;
    text-transform: uppercase;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location p,
#entartica-booking-app .entartica-date-screen .entartica-park-info-description p {
    display: block;
    margin: 0;
    color: #526071;
    font-size: 13px;
    line-height: 1.6;
    font-weight: 400;
    overflow-wrap: anywhere;
    word-break: normal;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location p > span {
    display: inline-block;
    margin-right: 6px;
    color: #172b4d;
    font-size: 15px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-description {
    margin-bottom: 16px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support {
    margin-top: 16px;
    padding: 10px;
    border: 1px solid #dfe8f1;
    border-radius: 12px;
    background: #f5f8fc;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support h3,
#entartica-booking-app .entartica-date-screen .entartica-park-manager h3 {
    display: block;
    margin: 0 0 6px;
    color: #172b4d;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support p {
    margin: 0 0 12px;
    color: #667085;
    font-size: 12px;
    line-height: 1.55;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-actions {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 9px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-call,
#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 10px 14px;
    border: 1px solid #172b4d;
    border-radius: 8px;
    background: #172b4d;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 700;
    text-decoration: none !important;
    white-space: normal;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp {
    border-color: #16834a;
    background: #16834a;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-call:hover {
    border-color: #0d1d36;
    background: #0d1d36;
    color: #ffffff !important;
    transform: translateY(-1px);
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp:hover {
    border-color: #116b3d;
    background: #116b3d;
    color: #ffffff !important;
    transform: translateY(-1px);
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
    margin-top: 16px;
    padding: 10px;
    border: 1px solid #e7edf4;
    border-radius: 11px;
    background: #ffffff;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager h3 {
    margin-bottom: 3px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name {
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-phone,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-email {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    width: fit-content;
    max-width: 100%;
    color: #344054;
    font-size: 12px;
    line-height: 1.5;
    text-decoration: none;
    overflow-wrap: anywhere;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-phone:hover,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-email:hover {
    color: #172b4d;
    text-decoration: underline;
}

@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        align-items: center;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading > div {
        flex: 1 1 auto;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
        display: inline-flex;
        flex: 0 0 auto;
        max-width: 118px;
        white-space: nowrap;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        padding: 10px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-location,
    #entartica-booking-app .entartica-date-screen .entartica-park-info-description {
        padding: 10px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-contact-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-contact-call,
    #entartica-booking-app .entartica-date-screen .entartica-park-contact-whatsapp {
        width: 100%;
        min-height: 42px;
    }
}

@media (max-width: 380px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading h2 {
        font-size: 12px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
        max-width: 108px;
        padding: 6px 7px;
        font-size: 9px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-image {
        height: 155px;
    }
}


/* Step 2 — Park operating timings */
#entartica-park-information .entartica-park-info-timings {
    margin: 12px 0;
    padding: 12px 14px;
    border: 1px solid #e3e9f0;
    border-radius: 10px;
    background: #f7f9fc;
}
#entartica-park-information .entartica-park-info-timings strong {
    display: block;
    margin-bottom: 6px;
    color: #082c57;
    font-weight: 700;
}
#entartica-park-information .entartica-park-info-timings p {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    line-height: 1.5;
    overflow-wrap: anywhere;
}


/* Step 2 refinements: manager contacts sit side-by-side on wider screens. */
#entartica-booking-app .entartica-date-screen .entartica-park-manager-contact-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 10px 18px;
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-phone,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-email {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    min-width: 0;
    overflow-wrap: anywhere;
}

@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-manager-contact-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }
}


/* Step 2 desktop balance: both columns share the same height.
   Park details are arranged as a compact two-column inner grid. */
@media (min-width: 768px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        align-items: stretch !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel,
    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        height: 100% !important;
        min-height: 100% !important;
        box-sizing: border-box;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel {
        display: flex;
        flex-direction: column;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        display: flex;
        flex-direction: column;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        flex: 1 1 auto;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: min-content;
        align-content: space-between;
        align-items: stretch;
        gap: 12px;
        min-height: 0;
        box-sizing: border-box;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-image {
        grid-column: 1 / -1;
        height: clamp(145px, 18vh, 205px) !important;
        min-height: 145px;
        margin: 0 !important;
        overflow: hidden;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-title-row {
        grid-column: 1 / -1;
        margin: 0 !important;
        align-self: center;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-location,
    #entartica-booking-app .entartica-date-screen .entartica-park-info-timings,
    #entartica-booking-app .entartica-date-screen .entartica-park-support,
    #entartica-booking-app .entartica-date-screen .entartica-park-manager {
        min-width: 0;
        margin: 0 !important;
        box-sizing: border-box;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-location,
    #entartica-booking-app .entartica-date-screen .entartica-park-info-timings {
        align-self: stretch;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-support,
    #entartica-booking-app .entartica-date-screen .entartica-park-manager {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: stretch;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-manager-contact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Keep the existing stacked, collapsible mobile presentation unchanged. */
@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        align-items: start !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        display: block !important;
    }
    #entartica-booking-app .entartica-date-screen .entartica-park-manager-name > span:first-child{
        display: none !IMPORTANT;
    }
}


/* Step 2 latest layout: no park image; keep information cards vertically stacked. */
#entartica-booking-app .entartica-date-screen .entartica-park-info-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-title-row,
#entartica-booking-app .entartica-date-screen .entartica-park-info-location,
#entartica-booking-app .entartica-date-screen .entartica-park-support,
#entartica-booking-app .entartica-date-screen .entartica-park-manager {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager {
    display: flex !important;
    flex-direction: column;
    gap: 10px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    align-items: center;
    gap: 14px;
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name small {
    color: #667085;
    font-size: 11px;
    line-height: 1.35;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name strong {
    color: #082c57;
    font-size: 14px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-contact-grid {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-phone,
#entartica-booking-app .entartica-date-screen .entartica-park-manager-email {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
}

@media (min-width: 768px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        align-items: stretch !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel,
    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        height: 100% !important;
        min-height: 100% !important;
        box-sizing: border-box;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        display: flex;
        flex-direction: column;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        flex: 1 1 auto;
        /*justify-content: space-between;*/
        align-content: stretch;
        min-height: 0;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-manager-layout {
        grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    }
}

@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        display: block !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-title-row,
    #entartica-booking-app .entartica-date-screen .entartica-park-info-location,
    #entartica-booking-app .entartica-date-screen .entartica-park-support,
    #entartica-booking-app .entartica-date-screen .entartica-park-manager {
        margin-bottom: 12px !important;
        padding: 5px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-manager-layout {
        grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
        gap: 10px;
    }
}

@media (max-width: 380px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-manager-layout {
        grid-template-columns: minmax(1fr, 1fr);
    }
}


/* Site Manager icons — visible icon beside manager name, phone and email. */
#entartica-booking-app .entartica-date-screen .entartica-park-manager-name {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-icon {
    display: inline-flex !important;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #edf3f9;
    color: #082c57;
    font-size: 21px;
    line-height: 1;
}

#entartica-booking-app .entartica-date-screen .entartica-park-manager-name-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 3px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-contact-icon {
    display: inline-flex !important;
    flex: 0 0 16px;
    width: 16px;
    align-items: center;
    justify-content: center;
    color: #082c57;
    font-size: 14px;
    line-height: 1.3;
}


/* Mobile Park Information header: keep label and chevron aligned on one line. */
#entartica-booking-app .entartica-date-screen .entartica-park-info-content[hidden] {
    display: none !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    writing-mode: horizontal-tb !important;
    text-align: center !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle-icon {
     display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 10px !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    position: relative !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle-icon::before {
    content: "";
    width: 6px;
    height: 6px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle[aria-expanded="true"] .entartica-park-info-toggle-icon::before {
    transform: rotate(225deg);
    top: 3px;
}

@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 8px !important;
        min-height: 64px;
        padding: 12px 13px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading > div {
        flex: 1 1 auto !important;
        min-width: 0;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading h2 {
        margin: 0 !important;
        font-size: clamp(11px, 3.2vw, 14px) !important;
        line-height: 1.2 !important;
        white-space: nowrap;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 34px !important;
        padding: 7px 9px !important;
        font-size: 10px !important;
        line-height: 1 !important;
    }

    /*#entartica-booking-app .entartica-date-screen .entartica-park-info-toggle-icon {*/
    /*    font-size: 15px !important;*/
    /*}*/
}

@media (max-width: 380px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        gap: 6px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading-icon {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading h2 {
        font-size: 10px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-toggle {
        padding: 6px 7px !important;
        font-size: 9px !important;
    }
}



/* =========================================================
   STEP 2 — ACF PARK INFORMATION DESIGN
   Equal-height panel beside calendar; inner content scrolls.
   Responsive layout: stacked + expandable on mobile.
   ========================================================= */

#entartica-booking-app .entartica-date-screen .entartica-date-layout {
    align-items: stretch !important;
}

#entartica-booking-app .entartica-date-screen .entartica-date-panel,
#entartica-booking-app .entartica-date-screen .entartica-park-information {
    min-width: 0;
    min-height: 0 !important;
    box-sizing: border-box;
}

/* Desktop/tablet: both panels share the calendar row height. */
@media (min-width: 768px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        align-items: stretch !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-date-panel,
    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        height: 100% !important;
        min-height: 0 !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-heading {
        flex: 0 0 auto;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 12px !important;
        min-height: 0 !important;
        height: 0;
        padding: 16px 18px 18px !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: #aebaca #f1f4f8;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content::-webkit-scrollbar {
        width: 7px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content::-webkit-scrollbar-track {
        background: #f1f4f8;
        border-radius: 10px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content::-webkit-scrollbar-thumb {
        background: #aebaca;
        border-radius: 10px;
    }
}

/* ACF information blocks */
#entartica-booking-app .entartica-date-screen .entartica-park-guest-information {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
    padding: 13px 14px;
    border: 1px solid #e5eaf0;
    border-radius: 11px;
    background: #ffffff;
    box-shadow: 0 2px 7px rgba(23, 43, 77, 0.035);
    overflow-wrap: anywhere;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information > h3 {
    margin: 0 0 7px !important;
    padding: 0;
    color: #082c57;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content {
    color: #526071;
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
    word-break: normal;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content p {
    margin: 0 0 7px !important;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content p:last-child {
    margin-bottom: 0 !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content ul,
#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content ol,
#entartica-booking-app .entartica-date-screen .entartica-park-facilities ul {
    margin: 5px 0 0 !important;
    padding-left: 19px !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content li,
#entartica-booking-app .entartica-date-screen .entartica-park-facilities li {
    margin: 0 0 4px !important;
    padding: 0;
    color: #526071;
    font-size: 12px;
    line-height: 1.5;
}

#entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content li:last-child,
#entartica-booking-app .entartica-date-screen .entartica-park-facilities li:last-child {
    margin-bottom: 0 !important;
}

/* Park name and address remain compact at the top of the panel. */
#entartica-booking-app .entartica-date-screen .entartica-park-info-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 7px 10px;
    margin: 0 !important;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-title-row h3 {
    margin: 0;
    color: #082c57;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location {
    margin: 0 !important;
    padding: 11px 13px;
    border: 1px solid #e5eaf0;
    border-radius: 10px;
    background: #f7f9fc;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location > strong {
    display: block;
    margin: 0 0 4px;
    color: #082c57;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 700;
    text-transform: uppercase;
}

#entartica-booking-app .entartica-date-screen .entartica-park-info-location p {
    margin: 0;
    color: #526071;
    font-size: 12px;
    line-height: 1.5;
}

/* Operating hours gets a compact highlighted treatment. */
#entartica-booking-app .entartica-date-screen .entartica-park-operating-hours {
    background: #f7f9fc;
    border-color: #dfe7f0;
}

/* Facilities: clean compact list. */
#entartica-booking-app .entartica-date-screen .entartica-park-facilities ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 12px;
    padding: 0 !important;
    list-style: none;
}

#entartica-booking-app .entartica-date-screen .entartica-park-facilities li {
    position: relative;
    margin: 0 !important;
    padding-left: 17px;
}

#entartica-booking-app .entartica-date-screen .entartica-park-facilities li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: #16834a;
    font-weight: 700;
}

/* Booking support remains at the bottom of the scrollable information. */
#entartica-booking-app .entartica-date-screen .entartica-park-support {
    flex: 0 0 auto;
    width: 100%;
    margin: 0 !important;
    padding: 13px 14px;
    border: 1px solid #dfe8f1;
    border-radius: 11px;
    background: #f5f8fc;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support h3 {
    margin: 0 0 5px !important;
    color: #082c57;
    font-size: 13px;
    line-height: 1.35;
}

#entartica-booking-app .entartica-date-screen .entartica-park-support p {
    margin: 0 0 10px !important;
    color: #526071;
    font-size: 11px;
    line-height: 1.5;
}

/* Mobile: calendar first; Park Information stays collapsible.
   When opened, content has a bounded height and its own scroll. */
@media (max-width: 767px) {
    #entartica-booking-app .entartica-date-screen .entartica-date-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: start !important;
        gap: 14px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-information {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        display: block !important;
        max-height: 390px;
        padding: 12px !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: #aebaca #f1f4f8;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-info-content[hidden] {
        display: none !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-guest-information,
    #entartica-booking-app .entartica-date-screen .entartica-park-info-location,
    #entartica-booking-app .entartica-date-screen .entartica-park-support {
        margin: 0 0 10px !important;
        padding: 11px 12px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-guest-information:last-child,
    #entartica-booking-app .entartica-date-screen .entartica-park-support:last-child {
        margin-bottom: 0 !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-facilities ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 380px) {
    #entartica-booking-app .entartica-date-screen .entartica-park-info-content {
        max-height: 350px;
        padding: 10px !important;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-guest-information > h3 {
        font-size: 12px;
    }

    #entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content,
    #entartica-booking-app .entartica-date-screen .entartica-park-guest-information-content li {
        font-size: 11px;
    }
}

/* Entartica ADD popup — same-category pass selection
   Append this CSS to the existing booking stylesheet / Elementor Custom CSS.
   Scoped only to the ADD selection popup. */
.entartica-category-add-modal{
  width:min(1080px,96vw)!important;
  max-width:1080px!important;
  max-height:min(92vh,900px)!important;
  overflow-y:auto!important;
  padding:15px!important;
  border-radius:24px!important;
  background:#fff!important;
  color:#172b45!important;
  box-shadow:0 28px 90px rgba(4,24,49,.28)!important;
}
.entartica-category-add-modal .entartica-add-popup-head{margin:0 42px 22px 0!important}
.entartica-category-add-modal .entartica-add-popup-head>span{
  color:#ef2938!important;font-size:12px!important;letter-spacing:2.2px!important;font-weight:800!important
}
.entartica-category-add-modal .entartica-add-popup-head h2{
  color:#082c57!important;font-size:clamp(23px,3vw,34px)!important;line-height:1.2!important;font-weight:650!important;margin:8px 0 5px!important
}
.entartica-category-add-modal .entartica-add-popup-head p{
  color:#71829b!important;font-size:clamp(14px,1.7vw,19px)!important;margin:0!important
}
.entartica-category-main-card{
  display:flex;align-items:center;gap:20px;padding:18px 20px;margin:0 0 24px;
  border-radius:18px;background:#f0f6ff;border:1px solid #e0ebfa;min-width:0
}
.entartica-category-main-card>img,.entartica-category-main-card>.entartica-category-image-fallback{
  width:124px;height:104px;flex:0 0 124px;object-fit:cover;border-radius:13px
}
.entartica-category-main-info{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.entartica-category-main-info>strong{font-size:27px;line-height:1.2;color:#082c57;font-weight:700}
.entartica-category-main-info>strong small{font-size:15px;color:#71829b;font-weight:500}
.entartica-category-main-info>span{font-size:14px;color:#71829b}
.entartica-category-qty{margin-left:auto}
.entartica-category-add-modal .entartica-add-qty{display:flex;align-items:center;gap:10px}
.entartica-category-add-modal .entartica-add-qty button{
  display:grid;place-items:center;width:42px;height:42px;border:1px solid #d3dfef;border-radius:6px;
  background:#fff;color:#082c57;font-size:23px;font-weight:600;cursor:pointer;transition:.18s ease
}
.entartica-category-add-modal .entartica-add-qty button:hover{background:#ffc928;border-color:#ffc928}
.entartica-category-add-modal .entartica-add-qty b{
  min-width:24px;text-align:center;color:#142e55;font-size:20px;font-weight:650
}
.entartica-category-section-head{
  display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:14px 16px;
  border-radius:14px;background:#fff9e9;border:1px solid #ffedb4
}
.entartica-category-section-head h3{margin:0 0 4px;color:#082c57;font-size:21px;font-weight:700;line-height:1.25}
.entartica-category-section-head p{margin:0;color:#71829b;font-size:14px}
.entartica-category-pill{
  flex:0 0 auto;padding:8px 13px;border-radius:30px;background:#e8f1ff;color:#082c57;font-size:12px;font-weight:700
}
.entartica-category-addon-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px
}
.entartica-category-addon-card{
  display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dbe5f2;border-radius:16px;
  background:#fff;transition:border-color .18s ease,box-shadow .18s ease
}
.entartica-category-addon-card.is-selected{
  border-color:#f2bd22;box-shadow:0 0 0 2px rgba(255,201,40,.2)
}
.entartica-category-addon-image{
  display:block;width:100%;height:142px;object-fit:cover;background:#edf3fa
}
.entartica-category-image-fallback{display:grid;place-items:center;background:#eaf1f9;color:#082c57;font-weight:800}
.entartica-category-addon-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:7px;padding:13px}
.entartica-category-addon-content>strong{
  display:-webkit-box;overflow:hidden;color:#082c57;font-size:16px;font-weight:700;line-height:1.3;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:41px
}
.entartica-category-duration{color:#71829b;font-size:13px}
.entartica-category-price{color:#082c57;font-size:19px;font-weight:750}
.entartica-category-price small{font-size:12px;color:#71829b;font-weight:500}
.entartica-category-addon-qty{width:100%;justify-content:start;margin-top:4px}
.entartica-category-addon-qty button{width:36px!important;height:36px!important}
.entartica-category-addon-qty b{font-size:17px!important}
.entartica-category-empty{
  padding:20px;border:1px dashed #cbd8e8;border-radius:13px;background:#f7faff;color:#71829b;text-align:center
}
.entartica-category-add-modal .entartica-add-popup-total{
  align-items:center;margin-top:22px;padding:18px 0;border-top:1px solid #dfe7f1;
  color:#1b2e46;font-size:21px;font-weight:700
}
.entartica-category-add-modal .entartica-add-popup-total strong{color:#082c57;font-size:29px;font-weight:800}
.entartica-category-selection-hint{min-height:18px;margin:-7px 0 12px;color:#71829b;font-size:12px}
.entartica-category-add-modal .entartica-add-continue{
  min-height:58px;border:2px solid #ffc928;border-radius:13px;background:#082c57;color:#fff;
  font-size:18px;font-weight:800;box-shadow:0 8px 20px rgba(8,44,87,.12)
}
.entartica-category-add-modal .entartica-add-continue:hover{background:#0b396e}
.entartica-category-add-modal .entartica-add-popup-close{
  right:18px!important;top:18px!important;width:42px!important;height:42px!important;
  background:#f1f5fa!important;color:#082c57!important;border:1px solid #e2eaf4!important;font-size:25px!important
}
@media(max-width:760px){
  .entartica-category-add-modal{width:100%!important;max-width:100%!important;max-height:94vh!important;padding:20px 16px!important;border-radius:19px!important}
  .entartica-category-add-modal .entartica-add-popup-head{margin-right:38px!important;margin-bottom:16px!important}
  .entartica-category-main-card{gap:12px;padding:12px;margin-bottom:18px;border-radius:14px}
  .entartica-category-main-card>img,.entartica-category-main-card>.entartica-category-image-fallback{width:82px;height:76px;flex-basis:82px}
  .entartica-category-main-info>strong{font-size:21px}
  .entartica-category-main-info>strong small{font-size:12px}
  .entartica-category-qty{gap:5px!important}
  .entartica-category-add-modal .entartica-add-qty button{width:34px;height:34px;font-size:19px;border-radius:9px}
  .entartica-category-add-modal .entartica-add-qty b{min-width:17px;font-size:17px}
  .entartica-category-section-head{align-items:flex-start;padding:11px 12px}
  .entartica-category-section-head h3{font-size:17px}
  .entartica-category-section-head p{font-size:12px}
  .entartica-category-pill{font-size:10px;padding:6px 9px}
  .entartica-category-addon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .entartica-category-addon-image{height:112px}
  .entartica-category-addon-content{padding:10px;gap:6px}
  .entartica-category-addon-content>strong{font-size:13px;min-height:34px}
  .entartica-category-price{font-size:16px}
  .entartica-category-addon-qty{gap:6px!important}
  .entartica-category-addon-qty button{width:31px!important;height:31px!important}
  .entartica-category-add-modal .entartica-add-popup-total{font-size:17px;padding:14px 0;margin-top:16px}
  .entartica-category-add-modal .entartica-add-popup-total strong{font-size:24px}
  .entartica-category-add-modal .entartica-add-continue{min-height:52px;font-size:16px}
}
@media(max-width:390px){
  .entartica-category-addon-grid{grid-template-columns:1fr}
  .entartica-category-addon-card{display:grid;grid-template-columns: minmax(0, 1fr);min-height:124px}
  .entartica-category-addon-image{height:100%;min-height:124px}
  .entartica-category-addon-content{justify-content:center}
  .entartica-category-addon-content>strong{min-height:0}
  .entartica-category-section-head{flex-direction:column}
}


/* =========================================================
   COMPACT CENTERED ADD POPUP — desktop + mobile refinement
   Append after the previous Entartica ADD popup CSS.
   ========================================================= */

/* Keep the overlay centered with clear breathing room on all sides. */
.entartica-add-selection-overlay{
  position:fixed!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10vh 25vw!important;
  box-sizing:border-box!important;
  z-index:999999!important;
  overflow:hidden!important;
}

/* Desktop: approximately 50% viewport width and 80% viewport height. */
.entartica-category-add-modal{
  width:50vw!important;
  max-width:960px!important;
  min-width:640px!important;
  height:auto!important;
  max-height:80vh!important;
  margin:0!important;
  padding:20px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border-radius:22px!important;
}

/* Reduce vertical space so the modal stays compact. */
.entartica-category-add-modal .entartica-add-popup-head{
  margin-bottom:15px!important;
}
.entartica-category-add-modal .entartica-add-popup-head h2{
  font-size:clamp(22px,1.8vw,29px)!important;
}
.entartica-category-main-card{
  padding:13px 16px!important;
  margin-bottom:16px!important;
}
.entartica-category-main-card>img,
.entartica-category-main-card>.entartica-category-image-fallback{
  width:96px!important;
  height:82px!important;
  flex-basis:96px!important;
}

/* Frequently Added Together becomes a horizontal, touch-scrollable strip. */
.entartica-category-addon-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 12px!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:thin!important;
  scrollbar-color:#082c57 #e8eef6!important;
}
.entartica-category-addon-grid::-webkit-scrollbar{
  height:6px!important;
}
.entartica-category-addon-grid::-webkit-scrollbar-track{
  background:#e8eef6!important;
  border-radius:20px!important;
}
.entartica-category-addon-grid::-webkit-scrollbar-thumb{
  background:#082c57!important;
  border-radius:20px!important;
}
.entartica-category-addon-card{
  flex:0 0 162px!important;
  width:162px!important;
  min-width:162px!important;
  scroll-snap-align:start!important;
}
.entartica-category-addon-image{
  height:92px!important;
}
.entartica-category-addon-content{
  padding:10px!important;
  gap:5px!important;
}
.entartica-category-addon-content>strong{
  font-size:13px!important;
  min-height:14px!important;
}
.entartica-category-price{
  font-size:16px!important;
}
.entartica-category-addon-qty{
  gap:5px!important;
}
.entartica-category-addon-qty button{
  width:40px!important;
  height:30px!important;
  font-size:20px!important;
}
.entartica-category-addon-qty b{
  font-size:15px!important;
}
.entartica-category-add-modal .entartica-add-popup-total{
  margin-top:12px!important;
  padding:12px 0!important;
}
.entartica-category-add-modal .entartica-add-continue{
  min-height:50px!important;
}

/* Tablet */
@media(max-width:900px){
  .entartica-add-selection-overlay{
    padding:6vh 8vw!important;
  }
  .entartica-category-add-modal{
    width:84vw!important;
    min-width:0!important;
    max-width:720px!important;
    max-height:88vh!important;
    padding:20px!important;
  }
  .entartica-category-addon-card{
    flex-basis:138px!important;
    width:138px!important;
    min-width:138px!important;
  }
}

/* Mobile: centered, nearly full-width sheet with horizontal card scrolling. */
@media(max-width:600px){
  .entartica-add-selection-overlay{
    padding:5vh 12px!important;
    align-items:center!important;
  }
  .entartica-category-add-modal{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    max-height:90vh!important;
    padding:17px 14px!important;
    border-radius:18px!important;
  }
  .entartica-category-add-modal .entartica-add-popup-head{
    margin:0 34px 13px 0!important;
  }
  .entartica-category-add-modal .entartica-add-popup-head>span{
    font-size:10px!important;
    letter-spacing:1.6px!important;
  }
  .entartica-category-add-modal .entartica-add-popup-head h2{
    font-size:21px!important;
  }
  .entartica-category-add-modal .entartica-add-popup-head p{
    font-size:13px!important;
    line-height:1.4!important;
  }
  .entartica-category-main-card{
    gap:10px!important;
    padding:10px!important;
    margin-bottom:13px!important;
  }
  .entartica-category-main-card>img,
  .entartica-category-main-card>.entartica-category-image-fallback{
    width:70px!important;
    height:66px!important;
    flex-basis:70px!important;
  }
  .entartica-category-main-info>strong{
    font-size:19px!important;
  }
  .entartica-category-main-info>strong small{
    font-size:11px!important;
  }
  .entartica-category-qty{
    gap:4px!important;
  }
  .entartica-category-add-modal .entartica-add-qty button{
    width:29px!important;
    height:30px!important;
    font-size:17px!important;
  }
  .entartica-category-add-modal .entartica-add-qty b{
    min-width:15px!important;
    font-size:15px!important;
  }
  .entartica-category-section-head{
    padding:10px!important;
    margin-bottom:10px!important;
  }
  .entartica-category-section-head h3{
    font-size:16px!important;
  }
  .entartica-category-section-head p{
    font-size:11px!important;
  }
  .entartica-category-pill{
    display:none!important;
  }
  .entartica-category-addon-grid{
    gap:9px!important;
    padding-bottom:10px!important;
  }
  .entartica-category-addon-card{
    flex:0 0 162px!important;
    width:162px!important;
    min-width:162px!important;
  }
  .entartica-category-addon-image{
    height:82px!important;
  }
  .entartica-category-addon-content{
    padding:8px!important;
  }
  .entartica-category-addon-content>strong{
    font-size:12px!important;
    min-height:31px!important;
  }
  .entartica-category-duration{
    font-size:11px!important;
  }
  .entartica-category-price{
    font-size:15px!important;
  }
  .entartica-category-price small{
    font-size:10px!important;
  }
  .entartica-category-addon-qty button{
    width:27px!important;
    height:27px!important;
  }
  .entartica-category-add-modal .entartica-add-popup-total{
    font-size:16px!important;
    padding:11px 0!important;
  }
  .entartica-category-add-modal .entartica-add-popup-total strong{
    font-size:22px!important;
  }
  .entartica-category-selection-hint{
    font-size:11px!important;
    margin-bottom:8px!important;
  }
  .entartica-category-add-modal .entartica-add-continue{
    min-height:48px!important;
    font-size:15px!important;
  }
}



/* Selected pass breakdown in the fixed booking summary */
#entartica-fixed-booking-dock .entartica-cart-summary-text {
  flex: 1 1 auto !important;
  max-width: min(760px, 62vw) !important;
  gap: 3px !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-details {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  width: 100% !important;
  max-height: 38px !important;
  overflow: hidden !important;
  margin-top: 2px !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-line {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-width: 0 !important;
  color: #526780 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-line-name {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
#entartica-fixed-booking-dock .entartica-cart-summary-line strong {
  flex: 0 0 auto !important;
  color: #082c57 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}
@media (max-width: 700px) {
  #entartica-booking-app:has(#entartica-products-container) { padding-bottom: 118px !important; }
  #entartica-fixed-booking-dock { align-items: center !important; min-height: 82px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-text { max-width: none !important; gap: 2px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-details { max-height: 30px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-line { gap: 5px !important; font-size: 9px !important; line-height: 1.3 !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-line strong { font-size: 9px !important; }
  #entartica-fixed-booking-dock .entartica-cart-summary-button { flex: 1 1 58% !important; min-width: 0 !important; }
  #entartica-fixed-booking-dock .entartica-cart-review-cta { flex: 0 0 auto !important; }
}

/* =========================================================
   ENTARTICA — CATEGORY NAV: TWO CARDS PER ROW
   Append this block at the VERY END of assets/booking.css
   Does not change category filtering or booking JavaScript.
   ========================================================= */

/* Desktop + laptop: wider category rail with 2 cards per row */
@media (min-width: 1025px) {
  #entartica-booking-app:has(#entartica-products-container) .entartica-booking-wrapper {
    grid-template-columns: 340px minmax(0, 1fr) !important;
    column-gap: 26px !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    max-height: calc(100vh - 150px) !important;
    padding: 10px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    align-content: start !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tab {
    padding: 12px 8px !important;
    gap: 9px !important;
  }

  #entartica-booking-app .entartica-category-tab-image {
    width: 76px !important;
    height: 76px !important;
    flex-basis: 76px !important;
    border-radius: 14px !important;
  }

  #entartica-booking-app .entartica-category-tab-name {
    font-size: 12px !important;
    line-height: 1.25 !important;
    text-align: center !important;
    overflow-wrap: break-word !important;
  }
}

/* Tablet + smaller laptops: keep 2 columns without crushing images */
@media (min-width: 701px) and (max-width: 1024px) {
  #entartica-booking-app:has(#entartica-products-container) .entartica-booking-wrapper {
    grid-template-columns: 300px minmax(0, 1fr) !important;
    column-gap: 18px !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    max-height: calc(100vh - 145px) !important;
    padding: 11px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    align-content: start !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tab {
    min-height: 132px !important;
    padding: 10px 6px !important;
    gap: 8px !important;
  }

  #entartica-booking-app .entartica-category-tab-image {
    width: 66px !important;
    height: 66px !important;
    flex-basis: 66px !important;
  }

  #entartica-booking-app .entartica-category-tab-name {
    font-size: 12px !important;
    line-height: 1.25 !important;
    overflow-wrap: break-word !important;
  }
}

/* Mobile: preserve the existing horizontal category strip */
@media (max-width: 700px) {
  #entartica-booking-app:has(#entartica-products-container) .entartica-booking-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tabs {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 10px !important;
    align-items: stretch !important;
  }

  #entartica-booking-app:has(#entartica-products-container) .entartica-category-tab {
    flex: 0 0 118px !important;
    width: 118px !important;
    min-height: 112px !important;
  }
}


/* =========================================================
   ENTARTICA FIXED CART BOTTOM BAR — DESKTOP + MOBILE
   CSS-only. Keeps existing cart and review functionality.
   Paste at the VERY END of booking.css.
   ========================================================= */

#entartica-fixed-booking-dock {
  /*min-height: 124px !important;*/
  align-items: center !important;
  gap: 22px !important;
  padding: 12px clamp(16px, 2.4vw, 42px) !important;
  box-sizing: border-box !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-button {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 4px 8px !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-text {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  max-width: none !important;
  gap: 3px !important;
  overflow: hidden !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-title {
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-count {
  font-size: 12px !important;
  line-height: 1.25 !important;
}

/* Show up to 3 pass rows at once; extra rows remain scrollable. */
#entartica-fixed-booking-dock .entartica-cart-summary-details {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  column-gap: 22px !important;
  row-gap: 3px !important;
  width: 100% !important;
  max-height: 58px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  margin-top: 2px !important;
  padding-right: 5px !important;
  scrollbar-width: thin !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-line {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  min-width: 0 !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-line-name {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-line strong {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  font-size: 11px !important;
}

#entartica-fixed-booking-dock .entartica-cart-summary-total {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  margin-left: 10px !important;
  padding-left: 18px !important;
  font-size: clamp(20px, 1.8vw, 26px) !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

#entartica-fixed-booking-dock .entartica-cart-review-cta {
  flex: 0 0 auto !important;
  min-width: clamp(210px, 22vw, 330px) !important;
  min-height: 58px !important;
  white-space: nowrap !important;
}

/* Tablet */
@media (min-width: 701px) and (max-width: 1024px) {
  #entartica-fixed-booking-dock {
    min-height: 118px !important;
    gap: 12px !important;
    padding: 10px 16px !important;
  }
  #entartica-fixed-booking-dock .entartica-cart-icon {
    width: 44px !important;
    height: 44px !important;
    flex-basis: 44px !important;
    font-size: 20px !important;
  }
  #entartica-fixed-booking-dock .entartica-cart-summary-details {
    column-gap: 12px !important;
    max-height: 52px !important;
  }
  #entartica-fixed-booking-dock .entartica-cart-review-cta {
    min-width: 190px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
  }
}

/* Mobile: keep total visible and give the pass list usable height. */
@media (max-width: 700px) {
  #entartica-booking-app:has(#entartica-products-container) {
    padding-bottom: calc(126px + env(safe-area-inset-bottom)) !important;
  }

  #entartica-fixed-booking-dock {
    /*min-height: 112px !important;*/
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-button {
    flex: 1 1 auto !important;
    gap: 7px !important;
    padding: 2px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-icon {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    font-size: 17px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-count {
    top: -4px !important;
    right: -4px !important;
    min-width: 18px !important;
    height: 18px !important;
    font-size: 10px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    gap: 2px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-title {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-count {
    font-size: 10px !important;
    line-height: 1.2 !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-details {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    max-height: 42px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 3px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-line {
    gap: 4px !important;
    font-size: 9px !important;
    line-height: 1.25 !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-line-name {
    font-size: 9px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-line strong {
    font-size: 9px !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-summary-total {
    display: inline-flex !important;
    margin-left: 3px !important;
    padding-left: 7px !important;
    font-size: 14px !important;
    border-left: 1px solid #dce7ef !important;
  }

  #entartica-fixed-booking-dock .entartica-cart-review-cta {
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    min-height: 44px !important;
    padding: 8px 7px !important;
    gap: 4px !important;
    border-radius: 11px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }
}

/* Very narrow phones */
@media (max-width: 380px) {
  #entartica-fixed-booking-dock {
    gap: 5px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
  }
  #entartica-fixed-booking-dock .entartica-cart-review-cta {
    flex-basis: 100px !important;
    width: 100px !important;
    min-width: 100px !important;
    font-size: 9px !important;
  }
  #entartica-fixed-booking-dock .entartica-cart-summary-total {
    font-size: 12px !important;
    padding-left: 5px !important;
  }
}

/* Entartica ADD popup close button fix
   Paste at the VERY END of the active booking CSS file or
   Appearance > Customize > Additional CSS.
*/

.entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
    position: relative !important;
}

.entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal > .entartica-add-popup-close {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 50 !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    transform: none !important;
}

@media (max-width: 767px) {
    .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
        padding-top: 58px !important;
        overflow: hidden !important;
    }

    .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal > .entartica-add-popup-close {
        top: 10px !important;
        right: 10px !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        border-radius: 50% !important;
    }
}



/* =========================================================
   ENTARTICA MODAL RESPONSIVE PATCH — PRESERVE DESKTOP LAYOUT
   Scope: ADD / Experience / Group Pricing selection popup only.
   Desktop width and existing booking-engine page grid are unchanged.
   ========================================================= */

.entartica-add-selection-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
}

.entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  max-width: min(1030px, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-gutter: stable;
}

.entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal > .entartica-add-popup-close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 100 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  transform: none !important;
}

.entartica-category-add-modal .entartica-category-addon-grid {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-x: contain !important;
  touch-action: pan-x pan-y !important;
  scrollbar-width: thin !important;
}

/* Tablet: keep a centered, readable modal with its own vertical scroll. */
@media (min-width: 768px) and (max-width: 1024px) {
  .entartica-add-selection-overlay {
    padding: 14px !important;
  }

  .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
    width: min(900px, calc(100vw - 28px)) !important;
    max-width: 900px !important;
    max-height: calc(100vh - 28px) !important;
    max-height: calc(100dvh - 28px) !important;
    padding: 20px !important;
    border-radius: 20px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero {
    grid-template-columns: 190px minmax(0, 1fr) !important;
    gap: 16px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero > img {
    width: 190px !important;
    height: 128px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero-copy {
    padding-right: 42px !important;
  }

  .entartica-category-add-modal .entartica-experience-option {
    grid-template-columns: 26px minmax(0, 1fr) auto !important;
  }

  .entartica-category-add-modal .entartica-category-addon-card {
    flex-basis: 200px !important;
    width: 200px !important;
    min-width: 200px !important;
    max-width: 200px !important;
  }
}

/* Mobile: modal fits the viewport and scrolls vertically; carousel scrolls horizontally. */
@media (max-width: 767px) {
  .entartica-add-selection-overlay {
    align-items: flex-start !important;
    justify-content: center !important;
    padding: max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom)) !important;
  }

  .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 16px) !important;
    max-height: calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px) !important;
    margin: auto 0 !important;
    padding: 54px 13px 14px !important;
    border-radius: 19px !important;
    gap: 10px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-y: contain !important;
    scrollbar-width: thin !important;
  }

  .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal > .entartica-add-popup-close {
    top: 9px !important;
    right: 9px !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
  }

  .entartica-category-add-modal .entartica-experience-hero > img,
  .entartica-category-add-modal .entartica-experience-hero > .entartica-category-image-fallback {
    width: 84px !important;
    height: 82px !important;
    min-height: 82px !important;
    border-radius: 11px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero-copy {
    min-width: 0 !important;
    padding-right: 0 !important;
  }

  .entartica-category-add-modal .entartica-experience-brand {
    margin-bottom: 4px !important;
    font-size: 9px !important;
    letter-spacing: 1.15px !important;
  }

  .entartica-category-add-modal .entartica-experience-hero-copy h2 {
    margin: 0 0 4px !important;
    font-size: clamp(18px, 5vw, 23px) !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere !important;
  }

  .entartica-category-add-modal .entartica-experience-hero-copy p {
    margin: 0 !important;
    font-size: 11px !important;
    line-height: 1.32 !important;
  }

  .entartica-category-add-modal .entartica-experience-options {
    min-width: 0 !important;
    gap: 8px !important;
  }

  .entartica-category-add-modal .entartica-experience-options-title {
    font-size: 17px !important;
    line-height: 1.2 !important;
  }

  .entartica-category-add-modal .entartica-experience-option {
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 10px !important;
    border-radius: 14px !important;
  }

  .entartica-category-add-modal .entartica-experience-option.is-selected {
    padding: 9px !important;
  }

  .entartica-category-add-modal .entartica-experience-radio {
    width: 20px !important;
    height: 20px !important;
  }

  .entartica-category-add-modal .entartica-experience-option-copy {
    min-width: 0 !important;
  }

  .entartica-category-add-modal .entartica-experience-option-copy strong {
    font-size: 14px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }

  .entartica-category-add-modal .entartica-experience-option-copy p,
  .entartica-category-add-modal .entartica-experience-option-copy .entartica-experience-inclusions {
    font-size: 10px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
  }

  .entartica-category-add-modal .entartica-experience-option-price {
    grid-column: 2 !important;
    justify-self: start !important;
    align-self: center !important;
    max-width: 100% !important;
    padding: 3px 9px !important;
    font-size: 17px !important;
    white-space: normal !important;
  }

  .entartica-category-add-modal .entartica-experience-option-price small {
    font-size: 10px !important;
  }

  .entartica-category-add-modal .entartica-experience-qty-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 9px 0 !important;
  }

  .entartica-category-add-modal .entartica-experience-qty-label {
    font-size: 15px !important;
  }

  .entartica-category-add-modal .entartica-experience-pass-total {
    margin-left: auto !important;
    padding: 7px 9px !important;
    font-size: 12px !important;
    white-space: normal !important;
  }

  .entartica-category-add-modal .entartica-category-section-head {
    align-items: flex-start !important;
    padding: 9px 10px !important;
    margin-bottom: 8px !important;
  }

  .entartica-category-add-modal .entartica-category-section-head h3 {
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  .entartica-category-add-modal .entartica-category-section-head p {
    font-size: 10px !important;
    line-height: 1.3 !important;
  }

  .entartica-category-add-modal .entartica-category-pill {
    display: none !important;
  }

  .entartica-category-add-modal .entartica-category-addon-grid {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 2px 2px 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x pan-y !important;
  }

  .entartica-category-add-modal .entartica-category-addon-card {
    flex: 0 0 164px !important;
    width: 164px !important;
    min-width: 164px !important;
    max-width: 164px !important;
  }

  .entartica-category-add-modal .entartica-add-qty {
    gap: 7px !important;
  }

  .entartica-category-add-modal .entartica-add-qty button {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    min-height: 31px !important;
  }

  .entartica-category-add-modal .entartica-add-popup-total {
    margin-top: 0 !important;
    padding: 9px 0 !important;
    font-size: 14px !important;
  }

  .entartica-category-add-modal .entartica-add-popup-total span {
    font-size: 14px !important;
  }

  .entartica-category-add-modal .entartica-add-popup-total strong {
    font-size: 20px !important;
  }

  .entartica-category-add-modal .entartica-category-selection-hint {
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1.3 !important;
  }

  .entartica-category-add-modal .entartica-add-continue {
    min-height: 46px !important;
    padding: 11px 14px !important;
    font-size: 14px !important;
  }
}

/* Very narrow phones */
@media (max-width: 380px) {
  .entartica-add-selection-overlay {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .entartica-add-selection-overlay .entartica-add-selection-modal.entartica-category-add-modal {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .entartica-category-add-modal .entartica-category-addon-card {
    flex-basis: 150px !important;
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
  }
}
