<?xml version="1.0" encoding="UTF-8"?>
<informationTable
	xmlns="http://www.sec.gov/edgar/document/thirteenf/informationtable">
	<infoTable>
		<nameOfIssuer>ACCENTURE PLC IRELAND</nameOfIssuer>
		<titleOfClass>SHS CLASS A</titleOfClass>
		<cusip>G1151C101</cusip>
		<value>59087863</value>
		<shrsOrPrnAmt>
			<sshPrnamt>239609</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>216652</Sole>
			<Shared>0</Shared>
			<None>22957</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>APPLIED MATLS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>038222105</cusip>
		<value>85470554</value>
		<shrsOrPrnAmt>
			<sshPrnamt>417459</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>377832</Sole>
			<Shared>0</Shared>
			<None>39627</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>BROADCOM INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>11135F101</cusip>
		<value>95590740</value>
		<shrsOrPrnAmt>
			<sshPrnamt>289747</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>262232</Sole>
			<Shared>0</Shared>
			<None>27515</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>BROOKFIELD CORP</nameOfIssuer>
		<titleOfClass>CL A LTD VT SH</titleOfClass>
		<cusip>11271J107</cusip>
		<value>1210543</value>
		<shrsOrPrnAmt>
			<sshPrnamt>17639</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>17639</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CARRIER GLOBAL CORPORATION</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>14448C104</cusip>
		<value>56367911</value>
		<shrsOrPrnAmt>
			<sshPrnamt>944185</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>854134</Sole>
			<Shared>0</Shared>
			<None>90051</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CANADIAN NATL RY CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>136375102</cusip>
		<value>873519</value>
		<shrsOrPrnAmt>
			<sshPrnamt>9261</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>9261</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CINTAS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>172908105</cusip>
		<value>78047043</value>
		<shrsOrPrnAmt>
			<sshPrnamt>380234</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>344051</Sole>
			<Shared>0</Shared>
			<None>36183</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>DOMINOS PIZZA INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>25754A201</cusip>
		<value>68061506</value>
		<shrsOrPrnAmt>
			<sshPrnamt>157655</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>142661</Sole>
			<Shared>0</Shared>
			<None>14994</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>FIRSTSERVICE CORP NEW</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>33767E202</cusip>
		<value>1026414</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5386</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5386</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>GE AEROSPACE</nameOfIssuer>
		<titleOfClass>COM NEW</titleOfClass>
		<cusip>369604301</cusip>
		<value>93934188</value>
		<shrsOrPrnAmt>
			<sshPrnamt>312260</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>282598</Sole>
			<Shared>0</Shared>
			<None>29662</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>INTUIT</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>461202103</cusip>
		<value>76623366</value>
		<shrsOrPrnAmt>
			<sshPrnamt>112201</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>101558</Sole>
			<Shared>0</Shared>
			<None>10643</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>ELI LILLY &amp; CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>532457108</cusip>
		<value>71600326</value>
		<shrsOrPrnAmt>
			<sshPrnamt>93840</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>84927</Sole>
			<Shared>0</Shared>
			<None>8913</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MARSH &amp; MCLENNAN COS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>571748102</cusip>
		<value>69768625</value>
		<shrsOrPrnAmt>
			<sshPrnamt>346194</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>313497</Sole>
			<Shared>0</Shared>
			<None>32697</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MASTERCARD INCORPORATED</nameOfIssuer>
		<titleOfClass>CL A</titleOfClass>
		<cusip>57636Q104</cusip>
		<value>87529036</value>
		<shrsOrPrnAmt>
			<sshPrnamt>153880</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>139286</Sole>
			<Shared>0</Shared>
			<None>14594</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MCKESSON CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>58155Q103</cusip>
		<value>78230642</value>
		<shrsOrPrnAmt>
			<sshPrnamt>101263</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>91627</Sole>
			<Shared>0</Shared>
			<None>9636</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MICROSOFT CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>594918104</cusip>
		<value>91842314</value>
		<shrsOrPrnAmt>
			<sshPrnamt>177318</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>160535</Sole>
			<Shared>0</Shared>
			<None>16783</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MOODYS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>615369105</cusip>
		<value>74842092</value>
		<shrsOrPrnAmt>
			<sshPrnamt>157072</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>142188</Sole>
			<Shared>0</Shared>
			<None>14884</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MSCI INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>55354G100</cusip>
		<value>69967968</value>
		<shrsOrPrnAmt>
			<sshPrnamt>123310</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>111608</Sole>
			<Shared>0</Shared>
			<None>11702</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>OLD DOMINION FREIGHT LINE IN</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>679580100</cusip>
		<value>57051847</value>
		<shrsOrPrnAmt>
			<sshPrnamt>405255</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>366537</Sole>
			<Shared>0</Shared>
			<None>38718</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>OPEN TEXT CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>683715106</cusip>
		<value>1200042</value>
		<shrsOrPrnAmt>
			<sshPrnamt>32098</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>32098</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>S&amp;P GLOBAL INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>78409V104</cusip>
		<value>257956</value>
		<shrsOrPrnAmt>
			<sshPrnamt>530</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>530</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>SHERWIN WILLIAMS CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>824348106</cusip>
		<value>78402450</value>
		<shrsOrPrnAmt>
			<sshPrnamt>226426</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>204849</Sole>
			<Shared>0</Shared>
			<None>21577</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>SPDR S&amp;P 500 ETF TR</nameOfIssuer>
		<titleOfClass>TR UNIT</titleOfClass>
		<cusip>78462F103</cusip>
		<value>2096216</value>
		<shrsOrPrnAmt>
			<sshPrnamt>3147</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>3147</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>TFI INTL INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>87241L109</cusip>
		<value>994347</value>
		<shrsOrPrnAmt>
			<sshPrnamt>11296</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>11296</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>THERMO FISHER SCIENTIFIC INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>883556102</cusip>
		<value>81491372</value>
		<shrsOrPrnAmt>
			<sshPrnamt>168015</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>152003</Sole>
			<Shared>0</Shared>
			<None>16012</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>THOMSON REUTERS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>884903808</cusip>
		<value>811346</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5224</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5224</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>UNITEDHEALTH GROUP INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>91324P102</cusip>
		<value>88440897</value>
		<shrsOrPrnAmt>
			<sshPrnamt>256127</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>231689</Sole>
			<Shared>0</Shared>
			<None>24438</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>VISA INC</nameOfIssuer>
		<titleOfClass>COM CL A</titleOfClass>
		<cusip>92826C839</cusip>
		<value>83568087</value>
		<shrsOrPrnAmt>
			<sshPrnamt>244794</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>221591</Sole>
			<Shared>0</Shared>
			<None>23203</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>WABTEC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>929740108</cusip>
		<value>77443228</value>
		<shrsOrPrnAmt>
			<sshPrnamt>386308</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>349679</Sole>
			<Shared>0</Shared>
			<None>36629</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>WASTE CONNECTIONS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>94106B101</cusip>
		<value>879363</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5001</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5001</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>ZOETIS INC</nameOfIssuer>
		<titleOfClass>CL A</titleOfClass>
		<cusip>98978V103</cusip>
		<value>60913785</value>
		<shrsOrPrnAmt>
			<sshPrnamt>416305</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>376790</Sole>
			<Shared>0</Shared>
			<None>39515</None>
		</votingAuthority>
	</infoTable>
</informationTable>
