@font-face {
  font-family: 'Summer Loving Regular';
  src: url('../fonts/SummerLoving-Regular.otf')  format('opentype'); /* Safari, Android, iOS */
}
@font-face {
  font-family: 'Eveleth Slant Regular';
  src: url("../fonts/evelethslant/EvelethSlantRegular-Bold.woff2") format("woff2"),
       url("../fonts/evelethslant/EvelethSlantRegular-Bold.woff") format("woff"),
       url('../fonts/evelethslant/EvelethSlantRegular-Bold.ttf')  format('truetype'),
       url('../fonts/evelethslant/EvelethSlantRegular-Bold.eot')  format('embedded-opentype'); 
}


@font-face {
    font-family: 'better_timesregular';
    src: url('../fonts/bettertimes-webfont.woff2') format('woff2'),
         url('../fonts/bettertimes-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'proxima_nova_altbold';
    src: url('../fonts/proximanovaa-bold-webfont.woff2') format('woff2'),
         url('../fonts/proximanovaa-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'proxima_nova_altsemibold';
    src: url('../fonts/proximanovaa-semibold-webfont.woff2') format('woff2'),
         url('../fonts/proximanovaa-semibold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
:root {
  --color-black: #252525;
  --color-white: #ffffff;
  --color-red: #a62436;
}
body{
	background-color:#f1f1f1;
	color: #252525;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: 400;
	/*background-image: url(../images/background-left1.png), url(../images/background-right1.png);
	background-position: left top, right top;
	background-repeat: no-repeat;
	background-size: auto;*/
}
header{
	/*background-image: url(../images/background-left.png), url(../images/background-right.png);
	background-position: left top, right top;
	background-repeat: no-repeat;
	background-size: auto;*/
}


.font-main{ font-family: 'Roboto', sans-serif; }
.font-better-times { font-family: 'better_timesregular'; }
.font-proxima-bold { font-family: 'proxima_nova_altbold'; }
.font-proxima-semibold { font-family: 'proxima_nova_altsemibold'; }


.font-summerloving{ font-family: 'Summer Loving Regular', serif; }
.font-evelethslant{ font-family: 'Eveleth Slant Regular', serif; }

/*.logo{ max-width: 300px; }*/

.title{ font-weight: 700; font-size: 18px; } /* privacy policy */ 
/*.container{ padding: 0; }*/
/*#main-content{ padding-left: 15px; padding-right: 15px; }*/
#main-content p{ font-size: 14px; margin-bottom: 20px; }
h1{ line-height: 1; font-weight: 400; letter-spacing: 2px; margin-bottom: 0; }
h2{ margin-bottom: 10px; line-height: 1; }
h3{ margin-bottom: 20px; }

.title1{ font-size: 50px; color: var(--color-red); margin-top: 40px; }
.title2{ font-size: 80px; color: var(--color-red); }
.title3{ font-size: 100px; color: var(--color-red); }
.title4{ font-size: 35px; color: var(--color-red); line-height: 1.2; }
.title5{ font-size: 25px; font-weight: 500; line-height: 1.2; color: var(--color-red); }
.uppercase{ text-transform: uppercase; }
.medium{ font-weight: 500; }

/*#thankyou .title1{ font-size: 120px; line-height: 0.8; }*/
#thankyou .title2{ font-size: 40px; line-height: 40px; }
#thankyou .title4{ font-size: 30px; }


.yellow{ color: #d2db4d;}
.red{font-size: 13px;}
.legal{ color: #252525; font-size: 10px; font-family: 'Roboto', sans-serif; }
a{ color: #252525; text-decoration: underline; }
a:focus, a:active {
    outline: none;
    -moz-outline-style: none;
}
a:hover{ color: #252525; }
img.map, map area{
    outline: none;
    -moz-outline-style: none;
}
label{
	font-weight: normal;
	color: #252525;
	font-size: 20px;
}
.red{ color: #ff0000;}
.btn{ background: #0d51a2; font-size: 20px; color: #ffffff; border: none; border-radius: 25px; padding: 15px 30px; }
.btn:hover{ color: #fff; }
.submit{ 
	border-radius: 5px;
	background-color: #831a2c;
	font-size: 20px;
	font-weight: 700;
	border: none;
	color: #ffffff;
	padding: 12px 30px;
	letter-spacing: 1px;
	outline: none;
}
button:focus {outline:0;}
/*.btn:hover{ background: #231f20; color: #fff; }*/

#agepage{
	background-image: url(../imgs/banner-agepage3000.jpg);
	background-repeat: no-repeat;
	height: 1100px;
}

#form-background { 
	background-image: url(../imgs/footer-left.png), url(../imgs/footer-right.png), url(../imgs/sky.jpg); 
	background-position: left bottom, right bottom, center top; 
	background-size: 400px auto, 400px auto, cover;
	background-repeat: no-repeat;
	height: 100vh;
}

#form {  }

#thankyou{
	background-image: url(../imgs/banner-agepage3000.jpg);
	background-repeat: no-repeat;
	height: 1100px;
}

/*#form{
	background-image: url(../imgs/banner3000.jpg);
	background-repeat: no-repeat;
	height: 1230px;
}*/

#main-header{
	/*background: url(../images/formpage-background.jpg) center top no-repeat;
	background-size: 100% auto;
	width: 635px;
	height: 570px;
	margin: 0 auto;*/
}

#footer{
	/*background-image: url(../images/footer-background-left.png), url(../images/footer-background-right.png);
	background-position: left bottom, right bottom;
	background-repeat: no-repeat;
	background-size: auto;*/
	padding: 0px 0 40px;
	/*height: 450px;*/
	/*background-color: #f1f1f1;*/
}
#footer ul{ list-style: none; display: inline-block; margin-left: -20px; margin-bottom: 15px;}
#footer li{display: inline; list-style: none;}
#footer a{ color: #252525; padding-bottom: 2px;text-decoration: none; }
#footer p, .copyright{ /*margin-bottom: 15px;*/ font-size: 13px; }

.form-group{ margin-bottom: 30px; }
input[type="color"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="email"],
input[type="month"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="url"],
input[type="week"],
select, select:focus, select option,
textarea {
  font-size: 16px !important; 
  color: #303030 !important;
  /*padding-left: 15px;*/
  border-color: #252525 !important;
}
select option{ line-height: 2rem; padding-top: 5px !important; }
/*select{ padding-left: -10px !important;}*/
.select2-container .select2-search--inline .select2-search__field{ padding-left: 8px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice{ margin-top: 10px; }
.select2-container .select2-search--inline{  }
.select2-container--default .select2-selection--multiple, .form-control{ border: 1px solid #252525; }

select.form-control{ padding-left: 8px; color: #303030; }
::placeholder{ 
	color: #303030 !important; opacity: 0.4 !important; 
}
::-webkit-input-placeholder {
	color: #303030 !important; opacity: 0.4 !important;
}
::-moz-placeholder {
	color: #303030 !important; opacity: 0.5 !important;
}
:-ms-input-placeholder {
	color: #303030 !important; opacity: 0.5 !important;
}

input[type="date"]{ padding: 0px 12px; -webkit-appearance: none; }
input[type="date"]::-webkit-datetime-edit-month-field { color: blue; }
::-webkit-datetime-edit-day-field { color: green; }
::-webkit-datetime-edit-year-field { color: purple; }

.hidden{ display: none; }

@media (max-width: 2000px) {
	#agepage, #thankyou { background-image: url(../imgs/banner-agepage2000.jpg); height: 974px; }
	#form {  }
	/*#thankyou{ background-image: url(../imgs/banner-agepage2000.jpg); height: 974px; }*/
	.logo { width: 300px !important; }
	.title1 { font-size: 45px; }
	.title3 { font-size: 75px; }
	.title4 { font-size: 30px; }
	.title5 { font-size: 22px; }
	.btn-enter { width: 180px !important; }
	/*body{ background-image: url(../images/background-left1440.png), url(../images/background-right1440.png); }
	#footer{ background-image: url(../images/footer-background-left1440.png), url(../images/footer-background-right1440.png); }*/
}

@media (max-width: 1680px) {
	#agepage, #thankyou { background-image: url(../imgs/banner-agepage1680.jpg); height: 792px; }
	#form {}
	/*#thankyou{ background-image: url(../imgs/banner1680.jpg); height: 792px; }*/
	.logo { width: 260px !important; }
	
	#thankyou .title2 { font-size: 40px; }
	.title1 { font-size: 40px; }
	.title3 { font-size: 65px; }
	.title4 { font-size: 23px; }
	.title5 { font-size: 19px; }
	.btn-enter { width: 150px !important; }
	
	
}

@media (min-width: 1900px) and (max-width: 1999px) {
	.custombr{ display: inline !important; }
}
/*@media (max-width: 1999px) {
	
	
	.show1900{ display: block !important; }
}
@media (min-width: 2000px) {
	.show2500{ display: block !important; }
}*/

@media (max-width: 1480px) {
	#agepage, #thankyou { background-image: url(../imgs/banner-agepage1500.jpg); height: 744px; }
	#form{}
	#form-background { background-size: 300px auto, 300px auto, cover; }
	/*#thankyou{ background-image: url(../imgs/banner1480.jpg); height: 654px; }*/
	.logo { width: 220px !important; margin-top: 20px !important; }
	.title1 { font-size: 40px; }
	#thankyou .title2 { font-size: 35px; }
	.title3 { font-size: 60px; }
	.title4 { font-size: 23px; }
	.title5 { font-size: 19px; }
	.btn-enter { width: 150px !important; }

	#bottle-left, #bottle-right { height: 500px !important; }
	#bottle-left { left: -170px !important; }
	#bottle-right { right: -250px !important; }
}

@media (max-width: 1280px) {
	#form-background { background-size: 250px auto, 250px auto, cover; }
	#bottle-left, #bottle-right { height: 450px !important; }
	#bottle-left { left: -150px !important; }
	#bottle-right { right: -220px !important; }
}

@media (max-width: 1200px) {
	#agepage, #thankyou { background-image: url(../imgs/banner-agepage1200.jpg); height: 600px; } 
	#form{}
	
	/*#thankyou{ background-image: url(../imgs/banner1200.jpg); height: 470px; }*/
	.logo { width: 160px !important; margin-top: 20px !important; }
	.title1 { font-size: 25px; }
	#thankyou .title2 { font-size: 30px; }
	.title3 { font-size: 40px; }
	.title4 { font-size: 20px; }
	.title5 { font-size: 16px; }
	.btn-enter { width: 120px !important; }
}

@media (max-width: 768px) {
	body{ background-color: #ffffff;  }
	/*#agepage, #thankyou{ background-image: url(../imgs/banner-mobile.jpg); }*/
	/*br{ display: none; }*/
	#agepage, #thankyou{ height: 900px; }
	h1{ font-size: 50px; }
	.title1{ font-size: 44px; }
	.title2{ font-size: 33px; }
	.title3{ font-size: 50px; }
	.title4{ font-size: 25px; }
	#thankyou .title1{ font-size: 50px; }
	#thankyou .title2{ font-size: 35px; }
	#thankyou .title4{  font-size: 20px; }
	#footer{ background: #ffffff; padding-top: 10px; padding-bottom: 40px; height: auto; }
	.logo{ max-width: 300px; }
	.light{ max-width: 300px; }
	.mobile-show{ display: block !important; }
	.mobile-hide{ display: none; }
	#footer p, .copyright{ margin-bottom: 15px; font-size: 12px; }
	#form-background { background-image: none; }
}

/* --- */
.checkbox-xl .custom-control-label::before, 
.checkbox-xl .custom-control-label::after {
  top: 1.2rem;
  width: 1.85rem;
  height: 1.85rem;
}

.checkbox-xl .custom-control-label {
  padding-top: 23px;
  padding-left: 15px;
  border-color: #252525 !important;
}
.custom-control-input-blue, .custom-control-label::before{ border-color: #252525 !important; }
.custom-control-input-blue:focus~.custom-control-label::before {
  border-color: #252525 !important;
  /*box-shadow: 0 0 0 0.2rem rgba(13, 81, 162, 0.25) !important;*/
  box-shadow: none;
}

.custom-control-input-blue:checked~.custom-control-label::before {
  border-color: var(--color-red) !important;
  background-color: var(--color-red) !important;
}

.custom-control-input-blue:focus:not(:checked)~.custom-control-label::before {
  border-color:#252525 !important;
}

.custom-control-input-blue:not(:disabled):active~.custom-control-label::before {
  background-color: var(--color-red) !important;
  border-color: var(--color-red) !important;
}

/* */
.wordbox{
	width: 90%;
	border-radius: 20px;
	background-color: #0d51a2;
	color: #ffffff;
	padding: 30px 0 40px;
	margin-bottom: 10px;
}

input.box:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, .form-control:focus {
  /*border: 1px solid #0d51a2;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(13, 81, 162, 0.25);
  -moz-box-shadow: 0 0 0 0.2rem rgba(13, 81, 162, 0.25);
  box-shadow: 0 0 0 0.2rem rgba(13, 81, 162, 0.25);
  outline: none;*/
  box-shadow: none;
  outline: none;
  /*background: #c5c5c5;*/
}

.cs-skin-border .cs-options{
	font-size: 16px;
	color: #303030;
	background: #eeeff1;
}
div.cs-skin-border {
	background: transparent;
	font-size: 16px !important;
	font-weight: 500;
	max-width: 700px;
}
.cs-skin-border > span {
	border:1px solid #252525 !important;
	border-radius: 0.25em;

	height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
}
.cs-skin-border.cs-active > span {
	/*background: #fff;
	border-color: #fff;*/
	color: #1650a1;
}
.cs-skin-border .cs-options li span:hover, .cs-skin-border li.cs-focus span{
	background: #1650a1;
	color: #fff;
}
.cs-skin-border ul span{
	padding: .50em 1em;
}
.cs-skin-border .cs-selected span::after{
	color:#303030;
}

/* WORD GAMES */
input.box {
  height: calc(2em + .75rem + 2px);
  padding: .375rem .75rem;
  width:60px;
  text-align: center;
  border-radius: .25rem;
  border: 1px solid #252525;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 2em !important;
}
input.box.error{
	background: rgba(255,0,0,0.8);
}
input.box::selection{
	background: none;
	color: blue;
}
@media (max-width: 768px) {
	.wordbox{ width: 100%; }
	input.box {
		width: 8%;
		height: calc(1.5em + .75rem + 2px);
		font-size: 16px !important;
		padding: .15rem .3rem;
	}
}
/* END WORD GAMES */

.select2-container{
	width: 100% !important;
}
.select2-container .select2-selection--single{
	height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
}

.select2-container--default .select2-selection--single{
	border:1px solid #252525 !important;
	border-radius: 0.25em;
}

.select2-container--default .select2-selection--single:focus{
	outline: none;
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
	color: #303030;
}

.select2-container .select2-selection--single .select2-selection__rendered{
	padding-left: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
	top: .375rem;
}


.form-group {
  position: relative;
}
.custom-control-input.is-valid~.custom-control-label, .was-validated .custom-control-input:valid~.custom-control-label{
	color: #4c4d50;
	/*border: 1px solid red;*/
}

.form-control.is-invalid, .was-validated .form-control:invalid, .form-control.is-valid, .was-validated .form-control:valid{
	background-image: none;
}

#checkbox-error.invalid-tooltip{ top: 50px; }



body {
  color: var(--color-black);
  
  
}

button,
.button {
  --button: hsl(0, 0%, 12%);
  --button-hover: hsl(0, 0%, 20%);
  --button-active: hsl(0, 0%, 30%);
  --button-visited: hsl(0, 0%, 20%);
  --button-colour: var(--color-white);
  --button-border: var(--color-black);
}

.button--primary {
  --button: hsl(346, 100%, 60%);
  --button-hover: hsl(346, 100%, 70%);
  --button-active: hsl(346, 100%, 80%);
  --button-visited: hsl(346, 100%, 70%);
  --button-colour: var(--color-black);
  --button-border: var(--color-black);
}

.button--secondary {
  --button: hsl(0, 0%, 79%);
  --button-hover: hsl(0, 0%, 89%);
  --button-active: hsl(0, 0%, 69%);
  --button-visited: hsl(0, 0%, 89%);
  --button-colour: var(--color-black);
  --button-border: var(--color-black);
}

.button--tertiary {
  --button: hsl(0, 100%, 90%);
  --button-hover: hsl(0, 100%, 94%);
  --button-active: hsl(0, 100%, 84%);
  --button-visited: hsl(0, 100%, 94%);
  --button-colour: var(--color-black);
  --button-border: var(--color-black);
}

a.button, button {
  padding: 0.9rem 1.7rem;
  color: #fff;
  font-weight: 500;
  font-size: 20px;
  transition: all 0.3s ease-in-out;
  background: #a60c0b;
  border: solid 5px #a60c0b;
  box-shadow: inset 0 0 0 1px #fff;
  margin-right: 1em;
  text-decoration: none;
  letter-spacing: 2px;
}

a.button:hover, button:hover {
  /*text-decoration: underline;*/
  background: #a60c0b;
  box-shadow: inset 0 0 0 4px var(--color-white);
}

a.button:active, button:active {
  background: var(--button-active);
}

a.button:visited, button:visited {
  background: #a60c0b;
}


.checkbox {
	 display: grid;
	 grid-template-columns: min-content auto;
	 grid-gap: 0.5em;
	 font-size: 20px;
	 color: #252525;
}
 .checkbox--disabled {
	 color: grey;
}
 .checkbox__control {
	 display: inline-grid;
	 width: 1em;
	 height: 1em;
	 border-radius: 0.25em;
	 border: 0.1em solid currentColor;
}
 .checkbox__control svg {
	 transition: transform 0.1s ease-in 25ms;
	 transform: scale(0);
	 transform-origin: bottom left;
}
 .checkbox__input {
	 display: grid;
	 grid-template-areas: "checkbox";
}
 .checkbox__input > * {
	 grid-area: checkbox;
}
 .checkbox__input input {
	 opacity: 0;
	 width: 1em;
	 height: 1em;
}
 .checkbox__input input:focus + .checkbox__control {
	 box-shadow: 0 0 0 0.05em #fff, 0 0 0.15em 0.1em currentColor;
}
 .checkbox__input input:checked + .checkbox__control svg {
	 transform: scale(1);
}
 .checkbox__input input:disabled + .checkbox__control {
	 color: grey;
}

a#scroll-down {
  /*position: absolute;
  bottom: 20px;
  left: 50%;*/
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: var(--color-red);
  font-size: 20px;
  letter-spacing: .1em;
  text-decoration: none;
  transition: opacity .3s;
  margin-top: 40px;
}
a#scroll-down:hover {
  opacity: .5;
}

#form a#scroll-down {
  padding-top: 60px;
}
#form a#scroll-down span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 30px;
  height: 50px;
  margin-left: -15px;
  border: 3px solid var(--color-red);
  border-radius: 50px;
  box-sizing: border-box;
}
#form a#scroll-down span::before {
  position: absolute;
  top: 10px;
  left: 50%;
  content: '';
  width: 6px;
  height: 6px;
  margin-left: -3px;
  background-color: var(--color-red);
  border-radius: 100%;
  -webkit-animation: sdb10 2s infinite;
  animation: sdb10 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb10 {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb10 {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}