/*-----------------------------------*\
  RESET/BASIC
\*-----------------------------------*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0; padding:0; border:0; outline:0; 
	vertical-align:baseline; background:transparent;
}

* { box-sizing: border-box; }

html {
    font-size: 62.5%;
}

body {
	font-family: "montserrat", sans-serif;
	font-weight: 400; font-size: 1.4rem; line-height: 1.5;
	color: #000; min-height: 100vh;
    display: flex; flex-direction: column;
    background: #fff;
}

[ng\:cloak], [ng-cloak], .ng-cloak {
	display: none !important;
}

@media screen and (max-device-width: 480px){
	body{
		-webkit-text-size-adjust: none;
	}
}

.content {
    flex: 1 0 auto;
    overflow: hidden;
}

img {
    width: 100%; height: auto;
    display: block;
}

img.rounded {
	border-radius: 20px;
}

a {
	transition: all 0.25s linear;
	text-decoration: none;
}

.btn {
	display: inline-block; color: #fff;
	line-height: 40px; font-size: 1.6rem;
	font-weight: 700; padding: 0 24px;
	border-radius: 9999em;
	background: #D41736;
}

.btn.btn-lined {
	display: inline-block; color: #fff;
	line-height: 38px; padding: 0 22px;
	background: none; border: 1px solid #fff;
}

.basic {
	padding: 0 20px; margin: 0 auto; 
	max-width: 1280px;
}

h2 {
	font-size: 2.4rem; font-weight: 700;
	line-height: 1.25; color: #D41736;
	margin-bottom: 12px;
}

button, input[type="submit"] {
    background: none; border: 0;
    color: inherit; cursor: pointer;
    line-height: normal;
    overflow: visible; padding: 0;
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
}

.lgbreak {
	display: none;
}

@media only screen and (min-width: 768px) {

	.basic {
		padding: 0 30px;
	}

	h2 {
		font-size: 3rem; 
		margin-bottom: 20px;
	}

	.bflex {
		display: flex;
		justify-content: space-between;
	}

	.lgbreak {
		display: block;
	}

	.smbreak {
		display: none;
	}

}

@media only screen and (min-width: 1024px) {

	body {
		font-size: 1.6rem;
	}

	.basic {
		padding: 0 40px;
	}

	h2 {
		font-size: 4rem; 
		margin-bottom: 24px;
	}

}

@media only screen and (min-width: 1280px) {

	body {
		font-size: 1.8rem;
	}

	h2 {
		font-size: 6rem; 
		line-height: 1.1;
	}

	.btn {
		line-height: 58px; font-size: 2rem;
		padding: 0 40px;
	}

	.btn.btn-lined {
		line-height: 56px; padding: 0 38px;
	}

	img.rounded {
		border-radius: 40px;
	}

}

/*-----------------------------------*\
  HEADER
\*-----------------------------------*/

.header-inner {
	display: flex; align-items: center;
	height: 60px;
}

.header-inner.basic {
	padding: 0 10px;
}

.logo {
	width: 124px;
}

.header-inner .btn {
	margin-left: auto;
	line-height: 36px;
}

@media only screen and (min-width: 375px) {

	.logo {
		width: 148px;
	}

	.header-inner.basic {
		padding: 0 16px;
	}

}

@media only screen and (min-width: 768px) {

	.logo {
		width: 164px;
	}

	.header-inner.basic {
		padding: 0 20px;
	}

}

@media only screen and (min-width: 1024px) {

	.header-inner {
		height: 80px;
	}

	.logo {
		width: 220px;
	}

}

@media only screen and (min-width: 1280px) {

	.header-inner {
		height: 108px;
	}

	.logo {
		width: 360px;
	}

	.header-inner .btn {
		line-height: 58px;
	}

}

/*-----------------------------------*\
  BANNER
\*-----------------------------------*/

#banner {
	position: relative;
	margin-bottom: 56px;
}

#banner .basic {
	max-width: 1356px;
}

.csipage #banner .basic {
	max-width: 1320px;
}

