* {
    padding:0;
    margin:0;
    outline:0;
}

body,html {
    font-family:'Roboto', sans-serif;
}

header {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:8px 15px;
    box-sizing:border-box;
    z-index:999;
    background:transparent;
}

header.fixed,
header.white {
    box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 5px 0px;
}
header.fixed:before,
header.white:before {
    content:'';
    display:block;
    position:absolute;
    width:100%;
    top:0;
    left:0;
    background-color:rgba(255,255,255,0.8);
    backdrop-filter: blur(30px) saturate(125%);
    -webkit-backdrop-filter:blur(30px) saturate(125%);
    z-index:1;
}
.header-wrap {
    position:absolute;
    padding:0px 50px;
    box-sizing: border-box;
    left:0;
    top:0;
    z-index:2;
    width:100%;
}

header,
header:before,
.header-wrap {
    height:60px;
}

.page-container {
    position:relative;
    width:1600px;
    margin:0 auto;
    z-index:90;
}

@media only screen and (max-width:1667px){
    .page-container {
        width:1400px;
    }
}

@media only screen and (max-width:1467px){
    .page-container {
        width:1200px;
    }
}

@media only screen and (max-width:1267px){
    .page-container {
        width:1000px;
    }
}

@media only screen and (max-width:1067px){
    .page-container {
        width:100%;
    }
}



header .page-container {
    width:100%;
}

.logo,
.center,
.menu {
    display:inline-block;
    vertical-align:middle;
    box-sizing:border-box;
}
.logo,
.menu {
    width:30px;
}
.logo {
    width:40px;
}
.logo {
    padding-top:2px;
}
.center {
    width:calc(100% - 80px);
    text-align:left;
    font-weight:100;
    padding-left:10px;
}
.center h1 {
    font-weight:100;
    font-size:16px;
    letter-spacing:1px;
    font-family:'Playfair Display', serif;
    margin:0;
    color:#FFF;
}
.center h3 {
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:0;
    font-weight:100;
    margin:0;
    color:#FFF;
}
.logo img {
    width:100%;
}

header .dark,
header.fixed .light,
header.white .light {
    display:none;
}
header.fixed .dark,
header.white .dark,
header .light {
    display:block;
}

header.fixed h1,
header.fixed h3,
header.white h1,
header.white h3 {
    color:#000;
}

.menu a,
.menu a span,
.menu a span div {
    display:block;
    width:100%;
}
.menu a span div {
    height:1px;
}
header .menu a span div {
    background:#FFF;
}
header.fixed .menu a span div,
header.white .menu a span div {
    background:#000;
}
.menu a span div:first-of-type {
    margin-bottom:7px;
}



#menu-frame {
    position:fixed;
    width:100%;
    height:100vh;
    right:0;
    background:rgba(0,0,0,0.6);
    display:none;
    opacity:0;
    transition:400ms;
    z-index:90;
}
#menu-frame.visible {
    display:block;
}
.menu-slider {
    position:fixed;
    box-sizing: border-box;
    width:300px;
    height:100vh;
    right:-300px;
    background:#FFF;
    padding:120px 35px 35px;
    z-index:3;
}

.menu-section {
    margin-bottom:50px;
}
.ms-title,
.fr-menu-title {
    text-transform:uppercase;
    font-size:12px;
    padding-bottom:15px;
    letter-spacing:1px;
}
.ms-items ul li {
    list-style:none;
    list-style-type:none;
    box-sizing: border-box;
    position:relative;
    width:100%;
    display:block;
    border-bottom:1px #333 solid;
}
.ms-items ul li a {
    box-sizing: border-box;
    color:#333;
    font-size:14px;
    padding:20px 0 10px;
    display:block;
    text-decoration:none;
    transition:400ms;
}
.ms-items ul li a:hover {
    background:#333;
    padding-left:10px;
    color:#FFF;
    transition:400ms;
}

.main-section {
    position:relative;
    width:100%;
    height:97vh;
    z-index:1;
}


.main-section .page-container {
    width:100%;
    height:100%;
}
.ms-background {
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    opacity:0.2;
}

.video-effect {
    position:relative;
    width:100%;
    height:100%;
    background: rgb(17,17,17);
    background: linear-gradient(0deg, rgba(17,17,17,1) 3%, rgba(18,18,18,0.835171568627451) 10%, rgba(25,25,25,0) 100%);
    z-index:5;
    top:0;
    left:0;
}
.bg-video {
    position:absolute;
    display:block;
    background:#000;
    top:-5%;
    left:-5;
    width:110%;
    height:calc(100vh + 50px);
    overflow:hidden;
    z-index:1;
}
.video-background {
    position:relative;
    width:100%;
    height:calc(100vh + 50px);
    overflow:hidden;
}

.video-background-container {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 120%;
    min-height: 120%;
    width: auto;
    height: auto;
    z-index: -100;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-45%) translateY(-45%);
    z-index:0;
}

.splash-content {
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    text-align:center;
    color:#FFF;
    z-index:5;
}

.sc-tag {
    font-size:14px;
    text-transform:uppercase;
}
.sc-tag.larger {
    font-size:20px;
    margin-bottom:-10px;
}
.sc-title {
    padding:15px 0 0;
    font-size:63px;
    font-weight:900;
    letter-spacing:-3px;
    text-transform:uppercase;
}
.sc-title.side-pull {
    margin-left:-5px;
}
.sc-description p {
    margin-top:-10px;
    width:50%;
    font-size:43px;
    font-weight:100;
    margin:0 auto;
}

.sc-cta {
    padding:35px 0 75px;
}
.sc-cta a {
    display:inline-block;
    width:150px;
    margin:0 auto;
    padding:15px 10px;
    color:#FFF;
    border:1px #FFF solid;
    text-decoration:none;
    text-transform:uppercase;
}
.sc-cta a:hover {
    background:#FFF;
    color:#000;
    transition:400ms;
}

