/* ==========================================================================
   Khalifah Tour 2026 - Reguler
   Sama dengan tema Bold (warna latar, kartu, halaman dalam), dengan perbedaan:
   1. Beranda: judul tebal (Work Sans 700) tapi berukuran sedang, latar teks di atas foto lebih gelap (body.kt-page-home).
   2. Header di semua halaman: tanpa teks "Khalifah Tour", logo lebih besar.
   3. Panah slider hero di kanan bawah supaya tidak menabrak judul.
   4. Kartu sertifikat kompetensi tim di Tentang Kami.
   Bagian pertama berkas ini salinan kt-skin-bold.css.
   ========================================================================== */

/* ==========================================================================
   Gaya G Adventures: judul Work Sans tebal, eyebrow + judul raksasa, latar section berselang-seling
   Palet diterjemahkan ke merek Khalifah: plum (pengganti ungu tua), blush (pengganti lavender), putih hangat.
   ========================================================================== */
:root {
	--kt-plum: #4a0e36;
	--kt-plum-deep: #35091f;
	--kt-blush: #fbe6f1;
	--kt-warm: #f6f4f0;
}
.kt-section-blush { background: var(--kt-blush); }
.kt-section-warm { background: var(--kt-warm); }
.kt-section-canvas + div > .kt-section { background: transparent; }

.kt-head-left { max-width: 920px; margin: 0 0 32px; text-align: left; }
.kt-head-left .kt-eyebrow {
	display: block; margin: 0 0 6px; font-family: var(--kt-font-display); font-size: clamp(16px, 2vw, 22px); font-weight: 800;
	letter-spacing: -0.01em; text-transform: none; color: var(--kt-plum);
}
.kt-head-left .kt-eyebrow::before { display: none; }
.kt-head-left .kt-h2, .kt-head-left .kt-h2-lg {
	margin: 0; font-family: var(--kt-font-display); font-size: clamp(32px, 5.4vw, 60px); line-height: 1.03; font-weight: 800;
	letter-spacing: -0.035em; color: var(--kt-plum);
}
.kt-rail-head { align-items: flex-end; }
.kt-rail-head .kt-head-left { margin-bottom: 0; }
.kt-h2, .kt-section-head .kt-h2 { color: var(--kt-plum); }

/* Program populer */
.kt-dest-grid { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 768px) { .kt-dest-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; } }
@media (min-width: 1100px) { .kt-dest-grid { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); grid-auto-flow: column; } }
.kt-dest { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 5; border-radius: var(--kt-r-xl); background: var(--kt-plum); color: #fff !important; text-decoration: none !important; box-shadow: var(--kt-shadow-card); }
.kt-dest img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 600ms var(--kt-ease); }
.kt-dest::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(53, 9, 31, 0) 40%, rgba(53, 9, 31, .85) 100%); }
.kt-dest:hover img { transform: scale(1.06); }
.kt-dest-body { position: absolute; left: 16px; right: 16px; bottom: 16px; z-index: 2; display: flex; flex-direction: column; gap: 4px; }
.kt-dest-title { font-family: var(--kt-font-display); font-size: clamp(18px, 2vw, 24px); font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; color: #fff; }
.kt-dest-meta { font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .88); }
.kt-dest:focus-visible { outline: 3px solid var(--kt-primary); outline-offset: 3px; }