.lgheadline {
	display: none;
}

.smbanner {
	position: absolute;
	left: 2.75vw; top: 4vw;
}

.csipage .smbanner {
	left: 2.75vw; top: 12vw;
}

.uba .smbanner {
	top: 6vw;
}

.bannerstar {
	width: 6vw;
	margin: 0 auto 1.5vw;
}

.headline {
	width: 56vw;
}

.csipage .headline {
	width: 42vw;
}

.banner-inner {
	padding: 20px 0 0;
}

.banner-inner p {
	margin-bottom: 12px;
}

.csipage .banner-inner p {
	margin-bottom: 20px;
}

.banner-inner p br {
	display: none;
}

.scroll {
	font-size: 1.2rem;
	margin-top: 12px;
}

.altpage .scroll {
	padding-left: 34px;
	background: url(../images/icn-down.png) no-repeat left top;
	background-size: 24px; min-height: 24px;
	padding-top: 3px;
}

.call {
	margin-top: 16px;
}

.call a {
	color: #000;
}

@media only screen and (min-width: 768px) {

	#banner {
		margin-bottom: 72px;
	}

	.smbanner {
		display: none;
	}

	.lgheadline {
		display: block;
		margin-bottom: 10px;
	}

	.headline, .csipage .headline {
		width: 36rem;
	}

	.banner-inner p br {
		display: block;
	}

	.banner-inner {
		position: absolute; top: 2.77vw;
		left: 0; right: 0; padding: 0;
	}

	.altpage .banner-inner {
		top: 2vw;
	}

	.csipage .banner-inner {
		top: 6.74vw;
	}

	.altpage .banner-inner p {
		margin-bottom: 16px;
		font-size: 1.2rem;
	}

	.scroll {
		color: #fff;
	}

	.call {
		margin-top: 16px;
		color: #fff;
	}

	.call a {
		color: #fff;
	}

}

@media only screen and (min-width: 1024px) {

	#banner {
		margin-bottom: 96px;
	}

	.lgheadline {
		margin-bottom: 16px;
	}

	.headline, .csipage .headline {
		width: 44rem;
	}

	.banner-inner p {
		margin-bottom: 24px;
		font-size: 1.8rem;
	}

	.altpage .banner-inner p {
		margin-bottom: 20px;
		font-size: 1.6rem;
	}

	.scroll {
		margin-top: 22px;
		font-size: 1.4rem;
	}

	.call {
		margin-top: 22px;
		font-size: 1.4rem;
	}

}

@media only screen and (min-width: 1280px) {

	#banner {
		margin-bottom: 112px;
	}

	.headline, .csipage .headline {
		width: 62.5rem;
	}

	.altpage .banner-inner p {
		margin-bottom: 30px;
		font-size: 2rem;
	}

	.csipage .banner-inner p {
		margin-bottom: 72px;
		font-size: 2.2rem;
	}

	.call {
		font-size: 1.8rem;
	}

	.altpage .scroll {
		margin-top: 30px;
		padding-top: 2px;
	}

}

@media only screen and (min-width: 1440px) {

	.banner-inner {
		top: auto; bottom: 17.569444444444443vw;
	}

	.altpage .banner-inner {
		top: auto; bottom: 10.13888888888889vw;
	}

	.csipage .banner-inner {
		top: 50%; bottom: auto;
		transform: translateY(-50%);
		padding-bottom: 8.3vw;
	}

	.banner-inner p {
		font-size: 2rem;
	}

	.altpage .scroll {
		margin-top: 44px;
	}

}

@media only screen and (min-width: 1740px) {

	.call {
		margin-top: 64px;
	}

}

/*-----------------------------------*\
  VBANNER
\*-----------------------------------*/

#vbanner {
	margin-bottom: 30px;
	position: relative;
}

.smvbanner {
	position: absolute;
	left: 2.75vw; top: 8vw;
	width: 50vw;
}

.vbanner-inner {
	padding: 30px 20px 0;
}

