/**
 * EVContractors.io — Single Installer Listing Stylesheet
 * File: evcontractors-listing.css
 * Location: /wp-content/themes/generatepress-child/
 *
 * Styles the single-installer_listing.php template.
 * Enqueued conditionally on single installer_listing pages
 * via functions-installer-dashboard.php or functions.php.
 *
 * Design system (matches homepage & dashboard):
 *   Primary:    #1a3a2a (deep forest green)
 *   Accent:     #4ecdc4 (teal)
 *   Success:    #27ae60
 *   Warning:    #f39c12
 *   Error:      #e74c3c
 *   Background: #f5f7f6
 *   Card:       #ffffff
 *   Text:       #1a1a2e
 *   Muted:      #6b7280
 *   Border:     #e8ebe9
 *
 *   Fonts: Plus Jakarta Sans (body), Barlow Condensed (headings)
 */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Barlow+Condensed:wght@600;700&display=swap');


/* ════════════════════════════════════════════
   WRAPPER & BASE
   ════════════════════════════════════════════ */

.evc-listing-wrap {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #1a1a2e;
    background: #f5f7f6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.6;
    padding-bottom: 80px; /* space for mobile sticky CTA */
}

.evc-listing-wrap *,
.evc-listing-wrap *::before,
.evc-listing-wrap *::after {
    box-sizing: border-box;
}

.evc-listing-wrap a {
    color: #1a3a2a;
    text-decoration: none;
    transition: color 0.15s ease;
}

.evc-listing-wrap a:hover {
    color: #4ecdc4;
}


/* ════════════════════════════════════════════
   LISTING HEADER
   ════════════════════════════════════════════ */

.evc-listing-header {
    background: #ffffff;
    border-bottom: 1px solid #e8ebe9;
    padding: 36px 0;
}

.evc-header-inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: flex-start;
    gap: 28px;
}

/* Logo */
.evc-logo-wrap {
    flex-shrink: 0;
}

.evc-company-logo {
    width: 100px;
    height: 100px;
    object-fit: contain;
    border-radius: 14px;
    border: 1px solid #e8ebe9;
    background: #ffffff;
    padding: 8px;
}

.evc-logo-placeholder {
    width: 100px;
    height: 100px;
    border-radius: 14px;
    background: #1a3a2a;
    color: #4ecdc4;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 36px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Header Meta */
.evc-header-meta {
    flex: 1;
    min-width: 0;
}

.evc-company-name {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 34px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 4px 0 8px;
    line-height: 1.15;
    letter-spacing: 0.3px;
}

.evc-header-location {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    color: #6b7280;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.evc-header-location svg {
    color: #e74c3c;
    flex-shrink: 0;
}


/* ── Badges Row ── */

.evc-badges-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}

.evc-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    line-height: 1.4;
}

.evc-badge--verified {
    background: #e8f8f0;
    color: #1e7a4a;
}

.evc-badge--nevi {
    background: #eef4ff;
    color: #2563eb;
}

.evc-badge--featured {
    background: #fef7ec;
    color: #b7791f;
}

.evc-badge--tier {
    background: #f0ebf8;
    color: #6b21a8;
}

.evc-badge--tier-founding {
    background: rgba(78,205,196,0.12);
    color: #0d7d74;
}

.evc-badge--tier-pro {
    background: #eef4ff;
    color: #2563eb;
}

.evc-badge--tier-elite {
    background: #f5f0ff;
    color: #6b21a8;
}

.evc-badge--claimed {
    background: #e8f8f0;
    color: #1e7a4a;
}

.evc-badge--claimed svg {
    color: #27ae60;
}


/* ── Header CTA Buttons ── */

.evc-header-ctas {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.evc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 20px;
    border-radius: 8px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    cursor: pointer;
    border: none;
    transition: all 0.15s ease;
    line-height: 1.4;
    white-space: nowrap;
}

.evc-btn--primary {
    background: #1a3a2a;
    color: #ffffff !important;
}

.evc-btn--primary:hover {
    background: #244e38;
    color: #ffffff !important;
}

.evc-btn--secondary {
    background: #ffffff;
    color: #1a3a2a !important;
    border: 1.5px solid #d1d5db;
}

.evc-btn--secondary:hover {
    border-color: #4ecdc4;
    color: #1a3a2a !important;
}

.evc-btn--ghost {
    background: transparent;
    color: #6b7280 !important;
    padding: 10px 14px;
}

.evc-btn--ghost:hover {
    color: #4ecdc4 !important;
}

.evc-btn--full {
    width: 100%;
}

.evc-btn svg {
    flex-shrink: 0;
}


