﻿@charset "utf-8";
/* CSS Document */

/* fonts [imported] */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic,700,700italic,800,800italic);
@import url(https://fonts.googleapis.com/css?family=Oswald:300,400,700);
@import url(https://fonts.googleapis.com/css?family=Roboto:100,100italic,300,300italic,400,400italic,500,500italic,700,700italic,900,900italic);


/* reset */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

html,
body {
    height: 100%;
}

body {
    line-height: 1;
}

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

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

*:focus {
    outline: none;
}

/* remove dotted outline from links, button and input element */
a:focus,
a:active,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
    border: 0;
    outline: 0;
}


/* supersized */
img {
    border: none;
}

#supersized-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60px;
    height: 60px;
    margin: -30px 0 0 -30px;
    text-indent: -999em;
    background: none;
    z-index: -1;
}

#supersized {
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    overflow: hidden;
    height: 100%;
    width: 100%;
    z-index: -999;
}

#supersized img {
    width: auto;
    height: auto;
    position: relative;
    display: none;
    outline: none;
    border: none;
}

#supersized.speed img {
    -ms-interpolation-mode: nearest-neighbor;
    image-rendering: -moz-crisp-edges;
}

/* Speed */
#supersized.quality img {
    -ms-interpolation-mode: bicubic;
    image-rendering: optimizeQuality;
}

/* Quality */
#supersized li {
    display: block;
    list-style: none;
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: none;
    z-index: -30;
}

#supersized a {
    width: 100%;
    height: 100%;
    display: block;
}

#supersized li.prevslide {
    z-index: -20;
}

#supersized li.activeslide {
    z-index: -10;
}

#supersized li.image-loading {
    background: none;
    width: 100%;
    height: 100%;
}

#supersized li.image-loading img {
    visibility: hidden;
}

#supersized li.prevslide img,
#supersized li.activeslide img {
    display: inline;
}


/* layout */
body {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 1.5;
    font-style: normal;
    font-weight: normal;
    text-align: center;
    color: #fff;
    background: #000;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    width: 100%;
    height: 100%;
}

#intro-top-line,
#intro-bottom-line {
    display: none;
}

#intro-wrapper {
    width: 100%;
    text-align: center;
}

#intro-top {
    font-family: 'Oswald', sans-serif;
    font-size: 25px;
    line-height: 1;
    font-style: normal;
    font-weight: 400;
    text-align: center;
    color: #ffffff;
    margin: 0 auto 18px auto;
    padding: 0;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
}

#intro-title {
    font-family: 'Oswald', sans-serif;
    font-size: 80px;
    line-height: 90px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: none;
    text-align: center;
    margin: 20px auto 20px auto;
    padding: 0;
    color: #f5f2eb;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.38);
}

#intro-subtitle {
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #ffffff;
    background: rgba(0, 0, 0, 0.34);
    width: 200px;
    height: 30px;
    padding: 5px 0;
    margin: 14px auto 0 auto;
    line-height: 22px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}


/* teaser */
#teaser {
    font-family: 'Oswald', sans-serif;
    font-size: 25px;
    line-height: 1;
    font-style: normal;
    font-weight: 400;
    letter-spacing: normal;
    text-transform: none;
    text-align: right;
    margin: -13px 0 0 0;
}

#teaser-text {
    position: relative;
    height: 80px;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.teaser-text-animation {
    display: none;
    text-align: right;
    clear: both;
}

.teaser-text-animation.active {
    display: inline-table;
}

.teaser-text-animation:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.teaser-text-animation h3 {
    position: relative;
    font-family: 'Oswald', sans-serif;
    font-size: 25px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
}

.teaser-text-animation h3:before {
    content: "";
    clear: both;
}

.teaser-text-animation span {
    display: block;
    margin: 0 10px 0 0;
    padding: 0;
    float: left;
}

.teaser-text-animation .teaser-normal {
    color: #fff;
}

#intro-title {
    font-family: 'Oswald', sans-serif;
    font-size: 80px;
    line-height: 90px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: none;
    text-align: center;
    margin: 20px auto 20px auto;
    padding: 0;
    text-shadow: 1px 1px 2px #000;
}

