/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */



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

.tour-hero-slider {
    position: relative;
    width: 100%;
    height: 700px;
    overflow: hidden;
    isolation: isolate;
    background: #111;
}

#we-share-listing ul.elementor-icon-list-items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 20px;
    text-align: left;
}

#we-share-listing ul.elementor-icon-list-items li {
	
	border:1px solid #fff;
	border-radius:30px;
	padding:10px 16px;
}

.blog-page-blogs-listing .hfe-post-image a img, .recent-blogs article.hfe-post-card .hfe-post-image a img{
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: inline;
}
/* CONTACT FORM */

.contact-form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.contact-form li {
    list-style: none;
}

.contact-form .half {
    width: calc(50% - 10px);
}

.contact-form .full {
    width: 100%;
}
ul.contact-form {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

ul.contact-form li label {
    color: #fff;
    font-family: "El Messiri", Sans-serif;
    font-size: 18px;
    line-height: 30px;
}


.contact-form textarea {
    height: 180px;
    resize: none;
}
.contact-form input, .contact-form textarea {
    width: 100%;
    padding: 16px 20px;
    background: #ffffff0d;
    border: 1px solid #353535;
    border-radius: 12px;
    outline: none;
    font-size: 15px;
    color: #dadada;
    transition: .3s;
    box-sizing: border-box;
	font-family:"Karla", Sans-serif;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
    color: #fff !important;
    opacity: 1 !important;
}
.contact-form input:focus,
.contact-form textarea:focus {
    border-color: #FFF;
    box-shadow: 0 0 0 4px rgba(200,182,255,.18);
}


.contact-form .submit {
    margin-top: 10px;
}

.contact-form input[type="submit"] {
        background-color: #ffffff;
    font-family: "Karla", Sans-serif;
    font-size: 16px;
    font-weight: 500;
    color:#000;
    padding: 14px 36px 14px 36px;
    transition: .3s;
    border-radius:30px;
		border:1px solid #fff;

	
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{
	color:#fff;
}
.contact-form input[type="submit"]:hover {
    background: #000;
    transform: translateY(-2px);
	color:#fff;
	border:1px solid #fff;
}

.wpcf7-spinner {
    margin-top: 15px;
}

.wpcf7-not-valid-tip {
    margin-top: 6px;
    font-size: 13px;
}

[tabindex]:not([tabindex="-1"]):focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    box-shadow: none;
    outline: none;
    outline-offset: none;
}

/* Slides */

.tour-hero-slider .tour-slide {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;

    opacity: 0;
    visibility: hidden;

    z-index: 1;

    transition:
        opacity 1.4s ease,
        visibility 1.4s ease;
}


/* Active Slide */

.tour-hero-slider .tour-slide.is-active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}


/* Elementor Image */

.tour-hero-slider .tour-slide > .elementor-element,
.tour-hero-slider .tour-slide .elementor-widget-image,
.tour-hero-slider .tour-slide .elementor-widget-container {
    width: 100%;
    height: 100%;
}


/* Slider Image */

.tour-hero-slider .tour-slide img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transform: scale(1);
    transform-origin: center center;

    will-change: transform;

    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;

    transition: transform 9s linear;
}


/* Slow Zoom */

.tour-hero-slider .tour-slide.is-active img {
    transform: scale(1.10);
}


/* Dark Overlay */

.tour-hero-slider::after {
    content: "";

    position: absolute;
    inset: 0;

    background: rgb(0 0 0 / 45%);

    z-index: 5;

    pointer-events: none;
}


/* Hero Content */

.tour-hero-content {
    position: absolute !important;

    left: 0;
    right: 0;
    top: 50%;

    transform: translateY(-50%);

    z-index: 10;

    pointer-events: none;
}


/* Hero Content Links */

.tour-hero-content a,
.tour-hero-content button {
    pointer-events: auto;
}


/* Glass Button */

.tour-glass-btn {
    background: rgba(255, 255, 255, 0.12) !important;

    border: 1px solid rgba(255, 255, 255, 0.30) !important;

    backdrop-filter: blur(15px) saturate(120%);
    -webkit-backdrop-filter: blur(15px) saturate(120%);

    border-radius: 50px;

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);

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


