/**
 * Created by i.Nemiro on 24.01.14.
 */

html,
button,
input,
select,
textarea {
    color: #0d0d0d;
}

a {
    text-decoration: none;
}

html {
    font-size: 15px;
    /*font-size: 1em;*/
    line-height: 1.4;
    font-family: 'skoda_proregular', Arial, sans-serif;
}

html,body {
    height:100%;
    width:100%;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

canvas,
img {
    vertical-align: middle;
}

img {
    border:0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: none;
}

/* Browse Happy prompt */

#browsehappy {
    position: absolute;
    width:100%;
    height: 100%;
    background: #fff;
    font-size: 48px;
}

.lt-ie9 #wrap {
    display: none;
}

/****************************************************/
/****************************************************/
/****************************************************/
/****************************************************/

html{
    background: #fff;
}

#app {
    overflow-x: hidden;
}

#wrap {
    /*width:1365px;*/
    /*width:100%;*/
    width:2344px;
    /*min-width: 1024px;*/
    background: #fff;
    position: relative;
    overflow: hidden;
    min-height:963px;
    height:100%;

    /* adaptive */
    /*min-height: 740px;*/
    /*max-height:963px;*/
    /*height: 100%;*/
}

#loading {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition:    opacity 0.5s ease-out;
    -ms-transition:     opacity 0.5s ease-out;
    -o-transition:      opacity 0.5s ease-out;
    transition:         opacity 0.5s ease-out;
}

.ui {
    position: fixed;
    /*position: absolute;*/
    top:0;
    left:0;
    z-index: 1000;
}

.description-content,
#loading,
/*#labels,*/
#container {
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

#loading {
    position: fixed;
    background: #fff;
    z-index: 5000;
}
#loading-cont {
    position: absolute;
    top:50%;
    left:50%;
    width: 320px;
    height: 60px;
    margin: -30px 0 0 -160px;
    text-align: center;
}
#loading-text {
    font-size: 16px;
    padding: 0 0 1em;
    text-transform: lowercase;
}
#loading-image {
    background: url('../img/loading.gif') center center no-repeat;
    width:90px;
    height: 20px;
    display: inline-block;
}

#constructor,
#back2site {
    left:46px;
}

#constructor {
    top:113px;
}
.constructor-item {
    margin: 0 28px 14px 0;
    display: inline-block;
    vertical-align: top;
    height: 29px;
}

#logotypes {
    background: url('../img/partners-logo.png') 0 0 no-repeat;
}
#logotypes,
.adfox-ui {
    top:40px;
    right:46px;
    width:220px;
    height:68px;
    left:auto;
}
.adfox-ui {
    z-index: 1001;
}
#back2site {
    top:54px;
    padding-left:40px;
    line-height: 45px;
    height: 45px;
    background: url('../img/sp-express-logo.png') left center no-repeat;
    display: block;
}
#back2site-link {
    color:#242423;
    font-family: Arial;
}
#back2site:hover #back2site-link {
    border-bottom: 1px solid #242423;
}

