/*
Theme Name: Voyago PRO
Theme URI: https://effethemes.com/themes/voyago-wordpress-theme/
Author: Effe Themes
Author URI: https://effethemes.com/
Description: Designed specifically for travel agencies, tour operators, and travel enthusiasts, this theme offers a seamless blend of functionality and style, allowing you to craft stunning websites that inspire exploration and adventure. Whether you’re promoting exotic destinations, curating custom itineraries, or managing bookings, this theme empowers you to do it all with ease. Fully compatible with the latest WordPress Full Site Editing (FSE) features, our theme gives you complete control over your site’s design. With a vast array of pre-designed block patterns, customizable templates, and intuitive drag-and-drop options, you can build a professional and engaging website in no time — no coding required.
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 5.7
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: voyago-pro
Tags: blog, one-column, two-columns, left-sidebar, block-patterns, news, portfolio, custom-header, custom-background, custom-logo, custom-menu, featured-images, full-width-template, full-site-editing, editor-style, threaded-comments, block-styles, wide-blocks, translation-ready
*/

/* ================= > General Styles < ================= */

html,
body {
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

a {
  color: inherit;
  font-size: inherit !important;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

a:hover {
  color: var(--wp--preset--color--custom-secondary) !important;
}

ul {
  list-style: none;
  padding: 0;
}

ul > li > a {
  text-decoration: none;
}

:where(.wp-site-blocks) > * {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}

.full-width-image > img {
  width: 100% !important;
}

/* ================= > Loading < ================= */

.loading-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
  width: 100vw;
  min-width: 100vw;
  min-height: 100vh;
  z-index: 999;
  opacity: 1;
  -webkit-transition: opacity 1.5s ease;
  -o-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
  position: fixed;
  background: var(--wp--preset--color--custom-background-secondary);
}

.loading-plane-wrapper {
  transform-origin: top;
  animation: loadingAnimation 2s ease-in-out infinite;
  width: 150px;
  aspect-ratio: 1;
  display: grid;
  opacity: 1;
  -webkit-transition: opacity 1.5s ease;
  -o-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
  place-items: center;
}

@keyframes loadingAnimation {
  to {
    transform: rotate(-360deg);
  }
}

.planeBody,
.planeBody * {
  background: #fff;
}

.planeBody {
  position: relative;
  width: 75%;
  aspect-ratio: 7/1;
  border-bottom-left-radius: 50% 100%;
  border-top-right-radius: 25% 90%;
  border-bottom-right-radius: 20% 20%;
}

.planeTail,
.wingLeft,
.wingRight {
  position: absolute;
}

.planeTail {
  left: calc(-0.3% + 1px);
  top: -120%;
  width: 15%;
  aspect-ratio: 1/1.25;
  transform: skewX(5deg) translateX(-5%);
  border-top-left-radius: 10%;
  border-top-right-radius: 100% 100%;
}

.wingLeft,
.wingRight {
  left: 50%;
  width: 25%;
  aspect-ratio: 1;
}

.wingLeft {
  transform-origin: bottom;
  top: -190%;
  transform: skewX(45deg) translateX(-30%);
  scale: 0.8;
  border-top-left-radius: 10%;
  border-top-right-radius: 60% 100%;
}

.wingRight {
  transform-origin: top;
  bottom: -170%;
  transform: skewX(-45deg);
  border-bottom-left-radius: 10%;
  border-bottom-right-radius: 60% 100%;
}

.planeTail::after {
  content: "";
  position: absolute;
  height: 55%;
  aspect-ratio: 1;
  transform: skewX(0deg) rotate(-8deg);
  right: -60%;
  bottom: 4.5%;
  background: radial-gradient(
    circle at 100% 0%,
    transparent 70%,
    #fff calc(70% + 0.5px)
  );
}

/* ================= > Header < ================= */

.header-navigation > div > div > div > div > ul > ul > li > a:hover,
.header-navigation > li > a:hover {
  color: var(--wp--preset--color--custom-secondary) !important;
  padding: 0 10px;
}

.header-search-icon > div > button {
  background: transparent;
  padding: 0;
  color: inherit !important;
}

.header-search-icon:hover {
  color: var(--wp--preset--color--custom-secondary) !important;
}

.wp-block-site-title > a {
  text-decoration: none;
}

.wp-block-navigation__responsive-container-content {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: start !important;
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
  border: 0 !important;
}

/* ================= > Video Popup < ================= */

.video-popup-img-container {
  position: relative;
  display: inline-block;
}

.video-popup-img-container {
  width: 100%;
}

.video-popup-img-container > img {
  display: block;
}

.video-popup-play-button {
  position: absolute;
  top: 45%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: var(--wp--preset--color--custom-primary);
  color: white;
  border: none;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  outline: none;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.video-popup-play-button:hover {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
      -ms-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1);
}

.video-popup-play-button:before {
  content: "\e037";
  font-family: 'Material Icons';
  font-size: 30px;
}

.video-popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0;
  z-index: 9999;
}
.video-popup-content {
  position: relative;
  width: 80%;
}

