/* $Id: base.css,v 1.11 2016/04/28 13:07:09 jbeuck Exp $ */

/******************/
/* zone positions */
/******************/

#frame_zone {
    width: 100%;
    margin: 0 auto;
    width: 100%;
}

#header_zone {
    margin-bottom: 1em;
}

#content_zone {
    margin: 0px 63px;
}

#footer_zone {
   margin-top: 1em;  
}

#popup_zone {
    
}

.group_line:before, .group_line:after {
  display: table;
  content: " ";
}

.row:before, .row:after {
  display: table;
  content: " ";
}

.group_line:after {
  clear: both;
}
.row:after {
  clear: both;
}

#jobslisting .einleitung {
    padding-top:10px;
}


/****************/
/* zone modules */
/****************/

#main_sidebar {

}

#main_content {

}

.inner_content {
    min-height: 0;
}

#popup_zone #main_content {
    margin: 0;
}


/**************/
/* blocks     */
/**************/

.none {
    display: none;
}

.block {
    display: block;
}

.inline {
    display: inline;
}

.left {
    float: left;
}

.right {
    float: right;
}

.clear {
    clear: both;
}

.empty_element {
    font-size: 0;
    line-height: 0;
}

.error_msg {
    color: #e30613;
    margin-bottom: 1em;
}

#frame_zone .success_msg,
#frame_zone #formMsgs {
    border: 1px solid #95ad3c;
    padding: .2em;
    margin: 1em 0;   
}

#frame_zone #formMsgs{
    display:none;
}

#frame_zone #formMsgs::before {
    color: #95ad3c;
    content: "\2713";
    display: inline-block;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
    font-style: normal;
    font-weight: normal;
    margin-right: 5px;
}


#header_logo {
    height: 112px;
    width: 100%;
    background-color: #FFF;
    -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.25);
}


#header_logo img {
    height: 112px;
    width: auto;
}


/**************/
/* typo       */
/**************/

#frame_zone, 
#popup_zone {
    font-family: SparkasseLt, Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #484a4f;
    line-height: 1.33333;
}

a, 
a:visited, 
a:hover, 
a:active, 
a:focus {
    text-decoration: none;
    color: #0446be;
}

h1,
h2,
h3,
h4, 
h5, 
h6 {
    margin-bottom: 20px;
    font-weight: 100;
    font-style: normal;
    font-family: SparkasseLt, Arial, Helvetica, sans-serif;
    line-height: 1;
    color: #0446be;
    text-rendering: optimizelegibility;
}

h1 {
    margin: 100px 0px 40px 0px;
    font-size: 64px;
    line-height: 72px;
}

h2 {
    font-size: 18px;
}

h3 {
    font-size: 14px;
}

hr {
    margin: 2em 0;
    border: 0;
    border-top: 1px solid #D3D3D3;
    border-bottom: transparent;
}

p {

}

ul, 
ol, 
dl {
    margin-bottom: 20px;
    padding: 0 0 0 2em;
    list-style-type: disc;
    list-style-position: outside;
}

ol {
    list-style-type: decimal;
}

.error_msg p,
.success_msg p {
    margin: 0;
    color: #C03;
}

/**
 * @deprecated  used in ckeditor
 */
u {
    text-decoration: underline;
}

strike {
    text-decoration: line-through;
}


/*********/
/* forms */
/*********/

/* elements */

.group_field input[type=text], 
.group_field input[type=date], 
.group_field input[type=password], 
.group_field input[type=file], 
.group_field select, 
.group_field textarea {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  outline: 0;
  -webkit-appearance: none;
  border-radius: 0;
  border-color: rgba(203, 207, 211, 0.5);
  border-style: solid;
  border-width: 1px;
  font-weight: normal;
  color: #6a7071;
  text-indent: 0.5rem;
  transition: all 0.25s ease 0s;
  flex: 1 1 auto;
}

.group_field input[type=text]:focus, 
.group_field input[type=date]:focus, 
.group_field input[type=password]:focus, 
.group_field input[type=file]:focus, 
.group_field select:focus, 
.group_field textarea:focus{
  text-indent: 0;
  outline: none;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 0 1px rgba(5, 88, 240, 0.6); 
}


