/**
 * Created by PhpStorm.
 * Company: PageCon GmbH
 * User: patrickmeppe
 * Date: 27.06.2017
 * Time: 14:55
 */

/*general: overrides*/
.w3-container { /*w3-container is provided by the w3.css plugin; the left and right padding is removed to enable a full control of the page margin below*/
    padding-left: 0;
    padding-right: 0;
}
.w3-btn:hover { /*undo the effect set in w3.css*/
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}
img { margin-bottom: 0; } /*undo the -5px set by w3.css*/


/*general: nodes*/
html { visibility: hidden } /*hidden at the beginning to avoid the visualisation of the angularJS syntax; angularJS sets the value to visible once the rendering is done*/
body {
    font-family: Eurostile-Reg;
    font-variant-ligatures: none;
}
body > div {
    margin-right: auto; /*used to keep the div in the middle*/
    margin-left: auto;
    max-width: 1170px;
    position: relative; /*set the grid to position the menu items container*/
    overflow: hidden; /*x: used to hide the header image overflow, y: used to hide the menu overflow*/
}
body > div > div { /*remove the padding set by the w3.css plug in*/
    padding-left: 0 ! important;
    padding-right: 0 ! important;
}
a,
a:link,
a:visited
{
    text-decoration: none !important;
    color: white;
    background: inherit;
}


/*general: classes*/
.pagecon-uppercase {
    text-transform: uppercase;
    white-space: nowrap
}
.pagecon-nowrap { white-space: nowrap }

/*general: node classes*/
a.pagecon-button,
a.pagecon-button:link,
a.pagecon-button:visited
{ background: #C71232 }

button:not(.pagecon-active) {
    background: #E8E8E8;
    border-bottom: 4px solid #cccccc;
}
button.pagecon-active {
    background: #C71232;
    border-bottom: 4px solid #9a0e26;
    color: white;
}


/*rows*/
#menu_items { /*the menu itself*/
    position: absolute;
    padding-top: 90px;
    width: 90%;
    height: 100%;
    max-width: 500px;
    top: 25px;
    z-index: 500;
    background-color: #EEEEEE;
    overflow-y: hidden;
    display: none;
}
#menu_items > * {
    text-align: center;
    border-top: solid 1px white;
}
#menu_items > a {
    background-color: #C71232;
    color: white;
    font-size: 20px;
    font-weight: bold;
    padding: 15px;
    cursor: pointer;
}
#menu_items > div {
    padding: 40px;
    font-size: 20px;
}
#menu_items > div > a {
    color: #3D5156;
    font-weight: bold;
}

#languages {
    height: 25px;
    background-color: #3D5156;
    text-align: right;
    color: white;
    padding-right: 15px;
}
.pagecon-languages > a {
    border-left: solid 1px;
    border-right: solid 1px;
    padding-left: 10px;
    padding-right: 10px;
}
.pagecon-languages > a:first-child { border-left: none }
.pagecon-languages > a:last-child { border-right: none }

#menu_logo_check { height: 90px } /*position: relative :: implicitly set by the .w3-container class*/
#menu_logo_check > div:first-child { /*used to open & close the menu items container*/
    width: 56px;
    left: 3%;
    cursor: pointer;
    z-index: 501;
}
#menu_logo_check > div:first-child > div { position: absolute }
#menu_logo_check > div:first-child > div:first-child { top: -30px; } /*the menu: open*/
#menu_logo_check > div:first-child > div:first-child > div { /*the menu: open: @see https://www.w3schools.com/howto/howto_css_menu_icon.asp*/
    width: 56px;
    background-color: #C71232;
    height: 5px;
    margin: 10px 0;
}
#menu_logo_check > div:first-child > div:last-child { /**the menu: close*/
    top: -70px;
    font-size: 90px;
    color: #C71232;
    display: none;
}

#menu_logo_check > div:first-child.pagecon-active > div:nth-child(n+2) { display: none }
#menu_logo_check > div:last-of-type { /*the logo*/
    text-align: center;
}
#menu_logo_check > div:last-of-type > img {
    background: white;
    height: auto;
    margin-bottom: -15px; /*move up the element below*/
}
#menu_logo_check > div:last-of-type > p {
    border-top: solid 1px #C71232;
    border-bottom: solid 1px #C71232;
    color: #C71232;
    padding: 20px 100px 0 100px;
    margin-top: -5px; /*move down the element higher*/
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 20px;
    white-space: nowrap;
}
#menu_logo_check > a { /*link to sigma check*/
    padding: 5px 25px 5px 15px;
    right: 3%;
}
#menu_logo_check > a > div { /*@see https://css-tricks.com/snippets/css/css-triangle/ :: arrow right*/
    position: absolute;
    right: 10px;
    top: 9px;
    /*
    float: right;
    margin-top: 3px;
    margin-left: 10px;
    */
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 5px solid white;
}

