/* 
	Table of Contents

    01. Settings ----------------------------------
    02. Sprite ------------------------------------
    03. Generic -----------------------------------
    04. Base --------------------------------------
         Small Desktop ----------------------------
         Tablet Portrait --------------------------
         Mobile -----------------------------------
    05. Fonts -------------------------------------
    06. Helpers -----------------------------------
         Clear ------------------------------------
         Notext -----------------------------------
         Hidden -----------------------------------
         Alignleft --------------------------------
         Alignright -------------------------------
         Disabled ---------------------------------
         Grid -------------------------------------
         Responsive Helpers -----------------------
    07. Reset -------------------------------------
    08. Regions -----------------------------------
    09. Container ---------------------------------
    10. Content -----------------------------------
    11. Footer ------------------------------------
    12. Header ------------------------------------
    13. Main --------------------------------------
         Tablet Portrait --------------------------
         Mobile -----------------------------------
    14. Shell -------------------------------------
    15. Sidebar -----------------------------------
    16. Wrapper -----------------------------------
    17. Modules -----------------------------------
    18. Button ------------------------------------
         Button Block -----------------------------
         Button Default ---------------------------
    19. Details -----------------------------------
         Detail -----------------------------------
         Tablet Portrait --------------------------
         Mobile -----------------------------------
    20. Form Elements -----------------------------
    21. Form --------------------------------------
         Tablet Portrait --------------------------
    22. List --------------------------------------
    23. Logo --------------------------------------
    24. Nav ---------------------------------------
    25. Section -----------------------------------
    26. Slider ------------------------------------
    27. Table -------------------------------------
    28. Widget ------------------------------------
    29. Themes ------------------------------------
 */

/* ------------------------------------------------------------ *\
	Settings
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Sprite
\* ------------------------------------------------------------ */

.ico-arrow-select { background-image     : url(../images/src/assets/images/sprite.png); background-position     : 0% 0%; background-size     : 100% 100%; width     : 14px; height     : 30px; display     : inline-block; vertical-align     : middle; font-size     : 0px; }

@media (-webkit-min-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2/1), (min-resolution: 192dpi) {
	.ico-arrow-select { background-image     : url(../images/src/assets/images/sprite.@2x.png); background-position     : 0% 0%; background-size     : 100% 100%; width     : 14px; height     : 30px; display     : inline-block; vertical-align     : middle; font-size     : 0px; }
}

/* ------------------------------------------------------------ *\
	Generic
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */

html { font-size: 1.25vw; }