input[type=text], input[type=date], input[type=password] {
  padding: 8px 10px 8px;
  height: 40px;
}

textarea {
    height: 5em;
    white-space: pre;
    resize: none;
    overflow: auto;
} 

fieldset ul {
    width: 100%;
    height: 5em;
    overflow: auto;
    border: 1px solid rgba(203, 207, 211, 0.5);
    list-style: none;
    background-color: #FFF;
    padding: 0;
    margin: 0;
}

fieldset ul li {
    width: 98%;
    overflow: hidden;
    margin: .2em;
    padding: 0;
    background: none;
}

fieldset ul li span {
    display: block;
    margin-left: 1.2em;
}

fieldset ul li input {
    width: 1em;
    float: left;
    margin-top: .2em;
}

fieldset ul li:hover {
    background: #F5F5F5;
}

fieldset ul label span {
    color: #000;
    line-height: 1.5;
}

/* structure */
.group {
    margin-bottom: 1em;
}

fieldset, 
.fieldset {
    
}

legend,
.legend {
    display: block;
    padding: .3em 0;
    /*text-indent: .3em;*/
    width: 100%;
}

.group_line:before, .group_line:after {
    display: table;
    content: " ";
}

.group_line:after {
    clear: both;
}

.group_box,
.group .actions,
.group .other_actions {
    padding: 0;
    margin: 15px 0 0 0;
}

.group_box_inner {
    
}

.group_comment {
    margin: .3em 0;
}

.group_comment p {
    margin: 0 0 .6em 0;
}

.group_line {
    clear: left;
}

.group_field {
    padding: 0;
    margin: 0;
}

.group_field label,
.group_field .label {
    padding-bottom: 4px;
    display: block;
}

/* decoration */
label img.error_img {
    display: none;
}


.duty {
    
}

.asterisk {
   color: #0446BE; 
}

.field_error input, 
.field_error select, 
.field_error textarea, 
input.field_error, 
select.field_error, 
textarea.field_error, 
.field_error .ui-state-default,
.field_error .ui-multiselect .ui-icon, 
.field_error .ui-state-default .ui-icon:before {
    background-color: #FCC !important;
    color: #e30613 !important;
}

.ui-menu {
    font-family: SparkasseLt, Arial, Helvetica, sans-serif !important;
}


/*************/
/* buttons   */
/*************/

.actions {
    margin: 1em 0 0 0;
    text-align: left;
    min-height: 0;
}

#header_links {
    margin-top: 0;
}

.css_button {
    padding: 0;
    border: 0;
    display: inline-block;
    margin: 2px;
}

.css_button a {
    display: inline-block;
    padding: 8px 16px;
    margin: 0;
    background-color: #0558f0;
    color: #FFF;
    border-radius: 2px;
    text-decoration: none;
    font-family: inherit;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
    transition-duration: .08s;
    transition-timing-function: ease-out;
    transition-property: box-shadow, background-color;
}

.css_button a:hover {
    box-shadow: inset 0 0 0 4rem rgba(0, 0, 0, 0.25);
}

.css_button a:focus {
  outline: none;
  border: 0px solid transparent;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25); }

.css_button a:active {
    box-shadow: inset 0 0 0 3rem rgba(0, 0, 0, 0.25), inset 0 2px 3px 0 rgba(0, 0, 0, 0.5), 0 0 1px rgba(0, 0, 0, 0.25);
}

/********************/
/* path navigation  */
/********************/

ul.path_nav {
    list-style-type: none;
    padding: 0;
}

ul.path_nav li {
    float: left;
    margin-right: 1em;
}


/***********/
/* tables  */
/***********/

.real_table {
    width: 100%;
    margin-bottom: 1em;
}


.real_table .td_jobtitel {
    font-weight: normal;
    font-style: normal;
    font-family: SparkasseLt, Arial, Helvetica, sans-serif;
    line-height: 1;
    font-size: 32px;
    color: #0446be;
    display: block;
}

.real_table .td_jobtitel a{
    color:#0446be;
}

