html {
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}

body{
    font-family:'VerbRegular','Arimo', sans-serif;
    margin: 0;
    font-size: 14px;
}

.clear{
    clear: both;
}

.hidden{
    display: none;
}

.container{
    width: 1080px;
    max-width: 100%;
    margin: auto;
    position: relative;
}

header{
    background-color: #0075B0;
    padding: 20px 0;
}

header #menu{
    position: absolute;
    top: 0;
    width: 100%;
    color: white;
}

header #menu a{
    color: white;
}

header #menu span{
    display: inline-block;
    padding: 30px 20px 5px 20px;
}

header #menu i{
    display: inline-block;
    padding: 30px 20px 5px 20px;
    background-color: black;
    font-style: normal;
}
header #menu:hover i{
    background-color: #F47929;
    cursor: pointer;
}

header #logo{
    background-image: url("../_img/cronos_hor.png");
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    height: 130px;
}


h1.lined{
    border-bottom: 2px solid #0075B0;
    margin: 4px 0;
    padding: 0;
    height: 10px;
    text-align: center;
}

h1.lined span{
    display: inline-block;
    background-color: white;
    padding: 0 20px;
    text-transform: uppercase;
    font-family: 'VerbBlack', sans-serif;
    font-size: 18px;
}

.filters .filter{
    float: left;
    width: 19.4%;
    margin-left: 0.8%;
}

.filters .filter.first{
    width: 39.4%;
    margin-left: 0;
}

.filters .filter.col2{
    width: 48%;
}

.filters .filter h2{
    font-family: 'VerbBlack', sans-serif;
    text-transform: uppercase;
    border-bottom: 4px solid #0075B0;
    font-size: 14px;
}

.filters .filter h2 i{
    font-style: normal;
    font-family: 'VerbRegular', 'Arimo', sans-serif;
    color: #D5DFE2;
}

.filtercol{
    width: 50%;
    float: left;
}

#showing{
    margin-top: 10px;
}

.gridlayout{
    float: right;
}

.gridlayout div{
    float: right;
}

.gridlayout .button{
    width: 25px;
    height: 25px;
    border: 3px solid #0075B0;
    margin-left: 4px;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAIElEQVQoU2NkIAKET9z7n5EIdQyjCvGGEjh4QAQxYQkAqdoac6epxWYAAAAASUVORK5CYII=");
    background-size: 10px 10px;
    opacity: 0.5;
}

.gridlayout .button:hover{
    border: 3px solid #F47929;
    opacity: 1;
    cursor: pointer;
}

.gridlayout #gridlayout_grid{
    background-size: 5px 5px;
}

.gridlayout .button.active{
    opacity: 1;
}

.gridlayout .button.active:hover{
    border: 3px solid #0075B0;
}


.gridlayout .button.orange,
#detail .button.orange{
    border: 3px solid #F47929;
    background: #F47929;
    color: white;
    width: auto;
    padding: 3px 10px;
    font-size: 12px;
    opacity: 1;
}

.gridlayout .button.orange:hover,
#detail .button.orange:hover{
    border: 3px solid #0075B0;
    background:#0075B0;
    cursor: pointer;
}

#grid{
    margin: 10px 0;
}

footer{
    background-color: #0075B0;
    padding: 30px 0;
    color: white;
}

footer b{
    font-family: 'VerbBlack', sans-serif;
}

footer .col{
    float: left;
    width: 50%;
}

footer .col a{
    color: white;
    text-decoration: none;
    display: block;
    line-height: 200%;
}

footer .col a:hover{
    text-decoration: underline;
}

footer .panel{
    width: 96%;
    margin: auto;
    border-bottom: 2px solid white;
    border-top: 2px solid white;
    padding: 4px;
}

footer .panel.company{
    font-size: 24px;
}

footer .col b{
    display: block;
}

footer .copy{
    width: 96%;
    margin: auto;
    padding: 10px 0;
    font-size: 11px;
}