/* Glass Button Hover */

.tour-glass-btn:hover {
    background: rgba(255, 255, 255, 0.20) !important;

    border-color: rgba(255, 255, 255, 0.45) !important;

    transform: translateY(-1px);
}


/* Header */

header#masthead .elementor {
    position: absolute;

    display: flex;

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

    width: 100%;
}


/* Optional Header Class */

.tour-header {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;

    z-index: 100;
}


/* Menu Bar */

.menu-bar-nav ul.hfe-nav-menu {
    border: 1px solid #fff;

    padding: 5px 6px;

    display: flex;

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

    border-radius: 36px;
}


/* Current Menu Item */

header#masthead ul.hfe-nav-menu > li.current-menu-item > a,
header#masthead ul.hfe-nav-menu > li.current-menu-parent > a,
header#masthead ul.hfe-nav-menu > li.current-menu-ancestor > a {
    background: rgba(255, 255, 255, 0.12);

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

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    border-radius: 50px;

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;

    padding: 10px 29px;
}


[tabindex]:not([tabindex="-1"]):focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    box-shadow: inherit;
    outline: 2px solid #000;
    outline-offset: 2px;
}

/* Location Image */

.image-box-location .elementor-image-box-wrapper figure.elementor-image-box-img {
    filter:
        invert(100%)
        sepia(100%)
        saturate(0%)
        hue-rotate(322deg)
        brightness(103%)
        contrast(101%);

    rotate: 332deg;
}

.location-item {
    flex: 1;
}


/* Blog Section  */

div#blog-recent-one .hfe-post-image img {
    width: 100%;
    object-fit: cover;
    height: 230px;
}


/* =========================================================
   LOCATION SECTION
========================================================= */

/* Main full-width section */

.location-section {
    position: relative !important;
    isolation: isolate;

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

    width: 100vw !important;
    max-width: 100vw !important;
    height: 750px !important;
    min-height: 750px !important;

    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

    padding: 0 !important;
    gap: 0 !important;

    overflow: hidden !important;
    background: #000;
}


/* Each destination column */

.location-section > .location-content {
    position: static !important;
    z-index: 2;

    display: flex !important;
    flex: 1 1 0 !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: none !important;

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

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

    overflow: visible !important;

    border-right: 1px solid rgba(255, 255, 255, 0.3);
    cursor: pointer;
}


.location-section > .location-content:last-child {
    border-right: 0;
}


/* Every card image covers the complete section */

.location-section
> .location-content
> .location-image {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;

    display: block !important;

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

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

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    transition:
        opacity 0.6s ease,
        visibility 0.6s ease;
}


/* Show first image by default */

.location-section
> .location-content:first-of-type
> .location-image {
    opacity: 1;
    visibility: visible;
}


/* Show hovered card image full width */

.location-section
> .location-content:hover
> .location-image {
    z-index: 1 !important;
    opacity: 1;
    visibility: visible;
}


/* Elementor image widgets */

.location-image .elementor-widget-image,
.location-image .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;

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


/* Actual image */

.location-image img {
    display: block !important;

    width: 100% !important;
    max-width: none !important;
    height: 100% !important;

    object-fit: cover !important;
    object-position: center center !important;

    transform: scale(1.03);
    transition: transform 1s ease !important;
}


/* Slight zoom-out on hover */

.location-section
> .location-content:hover
> .location-image
img {
    transform: scale(1);
}


/* Text/content container */

.location-section
> .location-content
> .location-info {
    position: relative !important;
    z-index: 5 !important;

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

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

    padding: 55px 15px 25px !important;
    margin: 0 !important;

    background: transparent !important;
    text-align: center;

    pointer-events: none;
}


/* Keep all Elementor text above images */

.location-info .elementor-widget,
.location-info .elementor-widget-container,
.location-info .elementor-image-box-wrapper,
.location-info .elementor-image-box-content {
    position: relative;
    z-index: 6;

    width: 100%;
}


