<?xml version="1.0" encoding="utf-8"?>
<ns1:informationTable xmlns:ns1="http://www.sec.gov/edgar/document/thirteenf/informationtable">
  <ns1:infoTable>
    <ns1:nameOfIssuer>HARTFORD FDS EXCHANGE TRADED</ns1:nameOfIssuer>
    <ns1:titleOfClass>MUN OPORTUNITE</ns1:titleOfClass>
    <ns1:cusip>41653L503</ns1:cusip>
    <ns1:figi>BBG00JGMYXN7</ns1:figi>
    <ns1:value>14410983</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>383679</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>383679</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>CORE S&amp;P MCP ETF</ns1:titleOfClass>
    <ns1:cusip>464287507</ns1:cusip>
    <ns1:figi>BBG001SFC7V0</ns1:figi>
    <ns1:value>79595621</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>329057</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>329057</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>CORE S&amp;P SCP ETF</ns1:titleOfClass>
    <ns1:cusip>464287804</ns1:cusip>
    <ns1:figi>BBG001SFC7W9</ns1:figi>
    <ns1:value>36044813</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>380862</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>380862</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>CORE S&amp;P500 ETF</ns1:titleOfClass>
    <ns1:cusip>464287200</ns1:cusip>
    <ns1:figi>BBG001SFB7R6</ns1:figi>
    <ns1:value>432868</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>1127</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>1127</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>RUS 1000 ETF</ns1:titleOfClass>
    <ns1:cusip>464287622</ns1:cusip>
    <ns1:figi>BBG001S562W9</ns1:figi>
    <ns1:value>173319519</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>823292</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>823292</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>RUS 1000 GRW ETF</ns1:titleOfClass>
    <ns1:cusip>464287614</ns1:cusip>
    <ns1:figi>BBG001S56320</ns1:figi>
    <ns1:value>336143</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>1569</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>1569</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>RUS 1000 VAL ETF</ns1:titleOfClass>
    <ns1:cusip>464287598</ns1:cusip>
    <ns1:figi>BBG001S562P7</ns1:figi>
    <ns1:value>228082</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>1504</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>1504</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>ISHARES TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>RUSSELL 2000 ETF</ns1:titleOfClass>
    <ns1:cusip>464287655</ns1:cusip>
    <ns1:figi>BBG001SFC7Y7</ns1:figi>
    <ns1:value>10643182</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>61041</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>61041</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>J P MORGAN EXCHANGE TRADED F</ns1:nameOfIssuer>
    <ns1:titleOfClass>CORE PLUS BD ETF</ns1:titleOfClass>
    <ns1:cusip>46641Q670</ns1:cusip>
    <ns1:figi>BBG00N6W8XF5</ns1:figi>
    <ns1:value>33004792</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>718589</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>718589</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>J P MORGAN EXCHANGE TRADED F</ns1:nameOfIssuer>
    <ns1:titleOfClass>SHORT DURA CORE</ns1:titleOfClass>
    <ns1:cusip>46641Q274</ns1:cusip>
    <ns1:figi>BBG00Z6Q0T95</ns1:figi>
    <ns1:value>46807965</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>1024244</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>1024244</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>J P MORGAN EXCHANGE TRADED F</ns1:nameOfIssuer>
    <ns1:titleOfClass>ULTRA SHRT INC</ns1:titleOfClass>
    <ns1:cusip>46641Q837</ns1:cusip>
    <ns1:figi>BBG00GP26NW0</ns1:figi>
    <ns1:value>178490635</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>3560555</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>3560555</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>1000 INDEX ETF</ns1:titleOfClass>
    <ns1:cusip>808524722</ns1:cusip>
    <ns1:figi>BBG00HXSKY16</ns1:figi>
    <ns1:value>308656363</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>8357876</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>8357876</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>US AGGREGATE B</ns1:titleOfClass>
    <ns1:cusip>808524839</ns1:cusip>
    <ns1:figi>BBG001WBMLH8</ns1:figi>
    <ns1:value>442137</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>9685</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>9685</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>US BRD MKT ETF</ns1:titleOfClass>
    <ns1:cusip>808524102</ns1:cusip>
    <ns1:figi>BBG001T5XQT9</ns1:figi>
    <ns1:value>717991</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>16023</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>16023</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>US LRG CAP ETF</ns1:titleOfClass>
    <ns1:cusip>808524201</ns1:cusip>
    <ns1:figi>BBG001T5XQV6</ns1:figi>
    <ns1:value>41865241</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>927248</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>927248</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>US MID-CAP ETF</ns1:titleOfClass>
    <ns1:cusip>808524508</ns1:cusip>
    <ns1:figi>BBG001V036R6</ns1:figi>
    <ns1:value>88183125</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>1344050</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>1344050</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SCHWAB STRATEGIC TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>US SML CAP ETF</ns1:titleOfClass>
    <ns1:cusip>808524607</ns1:cusip>
    <ns1:figi>BBG001T5XQW5</ns1:figi>
    <ns1:value>23387782</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>577334</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>577334</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>SPDR S&amp;P 500 ETF TR</ns1:nameOfIssuer>
    <ns1:titleOfClass>TR UNIT</ns1:titleOfClass>
    <ns1:cusip>78462F103</ns1:cusip>
    <ns1:figi>BBG001S72SM3</ns1:figi>
    <ns1:value>3866750</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>10111</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>10111</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
  <ns1:infoTable>
    <ns1:nameOfIssuer>VANGUARD INDEX FDS</ns1:nameOfIssuer>
    <ns1:titleOfClass>TOTAL STK MKT</ns1:titleOfClass>
    <ns1:cusip>922908769</ns1:cusip>
    <ns1:figi>BBG001SHTB03</ns1:figi>
    <ns1:value>5107641</ns1:value>
    <ns1:shrsOrPrnAmt>
      <ns1:sshPrnamt>26715</ns1:sshPrnamt>
      <ns1:sshPrnamtType>SH</ns1:sshPrnamtType>
    </ns1:shrsOrPrnAmt>
    <ns1:investmentDiscretion>SOLE</ns1:investmentDiscretion>
    <ns1:votingAuthority>
      <ns1:Sole>0</ns1:Sole>
      <ns1:Shared>0</ns1:Shared>
      <ns1:None>26715</ns1:None>
    </ns1:votingAuthority>
  </ns1:infoTable>
</ns1:informationTable>