/* ════════════════════════════════════════════
   CONTENT GRID (Main + Sidebar)
   ════════════════════════════════════════════ */

.evc-content-grid {
    max-width: 1100px;
    margin: 0 auto;
    padding: 32px 24px 0;
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 32px;
    align-items: start;
}


/* ════════════════════════════════════════════
   MAIN COLUMN — SECTIONS
   ════════════════════════════════════════════ */

.evc-main-col {
    min-width: 0;
}

.evc-section {
    background: #ffffff;
    border-radius: 12px;
    padding: 28px 32px;
    margin-bottom: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    border: 1px solid #e8ebe9;
}

.evc-section-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 0 0 16px;
    letter-spacing: 0.2px;
    line-height: 1.2;
}

.evc-description {
    font-size: 15px;
    line-height: 1.75;
    color: #374151;
}

.evc-description p {
    margin: 0 0 12px;
}

.evc-description p:last-child {
    margin-bottom: 0;
}


/* ── Certifications Grid ── */

.evc-cert-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
}

.evc-cert-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    background: #f9fafb;
    border: 1px solid #e8ebe9;
    border-radius: 8px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.evc-cert-card:hover {
    border-color: #4ecdc4;
    box-shadow: 0 2px 8px rgba(78,205,196,0.1);
}

.evc-cert-icon {
    font-size: 18px;
    line-height: 1;
    flex-shrink: 0;
}

.evc-cert-label {
    font-size: 13px;
    font-weight: 600;
    color: #1a3a2a;
    line-height: 1.3;
}

.evc-cert-verified {
    margin-left: auto;
    color: #27ae60;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

.evc-license-list {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e8ebe9;
    font-size: 13px;
    color: #6b7280;
}

.evc-license-list pre {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 13px;
    margin: 6px 0 0;
    white-space: pre-wrap;
    color: #374151;
}


/* ── Tags / Chips (Project Types, Equipment Brands) ── */

.evc-tags-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.evc-tag {
    display: inline-block;
    padding: 6px 14px;
    background: #f0f7f4;
    color: #1a3a2a;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid #d4e8dd;
    transition: background 0.15s ease;
}

.evc-tag:hover {
    background: #e0f0e8;
}

.evc-tag--nevi {
    background: #eef4ff;
    color: #2563eb;
    border-color: #c5d9f7;
    font-weight: 600;
}

.evc-tag--brand {
    background: #f9fafb;
    color: #374151;
    border-color: #e8ebe9;
}

.evc-tag--sm {
    padding: 3px 10px;
    font-size: 11px;
    font-weight: 600;
}


/* ── Project Stats Row ── */

.evc-project-stats {
    display: flex;
    gap: 24px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #e8ebe9;
    flex-wrap: wrap;
}

.evc-stat {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.evc-stat-label {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #9ca3af;
}

.evc-stat-value {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #1a3a2a;
}


/* ── Capabilities List ── */

.evc-capability-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 8px;
}

.evc-capability-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    font-size: 14px;
    color: #374151;
    border-radius: 6px;
    transition: background 0.1s;
}

.evc-capability-item:hover {
    background: #f5f7f6;
}

.evc-capability-item svg {
    color: #27ae60;
    flex-shrink: 0;
}

.evc-capability-item--highlight {
    background: #eef4ff;
    color: #2563eb;
    font-weight: 600;
}

.evc-capability-item--highlight svg {
    color: #2563eb;
}


/* ── Portfolio Grid ── */

.evc-portfolio-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.evc-portfolio-card {
    background: #f9fafb;
    border: 1px solid #e8ebe9;
    border-radius: 10px;
    overflow: hidden;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.evc-portfolio-card:hover {
    border-color: #4ecdc4;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.evc-portfolio-img {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: #e8ebe9;
}

.evc-portfolio-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.evc-portfolio-count {
    position: absolute;
    bottom: 8px;
    right: 8px;
    background: rgba(0,0,0,0.65);
    color: #ffffff;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.evc-portfolio-body {
    padding: 16px;
}

.evc-portfolio-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 17px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 0 0 8px;
    line-height: 1.3;
}

.evc-portfolio-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 8px;
}

.evc-portfolio-loc {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}

.evc-portfolio-loc svg {
    color: #e74c3c;
}

.evc-portfolio-value {
    font-weight: 600;
    color: #1a3a2a;
}

.evc-portfolio-desc {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
    margin: 0;
}


/* ════════════════════════════════════════════
   SIDEBAR
   ════════════════════════════════════════════ */

