/*---------------------------------------------------------------------------------------------
[ Footer structure ]
*/
.cf:before,
.cf:after {content:"."; display:block; height:0; overflow:hidden}
.cf:after {clear:both}
.cf {zoom: 1; /* IE < 8 */}

/* [ Flags ] */
.ico {
    display:inline-block;
    vertical-align:middle;
    position:relative;
    top:-1px;
}
.ico-flag-16 {
    height:13px;
    width:16px;
    background:url(/marketing/images/_global/flags/flag_16.png) no-repeat 0 0;
}
.ico-flag-16.flag-en,
.ico-flag-16.flag-us {
    background-position:0 -21px;
}
.ico-flag-16.flag-it {
    background-position:0 -42px;
}
.ico-flag-16.flag-cn,
.ico-flag-16.flag-zh {
    background-position:0 -63px;
}
.ico-flag-16.flag-pl {
    background-position:0 -84px;
}
.ico-flag-16.flag-de {
    background-position:0 -105px;
}
.ico-flag-16.flag-ru {
    background-position:0 -126px;
}
.ico-flag-16.flag-fi {
    background-position:0 -147px;
}
.ico-flag-16.flag-es {
    background-position:0 -168px;
}
.ico-flag-16.flag-cs {
    background-position:0 -189px;
}
.ico-flag-16.flag-pt {
    background-position:0 -210px;
}
.ico-flag-16.flag-fr {
    background-position:0 -231px;
}
.ico-flag-16.flag-nl {
    background-position:0 -252px;
}
.ico-flag-16.flag-br {
    background-position:0 -273px;
}


/* [ Social ] */
.social h5,
.social ul,
.social .ico-social {
    display:inline-block;
    vertical-align:middle;
}
.social .ico-social {
    line-height:23px;
    width:21px;
    height:22px;
    margin-left:10px;
    border-radius:11px;
    text-indent:-999em;
    vertical-align:middle;
    display:inline-block;
    background:url(/marketing/images/_global/footer/social.png) no-repeat 0 0;
}
.social a:hover {
    opacity:.9
}
.social .ico-fb {
    background-position:0 0;
    /*background-color:#395799;*/
}
.social .ico-twitter {
    background-position:-30px 0;
    /*background-color:#00aced;*/
}
.social .ico-google {
    background-position:-60px 0;
    /*background-color:#d61e1f;*/
}
.social .ico-rss {
    background-position:-90px 0;
    /*background-color:#ff800f;*/
}
/*.social .ico-linkedin {
    background-color:#0177b5;
}*/


