a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}
img { display: block; vertical-align: middle; }
*, *:before, *:after { box-sizing: border-box;  }
html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased;}

:root {
	--color-black: #000;
	--color-white: #fff;
	--color-blue: #192958;
	--color-yellow: #f3bf59;
	--color-gray-100: #152b3c;
	--color-gray-800: #c3c4c2;
	--main-bg-color: var(--color-blue);
}

@font-face {
	font-family: "NeutraText-book";
	src: url(../fonts/Neutra2Text_book.woff) format("woff");
	font-weight: 400;
}

@font-face {
	font-family: "NeutraText-demi";
	src: url(../fonts/Neutra2Text_demi.woff) format("woff");
	font-weight: 500;
}

@font-face{
	font-family: "Sabon-roman";
	src: url(../fonts/Sabon-Regular.woff) format("woff");
	font-style: normal;
	font-weight: 400;
}

html, body {
	max-width: 100%;
	min-width: 320px;
	overflow-x: hidden;
	width: 100%;
}

body {
	background-color: var(--main-bg-color);
	color: var(--color-white);
	font-family: 'NeutraText-book', sans-serif;
	font-size: 20px;
	line-height: 25px;
	overflow: hidden;
}

h1 {
	font-family: "Sabon-roman", sans-serif;
	font-size: 28px;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 30px;
	text-align: center;
}

h2 {
	font-family:"NeutraText-demi", sans-serif;
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 25px;
}

p {
	margin-bottom: 25px;
}

a {
	color: var(--color-yellow);
	text-decoration: none;
}

	a:hover, a:focus, a:active {
		text-decoration: underline;
	}

strong {
	font-family:"NeutraText-demi", sans-serif;
	font-weight: 500;
}

.text-color-yellow {
	color: var(--color-yellow);
}

img {
	height: auto;
	max-width: 100%;
	width: auto;
}

.site-header {
	background: url('../images/header.png') no-repeat right top;
	background-size: 50%;
	border-bottom: 1px solid var(--color-white);
	height: 310px;
	position: relative;
	z-index: 1;
}

	.site-header .content-container {
		align-items: center;
		display: flex;
		flex-direction: column-reverse;
		height: 100%;
		justify-content: space-between;
	}

	.site-header--text {
		font-family:"NeutraText-demi", sans-serif;
		font-size: 24px;
		font-weight: 400;
		line-height: 1;
		margin-top: 50px;
		max-width: 260px;
		text-align: center;
		text-transform: uppercase;
		width: 100%;
	}

	.site-header--logo {
		background: url('../images/svg/logo-hal.svg?v=1') no-repeat center;
		background-size: contain;
		height: 90px;
		margin-bottom: 15px;
		position: relative;
		width: 245px;
	}

.page-container {
	position: relative;
	width: 100%;
}

.content-container {
	margin: 0 auto;
	padding: 20px;
	position: relative;
	width: 100%;
}
 
.countdown {
	padding: 40px;
}
	.countdown h1 { font-size: 30px; }
	.countdown h2 { font-size: clamp(30px, 4.5vw, 70px); }
	.countdown h2, .countdown p { line-height: 1; margin: 0 auto; text-align: center; }
  
  .countdown-content,
  .countdown-content-final {
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  gap: clamp(10px, 4.5vw, 40px); ;
  }
  
  .countdown-content-final {
	display: none;
  }

.alert-message {
	border: 1px solid var(--color-yellow);
	color: var(--color-yellow);
	padding: 15px;
	font-size: 18px;
	margin-bottom: 1em;
	margin-top: 1em;
	text-align: center;
}

.legal p {
	font-size: 14px;
	line-height: 1;
	margin-bottom: 15px;
	text-align: center;
}

.site-footer {
	text-align: center;
	font-size: 14px;
}

.thanks p {
	margin-bottom: 25px;
}

