{
  "schema": "canli.company-reference.v1",
  "cik": "0000928340",
  "name": "CONSOLIDATED WATER CO. LTD.",
  "selection_policy": "extended-v22",
  "source_url": "https://data.sec.gov/api/xbrl/companyfacts/CIK0000928340.json",
  "source_sha256": "60eec40c3395ac10dc8cd546c94a5e8ce4f6679b4d13e595a263debaa933af3c",
  "fetched_at": "2026-09-20T05:08:58.923Z",
  "policy": "Latest-filed annual-report facts per unit and reporting period at capture time. Duration facts cover 300 to 400 days. This selection can include restatements and is not a point-in-time backtest dataset. Missing concepts are omitted, never zero-filled. Values retain original units and are not currency converted. Extended concepts require compatible unit shapes and at least three reporting ends with changing values within one unit. Constant or incompatible added histories are omitted.",
  "claim_boundary": "Public company accounting reference, not market prices, returns, an investment recommendation, or ALPHAC performance. Validate a separately constructed return series with the validation API; accounting values are not returns.",
  "concepts": [
    {
      "tag": "Assets",
      "taxonomy": "us-gaap",
      "label": "Total assets",
      "kind": "instant",
      "meaning": "Resources recognized on the balance sheet. Book assets are not the market value of the business.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 257565345,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 243313181,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 218437592,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 193006849,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 176354857,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 179555552,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 192017374,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 172515598,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 165480895,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 163604528,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 161575026,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 160459831,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 165364854,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 150449086,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 160859431,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 152201566,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Liabilities",
      "taxonomy": "us-gaap",
      "label": "Total liabilities",
      "kind": "instant",
      "meaning": "Recognized obligations at the reporting date. The definition and scope differ from interest-bearing debt.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 30886006,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 28003534,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 26606918,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 25242660,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 10689434,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 10543003,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 14064500,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 8759695,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 9459518,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 9499156,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 13379921,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 16377167,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 23866481,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 14330706,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 30578075,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 24218443,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "StockholdersEquity",
      "taxonomy": "us-gaap",
      "label": "Stockholders equity",
      "kind": "instant",
      "meaning": "The reported residual interest after liabilities. It is an accounting amount, not market capitalization.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 221650522,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 209960695,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 186827212,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 159667213,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 157578885,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 160909046,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 163759258,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 154971181,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 147932442,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 145604948,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 145040162,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 141149168,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 138899115,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 134191166,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 128724827,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 126382956,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "CashAndCashEquivalentsAtCarryingValue",
      "taxonomy": "us-gaap",
      "label": "Cash and cash equivalents",
      "kind": "instant",
      "meaning": "Cash and qualifying short-term liquid investments under the filer’s accounting policy. Restricted cash and longer-term investments may be reported separately.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 123788390,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 99350121,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 42621898,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 50711751,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 40358059,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 43794150,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 42071083,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 31337477,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 45482966,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 37554116,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 44792734,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 35713689,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 33626516,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 33892655,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 37624179,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 46130237,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2010Q4I",
          "unit": "USD"
        },
        {
          "end": "2009-12-31",
          "val": 44429190,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2009Q4I",
          "unit": "USD"
        },
        {
          "end": "2008-12-31",
          "val": 36261345,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2008Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetIncomeLoss",
      "taxonomy": "us-gaap",
      "label": "Net income or loss",
      "kind": "duration",
      "meaning": "Reported profit or loss for the period. Check the filing for attribution, exceptional items and discontinued operations before comparing companies.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 18336673,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 28237554,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 29585391,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 5856294,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 875579,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 3711528,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 12176093,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 11293487,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 6144062,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 3960501,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 7518701,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 6265358,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 8594519,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 9315514,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 6113218,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 6292025,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 6098571,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInOperatingActivities",
      "taxonomy": "us-gaap",
      "label": "Operating cash flow",
      "kind": "duration",
      "meaning": "Cash generated or used by operating activities. Working-capital timing can make this differ substantially from reported income.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 41713571,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 36515532,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 7970762,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 21331805,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 6966310,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 17335292,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 15203658,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 9046346,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 15121419,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 7823352,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 17319786,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 8743534,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 11556826,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 8546759,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 6100480,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 15096092,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "PaymentsToAcquirePropertyPlantAndEquipment",
      "taxonomy": "us-gaap",
      "label": "Capital expenditure payments",
      "kind": "duration",
      "meaning": "Cash payments to acquire property, plant and equipment. This taxonomy concept does not capture every form of investment or acquisition.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 8541364,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 6696580,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 5047884,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 7542761,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 1490012,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 1728393,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 3525122,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 16202520,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 4549857,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 3462150,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 3113565,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 3626278,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 4315389,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 4574173,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 14057876,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 1266084,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 2560494,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Revenues",
      "taxonomy": "us-gaap",
      "label": "Revenue",
      "kind": "duration",
      "meaning": "Revenue under this specific accounting concept. A missing value is not zero; filers can use other revenue concepts.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 132073368,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 133966633,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 180211233,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 94104972,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 66863502,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 72628126,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 68793651,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 65719857,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 59367022,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 57875707,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 57116202,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 65559078,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 63822131,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 65450702,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 55154492,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 50708554,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 58019517,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInFinancingActivities",
      "taxonomy": "us-gaap",
      "label": "Financing cash flow",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Net cash from financing activities, including borrowing, repayments and transactions with owners. A positive amount does not establish operating profitability.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -8950163,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": -6712154,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -5524565,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -6304873,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -5862031,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -5169926,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": -5124101,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -5786004,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -4271867,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -10583238,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -6180139,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -5471193,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": -21939388,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1118682,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": -7322806,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -6351320,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "NetCashProvidedByUsedInInvestingActivities",
      "taxonomy": "us-gaap",
      "label": "Investing cash flow",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Net cash from investing activities, including asset purchases, disposals and investment transactions. This differs from capital expenditure payments alone.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": -8439222,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 26961421,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": -10887019,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": -4981036,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -3944452,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": -11119755,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1485635,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -17405831,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -2920702,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -2779538,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": -2057349,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": -3175432,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 6667248,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": -18171499,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 2923373,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": -576927,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "RetainedEarningsAccumulatedDeficit",
      "taxonomy": "us-gaap",
      "label": "Retained earnings or deficit",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Accumulated undistributed earnings or deficit at the reporting date. This balance is not cash available for distribution.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 116749048,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 106875581,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 85148820,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 61247699,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 60603056,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 64910709,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 66352733,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 59298161,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 53105196,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 51589337,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 52084175,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 49000621,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 47155548,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 42965179,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 38030943,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 36289706,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "WeightedAverageNumberOfSharesOutstandingBasic",
      "taxonomy": "us-gaap",
      "label": "Basic weighted-average shares",
      "kind": "duration",
      "unitKind": "shares",
      "meaning": "Time-weighted shares used for basic earnings per share. This denominator differs from shares outstanding at a single reporting date.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 15923032,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 15832328,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 15739056,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 15290509,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 15213816,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 15119305,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 15025639,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 14962760,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 14896944,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 14809909,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 14741748,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 14697896,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 14633884,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 14578518,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 14560259,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 14547065,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 14535192,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "shares"
        }
      ]
    },
    {
      "tag": "WeightedAverageNumberOfDilutedSharesOutstanding",
      "taxonomy": "us-gaap",
      "label": "Diluted weighted-average shares",
      "kind": "duration",
      "unitKind": "shares",
      "meaning": "Weighted-average shares used for diluted earnings per share. Potential shares are included under the applicable dilution rules, not simply added to outstanding shares.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 16008063,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 15935962,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 15865897,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 15401653,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 15310145,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 15223955,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 15137076,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 15074147,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 15006681,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 14944028,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 14827755,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 14764323,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 14703880,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 14606148,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 14596013,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 14597894,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 14588144,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareBasic",
      "taxonomy": "us-gaap",
      "label": "Basic earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per basic common share or unit. Inspect attribution, share classes and restatements before comparing periods. This is not a market return.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 1.15,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 1.78,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1.88,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.38,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.06,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0.24,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.81,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.75,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.41,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 0.27,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.51,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.43,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 0.59,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.64,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.42,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD/shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 0.43,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD/shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 0.42,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD/shares"
        }
      ]
    },
    {
      "tag": "EarningsPerShareDiluted",
      "taxonomy": "us-gaap",
      "label": "Diluted earnings per share",
      "kind": "duration",
      "unitKind": "per-share",
      "meaning": "Reported earnings or loss per share under dilution rules. Antidilutive instruments may be excluded. A diluted value can equal the basic value without implying no potential dilution.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 1.14,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD/shares"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 1.77,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD/shares"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1.86,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD/shares"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 0.38,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD/shares"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 0.06,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD/shares"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 0.24,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD/shares"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 0.8,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD/shares"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 0.75,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD/shares"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 0.41,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD/shares"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 0.27,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD/shares"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0.51,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD/shares"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0.42,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD/shares"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 0.58,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD/shares"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 0.64,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD/shares"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 0.42,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD/shares"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 0.43,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD/shares"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 0.42,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD/shares"
        }
      ]
    },
    {
      "tag": "IncomeTaxExpenseBenefit",
      "taxonomy": "us-gaap",
      "label": "Income tax expense or benefit",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Current and deferred income tax expense or benefit for continuing operations. This accounting expense differs from cash taxes paid.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 2164648,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 2218514,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 6750014,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 396739,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": -447982,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 86724,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 66621,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": -157291,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": -888977,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": -536057,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 0,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 0,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "PropertyPlantAndEquipmentNet",
      "taxonomy": "us-gaap",
      "label": "Net property, plant and equipment",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Carrying amount of property, plant and equipment after accumulated depreciation, depletion and amortization. It is not replacement cost or market value.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 55151758,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 52432282,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 55882521,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 52529545,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 52946539,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 57687984,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 61238752,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 58880818,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 49683771,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 53084105,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 53743170,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 56396988,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 58602886,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 58993406,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 64185110,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 55923731,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "ShareBasedCompensation",
      "taxonomy": "us-gaap",
      "label": "Share-based compensation expense",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Reported noncash expense for share-based payment arrangements. Noncash treatment does not mean the awards have no economic cost to shareholders.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 1701904,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 1397583,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 1933666,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 1417172,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 977232,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 1163261,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1192224,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 850136,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 803577,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 521019,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 407668,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 202454,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 381976,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 453686,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 566593,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 305002,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 497938,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "OperatingIncomeLoss",
      "taxonomy": "us-gaap",
      "label": "Operating income or loss",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Operating revenue less operating expenses for the reporting period. It excludes items outside the reported operating result and is not free cash flow.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 18360191,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 18284798,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 37167627,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 9272185,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 2010996,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 8347554,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 11718225,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 7976094,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 2276004,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 2137683,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 8435498,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 6461059,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 7661576,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 6928181,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 5370417,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 5280847,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 12897820,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AssetsCurrent",
      "taxonomy": "us-gaap",
      "label": "Current assets",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Assets classified as current under the normal operating cycle or one-year boundary. Not all current assets can be converted immediately into cash.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 169636892,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 157746364,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 112714375,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 92574256,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 77062722,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 72932206,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 73167842,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 62364232,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 66691397,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 60875792,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 65430730,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 59111557,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 66582915,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 61258777,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 67333127,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 63726324,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "InterestExpense",
      "taxonomy": "us-gaap",
      "label": "Interest expense",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Borrowing costs recognized as interest expense. This is distinct from cash interest paid and may not include every capitalized borrowing cost.",
      "observations": [
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 145284,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 46545,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 10248,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 9669,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 1332,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 8427,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 5722,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 104048,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 269090,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 488770,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 484057,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 876971,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 1141744,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 1584771,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 1698084,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "LiabilitiesCurrent",
      "taxonomy": "us-gaap",
      "label": "Current liabilities",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Obligations classified as current under the operating-cycle or one-year boundary. The balance includes more than short-term borrowing.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 27702447,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 24938509,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 23904646,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 22656585,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 7686657,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 6939116,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 7898844,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 7899994,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 7631318,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 6679088,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 13155094,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 16152340,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 23577089,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 8690126,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 23304985,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 6891730,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "Goodwill",
      "taxonomy": "us-gaap",
      "label": "Goodwill carrying amount",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Recognized goodwill remaining after accumulated impairment. It arises from business combinations and does not measure the current value of the company’s brand.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 12861404,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 12861404,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 12861404,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 10425013,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 10425013,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 13325013,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 13325013,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 8004597,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 8003568,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 9784248,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 3499037,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 3499037,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 3499037,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 3499037,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 3587754,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 3587754,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "FiniteLivedIntangibleAssetsNet",
      "taxonomy": "us-gaap",
      "label": "Net finite-lived intangible assets",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Finite-lived intangible assets after amortization. This excludes goodwill and should not be combined with indefinite-lived intangible assets without checking scope.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 2101555,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025Q4I",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 2696815,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 3353185,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 2818888,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 3401666,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 4148333,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 5040000,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 1891667,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 3765434,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 5195476,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 771811,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 927900,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 1096488,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 1455015,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2012Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "AccountsReceivableNetCurrent",
      "taxonomy": "us-gaap",
      "label": "Net current accounts receivable",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Current customer receivables after the allowance for credit loss. The balance is not cash collected or a guarantee of collection.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 32768537,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 39580982,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 38226891,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 27046182,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 27349307,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 21483976,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 22953659,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 22462217,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 14687078,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 16500798,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 9529016,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 11773744,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 18859560,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 12516466,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 8537232,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 12132730,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "InventoryNet",
      "taxonomy": "us-gaap",
      "label": "Net inventory",
      "kind": "instant",
      "unitKind": "money",
      "meaning": "Inventory carrying amount after applicable valuation and LIFO reserves. It does not establish realizable selling proceeds or inventory turnover without other inputs.",
      "observations": [
        {
          "end": "2025-12-31",
          "val": 3736845,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "unit": "USD"
        },
        {
          "end": "2024-12-31",
          "val": 8960350,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024Q4I",
          "unit": "USD"
        },
        {
          "end": "2023-12-31",
          "val": 6044642,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2023Q4I",
          "unit": "USD"
        },
        {
          "end": "2022-12-31",
          "val": 5727842,
          "accn": "0001558370-24-004095",
          "fy": 2023,
          "fp": "FY",
          "form": "10-K",
          "filed": "2024-03-27",
          "frame": "CY2022Q4I",
          "unit": "USD"
        },
        {
          "end": "2021-12-31",
          "val": 2504832,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021Q4I",
          "unit": "USD"
        },
        {
          "end": "2020-12-31",
          "val": 3214178,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020Q4I",
          "unit": "USD"
        },
        {
          "end": "2019-12-31",
          "val": 3287555,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019Q4I",
          "unit": "USD"
        },
        {
          "end": "2018-12-31",
          "val": 2232721,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018Q4I",
          "unit": "USD"
        },
        {
          "end": "2017-12-31",
          "val": 1583553,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017Q4I",
          "unit": "USD"
        },
        {
          "end": "2016-12-31",
          "val": 2305879,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016Q4I",
          "unit": "USD"
        },
        {
          "end": "2015-12-31",
          "val": 1918728,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2015Q4I",
          "unit": "USD"
        },
        {
          "end": "2014-12-31",
          "val": 1738382,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2014Q4I",
          "unit": "USD"
        },
        {
          "end": "2013-12-31",
          "val": 1383135,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2013Q4I",
          "unit": "USD"
        },
        {
          "end": "2012-12-31",
          "val": 1757601,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2012Q4I",
          "unit": "USD"
        },
        {
          "end": "2011-12-31",
          "val": 1451639,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2011Q4I",
          "unit": "USD"
        },
        {
          "end": "2010-12-31",
          "val": 1434811,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2010Q4I",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "GrossProfit",
      "taxonomy": "us-gaap",
      "label": "Gross profit",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Revenue less the costs directly attributed to the goods or services sold. It precedes other operating expenses and is not net income.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 48378810,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 45624448,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 61927105,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 30355123,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 23507191,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 26768455,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 28274348,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 26742287,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 23998561,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 24250886,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 23308220,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 23472100,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 23505879,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 21992442,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 19022067,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 16610495,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 22999077,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    },
    {
      "tag": "CostOfRevenue",
      "taxonomy": "us-gaap",
      "label": "Cost of revenue",
      "kind": "duration",
      "unitKind": "money",
      "meaning": "Costs attributed to goods produced and sold and services provided during the period. This is not the sum of every operating expense.",
      "observations": [
        {
          "start": "2025-01-01",
          "end": "2025-12-31",
          "val": 83694558,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2025",
          "unit": "USD"
        },
        {
          "start": "2024-01-01",
          "end": "2024-12-31",
          "val": 88342185,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2024",
          "unit": "USD"
        },
        {
          "start": "2023-01-01",
          "end": "2023-12-31",
          "val": 118284128,
          "accn": "0001104659-26-028587",
          "fy": 2025,
          "fp": "FY",
          "form": "10-K",
          "filed": "2026-03-16",
          "frame": "CY2023",
          "unit": "USD"
        },
        {
          "start": "2022-01-01",
          "end": "2022-12-31",
          "val": 63749849,
          "accn": "0001558370-25-003137",
          "fy": 2024,
          "fp": "FY",
          "form": "10-K",
          "filed": "2025-03-17",
          "frame": "CY2022",
          "unit": "USD"
        },
        {
          "start": "2021-01-01",
          "end": "2021-12-31",
          "val": 43356311,
          "accn": "0001558370-23-005147",
          "fy": 2022,
          "fp": "FY",
          "form": "10-K",
          "filed": "2023-03-30",
          "frame": "CY2021",
          "unit": "USD"
        },
        {
          "start": "2020-01-01",
          "end": "2020-12-31",
          "val": 45859671,
          "accn": "0001558370-22-004635",
          "fy": 2021,
          "fp": "FY",
          "form": "10-K",
          "filed": "2022-03-29",
          "frame": "CY2020",
          "unit": "USD"
        },
        {
          "start": "2019-01-01",
          "end": "2019-12-31",
          "val": 40519303,
          "accn": "0001558370-21-003844",
          "fy": 2020,
          "fp": "FY",
          "form": "10-K",
          "filed": "2021-03-31",
          "frame": "CY2019",
          "unit": "USD"
        },
        {
          "start": "2018-01-01",
          "end": "2018-12-31",
          "val": 38977570,
          "accn": "0001104659-20-033398",
          "fy": 2019,
          "fp": "FY",
          "form": "10-K",
          "filed": "2020-03-16",
          "frame": "CY2018",
          "unit": "USD"
        },
        {
          "start": "2017-01-01",
          "end": "2017-12-31",
          "val": 35368461,
          "accn": "0001144204-19-014413",
          "fy": 2018,
          "fp": "FY",
          "form": "10-K",
          "filed": "2019-03-18",
          "frame": "CY2017",
          "unit": "USD"
        },
        {
          "start": "2016-01-01",
          "end": "2016-12-31",
          "val": 33624821,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2016",
          "unit": "USD"
        },
        {
          "start": "2015-01-01",
          "end": "2015-12-31",
          "val": 33807982,
          "accn": "0001144204-18-015327",
          "fy": 2017,
          "fp": "FY",
          "form": "10-K",
          "filed": "2018-03-16",
          "frame": "CY2015",
          "unit": "USD"
        },
        {
          "start": "2014-01-01",
          "end": "2014-12-31",
          "val": 42086978,
          "accn": "0001144204-17-015173",
          "fy": 2016,
          "fp": "FY",
          "form": "10-K",
          "filed": "2017-03-16",
          "frame": "CY2014",
          "unit": "USD"
        },
        {
          "start": "2013-01-01",
          "end": "2013-12-31",
          "val": 40316252,
          "accn": "0001144204-16-088251",
          "fy": 2015,
          "fp": "FY",
          "form": "10-K",
          "filed": "2016-03-15",
          "frame": "CY2013",
          "unit": "USD"
        },
        {
          "start": "2012-01-01",
          "end": "2012-12-31",
          "val": 43458260,
          "accn": "0001144204-15-016020",
          "fy": 2014,
          "fp": "FY",
          "form": "10-K",
          "filed": "2015-03-13",
          "frame": "CY2012",
          "unit": "USD"
        },
        {
          "start": "2011-01-01",
          "end": "2011-12-31",
          "val": 36132425,
          "accn": "0001144204-14-016217",
          "fy": 2013,
          "fp": "FY",
          "form": "10-K",
          "filed": "2014-03-17",
          "frame": "CY2011",
          "unit": "USD"
        },
        {
          "start": "2010-01-01",
          "end": "2010-12-31",
          "val": 34098059,
          "accn": "0001144204-13-014871",
          "fy": 2012,
          "fp": "FY",
          "form": "10-K",
          "filed": "2013-03-13",
          "frame": "CY2010",
          "unit": "USD"
        },
        {
          "start": "2009-01-01",
          "end": "2009-12-31",
          "val": 35020440,
          "accn": "0001144204-12-015353",
          "fy": 2011,
          "fp": "FY",
          "form": "10-K",
          "filed": "2012-03-15",
          "frame": "CY2009",
          "unit": "USD"
        }
      ]
    }
  ],
  "source_snapshot": "/company-data/sources/60eec40c3395ac10dc8cd546c94a5e8ce4f6679b4d13e595a263debaa933af3c.json.gz"
}
