.features-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: clamp(50px, 8vw, 120px);
    align-items: center;
    max-width: 1240px;
    min-height: 610px;
    padding: 90px 5vw 110px;
    margin: 0 auto;
}

.features-hero > div { max-width: 790px; }
.features-hero h1 { font-size: clamp(3.4rem, 6vw, 6rem); }
.features-hero > div > p:not(.eyebrow) { max-width: 680px; color: var(--muted); font-size: 1.12rem; }
.features-hero .hero-actions { margin-bottom: 0; }

.features-hero aside {
    padding: 35px;
    color: white;
    background: var(--forest);
    box-shadow: var(--shadow);
}

.features-hero aside span { color: #efc984; font-size: .74rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.features-hero aside strong { display: block; margin-top: 20px; color: white; font-family: var(--serif); font-size: 4.4rem; line-height: 1; }
.features-hero aside p { color: rgba(255, 255, 255, .72); }
.features-hero aside small { display: block; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .18); color: rgba(255, 255, 255, .76); }
.features-hero aside b { color: #efc984; }

.feature-overview { max-width: 1320px; border-top: 1px solid var(--border); }
.feature-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }

.feature-detail-grid article {
    padding: clamp(28px, 4vw, 46px);
    border: 1px solid var(--border);
    background: white;
    box-shadow: 0 8px 30px rgba(28, 50, 41, .04);
}

.feature-detail-grid article > span { color: var(--gold); font-family: var(--serif); font-size: 1.1rem; }
.feature-detail-grid h3 { margin: 28px 0 15px; font-size: 1.8rem; }
.feature-detail-grid p { color: var(--muted); }
.feature-detail-grid ul { display: grid; gap: 8px; padding: 20px 0 0; margin: 22px 0 0; border-top: 1px solid var(--border); list-style: none; }
.feature-detail-grid li::before { margin-right: 9px; color: var(--red); content: "✓"; font-weight: 700; }

.feature-mobile-callout {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 70px;
    align-items: center;
    padding: clamp(55px, 8vw, 95px);
    margin-bottom: 100px;
    color: white;
    background: var(--forest);
}

.feature-mobile-callout > div { max-width: 720px; margin-left: auto; }
.feature-mobile-callout .eyebrow { color: #efc984; }
.feature-mobile-callout p:not(.eyebrow) { color: rgba(255, 255, 255, .72); }
.feature-mobile-callout ul { display: grid; gap: 14px; padding: 0; list-style: none; }
.feature-mobile-callout li::before { margin-right: 10px; color: #efc984; content: "✓"; }

@media (max-width: 900px) {
    .features-hero { grid-template-columns: 1fr; }
    .features-hero aside { max-width: 420px; }
    .feature-mobile-callout { grid-template-columns: 1fr; gap: 30px; }
    .feature-mobile-callout > div { margin-left: 0; }
}

@media (max-width: 560px) {
    .features-hero { padding: 60px 24px 80px; }
    .features-hero h1 { font-size: clamp(2.8rem, 14vw, 4rem); }
    .feature-detail-grid { grid-template-columns: 1fr; }
    .feature-mobile-callout { padding: 55px 24px; }
}
