/* Theme Name: Tripgo Child Theme
Theme URI: https://themeforest.net/user/ovatheme/portfolio
Description: This is child theme of tripgo
Author: Ovatheme
Author URI: https://themeforest.net/user/ovatheme
Template: tripgo
Version: 1.1.0
Tags: two-columns, three-columns, left-sidebar, right-sidebar, custom-menu, editor-style, featured-images, flexible-header, full-width-template, post-formats, rtl-language-support, sticky-post, translation-ready
Text Domain:  tripgo-child
*/

/* ==========================================================================
   AlbaniaLL Redesign v2 — Design System
   Spec: docs/spec/01-design-system.md
   ========================================================================== */

:root {
	/* Brand colors */
	--al-orange: #F28C00;
	--al-purple: #5A3D8E;

	/* Backgrounds */
	--al-bg-page: #fcfcfd;
	--al-bg-card: #FFFFFF;

	/* Text */
	--al-text-main: #5e5e5e;
	--al-text-dark: #454545;
	--al-text-search: #2B2B2B;
	--al-text-white: #FFFFFF;

	/* UI */
	--al-border-search: #F28C00;
	--al-radius-search: 12px;

	/* Fonts */
	--al-font-heading: 'Open Sans', sans-serif;
	--al-font-body: 'Manrope', sans-serif;

	/* Typography — responsive via clamp (mobile min, preferred, desktop max) */
	--al-h1-size: clamp(34px, 5vw, 72px);
	--al-h2-size: clamp(28px, 3.5vw, 48px);
	--al-h3-size: clamp(22px, 2.5vw, 34px);
	--al-text-menu: clamp(16px, 1.2vw, 18px);
	--al-text-body: clamp(16px, 1.3vw, 20px);
	--al-text-small: clamp(14px, 1vw, 16px);
}

/* Page background */
body {
	background-color: var(--al-bg-page);
}
.main-navigation ul ul.sub-menu li {
	min-width: 350px !important;
}

/* Hide TranslatePress floating switcher - using header shortcode instead */
.trp-floating-switcher {
	display: none !important;
}

/* Language switcher top offset */
.trp-current-language-item__wrapper:not(.trp-hide-arrow) {
	margin-top: 8px;
}

/* Fix topbar layout squeeze at laptop breakpoint (1201-1366px) */
@media (min-width: 1201px) and (max-width: 1366px) {
	.elementor-element-0d486ab .elementor-element-2e646e6 {
		gap: 10px !important;
		padding: 10px 5px !important;
	}
	.elementor-element-0d486ab .elementor-element-d45d083 {
		padding: 10px 5px !important;
	}
	.elementor-element-0d486ab .elementor-element-ea9172a {
		gap: 5px !important;
		padding: 10px 5px !important;
	}
	.elementor-element-0d486ab .ova-contact-info {
		white-space: nowrap !important;
	}
	.elementor-element-0d486ab .ova-contact-info a,
	.elementor-element-0d486ab .elementor-heading-title {
		font-size: 13px !important;
		white-space: nowrap !important;
	}
}

/* Transfer page: remove capitalize from "5 reasons" heading */
.elementor-10688 .elementor-element.elementor-element-8c8f5ce .elementor-heading-title {
	text-transform: none !important;
}

/* HKGrotesk WOFF2 overrides — ~48% smaller than parent theme OTF */
@font-face {
	font-family: 'HK Grotesk';
	font-weight: 300;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-Light.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-Light.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 400;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-Regular.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-Regular.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 500;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-Medium.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-Medium.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 600;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-SemiBold.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-SemiBold.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 700;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-Bold.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-Bold.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 800;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-ExtraBold.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-ExtraBold.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk';
	font-weight: 900;
	font-style: normal;
	src: url('assets/fonts/HKGrotesk-Black.woff2') format('woff2'),
	     url('../tripgo/assets/libs/fonts/HKGrotesk-Black.otf') format('opentype');
	font-display: swap;
}

/* ==========================================================================
   AlbaniaLL Redesign Phase 2 — Header
   Spec: docs/spec/02-header.md
   ========================================================================== */

/* ── Hide old Elementor top bar (orange, data-id 0d486ab) ── */
.elementor-element-0d486ab {
	display: none !important;
}

