/* ==========================================================================
   Home page visual polish (Tamazirt Child)
   Scoped to body.home / body.front-page — no content/SEO changes.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hero (Revolution Slider captions)
   -------------------------------------------------------------------------- */

body.home .banner.banner-home .rev_slider_wrapper,
body.front-page .banner.banner-home .rev_slider_wrapper {
	min-height: min(72vh, 640px);
}

body.home .banner .slideContent1,
body.home .banner .slideContent2,
body.front-page .banner .slideContent1,
body.front-page .banner .slideContent2 {
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.45);
}

body.home .banner .btnSlider,
body.front-page .banner .btnSlider {
	display: inline-block;
	min-height: 44px;
	line-height: 1.2;
	padding: 0.75rem 1.4rem;
}

@media (max-width: 767px) {
	body.home .banner.banner-home .rev_slider_wrapper,
	body.front-page .banner.banner-home .rev_slider_wrapper {
		min-height: 420px;
	}
}

/* --------------------------------------------------------------------------
   Intro: text + image (override inline padding-bottom: 230px)
   -------------------------------------------------------------------------- */

body.home #main > .content-block.bg-gray:first-of-type {
	padding-top: var(--tmz-space-section) !important; /* beat inline padding-bottom:230px in index.php */
	padding-bottom: var(--tmz-space-section) !important;
	background-color: var(--tmz-bg-soft);
}

body.home #main > .content-block.bg-gray:first-of-type .content-heading {
	margin-bottom: 1.75rem;
}

body.home #main > .content-block.bg-gray:first-of-type .main-heading {
	margin-bottom: 0.4em;
}

body.home #main > .content-block.bg-gray:first-of-type .main-subtitle {
	display: block;
	max-width: 42em;
	margin: 0 auto 0.5rem;
	font-size: 18px;
	line-height: 1.45;
	color: var(--tmz-muted);
}

body.home #main > .content-block.bg-gray:first-of-type .description-text {
	margin-top: 0;
	font-size: 17px;
	line-height: 1.75;
}

body.home #main > .content-block.bg-gray:first-of-type .description-text h3 {
	margin-top: 1.4em;
	margin-bottom: 0.55em;
}

body.home #main > .content-block.bg-gray:first-of-type .description-text h3:first-child {
	margin-top: 0;
}

body.home #main > .content-block.bg-gray:first-of-type .row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

body.home #main > .content-block.bg-gray:first-of-type .imgEff_ {
	margin-top: 0 !important; /* beat inline margin-top:20px */
}

body.home #main > .content-block.bg-gray:first-of-type .pic-container {
	max-width: 100%;
}

body.home #main > .content-block.bg-gray:first-of-type .pic-container .borderIMG {
	border-radius: 2px;
}

@media (max-width: 767px) {
	body.home #main > .content-block.bg-gray:first-of-type .row {
		display: block;
	}

	body.home #main > .content-block.bg-gray:first-of-type .imgEff_ {
		margin-top: 1.5rem;
	}
}

/* --------------------------------------------------------------------------
   Advantages (Pourquoi partir avec nous)
   -------------------------------------------------------------------------- */

body.home #about-service-block.services-block {
	padding-top: 64px;
	padding-bottom: 64px;
	/* Soft darken of background image for white text readability */
	box-shadow: inset 0 0 0 100vmax rgba(40, 18, 6, 0.42);
}

body.home #about-service-block .content-heading {
	margin-bottom: 2.5rem;
}

body.home #about-service-block .main-heading {
	color: #fff;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.35);
}

body.home #about-service-block .main-subtitle {
	color: rgba(255, 255, 255, 0.92);
}

body.home #about-service-block .db-3-col {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left: -12px;
	margin-right: -12px;
}

body.home #about-service-block .ico-article.col-sm-20 {
	float: none;
	width: 20%;
	padding: 12px 16px 20px;
	box-sizing: border-box;
}

body.home #about-service-block .ico-article .ico-holder {
	margin-bottom: 14px;
}

body.home #about-service-block .ico-article .ico-holder img {
	max-height: 48px;
	width: auto;
}

body.home #about-service-block .ico-article .description,
body.home #about-service-block .ico-article .content-title {
	color: #fff;
	font-size: 16px;
	line-height: 1.45;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}

body.home #about-service-block .ico-article .content-title {
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.03em;
}

@media (max-width: 991px) {
	body.home #about-service-block .ico-article.col-sm-20 {
		width: 33.333%;
	}
}

@media (max-width: 767px) {
	body.home #about-service-block .ico-article.col-sm-20 {
		width: 50%;
	}
}

