Проблема в том, что по умолчанию Next. js использует css модуль при импорте css из компонентов, это означает, что импорт css вернет объект с классом и картой идентификаторов в uglified строки.
Вам нужно использовать селектор классов и использовать его в дочернем компоненте.
.collection {
position: relative;
overflow: hidden;
}
.collection:hover .overlay {
// -----------^
position: absolute;
opacity: .3;
}
import styles from "./Home.module.css";
<div className={`${styles.collection} card`}>
<div id="overlay" className={styles.overlay}></div>
// --------------------------------^
</div>