/* Homepage partnership: diagnosis, relevant capabilities, and commercial alignment. */
#process { padding-bottom: 4.5rem; }
.home-offer-section { padding: clamp(3.4rem, 6vw, 5.7rem) 0 3.7rem; background: #fff; border-top: 1px solid #eae7ef; }
.home-offer-section .container { max-width: 1240px; }
.home-offer-section .section-tag::before, .home-offer-section .section-tag::after { display: none; }
.home-offer-intro { max-width: 1176px; margin: 0 auto 2rem; }
.home-offer-intro .section-tag { margin-bottom: .85rem; }
.home-offer-intro h2 { max-width: 17ch; margin: 0; font-size: clamp(2.3rem, 4.4vw, 4.45rem); line-height: 1.06; letter-spacing: -.065em; }
.home-offer-intro > p { max-width: 47rem; margin: 1.1rem 0 0; color: #585361; font-size: clamp(.9rem, 1.2vw, 1.02rem); line-height: 1.7; }
.home-offer-main { max-width: 1176px; margin: 0 auto; padding: clamp(1.7rem, 3.6vw, 3.2rem); border-radius: 13px; background: #191427; color: #fff; }
.home-offer-label { display: block; color: #7458c5; font: 700 .67rem/1.35 'Sora', sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.home-offer-main .home-offer-label { color: #baa7ed; }
.home-offer-main-head { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .75fr); align-items: end; gap: 2rem; }
.home-offer-main-head h3 { max-width: 19ch; margin: .65rem 0 0; color: #fff; font-size: clamp(1.65rem, 2.7vw, 2.6rem); line-height: 1.15; letter-spacing: -.045em; }
.home-offer-main-head > p { max-width: 27rem; margin: 0; color: #c9c3d2; font-size: .9rem; line-height: 1.65; }
.home-offer-work { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(1.2rem, 4vw, 4rem); margin-top: 2rem; border-top: 1px solid #51485e; }
.home-offer-work > div { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0 .8rem; align-content: start; min-width: 0; padding: 1.2rem 0; border-bottom: 1px solid #51485e; }
.home-offer-work span { grid-row: span 2; color: #aa9cc9; font: 700 .67rem/1.4 'Sora', sans-serif; }
.home-offer-work h4 { margin: 0 0 .35rem; color: #fff; font-size: .98rem; line-height: 1.3; letter-spacing: -.025em; }
.home-offer-work p { max-width: 29rem; margin: 0; color: #bbb5c8; font-size: .79rem; line-height: 1.55; }
.home-offer-next { display: flex; justify-content: space-between; align-items: center; gap: clamp(1.5rem, 5vw, 5rem); max-width: 1176px; margin: 1rem auto 0; padding: clamp(1.45rem, 2.8vw, 2.4rem); border: 1px solid #e4dfd7; border-radius: 13px; background: #f8f6f1; }
.home-offer-next h3 { margin: .45rem 0 .55rem; font-size: clamp(1.3rem, 2.2vw, 1.85rem); letter-spacing: -.04em; }
.home-offer-next p { max-width: 45rem; margin: 0; color: #58535e; font-size: .86rem; line-height: 1.65; }
.home-offer-next .magnetic-btn { flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 900px) {
    .home-offer-main-head { grid-template-columns: 1fr; gap: .75rem; }
    .home-offer-main-head > p { max-width: 39rem; }
    .home-offer-next { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 640px) {
    #process { padding-bottom: 2.3rem; }
    .home-offer-section { padding: 2.7rem 0 2.5rem; }
    .home-offer-intro { margin-bottom: 1.4rem; }
    .home-offer-intro h2 { max-width: 19ch; font-size: clamp(2rem, 8.6vw, 2.85rem); }
    .home-offer-intro > p { margin-top: .8rem; font-size: .88rem; line-height: 1.6; }
    .home-offer-main { padding: 1.5rem 1.2rem; }
    .home-offer-main-head h3 { font-size: 1.7rem; }
    .home-offer-main-head > p { font-size: .81rem; }
    .home-offer-work { grid-template-columns: 1fr; margin-top: 1.3rem; }
    .home-offer-work > div { padding: .88rem 0; }
    .home-offer-work h4 { font-size: .88rem; }
    .home-offer-work p { font-size: .74rem; }
    .home-offer-next { gap: 1.15rem; padding: 1.35rem 1.2rem; }
    .home-offer-next h3 { font-size: 1.42rem; }
    .home-offer-next p { font-size: .81rem; }
    .home-offer-next .magnetic-btn { width: 100%; white-space: normal; }
}