@media (max-width: 479px) {
	body.home #about-service-block .ico-article.col-sm-20 {
		width: 100%;
	}
}

/* --------------------------------------------------------------------------
   Circuit category cards
   -------------------------------------------------------------------------- */

body.home #home-circuit-cats.content-block {
	padding-top: var(--tmz-space-section);
	padding-bottom: var(--tmz-space-section);
	background: #fff;
}

body.home #home-circuit-cats .row {
	display: flex;
	flex-wrap: wrap;
}

body.home .home-circuit-cat {
	margin-bottom: 28px;
	display: flex;
}

body.home .home-circuit-cat__link {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background: #fff;
	border: 1px solid var(--tmz-line);
	border-radius: 12px; /* match coups de cœur cards */
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	box-shadow: var(--tmz-shadow-card);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.home .home-circuit-cat__link:hover,
body.home .home-circuit-cat__link:focus,
body.home .home-circuit-cat__link:focus-visible {
	border-color: #d9cfc0;
	box-shadow: 0 8px 24px rgba(53, 34, 20, 0.1);
	text-decoration: none;
	outline: none;
}

body.home .home-circuit-cat__link:focus-visible {
	outline: 2px solid var(--tmz-orange);
	outline-offset: 3px;
}

body.home .home-circuit-cat__media {
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: var(--tmz-bg-soft-2);
	/* Same top rounding as card shell */
	border-radius: 12px 12px 0 0;
}

body.home .home-circuit-cat__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	padding: 0;
	border: 0;
	border-radius: 0;
	max-height: none;
	transition: transform 0.35s ease;
}

body.home .home-circuit-cat__link:hover .home-circuit-cat__media img {
	transform: scale(1.03);
}

body.home .home-circuit-cat__overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 1.1rem 1.15rem;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.55));
}

body.home .home-circuit-cat__title {
	display: block;
	color: #fff;
	font-family: var(--tmz-font-heading);
	font-size: 19px;
	font-weight: 600;
	line-height: 1.3;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
}

body.home .home-circuit-cat__text {
	flex: 1 1 auto;
	margin: 0;
	padding: 1rem 1.15rem 0.35rem;
	font-size: 16px;
	line-height: 1.55;
	color: var(--tmz-muted);
}

body.home .home-circuit-cat__cta {
	display: inline-block;
	margin: 0.35rem 1.15rem 1.15rem;
	color: var(--tmz-orange);
	font-weight: 600;
	font-size: 15px;
}

@media (max-width: 767px) {
	body.home .home-circuit-cat.col-sm-6,
	body.home .home-circuit-cat {
		width: 100%;
		float: none;
	}

	body.home .home-circuit-cat__media {
		height: auto;
		aspect-ratio: 3 / 2;
	}
}

/* --------------------------------------------------------------------------
   Coups de cœur — static CSS Grid (no carousel)
   Kill parent hover-slide + caption-over-image; equal card widths 3 / 2 / 1
   -------------------------------------------------------------------------- */

body.home .guide-sub.guide-add.content-block {
	padding-top: var(--tmz-space-section);
	padding-bottom: var(--tmz-space-section);
	background: var(--tmz-bg-soft);
}

/*
 * Grid: override Bootstrap .row floats / col-md-4 vs col-md-6 asymmetry.
 * Default 3-col; desktop (≥992px) switches to 6 tracks so incomplete
 * last rows fill evenly (2 → ½+½, 1 → full width).
 */
body.home .guide-sub.guide-add .content-holder > .row:first-child {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-left: 0;
	margin-right: 0;
	align-items: stretch;
}

body.home .guide-sub.guide-add .content-holder > .row:first-child::before,
body.home .guide-sub.guide-add .content-holder > .row:first-child::after {
	display: none;
	content: none;
}

