.elementor-21014 .elementor-element.elementor-element-d062a31{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:15px 0px;--row-gap:15px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21014 .elementor-element.elementor-element-6f69b23 > .elementor-widget-container{border-style:solid;border-width:0px 0px 1px 0px;border-color:var( --e-global-color-b53148d );border-radius:0px 0px 0px 0px;}.elementor-21014 .elementor-element.elementor-element-6f69b23 .elementor-heading-title{line-height:1.5em;}.elementor-21014 .elementor-element.elementor-element-5ddf273{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-21014 .elementor-element.elementor-element-5ddf273 > .elementor-widget-container{padding:20px 0px 0px 0px;}.elementor-21014 .elementor-element.elementor-element-5ddf273.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-21014 .elementor-element.elementor-element-b5ce6a5{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-21014 .elementor-element.elementor-element-b5ce6a5 > .elementor-widget-container{padding:20px 0px 0px 0px;}.elementor-21014 .elementor-element.elementor-element-b5ce6a5.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-21014 .elementor-element.elementor-element-06e0feb{font-size:12px;}.elementor-21014 .elementor-element.elementor-element-7688b69{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-21014 .elementor-element.elementor-element-7688b69 > .elementor-widget-container{padding:20px 0px 0px 0px;}.elementor-21014 .elementor-element.elementor-element-7688b69.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-21014 .elementor-element.elementor-element-b0d54c7{font-size:12px;}/* Start custom CSS *//* =========================================
   CAMPGROUND TABLES
   DESKTOP + MOBILE RESPONSIVE LAYOUT
   ========================================= */

/* =========================================
   DESKTOP TABLES
   ========================================= */

.campground-table {
    width: 100%;
    border-collapse: collapse;
}

/* Alternating row colors */
.campground-table tbody tr:nth-child(odd),
.campground-table tbody tr:nth-child(odd):hover,
.campground-table tbody tr:nth-child(odd):active,
.campground-table tbody tr:nth-child(odd):focus-within {
    background-color: #ffffff !important;
}

.campground-table tbody tr:nth-child(even),
.campground-table tbody tr:nth-child(even):hover,
.campground-table tbody tr:nth-child(even):active,
.campground-table tbody tr:nth-child(even):focus-within {
    background-color: #f2f2f2 !important;
}

/* Prevent cell rollover effects */
.campground-table tbody td,
.campground-table tbody tr:hover td,
.campground-table tbody tr:active td,
.campground-table tbody tr:focus-within td {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* Prevent row animation or movement */
.campground-table tbody tr {
    transform: none !important;
    transition: none !important;
    animation: none !important;
}


/* =========================================
   MOBILE - STACKED CAMPGROUND CARDS
   ========================================= */

@media (max-width: 767px) {

    /* Convert tables into stacked layouts */
    .campground-table,
    .campground-table tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    /* Hide desktop column headings */
    .campground-table thead {
        display: none !important;
    }

    /* Individual campground cards */
    .campground-table tbody tr {
        display: block !important;

        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;

        margin: 0 0 20px 0 !important;
        padding: 18px !important;

        border: 1px solid #dddddd !important;
        border-radius: 6px !important;

        box-sizing: border-box !important;

        box-shadow: none !important;
        transform: none !important;
        transition: none !important;
        animation: none !important;
    }

    /* Remove touch and hover movement */
    .campground-table tbody tr:hover,
    .campground-table tbody tr:active,
    .campground-table tbody tr:focus-within {
        transform: none !important;
        box-shadow: none !important;
        transition: none !important;
        animation: none !important;
    }

    /* Stack table cells vertically */
    .campground-table tbody td {
        display: block !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;

        padding: 0 !important;
        margin: 0 0 14px 0 !important;

        border: none !important;
        background: transparent !important;

        box-sizing: border-box !important;

        white-space: normal !important;
        overflow-wrap: anywhere;
    }

    /* Campground name */
    .campground-table tbody td:first-child {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;

        padding-bottom: 12px !important;
        margin-bottom: 14px !important;

        border-bottom: 1px solid #dddddd !important;
    }

    /* Location label */
    .campground-table tbody td:nth-child(2)::before {
        content: "LOCATION";
        display: block;

        font-size: 12px;
        font-weight: 700;
        letter-spacing: 1px;

        margin-bottom: 5px;
        color: #555555;
    }

    /* Facilities label */
    .campground-table tbody td:nth-child(3)::before {
        content: "ATTRACTIONS / FACILITIES";
        display: block;

        font-size: 12px;
        font-weight: 700;
        letter-spacing: 1px;

        margin-bottom: 5px;
        color: #555555;
    }

    /* Remove bottom margin from last cell */
    .campground-table tbody td:last-child {
        margin-bottom: 0 !important;
    }

    /* Remove extra paragraph margins */
    .campground-table tbody td p {
        margin: 0 !important;
    }

    /* Keep long links from overflowing */
    .campground-table tbody td a {
        overflow-wrap: anywhere;
    }
}/* End custom CSS */