#intro-subtitle {
    display: inline-block;
    min-width: 320px;
    max-width: 100%;
    height: 50px;
    padding: 0 28px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    background: rgba(255, 255, 255, 0.10);
    color: #ffffff;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    line-height: 48px;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.25s ease;
    text-shadow: none;
}

a {
    text-decoration: none;
    outline: none;
}

a:hover {
    color: #fff;
    text-decoration: none;
}

p a {
    text-decoration: none;
    outline: none;
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
}

p a:hover {
    color: #fff;
    text-decoration: none;
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
}

::-moz-selection {
    background: #555;
    color: #fff;
    /* Firefox */
}

::selection {
    background: #555;
    color: #fff;
    /* Safari */
}


.upper-page {
    min-height: 100%;
    margin: 0;
    padding: 0;
    background: none;
}

.upper-content {
    margin: 0 auto;
    padding: 0;
}

.lower-page {
    min-height: 100%;
    margin: 0;
    padding: 0;
}

.lower-content {
    margin: 0 auto;
    padding: 138px 0 38px 0;
    color: #fff;
}

.lower-content p {
    margin: 0 auto;
    padding: 10px;
    color: #fff;
    text-align: center;
}

.center {
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

#about,
#services,
#contact {
    display: none;
}

.about-intro,
.services-intro,
.contact-intro {
    position: relative;
    width: auto;
    margin: 0;
    padding: 0 0 50px 0;
}

.info {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    font-weight: 500;
    font-style: normal;
    text-transform: uppercase;
    padding: 15px 0 15px 0;
    line-height: 1;
}

.awesome {
    font-size: 30px;
}

.about-column-full,
.services-column-full {
    padding: 30px 0 30px 0;
}

.about-column,
.services-column {
    padding: 0 0 30px 0;
}

.contact-column {
    padding: 30px 0 30px 0;
}

h1 {
    font-family: 'Oswald', sans-serif;
    font-size: 70px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: normal;
    text-transform: none;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 0;
    line-height: 1;
    position: relative;
    z-index: 2;
}

h2 {
    font-family: 'Oswald', sans-serif;
    font-size: 35px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: normal;
    text-transform: none;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 20px 0 10px 0;
    line-height: 1;
}

h4 {
    font-family: 'Oswald', sans-serif;
    font-size: 13px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    padding: 5px 0 0 0;
    line-height: 1.5;
}


/* borders */
.borders {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    border: 15px solid rgba(0, 0, 0, 0.5);
    z-index: 0;
}

.borders,
.borders:after,
.borders:before {
    -webkit-box-sizing: border-box;
    /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;
    /* Firefox, other Gecko */
    box-sizing: border-box;
    /* Opera/IE 8+ */
}


/* rain */
#rain {
    position: fixed;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background: url(../images/rain.gif) repeat top left;
    opacity: 0.4;
    -moz-opacity: 0.4;
    -webkit-opacity: 0.4;
    filter: alpha(opacity=40);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    z-index: 0;
}


/* snow */
#snow {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    z-index: 1;
}


/* particles */
#particles-js {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    z-index: 1;
}


/* curtains */
#curtains {
    position: fixed;
    height: 100%;
    width: 100%;
    background: url(../images/curtains.png) repeat top left;
    z-index: -1;
}

#curtains-video {
    position: fixed;
    height: 100%;
    width: 100%;
    background: url(../images/curtains.png) repeat top left;
    z-index: 0;
}


/* top shade */
#top-shade {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;

    /* IE9 SVG, needs conditional override of 'filter' to 'none' */
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjY1Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.65)), color-stop(50%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0)));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
    /* IE6-8 */


    z-index: 0;
    display: none;
    visibility: hidden;
}


/* countdown */
#countdown-wrapper {
    position: relative;
    margin-top: 40px;
    left: auto;
    bottom: auto;
}

#countdown {
    margin: 0 auto;
    padding: 0;
}

#countdown li {
    display: inline-block;
    width: 100px;
}

#countdown span {
    font-family: 'Oswald', sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    text-transform: uppercase;
    margin-left: 42px;
}

#countdown input {
    font-family: 'Oswald', sans-serif !important;
    font-weight: 400 !important;
    font-size: 30px !important;
}