body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article,
body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-md-4,
body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-md-6,
body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-sm-6,
body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.img-article2,
body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.img-article0 {
	float: none;
	clear: none;
	width: auto;
	max-width: none;
	/* parent: .content-block.guide-sub .img-article { margin-top: 45px } */
	margin: 0;
	padding-left: 0;
	padding-right: 0;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

/* Desktop only: incomplete last-row fill */
@media (min-width: 992px) {
	body.home .guide-sub.guide-add .content-holder > .row:first-child {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article,
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-md-4,
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-md-6,
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.col-sm-6,
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.img-article2,
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article.img-article0 {
		grid-column: span 2; /* ⅓ */
	}

	/* 2 leftover cards → 50% / 50% */
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article:nth-last-child(2):nth-child(3n + 1),
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article:last-child:nth-child(3n + 2) {
		grid-column: span 3;
	}

	/* 1 leftover card → full width */
	body.home .guide-sub.guide-add .content-holder > .row:first-child > .img-article:last-child:nth-child(3n + 1) {
		grid-column: span 6;
	}
}

body.home .guide-sub.guide-add .img-article {
	margin-top: 0;
	margin-bottom: 0;
}

/* Card shell — kill parent fixed height: 300px + overflow clip */
body.home .guide-sub.guide-add .img-article .holder {
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	height: auto;
	min-height: 0;
	padding-bottom: 0;
	background: #fff;
	border: 1px solid var(--tmz-line);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: var(--tmz-shadow-card);
	transition: box-shadow 0.25s ease;
}

/* Kill parent dark hover overlay (::before) — was only for slide-over caption */
body.home .guide-sub.guide-add .img-article .holder::before {
	content: none;
	display: none;
	opacity: 0;
	pointer-events: none;
}

body.home .guide-sub.guide-add .img-article .holder:hover::before {
	opacity: 0;
}

body.home .guide-sub.guide-add .img-article .img-wrap {
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: var(--tmz-bg-soft-2);
	flex: 0 0 auto;
	/* Match holder top corners (holder border-radius: 12px + overflow:hidden) */
	border-radius: 12px 12px 0 0;
}

body.home .guide-sub.guide-add .img-article .img-wrap img,
body.home .guide-sub.guide-add .img-article .borderIMG2,
body.home .guide-sub.guide-add .img-article.img-article2 .img-wrap img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center;
	/* Kill parent .borderIMG2 { padding: 5px; border; height: 300px } — full-bleed */
	padding: 0;
	border: 0;
	border-radius: 0;
	max-height: none;
	box-sizing: border-box;
	transform: translateZ(0);
	transition: transform 0.35s ease;
}

/* Row-2 cards keep same image box as row 1 (do NOT height:100% the wrap) */
body.home .guide-sub.guide-add .img-article.img-article2 .img-wrap {
	flex: 0 0 auto;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	border-radius: 12px 12px 0 0;
}

/* Soft zoom only — no caption slide */
body.home .guide-sub.guide-add .img-article .holder:hover .img-wrap img,
body.home .guide-sub.guide-add .img-article .holder:hover .borderIMG2 {
	transform: translateZ(0) scale(1.03);
}

body.home .guide-sub.guide-add .img-article .holder:hover {
	box-shadow: 0 8px 24px rgba(53, 34, 20, 0.1);
}

body.home .guide-sub.guide-add .img-article .boxday {
	position: absolute;
	z-index: 2;
	top: 12px;
	left: 12px;
	/* parent: .boxday { width/height 60px; border-radius 50%; opacity 0.6 } */
	width: auto;
	height: auto;
	min-width: 52px;
	opacity: 1;
	filter: none;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid var(--tmz-line);
	border-radius: 8px;
	box-shadow: none;
	padding: 0.35rem 0.55rem;
	text-align: center;
	pointer-events: none;
}

body.home .guide-sub.guide-add .img-article .boxday .numdays {
	display: block;
	width: auto;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.1;
	padding-top: 0;
	color: var(--tmz-brown);
}

body.home .guide-sub.guide-add .img-article .boxday .txtday {
	display: block;
	width: auto;
	margin-top: 0; /* parent: margin-top -15px over number */
	font-size: 11px;
	font-weight: 500;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--tmz-muted);
}

/*
 * Caption under image — override parent:
 *   .img-article .caption { margin-top: -64px }
 *   .content-block.guide-sub .holder:hover .caption { margin-top: -300px; height: 300px }
 * Specificity wins; !important only on hover margin/height as belt-and-suspenders
 * against equal-weight parent hover rules in cascade order.
 */
body.home .guide-sub.guide-add .img-article .caption,
body.home .guide-sub.guide-add .img-article .holder:hover .caption,
body.home .guide-sub.guide-add .img-article .holder:focus-within .caption {
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	margin: 0 !important; /* parent: margin-top -64px / hover -300px */
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 1rem 1.15rem 1.15rem;
	height: auto !important; /* parent hover: height 300px */
	min-height: 0;
	color: var(--tmz-text);
	background: #fff;
	transition: none;
	-webkit-transition: none;
	-moz-transition: none;
}

body.home .guide-sub.guide-add .img-article .holder:hover .caption,
body.home .guide-sub.guide-add .img-article .holder:hover .caption h3,
body.home .guide-sub.guide-add .img-article .holder:hover .caption a,
body.home .guide-sub.guide-add .img-article .holder:hover .caption .designation {
	color: inherit;
}

