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

Template Name: Tripex - Travel & Tour Booking HTML Template
URI: pixelfit.agency
Description: Tripex is a clean and elegant Travel & Tour Booking HTML template designed for travel agencies, tour operators, and booking platforms. With its modern layout and smooth user experience, it allows you to beautifully showcase destinations, tour packages, and booking options all in one place. Perfect for creating a professional online presence with style and simplicity. 
Author: Pixelfit
Author URI: https://themeforest.net/user/pixelfit
Version: 1.0 


------------------------------------------------------
   CSS INDEX
-----------------------------------------------------

    # Components
        # Base CSS
        # Common CSS
        # Preloader CSS
        # Offcanvas CSS
        # Animation CSS
        # Button CSS
        # Header CSS
        # Footer CSS
-------------------------------------------------------    */
/*---- 

====================
1. Base CSS
    # base  CSS
====================

----*/
/* Base CSS */
:root {
  --primary-color: #0147FF;
  --secondary-color: #DCFE7C;
  --heading-color: #191919;
  --primary-black-color: #191919;
  --gray-color: #EAF4E6;
  --white-color: #ffffff;
  --text-color: #737373;
  --border-color: #EEEFEF;
  --heading-font: "Figtree", sans-serif;
  --body-font: "Sora", serif;
}

html {
  font-size: 100%;
}

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
a:hover, a:focus {
  color: inherit;
  text-decoration: none;
}

a:focus,
input:focus,
textarea:focus,
button:focus {
  text-decoration: none;
  outline: none;
}

i,
span,
a {
  display: inline-block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  margin: 0px;
  color: var(--heading-color);
  font-family: var(--heading-font);
}

h1 {
  font-size: 75px;
  line-height: 100px;
}

h2 {
  font-size: 55px;
  line-height: 65px;
  letter-spacing: -0.03em;
}

h3 {
  font-size: 24px;
  line-height: 40px;
}

h4 {
  font-size: 22px;
  line-height: 32px;
}

h5 {
  font-size: 20px;
  line-height: 30px;
}

h6 {
  font-size: 18px;
  line-height: 28px;
}

ul, ol {
  margin: 0px;
  padding: 0px;
  list-style-type: none;
}

p {
  margin: 0px;
}

input, textarea {
  display: inherit;
}

button {
  border: none;
}

label {
  margin-bottom: 0;
}

iframe {
  width: 100%;
  border: none;
  display: inherit;
}

img {
  max-width: 100%;
}

body {
  font-weight: normal;
  font-style: normal;
  font-weight: 400;
  color: var(--text-color);
  font-family: var(--body-font);
  font-size: 16px;
  line-height: 30px;
  overflow-x: hidden;
}

main {
  display: inline-block;
  width: 100%;
}

/*===== Scrollbar =====*/
::-webkit-scrollbar {
  width: 5px;
}

::-webkit-scrollbar-track {
  background: #abafb9;
}

::-webkit-scrollbar-thumb {
  background-color: #13172b;
}

/*---- 

====================
01. Base CSS
    # Common CSS
====================

----*/
@media (min-width: 1451px) {
  .container {
    max-width: 1314px;
  }
}
@media (min-width: 1200px) and (max-width: 1450px) {
  .container {
    max-width: 1200px;
  }
}
.p-r {
  position: relative;
}

.bg_cover {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 100% 100%;
}

.font-200 {
  font-weight: 200;
}

.form-group {
  position: relative;
}

label {
  margin-bottom: 0;
}

.form_control {
  width: 100%;
}

.text-white p,
.text-white h6,
.text-white h5,
.text-white h4,
.text-white h3,
.text-white h2, .text-white h1 {
  color: var(--white-color);
}

.thin-200 {
  font-weight: 200;
}

