/*
Theme Name: Hello Elementor Child - Bali Tour Places
Template: hello-elementor
Description: Child theme carrying the balitourplaces.com-style header/footer (theme-level, since Elementor Free has no Theme Builder). Page content is built with Elementor.
Version: 1.0.0
Author: ega@polman-bandung.ac.id
Text Domain: hello-elementor-child
*/

.btp-site{min-height:100vh;display:flex;flex-direction:column;font-family:var(--btp-font,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif)}
.btp-site-main{flex:1 0 auto}

/* ---------------- Header ---------------- */
.btp-site-header{position:sticky;top:0;z-index:500;background:#fff;border-bottom:1px solid var(--btp-border,#e7edf5)}
.btp-header-inner{display:flex;flex-wrap:nowrap;align-items:center;gap:20px;padding:10px 24px}
.btp-logo{display:flex;flex:0 0 auto;align-items:center;text-decoration:none;height:44px!important;width:auto!important;max-width:130px!important;overflow:hidden!important}
.btp-logo img{width:auto!important;height:44px!important;max-height:44px!important;max-width:130px!important;display:block!important;object-fit:contain!important}
.btp-logo-text{font-size:19px;font-weight:800;color:var(--btp-heading,#071b3a)}

.btp-nav{flex:1;min-width:0}
.btp-nav-list{list-style:none;display:flex;flex-wrap:nowrap;gap:22px;margin:0;padding:0}
.btp-nav-list a{display:inline-block;color:var(--btp-heading,#071b3a);text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap}
.btp-nav-list a:hover{color:var(--btp-brand,#eb5200)}

.btp-header-actions{display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:center;gap:8px}

.btp-lang-switch{box-sizing:border-box!important;display:flex!important;flex:0 0 auto;align-items:center!important;gap:6px;height:42px!important;border:1px solid var(--btp-border,#ebebf5)!important;border-radius:999px!important;padding:0 14px!important;margin:0!important;background:#fff!important;white-space:nowrap}
.btp-lang-switch .btp-globe{font-size:15px;line-height:1}
.btp-lang-switch select{box-sizing:border-box!important;border:0!important;background:transparent!important;font-size:13.5px;font-weight:600;color:var(--btp-heading,#071b3a);outline:0!important;cursor:pointer;max-width:90px;padding:0!important;margin:0!important}

.btp-pill-action{box-sizing:border-box!important;position:relative;display:inline-flex!important;align-items:center!important;gap:7px;height:42px!important;border:1px solid var(--btp-border,#ebebf5)!important;border-radius:999px!important;background:#fff!important;color:var(--btp-heading,#071b3a)!important;padding:0 16px!important;margin:0!important;font-size:13.5px;font-weight:700;text-decoration:none;cursor:pointer;white-space:nowrap}
.btp-pill-action:hover{border-color:var(--btp-brand,#eb5200)!important;background:var(--btp-subtle-bg,#f8f4f1)!important;color:var(--btp-brand,#eb5200)!important}
.btp-pill-action .dashicons{font-size:16px;width:16px;height:16px}
.btp-badge{position:absolute;top:-6px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b91c1c;color:#fff;font-size:10px;font-weight:800;line-height:18px;text-align:center}

.btp-pill-account{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;gap:7px;height:42px!important;border:1px solid var(--btp-heading,#071b3a)!important;border-radius:999px!important;background:var(--btp-extra,#121c49)!important;color:#fff!important;padding:0 16px!important;margin:0!important;font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
.btp-pill-account .dashicons{font-size:16px;width:16px;height:16px}
.btp-pill-account:hover{background:var(--btp-brand,#eb5200)!important;border-color:var(--btp-brand,#eb5200)!important;color:#fff!important}

/* ---------------- Header popovers (search / wishlist) ---------------- */
.btp-popover-backdrop{position:fixed;inset:0;background:rgba(7,27,58,.35);z-index:610}
.btp-popover{position:fixed;left:50%;top:78px;transform:translateX(-50%);width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 110px);background:#fff;border:1px solid var(--btp-border,#ebebf5);border-radius:20px;box-shadow:0 24px 60px rgba(15,41,74,.25);z-index:611;overflow:hidden;display:flex;flex-direction:column}
.btp-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 12px;color:var(--btp-heading,#071b3a)}
.btp-popover-head strong{font-size:17px;font-weight:800}
.btp-popover-close{background:none!important;border:0!important;outline:0!important;box-shadow:none!important;font-size:16px;cursor:pointer;color:var(--btp-text,#676685)!important;width:30px!important;height:30px!important;border-radius:50%!important;padding:0!important}
.btp-popover-close:hover{background:var(--btp-subtle-bg,#f8f4f1)}
.btp-popover-search{display:flex;align-items:center;gap:10px;margin:0 20px 14px;padding:10px 14px;border:1px solid var(--btp-border,#ebebf5);border-radius:12px}
.btp-popover-search .dashicons{color:var(--btp-text,#676685)}
.btp-popover-search input{flex:1;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font-size:14px}
.btp-popover-results{padding:0 12px 16px;overflow-y:auto}
.btp-popover-empty{padding:20px 8px;text-align:center;color:var(--btp-text,#676685);font-size:13.5px;margin:0}
.btp-popover-item{display:flex;align-items:center;gap:12px;padding:10px 8px;border-radius:12px;text-decoration:none;color:inherit}
.btp-popover-item:hover{background:var(--btp-subtle-bg,#f8f4f1)}
.btp-popover-item img{width:52px;height:52px;border-radius:10px;object-fit:cover;flex:0 0 52px;background:var(--btp-subtle-bg,#f8f4f1)}
.btp-popover-item-title{font-size:14px;font-weight:700;color:var(--btp-heading,#071b3a);margin:0 0 2px}
.btp-popover-item-price{font-size:12.5px;color:var(--btp-brand,#eb5200);font-weight:700}
.btp-popover-item-remove{margin-left:auto;background:none;border:0;color:var(--btp-text,#676685);cursor:pointer;font-size:16px;flex:0 0 auto}
.btp-popover-item-remove:hover{color:#b91c1c}
[hidden]{display:none!important}

.btp-mobile-toggle-btn{display:none;align-items:center;justify-content:center;width:38px;height:38px;cursor:pointer;color:var(--btp-heading,#071b3a)}
.btp-mobile-menu-backdrop{display:none}
.btp-mobile-menu-panel{position:fixed;top:0;right:0;bottom:0;width:360px;max-width:88vw;background:#fff;z-index:601;padding:24px 20px;transform:translateX(100%);transition:transform .25s ease;box-shadow:-8px 0 30px rgba(7,27,58,.15);overflow-y:auto}
.btp-mobile-menu-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.btp-mobile-menu-head strong{font-size:22px;font-weight:800;color:var(--btp-heading,#071b3a)}
.btp-mobile-menu-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--btp-subtle-bg,#f8f4f1);cursor:pointer;color:var(--btp-heading,#071b3a)}
.btp-mobile-menu-close .dashicons{font-size:18px;width:18px;height:18px}
.btp-nav-list-mobile{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.btp-nav-list-mobile li{border-bottom:1px solid var(--btp-border,#ebebf5)}
.btp-nav-list-mobile a{display:flex;align-items:center;gap:14px;padding:10px 4px;color:var(--btp-heading,#071b3a);text-decoration:none;font-weight:700;font-size:16px}
.btp-nav-list-mobile a .dashicons{font-size:19px;width:19px;height:19px;color:var(--btp-heading,#071b3a)}
.btp-mobile-menu-lang{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px}
.btp-mobile-menu-lang .dashicons-globe-wrap{display:flex;align-items:center;gap:14px;font-weight:700;font-size:16px;color:var(--btp-heading,#071b3a)}
.btp-mobile-menu-lang .btp-globe{font-size:19px;line-height:1}
.btp-mobile-menu-lang .btp-lang-switch{display:flex!important;border:1px solid var(--btp-border,#ebebf5);border-radius:999px;padding:8px 14px;background:#fff}
.btp-mobile-menu-lang .btp-lang-switch select{border:0;background:transparent;font-size:14px;font-weight:600;color:var(--btp-heading,#071b3a)}

@media(max-width:980px){
	.btp-nav,.btp-header-account{display:none}
	.btp-mobile-toggle-btn{display:inline-flex}
	.btp-header-inner{gap:12px}

	/* Compact icon-only mobile header (source site's mobile header shows just
	   logo + a handful of icons — its pill/text style and language dropdown
	   are desktop-only). Reuses the same search/wishlist popovers and cart
	   link, just restyled, instead of duplicating that markup. */
	.btp-lang-switch,.btp-pill-account{display:none!important}
	.btp-header-inner{justify-content:space-between}
	.btp-header-actions{gap:8px}
	.btp-pill-action{
		width:38px!important;height:38px!important;padding:0!important;border-radius:50%!important;
		border:1px solid var(--btp-border,#ebebf5)!important;background:#fff!important;justify-content:center;
		box-shadow:0 1px 2px rgba(7,27,58,.05);
	}
	.btp-pill-action span:not(.dashicons):not(.btp-badge){display:none}
	.btp-pill-action .dashicons{font-size:18px;width:18px;height:18px;color:var(--btp-heading,#071b3a)}
	.btp-pill-action .btp-badge{top:-2px;right:-2px}
	.btp-mobile-toggle-btn{
		width:38px;height:38px;border-radius:50%;border:1px solid var(--btp-border,#ebebf5);
		background:#fff;box-shadow:0 1px 2px rgba(7,27,58,.05);
	}
}

#btp-mobile-menu-toggle:checked ~ header .btp-mobile-menu-backdrop{
	display:block;position:fixed;inset:0;background:rgba(7,27,58,.45);z-index:600;
}
#btp-mobile-menu-toggle:checked ~ header .btp-mobile-menu-panel{transform:translateX(0)}
