.card { --on-background: #2c4678; --on-background-secondary: #455e91; --background: #d8e2ff; position: relative; } .content { position: relative; margin-top: 32px; } .star { width: 300px; height: 300px; position: absolute; right: -140px; bottom: -130px; color: #aec6ff; transform: rotate(-15deg); pointer-events: none; } .steps { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; position: relative; li { display: flex; align-items: flex-start; gap: 16px; min-width: 0; } h4 { font-size: 1.125rem; font-weight: 800; margin-bottom: 6px; } p { color: var(--on-background-secondary); font-size: 0.95rem; line-height: 1.6; } } .number { flex-shrink: 0; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: #f3f3fa; border-radius: 16px; font-size: 1.25rem; font-weight: 800; } .contact { position: relative; margin-top: 36px; } .handwritten { display: inline-block; font-size: 2rem; font-weight: 600; transform: rotate(-3deg); } .links { display: flex; gap: 16px; flex-wrap: wrap; } .link { --background: #fff; flex: 1 1 260px; max-width: 380px; a:focus-visible { display: block; border-radius: 16px; outline: 3px solid #2c4678; outline-offset: 3px; } } @media (max-width: 980px) { .steps { grid-template-columns: minmax(0, 1fr); gap: 24px; } } @media (max-width: 500px) { .card { padding: 24px; } .links { gap: 0; } .link { max-width: none; } }