
/* Table of Content
==================================================
#Page Structure
#Home Page Style */

* { margin: 0; padding: 0; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; }
* { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
html, body,  div,  span,  applet,  object,  iframe,  h1,  h2,  h3,  h4,  h5,  h6,  p,  blockquote,  pre,  a,  abbr,  acronym,  address,  big,  cite,  code,  del,  dfn,  em,  font,  img,  ins,  kbd,  q,  s,  samp,  small,  strike,  strong,  sub,  sup,  tt,  var,  dl,  dt,  dd,  ol,  ul,  li,  fieldset,  form,  label,  legend,  table,  caption,  tbody,  tfoot,  thead,  tr,  th,  td,  select,  input,  option { margin: 0; padding: 0; border: 0; outline: 0;}
html { -webkit-text-size-adjust: none;}
article,  aside,  details,  figcaption,  figure,  footer,  header,  hgroup,  nav,  section { display: block }
audio,  canvas,  video { display: inline-block; }
audio:not([controls]) { display: none; height: 0; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word }
q { quotes: none }
q:before,  q:after { content: ''; content: none }
small { font-size: 80% }
sub,  sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline }
sup { top: -0.5em; }
sub { bottom: -0.25em }
nav  ul,  ol  li { list-style: none; list-style-image: none; }
button,  input,  select,  textarea { font-size: 100%; margin: 0; vertical-align: baseline; box-shadow: none; }
textarea { overflow: auto; vertical-align: top }
input[type="button"],  input[type="submit"] { appearance: none !important; -webkit-appearance: none !important; }
:focus { outline: 0; }
caption,  th,  td { text-align: left; font-weight: normal; }
blockquote:before,  blockquote:after,  q:before,  q:after { content: ""; }
blockquote,  q { quotes: "" ""; }
table { border: 0 none; border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
img { border: 0 none; max-width: 100%; vertical-align: top; }
a { outline: none; cursor: pointer; text-decoration: none !important; cursor: pointer; }
a:hover { text-decoration: none; }
a:focus { text-decoration: none !important; outline: none !important; }
.none { display: none; }
.text-transform { text-transform: uppercase; }
.text-lowercaseḍ { text-transform: lowercase; }
.break { float: left; width: 100%; }
.preloader { display: none; }

.bg { background-repeat: no-repeat; background-size: cover; background-position: center; }

/*Placeholder opacity cross browsers*/
input::-webkit-input-placeholder { color: #ccc; opacity:1;} /* WebKit browsers */
input:-moz-placeholder { color: #ccc; opacity:1;} /* Mozilla Firefox 4 to 18 */
input::-moz-placeholder { color: #ccc; opacity:1;} /* Mozilla Firefox 19+ */
input:-ms-input-placeholder { color: #ccc; opacity:1;} /* Internet Explorer 10+ */
textarea::-webkit-input-placeholder { color: #ccc; opacity:1;} /* WebKit browsers */
textarea:-moz-placeholder { color: #ccc; opacity:1;} /* Mozilla Firefox 4 to 18 */
textarea::-moz-placeholder { color: #ccc; opacity:1;} /* Mozilla Firefox 19+ */
textarea:-ms-input-placeholder { color: #ccc; opacity:1;} /* Internet Explorer 10+ */
button::-moz-focus-inner, input[type="submit"]::-moz-focus-inner {border: 0;}

::selection { color: #000000; background: #ffffff; }
::-webkit-selection { color: #000000; background: #ffffff; }

body::-webkit-scrollbar-track { background-color: #000000; }
body::-webkit-scrollbar { width: 5px; background-color: #000000; }
body::-webkit-scrollbar-thumb { background-color: #ffffff; }

body::-moz-scrollbar-track { background-color: #000000; }
body::-moz-scrollbar { width: 5px; background-color: #000000; }
body::-moz-scrollbar-thumb { background-color: #ffffff; }

body::-ms-scrollbar-track { background-color: #000000; }
body::-ms-scrollbar { width: 5px; background-color: #000000; }
body::-ms-scrollbar-thumb { background-color: #ffffff; }

body::-o-scrollbar-track { background-color: #000000; }
body::-o-scrollbar { width: 5px; background-color: #000000; }
body::-o-scrollbar-thumb { background-color: #ffffff; }

/* Chrome, Safari, Edge */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield; /* Optional for broader support */
}


/* body {
    user-select: none;
} */

.pb_10 { padding-bottom: 10px; }
.main_form h3 span { color: #03A9F4; } 
h2 span { color: #03A9F4; } 

div#wrapper { margin-bottom: -2px; }

/* #Page Structure
================================================== */
body { margin: 0; padding: 0; height: auto !important; font-size: 16px; background: #000000; font-family: 'Open Sans', sans-serif; overscroll-behavior: none; }
body.payment-mode { overflow: hidden !important; }

.wrapper { width: 100%; }
.container { max-width: 1500px; padding:0 15px; margin:0 auto; }
a { display: inline-block; transition: 0.5s; -webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; }

.btn_all a { display:inline-block; font-family: 'Open Sans', sans-serif; border: 2px solid #03A9F4; line-height: 1.2; font-size: 16px; font-weight: bold; padding:12px 25px; background-color:#03A9F4; color: #ffffff; text-align: center; border-radius: 100px; -webkit-border-radius: 100px; }
.btn_all a:hover,.btn_all a:focus{ background-color: #ffffff; color: #03A9F4; box-shadow: inset 0px 0px 11px #000; }
a{ color: #03A9F4; }
a:hover{ text-decoration: underline; }
.text_stroke h2 { color: transparent; -webkit-text-stroke: 1px #fff; -ms-text-stroke: 1px #fff; -moz-text-stroke: 1px #fff; -o-text-stroke: 1px #fff; text-stroke: 1px #fff; }
.text_stroke h2 span { -webkit-text-stroke: 0 #fff; -ms-text-stroke: 0 #fff; -moz-text-stroke: 0 #fff; -o-text-stroke: 0 #fff; text-stroke: 0 #fff; }

/* Home Page Style
==================================================*/
h1 { font-size: 70px; color: #ffffff; line-height: 1.2; font-family: 'Montserrat', sans-serif; font-weight: bold; }
h2 { font-size: 55px; color: #ffffff; line-height: 1.2;  font-family: 'Montserrat', sans-serif; font-weight: bold; }
h3 { font-size: 45px; color: #ffffff; line-height: 1.2; font-family: 'Montserrat', sans-serif; font-weight: 400; }
h4 { font-size: 30px; color: #ffffff; line-height: 1.2; font-family: 'Montserrat', sans-serif; font-weight: bold; }
h5 { font-size: 22px; color: #ffffff; line-height: 1.2; font-family: 'Montserrat', sans-serif; font-weight: bold; }
h6 { font-size: 16px; color: #ffffff; line-height: 1.2; font-family: 'Montserrat', sans-serif; font-weight: bold; }
p { font-size: 18px; color: #ffffff; line-height: 1.6; font-family: 'Open Sans', sans-serif; font-weight: 400;} 

.body_outer { width: 100%; position: relative; z-index: 1; }
body.ios-device .banner_sec video { display: none !important; }

#loading { overflow-y: hidden; }
#loading.loadingdone { overflow-y: scroll; }
.loadingdone .loader { opacity: 0; visibility: hidden; }

.loader { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background-color: #000000; z-index: 9999999; transition: 0.3s; -webkit-transition: 0.3s; }  
.loader img { max-width: 200px; margin-left: 2px; margin-top: 3px; }
.loader_main { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); overflow: hidden; display: flex; align-items: center; justify-content: center; }

/* header_sec */
.header_sec_p { padding-top: 60px; }
.header_sec { position: fixed; top: 0; left: 0; width: 100%; z-index: 2; background-color: #000000; padding: 18px 0; display: block; width: 100%; transition: 0.3s linear; -webkit-transition: 0.3s linear; box-shadow: 0 5px 5px rgba(0,0,0,0.2); transform: translateY(-115%); box-shadow: 0 0 13px 3px rgba(0,0,0,0.4); -webkit-box-shadow: 0 0 13px 3px rgba(0,0,0,0.4); border-bottom: 2px solid #fff; }
.header_sec.fixed { position: fixed; z-index: 9999; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.header_sec.scroll_revers { transform: translateY(0); }
.header_sec .header_main { width: 100%; display: flex; justify-content: space-between; align-items: center; }
.header_sec .main_logo { width: auto; }
.header_sec .navbar { width: auto; }
.header_sec .main_logo img { max-width: 130px; width: 100%; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.header_sec .navbar  ul { list-style: none; display: flex; justify-content: left; }
.header_sec .navbar ul li { list-style: none; margin-right: 30px; width: auto; }
.header_sec .navbar ul li:last-child { margin-right: 0; }
.header_sec .navbar ul li a { position: relative; color: #ffffff; font-size: 20px; font-weight: 500; line-height: 1; text-decoration: none; font-family: 'Open Sans', sans-serif; }
.header_sec .navbar ul li a:hover::after { width: 100%; }
.header_sec .navbar ul li a::after { content: ""; position: absolute; left: 0; bottom: -5px; width: 0; height: 2px; background-color:#ffffff; transition: 0.3s linear; -webkit-transition: 0.3s linear }
.header_sec .navbar ul li a:hover svg * { fill: #ffffff; }
.header_sec .navbar .sub_main { position: relative; }
.header_sec .navbar svg { max-width: 12px; fill: #ffffff; width: 100%; transition: 0.3s linear; -webkit-transition: 0.3s linear;  }
.header_sec.scroll_revers .navbar .sub_main:hover .sub_menu { transition: 0.3s linear; -webkit-transition: 0.3s linear; top: 30px; opacity: 1; visibility:visible; box-shadow: 0px 0px 20px #ffffff; }
.header_sec .navbar .sub_main:hover > a::after { width: 100%; }
.header_sec .navbar .sub_main:hover svg * { fill: #ffffff; }
.header_sec .navbar .sub_menu { opacity: 0; background-color: rgba(0, 0, 0,0.88); visibility: hidden; display: block; padding: 10px; position: absolute; border-radius: 5px; border: 2px solid #000000; width: 200px; left: -20px; top: 50px; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.header_sec .navbar .sub_menu li { margin-right: 0; margin-bottom: 5px; }
.header_sec .navbar .sub_menu li:last-child { margin-bottom: 0; }
.header_sec .navbar .sub_menu li a { font-size: 16px; }
.mob_menu { display: none; }
/* header_sec */

/* banner_sec */
.banner_sec { display: block; padding: 13% 0; background-color: #000000; position: relative; overflow: hidden; }
.banner_sec .container { position: relative; z-index: 2; }
.banner_sec .banner_main { display: flex; justify-content: space-between; align-content: flex-end; }
.banner_sec .banner_slider_main { align-self: center; width: 60%; max-width: 900px; }
.banner_sec .banner_box { padding-bottom: 15px; }
.banner_sec .banner_inner { opacity: 0; margin: 8px 0; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.banner_sec .banner_main .btn_all { padding-top: 30px; }
/* banner_sec */

.banner_box .banner_bg_d { display: inline-block; }
.banner_box .banner_bg_m { display: none; }
/* banner_sec */

/* banner_box */
.banner_box { display: block; width: 100%; padding: 0; margin: 0; background-color: #000000; }
.banner_box .banner_box_img { width: 100%; padding: 0; margin: 0; } 
.banner_box .banner_box_img img { width: 100%; padding: 0; margin: 0; } 
/* banner_box */

/* booking_sec */
.booking_sec { padding: 100px 0; overflow: hidden; background-color: #000000; }
.booking_sec .booking_title { text-align: center; padding-bottom: 30px; }
.booking_sec .error-message { color: red; font-size: 0.9em; margin:5px; }
.booking_sec .main_form { max-width: 650px; margin: 0 auto; }
.booking_sec .form_field { margin-bottom: 12px; }
.booking_sec .form_field input { height: 42px; text-align: left; } 
.booking_sec .form_field input, .booking_sec .form_field select,.booking_sec .form_field textarea { width: 100%; padding: 8px 15px; color: #000000; background-color: #ffffff; font-size: 16px; font-family: 'Open Sans', sans-serif; font-weight: 600; outline: 0; line-height: 1.2; border: 3px solid #d9d9d9; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; appearance:none; box-shadow: none; -webkit-box-shadow: none; -webkit-appearance:none; }
.booking_sec .form_field_Total_Amount { width: 100%; padding: 1px 15px; color: #ffffff; background-color: #50badf; font-size: 16px; font-family: 'Open Sans', sans-serif; font-weight: 600; outline: 0; line-height: 1.2; border: 3px solid #50badf; -webkit-border-radius: 100px; -moz-border-radius: 10px; border-radius: 10px; appearance:none; box-shadow: none; -webkit-box-shadow: none; -webkit-appearance:none; }
.booking_sec .form_field_Total_Amount input { width: auto; padding: 0px; margin: 0; color: #ffffff; border-color: #50badf; background-color: #50badf; font-size: 16px; font-family: 'Open Sans', sans-serif; font-weight: 600; outline: 0; line-height: 1.2;  -webkit-border-radius: 0px; -moz-border-radius: 0px; border-radius: 0px; appearance:none; box-shadow: none; -webkit-box-shadow: none; -webkit-appearance:none; }
.booking_sec .form_field.form_field_Total_Amount label { color: #ffffff; }
.booking_sec .form_field label { color: #ffffff; font-size: 16px; font-weight: 600; font-family: 'Open Sans', sans-serif; padding: 0 0 3px; width: auto; }
.booking_sec .form_button button img { width: 100%; max-width: 23px; margin-top: 2px; margin-right: 3px; }
.booking_sec .form_button a,.booking_sec .form_button button { cursor: pointer; background-color: #03A9F4; color: #ffffff; width: 100%; padding: 10px 5px; border-radius: 100px; -webkit-border-radius: 100px; font-size: 18px; font-weight: bold; font-family: 'Open Sans', sans-serif; border: none; -webkit-border: none; box-shadow: none; -webkit-box-shadow: none; appearance:none; -webkit-appearance:none; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.booking_sec .form_button.form_button2 button { width: auto; min-width: 200px; background-color: transparent; color: #ffffff; border: 2px dashed #03A9F4; }
.booking_sec .form_button a { text-align: center; }
.booking_sec .form_button a:active,
.booking_sec .form_button a:focus,
.booking_sec .form_button a:hover,
.booking_sec .form_button button:active,
.booking_sec .form_button button:focus,
.booking_sec .form_button button:hover { background-color: #005e89; color: #ffffff; }
.booking_sec .form_field_coupon_box { display: flex; padding-bottom: 8px; }
.booking_sec .form_field_coupon input { width: 70%; border-radius: 10px 0px 0px 10px; -webkit-border-radius: 10px 0px 0px 10px; }
.booking_sec .form_field_coupon button { width: 30%; cursor: pointer; background-color: #ff9600; color: #ffffff; padding: 9px 5px; border-radius: 0px 100px 100px 0px; -webkit-border-radius: 0px 100px 100px 0px; font-size: 18px; font-weight: bold; font-family: 'Open Sans', sans-serif; border: none; -webkit-border: none; box-shadow: none; -webkit-box-shadow: none; appearance:none; -webkit-appearance:none; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
/* .booking_sec div#coupon-error { background: #ededed; border-radius: 10px; } */

.booking_sec .form_button { padding-top: 12px; max-width: 100%; } 
.booking_sec .custom-number-input { padding-top: 10px; display: flex; align-items: center; gap: 10px; font-size: 20px; font-weight: bold; justify-content: flex-start; }
.booking_sec .custom-number-input button { width: 35px; height: 35px; border: none; background-color: transparent;  cursor: pointer; padding: 0; appearance:none; -webkit-appearance:none; } 
.booking_sec .custom-number-input button img { width: 100%; max-width: 35px; } 
.booking_sec .custom-number-input span { min-width: 20px; text-align: center; display: inline-block; color: black; }

.booking_sec .couponcode_box { padding: 10px; margin: 0; border: 2px dashed #1a5f5b; border-radius: 10px; margin: auto; background-color: #fff5f5; text-align: center;  margin-bottom: 25px; }
.booking_sec .couponcode_box .coupon-btn { display: block; margin: 0; padding: 6px; font-weight: bold; font-size: 15px; border: none; background-color: #33b5ae; color: white; border-radius: 5px; cursor: pointer; transition: background 0.3s; width: 48%; }
.booking_sec .couponcode_box .coupon-btn:active,
.booking_sec .couponcode_box .coupon-btn:focus,
.booking_sec .couponcode_box .coupon-btn:hover { background-color: #1a5f5b; }
.booking_sec .couponcode_box .couponcode_box_inner { display: flex; justify-content: space-between; }

.booking_sec .download-btn { margin-top: 10px; cursor: pointer; background-color: #000000; color: #ffffff; max-width: 350px; width: 100%; padding: 10px 5px; border-radius: 100px; -webkit-border-radius: 100px; font-size: 18px; font-weight: bold; font-family: 'Open Sans', sans-serif; border: none; -webkit-border: none; box-shadow: none; -webkit-box-shadow: none; appearance:none; -webkit-appearance:none; transition: 0.3s linear; -webkit-transition: 0.3s linear; }
.booking_sec .download-btn:active,
.booking_sec .download-btn:focus,
.booking_sec .download-btn:hover { background-color: #006660; color: #ffffff; }
.booking_sec .loading_main p { font-weight: bold; }
.booking_sec .loading_main { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; position: fixed; width: 100%; height: 100%; top: 0; background-color: #000000; z-index: 999999; left: 0; }
img.loading_img { max-width: 33px; width: 100%; margin-top: 0; margin-right: 5px; }

.loading_main .video_inner img { max-width: 190px; }
.loading_main .video_inner { border-radius: 50%; margin: 0 auto; margin-bottom: 10px; display: flex; align-items: center; justify-content: center; }
.loading_main .video_out { display: block; width: 100%; text-align: center; }

.thankyou { text-align: center; }
.thankyou .ticket_image { min-width: 800px; position: relative; margin: 0 auto; max-width: 600px; border: 2px solid #21931e; }
.thankyou .ticket_image { position: absolute; left: -9999px; top: -9999px; }
div#all-errors { padding-left: 30px; padding-top: 20px; }
.thankyou p { font-size: 18px; }

.thankyou .ticket_image img { width: 100%; }
.booking_sec .thx { padding: 20px 0; border: 2px dashed #ccc; border-radius: 30px; }
.booking_sec .thx h3 { font-weight: bold; padding-bottom: 12px; }
.booking_sec .thx h5 { padding-bottom: 10px; }
/* booking_sec */

.whatsapp_btn { padding-top: 10px; }
.whatsapp_btn a { display: flex; align-items: center; justify-content: start; background-color: #21931e; width: auto; color: #ffffff; font-weight: bold; border-radius: 100px; max-width: 140px; margin: 0 auto; }
.whatsapp_btn a:hover { background-color: #006660; }
.whatsapp_btn img { margin-right: 10px; max-width: 40px; width: 100%; }

.footer_sec { padding: 20px 0; text-align: center; }
.footer_sec p { color: #ccc; font-size: 16px; }


.banner_box_404 { padding: 15% 0; }
.banner_box_404 .banner_box_img{ display: flex; justify-content: center; text-align: center; }
.banner_box_404 img { max-width: 500px; }