.video { background: #a3b8c7; padding-bottom: 100px; position: relative; border-radius: 50px; margin: 200px 80px 0; @include desktop-xl { margin: 200px 50px 0; } @include desktop-lg { margin: 200px 30px 0; } @include desktop { margin: 100px 30px 0; border-radius: 25px; } @include tablet { padding-bottom: 50px; margin: 70px 30px 0; } &-iframe { margin-top: -200px; position: relative; img { width: 100%; } @include desktop { width: 80%; margin: -100px auto 0; } @include tablet { width: 90%; margin: -70px auto 0; } } &-icon { position: absolute; border: 2px solid white; border-radius: 50%; background: #fff; z-index: 1; width: 90px; height: 90px; top: 50%; left: 50%; transform: translate(-50%, -50%); @include tablet { width: 70px; height: 70px; } @include mobile-xs { width: 60px; height: 60px; } i { color: red; position: absolute; text-align: center; top: 50%; left: 50%; font-size: 30px; transform: translate(-50%, -50%); } } &-iframe::before, &-iframe::after { content: ""; background: rgba($color: $white, $alpha: 0.5); border-radius: 50%; top: 50%; left: 50%; position: absolute; transform-origin: top left; animation-name: grow; animation-duration: 2s; animation-iteration-count: infinite; animation-direction: alternate; @include mobile { content: none; } } &-iframe::after { width: 140px; height: 140px; @include tablet { width: 120px; height: 120px; } @include mobile-xs { width: 100px; height: 100px; } } &-iframe::before { width: 190px; height: 190px; animation-delay: 1s; @include tablet { width: 150px; height: 150px; } @include mobile-xs { width: 120px; height: 120px; } } &-content { text-align: center; @include mobile-xs { margin-top: 50px; } h2 { margin-top: 60px; line-height: 65px; margin-bottom: 50px; @include tablet { font-size: 35px; line-height: 44px; margin: 40px 0 30px; } @include mobile { font-size: 24px; line-height: 34px; } } &-buttons { @extend .hero-content-buttons; } } } @keyframes grow { 0% { transform: scale(0.9) translate(-50%, -50%); } 100% { transform: scale(1) translate(-50%, -50%); } }