.description {
    /*width:340px;*/
    width:407px;
    height:100%;
    /*position: absolute;*/
    position: fixed;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 5px 5px rgba(0,0,0,.19);
    opacity: 0;
    top:0;
    -webkit-transform: scaleY(1.75) translateX(-20px) perspective( 600px ) rotateY( -20deg );
    -webkit-transform-origin: 50% 50%;
    -moz-transform: scaleY(1.75) translateX(-20px) perspective( 600px ) rotateY( -20deg );
    -moz-transform-origin: 50% 50%;
    -ms-transform: scaleY(1.75) translateX(-20px) perspective( 600px ) rotateY( -20deg );
    -ms-transform-origin: 50% 50%;
    transform: scaleY(1.75) translateX(-20px) perspective( 600px ) rotateY( -20deg );
    transform-origin: 50% 50%;
}
.description-header-spacer,
.description-header {
    background: rgba(89,153,44,1);
}
.description-header {
    overflow: hidden;
    padding:21px 42px 21px 21px;
    font-family: 'skoda_probold';
    font-size: 30px;
    line-height: 26px;
    color: #fff;
    display: block;
    margin: 0;
}
.description-img img,
.description-img {
    width: 100%;
}
.description-text {
    font-family: 'skoda_proregular';
    font-size: 13px;
    line-height: 17px;
    display: block;
    margin: 0 18px;
    padding: 18px 0;
}
.description-text-header {
    font-family: 'skoda_probold';
    font-size: 30px;
    line-height: 32px;
    margin: 0 0 25px 0;
    padding: 0;
}
.description-visible {
    /* left position will be set into js */
    opacity: 1 !important;
    -webkit-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 ) !important;
    -moz-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 ) !important;
    -ms-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 ) !important;
    transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 ) !important;
}
.description-close {
    display: block;
    width:65px;
    height:67px;
    position: absolute;
    top:10px;
    right:1px;
    background: rgba(89,153,44,.8) url('../img/close.png') center center no-repeat;
    z-index: +1;
    cursor: pointer;
}
.description-close:hover {
    background-color: rgba(89,153,44,1);
}
.description-content {
    overflow: hidden;
    /*background: rgba(89,153,44,1);*/
}
.description-header-spacer {
    height: 10px;
    /*position: absolute;*/
    /*left:0;*/
    /*top:0;*/
    /*right:0;*/
}
/*.desc-content-bg {*/
    /*top:5px;*/
    /*position: absolute;*/
    /*background: #fff;*/
/*}*/

/************/
/**CAR ROAD**/
/************/
    #car-road-container {
        top:auto;
        bottom:0;
        left:0;
        right:0;
        height:96px;
        z-index: 900;
    }
    #car-way,
    #car-road,
    #car-road-spacer {
        background-repeat: no-repeat;
        background-position: right bottom;
        position: absolute;
        top:0;
        bottom: 0;
    }
    #car-road {
        left:0;
        right:380px;
        max-width:975px;
        background-image: url('../img/car-road-bg.png');
    }
    #car-way {
        right:0;
        width:380px;
        background-image: url('../img/car-road-ui-bg.png');
    }
    #car-road-spacer {
        left:975px;
        right:380px;
        background: url('../img/car-road-bg-loop.png') center bottom repeat-x;
    }
    #car-road-stripes {
        position: absolute;
        top:37px;
        left:0;
        height:5px;
        width:945px;
        max-width: 95%;
        background: url('../img/car-road-stripes.png') 0 0 repeat-x;
    }
    #car-road-stripes.animated {
        -webkit-animation: stripes 1s infinite linear;
        -moz-animation:    stripes 1s infinite linear;
        -o-animation:      stripes 1s infinite linear;
        animation:         stripes 1s infinite linear;
    }
    #car-road-stripes-mask {
        width:446px;
        background: url('../img/car-road-stripes-mask.png') right top no-repeat;
        background-size: auto 100%;
        position: absolute;
        right:0;
        top:0;
        bottom:0;
    }
    @-webkit-keyframes stripes {
        0%,100% { background-position: 0 0; }
        99.999% { background-position: -937px 0; }
    }
    @-moz-keyframes stripes {
        0%,100% { background-position: 0 0; }
        99.999% { background-position: -937px 0; }
    }
    @-o-keyframes stripes {
        0%,100% { background-position: 0 0; }
        99.999% { background-position: -937px 0; }
    }
    @keyframes stripes {
        0%,100% { background-position: 0 0; }
        99.999% { background-position: -937px 0; }
    }
/**CAR ROAD END**/

.hidden {
    opacity: 0 !important;
    pointer-events:none;
}

.layer {
    position: absolute;
    top:0;
    left:0;
}
.layer-static {
    /*position: relative;*/
    position: absolute;
    left:0 !important;
}

.arrow {
    color: #fff;
    font-size: 250px;
    line-height: 96px;
    font-family: 'skoda_prolight';
    text-shadow: 5px 5px 35px rgba(15,30,0,.68);
    top:50%;
    height:96px;
    margin-top:-48px;
    cursor: pointer;
}
.arrow-left {
    left: 17px;
}
.arrow-right {
    left:auto;
    right:17px;
}
.arrow:hover {
    text-shadow: 5px 5px 35px rgba(15,30,0,.58);
}