/* [ footer ] */
.footer {
    clear:both;
    width:100%;
    position:relative;
    z-index:2;
    background: #fff;
    background: rgb(244,244,244);
    background: -moz-linear-gradient(left,  rgba(244,244,244,1) 0%, rgba(255,255,255,0) 50%, rgba(244,244,244,1) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(244,244,244,1)), color-stop(50%,rgba(255,255,255,0)), color-stop(100%,rgba(244,244,244,1)));
    background: -webkit-linear-gradient(left,  rgba(244,244,244,1) 0%,rgba(255,255,255,0) 50%,rgba(244,244,244,1) 100%);
    background: -o-linear-gradient(left,  rgba(244,244,244,1) 0%,rgba(255,255,255,0) 50%,rgba(244,244,244,1) 100%);
    background: -ms-linear-gradient(left,  rgba(244,244,244,1) 0%,rgba(255,255,255,0) 50%,rgba(244,244,244,1) 100%);
    background: linear-gradient(to right,  rgba(244,244,244,1) 0%,rgba(255,255,255,0) 50%,rgba(244,244,244,1) 100%);
    /*box-shadow:inset 0 1px 1px rgba(0,0,0,.12);*/
}
.footer-aside,
.footer {
    color:#1f2021;
    font:14px/1.4 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6 {
    font-family:"Helvetica light",'open_sanslight',Helvetica,Arial,sans-serif;
    font-weight:normal;
}
.footer .page-wrap {
    width:924px;
    padding:0;
    margin:0 auto;
    position:relative;
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
            box-sizing:border-box;
}
.footer hr {
    border:0;
    height:1px;
    margin:35px 0;
    background:-moz-linear-gradient(left,  rgba(255,255,255,0) 0%, rgba(196,196,196,0.75) 50%, rgba(255,255,255,0) 100%);
    background:-webkit-gradient(linear, left top, right top, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(196,196,196,0.75)), color-stop(100%,rgba(255,255,255,0)));
    background:-webkit-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(196,196,196,0.75) 50%,rgba(255,255,255,0) 100%);
    background:-o-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(196,196,196,0.75) 50%,rgba(255,255,255,0) 100%);
    background:-ms-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(196,196,196,0.75) 50%,rgba(255,255,255,0) 100%);
    background:linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(196,196,196,0.75) 50%,rgba(255,255,255,0) 100%);
}
.footer ul,
.footer li {
    margin:0;
    padding:0;
    list-style:none;
}
.footer {
    padding:0 0 45px;
}
.footer .logotype {
    width:139px;
    height:28px;
    margin:0 11px 0 0;
    background:url(/marketing/images/_global/footer/cm_logotype.svg) no-repeat 0 0;
    display:inline-block;
    vertical-align:middle;
    overflow:hidden;
    text-indent:-999em;
}
.footer h5 {
    color:#1f2021;
    font-size:20px;
    letter-spacing:-1px;
    margin:0 0 22px;
    padding:0;
}
.footer .social h5 {
    margin:0 5px 0 0;
}
.footer a,
.footer a:hover {
    text-decoration:none;
}
.footer a {
    color:#00aeef;
}
.footer-aside a {
    color:#737373;
    display:block;
    padding:6px 0 6px 7px;
}
.footer a:hover {
    color:#ff7407;
}
.footer-aside .grid {
    text-align:justify;
    padding:50px 0 17px;
}
.footer-aside .grid-item {
    display:inline-block;
    width:25%;
    margin:20px 0;
    text-align:left;
    vertical-align:top;
}
.footer-aside .grid-item:after {
    content:'';
    display:inline-block;
    width:100%;
}
.footer-aside .grid-item-extra {
    display:inline-block;
    border:0;
    margin:0;
}
.footer-aside li a:before {
    content:'';
    width:0;
    height:0;
    font-size:0;
    line-height:0;
    display:inline-block;
    position:relative;
    left:-5px;
    top:-2px;
    border:3px solid transparent;
    border-left-color:#c1c3c6;
}
.footer-aside li a:hover:before {
    border-left-color:#ff7407;
}


.footer .copy-wrap,
.footer .links-contact {
    float:left;
}
.footer .social,
.footer .language {
    float:right;
}

.footer .social h5 {
    font:14px/27px 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
    letter-spacing:0;
    display:block;
    margin:0 0 2px;
    text-align:right;
}
.footer .links-contact {
    /*margin:3px 0 0;*/
    width:80%;
    line-height:27px;
    font-size:13px;
}
.footer .links-contact li,
.footer .social li {
    display:inline;
}
.footer .links-contact a {
    white-space:nowrap;
    text-decoration:underline;
}
.footer .links-contact a:hover {
    text-decoration:none;
}
.footer .links-contact .spacer {
    border:0;
    margin:0 8px 0 6px;
    height:auto;
}
.footer .links-contact .spacer:after {
    content:'\25aa';
    display:inline-block;
    font-size:10px;
    color:#ddd;
    vertical-align:middle;
}


.footer .language h6,
.footer .language .dropdown-wrap {
    display:inline-block;
    vertical-align:middle;
}
.footer .language h6 {
    color:#1f2021;
    font:normal 14px "Helvetica Neue",Helvetica,Arial,sans-serif;
    margin:0 18px 0 0;
    letter-spacing:0;
    padding:0;
}
.footer .language .ico-flag-16 {
    margin-right:8px;
}