.evc-sidebar {
    position: sticky;
    top: 48px; /* below WP admin bar if visible */
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.evc-sidebar-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    border: 1px solid #e8ebe9;
}

.evc-sidebar-card-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 0 0 14px;
    letter-spacing: 0.2px;
}


/* ── RFQ Card ── */

.evc-rfq-card {
    border: 2px solid #4ecdc4;
    background: #ffffff;
}

.evc-rfq-header {
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e8ebe9;
}

.evc-rfq-header h3 {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 0 0 6px;
}

.evc-rfq-header p {
    font-size: 13px;
    color: #6b7280;
    margin: 0;
    line-height: 1.5;
}

/* Fluent Forms overrides inside RFQ card */
.evc-rfq-card .ff-el-form-control {
    border-radius: 8px !important;
    border: 1.5px solid #d1d5db !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    padding: 10px 14px !important;
    transition: border-color 0.15s ease !important;
}

.evc-rfq-card .ff-el-form-control:focus {
    border-color: #4ecdc4 !important;
    box-shadow: 0 0 0 3px rgba(78,205,196,0.15) !important;
    outline: none !important;
}

.evc-rfq-card .ff_submit_btn_wrapper .ff-btn-submit {
    background: #1a3a2a !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 12px 24px !important;
    border: none !important;
    width: 100% !important;
    transition: background 0.15s ease !important;
}

.evc-rfq-card .ff_submit_btn_wrapper .ff-btn-submit:hover {
    background: #244e38 !important;
}

.evc-rfq-card .ff-el-input--label label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #374151 !important;
}


/* ── Contact Card ── */

.evc-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.evc-contact-list li {
    padding: 10px 0;
    border-bottom: 1px solid #f0f1f2;
}

.evc-contact-list li:last-child {
    border-bottom: none;
}

.evc-contact-link {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 500;
    color: #1a3a2a !important;
    transition: color 0.15s ease;
}

.evc-contact-link:hover {
    color: #4ecdc4 !important;
}

.evc-contact-link svg {
    color: #6b7280;
    flex-shrink: 0;
}

.evc-contact-address {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
}

.evc-contact-address svg {
    flex-shrink: 0;
    margin-top: 2px;
}


/* ── Map Card ── */

.evc-map-wrap {
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 10px;
}

.evc-map-wrap iframe {
    display: block;
    border-radius: 8px;
}

.evc-map-link {
    display: block;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    color: #6b7280 !important;
    padding: 6px 0;
    transition: color 0.15s ease;
}

.evc-map-link:hover {
    color: #4ecdc4 !important;
}


/* ── Service Area Card ── */

.evc-nationwide-badge {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #eef4ff;
    color: #2563eb;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    margin: 0;
}

.evc-state-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.evc-state-chip {
    display: inline-block;
    padding: 4px 10px;
    background: #f0f7f4;
    color: #1a3a2a;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid #d4e8dd;
    letter-spacing: 0.3px;
}

.evc-cities-served {
    font-size: 13px;
    color: #6b7280;
    margin: 12px 0 0;
    line-height: 1.5;
}

.evc-cities-served strong {
    color: #374151;
}

.evc-travel-note {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #6b7280;
    margin: 10px 0 0;
    padding-top: 10px;
    border-top: 1px solid #f0f1f2;
}

.evc-travel-note svg {
    color: #4ecdc4;
    flex-shrink: 0;
}


/* ════════════════════════════════════════════
   CLAIM BUTTON & BADGES
   (on the single listing page)
   ════════════════════════════════════════════ */

/* Claim section in main content */
.evc-section--claim {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 24px 0 0;
    margin-top: 4px;
}

/* Claim card in sidebar */
.evc-claim-card {
    text-align: center;
    padding: 16px !important;
}

/* The CTA button — dashed teal border, inviting */
.evc-claim-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: #edf5f0;
    color: #1a3a2a !important;
    border: 2px dashed #4ecdc4;
    border-radius: 10px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.2s ease;
    cursor: pointer;
}

.evc-claim-btn:hover {
    background: #d4f0e7;
    border-style: solid;
    color: #1a3a2a !important;
    box-shadow: 0 4px 12px rgba(78,205,196,0.2);
    transform: translateY(-1px);
}

.evc-claim-btn svg {
    color: #4ecdc4;
    flex-shrink: 0;
}

/* Claimed / Pending trust badges */
.evc-claimed-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #e8f8f0;
    color: #1e7a4a;
    border-radius: 8px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
}

.evc-claimed-badge.evc-pending {
    background: #fef7ec;
    color: #b7791f;
}


/* ════════════════════════════════════════════
   CLAIM SUCCESS NOTIFICATIONS
   (shown after claim form submission)
   ════════════════════════════════════════════ */

