:root {
  --alt-font: "Inter", sans-serif;
  --primary-font: "Inter", sans-serif;
  --base-color: #C8A24C;
  --bs-secondary: #e0aa3e;
  --bs-ketiga: #E5DB9D;
  --bs-blue: #0A3383;
  --abu: #f5f5f5;
  /* --dark-gray: #242B85; */
  /* --very-light-gray: #eceff1; */
  /* --very-light-brown: #fff0de; */
  --yellow: #ffdd29;
  --medium-gray: #292929;
  --solitude-blue: #f4f7f9;
  --base-color-rgb:200,162,76;
}

#google_translate_element {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    padding: 0;
}

/* Perkecil dropdown bawaan Google */
.goog-te-gadget .goog-te-combo {
    width: 100px !important;
    padding: 4px 6px !important;
    font-size: 12px !important;
}

/* Hilangkan border/bayangan yang bikin layout geser */
.goog-te-gadget {
    font-size: 0 !important;
}
.goog-te-gadget span {
    display: none;
}

.skiptranslate {
  /*display: none !important;*/
}

body {
  /*position: relative !important;*/
  top: 0px !important;
  font-size: 14px;
  line-height: 25px;
}

.fz-10 {
  font-size: 10px;
}

.fz-11 {
  font-size: 11px;
}

.fz-12 {
  font-size: 12px;
}

.fz-14 {
  font-size: 14px;
}

.fz-16 {
  font-size: 16px;
}

.fz-18 {
  font-size: 18px;
}

.fz-20 {
  font-size: 20px;
}

.fz-22 {
  font-size: 22px;
}

.fz-24 {
  font-size: 24px;
}

.fz-25 {
  font-size: 25px;
}

.fz-26 {
  font-size: 26px;
}

.fz-28 {
  font-size: 28px;
}

.fz-30 {
  font-size: 30px;
}

.fz-32 {
  font-size: 32px;
}

.fz-34 {
  font-size: 34px;
}

.fz-35 {
  font-size: 35px;
}

.fs-unggulan {
    font-size: 18px;
}

.f-bai {
  font-family: 'Bai Jamjuree', sans-serif;
}

@media (max-width: 768px) {
    .fs-unggulan {
        font-size: 16px;
    }
    
    .d-ruby {
        display: ruby;
    }
}

.text-kamuflase h2 {
	font-size: 15px;
    margin-bottom: 10px;
    color: #9ca29efa;
}

.text-kamuflase p {
	font-size: 12px;
    color: #9ca29efa;
}

.limit-text-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
            line-clamp: 2; 
    -webkit-box-orient: vertical;
}

.limit-text-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3; /* number of lines to show */
            line-clamp: 3; 
    -webkit-box-orient: vertical;
}

.lh-small {
    line-height: 1.5;
}

.text-utama {
  color: var(--base-color);
}

.text-gradient-utama {
  background: linear-gradient(to right top, var(--base-color) 15.923566878980886%, var(--bs-secondary) 50.63694267515923%, var(--bs-ketiga) 99.68152866242038%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-kedua {
  color: var(--bs-secondary);
}

.text-ketiga {
  color: var(--bs-ketiga);
}

.text-kuning {
  color: #FDD663;
}

.text-putih {
  color: white;
}

.text-hitam {
  color: black;
}

.text-footer {
  color: white !important;
}

.text-biru {
  color: var(--bs-blue);
}

.bg-topbar {
  background: linear-gradient(to right, black, var(--base-color), black);
}

.bg-utama {
  background-color: var(--base-color);
}

.bg-utama-gradient {
  background: linear-gradient(to right, var(--base-color), var(--bs-ketiga), var(--bs-secondary));
}

.bg-gradient-2 {
  background: linear-gradient(to right, var(--bs-ketiga), var(--bs-secondary));
}

.bg-gradient-3 {
  background: linear-gradient(var(--bs-secondary), var(--bs-ketiga));
}

.bg-kedua {
  background-color: var(--bs-secondary);
}

.bg-ketiga {
  background-color: var(--bs-ketiga);
}

.bg-biru {
  background-color: var(--bs-blue);
}

.bg-putih {
  background-color: white;
}

.bg-hitam {
  background-color: black;
}

.bg-gradient-hitam {
  background: linear-gradient(to right, rgba(0,0,0), rgba(0,0,0,.9), rgba(0,0,0,.7), rgba(0,0,0,.4))
}

.bg-hitam-soft {
  background-color: var(--medium-gray);
}

.bg-abu {
    background-color: var(--abu);
}

.bg-soft-abu {
    background: #e5e6e7;
}

.bg-rental {
  background: linear-gradient(white, var(--abu), var(--bs-ketiga), white);
}

.bg-lg-contain {
  background-size: contain !important;
}

.bg-sewa-all-in {
    background: linear-gradient(to right, rgba(255,255,255,.2), rgba(255,255,255,5), rgba(255,255,255,.9), rgba(255,255,255)), url('../../../images/bg-rental.jpg') left no-repeat; 
    background-size: cover;
}

@media (max-width: 768px) {
    .bg-sewa-all-in {
        background: linear-gradient(to right, rgba(255,255,255,.5), rgba(255,255,255,.7), rgba(255,255,255,.9), rgba(255,255,255)), url('../../../images/bg-rental.jpg') right no-repeat; 
        background-size: cover;
    }
}

.border-top-utama {
  border-top: 1.5px solid var(--bs-primary);
}

.border-utama {
  border: 1px solid var(--bs-primary);
}

.border-kedua {
  border: 1px solid var(--bs-secondary);
}

.border-putih {
  border: 1px solid white;
}

.border-left-utama {
  border-left: 5px solid var(--bs-primary);
}

.topbar-lang {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 0;
}

.scroll-top {
  scroll-margin: 70px;
}

.scroll {
  display: block;
  height: 100px;
  overflow: auto;
  margin-bottom: 10px;
}

.simplescroll::-webkit-scrollbar {
  width: 3px;
  height: 3px;
}
.simplescroll::-webkit-scrollbar-track {
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.1);
}
.simplescroll::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: var(--base-color);
}
.simplescroll::-webkit-scrollbar-thumb:hover {
  background: var(--base-color);
}
.simplescroll::-webkit-scrollbar-thumb:active {
  background: var(--base-color);
}

.ratio-galeri-lans {
  aspect-ratio: 4/3 !important;
}

.ratio-galeri-potr {
  aspect-ratio: 3/4 !important;
}

.w-70 {
    height: auto;
    width: 70%;
}

.w-footer {
    height: auto; 
    width: 100%;
}

.hidden-shapo-logo {
    position: relative;
    margin-top: -120px;
    background: #e5e6e7;
}

@media (max-width: 768px){
    .hidden-shapo-logo {
        position: relative;
        margin-top: 0px;
        background: #e5e6e7;
        bottom: 80px;
    }
    .w-footer {
        height: auto; 
        width: 80%;
    }

    .bg-sm-cover {
      background-size: cover !important;
    }
}

.rental-card{
    position:relative;
    background:#fff;
    border-radius:15px;
    padding:10px;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
    transition:.3s;
    height:100%;
    border:1px solid #eee;
}

.rental-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.card-badge{
    position:absolute;
    top:14px;
    left:0;
    background:#c48b1c;
    color:#fff;
    padding:8px 18px;
    font-size:12px;
    font-weight:700;
    clip-path:polygon(0 0,100% 0,88% 100%,0 100%);
    letter-spacing:.4px;
}

.transmission{
    position:absolute;
    top:16px;
    right:16px;
    font-size:13px;
    font-weight:600;
    color:#333;
}

.transmission i{
    margin-right:4px;
}

.car-image{
    display:flex;
    align-items:center;
    justify-content:center;
}

.car-image img{
    transition:.4s;
}

/* .rental-card:hover .car-image img{
    transform:scale(1.05);
} */

.rental-card h4{
    font-size:16px;
    font-weight:600;
    line-height:1.15;
    color:black;
    margin:10px 0 6px;
}

.car-info{
    color:black;
    margin-bottom:18px;
}

.price-box{
    margin-bottom:18px;
}

.price-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:2px;
}

.price{
    font-size:12px;
    color:var(--bs-secondary);
    font-weight:600;
}

.price b{
    font-size:16px;
}

.price.second{
    color:black;
}

.price-row small{
    color:black;
    font-weight:600;
}

.rent-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    height:48px;
    background:transparent;
    border: 2px solid black;
    color:black;
    border-radius:10px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.rent-btn:hover{
    background: linear-gradient(30deg, black, black, var(--base-color));
    color: white;
    border: 2px solid white;
}

@media (max-width:991px){
    .rental-card{
        padding:10px;
    }
    .rental-card h4{
        font-size:18px;
    }
    .price{
        font-size:16px;
    }
    .price b{
        font-size:24px;
    }
    .rent-btn{
        height:42px;
        font-size:14px;
    }
    .card-badge{
        font-size:10px;
        padding:6px 14px;
    }
}

