﻿@charset "utf-8";

.intro  {
    background-image: url("img/top-home_01.jpg");
    background-position: 55% 30%;
}

.web.ready .intro > div > div {
    font-family: Charm-Regular, Arial, sans-serif;
    line-height: 148%;
    animation: titleMoveInAndOut 7s;
    animation-fill-mode: forwards;
}

@keyframes titleMoveInAndOut {
    0% {transform:translateY(80px); color: rgba(255,255,255,0);}
    20% {transform:translateY(0); color: rgba(255,255,255,1);}
    65% {transform:translateY(0); color: rgba(255,255,255,1);}
    100% {transform:translateY(80px); color: rgba(255,255,255,0);}
}

.intro > div > div > span {
    display: inline-block;
}

.bottom .logo {
    display:none;
}

.stage {
    font-family: Charm-Regular, Arial, sans-serif;
}

.stage.A {
    background-image: url("img/bg-ferns_01.jpg");
}

.stage.A > .content {
    padding: 3vmin 2vmin;
    text-align: center;
}

.stage.A .text {
    text-align: left;
    display:inline-block;
    width: 68%;
    vertical-align: middle;
    font-size: 2.55vw;
    padding: 0 2vw;
    box-sizing: border-box;
}

.stage.A .text > div {
    background-image: url("img/bar-separator-deco-h_01.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    display: inline-block;
    width:100%;
    height:2vw;
    min-height: 16px;
}

.stage.A .text > div:last-child {
    margin-top: 1.8vw;
}

.stage.A img {
    display:inline-block;
    vertical-align: middle;
    width: 15%;
}

.stage.B {
    z-index: 1; /*make sure that stage C is below*/
    background-color: black;
}

.stage.B > .content {
    background-color: black;
}

.stage.B span {
    font-size: 5.3vw;
    text-align: center;
    margin: 2vw 5vw;
    display: inline-block;
}

.stage.C {
    background-color: black;
}

.stage.C img:first-child {
    display:block;
    width:100%;
}

.C .stage {
    top: 150px;
    position: absolute;
    transition: none;
}

.C .stage + img {
    padding:0!important;
    transform:scale(0);
    width: 38%;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.C {
    text-align: center;
}

.C .stage.transition + img {
    transition: transform 1s, opacity 0.6s;
}

.C .stage.up + img {
    transform:scale(1);
    opacity: 1;
}

@media only screen and (min-width: 1200px) {
    .stage.A .text {
        font-size: 31px;
    }
    .stage.B span {
        font-size:64px;
    }
}

@media only screen and (max-width: 800px) {
    .stage.A img {
        display: none;
    }
    .stage.A .text {
        width:90%;
        font-size: 6vmin;
        padding: 0 0 2vw 0;
    }
    .stage.B span {
        font-size: 9vmin;
    }
}