@mixin desktop() { @media (max-width: 600px) { @content; } } @mixin aspect-ratio($width, $height) { position: relative; &:before { display: block; content: ""; width: 100%; padding-top: ($height / $width) * 100%; } > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; } } .btn { padding: 10px 36px; color: white; background: black; width: fit-content; height: auto; border-radius: 20px; text-align: center; transition: 0.3s; &:hover { background: rgb(78, 78, 78); } } .row { flex-flow: row nowrap; margin: 0 2em; width: 100%; div { width: 50%; margin: 2em; } .square { background: #9c0000; @include aspect-ratio(1, 1); img { object-fit: cover; } } .info { display: flex; flex-direction: column; justify-content: space-between; margin: 3em; } } .featured { flex-flow: column nowrap; width: calc(100% - 4em); margin: 2em; h2 { text-align: center; margin: 1em; } .mags { display: flex; flex-flow: row nowrap; justify-content: space-around; margin: 1em; } } .banana { flex-flow: column nowrap; width: 100%; h2 { margin: 1em; } .bananagif { margin: 2em; background: #ffffa7; @include aspect-ratio(16, 9); } } .nutrition { flex-flow: column nowrap; width: 100%; align-items: flex-end; h2 { margin: 0 1em; } .table { margin: 2em; width: calc(100% - 4em); background: #6ea145; @include aspect-ratio(4, 5); } } .mission { flex-flow: column nowrap; h2 { margin: 1em; } } .instagram { flex-flow: row; width: calc(100% - 8em); margin: 4em; .image { margin: 0.5em; background: rgb(137, 137, 255); width: 30%; @include aspect-ratio(1, 1); } }