#countdown li div {
    display: block !important;
}


/* menu */
.menu {
    position: fixed;
    width: auto;
    top: 30px;
    left: 31px;
    margin: 0;
    padding: 0;
    z-index: 1000;
}

.mainNav {
    width: 155px;
    clear: both;
    list-style: none;
    text-align: left;
}

ul.mainNav li a {
    font-family: 'Oswald', sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    text-transform: uppercase;
    color: #fff;
    display: block;
    margin-bottom: 10px;
    padding-left: 15px;
    list-style: none;
    outline: none;
}

ul.mainNav li a:hover {
    padding-left: 12px;
    border-left: 3px solid #fff;
}

ul.mainNav li a.active {
    padding-left: 12px;
    border-left: 3px solid #fff;
}

.navNumber {
    font-size: 30px;
    padding: 0;
}

.navTitle {
    letter-spacing: 1px;
    color: #fff;
    padding: 0 0 0 10px;
}

a:link,
a:visited,
a:active {
    text-decoration: none;
    outline: none;
}

li.curr {
    text-indent: -3px;
}


/* menu mobile */
.menu-mobile {
    display: none;
    visibility: hidden;
}

.menu-icon {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 21px;
    border-top: 3px solid #fff;
    border-bottom: 3px solid #fff;
}

.menu-icon:before {
    position: absolute;
    content: "";
    top: 9px;
    left: 0;
    width: 100%;
    border-top: 3px solid #fff;
}

.menu-mobile a.menu-mobile-trigger {
    width: 50px;
    height: 21px;
    margin: 0;
    padding: 0;
}

.menu-mobile a.menu-mobile-trigger:hover {
    cursor: pointer;
    background-position: 50px 0;
}

.menu-mobile a {
    color: #000;
    font-weight: normal;
    text-decoration: none;
}

.menu-mobile a.active {
    background: none;
}

.menu-mobile ul,
li {
    margin: 0;
    padding: 0;
}

.menu-mobile .lifting {
    margin: 4px 0 0 0;
    height: 20px;
}

.menu-mobile .lifting-first {
    margin: 13px 0 0 0;
    height: 20px;
}

.menu-mobile li {
    position: relative;
    margin: 7px 0 0 0;
    padding: 0 0 10px 0;
    background: none;
    float: right;
    text-transform: uppercase;
    height: 20px;
}

.menu-mobile li a {
    padding: 0 0 9px 7px;
    text-decoration: none;
    float: right;
    text-transform: uppercase;
    height: 20px;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.menu-mobile li ul {
    display: none;
    right: 0;
    position: absolute;
    top: 100%;
    background: none;
}

.menu-mobile li:hover ul {
    display: block;
    width: auto;
}

.menu-mobile li ul a {
    white-space: nowrap;
    background: none;
}

.menu-mobile li ul a:hover {
    background: none;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}


/* contact form */
#contact form {
    width: 100%;
    margin: 30px auto 40px auto;
}

form {
    margin: 0 auto;
    padding: 0;
    display: block;
}

input {
    position: relative;
    width: 100%;
    height: 40px;
    border: 1px solid #fff;
    line-height: 30px;
    padding: 5px 5px;
    background: none;
    margin: 5px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 1.5;
    font-style: normal;
    font-weight: normal;
    text-align: center;
    color: #fff;
}

#form input {
    width: 90%;
}

#form textarea {
    width: 90%;
}

textarea {
    position: relative;
    width: 100%;
    height: 100px;
    border: 1px solid #fff;
    line-height: 30px;
    padding: 5px 5px;
    background: none;
    margin: 5px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 1.5;
    font-style: normal;
    font-weight: normal;
    text-align: center;
    color: #fff;
}

input:hover,
textarea:hover {
    border-color: rgba(255, 255, 255, 0.5);
}

#form input:focus,
#form textarea:focus {
    -webkit-animation: glow 900ms ease-out infinite alternate;
    -moz-animation: glow 900ms ease-out infinite alternate;
    -ms-animation: glow 900ms ease-out infinite alternate;
    -o-animation: glow 900ms ease-out infinite alternate;
    animation: glow 900ms ease-out infinite alternate;
}