.video-popup-content video {
  width: 100%;
  height: auto;
}

.video-popup-close-btn {
  position: fixed;
  top: 0px;
  right: 40px;
  font-size: 35px !important;
  color: #fff;
  border: none;
  background: transparent !important;
  width: 30px;
  height: 30px;
  cursor: pointer;
  text-align: center;
  z-index: 9999;
  padding: 0px 30px;
}

.video-popup-close-btn > div > a {
  background: transparent !important;
}

.video-popup-close-btn > div > a:hover {
  color: var(--wp--preset--color--custom-primary);
}

/* ================= > Portfolio < ================= */

.top-destinations-horizontal-sliders {
  overflow-x: hidden;
}

.top-destinations-horizontal-slider-projects {
	width: 350vh;
	display: grid !important;
	-ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

/* ================= > Contact < ================= */

.contact-form-row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 100%;
  gap: 0 18px;
}

.contact-form-row > p {
  margin: 0;
  flex: 1;
  min-width: 40%;
}

.contact-form > p > span > input,
.contact-form > p,
.contact-form > p > span > input,
.contact-form > p > span > textarea {
  width: 100%;
  box-sizing: border-box;
}

.wpcf7-form-control {
  width: -webkit-fill-available;
  padding: 10px 10px;
}

.wpcf7-submit {
  cursor: pointer;
  width: 100%;
  border: 0;
  padding: 25px 0;
  background: var(--wp--preset--color--custom-primary) !important;
  color: #fff;
  font-size: inherit;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.wpcf7-submit:hover {
  opacity: 0.8;
}

/* ================= > Blog < ================= */

.form-submit > input[type="submit"] {
  background: var(--wp--preset--color--custom-primary) !important;
}

.form-submit > input[type="submit"]:hover { 
  opacity: 0.8;
}

/* ================= > Newsletter < ================= */

#mailpoet_form_1 form.mailpoet_form {
  padding: 0 !important;
}

.mailpoet_text {
  padding: 15px 20px !important;
  border: 0;
}

.mailpoet_submit {
  cursor: pointer;
}

.mailpoet_submit:hover {
  opacity: 0.8;
}

/* ================= > WooCommerce < ================= */

:where(.wc-block-mini-cart__badge) {
  background: var(--wp--preset--color--custom-secondary) !important;
}

.orderby {
  padding: 10px;
  border-radius: 10px;
}

.qty {
  border-radius: 10px;
}

.wp-block-query-pagination-numbers {
  display: flex;
  gap: 20px;
}

.woocommerce-product-gallery__image,
.attachment-woocommerce_thumbnail,
.size-woocommerce_thumbnail,
.wc-block-grid__product-image > a > img {
  border-radius: 10px;
}

.woocommerce-product-gallery__image:hover,
.attachment-woocommerce_thumbnail:hover,
.size-woocommerce_thumbnail:hover,
.wc-block-grid__product-image > a > img:hover,
.wc-block-cart-item__image > a > img:hover,
.wp-block-cart-cross-sells-product__product-image > a > img:hover {
  opacity: 0.8;
}

.single_add_to_cart_button,
.add_to_cart_button,
.product_type_external,
.ajax_add_to_cart,
.wp-block-woocommerce-mini-cart-checkout-button-block,
.wc-block-components-product-button__button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
  border-radius: 25px;
  padding-left: 40px;
  padding-right: 40px;
  background: var(--wp--preset--color--custom-primary);
}

.woocommerce-Price-amount > build {
  color: var(--wp--preset--color--custom-primary);
}

.wp-block-woocommerce-mini-cart-shopping-button-block {
  border-radius: 25px;
}

.wp-block-woocommerce-mini-cart-cart-button-block {
  border-radius: 25px;
}

.wp-block-woocommerce-mini-cart-shopping-button-block {
  background: var(--wp--preset--color--custom-primary);
}

.components-form-token-field__suggestion:hover {
  background: var(--wp--preset--color--custom-primary) !important;
}

.single_add_to_cart_button:hover,
.add_to_cart_button:hover,
.product_type_external:hover,
.ajax_add_to_cart:hover,
.wp-block-woocommerce-mini-cart-checkout-button-block:hover,
.wp-block-woocommerce-mini-cart-shopping-button-block:hover,
.wc-block-components-product-button__button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-totals-coupon__button:hover {
  opacity: 0.9;
}

/* ================= > Footer < ================= */

.footer-links > p > a {
  text-decoration: none;
}


/* ================= > Media Queries < ================= */

@media (max-width: 1024px) {
  .wp-block-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .wp-block-post-template-is-layout-grid {
    grid-template: none;
  }

  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close,
  .wp-block-navigation__responsive-container-open:not(.always-shown),
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }

  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .wp-block-navigation__container {
    --navigation-layout-justification-setting: flex-start !important;
    --navigation-layout-justify: flex-start !important;
  }

}

@media (max-width: 768px) {
  .copyright > div {
    flex-direction: column;
  }
}