.home-hero {
    display: grid;
    grid-template-columns: .92fr 1.08fr;
    gap: 0;
    margin-top: 18px;
    overflow: hidden;
    border: 1px solid #a8a9a3;
    border-top: 5px solid var(--red);
    background: #fff;
}

.home-hero .hero-media {
    min-height: 430px;
    border: 0;
    border-right: 1px solid #b8b9b3;
    border-radius: 0;
}

.home-hero .hero-photo {
    min-height: 430px;
    object-fit: cover;
}

.hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 34px 34px 30px;
    background: linear-gradient(#fff, #f4f4f0);
}

.hero-copy h1 {
    max-width: 620px;
}

.home-hero .hero-copy > p {
    max-width: 630px;
    margin: 16px 0 0;
    color: #53544f;
    font-size: 15px;
}

.hero-actions {
    margin-top: 20px;
}

.hero-info-box {
    display: grid;
    gap: 0;
    margin-top: 20px;
    border: 1px solid #c6c6bf;
    background: #fff;
    color: #555650;
    font: 11px/1.45 Verdana, Arial, sans-serif;
}

.hero-info-box div {
    padding: 9px 10px;
    border-bottom: 1px solid #ddddD7;
}

.hero-info-box div:last-child {
    border-bottom: 0;
}

.home-section {
    margin-top: 22px;
    padding: 20px;
    border: 1px solid #c5c6c0;
    background: #fff;
}

.section-title-bar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
    padding-bottom: 9px;
    border-bottom: 3px solid var(--navy);
}

.section-title-bar span {
    display: block;
    margin-bottom: 3px;
    color: var(--red-dark);
    font: 700 10px/1.2 Verdana, Arial, sans-serif;
    letter-spacing: .08em;
}

.section-title-bar h2 {
    font-size: 26px;
}

.section-title-bar > a {
    font: 700 11px/1.3 Verdana, Arial, sans-serif;
}

.product-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.product-card {
    overflow: hidden;
    border: 1px solid #b8b9b3;
    border-radius: 2px;
    background: #fff;
    color: inherit;
    text-decoration: none;
}

.product-card:hover,
.product-card:focus {
    border-color: #73746f;
    color: inherit;
}

.product-card-media {
    height: 188px;
    overflow: hidden;
    border-bottom: 1px solid #b8b9b3;
    background: #eee;
}

.product-card-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-card-copy {
    padding: 13px;
}

.product-card-copy h3 {
    font: 700 15px/1.25 Verdana, Arial, sans-serif;
}

.product-card-copy p {
    min-height: 62px;
    margin: 7px 0 10px;
    color: #5d5d58;
    font-size: 12px;
    line-height: 1.48;
}

.product-card-copy span {
    color: var(--red-dark);
    font: 700 10px/1.3 Verdana, Arial, sans-serif;
}

.manufacturing-panel {
    display: grid;
    grid-template-columns: 285px 1fr;
    gap: 18px;
    margin-top: 22px;
    padding: 20px;
    border: 1px solid #9fa09a;
    border-top: 5px solid var(--navy);
    background: #eeeFec;
}

.manufacturing-copy {
    padding: 4px 5px 0 0;
}

.manufacturing-copy h2 {
    font-size: 27px;
}

.manufacturing-copy p {
    color: #575852;
    font-size: 13px;
}

.manufacturing-photo-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.manufacturing-photo-grid figure {
    margin: 0;
    overflow: hidden;
    border: 1px solid #9c9d97;
    background: #fff;
}

.manufacturing-photo-grid img {
    width: 100%;
    height: 190px;
    object-fit: cover;
}

.manufacturing-photo-grid figcaption {
    padding: 6px 8px;
    border-top: 1px solid #c2c3bd;
    background: #fff;
    color: #5e5e58;
    font: 10px/1.3 Verdana, Arial, sans-serif;
}

