* {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
}

body {
    background-color: rgb(66, 75, 113);
    font-family: verdana;
    background-image: url(topo-bg.webp);
    min-height: 100vh; 
}

div#container {
    background-color: hsl(200 80% 99% / .5);
    width: calc(100vw - 1.5in); 
    height: calc(100vh - 1.5in); 
    margin: .75in auto;
    border-top: 8px solid rgb(84, 100, 129);
    position: relative;
}

div#c2a_buttons {
    position: absolute; 
    top: 80px; left: 80px;
}

div#c2a_buttons a {
    border: 1px solid #000;
    padding: 12px 16px;
    margin-right: 20px;
}

div#c2a_buttons a:first-child {
    background-color: #000;
    color: #FFF;
}

div#c2a_buttons a:first-child:hover {
    background-color: rgb(84, 100, 129);
    color: #000;
}

div#c2a_buttons a:last-child {
    background-color: #FFF;
    color: #000;
}

div#promo_section {
    width: 90%;
    margin: 150px auto 20px auto; 
    display: flex;
    flex-flow: row wrap;
    justify-content: center; 
    gap: 10px 80px;
}

.product_card {
    flex: 0 0 300px;
    aspect-ratio: 1/1.3;
    /*border: 4px solid transparent;*/
    transition: border 350ms ease-in-out;
    background-image: url(Samba_MN_Shoes_White_IF1953_01_standard.avif);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center 0%;
    position: relative;
    /*transition: background-size 400ms ease-in-out, border 800ms ease-in-out; */
    transition: all 350ms ease-in-out;
    z-index: 10;
}

.product_card:hover {
    /*border: 4px solid rgb(84, 100, 129);*/
    background-size: 110%;
    background-position: center -5%;
}

.product_card a {
    display: block; width: 100%; height: 100%;
}

.product_card figcaption {
    background-color: rgb(84, 100, 129);
    color: #222;
    width: 100%; height: 25%;
    position: absolute; bottom: 0px; left: 0px;
    padding: 6px;
    text-align: center;
}

p.price {
    background-color: rgb(84, 100, 129); color: #EEE;
    padding: 8px 10px;
    font-weight: bold;
    position: absolute; top: 20px; right: -20px;
    border-radius: 10px 10px 0px 10px;
    box-shadow: 8px 6px 20px #555;
}

.price::after {
    content: ""; display: block;
    width: 0px; height: 0px;
    border-width: 14px;
    border-style: solid;
    border-color: transparent rgb(84, 100, 129) transparent transparent;
    position: absolute; right: 6px; bottom: -13px;
    transform: rotate(45deg);
    z-index: 4;
}