﻿/* =========================
   CONTACT PAGE
========================= */

.contact-page {
    padding-top: 20px !important;
    padding-bottom: 30px !important;
}

    .contact-page h2,
    .contact-page h3 {
        letter-spacing: 0.2px !important;
    }

    /* HERO */
    .contact-page .contact-hero {
        background: #cfd5dd !important;
        background-color: #cfd5dd !important;
        border: 1px solid #bfc7d1 !important;
        border-radius: 6px !important;
        padding: 24px 26px !important;
        margin-bottom: 24px !important;
    }

        .contact-page .contact-hero h2 {
            color: #10233f !important;
            font-weight: 700 !important;
            margin-top: 0 !important;
            margin-bottom: 12px !important;
            position: relative !important;
        }

            .contact-page .contact-hero h2::after {
                content: "" !important;
                display: block !important;
                width: 48px !important;
                height: 3px !important;
                background: #2f6fb3 !important;
                background-color: #2f6fb3 !important;
                margin-top: 10px !important;
            }

        .contact-page .contact-hero .contact-hero-lead {
            color: #20324a !important;
            font-size: 24px !important;
            line-height: 1.45 !important;
            margin-bottom: 10px !important;
        }

        .contact-page .contact-hero p {
            color: #20324a !important;
        }

    /* LAYOUT */
    .contact-page .contact-row {
        margin-bottom: 20px !important;
    }

    /* CARDS */
    .contact-page .contact-card {
        background: linear-gradient(180deg, #3c4758, #313b4b) !important;
        background-color: #364152 !important;
        border: 1px solid #49566a !important;
        border-radius: 6px !important;
        padding: 20px 18px !important;
        min-height: 370px !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;
    }

        .contact-page .contact-card h3 {
            color: #f6f9fd !important;
            font-weight: 700 !important;
            margin-top: 0 !important;
            margin-bottom: 16px !important;
            position: relative !important;
        }

            .contact-page .contact-card h3::after {
                content: "" !important;
                display: block !important;
                width: 34px !important;
                height: 3px !important;
                background: #5b8def !important;
                background-color: #5b8def !important;
                margin-top: 8px !important;
                border-radius: 2px !important;
            }

    /* RESOURCES */
    .contact-page .contact-links {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

        .contact-page .contact-links li {
            margin-bottom: 14px !important;
            padding-left: 0 !important;
        }

        .contact-page .contact-links a {
            color: #dce7f5 !important;
            font-size: 16px !important;
            text-decoration: none !important;
            font-weight: 500 !important;
        }

            .contact-page .contact-links a:hover {
                color: #9bc7ff !important;
                text-decoration: underline !important;
            }

    /* CONTACT INFO */
    .contact-page .contact-info-block {
        margin-bottom: 18px !important;
    }

    .contact-page .contact-label {
        color: #9fb0c6 !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.6px !important;
        margin-bottom: 4px !important;
    }

    .contact-page .contact-value {
        color: #edf3fb !important;
        font-size: 16px !important;
        line-height: 1.6 !important;
    }

        .contact-page .contact-value a {
            color: #8ec5ff !important;
            text-decoration: none !important;
            font-weight: 500 !important;
        }

            .contact-page .contact-value a:hover {
                color: #c4e0ff !important;
                text-decoration: underline !important;
            }

    /* FORM */
    .contact-page .contact-form-card {
        min-height: 370px !important;
    }

    .contact-page .contact-form .form-group {
        margin-bottom: 16px !important;
    }

    .contact-page .contact-input {
        background: #445165 !important;
        background-color: #445165 !important;
        border: 1px solid #5a6980 !important;
        border-radius: 6px !important;
        color: #f4f8fd !important;
        box-shadow: none !important;
        padding: 12px 14px !important;
        height: auto !important;
    }

        .contact-page .contact-input:focus {
            background: #4a5870 !important;
            background-color: #4a5870 !important;
            border-color: #78aef8 !important;
            color: #ffffff !important;
            box-shadow: 0 0 0 2px rgba(120, 174, 248, 0.15) !important;
        }

        .contact-page .contact-input::placeholder {
            color: #c4cfdd !important;
            opacity: 1 !important;
        }

    .contact-page .contact-textarea {
        resize: vertical !important;
        min-height: 140px !important;
    }

    .contact-page .contact-submit-btn {
        background: #2f6fb3 !important;
        background-color: #2f6fb3 !important;
        border-color: #2f6fb3 !important;
        color: #ffffff !important;
        font-weight: 600 !important;
        border-radius: 24px !important;
        padding-top: 11px !important;
        padding-bottom: 11px !important;
    }

        .contact-page .contact-submit-btn:hover {
            background: #285f99 !important;
            background-color: #285f99 !important;
            border-color: #285f99 !important;
        }

    /* VALIDATION / ALERTS */
    .contact-page .validation-summary,
    .contact-page .validation-summary ul,
    .contact-page .validation-summary li {
        color: #ffd5d5 !important;
    }

    .contact-page .contact-alert {
        background: #6b2c2c !important;
        background-color: #6b2c2c !important;
        border: 1px solid #8b3b3b !important;
        color: #ffe6e6 !important;
        border-radius: 6px !important;
        padding: 12px 14px !important;
    }
