
#header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99999;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;

    background: #f7f8f8;

    height: 85px;
    line-height: 85px;

    font-family: UniviaProLight;
    font-size: 12px;

    vertical-align: middle;
    
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
    background-color: #f7f8f8;
    background-image: linear-gradient(#f7f8f8, #f9f9f9);
}

#header.header-shadow {
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
}

#header.overflow-hidden {
    overflow: hidden;
}

    #header .container {
        position: relative;
        width: 100%;
        padding-right: 15px;
        padding-left: 15px;
        margin-right: auto;
        margin-left: auto;
    }

@media (min-width: 1200px) {
    BODY:not(.full-width) #header .container {
        max-width: 1500px;
    }
}


#mega-menu .overlay {
    display: none;
    position: fixed;
    top: 85px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #C2D2DB;
    opacity: 0.71;
    z-index: -1;
}

#mega-menu {
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
}
#mega-menu .transparent {
    position: absolute;
    z-index: 10001;
    top: -10px;
    height: 30px;
    left: 0;
    right: 0;
    background: transparent;
}

#mega-menu #nav-functional {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    flex-direction: column;

    justify-content: space-around;
}
/*
    #mega-menu .dropdown-menu-container:hover .dropdown-menu {
        display: block;
    }
*/
    #mega-menu .dropdown-menu-container.active .dropdown-menu {
        display: block !important;
    }

#mega-menu #nav-functional.has-items {
    padding-bottom: 40px;
}


#mega-menu #nav-functional LI {
    position: relative;
    display: block;
    margin: 0 auto;
    line-height: 45px;
    width: 100%;
    text-align: left;
}

    #mega-menu #nav-functional LI {
    }
    #mega-menu #nav-functional LI > A,
    #mega-menu #nav-functional LI > SPAN,
    #mega-menu #nav-functional LI > DIV > A {
        padding: 5px 25px 5px 25px;
        display: block;
    }

    #mega-menu #nav-functional LI.nav-button A {
        border: none;
    }

    @media (min-width: 1200px) {
        #mega-menu .container {
            max-width: 1200px;
        }
        BODY.full-width #mega-menu .container {
            margin-left: 0;
        }
    }

    #mega-menu:before {
        position: absolute;
        z-index: 10000;
        top: 0;
        left: 239px;
        display: inline-block;
        border-top: 12px solid #edf0f2;
        border-right: 12px solid transparent;
        border-left: 12px solid transparent;
        content: '';
    }

    #mega-menu:after {
        position: absolute;
        z-index: 10000;
        top: 0;
        left: 240px;
        display: inline-block;
        border-top: 11px solid #F3F4F4;
        border-right: 11px solid transparent;
        border-left: 11px solid transparent;
        content: '';
    }

    #mega-menu .container {
        position: relative;
        min-height: 200px;
        width: calc(100% - 40px);
        width: 100%;
        box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
        border: 1px solid #edf0f2;
        background-color: #ffffff;
        padding: 40px 20px 30px 20px;
        overflow: auto;
        max-height: calc(100vh - 70px);
    }


    #mega-menu .other-apps UL {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;

        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        flex-direction: row;

        line-height: normal;
    }


    #mega-menu .other-apps LI {
        display: block;
        width: 31%;
        min-width: 320px;
        max-width: 100%;
        margin: 0 auto 25px auto;
        z-index: 1;
        cursor: pointer;
    }

        #mega-menu .other-apps LI > A {
            position: relative;
            display: inline-block;
            width: 100%;
            color: #2c3e52;
            padding: 5px 15px 5px 15px;
            font-family: UniviaProMedium;
            font-size: 14px;
        }

            #mega-menu .other-apps LI > A IMG {
                height: 15px;
                margin: -3px 10px 0 5px;
            }

            #mega-menu .other-apps LI > A IMG.white {
                display: none;
            }

            #mega-menu .other-apps LI > A:before {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                z-index: -1;

                background: #a9b0b5;
                opacity: 0.25;
            }

        #mega-menu .other-apps LI .description {
            position: relative;
            padding: 6px 10px 10px 10px;
            margin-top: 4px;
        }

        #mega-menu .other-apps LI .description:before {
            content: '';
            position: absolute;
            top: 10px;
            bottom: 10px;
            width: 1px;
            background: #e9ebec;
        }

        #mega-menu .other-apps LI .description P,
        #mega-menu .other-apps LI .description A,
        #mega-menu .other-apps LI .description H5 {
            margin: 8px 15px 8px 20px;
        }

        #mega-menu .other-apps LI .description P {
            color: #8f989d;
            font-family: UniviaProLight;
            font-size: 12px;
            margin-top: 12px;
            margin-bottom: 12px;
            line-height: 1.5;
        }

        #mega-menu .other-apps LI .description H5 {
            font-family: UniviaProBook;
            color: #2c3e52;
            font-size: 12px;
        }
        #mega-menu .other-apps LI .description A {
            display: inline-block;
            position: relative;
            color: #3995c4;
            font-family: UniviaProLight;
            font-size: 12px;
        }

        #mega-menu .other-apps LI .description A:before {
            content: '';
            position: absolute;
            top: 4px;
            right: -22px;
            height: 8px;
            width: 8px;
            background: transparent url('/images/header/arrows.svg') no-repeat;
        }

        #mega-menu .other-apps LI:hover .description:after,
        #mega-menu .other-apps LI:active .description:after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: -1;

            background: #d5dfe4;
            opacity: 0.20;
        }

        #mega-menu .other-apps LI:hover > A,
        #mega-menu .other-apps LI:active > A {
            color: #fff;
        }

            #mega-menu .other-apps LI:hover > A:before,
            #mega-menu .other-apps LI:active > A:before {
                background: #3a96c4;
                opacity: 0.64;
            }

        #mega-menu .other-apps LI:hover > A IMG.white,
        #mega-menu .other-apps LI:active > A IMG.white {
            display: inline-block;
        }
        #mega-menu .other-apps LI:hover > A IMG.dark,
        #mega-menu .other-apps LI:active > A IMG.dark {
            display: none;
        }