body { min-width: 320px; background: #000; font-family: 'Brandon Grotesque', sans-serif; font-size: 1rem; line-height: 1.45; color: #f1fdff; }

a { color: inherit; text-decoration: underline; }

a:hover,
a[href^="tel"] { text-decoration: none; }

h1,
h2,
h3,
h4,
h5,
h6 { margin-bottom: 0.725em; }

h1 { font-size: 2.25rem; }

h2 { font-size: 1.92rem; }

h3 { font-size: 1.58rem; }

h4 { font-size: 1.25rem; }

h5 { font-size: 1rem; }

h6 { font-size: 0.83rem; }

/*  54/1920*100/1.25  */

p,
ul,
ol,
dl,
hr,
table,
blockquote { margin-bottom: 1.45em; }

h1[class],
h2[class],
h3[class],
h4[class],
h5[class],
h6[class],
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child { margin-bottom: 0; }

/* Small Desktop */

@media (max-width: 1200px) {
	html { font-size: 1.5vw; }
}

/* Tablet Portrait */

@media (max-width: 1023px) {
	html { font-size: 3vw; }	
}

/* Mobile */

@media (max-width: 767px) {
	html { font-size: 3vw; }
}

/* ------------------------------------------------------------ *\
	Fonts
\* ------------------------------------------------------------ */

@font-face {
    font-family: 'Brandon Grotesque';
    src: url('../fonts/src/assets/fonts/BrandonGrotesque-Regular.woff2') format('woff2'),
         url('../fonts/src/assets/fonts/BrandonGrotesque-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Brandon Grotesque';
    src: url('../fonts/src/assets/fonts/BrandonGrotesque-RegularItalic.woff2') format('woff2'),
         url('../fonts/src/assets/fonts/BrandonGrotesque-RegularItalic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Brandon Grotesque';
    src: url('../fonts/src/assets/fonts/BrandonGrotesque-BoldItalic.woff2') format('woff2'),
         url('../fonts/src/assets/fonts/BrandonGrotesque-BoldItalic.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Brandon Grotesque';
    src: url('../fonts/src/assets/fonts/BrandonGrotesque-Bold.woff2') format('woff2'),
         url('../fonts/src/assets/fonts/BrandonGrotesque-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

/* ------------------------------------------------------------ *\
	Helpers
\* ------------------------------------------------------------ */

/*  Clear  */

.clear:after { content     : ''; display     : block; clear     : both; }

/*  Notext  */

.notext { overflow     : hidden; text-indent     : 101%; white-space     : nowrap; }

/*  Hidden  */

[hidden],
.hidden { display: none !important; }

/*  Alignleft  */

.alignleft { float: left; }

/*  Alignright  */

.alignright { float: right; }

/*  Disabled  */

[disabled],
.disabled { cursor: default; }

/*  Grid  */

.cols { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; margin: 0 -10px; }

.col { max-width: 100%; -webkit-box-flex: 1; -ms-flex: 1 1; flex: 1 1; padding: 0 10px; }

.col--1of2 { max-width: 50%; -webkit-box-flex: 0; -ms-flex: 0 0 50%; flex: 0 0 50%; }

/*  Responsive Helpers  */

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block { display: none !important; }

@media (max-width: 767px) {
	.hidden-xs { display: none !important; }
	.visible-xs-block { display: block !important; }
	.visible-xs-inline { display: inline !important; }
	.visible-xs-inline-block { display: inline-block !important; }
}

@media (min-width: 768px) and (max-width: 1023px) {
	.hidden-sm { display: none !important; }
	.visible-sm-block { display: block !important; }
	.visible-sm-inline { display: inline !important; }
	.visible-sm-inline-block { display: inline-block !important; }
}

@media (min-width: 1024px) and (max-width: 1200px) {
	.hidden-md { display: none !important; }
	.visible-md-block { display: block !important; }
	.visible-md-inline { display: inline !important; }
	.visible-md-inline-block { display: inline-block !important; }
}

@media (min-width: 1201px) {
	.hidden-lg { display: none !important; }
	.visible-lg-block { display: block !important; }
	.visible-lg-inline { display: inline !important; }
	.visible-lg-inline-block { display: inline-block !important; }
}

/* ------------------------------------------------------------ *\
	Reset
\* ------------------------------------------------------------ */

* { padding: 0; margin: 0; outline: 0; -webkit-box-sizing: border-box; box-sizing: border-box; }

*:before,
*:after { -webkit-box-sizing: inherit; box-sizing: inherit; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main { display: block; }

template { display: none; }

html { -webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: rgba(0,0,0,0); }

body { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none; text-size-adjust: none; }

img,
iframe,
video,
audio,
object { max-width: 100%; }

img,
iframe { border: 0 none; }

img { height: auto; display: inline-block; vertical-align: middle; }

b,
strong { font-weight: bold; }

address { font-style: normal; }

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

a,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="image"],
label[for] { cursor: pointer; }

a[href^="tel"],
button[disabled],
input[disabled],
textarea[disabled],
select[disabled] { cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner { padding: 0; border: 0; }

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"],
textarea,
a[href^="tel"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; appearance: none; }

textarea { overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; }

button,
input,
optgroup,
select,
textarea { font-family: inherit; font-size: inherit; color: inherit; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; }

button,
select { text-transform: none; }

table { width: 100%; border-collapse: collapse; border-spacing: 0; }

nav ul,
nav ol { list-style: none outside none; }

/* ------------------------------------------------------------ *\
	Regions
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Container
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Content
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Footer
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Header
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Main
\* ------------------------------------------------------------ */

.main .main__inner { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row nowrap; flex-flow: row nowrap; min-height: 100vh; padding: 0 5% 0 0; }

.main .main__left { width: 90%; height: 80vh; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; margin-left: -5%;}

.main .main__right { -ms-flex-negative: 0; flex-shrink: 0; overflow-y: auto; width: 40%; max-height: 100vh; padding: 5.25rem 20px;}

.main .main__top { position: relative; top: -3.33rem; height: 53vh; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; }

.main .main__top + .main__content { margin: 0 10%; }

.main .main__title { margin-bottom: 1.67rem; }

.main .main__content { padding: 0 1rem; }

.main .main__actions { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row nowrap; flex-flow: row nowrap; margin-bottom: 2.08rem; }

.main .main__actions .btn { width: 100%; }

.main .main__actions .btn + .btn { margin-left: 0.83rem; }

/* Tablet Portrait */

@media (max-width: 1023px) {
	.main .main__inner { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-flow: column wrap; flex-flow: column wrap; padding: 0 1rem; }

	.main .main__left { width: 80%; height: 16.67rem; margin-left: 0;}
	.main .main__right { width: 100%; max-height: none; padding: 0 4.17rem; margin: -1rem auto 0; }
	
	.main .main__title { text-align: center; }
}

/* Mobile */

@media (max-width: 767px) {
/*	.main .main__left { margin-top: -4.17rem; margin-left: 0;}
*/
	.main .main__right { padding: 0 2.0rem; }

	.main .main__top { top: 0; height: 40vh; margin-top: -3.33rem; }
}

/* ------------------------------------------------------------ *\
	Shell
\* ------------------------------------------------------------ */

.shell { max-width: 1420px; padding-left: 10px; padding-right: 10px; margin: auto; }

.shell--fluid { max-width: none; }

/* ------------------------------------------------------------ *\
	Sidebar
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Wrapper
\* ------------------------------------------------------------ */

.wrapper { min-height: 100vh; }

/* ------------------------------------------------------------ *\
	Modules
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Button
\* ------------------------------------------------------------ */

.btn { display: inline-block; vertical-align: middle; height: 2.08rem; border: 0; border-radius: 0.42rem; background: #2b2b2b; font-weight: 700; line-height: 2.08rem; cursor: pointer; text-align: center; text-decoration: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-transition: .3s; -o-transition: .3s; transition: .3s; }

.btn:hover { background: #f1fdff; color: #2b2b2b; }

/*  Button Block  */

.btn--block { display: block; padding-left: 0; padding-right: 0; }

/*  Button Default  */

.btn--default { background: rgba(255, 255, 255, 1); color: #000; }

.btn--default:hover { background: rgba(255, 255, 255, .66); }

/* ------------------------------------------------------------ *\
	Details
\* ------------------------------------------------------------ */

/*  Detail  */

.detail:after { content: ''; display: table; clear: both; line-height: 0; }

.detail + .detail { margin-top: 2.8rem; }

.detail .detail__aside { float: left; width: 5.13rem; padding-right: 1.67rem; text-align: right; }

.detail .detail__content { overflow: hidden; }

.detail .detail__entry { max-width: 18.33rem; }

.detail .detail__entry a { text-decoration: underline; }
.detail .detail__entry a:hover { text-decoration: none; }

/* Tablet Portrait */

@media (max-width: 1023px) {
	.details { margin-bottom: 1.67rem; }
	
	.detail + .detail { margin-top: 2rem; }
}

/* Mobile */

/*@media (max-width: 767px) {
	.detail .detail__entry a { text-decoration: underline; }
}*/

/* ------------------------------------------------------------ *\
	Form Elements
\* ------------------------------------------------------------ */

input::-webkit-input-placeholder { color: inherit; opacity: 1; }

input:-ms-input-placeholder { color: inherit; opacity: 1; }

input::-ms-input-placeholder { color: inherit; opacity: 1; }

input::placeholder { color: inherit; opacity: 1; }

textarea::-webkit-input-placeholder { color: inherit; opacity: 1; }

textarea:-ms-input-placeholder { color: inherit; opacity: 1; }

textarea::-ms-input-placeholder { color: inherit; opacity: 1; }

textarea::placeholder { color: inherit; opacity: 1; }

input:-webkit-autofill { -webkit-text-fill-color: inherit; -webkit-box-shadow: 0 0 0 1000px #fff inset; }

.select select,
.field { width: 100%; height: 3.33rem; padding: 0 1rem; border: 1px solid #2b2b2b; border-radius: 0.42rem; background: #2b2b2b; color: #f1fdff; -webkit-transition: .3s; -o-transition: .3s; transition: .3s; }

.select select:focus,
.field:focus { border-color: #f1fdff; }

.select { position: relative; }

.select:after { content: ''; position: absolute; top: 50%; right: 1.04rem; width: 0.58rem; height: 1.25rem; background-image     : url(../images/src/assets/images/sprite.png); background-position     : 0% 0%; background-size     : 100% 100%; margin-top: -0.63rem; pointer-events: none; }

.select select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

.select select::-ms-expand { display: none; }

/* ------------------------------------------------------------ *\
	Form
\* ------------------------------------------------------------ */

.form .form__row { margin-bottom: .42rem; }

.form .form__actions { margin-top: .83rem; }

.form .form__actions .btn { width: 50%; }

.form .form__error { padding: 12px; border-radius: 20px; margin-top: 5px; color: #D0021B }

.form .form__error p { color: #fff; font-size: 15px; padding-left: 0; margin-left: 0; }

.form .form__spinner { background: url(../images/src/assets/images/spinner.gif); display: inline-block; width: 16px; height: 12px; margin-left: 10px; }

.form .fade-enter-active, .form .fade-leave-active { -webkit-transition: opacity .5s; -o-transition: opacity .5s; transition: opacity .5s }

.form .fade-enter, .form .fade-leave-to /* .fade-leave-active in <2.1.8 */ { opacity: 0 }

/* Tablet Portrait */

@media (max-width: 1023px) {
	.form .form__thankyou_message { text-align: center; }
}

/* ------------------------------------------------------------ *\
	List
\* ------------------------------------------------------------ */

[class^="list-"] { list-style: none outside none; }

/* ------------------------------------------------------------ *\
	Logo
\* ------------------------------------------------------------ */

.logo { background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; }

/* ------------------------------------------------------------ *\
	Nav
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Section
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Slider
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Table
\* ------------------------------------------------------------ */

/* ------------------------------------------------------------ *\
	Widget
\* ------------------------------------------------------------ */

.widgets { list-style: none outside none; }

/* ------------------------------------------------------------ *\
	Themes
\* ------------------------------------------------------------ */