@media (max-width:576px){
    .rental-card{
        border-radius:10px;
        padding:8px;
    }
    .rental-card h4{
        font-size:15px;
        margin-top:5px;
    }
    .car-info{
        margin-bottom:10px;
    }
    .price{
        font-size:13px;
    }
    .price b{
        font-size:20px;
    }
    .price-row small{
        font-size:10px;
    }

    .rent-btn{
        height:38px;
        font-size:12px;
    }
    .transmission{
        font-size:11px;
        right:10px;
        top:10px;
    }
    .card-badge{
        font-size:9px;
        padding:5px 10px;
    }
}

/* Card Paket Wisata */
.package-card {
  background: #fff;
  border: 1px solid var(--base-color);
  border-radius: 18px;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: 0 12px 30px rgba(var(--base-color-rgb), 0.07);
  transition: all 0.35s ease;
}
.package-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 42px rgba(var(--base-color-rgb), 0.14);
  border-color: rgba(var(--bs-secondary-rgb), 0.3);
}

.package-card__media {
  /* height: 160px; */
  overflow: hidden;
  padding: 5px;
}
.package-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  transition: transform 0.5s ease;
}
/* .package-card:hover .package-card__img {
  transform: scale(1.08);
} */

.package-card__body {
  padding: 0.7rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.package-card__title {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.4;
  color: black;
  margin-bottom: 0.5rem;
}

.package-card__meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(var(--base-color-rgb), 0.08);
}
.package-card__meta i {
  color: var(--bs-secondary);
  font-size: 14px;
  margin-top: 2px;
  flex-shrink: 0;
}
.package-card__meta span {
  font-family: var(--alt-font);
  font-size: 13px;
  color: #5b6472;
  line-height: 1.5;
}

.package-card__block {
  margin-bottom: 0.5rem;
  /* border-bottom: 1px solid rgba(var(--base-color-rgb), 0.08); */
}
.package-card__block-label {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-weight: 700;
  font-size: 14px;
  /* text-transform: uppercase; */
  letter-spacing: 0.04em;
  color: black;
  margin-bottom: 0.55rem;
}
.package-card__block-label i {
  color: var(--bs-secondary);
}

.package-card__dest-list {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.package-card__dest-item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--alt-font);
  font-size: 13px;
  color: #4b5563;
}
.package-card__dest-item svg {
  flex-shrink: 0;
}
.package-card__dest-item span {
  line-height: 1.4;
}

.package-card__dest-list--scroll {
  max-height: 108px;
  overflow-y: auto;
  padding-right: 6px;
  /* padding-bottom: 1rem; */
  border-bottom: 1px solid var(--base-color);
}
.package-card__dest-list--scroll::-webkit-scrollbar {
  width: 4px;
}
.package-card__dest-list--scroll::-webkit-scrollbar-thumb {
  background: var(--bs-secondary);
  border-radius: 4px;
}
.package-card__dest-list--scroll::-webkit-scrollbar-track {
  background: var(--abu);
}

.package-card__dest-text {
  font-family: var(--alt-font);
  font-size: 0.8rem;
  line-height: 1.65;
  color: #4b5563;
  margin: 0;
}

.package-card__inex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--base-color);
}
.package-card__inex-label {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-family: var(--alt-font);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-bottom: 0.5rem;
}
.package-card__inex-label--in {
  color: var(--bs-secondary);
}
.package-card__inex-label--in i {
  color: var(--bs-secondary);
}
.package-card__inex-label--ex {
  color: red;
}
.package-card__inex-label--ex i {
  color: red;
}

.package-card__inex-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.package-card__inex-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.3rem;
  font-size: 13px;
  color: black;
  line-height: 1.35;
}
.package-card__inex-list li svg {
  flex-shrink: 0;
  margin-top: 2px;
}

/* Pilihan unit */
.package-card__unit {
  margin-bottom: 1.1rem;
}
.package-card__unit-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.package-card__unit-item {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  background: var(--bs-ketiga);
  border: 1.5px solid transparent;
  border-radius: 10px;
  padding: 0.55rem 0.75rem;
  cursor: pointer;
  transition: all 0.25s ease;
}
.package-card__unit-item:hover {
  border-color: rgba(var(--base-color-rgb), 0.3);
}

.package-card__unit-check {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1.5px solid #c8c8c8;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.package-card__unit-check i {
  font-size: 0.65rem;
  color: #fff;
  opacity: 0;
  transition: opacity 0.2s ease;
}

/* Bg putih + border base-color saat aktif */
.package-card__unit-item--active {
  background: #fff;
  border-color: var(--base-color);
  box-shadow: 0 3px 10px rgba(var(--base-color-rgb), 0.12);
}
.package-card__unit-item--active .package-card__unit-check {
  background: var(--base-color);
  border-color: var(--base-color);
}
.package-card__unit-item--active .package-card__unit-check i {
  opacity: 1;
}
.package-card__unit-item--active .package-card__unit-name {
  color: var(--base-color);
  font-weight: 700;
}

.package-card__unit-name {
  flex: 1;
  font-size: 13px;
  color: black;
}
.package-card__unit-radio:checked ~ .package-card__unit-name {
  color: var(--base-color);
  font-weight: 700;
}
.package-card__unit-price {
  font-weight: 700;
  font-size: 13px;
  color: black;
  flex-shrink: 0;
}

/* Footer harga + tombol */
.package-card__footer {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-top: 0.5rem;
  border-top: 1px solid rgba(var(--base-color-rgb), 0.08);
}
.package-card__price {
  line-height: 1.15;
}
.package-card__price-amount {
  /* display: block; */
  font-family: var(--primary-font);
  font-weight: 800;
  font-size: 18px;
  color: var(--bs-secondary);
}
.package-card__price-unit {
  /* display: block; */
  font-family: var(--alt-font);
  font-size: 12px;
  color: #9aa0a8;
}

.package-card__btn {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--base-color);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  text-decoration: none;
  transition: all 0.3s ease;
}
.package-card__btn:hover {
  background: var(--bs-secondary);
  color: var(--base-color);
  transform: scale(1.08);
}