#header A {
    text-decoration: none;
}

#header NAV *,
#header #mega-menu * {
    box-sizing: border-box;
}

#header .dropdown-item {
    font-size: 14px;
}

BODY.scrolled #header {
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
    background-color: #f7f8f8;
    background-image: linear-gradient(#f7f8f8, #f9f9f9);
}

#header .navbar-brand {
    display: inline-block;
    vertical-align: middle;
}
#header .logo {
    height: 44px;
    margin-top: -2px;
    cursor: pointer;
    float: right;
}
#header .logo_white {
	display: none;
}

#header #berga_logo {
    display: inline-block;
    vertical-align: middle;
    width: 100px;
    height: 40px;
    margin: 0 20px 0 20px;
    background-repeat: no-repeat;
    background-image: url( '/berga_foto/images/berga_foto_logo.png' );
    background-size: contain;
}



    #header .container > .nav-left {
        float: left;
        padding-left: 20px;
        padding-right: 20px;
    }

    #header .navbar {
        padding: 0;
        height: 85px;
        text-align: left;
        overflow: hidden;
    }

        #header .navbar UL {
            display: -webkit-box;
            display: -moz-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            
            -ms-flex-wrap: wrap;
            flex-wrap: wrap;
            flex-direction: row;
        }

            #header .navbar UL LI {
                position: relative;
                display: inline-block;
                margin-right: 20px;

                /***  stop elements becoming blurry when translate places them on a "half-pixel" ***/
                -webkit-transform-style: preserve-3d;
                -moz-transform-style: preserve-3d;
                transform-style: preserve-3d;

                white-space: nowrap;
            }

            /*** Align items to the right ***/
            #header .navbar UL LI.nav-right {
                margin-left: auto;
            }
            #header .navbar UL LI.nav-right ~ LI.nav-right {
                margin-left: 0;
            }
            /***/


            #header .navbar UL LI IMG {
                height: 20px;
            }

            /*** position block middle ***/
            #header .navbar UL LI .block-middle {
                position: relative;
                /*** Move the element down half (or 50%) of the parent's height. ***/
                top: 50%;
                /*** Move the element back up half (or -50%) of it's own height. ***/
                -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                transform: translateY(-50%);
            }



    #header UL LI A {
        font-family: UniviaPro;
        font-size: 1.35em;
    }
    #header UL LI.nav-button A {
        position: relative;
        padding: 5px 23px 5px 23px;
        border: 1px solid #d5d9dd;
        border-radius: 20px;
    }
    #header UL LI.nav-button A.has-badge {
    	padding-right: 30px;
    }
    #header UL LI.nav-button A.has-badge:after {
        position: absolute;
        width: 20px;
        height: 20px;
        top: 4px;
        right: 5px;
        content: attr(data-content);
        background: #fa4251;
        border-radius: 50%;
	    line-height: 20px;
	    text-align: center;
	    color: #fff;
	    font-size: 12px;
	    overflow: hidden;
    }

    #header #mega-menu UL LI.nav-button A.has-badge:after {
        top: 18px;
        right: auto;
        left: 0px;
    }

#header .navbar-toggler {
    padding: 10px;
    margin-right: 10px;
    background-color: transparent;
    border: 1px solid transparent;
    color: #a3abb4;
    border-radius: 25px;
    background-image: url("/images/header/list.svg?v=1");
    background-size: 24px 24px;
    background-repeat: no-repeat;
    background-position: center;
    width: 35px;
    height: 35px;
	position: relative;
}
#header.header-lifetime-storage-landing .navbar-toggler {
    background-image: url("/images/header/list_white.svg?v=1");
}

.navbar-toggler.user-has-not-clicked-navbar-toggler:after {
	content: " ";
	width: 12px;
	height: 12px;
	background: #fa4251;
	position: absolute;
	top: 0;
	right: 0;
	border-radius: 30px;
}


#header .navbar-toggler IMG {
    height: 18px;
    float: right;
}
#navbar-toggler-img-white {
    display: none;
}

#header .navbar-toggler:hover,
#header .navbar-toggler:focus {
    text-decoration: none;
}
#header .navbar-toggler:hover {
    background-color: #f1f1f1;
}

body.ui-mobile #header .navbar-toggler.clicked {
    background-image: url("/images/header/list_x.svg?v=1");
}

#header .navbar-toggler:not(:disabled) {
    cursor: pointer;
}




#search {
    width: 30px;
}

#search > DIV {
    position: absolute;
    z-index: 1;
    right: 0;
    display: block;
    vertical-align: middle;
    height: 35px;
    line-height: 35px;
    white-space: nowrap;
    border-radius: 20px;
    text-align: center;
    border: 1px solid transparent;
    cursor: pointer;
    transition: width 0.35s ease;
}

#search.active > DIV {
    padding: 7px 28px 7px 23px;
    right: 221px;
    width: 260px;
    line-height: 20px;
    border: 1px solid #d5d9dd;
    background: #fff;
}

#search I {
    line-height: inherit;
}
#search .search_field {
    display: none;
    width: 200px;
}
#search.active .search_field {
    display: inline-block;
}

#search .search_field INPUT {
    width: 100%;
    height: 100%;
    border: 0;
}