#header_img_big > img { width: 100% }

#devices_jump_marks {
    padding-left: 25% !important;
    padding-right: 25% !important;
    height: 200px;
}
#devices_jump_marks div { height: 100%; }
#devices_jump_marks > div > div {
    cursor: pointer;
    padding: 20px 10px 5px 10px;
    position: relative; /*set the grid for the highlighter*/
}
#devices_jump_marks > div > div > img {
    height: 60%;
    margin-bottom: 10px;
}

#devices_jump_marks > div > div > span:first-of-type {
    white-space: nowrap;
    font-size: 18px
}
#devices_jump_marks > div > div > span:last-of-type {
    background-color: #3D5156;
    color: white;
    position: absolute;
    top: 15%;
    line-height: 1em
}
html[lang=de] #devices_jump_marks > div > div > span:last-of-type { padding: 1px 5px 2px 5px }
html[lang=en] #devices_jump_marks > div > div > span:last-of-type { padding: 1px 15px 2px 15px }
html[lang=es] #devices_jump_marks > div > div > span:last-of-type { padding: 1px 20px 4px 20px }
html[lang=fr] #devices_jump_marks > div > div > span:last-of-type { padding: 1px 5px 4px 5px; }
html[lang=nl] #devices_jump_marks > div > div > span:last-of-type { padding: 0 20px 4px 20px; }

#devices_data {
    padding: 20px 50px 40px 50px !important;
    background-color: #EEEEEE;
    color: #C71232
}
#devices_data > a { color: #C71232 }
#devices_data > a > div { /*triangle; @see https://css-tricks.com/snippets/css/css-triangle/ :: arrow left*/
    float: left;
    margin-top: 5px;
    margin-right: 10px;
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right:5px solid;
}

#devices_data > div { margin: 20px 0 50px 0; }
#devices_data > div > div:first-child { margin-bottom: 20px }
#devices_data > div > div:first-child > span { /*title*/
    border-top: solid 1px;
    border-bottom: solid 1px;
    font-size: 32px;
}

#devices_data > div > div:last-child > div:first-child { height: 85px; }
#devices_data > div > div:last-child > div:first-child > div { /*head*/
    height: 100%;
    font-size: 32px;
    padding: 20px 0;
    background: #cccccc;
    cursor: pointer;
    white-space: nowrap;
}
#devices_data > div > div:last-child > div:first-child > div > * { vertical-align: middle }
#devices_data > div > div:last-child > div:first-child > div > span:first-of-type {
    border: solid 1px;
    margin: 0 5px;
}
#devices_data > div > div:last-child > div:nth-child(2) { /*body*/
    background: white;
    color: #333;
    padding: 20px 0;
}
#devices_data > div > div:last-child > div:nth-child(2) img { width: 100% }
#devices_data > div > div:last-child > div:nth-child(2) > div > div { /*left & right blocks*/
    padding: 0 40px;
}
#devices_data > div > div:last-child > div:nth-child(2) > div > div:last-child > div:first-child { margin-bottom: 20px }
#devices_data > div > div:last-child > div:nth-child(2) table > tbody > tr { vertical-align: top }
#devices_data > div > div:last-child > div:nth-child(2) table > tbody > tr > td:first-child { padding-right: 5px }
#devices_data > div > div:last-child > div:last-child { /*foot aka download buttons*/
    background: #C71232;
    color: white;
    padding: 5px;
    font-size: 30px;
    height: 120px;
    vertical-align: middle;
}
#devices_data > div > div:last-child > div:last-child > a {
    color: white;
    text-decoration: none;
    padding: 15px 10px;
    cursor: pointer;
}
#devices_data > div > div:last-child > div:last-child > a * { cursor: pointer }
#devices_data > div > div:last-child > div:last-child > a > table {
    margin-left: auto;
    margin-right: auto;
}
#devices_data > div > div:last-child > div:last-child > a td:last-child {
    font-size: 50px;
    padding-left: 10px;
}

