* {
    margin: 0; padding: 0; box-sizing: border-box;
}

body {
    font-family: verdana;
    background-color: #eee;
}

header {
    background-color: #fff;
}

header .promo_bar {
    background-color: hsl(37, 82%, 55%);
    min-height: 56px;
}
header nav {
    background-color: white;
    min-height: 77px;
}

section.hero {
    min-height: 450px;
    background-color: skyblue;
    background-image: url(../images/dog3.jpg);
    background-size: 120%;
    background-repeat: no-repeat;
    background-position: center left;
    position: relative;
}
.hero_text {
    color: #fff;
    font-family: impact;
    font-size: 2.5em;
    padding: 20px;
    background-color: rgba(20,20,20,.7);
    position: absolute;
    top: 10px; left: 100px;
    letter-spacing: .1em;
}

.call-to-action {
    display: block;
    background-color: hsl(37, 82%, 55%);
    width: 180px; padding: 20px 8px;
    position: absolute; bottom: 40px; left: 100px;
    text-decoration: none;
    text-align: center;
    color: #00263e;
    font-size: 16pt;
    border-radius: 8px;
    box-shadow: 2px 3px 10px rgba(10,10,10,7);
    transition: background-color 250ms linear;
}

.call-to-action:hover {
    background-color: hsl(37, 82%, 40%);
}

section.products {
    min-height: 300px;
    background-color: #eee;
    display: flex; /*make this a flex box parent*/
    justify-content: space-between;
    flex-flow: row wrap;
    gap: 5px;
    padding: 20px 100px;/* alternativly padding:20px 0 20px 0; */
}

.product_card {
    flex:  0 0 20%;
    background-color: #fff;
    padding: 4px;
    text-align: center;
    border-radius: 6px;
    box-shadow: 0 0 16px #888;
    transition: box-shadow .5s linear;
    text-decoration: none;
    color: #234;
}

.product_card:hover {
    box-shadow: 0 0 20px #555;
}

.product_card h2 {
    font-size: 10pt;
    margin-top: 40px;
    margin-bottom: 10px;
}

.product_card img {
    width: 80%;
}

.product_card p {
    font-size: 8pt;
}

.featured_story {
    margin: 40px 100px;
    min-height: 400px;
    background-color: #fff;
    display: flex; /*becomes a flex parent*/
    border-radius: 6px;
    text-decoration: none;
    color: #234;
}

.featured_story figcaption {
    flex: 0 0 30%;
}

.featured_story figcaption p:first-child {
    text-align: center;
    text-transform: uppercase;
    font-size: 8pt;
    margin: 8px;
    font-weight: bold;
}

.featured_story figcaption h2 {
    margin: 16px;
    font-size: 14pt;
    line-height: 1.4;
}

.featured_story figcaption p {
    margin: 16px;
    font-size: 10pt;
    line-height: 1.6;
}

.featured_story figure {
    background-color: pink;
    flex: 0 0 70%;
    background-image: url(../images/dog2.jpg);
    background-size: cover;
    border-radius: 0 6px 6px 0;
}

footer {
    min-height: 300px;
    background-color: #333;
    color: #eee;
}

header div.inner-container ,
nav.inner-container,
footer div.inner-container{
    margin: 0 100px;
    padding-top: 10px;
}