/* Check List */
.check-list.style-one li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}
.check-list.style-one li:not(:last-child) {
  margin-bottom: 13px;
}
.check-list.style-one li i {
  margin-right: 10px;
  color: var(--primary-color);
}
.check-list.style-two li {
  position: relative;
  padding-left: 15px;
}
.check-list.style-two li:not(:last-child) {
  margin-bottom: 10px;
}
.check-list.style-two li:before {
  position: absolute;
  top: 11px;
  left: 0;
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: var(--primary-color);
}

/* Floatig Animation */
.animate-float-bob-x {
  -webkit-animation-name: float-bob-x;
          animation-name: float-bob-x;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
}

.animate-float-bob-y {
  -webkit-animation-name: float-bob-y;
          animation-name: float-bob-y;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
}

/* Rotate360 */
.rotate360 {
  -webkit-animation: spin 7s linear infinite;
  animation: spin 7s linear infinite;
}

/* ZoomInOut */
.zoomInOut {
  -webkit-animation: zoomInOut 6s linear infinite;
          animation: zoomInOut 6s linear infinite;
}

/* Ratings */
.ratings i {
  color: var(--secondary-color);
}

/*====== Start Back to top css ======*/
.back-to-top {
  border-radius: 50%;
  bottom: 30px;
  cursor: pointer;
  display: none;
  font-size: 20px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  position: fixed;
  right: 30px;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 337;
  color: var(--white-color);
  background-color: var(--primary-color);
}
.back-to-top:hover {
  background-color: var(--heading-color);
}
.back-to-top img {
  padding-bottom: 5px;
}

/* Preloader CSS */
.preloader {
  bottom: 0;
  height: 100vh;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100vw;
  z-index: 99999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--white-color);
}

.loading-wrapper,
.loading {
  height: 100px;
  position: relative;
  width: 100px;
  border-radius: 100%;
}

.loading-wrapper {
  margin: 40px auto;
}

.loading {
  border: 1px solid transparent;
  border-color: transparent var(--primary-color) transparent var(--primary-color);
  -webkit-animation: rotate-loading 1.5s linear 0s infinite normal;
          animation: rotate-loading 1.5s linear 0s infinite normal;
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.loading-wrapper:hover .loading,
.loading-wrapper .loading {
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

#loading-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 66px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@-webkit-keyframes rotate-loading {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotate-loading {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes playpopup {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 0.6;
  }
  50% {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
    opacity: 0.3;
  }
  100% {
    -webkit-transform: scale(2);
            transform: scale(2);
    opacity: 0;
  }
}
@keyframes playpopup {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 0.6;
  }
  50% {
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
    opacity: 0.3;
  }
  100% {
    -webkit-transform: scale(2);
            transform: scale(2);
    opacity: 0;
  }
}
@-webkit-keyframes marquee {
  100% {
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
  }
}
@keyframes marquee {
  100% {
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
  }
}
@-webkit-keyframes marquee_right {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes marquee_right {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes marquee_left {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes marquee_left {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@-webkit-keyframes float-bob-x {
  0% {
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}
@keyframes float-bob-x {
  0% {
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}
@-webkit-keyframes float-bob-y {
  0% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  50% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@keyframes float-bob-y {
  0% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  50% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes zoomInOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes zoomInOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes wave {
  0% {
    -webkit-transform: translate(-2px, 0);
            transform: translate(-2px, 0);
  }
  100% {
    -webkit-transform: translate(0px, 0);
            transform: translate(0px, 0);
  }
}
@keyframes wave {
  0% {
    -webkit-transform: translate(-2px, 0);
            transform: translate(-2px, 0);
  }
  100% {
    -webkit-transform: translate(0px, 0);
            transform: translate(0px, 0);
  }
}
/* Translate 3D Animation */
@-webkit-keyframes translateBg {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
  }
}
@keyframes translateBg {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
  }
}
.theme-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
  font-family: var(--heading-font);
  font-size: 1rem;
  border-radius: 30px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.theme-btn.style-one {
  padding: 15px 35px;
  line-height: 20px;
  background-color: var(--primary-color);
  color: var(--white-color);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.theme-btn.style-one:hover {
  background-color: var(--secondary-color);
  color: var(--heading-color);
}