.wrap { padding: 112px 0 96px; } .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; max-width: 1440px; margin: 0 auto; padding: 0 40px; background: var(--charcoal); border: 1px solid var(--charcoal); } .card { background: var(--abyss); padding: 48px 32px; transition: background 250ms ease, transform 250ms ease; position: relative; overflow: hidden; min-height: 280px; } .card::before { content: ""; position: absolute; inset: 0; background: linear-gradient( 135deg, rgba(255, 192, 0, 0) 0%, rgba(255, 192, 0, 0) 50%, rgba(255, 192, 0, 0.08) 100% ); opacity: 0; transition: opacity 250ms ease; } .card:hover { background: var(--iron); transform: translateY(-4px); } .card:hover::before { opacity: 1; } .glyph { font-family: var(--font-mono); font-size: 14px; color: var(--gold); letter-spacing: 0.2px; margin-bottom: 32px; } .title { font-size: 40px; font-weight: 900; line-height: 0.98; letter-spacing: -0.01em; margin: 0 0 24px; text-transform: uppercase; } .text { font-size: 14px; letter-spacing: 0.12px; color: var(--steel); text-transform: uppercase; margin: 0; line-height: 1.6; } @media (max-width: 1024px) { .grid { grid-template-columns: 1fr; } } @media (max-width: 640px) { .grid { padding: 0 20px; } }