.prefooter { padding: 0;  font-size: .9rem;}
.prefooter .usps { 
    padding: 4rem 1rem; 
    & h2 { font-size: 1.25rem; text-align: center; margin-bottom: 2rem; font-weight: 700; }
    & ul {  display: grid; grid-auto-flow: column; grid-gap: 2rem; list-style: none;  overflow: auto; max-width: 100vw; scroll-snap-type: x mandatory; margin-inline: -1rem;   -ms-overflow-style: none; scrollbar-width: none;  padding-inline: 1rem;}
    & ul::-webkit-scrollbar { display: none; }
    & ul li { display: flex; flex-direction: column; align-items: center; text-align: center; min-width: 13rem; max-width: 13rem; margin-inline: auto; line-height: 1.4; scroll-snap-align: center;}
    & ul li h3 { font-size: inherit; font-weight: 700;  margin-top: 1.2rem; padding-top: 0;  }
    & ul li img { max-width: 2.5rem;  order: -1;}    
}

.prefooter .newsletter { position: relative;  isolation: isolate; padding: 2rem 1rem; display: flex; align-items: center; gap: 10%; width: 100%; flex-wrap: wrap; 
    &::before { position: absolute; left: 50%; max-width: 100vw; right: 50%; width: 100vw; margin-inline: -50vw;  content: ""; top: 0; background: #edf7fa; height: 100%; z-index: -1; }
    h2 { margin-bottom: 0; padding: 0 0 .2em;  font-size: inherit;}
    p { padding: 0; }
    form { width: 100%; max-width: 35rem;}
    input { padding: .5em 1em;  border-radius: .5em; border: none; grid-column: -1/1; }
}  
body:has(.prefooter .newsletter) #footer { margin-top: 1.5rem;}