.home-page {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-synthesis: none;
}

.home-page h1,
.home-page h2,
.home-page h3,
.home-page p,
.home-page a,
.home-page span {
    font-family: inherit;
}

/* Exact tracking and weights from the former WordPress homepage. */
.home-eyebrow {
    font-weight: 400;
    letter-spacing: .3em;
}

.home-section-eyebrow {
    font-weight: 600;
    letter-spacing: .8em;
}

.home-hero h1,
.home-directions-heading h2,
.home-development h2,
.home-georobot h2,
.home-direction-card h3,
.home-development-step h3,
.home-feature-grid h3 {
    letter-spacing: 0;
}

/* Try a wider desktop canvas while keeping the existing responsive layout below 1100px. */
@media (min-width: 1101px) {
    .home-container {
        width: min(1500px, calc(100% - 48px));
    }

    .site-header__inner {
        width: min(1500px, calc(100% - 48px));
    }

    .site-footer__main,
    .site-footer__bottom {
        width: min(1500px, calc(100% - 80px));
    }
}

/* Keep the directions heading on one line on wide screens, as on WordPress. */
.home-directions-heading h2 {
    max-width: 1100px;
}

/* WordPress direction cards use dark body copy and filled blue action buttons. */
.home-direction-card p {
    color: var(--home-text);
    margin-bottom: 28px;
}

.home-card-link,
.home-direction-card p + .home-card-link {
    margin-top: auto;
    border-color: var(--home-blue);
    background: var(--home-blue);
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(7, 93, 206, .12);
}

.home-card-link:hover {
    border-color: var(--home-blue-hover);
    background: var(--home-blue-hover);
    color: #ffffff;
}

/* Match the compact GeoRobot presentation from the former WordPress homepage. */
.home-georobot__grid {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 56px;
    padding: 40px 0 30px;
}

.home-georobot__visual {
    padding: 0;
}

.home-georobot__visual img {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
}

.home-georobot__content {
    min-width: 0;
}

.home-georobot h2 {
    max-width: 650px;
}

.home-georobot__content > p:not(.home-section-eyebrow) {
    max-width: 650px;
    margin-top: 18px;
}

.home-georobot__button {
    margin-top: 18px;
}

/* The feature row on WordPress has no vertical separators or inner side padding. */
.home-feature-grid article,
.home-feature-grid article:first-child,
.home-feature-grid article:last-child {
    padding-left: 0;
    padding-right: 0;
    border-left: 0;
}

@media (max-width: 820px) {
    .home-section-eyebrow {
        letter-spacing: .45em;
    }

    .home-georobot__grid {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 60px 20px;
    }

    .home-georobot__visual img {
        max-width: 620px;
    }
}

@media (max-width: 600px) {
    .home-eyebrow,
    .home-section-eyebrow {
        letter-spacing: .22em;
    }

    .home-section-eyebrow {
        letter-spacing: .32em;
    }

    .home-directions-heading h2 {
        max-width: none;
    }

    .home-direction-card p {
        margin-bottom: 22px;
    }

    .home-georobot__grid {
        width: 100%;
        padding: 52px 24px;
    }

    .home-feature-grid article,
    .home-feature-grid article:first-child,
    .home-feature-grid article:nth-child(3),
    .home-feature-grid article:last-child {
        padding: 24px 0;
        border-bottom: 1px solid #dde3ea;
    }

    .home-feature-grid article:first-child {
        padding-top: 0;
    }

    .home-feature-grid article:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }
}