.lgvbanner {
	display: none;
}

.vbi-copy {
	margin-bottom: 20px;
}

.vbi-call {
	margin-top: 20px;
}

.vbi-call a {
	color: #000;
}

@media only screen and (min-width: 768px) {

	#vbanner {
		margin-bottom: 48px;
		position: relative;
	}

	.smvbanner {
		display: none;
	}

	.vbanner-inner {
		padding: 0; position: absolute;
		top: 3.472vw; font-size: 1.25vw;
		left: 7.71vw; width: 43.9vw;
	}

	.lgvbanner {
		display: block;
		margin-bottom: 1.1vw;
	}

	.vbanner-inner.light {
		color: #fff;
		text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
	}

	.vbanner-inner.light .btn {
		text-shadow: none;
	}

	.vbi-copy {
		width: 75%;
		margin-bottom: 1.18vw;
	}

	.vbi-copy.grad {
		width: 73%;
	}

	body.default .vbi-copy {
		width: 84%;
	}

	.vbi-call {
		margin-top: 1.38vw;
	}

	.vbanner-inner.light .vbi-call a {
		color: #fff;
		text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
	}

	body.default .vbi-call,
	body.default .vbi-call a {
		color: #fff;
	}

}

@media only screen and (min-width: 1024px) {

	#vbanner {
		margin-bottom: 60px;
	}

}

@media only screen and (min-width: 1280px) {

	#vbanner {
		margin-bottom: 80px;
	}

}

/*-----------------------------------*\
  JOURNEY
\*-----------------------------------*/

#journey {
	text-align: center;
	margin-bottom: 56px;
}

.journey-intro br {
	display: none;
}

@media only screen and (min-width: 768px) {

	#journey {
		margin-bottom: 72px;
	}

	.journey-intro br {
		display: block;
	}

}

@media only screen and (min-width: 1024px) {

	#journey {
		margin-bottom: 96px;
	}

}

@media only screen and (min-width: 1280px) {

	#journey {
		margin-bottom: 112px;
		font-size: 2rem;
	}

}

/*-----------------------------------*\
  CONTACT
\*-----------------------------------*/

#contact {
	margin-bottom: 56px;
}

.contact-intro {
	margin-bottom: 25px;
}

.contact-intro p {
	max-width: 490px;
	margin-bottom: 20px;
}

.csipage .contact-intro {
	margin-bottom: 40px;
}

.csipage .contact-intro p {
	margin-bottom: 30px;
}

.csi-logo {
	width: 94%;
	max-width: 464px;
}

.formrow {
	margin-bottom: 12px;
}

.formrow.agerow {
	position: absolute;
	left: -99999px;
}

label {
	display: block; margin-bottom: 2px;
	font-weight: 700; 
}

input[type="text"], 
input[type="tel"], 
input[type="email"],
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #949494; border-radius: 9999em; outline: 0; 
    box-shadow: none; display: block; width: 100%;
    font-size: 1.4rem; line-height: 38px; 
    height: 40px; background: #fff;
    font-family: 'montserrat', sans-serif;
    padding: 0 12px; color: #000; font-weight: 400;
}

select {
	background: url(../images/arrow.png) no-repeat right center;
    background-size: auto;
  	background-size: 32px;
}

.required {
	font-size: 1.2rem; font-weight: 700;
	text-align: right; margin-bottom: 12px;
}

#btn-submit {
	font-family: 'montserrat', sans-serif;
	display: block; border-radius: 9999em;
	background: #D41736; color: #fff;
	width: 100%; height: 48px; line-height: 48px;
	font-weight: 700; font-size: 1.6rem;
}

.help-block {
	padding-top: 2px; font-size: 1.2rem;
	color: #f00; font-weight: 700;
}

.spinner-wrap {
    position: absolute; top: 50%;
    left: 0; right: 0;
    transform: translateY(-50%);
}