#container {
    left:0;
    right:0;
    /*width: 100%;*/
    /*height:100%;*/
    height:963px;
    top:auto;
    overflow: hidden;
    /*background: url('../img/bg-loop.png') center top repeat-x;*/
}

.selectbox {
    position: relative;
    min-width:232px;
}
.select {
    opacity: 0;
    width: 100%;
}
.select,
.box-container {
    position: absolute;
    top:0;
    left:0;
}
.box-title,
.box-items {
    width: 100%;
    padding: 0;
    margin:0;
    display: block;
    /*background-color: rgba(242,242,242,.8);*/
}
.box-title {
    line-height: 29px;
    color:#242423;
    text-indent: 11px;
    height: 29px;
    opacity:.8;
    background-color: rgba(242,242,242,1);
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.box-title:after {
    content:"";
    display: block;
    width:18px;
    height:15px;
    position: absolute;
    background: url('../img/selectbox-arrow.png') 0 0 no-repeat;
    top:8px;
    right:10px;
}
.box-items {
    height:0;
    opacity: 0;
    -webkit-transform: scaleY(.75) translateY(-20px) perspective( 600px ) rotateX( -20deg );
    -webkit-transform-origin: 50% 0;
    -moz-transform: scaleY(.75) translateY(-20px) perspective( 600px ) rotateX( -20deg );
    -moz-transform-origin: 50% 0;
    -ms-transform: scaleY(.75) translateY(-20px) perspective( 600px ) rotateX( -20deg );
    -ms-transform-origin: 50% 0;
    transform: scaleY(.75) translateY(-20px) perspective( 600px ) rotateX( -20deg );
    transform-origin: 50% 0;

    overflow: hidden;
    color:#000;
    background-color: rgba(242,242,242,.8);
}
.box-items .item {
    /*height:35px;*/
    line-height: 15px;
    list-style: none;
    padding: 10px 11px;
    margin: 0;
    display: block;
    cursor: pointer;
}
.box-items .item:hover {
    background-color: rgba(255,255,255,.75);
}
.box-container{
    width: 100%;
    display: block;
    cursor: default;
    font-family: 'skoda_proregular';
}
.box-container.expanded .box-items {
    height:auto;
    opacity: 1;
    -webkit-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 );
    -moz-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 );
    -ms-transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 );
    transform: scaleY(1) translateY(0) perspective( 600px ) rotateX( 0 );
}
.button {
    border:0;
    padding:0 14px;
    line-height: 29px;
    text-transform: uppercase;
    background: rgba(0,0,0,.05);
    outline:none;
}
.button .txt {
    display: block;
}
.button:hover {
    background: rgba(0,0,0,.10);
}
.button:active {
    box-shadow: 0 0 1px rgba(0,0,0,.40);
    background: rgba(255,255,255,.20);
    -webkit-transition: background 0.05s ease-in;
    -moz-transition:    background 0.05s ease-in;
    -ms-transition:     background 0.05s ease-in;
    -o-transition:      background 0.05s ease-in;
    transition:         background 0.05s ease-in;
}

#go,
.soc-link,
#car-message-text,
#car-message-bubble,
.label,
.label *,
.arrow,
.description.desktop,
.desktop .description-close,
.box-items .item,
.box-items {
    -webkit-transition: all 0.15s ease-out;
    -moz-transition:    all 0.15s ease-out;
    -ms-transition:     all 0.15s ease-out;
    -o-transition:      all 0.15s ease-out;
    transition:         all 0.15s ease-out;
}

.button {
    -webkit-transition: all 0.5s ease-out;
    -moz-transition:    all 0.5s ease-out;
    -ms-transition:     all 0.5s ease-out;
    -o-transition:      all 0.5s ease-out;
    transition:         all 0.5s ease-out;
}

