@font-face {
    font-family: 'Evolventa';
    src: url('../fonts/evolventa.woff2') format('woff2'), url('../fonts/evolventa.woff') format('woff'),
        url('../fonts/evolventa.ttf') format('truetype');
}

html,
body {
    height: 100%;
}
body {
    font-family: 'Evolventa', sans-serif;
    font-size: 16px;
    color: #00476e;
    font-weight: 300;
}
* {
    box-sizing: border-box;
}
h1,
h2,
h3 {
    font-weight: 200;
}
/* h1,
h2 {
    text-transform: uppercase;
} */
h1 {
    font-size: 42px;
    padding: 45px 0 0;
}
h2 {
    font-size: 36px;
    padding: 20px 0;
}
h3 {
    font-size: 24px;
}
a:link,
a:visited,
a:active,
a.active {
    color: #007abe;
    text-decoration: none;
}
a:hover {
    color: #009CF2;
}

#logo {
    padding-left: 15px;
}
#logo a {
    /* color: #007abe; */
    color: #00476e;
}
#logo a:hover {
    /* color: #009CF2; */
    color: #007abe;
}
#logo svg {
    height: 100px;
    width: 199px;
}

.header {
    display: flex;
    height: 120px;
    align-items: center;
}

a.shopping-cart-link,
a.shopping-cart-link:visited,
a.shopping-cart-link:active {
    color: #408e58;
}
a.shopping-cart-link:hover {
    color: #46a764;
}

@media (min-width: 992px) {
    #logo svg {
        height: 150px;
        width: 299px;
    }
    .header {
        height: 170px;
    }
}

.category-wrapper {
    border: solid 1px #007abe;
    padding-top: 15px;
    padding-bottom: 15px;
    cursor: pointer;
    border-radius: 0.25rem;
}
.category-wrapper img {
    filter: grayscale(0.3);
}
.category-wrapper:hover {
    border: solid 1px #009CF2;
}
.category-wrapper:hover a {
    color: #009CF2;
}
.category-wrapper:hover img {
    filter: grayscale(0);
}

.header-menu {
    position: relative;
}
.header-menu .target {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    transition: all .20s ease-in-out;
}
a.nav-link {
    font-weight: 300;
    color: #007abe;
    font-size: 20px;
    padding: 5px 0;
    margin-right: 15px;
    position: relative;
}
.header-menu .target::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: #007abe;
    top: 100%;
    left: 0;
    pointer-events: none;
}
.header-menu .target::after {
    height: 1px;
    background: #007abe;
    pointer-events: none;
    content: "";
    position: absolute;
    top: calc(100% + 4px);
    width: 70%;
    left: 15%;
}
.nav-link.hover {
    color: #009CF2;
}
/*.nav-link:hover,
.nav-link.active {
    color: #009CF2;
}*/

.content {
    padding-bottom: 2rem;
    min-height: calc(100% - 120px - 240px);
}

.category-navi-main {
    margin-top: 45px;
    margin-bottom: 16px;
}

.category-title {
    padding-top: 0;
}

.product-card {
    margin-bottom: 30px;
}

.catalog-item-body {
    min-height: 410px;
}

.catalog-item-text {
    flex-grow: 1;
}

.cart-qty-group {
    flex-grow: 0;
    flex-shrink: 0;
    width: 135px;
}

.footer {
    height: 240px;
}
.footer-logo {
    height: 80px;
    width: auto;
    display: block;
    margin: 0 auto;
}

