@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap'); *{ margin: 0; padding: 0; box-sizing: border-box; font-family: 'Poppins', sans-serif; } body{ display: flex; justify-content: center; align-items: center; min-height: 100vh; background: #222; } .container{ position: relative; width: 600px; height: 600px; border: 1px solid #f5f5f5; border-radius: 50%; } .container .icon{ position: relative; width: 100%; height: 100%; left: -50%; display: flex; justify-content: center; align-items: center; cursor: pointer; } .container .icon .imgBx{ position: absolute; width: 80px; height: 80px; border-radius: 50%; transition: 0.5s; border: 1px solid #fff; box-shadow: 0 0 0 4px #222, 0 0 0 6px #fff; transform: rotate(calc(360deg/8 * var(--i))); transform-origin: 340px; z-index: 100; overflow: hidden; } .container .icon .imgBx:hover{ margin-top: -10px; } .container .icon .imgBx.active{ box-shadow: 0 0 0 4px #222, 0 0 0 10px #ff1d50; } .container .icon .imgBx img{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; transform: rotate(calc(-360deg/8 * var(--i))); transition: 0.5s; filter: grayscale(1); } .container .icon .imgBx.active img{ filter: grayscale(0); } .content{ position: absolute; inset: 0; overflow: hidden; display: flex; justify-content: center; align-items: center; } .content:before{ content: ''; position: absolute; inset: 70px; border: 4px solid transparent; border-left: 15px solid #f37673; border-right: 15px solid #fff; border-radius: 50%; animation: anim1 5s linear infinite; z-index: 1; pointer-events: none; } @keyframes anim1{ 0% { rotate: 0deg; } 100% { rotate: 360deg; } } .content:after{ content: ''; position: absolute; inset: 125px; border: 4px solid transparent; border-top: 28px solid #457b9d; border-bottom: 18px solid #f1faee; border-radius: 50%; animation: anim2 2.6s linear infinite; z-index: 1; pointer-events: none; } @keyframes anim2{ 0% { rotate: 360deg; } 100% { rotate: 0deg; } } .contentBx{ position: absolute; transform: scale(0); transition: 0.5s; opacity: 0; display: flex; justify-content: center; align-items: center; } .contentBx.active{ transform: scale(1); opacity: 1; transition-delay: 0.5s; } .contentBx .card{ position: relative; display: flex; justify-content: center; align-items: center; flex-direction: column; grid-auto-flow: 15px; } .contentBx .card .imgBx{ position: relative; width: 150px; height: 150px; border-radius: 10px; overflow: hidden; } .contentBx .card .imgBx img{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; } .contentBx .card .textBx{ display: flex; justify-content: center; align-items: center; flex-direction: column; } .contentBx .card .textBx h2{ margin-top: 10px; position: relative; font-size: 1.25rem; font-weight: 600; color: #fff; line-height: 1em; text-transform: uppercase; text-align: center; } .contentBx .card .textBx h2 span{ font-size: 0.65em; color: #fff; font-weight: 500; letter-spacing: 0.1em; } .contentBx .card .textBx .sci{ position: relative; display: flex; gap: 7px; margin-top: 10px; } .contentBx .card .textBx .sci li{ list-style: none; } .contentBx .card .textBx .sci li a{ position: relative; width: 30px; height: 30px; display: flex; justify-content: center; align-items: center; text-decoration: none; background: #444; color: #fff; text-decoration: none; border-radius: 5px; transition: 0.5s; } .contentBx .card .textBx .sci li a:hover{ background: #2196f3; }