/**********/
/**LAYERS**/
/**********/
    #stat_1_plain {
        /* jpg is not laggy, as png,
        so use container
        with transparent bg
        and plain with merged bg-loop */
        background: url('../img/stat_1_plain.jpg') 0 0 no-repeat;
        width:2344px;
        height:722px;
        z-index: 10;

        /* adaptive */
        /*bottom: 241px;*/
        /*position: absolute;*/
        /*background-position: center bottom;*/
        /*height: 100%;*/
        /*max-height: 722px;*/
    }
    #_2_plan {
        background: url('../img/2_plan.png') 0 0 no-repeat;
        width:1227px;
        height:145px;
        top: 287px;
        /*left:815px;/*mokup*/
        left:575px;
        z-index: 20;
    }
    #_3_plan {
        background: url('../img/3_plan.png') 0 0 no-repeat;
        width:68px;
        height:45px;
        top: 216px;
        left:262px;
        z-index: 30;
    }
    #main_layer_4_plan {
        background: url('../img/main_layer_4_plan.png') 0 0 no-repeat;
        width:2344px;
        height:599px;
        z-index: 40;
        top:364px;
    }
    #trees {
        background: url('../img/trees.png') 0 0 no-repeat;
        width:1181px;
        height:211px;
        z-index: 48;
        top:389px;
        left:930px;
    }
    #_5_plan {
        background: url('../img/5_plan.png') 0 0 no-repeat;
        width:1209px;
        height:183px;
        top: 295px;
        /*left:951px;/*mockup*/
        left:801px;
        z-index: 50;
    }
/* // layers */

#objects-wrapper {
    z-index: 40;
    right: 0;
    bottom: 0;
}
#objects {
    width:703px;
    height:233px;
    background: url('../img/objects.png') 0 0 no-repeat;
    position: absolute;
    z-index: 100;
    top:551px;
    left:1214px;
}
#objects .object {
    /* we can use separate objects,
    not background if need focus ability
     on each(!) object.
     if used, remove #objects `background` property */
}

/*#descriptions,*/
#labels {
    position: absolute;
    top:0;
    left:0;
    bottom: 0;
    z-index: 150;
}
/*#descriptions,*/
.description {
    z-index: 1500;
}
#roads {
    z-index:45;
    /* width from .svg file */
    /*width:2330px;*/
    width:1992px;
    height: 399px;
    position: absolute;
    left:338px;
    top:418px;
}
/*#roads-svg {*/
    /*-webkit-transform: translate(338px,418px);*/
    /*-moz-transform: translate(338px,418px);*/
    /*-ms-transform: translate(338px,418px);*/
    /*-o-transform: translate(338px,418px);*/
    /*transform: translate(338px,418px);*/
/*}*/

.layer,
#roads,
#trees,
#objects {
    pointer-events:none !important;
}

.label {
    cursor: pointer;
    position: absolute;
    -webkit-transform-origin: 50% 100%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    /*z-index: 150;*/
}
.label .img {
    cursor: pointer;
    z-index: +1;
    background-repeat: no-repeat;
    background-position: 0 0;
    position: absolute;
    width: 100%;
    height: 100%;
}
#go,
#car-message-text,
#car-message-bubble,
.label .info,
.label .info .info-details-link {
    box-shadow: 4px 4px 2px rgba(0,0,0,.19);
}
#go,
#car-message-text,
.label .info {
    opacity: 0;
    height: 42px;
    line-height: 42px;
    padding:0 42px;
    position: absolute;
    font-family: 'skoda_probold';
    text-align: center;
    color: #fff;
    -webkit-border-radius: 42px;
    -moz-border-radius: 42px;
    border-radius: 42px;
    white-space: nowrap;
}
#car-message-bubble,
#car-message-text {
    color: #0d0d0d;
    background: #fff;
    font-size: 25px;
    cursor: default;
    font-family: 'skoda_promedium';
}
#go {
    background: #db2429;
    font-size: 25px;
    cursor: pointer;
}
#car-message-bubble {
    display: block;
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    position: absolute;
    top: -30px;
    left:120px;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transform: scale(.01) perspective( 600px );
    -moz-transform: scale(.01) perspective( 600px );
    -ms-transform: scale(.01) perspective( 600px );
    transform: scale(.01) perspective( 600px );
    opacity: 0;
}
#car-message-text {
    padding: 0 17px;
    position: absolute;
    top: -90px;
    left:117px;
    -webkit-transform-origin: 20% 50%;
    -moz-transform-origin: 20% 50%;
    -ms-transform-origin: 20% 50%;
    transform-origin: 20% 50%;
    -webkit-transform: scale(.01) perspective( 600px );
    -moz-transform: scale(.01) perspective( 600px );
    -ms-transform: scale(.01) perspective( 600px );
    transform: scale(.01) perspective( 600px );
    opacity: 0;
}
#car-message-text.visible,
#car-message-bubble.visible {
    opacity: 1;
}
.label .info {
    left:50%;
    top:0;
    background: #509025;
    font-size: 18px;
}
.label .info .info-details-link {
    top:-6px;
    right:-13px;
    display: block;
    position: absolute;
    background: #fff;
    color: #509025;
    font-family: 'skoda_proextrabold';
    font-size: 28px;
    width:40px;
    height:40px;
    line-height: 40px;
    text-align: center;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    overflow: hidden;
}
.label .info-text {
    white-space: nowrap;
}
.label .sports {
    position: absolute;
    /*bottom: -17px;*/
    top: 48px;
    margin-left: 30px;
    left:50%;
    white-space: nowrap;
    font-size: .01px;
    width: 0;
    overflow: hidden;
    pointer-events:none;
}
.label:hover {
    z-index: +1;
}
.label:hover .sports {
    width: auto;
}
.label .s-icon {
    margin-right: 7px;
    -webkit-transform: scale(.01) perspective( 600px );
    -moz-transform: scale(.01) perspective( 600px );
    -ms-transform: scale(.01) perspective( 600px );
    transform: scale(.01) perspective( 600px );
    -webkit-transform-origin: 0% 0%;
    -moz-transform-origin: 0% 0%;
    -ms-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
    opacity: 0;
}
.label:hover .s-icon {
    opacity: 1;
}