.submit {
    position: relative;
    width: 45%;
    border: 1px solid #fff;
    padding: 5px 35px;
    background: none;
    font-family: 'Oswald', sans-serif;
    font-size: 12px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    text-align: center;
    line-height: 30px;
    color: #fff;
    text-shadow: 1px 1px 2px #000;
    margin: 5px 5px 0 5px;
    cursor: pointer;
    outline: none;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.submit:hover {
    color: #fff;
}

.submit:hover:after,
.submit:active:after {
    height: 100%;
}

.submit:after {
    position: absolute;
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    content: '';
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    z-index: -1;
}

.success {
    font-family: 'Oswald', sans-serif;
    font-size: 13px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    text-align: center;
    margin: 0 auto;
    padding: 30px 0 30px 0;
    line-height: 1;
}

#form .error {
    font-size: 10px;
    text-transform: uppercase;
    text-align: center;
    display: block;
    margin: 0;
    padding: 0;
}


@-webkit-keyframes glow {
    0% {
        box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 5px rgba(255, 255, 255, 0.1)
    }

    100% {
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.4)
    }
}

@-moz-keyframes glow {
    0% {
        box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 5px rgba(255, 255, 255, 0.1)
    }

    100% {
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.4)
    }
}

@-o-keyframes glow {
    0% {
        box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 5px rgba(255, 255, 255, 0.1)
    }

    100% {
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.4)
    }
}

@-ms-keyframes glow {
    0% {
        box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 5px rgba(255, 255, 255, 0.1)
    }

    100% {
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.4)
    }
}

@keyframes glow {
    0% {
        box-shadow: 0 0 5px rgba(255, 255, 255, 0.2), inset 0 0 5px rgba(255, 255, 255, 0.1)
    }

    100% {
        box-shadow: 0 0 20px rgba(255, 255, 255, 0.6), inset 0 0 10px rgba(255, 255, 255, 0.4)
    }
}

::-webkit-input-placeholder {
    font-style: normal;
    color: #fff;
}

::-moz-placeholder {
    font-style: normal;
    color: #fff;
}

:-ms-input-placeholder {
    font-style: normal;
    color: #fff;
}

input:-moz-placeholder {
    font-style: normal;
    color: #fff;
}

/* newsletter trigger */
#subscribe-form {
    position: relative;
    bottom: auto;
    right: auto;
    margin: 38px auto 0 auto;
    padding: 0;
    width: auto;
    max-width: calc(100% - 40px);
    background: none;
    border: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    z-index: 1000;
    text-align: center;
    box-sizing: border-box;
}

.newsletter-trigger {
    display: inline-block;
    min-width: 320px;
    max-width: 100%;
    height: 50px;
    padding: 0 28px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    background: rgba(255, 255, 255, 0.10);
    color: #ffffff;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    line-height: 48px;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.25s ease;
    text-shadow: none;
}

.newsletter-trigger:hover {
    background: rgba(255, 255, 255, 0.18);
}

.newsletter-trigger:focus {
    outline: none;
}

/* mantém compatibilidade, mas esconde estrutura antiga caso sobre algo */
#subscribe-wrapper,
#newsletter,
.newsletter,
#subscribe .mail {
    display: none;
}

.subscribesuccess {
    font-family: 'Oswald', sans-serif;
    font-size: 13px;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    text-align: center;
    margin: 0 auto;
    padding: 27px 0 0 0;
    line-height: 1;
}

#subscribe .subscribeerror {
    font-size: 10px;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    display: block;
    margin: 0;
    padding: 0;
}


/* social icons */
.social-icons-wrapper {
    position: fixed;
    top: 28px;
    right: 26px;
    z-index: 1000;
}

.social-icons-wrapper ul {
    margin: 0 auto;
    padding: 0;
    list-style-type: none;
}

.social-icons-wrapper ul li {
    display: inline;
    margin: 0 auto;
    padding: 0;
}

ul.social-icons {
    font-size: 15px;
    margin: 0;
    padding: 0;
}

ul.social-icons a {
    padding: 0 5px 0 0;
    color: #fff;
    opacity: 1;
    -moz-opacity: 1;
    -webkit-opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
}

