/* base: */

@font-face {
    font-family: Raleway;
    src: url(../raleway/Raleway-Regular.ttf);
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: Raleway;
    src: url(../raleway/Raleway-Italic.ttf);
    font-style: italic;
    font-weight: normal;
}

@font-face {
    font-family: Raleway;
    src: url(../raleway/Raleway-BoldItalic.ttf);
    font-style: italic;
    font-weight: bold;
}

@font-face {
    font-family: Raleway;
    src: url(../raleway/Raleway-Bold.ttf);
    font-style: normal;
    font-weight: bold;
}

@font-face {
    font-family: Rokkitt;
    src: url(../rokkitt/Rokkitt-Medium.ttf);
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: Rokkitt;
    src: url(../rokkitt/Rokkitt-Bold.ttf);
    font-style: normal;
    font-weight: bold;
}

:root{
    --textfarbe: #fff;
    --background-color: rgba(33, 34, 37, 0.9);
    --standardfarbe: #333;
    --hervorhebung: #e53;
    --trennfarbe: #666;
    --standardabstand: 1rem;
}



* {
    margin: 0;
    box-sizing: border-box;
    /*font-family: Helvetica, sans-serif;*/
    color: var(--standardfarbe);
    line-height: 1.6em;
}


body{
    background-color: #ded7d4;
/*     width: 80%;
    margin: 1.5rem auto 1.5rem auto; */
    font-family: Raleway, Helvetica, Arial, sans-serif;
}

.content {
    margin: auto;
    max-width: 1400px;
    padding-left: 2rem;
    padding-right: 2rem;
}

header, h1{
    font-family:Rokkitt, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif
}

h1, h2, h3, h4, h5, h6{
    font-weight: normal;
    margin-bottom: var(--standardabstand);
}

ul {
    margin-bottom: var(--standardabstand);
}

a {
    color: var(--hervorhebung);
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.buynow {
    display: block;
    width: 10rem;
    border: 2px RGB(190, 160, 130) solid;
    background-color: RGBA(190, 160, 130, 0.7);
    border-radius: 7px;
    position: absolute;
    bottom: 2rem;
    right: 2rem;
    color: var(--textfarbe);
    text-align:center;
    transition: background-color 1s linear, border-color 1s linear;
}

.buynow:hover {
    text-decoration: none;
    background-color: RGBA(0, 128, 0, 0.7);
    border-color: green;
}


p {
    text-align: justify;
    margin-bottom: var(--standardabstand);
}

.product {
    background-color: var(--textfarbe);
    padding: var(--standardabstand);
    margin: var(--standardabstand);
    position: relative;
}

aside ul {
    list-style-type: none;
    margin-bottom: 1.5rem;

}

/* display new HTML5 elements as block level elements: */
header, main, nav, aside, article, footer, figure, figcaption {
    display: block;
    padding: 0;
}

div.product figure {
    width: 30%;
    margin: 10px;
    margin-top: 0px;
    margin-bottom: 3rem;
}

figure > img {
    width: 100%;
    height: 100%;
}

div.product figcaption {
    font-weight: bold;
    text-align: center;
}

.left {
    float: left;
}

.right {
    float: right;
}

aside {
    padding: 1.5rem;
}

@media (min-width: 1024px) {
    aside {
        width: 24%;
        float: right;
        position: -webkit-sticky;
        position: sticky;
        top: 10rem;
    }
    
    main {
        width: 74%;
        float: left;
    }
}

footer {
    width: 100%;
    background-color: var(--background-color);
}

footer a{
    text-align: left;
    color: var(--textfarbe);
}

footer a:not(:last-child)::after{
    content: " | ";
}

#banner {
    background-image: url("../images/banner.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    height: 0;
    box-sizing: content-box;
    padding: 0 0 66% 0;
    margin-bottom: 2rem;
    position: relative;
}

#banner h1{
    color: var(--textfarbe);
    font-size: 4vw;
    padding: 0vw;
    padding-top: 1vw;
    margin: 0vw 2vw 0vw 2vw;
    text-shadow: 0.1vw 0.1vw 0.2vw var(--standardfarbe);
}

#banner p{
    color: var(--textfarbe);
    font-size: 3vw;
    padding: 0vw;
    margin: 0vw 2vw 3vw 2vw;
    text-shadow: 0.1vw 0.1vw 0.2vw var(--standardfarbe);
}

#banner a{
    color: var(--textfarbe);
    border: 2px solid;
    border-radius: 3vw;
    font-size: 2vw;
    padding: 1vw 5vw;
    margin: 0.5vw 2vw 0vw 2vw;
    text-shadow: 0.1vw 0.1vw 0.2vw var(--standardfarbe);
    background-color: rgba(0, 0, 0, 0.1);
    transition: background-color 1s ease-out;
}

#banner a:hover{
    background-color: rgba(238, 85, 51, 0.8);
}

#banner div{
    position: absolute;
    left: 0;
    bottom: 5vh;
}

header{
    background-color: var(--background-color);
    color: var(--textfarbe);
    margin-top: 0;
    position: sticky;
    display: flex;
    top: 0;
    z-index: 15;
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}

header a{
    color: var(--textfarbe);
}

header a:hover{
    text-decoration: none;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
    margin: 3rem;
}

.product_list {
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
}

.product_list li{
    flex-basis: 33.33%;
    padding: var(--standardabstand);
}

.product_list a{
    display: block;
    transition: all 0.3s linear,
}

.product_list a:hover{
    text-decoration: none;
    transform: scale(102%);
}

.product_list figcaption b{
    text-align: left;
    padding: var(--standardabstand);
    color: var(--textfarbe);
}

.product_list figcaption{
    text-align: left;
    padding: var(--standardabstand);
    background-color: var(--background-color);
    color: var(--textfarbe);
}

.product_list figcaption b::after{
    content: "";
    display: block;
}

.product_list img {
    display: block;
}

div#logo {
    padding: var(--standardabstand);
    width: 11rem;
    align-self: center;
    text-align: center;
    border-right: 2px solid var(--trennfarbe);
}

div#logo figcaption{
    color: var(--textfarbe);
}

div#logo a{
    display: block;
}

div#logo img {
    width: 50%;
}

div#menu {
    flex-grow: 1;
}

div#menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
}

div#menu ul li{
    padding: 0 var(--standardabstand);
    color: var(--textfarbe);
}

#menu nav:first-child{
    font-size: 1.2rem;
    padding: var(--standardabstand) 0;
    border-bottom: 2px solid var(--trennfarbe);
}

#menu nav:last-child {
    font-size: 1.5rem;
    text-transform: uppercase;
    padding: var(--standardabstand) 0;
}

#menu nav:first-child ul{
    justify-content: right;
}

#menu nav:last-child li:last-of-type{
    background-color: var(--hervorhebung);
    border-radius: var(--standardabstand);
    padding: 0rem var(--standardabstand);
}

#menu i{
    color: var(--textfarbe);
}