.home-hero { display: block; text-decoration: none; }
.home-hero:hover { color: inherit; }
.home-hero__photo {
    height: clamp(420px, 62vw, 860px);
    align-items: flex-start;
    justify-content: flex-end;
    padding: 20px var(--gutter);
}
.home-hero__caption {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 8px 24px;
    padding-block: 14px;
    border-bottom: 1px solid var(--ink);
    font-size: 14px;
}
.home-hero__name { font-weight: 700; }
.home-hero:hover .home-hero__name { text-decoration: underline; }

.home-intro {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 32px;
    padding-block: 64px 96px;
}
.home-intro__title {
    flex: 1 1 520px;
    max-width: 900px;
    font-size: clamp(26px, 2.6vw, 38px);
    font-weight: 500;
    line-height: 1.2;
}
.home-intro__facts { flex: 0 1 300px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.home-intro__link { margin-top: 10px; font-weight: 700; }

.home-projects { padding-bottom: 120px; }
.home-projects__head {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--ink);
}
.home-projects__title {
    font-size: clamp(48px, 7vw, 112px);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.03em;
}
.home-projects__title .display__count { font-size: 0.35em; }
.home-projects__all { display: inline-block; margin-top: 24px; font-weight: 700; }

.home-news { padding-bottom: 120px; }
.home-news__head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 24px; font-size: 15px; }
.home-news__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 32px; }
.home-news .card__img { aspect-ratio: 1 / 1; }
.home-news .card__title { font-size: 18px; line-height: 1.3; }

@media (max-width: 760px) {
    .home-hero__photo { height: 460px; padding: 12px var(--gutter); font-size: 12px; }
    .home-hero__caption { flex-direction: column; gap: 2px; padding-block: 12px; }
    .home-hero__meta { color: var(--muted); }
    .home-intro { flex-direction: column; gap: 20px; padding-block: 40px 56px; }
    .home-intro__title { flex: none; font-size: 24px; line-height: 1.25; }
    .home-intro__facts { flex: none; flex-direction: row; flex-wrap: wrap; gap: 4px 20px; font-size: 14px; color: var(--muted); }
    .home-intro__link { flex-basis: 100%; color: var(--ink); font-size: 15px; }
    .home-projects { padding-bottom: 64px; }
    .home-projects__head { display: block; padding-bottom: 0; }
    .home-projects__title { margin-bottom: 12px; font-size: 56px; }
    .home-projects__title .display__count { font-size: 18px; }
    .home-projects .project-rows { --cols: 72px minmax(0, 1fr); }
    .home-projects .project-row__name { font-size: 18px; line-height: 1.2; }
    .home-projects .project-row__place { font-size: 13px; }
    .home-projects .project-row--head { display: none; }
    .home-projects__all { display: inline-flex; align-items: center; min-height: 44px; margin-top: 12px; font-size: 15px; }
    .home-news { padding-bottom: 56px; }
    .home-news__head { margin-bottom: 16px; }
    .home-news__grid { gap: 28px; }
    .home-news .card { gap: 8px; }
    .home-news .card__img { aspect-ratio: 3 / 2; }
    .home-news .card__title { font-size: 19px; }
    .home-news .card:nth-child(n + 3) { display: none; }
}