.spinner {
    margin: 0 auto; height: 60px; width: 60px;
    -webkit-animation: rotate 0.8s infinite linear;
    animation: rotate 0.8s infinite linear;
    border: 8px solid #D41736;
    border-right-color: transparent;
    border-radius: 50%;
}

@-webkit-keyframes rotate {
  0%    { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100%  { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}

@keyframes rotate {
  0%    { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100%  { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}

@media only screen and (min-width: 768px) {

	.contact-intro {
		margin-bottom: 0; width: 44.16%;
	}

	.contact-formwrap {
		width: 50%;
	}

	.csipage .contact-intro p {
		margin-bottom: 48px;
	}

}

@media only screen and (min-width: 1024px) {

	#contact {
		margin-bottom: 96px;
	}

	.contact-intro p {
		max-width: 490px;
		margin-bottom: 40px;
	}

	.contact-formwrap {
		padding-top: 5px;
	}

	.csipage .contact-intro p {
		margin-bottom: 60px;
	}

}

@media only screen and (min-width: 1280px) {

	#contact {
		margin-bottom: 140px;
	}

	.contact-intro p {
		max-width: 490px;
		margin-bottom: 56px;
	}

	.csipage .contact-intro p {
		margin-bottom: 72px;
	}

	.contact-formwrap {
		padding-top: 14px;
	}

	label {
		margin-bottom: 3px;
		font-size: 1.6rem; 
	}

	.formrow {
		margin-bottom: 20px;
	}

	input[type="text"], 
	input[type="tel"], 
	input[type="email"],
	select {
	    font-size: 1.6rem; line-height: 52px; 
	    height: 54px; 
	    padding: 0 16px;
	}

	#btn-submit {
		height: 64px; line-height: 64px;
		font-size: 2rem;
	}

	.help-block {
		padding-top: 4px; font-size: 1.4rem;
	}

}

/*-----------------------------------*\
  TESTIMONIALS
\*-----------------------------------*/

#testimonials {
	margin-bottom: 56px;
	text-align: center;
}

.item-img {
	margin-bottom: 20px;
}

.item-img img {
	border-radius: 20px;
}

.quote {
	font-size: 1.6rem;
	margin-bottom: 20px;
	line-height: 1.35;
}

.quotesrc {
	text-transform: uppercase;
	font-size: 1.6rem; font-weight: 700;
	letter-spacing: 0.07em; color: #D41736;
	margin-bottom: 5px;
}

.quoteinfo {
	text-transform: uppercase;
	font-size: 1.2rem;
	letter-spacing: 0.11em;
}

.owl-carousel button.owl-dot {
	transform: none; margin: 20px 0 0;
}

.owl-theme .owl-dots .owl-dot span {
	background: none; border: 1px solid #00B5AD;
	width: 14px; height: 14px;
}

.owl-theme .owl-dots .owl-dot.active span, 
.owl-theme .owl-dots .owl-dot:hover span {
	background: #00B5AD;
}

#altquotes {
	margin-bottom: 56px;
	text-align: center;
}

.altquote {
	margin-bottom: 20px;
}

.person {
	color: #D41736; text-transform: uppercase;
	font-size: 1.4rem; font-weight: 700;
	letter-spacing: 0.05em;
}

.aqsrc {
	text-transform: uppercase;
	font-size: 1.2rem;
	letter-spacing: 0.11em;
}

.aqsrc br {
	display: none;
}

@media only screen and (min-width: 375px) {

	.quote {
		font-size: 1.8rem;
	}

}

@media only screen and (min-width: 768px) {

	#testimonials {
		margin-bottom: 72px;
	}

	.item {
		display: flex; align-items: center;
		justify-content: space-between;
	}

	.item-img {
		width: 50%;
		margin: 0;
	}

	.item-copy {
		width: 48%;
	}

	.owl-theme .owl-nav.disabled + .owl-dots {
		margin-top: 30px;
	}

	.csipage .owl-theme .owl-nav.disabled + .owl-dots {
		margin-top: 10px;
	}

	#altquotes {
		margin-bottom: 72px;
	}

	.altquote {
		font-size: 1.6rem;
		max-width: 708px;
		margin: 0 auto 20px;
	}

	.aqsrc br {
		display: block;
	}

}

