*{
    margin: 0; padding: 0%; border: 0;
    box-sizing: border-box;
     
}


body{
    background-color: rgb(41, 44, 49);
    background-image: url(/images/bg-topographic-blur2.jpg);
    font-family: Macondo;
}

div#container{
    background-color: hsl(200 80% 98% / .8);
    width: calc(100vw - 1.5in);
    height: calc(100vh - 1.5in);
    margin: .75in auto; /* centering a block */
    border-top: 8px solid rgb(100, 110, 122);
    position: relative;
}

div#c2a_buttons{
    position: absolute; 
    top: 80px; left: 80px;
}

div#c2a_buttons a {
    border: 4px solid #000;
    padding: 12px 16px;
    margin-right: 20px;
}

div#c2a_buttons a:first-child {
    background-color: black;
    color: #FFF;
}

div#c2a_buttons a:first-child:hover {
    background-color: rgb(100, 110, 122);
    color: #FFF;
}


div#c2a_buttons a:last-child {
    background-color: rgb(255, 255, 255);
    color: black;
}

div#promo_section {
    width: 90%;
    margin: 150px auto;
    display: flex; /* makes flexbox parent */
    flex-flow: row wrap; /* nice for phone display */
    justify-content: center;
    gap: 10px 80px;

}


figure.product_card {

    flex: 0 0 300px;
    aspect-ratio: 1/1.3;
    border: 4px solid transparent;
    background-image: url(/images/grimesshirt.webp);
   
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center 0%;
    position: relative;
    transition: all 400ms ease-in-out;
}

figure.product_card:hover{
    border: 4px solid rgb(100, 110, 122);
    background-size: 110%;
    background-position: center -15%;
}

figure.product_card a{
    display: block; width: 100%; height: 100%;
}

figure.product_card figcaption {
    background-color: rgb(0, 0, 0);
    color: rgb(255, 255, 255);
    width: 100%; height: 25%;
    position: absolute; bottom: 0px; left: 0px;
    padding: 6px;
    text-align: center;
}