@import url("https://use.typekit.net/xck8kun.css");

.no-flicker {opacity:0;}
.fade-in {opacity:1;transition: all linear 0.6s 0.8s;}

body, html {
    padding:0px;
    margin:0px;
    font-family:"open-sans", sans-serif;
    font-size:0.9em;
    line-height:1.4em;
    color:#585858;
}


/* Sections */

.sections {
    position:absolute;
    float:left;
    width:100%;
    height:100%;
}
.sections .section {
    position:relative;
    float:left;
    min-width:100%;
    min-height:100%;
    background-color:rgba(1,1,1,0.3);
    display:flex;
    align-items:center;
    justify-content:center;
}
.sections .section .pagetitle {
    display:block;
    position:absolute;
    z-index:1;
    font-size:4em;
    line-height:1.2em;
    text-align:center;
    text-shadow:3px 3px 10px rgba(0,0,0,0.5);
}
.sections .section .pagetitle .pagetitle_0 {
    font-weight:bold;
}
.sections .section .pagetitle .pagetitle_1 {
    font-weight:normal;
}
.sections .section .pagetitle a {
    display:block;
    text-decoration:none;
    color:#ffffff;
    transition:all ease-out 0.2s;
}
.sections .section .pagetitle a:hover {
    letter-spacing:2px;
    transform:scale(1.1,1.1);
}

.responsive-enter {
    display:none;
}

/* Gallery */

.gallery {
    position:absolute;
    width:100%;
    height:100%;
    overflow:hidden;
}
.gallery .button-left,
.gallery .button-right {
    position:absolute;
    width:60px;
    height:100px;
    top:calc(50% - 60px);
    z-index:2;
    cursor:pointer;
    color:#ffffff;
    font-size:3em;
    line-height:100px;
    text-align:center;
    text-shadow:3px 3px 10px rgba(0,0,0,0.5);
    transition:all ease-in 0.6s;
}
.gallery .button-left {
    left:0px;
}
.gallery .button-left.ng-hide {
    left:-60px;
}
.gallery .button-right {
    right:0px;
}
.gallery .button-right.ng-hide {
    right:-60px;
}
.gallery .images {
    position:absolute;
    width:100%;
    height:100%;
    z-index:1;
    left:0%;
    transition:all ease-out 0.8s;
    pointer-events:none;
}
.gallery .image {
    position:absolute;
    width:100%;
    height:100%;
    background-position:center center;
    background-repeat:no-repeat;
    background-size:cover;
    pointer-events:none;
}

/* Content */

.content {
    margin:0 auto;
    max-width:1750px;
    padding:10px 0px 0px 0px;
}
.content .images {
    position:relative;
    float:left;
    width:calc(66% - 20px);
    padding:0px 10px 10px 10px;
}
.content .images .image {
    display:block;
    position:relative;
    float:left;
    width:calc(50% - 20px);
    margin:10px;
    
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    
    border:6px solid #d7d9ce;
    border-radius:6px;
    overflow:hidden;
}
.content .images .image .shape {
    display:block;
    position:relative;
    float:left;
    width:100%;
    padding-top:56.25%;
    background-color:#e1e1e1;
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
}
.content .body {
    position:relative;
    float:right;
    width:calc(34% - 40px);
    padding:0px 20px 0px 0px;
}

.header {
    position:fixed;
    width:100%;
    height:260px;
    transition:all ease-out 0.3s;
    z-index:1;
}
.header-ghost {
    height:265px;
}
.header-line {
    position:absolute;
    bottom:0px;
    width:100%;
    height:15px;
    background-color:#d7d9ce;
    transition:all ease-out 0.3s;
    z-index:2;
}
.quote {
    position:relative;
    width:calc(100% - 40px);
    padding:0px 20px 0px 20px;
    font-style:italic;
    font-size:1.4em;
}

.navicon {
    position:fixed;
    top:75px;
    right:70px;
    width:75px;
    height:80px;
    cursor:pointer;
    z-index:5;
    outline:none;
    transition:all linear 0.2s;
}
.navicon .open {
    background-image:url('/site/templates/images/open.png');
}
.navicon .open.ng-hide {
    transform:scale(0,0);
    opacity:0;
}
.navicon .close {
    background-image:url('/site/templates/images/close.png');
}
.navicon .close.ng-hide {
    transform:scale(0,0);
    opacity:0;
}
.navicon .icon {
    display:block;
    position:absolute;
    width:100%;
    height:100%;
    background-position:top center;
    background-repeat:no-repeat;
    pointer-events:none;
    transition:all ease-out 0.2s;
}