body.home .guide-sub.guide-add .img-article .holder:hover .caption h3,
body.home .guide-sub.guide-add .img-article .holder:hover .caption a h3 {
	color: var(--tmz-text);
}

body.home .guide-sub.guide-add .img-article .caption > a {
	display: block;
	color: inherit;
	text-decoration: none;
	outline: none;
}

body.home .guide-sub.guide-add .img-article .caption > a:focus-visible {
	outline: 2px solid var(--tmz-orange);
	outline-offset: 3px;
	border-radius: 4px;
}

body.home .guide-sub.guide-add .img-article .caption h3,
body.home .guide-sub.guide-add .img-article .caption a h3 {
	margin: 0 0 0.4em;
	padding: 0;
	font-family: var(--tmz-font-heading);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--tmz-text);
	min-height: 0;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	max-height: calc(1.3em * 2);
}

body.home .guide-sub.guide-add .img-article .caption .designation,
body.home .guide-sub.guide-add .img-article .caption a .designation {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	overflow: hidden;
	max-height: calc(1.5em * 3);
	margin: 0 0 0.85rem;
	padding: 0;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: normal;
	color: var(--tmz-muted);
	min-height: 0;
}

body.home .guide-sub.guide-add .img-article .imgBtn3 {
	display: block;
	margin-top: auto;
	padding: 0;
}

body.home .guide-sub.guide-add .img-article .imgBtn3 a {
	display: inline-block;
	color: var(--tmz-orange);
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 0.02em;
	text-decoration: none;
	outline: none;
	transition: color 0.2s ease;
}

body.home .guide-sub.guide-add .img-article .holder:hover .imgBtn3 a,
body.home .guide-sub.guide-add .img-article .imgBtn3 a:hover {
	color: var(--tmz-brown);
	text-decoration: underline;
	text-underline-offset: 2px;
}

body.home .guide-sub.guide-add .img-article .imgBtn3 a:focus-visible {
	outline: 2px solid var(--tmz-orange);
	outline-offset: 3px;
	border-radius: 2px;
	color: var(--tmz-brown);
}

@media (max-width: 991px) {
	body.home .guide-sub.guide-add .content-holder > .row:first-child {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}
}

@media (max-width: 767px) {
	body.home .guide-sub.guide-add .content-holder > .row:first-child {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	body.home .guide-sub.guide-add .img-article .caption h3,
	body.home .guide-sub.guide-add .img-article .caption a h3 {
		font-size: 16px;
	}
}

/* --------------------------------------------------------------------------
   Video block
   -------------------------------------------------------------------------- */

body.home .content-block.content-spacing {
	padding-top: var(--tmz-space-section) !important;
	padding-bottom: var(--tmz-space-section) !important;
	background-color: var(--tmz-bg-soft-2) !important; /* beat inline #F2EDE8 — same family, unified token */
}

body.home .content-block.content-spacing .text-block .centered {
	padding-right: 1.25rem;
}

body.home .content-block.content-spacing .intro-heading {
	margin-bottom: 0.75rem;
}

body.home .content-block.content-spacing p.intro {
	font-size: 17px;
	line-height: 1.65;
	color: var(--tmz-muted);
}

body.home .content-block.content-spacing .img-block iframe {
	width: 100%;
	max-width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	min-height: 240px;
	border: 0;
	display: block;
}

@media (max-width: 767px) {
	body.home .content-block.content-spacing .text-block .centered {
		padding-right: 0;
		margin-bottom: 1.5rem;
	}
}

/* --------------------------------------------------------------------------
   Blog / «Nos actualités»
   Same content as /blog cards: img + date/cats + title + excerpt + CTA
   Owl #tour-slide reinited to 3/2/1 in home-blog.js
   -------------------------------------------------------------------------- */

body.home .content-block.article-boxed {
	padding-top: var(--tmz-space-section);
	padding-bottom: var(--tmz-space-section);
	background: #fff;
}

/* Space after «Nos actualités» title+subtitle — same as other home
   content-heading blocks with a .main-subtitle (Voyage / Incontournables).
   Beats parent .content-block.article-boxed .content-heading { margin-bottom:0 }. */
body.home .content-block.article-boxed .content-heading {
	margin-bottom: 1.75rem;
}

body.home .article-boxed #tour-slide {
	position: relative;
}

body.home .article-boxed #tour-slide .owl-item {
	float: left;
	display: block;
	padding: 0 12px; /* real gap between cards (Owl width:100% + margin collapses) */
	box-sizing: border-box;
}

