﻿
:root {
    --primary: #123f7a;
    --primary-light: #eaf1fb;
    --accent: #f28c18;
    --text: #1f2937;
    --muted: #667085;
    --border: #dbe3ee;
    --bg: #f7f9fc;
    --white: #ffffff;
    --shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    --radius: 18px;
    --container: 1240px;
}

.features-section {
    padding: 80px 20px;
}

.container {
    max-width: var(--container);
    margin: 0 auto;
}

.section-header {
    max-width: 760px;
    margin: 0 auto 48px;
    text-align: center;
}

    .section-header .eyebrow {
        display: inline-block;
        margin-bottom: 14px;
        padding: 8px 14px;
        border-radius: 999px;
        background: var(--primary-light);
        color: var(--primary);
        font-weight: 700;
        font-size: 14px;
    }

    .section-header h2 {
        margin: 0 0 14px;
        font-size: clamp(32px, 4vw, 48px);
        line-height: 1.1;
        letter-spacing: -0.03em;
    }

    .section-header p {
        margin: 0;
        font-size: 18px;
        color: var(--muted);
    }

.features-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.feature-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px;
    box-shadow: var(--shadow);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    height: 100%;
}

    .feature-card:hover {
        transform: translateY(-4px);
        border-color: #bfd0e5;
        box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
    }

.feature-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-light);
    color: var(--primary);
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 18px;
}

.feature-card h3 {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.25;
    color: var(--primary);
}

.feature-card p {
    margin: 0;
    color: var(--muted);
    font-size: 15px;
}

.features-footer {
    margin-top: 42px;
    text-align: center;
}

    .features-footer a {
        display: inline-block;
        padding: 14px 24px;
        border-radius: 999px;
        background: var(--accent);
        color: #fff;
        text-decoration: none;
        font-weight: 700;
        transition: background 0.2s ease, transform 0.2s ease;
    }

        .features-footer a:hover {
            background: #d97706;
            transform: translateY(-1px);
        }

@media (max-width: 1100px) {
    .features-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .features-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .features-section {
        padding: 64px 18px;
    }
}

@media (max-width: 560px) {
    .features-grid {
        grid-template-columns: 1fr;
    }

    .feature-card {
        padding: 20px;
    }

    .section-header p {
        font-size: 16px;
    }
}