.splash-content.align-left {
    box-sizing:border-box;
    text-align:left;
    padding-left:25px;
}
.splash-content.align-left .sc-description p {
    margin:0;
    text-shadow:5px 5px 5px rgba(0,0,0,0.6);
}
.splash-content.align-left .sc-cta a {
    text-align:center;
}

.split-section {
    position:relative;
    width:100%;
    height:80vh;
    overflow:hidden;
}

.ss-image {
    display:inline-block;
    position:relative;
    width:72%;
    height:90%;
    box-sizing: border-box;
}
.ss-left,
.ss-right {
    display:inline-block;
    width:50%;
    height:100%;
    box-sizing: border-box;
    vertical-align: middle;
}
.ss-left {
    text-align:right;
    background:#111;
    padding-right:25px;
}
.ss-right {
    background:#000;
    text-align:left;
    padding-left:25px;
}

.ss-left .ss-image,
.ss-right .ss-image {
    margin-top:50px;
    opacity:0.5;
    transition:500ms;
}

.content-center {
    position:relative;
    padding:50px 0;
    text-align:center;
    z-index:1;
}
.content-center .sc-title {
    margin:-10px auto 0;
}
.content-center .sc-description p {
    width:72%;
    font-size:27px;
}
.cc-form {
    position:relative;
    width:100%;
    padding:35px 0;
}
.cc-form input,
.cc-form a {
    display:inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    padding:10px 15px;
    border:1px #000 solid;
}
.cc-form a {
    text-transform:uppercase;
    color:#000;
    text-decoration:none;
}
.cc-form a:hover {
    background:#000;
    color:#FFF;
    transition:400ms;
}
.cc-form input {
    width:450px;
    padding:12px 15px;
    border-radius:0;
}

footer {
    position:relative;
    z-index:1;
    padding:25px 0;
    background:#111;
}

.footer-left,
.footer-right {
    display:inline-block;
    vertical-align:middle;
    box-sizing: border-box;
    width:50%;
}
.footer-left {
    text-align:left;
}
.footer-right {
    text-align:right;
}

.fr-menu,
.footer-menu li {
    display:inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    text-align:left;
}
.fr-menu {
    padding-right:20px;
}
.fr-menu-title {
    position:relative;
    width:100%;
    padding:0;
    color:#FFF;
}

.footer-menu {
    position:relative;
    width:100%;
    text-align:left;
}
.footer-menu li a {
    color:#FFF;
    font-size:12px;
    padding-right:10px;
}

.footer-logo {
    position:relative;
    margin:0;
    width:50px;
}
.footer-logo img {
    width:100%;
}

.page-container.disclaimer {
    width:100%;
    text-align:center;
    border-top:1px rgba(255,255,255,0.1) solid;
    padding:25px 0 0;
    margin-top:25px;
}
.page-container.disclaimer p {
    font-weight:100;
    font-size:12px;
    color:#FFF;
}
.page-container.disclaimer p a {
    color:#FFF;
}

.category-page {
    padding:125px 0 50px;
}

.page-title h1 {
    font-size:32px;
    text-transform:uppercase;
    font-weight:900;
}
.category-products {
    position:relative;
    width:100%;
    padding:0 0 35px;
    border-bottom:1px #CCC solid;
    z-index:1;
}
.category-products.min-height {
    min-height:350px;
}

.page-content {
    position:relative;
    z-index:1;
}
.page-content p {
    font-size:20px;
    line-height:27px;
    margin-bottom:32px;
}
@media only screen and (max-width:1067px){

    .category-page {
        padding-top:80px;
    }
    .page-title {
        padding-left:15px;
    }

    .page-content {
        padding:0 15px;
    }

    .content-center .sc-description p {
        font-size:16px;
    }
    .cc-form input {
        width:50%;
    }

    footer {
        padding:25px 15px;
    }

    .footer-left,
    .footer-right {
        display:block;
        width:100%;
        text-align:center;
    }
    .footer-menu li a {
        padding-right:0;
    }
    .footer-logo {
        margin:0 auto;
        width:45px;
    }
    
    .fr-menu {
        width:100%;
        height:100%;
        margin:0;
    }

    .ss-left .ss-image,
    .ss-right .ss-image {
        width:100%;
        height:calc(100% - 50px);
        margin:50px 0;
    }
    .fr-menu {
        text-align:center;
        padding-bottom:15px;
        padding:15px 0;
    }
    .footer-menu li {
        display:block;
        width:100%;
        text-align:center;
    }

    .disclaimer {
        padding:0 25px;
        font-size:9px;
    }
    .ss-left,
    .ss-right {
        padding:0;
    }

    .main-section {
        height:90vh;
    }

    .sc-description p {
        font-size:32px;
        width:100%;
    }

    .sc-cta a {
        font-size:12px;
    }
    .menu-slider {  
        width:200px;
        right:-200px;
        padding:65px 15px 35px;
    }
    .menu,
    .logo {
        width:40px;
    }
    .menu {
        width:25px;
    }
    .center {
        width:calc(100% - 65px);
    }
    .center h1 {
        font-size:14px;
    }
    .center h3 {
        font-size:8px;
        font-weight:500;
    }
    header {
        padding:5px 15px;
    }
    header,
    header:before,
    .header-wrap {
        height:50px;
    }

    .splash-content.align-left {
        padding-left:15px;
    }
    .sc-description p {
        font-size:18px;
    }

    .splash-content .sc-title {
        font-size:43px;
        line-height:37px;
        padding-bottom:15px;
        letter-spacing:1px
    }

    .split-section {
        height:100vh;
    }

}