@import url(tokens.css?v1);
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');

#menu_top,
#container_menu .menu,
#qs-container,
#innerfooter,
#customsearch {
  max-width: 100%;
}

#menu_top,
.breadcrum_container,
#apptitle a,
#header_top {
  display: none;
}

#pull {
    display: flex;
	align-items: center;
    text-decoration: none;
    color: var(--color-black);
	gap: 10px;
	white-space: nowrap;

    &:after {
        font-family: "Font Awesome 6 Pro";
        font-size: 20px;
        font-weight: 400;
        content: "\f0c9";
        display: flex;
        width: 100%;
        height: 100%;
        align-items: center;
        color: var(--color-black);
        justify-content: center;
    }

    &[aria-expanded="true"]::after {
        content: "\f00d";
        color: var(--color-black);
    }


    &:focus {
        outline-offset: -1px;
    }
}

#container_menu {
    overflow: visible;
}

.b_menu-search-wrapper {
  display: flex;
  align-items: center;
}

.b_header-wrapper {
    display: block;
    padding: var(--pad-hor-cnt);
    padding-top: 10px;
    padding-bottom: 10px;
    max-width: 1488px;
    display: flex;
    margin: 0 auto;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    
    
    .b_menu-search-wrapper,
    #container_menu {
        position: unset;
        
    }
}

#innercontainer header {
	background-color: var(--white);

	* {
		box-sizing: border-box;
	}

    .logo {
        width: 85px;
        height: auto;
        object-fit: contain;
    }
}

#innerheader {
	p {
		margin: 0;
	}
}

.menu {
	display: none;
	gap: var(--gap-obj-mdl);
	list-style-type: none;
	padding-left: unset;
	margin: 0;

    li:not(#p111).active a {
        font-weight: 700;

    }


	&.b_menu-open {
		display: block;
		position: absolute;
		background-color: var(--color-white);
		top: 70px;
		left: 0px;
		width: 100%;
		z-index: 81;
		padding-bottom: 10px;
		border-bottom: 1px solid var(--color-gray);
		
		

		a {
			height: auto;
			padding: var(--pad-hor-cnt);
			padding-bottom: 10px;
			padding-top: 10px;
		}
	}

	a {
		display: flex;
		align-items: center;
		text-decoration: none;
		color: var(--color-black);
		width: 100%;
		height: 95px;
		font-size: var(--font-menu-item);
		font-family: "Noto Sans", sans-serif;
		z-index: 10;
		position: relative;
	}
}


/* footer styling ! nog refactoren met tokens! */
#footer:not(.custom-layout) {
    position: relative;
    margin-top: auto;
    color: var(--color-white);
    font-size: 20px;
    background: var(--color-white);
        

    img {
        width: 85px;
        height: auto;
        object-fit: contain;
    }
}

#footer:not(.custom-layout):before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background: var(--color-red);

}

#innerfooter {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 1488px;
    margin: 0 auto;
    
    img {
        width: 85px;
    }
}
.footer-column {
	padding: var(--pad-hor-cnt);
}
.footer-column.second {
    background-color: var(--color-white);
    padding: var(--pad-hor-cnt);
    padding-top: 20px;
    padding-bottom: 20px;
	
}

.footer-row {
    display: flex;
    gap: var(--gap-obj-md);
    flex-direction: column;


    &.footer-cell {
        padding-top: 36px;
        padding-bottom: unset;
    }
}

#footer ul {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
    font-size: var(--font-paragraph);

    li {
        white-space: nowrap;
    }
}

#footer .socials {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 30px;
}

.socials a {
    font-size: 25px;
}

#footer a {
    text-decoration: none;
    color: var(--color-white);

    &:hover {
        text-decoration: underline;
    }
}



@media screen and (min-width: 954px) {
    #footer:not(.custom-layout) {
        img {
            width: 140px;
        }
    }

    #innercontainer header {
        .logo {
            width: 140px;
        }
    }

    #innercontainer {

        .b_menu-open,
        #pull {
            display: none;
        }

        .b_menu-search-wrapper,
        #container_menu {
            position: relative;
        }

        #ctl00_menu {
            display: flex;
            align-items: center;
            margin: unset;
            gap: var(--padding-obj-sm);
        }
    }

	#p111 {
		a {
			background-color: var(--color-red);
			display: block;
			padding: var(--padding-obj-xxs) var(--padding-obj-sm);
			color: var(--color-white);
			height: 59px;
            line-height: 1.3;
            font-size: var(--font-menu-item);
            font-weight: 700;
            max-width: 147px;

            &::after {
                content: "\f002";
                font-family: "Font Awesome 6 Pro";
                color: var(--color-white);
                margin-left: 10px;
            }
		}

        &:hover a {
            background-color: var(--color-red-hover);
        }
	}
    
    .footer-row {
        flex-direction: row;

        ul,
        .cell-large {
            width: 50%;
        } 
    }

    #innerfooter {
        width: 100%;

        .footer-column:not(.second) {
            padding: var(--padding-obj-xl);
        }

        .footer-row:first-child {
            margin-bottom: unset;
            padding: unset;
        }

        .footer-row {
            padding: var(--padding-obj-xl);

            &.footer-cell {
                padding-top: 36px;
                padding-bottom: unset;
            }
        }

        .footer-cell.footer-row {
            padding-top: 36px;
            padding-bottom: unset;
            padding-left: unset;
            margin-bottom: 0;
        }
    }
}

@media screen and (min-width: 1024px) {
    #footer:not(.custom-layout):before {
        padding: 80px 0;
        background: linear-gradient(45deg,rgba(204, 0, 0, 1) 55%, rgba(255, 255, 255, 1) 55%);
    }

    #innerfooter {
        flex-direction: row;
    }


    .footer-column.second {
        background-color: unset;
        padding: unset;
    }

    #footer:not(.custom-layout) {
    }

    .footer-row {
        ul,
        .cell-large {
            width: 100%;
        } 
    }
}

@media screen and (min-width: 1380px) {
    #innerfooter {
        flex-direction: row;
      
              

        .footer-row {
            gap: unset;
        }
    }

    .footer-row {
        ul, .footer-cell.cell-large {
            width: 325px;
        }
    }
}