/*!
Theme Name: ganttravel
Theme URI: http://ganttravel.com/
Author: Ganttravel
Author URI: http://ganttravel.com/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: ganttravel
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

ganttravel is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
/* Base */
body {
    margin: 0;
    font-family: 'Open Sans', sans-serif;
}

.gant_container {
    max-width: 1150px;
    margin: auto;
    padding: 0 15px;
}

/* Top Bar */
.gant_top_bar , .gant_top_bar a {
   background: #343A40;
    color: #fff;
    font-size: 15px;
    text-decoration: none;
    font-weight: 400;
}
.gant_top_bar a { line-height:27px; margin-right:15px;}
.gant_top_bar a:hover { color:#A4393A;}
.gant_top_bar  a span img {
	float: left;
    margin-right: 2px;
	margin-top:5px;
}
.gant_top_inner {
    display: flex;
    justify-content: flex-end;
    gap: 15px;
    padding: 6px 15px;
}
.msz_image { margin-right:7px !important;}
/* Header */
.gant_header {
    background: #fff;
    border-bottom: 0px solid #eee;
	width: 100%;
    transition: all .35s ease;
    z-index: 999;
}
.top_social_items { margin:0px; padding:0px;}
.top_social_items li {list-style-type:none; display:inline;}
.top_social_items li a	{
		width: 25px;
    height: 25px;
    display: inline-block;
    border: 1px solid #fff;
    border-radius: 50%;
    text-align: center;
    font-size: 13px;
    line-height: 25px;
    margin-right: 5px;
	}
	.top_social_items li a:hover {
		color:#A4393A;
		border: 1px solid #A4393A;
	}
/* Nav */
.gant_nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo */
.gant_logo { min-width:210px;}

/* Menu */
.gant_menu {
    list-style: none;
    display: flex;
    gap: 20px;
    margin: 0;
    padding: 0;
}

.gant_menu_item {
    position: relative;
}

.gant_menu > .gant_menu_item > a {
       display: block;
    padding: 35px 0;
    font-weight: 400;
    color: #222;
    text-decoration: none;
    font-size: 16px;
	padding-right: 25px;
}

/* Sub Menu */
.gant_sub_menu {
    display: none;
    position: absolute;
    background: #fff;
    top: 100%;
    left: 0;
    min-width: 165px;
    padding: 10px 16px;
   box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
   border-radius:5px;
}
.gant_sub_menu li { list-style-type:none;}

.gant_menu_item:hover > .gant_sub_menu {
    display: block;
}

.gant_sub_menu a {
    display: block;
    padding: 10px 15px;
    color: #343A40;
    font-size: 14px;
    text-decoration: none;
}

/* Mega Menu */
.gant_mega_menu_inner {
    width: 700px;
    display: none;
    padding: 25px;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
	left:-300%;
	padding:25px !important;
	border-radius:5px;
}

.gant_mega_menu:hover .gant_mega_menu_inner {
    display: grid;
}
html .gant_mega_menu_inner li a { border:none; padding:6px 0px;}
html .gant_mega_menu_inner > li { border-right:1px solid #d9d9d9;}
html .gant_mega_menu_inner > li:last-child { border:none;}
.gant_mega_menu h4  {
    margin: 0 0 10px;
    font-size: 15px;
    font-weight: 700;
	color:#343A40;
	text-transform:uppercase;
	
}
html body .gant_mega_menu h4 a {
    font-size: 15px;
    font-weight: 700;
	color:#343A40;
	text-transform:uppercase;
	
}

.gant_mega_menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Buttons */
.gant_nav_buttons {
    display: flex;
    gap: 10px;
}

.gant_btn {
    padding: 8px 23px;
    border-radius: 20px;
    font-size: 14px;
    text-decoration: none;
    white-space: nowrap;
}

.gant_btn_outline {
    border: 1px solid #A4393A;
    color: #fff;
	 background: #A4393A;
}

.gant_btn_primary {
    background: #A4393A;
    color: #fff;
}

.gant_btn_dark {
    background: #2f2f2f;
    color: #fff;
}

/* Hamburger */
.gant_hamburger {
    display: none;
    flex-direction: column;
    cursor: pointer;
}
.gant_hamburger {
       width: 43px;
    height: 23px;
    position: relative;
    cursor: pointer;
    display: none;
    border-radius: 100px;
}

.gant_hamburger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background: #343A40;
    border-radius: 10px;
    transition: 0.3s ease;
}

/* Bar positions */
.gant_hamburger span:nth-child(1) {
    top: 0;
}

.gant_hamburger span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
}

.gant_hamburger span:nth-child(3) {
    bottom: 0;
}

