@font-face {
font-family: "OpenSans";
src: url("fonts/opensans.woff2") format("woff2"),
url("fonts/opensans.woff") format("woff");
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "OpenSans";
src: url("fonts/opensansbold.woff2") format("woff2"),
url("fonts/opensansbold.woff") format("woff");
font-weight: 700;
font-style: normal;
font-display: swap;
} justify-content это свойство контейнера, а не элемента. grid-column. Либо занять всю строку и justify-self. При ширине в 1fr первый вариант, конечно, удобнее.попробуй через min-height
preserveAspectRatio="none"
Если от содержимого и содержимое абсолютом, то высота задается либо с помощью aspect-ratio, если сохраняются пропорции (впрочем тогда и vw пойдут или vw с calc) либо с помощью js.