/***********/
/**LAYBLES**/
/***********/
    .label-airport,
    .label-city {
        width: 86px;
        height:104px;
        margin: -104px 0 0 -43px;
    }
    .label-airport .info,
    .label-city .info {
        box-shadow: none;
        background: transparent url('../img/label-info-big.png') 0 0 no-repeat;
        background-size: 100% 100%;
        /*padding: ;*/
        height:62px;
        text-indent: 15px;
    }
    .label-airport .info .info-details-link,
    .label-city .info .info-details-link {
        color: #6a8b1f;
        text-indent: 0;
    }
    .label-city .img {background-image: url('../img/labels/city.png')}
    .label-airport .img {background-image: url('../img/labels/airport.png')}

    .label-water,
    .label-rock {
        width: 46px;
        height:54px;
        margin: -54px 0 0 -23px;
    }
    .label-rock .img {background-image: url('../img/labels/rock.png')}
    .label-water .img {background-image: url('../img/labels/water.png')}

    /* types */
    .label-type-from,
    .label-type-to {
        width:66px;
        height:79px;
        margin: -79px 0 0 -33px;
    }
    .label-type-from .img {background-image: url('../img/labels/from.png')}
    .label-type-to .img {background-image: url('../img/labels/to.png')}

    .label.warning {
        -webkit-animation: zoomin .2s ease-out;
        -webkit-animation-iteration-count: 1;
        -moz-animation: zoomin .2s ease-out;
        -moz-animation-iteration-count: 1;
        -ms-animation: zoomin .2s ease-out;
        -ms-animation-iteration-count: 1;
        animation: zoomin .2s ease-out;
        animation-iteration-count: 1;
    }
    @-webkit-keyframes zoomin {
        0%,100% { -webkit-transform: scale(1) perspective( 600px ); }
        50% { -webkit-transform: scale(1.15) perspective( 600px ); }
    }
    @-moz-keyframes zoomin {
        0%,100% { -moz-transform: scale(1) perspective( 600px ); }
        50% { -moz-transform: scale(1.15) perspective( 600px ); }
    }
    @-ms-keyframes zoomin {
        0%,100% { -ms-transform: scale(1) perspective( 600px ); }
        50% { -ms-transform: scale(1.15) perspective( 600px ); }
    }
    @keyframes zoomin {
        0%,100% { transform: scale(1) perspective( 600px ); }
        50% { transform: scale(1.15) perspective( 600px ); }
    }
/* // LAYBLES */

