:root {
    --maxHeight: 300px;
}
.office-main-container {
    margin-top: 5.5vh;
    min-height: 50vh;
    width: 100%;
}

/**************/
/* navigation */
/**************/

/*Second-Navbar DESKTOP*/
.second-navbar-container {
    width: 100%;
    margin-top: 5.55vh;
}
.second-navbar {
    display: flex;
    align-items: flex-start;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.second-navbar-item {
    height: auto;
    width: auto;
    margin-right: 1.46vw;
    padding: 0;
}

.second-navlink {
    font-size: var(--sub-menu);
    color: var(--prim-color);
    margin: 0;
    padding: 0;
    text-decoration: none;
}
.second-navlink:hover {
    color: var(--sec-color-gray);
}

/*Second-Navbar MOBILE*/
#second-navbar-container-mobile {
    display: none;
    width: 100%;
    margin-top: 5.55vh;
    box-shadow: 1px 1px 4px var(--sec-color-gray-tp)
}
#category-btn {
    display: flex;
    justify-content: space-between;
}
#category-btn > p {
    padding: 5px;
    font-size: var(--sub-menu);
    color: var(--prim-color);
}
#category-btn > img {
    max-width: 32px;
}
#expand-img {
    transition: transform 0.3s ease;
}
#dropdown-content {
    display: none;
    background-color: var(--sec-color-gray-light);
}
#category-btn:hover {
    cursor: pointer;
}
#dropdown-content > a {
    padding: 5px;
    display: block;
    text-decoration: none;
    font-size: var(--sub-menu);
    color: var(--prim-color);
}


/**************/
/*    main    */
/**************/
#office-container-buero {    
    display: flex;
    justify-content: start;
}
#office-img-container {
    border: 0px solid black;
    width: 50%;
    height: 55vh;
    margin-right: 6vw;
}
.office-gallery-item {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.office-gallery-item > img {
    object-fit: cover;
    width: 100%;   
    height: 100%;
    overflow: hidden;
}
#office-img-text {
    margin-bottom: auto;
    max-width: 25vw;
}
#img-count-container {    
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.5vh;
}
#control-element {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
#next-img, #prev-img {
    margin: 5px;
    padding: 1px;
    max-height: 100%;
}
#next-img:hover, #prev-img:hover {
    cursor: pointer;
    background-color: var(--sec-color-gray-tp);
}
#prev-img {
    transform: rotate(90deg);
}
#next-img {
    transform: rotate(-90deg);
}
#image-amount {
    max-height: 100%;
    font-size: var(--subline);
    color: var(--prim-color);
}


/**************/
/*   team     */
/**************/
#employee-container {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}
.employee {
    transition: transform 0.2s ease;
    box-shadow: 1px 1px 4px var(--sec-color-gray-light);
    padding-bottom: 5px;
}
.employee:hover {
    cursor: pointer;
    transform: scale(1.02);
}
.employee:hover .employee-img {
    filter: grayscale(0%);
}
.employee-img {
    filter: grayscale(100%);    
    width: 100%;
    height: 27.8vh;
    object-fit: cover;
}
.employee-name {
    font-weight: bold;
    margin-top: 1vh;
}
.employee-active .employee-img {
    filter: grayscale(0%);
    transform: scale(1.02);
}
.seperator {
    margin-top: 0.5vh;
    margin-bottom: 0.5vh;
    height: 1px;
    color: var(--prim-color);
}
.employee-title, .employee-text {
    font-size: var(--subline);
    line-height: var(--subline-lineheight);
}
.employee-title {    
    margin-bottom: 1vh;
}
.cv-container {
    margin-top: 5.55vh;
    width: 100%;
}
.cv-container > p:first-of-type {
    font-weight: bold;
    margin-bottom: 1vh;
}
.cv-year, .cv-desc {
    font-size: var(--subline);
}
.cv-year {
    display: inline-block;
    width: 7vw;
}
#former-employees-line {
    margin-top: 5.55vh;
}
#former-employees-header {
    font-weight: bold;
    margin-bottom: 1vh;
}
#group-img-container {
    margin-top: 6vh;
    width: 100%;
    height: 20vh;
    overflow: hidden;
    position: relative;
}
#group-img {
    width: 100%;
    height: auto;
    object-fit: cover;
    position: absolute;
    top: -50px;
    left: 0;
}


