@import url('https://fonts.googleapis.com/css?family=Caveat:400,700');

/*!
 * Load Awesome v1.1.0 (http://github.danielcardoso.net/load-awesome/)
 * Copyright 2015 Daniel Cardoso <@DanielCardoso>
 * Licensed under MIT
 */
.la-square-loader,.la-square-loader>div{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.la-square-loader{display:block;font-size:0;color:#fff}.la-square-loader.la-dark{color:#333}.la-square-loader>div{display:inline-block;float:none;background-color:currentColor;border:0 solid currentColor}.la-square-loader{width:32px;height:32px}.la-square-loader>div{width:100%;height:100%;background:transparent;border-width:2px;border-radius:0;-webkit-animation:square-loader 2s infinite ease;-moz-animation:square-loader 2s infinite ease;-o-animation:square-loader 2s infinite ease;animation:square-loader 2s infinite ease}.la-square-loader>div:after{display:inline-block;width:100%;vertical-align:top;content:"";background-color:currentColor;-webkit-animation:square-loader-inner 2s infinite ease-in;-moz-animation:square-loader-inner 2s infinite ease-in;-o-animation:square-loader-inner 2s infinite ease-in;animation:square-loader-inner 2s infinite ease-in}.la-square-loader.la-sm{width:16px;height:16px}.la-square-loader.la-sm>div{border-width:1px}.la-square-loader.la-2x{width:64px;height:64px}.la-square-loader.la-2x>div{border-width:4px}.la-square-loader.la-3x{width:96px;height:96px}.la-square-loader.la-3x>div{border-width:6px}@-webkit-keyframes square-loader{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}25%{-webkit-transform:rotate(180deg);transform:rotate(180deg)}50%{-webkit-transform:rotate(180deg);transform:rotate(180deg)}75%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes square-loader{0%{-moz-transform:rotate(0deg);transform:rotate(0deg)}25%{-moz-transform:rotate(180deg);transform:rotate(180deg)}50%{-moz-transform:rotate(180deg);transform:rotate(180deg)}75%{-moz-transform:rotate(360deg);transform:rotate(360deg)}100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes square-loader{0%{-o-transform:rotate(0deg);transform:rotate(0deg)}25%{-o-transform:rotate(180deg);transform:rotate(180deg)}50%{-o-transform:rotate(180deg);transform:rotate(180deg)}75%{-o-transform:rotate(360deg);transform:rotate(360deg)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes square-loader{0%{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg)}25%{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}50%{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}75%{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}100%{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes square-loader-inner{0%{height:0}25%{height:0}50%{height:100%}75%{height:100%}100%{height:0}}@-moz-keyframes square-loader-inner{0%{height:0}25%{height:0}50%{height:100%}75%{height:100%}100%{height:0}}@-o-keyframes square-loader-inner{0%{height:0}25%{height:0}50%{height:100%}75%{height:100%}100%{height:0}}@keyframes square-loader-inner{0%{height:0}25%{height:0}50%{height:100%}75%{height:100%}100%{height:0}}

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

body {
    font-family: 'Avenir Next', Avenir, 'Helvetica Neue', Helvetica, Arial, sans-serif;
    overflow-x: hidden;
    background: #eee;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    text-decoration: none;
    color: #df2d70;
    outline: none;
}

a:hover,
a:focus {
    color: #03a9f4;
}


/* Top Navigation Style */

.codrops-links {
    position: relative;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    pointer-events: auto;
    border: 2px solid #fff;
}

.codrops-links::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    height: 110%;
    margin-left: -1px;
    background: #fff;
    -webkit-transform: translateY(-50%) rotate3d(0, 0, 1, 22.5deg);
    transform: translateY(-50%) rotate3d(0, 0, 1, 22.5deg);
}

.codrops-icon {
    display: inline-block;
    width: 1.5em;
    margin: 0.5em;
    padding: 0em 0;
    text-decoration: none;
}

.codrops-icon span {
    display: none;
}

.codrops-icon::before {
    font-family: 'codropsicons';
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    margin: 0 5px;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    speak: none;
}

.codrops-icon--drop::before {
    content: '\e001';
    color: #09c;
}

.codrops-icon--prev::before {
    content: '\e004';
    color: #fff;
}


/* Demos */

.demos__item {
    font-weight: bold;
    display: inline-block;
    margin: 0.25em 0.75em;
    pointer-events: auto;
}

.demos__item--current,
.demos__item--current:hover,
.demos__item--current:focus {
    color: #96acb6;
    border-bottom: 2px solid;
}


/* Content */

.content {
    padding: 3em 0;
}


/* Related demos */

.content--related {
    font-weight: bold;
    margin: 8em 0 0 0;
    padding: 8em 0;
    text-align: center;
    color: #fff;
    background: #2d323c;
}

.media-item {
    display: inline-block;
    padding: 1em;
    vertical-align: top;
    color: #1e2129;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}

.media-item:hover,
.media-item:focus {
    color: #fff;
}

.media-item__img {
    max-width: 100%;
    opacity: 0.6;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.media-item:hover .media-item__img,
.media-item:focus .media-item__img {
    opacity: 1;
}

.media-item__title {
    font-size: 1em;
    margin: 0;
    padding: 0.5em;
}

.mobile-show{
    display: none!important;
}

@media(max-width: 1200px){

    .mobile-show{
        display: block!important;
    }
    .mobile-hide{
        display: none!important;
    }
}


.js body {
    overflow: hidden;
}

.js body.overflow {
    overflow: auto;
}

.img-responsive{
    max-width: 100%;
    display: block;
}

.header {
    position: absolute;
    z-index: 1000;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 2.5em;
    pointer-events: none;
}

/* the page (header background) that is being moved up (initial view) */
.page--mover {
    position: fixed;
    width: 100%;
    height: 100vh;
    pointer-events: none;
    background-image: url('img/hm-background.jpg');
    background-size: cover;
    background-position: center;
}

/* the title of the initial view */
.title-wrap {
    position: relative;
    z-index: 101;
    font-size: 16px;
/*    width: 100%;
    margin: 3vh 0 0 0;
    text-align: center;
    pointer-events: none;*/
}

.title-wrap img{
    max-width: 1000px;
    margin: auto;
}

/*.title {
    line-height: 1;
    position: relative;
    text-indent: 0.2em;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}*/

.title--main {
    margin: 32px auto;
    font-weight: bold;
}

.row{
    width: 100%;
}

.title--sub {
    font-size: 1.15em;
    font-weight: 700;
    display: block;
    margin: 0;
    color: #565f73;
}

/* static page with grid */
.page{
    max-width: 1000px;
    background-color: white;
    margin: auto;
}
.page--static {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
    max-width: 1220px;
    margin: 0 auto;
    padding: 2em 0 0;
    text-align: center;
}

.page__title {
    padding: 0 2em;
}

.page__title-main {
    font-size: 2em;
    margin: 0 auto;
    padding: 3em 0 0;
    color: #03a9f4;
}

.page__title-sub {
    font-size: 1.05em;
    margin: 0.5em 0 4em;
}

.device {
    position: fixed;
    z-index: 1000;
    bottom: 0;
    left: 50%;
    width: 45vh;
    height: 45vh;
    margin: 0 0 0 -22.5vh;
    background: url(img/device.svg) no-repeat 50% 0%;
    background-size: 100%;
}

.device__screen {
    position: absolute;
    top: 25.5%;
    left: 8.5%;
    width: 83%;
    height: 100%;
    background: url(img/screen.jpg) no-repeat 50% 0%;
    background-size: 100%;
}

/* Button */
.button {
    margin: 0;
    padding: 0;
    border: none;
    background: none;
}

.button--view {
    position: fixed;
    z-index: 1000;
    bottom: 1.5em;
    left: 50%;
    width: 3em;
    height: 1.75em;
    margin: 0 0 0 -1.5em;
    -webkit-animation: pointDown 0.6s 0.6s ease-in infinite alternate forwards;
    animation: pointDown 0.6s 0.6s ease-in infinite alternate forwards;
    fill: #fff;
}

@-webkit-keyframes pointDown {
    from {
        -webkit-transform: translate3d(0,-10px,0);
        transform: translate3d(0,-10px,0);
    }
    to {
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }
}

@keyframes pointDown {
    from {
        -webkit-transform: translate3d(0,-10px,0);
        transform: translate3d(0,-10px,0);
    }
    to {
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }
}

.button--view path {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
    fill: inherit;
}

.button--view:hover,
.button--view:focus {
    outline: none;
    fill: #03a9f4;
}

.button--load {
    width: 7em;
    color: #a3b0bd;
}

.button--load svg {
    width: 2.5em;
}

.button__text {
    font-size: 0.65em;
    font-weight: bold;
    display: block;
    margin: 0.85em 0 0 0;
    text-indent: 3px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: inherit;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}

.polaroid__base,
.polaroid__loader {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;

    fill: #a3b0bd;
}

.button--load:hover,
.button--load:focus {
    color: #03a9f4;
    outline: none;
}

.button:hover .polaroid__base,
.button:focus .polaroid__base,
.button:hover .polaroid__loader,
.button:focus .polaroid__loader {
    fill: #03a9f4;
}

.polaroid__inner {
    fill: #e9ecef;
}

.button--loading .polaroid__loader circle {
    -webkit-animation: fadeInOut 0.3s ease-in infinite alternate forwards;
    animation: fadeInOut 0.3s ease-in infinite alternate forwards;
}

.button--loading .polaroid__loader circle:nth-child(2) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.button--loading .polaroid__loader circle:nth-child(3) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

@-webkit-keyframes fadeInOut {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInOut {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.button--hidden {
    pointer-events: none;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.grid {
    width: 100%;
    position: relative;
    z-index: 100;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.grid__item {
    margin-bottom: 1rem;
    position:  relative;
    background: white;
    display: block;
    -webkit-flex: none;
    flex: none;
    width: 33.33%;
    padding: 10px;
}

.js .grid__item {
    opacity: 0;
}

.grid__item--hidden {
    opacity: 0;
}

.grid__link {
    display: block;
    padding: 13px 13px 0 13px;
    background: #fff;
}

.grid__img {
    display: block;
    width: 100%;
}

.grid__item-title {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 1em 0.5em;
    text-align: left;
    text-overflow: ellipsis;
    text-align: center;
    background: #fff;
    font-size: 18px;
}

/* Loader (styles defined in square-loader.min.css) */
.la-square-loader {
    position: absolute;
    top: 60%;
    left: 50%;
    color: #565f73;
    opacity: 0;
    -webkit-transform: translate3d(-50%,-50%,0) scale3d(1.35,1.35,1);
    transform: translate3d(-50%,-50%,0) scale3d(1.35,1.35,1);
}

.la-square-loader > div {
    border-radius: 2px;
}

.js .la-square-loader {
    opacity: 1;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.view--loaded .la-square-loader {
    opacity: 0;
}

/* Visibility/pointer events of items depending on state (loaded) */

.js .grid,
.js .device,
.js .button--view {
    opacity: 0;
}

.view--loaded .grid,
.view--loaded .device,
.view--loaded .button--view {
    opacity: 1;
}

.view--loaded .button--view {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.js .page--static {
    pointer-events: none;
}

.view--grid .page--static {
    pointer-events: auto;
}

/* Media query for smaller screens */
@media screen and (max-width: 56em) {

    .header {
        padding: 1em;
    }
    .title-wrap {
        font-size: 53%;
        /* margin: 85px 0 0 0; */
    }
    .page__title-main {
        font-size: 1.3em;
    }
    .page__title-sub {
        margin-bottom: 1em;
    }
    .grid__item {
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin-bottom: 3rem;
    }
    .grid__item a{
        padding: 0;
    }
}




#site.listing{
    max-width: none;
}

.listing #site-wrapper{
    background-color: #eee;
    max-width: none!important;
    width: auto!important;
}




ol.breadcrumb{
    display: none;
}
.listing .view .page--static{
    transition: all .15s ease;
    /*max-width: 800px;*/
}
.listing .view--grid .page--static{
    max-width: 1200px;
}

@media(max-width: 767px){
    .listing .grid__item-title{
        max-height: 96px;
        height: 73px;
        padding: 0;
        font-size: 23px;
        padding-top: 10px;
        line-height: 1.3;
    }
}

@media(min-width: 1200px){

}

@media(min-width: 1440px){
    .listing .view .page--static{
        max-width: 1200px;
    }
}


.heart-rain {
    position: absolute;
    color: pink;
    opacity: .7;
    font-size: 40px;
    z-index: 333333;
    pointer-events: none;
    -webkit-animation: falling 6s infinite linear;
    animation: falling 6s infinite linear;
}

.heart-rain:nth-of-type(1) {
    top: 0;
    left: 5%;
}

.heart-rain:nth-of-type(2) {
    top: 100px;
    left: 8%;
}

.heart-rain:nth-of-type(3) {
    top: 250px;
    left: 21%;
}

.heart-rain:nth-of-type(4) {
    top: 500px;
    left: 90%;
}

.heart-rain:nth-of-type(5) {
    top: 150px;
    left: 75%;
}

.heart-rain:nth-of-type(6) {
    top: 250px;
    left: 80%;
}

.heart-rain:nth-of-type(7) {
    top: 50px;
    left: 35%;
}

@-webkit-keyframes falling {
    0% {
        opacity: 0;
        transform: rotate(360deg);
    }
    5%{
        opacity: 1;
    }
    50% {
        transform: rotate(0deg);
    }
    95%{
        opacity: 1;
    }
    100% {
        opacity: 0;
        top: calc(100vh + 100px);
        transform: rotate(-360deg);
    }
}

@keyframes falling {
    0% {
        opacity: 0;
        transform: rotate(360deg);
    }
    5%{
        opacity: 1;
    }
    50% {
        transform: rotate(0deg);
    }
    95%{
        opacity: 1;
    }
    100% {
        opacity: 0;
        top: calc(100vh + 100px);
        transform: rotate(-360deg);
    }
}