.real_table .td_teaser {
    font-weight: normal;
    font-style: normal;
    font-family: SparkasseLt, Arial, Helvetica, sans-serif;
    line-height: 1;
    font-size: 32px;
    color: #808485;
    line-height: 40px;
}

.real_table .td_datum_titel, .real_table .td_datum_wert, .real_table .td_arbeitgeber_titel, .real_table .td_arbeitgeber_wert {
    font-weight: normal;
    font-style: normal;
    font-family: SparkasseRg-Regular, Arial, Helvetica, sans-serif;
    line-height: 1;
    font-size: 16px;
    color: #484a4f;
    line-height: 24px;
}

.real_table .td_datum_titel, .real_table .td_arbeitgeber_titel {
    font-weight: bold;
}

.real_table th,
.real_table td {

}

.real_table .td_titel {
    width: 150px;
    float: left;
}

.real_table .td_wert {
    vertical-align: bottom;
}

.real_table .td_standort {
    float: right;
    font-weight: normal;
    font-style: normal;
    font-family: SparkasseRg-Regular, Arial, Helvetica, sans-serif;
    line-height: 1;
    font-size: 16px;
    color: #484a4f;
    line-height: 24px;
    height: 24px;
    margin-top: 20px;
    margin-right: 8px;
}

.real_table .td_tab1 {
    
}

.real_table .td_tab2 {}

.real_table .td_tab3 {
    
}

.real_table .td_tab0 {
    height: 40px;
}

.real_table .td_border {
    border-bottom: 1px solid #cbcfd3;
}

.real_table th {
    text-align: left;
}

.real_table th a {
    color: #1B55A7;
}

.real_table tfoot td {
    border: 0;
}

.real_table .alternative_0 td {
    background-color: #FFF;
}

.real_table .alternative_1 td {
    background-color: #FFF;
}

.real_table caption {
    caption-side: bottom;
    text-align: left;
    padding: 1.2em 0;
    font-weight: bold;
}

th.real_table_col1 {
  min-width: 200px;
}

.icon_order_dir {
    margin-left: 5px;
}

.icon_order_sort_down,
.icon_order_sort_up {
    color: #000;
}

.icon_order_sort_none {
    color: #AAA;
}


/**************/
/* joboffers  */
/**************/

/* jobalert */
#job_alert_box {
    margin-top: 0;
}

#jobTplContainer{
    overflow: hidden;
}

/* filter */
#job_filter_basic .group_field {
    float: none;
}

.autocomplete_span {
    display: inline;
}

#filter_area .other_actions {
    text-align: right;
}

#job_filter_advanced .group {
    overflow: auto;
}

#job_filter_advanced legend,
#job_filter_advanced span.mini {
    font-size: 1em;
}

#job_filter_advanced fieldset ul {
    height: 4em;
}

#job_filter_advanced fieldset ul li span,
#job_filter_advanced select {
    font-size: 1em;
    line-height: 1.7; 
}

#job_filter_advanced fieldset ul li span {
    margin-left: 1.5em;
}

#filter_area select {
    width: 10em;
}

#filter_area fieldset ul {
    width: 99.5%;
}

#filter_area .group_field_cb {
    width: 32%;
    padding-left: 2%;
}

#filter_area .group_field_cb:first-child {
    padding-left: 0;
}

/* joblist navigation */
#joblist_navigator {
    text-align: center;
    padding: 10px 0 0;
}

#joblist_navigator ul.path_nav {
    display: inline-block;
}

.stellen_navi {}

.stellen_navi_sel a {
    color: #000;
    text-decoration: underline;
}

/* joblist */
#rexx_footer {
    line-height: 1em;
    text-align:right;
    font-size:.8em; 
    padding-top:1em;
}

/* jobalert */
#jobalert_box {
    margin-bottom: 1em;
}

#jobalert_box #btn_online_application_job_alert {
    margin: 0;
}

#job_alert_filter_adv {
    padding-bottom: 20px;
}

.job_alert_filter {
    padding-bottom: 10px;
}


/********************/
/* login & menu     */
/********************/

