/* Introduction
   ========================================================================== */
#introduction {
    width: 100%;
    height: 475px;

    padding: 75px;

    background: url("/images/introduction.jpg") no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    -webkit-background-clip: border-box;
    -moz-background-clip: border-box;
    -o-background-clip: border-box;
    background-clip: border-box;
}

#introduction img {
    width: 45%;
    height: auto;

    margin-bottom: 10px;
}

#introduction button {
    margin-top: 0px;
}

#introduction p {
    width: 768px;
    height: auto;

    margin-bottom: 12px;

    font-size: 1.25em; /* 20px */
}

/* Step 1 - Parent Combo
   ========================================================================== */
.parentcombo_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

    width: 100%;
}

.parentcombo_box {
    display: flex;
    flex-direction: column;
    justify-content: center; /* H */
    align-items: center; /* V */
    flex-wrap: wrap;

    width: calc(33.33% - 15px);
    height: 175px;

    margin-bottom: 25px;

    background-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */

	-webkit-transition: color 0.25s ease;
	-moz-transition: color 0.25s ease;
	-o-transition: color 0.25s ease;
	transition: color 0.25s ease;

	-webkit-transition: background-color 0.25s ease;
	-moz-transition: background-color 0.25s ease;
	-o-transition: background-color 0.25s ease;
	transition: background-color 0.25s ease;

}

.parentcombo_box_active {
    color: rgba(255, 255, 255, 1); /* White */
    background-color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

.parentcombo_box_image {
    display: flex;
    justify-content: center; /* H */
    align-items: center; /* V */

    width: 100%;
    height: auto;
}

.parentcombo_box_text {
    width: 100%;
    height: auto;

    margin-top: 10px;

    text-align: center;
}

.parentcombo_box img {
    width: 95px;
    height: auto;
}

.parentcombo_box:hover {
    cursor: pointer;
}

/* Step 1 - Maternity Date
   ========================================================================== */
#maternity_date_picker {
    width: 768px;
    height: auto;

    margin-top: 25px;
    margin-bottom: 25px;

    display: none;
}

#maternity_date_picker article {
    width: 100%;
    height: auto;

    min-height: 200px;

    padding: 75px 0px 0px 75px;

    background-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */
}

#maternity_date_decoration {
    float: right;

    width: 115px;
    height: auto;

    margin-right: 10%;
}

#maternity_date {
    width: 200px;
}

#maternity_date_icon {
    position: relative;
    top: -4px;

    width: 42px;
    height: auto;

    margin-right: 50px;
}

#flow_family {
    position: absolute;
    top: 50px;
    right: 75px;

    width: 90px;
    height: auto;
}

/* Step 1 - Error text
   ========================================================================== */
#error_daddad, #error_dad, #error_adoption {
    width: 768px;
    height: auto;

    margin-top: 25px;
    margin-bottom: 25px;

    display: none;
}

#error_daddad article, #error_dad article, #error_adoption article {
    width: 100%;
    height: auto;

    padding: 50px;

    background-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */   
}

/* Step 2 - Agreement selection
   ========================================================================== */
.agreement_selection_image, .agreement_selection_headline, .agreement_selection_spacer, .agreement_selection_text, .agreement_selection_input {
    position: relative;
    float: left;

    width: auto;
    height: 50px;

    margin-bottom: 25px;
}

.agreement_selection_image, .agreement_selection_spacer {
    width: 75px;
}

.agreement_selection_image img {
    position: relative;
    top: 15px;

    width: 55px;
}


.agreement_selection_headline {
    display: flex;
    align-items: center; /* Vertical */
    
    width: calc(100% - 75px);
}

.agreement_selection_headline b {
    font-size: 1.2em;
    font-weight: 600;
}

.agreement_selection_text {
    display: flex;
    align-items: center; /* Vertical */

    width: 150px;
}

.agreement_selection_input {
    width: calc(100% - 225px);
}

#warning_box_unemployed_mom, #warning_box_selfemployed_mom, #warning_box_student_mom, #warning_box_unemployed_dad, #warning_box_selfemployed_dad, #warning_box_student_dad {
    padding-top: 25px;
    padding-left: 75px;
    padding-right: 25px;

    display: none;
}