.menu {
    position:fixed;
    z-index:5;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.9);
    font-size:2em;
    line-height:1.6em;
    z-index:4;
    transition:all linear 0.3s;
}
.menu.ng-hide {
    opacity:0;
}
.menu .inner {
    display:block;
    position:absolute;
    width:100%;
    height:100%;
    background-color:rgba(215,217,206,0.85);
    
    display:flex;
    flex-flow:row wrap;
    align-items:center;
    justify-content:center;
}
.menu .inner .list {
    position:relative;
    max-width:50%;
    min-width:20%;
    text-align:right;
}
.menu .inner .list a,
.menu .inner .list a:visited {
    display:block;
    color:#585858;
    text-decoration:none;
    padding:0px 20px 0px 20px;
}
.menu .inner .list a:hover {
    font-weight:bold;
}
.menu .inner .list .gradient {
    position:absolute;
    top:-15px;
    right:0px;
    width:3px;
    height:calc(100% + 30px);
    
    background-image:url('/site/templates/images/gradient.png');
    background-position:center center;
    background-repeat:no-repeat;
    background-size:cover;
}

.navigation {
    position:fixed;
    z-index:3;
}

/* Logo */

.logo {
    display:block;
    width:405px;
    left:80px;
    top:20px;
    z-index:4;
    transition:all ease-out 0.3s;
}
.logo img {
    width:100%;
}
.logo-home {
    position:fixed;
}
.logo-basic {
    position:absolute;
}

/* Footer */

.footer {
    position:relative;
    float:left;
    width:calc(100% - 40px);
    padding:20px;
    background-color:#d7d9ce;
    line-height:1.8em;
    z-index:2;
}
.footer a {
    color:#585858;
    font-weight:bold;
}
.footer .limit {
    margin:0 auto;
    max-width:1710px;
}
.footer .limit .column-left {
    position:relative;
    float:left;
}
.footer .limit .column-right {
    position:relative;
    float:right;
    font-size:1.6em;
}
.footer .limit .column-right a {
    margin:0px 6px 0px 6px;
}
.footer a {
    text-decoration:none;
}
.footer a:hover {
    text-decoration:underline;
}
.footer .limit .column-logo {display:none;}
.footer .limit .column-menu {display:none;}

.footer-ghost {
    display:none;
}

.madeby {
    margin:20px 0px 0px 0px;
    font-size:0.8em;
    font-weight:lighter;
}

.button-order-online {
    position:fixed;
    bottom:180px;
    right:0px;
    width:506px;
    height:164px;
    background-image:url('/site/templates/images/button-order-online.png');
    background-position:center center;
    background-repeat:no-repeat;
    background-size:cover;
    z-index:1;
    transform-origin:right bottom;
    transition:all linear 0.3s;
}

.mouse {
    width:54px;
    height:86px;
    background-image:url('/site/templates/images/mouse.png');
    background-position:center center;
    background-repeat:no-repeat;
    background-size:cover;
}

@media (max-width:1200px) {
    .button-order-online {
        bottom:80px;
        transform:scale(0.5,0.5);
    }
}
@media (max-width:1000px) {
    .logo {
        top:0px;
        width:240px;
        left:50px;
    }
    .header {
        height:145px;
    }
    .header-ghost {
        height:145px;
    }
    .header-line {
        height:20px;
    }
    .navicon {
        top:40px;
    }
    .sections .section .pagetitle {
        font-size:2.5em;
    }
    .responsive-enter {
        display:block;
    }
}
@media (max-width:815px) {
    .content .images {
        width:calc(100% - 20px);
        padding:0px 10px 10px 10px;
    }
    .content .body {
        width:calc(100% - 40px);
        padding:0px 20px 0px 20px;
    }
}
@media (max-width:720px) {
    .footer {text-align:center;}
    .footer .limit .column-left {width:100%;}
    .footer .limit .column-right {width:100%;}
    .footer .limit .column-logo {display:block;}
    .footer .limit .column-menu {display:block;}
    .footer .limit .column-madeby {display:block;}
}
@media (max-width:470px) {
    .logo {
        left:10px;
    }
    .navicon {
        right:10px;
    }
}

@media (min-width:815px) {
    .footer-page-basic {
        position:fixed;
        bottom:0px;
    }
    .footer-ghost {
        display:block;
        position:relative;
        float:left;
        width:100%;
        height:63px;
    }
}
