/*  */
:root {
  --primary: #0D92F4;
  --main: #0C61A1;
  --secondary: #222831;
  --accent: #E9EDEF;
  --accent-dark: #C7C7C7;
  --white: #FFFFFF;
}

/* Font Style */
@font-face {
  font-family: maven_pro_regular;
  src: url("/wp-content/themes/hello-child/api-elements/assets/fonts/Maven_Pro/MavenPro-Regular.ttf");
}
@font-face {
  font-family: maven_pro_medium;
  src: url("/wp-content/themes/hello-child/api-elements/assets/fonts/Maven_Pro/MavenPro-Medium.ttf");
}
@font-face {
  font-family: maven_pro_semibold;
  src: url("/wp-content/themes/hello-child/api-elements/assets/fonts/Maven_Pro/MavenPro-SemiBold.ttf");
}
@font-face {
  font-family: maven_pro_bold;
  src: url("/wp-content/themes/hello-child/api-elements/assets/fonts/Maven_Pro/MavenPro-Bold.ttf");
}
ul,
li {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.rounded-top-left-4 { border-top-left-radius: var(--bs-border-radius-xl) !important; }
.rounded-top-right-4 { border-top-right-radius: var(--bs-border-radius-xl) !important; }
.rounded-bottom-left-4 { border-bottom-left-radius: var(--bs-border-radius-xl) !important; }
.rounded-bottom-right-4 { border-bottom-right-radius: var(--bs-border-radius-xl) !important; }

.api-body {
  font-family: maven_pro_regular;
  color: var(--secondary);
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
}

/* Typography
-------------------------------------------------------------- */
.api-body .title-display,
.api-body h1,
.api-body h2,
.api-body h3,
.api-body h4,
.api-body h5,
.api-body h6 {
  font-family: maven_pro_medium;
  text-rendering: optimizeLegibility;
  color: var(--secondary);
  font-weight: 600;
}
.api-body h1 {
  font-size: 40px;
  line-height: 40px;
}
.api-body h2 {
  font-size: 30px;
  line-height: 35px;
}
.api-body h3 {
  font-size: 25px;
  line-height: 30px;
}
.api-body h4 {
  font-size: 18px;
  line-height: 25px;
}
.api-body p{ margin-bottom: 0px; }
.api-body .text-primary {
  color: var(--primary) !important;
}
.api-body .text-secondary {
  color: var(--secondary) !important;
}
.api-body .fw-medium {
  font-size: 18px;
  font-family: maven_pro_medium;
  font-weight: 500 !important;
}
.api-body .form-label{
  font-family: maven_pro_medium;
  font-weight: 500;
}
/* a {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  color: var(--main);
}
a:focus, a:hover {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  outline: 0;
}
.link {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.link:hover {
  color: var(--primary) !important;
}
.sticky-top {
  z-index: 50;
  top: 15px;
}
.display-price{ font-size: 24px; } */

/* ----------- Form ----------- */
.api-body input[type=date], .api-body input[type=email], .api-body input[type=number], .api-body input[type=password], .api-body input[type=search], .api-body input[type=tel], .api-body input[type=text], .api-body input[type=url], .api-body select, .api-body textarea{ border: 1px solid var(--bs-border-color); }

/* ---------------- Background ------------------ */
.api-body .bg-primary { background-color: var(--primary) !important; }
.api-body .bg-accent { background-color: var(--accent) !important; }

/*----------------- Button --------------------*/
.api-body .btn{
	font-family: maven_pro_medium;
}
.api-body .btn-outline-primary{
  border: 1px solid var(--primary);
  color: var(--primary);
}
.api-body .btn-outline-primary:hover{ 
  background: var(--primary); 
  color: var(--white); 
  border-color: var(--primary) !important;
}
.api-body .btn-accent{
  border: 1px solid var(--accent-dark);
  background: var(--accent);
  color: var(--secondary);
}
.api-body .btn-accent:hover{ 
  border: 1px solid var(--accent-dark);
  background: var(--accent-dark);
  color: var(--secondary);
}
.api-body .btn-primary{
  background: var(--primary);
  color: var(--white);
  border-color: var(--primary) !important;
}
.api-body .btn-primary:hover{ background: var(--main); }
.api-body .btn-white{
  border: 1px solid var(--accent);
  background: var(--white);
  color: var(--secondary);
}
.api-body .btn-white:hover{ 
  border: 1px solid var(--accent);
  background: var(--accent);
  color: var(--secondary);
}
.api-body [type=button]:focus, .api-body [type=button]:hover, .api-body [type=submit]:focus, .api-body [type=submit]:hover, .api-body button:focus, .api-body button:hover{ background: var(--primary); }
.api-body .btn-outline-bs-border{ border: 1px solid var(--bs-border-color); }
.api-body .btn-check:checked+.btn.btn-outline-bs-border{
	color: var(--white);
    background: var(--primary);
    border-color: var(--primary);
}
.api-body .btn-check+.btn.btn-outline-bs-border:hover{ background-color: var(--accent); border-color: var(--bs-border-color); }

.api-body .nav-pills .nav-link.active, 
.api-body .nav-pills .show>.nav-link{
	color: var(--white);
    background-color: var(--primary);
}
.api-body .nav-link:focus, 
.api-body .nav-link:hover{ color: var(--white); }

/*-------- Card --------*/
.api-body .card-body{ color: var(--primary); }

/*-------- Icon --------*/
.sm-svg-icon{ width: 30px; }

/*-------- Accordion --------*/
.accordion-button::after {
  content: "\f282"; /* Unicode for bi-chevron-down */
  font-family: 'bootstrap-icons';
  font-weight: normal;
  display: inline-block;
  font-size: 1.25rem;
  margin-left: auto;
  transition: transform 0.3s ease;
}
.accordion-button:not(.collapsed)::after {
  transform: rotate(180deg); /* Rotate on open */
}
.api-body .accordion-button{ font-size: 1.25rem; font-weight: 600; }
.api-body .accordion-button[type=button]:focus, .api-body .accordion-button[type=button]:hover{ 
	background: transparent; 
	color: var(--secondary);
}

/*-------- Checkbox --------*/
.cs-checkbox {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
  gap: 8px;
}
.cs-checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 6px;
  background-color: #f5f5f5;
  cursor: pointer;
  position: relative;
  transition: background-color 0.3s, border-color 0.3s;
}
.cs-checkbox input[type="checkbox"]:checked {
  background-color: #0d99ff;
  border-color: #0d99ff;
}
.cs-checkbox input[type="checkbox"]:checked::after {
  content: "✔";
  color: white;
  font-size: 14px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.cs-checkbox span.badge {
  margin-left: auto;
}

/* Pulse Loader */
.pulseLoader .stripe {
  border: 1px solid white;
  background-color: #babbbc;
}
.pulseLoader .stripe {
  animation: pulseloading 2s ease-in-out 0s infinite reverse;
  -webkit-animation: pulseloading 2s ease-in-out 0s infinite reverse;
}
@keyframes pulseloading
{
  0% {opacity: 0.5;}
  50% {opacity: 1;}
  100% {opacity: 0.5;}
}
@-webkit-keyframes pulseloading
{
  0% {opacity: 0.5;}
  50% {opacity: 1;}
  100% {opacity: 0.5;}
}

/* Others */
.api-body .nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
  background: #dedede;
  color: #000000;
}
.bordered-box-nom .text-legend{ margin-top: -15px; }
.api-body .container-payment {
  padding: 15px;
  border: 1px solid #d2dee5;
  border-radius: 15px
}
.api-body .container_radio {
  display: block;
  position: relative;
  font-size: 15px;
  font-size: .9375rem;
  line-height: 1.3;
  margin-bottom: 10px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding-left: 30px
}
.api-body .container_radio.payment_method {
  padding: 0!important
}
.api-body .container_radio.payment_method .checkmark {
  top: 15px;
  right: 15px!important;
  left: unset!important
}
.api-body .container_radio input { position: absolute; opacity: 0; }
.api-body .container_radio input:checked~.checkmark:after { opacity: 1; }
.api-body .container_radio .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 22px;
  width: 22px;
  border: 1px solid #333;
  border-radius: 50%;
}
.api-body .container_radio input:checked~.checkmark {
  border: 2px solid var(--primary);
}
.api-body .container_radio .checkmark:after {
  display: block;
  content: "";
  position: absolute;
  opacity: 0;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--primary);
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}