.filteritem{
    background-color: #D5DFE2;
    padding: 4px;
    margin: 2px;
    text-transform: uppercase;
    font-size: 12px;
}

.filteritem i{
    float: right;
    text-align: right;
    font-style: normal;
}

.filteritem:hover{
    background-color: #b3d0dd;
    cursor: pointer;
}

.filteritem.active,
.filteritem.active:hover{
    background-color: #0075B0;
    color: white;
}

#grid{
    text-align: center;
}

#grid .item{
    display: inline-block;
    width: 232px;
    height: 156px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    border: 1px solid #99aab9;
    margin: 4px;
    position: relative;
}

#grid.small .item{
    width: 112px;
    height: 90px;
}


#grid .item:hover{
    border: 1px solid #F47929;
    cursor: pointer;
    box-shadow: 0 0 4px rgba(244, 121, 41, 0.7);
}

#grid .item i{
    position: absolute;
    bottom: 0;
    background-color: #99aab9;
    left: 0;
    padding: 4px;
    color: white;
    font-style: normal;
    font-size: 11px;
    display: none;
}

#grid .item:hover i{
    display: initial;
}

#grid .item.selected{
    border: 1px solid #F47929;
}

#grid .item.selected i{
    background-color: #F47929;
    display: initial;
}

#selection_clear,
#selection_download{
    display: none;
}


#gridmenu.selection  #selection_clear,
#gridmenu.selection  #selection_download{
    display: inline-block;
}

#gridmenu.selection #selection_add{
    display: none;
}


#detail{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 320px;
    background-color: #D6DFE2;
    z-index: 100;
    overflow: hidden;
    transition: height 0.3s ease-out;
}

#detail.hidden{
    display: block;
    height: 0;
}


#detail .content{
    position: absolute;
    left: 10px;
    top: 20px;
    bottom: 20px;
    right: 10px;
}

#detail .arrow{
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
    border: 16px solid transparent;
    border-top-color: white;
}

#detailclose{
    position: absolute;
    top: 4px;
    right: 4px;
    padding: 4px 10px;
}

#detailclose:hover{
    background-color: white;
    cursor: pointer;
}

#detailimagecontainer{
    width: 48%;
    height: 280px;
    float: left;
    background-color: white;
    position: relative;
}

#detailimage{
    top: 10px;
    bottom: 10px;
    right: 10px;
    left: 10px;
    position: absolute;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}


#detailcontent{
    width: 48%;
    height: 280px;
    float: right;
    position: relative;
}

#detailcontent i{
    font-style: normal;
    font-size: 11px;
    display: block;
}

#detailinfo{
    padding: 10px 0;
    line-height: 130%;
}

#detailcontent .button{
    display: inline-block;
}

#related{
    position: absolute;
    bottom: 0;
}

#detaildownloads a{
    display: inline-block;
    background-color: #ACC0C6;
    padding: 2px 4px;
    text-decoration: none;
    color: black;
    margin: 2px;
}

#detaildownloads a:hover{
    background-color: white;
}



body .authenticated{
    display: none;
}

body.authenticated .login{
    display: none;
}

body.authenticated .authenticated{
    display: block;
}


.login{
    width: 19.4%;
    margin: 50px auto;
}

.login h2{
    display: inline-block;
    border-bottom: 1px solid black;
    padding: 0 0 8px 0;
    font-size: 16px;
}

.login input{
    padding: 8px;
    border: 1px solid black;
    margin: 8px 0;
    box-sizing: border-box;
    width: 100%;
}

.login .button{
    background-color: black;
    color: white;
    padding: 8px;
    margin: 8px 0;
    border: 1px solid black;
}

.login .button:hover{
    background-color: white;
    color: black;
    cursor: pointer;
}

.spinner{
    width: 18px;
    height: 18px;
    border: 4px solid white;
    border-radius: 50%;
    border-right-color: transparent;
    animation: spin 1s ease-in-out infinite;
    margin: -2px 10px 0 0;
    display: inline-block;
    vertical-align: text-top;
}

@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }


