.logo { width: 100%; } @media (--viewport-lg) and (min-height: 34rem) { .is-fixed .logo { position: fixed; width: var(--logo-size-lg); z-index: 10; } } @media (--viewport-xl) and (min-height: 34rem) { .is-fixed .logo { width: var(--logo-size-xl); } } .logo__link { display: block; margin: 0 auto; max-width: 16rem; position: relative; border-radius: 50%; transition: box-shadow var(--transition-fs) ease-out; } .logo__link:focus { box-shadow: var(--image-focus); } .logo__link:before { background-image: var(--windy-svg); background-position: center; background-repeat: no-repeat; background-size: 100%; content: ""; display: block; filter: drop-shadow(0.2rem 0.2rem 0.2rem rgba(0, 0, 0, 0.5)); padding-bottom: 100%; width: 100%; } .logo__image { bottom: 0; display: block; height: 100%; left: 0; position: absolute; right: 0; top: 0; transition: opacity var(--transition-sl) ease-out; width: 100%; }