/* Go2trip Child — стили новых шаблонов.
   Базируемся на типографике SmartMag, добавляем только лейауты
   страниц стран, главной и шапки/подвала дочерней темы. */

.g2t-container {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 16px;
}

/* Баннер */
.g2t-hero img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 4px;
}

/* Заголовок страницы */
.g2t-title {
	margin: 24px 0 12px;
}

/* Вводный текст */
.g2t-intro {
	margin-bottom: 20px;
}

/* Краткие факты */
.g2t-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	padding: 12px 16px;
	margin: 0 0 20px;
	background: #f5f7fa;
	border-radius: 4px;
	list-style: none;
}
.g2t-facts li span {
	font-weight: 600;
}

/* Разделы стран и главной */
.g2t-region,
.g2t-home-section {
	margin-bottom: 28px;
}
.g2t-region h2,
.g2t-home-section h2 {
	margin-bottom: 10px;
}

/* Карта */
.g2t-map {
	margin: 20px 0;
}

/* Курорты */
.g2t-resorts ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.g2t-resorts li {
	margin-bottom: 10px;
}
.g2t-resorts li p {
	margin: 2px 0 0;
	color: #555;
}

/* Топ-10 стран */
.g2t-top-countries ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 10px;
}
.g2t-top-countries li {
	background: #f5f7fa;
	border-radius: 4px;
	padding: 10px;
}
.g2t-top-countries img {
	display: block;
	margin-bottom: 6px;
}

/* Шапка */
.g2t-header {
	border-bottom: 1px solid #e5e9ef;
	background: #fff;
}
.g2t-header-inner {
	display: flex;
	align-items: center;
	gap: 20px;
	min-height: 64px;
	flex-wrap: wrap;
}
.g2t-brand {
	display: flex;
	align-items: center;
	gap: 10px;
}
.g2t-logo {
	font-size: 22px;
	font-weight: 700;
	text-decoration: none;
}
.g2t-tagline {
	margin: 0;
	font-size: 12px;
	color: #777;
}
.g2t-nav {
	margin-left: auto;
}
.g2t-menu {
	display: flex;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.g2t-menu a {
	text-decoration: none;
	padding: 8px 0;
}
.g2t-menu-toggle {
	display: none;
	border: 0;
	background: transparent;
	cursor: pointer;
	padding: 8px;
}

/* Подвал */
.g2t-footer {
	border-top: 1px solid #e5e9ef;
	margin-top: 40px;
	padding: 24px 0;
}
.g2t-footer-inner {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	justify-content: space-between;
}
.g2t-footer-menu {
	display: flex;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.g2t-copyright {
	margin: 0;
	color: #777;
	font-size: 13px;
}

/* Мобильное меню */
@media (max-width: 782px) {
	.g2t-menu-toggle {
		display: block;
		margin-left: auto;
	}
	.g2t-nav {
		display: none;
		width: 100%;
		margin-left: 0;
	}
	.g2t-nav.is-open {
		display: block;
	}
	.g2t-menu {
		flex-direction: column;
		gap: 0;
	}
	.g2t-menu a {
		display: block;
		padding: 10px 0;
		border-top: 1px solid #eef1f5;
	}
}

/* ===== Ñòðàíèöà ñòðàíû (ïåðåíîñ ñ WPBakery) ===== */
.g2t-country-body h2,
.g2t-country-body h3 {
	margin: 28px 0 12px;
}
.g2t-country-body p {
	margin: 0 0 16px;
}
.g2t-country-body img {
	max-width: 100%;
	height: auto;
}
.g2t-callout {
	background: #f2f7fd;
	border-left: 4px solid #4a90d9;
	padding: 14px 18px;
	margin: 18px 0;
	border-radius: 3px;
}
.g2t-callout p:last-child {
	margin-bottom: 0;
}

/* Ñåòêà çàïèñåé âìåñòî vc_masonry_grid */
.g2t-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 16px;
	margin: 20px 0 28px;
}
.g2t-grid-item {
	display: block;
	text-decoration: none;
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .08);
	transition: box-shadow .2s ease, transform .2s ease;
}
.g2t-grid-item:hover {
	box-shadow: 0 4px 14px rgba(0, 0, 0, .14);
	transform: translateY(-2px);
}
.g2t-grid-item img {
	display: block;
	width: 100%;
	height: 130px;
	object-fit: cover;
}
.g2t-grid-title {
	display: block;
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1.35;
	color: #222;
}
.g2t-country-map {
	margin: 26px 0;
}

/* ===== Ãëàâíàÿ ñòðàíèöà ===== */
.g2t-home-body > p:first-of-type {
	font-size: 17px;
	line-height: 1.65;
}
.g2t-home-hero {
	display: block;
	margin: 18px 0 22px;
}
.g2t-home-hero img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 4px;
}
/* Ñåçîíû */
.g2t-season-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 0 0 24px;
}
.g2t-season {
	padding: 14px 16px;
	border-radius: 4px;
	background: #f5f7fa;
	border-left: 4px solid #4a90d9;
}
.g2t-season h3 {
	margin: 0 0 8px;
	font-size: 16px;
}
.g2t-season p {
	margin: 0;
}
.g2t-season a {
	display: block;
	margin: 4px 0;
	font-size: 14px;
}
.g2t-season--orange { background: #fff4e6; border-left-color: #e8890c; }
.g2t-season--sandy { background: #fbf3ea; border-left-color: #c08457; }
.g2t-season--blue { background: #eaf4fd; border-left-color: #3aa0e0; }
.g2t-season--vista { background: #eef7f0; border-left-color: #57a773; }

/* Äâóõêîëîíî÷íàÿ ðàñêëàäêà: êîíòåíò + «Òîï 10» */
.g2t-home-split {
	display: flex;
	gap: 26px;
	align-items: flex-start;
	margin-bottom: 26px;
}
.g2t-home-split .g2t-home-main {
	flex: 1 1 66%;
	min-width: 0;
}
.g2t-home-split .g2t-home-aside {
	flex: 0 0 30%;
	max-width: 30%;
}
.g2t-home-aside h4 {
	margin: 0 0 10px;
}
.g2t-side-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.g2t-side-menu li {
	border-bottom: 1px solid #e8edf3;
}
.g2t-side-menu a {
	display: block;
	padding: 8px 0;
	text-decoration: none;
}
.g2t-side-menu a:hover {
	color: #4a90d9;
}
@media (max-width: 860px) {
	.g2t-season-grid { grid-template-columns: 1fr; }
	.g2t-home-split { flex-direction: column; }
	.g2t-home-split .g2t-home-aside { flex: 1 1 auto; max-width: 100%; }
}
