$cloud_width: 200px; $top-height: 70vh; $top-height-phone: 64vh; @import 'fonts'; * { box-sizing: border-box; } body { margin: 0; padding: 0; overflow-x: hidden; @include body-font; .clouds { z-index: 50; position: fixed; width: $cloud_width; animation-name: move_right; animation-direction: alternate; animation-iteration-count: infinite; animation-timing-function: linear; } #cloud1 { top: $cloud_width / 466 * 70; // 1 cloud worth of gap left: 0; animation-duration: 17s; } #cloud2 { top: $cloud_width / 466 * 70 * 4; // 4 clouds worth of gap left: 0; animation-delay: -2s; animation-duration: 15s; transform: rotateY(180deg); } .top_bg { background-image: linear-gradient(#24d3ff, #aaeeff); height: $top-height; width: 100vw; position: fixed; } .bottom_bg { background-image: linear-gradient(#26a4c4, #afdde9); height: 100vh - $top-height; width: 100vw; position: fixed; top: $top-height; } .top { min-height: $top-height; display: flex; align-items: end; .wrapper { min-height: $top-height; align-items: flex-end; padding-bottom: 2em; .player { margin: auto; width: 80%; .plyr { border-radius: 1em; border-color: #000; border-width: 4px; border-style: solid; border-radius: 2em; } } .shownotes { padding: 2em 1em 1em 1em; margin: auto; width: 80%; } ul.archives { list-style-type: none; width: 100%; padding: 0; text-align: center; li { a { text-decoration: none; color: #000; transition-duration: 0.2s; } a:hover, a:active { transition-duration: 0.2s; background-color: #000; color: #FFF; padding: 0.3em; border-radius: 1.6em; } margin: 0.5em 1em; } } .subscribe { display: flex; width: 600px; justify-content: space-between; flex-wrap: wrap; margin: auto; a { color: #000; font-size: 100px; text-align: center; padding: 50px 50px; transition-duration: 0.2em; text-decoration: none; } a:hover, a:active { font-size: 0; text-decoration: none; transition-duration: 0.2em; background-color: rgba(0, 0, 0, 0.25); border-radius: 30px; } a:hover::after { transition-duration: 0.2em; content: attr(x-text); position: relative; top: 50px; font-size: 1.1rem; text-decoration: bold; } } } } .bottom { min-height: 95vh - $top-height; margin-bottom: 5vh; .wrapper { min-height: 95vh - $top-height; align-items: center; justify-content: space-between; flex-direction: column; padding-top: 2em; height: 100%; .content { display: flex; width: 100%; justify-content: space-evenly; .button { font-size: 1.5em; color: #000; padding: 0.5em; border-color: #000; border-width: 3px; border-style: solid; border-radius: 1.5em; text-decoration: none; transition-duration: 0.4s; } .button:hover, .button:active { transition-duration: 0.4s; background-color: #000; color: #FFF; } } footer { margin-top: 1em; padding: 0 1em; text-align: center; color: #292929; a { color: #292929; padding: 0.3em; border-radius: 1.6em; transition-duration: 0.2s; } a:hover { color: #FFF; background-color: #000; text-decoration: none; transition-duration: 0.2s; } } } } .wrapper { position: relative; width: 100vw; box-sizing: border-box; z-index: 100; display: flex; justify-content: center; .content { box-sizing: border-box; max-width: 800px; width: 80%; } } } h1 { @include title-font; font-size: 4em; text-align: center; a { color: #000; text-decoration: none; } } @media (max-width: 800px) { body { .top { .wrapper { .subscribe { width: 400px; } } } } } @media (max-width: 600px) { body { .top_bg { height: $top-height-phone; } .bottom_bg { height: 100vh - $top-height-phone; top: $top-height-phone; } .top { min-height: $top-height-phone; .wrapper { min-height: $top-height-phone; .player { width: 100%; } .shownotes { width: 90%; padding: 2em 0 1em 0; } } } .bottom { min-height: 95vh - $top-height-phone; .wrapper { min-height: 95vh - $top-height-phone; .content { .button { font-size: 1em; padding: 0.5em; } } } } } h1 { font-size: 3em; } } @media (max-width: 480px) { body { .top { .wrapper { .subscribe { width: 200px; } } } } } @keyframes move_right { from {left: 0} to {left: calc(100vw - #{$cloud_width})} } @keyframes move_left { from {right: 0} to {right: calc(100vw - #{$cloud_width})} }