.company-points {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: 22px;
    border: 1px solid #17264b;
    background: #30446d;
}

.company-point {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 11px;
    padding: 17px;
    background: var(--navy);
    color: #fff;
}

.company-point > span {
    color: #d2676a;
    font: 700 23px/1 Georgia, "Times New Roman", serif;
}

.company-point strong {
    display: block;
    margin-bottom: 4px;
    color: #fff;
    font: 700 13px/1.25 Verdana, Arial, sans-serif;
}

.company-point p {
    margin: 0;
    color: #cbd0db;
    font-size: 11px;
    line-height: 1.45;
}

.dealer-home-panel {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 0;
    margin-top: 22px;
    overflow: hidden;
    border: 1px solid #a8a9a3;
    background: #fff;
}

.dealer-home-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 26px;
    background: #f5f5f1;
}

.dealer-home-copy p {
    color: #575852;
    font-size: 13px;
}

.dealer-home-copy .button {
    align-self: flex-start;
}

.dealer-home-photo {
    margin: 0;
    border: 0;
    border-left: 1px solid #aaa;
    border-radius: 0;
}

.dealer-home-photo img {
    width: 100%;
    height: 320px;
    object-fit: cover;
}

.resources-section {
    margin-bottom: 0;
}

.resource-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.resource-grid a {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    padding: 14px;
    border: 1px solid #c2c3bd;
    background: #fafaf7;
    color: inherit;
    text-decoration: none;
}

.resource-grid a:hover,
.resource-grid a:focus {
    background: #eeeeea;
    color: inherit;
}

.resource-grid b {
    color: var(--red-dark);
    font: 700 20px/1 Georgia, "Times New Roman", serif;
}

.resource-grid strong,
.resource-grid span {
    display: block;
}

.resource-grid strong {
    margin-bottom: 3px;
    color: var(--navy-dark);
    font: 700 13px/1.25 Verdana, Arial, sans-serif;
}

.resource-grid span {
    color: #60605a;
    font-size: 11px;
    line-height: 1.45;
}

.home-company-strip {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 24px;
    align-items: center;
    margin-top: 22px;
    padding: 18px;
    border: 1px solid #b5b6b0;
    border-top: 4px solid var(--red);
    background: #fff;
}

.home-company-strip figure {
    margin: 0;
    overflow: hidden;
    border: 1px solid #aaa;
}

.home-company-strip img {
    width: 100%;
    height: 230px;
    object-fit: cover;
}

.home-company-strip p {
    color: #585953;
    font-size: 13px;
}

.home-company-links {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.home-company-links a {
    font: 700 11px/1.3 Verdana, Arial, sans-serif;
}

@media (max-width: 900px) {
    .home-hero {
        grid-template-columns: 1fr;
    }

    .home-hero .hero-media {
        min-height: 300px;
        border-right: 0;
        border-bottom: 1px solid #b8b9b3;
    }

    .home-hero .hero-photo {
        min-height: 300px;
        max-height: 370px;
    }

    .product-card-grid {
        grid-template-columns: 1fr 1fr;
    }

    .manufacturing-panel {
        grid-template-columns: 1fr;
    }

    .dealer-home-panel {
        grid-template-columns: 1fr;
    }

    .dealer-home-photo {
        border-left: 0;
        border-top: 1px solid #aaa;
    }

    .home-company-strip {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .hero-copy {
        padding: 22px 18px;
    }

    .product-card-grid,
    .company-points,
    .resource-grid {
        grid-template-columns: 1fr;
    }

    .manufacturing-photo-grid {
        grid-template-columns: 1fr;
    }

    .manufacturing-photo-grid img {
        height: auto;
    }

    .section-title-bar {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .product-card-copy p {
        min-height: 0;
    }

    .product-card-media {
        height: 220px;
    }

    .dealer-home-photo img {
        height: 240px;
    }

    .home-company-strip img {
        height: auto;
    }
}
