.elementor-458378 .elementor-element.elementor-element-62adc4e > .elementor-container{min-height:500px;}.elementor-458378 .elementor-element.elementor-element-62adc4e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-458378 .elementor-element.elementor-element-62adc4e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-458378 .elementor-element.elementor-element-e2ab06d{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-c3adcd6{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-8ff6240{width:100%;max-width:100%;}.elementor-458378 .elementor-element.elementor-element-8ff6240 > .elementor-widget-container{padding:10px 0px 10px 0px;}.elementor-458378 .elementor-element.elementor-element-8ff6240 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:44px;}.elementor-458378 .elementor-element.elementor-element-7c42982{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-b364ded{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-958025c{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-5d0edfa{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-d37f830{width:auto;max-width:auto;}.elementor-458378 .elementor-element.elementor-element-d37f830 .elementor-button-content-wrapper{flex-direction:row;}.elementor-458378 .elementor-element.elementor-element-59e4649{padding:040px 150px 0px 150px;}.elementor-458378 .elementor-element.elementor-element-c6e9342 .elementor-heading-title{font-size:12px;}@media(min-width:768px){.elementor-458378 .elementor-element.elementor-element-8353a60{width:68%;}.elementor-458378 .elementor-element.elementor-element-3ae8c6d{width:32%;}}@media(max-width:767px){.elementor-458378 .elementor-element.elementor-element-59e4649{padding:020px 0px 0px 0px;}}/* Start custom CSS *//* =========================================================
   EXPLORE LIVERPOOL
   GEODIRECTORY SINGLE LISTING
   COMPLETE MASTER CSS
   13 SEPTEMBER 2026

   HERO
   BADGES
   CATEGORIES
   ACTION BAR
   ABOUT
   PHOTOS
   VIDEO
   PLAN YOUR VISIT
   SOCIALS
   MAP
   AMENITIES
   TABLET
   MOBILE
   ========================================================= */


/* =========================================================
   1. HERO
   ========================================================= */

.listing-hero {
    position: relative !important;
    width: 100% !important;
    min-height: 500px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;

    background-color: #071B4A !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}


.listing-hero > .elementor-container {
    position: relative !important;
    z-index: 2 !important;

    width: 100% !important;
    max-width: 1240px !important;
    min-height: 500px !important;

    margin: 0 auto !important;
    padding: 0 !important;
}


/* =========================================================
   2. HERO BOTTOM-LEFT FADE
   ========================================================= */

.listing-hero::before {
    content: "";
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;

    background:
        radial-gradient(
            ellipse 62% 70% at 0% 100%,
            rgba(7, 27, 74, 0.94) 0%,
            rgba(7, 27, 74, 0.84) 24%,
            rgba(7, 27, 74, 0.62) 43%,
            rgba(7, 27, 74, 0.35) 60%,
            rgba(7, 27, 74, 0.14) 74%,
            rgba(7, 27, 74, 0.03) 86%,
            rgba(7, 27, 74, 0) 100%
        ) !important;
}


/* =========================================================
   3. HERO CONTENT
   ========================================================= */

.listing-hero-content {
    position: relative !important;
    z-index: 3 !important;

    width: 100% !important;
    min-height: 500px !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-hero-content > .elementor-widget-wrap {
    position: absolute !important;

    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    display: block !important;

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

    margin: 0 !important;
    padding: 0 30px 52px 30px !important;
}


.listing-hero-content .elementor-widget:not(:last-child) {
    margin-bottom: 0 !important;
}


/* =========================================================
   4. FEATURED BADGE
   ========================================================= */

.listing-badge-featured {
    display: inline-block !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    vertical-align: middle !important;

    margin: 0 6px 11px 0 !important;
    padding: 0 !important;
}


.listing-badge-featured > .elementor-widget-container {
    display: inline-block !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-badge-featured .badge,
.listing-badge-featured a,
.listing-badge-featured span {
    display: inline-flex !important;

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

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    margin: 0 !important;
    padding: 5px 11px !important;

    background: #EC0A6A !important;
    color: #FFFFFF !important;

    border: none !important;
    border-radius: 50px !important;

    box-shadow: none !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    letter-spacing: 0.15px !important;

    text-decoration: none !important;
}


/* =========================================================
   5. VERIFIED BADGE
   ========================================================= */

.listing-badge-verified {
    display: inline-block !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    vertical-align: middle !important;

    margin: 0 0 11px 0 !important;
    padding: 0 !important;
}


.listing-badge-verified > .elementor-widget-container {
    display: inline-block !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-badge-verified .badge,
.listing-badge-verified a,
.listing-badge-verified span {
    display: inline-flex !important;

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

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    margin: 0 !important;
    padding: 5px 11px !important;

    background: #FFFFFF !important;
    color: #071B4A !important;

    border: none !important;
    border-radius: 50px !important;

    box-shadow: none !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    letter-spacing: 0.15px !important;

    text-decoration: none !important;
}


/* =========================================================
   6. HERO TITLE
   ========================================================= */

.listing-hero-title {
    display: block !important;
    clear: both !important;

    width: 100% !important;
    max-width: 700px !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-hero-title .elementor-heading-title,
.listing-hero-title h1 {
    margin: 0 !important;
    padding: 0 !important;

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 46px !important;
    font-weight: 900 !important;
    line-height: 1.04 !important;

    letter-spacing: -0.9px !important;

    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.20) !important;
}


/* =========================================================
   7. HERO ADDRESS
   ========================================================= */

.listing-hero-address {
    display: block !important;

    width: 100% !important;
    max-width: 620px !important;

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

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
}


.listing-hero-address,
.listing-hero-address *,
.listing-hero-address a {
    color: #FFFFFF !important;
}


.listing-hero-address a {
    text-decoration: none !important;
}


.listing-hero-address i {
    color: #EC0A6A !important;
    margin-right: 6px !important;
}


.listing-hero-address svg {
    fill: #EC0A6A !important;
    margin-right: 6px !important;
}


/* =========================================================
   8. CATEGORY PILLS
   ========================================================= */

.listing-category-badge {
    display: block !important;

    width: 100% !important;

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

    font-size: 0 !important;
    line-height: 0 !important;
}


.listing-category-badge .geodir_post_meta,
.listing-category-badge .geodir-post-meta,
.listing-category-badge .geodir-post-meta-container {
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;
    box-shadow: none !important;
}


.listing-category-badge a {
    display: inline-flex !important;

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

    width: auto !important;

    margin: 0 6px 4px 0 !important;
    padding: 6px 11px !important;

    background: rgba(255, 255, 255, 0.10) !important;

    border: 1px solid rgba(255, 255, 255, 0.38) !important;
    border-radius: 50px !important;

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    text-decoration: none !important;

    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
}


/* =========================================================
   9. QUICK ACTION BAR
   ========================================================= */

.listing-actions {
    position: relative !important;
    z-index: 5 !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #FFFFFF !important;

    border-bottom: 1px solid #E9EDF3 !important;

    box-shadow: 0 5px 18px rgba(7, 27, 74, 0.05) !important;
}


.listing-actions > .elementor-container {
    width: 100% !important;
    max-width: 1240px !important;

    margin: 0 auto !important;
}


.listing-actions-inner > .elementor-widget-wrap {
    display: flex !important;

    flex-direction: row !important;
    flex-wrap: wrap !important;

    justify-content: flex-start !important;
    align-items: center !important;

    gap: 9px !important;

    padding: 14px 30px !important;
}


/* =========================================================
   10. ACTION ITEMS
   ========================================================= */

.listing-action-item {
    flex: 0 0 auto !important;

    width: auto !important;
    max-width: max-content !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-action-item.elementor-widget:not(:last-child) {
    margin-bottom: 0 !important;
}


.listing-action-item > .elementor-widget-container {
    display: inline-flex !important;

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

    gap: 8px !important;

    width: auto !important;
    max-width: max-content !important;
    min-height: 42px !important;

    margin: 0 !important;
    padding: 9px 17px !important;

    background: #FFFFFF !important;

    border: 1px solid #D9E0EA !important;
    border-radius: 50px !important;

    box-shadow: 0 2px 6px rgba(7, 27, 74, 0.03) !important;

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


/* Remove inner GeoDirectory styling */

.listing-action-item .geodir_post_meta,
.listing-action-item .geodir-post-meta,
.listing-action-item .geodir-post-meta-container {
    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}


.listing-action-item a,
.listing-action-item .btn,
.listing-action-item button {
    display: inline !important;

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

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;
    border-radius: 0 !important;

    outline: none !important;
    box-shadow: none !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;

    text-decoration: none !important;
}


.listing-action-item a span {
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;
    box-shadow: none !important;
}


.listing-action-item i {
    flex: 0 0 auto !important;

    margin: 0 !important;

    color: #071B4A !important;

    font-size: 15px !important;
    line-height: 1 !important;
}


.listing-action-item svg {
    flex: 0 0 auto !important;

    width: 15px !important;
    height: 15px !important;

    margin: 0 !important;

    fill: #071B4A !important;
}


/* Custom visible labels */

.listing-action-website a,
.listing-action-phone a {
    font-size: 0 !important;
}


.listing-action-website a::after {
    content: "Visit Website";
}


.listing-action-phone a::after {
    content: "Call";
}


.listing-action-website a::after,
.listing-action-phone a::after {
    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}


/* Hover */

.listing-action-item > .elementor-widget-container:hover {
    background: #F7F9FC !important;

    border-color: #BFC9D8 !important;

    transform: translateY(-1px);
}


.listing-action-item > .elementor-widget-container:hover a,
.listing-action-item > .elementor-widget-container:hover i {
    color: #EC0A6A !important;
}


.listing-action-item > .elementor-widget-container:hover svg {
    fill: #EC0A6A !important;
}


.listing-action-website > .elementor-widget-container:hover a::after,
.listing-action-phone > .elementor-widget-container:hover a::after {
    color: #EC0A6A !important;
}


/* =========================================================
   11. SHARE BUTTON
   ========================================================= */

.listing-action-share {
    flex: 0 0 auto !important;

    width: auto !important;
    max-width: max-content !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-action-share > .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
}


.listing-action-share .elementor-button-wrapper {
    display: inline-flex !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-action-share .elementor-button {
    display: inline-flex !important;

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

    gap: 8px !important;

    width: auto !important;
    min-height: 42px !important;

    margin: 0 !important;
    padding: 9px 17px !important;

    background: #FFFFFF !important;

    border: 1px solid #D9E0EA !important;
    border-radius: 50px !important;

    box-shadow: 0 2px 6px rgba(7, 27, 74, 0.03) !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;

    text-decoration: none !important;
}


.listing-action-share .elementor-button-text,
.listing-action-share .elementor-button-icon,
.listing-action-share .elementor-button-icon i {
    color: #071B4A !important;
}


.listing-action-share .elementor-button-icon {
    display: inline-flex !important;

    align-items: center !important;

    margin: 0 !important;
}


.listing-action-share .elementor-button-icon svg {
    width: 15px !important;
    height: 15px !important;

    margin: 0 !important;

    fill: #071B4A !important;
}


.listing-action-share .elementor-button:hover {
    background: #F7F9FC !important;

    border-color: #BFC9D8 !important;

    transform: translateY(-1px);
}


.listing-action-share .elementor-button:hover .elementor-button-text,
.listing-action-share .elementor-button:hover .elementor-button-icon,
.listing-action-share .elementor-button:hover .elementor-button-icon i {
    color: #EC0A6A !important;
}


.listing-action-share .elementor-button:hover .elementor-button-icon svg {
    fill: #EC0A6A !important;
}


/* =========================================================
   12. MAIN CONTENT
   ========================================================= */

.listing-main-content {
    position: relative !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #FFFFFF !important;
}


.listing-main-content > .elementor-container {
    width: 100% !important;
    max-width: 1240px !important;

    margin: 0 auto !important;
    padding: 48px 30px 70px 30px !important;

    align-items: flex-start !important;
}


.listing-main-content > .elementor-container > .elementor-column:first-child {
    width: 68% !important;

    padding-right: 28px !important;
}


.listing-main-content > .elementor-container > .elementor-column:last-child {
    width: 32% !important;

    padding-left: 12px !important;
}


/* =========================================================
   13. ABOUT
   ========================================================= */

.listing-about-title {
    margin: 0 0 14px 0 !important;
}


.listing-about-title .elementor-heading-title,
.listing-about-title h2 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;

    letter-spacing: -0.5px !important;
}


.listing-about-content {
    margin: 0 !important;
}


.listing-about-content,
.listing-about-content p,
.listing-about-content li {
    color: #334155 !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
}


.listing-about-content p {
    margin: 0 0 16px 0 !important;
}


.listing-about-content p:last-child {
    margin-bottom: 0 !important;
}


.listing-about-content a {
    color: #EC0A6A !important;
    text-decoration: none !important;
}


/* =========================================================
   14. PHOTOS
   ========================================================= */

.listing-gallery-title {
    width: 100% !important;

    margin: 27px 0 12px 0 !important;
    padding: 0 !important;
}


.listing-gallery-title .elementor-heading-title,
.listing-gallery-title h3 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    letter-spacing: -0.3px !important;
}


.listing-gallery {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-gallery > .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
}


.listing-gallery ul.geodir-images {
    gap: 10px !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-gallery ul.geodir-images > li {
    overflow: hidden !important;

    margin: 0 !important;

    background: #F3F5F8 !important;

    border-radius: 10px !important;
}


.listing-gallery ul.geodir-images > li img,
.listing-gallery img {
    width: 100% !important;

    object-fit: cover !important;

    border-radius: 10px !important;

    transition: transform 0.25s ease !important;
}


.listing-gallery ul.geodir-images > li:hover img {
    transform: scale(1.025);
}


/* =========================================================
   15. VIDEO
   ========================================================= */

.listing-video-title {
    width: 100% !important;

    margin: 28px 0 12px 0 !important;
    padding: 0 !important;
}


.listing-video-title .elementor-heading-title,
.listing-video-title h3 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    letter-spacing: -0.3px !important;
}


.listing-video {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-video > .elementor-widget-container {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-video .ratio,
.listing-video .embed-responsive,
.listing-video .geodir-video,
.listing-video .geodir_post_meta,
.listing-video .geodir-post-meta,
.listing-video .geodir-post-meta-container {
    width: 100% !important;

    margin: 0 !important;

    overflow: hidden !important;

    background: #071B4A !important;

    border-radius: 12px !important;
}


.listing-video iframe,
.listing-video video {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    aspect-ratio: 16 / 9 !important;

    margin: 0 !important;

    background: #071B4A !important;

    border: none !important;
    border-radius: 12px !important;
}


/* =========================================================
   16. PLAN YOUR VISIT
   ========================================================= */

.listing-visit-card {
    position: relative !important;

    align-self: flex-start !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


.listing-visit-card > .elementor-widget-wrap {
    display: block !important;

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    padding: 24px !important;

    background: #FFFFFF !important;

    border: 1px solid #E8EDF4 !important;
    border-radius: 14px !important;

    box-shadow: 0 8px 26px rgba(7, 27, 74, 0.08) !important;
}


.listing-visit-title {
    margin: 0 0 18px 0 !important;
}


.listing-visit-title .elementor-heading-title,
.listing-visit-title h2 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    letter-spacing: -0.3px !important;
}


/* =========================================================
   17. VISIT ITEMS
   ========================================================= */

.listing-visit-item {
    width: 100% !important;

    margin: 0 0 11px 0 !important;
    padding: 0 !important;
}


.listing-visit-item,
.listing-visit-item a,
.listing-visit-item span,
.listing-visit-item div {
    color: #334155 !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}


.listing-visit-item a {
    color: #071B4A !important;
    text-decoration: none !important;
}


.listing-visit-item a:hover {
    color: #EC0A6A !important;
}


.listing-visit-item i {
    color: #071B4A !important;

    margin-right: 8px !important;

    font-size: 15px !important;
}


.listing-visit-item svg {
    width: 15px !important;
    height: 15px !important;

    margin-right: 8px !important;

    fill: #071B4A !important;
}


/* Business hours */

.listing-visit-item table {
    width: 100% !important;

    border-collapse: collapse !important;

    margin: 8px 0 6px 0 !important;
}


.listing-visit-item table td {
    padding: 3px 0 !important;

    border: none !important;

    color: #475569 !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}


.listing-visit-item table td:last-child {
    text-align: right !important;

    color: #071B4A !important;

    font-weight: 500 !important;
}


/* =========================================================
   18. PLAN VISIT DIRECTIONS BUTTON
   ========================================================= */

.listing-visit-directions {
    width: 100% !important;

    margin: 16px 0 0 0 !important;
    padding: 0 !important;
}


.listing-visit-directions a,
.listing-visit-directions .btn,
.listing-visit-directions button {
    display: inline-flex !important;

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

    gap: 8px !important;

    width: 100% !important;
    min-height: 44px !important;

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

    background: #EC0A6A !important;

    border: 1px solid #EC0A6A !important;
    border-radius: 8px !important;

    color: #FFFFFF !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    text-decoration: none !important;
}


.listing-visit-directions a *,
.listing-visit-directions .btn *,
.listing-visit-directions button * {
    color: #FFFFFF !important;
}


.listing-visit-directions a:hover,
.listing-visit-directions .btn:hover,
.listing-visit-directions button:hover {
    background: #D80860 !important;
    border-color: #D80860 !important;
}


/* =========================================================
   19. FOLLOW
   ========================================================= */

.listing-follow-title {
    width: 100% !important;

    margin: 22px 0 12px 0 !important;
    padding: 18px 0 0 0 !important;

    border-top: 1px solid #E8EDF4 !important;
}


.listing-follow-title .elementor-heading-title,
.listing-follow-title h3 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}


.listing-social-item {
    display: inline-block !important;

    width: auto !important;
    max-width: max-content !important;

    margin: 0 7px 8px 0 !important;
    padding: 0 !important;

    vertical-align: top !important;
}


.listing-social-item .geodir_post_meta,
.listing-social-item .geodir-post-meta,
.listing-social-item .geodir-post-meta-container,
.listing-social-item > .elementor-widget-container {
    display: inline-flex !important;

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

    width: 38px !important;
    height: 38px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #F7F9FC !important;

    border: 1px solid #DEE5EE !important;
    border-radius: 50% !important;
}


.listing-social-item a {
    display: inline-flex !important;

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

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 0 !important;

    text-decoration: none !important;
}


.listing-social-item i {
    margin: 0 !important;

    color: #071B4A !important;

    font-size: 16px !important;
}


.listing-social-item svg {
    width: 16px !important;
    height: 16px !important;

    margin: 0 !important;

    fill: #071B4A !important;
}


.listing-social-item:hover .geodir_post_meta,
.listing-social-item:hover .geodir-post-meta,
.listing-social-item:hover .geodir-post-meta-container,
.listing-social-item:hover > .elementor-widget-container {
    background: #FFFFFF !important;

    border-color: #EC0A6A !important;
}


.listing-social-item:hover i {
    color: #EC0A6A !important;
}


.listing-social-item:hover svg {
    fill: #EC0A6A !important;
}


/* =========================================================
   20. MAP
   ========================================================= */

.listing-visit-map {
    width: 100% !important;

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

    overflow: hidden !important;

    background: #F3F5F8 !important;

    border-radius: 12px !important;
}


.listing-visit-map > .elementor-widget-container,
.listing-visit-map .geodir-map-wrap,
.listing-visit-map .geodir-map-container {
    overflow: hidden !important;

    border-radius: 12px !important;
}


.listing-visit-map .geodir-map-wrap,
.listing-visit-map .geodir-map-container,
.listing-visit-map .geodir-map {
    min-height: 280px !important;
}


/* =========================================================
   21. AMENITIES SECTION
   ========================================================= */

.listing-amenities-section {
    position: relative !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #F7F9FC !important;

    border-top: 1px solid #E8EDF4 !important;
}


.listing-amenities-section > .elementor-container {
    width: 100% !important;
    max-width: 1240px !important;

    margin: 0 auto !important;
    padding: 46px 30px 54px 30px !important;
}


/* =========================================================
   22. AMENITIES TITLE
   ========================================================= */

.listing-amenities-title {
    width: 100% !important;

    margin: 0 0 17px 0 !important;
    padding: 0 !important;
}


.listing-amenities-title .elementor-heading-title,
.listing-amenities-title h2 {
    margin: 0 !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;

    letter-spacing: -0.4px !important;
}


/* =========================================================
   23. AMENITY TILES
   ========================================================= */

.listing-amenities {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    /*
       Hides GeoDirectory's commas and the word "and".
       Link text is restored below.
    */

    font-size: 0 !important;
    line-height: 0 !important;
}


.listing-amenities > .elementor-widget-container {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 0 !important;
    line-height: 0 !important;
}


.listing-amenities .geodir_post_meta,
.listing-amenities .geodir-post-meta,
.listing-amenities .geodir-post-meta-container {
    display: flex !important;

    flex-direction: row !important;
    flex-wrap: wrap !important;

    align-items: stretch !important;

    gap: 10px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;

    box-shadow: none !important;

    font-size: 0 !important;
    line-height: 0 !important;
}


/* Individual amenity */

.listing-amenities a {
    display: inline-flex !important;

    align-items: center !important;
    justify-content: flex-start !important;

    gap: 9px !important;

    width: auto !important;
    min-height: 44px !important;

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

    background: #FFFFFF !important;

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

    box-shadow:
        0
        2px
        7px
        rgba(7, 27, 74, 0.035) !important;

    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;

    text-decoration: none !important;

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


/*
   Restore font size if GeoDirectory puts
   the amenity title inside another span.
*/

.listing-amenities a * {
    color: #071B4A !important;

    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}


/* Pink tick */

.listing-amenities a::before {
    content: "✓";

    display: inline-flex !important;

    flex: 0 0 22px !important;

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

    width: 22px !important;
    height: 22px !important;

    background: rgba(236, 10, 106, 0.10) !important;

    border-radius: 50% !important;

    color: #EC0A6A !important;

    font-family: Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}


/* Amenity hover */

.listing-amenities a:hover {
    border-color: #EC0A6A !important;

    box-shadow:
        0
        5px
        14px
        rgba(7, 27, 74, 0.07) !important;

    transform: translateY(-1px);
}


/* =========================================================
   24. TABLET
   ========================================================= */

@media (max-width: 1024px) {

    /* HERO */

    .listing-hero,
    .listing-hero > .elementor-container,
    .listing-hero-content {
        min-height: 440px !important;
    }


    .listing-hero-content > .elementor-widget-wrap {
        padding: 0 28px 42px 28px !important;
    }


    .listing-hero::before {
        background:
            radial-gradient(
                ellipse 78% 72% at 0% 100%,
                rgba(7, 27, 74, 0.94) 0%,
                rgba(7, 27, 74, 0.80) 27%,
                rgba(7, 27, 74, 0.54) 48%,
                rgba(7, 27, 74, 0.26) 66%,
                rgba(7, 27, 74, 0.07) 82%,
                rgba(7, 27, 74, 0) 100%
            ) !important;
    }


    .listing-hero-title .elementor-heading-title,
    .listing-hero-title h1 {
        font-size: 40px !important;
    }


    /* ACTION BAR */

    .listing-actions-inner > .elementor-widget-wrap {
        padding: 13px 28px !important;
    }


    /* MAIN */

    .listing-main-content > .elementor-container {
        padding: 42px 28px 60px 28px !important;
    }


    .listing-main-content > .elementor-container > .elementor-column:first-child {
        width: 64% !important;

        padding-right: 20px !important;
    }


    .listing-main-content > .elementor-container > .elementor-column:last-child {
        width: 36% !important;

        padding-left: 8px !important;
    }


    .listing-about-title .elementor-heading-title,
    .listing-about-title h2 {
        font-size: 27px !important;
    }


    .listing-visit-card > .elementor-widget-wrap {
        padding: 21px !important;
    }


    /* AMENITIES */

    .listing-amenities-section > .elementor-container {
        padding: 40px 28px 48px 28px !important;
    }


    .listing-amenities-title .elementor-heading-title,
    .listing-amenities-title h2 {
        font-size: 26px !important;
    }

}


/* =========================================================
   25. MOBILE
   ========================================================= */

@media (max-width: 767px) {

    /* =====================================================
       HERO
       ===================================================== */

    .listing-hero,
    .listing-hero > .elementor-container,
    .listing-hero-content {
        min-height: 400px !important;
    }


    .listing-hero::before {
        background:
            radial-gradient(
                ellipse 125% 68% at 0% 100%,
                rgba(7, 27, 74, 0.94) 0%,
                rgba(7, 27, 74, 0.83) 30%,
                rgba(7, 27, 74, 0.56) 52%,
                rgba(7, 27, 74, 0.27) 69%,
                rgba(7, 27, 74, 0.07) 84%,
                rgba(7, 27, 74, 0) 100%
            ) !important;
    }


    .listing-hero-content > .elementor-widget-wrap {
        padding: 0 20px 25px 20px !important;
    }


    .listing-badge-featured {
        margin-right: 5px !important;
        margin-bottom: 9px !important;
    }


    .listing-badge-verified {
        margin-bottom: 9px !important;
    }


    .listing-badge-featured .badge,
    .listing-badge-featured a,
    .listing-badge-featured span,
    .listing-badge-verified .badge,
    .listing-badge-verified a,
    .listing-badge-verified span {
        padding: 5px 9px !important;

        font-size: 9px !important;
    }


    .listing-hero-title .elementor-heading-title,
    .listing-hero-title h1 {
        font-size: 31px !important;

        line-height: 1.07 !important;
    }


    .listing-hero-address {
        margin-top: 8px !important;

        font-size: 12.5px !important;
    }


    .listing-category-badge {
        margin-top: 9px !important;
    }


    .listing-category-badge a {
        padding: 5px 9px !important;

        font-size: 9px !important;
    }


    /* =====================================================
       ACTION BAR
       ===================================================== */

    .listing-actions-inner > .elementor-widget-wrap {
        flex-wrap: nowrap !important;

        gap: 7px !important;

        overflow-x: auto !important;

        padding: 12px 20px !important;

        scrollbar-width: none !important;

        -webkit-overflow-scrolling: touch;
    }


    .listing-actions-inner > .elementor-widget-wrap::-webkit-scrollbar {
        display: none !important;
    }


    .listing-action-item,
    .listing-action-share {
        flex: 0 0 auto !important;
    }


    .listing-action-item > .elementor-widget-container,
    .listing-action-share .elementor-button {
        min-height: 39px !important;

        padding: 8px 14px !important;

        white-space: nowrap !important;
    }


    .listing-action-item a,
    .listing-action-item .btn,
    .listing-action-item button,
    .listing-action-website a::after,
    .listing-action-phone a::after,
    .listing-action-share .elementor-button-text {
        font-size: 11px !important;
    }


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

    .listing-main-content > .elementor-container {
        display: block !important;

        padding: 34px 20px 48px 20px !important;
    }


    .listing-main-content > .elementor-container > .elementor-column:first-child,
    .listing-main-content > .elementor-container > .elementor-column:last-child {
        width: 100% !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
    }


    .listing-main-content > .elementor-container > .elementor-column:first-child {
        margin-bottom: 30px !important;
    }


    .listing-about-title .elementor-heading-title,
    .listing-about-title h2 {
        font-size: 25px !important;
    }


    .listing-about-content,
    .listing-about-content p,
    .listing-about-content li {
        font-size: 14px !important;

        line-height: 1.7 !important;
    }


    .listing-gallery-title .elementor-heading-title,
    .listing-gallery-title h3,
    .listing-video-title .elementor-heading-title,
    .listing-video-title h3 {
        font-size: 19px !important;
    }


    .listing-gallery ul.geodir-images {
        gap: 7px !important;
    }


    .listing-gallery ul.geodir-images > li,
    .listing-gallery ul.geodir-images > li img,
    .listing-gallery img {
        border-radius: 8px !important;
    }


    .listing-video iframe,
    .listing-video video {
        border-radius: 9px !important;
    }


    /* VISIT CARD */

    .listing-visit-card {
        align-self: auto !important;
    }


    .listing-visit-card > .elementor-widget-wrap {
        height: auto !important;
        min-height: 0 !important;

        padding: 20px 18px !important;

        border-radius: 12px !important;
    }


    .listing-visit-title .elementor-heading-title,
    .listing-visit-title h2 {
        font-size: 22px !important;
    }


    .listing-follow-title .elementor-heading-title,
    .listing-follow-title h3 {
        font-size: 15px !important;
    }


    .listing-social-item .geodir_post_meta,
    .listing-social-item .geodir-post-meta,
    .listing-social-item .geodir-post-meta-container,
    .listing-social-item > .elementor-widget-container {
        width: 36px !important;
        height: 36px !important;
    }


    .listing-visit-map .geodir-map-wrap,
    .listing-visit-map .geodir-map-container,
    .listing-visit-map .geodir-map {
        min-height: 240px !important;
    }


    /* =====================================================
       AMENITIES
       ===================================================== */

    .listing-amenities-section > .elementor-container {
        padding: 34px 20px 42px 20px !important;
    }


    .listing-amenities-title {
        margin-bottom: 14px !important;
    }


    .listing-amenities-title .elementor-heading-title,
    .listing-amenities-title h2 {
        font-size: 15pxpx !important;
    }


    .listing-amenities .geodir_post_meta,
    .listing-amenities .geodir-post-meta,
    .listing-amenities .geodir-post-meta-container {
        gap: 8px !important;
    }


    /*
       Two neat amenity tiles per row.
    */

    .listing-amenities a {
        width: calc(50% - 4px) !important;

        min-height: 48px !important;

        padding:
            9px
            10px !important;

        gap: 7px !important;

        font-size: 11px !important;
    }


    .listing-amenities a * {
        font-size: 11px !important;
    }


    .listing-amenities a::before {
        flex-basis: 20px !important;

        width: 20px !important;
        height: 20px !important;

        font-size: 11px !important;
    }

}/* End custom CSS */