#header .navbar UL LI IMG.search_button {
    display: inline-block;
    height: 15px;
}
/*
    #header .navbar .dropdown-menu-container:hover .dropdown-menu {
        display: block;
    }
*/
    #header .navbar .dropdown-menu-container.active .dropdown-menu {
        display: block !important;
    }


        #header .navbar .dropdown-menu {
            margin-top: -10px;
        }

        #header .navbar .dropdown-menu-right {
            right: 0;
            left: auto;
        }

        #header .navbar .dropdown-toggle:after {
            display: none;
        }


        #header .navbar .dropdown-menu:before {
            position: absolute;
            top: 0;
            left: 9px;
            display: inline-block;
            border-top: 7px solid #edf0f2;
            border-right: 7px solid transparent;
            border-left: 7px solid transparent;
            content: '';
        }

        #header .navbar .dropdown-menu:after {
            position: absolute;
            top: -1px;
            left: 10px;
            display: inline-block;
            border-top: 6px solid #F3F4F4;
            border-right: 6px solid transparent;
            border-left: 6px solid transparent;
            content: '';
        }

        #header .navbar .dropdown-menu-right:before {
            left: auto;
            right: 14px;
        }
        #header .navbar .dropdown-menu-right:after {
            left: auto;
            right: 15px;
        }



/*** Signup & Login ***/

#login, #usergreeting {
    margin-top: 0;
    position: relative;
    margin-left: 0;
    text-align: left;
    background-color: transparent;
}

#login_button IMG {
    margin: -3px 0 0 8px;
}

#header #usergreeting {
    text-align: right;
    font-size: 14px;
    padding: 0px;
    display: block;
    color: #2b3d52;
    cursor: pointer;
    background: transparent;
}
    #header #usergreeting_user_name {
        display: inline-block;
        max-width: 220px;
        white-space: nowrap;
        overflow: hidden;
    }


    #header #usergreeting #usergreeting_name {
        display: inline-block;
        height: 52px;
        overflow: hidden;
        padding-bottom: 0;
        box-sizing: initial;
        line-height: normal;
    }

    #header #usergreeting .usergreeting_name_left {
        float: left;
        height: 52px;
        vertical-align: middle;
        display: table;
    }

        #header #usergreeting .usergreeting_name_left p {
            display: table-cell;
            vertical-align: middle;
            font-family: UniviaPro;
            font-size: 12px;
        }

    #header #usergreeting .usergreeting_name_right {
        float: right;
        width: 52px;
        height: 52px;
        border: 1px solid #fff;
        background: #fff;
        overflow: hidden;
        border-radius: 50%;
        margin-left: 13px;
    }

        #header #usergreeting .usergreeting_name_right a {
            position: relative;
            float: right;
            right: 50%;
        }

            #header #usergreeting .usergreeting_name_right img {
                display: block;
                height: 52px;
                position: relative;
                right:-50%;
            }
            #header #usergreeting .usergreeting_name_right img.user-avatar-icon {
                display: block;
                height: 20px;
                position: relative;
                right:-50%;
                margin-top: 14px;
            }

            #header #usergreeting .usergreeting_name_right .fa {
                line-height: 52px;
                font-size: 16px;
                position: relative;
                right:-50%;
            }

        #header #usergreeting:hover .dropdown-menu {
            right: 5px;
        }

    #usergreeting_org_name {
        font-weight: bold;
    }

    #pro_flag {
        background: #fa4251;
        color: #fff;
        font-size: 90%;
        padding: 3px 6px;
        display: inline-block;
        border-radius: 3px;
        margin-top: 3px;
    }

    .ui-mobile-viewport #pro_flag {
        display: none;
    }

    
#header #header_user_token_count a {
    display: inline-block;
    height: 89px;
    line-height: 1;
    font-size: 12px;
    padding: 32px 0 33px 0;
    text-align: left;
}
#header #header_user_token_count a > div {
	display: inline-block;
}
#header #header_user_token_count a > div:nth-child(1) {
	width: 25px;
    padding-right: 5px;
}
#header #header_user_token_count a > div:nth-child(1) img {
    height: 20px;
}
#header #header_user_token_count a > div:nth-child(2) {
	width: calc( 100% - 20px );
}
#header #header_user_token_count a > div:nth-child(2) > div {
	
}
#header #header_user_token_count a > div:nth-child(2) > div:nth-child(1) {
    font-size: 16px;
    margin-bottom: 2px;
}
#header #header_user_token_count a > div:nth-child(2) > div:nth-child(2) {
	font-size: 10px;
    letter-spacing: 0.5px;
}