#warning_box_unemployed_mom h3, #warning_box_selfemployed_mom h3, #warning_box_student_mom h3, #warning_box_unemployed_dad h3, #warning_box_selfemployed_dad h3, #warning_box_student_dad h3 {
    margin-bottom: 5px;
}

/* Step 3 - User input + shared leave
   ========================================================================== */
.agreement_user_image {
    position: relative;
    float: left;
}

.agreement_user_image {
    width: 75px;
    height: 85px;

    margin-bottom: 0px;
}

.agreement_user_image img {
    width: 55px;
    height: auto;
}

.agreement_user_headline {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;

    width: calc(100% - 75px);
    height: 85px;

    padding-top: 3px;
    margin-bottom: 0px;
}

.agreement_user_type, .agreement_user_text, .agreement_user_info, .agreement_user_amount, .agreement_user_chosen,
.agreement_user_double, .agreement_user_triple {
    position: relative;
    float: left;

    display: flex;
    align-items: center; /* Vertical */

    width: 25%;
    height: 50px;
    padding: 5px;

    line-height: 1.0;
}

.agreement_user_double {
    width: 50%;
}

.agreement_user_triple {
    width: 75%;
}

#section_headers_mom .agreement_user_type, #section_headers_mom .agreement_user_text, #section_headers_mom .agreement_user_info, #section_headers_mom .agreement_user_chosen,
#section_headers_dad .agreement_user_type, #section_headers_dad .agreement_user_text, #section_headers_dad .agreement_user_info, #section_headers_dad .agreement_user_chosen {
    height: 5px;
}

.agreement_user_chosen input, .agreement_user_double input {
    height: 40px;
    width: 40px;

    padding: 5px;
    margin-right: 5px;

    text-align: center;
}

.section_user_weeks_mom, .section_user_weeks_dad {
    position: relative;
    float: left;

    width: 100%;
    height: auto;

    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: rgba(218, 218, 218, 1.0); /* Black 20% */
}

/* Step 4 - Infograhics
   ========================================================================== */
.infographic_absence, .infographic_maternity {
    margin-bottom: 25px;
}

.infographic_overview_image {
    position: relative;
    float: left;

    display: flex;
    flex-direction: column;
    justify-content: center; /* H */
    align-items: flex-start; /* V */
}

.infographic_overview_image {
    width: 100px;
    height: 85px;

    margin-bottom: 0px;
}

.infographic_overview_image img {
    width: 55px;
    height: auto;
}

.infographic_overview_text, .infographic_overview_leave {
    position: relative;
    float: left;

    width: calc(50% - 50px);
    height: 85px;

    padding-top: 3px;
    margin-bottom: 0px;
}

.infographic_overview_text {
    display: flex;
    flex-direction: column;
    justify-content: center; /* H */
    align-items: flex-start; /* V */
}

.infographic_overview_leave {
    display: flex;
    flex-direction: column;
    justify-content: center; /* H */
    align-items: center; /* V */

    color: rgba(255, 255, 255, 1.0); /* White */
    background-color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

#span_infographic {
    width: 100%;
    height: auto;

    margin-top: 25px;
}

#span_infographic .span_icon {
    float: left;

    width: 40px;
    height: 100%;
}

#span_infographic .span_text {
    float: left;

    width: calc(100% - 40px);
    height: 100%;
}

/* Step 5 - Agreement overview - sections
   ========================================================================== */
#section_headers_mom, #section_pregnancy, #section_earmarked_part1_mom, #section_flexible_part1_mom, #section_earmarked_part2_mom, #section_flexible_part2_mom, #section_public_leave_mom, #section_receive_mom {
    position: relative;
    float: left;

    width: 100%;
    height: auto;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

#section_headers_dad, #section_earmarked_part1_dad, #section_earmarked_part2_dad, #section_flexible_part1_dad, #section_transfer_part1_dad, #section_receive_part1_dad, #section_receive_part2_dad {
    position: relative;
    float: left;

    width: 100%;
    height: auto;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

/* Step 5 - Agreement overview - rows
   ========================================================================== */
#section_headers_mom .agreement_overview_text, #section_headers_dad .agreement_overview_text {
    font-weight: 500;
}

.agreement_overview_image, .agreement_overview_name {
    position: relative;
    float: left;
}

.agreement_overview_image {
    width: 75px;
    height: 85px;

    margin-bottom: 0px;
}

.agreement_overview_image img {
    width: 55px;
    height: auto;
}

