/*
Theme Name: Southfield
Author: Considered Creative
Author URI: https://consideredcreative.com/
*/

/* resets
--------------------------------------------------------------------------
*/

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; font-size: 100%; font: inherit; vertical-align: baseline; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; line-height: 1; overflow-y: scroll; box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
progress { vertical-align: baseline; }
[hidden], template { display: none; }

svg:not(:root) { overflow: hidden; }

img, iframe { border: 0; vertical-align: middle; }

strong { font-weight: bolder; }
em { font-style: italic; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

button, input, optgroup, select, textarea { margin: 0; font: inherit; font-size: 100%; line-height: 1; vertical-align: baseline; color: inherit; outline: 0; border-radius: 0; }
button, input, textarea { padding: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
label, button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; }
button, input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; }
button[disabled], input[disabled] { cursor: default; }
button { width: auto; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border: 0; padding: 0; }
input[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
input[type="search"]::-ms-clear,
input[type="search"]::-ms-reveal { display: none; width: 0; height: 0; }
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

table { border-collapse: collapse; border-spacing: 0; }
th, td { vertical-align: top; }
th { font-weight: normal; text-align: left; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; }

ul, ol { list-style: none; }
li { display: list-item; }

hr { box-sizing: content-box; height: 0; overflow: visible; }

a { color: #000; background: transparent; text-decoration: none; cursor: pointer; text-decoration-skip: ink; }
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }

.hide { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }

a, span, button { transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, opacity 0.4s ease, text-decoration-color 0.4s ease; }

/* global
--------------------------------------------------------------------------
*/

body { padding: 40px 0 0; font: 62.5%/1 'Geologica', 'Helvetica Neue', Arial, Helvetica, sans-serif; background: #000; color: #fff; }

@media only screen and (min-width: 1024px) {
	body { padding: 60px 0 0; }
}

.btn { padding: 0 18px; font-family: 'Lilita One', script; font-weight: 400; font-size: 18px; text-decoration: none; text-transform: uppercase; height: 40px; background: #d68880; color: #ffffff; border: 0; border-radius: 10px; box-shadow: 0px 2px 2.5px 0px rgba(8, 29, 46, 0.25), 0px -2px 0px 2.5px rgba(4, 5, 5, 0.14) inset; display: inline-flex; justify-content: center; align-items: center; }
.btn i { margin: 0 8px 0 0; }
.btn.green { background: #76c228; }
.btn.blue { background: #404eed; }
.btn.purple { background: #4f3677; }
.btn.gform_button { background: #9f63b9; }
.btn:hover { background: #262626; }

@media only screen and (min-width: 1024px) {
	.btn { padding: 0 32px; font-size: 30px; height: 80px; border-radius: 20px; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; }
	.btn i { margin: 0 10px 0 0; }
	.btn.big { padding: 0 0.964em; font-size: 55px; height: 2.182em; border-radius: 0.545em; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; }
	.btn.big i { margin: 0 22px 0 0; }
}

body > header { width: 100%; background: #262626; color: #ffffff; position: fixed; top: 0; left: 0; display: flex; justify-content: space-between; align-items: center; z-index: 99; }
body > header h1 a { padding: 10px; display: inline-flex; }
body.home > header h1 { display: none; }
body > header h1 a img { width: auto; height: 20px; }
body.admin-bar > header { top: 32px; }
@media screen and ( max-width: 782px ) {
	body.admin-bar > header { top: 46px; }
}
body > header ul { margin: 0 0 0 auto; display: flex; justify-content: flex-end; }
body > header ul li.menu button { width: 40px; height: 40px; background: #3f3f3f; border: 0; position: relative; display: block; }
body > header ul li.menu button span { width: 18px; height: 2px; background: #ffffff; border-radius: 2px; position: absolute; top: calc( 50% - ( 2px / 2 ) ); left: calc( 50% - ( 18px / 2 ) ); transition: transform 0.4s ease; display: block; }
body > header ul li.menu button span:before,
body > header ul li.menu button span:after { width: 100%; height: 100%; background: #ffffff; border-radius: 2px; position: absolute; top: -7px; left: 0; transition: top 0.4s ease, transform 0.4s ease; content: " "; display: block; }
body > header ul li.menu button span:after { top: 7px; }
html.nav body > header ul li.menu button span { transform: rotate(45deg); }
html.nav body > header ul li.menu button span:before { top: 0; transform: rotate(-90deg); }
html.nav body > header ul li.menu button span:after { top: 0; transform: rotate(0deg); }

@media only screen and (min-width: 980px) {
	body > header h1 a { padding: 15px; }
	body > header h1 a img { height: 30px; }
	body > header ul li.menu button { width: 60px; height: 60px; }
	body > header ul li.menu button span { width: 26px; height: 3px; border-radius: 3px; top: calc( 50% - ( 3px / 2 ) ); left: calc( 50% - ( 26px / 2 ) ); }
	body > header ul li.menu button span:before,
	body > header ul li.menu button span:after { border-radius: 3px; top: -10px; }
	body > header ul li.menu button span:after { top: 10px; }
	html.nav body > header ul li.menu button span:before { top: 0; }
	html.nav body > header ul li.menu button span:after { top: 0; }
}

body > .mobile { width: 100%; height: calc( 100% - 40px ); padding: 25px 0 35px; background: linear-gradient(0deg, rgba(70,201,239,1) 0%, rgba(14,89,154,1) 100%); position: fixed; top: 40px; right: -100%; text-align: center; display: flex; flex-direction: column; justify-content: flex-start; transition: right 0.4s ease; z-index: 98; }
body.admin-bar > .mobile { height: calc( 100% - 40px - 32px ); top: calc( 40px + 32px ); }
@media screen and ( max-width: 782px ) {
	body.admin-bar > .mobile { height: calc( 100% - 40px - 46px ); top: calc( 40px + 46px ); }
}
body > .mobile h2 img { width: 270px; height: auto; }
body > .mobile nav { padding: 32px 0 0; }
body > .mobile nav ul li a { padding: 14px 0; font-family: 'Lilita One', script; font-size: 26px; color: #fff; display: block; }
body > .mobile ul.buttons { margin: auto 0 0; padding: 0 0 35px; }
body > .mobile ul.social { margin: 0; font-size: 26px; display: flex; justify-content: center; }
body > .mobile ul.social li { padding: 0 10px; }
body > .mobile ul.social li a { color: #ffffff; }
body > .mobile ul.social li a:hover { color: #d8d5ab; }
html.nav body > .mobile { right: 0; }

@media only screen and (min-width: 980px) {
	body > .mobile { display: none; }
}

body > nav { display: none; }

@media only screen and (min-width: 980px) {
	body > nav { background: #3f3f3f; color: #ffffff; position: fixed; top: 60px; right: -100%; display: block; transition: right 0.4s ease; z-index: 98; }
	body.admin-bar > nav { top: calc( 60px + 32px ); }
	@media screen and ( max-width: 782px ) {
		body.admin-bar > nav { top: calc( 60px + 46px ); }
	}
	html.nav body > nav { right: 0; }
	body > nav ul li a { padding: 0.5em 0.8em; font-family: 'Lilita One', script; font-size: 30px; color: #fff; text-align: right; display: block; }
	body > nav ul li a:hover { background-color: #323232; }
	/*body > nav ul li.current-menu-item a { color: #a8fffc; }*/
}

body > .banner { height: 600px; background: url(images/banner-sky.jpg) no-repeat 50% 50% / cover; position: relative; overflow: hidden; }
body > .banner .clouds { width: 220vw; height: 220vw; position: absolute; top: 15vw; left: -90vw; background: url(images/banner-clouds.png) repeat 0 0 / 220vw 220vw; animation: clouds 240s infinite linear; display: block; }

/*
@keyframes clouds {
	0% { background-position: 0; }
	100% { background-position: -600px; }
}
*/
@-webkit-keyframes clouds {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}
@keyframes clouds {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


body > .banner .scene { width: 600px; height: 319px; position: absolute; bottom: 0; left: calc( 50% - 300px ); background: url(images/banner-scene.png) no-repeat 0 0 / auto 100%; display: block; }
body > .banner img { height: auto; position: absolute; }
body > .banner .wow { visibility: hidden; }
body > .banner .brb { width: 50px; top: 436px; left: calc( 50% - 206px ); }
body > .banner .machine { width: 48px;top: 534px; left: calc( 50% + 47px ); }
body > .banner .rings { width: 104px; top: 488px; left: calc( 50% + 77px ); }
body > .banner .purplebud { width: 72px; top: 497px; left: calc( 50% + 101px ); }
body > .banner .orangebud { width: 38px; top: 405px; left: calc( 50% - 161px ); }
body > .banner .mainbud { width: 306px; top: 246px;  left: calc( 50% - 161px ); }
body > .banner .monolith { display: none; }
body > .banner .panel { width: 100%; position: absolute; top: 25px; left: 0; text-align: center; }
body > .banner .panel h2 img { width: 270px; height: auto; position: relative; filter: drop-shadow(2px 3px 8px rgba(0, 61, 132, 0.75)) }
body > .banner .panel ul.buttons { padding: 25px 0 0; }
body > .banner .panel ul.social { padding: 20px 0 0; font-size: 26px; display: flex; justify-content: center; }
body > .banner .panel ul.social li { padding: 0 10px; }
body > .banner .panel ul.social li a { color: #ffffff; text-shadow: 0px 1px 3px rgba(0, 39, 64, 0.7); }
body > .banner .panel ul.social li a:hover { color: #d8d5ab; }

@media only screen and (min-width: 600px) {
	body > .banner .scene { left: 0; }
	body > .banner .clouds { top: 0vw; }	
}

@media only screen and (min-width: 980px) {
	body > .banner { height: 1040px; }
	body > .banner .scene { width: 1781px; height: 947px; }
	body > .banner .brb { width: 150px; top: 589px; left: 25px; }
	body > .banner .machine { width: 144px; top: 881px; left: 782px; }
	body > .banner .rings { width: 312px; top: 743px; left: 872px; }
	body > .banner .purplebud { width: 217px; top: 770px; left: 945px; }
	body > .banner .orangebud { width: 116px; top: 494px; left: 155px; }
	body > .banner .mainbud { width: 917px; top: 17px; left: 163px; }
	body > .banner .monolith { width: 258px; top: 486px; left: 1668px; display: block; }
	body > .banner .panel { width: 812px; top: 193px; left: 974px; }
	body > .banner .panel h2 img { width: 100%; filter: drop-shadow( 4px 6px 24px rgba(0, 61, 132, 0.75) ); }
	body > .banner .panel ul.buttons { padding-top: 58px; }
	body > .banner .panel ul.buttons li .btn.big { font-size: 2.750vw; }
	body > .banner .panel ul.social { padding-top: 55px; font-size: 60px; }
	body > .banner .panel ul.social li { padding: 0 20px; }
	body > .banner .panel ul.social li a { text-shadow: 0px 3px 10px rgba(7, 39, 64, 0.7); }
}

@media only screen and (min-width: 980px) {
	body > .banner { height: 52vw; }
	body > .banner .scene { width: 89.050vw; height: 47.350vw; }
	body > .banner .brb { width: 7.500vw; top: 29.450vw; left: 1.250vw; }
	body > .banner .machine { width: 7.200vw; top: 44.050vw; left: 39.100vw; }
	body > .banner .rings { width: 15.600vw; top: 37.150vw; left: 43.600vw; }
	body > .banner .purplebud { width: 10.850vw; top: 38.500vw; left: 47.250vw; }
	body > .banner .orangebud { width: 5.800vw; top: 24.700vw; left: 7.750vw; }
	body > .banner .mainbud { width: 45.850vw; top: 0.850vw; left: 8.150vw; }
	body > .banner .monolith { width: 12.900vw; top: 24.300vw; left: 83.400vw; display: block; }
	body > .banner .panel { width: 40.600vw; top: 9.650vw; left: 48.700vw; }
	body > .banner .panel ul.buttons { padding-top: 2.900vw; }
	body > .banner .panel ul.social { padding-top: 2.750vw; font-size: 3vw; }
	body > .banner .panel ul.social li { padding: 0 1vw; }
}

main { background: #2dacfb; text-align: center; position: relative; overflow: hidden; }
body > .banner + main { border-top: 6px solid #ffffff; }
main:before { width: 100%; height: 1556px; background: linear-gradient(0deg, rgba(0,237,246,1) 0%, rgba(0,237,246,0) 100%); position: absolute; bottom: -40px; left: 0; content: " "; display: block; z-index: 1; }
main:after { width: 100%; height: 1364px; background: linear-gradient(0deg, rgba(0,61,132,0) 0%, rgba(0,61,132,1) 100%); position: absolute; top: -25px; left: 0; content: " "; display: block; z-index: 2; }
main > span { width: 100%; height: 100%; background: url(images/main-bg.png) no-repeat bottom left / 100% auto; position: absolute; top: 0; left: 0; display: block; z-index: 3; }
main > div { padding: 60px 0 30.600vw; position: relative; z-index: 4; }

@media only screen and (min-width: 980px) {
	body > .banner + main { border-top-width: 10px; }
	main > div { padding-top: 114px; }
}

main a { font-weight: 700; color: #ffffff; text-decoration: underline; }
main a:hover { text-decoration-color: rgba(255,255,255,0); }
main hr { max-width: calc( 100% - 40px ); width: 940px; margin: 50px auto 44px; background: none; border: 0; border-top: 1px solid #1d89b2; border-bottom: 1px solid #83ddfb; display: block; }
main h1 { max-width: calc( 100% - 40px ); margin: 0 auto; font-family: 'Lilita One', script; font-size: 37px; line-height: 1.2; text-transform: uppercase; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); }
main h1 img { max-width: 100%; width: 864px; height: auto; margin: 0.2em auto 0; display: block; }
main h2,
main h3,
main h4 { max-width: calc( 100% - 40px ); width: 660px; margin: 1em auto 0; font-family: 'Lilita One', script; font-size: 37px; line-height: 1.2; text-transform: uppercase; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); }
main h2:last-child,
main h3:last-child,
main h4:last-child { margin-top: 0; }
main p,
main ul,
main ol,
main .gform_confirmation_message { max-width: calc( 100% - 40px ); width: 660px; margin: 1.2em auto 0; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); }
body.page-id-12 main p,
body.page-id-12 main ul,
body.page-id-12 main ol,
body.page-id-14 main p,
body.page-id-14 main ul,
body.page-id-14 main ol,
body.page-id-16 main p,
body.page-id-16 main ul,
body.page-id-16 main ol { text-align: left; }
main .gform_confirmation_message { margin-top: 0; font-weight: 700; text-align: center; }
main ul { list-style: disc inside; }
main ol { list-style: decimal inside; }
main h2 + p,
main h2 + ul,
main h2 + ol { margin-top: 1.111em; }
main ul.buttons { margin: 26px auto 0; font-size: 1em; line-height: 1; text-shadow: none; list-style: none; display: flex; justify-content: center; }
main p + ul.buttons { margin-top: 12px; }
main ul.buttons li { padding: 15px 8px 0; }
main figure { max-width: calc( 100% - 40px ); width: 940px; margin: 26px auto 0; }
main figure img { width: 100%; height: auto; }
main figure div { height: 0; padding-bottom: 56.25%; position: relative; }
main figure div iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

@media only screen and (min-width: 980px) {
	main hr { margin: 68px auto 58px; }
	main h1 { font-size: 50px; }
	main h1 img { width: 864px; }
	main h2,
	main h3,
	main h4 { font-size: 50px; }
	main p,
	main ul,
	main ol,
	main .gform_confirmation_message { font-size: 18px; }
	main ul.buttons { margin: 35px auto 0;  }
	main p + ul.buttons { margin-top: 15px; }
	main ul.buttons li { padding: 20px 10px 0; }
	main figure { margin: 35px auto 0; }
}

main .slides { margin: 45px 0 0; }
main .slides .slide { padding: 0 20px 20px; position: relative; }
main .slides .slide .wrap { position: relative; }
main .slides .slide .wrap figure { max-width: 100%; width: 100%; margin: 0; border: 9px solid #ffffff; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25); }
main .slides .slide .wrap figure img { width: 100%; height: auto; }
main .slides .slide .wrap .text { padding: 18px 15px 25px; background: #56b796; color: #fff; border-radius: 0 0 22px 22px; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25),  0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; text-align: center; }
main .slides .slide .wrap .text h2 { max-width: 100%; width: 100%; margin: 0; font-size: 22px; }
main .slides .slide .wrap .text p { max-width: 100%; width: 100%; margin-top: 1.25em; font-weight: 700; font-size: 12px; }
main .slides .slide .wrap .text h2 + p { margin-top: 0.4375em; }
main .slides .slick-arrow { width: 68px; height: 68px; font-size: 38px; position: absolute; bottom: calc( 50% - 34px ); left: 0; background: #56b796; color: #fff; border: 0; border-radius: 50%; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; text-align: center; display: flex; justify-content: center; align-items: center; z-index: 50; }
main .slides .slick-next { right: 0; left: auto; }

@media only screen and (min-width: 980px) {
	main .slides { margin: 60px 0 0; }
	main .slides .slide { width: 930px; padding: 0 40px; }
	main .slides .slide .wrap .text { width: 400px; padding: 38px 20px 34px; position: absolute; top: 40px; left: -40px; border-radius: 30px; }
	main .slides .slide .wrap .text h2 { font-size: 30px; }
	main .slides .slide .wrap .text p { font-size: 16px; }
	main .slides .slick-arrow { width: 90px; height: 90px; font-size: 50px; bottom: 60px; left: calc( 50% - 472px ); }
	main .slides .slick-next { right: auto; left: calc( 50% + 382px ); }
}

main .highlight { max-width: calc( 100% - 40px ); width: 940px; margin: 50px auto 0; position: relative; text-align: left; }
main .highlight hr { max-width: 100%; width: 100%; margin: 0; }
main .highlight hr:last-child { margin: 30px 0 0; }
main .highlight figure { width: 100px; margin: 10px -10px 0 20px; float: right; }
main .highlight figure img { width: 100%; height: auto; }
main .highlight p { max-width: 100%; width: 540px; margin: 0; padding: 1.133em 0 0; font-family: 'Lilita One', script; font-size: 22px; line-height: 1.2; text-transform: uppercase; }
main .highlight ul.buttons { margin: 8px 0 0; justify-content: flex-start; }
main .highlight ul.buttons li { padding: 15px 15px 0 0; }

@media only screen and (min-width: 980px) {
	main .highlight { margin: 68px auto 0; }
	main .highlight hr:last-child { margin: 40px 0 0; }
	main .highlight figure { width: 270px; margin: 0; position: absolute; top: -160px; right: 15px; float: none; }
	main .highlight p { width: 550px; font-size: 30px; text-align: center; }
	main .highlight ul.buttons { margin: 10px 0 0; }
	main .highlight ul.buttons li { padding: 20px 20px 0 0; }
}

main .form { max-width: calc( 100% - 40px ); width: 790px; margin: 45px auto 0; position: relative; }
main .form .gf_progressbar_wrapper { display: none; }
main .form .gform_wrapper { margin: 22px 0 0; text-align: left; }
main .form .gform_wrapper > .gform_heading { display: none; }
main .form .gform_wrapper > .gform_validation_errors { display: none; }
main .form .gform_fields { display: grid; grid-template-columns: 1fr; grid-gap: 15px; }
main .form .gform_fields div.gfield { position: relative; }
main .form .gform_fields div.gfield > label { padding: 0 0 0.5em; font-weight: 700; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); display: block; }
main .form .gform_fields div.gfield.hidden_label > label { display: none; }
main .form .gform_fields div.gfield input[type="text"],
main .form .gform_fields div.gfield input[type="email"],
main .form .gform_fields div.gfield input[type="number"],
main .form .gform_fields div.gfield input[type="url"],
main .form .gform_fields div.gfield textarea,
main .form .gform_fields div.gfield select { width: 100%; padding: 1.316em 1.154em; font-family: 'Lilita One', script; font-size: 19px; background: #fff; color: #333333; border: 0; border-radius: 0.769em; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; display: flex; align-items: center; }
main .form .gform_fields div.gfield.gfield_error input[type="text"],
main .form .gform_fields div.gfield.gfield_error input[type="email"],
main .form .gform_fields div.gfield.gfield_error input[type="number"],
main .form .gform_fields div.gfield.gfield_error input[type="url"],
main .form .gform_fields div.gfield.gfield_error textarea,
main .form .gform_fields div.gfield.gfield_error select { background: #f00; }
main .form .gform_fields div.gfield select { -webkit-appearance: none; appearance: none; }
main .form .gform_fields div.gfield input[type="text"]::placeholder,
main .form .gform_fields div.gfield input[type="email"]::placeholder,
main .form .gform_fields div.gfield input[type="number"]::placeholder,
main .form .gform_fields div.gfield input[type="url"]::placeholder,
main .form .gform_fields div.gfield textarea::placeholder,
main .form .gform_fields div.gfield select::placeholder { color: #cccccc; }
main .form .gform_fields div.gfield.gfield_error input[type="text"]::placeholder,
main .form .gform_fields div.gfield.gfield_error input[type="email"]::placeholder,
main .form .gform_fields div.gfield.gfield_error input[type="number"]::placeholder,
main .form .gform_fields div.gfield.gfield_error input[type="url"]::placeholder,
main .form .gform_fields div.gfield.gfield_error textarea::placeholder,
main .form .gform_fields div.gfield.gfield_error select::placeholder { color: #ffffff; }
main .form .gform_fields div.gfield select:invalid,
main .form .gform_fields div.gfield select:has(option[value=""]:checked) { color: #cccccc; }
main .form .gform_fields div.gfield .icon { width: 2.667em; height: 100%; font-size: 22px; position: absolute; top: 0; right: 0; background: #9f63b9; color: #fff; border-radius: 0 0.667em 0.667em 0; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; text-align: center; display: flex; justify-content: center; align-items: center; pointer-events: none; }
main .form .gform_fields div.gfield.gfield--type-multiselect > label { padding: 0 0 0.5em; font-weight: 700; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); display: block; }
main .form .gform_fields fieldset.gfield legend { font-weight: 700; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); }
main .form .gform_fields fieldset.gfield .ginput_container { position: relative; }
main .form .gform_fields fieldset.gfield .ginput_container .gchoice { margin: 10px 0 0; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 16px; position: relative; }
main .form .gform_fields fieldset.gfield .ginput_container input[type="checkbox"],
main .form .gform_fields fieldset.gfield .ginput_container input[type="radio"] { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
main .form .gform_fields fieldset.gfield .icon { width: 1.667em; height: 1.667em; padding: 0 0 0.33em; font-size: 22px; background: #fff; color: #ffffff; border-radius: 0.667em; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -0.167em 0px 0.234em rgba(4, 5, 5, 0.14) inset; text-align: center; position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; pointer-events: none; }
main .form .gform_fields fieldset.gfield.gfield--type-radio .icon { border-radius: 50%; }
main .form .gform_fields fieldset.gfield .ginput_container label { padding: 0 0 0 54px; min-height: 40px; font-weight: 700; font-size: 11px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); display: flex; align-items: center; }
main .form .gform_fields fieldset.gfield input[type="checkbox"]:checked + .icon,
main .form .gform_fields fieldset.gfield input[type="radio"]:checked + .icon { color: #333333; }
main .form .gform_fields fieldset.gfield.gfield--type-consent legend { display: none; }
main .form .gform_fields fieldset.gfield.gfield--type-consent .ginput_container { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 16px; }
main .form .gform_fields fieldset.gfield.gfield--type-consent input[type="checkbox"]:checked + .icon { color: #333333; }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_header,
main .form .gform_fields fieldset.gfield--type-list .gfield_list_group { padding: 10px 0 0; display: flex; gap: 10px; }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_header .gfield_header_item { font-size: 14px; }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_header .gfield_header_item,
main .form .gform_fields fieldset.gfield--type-list .gfield_list_group .gfield_list_group_item { width: calc( 100% - 92px ); }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_group .gfield_list_group_item input { width: 100%; padding: 1.316em 1.154em; font-family: 'Lilita One', script; font-size: 19px; background: #fff; color: #333333; border: 0; border-radius: 0.769em; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; display: flex; align-items: center; }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_header .gfield_header_item.gfield_header_item--icons,
main .form .gform_fields fieldset.gfield--type-list .gfield_list_group .gfield_list_icons { width: 92px; display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
main .form .gform_fields fieldset.gfield--type-list .gfield_list_group .gfield_list_icons button { font-size: 14px; background: none; border: 0; color: #fff; }
main .form .gform_fields .gfield.gfield--type-section { margin: 20px 0 0; padding: 20px 0 0; border-top: 1px solid #fff; }
main .form .gform_fields .gfield.gfield--type-section h3 { margin: 0; width: 100%; max-width: 100%; }
main .form .gform_fields .gfield.gfield--type-section .gsection_description { padding: 0.5em 0 0; font-weight: 700; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); }
main .form .gform_fields .gfield .gfield_description { padding: 0.5em 0 0; font-size: 14px; line-height: 1.2; text-shadow: 0px 4px 5px rgba(15, 81, 130, 0.6); display: block; }
main .form .gform_fields .gfield .gfield_description.validation_message { color: #f00; }
main .form .gform_fields div.gfield.gfield--type-fileupload .upload-field { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 10px; }
main .form .gform_fields div.gfield.gfield--type-fileupload .upload-field label { width: 100%; padding: 1.316em 1.154em; font-family: 'Lilita One', script; font-size: 19px; background: #fff; color: #333333; border: 0; border-radius: 0.769em; box-shadow: 0px 7px 8px 0px rgba(8, 29, 46, 0.25), 0px -5px 0px 7px rgba(4, 5, 5, 0.14) inset; display: flex; align-items: center; flex-grow: 1; }
main .form .gform_fields div.gfield.gfield--type-fileupload.gfield_error .upload-field label { font-weight: 700; background: #ce1325; color: #ffffff; }
main .form .gform_fields div.gfield.gfield--type-fileupload .upload-field input { width: 100%; height: 100%; position: absolute; top: 0; left: 0; padding: 0; cursor: pointer; opacity: 0; filter: alpha(opacity=0); }
main .form .gform_fields div.gfield.gfield--type-fileupload .upload-field .btn { flex-shrink: 0; }
main .form .gform_footer { padding: 15px 0 0; text-align: right; }
main .form .gform_page_footer { padding: 15px 0 0; text-align: right; }
main .form .gform_page_footer button { margin: 0 0 0 1em; }

main .form form#gform_1 .gform_fields div.gfield > label { display: none; }

@media only screen and (min-width: 980px) {
	main .form { margin: 60px auto 0; }
	main .form .gform_wrapper { margin: 30px 0 0; }
	main .form .gform_fields { grid-template-columns: 1fr 1fr; grid-gap: 20px; }
	main .form .gform_fields .gfield { grid-column: span 2; }
	main .form .gform_fields .gfield.gfield--width-half { grid-column: span 1; }
	main .form .gform_fields .gfield:last-child { min-height: 80px; }
	main .form .gform_fields div.gfield > label { font-size: 18px; }
	main .form .gform_fields div.gfield input[type="text"],
	main .form .gform_fields div.gfield input[type="email"],
	main .form .gform_fields div.gfield input[type="number"],
	main .form .gform_fields div.gfield input[type="url"],
	main .form .gform_fields div.gfield textarea,
	main .form .gform_fields div.gfield select { font-size: 26px; }
	main .form .gform_fields div.gfield .icon { font-size: 30px; }
	main .form .gform_fields div.gfield.gfield--type-multiselect > label { font-size: 18px; }
	main .form .gform_fields fieldset.gfield legend { font-size: 18px; }
	main .form .gform_fields fieldset.gfield .ginput_container .gchoice { margin: 20px 0 0; gap: 20px; }
	main .form .gform_fields fieldset.gfield .ginput_container label { font-size: 14px; min-height: 50px; padding: 0 0 0 70px; }
	main .form .gform_fields fieldset.gfield .icon { font-size: 30px; }
	main .form .gform_fields fieldset.gfield.gfield--type-consent .ginput_container { gap: 20px; }
	main .form .gform_fields .gfield.gfield--type-section .gsection_description { font-size: 18px; }
	main .form .gform_fields .gfield .gfield_description { font-size: 18px; }
	main .form .gform_fields div.gfield.gfield--type-fileupload .upload-field label { font-size: 26px; }
	main .form .gform_footer { padding: 30px 0 0; }
	main .form .gform_page_footer { padding: 30px 0 0; }
	main .form form#gform_1 .gform_fields { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; grid-gap: 20px; }
	main .form form#gform_1 .gform_fields .gfield { grid-column: span 2; }
	main .form form#gform_1 .gform_fields .gfield.gfield--width-half { grid-column: span 3; }
	main .form form#gform_1 .gform_fields fieldset.gfield.gfield--type-consent { grid-column: span 3; }
	main .form form#gform_1 .gform_footer { padding: 0; position: absolute; bottom: 0; right: 0; }
}

body > footer { padding: 40px 0; background: #262626; color: #ffffff; position: relative; }
body > footer > div { max-width: 980px; margin: 0 auto; padding: 0 20px; position: relative; }
body > footer .left { padding: 40px 0 0; }
body > footer .left ul.legal { font-size: 16px; line-height: 1.875; }
body > footer .left ul.legal li a { color: #d8d5ab; text-decoration: underline; }
body > footer .left ul.legal li a:hover { color: #ffffff; }
body > footer .left ul.social { margin: 1em 0 0; font-size: 30px; display: flex; }
body > footer .left ul.social li { padding: 0 1.133em 0 0; }
body > footer .left ul.social li a { color: #ffffff; }
body > footer .left ul.social li a:hover { color: #d8d5ab; }
body > footer .left ul.copyright { margin: 2.625em 0 0; font-size: 16px; line-height: 1.875; }
body > footer .left ul.copyright li a { color: #d8d5ab; text-decoration: underline; }
body > footer .left ul.copyright li a:hover { color: #ffffff; }
body > footer .right ul.logos { display: flex; }
body > footer .right ul.logos li { padding: 0 20px 0 0; }
body > footer .right ul.logos li img { width: auto; max-width: 150px; height: 82px; object-fit: contain; }
body > footer .right ul.logos + ul.logos { margin: 30px 0 0; }
body > footer .right ul.logos + ul.logos li { padding: 0 0 0 12px; }

@media only screen and (min-width: 980px) {
	body > footer > div { display: flex; }
	body > footer .left { width: 50%; padding: 18px 0 0; order: 1; }
	body > footer .left ul.copyright { display: flex; }
	body > footer .left ul.copyright li { display: flex; }
	body > footer .left ul.copyright li:before { padding: 0 0.500em; color: #666666; content: "|"; display: block; }
	body > footer .left ul.copyright li:first-child:before { display: none; }
	body > footer .right { width: 50%; order: 2; }
	body > footer .right ul.logos { justify-content: flex-end; }
	body > footer .right ul.logos li { padding: 0 0 0 40px; }
	body > footer .right ul.logos li img { max-width: 200px; height: 110px; }
	body > footer .right ul.logos + ul.logos { margin: 40px 0 0; }
	body > footer .right ul.logos + ul.logos li { padding: 0 0 0 15px; }
	body > footer .right ul.logos + ul.logos li img { height: 102px; }
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