@media only screen and (max-width: 820px) {

    #adaptive_html #header #usergreeting {
        padding-right: 0px;
    }
	#header #header_user_token_count {
		display: none;
	}
}


@media only screen and (max-width: 720px) {

    #header #usergreeting .usergreeting_name_left {
        display: none;
    }

    #header #usergreeting .usergreeting_name_right {
        margin: 0px;
    }
}

@media only screen and (max-width: 590px) {

    /*** reduce login size ***/
    #adaptive_html #header #usergreeting #pro_flag {
        display: none;
    }

    #adaptive_html #header #usergreeting .activator span {
        width: 27px !important;
        overflow: hidden;
    }

}

@media only screen and (max-width: 480px) {
    /* 480 layout =================================================== */
    #adaptive_html #container #header {
        min-width: 330px;
    }

}

@media only screen and (max-width: 355px) {
    /* 355 layout =================================================== */

    #header #usergreeting_user_name {
        display: block;
        max-width: 100%;
    }

}

/**********************/

#lang_switch {
    margin: 0;
    text-align: left;
    position: relative;
    font-size: 1.35em;
    padding: 0;
    display: block;
    color: #2b3d52;
    cursor: pointer;
    text-align: right;
}

#header .navbar #lang_switch > span {
    display: block;
    height: 100%;
}
#header .navbar #lang_switch > span > img {
	height: 18px;
    margin-top: 33.5px;
}
#mega-menu #nav-functional #lang_switch > span > img {
	height: 18px;
}
    /*
    #lang_switch:hover .dropdown-menu {
        right: -10px;
        min-width: 50px;
    }
    */
    #lang_switch.active .dropdown-menu {
        right: -10px;
        min-width: 50px;
    }


@media only screen and (max-width: 1200px) {
    /* 1200 =================================================== */
    #header {
        width: auto;
        /*margin: 0 20px;*/
    }
    
	body.berga_foto_client_view #header .logo {
		width: 111px;
	    height: 20px;
	    min-width: 0;
    }
    #header #berga_logo {
	    height: 25px;
	    width: 60px;
	    margin: 0 15px 0 15px;
    }
}


@media only screen and (max-width: 820px) {
    /* 820 layout =================================================== */
    #adaptive_html #header #usergreeting {
        padding-right: 0px;
    }

}


@media only screen and (max-width: 768px) {
    #header #usergreeting .usergreeting_name_left {
        display: none;
    }

    #header #usergreeting .usergreeting_name_right {
        margin: 0px;
    }
}


@media only screen and (max-width: 620px) {
    /* 620 layout =================================================== */

}


@media only screen and (max-width: 590px) {

    /*** reduce login size ***/
    #adaptive_html #header #usergreeting #pro_flag {
        display: none;
    }

    #adaptive_html #header #usergreeting .activator span {
        width: 27px !important;
        overflow: hidden;
    }
}

@media only screen and (max-width: 480px) {
    /* 480 layout =================================================== */
    #header {
        min-width: 330px;
    }
    #header .navbar-brand IMG {
        min-width: 170px;
    }
    
    #login_button_text {
	    visibility: hidden;
	    width: 0px;
	    display: inline-block
    }
    #header .navbar UL LI:last-child {
    	margin-right: 0;
    }
    #header .navbar-toggler {
   	    padding: 10px 14px 10px 14px;
    }
    #header .container > .nav-left {
    	padding-left: 0;
    }
	#header .navbar #lang_switch > span > img {
		margin-top: 33px;
	}
}


@media only screen and (max-width: 400px) {
    /* 300 layout =================================================== */

}
@media only screen and (max-width: 360px) {
    /* 360 layout =================================================== */
    #footer_container #footer {
        min-width: 280px !important;
    }

}
@media only screen and (max-width: 355px) {
    /* 355 layout =================================================== */
    #content #upload_row_container, #content #upload_row_container #upload_row, #content #blocks_row, #content #blocks_row .block, #footer_container #footer, #adaptive_html #container #header {
        min-width: 280px !important;
    }

    #header #usergreeting_user_name {
        display: block;
        max-width: 100%;
    }

}