/* Khalifah Care: band plum */
.kt-band-plum { padding: 64px 0; background: var(--kt-plum); color: #fff; }
@media (min-width: 768px) { .kt-band-plum { padding: 88px 0; } }
.kt-band-plum .kt-head-left { margin-bottom: 40px; }
.kt-band-plum .kt-head-left .kt-eyebrow { color: #fff; }
.kt-band-plum .kt-wordmark { margin: 0 !important; text-align: left; }
.kt-band-plum .kt-wm-brand { color: #ff6fbe; }
.kt-band-plum .kt-wm-word { color: #fff; }
.kt-band-sub { max-width: 600px; margin: 14px 0 0; font-size: 17px; line-height: 1.6; color: rgba(255, 255, 255, .86); }
.kt-care-band-grid { display: grid; grid-template-columns: 1fr; gap: 32px 28px; }
@media (min-width: 600px) { .kt-care-band-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 992px) { .kt-care-band-grid { grid-template-columns: repeat(4, 1fr); } }
.kt-care-icon { display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; margin-bottom: 16px; border-radius: 20px; background: #fff; }
.kt-care-icon img { width: 48px !important; height: 48px !important; object-fit: contain; }
.kt-care-item h3 { margin: 0 0 8px; font-family: var(--kt-font-display); font-size: 22px; font-weight: 800; color: #fff; }
.kt-care-item p { margin: 0; font-size: 15px; line-height: 1.7; color: rgba(255, 255, 255, .86); text-align: left; }

/* FAQ melebar rata kiri */
.kt-faq-wide { max-width: 860px; }
.kt-embed-reviews { margin-top: 8px; }
.kt-ig-grid { justify-content: start; }
@media (min-width: 768px) { .kt-ig-grid { justify-content: start; } }
.kt-ig-item { max-width: 360px; }

/* ==========================================================================
   Revisi: kartu program ala G Adventures (foto, judul, deskripsi singkat di bawahnya),
   judul tengah untuk Instagram & FAQ, wordmark Khalifah Care/Partner sebesar judul section lain
   ========================================================================== */
.kt-dest { display: block; aspect-ratio: auto; overflow: visible; background: none; box-shadow: none; color: var(--kt-foreground) !important; }
.kt-dest::after { display: none; }
.kt-dest img { position: static; display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--kt-r-lg); box-shadow: var(--kt-shadow-card); transition: transform 400ms var(--kt-ease), box-shadow 400ms var(--kt-ease); }
.kt-dest:hover img { transform: translateY(-4px); box-shadow: var(--kt-shadow-elevated); }
.kt-dest-body { position: static; padding: 14px 4px 0; gap: 3px; }
.kt-dest-title { font-size: clamp(18px, 1.7vw, 22px); color: var(--kt-foreground); }
.kt-dest-desc { font-size: 15px; line-height: 1.4; color: var(--kt-foreground); }
.kt-dest-meta { margin-top: 2px; font-size: 13px; font-weight: 500; color: var(--kt-muted-foreground); }

.kt-head-left.kt-head-center { max-width: 860px; margin-left: auto; margin-right: auto; text-align: center; }
.kt-faq-centered { margin-left: auto; margin-right: auto; }
.kt-ig-grid { justify-content: center; }

.kt-head-left .kt-wordmark {
	margin: 0 !important; font-size: clamp(32px, 5.4vw, 60px) !important; line-height: 1.03 !important; letter-spacing: -0.035em !important; text-align: left;
}
.kt-band-plum .kt-wm-word { color: #fff; }
#khalifah-partner .kt-wm-word { color: var(--kt-plum); }
.kt-partner-head { margin-bottom: 8px; }
.kt-partner-sub { max-width: 760px; margin: 16px 0 0; font-size: 17px; line-height: 1.7; color: var(--kt-muted-foreground); text-align: left; }
#khalifah-partner .kt-marquee-wrap { margin-top: 28px; }

/* ==========================================================================
   BERANDA SAJA: judul tetap tebal (Work Sans 700) tetapi ukurannya sedang
   (Bold memakai 800 dan sampai 60 px). Teks di atas foto diberi latar lebih gelap.
   ========================================================================== */
.kt-page-home .kt-h1, .kt-page-home .kt-h2, .kt-page-home .kt-h3, .kt-page-home .kt-display {
	font-family: var(--kt-font-display) !important; font-weight: 700 !important; letter-spacing: -0.02em !important;
}

/* judul hero */
.kt-page-home .kt-hero-h1 {
	font-weight: 700 !important; letter-spacing: -0.02em; line-height: 1.12 !important;
	font-size: clamp(26px, 3.4vw, 46px) !important; max-width: 900px;
}
@media (max-width: 767px) { .kt-page-home .kt-hero-h1 { font-size: 24px !important; } }

/* judul section: eyebrow + judul */
.kt-page-home .kt-head-left .kt-eyebrow { font-size: 16px; font-weight: 700; letter-spacing: -0.01em; }
.kt-page-home .kt-head-left .kt-h2, .kt-page-home .kt-head-left .kt-h2-lg,
.kt-page-home .kt-h2-lg, .kt-page-home .kt-section-head .kt-h2 {
	font-size: 26px !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.025em !important;
}
@media (min-width: 768px) {
	.kt-page-home .kt-head-left .kt-h2, .kt-page-home .kt-head-left .kt-h2-lg,
	.kt-page-home .kt-h2-lg, .kt-page-home .kt-section-head .kt-h2 { font-size: 32px !important; }
}
.kt-page-home .kt-head-left .kt-wordmark, .kt-page-home .kt-wordmark {
	font-weight: 700 !important; font-size: 26px !important; line-height: 1.2 !important; letter-spacing: -0.025em !important;
}
@media (min-width: 768px) { .kt-page-home .kt-head-left .kt-wordmark, .kt-page-home .kt-wordmark { font-size: 32px !important; } }

/* judul kartu dan blok */
.kt-page-home .kt-dest-title { font-size: 18px; font-weight: 700; letter-spacing: -0.015em; }
.kt-page-home .kt-package-title { font-size: 19px !important; font-weight: 700 !important; }
.kt-page-home .kt-care-item h3 { font-size: 19px; font-weight: 700 !important; }
.kt-page-home .kt-faq .kt-h3 { font-size: 17px !important; }
.kt-page-home .kt-cta-title { font-weight: 700 !important; font-size: 26px !important; line-height: 1.2 !important; }
@media (min-width: 768px) { .kt-page-home .kt-cta-title { font-size: 34px !important; } }
.kt-page-home .kt-cta-form-card .kt-h3 { font-size: 19px !important; }

/* Teks di atas foto: latar gelap lebih pekat supaya selalu terbaca */
.kt-page-home .kt-cta-card::before {
	background: linear-gradient(100deg, rgba(20, 22, 32, .88) 0%, rgba(20, 22, 32, .76) 55%, rgba(20, 22, 32, .66) 100%);
}
.kt-page-home .kt-package-media::after {
	background: linear-gradient(180deg, rgba(20, 22, 32, .45) 0%, rgba(20, 22, 32, .05) 30%, rgba(20, 22, 32, .15) 42%, rgba(20, 22, 32, .9) 100%);
}
@media (min-width: 768px) {
	.kt-page-home .kt-hero .kt-hero-swiper.swiper::after {
		background:
			linear-gradient(0deg, rgba(14, 17, 27, .82) 0%, rgba(14, 17, 27, .5) 36%, rgba(14, 17, 27, .08) 66%),
			linear-gradient(90deg, rgba(14, 17, 27, .45) 0%, rgba(14, 17, 27, 0) 60%);
	}
}

/* Ulasan Google & Khalifah Partner: judul rata tengah */
.kt-page-home .kt-head-center .kt-wordmark { text-align: center; }
.kt-page-home .kt-head-center .kt-partner-sub { margin-left: auto; margin-right: auto; text-align: center; }
.kt-page-home #ulasan .kt-embed-reviews { margin-top: 8px; }

/* Deretan "Tour lainnya" (detail tour, artikel, Tentang Kami, 404, S&K): judul sama dengan beranda */
.kt-tour-rail .kt-head-left .kt-eyebrow { font-size: 16px; font-weight: 700; letter-spacing: -0.01em; }
.kt-tour-rail .kt-head-left .kt-h2, .kt-tour-rail .kt-head-left .kt-h2-lg {
	font-size: 26px !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.025em !important;
}
@media (min-width: 768px) { .kt-tour-rail .kt-head-left .kt-h2, .kt-tour-rail .kt-head-left .kt-h2-lg { font-size: 32px !important; } }
.kt-tour-rail .kt-package-title { font-size: 19px !important; font-weight: 700 !important; }
.kt-tour-rail .kt-package-media::after {
	background: linear-gradient(180deg, rgba(20, 22, 32, .45) 0%, rgba(20, 22, 32, .05) 30%, rgba(20, 22, 32, .15) 42%, rgba(20, 22, 32, .9) 100%);
}

/* Halaman Artikel: judul halaman bergaya sama dengan judul beranda */
.kt-blog-head .kt-eyebrow { font-family: var(--kt-font-display); font-size: 16px; font-weight: 700; letter-spacing: -0.01em; text-transform: none; color: var(--kt-plum); }
.kt-blog-head .kt-eyebrow::before { display: none; }
.kt-blog-head .kt-h1 { font-family: var(--kt-font-display) !important; font-size: 26px !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.025em !important; color: var(--kt-plum); }
@media (min-width: 768px) { .kt-blog-head .kt-h1 { font-size: 32px !important; } }

/* Panah slider hero: kanan bawah, di ruang kosong di bawah kotak pencarian,
   sehingga tidak menabrak judul/kotak pencarian di lebar mana pun. HP tanpa panah. */
@media (min-width: 768px) {
	.kt-hero-nav.swiper-button-prev, .kt-hero-nav.swiper-button-next {
		top: auto !important; bottom: 20px !important; margin-top: 0 !important; width: 40px; height: 40px;
		background: rgba(255, 255, 255, .16); color: #fff; border: 1px solid rgba(255, 255, 255, .5); box-shadow: none;
		-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); opacity: 1;
	}
	.kt-hero-nav.swiper-button-prev:hover, .kt-hero-nav.swiper-button-next:hover { background: rgba(255, 255, 255, .3); }
	.kt-hero-nav.swiper-button-prev { left: auto !important; right: 80px !important; }
	.kt-hero-nav.swiper-button-next { right: 32px !important; }
	.kt-hero-nav .swiper-navigation-icon { width: 8px; height: 13px; }
	.kt-hero-stack { padding-bottom: max(84px, clamp(72px, 8.6vw, 166px)) !important; }
}
@media (min-width: 1440px) {
	.kt-hero-nav.swiper-button-prev { right: calc((100vw - 1440px) / 2 + 80px) !important; }
	.kt-hero-nav.swiper-button-next { right: calc((100vw - 1440px) / 2 + 32px) !important; }
}

/* ==========================================================================
   SEMUA HALAMAN: header tanpa teks "Khalifah Tour", logo lebih besar
   ========================================================================== */
.nav .logo.kt-brand { gap: 14px; }
.nav .logo.kt-brand img.kt-brand-logo { width: 112px !important; }
.kt-brand-text { padding-left: 14px; border-left: 1px solid var(--kt-border); }
.kt-brand-tag { margin-top: 0; font-size: 11px; font-weight: 500; letter-spacing: .14em; }
@media (max-width: 991px) {
	.nav .logo.kt-brand img.kt-brand-logo { width: 96px !important; }
	.kt-brand-text { padding-left: 12px; }
	.kt-brand-tag { font-size: 10px; letter-spacing: .1em; }
}
@media (max-width: 420px) { .nav .logo.kt-brand img.kt-brand-logo { width: 88px !important; } }
/* tagline hanya bila ada ruang (992–1279 px menu desktop penuh; HP kecil) */
@media (min-width: 992px) and (max-width: 1279px), (max-width: 420px) { .kt-brand-text { display: none; } }

/* Header satu baris di 992–1199 px: template lama memberi daftar menu padding 60 px atas-bawah pada
   rentang ini sehingga menu turun ke bawah logo (header ±170 px). Samakan dengan perilaku ≥1200 px. */
@media (min-width: 992px) and (max-width: 1199px) {
	header.menu-3 nav.menu > ul { padding-top: 0 !important; padding-bottom: 0 !important; }
	header.menu-3 nav.menu > ul > li > a { padding-left: 11px !important; padding-right: 11px !important; }
}

/* --------------------------------------------------------------------------
   Tentang Kami: kompetensi & sertifikasi tim
   -------------------------------------------------------------------------- */
.kt-komp-grid { display: grid; grid-template-columns: 1fr; gap: 20px; }
@media (min-width: 600px) { .kt-komp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .kt-komp-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.kt-komp-card { display: flex; flex-direction: column; padding: 16px; border: 1px solid var(--kt-border); border-radius: var(--kt-r-lg); background: #fff; }
.kt-komp-media { display: block; overflow: hidden; aspect-ratio: 4 / 3; margin-bottom: 14px; border-radius: var(--kt-r-md); background: var(--kt-warm); }
.kt-komp-media img { display: block; width: 100%; height: 100%; object-fit: contain; }
.kt-komp-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; border: 1px dashed #d7d9df; color: var(--kt-muted-foreground); font-size: 13px; }
.kt-komp-placeholder .fa { font-size: 28px; color: #b9bcc6; }
.kt-komp-title { margin: 0 0 6px; font-size: 16px !important; font-weight: 600 !important; line-height: 1.35; color: var(--kt-foreground); }
.kt-komp-desc { margin: 0; font-size: 14px; line-height: 1.6; color: var(--kt-muted-foreground); }

/* Qontak = satu-satunya tombol chat melayang (bar "Konsultasi via WhatsApp" di HP dihapus dari footer
   dan detail tour). custom.css dulu menaikkan Qontak 72 px di atas bar itu; kembalikan ke posisi bawaan. */
@media (max-width: 991px) {
	body { padding-bottom: 0 !important; }
	#qontak-webchat-widget { bottom: 0 !important; }
}

/* Petunjuk dinamis untuk tombol live chat Qontak (js/kt-qontak-hint.js).
   Tombol Qontak (60 px) berada 30 px dari kanan dan bawah layar di dalam iframe 94x94. */
.kt-qhint {
	position: fixed; right: 100px; bottom: 36px; z-index: 999998; display: flex; align-items: flex-start; gap: 8px;
	max-width: min(320px, calc(100vw - 116px)); padding: 12px 12px 12px 16px; border-radius: 16px;
	background: #fff; color: var(--kt-foreground); box-shadow: 0 10px 30px -10px rgba(20, 22, 30, .35), 0 0 0 1px rgba(20, 22, 30, .06);
	font-size: 14px; line-height: 1.45; cursor: pointer;
	opacity: 0; transform: translateY(8px) scale(.98); transform-origin: right bottom; pointer-events: none;
	transition: opacity 220ms var(--kt-ease), transform 220ms var(--kt-ease);
}
.kt-qhint.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.kt-qhint::after { /* panah ke tombol chat */
	content: ""; position: absolute; right: -6px; bottom: 18px; width: 12px; height: 12px; background: #fff;
	transform: rotate(45deg); box-shadow: 2px -2px 3px -2px rgba(20, 22, 30, .12);
}
.kt-qhint-text strong { color: var(--kt-primary); font-weight: 600; }
.kt-qhint-close {
	flex: 0 0 auto; width: 22px; height: 22px; margin: -2px -2px 0 0; padding: 0; border: 0; border-radius: 50%;
	background: var(--kt-muted, #eef0f4); color: var(--kt-muted-foreground); font-size: 16px; line-height: 22px; cursor: pointer;
}
@media (max-width: 420px) { .kt-qhint { font-size: 13px; right: 96px; bottom: 34px; } }
@keyframes kt-qpulse { 0%, 100% { transform: scale(1); } 30% { transform: scale(1.12); } 60% { transform: scale(.97); } }
#qontak-webchat-widget.kt-qpulse { transform-origin: 70% 70%; animation: kt-qpulse 700ms var(--kt-ease) 2; }
@media (prefers-reduced-motion: reduce) { #qontak-webchat-widget.kt-qpulse { animation: none; } .kt-qhint { transition: none; } }