.thanks .site-header {
	background: none;
	border: 0;
	height: auto;
}

	.thanks .site-header--logo {
		margin: 20px auto;
	}

.thanks .hero {
	background: url('../images/hero.jpg') no-repeat center;
	background-size: cover;
	height: 200px;
	margin: 0 auto;
	max-width: 1195px;
	width: 100%;
}

input[type='text'],
input[type='email'],
textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: var(--color-white);
	border: 1px solid var(--color-white);
	border-radius: 3px;
	color: var(--color-black);
	display: block;
	font-size: 18px;
	height: 40px;
	margin-bottom: 35px;
	padding: 10px;
	width: 100%;
}

input[type='submit'] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: var(--color-yellow);
	border: none;
	border: 1px solid transparent;
	display: block;
	text-align: center;
	color: var(--color-white);
	cursor: pointer;
	font-family:"NeutraText-demi", sans-serif;
	font-size: 24px;
	font-weight: 500;
	line-height: 38px;
	margin-bottom: 0;
	text-transform: uppercase;
	padding: .7em 0;
	width: 100%;
}

/*input:invalid {*/
/*    border: 2px solid var(--color-yellow);*/
/*}*/

label,
legend {
	display: block;
	margin-bottom: 5px;
}

select.custom-dropdown {
	appearance: none !important;
	-moz-appearance: none !important;
	-ms-appearance: none !important;
	-o-appearance: none !important;
	-webkit-appearance: none;
	background: var(--color-white) url(../images/svg/icon-arrow.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 36px;
	border-radius: 4px;
	border: 1px solid var(--color-gray-800);
	box-shadow: none;
	color: var(--color-gray-100);
	cursor: pointer;
	font-size: 16px;
	height: 40px;
	margin: 0;
	margin-bottom: 25px;
	outline: none;
	overflow: hidden;
	padding: 10px 12px;
	text-indent: 0.01px;
	width: 100%;
}

fieldset > div,
.g-recaptcha {
	margin-bottom: 35px;
}

input[type=radio],
input[type=checkbox] {
	display: inline-block;
	cursor: pointer;
}

.row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}

.col {
	-webkit-box-flex: 0;
	-ms-flex-positive: 0;
	flex-grow: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	padding-left: 15px;
	padding-right: 15px;
	position: relative;
}

.offscreen {
	display: block;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: fixed;
	width: 1px;
}

.display-flex {
	display: flex !important;
}

.display-none {
	display: none !important;
}

#g-recaptcha-response {
	display: block !important;
	position: absolute;
	margin: -78px 0 0 0 !important;
	width: 302px !important;
	height: 76px !important;
	z-index: -999999;
	opacity: 0; 
}


@media (max-width: 767px) {
	.col-xs-12 { -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; }
}

@media (min-width: 768px) {
	h2 { font-size: 24px; }
	.site-header { background-size: 30%; height: 270px; }
	.site-header--text { margin-top: 20px; }
	.thanks .hero { height: 300px; }
	input[type='submit'] { font-size: 28px; }
	.col-sm-6 { -ms-flex-preferred-size: 50%; flex-basis: 50%; max-width: 50%; }
	.col-sm-4 { -ms-flex-preferred-size: 33%; flex-basis: 33%; max-width: 33%; }
}

@media (min-width: 1025px) {
	h1 { font-size: 42px; margin-bottom: 40px; }
	.content-container { max-width: 805px; padding: 20px 0; }
	.site-header { background-position: center; background-size: contain; height: 200px; }
	.site-header .content-container { flex-direction: row-reverse; padding: 0 }
	.site-header--text { font-size: 26px; margin-left: -26px; margin-top: 0; max-width: 290px; }
	.legal .content-container { padding: 30px 0 10px; }
	.thanks .hero { height: 422px; }
	.thanks .content-container { padding: 35px 0; }
	.col-md-6 { -ms-flex-preferred-size: 50%; flex-basis: 50%; max-width: 50%; }
}