body.home .article-boxed #tour-slide .article,
body.home .article-boxed #tour-slide .article.blog-article {
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	width: 100%;
	height: auto !important; /* kill JS equalize + parent stretch */
	/* Parent main.css sets .article.blog-article { min-height: 562px } — kills home cards */
	min-height: 0 !important;
	margin: 0 0 16px;
	padding: 0;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--tmz-line);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: var(--tmz-shadow-card);
}

body.home .article-boxed #tour-slide .article .img-wrap {
	position: relative;
	width: 100%;
	margin: 0;
	aspect-ratio: 3 / 2;
	height: auto;
	overflow: hidden;
	background: var(--tmz-bg-soft-2);
}

body.home .article-boxed #tour-slide .article .img-wrap > a {
	display: block;
	width: 100%;
	height: 100%;
}

body.home .article-boxed #tour-slide .article .img-wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: transform 0.35s ease;
}

body.home .article-boxed #tour-slide .article:hover .img-wrap img {
	opacity: 1;
	transform: translateZ(0) scale(1.03);
}

body.home .article-boxed #tour-slide .article .description {
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	/* Parent: .article.blog-article .description { min-height: 248px } */
	min-height: 0 !important;
	padding: 1rem 1.15rem 1.15rem;
	border: 0;
	background: transparent;
	text-align: left;
}

body.home .article-boxed #tour-slide .article footer.meta,
body.home .article-boxed #tour-slide .article footer {
	margin: 0 0 0.55rem;
	padding: 0;
	border: 0;
}

body.home .article-boxed #tour-slide .article .footer-sub {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.85rem;
	margin: 0;
	/* Parent: .article.blog-article .footer-sub { min-height: 50px } */
	min-height: 0 !important;
	font-size: 13px;
	line-height: 1.35;
	color: var(--tmz-muted);
}

body.home .article-boxed #tour-slide .article .footer-sub > * {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0;
	border: 0;
}

body.home .article-boxed #tour-slide .article .footer-sub .comment {
	font-size: 13px;
	color: var(--tmz-muted);
}

body.home .article-boxed #tour-slide .article .footer-sub .fa {
	color: var(--tmz-orange);
	font-size: 12px;
}

body.home .article-boxed #tour-slide .article .heading {
	margin: 0 0 0.45rem;
	padding: 0;
	/* Parent: .article .heading { min-height: 40px } — ok for 1–2 lines */
	min-height: 0 !important;
}

body.home .article-boxed #tour-slide .article .heading h3 {
	margin: 0;
	padding: 0;
	font-family: var(--tmz-font-heading);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--tmz-text);
	text-align: left;
}

body.home .article-boxed #tour-slide .article .heading h3 a {
	color: inherit;
	text-decoration: none;
	display: -webkit-box !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	max-height: calc(1.35em * 2);
}

body.home .article-boxed #tour-slide .article:hover .heading h3 a {
	color: var(--tmz-brown);
}

body.home .article-boxed #tour-slide .article .txtDescriptionBlog {
	/* Don't flex-grow — empty gap lived between excerpt and CTA */
	flex: 0 0 auto;
	margin: 0 0 0.85rem;
	padding: 0;
	font-size: 15px;
	line-height: 1.5;
	color: var(--tmz-muted);
	text-align: left;
	/* Parent: .article .txtDescriptionBlog { min-height: 80px } */
	min-height: 0 !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	overflow: hidden;
	max-height: calc(1.5em * 3);
}

body.home .article-boxed #tour-slide .article .link-view {
	margin-top: 0;
	padding: 0;
}

body.home .article-boxed #tour-slide .article .link-view a {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--tmz-orange);
	text-decoration: none;
}

body.home .article-boxed #tour-slide .article .link-view a:hover,
body.home .article-boxed #tour-slide .article .link-view a:focus,
body.home .article-boxed #tour-slide .article:hover .link-view a {
	color: var(--tmz-brown);
	text-decoration: underline;
	text-underline-offset: 2px;
}

@media (max-width: 767px) {
	body.home .article-boxed #tour-slide .owl-item {
		padding: 0 8px;
	}

	body.home .article-boxed #tour-slide .article,
	body.home .article-boxed #tour-slide .article.blog-article {
		margin: 0 0 12px;
	}

	body.home .article-boxed #tour-slide .article .heading h3 {
		font-size: 16px;
	}
}

/* --------------------------------------------------------------------------
   Footer — leave typography / spacing to parent theme (+ production Additional
   CSS restored in child style.css for #footer p/li/a only).
   Do not override parent #footer > .container { padding-top: 60px }.
   -------------------------------------------------------------------------- */

@media (max-width: 767px) {
	body #footer .col-sm-3,
	body #footer .col-md-3 {
		margin-bottom: 1.75rem;
	}
}