.agreement_overview_headline {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;

    width: calc(100% - 75px);
    height: 85px;

    padding-top: 3px;
    margin-bottom: 0px;
}

.agreement_overview_name {
    width: calc(100% - 70px);
    height: 50px;
}

.agreement_overview_type, .agreement_overview_text, .agreement_overview_info, .agreement_overview_using, .agreement_overview_amount, .agreement_overview_chosen, .agreement_overview_transfer {
    position: relative;
    float: left;

    display: flex;
    align-items: center; /* Vertical */

    width: 25%;
    height: 50px;
    padding: 5px;

    line-height: 1.0;
}

.agreement_overview_type {
    width: 28%;
}

.agreement_overview_info, .agreement_overview_amount {
    width: 22%;
}

.agreement_overview_type img {
    width: 15px;
    height: auto;

    margin-right: 10px;
}

.agreement_overview_info, .agreement_overview_using {
    font-weight: 500;
}

.agreement_overview_chosen input {
    height: 40px;
    width: 40px;

    padding: 5px;
    margin-right: 5px;

    text-align: center;
}

.agreement_overview_transfer {
    width: 50%;
}

.agreement_overview_transfer i, .agreement_overview_transfer svg {
    margin-right: 10px;
    color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

/* Step 5 - Agreement overview - transfer 
   ========================================================================== */
.agreement_overview_edit {
    z-index: 25;

    position: absolute;
    top: 7px;
    right: 5px;

    display: flex;
    align-items: center; /* Vertical */
    justify-content: center; /* Horizontal */

    width: 35px;
    height: 35px;

    color: rgba(143, 76, 106, 1.0); /* KS Purple */

	-webkit-transition: color 0.25s ease;
	-moz-transition: color 0.25s ease;
	-o-transition: color 0.25s ease;
	transition: color 0.25s ease;
}

.agreement_overview_edit:hover {
    cursor: pointer;
    color: rgba(112, 59, 82, 1.0); /* KS Purple hover */
}

.agreement_overview_edit_disabled {
    color: rgba(218, 218, 218, 1.0); /* Black 20% */
}

.agreement_overview_edit_disabled:hover {
    cursor: inherit;
    color: rgba(218, 218, 218, 1.0); /* Black 20% */
}

.agreement_transfer_text, .agreement_transfer_chosen {
    position: relative;
    float: left;

    display: flex;
    align-items: center; /* Vertical */

    padding: 5px;

    line-height: 1.0;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

.agreement_transfer_text {
    width: 75%;
    height: 50px;
}

.agreement_transfer_text i, .agreement_transfer_text svg {
    margin-right: 10px;
    color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

.agreement_transfer_chosen {
    width: 25%;
    height: 50px;
}

.agreement_transfer_chosen input {
    height: 40px;
    width: 40px;

    padding: 5px;
    margin-right: 5px;

    text-align: center;
}

/* Step 5 - Agreement overview - transfer/receive toggles
   ========================================================================== */
#section_transfer_leave_mom, #section_transfer_flexible_leave_part1_mom, #section_transfer_flexible_leave_part2_mom,
#section_transfer_leave_dad, #section_transfer_flexible_leave_part1_dad,
#section_receive_mom, #section_receive_part1_dad, #section_receive_part2_dad {
    width: 100%;
    height: auto;

    display: none;
}

/* Step 5 - Agreement overview - row toggles
   ========================================================================== */
#section_pregnancy_full_leave, #section_pregnancy_part_leave, #section_pregnancy_mat_leave, 
#section_earmarked_full_leave_part1_mom, #section_earmarked_part_leave_part1_mom, #section_earmarked_mat_leave_part1_mom, 
#section_flexible_full_leave_part1_mom, #section_flexible_part_leave_part1_mom, #section_flexible_mat_leave_part1_mom, 
#section_earmarked_full_leave_part2_mom, #section_earmarked_part_leave_part2_mom, #section_earmarked_mat_leave_part2_mom,
#section_flexible_full_leave_part2_mom, #section_flexible_part_leave_part2_mom, #section_flexible_mat_leave_part2_mom,
#section_receive_full_leave_mom, #section_receive_part_leave_mom, #section_receive_mat_leave_mom, #section_public_leave_mom {
    width: 100%;
    height: auto;

    display: none;
}

#section_earmarked_full_leave_part1_dad, #section_earmarked_part_leave_part1_dad, #section_earmarked_mat_leave_part1_dad, 
#section_flexible_full_leave_part1_dad, #section_flexible_part_leave_part1_dad, #section_flexible_mat_leave_part1_dad,
#section_earmarked_full_leave_part2_dad, #section_earmarked_part_leave_part2_dad, #section_earmarked_mat_leave_part2_dad,
#section_flexible_full_leave_part2_dad, #section_flexible_part_leave_part2_dad, #section_flexible_mat_leave_part2_dad,
#section_receive_full_leave_part1_dad, #section_receive_part_leave_part1_dad, #section_receive_mat_leave_part1_dad,
#section_receive_full_leave_part2_dad, #section_receive_part_leave_part2_dad, #section_receive_mat_leave_part2_dad {
    width: 100%;
    height: auto;

    display: none;
}