@media (max-width: 991px) {
  .package-card__inex {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .package-card__dest-list--scroll {
      max-height: none;
      overflow-y:none;
      padding-bottom:10px;
    }
}

/* Stats */
.stats-section-custom {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.stats-section-custom .background-image {
  position: absolute;
  inset: 0;
}

.stats-section-custom .background-image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.stats-section-custom .overlay {
  position: absolute;
  inset: 0;
  background: #000000d1;
}

.stats:last-child .stats-item {
  border-right: 0;
}

.stats-item {
  display: flex;
  flex-direction: column;
  gap: 5px;
  justify-content: start;
  align-items: center;
  text-align: center;
  border-right: 1px solid #4d4d4d;
  padding-right: 10px;
  padding-left: 10px;
  /* border-radius: 10px; */
  height: 100%;
  transition: all 0.3s;
}
.stats-item:hover {
  background: #c1904854;
  border-right: 1px solid #c1904854;
  transform: translateY(-10px);
  transition: all 0.3s;
} 
.stats-item img {
  width: 80px;
  margin: 0 auto;
}
.stats-item .title {
  margin-bottom: 0px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  /* width: 85%; */
}
.stats-item .desc {
  margin-bottom: 0;
  color: #d6d6d6;
  font-size: 13px;
}

@media (max-width: 756px) {
  .stats .stats-item {
    border: 0;
    padding: 15px;
  }
  .stats-item:hover {
    transform: translateY(-1px);
  } 
  /*.stats-item img {*/
  /*  width: 50px;*/
  /*}*/
  .stats-item .title {
    font-size: 15px !important;
    margin-bottom: 0 !important;
  }
}

.welcome-shape {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.07;
  filter: sepia(1);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 2;
}

.footer_shape-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  /* background-color: black; */
  opacity: .03;
  mix-blend-mode: luminosity;
  /* animation: topBottom 3s ease-in-out infinite; */
  z-index: -1;
}

.card-rental {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.card-rental:hover {
  -webkit-transform: scale(1.02);
  -ms-transform: scale(1.02);
  transform: scale(1.02);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  -webkit-box-shadow: -2px 5px 26px 4px rgba(184, 138, 68, .75);
  -moz-box-shadow: -2px 5px 26px 4px rgba(184, 138, 68, .75);
  box-shadow: -2px 5px 26px 4px rgba(184, 138, 68, .75);
}

.p-cta {
  padding: 70px 60px;
}

@media (max-width: 768px) {
  .p-cta {
    padding: 60px 40px;
  }
}

.cta-container {
  background: var(--dark-gray);
  color: white;
  border-radius: 2rem;
  position: relative;
  overflow: hidden;
}

.cta-container .bg-image {
  position: absolute;
  filter: grayscale(1);
  z-index: 0;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

.cta-container .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
  background: linear-gradient(90deg,
      rgba(57, 149, 214, 0.9) 0%,
      rgba(57, 149, 214, 0.9) 50%,
      rgba(57, 149, 214, 0.5) 100%);
}

.cta-container .content {
  position: relative;
  z-index: 2;
}

.cta-container h2 {
  font-weight: 600;
}

.cta-container p {
  font-size: 0.9rem;
}

.title_seperator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  margin-bottom: 20px;
}
.title_seperator span {
  height: 3px;
  width: 80px;
  border-radius: 5px;
}
.title_seperator span:nth-child(2) {
  width: 15px;
}
.title_seperator span:nth-child(3) {
  width: 6px;
}

/* ===================
5. Site title css
====================== */

.site-heading {
  margin-bottom: 50px;
  position: relative;
}

.site-heading-inline {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 15px;
}

.site-title-tagline {
  text-transform: uppercase;
  letter-spacing: 3px;
  /* font-size: 16px; */
  font-weight: 600;
  /* color: white; */
  position: relative;
  /* background: var(--bs-secondary); */
  border-radius: 50px;
  padding: 5px 10px 5px 2px;
}

.site-title-tagline i {
  font-size: 16px;
  width: 30px;
  height: 30px;
  line-height: 30px;
  background: black;
  color: var(--base-color);
  text-align: center;
  border-radius: 50px;
}

.site-title {
  font-weight: 700;
  text-transform: capitalize;
  font-size: 40px;
  color: black;
  margin-top: 8px;
  margin-bottom: 0;
}

.site-title span {
  color: var(--bs-secondary);
}

.site-heading p {
  margin-top: 15px;
}

.tutup-review {
  position: absolute;
  width: 50%;
  height: 50px;
  left: 25%;
  bottom: 40px;
  background: var(--base-color);
  z-index: 3;
  justify-content: center;
  display: flex;
}

@media (max-width: 768px) {
  .tutup-review {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 30px;
    background: var(--base-color);
    z-index: 3;
    justify-content: center;
    display: flex;
  }
}

.artikel h3 {
  font-size: 30px;
}

.fw-300 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

.fw-400 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.fw-500 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.fw-600 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

.fw-700 {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

/*====================================
    demo service css
=====================================*/

.service-main ul.service-ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: -30px;
    margin-left: -30px;
}
.service-main ul.service-ul li.service-li {
    position: relative;
    width: calc(25% - 30px);
    margin-left: 30px;
    padding: 25px 20px;
}
.service-main ul.service-ul li.service-li::before {
    /* background-color: #FFFFFF; */
    background: linear-gradient(to right, rgba(255,255,255), rgba(255,255,255,.9)), url('../../../images/android-chrome-192x192.png') bottom;
    background-size: contain;
    background-repeat: no-repeat;
    background-position-x: right;
    border: 1px solid var(--bs-secondary);
    content: '';
    position: absolute;
    top: 70px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    z-index: 0;
    border-radius: 8px;
}
.service-main ul.service-ul li.service-li .service-main {
    position: relative;
    text-align: center;
    z-index: 2;
}
.service-main ul.service-ul li.service-li .service-main .service-icon a.icon {
    background-color: var(--base-color);
    width: 85px;
    height: 85px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    border-radius: 5px;
}
.service-main ul.service-ul li.service-li .service-main .service-icon a.icon span {
    /* background-color: #ffffff; */
    color: var(--base-color);
    font-size: 25px;
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    -webkit-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.service-main ul.service-ul li.service-li:hover .service-main .service-icon a.icon span {
    background-color: black;
    color: #FFFFFF;
}
/* .service-main ul.service-ul li.service-li .service-main .service-content {
    margin-top: 26px;
} */
.service-main ul.service-ul li.service-li .service-main .service-content h4.title {
    font-size: 18px;
}
.service-main ul.service-ul li.service-li:hover .service-main .service-content h4.title {
    color: var(--base-color);
}
.service-main ul.service-ul li.service-li .service-main .service-content p.desc {
    margin-top: 18px;
}
@media (max-width: 1199px) {
    .service-main ul.service-ul li.service-li {
        width: calc(50% - 30px);
    }
}
@media (max-width: 767px) {
    .service-main ul.service-ul {
        justify-content: center;
        padding: 0 !important;
        margin-left: 0;
    }
    .service-main ul.service-ul li.service-li {
        width: calc(50% - 12px);
        margin-left: 0;
        padding: 30px 12px;
    }
}
@media (max-width: 479px) {
    .service-main ul.service-ul li.service-li {
        width: calc(100% - 12px);
    }
}

/* custom cursor */
.custom-cursor .circle-cursor-inner {
  background-color: var(--brown);
}

.custom-cursor .circle-cursor-inner.cursor-link-hover {
  background-color: var(--brown);
}

.custom-cursor .circle-cursor-outer {
  border: 1px solid var(--brown);
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 25px;
}

h1 {
  line-height: 4.375rem;
}

h2 {
  line-height: 3.438rem;
}

h3 {
  line-height: 3rem;
}

h4 {
  line-height: 2.6rem;
}

h5 {
  line-height: 2rem;
}

h6 {
  line-height: 1.75rem;
}

/* header */
.navbar .navbar-nav .nav-link {
  font-size: 14px;
  font-family: 'Bai Jamjuree', sans-serif;
}

.navbar .navbar-nav .dropdown .dropdown-menu a {
  font-size: 14px;
  line-height: 28px;
  font-family: 'Bai Jamjuree', sans-serif;
}

header .btn.btn-small {
  font-size: 14px
}

/* header .btn.btn-small i {
  top: -2px;
} */

header .navbar-brand img {
  max-height: 36px;
}

@media (max-width: 767px) {
  header .navbar-brand img {
    max-height: 30px;
  }

  header .navbar-brand {
    padding: 10px 0;
  }
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu {
  width: 300px;
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a {
  border-bottom: 1px solid var(--very-light-gray);
  padding: 10px 25px;
  font-size: 17px;
  color: var(--base-color) !important;
  font-family: "Exo", sans-serif !important;
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a:hover {
  background-color: var(--very-light-gray);
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a img {
  width: 40px;
  margin-right: 10px;
}

/* btn */
.btn-link i {
  top: 0px;
}

.btn.btn-hover-animation-switch .btn-icon {
  margin-left: 6px;
}

.btn {
  font-family: "Exo", sans-serif;
  font-weight: normal !important;
  text-transform: none;
  letter-spacing: normal;
}

.btn-yellow {
  background-color: var(--yellow) !important;
  color: var(--dark-gray) !important;
}

.btn.btn-box-shadow.btn-yellow:hover {
  background-color: var(--yellow) !important;
  color: var(--dark-gray) !important;
}

.btn.btn-box-shadow.btn-yellow:active {
  border-color: var(--yellow) !important;
}

.btn.btn-extra-large {
  font-size: 17px;
}

.btn.btn-large {
  font-size: 16px;
}

.btn.btn-medium {
  font-size: 15px;
}

.btn.with-rounded.btn-large>span {
  line-height: 34px;
}

.btn.with-rounded.btn-medium>span {
  line-height: 30px;
}

/* text color */
.text-emerald-green {
  color: #62cd54;
}

/* bg color */
.bg-orient-blue {
  background-color: #004211;
}

/* bg gradient color */
.bg-gradient-green-yellow-color {
  background: rgb(236, 171, 35);
  background: linear-gradient(306deg, rgba(236, 171, 35, 1) 0%, rgba(0, 83, 61, 1) 85%);
}

.bg-gradient-gray-light-dark-transparent {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(32, 35, 41, 1)), to(transparent));
  background-image: linear-gradient(to top, rgba(32, 35, 41, 1) 10%, transparent 50%);
}

/* homepage */
.contact-form-style-01 .btn.btn-large {
  padding: 13px 40px;
}

.terms-condition .box:before {
  top: 7px;
}

.terms-condition .box:after {
  top: 11px;
}

.contact-form-style-01 {
  margin-top: -100px;
}

/* page title */
.page-title-extra-small h1 {
  font-size: 18px;
  line-height: 22px;
}

.page-title-extra-small h2 {
  font-size: 4rem;
  line-height: 3.8rem;
}

/* team style */
.team-style-01 figure figcaption .social-icon a {
  margin: 0 5px;
}

/* text shadow */
.text-shadow-medium {
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}

/* border color */
.border-color-yellow {
  border-color: var(--yellow) !important;
}

.pagination-style-01 .page-item.active .page-link,
.pagination-style-01 .page-item .page-link:hover {
  background: var(--dark-gray);
  color: var(--white);
}

.pagination-style-01 .page-item:first-child .page-link,
.pagination-style-01 .page-item:last-child .page-link {
  background: transparent;
  box-shadow: none !important;
}

.pagination-style-01 .page-item:first-child .page-link,
.pagination-style-01 .page-item:last-child .page-link {
  background: transparent;
  box-shadow: none !important;
}

.pagination-style-01 .page-item:first-child .page-link:hover,
.pagination-style-01 .page-item:last-child .page-link:hover {
  color: var(--dark-gray);
}

/* progress bar style 03 */
.progress-bar-style-03 .progress .progress-bar-title,
.progress-bar-style-03 .progress .progress-bar-percent {
  bottom: 10px;
}

.progress-bar-style-03 .progress {
  height: 6px;
}

/* tooltip */
.tooltip-inner {
  background-color: var(--white);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.16);
  color: var(--medium-gray);
  padding: 22px 35px;
  max-width: 260px;
  font-size: 16px;
  line-height: 26px;
  text-transform: none;
  font-weight: 400;
}

.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,
.bs-tooltip-bottom .tooltip-arrow:before {
  border-bottom-color: var(--white) !important;
  border-width: 0 1.7em 1.7em !important;
}

.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,
.bs-tooltip-top .tooltip-arrow:before {
  border-top-color: var(--white) !important;
  border-width: 1.7em 1.7em 0 !important;
}

.bs-tooltip-auto[data-popper-placement^=bottom] {
  margin-top: 15px !important;
}

.bs-tooltip-auto[data-popper-placement^=top] {
  margin-bottom: 15px !important;
}

.tooltip {
  opacity: 1 !important;
}

.tooltip .tooltip-arrow {
  width: 3.5em;
  height: 1.2em;
}

.bs-tooltip-start.tooltip .tooltip-arrow {
  width: 1.2em;
  height: 3.2em;
  margin-top: -18px;
}

.bs-tooltip-auto[data-popper-placement^=left] {
  margin-right: 15px;
}

.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,
.bs-tooltip-start .tooltip-arrow:before {
  border-width: 1em 0 1em 1em !important;
  border-left-color: var(--white) !important;
}

.bs-tooltip-end.tooltip .tooltip-arrow {
  width: 1.2em;
  height: 3.2em;
  margin-top: -18px;
}

.bs-tooltip-auto[data-popper-placement^=right] {
  margin-left: 15px !important;
}

.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,
.bs-tooltip-end .tooltip-arrow:before {
  border-width: 1.7rem 1.7rem 1.7rem 0 !important;
  border-right-color: var(--white) !important;
}

.tooltip-title {
  font-weight: 600;
  display: block;
  font-size: 18px;
  margin-bottom: 7px;
  color: var(--dark-gray);
  letter-spacing: -0.5px;
}

/* top right bottom left */
.left-35px {
  left: 35px;
}

.bottom-35px {
  bottom: 35px;
}

/* footer */
footer .footer-logo img {
  height: auto;
}

.footer-dark p,
.footer-dark .widget-text {
  color: black;
  opacity: 0.4;
}

.footer-dark .elements-social .light li a {
  opacity: 1;
}

.footer-dark p a,
.footer-dark p a:hover {
  color: var(--white);
}

.footer-dark ul li a,
.footer-dark .widget-link {
  color: var(--white);
  opacity: 0.4;
}

.footer-dark ul li a:hover,
.footer-dark .widget-link:hover,
.footer-dark a:hover {
  opacity: 1;
  color: var(--white);
}

footer ul li {
  margin-bottom: 0;
}

.footer-dark .newsletter-style-02 input::placeholder {
  color: var(--white);
}

.footer-dark .newsletter-style-02 input::-webkit-input-placeholder {
  color: var(--white) !important;
  text-overflow: ellipsis;
  opacity: 0.4;
}

.footer-dark .newsletter-style-02 input::-moz-placeholder {
  color: var(--white) !important;
  text-overflow: ellipsis;
  opacity: 0.4;
}

.footer-dark .newsletter-style-02 input:-ms-input-placeholder {
  color: var(--white) !important;
  text-overflow: ellipsis;
  opacity: 0.4;
}

.is-touchable .cursor-page-inner {
  display: none !important;
}

/* media query responsive */
@media (max-width: 1300px) {
  .sticky-wrap.shadow-in {
    left: 18px;
  }
}

@media (max-width: 1250px) {
  .sticky-wrap.shadow-in {
    left: 2px;
  }
}

@media (max-width: 1199px) {
  header .btn.btn-rounded.btn-small {
    padding: 9px 18px;
  }
}

@media (max-width: 991px) {
  .contact-form-style-01 {
    margin-top: 0;
  }

  .tab-style-08 ul .nav-item .nav-link {
    padding: 18px 20px;
  }

  .elements-social .large-icon li {
    margin: 0 5px;
  }

  .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a {
    padding-left: 0px;
    padding-right: 0px;
  }

  .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a:hover {
    background-color: transparent;
  }
}

@media (max-width: 767px) {
  .process-step-style-03 .progress-step-separator {
    display: block;
  }
}

@media (max-width: 575px) {
  .process-step-style-03 .progress-step-separator {
    display: none;
  }
}

.custom-overlay {
  position: relative;
}

.custom-overlay::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .5);
}

.custom-hover-scale {
  transition: 0.3s;
}

.custom-hover-scale:hover {
  transform: scale(1.04);
}

.custom-hover-scale .image {
  transition: .3s;
}

.custom-hover-scale:hover .image {
  transform: scale(1.05);
}

.contact-btn {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 8;
  display: flex;
  gap: 10px;
}

@media (min-width: 992px) {
  .position-lg-sticky {
    position: sticky;
  }
}


@font-face {
    font-family: 'qlwapp-whatsapp';
    src: url(data:application/x-font-woff;charset=utf-8;base64,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) format('woff');
    font-weight: normal;
    font-style: normal
  }
  
  .qlwapp-whatsapp-icon {
    font-family: 'qlwapp-whatsapp' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
  }
  
  .qlwapp-whatsapp-icon:before {
    content: "\e900"
  }
  
  #qlwapp {
    pointer-events: none;
    box-sizing: border-box
  }
  
  @media(min-width:430px) {
    #qlwapp {
        width: 430px
    }
  }
  
  #qlwapp * {
    box-sizing: border-box
  }
  
  #qlwapp.qlwapp-js-ready {
    display: block
  }
  
  #qlwapp.qlwapp-hide,
  #qlwapp.qlwapp-desktop.mobile,
  #qlwapp.qlwapp-mobile.desktop {
    display: none
  }
  
  #qlwapp .qlwapp-readonly,
  #qlwapp.qlwapp-readonly {
    pointer-events: none !important;
    opacity: .5 !important
  }
  
  #qlwapp .qlwapp-disabled,
  #qlwapp.qlwapp-disabled {
    display: none;
    visibility: hidden
  }
  
  #qlwapp.qlwapp-middle-left,
  #qlwapp.qlwapp-bottom-left,
  #qlwapp.qlwapp-middle-right,
  #qlwapp.qlwapp-bottom-right {
    position: fixed;
    z-index: 9999999
  }
  
  #qlwapp.qlwapp-middle-left,
  #qlwapp.qlwapp-bottom-left {
    right: auto;
    left: 0
  }
  
  #qlwapp.qlwapp-middle-left .qlwapp-toggle .qlwapp-time,
  #qlwapp.qlwapp-bottom-left .qlwapp-toggle .qlwapp-time {
    left: 0;
    right: auto
  }
  
  #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-developer,
  #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-developer,
  #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle,
  #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle,
  #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle,
  #qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-toggle {
    margin-left: 0;
  }
  
  #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text,
  #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
    right: auto;
    left: 60px
  }
  
  #qlwapp.qlwapp-middle-left .qlwapp-box:before,
  #qlwapp.qlwapp-bottom-left .qlwapp-box:before {
    right: auto;
    left: 20px
  }
  
  #qlwapp.qlwapp-middle-right,
  #qlwapp.qlwapp-bottom-right {
    left: auto;
    right: 0
  }
  
  #qlwapp.qlwapp-middle-right .qlwapp-toggle .qlwapp-time,
  #qlwapp.qlwapp-bottom-right .qlwapp-toggle .qlwapp-time {
    left: auto;
    right: 0
  }
  
  #qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-developer,
  #qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-developer,
  #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-toggle,
  #qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-toggle,
  #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle,
  #qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-toggle {
    margin-right: 20px
  }
  
  #qlwapp.qlwapp-middle-left,
  #qlwapp.qlwapp-middle-right {
    top: 40%;
    bottom: auto
  }
  
  #qlwapp.qlwapp-middle-left .qlwapp-developer,
  #qlwapp.qlwapp-middle-right .qlwapp-developer {
    padding: 0 24px
  }
  
  #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle {
    margin-left: -48px;
    padding-left: 60px
  }
  
  #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,
  #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle {
    margin-right: -48px;
    padding-right: 60px
  }
  
  #qlwapp.qlwapp-bottom-left,
  #qlwapp.qlwapp-bottom-right {
    top: auto;
    bottom: 0
  }
  
  #qlwapp.qlwapp-rounded.qlwapp-bubble .qlwapp-toggle {
    border-radius: 50%
  }
  
  #qlwapp.qlwapp-rounded.qlwapp-button .qlwapp-toggle {
    border-radius: 0 25px 25px 0;
  }
  
  @media(min-width:430px) {
    #qlwapp.qlwapp-rounded .qlwapp-box {
        border-radius: 8px
    }
  }
  
  #qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-user,
  #qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-message {
    border-radius: 4px
  }
  
  #qlwapp p:last-child {
    margin: 0
  }
  
  #qlwapp time {
    opacity: .8;
    font-style: italic;
    font-size: 10px
  }
  
  #qlwapp .qlwapp-no-contacts {
    display: flex;
    height: 134px;
    justify-content: center;
    align-items: center
  }
  
  #qlwapp .qlwapp-container {
    display: flex;
    flex-direction: column
  }
  
  #qlwapp .qlwapp-clearfix:before,
  #qlwapp .qlwapp-clearfix:after {
    content: '';
    display: block;
    clear: both
  }
  
  #qlwapp .qlwapp-previous,
  #qlwapp .qlwapp-close {
    display: block;
    opacity: .8;
    font-style: unset;
    font-size: 24px;
    font-weight: bold;
    width: 24px;
    height: 24px;
    cursor: pointer;
    text-align: center;
    line-height: 24px;
    z-index: 1
  }
  
  #qlwapp .qlwapp-previous {
    width: 16px;
    height: 36px;
    cursor: pointer;
    text-align: center;
    line-height: 36px;
    margin-right: auto
  }
  
  #qlwapp .qlwapp-developer {
    font-size: 8px;
    top: -20px;
    position: relative
  }
  
  #qlwapp .qlwapp-developer,
  #qlwapp .qlwapp-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto
  }
  
  #qlwapp .qlwapp-toggle {
    pointer-events: all;
    cursor: pointer;
    box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.06), 0 2px 32px 0 rgba(0, 0, 0, 0.16);
    /*margin-top: 24px;*/
    /*margin-bottom: 24px;*/
    position: relative;
    text-decoration: none
  }
  
  #qlwapp .qlwapp-toggle,
  #qlwapp .qlwapp-toggle:active,
  #qlwapp .qlwapp-toggle:focus,
  #qlwapp .qlwapp-toggle:hover {
    outline: 0;
    text-decoration: none
  }
  
  #qlwapp .qlwapp-toggle .qlwapp-time {
    position: absolute;
    bottom: -2em;
    color: initial;
    font-size: 10px;
    display: inline-block;
    top: auto;
    width: 120px
  }
  
  #qlwapp .qlwapp-avatar .qlwapp-avatar-container {
    overflow: hidden;
    border-radius: 50%;
    width: inherit;
    height: inherit
  }
  
  #qlwapp .qlwapp-avatar .qlwapp-avatar-container img {
    width: 100%;
    height: auto
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle {
    width: 60px;
    height: 60px
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
    position: absolute;
    display: block;
    pointer-events: none;
    font-size: 24px
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
    position: absolute;
    right: 60px;
    height: 60px;
    margin: 0 24px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-weight: bold;
    white-space: pre
  }
  
  #qlwapp.qlwapp-button .qlwapp-toggle {
    height: 40px;
    white-space: nowrap;
    padding: 12px 24px
  }
  
  #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon {
    margin: 0 12px 0 0
  }
  
  #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-close {
    display: none
  }
  
  #qlwapp .qlwapp-box {
    pointer-events: all;
    padding-bottom: 56px;
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99999;
    box-shadow: 0 5px 40px 5px rgba(0, 0, 0, 0.5)
  }
  
  @media(min-width:430px) {
    #qlwapp .qlwapp-box {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        right: auto;
        box-shadow: 0 8px 25px -5px rgba(45, 62, 79, 0.15);
        margin-top: 24px;
        margin-left: 24px;
        margin-right: 24px;
        margin-bottom: 12px
    }
  
    #qlwapp .qlwapp-box:before {
        content: '';
        position: absolute;
        bottom: -6px;
        right: 24px;
        width: 13px;
        height: 13px;
        transform: rotate(45deg)
    }
  
    #qlwapp .qlwapp-box .qlwapp-header {
        border-top-left-radius: inherit;
        border-top-right-radius: inherit
    }
  
    #qlwapp .qlwapp-box .qlwapp-footer,
    #qlwapp .qlwapp-box .qlwapp-response {
        border-bottom-left-radius: inherit;
        border-bottom-right-radius: inherit
    }
  }
  
  #qlwapp .qlwapp-box .qlwapp-header {
    position: relative;
    overflow: hidden
  }
  
  #qlwapp .qlwapp-box .qlwapp-header:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(135deg, transparent 0, rgba(0, 0, 0, 0.3) 100%)
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-close {
    position: absolute;
    top: 12px;
    right: 12px
  }
  
  @media(min-width:430px) {
    #qlwapp .qlwapp-box .qlwapp-header .qlwapp-close {
        position: absolute;
        top: 7px;
        right: 7px;
        font-size: 16px
    }
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-description {
    position: relative
  }
  
  #qlwapp .qlwapp-box .qlwapp-description,
  #qlwapp .qlwapp-box .qlwapp-contact {
    padding: 24px 36px;
    height: 100%
  }
  
  #qlwapp .qlwapp-box .qlwapp-description p,
  #qlwapp .qlwapp-box .qlwapp-description h3 {
    color: inherit;
    font-family: inherit;
    margin: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-description h3 {
    margin: 0 0 .25em 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-contact {
    display: flex;
    justify-content: flex-end;
    align-items: center
  }
  
  #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous {
    position: relative;
    left: -16px
  }
  
  #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous > i {
    line-height: 36px
  }
  
  #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-avatar {
    width: 42px;
    height: 42px
  }
  
  #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-label,
  #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-name {
    color: inherit
  }
  
  #qlwapp .qlwapp-box .qlwapp-account {
    color: inherit;
    padding: 16px 36px;
    display: flex;
    align-items: center;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    width: 100%;
    text-decoration: none
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:only-of-type {
    padding-top: 36px;
    padding-bottom: 36px
  }
  
  #qlwapp .qlwapp-box .qlwapp-info {
    padding: 0 16px
  }
  
  #qlwapp .qlwapp-box .qlwapp-avatar {
    position: relative;
    width: 62px;
    height: 62px
  }
  
  #qlwapp .qlwapp-box .qlwapp-avatar:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    position: absolute;
    bottom: 2px;
    right: 2px;
    background-image: url(data:image/png;base64,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);
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: 4
  }
  
  #qlwapp .qlwapp-box .qlwapp-time,
  #qlwapp .qlwapp-box .qlwapp-label,
  #qlwapp .qlwapp-box .qlwapp-offline-text {
    font-size: 12px;
    line-height: 1.5em;
    opacity: .6;
    display: block
  }
  
  #qlwapp .qlwapp-box .qlwapp-time {
    font-size: 11px;
    font-style: italic
  }
  
  #qlwapp .qlwapp-box .qlwapp-name {
    display: block;
    font-weight: bold;
    line-height: 1.5em
  }
  
  #qlwapp .qlwapp-box .qlwapp-body {
    overflow-x: hidden;
    overflow-y: auto
  }
  
  #qlwapp .qlwapp-box .qlwapp-body .qlwapp-carousel {
    max-height: 470px;
    min-height: 134px
  }
  
  #qlwapp .qlwapp-box .qlwapp-chat {
    display: flex;
    flex-direction: column;
    overflow: hidden
  }
  
  #qlwapp .qlwapp-box .qlwapp-user,
  #qlwapp .qlwapp-box .qlwapp-message {
    padding: 16px 24px;
    margin: 36px;
    position: relative;
    word-wrap: break-word;
    width: calc(100% - 36px*2)
  }
  
  #qlwapp .qlwapp-box .qlwapp-user:before,
  #qlwapp .qlwapp-box .qlwapp-message:before {
    content: '';
    position: absolute;
    top: -6px;
    right: 24px;
    width: 13px;
    height: 13px;
    transform: rotate(45deg)
  }
  
  #qlwapp .qlwapp-box .qlwapp-user {
    width: auto;
    max-width: 75%;
    align-self: flex-start;
    justify-self: flex-end;
    margin-top: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-user:before {
    top: auto;
    bottom: -6px;
    left: 24px
  }
  
  #qlwapp .qlwapp-box .qlwapp-padding {
    padding-bottom: 56px
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer,
  #qlwapp .qlwapp-box .qlwapp-response {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: 100%
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer,
  #qlwapp .qlwapp-box .qlwapp-response,
  #qlwapp .qlwapp-box .qlwapp-footer pre,
  #qlwapp .qlwapp-box .qlwapp-response pre,
  #qlwapp .qlwapp-box .qlwapp-footer textarea,
  #qlwapp .qlwapp-box .qlwapp-response textarea {
    max-height: 160px
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer pre,
  #qlwapp .qlwapp-box .qlwapp-response pre,
  #qlwapp .qlwapp-box .qlwapp-footer textarea,
  #qlwapp .qlwapp-box .qlwapp-response textarea {
    color: inherit;
    background-color: inherit
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer:before,
  #qlwapp .qlwapp-box .qlwapp-response:before {
    pointer-events: none;
    position: absolute;
    content: '';
    height: 59px;
    top: -59px;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.05));
    left: 0;
    right: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 12px;
    padding: 12px 36px
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer p {
    padding: 0;
    font-size: inherit
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer p:last-child {
    margin-bottom: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-response,
  #qlwapp .qlwapp-box .qlwapp-response pre,
  #qlwapp .qlwapp-box .qlwapp-response textarea,
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
    min-height: 56px
  }
  
  #qlwapp .qlwapp-box .qlwapp-response pre,
  #qlwapp .qlwapp-box .qlwapp-response textarea {
    width: 100%;
    height: 100%;
    resize: none;
    border: 0;
    padding: 18px 88px 18px 36px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: normal;
    line-height: 20px;
    white-space: pre-wrap;
    word-wrap: break-word;
    border-radius: inherit;
    margin: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-response pre {
    visibility: hidden
  }
  
  #qlwapp .qlwapp-box .qlwapp-response textarea {
    position: absolute;
    bottom: 0;
    left: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-response textarea:focus {
    outline: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
    position: absolute;
    top: 0;
    right: 21px;
    display: flex;
    align-items: center
  }
  
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active > i {
    display: none
  }
  
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active > i.qlwf-emoji {
    display: block
  }
  
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > i {
    opacity: .4
  }
  
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > i,
  #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > a {
    cursor: pointer;
    margin: 0 0 0 10px;
    display: inherit;
    font-size: 18px;
    line-height: 24px;
    text-decoration: none
  }
  
  #qlwapp .qlwapp-previous,
  #qlwapp .qlwapp-close,
  #qlwapp .qlwapp-toggle,
  #qlwapp .qlwapp-box .qlwapp-header,
  #qlwapp .qlwapp-box .qlwapp-contact,
  #qlwapp .qlwapp-box .qlwapp-user {
    color: #fff
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
    color: #36b848
  }
  
  #qlwapp .qlwapp-box,
  #qlwapp .qlwapp-box:before {
    background-color: #fff
  }
  
  #qlwapp .qlwapp-box .qlwapp-account {
    background-color: #fff
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:not(:first-child) {
    border-top: 1px solid #f5f5f5
  }
  
  #qlwapp .qlwapp-box .qlwapp-avatar .qlwapp-avatar-container {
    background-color: #eee
  }
  
  #qlwapp .qlwapp-box .qlwapp-message,
  #qlwapp .qlwapp-box .qlwapp-message:before {
    background-color: #eee
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer,
  #qlwapp .qlwapp-box .qlwapp-response {
    color: #303030;
    background-color: #fff;
    border-top: 1px solid #e6e6e6
  }
  
  #qlwapp .qlwapp-toggle,
  #qlwapp .qlwapp-box .qlwapp-header,
  #qlwapp .qlwapp-box .qlwapp-user,
  #qlwapp .qlwapp-box .qlwapp-user:before {
    background-color:#36b848
  }
  
  #qlwapp {
    display: none
  }
  
  #qlwapp.qlwapp-show .qlwapp-box {
    visibility: visible;
    opacity: 1;
    transform: translateY(0) scale(1);
    display: block
  }
  
  #qlwapp.qlwapp-transition .qlwapp-box {
    visibility: visible;
    display: block
  }
  
  #qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-icon {
    transform: scale(0, 0);
    opacity: 0
  }
  
  #qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-close {
    transform: scale(1, 1);
    opacity: 1
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
    transform: scale(0, 0);
    opacity: 0
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon {
    transform: scale(1, 1);
    opacity: 1
  }
  
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,
  #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
    transition: transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 300ms ease-in
  }
  
  #qlwapp .qlwapp-box {
    display: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 300ms ease-in
  }
  
  @media(min-width:430px) {
    #qlwapp .qlwapp-box {
        transform: translateY(50px) scale(0.9)
    }
  }
  
  #qlwapp .qlwapp-box .qlwapp-carousel {
    display: flex;
    width: 200%;
    height: 100%
  }
  
  #qlwapp .qlwapp-box .qlwapp-carousel .qlwapp-slide {
    width: 50%;
    transition: max-height 500ms cubic-bezier(0.215, 0.61, 0.355, 1) 1000ms, transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 500ms ease-in 500ms;
    height: 100%;
    overflow: hidden
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-slide {
    max-height: 300px
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label,
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
    opacity: 0;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) .3s, opacity ease-in .3s
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label {
    transform: translateX(56px)
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
    transform: scale(0.5)
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name {
    transition-delay: 800ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label {
    transition-delay: 850ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
    transition-delay: 900ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-footer,
  #qlwapp .qlwapp-box .qlwapp-response,
  #qlwapp .qlwapp-box .qlwapp-previous,
  #qlwapp .qlwapp-box .qlwapp-message,
  #qlwapp .qlwapp-box .qlwapp-user {
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity ease-in 200ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-response,
  #qlwapp .qlwapp-box .qlwapp-previous,
  #qlwapp .qlwapp-box .qlwapp-user {
    opacity: 0
  }
  
  #qlwapp .qlwapp-box .qlwapp-response {
    pointer-events: none
  }
  
  #qlwapp .qlwapp-box .qlwapp-previous {
    transform: translateX(56px)
  }
  
  #qlwapp .qlwapp-box .qlwapp-user {
    transform: translateY(56px)
  }
  
  #qlwapp .qlwapp-box .qlwapp-close {
    transition: opacity 300ms cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  
  #qlwapp .qlwapp-box .qlwapp-description {
    transition: transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 900ms cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  
  #qlwapp .qlwapp-box .qlwapp-account {
    transition: transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 150ms ease-in
  }
  
  #qlwapp .qlwapp-box .qlwapp-previous {
    transition-delay: 800ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-message {
    transition-delay: 900ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-close,
  #qlwapp .qlwapp-box .qlwapp-description {
    transition-delay: 900ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-user {
    transition-delay: 200ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(6) {
    transition-delay: 600ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(5) {
    transition-delay: 500ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(4) {
    transition-delay: 400ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(3) {
    transition-delay: 300ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(2) {
    transition-delay: 200ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(1) {
    transition-delay: 100ms
  }
  
  #qlwapp .qlwapp-box .qlwapp-slide .qlwapp-message {
    opacity: 0;
    transform: translateY(-56px)
  }
  
  #qlwapp .qlwapp-box .qlwapp-slide .qlwapp-box .qlwapp-account:hover {
    background-color: #fafafa
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide {
    transform: translateX(-100%)
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-body .qlwapp-carousel {
    overflow: hidden;
    max-height: 134px !important;
    min-height: 122px
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-close {
    transition-delay: 0ms
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-close,
  #qlwapp .qlwapp-box.response .qlwapp-footer,
  #qlwapp .qlwapp-box.response .qlwapp-description,
  #qlwapp .qlwapp-box.response .qlwapp-account {
    opacity: 0
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-account {
    transform: translateY(-33.333%);
    border-top-color: transparent !important
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-user {
    display: block
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-message,
  #qlwapp .qlwapp-box.response .qlwapp-previous,
  #qlwapp .qlwapp-box.response .qlwapp-response {
    opacity: 1
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-response {
    pointer-events: all
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-message,
  #qlwapp .qlwapp-box.response .qlwapp-previous {
    transform: translate(0)
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-slide {
    max-height: 84px
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar {
    opacity: 1
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label {
    opacity: .5
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label {
    transform: translateX(0)
  }
  
  #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar {
    transform: scale(1)
  }
  
  #qlwapp .qlwapp-box.response.opening .qlwapp-footer,
  #qlwapp .qlwapp-box.response.opening .qlwapp-response,
  #qlwapp .qlwapp-box.response.opening .qlwapp-close,
  #qlwapp .qlwapp-box.response.opening .qlwapp-previous,
  #qlwapp .qlwapp-box.response.opening .qlwapp-description,
  #qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-name,
  #qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-label {
    visibility: visible
  }
  
  #qlwapp .qlwapp-box.texting .qlwapp-body {
    overflow-y: auto
  }
  
  #qlwapp .qlwapp-box.texting .qlwapp-user {
    opacity: 1;
    transform: translate(0)
  }
  
  #qlwapp .qlwapp-box.closing .qlwapp-previous {
    transition-delay: 0ms;
    transform: translateX(-24px);
    opacity: 0;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity ease-out 200ms
  }
  
  #qlwapp .qlwapp-box.closing .qlwapp-description {
    opacity: 0
  }
  
  body.rtl #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon {
    margin: 0 0 0 12px
  }
  
  body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
    right: auto;
    left: 21px;
    flex-direction: row-reverse
  }
  
  body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > a {
    transform: rotate(180deg)
  }
  
  body.rtl #qlwapp .qlwapp-box .qlwapp-response pre,
  body.rtl #qlwapp .qlwapp-box .qlwapp-response textarea {
    padding: 18px 36px 18px 88px
  }
  
  body.rtl #qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide {
    transform: translateX(100%)
  }
  
  body.rtl #qlwapp .qlwapp-box .qlwapp-contact {
    flex-direction: row-reverse
  }

/* bg color transparent */
.bg-base-color-transparent {
  background-color: rgb(26 108 55 / 70%);
}

.contact-btn {
  position: fixed;
  bottom: 40px;
  left: 24px;
  z-index: 999;
  display: flex;
  gap: 10px;
}

@media (max-width: 768px) {
  .contact-btn {
    bottom: 65px;
  }
}

.button-33 {
  background-color: #39b54a;
  border-radius: 30px;
  color: white;
  cursor: pointer;
  display: inline-block;
  padding: 5px 25px;
  text-align: center;
  text-decoration: none;
  transition: all 250ms;
  border: 0;
  font-size: 14px;
  font-weight: 500;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.button-33:hover {
  box-shadow: rgba(57, 181, 74, 0.35) 0 -25px 18px -14px inset,
    rgba(57, 181, 74, 0.25) 0 1px 2px, rgba(57, 181, 74, 0.25) 0 2px 4px,
    rgba(57, 181, 74, 0.25) 0 4px 8px, rgba(57, 181, 74, 0.25) 0 8px 16px,
    rgba(57, 181, 74, 0.25) 0 16px 32px;
  transform: scale(1.05) rotate(-1deg);
  color: white;
}

@keyframes rotateme {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes rotateme {
  from {
    -webkit-transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
  }
}

@-moz-keyframes rotateme {
  from {
    -moz-transform: rotate(0deg);
  }

  to {
    -moz-transform: rotate(360deg);
  }
}

@-o-keyframes rotateme {
  from {
    -o-transform: rotate(0deg);
  }

  to {
    -o-transform: rotate(360deg);
  }
}

.rotate-me {
  animation-name: rotateme;
  animation-duration: 24s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;

  -webkit-animation-name: rotateme;
  -webkit-animation-duration: 24s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: rotateme;
  -moz-animation-duration: 24s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: rotateme;
  -ms-animation-duration: 24s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  -o-animation-name: rotateme;
  -o-animation-duration: 24s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}


@-webkit-keyframes bounceright {
  from {
    -webkit-transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(3px);
  }
}

@keyframes bounceright {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(3px);
  }
}

@keyframes textRotate {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.text-rotate-box {
  animation: textRotate 10s linear 0s forwards infinite alternate;
}

@-webkit-keyframes shine {
  100% {
    left: 125%;
  }
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

/*** 
=============================================
    circle Css
=============================================
***/
@-webkit-keyframes circle {
  0% {
    opacity: 1;
  }

  40% {
    opacity: 1;
  }

  100% {
    width: 200%;
    height: 200%;
    opacity: 0;
  }
}

@keyframes circle {
  0% {
    opacity: 1;
  }

  40% {
    opacity: 1;
  }

  100% {
    width: 200%;
    height: 200%;
    opacity: 0;
  }
}


@-webkit-keyframes float-bob {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
  }

  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
  }
}

@keyframes float-bob {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
  }

  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
  }
}

.float-bob {
  animation-name: float-bob;
  animation-duration: 7s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;

  -webkit-animation-name: float-bob;
  -webkit-animation-duration: 7s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: float-bob;
  -moz-animation-duration: 7s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: float-bob;
  -ms-animation-duration: 7s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  -o-animation-name: float-bob;
  -o-animation-duration: 7s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}

/*** 
=============================================
    Zoom In Out Css
=============================================
***/
.zoominout {
  animation-name: zoomInOut;
  animation-duration: 3s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;

  -webkit-animation-name: zoomInOut;
  -webkit-animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;

  -moz-animation-name: zoomInOut;
  -moz-animation-duration: 3s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: ease-in-out;

  -ms-animation-name: zoomInOut;
  -ms-animation-duration: 3s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: ease-in-out;

  -o-animation-name: zoomInOut;
  -o-animation-duration: 3s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: ease-in-out;
}

@-webkit-keyframes zoomInOut {
  0% {
    -webkit-transform: rotate(0deg) scale(0.7);
    transform: rotate(0deg) scale(0.7);
    opacity: 0;
  }

  50% {
    -webkit-transform: rotate(180deg) scale(1);
    transform: rotate(180deg) scale(1);
    opacity: 1;
  }

  100% {
    -webkit-transform: rotate(360deg) scale(0.7);
    transform: rotate(360deg) scale(0.7);
    opacity: 0;
  }
}

@-webkit-keyframes banner-animate {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
  }

  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
  }
}

@keyframes banner-animate {
  0% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
  }

  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(-1000px);
    transform: translateX(-1000px);
  }
}