/**************/
/* leistung   */
/**************/
#leistung-container {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 20px;    
    row-gap: 20px;
}
.leistung-header {    
    font-weight: bold;
}
.leistung-text, .leistung-first {
    font-size: var(--subline);
    margin-bottom: 0.8vh;
}
.leistung-first {
    margin-top: 2vh;
}
.leistung {
    box-shadow: 1px 1px 4px var(--sec-color-gray-light);
    padding: 10px;
}
.leistung:hover {
    cursor: default;
    background-color: var(--sec-color-gray-tp);
}


/**************/
/*kooperation */
/**************/
.partner-container > h1 {
    font-weight: bold;
    margin-bottom: 2vh;
}
.partner-container:first-of-type {
    margin-bottom: 2vh;
}
.partner-container:nth-of-type(2) {
    margin-top: 2vh;
}
.partner-container:nth-of-type(2) > p:first-of-type, .partner-link {
    padding-bottom: 10px;
}


/**************/
/*  karriere  */
/**************/
#job-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-row-gap: 10px;
}
.job:hover {
    cursor: pointer;
}
.job-name {
    color: black;
    margin-right: 10px;
    padding-left: 5px;
}

.job-name.active-job {
    font-weight: normal;
    color: var(--sec-color-gray);
}
.job-topic {
    margin-top: 2vh;
    font-weight: bold;
}
.job-detail {
    display: none;
    padding: 10px;
    box-shadow: 1px 1px 4px var(--sec-color-gray-tp)
}
.job-detail.show {
    display: block;
}
.job-info-2 {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    border-bottom: 1px solid var(--prim-color);
}
.expand-img-job {
    max-width: 30px;
    transition: transform 0.3s ease;
}
.expand-img-job.rotated {
    transform: rotate(180deg);
}
.job-detail-list {
    padding-left: 2vw;
    list-style-type: disc;
}
.job-title {
    margin-bottom: 0.5vh;
    font-weight: bold;
}
#last-p {
    margin-top: 2vh;
}





#office-info-container {
    width: 100%;
    margin-top: 40px;
}
.office-info-section {
    margin-top: 20px;
}
.office-info-header-container {
    background-color: white;
    font-size: 1.5rem;
    display: flex;
    padding: 5px;
    justify-content: space-between;
    vertical-align: middle;
}
.section-header {
    margin-top: auto;
    margin-bottom: auto;
    font-size: 1rem;
}
.section-container {
    max-height: auto;
    font-size: 0.8rem;
    cursor: pointer;
    overflow: hidden;
}

.office-info-header-container:hover, .job:hover {
    cursor: pointer;
    background-color: rgb(220, 220, 220);
}
.active {
    background-color: rgb(220, 220, 220);
}

.expand-icon {    
    max-height: 30px;
    transform: rotate(0deg);
    animation: rotate180CounterClockwise 0.5s ease;
}
.rotated {
    transform: rotate(180deg);
    animation: rotate180Clockwise 0.5s ease;
}



.expanded {    
    max-height: auto;
    animation: expand 0.5s ease;    
}
.onload {
    max-height: 0;
}
.collapsed {
    max-height: 0;
    animation: collapse 0.5s ease;    
}
table {
    font-size: 0.8rem;
}
.work-section-tablecell {
    vertical-align: top;
    padding: 5px 5px 5px 0px;
}
.work-section-tablecell:first-of-type {
    width: 300px;
}


.fade {
    animation-name: fade;
    animation-duration: 0.7s;
}

@media only screen and (max-width: 1400px) {
    #office-container-buero {
        display: block;
    }
    #office-img-text {
        margin-top: 5.55vh;
        max-width: 100%;
    }
    #office-img-container {
        width: 100%;
        height: 55vh;
    }

    #employee-container {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
        column-gap: 1vw;    
    }

    #leistung-container {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
}
@media only screen and (max-width: 1200px) {
    .second-navbar-container {
        display: none;
    }
    #second-navbar-container-mobile {
        display: block;
    }
    #group-img-container {
        display: none;
    }
}

/*Animations*/
@keyframes expand {
    from {max-height: 0px;}
    to {max-height: var(--maxHeight);}
}
@keyframes collapse {
    from {max-height: var(--maxHeight);}
    to {max-height: 0;}
}
@keyframes rotate180Clockwise {
    from {transform: rotate(0deg);}
    to {transform: rotate(180deg);}
}
@keyframes rotate180CounterClockwise {
    from {transform: rotate(180deg);}
    to {transform: rotate(0deg);}
}
@keyframes fade {
    from {opacity: .6} 
    to {opacity: 1}
}