/* ===================== FAQ / Answers page ===================== */
const { Icon, PageShell, PageHero, CTASection } = window;

/* Question-shaped content for search and AI answer engines. Each answer stands
   on its own as useful guidance, then points to how LPM helps. Pro-owner tone:
   errors are honest admin slips caught early, never contractor-bashing. */
const FAQS = [
  {
    q: "How do I know if a lift maintenance invoice is correct?",
    a: "Check each charge against your maintenance contract: the agreed fee, any escalation (CPI) cap, and what the contract includes versus excludes. Most discrepancies stem from a fee rising faster than the agreed-upon escalation, being billed for work the contract already covers, or a visit that was invoiced but did not take place. LPM reads your contract and checks every invoice line against it, so anything that does not match is flagged for you to query rather than being paid quietly.",
  },
  {
    q: "What should a lift maintenance contract include?",
    a: "A clear maintenance agreement sets out the visit frequency, response times for breakdowns and entrapments, what is included versus what is chargeable (for example, minor parts, call-outs, and after-hours attendance), the fee and how it escalates each year, and the term and notice period. The clearer these are, the easier it is to hold the contract to account. LPM extracts and tracks all of them, so you always know what you agreed to.",
  },
  {
    q: "How often should a lift be serviced?",
    a: "Service frequency depends on the lift's age, type, usage and the manufacturer's recommendations, and is set out in your maintenance contract. Monthly is common, ranging from more frequent for busy or older lifts to quarterly for lighter-use units. What matters is that the visits you are paying for actually happen. LPM tracks every scheduled visit against your contract and flags missed services so you can claim the credit.",
  },
  {
    q: "What is an escalation clause, or CPI increase, in a lift contract?",
    a: "An escalation clause is how your maintenance fee rises over the term. It is often linked to CPI, sometimes CPI plus a margin, and occasionally left uncapped. Over the term of a multi-year contract, an uncapped or CPI-plus clause can add up quietly, so it is worth capping escalation before you sign. LPM reads the escalation terms in your contract and checks each invoice's increase against those terms.",
  },
  {
    q: "How do I compare lift maintenance quotes?",
    a: "Contractors quote in different shapes, so headline prices rarely compare like for like. Line up the quotes on the same basis: annual price, visits per year, response times, what is included and what is excluded, escalation, and term. Once cover and terms are normalised, the strongest offer is often not the cheapest. LPM's tender process reviews each submission and compares it against your scope, so you can assess the real value.",
  },
  {
    q: "What are the most common overcharges on lift maintenance invoices?",
    a: "The most common are escalations applied above the agreed cap, charges for work already included in the contract (scope creep), call-outs charged that should be covered or after-hours rates not disclosed upfront, and visits invoiced without a matching service record. Most are honest admin slips rather than anything deliberate, and they are easy to catch early when every invoice is checked against the contract. That is exactly what LPM does automatically.",
  },
  {
    q: "Who is responsible for lift maintenance in a strata or commercial building?",
    a: "In most Australian and New Zealand buildings, the owner, body corporate, or strata committee is responsible for keeping lifts safe and maintained, usually by engaging a lift maintenance contractor and overseeing the agreement. Day-to-day, this often sits with the building manager or the facility management company. LPM is built to give exactly these people a clear, independent view of their lift portfolio.",
  },
  {
    q: "What is a lift maintenance tender, and how do I run one?",
    a: "A maintenance tender is a structured process for inviting and comparing quotes for a lift maintenance agreement. You define the scope (visit frequency, response times, inclusions), invite contractors to submit, compare the submissions on a like-for-like basis, negotiate the terms, and award. LPM runs the whole process in one place, from scope through to a signed agreement built on the terms you negotiated.",
  },
  {
    q: "When do major components need to be replaced, and how do I budget for it?",
    a: "Major lift components such as controllers, drives, ropes, and door operators wear out on reasonably predictable timelines, so replacements can be forecast years in advance rather than arriving as surprise bills. Planning capital works early avoids emergency spend and makes budgeting far easier. LPM forecasts component-level replacement costs across your portfolio and validates them against your repair history.",
  },
  {
    q: "What is LPM, and how does it help building managers?",
    a: "LPM (Lift Portfolio Management) is an independent platform for building managers, strata committees and facility management companies to manage their lift portfolios in one place: contracts, maintenance, invoices, call-outs, audit reports and capital works planning. It gives owners the same level of insight their contractor has, so decisions are informed and spending is checked. There is a 30-day free trial, and no card is required to start.",
  },
];

const faqSchema = {
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://liftportfoliomanagement.com.au/#organization",
      name: "Lift Portfolio Management",
      url: "https://liftportfoliomanagement.com.au/",
      description:
        "Independent lift portfolio management platform for building managers, strata committees and facility management companies in Australia and New Zealand.",
      areaServed: ["AU", "NZ"],
    },
    {
      "@type": "WebSite",
      "@id": "https://liftportfoliomanagement.com.au/#website",
      url: "https://liftportfoliomanagement.com.au/",
      name: "LPM · Lift Portfolio Management",
      publisher: { "@id": "https://liftportfoliomanagement.com.au/#organization" },
    },
    {
      "@type": "FAQPage",
      mainEntity: FAQS.map((f) => ({
        "@type": "Question",
        name: f.q,
        acceptedAnswer: { "@type": "Answer", text: f.a },
      })),
    },
  ],
};

function FaqList() {
  return (
    <section className="section" style={{ paddingTop: 0 }}>
      <div className="wrap">
        <div style={{ maxWidth: 820, margin: "0 auto" }}>
          {FAQS.map((f, i) => (
            <div
              key={i}
              style={{
                padding: "30px 0",
                borderTop: i === 0 ? "none" : "1px solid var(--border)",
              }}
            >
              <h2
                style={{
                  fontSize: 21,
                  fontWeight: 600,
                  color: "var(--text)",
                  letterSpacing: "-0.01em",
                  lineHeight: 1.3,
                  margin: 0,
                }}
              >
                {f.q}
              </h2>
              <p
                style={{
                  fontSize: 16.5,
                  lineHeight: 1.65,
                  color: "var(--muted)",
                  marginTop: 12,
                  marginBottom: 0,
                }}
              >
                {f.a}
              </p>
            </div>
          ))}
        </div>
      </div>
    </section>
  );
}

function Page() {
  return (
    <PageShell current="">
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
      />
      <PageHero
        icon="book"
        kicker="Answers"
        crumb="FAQ"
        title={<>Lift maintenance, <span className="soft">answered.</span></>}
        sub="Straight answers to the questions building managers, strata committees and FM teams ask us most, about contracts, invoices, tenders and keeping lifts running well."
        pills={["Contracts", "Invoices", "Tenders", "Compliance"]}
      />
      <FaqList />
      <CTASection />
    </PageShell>
  );
}

ReactDOM.createRoot(document.getElementById("root")).render(<Page />);
