section[data-name="elf_location-page"] {
    position: relative;
    width: 100%;
}

section[data-name="elf_location-page"] * {
    box-sizing: border-box;
}


/* =========================================================
   INNER
========================================================= */

section[data-name="elf_location-page"] .elf-location-page__inner {
    position: relative;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px 70px 30px;
}

section[data-name="elf_location-page"] .elf-location-page__stage {
    position: relative;
    width: 100%;
}


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

section[data-name="elf_location-page"] .elf-location-page__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
    transition: opacity .3s ease, transform .3s ease;
}


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

section[data-name="elf_location-page"] .elf-location-card {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    height: 230px;
    margin: 0;
    overflow: hidden;
    border-radius: 0 20px 0 20px;
    opacity: 0;
    font-family: 'Noto Sans Tamil UI', sans-serif;
    transform: translateY(24px);
    transition:
        opacity .55s ease,
        transform .55s cubic-bezier(.22, 1, .36, 1);
}

section[data-name="elf_location-page"] .elf-location-card.is-visible {
    opacity: 1;
    transform: translateY(0);
}


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

section[data-name="elf_location-page"] .elf-location-card__image {
    flex: 0 0 50%;
    width: 50%;
    min-width: 0;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}


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

section[data-name="elf_location-page"] .elf-location-card__content {
    display: flex;
    flex: 1 1 50%;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    min-width: 0;
    height: 100%;
    padding: 20px 30px;
    background-image: url('/wp-content/uploads/2025/07/freepik__interior-of-a-restaurant-with-a-round-wooden-table__92903-2.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}


/* =========================================================
   TITLE
========================================================= */

section[data-name="elf_location-page"] .elf-location-card__title {
    margin: 0 0 10px;
    color: #000;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}


/* =========================================================
   DESCRIPTION
========================================================= */

section[data-name="elf_location-page"] .elf-location-card__desc {
    color: #000;
    font-size: 16px;
    line-height: 1.35;
}

section[data-name="elf_location-page"] .elf-location-card__map-link {
    color: #000;
    text-decoration: none;
    transition: color .25s ease;
}

section[data-name="elf_location-page"] .elf-location-card__map-link:hover {
    color: #e7382f;
}


/* =========================================================
   SIDE ARROWS
========================================================= */

section[data-name="elf_location-page"] .elf-location-page__arrow {
    position: absolute;
    top: 50%;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(0, 0, 0, .04);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .13);
    color: #e7382f;
    text-decoration: none;
    transform: translateY(-50%);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        opacity .25s ease,
        background-color .25s ease,
        color .25s ease;
}

section[data-name="elf_location-page"] .elf-location-page__arrow--prev {
    left: -62px;
}

section[data-name="elf_location-page"] .elf-location-page__arrow--next {
    right: -62px;
}

section[data-name="elf_location-page"] .elf-location-page__arrow svg {
    display: block;
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

section[data-name="elf_location-page"] .elf-location-page__arrow:not(.is-disabled):hover {
    background: #e7382f;
    box-shadow: 0 7px 22px rgba(0, 0, 0, .18);
    color: #fff;
    transform: translateY(-50%) scale(1.07);
}

section[data-name="elf_location-page"] .elf-location-page__arrow:not(.is-disabled):active {
    transform: translateY(-50%) scale(.95);
}

section[data-name="elf_location-page"] .elf-location-page__arrow.is-disabled {
    cursor: default;
    opacity: .22;
}


/* =========================================================
   PAGINATION WRAPPER
========================================================= */

section[data-name="elf_location-page"] .wrapper_pagination {
    display: block;
    clear: both;
    width: 100%;
    margin-top: 26px;
}


/* =========================================================
   PAGINATION
========================================================= */

section[data-name="elf_location-page"] ul.page-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

section[data-name="elf_location-page"] ul.page-pagination > li {
    display: block;
    margin: 0;
    padding: 0;
}

section[data-name="elf_location-page"] ul.page-pagination .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 42px;
    padding: 0 13px;
    border: 0;
    border-radius: 5px;
    background: #d9d9d9;
    color: #000;
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition:
        background-color .25s ease,
        color .25s ease,
        transform .25s ease;
}


/* HOVER */

section[data-name="elf_location-page"] ul.page-pagination a.page-link:hover {
    background: #43a5a6;
    color: #fff;
    transform: translateY(-2px);
}


/* CURRENT PAGE */

section[data-name="elf_location-page"] ul.page-pagination > li.active .page-link {
    background: #43a5a6;
    color: #fff;
    cursor: default;
}


/* PREV / NEXT */

section[data-name="elf_location-page"] ul.page-pagination > li.page-item--prev .page-link,
section[data-name="elf_location-page"] ul.page-pagination > li.page-item--next .page-link {
    min-width: 68px;
}


/* DISABLED */

section[data-name="elf_location-page"] ul.page-pagination > li.disabled .page-link {
    background: #eee;
    color: #aaa;
    cursor: default;
    pointer-events: none;
}


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

section[data-name="elf_location-page"] .elf-location-page__empty {
    grid-column: 1 / -1;
    padding: 40px 20px;
    color: #666;
    text-align: center;
}


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

section[data-name="elf_location-page"].is-loading .elf-location-page__grid {
    opacity: .15;
    transform: translateY(10px);
    pointer-events: none;
}

section[data-name="elf_location-page"].is-loading .wrapper_pagination {
    opacity: .45;
    pointer-events: none;
}

section[data-name="elf_location-page"].is-loading .elf-location-page__arrow {
    pointer-events: none;
}


/* =========================================================
   1200
========================================================= */

@media (max-width: 1200px) {

    section[data-name="elf_location-page"] .elf-location-page__inner {
        padding-right: 60px;
        padding-left: 60px;
    }

    section[data-name="elf_location-page"] .elf-location-card {
        height: 215px;
    }

    section[data-name="elf_location-page"] .elf-location-card__content {
        padding: 18px 22px;
    }

    section[data-name="elf_location-page"] .elf-location-card__title {
        font-size: 22px;
    }

}


/* =========================================================
   1024
========================================================= */

@media (max-width: 1024px) {

    section[data-name="elf_location-page"] .elf-location-page__grid {
        gap: 16px;
    }

    section[data-name="elf_location-page"] .elf-location-card {
        height: 205px;
    }

    section[data-name="elf_location-page"] .elf-location-card__content {
        padding: 15px 18px;
    }

    section[data-name="elf_location-page"] .elf-location-card__title {
        font-size: 20px;
    }

    section[data-name="elf_location-page"] .elf-location-card__desc {
        font-size: 15px;
    }

}


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

@media (max-width: 767px) {

    section[data-name="elf_location-page"] .elf-location-page__inner {
        padding: 15px 42px 25px;
    }

    section[data-name="elf_location-page"] .elf-location-page__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    section[data-name="elf_location-page"] .elf-location-card {
        flex-direction: column;
        height: auto;
        transform: translateY(18px);
    }

    section[data-name="elf_location-page"] .elf-location-card.is-visible {
        transform: translateY(0);
    }

    section[data-name="elf_location-page"] .elf-location-card__image {
        flex: none;
        width: 100%;
        height: 180px;
    }

    section[data-name="elf_location-page"] .elf-location-card__content {
        flex: none;
        width: 100%;
        height: auto;
        min-height: 105px;
        padding: 11px 20px 15px;
    }

    section[data-name="elf_location-page"] .elf-location-card__title {
        margin-bottom: 6px;
        font-size: 21px;
    }

    section[data-name="elf_location-page"] .elf-location-card__desc {
        font-size: 15px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow {
        width: 38px;
        height: 38px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow--prev {
        left: -39px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow--next {
        right: -39px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow svg {
        width: 21px;
        height: 21px;
    }

    section[data-name="elf_location-page"] ul.page-pagination {
        gap: 6px;
    }

    section[data-name="elf_location-page"] ul.page-pagination .page-link {
        min-width: 35px;
        height: 38px;
        padding: 0 10px;
        font-size: 15px;
    }

    section[data-name="elf_location-page"] ul.page-pagination > li.page-item--prev .page-link,
    section[data-name="elf_location-page"] ul.page-pagination > li.page-item--next .page-link {
        min-width: 58px;
    }

}


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

@media (max-width: 480px) {

    section[data-name="elf_location-page"] .elf-location-page__inner {
        padding-right: 35px;
        padding-left: 35px;
    }

    section[data-name="elf_location-page"] .elf-location-card__image {
        height: 165px;
    }

    section[data-name="elf_location-page"] .elf-location-card__content {
        padding: 10px 16px 14px;
    }

    section[data-name="elf_location-page"] .elf-location-card__title {
        font-size: 20px;
    }

    section[data-name="elf_location-page"] .elf-location-card__desc {
        font-size: 14px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow {
        width: 34px;
        height: 34px;
		display:none;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow--prev {
        left: -33px;
    }

    section[data-name="elf_location-page"] .elf-location-page__arrow--next {
        right: -33px;
    }

    section[data-name="elf_location-page"] ul.page-pagination .page-link {
        min-width: 32px;
        height: 36px;
        padding: 0 8px;
        font-size: 14px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    section[data-name="elf_location-page"] .elf-location-card,
    section[data-name="elf_location-page"] .elf-location-page__grid,
    section[data-name="elf_location-page"] .elf-location-page__arrow,
    section[data-name="elf_location-page"] ul.page-pagination .page-link {
        transition: none;
    }

}