/*tabs control*/
#devices_data > div > div:last-child > div:nth-child(2) > div,
#devices_data > div.pagecon-app > div:last-child > div:last-child > a
{ display: none; }
#devices_data > div > div:last-child > div:first-child > div.pagecon-active { background: white }
#devices_data > div > div:last-child > div:nth-child(2) > div.pagecon-active,
#devices_data > div > div:last-child > div:last-child > a.pagecon-active
{ display: block }

/*desktop version*/
#devices_data > div.pagecon-software > div:last-child > div:nth-child(2) > div > div:first-child > div { white-space: nowrap }

/*sigma check intro*/
#devices_data > div:last-child {
    text-align: center;
    padding: 5px 40px 60px 40px !important;
    margin-bottom: 0;
    background: white;
}
#devices_data > div:last-child > p {
    text-align: left;
    margin-bottom: 60px;
    font-size: 24px;
}
#devices_data > div:last-child > a { /*link to sigma check*/
    padding: 15px 30px 15px 20px;
    position: relative;
    font-size: 18px;
}
#devices_data > div:last-child > a > div { /*@see https://css-tricks.com/snippets/css/css-triangle/ :: arrow right*/
    position: absolute;
    top: 14px;
    right: 15px;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 8px solid white;
}

.pagecon-software-texts > div > div:first-child > div {
    margin-bottom: 10px;
}
.pagecon-software-texts > div > div:first-child > div > div:first-child {
    float: left;
    width: 16px;
    height: 16px;
    border: solid 1px #C61232;
    margin-right: 10px;
    border-radius: 8px;
}
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:first-child { margin-top: 7px; }
.pagecon-software-texts > div > div:first-child > div:nth-of-type(n+2) > div:first-child { margin-top: 3px; }
.pagecon-software-texts > div > div:first-child > div.pagecon-active > div:first-child { background: #C61232 }
.pagecon-software-texts > div > div:first-child > div > div:last-child {

}
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > a {
    padding: 8px 16px;
    vertical-align: middle;
    text-align: center;
    border: solid 1px #C61232;
    color: inherit;
}
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > a,
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > a:link,
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > a:visited
{ background: white }
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > a > div {
    margin-left: 10px; /*this and next 2 lines caret; inspired by the bootstrap .caret class*/
    display: inline-block;
    vertical-align: middle;
    width: 0; /*from this line till the end: arrow down*/
    height: 0;
    border-top: 10px solid #C61232;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
}
.pagecon-software-texts > div > div:first-child > div:first-of-type > div:last-of-type > div {
    width: 100%;
    margin-top: 4%;
}
.pagecon-software-texts > div > div:first-child > div * { cursor: pointer }
.pagecon-software-texts > div > div:last-child > div:last-child > div > div:not(.pagecon-active) { display: none } /*.pagecon-info*/
.pagecon-software-texts > div > div:last-child > div:last-child > div > div.pagecon-active { display: block }

#social_logo {
    background: #C71232;
    height: 145px;
    padding-top: 50px;
    position: relative; /*set the grid; this grid is used on max-width < 601px*/
}
#social_logo > div:first-child {
    white-space: nowrap;
    padding: 0 10px;
    text-align: left;
}
#social_logo > div:last-child { padding-right: 24.99999% } /*correct the width set for #social_logo > div:first-child*/

#privacy_imprint_contact {
    min-height: 29px;
    padding-top: 4px;
    background: #3D5156;
    color: white;
    white-space: nowrap;
}
#privacy_imprint_contact > div { padding-left: 24.99999%; } /*correct the width set for #privacy_imprint_contact > div:last-child*/
#privacy_imprint_contact > div > a {
    padding: 0 10px;
    border-left: solid 1px;
    border-right: solid 1px;
}
#privacy_imprint_contact > div > a:first-child { border-left: none; }
#privacy_imprint_contact > div > a:last-child { border-right: none; }
#privacy_imprint_contact > span {
    padding: 0 10px;
    text-align: right;
}

#social_logo > div:last-child,
#privacy_imprint_contact > div
{ text-align: center }


/*exceptions*/
#devices_data > div:nth-of-type(2) > div:first-child, /*30.06.2017 exception for now: data center / mobile devices*/
#sigma_cloud, /*sigma cloud is not an app, it's a cloud :)*/
#devices_jump_marks > div > div:nth-child(n+2) > span:last-of-type /*jumo marks second span on empty*/
{ display: none }
#devices_data { padding-bottom: 0 ! important } /*04.07.2017 hide until the sigma check page is ready*/