#header.header-lifetime-storage {
	background: transparent;
}
#header.header-lifetime-storage .container {
	max-width: none !important;
}
#header.header-lifetime-storage #main-nav #signup ,
#header.header-lifetime-storage #main-nav #login_button ,
#header.header-lifetime-storage #main-nav #lang_switch > span ,
#header.header-lifetime-storage #header_user_token_count * ,
#header.header-lifetime-storage #usergreeting {
	color: #fff;
}
BODY.scrolled #header.header-lifetime-storage #main-nav #signup ,
BODY.scrolled #header.header-lifetime-storage #main-nav #login_button ,
BODY.scrolled #header.header-lifetime-storage #main-nav #lang_switch > span ,
BODY.scrolled #header.header-lifetime-storage #header_user_token_count * ,
BODY.scrolled #header.header-lifetime-storage #usergreeting {
	color: #2b3d52;
}
#header.header-lifetime-storage #main-nav #lang_switch > span #lang_switch_icon_dark ,
#header.header-lifetime-storage #main-nav #login_button #login_button_icon_dark {
	display: none;
}
#header.header-lifetime-storage #main-nav #lang_switch > span #lang_switch_icon_light ,
#header.header-lifetime-storage #main-nav #login_button #login_button_icon_light {
	display: inline-block;
}
BODY.scrolled #header.header-lifetime-storage #main-nav #lang_switch > span #lang_switch_icon_dark ,
BODY.scrolled #header.header-lifetime-storage #main-nav #login_button #login_button_icon_dark {
	display: inline-block;
}
BODY.scrolled #header.header-lifetime-storage #main-nav #lang_switch > span #lang_switch_icon_light ,
BODY.scrolled #header.header-lifetime-storage #main-nav #login_button #login_button_icon_light {
	display: none;
}



@media only screen and (max-width: 1000px) {
	
	
	#header.header-lifetime-storage ,
	#header.header-lifetime-storage .navbar ,
	#header.header-lifetime-storage .container > .nav-left {
		height: 45px;
		line-height: 45px;
	}
	#header.header-lifetime-storage .navbar #lang_switch > span > img {
	    margin-top: 14px;
	}
	#header.header-lifetime-storage .navbar-brand ,
	#header.header-lifetime-storage .navbar-toggler {
	    vertical-align: bottom;
	}
	#header.header-lifetime-storage .navbar-toggler {
		height: 24px;
	    padding: 0 24px;
	}
	#header.header-lifetime-storage #navbar-toggler img {
		display: none;
	}
	#header.header-lifetime-storage #navbar-toggler img#navbar-toggler-img-white {
		display: inline-block;
		opacity: 0.88;
	}
	#header.header-lifetime-storage .container > .nav-left {
		padding-left: 0;
	}
	#header.header-lifetime-storage .container {
	}
	
	#header.header-lifetime-storage .logo {
		display: none;
		height: 25px;
	}
	#header.header-lifetime-storage .logo.logo_white {
		display: inline-block;
		opacity: 0.88;
	}
	#header.header-lifetime-storage #main-nav #signup ,
	#header.header-lifetime-storage #main-nav #login_button ,
	#header.header-lifetime-storage #main-nav #lang_switch > span ,
	#header.header-lifetime-storage #main-nav .nav-link {
		opacity: 0.88;
	    height: 45px;
	    display: inline-block;
	    padding-top: 10px;
	    color: #fff;
	}
	#header.header-lifetime-storage #main-nav .nav-button .nav-link {
	    height: 30px;
	    line-height: 30px;
	    padding: 0 20px;
	    margin-top: 15px;
        border-color: #fff;
	}
	#header.header-lifetime-storage .navbar-toggler IMG {
    	height: 16px;
    	padding: 0 2px;
	}
	BODY.scrolled #header.header-lifetime-storage {
		display: none;
	}
}