/* ACTIVE STATE → PERFECT X */
.gant_hamburger.active span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}

.gant_hamburger.active span:nth-child(2) {
    opacity: 0;
}

.gant_hamburger.active span:nth-child(3) {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}


.gant_has_children > a { position:relative;}
.gant_has_children > a:after {background:url('images/menu_arrow.png'); position: absolute;
    right: 0;
    content: '';
    height: 7px;
    width: 14px;
    background-repeat: no-repeat; top: 44px;}
	.gant_sub_menu li a { font-size:15px; font-weight:400;     border-bottom: 1px solid #d9d9d9;}
	.gant_sub_menu li:last-child a { border:none;}
	.gant_nav a:hover { color:#A4393A;}
	html .gant_btn:hover { color:#fff;}
	body.gant_menu_open {
    overflow: hidden;
}
.mobile_header_icons { display:none;}
/* Mobile */
@media (max-width: 992px) {
	.mobile_header_icons { display: flex;
        justify-content: end; width:100px;}
	.mobile_header_icons a { 
        width: 33px;
        display: flex; }
	.mobile_header_icons a:nth-child(1) { margin-right:15px;}
	.gant_logo {  min-width:auto !important;}
.gant_top_bar { display:none;}
body {     padding-top: 66px;}
   .gant_nav_menu {
       position: fixed;
        top: 66px;
        right: -100%;
        width: 100%;
        height: calc(100dvh - 66px); 
        background: #fff;
        transition: right 0.3s ease;
        z-index: 9999;

        overflow-y: auto; 
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
    }
.gant_sub_menu,
    .gant_mega_menu_inner {
        position: static;
        display: none;
        width: 100%;
        box-shadow: none;
    }

    .gant_nav_menu.active {
        right: 0;
        box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
        padding: 25px;
        top: 66px;
        width: calc(100% - 50px);
    }

.gant_mega_menu:hover .gant_mega_menu_inner {
    display: block;
}
.gant_mega_menu_inner { padding:10px 16px;}
.gant_mega_menu h4 {
	border-bottom: 1px solid #d9d9d9;
    padding-bottom: 10px;
	        margin-top: 10px;
}
.gant_sub_menu {
	padding: 2px 0px !important;
}
.gant_mega_menu_inner li:nth-child(1) h4 { margin-top:0px !important;}
html .gant_mega_menu_inner > li { border-right:0px !important;}
.gant_mega_menu_inner { padding:20px 0px !important;}
html .gant_mega_menu_inner li a { padding:2px 0px !important;}
.gant_menu_item:hover > .gant_sub_menu , .gant_menu_item:hover > .gant_mega_menu {
        display: none;
    }

    .gant_menu_item.open > .gant_sub_menu , .gant_menu_item.open > .gant_mega_menu {
        display: block;
    }
.gant_has_children > a:after {         top: 14px;
        right: 14px;}
.gant_header {
	position: fixed;
    top: 0;
	z-index:999;
    width: 100%;
           padding: 10px 0px;
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
}

.gant_menu > .gant_menu_item > a { padding: 7px 0;         border-bottom: 1px solid #d9d9d9;}
.gant_menu > .gant_menu_item > a:last-child{ border:no-ne;} 
    .gant_menu {
        flex-direction: column;
        gap: 0;
    }

    .gant_sub_menu,
    .gant_mega_menu_inner {
        position: static;
        box-shadow: none;
        width: 100%;
        display: none;
    }

    .gant_menu_item.open > .gant_sub_menu {
        display: block;
    }

    .gant_nav_buttons {
        display: none;
    }

    .gant_hamburger {
        display: flex;
    }
}
/* footer */


.gant_footer {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    color: #343A40;
	
}
.gant_footer a:hover { 
color:#A4393A;
}
/* Top Section */
.gant_footer_top {
    display: grid;
    grid-template-columns: 2.2fr 1fr 1fr 1fr 1fr;
    gap: 40px;
 padding: 50px 15px 0px 15px;
    max-width: 1150px;
}


.gant_footer_logo {
    max-width: 160px;
    margin-bottom: 15px;
}

.gant_footer_text {
    margin-bottom: 20px;
	font-weight:600;
	color:#343A40;
}

.gant_footer_heading {
    font-weight: 600;
    margin-bottom: 5px;
	margin-top:2px;
	font-size:16px;
	color: #343A40;
}

.gant_footer_col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.gant_footer_col ul li {
    margin-bottom: 8px;
}

.gant_footer_col a {
    text-decoration: none;
    color: #343A40;
}

/* Social */
.gant_footer_social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid #343A40;
    border-radius: 50%;
    margin-right: 8px;
    font-size: 12px;
    color: #343A40;
}
.gant_footer_social { margin-top:12px;}
/* Middle */
.gant_footer_middle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding-bottom: 30px;
}

.gant_footer_search {
    position: relative;
    max-width: 260px;
    width: 100%;
}

.gant_footer_search input {
    width: 94%;
    padding: 4px 0px 4px 12px;
    border: 1px solid #646567;
    border-radius: 10px;
	color:#343A40;
	font-size:16px;
	  font-family: 'Open Sans', sans-serif;
}

.gant_footer_search i {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: #666;
}

.gant_footer_badges {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.gant_badge {
           /* equal visual height */
    display: flex;
    align-items: center;
    justify-content: center;
}

.gant_badge img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* Bottom */
.gant_footer_bottom {
    background: #343A40;
    color: #fff;
    font-size: 14px;
}

.gant_footer_bottom_inner {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}

.gant_footer_bottom a {
    color: #fff;
    text-decoration: none;
	margin-right:8px;
}
.gant_footer_badges .gant_badge:nth-child(1) img {
	width:234px;
	height:54px;
}
.gant_footer_badges .gant_badge:nth-child(2) img {
	width:180px;
	height:80px;
}
.gant_footer_badges .gant_badge:nth-child(3) img {
	width:130px;
	height:100px;
}
.gant_footer_badges .gant_badge:nth-child(4) img {
	width:100px;
	height:100px;
}
.gant_footer_badges .gant_badge:nth-child(5) img {
	width:77px;
	height:68px;
}
/* Responsive */
@media (max-width: 992px) {

    .gant_footer_top {
        grid-template-columns: 1fr 1fr;
    }

    .gant_footer_middle {
        flex-direction: column;
        align-items: flex-start;
    }

    .gant_footer_badges img {
        margin: 10px 10px 0 0;
    }

    .gant_footer_bottom_inner {
        flex-direction: column;
        gap: 5px;
        text-align: center;
    }
}

@media (max-width: 576px) {

    .gant_footer_top {
        grid-template-columns: 1fr;
    }

    .gant_footer_social {
        margin-bottom: 20px;
    }
}
@media(max-width:767px){
	.gant_footer_heading { margin-top:0px;}
	.gant_footer_top { gap: 7px;}
	.gant_footer_search {
    position: relative;
    max-width: 100%;
    width: 100%;
    margin-top: 20px;
}
.gant_footer_search i { right:20px;}

.gant_badge { width:50%; }
.gant_badge1 { width:100%; }
.gant_footer_badges ,.gant_footer_middle {
	gap: 0px;
}
.gant_footer_badges img { margin:0px;}
.gant_footer_badges { margin-top:20px;}
}
/* Large screens only */
@media (min-width: 1024px){

    /* when fixed */
    .gant_header.is-fixed{
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        background: #fff;
        box-shadow: 0 10px 25px rgba(0,0,0,0.08);
        transform: translateY(-80px);
        animation: slideDown .4s ease forwards;
    }
	.gant_header.is-fixed .gant_top_bar { display:none;}

    /* animation */
    @keyframes slideDown{
        to{
            transform: translateY(0);
        }
    }
}

/* floating icon */
.gant_external_chat_icon{
    position: fixed;
    right: 25px;
    bottom: 25px;
    width: 60px;
    height: 60px;
    background: #A4393A;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 10px 25px rgba(0,0,0,.2);
    transition: transform .25s ease;
}
.gant_external_chat_icon:hover{
    transform: scale(1.08);
}

/* overlay */
.gant_external_chat_overlay{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.25);
    backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    opacity: 0;
    visibility: hidden;
    transition: .25s ease;
}

.gant_external_chat_overlay.active{
    opacity: 1;
    visibility: visible;
}

/* popup */
.gant_external_chat_popup{
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    max-width: 420px;
    width: 90%;
    text-align: center;
    box-shadow: 0 25px 60px rgba(0,0,0,.2);
    animation: gant_external_chat_pop .3s ease;
}

@keyframes gant_external_chat_pop{
    from{transform: translateY(20px); opacity:0;}
    to{transform: translateY(0); opacity:1;}
}

.gant_external_chat_popup p{
    margin-bottom: 22px;
    font-size: 16px;
}

.gant_external_chat_actions{
    display: flex;
    gap: 12px;
    justify-content: center;
}

.gant_external_chat_actions button{
    padding: 10px 18px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-weight: 600;
}

.gant_external_chat_cancel{
    background: #2f2f2f;
	color: #fff;
}

.gant_external_chat_proceed{
    background: #A4393A;
    color: #fff;
}
.gant_external_chat_icon img {     filter: brightness(0) invert(1); }