@media only screen and (min-width: 1024px) {

	#testimonials {
		margin-bottom: 96px;
	}

	.item-img img {
		border-radius: 40px;
	}

	.quote {
		font-size: 2rem;
		margin-bottom: 30px;
	}

	.quotesrc {
		font-size: 2.2rem; 
		margin-bottom: 5px;
	}

	.quoteinfo {
		font-size: 1.6rem;
	}

	#altquotes {
		margin-bottom: 96px;
	}

	.altquote {
		font-size: 1.8rem;
		max-width: 800px;
		margin: 0 auto 30px;
		line-height: 1.6;
	}

	.person {
		font-size: 1.6rem;
	}

	.aqsrc {
		font-size: 1.4rem;
	}

}

@media only screen and (min-width: 1280px) {

	#testimonials {
		margin-bottom: 150px;
	}

	.item-img img {
		border-radius: 70px;
	}

	.quote {
		font-size: 3rem;
		margin-bottom: 40px;
	}

	.quotesrc {
		font-size: 2.4rem; 
		margin-bottom: 6px;
	}

	.owl-theme .owl-nav.disabled + .owl-dots {
		margin-top: 64px;
	}

	#altquotes {
		margin-bottom: 150px;
	}

	.altquote {
		font-size: 2.2rem;
		max-width: 900px;
		margin: 0 auto 30px;
		line-height: 1.6;
	}

	.person {
		margin-bottom: 4px;
	}

	.aqsrc {
		font-size: 1.4rem;
	}

}

/*-----------------------------------*\
  ABOUT
\*-----------------------------------*/

#about {
	margin-bottom: 56px;
	text-align: center;
}

.star {
	display: inline-block;
	margin-bottom: 10px;
	width: 36px;
}

.about-intro {
	margin-bottom: 40px;
}

.ag-item {
	margin-bottom: 40px;
}

.ag-item img {
	margin-bottom: 20px;
}

h4 {
	font-size: 2rem; font-weight: 700;
	line-height: 1.2; color: #D41736;
	margin-bottom: 10px;
}

@media only screen and (min-width: 768px) {

	#about {
		margin-bottom: 72px;
	}

	.star {
		margin-bottom: 20px;
	}

	h4 {
		font-size: 2.2rem; 
		margin-bottom: 16px;
	}

	.about-grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-column-gap: 20px;
	}

}

@media only screen and (min-width: 1024px) {

	#about {
		margin-bottom: 96px;
		font-size: 1.6rem;
	}

	.about-intro {
		margin-bottom: 70px;
		font-size: 1.8rem;
	}

	.about-intro p {
		max-width: 820px;
		margin: 0 auto;
	}

	.star {
		margin-bottom: 30px;
		width: 56px;
	}

	h4 {
		font-size: 2.6rem; 
		margin-bottom: 20px;
	}

	.about-grid {
		grid-column-gap: 30px;
	}

	.ag-item {
		margin-bottom: 64px;
	}

	.ag-item img {
		margin-bottom: 30px;
	}

	.ag-item p {
		letter-spacing: -0.025em;
		line-height: 1.75;
	}

}

@media only screen and (min-width: 1280px) {

	#about {
		margin-bottom: 150px;
	}

	#about h2 {
		margin-bottom: 30px;
	}

	.about-grid {
		grid-column-gap: 40px;
	}

	.ag-item img {
		margin-bottom: 48px;
	}

	h4 {
		font-size: 3.2rem; 
	}

}

/*-----------------------------------*\
  SPLITS
\*-----------------------------------*/

#splitsec {
	margin-bottom: 60px;
}

.splitrow {
	margin-bottom: 30px;
}

.splitimg {
	margin-bottom: 20px;
}

.splitcopy {
	line-height: 1.75;
}

.splitrow:last-of-type {
	margin-bottom: 0;
}

