.service-scope,
.service-method,
.service-faq {
    padding: clamp(68px, 9vw, 120px) max(28px, calc((100vw - 1160px) / 2));
}

.service-scope {
    display: grid;
    grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr);
    gap: 42px clamp(36px, 8vw, 110px);
    background: #f8f8f5;
}

.service-scope ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.service-scope li {
    padding: 17px 0;
    border-bottom: 1px solid rgba(16, 24, 40, .14);
    color: #263243;
    font-size: 14px;
    line-height: 1.6;
}

.service-scope li:before {
    content: "↗";
    margin-right: 10px;
    color: #6c8e22;
}

.service-method {
    background: #efeee8;
}

.service-method .service-section-heading {
    max-width: 850px;
}

.service-method-limit {
    padding-top: 18px;
    border-top: 1px solid rgba(16, 24, 40, .14);
}

.service-method a,
.home-faq-list a {
    color: #365c12;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.service-faq {
    display: grid;
    grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
    gap: 42px clamp(36px, 8vw, 110px);
    background: #f8f8f5;
}

.service-faq-list details,
.home-faq-list details {
    padding: 19px 0;
    border-bottom: 1px solid rgba(16, 24, 40, .16);
}

.service-faq-list summary,
.home-faq-list summary {
    color: #101828;
    cursor: pointer;
    font: 500 18px/1.4 "Space Grotesk", sans-serif;
}

.service-faq-list details p,
.home-faq-list details p {
    max-width: 680px;
    margin: 13px 0 0;
    color: #586273;
    font-size: 14px;
    line-height: 1.75;
}

.service-overview-link {
    margin: 26px 0 0;
    text-align: right;
}

.home-faq {
    padding: 90px 0;
}

.home-faq-grid {
    display: grid;
    grid-template-columns: minmax(230px, .75fr) minmax(0, 1.25fr);
    gap: 48px 9vw;
}

.home-faq-grid h2 {
    max-width: 350px;
    margin: 0;
    font: 500 clamp(2.2rem, 4vw, 3.7rem)/1.05 "Space Grotesk", sans-serif;
    letter-spacing: -.06em;
}

.services-hub {
    min-height: 70vh;
    padding: clamp(54px, 8vw, 100px) max(28px, calc((100vw - 1160px) / 2));
    background: #f8f8f5;
}

.services-hub-intro {
    max-width: 780px;
    margin-bottom: 54px;
}

.services-hub-intro h1 {
    margin: 0;
    color: #101828;
    font: 500 clamp(2.8rem, 6vw, 5.3rem)/1 var(--display, "Space Grotesk", sans-serif);
    letter-spacing: -.07em;
}

.services-hub-intro p:not(.service-eyebrow) {
    max-width: 660px;
    color: #586273;
    font-size: 16px;
    line-height: 1.75;
}

.services-hub-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid rgba(16, 24, 40, .16);
    border-left: 1px solid rgba(16, 24, 40, .16);
}

.services-hub-grid a {
    min-height: 160px;
    padding: 24px;
    border-right: 1px solid rgba(16, 24, 40, .16);
    border-bottom: 1px solid rgba(16, 24, 40, .16);
    color: #101828;
}

.services-hub-grid a > span {
    color: #718096;
    font-size: 11px;
    letter-spacing: .12em;
}

.services-hub-grid h2 {
    margin: 23px 0 8px;
    font: 500 23px/1.2 "Space Grotesk", sans-serif;
}

.services-hub-grid p {
    max-width: 480px;
    margin: 0;
    color: #586273;
    font-size: 14px;
    line-height: 1.65;
}

@media (max-width: 700px) {
    .service-scope,
    .service-faq,
    .home-faq-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .service-scope ul,
    .services-hub-grid {
        grid-template-columns: 1fr;
    }

    .service-overview-link {
        text-align: left;
    }
}