.banner-animate {
  animation-name: banner-animate;
  animation-duration: 70s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  -webkit-animation-name: banner-animate;
  -webkit-animation-duration: 70s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: banner-animate;
  -moz-animation-duration: 70s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: banner-animate;
  -ms-animation-duration: 70s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  -o-animation-name: banner-animate;
  -o-animation-duration: 70s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}

/*** 
=============================================
    Ripple Animation
=============================================
***/


@-webkit-keyframes ripple {
  70% {
    box-shadow: 0 0 0 40px rgba(10, 165, 205, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(10, 165, 205, 0);
  }
}

@keyframes ripple {
  70% {
    box-shadow: 0 0 0 40px rgba(10, 165, 205, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(10, 165, 205, 0);
  }
}

/*** 
=============================================
    Float Bob Y Animation Css
=============================================
***/
@-webkit-keyframes float-bob-y {
  0% {
    transform: translateY(-20px);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(-20px);
  }
}

@keyframes float-bob-y {
  0% {
    transform: translateY(-20px);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(-20px);
  }
}

.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;
}

/*** 
=============================================
    Footer Tree Animation 
=============================================
***/

@-webkit-keyframes footerTree {

  0%,
  100% {
    -webkit-transform: rotate(0deg) translateX(0);
    transform: rotate(0deg) translateX(0);
  }

  25%,
  75% {
    -webkit-transform: rotate(5deg) translateX(15px);
    transform: rotate(5deg) translateX(15px);
  }

  50% {
    -webkit-transform: rotate(10deg) translateX(30px);
    transform: rotate(10deg) translateX(30px);
  }
}

@keyframes footerTree {

  0%,
  100% {
    -webkit-transform: rotate(0deg) translateX(0);
    transform: rotate(0deg) translateX(0);
  }

  25%,
  75% {
    -webkit-transform: rotate(5deg) translateX(15px);
    transform: rotate(5deg) translateX(15px);
  }

  50% {
    -webkit-transform: rotate(10deg) translateX(30px);
    transform: rotate(10deg) translateX(30px);
  }
}

.footertree {
  -webkit-animation: footerTree 5s ease-in infinite;
  animation: footerTree 5s ease-in infinite;
}

@keyframes rotateScale {
  from {
    transform: rotate(0deg) scale(1);
  }

  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes rotateScale {
  from {
    transform: rotate(0deg) scale(1);
  }

  to {
    transform: rotate(360deg);
  }
}

@-moz-keyframes rotateScale {
  from {
    transform: rotate(0deg) scale(1);
  }

  to {
    transform: rotate(360deg);
  }
}

@-o-keyframes rotateScale {
  from {
    transform: rotate(0deg) scale(1);
  }

  to {
    transform: rotate(360deg);
  }
}

.rotatescale {
  -webkit-animation-name: rotateScale;
  -webkit-animation-duration: 20s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: rotateScale;
  -moz-animation-duration: 20s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: rotateScale;
  -ms-animation-duration: 20s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  animation-name: rotateScale;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

/*--------------------------------------------------------------
# Animations Shape Mover
--------------------------------------------------------------*/

@-webkit-keyframes shapeMover {

  0%,
  100% {
    transform: perspective(400px) translateY(0) rotate(0deg) translateZ(0px) translateX(0);
  }

  50% {
    transform: perspective(400px) rotate(0deg) translateZ(20px) translateY(20px) translateX(20px);
  }
}

@keyframes shapeMover {

  0%,
  100% {
    transform: perspective(400px) translateY(0) rotate(0deg) translateZ(0px) translateX(0);
  }

  50% {
    transform: perspective(400px) rotate(0deg) translateZ(20px) translateY(20px) translateX(20px);
  }
}

@-webkit-keyframes shapeMover {

  0%,
  100% {
    -webkit-transform: perspective(400px) translateY(0) rotate(0deg) translateZ(0px) translateX(0);
    transform: perspective(400px) translateY(0) rotate(0deg) translateZ(0px) translateX(0);
  }

  50% {
    -webkit-transform: perspective(400px) rotate(-45deg) translateZ(20px) translateY(20px) translateX(20px);
    transform: perspective(400px) rotate(-45deg) translateZ(20px) translateY(20px) translateX(20px);
  }
}

.shape-mover {
  -webkit-animation-name: shapeMover;
  animation-name: shapeMover;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-perspective: 100px;
  perspective: 100px;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}


/*--------------------------------------------------------------
#     Zoom Fade Css
--------------------------------------------------------------*/
.zoom-fade {
  animation-name: zoom-fade;
  animation-duration: 5s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;

  -webkit-animation-name: zoom-fade;
  -webkit-animation-duration: 5s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: zoom-fade;
  -moz-animation-duration: 5s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: zoom-fade;
  -ms-animation-duration: 5s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  -o-animation-name: zoom-fade;
  -o-animation-duration: 5s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}

@-webkit-keyframes zoom-fade {
  0% {
    transform: scale(0.9) translateX(-50%);
  }

  50% {
    transform: scale(1) translateX(-50%);
  }

  100% {
    transform: scale(0.9) translateX(-50%);
  }
}

@keyframes zoom-fade {
  0% {
    transform: scale(0.9) translateX(-50%);
  }

  50% {
    transform: scale(1) translateX(-50%);
  }

  100% {
    transform: scale(0.9) translateX(-50%);
  }
}

/*--------------------------------------------------------------
#     Zoom Fade 2 Css
--------------------------------------------------------------*/
.zoom-fade-2 {
  animation-name: zoom-fade-2;
  animation-duration: 5s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;

  -webkit-animation-name: zoom-fade-2;
  -webkit-animation-duration: 5s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;

  -moz-animation-name: zoom-fade-2;
  -moz-animation-duration: 5s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;

  -ms-animation-name: zoom-fade-2;
  -ms-animation-duration: 5s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;

  -o-animation-name: zoom-fade-2;
  -o-animation-duration: 5s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
}

@-webkit-keyframes zoom-fade-2 {
  0% {
    transform: scale(0.9) translateX(0%) translateY(0%);
  }

  50% {
    transform: scale(1) translateX(0%) translateY(0%);
  }

  100% {
    transform: scale(0.9) translateX(0%) translateY(0%);
  }
}

@keyframes zoom-fade-2 {
  0% {
    transform: scale(0.9) translateX(0%) translateY(0%);
  }

  50% {
    transform: scale(1) translateX(0%) translateY(0%);
  }

  100% {
    transform: scale(0.9) translateX(0%) translateY(0%);
  }
}

/* Image Bounce */

@-webkit-keyframes ImgBounce {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
}

@keyframes ImgBounce {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
}


.img-bounce {
  -webkit-animation: ImgBounce 5s ease-in-out 0s infinite alternate;
  animation: ImgBounce 5s ease-in-out 0s infinite alternate;
}

/***
=============================================
    Float Bob X Animation Css
=============================================
***/
@-webkit-keyframes float-bob-x {
  0% {
    transform: translateX(-30px);
  }

  50% {
    transform: translateX(-10px);
  }

  100% {
    transform: translateX(-30px);
  }
}

@keyframes float-bob-x {
  0% {
    transform: translateX(-30px);
  }

  50% {
    transform: translateX(-10px);
  }

  100% {
    transform: translateX(-30px);
  }
}

.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;
}

/***
=============================================
    Float Bob X 2 Animation Css
=============================================
***/
@-webkit-keyframes float-bob-x-2 {
  0% {
    transform: translateX(-30px) translateY(-50%);
  }

  50% {
    transform: translateX(-10px) translateY(-50%);
  }

  100% {
    transform: translateX(-30px) translateY(-50%);
  }
}

@keyframes float-bob-x-2 {
  0% {
    transform: translateX(-30px) translateY(-50%);
  }

  50% {
    transform: translateX(-10px) translateY(-50%);
  }

  100% {
    transform: translateX(-30px) translateY(-50%);
  }
}

.float-bob-x-2 {
  -webkit-animation-name: float-bob-x-2;
  animation-name: float-bob-x-2;
  -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;
}


/*** 
=============================================
    Float Bob Y Animation Css
=============================================
***/
@-webkit-keyframes float-bob-y-2 {
  0% {
    transform: translateY(-20px) rotate(90deg);
    ;
  }

  50% {
    transform: translateY(-10px) rotate(90deg);
    ;
  }

  100% {
    transform: translateY(-20px) rotate(90deg);
    ;
  }
}

@keyframes float-bob-y-2 {
  0% {
    transform: translateY(-20px) rotate(90deg);
    ;
  }

  50% {
    transform: translateY(-10px) rotate(90deg);
    ;
  }

  100% {
    transform: translateY(-20px) rotate(90deg);
    ;
  }
}

.float-bob-y-2 {
  -webkit-animation-name: float-bob-y-2;
  animation-name: float-bob-y-2;
  -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;
}


@keyframes leftRight {
  0% {
    transform: translateX(0px);
  }

  50% {
    transform: translateX(10px);
  }

  100% {
    transform: translateX(0px);
  }
}


@keyframes topBottom {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(10px);
  }

  100% {
    transform: translateY(0px);
  }
}


/* Shape Top Bottom animation */

@keyframes shapeTopBottom {
  0% {
    transform: rotate(45deg) translateY(-0px);
  }

  25% {
    transform: rotate(43deg) translateY(-20px);
  }

  50% {
    transform: rotate(45deg) translateY(-40px);
  }

  75% {
    transform: rotate(43deg) translateY(-20px);
  }

  100% {
    transform: rotate(45deg) translateY(-0px);
  }
}


@keyframes swing-x {
  0% {
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    transform: rotate(25deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}


.reveal {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  visibility: hidden;
  overflow: hidden;
}

.reveal img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transform-origin: left;
  transform-origin: left;
}

.review-card {
  background: #fff;
  border: 1px solid #e3e6e8;
  border-radius: 16px;
  padding: 24px;
  height: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
}

.review-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 16px;
}

.review-user-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.review-user-info img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
}

