#title-search { display: flex; align-items: baseline; }
#title-search > * { flex: 1; }

#search-products-div { text-align: right; }

#search-products { text-align: left;  width: 75%; min-width: 220px; font-size: 0.9em; }
/* comment this out to fix the placeholder opacity in Firefox
::-moz-placeholder { opacity: 1; }*/
::-webkit-input-placeholder { color: #72777D; font-style: italic; }
:-moz-placeholder           { color: #72777D; font-style: italic; } /* Firefox 18- */
::-moz-placeholder          { color: #72777D; font-style: italic; } /* Firefox 19+ */
:-ms-input-placeholder      { color: #72777D; font-style: italic; } /* IE 10+ */
::-ms-input-placeholder     { color: #72777D; font-style: italic; } /* Edge */
:placeholder-shown          { color: #72777D; font-style: italic; } /* Standard (last) */

#search-icon {
    padding:  0.5rem 0 0.75rem;
    position: relative;
}
#search-icon::after {
    content:           "\26b2";
    position:          absolute;
    font-size:         28px;
    padding-right:     0.2rem;
    right:             0;
    top:               0;
    display:           inline-block;
    -webkit-transform: rotate(-40deg);
            transform: rotate(-40deg);
}

#product-categories { display: flex; }

#categories { flex: 0 1 auto; padding-top: 3em; }

#categories ul {
    margin:     0;
    padding:    0;
    list-style: none;
}

#categories ul li {
    margin:          0;
    padding:         0;
    list-style-type: none;
}

#categories ul li a {
    color:           #0076d6;
    text-decoration: none;
    font-family:     "Source Sans Pro", sans-serif;
    font-weight:     normal;
    font-size:       21px;
    line-height:     125%;
    padding:         5px 10px 5px 5px;
    display:         block;
}

#categories ul li.selected a {
    color:  #1c1d1f;
    cursor: default;
}

#scopes-products { width: 100%; }

#scopes { justify-content: flex-start; margin: 0 !important; }
#scopes > * { flex: 0 1 10rem; }
#scopes.no-scopes { visibility: hidden; }
#scopes.no-scopes > *.selected::before { background-color: transparent; }

#products {
    width:           100%;
    display:         flex;
    align-items:     stretch;
    justify-content: flex-start;
    flex-wrap:       wrap;
    margin:          0;
    padding:         0;
    list-style:      none;
 }

#products .card {
    flex:            1 0 calc(33% - 10px);
    margin:          10px 5px;
    padding:         0;
    list-style-type: none;
    vertical-align:  top;
    min-width:       230px;
}