/**
 * Homepage hero overlay layout
 * Active only with: body.page-home-hero-overlay
 *
 * REVERT rápido:
 *   bash /home/drivioo/_backups/homepage-hero-20260922-100040/REVERT.sh
 *
 * Ou manualmente:
 * 1) cp backup/index.php → public_html/index.php
 * 2) rm public_html/_css/homepage_hero_overlay.css
 * 3) rm public_html/_css/.homepage_hero_overlay.backup_path (opcional)
 */

/* ========== Desktop + base ========== */
body.page-home-hero-overlay .box_home_top.box_home_top--overlay
{
	position: relative !important;
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	width: 100% !important;
	min-height: 100vh !important;
	height: auto !important;
	margin-top: 0 !important; /* header é fixed → imagem começa no topo, por baixo do header */
	padding: 0 !important;
	text-align: center;
	overflow: hidden;
	box-sizing: border-box;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_bg
{
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_bg::after
{
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background:
		linear-gradient(180deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.12) 40%, rgba(0,0,0,0.55) 100%);
}

body.page-home-hero-overlay .box_home_top--overlay .slider_homepage_caixa,
body.page-home-hero-overlay .box_home_top--overlay .slider_homepage,
body.page-home-hero-overlay .box_home_top--overlay .slider_background
{
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	z-index: 0 !important;
	overflow: hidden !important;
	animation: none !important;
	-moz-animation: none !important;
	-webkit-animation: none !important;
	-o-animation: none !important;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_content
{
	position: relative !important;
	z-index: 3 !important;
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	width: 92% !important;
	max-width: 1280px !important;
	margin: 0 auto !important;
	margin-top: 0 !important;
	padding: 120px 0 190px !important;
	text-align: center !important;
	box-sizing: border-box;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_left
{
	position: relative !important;
	display: block !important;
	width: 100% !important;
	max-width: 1280px;
	margin: 0 auto !important;
	margin-right: 0 !important;
	text-align: center !important;
	vertical-align: bottom;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_left > h1
{
	color: #ffffff !important;
	text-shadow: 0 2px 18px rgba(0,0,0,0.45);
	margin: 0 auto 22px !important;
	max-width: 900px;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2
{
	width: 100% !important;
	margin-top: 0 !important;
	background: rgba(28, 28, 30, 0.62);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 28px;
	padding: 18px 22px 16px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
	box-sizing: border-box;
	text-align: left;
}

/* Labels + inputs estilo referência (underline / texto claro) */
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_label
{
	color: #ffffff !important;
	font-family: light, Arial, sans-serif !important;
	font-size: 14px !important;
	font-weight: normal !important;
	margin-bottom: 6px !important;
	letter-spacing: 0.2px;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .input,
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 input.input,
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 input[type="text"],
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 input[type="number"]
{
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.75) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	color: #ffffff !important;
	font-family: light, Arial, sans-serif !important;
	font-size: 15px !important;
	height: 36px !important;
	line-height: 36px !important;
	padding: 0 2px 2px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	-webkit-appearance: none;
	appearance: none;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .input::placeholder,
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 input::placeholder
{
	color: rgba(255, 255, 255, 0.55) !important;
	opacity: 1;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .input:focus,
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 input:focus
{
	border-bottom-color: #ffffff !important;
}

/* inputs internos do obcalendar não herdam o estilo dos campos do formulário */
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .box_obcalendar input,
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .box_obcalendar input[type="text"],
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .box_obcalendar input[type="number"]
{
	position:absolute !important;
	left:0 !important;
	top:0 !important;
	width:0 !important;
	height:0 !important;
	min-width:0 !important;
	max-width:0 !important;
	margin:0 !important;
	padding:0 !important;
	border:none !important;
	border-bottom:none !important;
	outline:none !important;
	opacity:0 !important;
	overflow:hidden !important;
	pointer-events:none !important;
	clip:rect(0, 0, 0, 0) !important;
	background:transparent !important;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .input.input_error
{
	border-bottom-color: #ff6b6b !important;
}

/* Google Places autocomplete (se ativo no home) */
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .RLOVFM-maps-autocomplete-view
{
	width: 100% !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.75) !important;
	border-radius: 0 !important;
	background: transparent !important;
	height: 36px !important;
	margin: 0 !important;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .RLOVFM-maps-autocomplete-view .KUVRMh-maps-autocomplete-view-input
{
	color: #ffffff !important;
	font-family: light, Arial, sans-serif !important;
	padding-left: 0 !important;
}

/* Botão secundário "Adicionar Volta" — usa .button_transparent */
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .button_transparent.button_add_return
{
	height: 40px !important;
	line-height: 38px !important;
	padding: 0 16px !important;
	top: 0 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background: transparent !important;
	background-color: transparent !important;
	border: 1px solid #ffffff !important;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .button_transparent.button_add_return:hover
{
	top: 10px !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background-color: #005aff !important;
	border-color: #005aff !important;
}

/* Botão principal Procurar */
body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .box_home_filter2_submit .button
{
	background-color: #005aff !important;
	border: 0 !important;
	border-radius: 2px !important;
	color: #ffffff !important;
	font-family: regular, Arial, sans-serif !important;
	font-size: 15px !important;
	height: 46px !important;
	line-height: 46px !important;
	padding: 0 28px !important;
	min-width: 130px;
	box-shadow: none !important;
	top: 0 !important;
	white-space: nowrap;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2 .box_home_filter2_submit .button:hover
{
	background-color: #005aff !important;
	top: 10px !important;
	box-shadow: 0 6px 18px rgba(0, 90, 255, 0.35) !important;
}

body.page-home-hero-overlay .box_home_top--overlay .box_home_top_right
{
	display: none !important;
}

/* plusSlider wrappers sometimes inject inline sizes */
body.page-home-hero-overlay .box_home_top--overlay .plusslider,
body.page-home-hero-overlay .box_home_top--overlay .plusslider > *
{
	width: 100% !important;
	height: 100% !important;
}

@media screen and (min-width: 1001px)
{
	body.page-home-hero-overlay .box_home_top.box_home_top--overlay
	{
		min-height: 100vh !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_top_content
	{
		max-width: 1280px !important;
		/* formulário 100px mais abaixo (antes 248px) */
		padding-bottom: 148px !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_top_left
	{
		max-width: 1280px;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2
	{
		padding: 20px 24px 18px;
		border-radius: 32px;
	}

	/* Uma só linha: DE | PARA | data | volta | pessoas | procurar */
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_inputs
	{
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-end;
		gap: 18px;
		width: 100%;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_input
	{
		flex: 1 1 0;
		width: auto !important;
		min-width: 140px;
		margin-bottom: 0 !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_dates,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline
	{
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: flex-end;
		flex: 0 0 auto;
		width: auto !important;
		max-width: none;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		gap: 16px;
		/* separador vertical (como no print) */
		border-left: 1px solid rgba(255, 255, 255, 0.28);
		padding-left: 18px;
		margin-left: 2px;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_date_departure,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_return_wrap,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline.has-return .box_home_filter2_date_departure,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline.has-return .box_home_filter2_return_wrap
	{
		flex: 0 0 150px !important;
		width: 150px !important;
		min-width: 150px !important;
		max-width: 150px !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_date_departure .input,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_return_wrap .input
	{
		width: 100% !important;
		max-width: 150px !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_add_return
	{
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_add_return .button.button_add_return,
	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_add_return .button_transparent.button_add_return
	{
		width: auto !important;
		max-width: none !important;
		min-width: 0;
		white-space: nowrap;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_row_people
	{
		flex: 0 0 90px !important;
		width: 90px !important;
		min-width: 90px !important;
		max-width: 90px !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_row_people .input
	{
		width: 100% !important;
		max-width: 90px !important;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2_row_inline .box_home_filter2_submit
	{
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
		margin-left: 0 !important;
		align-self: center;
		/* separador antes do botão */
		border-left: 1px solid rgba(255, 255, 255, 0.28);
		padding-left: 18px;
		margin-left: 2px !important;
	}
}

/* Mobile: header_zone = 180px; imagem full-bleed por baixo */
@media screen and (max-width: 1000px)
{
	body.page-home-hero-overlay .box_home_top.box_home_top--overlay
	{
		margin-top: 0 !important;
		min-height: 100svh !important;
		min-height: 100vh;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_top_content
	{
		width: 94% !important;
		padding: 200px 0 74px !important; /* espaço sob header mobile ~180px; formulário 100px mais abaixo */
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_filter2
	{
		padding: 16px 14px 14px;
		border-radius: 20px;
	}

	body.page-home-hero-overlay .box_home_top--overlay .box_home_top_left > h1
	{
		font-size: 28px !important;
		line-height: 1.25;
		margin-bottom: 16px !important;
	}
}