@media only screen and (min-width: 768px) {

	#splitsec {
		margin-bottom: 96px;
	}

	.splitrow {
		display: flex; align-items: center;
		justify-content: space-between;
		margin-bottom: 40px;
	}

	.splitimg {
		margin-bottom: 0;
		width: 48.3%;
	}

	.splitcopy {
		width: 42%;
	}

	.splitrow:nth-of-type(odd) .splitimg {
		order: 2;
	}

	.splitrow:nth-of-type(odd) .splitcopy {
		order: 1;
	}

	.altpage .splitrow:nth-of-type(odd) .splitimg {
		order: 1;
	}

	.altpage .splitrow:nth-of-type(odd) .splitcopy {
		order: 2;
	}

	.altpage .splitrow:nth-of-type(even) .splitimg {
		order: 2;
	}

	.altpage .splitrow:nth-of-type(even) .splitcopy {
		order: 1;
	}

	#splitsec h4 {
		font-size: 2.4rem; 
		margin-bottom: 16px;
	}

}

@media only screen and (min-width: 1024px) {

	#splitsec {
		margin-bottom: 120px;
	}

	.splitcopy {
		width: 40%;
	}

	#splitsec h4 {
		font-size: 3rem; 
		margin-bottom: 20px;
	}

	.splitrow {
		margin-bottom: 72px;
	}

}

@media only screen and (min-width: 1280px) {

	#splitsec {
		font-size: 1.6rem;
		margin-bottom: 144px;
	}

	.altpage #splitsec {
		margin-bottom: 157px;
	}

	.splitrow {
		margin-bottom: 100px;
	}

	#splitsec h4 {
		font-size: 4rem; 
		margin-bottom: 30px;
	}

}

/*-----------------------------------*\
  FUTURE
\*-----------------------------------*/

#future {
	margin-bottom: 56px;
}

.future-inner {
	background: #000;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}

.fi-copy {
	padding: 0 20px; color: #fff;
	position: relative; top: -36px;
}

#future h2 {
	font-size: 3rem;
	line-height: 1.2; color: #fff;
	margin-bottom: 12px;
}

#future h2 span {
	color: #D41736;
}

.fi-copy p {
	margin-bottom: 10px;
}

.fi-copy p br {
	display: none;
}

.event-type {
	font-weight: 700;
}

.eventlist {
	font-size: 1.3rem;
	margin: 0 0 12px 16px;
}

@media only screen and (min-width: 768px) {

	#future {
		margin-bottom: 72px;
	}

	.fi-copy {
		padding: 0; position: absolute; 
		top: 50%; left: 30px;
		transform: translateY(-50%);
	}

	#future h2 {
		font-size: 3.6rem;
		line-height: 1; 
		margin-bottom: 10px;
	}

	.fi-copy p {
		margin-bottom: 12px;
		font-size: 1.4rem;
	}

	.fi-copy p br {
		display: block;
	}

}

@media only screen and (min-width: 1024px) {

	#future {
		margin-bottom: 96px;
	}

	.fi-copy {
		left: 48px;
	}

	#future h2 {
		font-size: 4.8rem;
		margin-bottom: 20px;
	}

	.fi-copy p {
		margin-bottom: 20px;
		font-size: 1.6rem;
	}

	.event-type {
		margin-bottom: 5px;
	}

	.eventlist {
		font-size: 1.4rem;
		margin: 0 0 20px 18px;
	}

	.eventlist li {
		margin-bottom: 3px;
	}

}

@media only screen and (min-width: 1280px) {

	#future {
		margin-bottom: 150px;
	}

	.future-inner {
		border-radius: 70px;
	}

	.fi-copy {
		left: 72px;
	}

	#future h2 {
		font-size: 8.4rem;
		margin-bottom: 20px;
	}

	.fi-copy p {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}

	.eventlist {
		font-size: 1.6rem;
		margin: 0 0 24px 18px;
	}

	.eventlist li {
		margin-bottom: 5px;
	}

}

/*-----------------------------------*\
  APPLY
\*-----------------------------------*/