/* ── New Top Bar ── */
.al-topbar {
	background: var(--al-bg-page, #fcfcfd);
	border-bottom: 1px solid #e8e8e8;
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	font-size: 14px;
	line-height: 1;
	color: var(--al-text-dark, #454545);
	position: relative;
	z-index: 1001;
}

.al-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1320px;
	margin: 0 auto;
	padding: 6px 20px;
	gap: 16px;
}

/* ── Left: Phone + Messengers ── */
.al-topbar__left {
	display: flex;
	align-items: center;
	gap: 16px;
}

.al-topbar__phone {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--al-purple, #5A3D8E);
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
	white-space: nowrap;
	transition: opacity 0.2s;
}
.al-topbar__phone:hover {
	opacity: 0.8;
}
.al-topbar__phone svg {
	flex-shrink: 0;
}

.al-topbar__messengers {
	display: flex;
	align-items: center;
	gap: 8px;
}

.al-topbar__messenger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	transition: transform 0.2s, opacity 0.2s;
	text-decoration: none;
}
.al-topbar__messenger:hover {
	transform: scale(1.15);
	opacity: 0.85;
}
/* Native messenger colors */
.al-topbar__messenger--wa  { color: #25D366; }
.al-topbar__messenger--tg  { color: #26A5E4; }
.al-topbar__messenger--viber { color: #7360F2; }

/* ── Right: Socials + Lang + Currency + Cart ── */
.al-topbar__right {
	display: flex;
	align-items: center;
	gap: 16px;
}

.al-topbar__socials {
	display: flex;
	align-items: center;
	gap: 6px;
}

.al-topbar__socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	color: var(--al-purple, #5A3D8E);
	text-decoration: none;
	transition: transform 0.2s, opacity 0.2s;
	border-radius: 4px;
}
.al-topbar__socials a:hover {
	transform: scale(1.15);
	opacity: 0.8;
}

/* ── Language Switcher (single button + dropdown) ── */
.al-topbar__lang {
	position: relative;
}

.al-lang__toggle {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #fff;
	border: 1.5px solid var(--al-purple, #5A3D8E);
	border-radius: 6px;
	padding: 4px 10px;
	cursor: pointer;
	color: var(--al-purple, #5A3D8E);
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	transition: background 0.2s, color 0.2s;
}
.al-lang__toggle:hover {
	background: var(--al-purple, #5A3D8E);
	color: #fff;
}
.al-lang__toggle svg {
	flex-shrink: 0;
}

.al-lang__dropdown {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	margin-top: 6px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.14);
	padding: 8px;
	min-width: 180px;
	z-index: 250;
}
.al-lang__dropdown--open {
	display: block;
}

.al-lang__search {
	width: 100%;
	padding: 6px 10px;
	border: 1px solid #e0e0e0;
	border-radius: 6px;
	font-size: 13px;
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	outline: none;
	margin-bottom: 6px;
	box-sizing: border-box;
}
.al-lang__search:focus {
	border-color: var(--al-purple, #5A3D8E);
}

.al-lang__list {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 220px;
	overflow-y: auto;
}
.al-lang__list li {
	margin: 0;
}
.al-lang__list a {
	display: block;
	padding: 6px 10px;
	font-size: 13px;
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	color: var(--al-text-dark, #454545);
	text-decoration: none;
	border-radius: 4px;
	transition: background 0.15s;
}
.al-lang__list a:hover {
	background: #f5f5f5;
	color: var(--al-purple, #5A3D8E);
}
.al-lang__code {
	display: inline-block;
	width: 24px;
	font-weight: 600;
	color: var(--al-purple, #5A3D8E);
}
.al-lang__list-item--active a {
	font-weight: 600;
	color: var(--al-purple, #5A3D8E) !important;
	background: #f5f0ff;
	border-radius: 4px;
}

/* ── Currency Switcher ── */
.al-topbar__currency {
	position: relative;
}

.al-topbar__currency-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #fff;
	border: 1.5px solid var(--al-purple, #5A3D8E);
	border-radius: 6px;
	padding: 4px 10px;
	cursor: pointer;
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	font-size: 13px;
	font-weight: 600;
	color: var(--al-purple, #5A3D8E);
	line-height: 1.4;
	transition: background 0.2s, color 0.2s;
}
.al-topbar__currency-btn:hover {
	background: var(--al-purple, #5A3D8E);
	color: #fff;
}

.al-topbar__currency-list {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	margin-top: 4px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(0,0,0,0.12);
	list-style: none;
	padding: 4px 0;
	min-width: 100px;
	z-index: 200;
}
.al-topbar__currency-list--open {
	display: block;
}
.al-topbar__currency-list li {
	padding: 8px 14px;
	cursor: pointer;
	font-size: 13px;
	font-family: var(--al-font-body, 'Manrope', sans-serif);
	color: var(--al-text-dark, #454545);
	white-space: nowrap;
	transition: background 0.15s;
}
.al-topbar__currency-list li:hover {
	background: #f5f5f5;
}
.al-topbar__currency-list li a {
	display: block;
	color: inherit;
	text-decoration: none;
}
.al-topbar__currency-list li[aria-selected="true"],
.al-topbar__currency-list li[aria-selected="true"] a {
	font-weight: 600;
	color: var(--al-purple, #5A3D8E);
}

/* ── Main Header Styling (cleaner, more air) ── */
.elementor-element-9ecfe13 {
	background: #fff !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
}

/* CSS sticky replaces theme's JS-based sticky (prevents oscillation).
   Theme's .header_sticky class is removed by header.js and replaced
   with .al-sticky to prevent theme JS from creating spacers/flickering. */
.elementor-element-9ecfe13.al-sticky {
	position: sticky !important;
	top: 0 !important;
	z-index: 999 !important;
}
/* Fallback: if theme JS runs before ours, override fixed→sticky */
.elementor-element-9ecfe13.header_sticky {
	position: sticky !important;
	top: 0 !important;
	z-index: 999 !important;
}
.elementor-element-9ecfe13.active_sticky {
	position: sticky !important;
}

/* Menu font → Manrope */
.elementor-element-9ecfe13 .main-navigation .menu > li > a {
	font-family: var(--al-font-body, 'Manrope', sans-serif) !important;
	font-size: var(--al-text-menu, 16px) !important;
	font-weight: 500 !important;
	color: var(--al-text-dark, #454545) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 6px 14px !important;
	white-space: nowrap;
}
.elementor-element-9ecfe13 .main-navigation .menu > li > a:hover,
.elementor-element-9ecfe13 .main-navigation .menu > li.current-menu-item > a {
	color: var(--al-purple, #5A3D8E) !important;
}

/* Sub-menu styling */
.elementor-element-9ecfe13 .main-navigation ul ul.sub-menu {
	background: #fff !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 20px rgba(0,0,0,0.1) !important;
	border: none !important;
	padding: 8px 0 !important;
}
.elementor-element-9ecfe13 .main-navigation ul ul.sub-menu li a {
	font-family: var(--al-font-body, 'Manrope', sans-serif) !important;
	font-size: 14px !important;
	color: var(--al-text-main, #5e5e5e) !important;
	padding: 8px 20px !important;
}
.elementor-element-9ecfe13 .main-navigation ul ul.sub-menu li a:hover {
	color: var(--al-purple, #5A3D8E) !important;
	background: #f8f8fa !important;
}

/* ── Mobile: Top Bar responsive ── */
@media (max-width: 1024px) {
	.al-topbar__socials {
		display: none;
	}
	.al-topbar__inner {
		padding: 4px 16px;
	}
}

@media (max-width: 767px) {
	.al-topbar {
		font-size: 13px;
	}
	.al-topbar__inner {
		padding: 4px 12px;
		gap: 8px;
	}
	.al-topbar__phone span {
		display: none;
	}
	.al-topbar__messengers {
		gap: 6px;
	}
	.al-topbar__messenger {
		width: 24px;
		height: 24px;
	}
	.al-topbar__messenger svg {
		width: 16px;
		height: 16px;
	}
	.al-topbar__socials {
		display: none;
	}
	.al-topbar__currency-btn {
		padding: 3px 6px;
		font-size: 12px;
	}
	/* Language switcher: compact on mobile */
	.al-lang__toggle {
		padding: 3px 7px;
		font-size: 12px;
	}
}

/* ── Mobile Elementor Header: style burger menu ── */
.elementor-element-6d10e6f {
	background: #fff !important;
}
.elementor-element-6d10e6f .main-navigation .menu > li > a {
	font-family: var(--al-font-body, 'Manrope', sans-serif) !important;
	color: var(--al-text-dark, #454545) !important;
	text-transform: none !important;
}
.elementor-element-6d10e6f .main-navigation .menu > li > a:hover {
	color: var(--al-purple, #5A3D8E) !important;
}
/* Canvas/burger menu overlay */
.ova_menu_canvas .main-navigation .menu > li > a {
	font-family: var(--al-font-body, 'Manrope', sans-serif) !important;
	font-size: 16px !important;
	color: var(--al-text-dark, #454545) !important;
}
.ova_menu_canvas .main-navigation .menu > li > a:hover {
	color: var(--al-purple, #5A3D8E) !important;
}