/* Step 5 - Information spans/divs
   ========================================================================== */
.span_transfer {
    width: 100%;
    height: auto;

    font-size: 0.9em;
    text-align: right;
}

.span_agreement_comment {
    1width: 100%;
    1height: auto;

    1margin-top: 25px;
}

.span_comment {
    width: 100%;
    height: auto;

    margin-top: 25px;
}

.span_icon {
    color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

.span_comment .span_icon {
    float: left;

    width: 40px;
    height: 100%;
}

.span_comment .span_text {
    float: left;

    width: calc(100% - 40px);
    height: 100%;
}

#span_underspend_mom, #span_public_mom, #span_postpone_mom, 
#span_underspend_dad, #span_postpone_dad, #span_information_dad {
    width: 100%;
    height: auto;

    margin-top: 25px;
}

#span_underspend_mom, #span_public_mom, #span_underspend_dad {
    display: none;
}

#span_underspend_mom .span_icon, #span_public_mom .span_icon, #span_postpone_mom .span_icon,
#span_underspend_dad .span_icon, #span_postpone_dad .span_icon, #span_information_dad .span_icon {
    float: left;

    width: 40px;
    height: 100%;
}

#span_underspend_mom .span_text, #span_public_mom .span_text, #span_postpone_mom .span_text,
#span_underspend_dad .span_text, #span_postpone_dad .span_text, #span_information_dad .span_text {
    float: left;

    width: calc(100% - 40px);
    height: 100%;
}

#span_postpone_mom, #span_postpone_dad {
    /*display: none !important;*/
}

#span_hr_line {
    width: 100%;
    height: 1px;

    margin-top: 25px;
    margin-bottom: 50px;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

/* Step 6 - Absence
   ========================================================================== */
.absence_image, .absence_text, .absence_spacer, .absence_chosen {
    position: relative;
    float: left;

    display: flex;
    align-items: center;

    width: 33%;
    height: 50px;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

.absence_image {
    width: 50px;
    height: 50px;
}

.absence_image img {
    width: 35px;
    height: auto;
}

.absence_text {
    width: calc(100% - 310px);
}

.absence_spacer {
    width: 110px;
}

.absence_chosen {
    width: 150px;
}

.absence_chosen input {
    height: 40px;
    width: 40px;

    padding: 5px;
    margin-right: 5px;

    text-align: center;
}

#span_absence {
    width: 100%;
    height: auto;
}

#span_absence .span_icon {
    float: left;

    width: 40px;
    height: 100%;
}

#span_absence .span_text {
    float: left;

    width: calc(100% - 40px);
    height: 100%;
}

/* Step 7 - Extension and vacation
   ========================================================================== */
#section_extension_mom, #section_extension_dad, #section_extension_share {
    width: 100%;
    height: auto;

    display: none;
}

#section_extension_mom, #section_extension_dad {
    margin-top: 25px;
}

#section_extension_share {
    margin-top: 25px;
}

.extension_select_image, .extension_select_input, .extension_select_spacer {
    position: relative;
    float: left;

    display: flex;
    align-items: center;
}

.extension_select_image {
    width: 50px;
    height: 50px;
}

.extension_select_image img {
    width: 20px;
    height: auto;
}

.extension_select_input {
    width: 350px;
    height: 50px;
}

.extension_select_spacer {
    width: calc(100% - 400px);
    height: 50px;
}