#login_box {
    font-size: 1em;
}

#login_box .actions {
    margin: 0;
}

#login_menu {
    float: right;
}

#login_box .other_actions {
    float: left;
    line-height: 1.6;
}

#login_box input[type="text"], 
#login_box input[type="password"] {
    
}

#nav_main ul {
    list-style-type: none;
    padding: 0;
    margin-top:0;
}


/**********************/
/* display attachment */
/**********************/

#display_attachment img {
    display: block;
    margin: auto;
    max-width: 20em;
    height: auto;
}


/*****************/
/* lang selector */
/*****************/

#language_selector ul.path_nav {
    margin: 0;
}

#language_selector .selected_lang {
    
}

/******************/
/* widget addthis */
/******************/

.addthis_toolbox {
    float: right;
}

.addthis_toolbox a {
    text-decoration: none;
}


/************/
/* my_data  */
/************/

#application_overview .actions {
    margin-top: 1em;
    padding: 0;
}


/************/
/* event    */
/************/

.appointment {
    margin-top: 1em;
}


/******************/
/* recommendation */
/******************/

#recommend #rec_text {
    padding-top: .4em;
}

#recommend #rec_input {
    padding-top: .9em;
}

#recommend #rec_input input[type="text"] {
    width: 14%;
}


/****************/
/* modal window */
/****************/

body.popup_body,
body.popup_body #popup_zone {
/*    height: 100%*/
}

body.popup_body #popup_zone {
    overflow-y: auto;
}


/******************/
/* iframe resizer */
/******************/

#resizer { 
    position: absolute; 
    top: 0px; 
    left: 0px; 
    visibility: hidden;
}


/***************/
/* no js alert */
/***************/

#no_js_alert_layer {
    text-align:center;
    margin:.2em;
}

#no_js_alert_layer p {
    font-size:.8em;
    margin:0;
    padding:0;
}


/**************/
/* captcha    */
/**************/

.captchapict {
    border:1px solid #BABABA;
}


/*************/
/* clearance */
/*************/

.breaker {
    clear:both;
    height:.1px;
    font-size:0;
    line-height:0;
}


p.einleitung {
    margin-bottom: 100px;
}



/***********************************/
/* ------------ Responsive---------*/
/***********************************/


@media (max-width: 768px) {
    p.einleitung {
        margin-bottom: 80px;
    }
}

@media (max-width: 480px) {

    #header_logo img {
        width: 100%;
        height: auto;
    }

    #header_logo {
        display: table-cell;
        vertical-align: middle;
    }

    #filter_area .group_field_cb {
        width: 100%;
        padding-right: 0%;
        padding-left: 0%;
    }

    .css_button,
    .css_button a {
        display: block;
    }
    
    .css_button {
        margin-bottom: 10px;
    }
    
    .real_table_col3, .real_table_col4 {
        display: none;
    }
    
     #application_box .group_field {
        width: 98% !important;
    }
    
    h1 {
        margin: 60px 0px 30px 0px;
        font-size: 24px;
        line-height: 32px;
    }
    
    p.einleitung {
        margin-bottom: 60px;
        font-size: 16px;
        line-height: 24px;
    }
    
    #content_zone {
        margin: 0px 12px;
    }

}

@media (max-width: 320px) {
    
    .real_table_col2 {
        display: none;
    }
    
    #content_zone {
        margin: 0px 15px;
    }
    
    #header_logo {
        height: 86px;
    }
    
    
    .real_table .td_jobtitel, .real_table .td_teaser {
        font-size: 24px;
        line-height: 32px;
    }
    
    .real_table .td_tab0 {
        height: 30px;
    }
    
    .real_table .td_titel {
        width: 100%;
        clear: both;
    }
    
    .td_tab02 > .td_wert {
        margin-bottom: 20px;
    }
    
    .real_table .td_responsive {
        height: 60px;
    }
    
    p.einleitung {
        line-height: 24px;
        font-size: 16px;
    }
    
    .real_table .td_standort {
        margin-bottom: 30px;
    }
    
    .real_table .td_wert {
        margin-bottom: 20px;
    }
}