ul.social-icons a:hover {
    padding: 0 5px 0 0;
    color: #fff;
    opacity: 0.3;
    -moz-opacity: 0.3;
    -webkit-opacity: 0.3;
    filter: alpha(opacity=30);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
}


/* closer */
.fire-closer {
    position: absolute;
    right: 30px;
    top: 30px;
    width: 25px;
    height: 25px;
    margin: 0 auto;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    z-index: 1000;
}

.fire-closer:hover {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}


/* dividers */
.divider-left-top {
    position: absolute;
    left: 5px;
    top: 0;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    background: url(../images/left-top.png) no-repeat;
}

.divider-right-top {
    position: absolute;
    right: 5px;
    top: 0;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    background: url(../images/right-top.png) no-repeat;
}

.divider-left-bottom {
    position: absolute;
    left: 5px;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    background: url(../images/left-bottom.png) no-repeat;
}

.divider-right-bottom {
    position: absolute;
    right: 5px;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    background: url(../images/right-bottom.png) no-repeat;
}


/* screen loader */
.screen-loader {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    background: #000;
    z-index: 10000;
}


/* preload */
#preload {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    background: #000;
    display: none;
    z-index: 10000;
}

#preload-status {
    position: absolute;
    width: 25px;
    height: 25px;
    margin: auto;
    padding: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background: #000 url(../images/preload.gif) no-repeat center center;
    opacity: 1;
    -moz-opacity: 1;
    -webkit-opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}


/* preload content */
.preload-content {
    position: fixed;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    opacity: 0.6;
    -moz-opacity: 0.6;
    -webkit-opacity: 0.6;
    filter: alpha(opacity=60);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
}

.preload-content-rain {
    position: fixed;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    opacity: 0.35;
    -moz-opacity: 0.35;
    -webkit-opacity: 0.35;
    filter: alpha(opacity=35);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=35)";
}


/* google maps */
#map-wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    z-index: -2;
}

#map {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    left: 0;
    top: 0;
    z-index: -2;
}


/* center container */
.center-container-home {
    position: absolute;
    display: table;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background: none;
}

.center-container {
    position: absolute;
    display: table;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.6);
}

.center-block {
    display: table-cell;
    vertical-align: middle;
}


/* kenburnsy */
.kenburnsy {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.kenburnsy.fullscreen {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.kenburnsy img {
    display: none;
}

.kenburnsy .slide {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-position: center center;
    -webkit-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
}

#kenburnsy-bg {
    overflow: hidden;
}


/* YouTube video containment */
#videoContainment {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
}


/* HTML5 video containment */
#video-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
}


/* hero container */
.hero-fullscreen {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    z-index: 0;
}

.hero-fullscreen-thumbnail-slider {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
}


/* hero bg */
.hero-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/* hero fullscreen FIX */
.hero-fullscreen-FIX {
    width: 100%;
    height: 100%;
}


/* Owl Carousel v2.2.1 CUSTOM */
.owl-buttons {
    position: static;
}

.owl-prev,
.owl-next {
    position: absolute;
    display: block;
    bottom: 0;
    width: 56px;
    height: 56px;
    line-height: 56px;
    font-size: 14px;
    color: #000;
    text-align: center;
    -webkit-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -moz-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -o-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    cursor: pointer;
}

.owl-prev {
    left: -45px;
}

.owl-next {
    right: -45px;
}

