/* ===== Header hotfix: only burger width ===== */
@media (max-width: 767px) {
	.menu-toggle {
		width: 1.25rem !important;
		min-width: 1.25rem !important;
		padding: 0 !important;
		margin-left: 10px !important;
		overflow: hidden !important;
		white-space: nowrap !important;
		text-indent: -9999px !important;
	}

	.menu-toggle:before {
		width: 1.25rem !important;
	}
}

/* ===== Header hotfix: language switcher alignment ===== */

/* Desktop */
.navbar > nav.main-navigation + ul {
	position: relative !important;
	top: -3px !important;
}

/* Mobile */
@media (max-width: 767px) {
	.navbar > nav.main-navigation + ul {
		position: relative !important;
		top: -1px !important;
	}
}

/* ===== Polylang language switcher: exact fix ===== */

/* список языков — это ul, который идет сразу после nav внутри .navbar */
.navbar > nav.main-navigation + ul {
	list-style: none !important;
	margin: 0 0 0 20px !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 8px !important;
}

/* элементы списка языков */
.navbar > nav.main-navigation + ul > li.lang-item {
	list-style: none !important;
	display: inline-flex !important;
	align-items: center !important;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* убрать маркеры */
.navbar > nav.main-navigation + ul > li.lang-item::marker {
	content: "" !important;
}

/* ссылки */
.navbar > nav.main-navigation + ul > li.lang-item > a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	border: 0 !important;
	text-decoration: none !important;
	line-height: 1 !important;
}

/* флаги */
.navbar > nav.main-navigation + ul > li.lang-item img {
	display: block !important;
	width: 16px !important;
	height: 11px !important;
	max-width: none !important;
}

/* чтобы блок языков не переносился странно */
.navbar > nav.main-navigation + ul {
	flex-shrink: 0 !important;
}

/* ===== Mobile language flags ===== */
@media (max-width: 767px) {

	.navbar > nav.main-navigation + ul {
		margin: 0 14px 0 auto !important; /* отступ справа от меню */
		gap: 10px !important;
	}

	.navbar > nav.main-navigation + ul > li.lang-item img {
		width: 24px !important;   /* было 16px */
		height: auto !important;
	}

	.navbar > nav.main-navigation + ul > li.lang-item > a {
		padding: 2px !important;  /* чуть удобнее для нажатия */
	}

	.social-icons {
		margin-left: 6px !important;
		flex-shrink: 0 !important;
	}
}

/* ===== HERO ===== */

.tt-hero {
	padding: 26px 14px 8px;
}

.tt-hero__container {
	max-width: 980px;
	margin: 0 auto;
	padding: 42px 34px;
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
	border: 1px solid #e8eef5;
	border-radius: 20px;
	box-shadow: 0 10px 30px rgba(17, 34, 68, 0.05);
	text-align: center;
	position: relative;
	overflow: hidden;
}

.tt-hero__badge {
	display: inline-block;
	margin-bottom: 16px;
	padding: 8px 16px;
	background: #eef4ff;
	color: #34588d;
	font-size: 13px;
	font-weight: 600;
	border-radius: 999px;
	font-family: -apple-system, BlinkMacSystemFont, "avenir next", avenir, "helvetica neue", helvetica, ubuntu, roboto, noto, "segoe ui", arial, sans-serif;
}

.tt-hero h1 {
	margin: 0 0 18px;
	font-size: 42px;
	line-height: 1.14;
	font-weight: 700;
	letter-spacing: -0.3px;
	color: #243447;
}

.tt-hero__text {
	max-width: 760px;
	margin: 0 auto 24px;
	font-size: 18px;
	line-height: 1.75;
	color: #5f6f80;
}

.tt-hero__buttons {
	display: flex;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 22px;
}

.tt-btn {
	display: inline-block;
	padding: 13px 24px;
	border-radius: 10px;
	text-decoration: none;
	font-size: 15px;
	font-weight: 600;
	font-family: -apple-system, BlinkMacSystemFont, "avenir next", avenir, "helvetica neue", helvetica, ubuntu, roboto, noto, "segoe ui", arial, sans-serif;
	transition: all .25s ease;
}

.tt-btn--primary {
	background: #3d6fd1;
	color: #fff;
	box-shadow: 0 6px 16px rgba(61, 111, 209, 0.16);
}

.tt-btn--primary:hover {
	background: #315fb9;
	color: #fff;
	text-decoration: none;
	transform: translateY(-1px);
}

.tt-btn--whatsapp {
	background: #41c96d;
	color: #fff;
	box-shadow: 0 6px 16px rgba(65, 201, 109, 0.16);
}

.tt-btn--whatsapp:hover {
	background: #33b75d;
	color: #fff;
	text-decoration: none;
	transform: translateY(-1px);
}

.tt-hero__features {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
}

.tt-hero__features span {
	display: inline-block;
	padding: 9px 14px;
	background: #fff;
	border: 1px solid #e5ebf2;
	border-radius: 999px;
	color: #526273;
	font-size: 13px;
	font-weight: 500;
	font-family: -apple-system, BlinkMacSystemFont, "avenir next", avenir, "helvetica neue", helvetica, ubuntu, roboto, noto, "segoe ui", arial, sans-serif;
	box-shadow: 0 4px 12px rgba(20, 40, 80, 0.04);
}

@media (max-width: 991px) {
	.tt-hero__container {
		padding: 34px 24px;
	}

	.tt-hero h1 {
		font-size: 36px;
	}

	.tt-hero__text {
		font-size: 17px;
	}
}

@media (max-width: 767px) {
	.tt-hero {
		padding: 20px 10px 6px;
	}

	.tt-hero__container {
		padding: 26px 18px;
		border-radius: 16px;
	}

	.tt-hero h1 {
		font-size: 29px;
		line-height: 1.18;
	}

	.tt-hero__text {
		font-size: 16px;
		line-height: 1.65;
	}

	.tt-btn {
		width: 100%;
		text-align: center;
	}

	.tt-hero__buttons {
		flex-direction: column;
	}

	.tt-hero__features span {
		font-size: 12px;
		padding: 8px 12px;
	}
}

/* убрать лишние отступы после шапки */

.site-header{
	margin-bottom:0 !important;
}

.site-main{
	margin-top:0 !important;
	padding-top:0 !important;
}

.content-area{
	margin-top:0 !important;
	padding-top:0 !important;
}

main{
	margin-top:0 !important;
	padding-top:0 !important;
}

.page .site-content,
.single .site-content,
.page .content-area,
.single .content-area,
.page .site-main,
.single .site-main,
.page .hentry,
.single .hentry {
	margin-top: 0;
	padding-top: 0;
}

/* ===== ADAPTIVE: shared hero (tourtrans-global.css) ===== */

@media (max-width: 991px) {
	/* hero */
	.tt-hero h1 {
		font-size: 40px;
	}

	.tt-hero__text {
		font-size: 17px;
	}

	.tt-hero__container {
		padding: 40px 24px;
	}
}

@media (max-width: 767px) {
	/* hero */
	.tt-hero {
		padding: 22px 10px 6px;
	}

	.tt-hero__container {
		padding: 28px 18px;
		border-radius: 18px;
	}

	.tt-hero h1 {
		font-size: 30px;
	}

	.tt-hero__text {
		font-size: 16px;
	}

	/* shared button */
	.tt-btn {
		width: 100%;
		text-align: center;
	}

	/* hero buttons */
	.tt-hero__buttons {
		flex-direction: column;
	}

	/* hero features */
	.tt-hero__features span {
		font-size: 12px;
		padding: 8px 12px;
	}
}