.extension_header {
    position: relative;
    float: left;

    width: 100%;
    height: 1px;

    /*
    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

.extension_image, .extension_spacer, .extension_chosen, .extension_simple {
    position: relative;
    float: left;

    display: flex;
    align-items: center;

    width: 33%;
    height: 50px;

    /*
    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

.extension_image {
    width: 50px;
    height: 50px;
}

.extension_image img {
    width: 20px;
    height: auto;
}

.extension_spacer {
    width: calc(100% - 217px);
}

.extension_chosen {
    width: 167px;
}

.extension_simple {
    width: calc(100% - 50px);
}

.extension_chosen input, .extension_simple input {
    height: 40px;
    width: 40px;

    padding: 5px;
    margin-right: 10px;

    text-align: center;
}

.extension_select {
    width: 350px;
}

#flow_umbrella {
    position: absolute;
    bottom: 50px;
    right: 50px;
    width: 125px;
    height: auto;
}

/* Maternity flow - Overview
   ========================================================================== */
#overview_section {
    margin-bottom: 50px;
    padding-bottom: 0px;
}

#overview_section article {
    padding: 25px;
}

.overview_box_third {
    float: left;
    
    width: 33%;
    height: 100%;
    min-height: 50px;

    font-size: 0.875em; /* 14px */
}

.overview_box_third img {
    float: left;

    width: auto;
    height: 50px;
}

.overview_box_third .image {
    float: left;

    width: 50px;
    height: 100%;
}

.overview_box_third .text {
    float: right;

    width: calc(100% - 65px);
    height: auto;
}

#overview_mom {
    width: calc(33% - 10px);
}

#overview_dad {
    width: calc(33% + 20px);
}

#overview_child {
    width: calc(33% - 10px);
}

#overview_dad, #overview_child {
    padding-left: 25px;

    border-left-style: solid;
    border-left-width: 2px;
    border-left-color: rgba(255, 255, 255, 1.0); /* White */
}

/* Maternity flow - Colorbox
   ========================================================================== */
#color_section {
    padding: 0px 25px 25px !important;
}

.color_box_container {
    display: flex;
    justify-content: space-between;

    padding: 25px 0px 0px;

    border-top-style: solid;
    border-top-width: 2px;
    border-top-color: rgba(255, 255, 255, 1.0); /* White */
}

.color_box {
    width: auto;
    height: auto;
}

.maternity_box_explained {
    float: left;

    width: 30px;
    min-height: 30px;
}

.maternity_box_text {
    float: left;

    width: calc(100% - 30px);
    min-height: 30px;

    padding: 4px 0px 0px 15px;
}

/* Maternity flow - Colors
   ========================================================================== */
.maternity_box_color_0 {
    background-color: rgba(255, 255, 255, 1.0) !important; /* White */
}

.maternity_box_color_1 {
    background-color: rgba(242, 140, 0, 1.0) !important; /* KS Orange */
}

.maternity_box_color_2 {
    background-color: rgba(0, 173, 186, 1.0) !important; /* KS Teal */
}

.maternity_box_color_3 {
    background-color: rgba(58, 96, 151, 1.0) !important; /* KS Blue */
}

.maternity_box_color_4 {
    background-color: rgba(143, 76, 106, 1.0) !important; /* KS Purple */
}

.maternity_box_color_error {
    background-color: rgba(255, 255, 255, 1.0) !important; /* White */

    background-image: url('/images/placement_error.png');
    background-position: center center;
    background-repeat: no-repeat;
}

/* Maternity flow - Controls
   ========================================================================== */
#controls_section {
    padding: 25px 0px 0px 0px;
}

#controls_container {
    width: calc(100% - 100px);

    margin: 0 auto;
    padding-bottom: 25px;

    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-bottom-color: rgba(255, 255, 255, 1.0); /* White */
}

#controls_section .maternity_flow_mom_text, #controls_section .maternity_flow_dad_text {
    padding-top: 3px;
}

#controls_section .maternity_box, #controls_section .maternity_box  {
    text-align: center;
    background-color: rgba(99, 99, 99, 0.33); /* KS Grey Dark - Opacity */
}

#controls_section .maternity_box img, #controls_section .maternity_box img {
    width: 60%;
    height: auto;

    margin-top: 3px;
}

#controls_section .maternity_flow_mom:hover, #controls_section .maternity_flow_dad:hover {
    cursor: pointer;
}

.button_box_active {
    background-color: rgba(143, 76, 106, 1.0) !important; /* KS Purple */
}

