body { display: grid; grid-gap: 20px; grid-template-areas: "header" "main" "footer"; height: 100vh; grid-template-rows: auto 1fr auto; margin-left: 1rem; margin-right: 1rem; } .home-link { font-size: 1.5rem; } img { width: 100%; height: auto; } a:link { color: var(--link); } a:visited { color: var(--link-visited); } header { display: grid; grid-gap: 1px; grid-template-areas: "home" "form" "playlist"; grid-area: header; } .home { grid-area: home; margin-left: auto; margin-right: auto; margin-bottom: 1rem; margin-top: 1rem; } .main { grid-area: main; display: grid; grid-row-gap: 1rem; } .result-info { justify-self: center; } .countries-container { display: grid; grid-row-gap: 0.5rem; } .length { position: absolute; background-color: rgba(35, 35, 35, 0.75); color: #fff; border-radius: 2px; padding: 2px; font-size: 16px; right: 0.25em; bottom: -0.75em; } .item-box { display: grid; grid-template-columns: 1fr; grid-template-rows: 1fr; grid-template-areas: "item-country"; } .item-country { grid-area: item-country; display: grid; grid-template-columns: auto; grid-template-rows: repeat(4, auto); grid-row-gap: 0.4rem; grid-template-areas: "thumbnail-box" "info-box"; align-items: center; font-size: 0.7rem; } .item-country a { text-decoration: none; cursor: pointer; } .item-country.channel-item .thumbnail.channel { display: flex; justify-content: center; align-items: center; padding: 0px; text-align: center; } .item-country.channel-item .thumbnail-img.channel { width: 56.25%; position: relative; } .thumbnail-box { grid-area: thumbnail-box; position: relative; } .thumbnail { padding: 28.125%; position: relative; box-sizing: border-box; } .thumbnail-img { position: absolute; width: 100%; height: 100%; left: 0; top: 0; object-fit: cover; background-color: var(--s-background); } .title { font-size: 0.8rem; margin: 0px; font-weight: normal; overflow: hidden; text-overflow: ellipsis; } .info-box address { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .thumbnail-info { background-color: var(--time-background); color: #fff; padding: 2px 5px; text-transform: uppercase; font-weight: 700; font-size: 12px; position: absolute; right: 0; bottom: .2rem; } .item-checkbox { grid-area: item-checkbox; justify-self: start; align-self: center; min-width: 30px; margin: 0px; } .stats { display: flex; justify-content: space-between; } .horizontal-stats > li { display: inline; } .horizontal-stats > li:first-child::after { content: " | "; } .footer { grid-area: footer; display: grid; grid-template-columns: auto; align-items: center; justify-content: center; margin: auto; text-align: center; } .footer > p { text-align: center; } @media (min-width: 480px) { .item-country { font-size: 0.85rem; } .info-box { grid-gap: 2px; } .title { font-size: 1rem; } } @media (min-width: 600px) { .countries-container { display: grid; grid-row-gap: 0.5rem; grid-template-columns: 1fr 1fr; } } @media (min-width: 992px) { body { display: grid; grid-template-columns: 0.3fr 2fr 1fr 0.3fr; grid-template-rows: auto 1fr auto; grid-template-areas: "header header header header" "main main main main" "footer footer footer footer"; } .countries-container { display: grid; grid-template-columns: repeat(4, 1fr); grid-row-gap: 1rem; grid-column-gap: 1rem; } .footer { display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 2rem; align-items: center; justify-content: center; text-align: center; margin-top: 1rem; margin-bottom: 1rem; } }