<?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>74387203</value>
		<shrsOrPrnAmt>
			<sshPrnamt>248878</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>225924</Sole>
			<Shared>0</Shared>
			<None>22954</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>APPLIED MATLS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>038222105</cusip>
		<value>78855936</value>
		<shrsOrPrnAmt>
			<sshPrnamt>430741</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>391120</Sole>
			<Shared>0</Shared>
			<None>39621</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>BROADCOM INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>11135F101</cusip>
		<value>91909877</value>
		<shrsOrPrnAmt>
			<sshPrnamt>333429</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>302898</Sole>
			<Shared>0</Shared>
			<None>30531</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>BROOKFIELD CORP</nameOfIssuer>
		<titleOfClass>CL A LTD VT SH</titleOfClass>
		<cusip>11271J107</cusip>
		<value>1156016</value>
		<shrsOrPrnAmt>
			<sshPrnamt>18716</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>18716</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CARRIER GLOBAL CORPORATION</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>14448C104</cusip>
		<value>71408332</value>
		<shrsOrPrnAmt>
			<sshPrnamt>975656</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>886240</Sole>
			<Shared>0</Shared>
			<None>89416</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CANADIAN NATL RY CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>136375102</cusip>
		<value>1026350</value>
		<shrsOrPrnAmt>
			<sshPrnamt>9870</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>9870</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>CINTAS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>172908105</cusip>
		<value>87701927</value>
		<shrsOrPrnAmt>
			<sshPrnamt>393511</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>357333</Sole>
			<Shared>0</Shared>
			<None>36178</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>DOMINOS PIZZA INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>25754A201</cusip>
		<value>73462160</value>
		<shrsOrPrnAmt>
			<sshPrnamt>163032</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>148040</Sole>
			<Shared>0</Shared>
			<None>14992</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>FIRSTSERVICE CORP NEW</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>33767E202</cusip>
		<value>999631</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5740</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5740</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>GE AEROSPACE</nameOfIssuer>
		<titleOfClass>COM NEW</titleOfClass>
		<cusip>369604301</cusip>
		<value>109607425</value>
		<shrsOrPrnAmt>
			<sshPrnamt>425841</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>386760</Sole>
			<Shared>0</Shared>
			<None>39081</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>INTUIT</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>461202103</cusip>
		<value>91447188</value>
		<shrsOrPrnAmt>
			<sshPrnamt>116103</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>105472</Sole>
			<Shared>0</Shared>
			<None>10631</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>ELI LILLY &amp; CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>532457108</cusip>
		<value>75507355</value>
		<shrsOrPrnAmt>
			<sshPrnamt>96863</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>87951</Sole>
			<Shared>0</Shared>
			<None>8912</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MARSH &amp; MCLENNAN COS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>571748102</cusip>
		<value>78200857</value>
		<shrsOrPrnAmt>
			<sshPrnamt>357669</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>324977</Sole>
			<Shared>0</Shared>
			<None>32692</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MASTERCARD INCORPORATED</nameOfIssuer>
		<titleOfClass>CL A</titleOfClass>
		<cusip>57636Q104</cusip>
		<value>89279406</value>
		<shrsOrPrnAmt>
			<sshPrnamt>158876</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>144285</Sole>
			<Shared>0</Shared>
			<None>14591</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MCKESSON CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>58155Q103</cusip>
		<value>76723093</value>
		<shrsOrPrnAmt>
			<sshPrnamt>104701</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>95066</Sole>
			<Shared>0</Shared>
			<None>9635</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MICROSOFT CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>594918104</cusip>
		<value>91036671</value>
		<shrsOrPrnAmt>
			<sshPrnamt>183021</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>166240</Sole>
			<Shared>0</Shared>
			<None>16781</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MOODYS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>615369105</cusip>
		<value>81400083</value>
		<shrsOrPrnAmt>
			<sshPrnamt>162283</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>147415</Sole>
			<Shared>0</Shared>
			<None>14868</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>MSCI INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>55354G100</cusip>
		<value>73480657</value>
		<shrsOrPrnAmt>
			<sshPrnamt>127407</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>115717</Sole>
			<Shared>0</Shared>
			<None>11690</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>OLD DOMINION FREIGHT LINE IN</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>679580100</cusip>
		<value>68332855</value>
		<shrsOrPrnAmt>
			<sshPrnamt>421028</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>382355</Sole>
			<Shared>0</Shared>
			<None>38673</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>OPEN TEXT CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>683715106</cusip>
		<value>997564</value>
		<shrsOrPrnAmt>
			<sshPrnamt>34209</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>34209</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>S&amp;P GLOBAL INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>78409V104</cusip>
		<value>369103</value>
		<shrsOrPrnAmt>
			<sshPrnamt>700</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>700</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>SHERWIN WILLIAMS CO</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>824348106</cusip>
		<value>80325213</value>
		<shrsOrPrnAmt>
			<sshPrnamt>233938</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>212514</Sole>
			<Shared>0</Shared>
			<None>21424</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>SPDR S&amp;P 500 ETF TR</nameOfIssuer>
		<titleOfClass>TR UNIT</titleOfClass>
		<cusip>78462F103</cusip>
		<value>447460</value>
		<shrsOrPrnAmt>
			<sshPrnamt>724</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>724</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>TFI INTL INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>87241L109</cusip>
		<value>1076823</value>
		<shrsOrPrnAmt>
			<sshPrnamt>12020</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>12020</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>THERMO FISHER SCIENTIFIC INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>883556102</cusip>
		<value>70346801</value>
		<shrsOrPrnAmt>
			<sshPrnamt>173498</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>157488</Sole>
			<Shared>0</Shared>
			<None>16010</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>THOMSON REUTERS CORP</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>884903808</cusip>
		<value>1118238</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5572</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5572</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>UNITEDHEALTH GROUP INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>91324P102</cusip>
		<value>46369385</value>
		<shrsOrPrnAmt>
			<sshPrnamt>148633</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>134927</Sole>
			<Shared>0</Shared>
			<None>13706</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>VISA INC</nameOfIssuer>
		<titleOfClass>COM CL A</titleOfClass>
		<cusip>92826C839</cusip>
		<value>89866419</value>
		<shrsOrPrnAmt>
			<sshPrnamt>253109</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>229910</Sole>
			<Shared>0</Shared>
			<None>23199</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>WABTEC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>929740108</cusip>
		<value>83656984</value>
		<shrsOrPrnAmt>
			<sshPrnamt>399603</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>363012</Sole>
			<Shared>0</Shared>
			<None>36591</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>WASTE CONNECTIONS INC</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>94106B101</cusip>
		<value>994403</value>
		<shrsOrPrnAmt>
			<sshPrnamt>5334</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>5334</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>ZOETIS INC</nameOfIssuer>
		<titleOfClass>CL A</titleOfClass>
		<cusip>98978V103</cusip>
		<value>67231470</value>
		<shrsOrPrnAmt>
			<sshPrnamt>431108</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>391600</Sole>
			<Shared>0</Shared>
			<None>39508</None>
		</votingAuthority>
	</infoTable>
</informationTable>