/* Maternity flow - Warnings
   ========================================================================== */
#warnings_section {
    width: 768px;
    height: auto;

    padding: 50px 0px;

    display: none;
}

#warnings_section .maternity_flow_mom_boxes img, #warnings_section .maternity_flow_dad_boxes img {
    /*position: relative;
    left: -5px;*/

    width: 65%;
    height: auto;
}

#warnings_section article {
    padding: 0px 25px;
    background-color: transparent;
}

#warnings_section .article_headline {
    margin-top: 5px;
}

.warning_box {
    width: 30px;
    height: 200px;

    background-color: rgba(242, 140, 0, 1.0); /* KS Orange */

    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */
}

.warning_flow_mom_text {
    float: left;
    width: calc(100% - 55px);

    font-size: 0.875em; /* 14px */
}

.warning_flow_dad_text {
    float: right;
    width: calc(100% - 55px);

    font-size: 0.875em; /* 14px */
}

.warning_flow_mom_text div {
    float: left;
    width: 100%;
    height: auto;

    padding: 15px;
    margin-bottom: 25px;

    background-color: rgba(255, 255, 255, 1.0); /* White */
}

.warning_flow_dad_text div {
    float: right;
    width: 100%;
    height: auto;

    padding: 15px;
    margin-bottom: 25px;

    background-color: rgba(255, 255, 255, 1.0); /* White */
}

#warning_before_first_leave_mom {
    margin-top: 15px;
}

.warning_box_before_first_leave {
    height: 135px;

    margin-top: 15px;

    background-color: rgba(255, 255, 255, 1.0); /* White */
}

.warning_box_before_termin {
    height: 240px;
}

.warning_box_after_termin {
    height: 423px;
}

.warning_box_postpone {
    height: 30px;
}

#postpone_box_shared {
    width: 60%;
    height: auto;

    padding: 15px;
    margin: 0 auto;
    margin-top: 25px;

    font-size: 0.875em; /* 14px */

    background-color: rgba(255, 255, 255, 1.0); /* White */
}

/* On maternity flow */
.maternity_box_postpone {
    height: 115px !important;
    background-color: rgba(255, 255, 255, 1.0); /* White */
}

.maternity_box_postpone_div {
    width: calc(100% - 25px);
    height: auto;

    padding: 15px;
    margin-bottom: 25px;

    background-color: rgba(255, 255, 255, 1.0) !important; /* White */
}

/* Maternity flow - section/articles
   ========================================================================== */
#maternity_section {
    padding: 50px 0px;
}

#maternity_section article {
    padding: 0px;
    background-color: transparent;
}

/* Maternity flow - Common
   ========================================================================== */
.maternity_box {
    width: 30px;
    height: 30px;

    background-color: rgba(255, 255, 255, 1); /* White */

    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */
}

.box_navigation_up {
    background-image: url('/images/placement_arrow_up.png');
    background-position: center center;
    background-repeat: no-repeat;
}

.box_navigation_down {
    background-image: url('/images/placement_arrow_down.png');
    background-position: center center;
    background-repeat: no-repeat;
}

.box_navigation_up_disabled {
    background-image: url('/images/placement_arrow_up_disabled.png');
    background-position: center center;
    background-repeat: no-repeat;
}

.box_navigation_down_disabled {
    background-image: url('/images/placement_arrow_down_disabled.png');
    background-position: center center;
    background-repeat: no-repeat;
}

.box_navigation_up, .box_navigation_down {
    cursor: pointer;
}

.article_headline {
    width: 100%;
    height: 45px;

    margin: 0 auto;

    margin-top: 25px;
    margin-bottom: 25px;

    text-align: center;
    line-height: 1.25rem;
}

.article_headline time {
    font-weight: 700;
}

.article_image {
    width: 100%;
    height: 90px;

    margin: 0 auto;

    margin-top: 25px;

    text-align: center;
}

.article_image img {
    width: auto;
    height: 100%;
}

.maternity_box_image {
    width: 40px;
    height: 40px;
}

#maternity_section .maternity_flow_mom_boxes img, #maternity_section .maternity_flow_dad_boxes img {
    position: relative;
    /*left: -5px;*/

    width: 65%;
    height: auto;
}

.maternity_error_info {
    width: 100%;
    height: 30px;

    /*font-size: 0.75em;*/
    line-height: 1.8;
}