.evc-listing-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 1100px;
    margin: 16px auto 0;
    padding: 16px 24px;
    border-radius: 10px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 14px;
    line-height: 1.6;
}

.evc-listing-notice svg {
    flex-shrink: 0;
    margin-top: 2px;
}

.evc-listing-notice strong {
    display: block;
    margin-bottom: 2px;
}

.evc-listing-notice a {
    font-weight: 600;
    margin-left: 4px;
}

.evc-notice--success {
    background: #e8f8f0;
    color: #1e7a4a;
    border: 1px solid #a7e1c4;
}

.evc-notice--success svg {
    color: #27ae60;
}

.evc-notice--success a {
    color: #1e7a4a;
}

.evc-notice--info {
    background: #fef7ec;
    color: #92600a;
    border: 1px solid #fbd38d;
}

.evc-notice--info svg {
    color: #f39c12;
}


/* ════════════════════════════════════════════
   MOBILE STICKY CTA BAR
   ════════════════════════════════════════════ */

.evc-sticky-cta {
    display: none; /* hidden on desktop */
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    border-top: 1px solid #e8ebe9;
    padding: 12px 16px;
    gap: 10px;
    z-index: 999;
    box-shadow: 0 -4px 16px rgba(0,0,0,0.08);
}


/* ════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════ */

@media (max-width: 900px) {

    /* Stack to single column */
    .evc-content-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    /* Sidebar unstick and reorder */
    .evc-sidebar {
        position: static;
    }

    /* Show mobile sticky CTA */
    .evc-sticky-cta {
        display: flex;
    }

    /* Slightly smaller header */
    .evc-company-name {
        font-size: 26px;
    }

    .evc-company-logo,
    .evc-logo-placeholder {
        width: 72px;
        height: 72px;
        font-size: 28px;
    }

    /* Full-width sections */
    .evc-section {
        padding: 22px 20px;
    }

    /* Stack header buttons */
    .evc-header-ctas {
        flex-wrap: wrap;
    }

    /* Single-column cert grid */
    .evc-cert-grid {
        grid-template-columns: 1fr;
    }

    /* Single-column portfolio */
    .evc-portfolio-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {

    .evc-header-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .evc-company-name {
        font-size: 22px;
    }

    .evc-section-title {
        font-size: 18px;
    }

    .evc-badges-row {
        gap: 6px;
    }

    .evc-badge {
        font-size: 10px;
        padding: 2px 8px;
    }

    .evc-header-ctas .evc-btn {
        font-size: 13px;
        padding: 8px 14px;
    }

    .evc-capability-list {
        grid-template-columns: 1fr;
    }

    .evc-project-stats {
        flex-direction: column;
        gap: 14px;
    }

    .evc-listing-notice {
        margin: 12px 12px 0;
        padding: 12px 16px;
        font-size: 13px;
    }

    .evc-claim-btn {
        width: 100%;
        justify-content: center;
    }
}


/* ════════════════════════════════════════════
   SPARSE LISTING FALLBACK
   ════════════════════════════════════════════ */

.evc-section--sparse-notice {
    text-align: center;
    padding: 40px 32px;
}

.evc-sparse-icon {
    margin-bottom: 16px;
}

.evc-sparse-icon svg {
    opacity: 0.5;
}

.evc-sparse-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #1a3a2a;
    margin: 0 0 12px;
    letter-spacing: 0.2px;
}

.evc-sparse-text {
    font-size: 15px;
    line-height: 1.75;
    color: #6b7280;
    max-width: 480px;
    margin: 0 auto 24px;
}

.evc-sparse-ctas {
    display: flex;
    justify-content: center;
    gap: 12px;
}


/* ── Claim This Listing CTA ── */

.evc-section--claim-cta {
    background: linear-gradient(135deg, #f0faf5 0%, #e8f8f0 100%);
    border: 1.5px dashed #4ecdc4;
    text-align: center;
    padding: 32px;
}

.evc-section--claim-cta .evc-section-title {
    margin-bottom: 8px;
}

.evc-claim-text {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
    max-width: 440px;
    margin: 0 auto 20px;
}

.evc-btn--claim {
    border-color: #4ecdc4;
    color: #1a3a2a !important;
}

.evc-btn--claim:hover {
    background: #4ecdc4;
    color: #ffffff !important;
    border-color: #4ecdc4;
}

@media (max-width: 600px) {
    .evc-section--sparse-notice {
        padding: 28px 20px;
    }

    .evc-section--claim-cta {
        padding: 24px 20px;
    }
}
