/* ============================================================ FEATURES — LAYOUT C Single column, oversized numbered list. Bold & editorial. Each item spans full width with a large number accent. ============================================================ */ .features-c { padding: 6rem 0; background-color: var(--color-bg); transition: background-color 0.4s ease; } .features-c-header { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: end; margin-bottom: 4rem; padding-bottom: 3rem; border-bottom: 1px solid var(--color-border); } .features-c-header .section-subtitle { margin: 0; } /* ── List ──────────────────────────────────────────────── */ .features-c-list { display: flex; flex-direction: column; gap: 0; } /* ── Each item ─────────────────────────────────────────── */ .features-c-item { display: grid; grid-template-columns: 80px 1fr auto; gap: 2rem; align-items: center; padding: 2rem 0; border-bottom: 1px solid var(--color-border); cursor: default; transition: padding 0.3s ease; position: relative; } .features-c-item::before { content: ''; position: absolute; left: -1.5rem; top: 0; bottom: 0; width: 3px; background-color: var(--color-primary); transform: scaleY(0); transition: transform 0.3s ease; transform-origin: bottom; } .features-c-item:hover::before { transform: scaleY(1); } .features-c-item:hover { padding-left: 0.5rem; } /* ── Number ────────────────────────────────────────────── */ .features-c-number { font-family: var(--font-heading); font-size: 3rem; font-weight: 900; color: var(--color-primary); opacity: 0.25; line-height: 1; transition: opacity 0.3s ease; user-select: none; } .features-c-item:hover .features-c-number { opacity: 1; } /* ── Content ───────────────────────────────────────────── */ .features-c-content {} .features-c-title { font-family: var(--font-heading); font-size: 1.25rem; font-weight: 800; color: var(--color-heading); margin-bottom: 0.4rem; transition: color 0.2s ease; } .features-c-item:hover .features-c-title { color: var(--color-primary); } .features-c-desc { font-size: 0.9rem; color: var(--color-text-muted); line-height: 1.7; max-width: 560px; } /* ── Right: icon ───────────────────────────────────────── */ .features-c-icon { width: 48px; height: 48px; border-radius: var(--radius-md); background-color: var(--color-surface); border: 1px solid var(--color-border); display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: all 0.3s ease; } .features-c-icon svg { width: 22px; height: 22px; stroke: var(--color-text-muted); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: stroke 0.3s ease; } .features-c-item:hover .features-c-icon { background-color: var(--color-primary); border-color: var(--color-primary); } .features-c-item:hover .features-c-icon svg { stroke: var(--color-btn-text); } /* ── Responsive ─────────────────────────────────────────── */ @media (max-width: 768px) { .features-c-header { grid-template-columns: 1fr; } .features-c-item { grid-template-columns: 50px 1fr; gap: 1.25rem; } .features-c-icon { display: none; } .features-c-number { font-size: 2rem; } }