#apply {
	margin-bottom: 72px;
}

#apply br {
	display: none;
}

.apply-inner {
	background: #D41736; color: #fff;
	text-align: center; padding: 36px 20px;
	border-radius: 20px;
}

.apply-inner h3 {
	font-size: 2.4rem; font-weight: 700;
	margin-bottom: 12px; line-height: 1.2;
}

.apply-inner p {
	margin-bottom: 20px;
}

#apply .btn.btn-lined:hover {
	background: #fff; color: #D41736;
}

.questions {
	margin-top: 20px;
}

.questions a {
	color: #fff; font-weight: 600;
}

@media only screen and (min-width: 768px) {

	#apply {
		margin-bottom: 96px;
	}

	#apply br {
		display: block;
	}

}

@media only screen and (min-width: 1024px) {

	#apply {
		margin-bottom: 120px;
		font-size: 2rem;
	}

	.apply-inner {
		padding: 0;
		display: flex; align-items: center;
		justify-content: center; height: 434px;
		background: #ad132a url(../images/triangles.png) no-repeat center top;
	}

	.apply-inner h3 {
		font-size: 4rem; 
		margin-bottom: 16px;
	}

	.apply-inner p {
		margin-bottom: 36px;
	}

	.questions {
		margin-top: 36px;
	}

}

@media only screen and (min-width: 1280px) {

	.apply-inner {
		border-radius: 70px;
	}

}

/*-----------------------------------*\
  FOOTER
\*-----------------------------------*/

footer {
	padding-bottom: 30px;
}

.footer-social {
	text-align: center;
	margin-bottom: 64px;
}

.fs-intro {
	font-size: 1.6rem;
	margin-bottom: 14px;
}

.social {
	display: inline-block;
	vertical-align: top;
	margin: 0 10px;
	width: 30px;
}

.footer-legal {
	text-align: center;
}

.footerlogo {
	width: 200px;
	margin: 0 auto 16px;
}

.fl-links a, .copyright {
	font-weight: 700; font-size: 1.2rem;
	color: #9E9E9E;
}

.fl-links a:hover {
	text-decoration: underline;
}

.disclaimer {
	text-align: left; font-size: 1.3rem;
	margin-top: 40px; line-height: 1.6875;
	max-width: 840px; margin-left: auto;
	margin-right: auto;
}

.disclaimer a {
	color: #393939; text-decoration: underline;
}

@media only screen and (min-width: 1024px) {

	footer {
		padding-bottom: 48px;
	}

	.footer-social {
		margin-bottom: 160px;
	}

	.fs-intro {
		font-size: 2rem;
		margin-bottom: 24px;
	}

	.social {
		margin: 0 18px;
		width: 48px;
	}

	.footerlogo {
		width: 438px;
		margin: 0 auto 30px;
	}

	.fl-links a, .copyright {
		font-size: 1.4rem;
	}

	.disclaimer {
		font-size: 1.6rem;
		margin-top: 92px;
	}

}

/*-----------------------------------*\
  THANKS
\*-----------------------------------*/

#thanks {
    padding: 60px 20px;
    text-align: center;
}

.ty-top {
	margin-bottom: 30px;
}

.ty-intro {
	font-size: 3.2rem; font-weight: 700;
	color: #D41736;
}

.ty-subintro {
	font-size: 1.8rem;
}

#thanks p {
	max-width: 1200px;
	margin: 0 auto 30px;
}

.union {
	margin-bottom: 60px;
}

@media only screen and (min-width: 1024px) {

	#thanks {
	    padding: 160px 20px 115px;
	}

	.ty-top {
		margin-bottom: 40px;
	}

	.ty-intro {
		font-size: 6rem;
	}

	.ty-subintro {
		font-size: 3.2rem;
	}

	#thanks p {
		font-size: 2rem;
		margin: 0 auto 56px;
	}

}

@media only screen and (min-width: 1280px) {

	#thanks p {
		font-size: 2.7rem;
	}

}