/* [ Language selection ] */
.dropdown-wrap {
    padding:5px 22px 5px 12px;
    line-height:1.2;
    text-shadow:none;
    border:0;
    outline:0;
    border-radius:30px;
    color:#363a3d;
    background:#f3f3f3;
    background:-webkit-linear-gradient(top,  #fff 0%,#f3f3f3 100%);
    background:linear-gradient(to bottom,  #fff 0%,#f3f3f3 100%);
    box-shadow:inset 0 -2px 0 rgba(255,255,255,.46), 0 2px 0 rgba(0,0,0,.1);
    position:relative;
    min-width:120px;
    cursor:pointer;
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
            box-sizing:border-box;
    -webkit-transform: translateZ(0); /* webkit flicker fix */
    -webkit-font-smoothing: antialiased; /* webkit text rendering fix */
}
.dropdown-wrap:hover {
    color:#00afec;
    background:#eee;
    background:-webkit-linear-gradient(top,  #fafafa 0%,#eee 100%);
    background:linear-gradient(to bottom,  #fafafa 0%,#eee 100%);
}
.dropdown-wrap .dropdown {
    display:block;
    position:absolute;
    bottom:100%;
    top:auto;
    right:0;
    min-width:120px;
    margin-bottom:.6em;
    font-weight:normal;
    border-radius:7px;
    background:white;
    box-shadow:0 1px 2px 0 rgba(50, 50, 50, 0.4);
    -webkit-transition: all .25s ease-out;
       -moz-transition: all .25s ease-out;
        -ms-transition: all .25s ease-out;
         -o-transition: all .25s ease-out;
            transition: all .25s ease-out;
    /* Hiding */
    opacity:0;
    visibility:hidden;
    white-space: nowrap;
}
.dropdown-wrap .dropdown-bd {
}
.dropdown-wrap:after,
.dropdown-wrap .dropdown:after {
    content:'';
    width:0;
    height:0;
    position:absolute;
    border-style:solid;
}
.dropdown-wrap:after {
    right:12px;
    top:50%;
    border-width:3px 3px 0 3px;
    border-color:#a7a7a7 transparent;
}
.dropdown-wrap .dropdown:after {
    top:100%;
}

/* This bridges the gap so you can mouse into the tooltip without it disappearing */
.dropdown-wrap .dropdown:before {
    content:'';
    display:block;
    position:absolute;
    bottom:-1em;
    left:0;
    height:100%;
    width:1em;
}  
.dropdown-wrap .dropdown:after {
    right:11px;
    border-width:3px 3px 0 3px;
    border-color:#fff transparent;
}
/*.dropdown-wrap:hover .dropdown,*/
.dropdown-wrap.active .dropdown {
    opacity:1;
    visibility:visible;
    margin-bottom:0.6em;
    -webkit-transform:translateX(0) translateY(0);
       -moz-transform:translateX(0) translateY(0);
        -ms-transform:translateX(0) translateY(0);
         -o-transform:translateX(0) translateY(0);
            transform:translateX(0) translateY(0);
}
.dropdown-wrap .dropdown li a {
    color:#303030;
    line-height:27px;
    display:block;
    padding:4px 8px 4px 12px;
    border:1px solid rgba(255, 255, 255, 0.2);
    -webkit-transition:all 0.3s ease-out;
       -moz-transition:all 0.3s ease-out;
        -ms-transition:all 0.3s ease-out;
         -o-transition:all 0.3s ease-out;
            transition:all 0.3s ease-out;
}
.dropdown-wrap .dropdown li:first-of-type a {
    border-radius:6px 6px 0 0
}
.dropdown-wrap .dropdown li:last-of-type a {
    border:none;
    border-radius:0 0 6px 6px;
}
.dropdown-wrap .dropdown li:hover a {
    background:#f6f6f6
}


/*---------------------------------------------------------------------------------------------
[ Media query ]
*/
@media all and (max-width:1024px) {
    /*body {
        min-width:inherit !important;
    }*/
    .footer .page-wrap {
        padding-right:25px;
        padding-left:25px;
        width:auto;
    }
    .footer .links-contact {
        width:60%;
    }
}

@media all and (max-width:768px) {
    .footer-aside .grid-item {
        width:50%;
    }
    .footer-aside h5 {
        margin-bottom:11px;
    }
    .footer-aside a {
        text-decoration:underline;
        padding:12px 0 12px 7px;
    }
    .footer .links-contact {
        width:auto;
    }
    .footer .social h5 {
        display:inline-block;
    }
    .footer .social, .footer .language,
    .footer .copy-wrap, .footer .links-contact {
        float:none;
        margin:1em 0;
    }
    .footer .social,
    .footer .copy-wrap {
        margin:2em 0 1em;
    }
    .footer .dropdown-wrap {
        text-align:left;
    }
    .footer hr {
        margin:1.4em 0;
    }
}

@media all and (max-width:480px) {
    .footer-aside .grid-item {
        width:100%;
        display:block;
    }
    .footer-aside h5 {
        margin-bottom:.2em;
    }
}

@media all and (max-width:320px) {
    .footer .social, .footer .language,
    .footer .copy-wrap, .footer .links-contact {
        text-align:center;
    }
    .footer .language h6 {
        margin:0 0 .5em;
        display:block;
    }
    .footer .logotype {
        display:block;
        margin:2em auto .5em;
    }
}