.erpsap-home { color: #0b1d40; background: #fff; }
.erpsap-home__wrap { width: min(calc(100% - 3rem), var(--erpsap-container-width)); margin-inline: auto; }
.erpsap-home__hero { background: radial-gradient(ellipse at 92% 15%, #dceaff 0, transparent 49%), linear-gradient(135deg, #f8faff, #eef3fa); padding: clamp(2.5rem, 5vw, 4.5rem) 0 3rem; }
.erpsap-home__eyebrow { color: #466183; font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 1rem; }
.erpsap-home h1 { max-width: 950px; color: #0b1d40; font-size: clamp(2rem, 4.7vw, 4rem); line-height: 1.1; letter-spacing: -.045em; margin: 0 0 1.5rem; }
.erpsap-home h1 span { color: #0962ed; }
.erpsap-home__intro { color: #4b5c76; max-width: 42rem; font-size: 1.125rem; line-height: 1.65; margin: 0 0 2rem; }
.erpsap-home__search { max-width: 54rem; }
.erpsap-home__search label { display: block; font-size: .9rem; font-weight: 700; margin-bottom: .6rem; }
.erpsap-home__search-row { display: flex; gap: .6rem; background: #fff; border: 1px solid #cbd9ed; border-radius: .75rem; padding: .45rem; box-shadow: 0 8px 30px #10234a08; }
.erpsap-home__search-row input { flex: 1; min-width: 0; width: 0; border: 0; background: #fff; font: inherit; font-size: 1rem; padding: .8rem; color: #0b1d40; }
.erpsap-home__search-row button { background: #0962ed; color: #fff; border: 0; border-radius: .45rem; font: inherit; font-size: .95rem; font-weight: 700; padding: .8rem 1.5rem; cursor: pointer; }
.erpsap-home__search-row button:hover { background: #074ebc; }
.erpsap-home :focus-visible { outline: 3px solid #b97800; outline-offset: 4px; }
.erpsap-home__quick { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 1rem; font-size: .85rem; }
.erpsap-home a { text-underline-offset: .2em; }
.erpsap-home__quick a, .erpsap-home__more { color: #075bd8; }
.erpsap-home__section { padding-block: 3rem; }
.erpsap-home__section-heading { margin-bottom: 1.5rem; }
.erpsap-home h2 { color: #0b1d40; font-size: clamp(1.6rem, 2.6vw, 2.2rem); line-height: 1.25; letter-spacing: -.025em; margin: 0 0 .6rem; }
.erpsap-home__section-heading > p:last-child:not(.erpsap-home__eyebrow) { color: #586780; margin: 0; font-size: 1rem; }
.erpsap-home__section-heading--inline { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.erpsap-home__more { font-size: .9rem; font-weight: 700; }
.erpsap-home__modules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.erpsap-home__module { display: flex; flex-direction: column; align-items: start; gap: .65rem; border: 1px solid #dce4f0; border-radius: .8rem; padding: 1.7rem; background: #fff; color: #0b1d40; text-decoration: none; }
.erpsap-home__module:hover { border-color: #9cbef1; background: #f8faff; }
.erpsap-home__code { font-size: .85rem; color: #075bd8; font-weight: 750; }
.erpsap-home h3 { font-size: 1.25rem; line-height: 1.3; color: #0b1d40; margin: 0; }
.erpsap-home__module p { color: #586780; font-size: .95rem; margin: 0 0 .5rem; }
.erpsap-home__module .erpsap-home__more { margin-top: auto; }
.erpsap-home__featured { background: #f6f8fc; border-block: 1px solid #e9eef6; }
.erpsap-home__table-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; }
.erpsap-home__table-link { display: grid; grid-template-columns: 6rem minmax(0, 1fr) 1rem; gap: .7rem; align-items: center; border-bottom: 1px solid #dce4f0; padding: 1.3rem 0; text-decoration: none; font-size: .95rem; color: #4d5e76; }
.erpsap-home__table-link strong { color: #075bd8; font-size: 1rem; }
.erpsap-home__table-link:hover strong { text-decoration: underline; }
.erpsap-home__features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin-top: 2rem; }
.erpsap-home__features > div { border-top: 3px solid #c9d9f1; padding-top: 1.2rem; }
.erpsap-home__features h3 { font-size: 1.1rem; margin-bottom: .7rem; }
.erpsap-home__features p { font-size: .95rem; color: #586780; margin: 0; }
.erpsap-home__recent { display: flex; flex-wrap: wrap; gap: .75rem; }
.erpsap-home__recent a { border: 1px solid #dce4f0; padding: .65rem 1.15rem; border-radius: .4rem; color: #075bd8; font-size: .95rem; font-weight: 700; text-decoration: none; }
.erpsap-home__recent a:hover { background: #edf3fc; }
.erpsap-home__review { background: #edf3fc; border-radius: .8rem; padding: 2.2rem; display: grid; grid-template-columns: 1fr 1.2fr; gap: 2.5rem; margin-bottom: 3rem; }
.erpsap-home__review h2 { font-size: 1.7rem; }
.erpsap-home__review p:not(.erpsap-home__eyebrow) { color: #4b5c76; font-size: 1rem; margin: 0 0 1rem; }
@media (max-width: 760px) {
    .erpsap-home__modules, .erpsap-home__features, .erpsap-home__review { grid-template-columns: 1fr; }
    .erpsap-home__section-heading--inline { align-items: start; flex-direction: column; }
    .erpsap-home__review { gap: 1rem; padding: 1.5rem; }
}
@media (max-width: 560px) {
    .erpsap-home__wrap { width: calc(100% - 2.5rem); }
    .erpsap-home__table-list { grid-template-columns: 1fr; }
    .erpsap-home__search-row { flex-direction: column; }
    .erpsap-home__search-row input, .erpsap-home__search-row button { width: 100%; }
    .erpsap-home__search-row input { flex: auto; }
    .erpsap-home__section { padding-block: 2rem; }
    .erpsap-home__intro { font-size: 1rem; }
}
