/*----------------Core---------------------------*/
:root { scroll-behavior: auto; }

html { height: 100%; }

body {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 100%;
	color: #241E1E;
	font: 400 16px 'Manrope', sans-serif;
	line-height: 1.4em;
	margin: 0px;
    min-height: 100%;
	background: #fff;
}

body#page-error { align-items: center; }

body.hamburger-active, body.drawer-active { overflow: hidden; }

img { height: auto; max-width: 100%; }
img[src=""], img:not([src]) { visibility: hidden; }

img.bordered-img { background: #FFF; border-radius: 24px; box-shadow: 2px 4px 16.6px 0 rgba(0, 0, 0, 0.08); }

a { color: #A4070A; word-break: break-word; transition: opacity 0.4s ease; }
a:focus { outline: 0; }
a:hover { color: #A4070A; opacity: 0.5; }

form { margin: 0px; padding: 0px; }

h1, h2, h3, h4, h5, h6 { color: #241E1E; font-family: 'Geologica', sans-serif; font-style: italic; font-weight: 700; line-height: 1.2em; margin-bottom: 15px; margin-top: 0; text-transform: uppercase; }

p { color: #241E1E; line-height: 1.4em; margin-bottom: 20px; }

hr { background-color: rgba(74, 70, 72, 0.50); border: 0; height: 1px; margin: 24px 0; opacity: 1; position: relative; }

strong { font-weight: 700; }

ul, ol { list-style: none; margin-bottom: 20px; padding: 0; }
ul li, ol li { color: #241E1E; line-height: 1.4em; margin-bottom: 0; }
ul li:last-child, ol li:last-child { margin-bottom: 0; }

input:-webkit-autofill, input:-webkit-autofill:focus { transition: background-color 0s 600000s, color 0s 600000s !important; }

.margin-center { margin-left: auto; margin-right: auto; }
.max-width-1440 { max-width: 1440px; }
.max-width-1100 { max-width: 1100px; }
.max-width-450 { max-width: 450px; }

.container { max-width: 1304px !important; }

.background-img { background-position: center center; background-repeat: no-repeat; background-size: cover; }

.form-control { background: #F8F8F8; border: 1px solid rgba(65, 65, 65, 0.12); border-radius: 2px; padding: 14px 24px; }
.form-control.active { padding-top: 16px; padding-bottom: 12px; }
.form-group { margin-bottom: 20px; position: relative; }
input[type="radio"].form-control { height: 0; opacity: 0; padding: 0; position: absolute; width: 0 }

.form-control:focus { background-color: #F6F3EA; box-shadow: none; color: #241E1E; }

.form-control::-webkit-input-placeholder { color: #241E1E; }
.form-control::-moz-placeholder { color: #241E1E; }
.form-control:-ms-input-placeholder { color: #241E1E; }
.form-control:-moz-placeholder { color: #241E1E; }

.form-fighter { position: absolute; top: -99999px; height: 0; overflow: hidden; }

.sb-form-message { line-height: 1.2em; text-align: center; }

label { color: #241E1E; display: block; font-size: 12px; font-weight: 700; left: 31px; line-height: 1em; margin-bottom: 20px; opacity: 1; position: absolute; text-transform: uppercase; top: 12px; z-index: 1; }
.checkbox label { display: flex; flex-wrap: wrap; align-items: center; color: #fff; background-color: transparent !important; font-size: 16px; font-weight: 400; height: 24px; left: auto; margin-bottom: 0; padding-left: 37px; position: relative; text-align: left; text-transform: none; top: auto; }

.visually-hidden { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; }

.top-title { background: linear-gradient(90deg, #E1100E 0%, #A4070A 100%); background-clip: text; font-family: 'Manrope', sans-serif; font-size: 16px; font-style: normal; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }

.title { color: #241E1E; font-size: 60px; line-height: 1em; margin-bottom: 20px; }

.font-size-48 { font-size: 48px; }

.btn { background: linear-gradient(90deg, #E1100E 0%, #A4070A 100%); border: 0; border-radius: 0; color: #fff; letter-spacing: 1.6px; font-weight: 700; padding: 19px 40px; position: relative; text-transform: uppercase; transition: opacity 0.4s ease; }
.btn:hover { background: linear-gradient(90deg, #E1100E 0%, #A4070A 100%); color: #fff; opacity: 0.5; }

.btn-arrow-right:after { content: url('../assets/images/arrow-right.svg'); margin-left: 10px; }

.list { margin-bottom: 20px; }
.list ul { list-style: none; margin: 0; padding: 0; }
.list ul li { background: #F6F6F6; font-size: 20px; margin-bottom: 24px; padding: 19px 25px 19px 59px; position: relative; text-align: left; }
.list ul li:last-child { margin-bottom: 0; }
.list ul li:before { content: url('../assets/images/check.svg'); left: 25px; line-height: 1em; position: absolute; top: 50%; transform: translateY(-50%); }

.hidden { display: none; }

.dropanchor { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.content > *:last-child, .text > *:last-child { margin-bottom: 0 !important; }

.cta { margin-top: 50px; }
.cta ul { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.cta.center ul { justify-content: center; }
.cta ul li { padding-right: 12px; }
.cta ul li:last-child { padding-right: 0; }

.scroll-target { position: relative; top: -135px; }

.group.wow { opacity: 0; }
.group.wow.done { opacity: 1; }

/*------------ HEADER ----------------------*/
#header { background: #fff; left: 0; padding-bottom: 20px; padding-top: 20px; position: fixed; top: 0; width: 100%; z-index: 10; }
	#header ul { list-style: none; margin: 0; }

	/* Logo */
	#header .logo { flex: 0 0 auto; width: auto; }
	#header .logo a:hover { opacity: 1; }

	/* Menu */
	#header .menu { flex: 1 1 0; }
	#header .menu > ul { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; }
	#header .menu > ul > li { flex: 0 1 auto; color: #241E1E; font-size: 14px; font-weight: 700; letter-spacing: 1.4px; margin-bottom: 0; margin-left: 70px; position: relative; text-transform: uppercase; }
	#header .menu > ul > li.has-submenu { padding-right: 18px; }
	#header .menu > ul > li:first-child { margin-left: 0; }
	#header .menu > ul > li i { font-size: 10px; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(0deg); }
	#header .menu > ul > li a { color: inherit; font: inherit; text-decoration: none; transition: opacity 0.4s ease; }
	#header .menu > ul > li a:after { content: ''; height: 6px; left: 0; pointer-events: none; position: absolute; top: 100%; width: 100%; }
	#header .menu > ul > li a:hover { opacity: 0.5; }

	#header .menu > ul > li:hover i { margin-top: 1px; transform: translateY(-50%) rotate(180deg); }
	#header .menu > ul > li:hover ul { margin-top: 6px; opacity: 1; pointer-events: auto; }
	#header .menu > ul > li:hover > a:after { pointer-events: auto; }
	#header .menu > ul > li:hover > a:before { width: 100%; }

	/* Dropdown */
	#header .menu > ul > li > ul { border-radius: 4px; box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px; display: block; background-color: #fff; left: -15px; list-style: none; margin: 0; margin-top: 12px; min-width: 200px; opacity: 0; overflow: hidden; padding: 15px; pointer-events: none; position: absolute; top: 100%; z-index: 2; transition: opacity 0.4s ease, margin-top 0.4s ease; }
	#header .menu > ul > li > ul > li { border-bottom: 1px solid rgba(20, 33, 75, 0.2); color: #241E1E; font-size: 16px; line-height: 1.2em; margin-right: 0; text-align: left; }
	#header .menu > ul > li > ul > li:last-child { border-bottom: 0; }
	#header .menu > ul > li > ul > li:first-child a { margin-top: 0; }
	#header .menu > ul > li > ul > li:last-child a { margin-bottom: 0; }
	#header .menu > ul > li > ul > li a { display: block; margin: 12px 0; position: relative; width: 100%; }
	#header .menu > ul > li > ul > li a:hover { opacity: 0.5; }

    /* Hamburger */
	#header .hamburger { flex: 0 0 auto; display: none; width: auto; }
	#header .hamburger .box { background-color: transparent; border-radius: 0; box-shadow: none; cursor: pointer; height: 20px; margin-left: auto; padding: 0; position: relative; width: 30px; }
	#header .hamburger .box div { background-color: #000; height: 2px; left: 0; position: absolute; width: 100%; }
	#header .hamburger .box div:first-child { top: 0; }
	#header .hamburger .box div:nth-child(2) { top: 50%; transform: translateY(-50%); }
	#header .hamburger .box div:last-child { bottom: 0; }

/*------------ MOBILE NAV ----------------------*/
#mobile-nav { background-color: #fff; box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px; height: 100%; right: 0; position: fixed; top: 0; max-width: 350px; width: 90%; transform: translateX(100%); z-index: 15; }
	.hamburger-active #mobile-nav { transform: translateX(0); }

	#mobile-nav .menu-contact { overflow-y: auto; }
	#mobile-nav .menu ul { list-style: none; margin: 0; margin-bottom: 20px; padding: 20px; }
	#mobile-nav .menu ul li { color: #241E1E; font-size: 16px; font-weight: 700; line-height: 1.2em; margin-bottom: 40px; padding-left: 0; padding-right: 30px; position: relative; text-transform: uppercase; }
	#mobile-nav .menu ul li:last-child { margin-bottom: 0; }

	#mobile-nav .menu ul li i { display: block; font-size: 16px; position: absolute; right: 0; top: 0; }

	#mobile-nav .menu ul li a { color: inherit; font: inherit; text-decoration: none; }

	#mobile-nav .menu ul li ul { margin-bottom: 0; padding-bottom: 0; padding-right: 0; }
	#mobile-nav .menu ul li ul li { margin-bottom: 20px; padding-right: 0; text-transform: none; }
	#mobile-nav .menu ul li.menu-li-active i { transform: rotate(180deg); }

	/* Close */
	#mobile-nav .close { display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid rgba(0, 0, 0, 0.1); padding: 30px 20px; }
	#mobile-nav .close .box { cursor: pointer; height: 14px; position: relative; width: 20px; }
	#mobile-nav .close .box div { background-color: #241E1E; height: 2px; left: 0; position: absolute; width: 100%; }
	#mobile-nav .close .box div:first-child { top: 0; }
	#mobile-nav .close .box div:nth-child(2) { top: 50%; transform: translateY(-50%); }
	#mobile-nav .close .box div:last-child { bottom: 0; }

	#mobile-nav .close .text { font-size: 16px; font-weight: 700; line-height: 1.2em; padding-left: 10px; text-transform: uppercase; }

	/* Contact */
	#mobile-nav .contact { padding: 0 20px 20px; }
	#mobile-nav .contact .box { background: linear-gradient(90deg, #E1100E 0%, #A4070A 100%); border-radius: 10px; padding: 20px; }
	#mobile-nav .contact p { color: #fff; font-size: 14px; font-weight: 700; line-height: 1.2em; }
	#mobile-nav .contact p > a, #mobile-nav .contact p > span { display: flex; flex-wrap: wrap; align-items: center; color: inherit; font: inherit; text-decoration: none; }
	#mobile-nav .contact .box > *:last-child { margin-bottom: 0; }
	#mobile-nav .contact a span, #mobile-nav .contact span span { flex: 0 1 auto; padding-left: 10px; width: calc(100% - 20px); }
	#mobile-nav .contact i { flex: 0 1 auto; font-size: 16px; text-align: center; width: 20px; }

	/* Bottom */
	#mobile-nav .bottom { background-color: #fff; border-top: 1px solid rgba(0, 0, 0, 0.1); bottom: 0; left: 0; padding: 30px 20px; position: fixed; width: 100%; z-index: 5; }
	#mobile-nav .socials ul { display: flex; flex-wrap: wrap; list-style: none; margin: 0; margin-bottom: 0; padding: 0; }
	#mobile-nav .socials ul li { color: #5C0F25; font-size: 22px; line-height: 1em; margin-bottom: 0; padding-right: 20px; }
	#mobile-nav .socials ul li a { color: inherit; font: inherit; } 
	#mobile-nav .socials ul li:last-child { padding-right: 0; }
	#mobile-nav .bottom .copyright { font-size: 12px; font-weight: 700; line-height: 1.2em; }

/*------------ MOBILE NAV OVERLAY ----------------------*/
#mobile-nav-overlay { background-color: rgba(12, 12, 12, 0.3); height: 100%; left: 0; opacity: 0; position: fixed; top: 0; visibility: hidden; width: 100%; z-index: 14; transition: all 0.4s ease; }
	.hamburger-active #mobile-nav-overlay { opacity: 1; visibility: visible; }

/*------------ FOOTER ----------------------*/
#footer { padding-bottom: 40px; padding-top: 80px; position: relative; }
    #footer a { color: #241E1E; text-decoration: none; }
    #footer .title { font-family: 'Manrope', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: 1.6px; margin-bottom: 30px; text-transform: uppercase; }

    /* Logo */
    #footer .logo a:hover { opacity: 1; }

    /* Info */
	#footer .info ul { margin-bottom: 0; }
	#footer .info ul li { margin-bottom: 15px; padding-left: 33px; position: relative; text-align: left; }
	#footer .info ul li:last-child, #footer .info ul li:nth-last-child(2) { margin-bottom: 0; }
	#footer .info ul li i { color: #A4070A; font-size: 16px; left: 0; position: absolute; text-align: center; width: 20px; }

    /* Copyright - Privacy */
    #footer .copyright-privacy { margin-top: 80px; padding-top: 40px; position: relative; text-align: center; }
    #footer .copyright-privacy:before { background: #eee; content: ''; height: 1px; left: 0; position: absolute; top: 0; width: 100%; }
    #footer .copyright-privacy span { font-size: 12px; line-height: 1.2em; text-transform: uppercase; }
    #footer .copyright-privacy span:after { content: '|'; margin: 0 10px; }
	#footer .copyright-privacy span:last-child:after { display: none; }

/*------------ CONTENT -----------------------*/
.content { position: relative; }
	.content.wow { opacity: 0; }
	.content.wow.done { opacity: 1; }

	/* Iframe */
	.content iframe { height: 600px; width: 100%; }

    /* Info */
    .content .info { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
    .content .info > div { flex: 0 1 auto; margin-right: 30px; padding-right: 30px; position: relative; }
    .content .info > div:last-child { margin-right: 0; padding-right: 0; }
    .content .info > div:after { content: '|'; position: absolute; right: 0; }
    .content .info > div:last-child:after { display: none; }

/*------------ BANNER -----------------------*/
#banner { position: relative; }
    #banner:before { background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%); content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

    #banner .max-width-1440 { position: relative; }

    #banner .top-title { background: transparent; color: #fff; -webkit-text-fill-color: #fff; }
    #banner .title { color: #fff; }
    #banner .text * { color: #fff; font-size: 20px; }

/*------------ HERO -----------------------*/
#hero { position: relative; }
    #hero:before { background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.75) 100%); content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

    #hero .max-width-1440 { position: relative; }

	#hero .top-title { background: transparent; color: #FF3C3A; -webkit-text-fill-color: #FF3C3A; }
    #hero .title, #hero .text * { color: #fff; }

/*------------ MATRIX -----------------------*/
#matrix { position: relative; }
	#matrix.wow { opacity: 0; }
	#matrix.wow.done { opacity: 1; }

    #matrix .box { background: #FFF; margin: 0 auto; max-width: 1086px; padding: 42px 110px; }

	/* Table */
    #matrix table { border-collapse: separate; border-spacing: 0 18px; text-align: center; width: 100%; }
    #matrix table tr th { font-family: 'Manrope', sans-serif; font-size: 24px; font-weight: 800; letter-spacing: 2.4px; line-height: 1.4em; text-transform: uppercase; }
    #matrix table tr td { background: #EEE; border-bottom: 18px; color: #454545; font-size: 20px; font-weight: 700; line-height: 1.4em; padding: 16px; width: 33.33%; }
    #matrix table tr:nth-child(even) td { background: #F6F6F6; }

	/* Item */
	#matrix .item { background: #EEE; margin-bottom: 18px; padding-bottom: 5px; padding-top: 15px; }
	#matrix .item:last-child { margin-bottom: 0; }
	#matrix .item:nth-child(odd) { background: #F6F6F6; }
	#matrix .item .row { --bs-gutter-x: 0; }
	#matrix .item .text, #matrix .item .value { line-height: 1.2em; padding: 0 10px 10px; }
	#matrix .item .text { color: #241E1E; font-weight: 800; text-transform: uppercase; }
	#matrix .item .value { color: #454545; font-weight: 700; text-align: right; }

/*------------ PHOTO CONTENT -----------------------*/
.photo-content { position: relative; }
	.photo-content.wow { opacity: 0; }
	.photo-content.wow.done { opacity: 1; }

    .photo-content .row { --bs-gutter-x: 0; }

	/* Image */
	.photo-content .img { margin-bottom: 30px; text-align: center; }

    /* Content */
    .photo-content .content { padding-right: 120px; }
    .photo-content .text .title { font-family: 'Manrope', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: 1.6px; margin-bottom: 30px; text-transform: uppercase; }
	.photo-content .text .row { --bs-gutter-x: 24px; --bs-gutter-y: 50px; }

    /* Content Right */
    .photo-content.content-right .content { padding-left: 120px; padding-right: 0; }

/*------------ 404 -----------------------*/
#error-404 { position: relative; }
	#error-404 .title { font-size: 250px; }

/*------------ MEDIA 1399.98px ----------------------*/
@media only screen and (max-width: 1399.98px) {
	.container { width: 90%; }
}

/*------------ MEDIA 1199.98px ----------------------*/
@media only screen and (max-width: 1199.98px) {
	.scroll-target { top: -113px; }

	/* Header */
	#header .logo img { max-width: 150px; }
	#header .menu > ul > li { margin-left: 35px; }

	/* Footer */
	#footer .logo { margin-top: 80px; text-align: center; }
	#footer .office-hours, #footer .gate-hours { margin-bottom: 50px; }
}

/*------------ MEDIA 991.98px ----------------------*/
@media only screen and (max-width: 991.98px) {
	/* Header */
	#header .menu { display: none; }
	#header .hamburger { display: block; }
	#header .logo { flex: 1 1 0; }

	/* Hero */
	#hero .content, #hero .cta { text-align: center; }

	/* Matrix */
	#matrix .box { padding: 40px 30px; }

	/* Photo Content */
	.photo-content.content-right .content { padding-left: 0; }
	.photo-content .content { padding-right: 0; text-align: center; }
	.photo-content .title { margin-left: auto; margin-right: auto; }
}

/*------------ MEDIA 768px ----------------------*/
@media only screen and (min-width: 768px) {
}

/*------------ MEDIA 767.98px ----------------------*/
@media only screen and (max-width: 767.98px) {
	/* Content */
	.content .info > div { margin-right: 0; padding-right: 0; width: 100%; }
	.content .info > div:after { display: none; }
}

/*------------ MEDIA 576px ----------------------*/
@media only screen and (min-width: 576px) {

}

/*------------ MEDIA 575.98px ----------------------*/
@media only screen and (max-width: 575.98px) {
	.title.heading-1 { font-size: 40px; }
	.title.font-size-48, .title.font-size-40 { font-size: 36px; }
	.btn { padding: 12px 20px; width: 100%; }
	.cta ul li { margin-bottom: 5px; padding: 0; width: 100%; }
	.cta ul li:last-child { margin-bottom: 0; }
	.scroll-target { top: -89px; }

	/* Header */
	#header .logo img { width: 100px; }

	/* Footer */
	#footer { padding-bottom: 20px; }
	#footer .logo { margin-top: 60px; }
	#footer .office-hours, #footer .gate-hours, #footer .info { text-align: center; }
	#footer .info ul { display: inline-block; }
	#footer .info ul li { padding-left: 0; }
	#footer .info ul li i { left: auto; margin-right: 10px; position: relative; }
	#footer .info ul li:last-child { margin-left: 10px; text-align: center; }
	#footer .copyright-privacy { margin-top: 60px; padding-top: 20px; }
	#footer .copyright-privacy span { display: block; margin-bottom: 10px; }
	#footer .copyright-privacy span:last-child { margin-bottom: 0; }
	#footer .copyright-privacy span:after { display: none; }
}