.label .info {
    margin-left:0;
    -webkit-transform: scaleX(.01) perspective( 600px );
    -moz-transform: scaleX(.01) perspective( 600px );
    -ms-transform: scaleX(.01) perspective( 600px );
    transform: scaleX(.01) perspective( 600px );
    -webkit-transform-origin: 0% 50%;
    -moz-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
}
.label:hover .info {
    margin-left:-10px;
    opacity: 1;
}
.label .info .info-details-link {
    -webkit-transform: scale(.01) perspective( 600px );
    -moz-transform: scale(.01) perspective( 600px );
    -ms-transform: scale(.01) perspective( 600px );
    transform: scale(.01) perspective( 600px );
    -webkit-transform-origin: 50% 37.5%;
    -moz-transform-origin: 50% 37.5%;
    -ms-transform-origin: 50% 37.5%;
    transform-origin: 50% 37.5%;
}

#go,
.soc-link,
.label:hover .info,
.label:hover .info .info-details-link,
.arrow,
.label {
    -webkit-transform: scale(.95) perspective( 600px );
    -moz-transform: scale(.95) perspective( 600px );
    -ms-transform: scale(.95) perspective( 600px );
    transform: scale(.95) perspective( 600px );
}
.soc-link:hover,
#car-message-text.visible,
#car-message-bubble.visible,
#go:hover,
.label .info .info-details-link:hover,
.label:hover,
.label:hover .s-icon,
.arrow:hover {
    -webkit-transform: scale(1) perspective( 600px );
    -moz-transform: scale(1) perspective( 600px );
    -ms-transform: scale(1) perspective( 600px );
    transform: scale(1) perspective( 600px );
}

#go.visible {
    opacity: 1;
    margin-top: -126px; /* 42px button + 79px label + 5px space */
}

#car {
    position: absolute;
    width: 297px;
    height:136px;
    left:28px;
    bottom:17px;
    z-index: 150;
}
#car .bg {
    width: 100%;
    height: 100%;
    position: relative;
    background: url('../img/car.png') left bottom no-repeat;
    -webkit-transform-origin: 30% 50%;
    -moz-transform-origin: 30% 50%;
    -ms-transform-origin: 30% 50%;
    transform-origin: 30% 50%;
}
#car .bg.animated-stop,
#car .bg.animated {
    -webkit-animation: deformcar .2s ease-out;
    -webkit-animation-iteration-count: 1;
    -moz-animation: deformcar .2s ease-out;
    -moz-animation-iteration-count: 1;
    -ms-animation: deformcar .2s ease-out;
    -ms-animation-iteration-count: 1;
    animation: deformcar .2s ease-out;
    animation-iteration-count: 1;
}
#car .bg.animated-stop {
    -webkit-transform-origin: 70% 50%;
    -moz-transform-origin: 70% 50%;
    -ms-transform-origin: 70% 50%;
    transform-origin: 70% 50%;
}
@-webkit-keyframes deformcar {
    0%,100% { -webkit-transform: scale3d(1,1,1); }
    50% { -webkit-transform: scale3d(.99,1,1); }
}
@-moz-keyframes deformcar {
    0%,100% { -moz-transform: scale3d(1,1,1); }
    50% { -moz-transform: scale3d(.99,1,1); }
}
@-o-keyframes deformcar {
    0%,100% { -o-transform: scale3d(1,1,1); }
    50% { -o-transform: scale3d(.99,1,1); }
}
@keyframes deformcar {
    0%,100% { transform: scale3d(1,1,1); }
    50% { transform: scale3d(.99,1,1); }
}

.wheel-left {left:35px;}
.wheel-right {right:35px;}

.wheel {
    width: 51px;
    height:51px;
    bottom: 10px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    z-index: +1;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    background-image: url('../img/wheel.png');
}
.wheel.animated {
    -webkit-animation: wheel .35s infinite linear;
    -moz-animation:    wheel .35s infinite linear;
    -o-animation:      wheel .35s infinite linear;
    animation:         wheel .35s infinite linear;
}
@-webkit-keyframes wheel {
    0% { -webkit-transform: rotateZ(0) }
    50% { -webkit-transform: rotateZ(180deg) }
    100% { -webkit-transform: rotateZ(360deg) }
}
@-moz-keyframes wheel {
    0% { -moz-transform: rotateZ(0) }
    50% { -moz-transform: rotateZ(180deg) }
    100% { -moz-transform: rotateZ(360deg) }
}
@-o-keyframes wheel {
    0% { -o-transform: rotateZ(0) }
    50% { -o-transform: rotateZ(180deg) }
    100% { -o-transform: rotateZ(360deg) }
}
@keyframes wheel {
    0% { transform: rotateZ(0) }
    50% { transform: rotateZ(180deg) }
    100% { transform: rotateZ(360deg) }
}

