/* Home / header polish. Loads after the theme, before Customizer "Additional CSS",
   so selectors that fight wp-custom-css carry an extra html/body. */

/* WP Travel Engine paints buttons, tabs, filters and the calendar with --primary-color
   (#147DFE blue from its settings). Brand orange instead. */
:root {
	--primary-color: #ff6b35 !important;
	--primary-color-rgb: 255, 107, 53 !important;
}

/* Home H1 (Brote_Quetrihue_Seo): for search engines and screen readers, the hero shows the visual title. */
.brote-sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Address bar above the header: the address is already in the footer. */
.qodef-top-bar { display: none !important; }

/* wp-custom-css pushes the home header down 2em to clear that bar. */
html body.home header.qodef-page-header { top: 0 !important; }

/* Hero (Revolution Slider): darken the left side so the white titles read on light photos.
   Only the first row: the payment and partner logo strips are Revolution Sliders too. */
.home .qodef-page-content-holder > .vc_row:first-child rs-sbg-wrap::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, .25) 45%, rgba(0, 0, 0, 0) 75%);
	pointer-events: none;
}

/* One button style on the home: same orange and radius as the "Ver todas..." carousel buttons. */
.home .qodef-page-content-holder a.qodef-btn.qodef-btn-solid,
.home .qodef-page-content-holder .wpcf7-submit {
	background-color: #ff6b35 !important;
	border-color: #ff6b35 !important;
	color: #fff !important;
	border-radius: 6px !important;
	font-weight: 600;
	transition: background-color .2s ease;
}
.home .qodef-page-content-holder a.qodef-btn.qodef-btn-solid:hover,
.home .qodef-page-content-holder .wpcf7-submit:hover {
	background-color: #e85a26 !important;
	border-color: #e85a26 !important;
}
/* Button labels are typed in lowercase in WPBakery ("escribinos y te indicamos..."). */
.home .qodef-page-content-holder a.qodef-btn.qodef-btn-solid .qodef-btn-text::first-letter { text-transform: uppercase; }
.home .qodef-page-content-holder .wpcf7-submit { text-transform: none !important; }

/* "Descubrí la Diferencia" cards: text was thin light gray touching the card edges. */
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-elements-holder.qodef-six-columns { align-items: stretch !important; }
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns > .qodef-eh-item {
	padding: 0 6px !important;
	height: auto !important;
	align-self: stretch;
}
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns .qodef-eh-item-inner {
	height: 100%;
	box-sizing: border-box;
	background: rgba(255, 255, 255, .95) !important;
	padding: 26px 20px 24px !important;
	border-radius: 16px !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
	transition: transform .25s ease, box-shadow .25s ease;
}
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns .qodef-eh-item-inner:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 36px rgba(0, 0, 0, .24);
}
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns .qodef-iwt-title { font-weight: 600; margin-bottom: 8px; }
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns .qodef-iwt-text,
html body .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns .qodef-iwt-text p {
	color: #555 !important;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.6;
}

/* Trip carousels (excursiones + traslados): one card style, hover lift, image zoom. */
.home .wte-carousel-card {
	border-radius: 14px !important;
	box-shadow: 0 4px 18px rgba(0, 0, 0, .08) !important;
	transition: transform .25s ease, box-shadow .25s ease;
}
.home .wte-carousel-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 34px rgba(0, 0, 0, .16) !important;
}
.home .wte-carousel-card-image img { transition: transform .5s ease; }
.home .wte-carousel-card:hover .wte-carousel-card-image img { transform: scale(1.05); }
.home .wte-carousel-card-title { font-size: 17px !important; line-height: 1.35 !important; }
/* Tighter vertical rhythm: gap + margins + min-heights added up to big empty bands. */
.home .wte-carousel-card-content { gap: 8px !important; }
.home .wte-carousel-card .bqc-price { margin-top: 2px !important; margin-bottom: 0 !important; min-height: 0 !important; }
.home .wte-carousel-meta-icons { margin-top: 4px !important; }
/* Hover strip: salmon with brown text was low contrast; brand orange with white text. */
.home .wte-carousel-card-image::after {
	background: #ff6b35 !important;
	color: #fff !important;
	letter-spacing: .06em;
}
/* Traslados came centred and without the icon row, so they looked like another component. */
.home .is-traslado .wte-carousel-card-content { text-align: left !important; }
.home .is-traslado .wte-carousel-card-title,
.home .is-traslado .bqc-price {
	text-align: left !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
}
/* Room for 3 title lines so prices line up; wide screens fit every route in 2. */
.home .is-traslado .wte-carousel-card-title { min-height: 4.05em !important; }
@media (min-width: 1600px) {
	.home .is-traslado .wte-carousel-card-title { min-height: 2.7em !important; }
}
html[lang^="es"] .home .is-traslado .wte-carousel-card-content::after {
	content: "Reservar traslado \2192";
	display: block;
	margin-top: 4px;
	padding-top: 12px;
	border-top: 1px solid #eee;
	color: #ff6b35;
	font-size: 14px;
	font-weight: 600;
}

/* ¿Quiénes Somos?: full-height row left a big empty band; rounded photo, orange accent, readable text. */
html body.home #Nosotros { min-height: 0 !important; padding: 80px 0 !important; }
html body.home #Nosotros .vc_empty_space { display: none; }
html body.home #Nosotros .qodef-single-image-holder {
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
}
html body.home #Nosotros .qodef-st-title { position: relative; padding-bottom: 14px; margin-bottom: 18px; }
html body.home #Nosotros .qodef-st-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 3px;
	border-radius: 2px;
	background: #ff6b35;
}
html body.home #Nosotros .wpb_text_column h5 { color: #555; font-size: 16px; font-weight: 400; line-height: 1.75; }
html body.home #Nosotros .wpb_text_column h5 strong { color: #1f1f1f; font-weight: 600; }

/* Contacto: warm full-width band, orange icons, form in a white card with boxed fields. */
html body.home #Contacto {
	min-height: 0 !important;
	padding: 80px 0 !important;
	background: #f7f5f2;
	box-shadow: 0 0 0 100vmax #f7f5f2;
	clip-path: inset(0 -100vmax);
}
html body.home #Contacto h4 { font-size: 18px; font-weight: 600; margin-bottom: 14px; }
html body.home #Contacto .qodef-il-icon-holder span,
html body.home #Contacto .qodef-iwt-icon span { color: #ff6b35 !important; }
html body.home #Contacto .qodef-il-text,
html body.home #Contacto .qodef-iwt-title,
html body.home #Contacto .qodef-iwt-title a { color: #444 !important; font-weight: 400; }
html body.home #Contacto .qodef-iwt-title a:hover { color: #ff6b35 !important; }
html body.home #Contacto .vc_col-sm-6 > .vc_column-inner {
	padding: 36px 36px 20px !important;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 34px rgba(0, 0, 0, .08);
}
html body.home #Contacto form label { color: #555; font-size: 14px; font-weight: 600; }
html body.home #Contacto form input[type="text"],
html body.home #Contacto form input[type="email"],
html body.home #Contacto form textarea {
	margin-top: 6px;
	padding: 12px 16px !important;
	border: 1px solid #ddd !important;
	border-radius: 10px !important;
	background: #fafafa !important;
	color: #222 !important;
	transition: border-color .2s ease, background .2s ease;
}
html body.home #Contacto form input:focus,
html body.home #Contacto form textarea:focus { border-color: #ff6b35 !important; background: #fff !important; outline: none; }
html body.home #Contacto form textarea { height: 150px !important; }

/* Footer top: smaller titles with an orange accent, tighter links, brand-orange icons. */
html body .qodef-page-footer .qodef-footer-top-inner { padding: 70px 0 40px !important; }
html body .qodef-page-footer .qodef-footer-top-holder .qodef-widget-title-holder { margin-bottom: 18px; }
html body .qodef-page-footer .qodef-footer-top-holder .qodef-widget-title {
	position: relative;
	margin: 0;
	padding-bottom: 12px;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: .02em;
}
html body .qodef-page-footer .qodef-footer-top-holder .qodef-widget-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 32px;
	height: 2px;
	background: #ff6b35;
}
html body .qodef-page-footer .qodef-footer-top-holder .widget_nav_menu li { padding: 6px 0 !important; }
html body .qodef-page-footer .qodef-footer-top-holder .widget_nav_menu li a { font-size: 15px; color: #d0d0d0; transition: color .2s ease; }
html body .qodef-page-footer .qodef-footer-top-holder .widget_nav_menu li a:hover { color: #ff6b35; }
html body .qodef-page-footer .qodef-footer-top-holder p,
html body .qodef-page-footer .qodef-footer-top-holder p strong { color: #b8b8b8; font-weight: 400; }
/* Icon colour is inline (#ffe500) from the widget settings. */
html body .qodef-page-footer .qodef-icon-widget-holder { color: #ff6b35 !important; }
html body .qodef-page-footer .qodef-icon-widget-holder .qodef-icon-text { color: #d0d0d0; transition: color .2s ease; }
html body .qodef-page-footer .qodef-icon-widget-holder:hover .qodef-icon-text { color: #fff; }
/* Plain Facebook / Instagram glyphs instead of the filled squares (ElegantIcons). */
html body .qodef-page-footer .social_facebook_square:before { content: "\e093"; }
html body .qodef-page-footer .social_instagram_square:before { content: "\e09a"; }

/* Gallery: 4 x 3 larger photos (Brote_Quetrihue_Home_Polish::bigger_home_gallery), small gaps, hover zoom. */
.home #Galeria .qodef-ig-four-columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.home #Galeria .qodef-ig-four-columns .qodef-ig-image { width: auto !important; float: none !important; overflow: hidden; }
.home #Galeria .qodef-ig-image img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; transition: transform .5s ease; }
.home #Galeria .qodef-ig-image:hover img { transform: scale(1.04); }

/* Footer bottom (copyright / address): light gray on white was hard to read. */
.qodef-page-footer .qodef-footer-bottom-holder,
.qodef-page-footer .qodef-footer-bottom-holder p,
.qodef-page-footer .qodef-footer-bottom-holder a { color: #5f5f5f; }

@media (max-width: 680px) {
	/* "Descubrí la Diferencia": 6 stacked cards were ~2400px tall; make them a swipe row. */
	html body.home .vc_row.diferencia:not(.trasladosprueba) {
		min-height: 0 !important;
		padding-top: 60px !important;
		padding-bottom: 40px !important;
	}
	html body.home .vc_row.diferencia:not(.trasladosprueba) .qodef-elements-holder.qodef-six-columns {
		display: flex !important;
		gap: 12px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		padding: 0 0 12px;
		scrollbar-width: none;
	}
	html body.home .vc_row.diferencia:not(.trasladosprueba) .qodef-elements-holder.qodef-six-columns::-webkit-scrollbar { display: none; }
	html body.home .vc_row.diferencia:not(.trasladosprueba) .qodef-elements-holder.qodef-six-columns > .qodef-eh-item {
		flex: 0 0 78% !important;
		width: auto !important;
		max-width: none !important;
		padding: 0 !important;
		height: auto !important;
		scroll-snap-align: start;
	}
	html body.home .vc_row.diferencia:not(.trasladosprueba) .qodef-eh-item-inner { height: 100%; }
	/* Two 70px spacers under the cards. */
	html body.home .vc_row.diferencia:not(.trasladosprueba) .qodef-six-columns ~ .qodef-elements-holder .vc_empty_space { display: none; }

	/* Narrow traslado cards: smaller title, short CTA. */
	.home .is-traslado .wte-carousel-card-title { font-size: 15px !important; min-height: 4.05em !important; }
	html[lang^="es"] .home .is-traslado .wte-carousel-card-content::after { content: "Reservar \2192"; }

	html body.home #Nosotros,
	html body.home #Contacto { padding: 50px 0 !important; }
	html body.home #Contacto .vc_col-sm-6 > .vc_column-inner { padding: 24px 20px 10px !important; }

	/* Gallery: 12 full-width photos (~2250px) -> two columns. */
	html body.home #Galeria .qodef-ig-four-columns { grid-template-columns: repeat(2, 1fr); gap: 4px; }

	/* Footer: about + contact full width, links and socials side by side, left aligned. */
	html body .qodef-page-footer .qodef-footer-top-holder .qodef-grid-row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 20px;
	}
	html body .qodef-page-footer .qodef-footer-top-holder .qodef-grid-row > .qodef-column-content {
		width: auto !important;
		float: none !important;
		text-align: left !important;
	}
	html body .qodef-page-footer .qodef-footer-top-holder .qodef-grid-row > .qodef-column-content:first-child,
	html body .qodef-page-footer .qodef-footer-top-holder .qodef-grid-row > .qodef-column-content:last-child { grid-column: 1 / -1; }
	html body .qodef-page-footer .qodef-footer-top-holder .widget { text-align: left !important; }
	html body .qodef-page-footer .qodef-footer-top-holder .qodef-widget-title { font-size: 18px; }
	/* Icon widgets carry an inline margin of -40px 20px 0 0; in a narrow column the icon ends up above its text. */
	html body .qodef-page-footer .qodef-icon-widget-holder {
		display: flex !important;
		align-items: center;
		margin: 0 0 12px !important;
	}
}

/* The sticky mobile header comes back fixed on scroll-up, but wp-custom-css keeps it transparent on the home:
   white logo over the content. */
html body header.qodef-mobile-header.mobile-header-appear > .qodef-mobile-header-inner {
	background: rgba(24, 24, 24, .92) !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .25);
}