/*TODO remove the lines below*/
html:not([lang=de]) #sigma_check_intro > p { color: magenta ! important }
#menu_logo_check > a, /*04.07.2017 hide until the sigma check page is ready*/
#sigma_check_intro
{ display: none }


/*adjustment on resize*/
@media all and (max-width: 800px){
    #menu_logo_check > div:last-of-type { width: 40% }
    #menu_logo_check > div:last-of-type > p {
        padding: 20px 0 0 0;
        font-size: 15px;
    }

    #header_img_big > img { /*increase the size of the header image*/
        width: 150%;
        margin-left: -25%;
    }

    #devices_jump_marks {
        padding-left: 10% !important;
        padding-right: 10% !important;
    }
    #devices_jump_marks > div > div > span:last-of-type { top: 28.5px }

    /* #devices_data { margin-top: 40px } make space for the text above*/
    #devices_data > div.pagecon-app > div:last-child > div:nth-child(2) > div > div:first-child { padding: 0 10px }
}
@media all and (max-width: 600px){
    #menu_logo_check { height: 70px } /*position: relative :: implicitly set by the .w3-container class*/
    #menu_logo_check > div:first-child > div:first-child { top: -18px }
    #menu_logo_check > div:first-child > div:first-child > div { /*the menu: open*/
        width: 35px;
        height: 3px;
        margin: 6px 0;
    }
    #menu_logo_check > div:first-child > div:last-child { /*the menu: close*/
        left: 0;
        top: -45px;
        font-size: 60px;
    }
    #menu_logo_check > div:last-of-type { display: none } /*the logo*/

    #devices_jump_marks { height: 150px }
    #devices_jump_marks > div > div {
        padding-top: 10px;
        padding-left: 15px;
        padding-right: 15px;
    }
    #devices_jump_marks > div > div > img {
        margin-top: 10px;
        /*height: 70%*/
    }
    #devices_jump_marks > div > div > span:first-of-type { font-size: 15px }
    #devices_jump_marks > div > div > span:last-of-type { font-size: 12px }
    html[lang=de] #devices_jump_marks > div > div > span:last-of-type { padding-top: 2px }
    html[lang=en] #devices_jump_marks > div > div > span:last-of-type { padding: 2px 8px 1px 8px }
    html[lang=es] #devices_jump_marks > div > div > span:last-of-type { padding: 2px 15px }
    html[lang=fr] #devices_jump_marks > div > div > span:last-of-type { padding: 2px 5px 2px 5px; }
    html[lang=nl] #devices_jump_marks > div > div > span:last-of-type { padding: 1px 15px 3px 15px }

    #devices_data {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    #devices_data > div > div:last-child > div:first-child > div > *:nth-last-child(n+2) { display: none } /* hide all except the text*/
    #devices_data > div > div:last-child > div:nth-child(2) > div > div { padding: 0 10px }
    #devices_data > div > div:last-child > div:nth-child(2) > div > div:last-child { margin-top: 30px }
    #devices_data > div > div:last-child > div:first-child > div, /*tabs*/
    #devices_data > div > div:last-child > div:last-child /*download button*/
    { font-size: 25px }

    #devices_data > div > div:last-child > div:first-child { height: 75px; }
    #devices_data > div > div:last-child > div:first-child > div { padding: 15px 0 }

    #social_logo > div:first-child {
        text-align: center;
        position: absolute; /*the grid is set higher*/
        top: 15px;
    }
    #social_logo > div:last-child {
        padding-right: 0; /*remove the correction set higher*/
        margin-top: 20px;
    }

    #privacy_imprint_contact { height: 55px }
    html[lang=es] #privacy_imprint_contact,
    html[lang=fr] #privacy_imprint_contact
    { font-size: 12px }
    html[lang=nl] #privacy_imprint_contact { font-size: 13px }

    #privacy_imprint_contact > div { padding-left: 0 } /*remove the correction set higher*/
    #privacy_imprint_contact > span {
        text-align: center;
        padding-top: 5px;
    }
}
@media all and (max-width: 380px) {
    #devices_jump_marks {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #devices_jump_marks > div > div > span:first-of-type { font-size: 13px }
}