#car.animated {
    -webkit-animation: tripWave .5s infinite ease-out;
    -moz-animation:    tripWave .5s infinite ease-out;
    -o-animation:      tripWave .5s infinite ease-out;
    animation:         tripWave .5s infinite ease-out;
}
@-webkit-keyframes tripWave {
    0% { -webkit-transform: translateY(0) }
    50% { -webkit-transform: translateY(-3px) }
    100% { -webkit-transform: translateY(1px) }
}
@-moz-keyframes tripWave {
    0% { -moz-transform: translateY(0) }
    50% { -moz-transform: translateY(-3px) }
    100% { -moz-transform: translateY(1px) }
}
@-o-keyframes tripWave {
    0% { -o-transform: translateY(0) }
    50% { -o-transform: translateY(-3px) }
    100% { -o-transform: translateY(1px) }
}
@keyframes tripWave {
    0% { transform: translateY(0) }
    50% { transform: translateY(-3px) }
    100% { transform: translateY(1px) }
}

/*********/
/**ICONS**/
/*********/
    .s-icon {
        width:27px;
        height:27px;
        background-image: url('../img/ico_sports.png');
        background-repeat: no-repeat;
        display: inline-block;
    }
    /***
    @see http://www.olympic.org/sports
    */
    .s-icon-fig_skating {background-position: 0 0;}
    .s-icon-freestyle_ski {background-position: -32px 0;}
    .s-icon-freestyle_ski2 {background-position: -64px 0;}
    .s-icon-alpine_skiing {background-position: -96px 0;}
    .s-icon-short_speed_skate {background-position: -128px 0;}
    .s-icon-freestyle_ski3 {background-position: -160px 0;}
    .s-icon-downhill_ski {background-position: -192px 0;}
    .s-icon-biathlon {background-position: -224px 0;}
    .s-icon-bobsleigh {background-position: -256px 0;}
    .s-icon-cross_country {background-position: -288px 0;}
    .s-icon-curling {background-position: -320px 0;}

    .s-icon-hockey {background-position: 0 -32px;}
    .s-icon-skeleton {background-position: -32px -32px;}
    .s-icon-nordic_comb {background-position: -64px -32px;}
    .s-icon-speed_skating {background-position: -96px -32px;}
    .s-icon-skeleton2 {background-position: -128px -32px;}
    .s-icon-ski_jumping {background-position: -160px -32px;}
    .s-icon-snowboard_double {background-position: -192px -32px;}
    .s-icon-snowboard {background-position: -224px -32px;}
    .s-icon-snowboard_race {background-position: -256px -32px;}
    .s-icon-snowboard_freestyle {background-position: -288px -32px;}
    .s-icon-speed_skating2 {background-position: -320px -32px;}
/* // icons */

#soc {
    position: absolute;
    left:140px;
    top:10px;
}
.soc-link {
    vertical-align: top;
    display: inline-block;
    cursor: pointer;
    margin-right: 10px;
}
.soc-link:hover {
    opacity: .85;
}
.soc-link-img {
    width: 39px;
    height:39px;
}

/****************************************************/
/****************************************************/
/****************************************************/
/****************************************************/

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The i space content is one way to avoid an Opera bug when the
 *    `contenteditable` n attribute is included anywhere e else in the document.
 *    Otherwise it causes space m to appear at i the top and bottom of r elements
 *    that receive the `clearfix` class o.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* iPads (portrait and landscape) ----------- */
@media only screen
and (max-device-width : 1024px) {
    .description-header {
        font-size: 32px;
        line-height: 28px;
    }
    .description-text {
        font-size: 16px;
        line-height: 19px;
    }
    .description-text-header{
        font-size: 32px;
        line-height: 34px;
    }
}