.feature { position: relative; padding: 1.5rem 1.75rem; color: #000; background-color: white; overflow: hidden; border-radius: 1.78em; } .feature.large { grid-column: span 2; } .feature.centered { text-align: center; } .feature h3 { position: relative; font-size: 34px; font-size: min(34px, max(4vw, 24px)); font-weight: 600; line-height: 1.25; letter-spacing: -0.02rem; z-index: 2; } :global(.dark) .feature:not(.light-only) { color: #fff; background-color: #202020; } .feature { box-shadow: 0 8px 16px rgb(0 0 0 / 8%), 0 1px 2px rgb(0 0 0 / 4%), 0 0 0 1px rgb(0 0 0 / 3%); transition: box-shadow 0.3s ease; } :global(.dark) .feature { box-shadow: 0 0 0 1px rgb(82 82 82 / 60%); } .feature .link { position: absolute; right: 1em; bottom: 1em; z-index: 2; width: 2.5em; height: 2.5em; background-color: rgb(0 0 0 / 39%); backdrop-filter: blur(10px); border-radius: 50%; display: flex; justify-content: center; align-items: center; color: rgba(255, 255, 255, 0.9); box-shadow: 0 0 0 2px rgb(154 154 154 / 56%), 0 0 30px rgb(0 0 0 / 10%); transition: all 0.2s ease; -webkit-user-drag: none; } @media (hover: hover) { .feature .link { opacity: 0; } .feature:hover .link { opacity: 1; } .feature .link:hover { transform: scale(1.05); color: rgba(255, 255, 255, 1); background-color: rgba(64, 64, 64, 0.39); box-shadow: 0 0 0 2px rgba(220, 220, 220, 0.56), 0 0 30px rgb(0 0 0 / 10%); } .feature .link:active { transform: scale(1); color: rgba(255, 255, 255, 0.8); background-color: rgba(22, 22, 22, 0.39); box-shadow: 0 0 0 2px rgba(178, 178, 178, 0.56), 0 0 30px rgb(0 0 0 / 10%); } } .features { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 2em; font-feature-settings: initial; } .feature :global(.show-on-mobile) { display: none; } @media screen and (max-width: 1024px) { .feature { max-width: 80vw; width: 100%; } .feature.large { grid-column: span 1; } .features { grid-template-columns: 1fr; grid-gap: 3em; justify-items: center; } .feature h3 { font-size: 28px; font-size: min(28px, max(4vw, 22px)); text-align: center; } } @media screen and (max-width: 640px) { .feature { max-width: 460px; width: 100%; } .feature.large { grid-column: span 1; } .features { grid-template-columns: 1fr; grid-gap: 3em; justify-items: center; } .feature h3 { font-size: 34px; font-size: min(34px, max(4vw, 22px)); text-align: center; } .feature :global(.show-on-mobile) { display: block; } }