.owl-prev:before,
.owl-next:before {
    content: "";
    display: block;
    width: 66%;
    height: 66%;
    position: absolute;
    background: none;
    border: none;
    -webkit-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -moz-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -o-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    opacity: 1;
    -moz-opacity: 1;
    -webkit-opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.owl-prev:before {
    left: 45px;
    top: 9px;
}

.owl-next:before {
    right: 45px;
    top: 9px;
}

.owl-prev .owl-custom,
.owl-next .owl-custom {
    position: relative;
}

.owl-prev .owl-custom {
    position: relative;
    left: 34px;
}

.owl-next .owl-custom {
    position: relative;
    right: 34px;
}

.owl-prev:hover,
.owl-next:hover {
    -webkit-transition: 0 none;
    -moz-transition: 0 none;
    -ms-transition: 0 none;
    -o-transition: 0 none;
    transition: 0 none;
}

.owl-prev:hover,
.owl-next:hover,
.owl-prev:hover:before,
.owl-next:hover:before,
.owl-prev:active:before,
.owl-next:active:before,
.owl-carousel:hover .owl-prev,
.owl-carousel:hover .owl-next {
    opacity: 0.5;
    -moz-opacity: 0.5;
    -webkit-opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.owl-carousel:hover .owl-prev {
    left: -35px;
}

.owl-carousel:hover .owl-next {
    right: -35px;
}

#home-page-img-carousel .owl-prev,
#home-page-img-carousel .owl-next {
    position: absolute;
    display: block;
    top: 50%;
    margin-top: -29px;
    width: 56px;
    height: 56px;
    line-height: 56px;
    font-size: 14px;
    color: #000;
    text-align: center;
    -webkit-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -moz-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -o-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    opacity: 0;
    -moz-opacity: 0;
    -webkit-opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

#home-page-img-carousel.owl-prev {
    left: -50px;
}

#home-page-img-carousel.owl-next {
    right: -50px;
}

#home-page-img-carousel .owl-prev:before,
#home-page-img-carousel .owl-next:before {
    content: "";
    display: block;
    width: 66%;
    height: 66%;
    position: absolute;
    background: rgba(255, 255, 255, 1);
    -webkit-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -moz-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -ms-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -o-transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    transition: all 0.27s cubic-bezier(0.000, 0.000, 0.580, 1.000);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

#home-page-img-carousel.owl-prev:before {
    left: 45px;
    top: 9px;
}

#home-page-img-carousel.owl-next:before {
    right: 45px;
    top: 9px;
}

#home-page-img-carousel.owl-prev .owl-custom,
#home-page-img-carousel.owl-next .owl-custom {
    position: relative;
}

#home-page-img-carousel.owl-prev .owl-custom {
    position: relative;
    left: 34px;
}

#home-page-img-carousel.owl-next .owl-custom {
    position: relative;
    right: 34px;
}

#home-page-img-carousel.owl-prev:hover,
#home-page-img-carousel.owl-next:hover {
    -webkit-transition: 0 none;
    -moz-transition: 0 none;
    -ms-transition: 0 none;
    -o-transition: 0 none;
    transition: 0 none;
}

#home-page-img-carousel .owl-prev:hover,
#home-page-img-carousel .owl-next:hover,
#home-page-img-carousel .owl-prev:hover:before,
#home-page-img-carousel .owl-next:hover:before,
#home-page-img-carousel .owl-prev:active:before,
#home-page-img-carousel .owl-next:active:before,
#home-page-img-carousel.owl-carousel:hover .owl-prev,
#home-page-img-carousel.owl-carousel:hover .owl-next {
    opacity: 1;
    -moz-opacity: 1;
    -webkit-opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

#home-page-img-carousel.owl-carousel:hover .owl-prev {
    left: -35px;
}

#home-page-img-carousel.owl-carousel:hover .owl-next {
    right: -35px;
}


/* home IMG carousel slider */
.home-page-img-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

#home-page-img .home-page-img-item {
    padding: 0;
    opacity: 0.25;
    -moz-opacity: 0.25;
    -webkit-opacity: 0.25;
    filter: alpha(opacity=25);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
    -webkit-transform: scale3d(0.8, 0.8, 1);
    -moz-transform: scale3d(0.8, 0.8, 1);
    -ms-transform: scale3d(0.8, 0.8, 1);
    -o-transform: scale3d(0.8, 0.8, 1);
    transform: scale3d(0.8, 0.8, 1);
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

#home-page-img .owl-item.active.center .home-page-img-item {
    opacity: 1;
    -moz-opacity: 1;
    -webkit-opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: scale3d(1.0, 1.0, 1);
    -moz-transform: scale3d(1.0, 1.0, 1);
    -ms-transform: scale3d(1.0, 1.0, 1);
    -o-transform: scale3d(1.0, 1.0, 1);
    transform: scale3d(1.0, 1.0, 1);
}

