<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Insurance Consulting Pricing Calculator</title>

    <style>

        * {

            margin: 0;

            padding: 0;

            box-sizing: border-box;

        }

        

        body {

            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;

            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

            min-height: 100vh;

            padding: 20px;

        }

        

        .container {

            max-width: 1400px;

            margin: 0 auto;

        }

        

        .header {

            background: white;

            padding: 30px;

            border-radius: 10px;

            margin-bottom: 20px;

            box-shadow: 0 4px 6px rgba(0,0,0,0.1);

        }

        

        .header h1 {

            color: #2d3748;

            font-size: 28px;

            margin-bottom: 8px;

        }

        

        .header p {

            color: #718096;

            font-size: 14px;

        }

        

        .grid {

            display: grid;

            gap: 20px;

            margin-bottom: 20px;

        }

        

        .grid-2 {

            grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));

        }

        

        .grid-3 {

            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

        }

        

        .card {

            background: white;

            border-radius: 10px;

            padding: 25px;

            box-shadow: 0 4px 6px rgba(0,0,0,0.1);

        }

        

        .card-header {

            font-size: 20px;

            font-weight: 600;

            color: #2d3748;

            margin-bottom: 20px;

            padding-bottom: 10px;

            border-bottom: 2px solid #e2e8f0;

        }

        

        .form-group {

            margin-bottom: 16px;

        }

        

        .form-group label {

            display: block;

            font-size: 14px;

            font-weight: 500;

            color: #4a5568;

            margin-bottom: 6px;

        }

        

        .form-group input, .form-group select {

            width: 100%;

            padding: 10px;

            border: 1px solid #cbd5e0;

            border-radius: 6px;

            font-size: 14px;

            transition: border-color 0.2s;

        }

        

        .form-group input:focus, .form-group select:focus {

            outline: none;

            border-color: #667eea;

        }

        

        .help-text {

            font-size: 12px;

            color: #718096;

            margin-top: 4px;

        }

        

        .section-divider {

            border-top: 1px solid #e2e8f0;

            margin: 20px 0;

            padding-top: 20px;

        }

        

        .section-title {

            font-weight: 600;

            font-size: 16px;

            color: #2d3748;

            margin-bottom: 16px;

        }

        

        .info-box {

            background: #ebf4ff;

            border: 1px solid #bee3f8;

            border-radius: 6px;

            padding: 16px;

            margin-top: 16px;

        }

        

        .info-box h3 {

            font-size: 14px;

            font-weight: 600;

            color: #2c5282;

            margin-bottom: 12px;

        }

        

        .info-row {

            display: flex;

            justify-content: space-between;

            padding: 6px 0;

            font-size: 13px;

        }

        

        .info-row.total {

            border-top: 2px solid #bee3f8;

            margin-top: 8px;

            padding-top: 12px;

            font-weight: 600;

            font-size: 14px;

        }

        

        .info-row.negative {

            color: #c53030;

        }

        

        .info-row.positive {

            color: #2f855a;

        }

        

        .stat-card {

            text-align: center;

            padding: 25px;

            border-radius: 10px;

        }

        

        .stat-card.green {

            background: linear-gradient(135deg, #d4fc79 0%, #96e6a1 100%);

        }

        

        .stat-card.blue {

            background: linear-gradient(135deg, #a1c4fd 0%, #c2e9fb 100%);

        }

        

        .stat-card.purple {

            background: linear-gradient(135deg, #fbc2eb 0%, #a6c1ee 100%);

        }

        

        .stat-card h3 {

            font-size: 14px;

            color: #2d3748;

            margin-bottom: 12px;

            font-weight: 500;

        }

        

        .stat-card .value {

            font-size: 36px;

            font-weight: 700;

            color: #1a202c;

            margin: 8px 0;

        }

        

        .stat-card .subtext {

            font-size: 12px;

            color: #4a5568;

        }

        

        .breakdown-grid {

            display: grid;

            grid-template-columns: 1fr 1fr;

            gap: 30px;

        }

        

        .breakdown-section h3 {

            font-size: 16px;

            font-weight: 600;

            color: #2d3748;

            margin-bottom: 16px;

            padding-bottom: 8px;

            border-bottom: 2px solid #e2e8f0;

        }

        

        .breakdown-row {

            display: flex;

            justify-content: space-between;

            padding: 10px 0;

            font-size: 14px;

        }

        

        .breakdown-row.total {

            border-top: 2px solid #e2e8f0;

            margin-top: 8px;

            padding-top: 16px;

            font-size: 16px;

            font-weight: 700;

        }

        

        .calculator-section {

            background: #f7fafc;

            padding: 20px;

            border-radius: 8px;

            margin-bottom: 16px;

        }

        

        .result-box {

            background: #ebf4ff;

            border-left: 4px solid #4299e1;

            padding: 16px;

            margin-top: 16px;

            border-radius: 4px;

        }

        

        .result-box .main-result {

            display: flex;

            justify-content: space-between;

            align-items: center;

            margin-bottom: 8px;

        }

        

        .result-box .main-result span:first-child {

            font-weight: 600;

            color: #2d3748;

        }

        

        .result-box .main-result span:last-child {

            font-size: 24px;

            font-weight: 700;

            color: #2b6cb0;

        }

        

        .market-grid {

            display: grid;

            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

            gap: 16px;

            margin-bottom: 20px;

        }

        

        .market-box {

            background: #f7fafc;

            padding: 20px;

            border-radius: 8px;

        }

        

        .market-box h4 {

            font-size: 14px;

            font-weight: 600;

            color: #4a5568;

            margin-bottom: 8px;

        }

        

        .market-box .value {

            font-size: 28px;

            font-weight: 700;

            color: #2d3748;

            margin: 8px 0;

        }

        

        .market-box .current {

            font-size: 13px;

            color: #718096;

            margin-top: 4px;

        }

        

        .market-box .status {

            font-size: 11px;

            color: #a0aec0;

            margin-top: 4px;

        }

        

        .recommendations {

            background: #ebf4ff;

            border: 1px solid #bee3f8;

            padding: 20px;

            border-radius: 8px;

            margin-top: 16px;

        }

        

        .recommendations h4 {

            font-size: 16px;

            font-weight: 600;

            color: #2c5282;

            margin-bottom: 12px;

        }

        

        .recommendations ul {

            list-style: none;

        }

        

        .recommendations li {

            padding: 8px 0;

            font-size: 13px;

            color: #2c5282;

            line-height: 1.6;

        }

        

        .alert {

            background: #fef5e7;

            border: 1px solid #f9e79f;

            padding: 16px;

            border-radius: 6px;

            margin-top: 16px;

        }

        

        .alert.success {

            background: #d5f4e6;

            border-color: #81c995;

        }

        

        .alert p {

            font-size: 14px;

            font-weight: 500;

            color: #2d3748;

        }

        

        @media (max-width: 768px) {

            .grid-2, .breakdown-grid, .market-grid {

                grid-template-columns: 1fr;

            }

            

            .stat-card .value {

                font-size: 28px;

            }

        }

    </style>

</head>

<body>

    <div class="container">

        <div class="header">

            <h1>Insurance Consulting Pricing Calculator</h1>

            <p>Comprehensive pricing strategy for your consulting practice</p>

        </div>


        <div class="grid grid-2">

            <!-- Financial Targets & Expenses -->

            <div class="card">

                <div class="card-header">💰 Financial Targets & Expenses</div>

                

                <div class="form-group">

                    <label>Target Annual Income (£)</label>

                    <input type="number" id="targetIncome" value="200000">

                </div>

                

                <div class="form-group">

                    <label>Existing NED Fee (£/year)</label>

                    <input type="number" id="existingNEDFee" value="60000">

                </div>

                

                <div class="form-group">

                    <label>Existing NED Days (days/year)</label>

                    <input type="number" id="existingNEDDays" value="24">

                </div>

                

                <div class="section-divider">

                    <div class="section-title">Additional Revenue Streams</div>

                    

                    <div class="form-group">

                        <label>Additional NEDs</label>

                        <input type="number" id="additionalNEDs" value="0">

                    </div>

                    

                    <div id="additionalNEDFields" style="display: none;">

                        <div class="form-group">

                            <label>Additional NED Fee (£/year each)</label>

                            <input type="number" id="additionalNEDFee" value="60000">

                        </div>

                        

                        <div class="form-group">

                            <label>Days per Additional NED (days/year)</label>

                            <input type="number" id="additionalNEDDays" value="24">

                        </div>

                    </div>

                    

                    <div class="form-group">

                        <label>Interim Days (days/year)</label>

                        <input type="number" id="interimDays" value="0">

                    </div>

                    

                    <div id="interimFields" style="display: none;">

                        <div class="form-group">

                            <label>Interim Day Rate (£)</label>

                            <input type="number" id="interimDayRate" value="2500">

                        </div>

                    </div>

                </div>

                

                <div class="section-divider">

                    <div class="section-title">Annual Expenses</div>

                    

                    <div class="form-group">

                        <label>Insurance (£/year)</label>

                        <input type="number" id="insurance" value="1000">

                    </div>

                    

                    <div class="form-group">

                        <label>Software (£/year)</label>

                        <input type="number" id="software" value="1000">

                    </div>

                    

                    <div class="form-group">

                        <label>Marketing (£/month)</label>

                        <input type="number" id="marketingMonthly" value="3000">

                    </div>

                    

                    <div class="form-group">

                        <label>Other Expenses (£/year)</label>

                        <input type="number" id="otherExpenses" value="0">

                    </div>

                </div>

            </div>


            <!-- Time & Capacity Planning -->

            <div class="card">

                <div class="card-header">📊 Time & Capacity Planning</div>

                

                <div class="form-group">

                    <label>Holiday Days</label>

                    <input type="number" id="holidays" value="30">

                </div>

                

                <div class="form-group">

                    <label>Admin/Business Dev Days</label>

                    <input type="number" id="adminDays" value="40">

                </div>

                

                <div class="form-group">

                    <label>Target Billable Days (Consulting)</label>

                    <input type="number" id="billableDaysTarget" value="120">

                    <div class="help-text" id="maxDaysHelp"></div>

                </div>

                

                <div class="form-group">

                    <label>Target Utilization Rate (%)</label>

                    <input type="number" id="targetUtilization" value="65">

                </div>

                

                <div class="form-group">

                    <label>Profit Margin (%)</label>

                    <input type="number" id="profitMargin" value="15">

                </div>

                

                <div class="info-box">

                    <h3>Capacity Breakdown</h3>

                    <div class="info-row">

                        <span>Working days/year:</span>

                        <span id="workingDays">260 days</span>

                    </div>

                    <div class="info-row negative">

                        <span>NED commitments:</span>

                        <span id="totalNEDDays">-24 days</span>

                    </div>

                    <div class="info-row negative">

                        <span>Interim work:</span>

                        <span id="interimDaysDisplay">-0 days</span>

                    </div>

                    <div class="info-row negative">

                        <span>Holidays:</span>

                        <span id="holidaysDisplay">-30 days</span>

                    </div>

                    <div class="info-row negative">

                        <span>Admin/BD:</span>

                        <span id="adminDaysDisplay">-40 days</span>

                    </div>

                    <div class="info-row total positive">

                        <span>Available for consulting:</span>

                        <span id="availableDays">166 days</span>

                    </div>

                </div>

            </div>

        </div>


        <!-- Results Section -->

        <div class="grid grid-3">

            <div class="card stat-card green">

                <h3>Recommended Day Rate</h3>

                <div class="value" id="dayRate">£1,500</div>

                <div class="subtext" id="dayRateSubtext">Based on 120 billable days</div>

            </div>


            <div class="card stat-card blue">

                <h3>Recommended Hourly Rate</h3>

                <div class="value" id="hourlyRate">£200</div>

                <div class="subtext">Based on 7.5 hour day</div>

            </div>


            <div class="card stat-card purple">

                <h3>Revenue Gap to Fill</h3>

                <div class="value" id="revenueGap">£180,000</div>

                <div class="subtext">From consulting work</div>

            </div>

        </div>


        <!-- Financial Breakdown -->

        <div class="card">

            <div class="card-header">📈 Financial Breakdown</div>

            <div class="breakdown-grid">

                <div class="breakdown-section">

                    <h3>Revenue Target</h3>

                    <div class="breakdown-row">

                        <span>Target Income:</span>

                        <span id="targetIncomeDisplay">£200,000</span>

                    </div>

                    <div class="breakdown-row">

                        <span>Total Expenses:</span>

                        <span id="totalExpensesDisplay">£38,000</span>

                    </div>

                    <div class="breakdown-row">

                        <span id="profitLabel">Profit Margin (15%):</span>

                        <span id="profitAmount">£42,000</span>

                    </div>

                    <div class="breakdown-row total">

                        <span>Total Revenue Needed:</span>

                        <span id="totalRevenueNeeded" style="color: #2f855a;">£280,000</span>

                    </div>

                </div>

                

                <div class="breakdown-section">

                    <h3>Revenue Sources</h3>

                    <div class="breakdown-row">

                        <span>NED Fees:</span>

                        <span id="nedRevenue">£60,000</span>

                    </div>

                    <div class="breakdown-row">

                        <span>Interim Work:</span>

                        <span id="interimRevenue">£0</span>

                    </div>

                    <div class="breakdown-row">

                        <span>Consulting (Target):</span>

                        <span id="consultingRevenue">£180,000</span>

                    </div>

                    <div class="breakdown-row total">

                        <span>Total Revenue:</span>

                        <span id="totalRevenue" style="color: #2b6cb0;">£240,000</span>

                    </div>

                </div>

            </div>

            

            <div id="surplusAlert" class="alert success" style="display: none;">

                <p></p>

            </div>

        </div>


        <!-- Pricing Tools -->

        <div class="grid grid-2">

            <div class="card">

                <div class="card-header">🧮 Project Fee Calculator</div>

                

                <div class="calculator-section">

                    <div class="form-group">

                        <label>Estimated Hours</label>

                        <input type="number" id="projectHours" value="40">

                    </div>

                    

                    <div class="form-group">

                        <label>Complexity Multiplier</label>

                        <select id="projectComplexity">

                            <option value="0.8">Simple (0.8x)</option>

                            <option value="1" selected>Standard (1x)</option>

                            <option value="1.2">Complex (1.2x)</option>

                            <option value="1.5">Highly Complex (1.5x)</option>

                            <option value="2">Expert/Urgent (2x)</option>

                        </select>

                    </div>

                    

                    <div class="result-box">

                        <div class="main-result">

                            <span>Recommended Project Fee:</span>

                            <span id="projectFee">£8,000</span>

                        </div>

                        <div class="help-text" id="projectCalc"></div>

                    </div>

                </div>

            </div>


            <div class="card">

                <div class="card-header">📅 Retainer Calculator</div>

                

                <div class="calculator-section">

                    <div class="form-group">

                        <label>Monthly Hours Included</label>

                        <input type="number" id="retainerHours" value="10">

                    </div>

                    

                    <div class="result-box">

                        <div class="info-row">

                            <span>Standard Rate:</span>

                            <span id="retainerStandard">£2,000/month</span>

                        </div>

                        <div class="main-result">

                            <span>With 10% Discount:</span>

                            <span id="retainerDiscounted">£1,800/month</span>

                        </div>

                        <div style="margin-top: 12px; padding-top: 12px; border-top: 1px solid #bee3f8;">

                            <div class="help-text">Annual: <span id="retainerAnnual">£21,600</span></div>

                            <div class="help-text">Effective hourly: <span id="retainerEffective">£180</span></div>

                        </div>

                    </div>

                    

                    <div class="alert" style="margin-top: 16px;">

                        <p style="font-size: 13px;">⚠️ Retainers provide predictable income and should include a discount for commitment</p>

                    </div>

                </div>

            </div>

        </div>


        <!-- Market Comparison -->

        <div class="card">

            <div class="card-header">🎯 Market Comparison & Recommendations</div>

            

            <div class="market-grid">

                <div class="market-box">

                    <h4>NED Range</h4>

                    <div class="value">£30k - £100k</div>

                    <div class="current">Your rate: <span id="yourNEDRate">£60,000</span></div>

                    <div class="status" id="nedStatus">Mid-range</div>

                </div>

                

                <div class="market-box">

                    <h4>Interim Day Rate</h4>

                    <div class="value">~£2,500</div>

                    <div class="current">Market standard</div>

                </div>

                

                <div class="market-box">

                    <h4>Your Consulting Rate</h4>

                    <div class="value" id="yourConsultingRate">£1,500</div>

                    <div class="current">Calculated day rate</div>

                    <div class="status" id="consultingStatus">Competitive range</div>

                </div>

            </div>

            

            <div class="recommendations">

                <h4>Strategic Recommendations</h4>

                <ul id="recommendationsList">

                    <li>• Consider positioning consulting work at £1,500 per day for easier communication</li>

                    <li>• For complex projects (market entry, carrier setup), consider value-based pricing at 2-3x your day rate</li>

                    <li>• Bundle retainers with a 10-15% discount to encourage longer commitments</li>

                    <li>• Review rates quarterly as you build portfolio and reputation</li>

                    <li>• Premium services (CEO/CUO interim) should maintain the £2,500/day market standard</li>

                </ul>

            </div>

        </div>

    </div>


    <script>

        function calculate() {

            // Get all input values

            const targetIncome = parseFloat(document.getElementById('targetIncome').value) || 0;

            const existingNEDFee = parseFloat(document.getElementById('existingNEDFee').value) || 0;

            const existingNEDDays = parseFloat(document.getElementById('existingNEDDays').value) || 0;

            const additionalNEDs = parseFloat(document.getElementById('additionalNEDs').value) || 0;

            const additionalNEDFee = parseFloat(document.getElementById('additionalNEDFee').value) || 0;

            const additionalNEDDays = parseFloat(document.getElementById('additionalNEDDays').value) || 0;

            const interimDays = parseFloat(document.getElementById('interimDays').value) || 0;

            const interimDayRate = parseFloat(document.getElementById('interimDayRate').value) || 0;

            const insurance = parseFloat(document.getElementById('insurance').value) || 0;

            const software = parseFloat(document.getElementById('software').value) || 0;

            const marketingMonthly = parseFloat(document.getElementById('marketingMonthly').value) || 0;

            const otherExpenses = parseFloat(document.getElementById('otherExpenses').value) || 0;

            const holidays = parseFloat(document.getElementById('holidays').value) || 0;

            const adminDays = parseFloat(document.getElementById('adminDays').value) || 0;

            const billableDaysTarget = parseFloat(document.getElementById('billableDaysTarget').value) || 0;

            const targetUtilization = parseFloat(document.getElementById('targetUtilization').value) / 100 || 0;

            const profitMargin = parseFloat(document.getElementById('profitMargin').value) / 100 || 0;

            

            // Show/hide conditional fields

            document.getElementById('additionalNEDFields').style.display = additionalNEDs > 0 ? 'block' : 'none';

            document.getElementById('interimFields').style.display = interimDays > 0 ? 'block' : 'none';

            

            // Calculate total expenses

            const totalAnnualExpenses = insurance + software + (marketingMonthly * 12) + otherExpenses;

            

            // Calculate revenue needed

            const revenueNeeded = targetIncome + totalAnnualExpenses;

            const revenueNeededWithProfit = revenueNeeded / (1 - profitMargin);

            

            // Calculate existing revenue streams

            const totalNEDRevenue = existingNEDFee + (additionalNEDs * additionalNEDFee);

            const interimRevenue = interimDays * interimDayRate;

            const existingRevenue = totalNEDRevenue + interimRevenue;

            

            // Calculate remaining revenue needed

            const remainingRevenueNeeded = revenueNeededWithProfit - existingRevenue;

            

            // Calculate available days

            const workingDays = 260;

            const totalNEDDays = existingNEDDays + (additionalNEDs * additionalNEDDays);

            const unavailableDays = holidays + adminDays + totalNEDDays + interimDays;

            const availableDaysForConsulting = workingDays - unavailableDays;

            const targetBillableDays = Math.min(billableDaysTarget, availableDaysForConsulting * targetUtilization);

            

            // Calculate recommended rates

            const recommendedDayRate = remainingRevenueNeeded / targetBillableDays;

            const recommendedHourlyRate = recommendedDayRate / 7.5;

            

            // Update capacity breakdown

            document.getElementById('workingDays').textContent = `${workingDays} days`;

            document.getElementById('totalNEDDays').textContent = `-${totalNEDDays} days`;

            document.getElementById('interimDaysDisplay').textContent = `-${interimDays} days`;

            document.getElementById('holidaysDisplay').textContent = `-${holidays} days`;

            document.getElementById('adminDaysDisplay').textContent = `-${adminDays} days`;

            document.getElementById('availableDays').textContent = `${availableDaysForConsulting} days`;

            document.getElementById('maxDaysHelp').textContent = `Max available: ${Math.round(availableDaysForConsulting * targetUtilization)} days`;

            

            // Update stat cards

            document.getElementById('dayRate').textContent = `£${Math.round(recommendedDayRate).toLocaleString()}`;

            document.getElementById('dayRateSubtext').textContent = `Based on ${Math.round(targetBillableDays)} billable days`;

            document.getElementById('hourlyRate').textContent = `£${Math.round(recommendedHourlyRate)}`;

            document.getElementById('revenueGap').textContent = `£${Math.round(remainingRevenueNeeded).toLocaleString()}`;

            

            // Update financial breakdown

            document.getElementById('targetIncomeDisplay').textContent = `£${targetIncome.toLocaleString()}`;

            document.getElementById('totalExpensesDisplay').textContent = `£${totalAnnualExpenses.toLocaleString()}`;

            document.getElementById('profitLabel').textContent = `Profit Margin (${Math.round(profitMargin * 100)}%):`;

            document.getElementById('profitAmount').textContent = `£${Math.round(revenueNeededWithProfit - revenueNeeded).toLocaleString()}`;

            document.getElementById('totalRevenueNeeded').textContent = `£${Math.round(revenueNeededWithProfit).toLocaleString()}`;

            

            document.getElementById('nedRevenue').textContent = `£${totalNEDRevenue.toLocaleString()}`;

            document.getElementById('interimRevenue').textContent = `£${interimRevenue.toLocaleString()}`;

            document.getElementById('consultingRevenue').textContent = `£${Math.round(remainingRevenueNeeded).toLocaleString()}`;

            document.getElementById('totalRevenue').textContent = `£${Math.round(existingRevenue + remainingRevenueNeeded).toLocaleString()}`;

            

            // Show surplus alert if applicable

            const surplusAlert = document.getElementById('surplusAlert');

            if (remainingRevenueNeeded < 0) {

                surplusAlert.style.display = 'block';

                surplusAlert.querySelector('p').textContent = `✓ Your existing revenue streams exceed your target! You have £${Math.abs(Math.round(remainingRevenueNeeded)).toLocaleString()} surplus.`;

            } else {

                surplusAlert.style.display = 'none';

            }

            

            // Update project calculator

            const projectHours = parseFloat(document.getElementById('projectHours').value) || 0;

            const projectComplexity = parseFloat(document.getElementById('projectComplexity').value) || 1;

            const projectFee = projectHours * recommendedHourlyRate * projectComplexity;

            

            document.getElementById('projectFee').textContent = `£${Math.round(projectFee).toLocaleString()}`;

            document.getElementById('projectCalc').textContent = `${projectHours} hours × £${Math.round(recommendedHourlyRate)} × ${projectComplexity}`;

            

            // Update retainer calculator

            const retainerHours = parseFloat(document.getElementById('retainerHours').value) || 0;

            const retainerMonthlyFee = retainerHours * recommendedHourlyRate;

            const retainerDiscountedFee = retainerMonthlyFee * 0.9;

            

            document.getElementById('retainerStandard').textContent = `£${Math.round(retainerMonthlyFee).toLocaleString()}/month`;

            document.getElementById('retainerDiscounted').textContent = `£${Math.round(retainerDiscountedFee).toLocaleString()}/month`;

            document.getElementById('retainerAnnual').textContent = `£${Math.round(retainerDiscountedFee * 12).toLocaleString()}`;

            document.getElementById('retainerEffective').textContent = `£${Math.round(retainerDiscountedFee / retainerHours)}`;

            

            // Update market comparison

            document.getElementById('yourNEDRate').textContent = `£${existingNEDFee.toLocaleString()}`;

            

            let nedStatus = 'Mid-range';

            if (existingNEDFee < 45000) nedStatus = 'Below mid-range';

            if (existingNEDFee > 80000) nedStatus = 'Premium range';

            document.getElementById('nedStatus').textContent = nedStatus;

            

            document.getElementById('yourConsultingRate').textContent = `£${Math.round(recommendedDayRate).toLocaleString()}`;

            

            let consultingStatus = 'Competitive range';

            if (recommendedDayRate < 2000) consultingStatus = 'Lower than interim';

            if (recommendedDayRate > 3000) consultingStatus = 'Premium positioning';

            document.getElementById('consultingStatus').textContent = consultingStatus;

            

            // Update recommendations

            const recommendations = [

                `• Consider positioning consulting work at £${Math.round(recommendedDayRate/100)*100} per day for easier communication`,

                `• For complex projects (market entry, carrier setup), consider value-based pricing at 2-3x your day rate`,

                `• Bundle retainers with a 10-15% discount to encourage longer commitments`,

                `• Review rates quarterly as you build portfolio and reputation`,

                `• Premium services (CEO/CUO interim) should maintain the £2,500/day market standard`

            ];

            

            if (availableDaysForConsulting < billableDaysTarget) {

                recommendations.push(`⚠ Warning: You may not have enough available days to meet your billable target. Consider reducing NED commitments or adjusting your target.`);

            }

            

            document.getElementById('recommendationsList').innerHTML = recommendations.map(r => `<li>${r}</li>`).join('');

        }

        

        // Add event listeners to all inputs

        const inputs = document.querySelectorAll('input, select');

        inputs.forEach(input => {

            input.addEventListener('input', calculate);

        });

        

        // Initial calculation

        calculate();

    </script>

</body>

</html>