.review-user-info h6 {
  margin: 0;
  font-weight: 700;
  font-size: 18px;
}

@media (max-width: 768px) {
  .review-user-info h6 {
    margin-bottom: 0 !important;
  }
}
.review-user-info span {
  font-size: 12px;
  color: #6b7280;
}

.review-card-menu {
  color: #6b7280;
  font-size: 1.2rem;
  line-height: 1;
  cursor: pointer;
}

.review-stars {
  display: flex;
  gap: 4px;
  margin-bottom: 14px;
}

.review-stars .dot {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--base-color);
  display: inline-block;
}

.review-title {
  font-weight: 700;
  font-size: 1.05rem;
  color: #1a1a1a;
  margin-bottom: 8px;
}

.review-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  /* line-height: 26px; */
}

.review-readmore {
  color: #1a1a1a;
  font-weight: 600;
  font-size: 14px;
  text-decoration: underline;
  background: none;
  border: none;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
}

.review-readmore svg {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease;
}

/* Sembunyikan tombol read more jika teks tidak terpotong (di set via JS) */
.review-readmore.d-none {
  display: none;
}

/* ================== MODAL POPUP ================== */
.review-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 1050;
  padding: 16px;
}

.review-modal-overlay.show {
  display: flex;
}

.review-modal-box {
  background: #fff;
  border-radius: 16px;
  max-width: 600px;
  width: 100%;
  max-height: 85vh;
  overflow-y: auto;
  padding: 32px;
  position: relative;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.review-modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: none;
  border: none;
  font-size: 1.4rem;
  color: #1a1a1a;
  cursor: pointer;
  line-height: 1;
}

.review-modal-box .review-user-info img {
  width: 44px;
  height: 44px;
}

.review-modal-box .review-text {
  display: block;
  -webkit-line-clamp: unset;
  overflow: visible;
}

.review-modal-meta {
  font-size: 0.85rem;
  color: #6b7280;
  margin-top: 16px;
}