/* Dark top box on hovered column */

.location-section
> .location-content
> .location-info::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: -1;

    height: 0;
    background: #080503;

    transition: height 0.5s ease;
}


.location-section
> .location-content:hover
> .location-info::before {
    height: 140px;
}


/*  footer  */


           .footer-categories ul li {
                width: 100%;
                box-sizing: border-box;
                margin-bottom: 10px;
            }

          .footer-categories ul {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                padding: 0;
                margin: 0;
                list-style: none;
            }

            .footer-categories ul::before {
                display: none;
            }


.menu-item a.hfe-sub-menu-item {
    padding-left: calc(24px + 0px)!important;
    padding-right: 0px;
    line-height: 19px;
}

.copyright-text {
    text-align: center;
    color: #fff;
    font-family: 'Karla';
    font-size: 15px;
    padding-top: 11px;
}

div#contact-us-left-side .elementor-image-box-content {
    display: flex;
    flex-direction: column-reverse;
}

/* BLOG HEADER */

.blog_single_header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    width: calc(100% - 0px);
    /* margin: 20px auto; */
    padding: 220px 30px;
    overflow: hidden;
    background-color: #000;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: border-box;
}

.blog_single_header::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.5);
    z-index: 1;
}

.blog_single_header h1,
h1.entry-title {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #fff;
    text-align: center;
    font-family: 'El Messiri';
    font-size: 48px !important;
    font-weight: 600;
    line-height: 58px;
    text-transform: capitalize;
}

/* BLOG CONTENT */

body.single main#content {
    width: 100%;
    max-width: 1380px;
}

body.single main#content .page-content img {
    height: 360px;
    object-fit: cover;
    width: 100%;
    margin: 20px 0px;
}

.blog_container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto 40px ;
    padding: 80px 0;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
    line-height: 28px;
    background: #fff;
    padding: 30px;
    border-radius: 20px;
}

.blog_container h2 {
    font-size: 46px !important;
    font-family: 'El Messiri';
    font-weight: 600;
}

.blog_container h3 {
    font-size: 30px !important;
    font-family: 'El Messiri';
    font-weight: 600;
    margin-bottom: 9px;
}

.blog_container h4 {
    font-size: 24px!important;
    font-family: 'El Messiri';
    font-weight: 600;
}

.blog_container h5 {
    font-size: 34px !important;
    font-family: 'El Messiri';
    font-weight: 600;
}

.blog_container h6 {
    font-size: 36px !important;
    font-family: 'El Messiri';
    font-weight: 600;
}

.blog_container p,

.blog_container ul li, .blog_container ol li{
	margin-bottom: 12px;
}
.blog_container a {
    color: #ba8d53;
    text-decoration: none;
}

.blog_container a:hover {
    color: #10306a;
}

.blog_container img {
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
}

.blog_container .page-content ul {
    margin-bottom: 20px!important;
}

.blog_container h2, .page-content .entry-title a {
    font-size: 30px !important;
    font-family: 'El Messiri';
    font-weight: 600;
	line-height:36px;
}

div#blog-page-inside .hfe-post-image img {
    width: 100%;
    height: 280px;
    object-fit: cover;
}


.category-banner {
    width: 100%;
    max-width: 100%;
    background: #000000;
    padding: 180px 0px;
}


body.archive.category main#content {
    width: 100%;
    max-width: 1320px;
    padding: 50px 0px;
}

body.archive.category main#content {
    width: 100%;
    max-width: 1230px;
    padding: 50px 0px;
}

.category-banner h1 {
    margin: 0;
    color: #fff;
    font-size: 60px;
    font-weight: 600;
    text-align: center;
    font-family: 'El Messiri';
}