/* Product Detail */
.api-body .api-product-detail .section-slideshow .logo-abs-top{ width: 230px; }
.api-body .api-product-detail .slideshow { width: 100%; height: 600px; }
.api-body .api-product-detail .slideshow .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.api-body .api-product-detail .swiper-prev-navigation,
.api-body .api-product-detail .swiper-next-navigation{
  top: 45%;
  z-index: 9;
  border: 1px solid var(--white);
  background: var(--white);
  width: 40px;
  height: 40px;
}
.api-body .api-product-detail .swiper-prev-navigation svg path,
.api-body .api-product-detail .swiper-next-navigation svg path{ fill: var(--primary); }
.api-body .api-product-detail .slideshow .swiper-button-disabled{ background: transparent; }
.api-body .api-product-detail .slideshow .swiper-button-disabled svg path{ fill: var(--white); }
.api-body .api-product-detail .slideshow-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.api-body .api-product-detail .slideshow-thumb .swiper-slide {
  height: 100px;
  opacity: 0.4;
  cursor: pointer;
}
.api-body .api-product-detail .slideshow-thumb .swiper-slide-thumb-active { opacity: 1; }
.api-body .api-product-detail .itinerary-box .col-featured-img{ width: 150px; height: 120px; }
.api-body .api-product-detail .itinerary-box .badge-number{ height: 45px; width: 45px; }
.api-body .api-product-detail .map-box iframe{ width: 100%; height: 350px; }
.api-body .api-product-detail .booking-form .qty-control-box{ width: 250px; }