.home-page-img-item-1,
.home-page-img-item-2,
.home-page-img-item-3,
.home-page-img-item-4 {
    position: relative;
    width: 100%;
    height: 100vh;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/* home IMG carousel slider IMG BACKGROUND */
.home-page-img-item-1 {
    background-image: url(../img/background/home-page-img-item-1.jpg);
}

.home-page-img-item-2 {
    background-image: url(../img/background/home-page-img-item-2.jpg);
}

.home-page-img-item-3 {
    background-image: url(../img/background/home-page-img-item-3.jpg);
}

.home-page-img-item-4 {
    background-image: url(../img/background/home-page-img-item-4.jpg);
}


/* overlay */
.overlay:before {
    content: "";
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
}

.overlay-top-bottom-dark-60:before {
    background: rgba(0, 0, 0, .60);
    -webkit-pointer-events: none;
    -moz-pointer-events: none;
    pointer-events: none;
}

.overlay-top-bottom-light-60:before {
    background: rgba(255, 255, 255, .60);
    -webkit-pointer-events: none;
    -moz-pointer-events: none;
    pointer-events: none;
}

/* slides mistos - imagem + video */
.home-slide {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #000;
}

.slide-media,
.slide-bg,
.video-cover,
.slide-video-player {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.slide-bg,
.video-cover {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.slide-video-player {
    display: block;
    object-fit: cover;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
    background: #000;
}

.slide-video.is-playing .slide-video-player {
    opacity: 1;
    visibility: visible;
}

.slide-video.is-playing .video-cover {
    opacity: 0;
    visibility: hidden;
}

.slide-video .video-cover {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}

/* camada escura para leitura */
.home-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.42);
    z-index: 1;
    pointer-events: none;
}

/* textura dotted sobre todo o slide */
.home-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../images/curtains.png") repeat top left;
    opacity: 0.18;
    z-index: 2;
    pointer-events: none;
}

/* mídia abaixo das camadas */
.home-slide>* {
    z-index: 0;
}

/* garante que a mídia acompanhe a altura do slide */
#home-page-img,
.home-page-img-wrapper,
#home-page-img-carousel,
#home-page-img .owl-stage-outer,
#home-page-img .owl-stage,
#home-page-img .owl-item,
#home-page-img .home-page-img-item {
    height: 100vh;
}

/* garante conteúdo principal acima das camadas */
.upper-content,
#countdown-wrapper,
#subscribe-form {
    position: relative;
    z-index: 20;
}

#site-credit {
    position: fixed;
    left: 0;
    bottom: 18px;
    width: 100%;
    text-align: center;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    z-index: 9999;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.45);
    pointer-events: auto;
}

#site-credit span {
    color: #f5f2eb;
    font-weight: 700;
}

#site-credit a,
#site-credit a:link,
#site-credit a:visited,
#site-credit a:hover,
#site-credit a:active {
    color: #f5f2eb;
    text-decoration: none;
    font-weight: 700;
}

/* garante que a mídia acompanhe a altura do slide */
#home-page-img .home-page-img-item,
#home-page-img .owl-item,
#home-page-img-carousel,
#home-page-img,
.home-page-img-wrapper {
    height: 100vh;
}

/* diamantes acima dos anéis */

#countdown-wrapper {
    position: relative;
}

/* base para todos os anéis */
#countdown-wrapper .knob-container {
    position: relative;
}

/* ===== Diamantes dos anéis ===== */

#countdown-wrapper>div {
    position: relative;
}

/* ===== Diamantes dos anéis ===== */

#countdown li {
    position: relative;
}

#countdown span {
    display: block;
    text-align: center;
    margin-bottom: 8px;
    position: relative;
    z-index: 6;
}

#countdown li:nth-child(1)::before,
#countdown li:nth-child(3)::before {
    content: "";
    position: absolute;
    top: 20px;
    left: 70%;
    transform: translateX(-50%);
    width: 22px;
    height: 22px;
    background-image: url("../img/diamante.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    pointer-events: none;
    z-index: 5;
    animation: diamondSparkle 2.8s ease-in-out infinite;
}

@keyframes diamondSparkle {
    0% {
        transform: translateX(-50%) scale(1);
        opacity: 0.85;
    }

    50% {
        transform: translateX(-50%) scale(1.08);
        opacity: 1;
        filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.5));
    }

    100% {
        transform: translateX(-50%) scale(1);
        opacity: 0.85;
    }
}