/* Centered public product pages */
.process-hero,
.features-hero { padding-top: 84px; padding-bottom: 78px; text-align: center; }
.process-hero .landing-container,
.features-hero .landing-container { max-width: var(--rl-shell); }
.process-hero .landing-copy,
.features-hero .landing-copy { max-width: 760px; margin-inline: auto; color: var(--robo-muted); }
.process-hero__secondary,
.features-hero__secondary { border-color: var(--robo-blue) !important; color: var(--robo-blue) !important; }

.process-overview-grid,
.features-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1040px;
    margin: 42px auto 0;
    border: 1px solid var(--robo-line);
}
.process-overview-grid article,
.features-summary-grid article {
    min-height: 210px;
    padding: 28px;
    border-right: 1px solid var(--robo-line);
    border-bottom: 1px solid var(--robo-line);
    text-align: left;
}
.process-overview-grid article:nth-child(3n),
.features-summary-grid article:nth-child(3n) { border-right: 0; }

.process-step-grid,
.feature-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 18px;
    max-width: 1040px;
    margin: 42px auto 0;
}
.feature-detail-grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.process-step-card,
.feature-detail-card {
    min-height: 0;
    padding: 28px;
    background: #fff;
    border: 1px solid var(--robo-line);
    border-top: 4px solid var(--robo-blue);
    text-align: left;
}
.process-step-card--payoff { grid-column: 1 / -1; }
.process-step-card__head { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--robo-line); }
.process-step-card__head span,
.feature-detail-card__heading span { color: var(--robo-red); font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.process-step-card__head strong { color: var(--robo-muted); font-size: 12px; font-weight: 600; }
.process-step-card h3,
.feature-detail-card h3 { margin: 24px 0 0; color: var(--robo-navy); font-size: 23px; font-weight: 500; }
.process-step-card p,
.process-step-card li,
.feature-detail-card p,
.feature-detail-card li { color: var(--robo-muted); font-size: 14px; line-height: 1.65; }
.process-step-card ul,
.feature-detail-card ul { margin: 18px 0 0; padding-left: 18px; }

.process-kicker-light,
.features-kicker-light { color: #9cc1eb; }

.process-lifecycle-track,
.features-lifecycle-track {
    display: grid;
    grid-template-columns: repeat(7,1fr);
    max-width: 1040px;
    margin: 40px auto 0;
    border: 1px solid rgba(255,255,255,.18);
}
.features-lifecycle-track { border-color: var(--robo-line); }
.process-lifecycle-track span,
.features-lifecycle-track span {
    position: relative;
    min-height: 78px;
    display: grid;
    place-items: center;
    padding: 16px 10px;
    border-right: 1px solid rgba(255,255,255,.14);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
}
.features-lifecycle-track span { background: #fff; border-right-color: var(--robo-line); color: var(--robo-navy); }
.process-lifecycle-track span:last-child,
.features-lifecycle-track span:last-child { border-right: 0; }

.process-connected-grid,
.features-servicing-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    max-width: 1040px;
    margin: 34px auto 0;
    border: 1px solid rgba(255,255,255,.16);
}
.features-servicing-grid { grid-template-columns: repeat(4,1fr); }
.process-connected-grid article,
.features-servicing-grid article { min-height: 190px; padding: 26px; border-right: 1px solid rgba(255,255,255,.14); text-align: left; }
.process-connected-grid h3,
.features-servicing-grid h3 { margin: 0; color: #fff; font-size: 19px; font-weight: 500; }
.process-connected-grid p,
.features-servicing-grid p { margin: 12px 0 0; color: rgba(255,255,255,.68); font-size: 14px; line-height: 1.64; }

.process-visibility-list,
.features-governance-list,
.features-payment-panel,
.features-report-grid,
.features-portal-panel {
    width: min(820px,100%);
    margin-inline: auto;
}
.process-visibility-list,
.features-governance-list { border-top: 1px solid var(--robo-line); }
.process-visibility-list span,
.features-governance-list span { display: grid; grid-template-columns: 175px 1fr; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--robo-line); text-align: left; }
.process-visibility-list strong,
.features-governance-list strong { color: var(--robo-navy); font-size: 14px; }
.process-visibility-list small,
.features-governance-list small { color: var(--robo-muted); font-size: 13px; line-height: 1.55; }

.process-payment-flow {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    max-width: 920px;
    margin: 40px auto 0;
    border: 1px solid var(--robo-line);
}
.process-payment-flow span { min-height: 120px; padding: 24px 20px; border-right: 1px solid var(--robo-line); background: #fff; color: var(--robo-navy); font-size: 14px; font-weight: 600; text-align: left; }
.process-payment-flow span:last-child { border-right: 0; }
.process-payment-flow b { display: block; margin-bottom: 17px; color: var(--robo-red); font-size: 11px; letter-spacing: .1em; }

.features-payment-panel { padding: 10px 30px; background: var(--robo-navy); color: #fff; }
.features-payment-panel div { display: grid; grid-template-columns: 170px 1fr; gap: 20px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.15); text-align: left; }
.features-payment-panel div:last-child { border-bottom: 0; }
.features-payment-panel strong { font-size: 14px; }
.features-payment-panel span { color: rgba(255,255,255,.68); font-size: 13px; line-height: 1.55; }

.features-report-grid { display: grid; grid-template-columns: repeat(2,1fr); border: 1px solid rgba(255,255,255,.16); }
.features-report-grid span { padding: 20px; border-right: 1px solid rgba(255,255,255,.12); border-bottom: 1px solid rgba(255,255,255,.12); color: #fff; font-size: 14px; font-weight: 600; text-align: left; }

.features-portal-panel { padding: 30px; background: var(--robo-soft-blue); border-left: 4px solid var(--robo-blue); text-align: left; }
.features-portal-panel h3 { margin: 0; color: var(--robo-navy); font-size: 23px; font-weight: 500; }
.features-portal-panel p,
.features-portal-panel li { color: var(--robo-muted); font-size: 14px; line-height: 1.64; }

.process-borrower-copy { max-width: 760px; margin: 0 auto; color: var(--robo-muted); font-size: 16px; line-height: 1.72; text-align: center; }
.process-borrower-copy + .process-borrower-copy { margin-top: 16px; }

@media (max-width: 991.98px) {
    .process-overview-grid,
    .features-summary-grid,
    .process-connected-grid,
    .features-servicing-grid,
    .feature-detail-grid--three { grid-template-columns: repeat(2,1fr); }
    .process-overview-grid article:nth-child(3n),
    .features-summary-grid article:nth-child(3n) { border-right: 1px solid var(--robo-line); }
    .process-overview-grid article:nth-child(2n),
    .features-summary-grid article:nth-child(2n) { border-right: 0; }
    .process-lifecycle-track,
    .features-lifecycle-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; overscroll-behavior-x: contain; }
    .process-lifecycle-track span,
    .features-lifecycle-track span { flex: 0 0 150px; scroll-snap-align: start; }
}

@media (max-width: 767.98px) {
    .process-hero,
    .features-hero { padding-top: 58px; padding-bottom: 54px; }
    .process-overview-grid,
    .features-summary-grid,
    .process-step-grid,
    .feature-detail-grid,
    .feature-detail-grid--three,
    .process-connected-grid,
    .features-servicing-grid,
    .features-report-grid { grid-template-columns: 1fr; }
    .process-step-card--payoff { grid-column: auto; }
    .process-overview-grid article,
    .features-summary-grid article { min-height: 0; border-right: 0 !important; }
    .process-step-card,
    .feature-detail-card { padding: 24px 20px; }
    .process-connected-grid article,
    .features-servicing-grid article { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
    .process-visibility-list span,
    .features-governance-list span,
    .features-payment-panel div { grid-template-columns: 1fr; gap: 6px; }
    .process-payment-flow { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; overscroll-behavior-x: contain; }
    .process-payment-flow span { flex: 0 0 min(78vw,250px); scroll-snap-align: start; }
    .features-payment-panel { padding: 8px 22px; }
}

@media (hover: none), (pointer: coarse) {
    .process-hero__secondary:hover,
    .features-hero__secondary:hover { background: transparent !important; color: var(--robo-blue) !important; }
}