.maternity_error_info p {
    display: inline;

    font-weight: 700;
    color: rgba(143, 76, 106, 1.0); /* KS Purple */
}

/* Maternity flow - mom
   ========================================================================== */
.maternity_flow_mom {
    float: left;
    width: calc(50% - 12.5px);
}

.maternity_flow_mom_text {
    position: relative; /* for info boxes */

    float: left;
    width: calc(100% - 45px);
    height: auto;

    line-height: 1.3;
    text-align: right;
}

.maternity_flow_mom_text div {
    position: absolute;

    top: 0; /* Overwritten by JS placement */
    right: 0;

    background-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */
}

.maternity_flow_mom_text span {
    float: left;
    width: 45px;
    height: 40px;

    text-align: center;
}

.maternity_flow_mom_text span img {
    width: 25px;
    height: auto;
}

.maternity_flow_mom_text span div {
    margin: 0 auto;
}

.maternity_flow_mom_boxes {
    float: right;
    width: 30px;
}

/* Maternity flow - dad
   ========================================================================== */
.maternity_flow_dad {
    float: right;
    width: calc(50% - 12.5px);
}

.maternity_flow_dad_text {
    position: relative; /* for info boxes */
    
    float: right;
    width: calc(100% - 45px);
    height: auto;

    line-height: 1.3;
}

.maternity_flow_dad_text div {
    position: absolute;

    top: 0; /* Overwritten by JS placement */
    left: 0;

    background-color: rgba(246, 246, 241, 1.0); /* KS Grey 25% */
}

.maternity_flow_dad_text span {
    float: right;
    width: 45px;
    height: 40px;

    text-align: center;
}

.maternity_flow_dad_text span img {
    width: 25px;
    height: auto;
}

.maternity_flow_dad_text span div {
    margin: 0 auto;
}

.maternity_flow_dad_boxes {
    float: left;
    width: 30px;
}

/* Steps
   ========================================================================== */
#step_progress {
    display: flex;
    justify-content:center;

	width: 100%;
	height: auto;

    margin-top: 25px;
    padding: 25px; /* non-iframe setting */
}

#step_progress div {
    width: 10px;
    height: 10px;

    margin: 0px 10px;

    background-color: rgba(99, 99, 99, 1.0); /* KS Grey Dark */

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
}

.nav_active {
    background-color: rgba(242, 140, 0, 1.0); /* KS Orange */
}

/* Print overview
   ========================================================================== */
#printonly_section {
    display: none;
    page-break-after: always;

    padding: 0px 25px !important;
}

/* Modal overlays
   ========================================================================== */
.icon_modal_sector, .icon_modal_contract, .icon_modal_distribute, .icon_modal_extension, .icon_modal_vacation {
    z-index: 25;

    position: absolute;
    top: 25px;
    right: 25px;

    width: 30px;
    height: auto;
}

.icon_modal_sector:hover, .icon_modal_contract:hover, .icon_modal_distribute:hover, .icon_modal_extension:hover, .icon_modal_vacation:hover {
    cursor: pointer;
}

.modal {
    display: none;
    position: fixed;
    z-index: 50 !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(255, 255, 255, 0.75); /* White 75% opacity */
}

.modal-content {
    position: relative;

    width: 1024px;
    height: auto;

    margin: 10% auto;
    padding: 50px;

    font-size: 1.0em;

    background-color: rgba(255, 255, 255, 1.0);

    border-style: solid;
    border-width: 1px;
    border-color: rgba(240, 239, 232, 1.0); /* KS Grey Tab */

    -webkit-border-radius: 12.5px;
    -moz-border-radius: 12.5px;
    -o-border-radius: 12.5px;
    border-radius: 12.5px;
}

.modal-content img {
    width: 70%;
    height: auto;

    margin: 0 auto;
}

.modal-content .close {
    z-index: 25;

    position: absolute;
    top: 15px;
    right: 15px;

    height: 20px;

    color: rgba(99, 99, 99, 1.0); /* KS Grey Dark */
    font-size: 28px;
    font-weight: 700;

    margin-top: -10px;

    transition: color 0.25s ease;
}

.modal-content .close:focus, .modal-content .close:hover {
    color: rgba(112, 59, 82, 1.0); /* KS Purple hover */

    text-decoration: none;
    cursor: pointer;
}