/*!
 * BBK Tours Suite — site header & footer (noir, ivory & copper, "Luxe 2026").
 * Self-contained: the colour tokens below mirror frontend.css so the header and
 * footer keep their look even where frontend.css is not loaded.
 */

:root {
	--bbk-top-h: 40px;
	--bbk-bar-h: 84px;
}
@media (max-width: 1179.98px) { :root { --bbk-bar-h: 74px; } }
@media (max-width: 719.98px) { :root { --bbk-top-h: 36px; --bbk-bar-h: 66px; } }

.bbk-hdr,
.bbk-ftr {
	--l-noir: #151210;
	--l-noir-2: #211b17;
	--l-panel: rgba(30, 25, 21, .985);
	--l-copper: #b67621;
	--l-copper-2: #d8a865;
	--l-copper-3: #ecd2a8;
	--l-ivory: #faf6ef;
	--l-line: rgba(216, 168, 101, .2);
	--l-wa: #25d366;
	--l-font: "Manrope", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
	--l-accent: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;
	--l-ease: cubic-bezier(.2, .7, .2, 1);
	--l-cta: linear-gradient(135deg, #a86a1c 0%, #94600f 55%, #7a4b10 100%);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ------------------------------------------------------------------ */
/* Resets against TripRex / Bootstrap / Elementor globals               */
/* ------------------------------------------------------------------ */

.bbk-hdr *, .bbk-hdr *::before, .bbk-hdr *::after,
.bbk-ftr *, .bbk-ftr *::before, .bbk-ftr *::after { box-sizing: border-box; }
.bbk-hdr ul, .bbk-ftr ul { list-style: none; margin: 0; padding: 0; }
.bbk-hdr li, .bbk-ftr li { margin: 0; padding: 0; }
.bbk-hdr p, .bbk-ftr p { margin: 0; font-family: inherit; font-size: inherit; line-height: inherit; }
.bbk-hdr a, .bbk-ftr a { text-decoration: none; }
.bbk-hdr button, .bbk-hdr summary { font-family: inherit; }
.bbk-hdr svg, .bbk-ftr svg { min-height: 0; flex: none; }
.bbk-hdr img, .bbk-ftr img { max-width: none; }
.bbk-hdr .bbk-sr, .bbk-ftr .bbk-sr {
	position: absolute !important;
	width: 1px; height: 1px; margin: -1px; padding: 0;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.bbk-hdr a:focus-visible, .bbk-hdr button:focus-visible, .bbk-hdr summary:focus-visible,
.bbk-ftr a:focus-visible, .bbk-ftr button:focus-visible {
	outline: 2px solid var(--l-copper-2);
	outline-offset: 3px;
}
.bbk-hdr-compat { display: none !important; }

.bbk-l-wrap {
	width: 100%;
	max-width: 1320px;
	margin-inline: auto;
	padding-inline: clamp(16px, 3vw, 32px);
}

/* Skip link */
.bbk-skip {
	position: absolute; left: 16px; top: -200px; z-index: 100001;
	padding: 12px 18px; border-radius: 10px;
	background: #fff; color: #151210 !important;
	font: 700 15px/1.2 "Manrope", system-ui, sans-serif;
	text-decoration: none !important;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .35);
}
.bbk-skip:focus { top: calc(var(--wp-admin--admin-bar--height, 0px) + 12px); outline: 2px solid #b67621; outline-offset: 2px; }
.bbk-content-start { display: block; height: 0; margin: 0; padding: 0; outline: none; }

/* ------------------------------------------------------------------ */
/* Header                                                               */
/* ------------------------------------------------------------------ */

.bbk-hdr {
	position: -webkit-sticky;
	position: sticky;
	/* The top bar scrolls away, the main bar stays. */
	top: calc(var(--wp-admin--admin-bar--height, 0px) - var(--bbk-top-h));
	z-index: 990;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	color: #fff;
	background-color: var(--l-noir);
	font: 500 15px/1.4 var(--l-font);
	transition: background-color .35s ease, box-shadow .35s ease;
}
.bbk-hdr.is-scrolled { box-shadow: 0 1px 0 rgba(216, 168, 101, .14), 0 18px 40px -26px rgba(0, 0, 0, .75); }
.bbk-hdr.is-open { z-index: 9995; }

/* Transparent over the hero, solid noir once the page scrolls. */
.bbk-hdr--overlay {
	background-color: transparent;
	margin-bottom: calc(-1 * (var(--bbk-top-h) + var(--bbk-bar-h)));
}
.bbk-hdr--overlay::before {
	content: "";
	position: absolute; left: 0; right: 0; top: 0; bottom: -40px;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(10, 8, 7, .66) 0%, rgba(10, 8, 7, .32) 58%, rgba(10, 8, 7, 0) 100%);
	transition: opacity .35s ease;
}
/* Solid layer for the scrolled state: a pseudo-element, so that no ancestor of the
   off-canvas menu gets a backdrop-filter (it would trap the fixed-position drawer). */
.bbk-hdr--overlay::after {
	content: "";
	position: absolute; inset: 0;
	pointer-events: none;
	background: rgba(21, 18, 16, .9);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	opacity: 0;
	transition: opacity .35s ease;
}
.bbk-hdr--overlay.is-scrolled::before { opacity: 0; }
.bbk-hdr--overlay.is-scrolled::after { opacity: 1; }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	.bbk-hdr--overlay::after { background: var(--l-noir); }
}

/* Top bar */
.bbk-hdr__top {
	position: relative; z-index: 1;
	height: var(--bbk-top-h);
	border-bottom: 1px solid rgba(216, 168, 101, .14);
	color: rgba(255, 255, 255, .76);
}
.bbk-hdr--overlay .bbk-hdr__top { border-bottom-color: rgba(255, 255, 255, .1); }
.bbk-hdr__top-in { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 100%; }
.bbk-hdr__promise {
	display: inline-flex; align-items: center; gap: 8px; min-width: 0;
	color: rgba(255, 255, 255, .8);
	font: 500 13px/1 var(--l-font) !important;
	letter-spacing: .02em;
	white-space: nowrap;
}
.bbk-hdr__promise span { overflow: hidden; text-overflow: ellipsis; }
.bbk-hdr__promise svg { color: var(--l-copper-2); }
.bbk-hdr__contact { display: flex; align-items: center; gap: 22px; flex: none; }
.bbk-hdr__contact li { position: relative; }
.bbk-hdr__contact li + li::before {
	content: ""; position: absolute; left: -11px; top: 50%;
	width: 1px; height: 12px; margin-top: -6px;
	background: rgba(255, 255, 255, .18);
}
.bbk-hdr .bbk-hdr__contact a {
	display: inline-flex; align-items: center; gap: 7px;
	color: rgba(255, 255, 255, .84);
	font: 600 13px/1 var(--l-font);
	letter-spacing: .01em;
	white-space: nowrap;
	transition: color .2s;
}
.bbk-hdr .bbk-hdr__contact a:hover { color: var(--l-copper-3); }
.bbk-hdr__contact svg { color: var(--l-copper-2); }
.bbk-hdr__contact .bbk-c--wa svg { color: var(--l-wa); }

/* Main bar */
.bbk-hdr__bar { position: relative; z-index: 1; }
.bbk-hdr__bar-in { display: flex; align-items: center; gap: clamp(14px, 2vw, 28px); height: var(--bbk-bar-h); }

.bbk-hdr .bbk-brand, .bbk-ftr .bbk-brand { display: inline-flex; align-items: center; gap: 10px; flex: none; color: #fff; line-height: 1; }
.bbk-brand__img { display: block; width: auto; height: 46px; max-width: 210px; object-fit: contain; }
.bbk-brand__icon { display: block; width: 40px; height: 40px; border-radius: 10px; }
.bbk-brand__text { display: inline-flex; align-items: baseline; gap: 8px; white-space: nowrap; }
.bbk-brand__word { color: #fff; font: 800 22px/1 var(--l-font); letter-spacing: .16em; text-transform: uppercase; }
.bbk-brand__accent { color: var(--l-copper-2); font: italic 600 27px/1 var(--l-accent); letter-spacing: 0; }

/* Navigation (desktop) */
.bbk-hdr__drawer { display: flex; align-items: center; justify-content: center; flex: 1 1 auto; min-width: 0; }
.bbk-hdr__drawer-head, .bbk-hdr__drawer-foot, .bbk-hdr__backdrop { display: none; }
.bbk-nav { display: block; }
.bbk-nav__list { display: flex; align-items: center; gap: 2px; }
.bbk-nav__list > li { position: relative; display: flex; align-items: center; }
.bbk-hdr .bbk-nav a { color: rgba(255, 255, 255, .86); transition: color .2s, background-color .2s; }
.bbk-hdr .bbk-nav__list > li > a {
	position: relative;
	display: inline-flex; align-items: center;
	padding: 10px 12px;
	font: 600 15px/1.2 var(--l-font);
	letter-spacing: .005em;
	white-space: nowrap;
}
.bbk-hdr .bbk-nav__list > li > a::after {
	content: ""; position: absolute; left: 12px; right: 12px; bottom: 2px;
	height: 2px; border-radius: 2px;
	background: linear-gradient(90deg, var(--l-copper-2), var(--l-copper));
	transform: scaleX(0); transform-origin: left center;
	transition: transform .35s var(--l-ease);
}
.bbk-hdr .bbk-nav__list > li.menu-item-has-children > a { padding-right: 4px; }
.bbk-hdr .bbk-nav__list > li.menu-item-has-children > a::after { right: 4px; }
.bbk-hdr .bbk-nav__list > li > a:hover,
.bbk-hdr .bbk-nav__list > li > a:focus-visible,
.bbk-hdr .bbk-nav__list > li.is-open > a { color: #fff; }
.bbk-hdr .bbk-nav__list > li > a:hover::after,
.bbk-hdr .bbk-nav__list > li.current-menu-item > a::after,
.bbk-hdr .bbk-nav__list > li.current-menu-ancestor > a::after,
.bbk-hdr .bbk-nav__list > li.current-menu-parent > a::after { transform: scaleX(1); }
.bbk-hdr .bbk-nav__list > li.current-menu-item > a,
.bbk-hdr .bbk-nav__list > li.current-menu-ancestor > a,
.bbk-hdr .bbk-nav__list > li.current-menu-parent > a { color: var(--l-copper-3); }

.bbk-nav__toggle {
	display: inline-grid; place-items: center; flex: none;
	width: 28px; height: 28px; margin: 0 4px 0 0; padding: 0;
	border: 0; border-radius: 50%;
	background: transparent; color: rgba(255, 255, 255, .7);
	cursor: pointer;
	transition: color .2s, background-color .2s;
}
.bbk-nav__toggle:hover { color: #fff; background: rgba(255, 255, 255, .08); }
.bbk-chev { display: block; transition: transform .25s ease; }
.bbk-nav li.is-open > .bbk-nav__toggle .bbk-chev { transform: rotate(180deg); }

@media (min-width: 1180px) {
	.bbk-nav .sub-menu {
		position: absolute; top: calc(100% + 12px); left: -8px; z-index: 5;
		min-width: 252px; padding: 10px;
		border: 1px solid var(--l-line); border-radius: 18px;
		background: var(--l-panel);
		box-shadow: 0 30px 60px -22px rgba(0, 0, 0, .75);
		opacity: 0; visibility: hidden; transform: translateY(8px);
		transition: opacity .25s ease, transform .25s var(--l-ease), visibility 0s linear .25s;
	}
	.bbk-nav .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
	.bbk-nav li.is-open > .sub-menu { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
	.bbk-nav .sub-menu li { position: relative; display: flex; align-items: center; }
	.bbk-hdr .bbk-nav .sub-menu a {
		display: flex; flex: 1 1 auto; align-items: center;
		padding: 10px 14px; border-radius: 10px;
		color: rgba(255, 255, 255, .8);
		font: 500 14.5px/1.35 var(--l-font);
		white-space: nowrap;
	}
	.bbk-hdr .bbk-nav .sub-menu a:hover,
	.bbk-hdr .bbk-nav .sub-menu a:focus-visible { background: rgba(216, 168, 101, .1); color: #fff; }
	.bbk-hdr .bbk-nav .sub-menu .current-menu-item > a { color: var(--l-copper-3); }
	.bbk-nav .sub-menu .sub-menu { top: -11px; left: calc(100% + 8px); }
	.bbk-nav .sub-menu .bbk-nav__toggle .bbk-chev { transform: rotate(-90deg); }
}
@media (min-width: 1180px) and (hover: hover) and (pointer: fine) {
	.bbk-nav li:hover > .sub-menu { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
	.bbk-nav__list > li:hover > .bbk-nav__toggle .bbk-chev { transform: rotate(180deg); }
}

/* Actions */
/* Own stacking context: switcher widgets with a z-index stay under the open drawer. */
.bbk-hdr__actions { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; flex: none; margin-left: auto; }

.bbk-lang { position: relative; }
.bbk-lang__btn {
	display: inline-flex; align-items: center; gap: 7px;
	height: 44px; padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, .2); border-radius: 999px;
	color: #fff;
	font: 700 13px/1 var(--l-font); letter-spacing: .08em;
	list-style: none; cursor: pointer; user-select: none;
	transition: border-color .2s, background-color .2s;
}
.bbk-lang__btn::-webkit-details-marker { display: none; }
.bbk-lang__btn::marker { content: ""; }
.bbk-lang__btn:hover, .bbk-lang[open] .bbk-lang__btn { border-color: var(--l-copper-2); background: rgba(255, 255, 255, .05); }
.bbk-lang__btn .bbk-ico { color: var(--l-copper-2); }
.bbk-lang[open] .bbk-lang__btn .bbk-chev { transform: rotate(180deg); }
.bbk-lang__list {
	position: absolute; right: 0; top: calc(100% + 10px); z-index: 6;
	min-width: 210px; padding: 8px;
	border: 1px solid var(--l-line); border-radius: 16px;
	background: var(--l-panel);
	box-shadow: 0 30px 60px -22px rgba(0, 0, 0, .75);
	animation: bbk-l-pop .22s var(--l-ease);
}
.bbk-hdr .bbk-lang__list a {
	display: flex; align-items: center; justify-content: space-between; gap: 18px;
	padding: 10px 12px; border-radius: 10px;
	color: rgba(255, 255, 255, .86);
	font: 600 14.5px/1.2 var(--l-font);
	transition: background-color .2s, color .2s;
}
.bbk-hdr .bbk-lang__list a:hover { background: rgba(216, 168, 101, .1); color: #fff; }
.bbk-lang__abbr { color: rgba(255, 255, 255, .45); font: 700 11px/1 var(--l-font); letter-spacing: .14em; }
.bbk-hdr .bbk-lang__list a.is-current { color: var(--l-copper-3); }
.bbk-hdr .bbk-lang__list a.is-current .bbk-lang__abbr { color: var(--l-copper-2); }
@keyframes bbk-l-pop { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

.bbk-hdr .bbk-hdr__cta {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 46px; padding: 0 22px;
	border-radius: 999px;
	background: var(--l-cta);
	color: #fff;
	font: 700 14.5px/1 var(--l-font); letter-spacing: .01em;
	white-space: nowrap;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 12px 26px -12px rgba(182, 118, 33, .9);
	transition: transform .25s var(--l-ease), box-shadow .25s, filter .25s;
}
.bbk-hdr .bbk-hdr__cta:hover { color: #fff; filter: brightness(1.1); transform: translateY(-1px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 16px 30px -12px rgba(182, 118, 33, 1); }

.bbk-hdr__burger {
	display: none; position: relative; flex: none;
	width: 46px; height: 46px; padding: 0;
	border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%;
	background: transparent; cursor: pointer;
	transition: border-color .2s, background-color .2s;
}
.bbk-hdr__burger:hover { border-color: var(--l-copper-2); background: rgba(255, 255, 255, .05); }
.bbk-hdr__burger span { position: absolute; left: 13px; right: 13px; height: 2px; border-radius: 2px; background: #fff; }
.bbk-hdr__burger span:nth-child(1) { top: 15px; }
.bbk-hdr__burger span:nth-child(2) { top: 21px; right: 18px; background: var(--l-copper-2); }
.bbk-hdr__burger span:nth-child(3) { top: 27px; }

/* Shared buttons (drawer + footer) */
.bbk-hdr .bbk-l-btn, .bbk-ftr .bbk-l-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 52px; padding: 0 26px;
	border-radius: 999px; border: 1px solid transparent;
	font: 700 15px/1.2 var(--l-font); letter-spacing: .01em; text-align: center;
	transition: transform .25s var(--l-ease), box-shadow .25s, background-color .25s, border-color .25s, color .25s, filter .25s;
}
.bbk-hdr .bbk-l-btn--copper, .bbk-ftr .bbk-l-btn--copper {
	background: var(--l-cta); color: #fff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 14px 30px -14px rgba(182, 118, 33, .95);
}
.bbk-hdr .bbk-l-btn--copper:hover, .bbk-ftr .bbk-l-btn--copper:hover { color: #fff; filter: brightness(1.1); transform: translateY(-2px); }
.bbk-hdr .bbk-l-btn--ghost, .bbk-ftr .bbk-l-btn--ghost { border-color: rgba(255, 255, 255, .24); background: rgba(255, 255, 255, .03); color: #fff; }
.bbk-hdr .bbk-l-btn--ghost:hover, .bbk-ftr .bbk-l-btn--ghost:hover { border-color: var(--l-copper-2); color: var(--l-copper-3); transform: translateY(-2px); }
.bbk-l-btn--ghost svg { color: var(--l-wa); }

/* ------------------------------------------------------------------ */
/* Header — tablet & mobile (off-canvas menu)                           */
/* ------------------------------------------------------------------ */

html.bbk-nav-open, html.bbk-nav-open body { overflow: hidden !important; }
html.bbk-nav-open body { padding-right: var(--bbk-sbw, 0px); }

@media (max-width: 1179.98px) {
	.bbk-hdr__burger { display: inline-block; }
	.bbk-hdr__actions { gap: 10px; }

	.bbk-hdr__backdrop {
		display: block;
		position: fixed; inset: 0; z-index: 2;
		background: rgba(8, 6, 5, .62);
		-webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);
		opacity: 0; visibility: hidden;
		transition: opacity .35s ease, visibility 0s linear .35s;
	}
	.bbk-hdr.is-open .bbk-hdr__backdrop { opacity: 1; visibility: visible; transition: opacity .35s ease, visibility 0s; }

	.bbk-hdr__drawer {
		position: fixed; top: 0; right: 0; bottom: 0; z-index: 3;
		display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start;
		width: min(430px, 100%);
		padding: 0 24px calc(28px + env(safe-area-inset-bottom, 0px));
		background:
			radial-gradient(520px 300px at 100% 0%, rgba(182, 118, 33, .18), rgba(182, 118, 33, 0) 62%),
			var(--l-noir);
		border-left: 1px solid var(--l-line);
		box-shadow: -40px 0 80px -30px rgba(0, 0, 0, .75);
		overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
		transform: translateX(100%); visibility: hidden;
		transition: transform .45s var(--l-ease), visibility 0s linear .45s;
	}
	.bbk-hdr.is-open .bbk-hdr__drawer { transform: none; visibility: visible; transition: transform .45s var(--l-ease), visibility 0s; }

	.bbk-hdr__drawer-head {
		position: sticky; top: 0; z-index: 2;
		display: flex; align-items: center; justify-content: space-between; gap: 16px;
		min-height: var(--bbk-bar-h); margin: 0 -24px 6px; padding: 0 24px;
		background: var(--l-noir);
		border-bottom: 1px solid rgba(216, 168, 101, .14);
	}
	.bbk-hdr__close {
		display: grid; place-items: center; flex: none;
		width: 46px; height: 46px; padding: 0;
		border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%;
		background: transparent; color: #fff; cursor: pointer;
		transition: border-color .2s, color .2s;
	}
	.bbk-hdr__close:hover { border-color: var(--l-copper-2); color: var(--l-copper-3); }

	.bbk-nav__list { flex-direction: column; align-items: stretch; gap: 0; }
	.bbk-nav__list > li { flex-wrap: wrap; border-bottom: 1px solid rgba(255, 255, 255, .08); }
	.bbk-hdr .bbk-nav__list > li > a { flex: 1 1 0; min-width: 0; padding: 16px 0; font-size: 18px; font-weight: 700; white-space: normal; }
	.bbk-hdr .bbk-nav__list > li > a::after { display: none; }
	.bbk-nav__toggle { width: 44px; height: 44px; margin: 0; border: 1px solid rgba(255, 255, 255, .12); }
	.bbk-nav .sub-menu { display: none; flex-basis: 100%; margin: 0 0 14px 2px; padding: 2px 0 2px 16px; border-left: 1px solid rgba(216, 168, 101, .35); }
	.bbk-nav li.is-open > .sub-menu { display: block; animation: bbk-l-pop .28s var(--l-ease); }
	.bbk-nav .sub-menu li { display: flex; flex-wrap: wrap; align-items: center; }
	.bbk-hdr .bbk-nav .sub-menu a { display: block; flex: 1 1 0; min-width: 0; padding: 10px 0; color: rgba(255, 255, 255, .76); font: 500 16px/1.35 var(--l-font); }
	.bbk-hdr .bbk-nav .sub-menu a:hover { color: #fff; }
	.bbk-hdr .bbk-nav .sub-menu .current-menu-item > a { color: var(--l-copper-3); }
	.bbk-nav .sub-menu .bbk-nav__toggle { width: 36px; height: 36px; }

	.bbk-hdr__drawer-foot { display: flex; flex-direction: column; gap: 12px; margin-top: auto; padding-top: 26px; }
	.bbk-hdr__drawer-foot .bbk-l-btn { width: 100%; }
	.bbk-hdr__dcontact { display: grid; gap: 4px; margin-top: 6px; }
	.bbk-hdr .bbk-hdr__dcontact a { display: inline-flex; align-items: center; gap: 10px; padding: 6px 0; color: rgba(255, 255, 255, .82); font: 600 15px/1.3 var(--l-font); }
	.bbk-hdr .bbk-hdr__dcontact a:hover { color: var(--l-copper-3); }
	.bbk-hdr__dcontact svg { color: var(--l-copper-2); }
	.bbk-hdr__dlangs { margin-top: 8px; }
	.bbk-hdr__dlabel { margin-bottom: 10px !important; color: var(--l-copper-2); font: 700 11.5px/1 var(--l-font) !important; letter-spacing: .2em; text-transform: uppercase; }
	.bbk-hdr__langs { display: flex; flex-wrap: wrap; gap: 8px; }
	.bbk-hdr .bbk-hdr__langs a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 999px; color: rgba(255, 255, 255, .86); font: 600 14px/1 var(--l-font); }
	.bbk-hdr .bbk-hdr__langs a:hover { border-color: var(--l-copper-2); color: #fff; }
	.bbk-hdr .bbk-hdr__langs a.is-current { border-color: var(--l-copper); background: rgba(182, 118, 33, .16); color: var(--l-copper-3); }
	.bbk-hdr__dpromise { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px !important; color: rgba(255, 255, 255, .6); font: 500 13.5px/1.5 var(--l-font) !important; }
	.bbk-hdr__dpromise svg { margin-top: 2px; color: var(--l-copper-2); }

	.admin-bar .bbk-hdr__drawer { top: var(--wp-admin--admin-bar--height, 0px); }
}

@media (max-width: 719.98px) {
	.bbk-hdr__promise, .bbk-hdr__contact .bbk-c--mail { display: none; }
	.bbk-hdr__top-in { justify-content: center; }
	.bbk-hdr__contact { gap: 26px; }
	.bbk-hdr__contact li + li::before { left: -13px; }
	.bbk-brand__img { height: 38px; max-width: 150px; }
	.bbk-brand__word { font-size: 19px; letter-spacing: .14em; }
	.bbk-brand__accent { font-size: 23px; }
	.bbk-hdr .bbk-hdr__cta { height: 44px; padding: 0 16px; font-size: 14px; }
	.bbk-lang__btn { height: 42px; padding: 0 11px; }
	.bbk-hdr__burger { width: 44px; height: 44px; }
	.bbk-hdr__burger span { left: 12px; right: 12px; }
	.bbk-hdr__burger span:nth-child(1) { top: 14px; }
	.bbk-hdr__burger span:nth-child(2) { top: 20px; right: 17px; }
	.bbk-hdr__burger span:nth-child(3) { top: 26px; }
}
@media (max-width: 600px) {
	/* The WordPress toolbar is not fixed on phones. */
	.admin-bar .bbk-hdr { top: calc(-1 * var(--bbk-top-h)); }
	.admin-bar .bbk-hdr__drawer { top: 0; }
}
@media (max-width: 479.98px) {
	.bbk-hdr__actions { gap: 8px; }
	.bbk-hdr .bbk-hdr__cta { width: 44px; padding: 0; }
	.bbk-hdr__cta-txt { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
	.bbk-lang__btn .bbk-ico { display: none; }
	.bbk-hdr__drawer { padding-inline: 20px; }
	.bbk-hdr__drawer-head { margin-inline: -20px; padding-inline: 20px; }
}
@media (max-width: 359.98px) {
	/* Very small phones: the languages stay available in the menu panel. */
	.bbk-hdr__lang { display: none; }
	.bbk-hdr .bbk-l-wrap { padding-inline: 14px; }
	.bbk-brand__img { max-width: 130px; }
}

/* Hero under the transparent header: keep the visible hero as tall as before. */
body.bbk-hdr-overlay .bbk-hero .bbk-slider { height: calc(clamp(620px, 92vh, 900px) + var(--bbk-top-h) + var(--bbk-bar-h)); }
body.bbk-hdr-overlay .bbk-hero .bbk-slide { padding-top: calc(var(--bbk-top-h) + var(--bbk-bar-h)); }
body.bbk-hdr-overlay .bbk-phero { padding-top: calc(var(--bbk-top-h) + var(--bbk-bar-h) + 48px); min-height: calc(clamp(380px, 56vh, 560px) + 64px); }

/* ------------------------------------------------------------------ */
/* Footer                                                               */
/* ------------------------------------------------------------------ */

.bbk-ftr {
	position: relative; isolation: isolate; overflow: hidden;
	display: block; margin: 0;
	padding: clamp(52px, 6vw, 84px) 0 0;
	color: rgba(255, 255, 255, .72);
	background:
		radial-gradient(900px 420px at 88% -12%, rgba(182, 118, 33, .2), rgba(182, 118, 33, 0) 62%),
		radial-gradient(700px 360px at -8% 108%, rgba(182, 118, 33, .1), rgba(182, 118, 33, 0) 60%),
		linear-gradient(180deg, #151210 0%, #0d0b09 100%);
	font: 500 15px/1.65 var(--l-font);
}
.bbk-ftr::before {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; z-index: -1;
	background: linear-gradient(90deg, rgba(216, 168, 101, 0), rgba(216, 168, 101, .6), rgba(216, 168, 101, 0));
}

/* Call to action */
.bbk-ftr__cta {
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
	gap: 28px 48px;
	padding-bottom: clamp(36px, 4vw, 52px);
	border-bottom: 1px solid rgba(216, 168, 101, .18);
}
.bbk-ftr__cta-txt { flex: 1 1 460px; min-width: 0; }
.bbk-ftr .bbk-ftr__kicker {
	display: inline-flex; align-items: center; gap: 12px;
	margin-bottom: 14px;
	color: var(--l-copper-2);
	font: 700 12px/1 var(--l-font); letter-spacing: .24em; text-transform: uppercase;
}
.bbk-ftr__kicker::before { content: ""; width: 30px; height: 1px; background: currentColor; }
.bbk-ftr .bbk-ftr__headline {
	margin-bottom: 12px;
	color: #fff;
	font: 800 clamp(28px, 3.3vw, 46px)/1.08 var(--l-font);
	letter-spacing: -.028em;
}
.bbk-ftr__headline em { color: var(--l-copper-3); font: italic 600 1.14em/1 var(--l-accent); letter-spacing: 0; }
.bbk-ftr .bbk-ftr__lead { max-width: 560px; color: rgba(255, 255, 255, .7); font-size: 16px; line-height: 1.65; }
.bbk-ftr__cta-btns { display: flex; flex-wrap: wrap; gap: 12px; }

/* Columns */
.bbk-ftr__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(0, .95fr) minmax(0, 1.25fr) minmax(0, 1.05fr);
	gap: 44px clamp(28px, 4vw, 56px);
	padding: clamp(42px, 5vw, 64px) 0;
}
.bbk-ftr .bbk-brand__img { height: 56px; max-width: 230px; }
.bbk-ftr .bbk-brand__word { font-size: 24px; }
.bbk-ftr .bbk-brand__accent { font-size: 30px; }
.bbk-ftr .bbk-ftr__pitch { max-width: 380px; margin: 22px 0 24px; color: rgba(255, 255, 255, .68); font-size: 15px; line-height: 1.75; }
.bbk-ftr__social { display: flex; flex-wrap: wrap; gap: 10px; }
.bbk-ftr .bbk-ftr__social a {
	display: grid; place-items: center;
	width: 44px; height: 44px;
	border: 1px solid rgba(216, 168, 101, .3); border-radius: 50%;
	color: rgba(255, 255, 255, .88);
	transition: background-color .25s, border-color .25s, color .25s, transform .25s var(--l-ease);
}
.bbk-ftr .bbk-ftr__social a:hover { background: var(--l-copper); border-color: var(--l-copper); color: #fff; transform: translateY(-2px); }

.bbk-ftr .bbk-ftr__title {
	margin: 0 0 20px; padding: 0;
	color: var(--l-copper-2);
	font: 700 12px/1.2 var(--l-font);
	letter-spacing: .22em; text-transform: uppercase;
}
.bbk-ftr__links { display: grid; gap: 2px; }
.bbk-ftr .bbk-ftr__links a {
	display: inline-flex; align-items: center; gap: 0;
	padding: 6px 0;
	color: rgba(255, 255, 255, .78);
	font: 500 15px/1.4 var(--l-font);
	transition: color .2s, gap .25s var(--l-ease);
}
.bbk-ftr .bbk-ftr__links a::before { content: ""; width: 0; height: 1px; background: var(--l-copper-2); transition: width .25s var(--l-ease); }
.bbk-ftr .bbk-ftr__links a:hover { color: #fff; gap: 10px; }
.bbk-ftr .bbk-ftr__links a:hover::before { width: 14px; }

.bbk-ftr__tours { display: grid; gap: 10px; }
.bbk-ftr .bbk-ftr__tour {
	display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 14px;
	color: rgba(255, 255, 255, .8);
	transition: color .2s;
}
.bbk-ftr__tour-img { display: grid; place-items: center; width: 52px; height: 52px; overflow: hidden; border-radius: 14px; background: rgba(255, 255, 255, .06); color: var(--l-copper-2); }
.bbk-ftr__tour-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--l-ease); }
.bbk-ftr__tour-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 600 14px/1.4 var(--l-font); }
.bbk-ftr .bbk-ftr__tour:hover { color: #fff; }
.bbk-ftr .bbk-ftr__tour:hover .bbk-ftr__tour-img img { transform: scale(1.08); }
.bbk-ftr .bbk-ftr__more {
	display: inline-flex; align-items: center; gap: 8px;
	margin-top: 18px;
	color: var(--l-copper-2);
	font: 700 12.5px/1 var(--l-font); letter-spacing: .12em; text-transform: uppercase;
}
.bbk-ftr .bbk-ftr__more svg { transition: transform .25s; }
.bbk-ftr .bbk-ftr__more:hover { color: var(--l-copper-3); }
.bbk-ftr .bbk-ftr__more:hover svg { transform: translateX(4px); }

.bbk-ftr__contact { display: grid; gap: 14px; }
.bbk-ftr .bbk-ftr__crow { display: grid; grid-template-columns: 40px minmax(0, 1fr); align-items: center; gap: 12px; color: #fff; }
.bbk-ftr__cicon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(216, 168, 101, .1); color: var(--l-copper-2); }
.bbk-ftr__cicon--wa { background: rgba(37, 211, 102, .12); color: var(--l-wa); }
.bbk-ftr__crow small { display: block; color: rgba(255, 255, 255, .52); font: 600 11px/1.3 var(--l-font); letter-spacing: .14em; text-transform: uppercase; }
.bbk-ftr__crow strong { display: block; color: #fff; font: 700 15px/1.4 var(--l-font); overflow-wrap: anywhere; transition: color .2s; }
.bbk-ftr a.bbk-ftr__crow:hover strong { color: var(--l-copper-3); }
.bbk-ftr .bbk-ftr__hours {
	display: flex; align-items: flex-start; gap: 10px;
	margin-top: 20px; padding: 12px 14px;
	border: 1px dashed rgba(216, 168, 101, .32); border-radius: 14px;
	color: rgba(255, 255, 255, .76);
	font-size: 14px; line-height: 1.5;
}
.bbk-ftr__hours svg { margin-top: 1px; color: var(--l-copper-2); }

/* Partners */
.bbk-ftr__partners {
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
	gap: 18px 32px;
	padding: 28px 0;
	border-top: 1px solid rgba(216, 168, 101, .16);
}
.bbk-ftr .bbk-ftr__plabel { color: rgba(255, 255, 255, .62); font: 600 14px/1.4 var(--l-font); letter-spacing: .02em; }
.bbk-ftr__plist { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.bbk-ftr__partner .bbk-logo-wrap {
	display: grid; place-items: center;
	height: 78px; min-width: 128px; padding: 10px 22px;
	border: 1px solid rgba(216, 168, 101, .22); border-radius: 18px;
	background: rgba(255, 255, 255, .03);
	transition: border-color .25s, background-color .25s, transform .25s var(--l-ease);
}
.bbk-ftr__partner a.bbk-logo-wrap:hover { border-color: var(--l-copper-2); background: rgba(255, 255, 255, .06); transform: translateY(-2px); }
.bbk-ftr__partner .bbk-tc { display: block; width: auto; height: 58px; }
.bbk-ftr__partner .bbk-logo--gyg { display: block; width: auto; height: 42px; }
.bbk-ftr__partner .bbk-logo--viator { display: block; width: auto; height: 24px; }
.bbk-ftr__partner img { display: block; width: auto; max-height: 56px; }

/* Bottom bar */
.bbk-ftr__bottom {
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
	gap: 14px 28px;
	padding: 22px 0 calc(26px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid rgba(255, 255, 255, .08);
	color: rgba(255, 255, 255, .58);
	font-size: 13.5px; line-height: 1.5;
}
.bbk-ftr__legal ul { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.bbk-ftr .bbk-ftr__legal a { color: rgba(255, 255, 255, .7); transition: color .2s; }
.bbk-ftr .bbk-ftr__legal a:hover { color: #fff; }
.bbk-ftr .bbk-ftr__pay {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 8px 14px;
	border: 1px solid rgba(216, 168, 101, .24); border-radius: 999px;
	background: rgba(216, 168, 101, .08);
	color: var(--l-copper-3);
	font-weight: 600;
}

@media (max-width: 1100px) {
	.bbk-ftr__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.bbk-ftr__grid { grid-template-columns: minmax(0, 1fr); gap: 38px; }
	.bbk-ftr__cta-btns, .bbk-ftr__cta-btns .bbk-l-btn { width: 100%; }
	.bbk-ftr__partners, .bbk-ftr__bottom { flex-direction: column; align-items: flex-start; }
	.bbk-ftr__partner .bbk-logo-wrap { min-width: 0; height: 70px; padding: 8px 16px; }
}

/* ------------------------------------------------------------------ */
/* Motion & print                                                       */
/* ------------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
	.bbk-hdr, .bbk-hdr *, .bbk-hdr *::before, .bbk-hdr *::after,
	.bbk-ftr *, .bbk-ftr *::before, .bbk-ftr *::after { transition: none !important; animation: none !important; }
}
@media print {
	.bbk-hdr { position: static; margin: 0; }
	.bbk-hdr__top, .bbk-hdr__actions, .bbk-hdr__drawer, .bbk-hdr__backdrop, .bbk-ftr__cta, .bbk-ftr__partners { display: none !important; }
}

/* Agency credit */
.bbk-ftr__credit { flex-basis: 100%; margin: 6px 0 0 !important; text-align: center; color: rgba(250, 246, 239, .55); font-size: 13px; letter-spacing: .02em; }
.bbk-ftr__credit a { color: #d8a865 !important; font-weight: 600; text-decoration: none !important; border-bottom: 1px solid rgba(216, 168, 101, .35); transition: color .2s, border-color .2s; }
.bbk-ftr__credit a:hover, .bbk-ftr__credit a:focus-visible { color: #fff !important; border-color: #fff; }
/* Room for the floating language button at the very end of the page. */
body:has(.bbk-ls--floating) .bbk-ftr__bottom { padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
