/* CSS Reset
------------------------------------------------------------------------------*/
html, body, br, hr, div, span, a, object, iframe, ul, ol, dl, li, dt, dd, h1, h2, h3, h4, h5, h6, p, blockquote, q, address,
small, big, cite, dfn, ins, del, i, em, b, strong, sup, sub, strike, pre, code, samp, kbd, var, tt, form, fieldset, legend, label,
input, textarea, option, .nobox {background: transparent; border: 0; font-size: 100%; margin: 0; outline: 0; padding: 0; vertical-align: baseline;}
div, section, article, main, aside, header, footer, dialog, figure, figcaption, hgroup {display: block;}
html {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
*, *:before, *:after {-webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit;}
blockquote, q {quotes: none;}
br {height: 0;}
ul, ol, dl {list-style: none;}
table {border-spacing: 0; border-collapse: collapse;}
td {text-align: left; font-weight: normal;}
img {border: 0; border-style: none;}
fieldset {border: 1px solid transparent;}
input {font-family: 'Source Sans Pro', sans-serif;}
input[type=submit] {letter-spacing: .045em; font-family: 'Source Sans Pro', sans-serif; cursor: pointer; -webkit-appearance: none; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
input[type=text], input[type=email], textarea {letter-spacing: .045em; font-family: 'Source Sans Pro', sans-serif; font-weight: 400; border-radius: 0; -webkit-appearance: none;}
span {font-family: 'Source Sans Pro', sans-serif;}
button {font-family: 'Source Sans Pro', sans-serif; background: none; border: none; padding: 0; cursor: pointer; outline: inherit}
select {-webkit-appearance: none; -webkit-border-radius: 0px;}
a {text-decoration: none; cursor: pointer; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
a:hover {text-decoration: none;}
a:focus, button:focus, input[type=submit]:focus {text-decoration: underline}


/* Helper Classes
------------------------------------------------------------------------------*/
.clear {clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0}
.flex {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.flex-align-center {-ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.flex-justify-center {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
.flex-justify-end {-ms-flex-justify-content: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end}
.flex-1 {-webkit-flex: 1; -ms-flex: 1; flex: 1}
.flex-2 {-webkit-flex: 2; -ms-flex: 2; flex: 2}
.flex-flow-col {-webkit-flex-flow: column; flex-flow: column}
.icon {display: block; text-indent: -9999px; background-size: 100%; background-repeat: no-repeat; text-indent: -9999px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.icon:hover {transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all;}
.full-bg {background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;}
.centered {text-align: center}
.flex-align-bottom {-ms-flex-align-items: flex-end; -webkit-align-items: flex-end; align-items: flex-end}
.flex-align-top {-ms-flex-align-items: flex-start; -webkit-align-items: flex-start; align-items: flex-start}
.visually-hidden {border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
.sixteen-nine {display: block; content: ''; width: 100%; padding-top: 56.25%}

/* margin & padding */
.mb-15 {margin-bottom: 15px}
.mb-30 {margin-bottom: 30px}
.mt-30 {margin-top: 30px}
.mb-60 {margin-bottom: 60px}
@media screen and (max-width: 600px) {
  .mb-60 {margin-bottom: 30px}
}


/* Typography
------------------------------------------------------------------------------*/
.title-lrg-1 {color: #fff; font-size: 6vw; line-height: 6vw; font-weight: 500; text-transform: uppercase; font-family: 'Oswald', sans-serif; text-shadow: 0px 0px 29px rgba(0, 0, 0, 0.8);}
.title-lrg-2 {color: #192d4d; font-size: 4.375rem; line-height: 5rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 500;}
.title-lrg-3 {color: #192d4d; font-size: 3.25rem; line-height: 3.4375rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 500;}
.title-lrg-4 {color: #192d4d; font-size: 2.5rem; line-height: 2.75rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 500;}
.title-lrg-5 {color: #192d4d; font-size: 3rem; line-height: 3.15rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 500;}
.title-med-1 {color: #666560; font-size: 1.625rem; line-height: 2.0625rem; font-weight: 400}
@media screen and (max-width: 480px) {

}


/* Structure
------------------------------------------------------------------------------*/
/* general */
body,html {width: 100%; min-height: 100%; font-size: 1em;}
body {font-size: 10px; font-family: 'Roboto', sans-serif; background: #f8f5f0 url(bg-mid.jpg) no-repeat center bottom; background-size: cover;}
#wrapper {text-align: center; -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: 1 0 auto;}
.container {position: relative; margin: 0 auto; width: 90%; max-width: 1140px;}
main {padding: 40px 0}
@media screen and (max-width: 1200px){
  html, body {font-size: .9em}
}
@media screen and (max-width: 960px){
  html, body {font-size: .8em}
}

/* header */
header {height: 45px; background-color: #c7102d;}
.is-header-desktop header .container {height: 100%}
.is-header-desktop header nav {width: 100%;}
.is-header-desktop header nav ul {width: 100%; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center; -ms-flex-align-items: center; -webkit-align-items: center; align-items: center}
.is-header-desktop header nav ul li {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center;-webkit-flex: 1; -ms-flex: 1; flex: 1; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 16px; letter-spacing: .3em; text-transform: uppercase;}
.is-header-desktop header nav ul li a {color: #fff; font-weight: 700;}
.is-header-desktop header #mobile-menu-trigger {display: none}
@media screen and (max-width: 960px) {
  .is-header-desktop header nav ul li {letter-spacing: .1em;}
}
@media screen and (max-width: 768px) {
  .is-header-desktop header nav ul li {letter-spacing: 0;}
}
@media screen and (max-width: 500px) {
  header {position: absolute; top: 0; right: 0; width: 50px; height: 50px}
  header #mobile-menu-trigger {display: block !important}
  header .container {align-items: center;} 
 header #mobile-menu-trigger {position:absolute;top:12px;left:12px;touch-action: manipulation;user-select: none;white-space: nowrap;z-index: 9999;display: block;width: 27px;height: 25px;transform: rotate(0deg);transition: .5s ease-in-out;cursor: pointer;}
 header #mobile-menu-trigger span {display: block;position: absolute;height: 4px;width: 100%;background-color: white;border-radius: 0;opacity: 1;left: 0;transform: rotate(0deg);transition: .25s ease-in-out;}
 header #mobile-menu-trigger span:nth-child(1) {top: 0px;}
 header #mobile-menu-trigger span:nth-child(2),#mobile-menu-trigger span:nth-child(3) {top: 10px;}
 header #mobile-menu-trigger span:nth-child(4) {top: 20px;}
 header #mobile-menu-trigger.is-open span {background-color: white;}
 header #mobile-menu-trigger.is-open span:nth-child(1) {top: 18px;width: 0%;left: 50%;}
 header #mobile-menu-trigger.is-open span:nth-child(2) {transform: rotate(45deg);}
 header #mobile-menu-trigger.is-open span:nth-child(3) {transform: rotate(-45deg);}
 header #mobile-menu-trigger.is-open span:nth-child(4) {top: 18px;width: 0%;left: 50%;}
 header nav ul li {color: white;position: relative;float: inherit;text-align: left;list-style: none;margin-bottom: 10px;}
 header nav ul li a {padding: 10px 5%;display: block;border-width: 0;color: white;font-size: 25px;font-weight: 600;text-transform: uppercase;letter-spacing: .125em;}
 header nav {position: fixed;top: 0;left: 100%;bottom: 0;right: -100%;z-index: 1;width: 100%;height: 100vh;overflow: scroll;padding-top: 50px;background-color: #c7102d;transition: all 500ms ease;}
 header nav:before {display: block;content: '';width: 100%;height: 50px;background-color: #c7102d;position: fixed;top: 0;left: 100%;right: -100%;z-index: 2;transition: all 500ms ease;}
 header.is-mobile-open nav {left: 0;right: 0;}
 header.is-mobile-open nav:before {left: 0;right: 0;}
 .overflow-hidden {overflow: hidden;height: 100%;}
}  

/* banner */
.banner {height: 631px; height: 35vw; background: url(/images/site/bg-header-small.png) no-repeat center top; background-size: cover;}
.banner .container {height: 100%; padding-bottom: 5vw}
.banner .headline {height: 100%; text-align: center; position: relative}
.banner .logo {margin-bottom: 10px; display: inline-block; background-image: url(logo_maga.png); width: 382px; height: 168px}
@media screen and (min-width: 1600px){
  .banner .title-lrg-1 {font-size: 5vw; line-height: 5vw}
}
@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi) {
  .banner .logo {background-image: url(logo_maga@2x.png)}
}
@media screen and (max-width: 1200px) {
  .banner .logo {width: 200px; height: 85px}
}
@media screen and (max-width: 500px) {
  .banner .container {padding-bottom: 15vw}
  .banner {height: 460px; height: 111vw; background: url(bg-header-mobile.png) no-repeat center top; background-size: cover;}
  .banner .headline {width: 100%; -ms-flex-align-items: flex-end; -webkit-align-items: flex-end; align-items: flex-end}
  .banner .title-lrg-1 {font-size: 3rem; font-size: 12vw; line-height: 12vw}
}

/* footer */
footer #footer-top {color: #fff; height: 525px; height: 38vw; background: url(bg-footer.png) no-repeat center bottom; background-size: cover;}
footer #footer-top .container {height: 100%; padding-top: 18vw; padding-bottom: 25px; max-width: 950px}
footer #footer-top h4 {font-family: 'Oswald', sans-serif; font-size: 4.7vw; line-height: 4.7vw; text-transform: uppercase; font-weight: 500}
footer #footer-top p {font-size: 1.8vw; margin-top: 10px}
footer #footer-top .disclaimer {font-size: 14px; display: inline-block; padding: 5px 10px; border: 1px solid #ccc;}
footer #footer-top .inner {height: 100%}
footer #footer-bottom {padding: 15px 0; background-color: #192d4d;}
footer #footer-bottom .footer-app span {font-weight: 800;text-transform: uppercase;margin-left: 10px;font-size:11px}
footer #footer-bottom .footer-app span span {font-size: 18px;display:block; margin-left: 0;}
footer #footer-bottom a {margin: 0 10px; color: #fff; font-size: 11px}
footer .social {padding: 0 30px}
footer #footer-bottom .social a {margin: 0 5px;}
footer .social .icon.facebook {width: 36px; height: 36px; background-image: url(/images/site/icon_sm_circle_facebook.png);}
footer .social .icon.twitter {width: 36px; height: 36px; background-image: url(/images/site/icon_sm_circle_twitter.png);}
footer .social .icon.instagram {width: 36px; height: 36px; background-image: url(/images/site/icon_sm_circle_insta.png);}
footer .social .icon.youtube {width: 36px; height: 36px; background-image: url(/images/site/icon_sm_circle_youtube.png);}
@media screen and (max-width: 1200px) {
  footer #footer-top .inner {padding-left: 12vw}
  footer #footer-top .disclaimer {font-size: 1.25vw; line-height: 1.25vw}
}
@media screen and (max-width: 768px) {
  footer #footer-bottom .links {padding-top: 15px;width: 100%;-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
}
@media screen and (max-width: 500px) {
  footer #footer-top .inner {height: auto; padding-left: 0; padding-top: 20vw}
  footer #footer-top {color: #fff; height: 517px; height: 125vw; background: url(bg-footer-mobile.png) no-repeat center bottom; background-size: cover;}
  footer #footer-top .container {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center; -ms-flex-align-items: flex-start; -webkit-align-items: flex-start; align-items: flex-start; width: 100%; text-align: center; padding-top: 0; padding: 0;}
  footer #footer-top h4 {font-size: 7vw; line-height: 8vw}
  footer #footer-top p {display: block; text-align: center; font-size: 4vw; line-height: 4vw; margin-top: 5px; margin-bottom: 10px}
  footer #footer-top .disclaimer {font-size: 3vw; line-height: 3vw}
}
@media screen and (max-width: 375px) {
  footer #footer-bottom .social {padding-top:15px;width: 100%;-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center;}
  footer #footer-bottom .footer-app {width: 100%;-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center;}
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.25),only screen and (min-device-pixel-ratio: 1.25),only screen and (min-resolution: 1.25dppx) {
  footer .social .icon.facebook {background-image: url(/images/site/icon_sm_circle_facebook@2x.png);}
  footer .social .icon.twitter {background-image: url(/images/site/icon_sm_circle_twitter@2x.png);}
  footer .social .icon.instagram {background-image: url(/images/site/icon_sm_circle_insta@2x.png);}
  footer .social .icon.youtube {background-image: url(/images/site/icon_sm_circle_youtube@2x.png);}
}

/* Pages
------------------------------------------------------------------------------*/
/* home */
.home .intro h2 {width: 55%; margin-left: auto; margin-right: auto; margin-bottom: 28px}
.home .intro .embed-container-outer {max-width: 800px; margin: auto}
@media screen and (max-width: 1200px) {
  .home .intro h2 {width: 75%}
}
@media screen and (max-width: 768px) {
  .home .intro h2 {font-size: 3.7vw; line-height: 4.7vw; width: 100%}
  .home .intro h3 {font-size: 6.19vw; line-height: 6.19vw}
}

/* form page */
.form-page .role p {color: #666560; font-size: 1.6rem; line-height: 2.15rem}
.form-page .role p strong {color: #c6102c}
.form-page .role a {margin-right: 15px;}
.form-page .role a img {display: block; width: 100px; height: 100px;}
.form-page .form {width: 65%}
.form-page .form .dform_element {width: 100%; margin-bottom: 14px}
.form-page .form .dform_element input[type=text], .form-page .form .dform_element input[type=email] {border: 1px solid transparent; -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); color: #666560; font-size: 1.625rem; width: 100%; background-color: #fff; height: 70px; line-height: 70px; padding: 0 20px}
.form-page .form .dform_element input[type=text]:focus, .form-page .form .dform_element input[type=email]:focus {border-color: #c7102d}
.form-page .form .dform_element.dform_columns_2 {margin-bottom: 0}
.form-page .form .dform_element.dform_columns_2 .dfcolumns {display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap}
.form-page .form .dform_element.dform_columns_2 .dfcolumns .column {width: calc(50% - 7px) !important}
.form-page .form .dform_element.dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 14px}
.form-page .form .dform_select .dform_container {line-height: 70px; height: 70px; position: relative; display: block; border: 1px solid transparent; width: 100%; background-color: #fff; border: none}
.form-page .form .dform_select .dform_container select {height: 70px; color: #666560; font-size: 1.625rem; width: 100%;margin: 0;outline: none;padding: 0 20px;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.form-page .form .dform_select .dform_container::after {content: "";position: absolute;top: 50%;right: 20px;margin-top: -3px;z-index: 2;pointer-events: none;width: 0; height: 0; border-left: 7px solid transparent;border-right: 7px solid transparent;border-top: 7px solid #c7102d;}
.form-page .form ::-webkit-input-placeholder {color: #666560}
.form-page .form ::-moz-placeholder {color: #666560}
.form-page .form :-ms-input-placeholder {color: #666560}
.form-page .form :-moz-placeholder {color: #666560}
.form-page .form .dform_element input[type=submit] {height: 70px; display: block; font-size: 1.875rem; line-height: 1.875rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; color: #fff; padding: 15px; text-align: center; background-color: #c7102d; width: 100%; max-width: 290px}
.form-page .form .dform_element input[type=submit]:hover, .form-page .form .dform_element input[type=submit]:focus {background-color: #192d4d}
.form-page .form .video-thumbs {margin-top: 30px;}
.form-page .form .video-thumbs .thumb {display: block; position: relative; width: calc(33.333% - 8px); margin-bottom: 12px;}
.form-page .form .video-thumbs .thumb svg {z-index: 2; display:  block; width: 40px; height: 40px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.form-page .form .video-thumbs .thumb svg .st0 {transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.form-page .form .video-thumbs .thumb:hover svg .st0, .form-page .form .video-thumbs .thumb:focus svg .st0 {fill: #c7102d}
.form-page .form .video-thumbs .thumb .image {position: relative;}
.form-page .form .video-thumbs .thumb .image:before {position: absolute; top: 0; left: 0; display: block; content: ''; width: 100%; height: 100%; background-color: rgba(25,45,77,.5);}
.form-page .form .video-thumbs .thumb:nth-child(3n + 2) {margin-left: 12px; margin-right: 12px;}
.form-page .form .video-thumbs .thumb .title {background-color: #192d4d; color: #fff; padding: 5px 10px 6px 10px; font-size: 14px;}
.featherlight-iframe .featherlight-content {width: 70%; border-bottom: 0 !important; margin: 0 !important; padding: 39.375% 0 0 0 !important}
.featherlight .featherlight-inner {position: absolute; top: 0; left: 0; width: 100%; height: 100%}
.form-page .form button {margin-bottom: 30px; display: block; font-size: 1.25rem; line-height: 1.25rem; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; color: #fff; padding: 15px 15px 12px 15px; text-align: center; background-color: #c7102d}
.form-page .form button:hover, .form-page .form button:focus {background-color: #192d4d}
.form-page .video-thumbs.video-thumbs-full {width: 100%}
.form-page .video-thumbs.video-thumbs-full .thumb {display: block; position: relative; width: calc(50% - 11px); margin-bottom: 45px;}
.form-page .video-thumbs.video-thumbs-full .thumb svg {z-index: 2; display:  block; width: 60px; height: 60px; position: absolute; top: 50%; left: 50%; margin-top: -30px; margin-left: -30px; transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.form-page .video-thumbs.video-thumbs-full .thumb svg .st0 {transition: 300ms ease all; -webkit-transition: 300ms ease all; -o-transition: 300ms ease all}
.form-page .video-thumbs.video-thumbs-full .thumb:hover svg .st0, .form-page .video-thumbs.video-thumbs-full .thumb:focus svg .st0 {fill: #c7102d}
.form-page .video-thumbs.video-thumbs-full .thumb .image {display: block; position: relative;}
.form-page .video-thumbs.video-thumbs-full .thumb .image:before {position: absolute; top: 0; left: 0; display: block; content: ''; width: 100%; height: 100%; background-color: rgba(25,45,77,.5);}
.form-page .video-thumbs.video-thumbs-full .thumb:nth-child(odd) {margin-right: 22px;}
.form-page .video-thumbs.video-thumbs-full .thumb .title {display: block; margin-bottom: 15px; color: #192d4d; font-size: 2.5rem; line-height: 2.75rem; text-transform: uppercase; font-family: 'Oswald', sans-serif; font-weight: 500;}
.form-page .video-thumbs.video-thumbs-full .thumb .text {padding-top: 15px;}
.form-page .video-thumbs.video-thumbs-full .thumb .text p {color: #666560; font-size: 1.25rem; line-height: 1.75rem}
.form-page .video-thumbs.video-thumbs-full .thumb .text p b {color: #c6102c}
.form-page .video-thumbs.video-thumbs-full .thumb .text .step[aria-hidden="true"] {display: none}
.form-page .video-thumbs.video-thumbs-full .thumb button {margin-right: 15px; margin-top: 15px; display: inline-block; font-size: 1rem; line-height: 1rem; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; color: #fff; padding: 15px 15px 12px 15px; text-align: center; background-color: #c7102d}
.form-page .video-thumbs.video-thumbs-full .thumb button:hover, .form-page .form button:focus {background-color: #192d4d}
.form-page .video-thumbs.video-thumbs-full .thumb button.disabled, .form-page .video-thumbs.video-thumbs-full .thumb button.disabled:hover, .form-page .video-thumbs.video-thumbs-full .thumb button.disabled:focus {pointer-events: none; background-color: grey;}
@supports (-webkit-appearance: none) or (appearance: none) or ((-moz-appearance: none) and (mask-type: alpha)) {
  .form-page .form .dform_select .dform_container::after {display: block;}
  .form-page .form .dform_select .dform_container select {padding-right: 2em; background: none;border: 1px solid transparent; -webkit-appearance: none;-moz-appearance: none;appearance: none;}
  .form-page .form .dform_select .dform_container select:focus {border-color: #9d5116;}
}
.form-page aside {width: 35%; padding-left: 5%}
.form-page aside p {font-size: 16px; line-height: 24px; color: #666560}
.form-page aside ol li {font-size: 1.375rem; line-height: 1.75rem; color: #666560}
.form-page aside ol li strong {color: #c7102d}
.form-page aside ol li a {color: #c7102d}
.form-page aside ol li a:hover, .form-page aside ol li a:focus {color: #192d4d}
.form-page aside ol > li {position: relative; padding-left: 55px; margin-bottom: 25px}
.form-page aside ol > li span {position: absolute; top: 5px; left: 0; display: block; width: 40px; height: 40px; color: #fff; font-size: 30px; line-height: 40px; text-align: center; font-weight: 700; background-color: #c7102d; border-radius: 40px}
.form-page aside ol li ul li {margin-top: 5px}
.form-page aside ol li ul li a {position: relative; color: #666560; padding-left: 35px}
.form-page aside ol li ul li a:before {position: absolute; top: 4px; left: 0; display: block; content: ''; width: 23px; height: 23px; background-size: 100%; background-repeat: no-repeat;}
.form-page aside ol li ul li.facebook a:before {background-image: url(facebook.svg)}
.form-page aside ol li ul li.twitter a:before {background-image: url(twitter.svg)}
.form-page aside ol li ul li.instagram a:before {background-image: url(instagram.svg)}
.form-page aside ol li ul li.snapchat a:before {background-image: url(snapchat.svg)}
.form-page aside ol li ul li a:hover, .form-page aside ol li ul li a:focus {color: #c7102d}
.form-page aside .btn {display: block; font-size: 16px; line-height: 16px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; color: #fff; padding: 15px; text-align: center; background-color: #c7102d}

@media screen and (max-width: 1030px) {
  .form-page .video-thumbs.video-thumbs-full .thumb {margin-bottom: 30px;}
  .form-page .video-thumbs.video-thumbs-full .thumb .title {font-size: 3.4vw; line-height: 3.6vw; margin-bottom: 10px;}
} 
@media screen and (max-width: 960px) {
  .form-page .form {width: 100%; margin-bottom: 30px}
  .form-page aside {padding-left: 0; width: 100%}
  .form-page aside ol > li {padding-left: 35px}
  .form-page aside ol > li span {top: -1px; width: 25px; height: 25px; font-size: 15px; line-height: 25px; border-radius: 25px}
  .form-page aside ol li ul li a {padding-left: 28px}
  .form-page aside ol li ul li a:before {top: 3px; width: 18px; height: 18px}
}
@media screen and (max-width: 768px) {
  .form-page .video-thumbs.video-thumbs-full .thumb {width: calc(50% - 5px)}
  .form-page .video-thumbs.video-thumbs-full .thumb:nth-child(odd) {margin-right: 10px;}
  .form-page .video-thumbs.video-thumbs-full .thumb svg {width: 40px; height: 40px; margin-top: -20px; margin-left: -20px;}
} 
@media screen and (max-width: 630px) {
  .form-page .role.flex {width: 100%; display: block; text-align: center;}
  .form-page .role.flex a {display: inline-block; margin-bottom: 15px;}
  .form-page .role.flex a img {display: inline-block;}
}  
@media screen and (max-width: 500px) {
  .form-page .title-lrg-2 {font-size: 9vw; line-height: 10vw}
  .form-page .form .dform_element.dform_columns_2 .dfcolumns .column {width: 100% !important}
  .form-page .form .dform_element.dform_columns_2 .dfcolumns .column[data-number="1"] {margin-right: 0}
  .form-page .form .dform_element input[type=submit] {max-width: 100%}
  .form-page .form .dform_select .dform_container {height: 60px; line-height: 60px}
  .form-page .form .dform_element input[type=text], .form-page .form .dform_element input[type=email] {height: 60px; line-height: 60px; font-size: 18px}
  .form-page .form .dform_select .dform_container select {height: 60px; font-size: 18px}
  .featherlight-iframe .featherlight-content {width: 90%; padding: 50.625% 0 0 0 !important}
  .form-page .form .video-thumbs .thumb {position: relative; width: calc(50% - 3px); margin-bottom: 6px;}
  .form-page .form .video-thumbs .thumb:after {width: 40px; height: 40px;}
  .form-page .form .video-thumbs .thumb:nth-child(3n + 2) {margin-left: 0; margin-right: 0;}
  .form-page .form .video-thumbs .thumb:nth-child(odd) {margin-right: 6px;}
  .form-page .video-thumbs.video-thumbs-full .thumb {width: 100%}
  .form-page .video-thumbs.video-thumbs-full .thumb:nth-child(odd) {margin-right: 0;}
  .form-page .video-thumbs.video-thumbs-full .thumb .title {font-size: 7vw; line-height: 7.25vw}
  .form-page .video-thumbs.video-thumbs-full .thumb button {margin-right: 0; display: inline-block; width: calc(50% - 7px)}
  .form-page .video-thumbs.video-thumbs-full .thumb button.next-step {margin-right: 14px}
}


/* Modules
------------------------------------------------------------------------------*/
/* callouts */
.callouts .callout {position: relative; margin-bottom: 50px; width: calc(33.333% - 40px)}
.callouts .callout .btn {height: 60px; display: block; font-size: 1.875rem; line-height: 1.875rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; color: #fff; padding: 15px; text-align: center; background-color: #c7102d}
.callouts .callout .btn:hover, .callouts .callout .btn:focus {background-color: #192d4d}
.callouts .callout .box {width: 100%; background-color: #fff; -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1);}
.callouts .callout.long .box .inner {padding: 25px}
.callouts .callout.normal .box .inner {padding: 0 25px 25px 25px}
.callouts .callout.long {width: 100%; padding: 15px 0}
.callouts .callout.normal {text-align: center; padding-top: 40px}
.callouts .callout.normal:nth-child(3n + 3) {margin-left: 60px; margin-right: 60px}
.callouts.no-long .callout.normal:nth-child(3n + 3) {margin-left: 0; margin-right: 0}
.callouts.no-long .callout.normal:nth-child(3n + 2) {margin-left: 60px; margin-right: 60px}
.callouts .callout.long .pic {position: absolute; left: 25px; top: 50%; -webkit-transform: translate(0, -50%); -moz-transform: translate(0, -50%); -ms-transform: translate(0, -50%); -o-transform: translate(0, -50%); transform: translate(0, -50%)}
.callouts .callout.long[data-id="box-first"] .box {padding-left: 140px}
.callouts .callout.long[data-id="box-last"] .box {padding-left: 355px}
.callouts .callout.normal .box {min-height: 325px; height: 100%}
.callouts .callout.normal .btn {width: 100%}
.callouts .callout.long .btn {width: calc(33.333% - 40px)}
.callouts .callout.normal .pic {max-width: 100%; position: relative; margin: 0 auto -40px auto; top: -40px}
.callouts .callout.normal .title {padding: 10px 0 25px 0}
.callouts .callout.long .title {padding-right: 25px}
@media screen and (max-width: 1200px) {
  .callouts .callout .title-lrg-3 {font-size: 3.85vw; line-height: 4.25vw}
  .callouts .callout .title-lrg-4 {font-size: 3vw; line-height: 3.5vw}
  .callouts .callout .title-lrg-5 {font-size: 3.25vw; line-height: 3.5vw}
}
@media screen and (max-width: 1060px) {
  .callouts .callout.long[data-id="box-last"] .box {padding-left: 282px;}
  .callouts .callout.long[data-id="box-last"] .box img {width: 250px}
} 
@media screen and (max-width: 960px) {
  .callouts .callout {width: calc(33.333% - 20px)}
  .callouts .callout.normal:nth-child(3n + 3) {margin-left: 30px; margin-right: 30px}
  .callouts.no-long .callout.normal:nth-child(3n + 3) {margin-left: 0; margin-right: 0}
  .callouts.no-long .callout.normal:nth-child(3n + 2) {margin-left: 30px; margin-right: 30px}
  .callouts .callout.long .btn {width: calc(33.333% - 20px)}
}
@media screen and (max-width: 768px) {
  .callouts .callout {padding: 0 !important; text-align: center; width: calc(50% - 15px)}
  .callouts .callout .flex {-ms-flex-justify-content: center; -webkit-justify-content: center; justify-content: center}
  .callouts .callout.normal:nth-child(3n + 3) {margin-left: 0; margin-right: 0}
  .callouts.no-long .callout.normal:nth-child(3n + 2) {margin-left: 0; margin-right: 0}
  .callouts .callout.normal:nth-child(even) {margin-right: 30px}
  .callouts.no-long .callout.normal:nth-child(even) {margin-right: 0}
  .callouts.no-long .callout.normal:nth-child(odd) {margin-right: 30px}
  .callouts .callout.long .btn {width: 100%; height: auto}
  .callouts .callout.normal .box {min-height: 0}
  .callouts .callout.long[data-id="box-first"] .box, .callouts .callout.long[data-id="box-last"] .box {padding: 0}
  .callouts .callout.long .box {padding: 0; -webkit-flex-flow: column; flex-flow: column}
  .callouts .callout.long .title {width: 100%; padding: 0; -webkit-flex: 0 1 auto; -ms-flex: 0 1 auto; flex: 0 1 auto}
  .callouts .callout.normal .box .inner {padding: 25px}
  .callouts .callout .title {padding: 0 0 25px 0 !important}
  .callouts .callout .title-lrg-3, .callouts .callout .title-lrg-5 {font-size: 6vw; line-height: 7vw}
  .callouts .callout .title-lrg-4 {font-size: 5vw; line-height: 6vw}
}
@media screen and (max-width: 600px) {
  .callouts {margin-top: 60px;}
  .callouts .callout {width: 100%}
  .callouts .callout.normal:nth-child(even) {margin-right: 0}
  .callouts.no-long .callout.normal:nth-child(odd) {margin-right: 0}
  .callouts .callout .title-lrg-3, .callouts .callout .title-lrg-5 {font-size: 11.5vw; line-height: 12.5vw}
  .callouts .callout .title-lrg-4 {font-size: 11.5vw; line-height: 12.5vw}
}

/* embed container */
.embed-container {margin-bottom: 28px; position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%;}
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%;}