/* Archive Grid */
body.archive.category .page-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Blog Card */
.page-content .post {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Featured Image */
.page-content .post-image {
    width: 100%;
}

.page-content .post-image img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

/* Content */
.page-content .post-content {
    padding: 20px;
}

.page-content .entry-title {
    margin: 0 0 15px;
    font-size: 24px;
    line-height: 24px;
}

.page-content .entry-title a {
    text-decoration: none;
    color: #111;
}

.page-content .read-more {
    display: inline-block;
    margin-top: 15px;
    text-decoration: none;
    font-weight: 600;
}

/* Pagination */
.pagination {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

.page-content .post-excerpt, .blog_container p, .blog_container ul li, .blog_container ol li
{
	font-family: "Karla", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 27px;
    color: #0C0A0A;
}

.page-content .read-more{
	
	font-family: "Karla", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 27px;
    color: #0C0A0A;
}

/* =========================================================
   RESPONSIVE CSS
   KEEP ALL MEDIA QUERIES AT THE END
========================================================= */
/* Tablet and mobile */


/* Tablet */

@media (max-width: 1024px) {

    .location-section {
        height: 620px !important;
        min-height: 620px !important;
    }

    .location-section
    > .location-content
    > .location-info {
        padding: 45px 10px 20px !important;
    }
	
	header#masthead ul li.menu-item.current-menu-item a {
    background: inherit;
    border: inherit;
    color: #000;
    backdrop-filter: inherit;
    -webkit-backdrop-filter: blur(12px);
    border-radius: inherit;
    box-shadow: inherit;
    transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease;
    padding: 16px 22px !important;
}
	
	div#destinations-to-explore-section .elementor-element {
    overflow: hidden;
    width: 100%;
}
 
	.menu-item a.hfe-sub-menu-item {
    padding-left: calc(22px + 6px)!important;
    padding-right: 0px;
}
	

}

@media(max-width:991px ){
	
	
#we-share-listing ul.elementor-icon-list-items {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 30px;
    row-gap: 20px;
    text-align: left;
}
	
	body.archive.category .page-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 10px;
}
}
/* Mobile */

@media (max-width: 767px) {
	
	body.archive.category .page-content {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
    padding: 10px;
}
	
	
	.category-banner {
    padding: 150px 0px 100px 0px;
}
	.category-banner h1{
		font-size:36px;
	}
	.blog_single_header{
		padding:150px 0px 100px 0px;
	}
	.blog_container{
		padding:30px 0px;
	}
	.blog_single_header h1, h1.entry-title {
    font-size: 30px !important;
    font-weight: 600;
    line-height: 36px;
}

    .tour-hero-slider {
        height: 600px;
    }

    .tour-hero-slider .tour-slide img {
        transform: scale(1);
    }

    .tour-hero-slider .tour-slide.is-active img {
        transform: scale(1.07);
    }

    .tour-hero-content {
        padding: 0 20px;
    }

    .menu-bar-nav ul.hfe-nav-menu {
        padding: 4px 5px;
    }

  li.menu-item.current-menu-item a {
        padding: 8px 18px !important;
    }


    /* Location Section Mobile */

    .location-section {
        flex-direction: column !important;

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

    .location-section > .location-content {
        position: relative !important;
        flex: none !important;

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

        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);

        overflow: hidden !important;
    }


    /* Mobile par each card ki apni image */

    .location-section
    > .location-content
    > .location-image {
        position: absolute !important;

        opacity: 1;
        visibility: visible;
    }


    .location-section
    > .location-content
    > .location-info {
        justify-content: center !important;
        padding: 20px !important;
    }


    .location-section
    > .location-content:hover
    > .location-info::before {
        height: 100%;
        opacity: 0.2;
    }
	
	.footer-categories ul {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
}
	
	.contact-form .half {
    width: 100%;
}
	
	.contact-form {
    gap: 0px 6px;
}
	
    body.archive.category .page-content {
    grid-template-columns: repeat(1, 1fr);
    padding: 10px;
}
    #we-share-listing ul.elementor-icon-list-items {
        grid-template-columns: repeat(1, 1fr);
    
    }
}


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

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

    .tour-hero-slider .tour-slide {
        transition: opacity 0.3s ease;
    }

    .tour-hero-slider .tour-slide img {
        transition: none;
        transform: scale(1) !important;
    }

    .tour-glass-btn {
        transition: none;
    }
}



