        * { font-family: 'Inter', sans-serif; }
        h1, h2, h3, h4, h5, h6 { font-family: 'Manrope', sans-serif; }
        .material-symbols-outlined {
            font-family: 'Material Symbols Outlined'; font-weight: normal; font-style: normal;
            font-size: 24px; display: inline-flex; line-height: 1; text-transform: none;
            letter-spacing: normal; word-wrap: normal; white-space: nowrap; direction: ltr;
        }
        .btn-call-modern { background: #006d33; color: white; border-radius: 0.75rem; transition: all 0.2s ease; display: flex; align-items: center; gap: 6px; }
        .btn-call-modern:hover { background: #005428; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,109,51,0.25); }
        .btn-text-modern { background: #007AFF; color: white; border-radius: 0.75rem; transition: all 0.2s ease; display: flex; align-items: center; gap: 6px; }
        .btn-text-modern:hover { background: #0051d5; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,122,255,0.25); }
        .header-shadow { box-shadow: 0 1px 8px rgba(0, 25, 60, 0.08); }

        /* ══════════════════════════════════════════════
           QUOTE FORM STYLES
           ══════════════════════════════════════════════ */
        .quote-step { display: none; animation: fadeSlideIn 0.35s ease; }
        .quote-step.active { display: block; }
        @keyframes fadeSlideIn {
            from { opacity: 0; transform: translateY(12px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Progress bar */
        .progress-track { display: flex; gap: 6px; }
        .progress-seg { flex: 1; height: 5px; border-radius: 99px; background: #e5e7eb; transition: all 0.4s ease; }
        .progress-seg.filled { background: #006d33; box-shadow: 0 0 8px rgba(0,109,51,0.3); }

        /* Damage type cards */
        .damage-card {
            background: white; border: 2px solid #e5e7eb; border-radius: 1rem;
            padding: 20px 16px; cursor: pointer; transition: all 0.2s ease;
            display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center;
            position: relative; overflow: hidden;
        }
        .damage-card:hover { border-color: #c4c8cf; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,25,60,0.06); }
        .damage-card.selected { border-color: #006d33; background: #f0faf4; box-shadow: 0 0 0 3px rgba(0,109,51,0.12); }
        .damage-card.selected::after {
            content: ''; position: absolute; top: 8px; right: 8px; width: 22px; height: 22px;
            background: #006d33; border-radius: 50%; display: flex; align-items: center; justify-content: center;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
            background-repeat: no-repeat; background-position: center;
        }
        .damage-card .damage-icon {
            width: 56px; height: 56px; border-radius: 1rem; display: flex; align-items: center; justify-content: center;
            background: #f1f4f4; transition: all 0.2s ease;
        }
        .damage-card.selected .damage-icon { background: #006d33; }
        .damage-card.selected .damage-icon .material-symbols-outlined { color: white !important; }
        .damage-card .damage-label { font-weight: 700; font-size: 13px; color: #00193c; line-height: 1.2; }

        /* Side window sub-picker */
        .side-card {
            display: flex; align-items: center; gap: 12px;
            padding: 16px; border-radius: 12px; border: 2px solid #e5e7eb;
            background: white; cursor: pointer; transition: all 0.2s;
        }
        .side-card:active { transform: scale(0.98); }
        .side-card.selected { border-color: #006d33; background: #f0faf4; }
        .side-card .side-check {
            width: 24px; height: 24px; border-radius: 6px; border: 2px solid #d1d5db;
            display: flex; align-items: center; justify-content: center; flex-shrink: 0;
            transition: all 0.2s;
        }
        .side-card.selected .side-check {
            border-color: #006d33; background: #006d33;
        }
        .side-card .side-label { font-weight: 700; font-size: 14px; color: #00193c; }
        .side-card .side-sub { font-size: 11px; color: #6b7280; margin-top: 1px; }

        /* Multi-damage pills */
        .damage-pills { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 20px; }
        .damage-pill {
            display: inline-flex; align-items: center; gap: 6px;
            background: #f0faf4; border: 1px solid #bbf0d0; border-radius: 999px;
            padding: 6px 12px; font-size: 13px; font-weight: 600; color: #006d33;
        }
        .damage-pill .pill-x {
            width: 18px; height: 18px; border-radius: 50%; background: #dcfce7;
            display: flex; align-items: center; justify-content: center;
            cursor: pointer; font-size: 12px; color: #006d33; font-weight: 700;
            transition: background 0.15s;
        }
        .damage-pill .pill-x:hover { background: #bbf0d0; }
        .add-damage-btn {
            display: inline-flex; align-items: center; gap: 4px;
            background: white; border: 2px dashed #d1d5db; border-radius: 999px;
            padding: 5px 12px; font-size: 12px; font-weight: 700; color: #6b7280;
            cursor: pointer; transition: all 0.2s;
        }
        .add-damage-btn:hover { border-color: #006d33; color: #006d33; }

        /* Vehicle select dropdowns */
        .atlas-select {
            width: 100%; padding: 14px 40px 14px 16px; border-radius: 0.75rem;
            border: 2px solid #e5e7eb; font-size: 15px; font-weight: 600; color: #00193c;
            background: white; appearance: none; cursor: pointer; transition: all 0.2s;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2300193c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
            background-repeat: no-repeat; background-position: right 14px center;
        }
        .atlas-select:focus { border-color: #006d33; outline: none; box-shadow: 0 0 0 3px rgba(0,109,51,0.1); }
        .atlas-select:disabled { background: #f9fafb; color: #9ca3af; cursor: not-allowed; }

        /* Contact inputs */
        .atlas-input-new {
            width: 100%; padding: 16px; border-radius: 0.75rem;
            border: 2px solid #e5e7eb; font-size: 16px; color: #00193c;
            transition: all 0.2s; background: white;
        }
        .atlas-input-new:focus { border-color: #006d33; outline: none; box-shadow: 0 0 0 3px rgba(0,109,51,0.1); }
        .atlas-input-new::placeholder { color: #9ca3af; }

        /* Primary CTA */
        .btn-next {
            width: 100%; padding: 18px; border: none; border-radius: 9999px;
            font-size: 17px; font-weight: 800; cursor: pointer;
            font-family: 'Manrope', sans-serif; transition: all 0.2s;
            background: #006d33; color: white; letter-spacing: -0.01em;
            box-shadow: 0 4px 16px rgba(0,109,51,0.25);
        }
        .btn-next:hover { background: #005428; transform: translateY(-1px); box-shadow: 0 6px 24px rgba(0,109,51,0.35); }
        .btn-next:disabled { opacity: 0.4; cursor: not-allowed; transform: none; box-shadow: none; }
        .btn-next:active { transform: scale(0.98); }

        .btn-back-link {
            background: none; border: none; color: #6b7280; font-size: 14px;
            cursor: pointer; font-weight: 600; padding: 8px 0; transition: color 0.2s;
        }
        .btn-back-link:hover { color: #00193c; }

        /* Insurance logo bar */
        .insurance-logo { filter: grayscale(100%); opacity: 0.5; transition: all 0.2s; height: 28px; }
        .insurance-logo:hover { filter: grayscale(0%); opacity: 1; }

        /* Confirmation animation */
        @keyframes popIn {
            0% { transform: scale(0); opacity: 0; }
            60% { transform: scale(1.15); }
            100% { transform: scale(1); opacity: 1; }
        }
        .confirm-check { animation: popIn 0.5s ease 0.2s both; }

        /* Trust pill */
        .trust-pill {
            display: inline-flex; align-items: center; gap: 6px;
            background: #f0faf4; border: 1px solid #bbf0d0; border-radius: 999px;
            padding: 6px 14px; font-size: 12px; font-weight: 600; color: #006d33;
        }

        /* Comparison section */
        .compare-card {
            border-radius: 1.25rem; padding: 32px 28px; text-align: center;
        }
        .star-row { display: flex; gap: 2px; justify-content: center; }
