/* Sam's article — How to Insure Your First Home Without Overpaying
 * Format: Sam editorial — Crumbs, Hero, Lede, WhatYouNeed, Steps, Affiliate, HotTakes, Signoff.
 * Copy is Sam's, lifted from the draft and arranged into her standard template.
 */

const SamSays = ({ children }) => (
  <div className="sa-step-says">
    <span className="who">- Sam</span>
    <p>{children}</p>
  </div>
);

const heroImage = "cover.jpg";
const imgRebuild = "sam-fig-rebuild.jpg";
const imgPieces = "sam-fig-parts.jpg";
const imgDeductible = "sam-fig-deductible.jpg";
const imgShop = "sam-fig-shop.jpg";

const Crumbs = () => (
  <nav className="sa-crumbs" aria-label="Breadcrumb">
    <div className="l">
      <a href="/">Home</a>
      <span>/</span>
      <a href="/en/contributors/sam/">Sam</a>
      <span>/</span>
      <span>First Home</span>
      <span>/</span>
      <span style={{ color: "#EFE5CF" }}>Insure it without overpaying</span>
    </div>
    <div className="r">
      <span>Issue 06 | Summer '26</span>
      <span className="by">written by Sam</span>
    </div>
  </nav>
);

const Hero = () => (
  <section className="sa-hero">
    <div className="img" style={{ backgroundImage: `url('${heroImage}')` }} />
    <div className="sa-hero-wrap">
      <div>
        <div className="sa-hero-kicker">
          <span>Sam</span>
          <span className="dot">*</span>
          <span>First Home + Buying</span>
          <span className="dot">*</span>
          <span className="sig">written by Sam</span>
        </div>
        <h1>
          Your house costs more to rebuild than to <em>buy.</em>
        </h1>
        <p className="standfirst">
          Insure the wrong one and you overpay for years. First-home insurance, explained by someone who just went through the renter-to-homeowner whiplash. The goal is enough coverage and not one dollar more.
        </p>
      </div>
      <div className="sa-hero-side">
        <div className="row">
          <span>Read</span>
          <span className="v">6 minutes</span>
        </div>
        <div className="row">
          <span>Saves you</span>
          <span className="v">Double digits, yearly</span>
        </div>
        <div className="row">
          <span>Skill</span>
          <span className="v">Ask one question</span>
        </div>
        <div className="row">
          <span>Stakes</span>
          <span className="v warn">A decade of overpaying</span>
        </div>
        <div className="row">
          <span>Updated</span>
          <span className="v">July '26</span>
        </div>
      </div>
    </div>
    <div className="sa-hero-scribble">
      insure the rebuild. <u>not the dirt.</u>
      <svg viewBox="0 0 60 30" fill="none">
        <path d="M2 22 C 12 8, 28 4, 56 12" stroke="currentColor" strokeWidth="2" strokeLinecap="round" />
        <path d="M48 6 L 56 12 L 50 20" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" fill="none" />
      </svg>
    </div>
  </section>
);

const Lede = () => (
  <section className="sa-lede">
    <div className="sa-lede-wrap">
      <aside className="sa-lede-side">
        <div className="marker">In this one</div>
        <ul>
          <li>The one number everyone gets wrong</li>
          <li>The four coverage pieces</li>
          <li>The deductible lever</li>
          <li>How to not overpay</li>
          <li>Worth it / not worth it</li>
          <li>The gap that ruins people</li>
        </ul>
      </aside>

      <div className="sa-lede-body">
        <p className="dropcap">
          I went from renter to homeowner and nobody warned me that the insurance part is where you quietly overpay for a decade if you get one number wrong.
        </p>
        <p>
          Renters insurance was twelve dollars and a shrug. Homeowners insurance is a real bill, it's often bundled into your mortgage so you never even see it leave, and that invisibility is exactly how people end up paying for coverage they don't need on a number that was wrong from day one. So here's the whole thing, in the order that actually matters.
        </p>
        <div className="sa-pullquote">
          <p>
            The land doesn't burn. Insure the rebuild, not the purchase price — or you're paying every month to protect dirt.
          </p>
        </div>
        <p>
          None of this is complicated. It's just nobody sits a first-timer down and says it out loud, so the default number sticks and the money leaks out quietly for years. Let's fix the number.
        </p>
      </div>

      <aside className="sa-margin">
        <span className="lab">Sam's note</span>
        <h4>Invisible isn't free</h4>
        <p>
          The dangerous thing about a premium bundled into your mortgage is you never watch it leave. Coverage you'd question on a bill you never see gets to sit there for years. Go look at the number.
        </p>
      </aside>
    </div>
  </section>
);

const WhatYouNeed = () => (
  <section className="sa-need">
    <div className="sa-need-wrap">
      <div>
        <div className="sa-need-head">01 / The policy</div>
        <h2>
          What a policy is <em>actually</em> made of
        </h2>
        <p className="body">
          Four pieces, and you should know them so nobody can pad the bill. Everything on a homeowners policy is one of these — dwelling, personal property, liability, loss of use. Once you can name them, you can tell which one someone's quietly inflating.
        </p>

        <div className="sa-need-dont">
          <span className="lab">Don't pay for</span>
          <ul>
            <li>
              Insuring the land
              <span className="why">The land doesn't burn. If a $400k house rebuilds for $300k, you insure $300k. Insure the full purchase price and you're protecting dirt that isn't going anywhere.</span>
            </li>
            <li>
              "Actual cash value" on your stuff
              <span className="why">That pays you the sad depreciated price of your six-year-old couch. Get replacement cost instead.</span>
            </li>
            <li>
              A low deductible you're keeping "just in case"
              <span className="why">That just-in-case costs you every single month for a convenience you'll use approximately never.</span>
            </li>
          </ul>
        </div>
      </div>

      <ul className="sa-need-list">
        <li>
          <span className="item">
            Dwelling — at rebuild cost
            <span className="why">The structure itself, priced at what it costs to rebuild from a hole in the ground. The big one, and the number first-timers get wrong.</span>
          </span>
          <span className="qty">Core</span>
        </li>
        <li>
          <span className="item">
            Personal property — replacement cost
            <span className="why">Your stuff inside, same idea as renters insurance, usually a percentage of the dwelling amount. Insist on replacement cost, not depreciated value.</span>
          </span>
          <span className="qty">Core</span>
        </li>
        <li>
          <span className="item">
            Liability — don't cheap out
            <span className="why">Someone gets hurt on your property, or you cause damage — this covers the claim and the lawyer instead of your savings. It protects everything you own, not just the house.</span>
          </span>
          <span className="qty">Core</span>
        </li>
        <li>
          <span className="item">
            Loss of use
            <span className="why">If the place is unlivable after a covered disaster, this pays for somewhere to stay while it's fixed.</span>
          </span>
          <span className="qty">Core</span>
        </li>
        <li>
          <span className="item">
            Water backup coverage
            <span className="why">The one add-on I'd actually pay for if you have a basement. A backed-up sewer line is disgusting and specifically not covered by the standard policy.</span>
          </span>
          <span className="qty">Add-on</span>
        </li>
        <li>
          <span className="item">
            A separate flood policy — if you're near a flood zone
            <span className="why">Standard policies do not cover flood, and "flood" includes a lot of water events people assume are covered. Ask before you close, not after.</span>
          </span>
          <span className="qty">If near</span>
        </li>
      </ul>
    </div>
  </section>
);

const STEPS = [
  {
    n: "01",
    phase: "Number | the rebuild",
    title: "The one number everyone gets wrong.",
    flip: false,
    body: (
      <>
        <p>
          Your house has two prices and they are not the same price. There's what you paid for it — which includes the land — and there's what it would cost to rebuild it from a hole in the ground if it burned down. Insurance covers the rebuild, not the purchase price. This trips up every first-timer, so read it twice.
        </p>
        <p>
          The land doesn't burn. If you bought a $400,000 house but the structure would cost $300,000 to rebuild, you insure the $300,000. Insure the full $400,000 and you're paying premiums every month to protect dirt that is not going anywhere.
        </p>
      </>
    ),
    warn: { lab: "It's usually their default", text: "The high number is usually the insurer's default, not yours — so it's on you to catch it. Say the rebuild cost out loud so they can't quietly default you high." },
    fig: { img: imgRebuild, tag: "Fig 01 | Two prices", cap: "the land doesn't burn. insure the rebuild, not the purchase price." },
    says: "Purchase price includes the dirt. The dirt is not going anywhere. Insure what actually burns."
  },
  {
    n: "02",
    phase: "Pieces | the four parts",
    title: "What a homeowners policy is actually made of.",
    flip: true,
    body: (
      <>
        <p>
          Four pieces, and you should know them so nobody can pad the bill. <strong>Dwelling</strong> — the structure itself, at rebuild cost, the one from the section above. <strong>Personal property</strong> — your stuff inside, same idea as renters insurance, usually set as a percentage of the dwelling amount. Get replacement cost, not "actual cash value," or they pay you the sad depreciated price of your six-year-old couch.
        </p>
        <p>
          <strong>Liability</strong> — someone gets hurt on your property, or you accidentally cause damage, and this covers the claim and the lawyer instead of your savings. Don't cheap out here; it's the part that protects everything you own, not just the house. <strong>Loss of use</strong> — if the place is unlivable after a covered disaster, this pays for somewhere to stay while it's fixed.
        </p>
      </>
    ),
    tip: { lab: "Replacement cost, always", text: "The two words that matter on personal property are 'replacement cost.' Actual cash value depreciates everything you own to its saddest resale price. Never accept it." },
    fig: { img: imgPieces, tag: "Fig 02 | Four parts", cap: "dwelling, personal property, liability, loss of use. name them and nobody pads the bill." }
  },
  {
    n: "03",
    phase: "Lever | the deductible",
    title: "The deductible lever — the one dial you control.",
    flip: false,
    body: (
      <>
        <p>
          Your deductible is the amount you pay before insurance kicks in, and it's the one dial you actually control. Raise it and your monthly premium drops. The trade is real: a higher deductible means more out of pocket when something goes wrong, so only raise it as high as the cash you could actually put your hands on in an emergency.
        </p>
        <p>
          For a lot of first-timers, moving from a $500 to a $1,000 deductible shaves the premium meaningfully and you'll never notice unless you file a claim. Don't set it to a number you couldn't cover the week your water heater dies.
        </p>
      </>
    ),
    warn: { lab: "The honest limit", text: "Raise the deductible to the edge of what you could pay in a pinch — not past it. If you couldn't cover it the week the water heater dies, it's too high." },
    fig: { img: imgDeductible, tag: "Fig 03 | The dial", cap: "higher deductible, lower premium. only as high as the cash you could actually reach." },
    says: "It's the one number you fully control. Set it to the edge of your emergency cash — and no further."
  },
  {
    n: "04",
    phase: "Overpay | the checklist",
    title: "How to not overpay.",
    flip: true,
    body: (
      <>
        <p>
          Five moves, in order. <strong>Insure the rebuild cost, not the purchase price</strong> — say it to the agent out loud so they can't default you high. <strong>Bundle it with your car insurance</strong> — it's the laziest real discount that exists and it's usually double digits. <strong>Raise the deductible</strong> to the edge of what you could pay in a pinch, not past it.
        </p>
        <p>
          <strong>Ask, out loud, for the discount list</strong> — new roof, security system, smoke detectors, no claims history. They do not volunteer these. And <strong>shop it against at least two other quotes before you renew, every year.</strong> Loyalty is not rewarded in this category. It's punished.
        </p>
      </>
    ),
    tip: { lab: "Loyalty is punished", text: "Shopping your policy against two other quotes every year before renewal is the single highest-return hour you'll spend. Staying put out of habit is how the number creeps up." },
    fig: { img: imgShop, tag: "Fig 04 | The checklist", cap: "rebuild cost, bundle, deductible, discount list, shop it yearly." }
  }
];

const Step = ({ data }) => (
  <article className={`sa-step ${data.flip ? "flip" : ""}`}>
    <div className="sa-step-text">
      <div className="sa-step-meta">
        <span className="sa-step-num">{data.n}</span>
        <span className="sa-step-phase">{data.phase}</span>
      </div>
      <h3>{data.title}</h3>
      <div className="sa-step-body">{data.body}</div>
      {data.tip && (
        <div className="sa-step-tip">
          <span className="lab">{data.tip.lab}</span>
          <p>{data.tip.text}</p>
        </div>
      )}
      {data.warn && (
        <div className="sa-step-warn">
          <span className="lab">{data.warn.lab}</span>
          <p>{data.warn.text}</p>
        </div>
      )}
    </div>
    <figure className="sa-step-fig">
      <div className="frame">
        <span className="tag">{data.fig.tag}</span>
        <img src={data.fig.img} alt="" loading="lazy" />
      </div>
      <figcaption>{data.fig.cap}</figcaption>
      {data.says && <SamSays>{data.says}</SamSays>}
    </figure>
  </article>
);

const Steps = () => (
  <section className="sa-steps">
    <div className="sa-steps-wrap">
      <header className="sa-steps-head">
        <h2>
          The <em>four</em> moves
        </h2>
        <span className="count">04 MOVES | ENOUGH COVERAGE, NOT ONE DOLLAR MORE</span>
      </header>
      {STEPS.map((s) => (
        <Step key={s.n} data={s} />
      ))}
    </div>
  </section>
);

const Affiliate = () => (
  <section
    style={{
      background: "var(--sa-bg-soft)",
      borderTop: "1px solid var(--sa-rule)",
      borderBottom: "1px solid var(--sa-rule)",
      padding: "56px 24px"
    }}
  >
    <div
      style={{
        maxWidth: 780,
        margin: "0 auto",
        background: "var(--sa-bg-card)",
        border: "1px solid var(--sa-rule)",
        borderLeft: "3px solid var(--sa-marker)",
        borderRadius: 4,
        padding: "32px 34px"
      }}
    >
      <span
        style={{
          fontFamily: "'JetBrains Mono', monospace",
          fontSize: 10,
          letterSpacing: "0.3em",
          textTransform: "uppercase",
          color: "var(--sa-marker)"
        }}
      >
        Check your number
      </span>
      <p
        style={{
          fontFamily: "'Playfair Display', serif",
          fontSize: 23,
          lineHeight: 1.35,
          color: "var(--sa-cream)",
          margin: "14px 0 18px"
        }}
      >
        Easiest way to see where your number actually lands is to pull a quote and check it against whatever got bundled into your mortgage. Lemonade does homeowners online in a few minutes, no call.
      </p>
      <a
        href="/go/sam-home-insurance-quote"
        rel="sponsored nofollow"
        style={{
          display: "inline-block",
          background: "var(--sa-marker)",
          color: "#100E0B",
          fontFamily: "'DM Sans', sans-serif",
          fontWeight: 700,
          fontSize: 14,
          letterSpacing: "0.02em",
          textDecoration: "none",
          padding: "12px 26px",
          borderRadius: 999
        }}
      >
        Get a homeowners quote →
      </a>
      <p
        style={{
          fontFamily: "'DM Sans', sans-serif",
          fontSize: 12,
          lineHeight: 1.5,
          color: "var(--sa-mute)",
          margin: "18px 0 0"
        }}
      >
        Disclosure: that's an affiliate link — if you pull a quote through it, HowTo may earn a commission, at no extra cost to you. It doesn't change the number they quote.
      </p>
    </div>
  </section>
);

const HotTakes = () => (
  <section className="sa-hottakes">
    <div className="sa-hottakes-wrap">
      <header className="sa-hottakes-head">
        <span className="lab">Sam's verdicts</span>
        <h2>
          Worth it, <em>and not.</em>
        </h2>
      </header>
      <div className="sa-hottakes-list">
        <div className="sa-take">
          <div className="num">i.</div>
          <h3>Worth it: replacement cost + bundling</h3>
          <p>
            Replacement cost coverage on your stuff and bundling with your car insurance are the two easiest wins in the whole category. One protects what you own; the other is free money for a phone call.
          </p>
        </div>
        <div className="sa-take">
          <div className="num">ii.</div>
          <h3>Worth it: water backup, if you have a basement</h3>
          <p>
            The one add-on I'd actually pay for. A backed-up sewer line is both disgusting and specifically not covered by the standard policy — exactly the kind of gap that surprises people.
          </p>
        </div>
        <div className="sa-take">
          <div className="num">iii.</div>
          <h3>Not worth it: insuring the land</h3>
          <p>
            The single most common way first-timers overpay. Tiny riders for stuff you don't own belong in the same bin — you're padding a bill to cover things that don't need covering.
          </p>
        </div>
        <div className="sa-take">
          <div className="num">iv.</div>
          <h3>Not worth it: a low "just in case" deductible</h3>
          <p>
            That just-in-case is costing you every single month for a convenience you'll use approximately never. Raise it to the edge of your emergency cash and pocket the difference.
          </p>
        </div>
      </div>
    </div>
  </section>
);

const Signoff = () => (
  <section className="sa-signoff">
    <div className="sa-signoff-wrap">
      <div>
        <h2>
          One gap <em>actually ruins people.</em>
        </h2>
        <p>
          Standard homeowners policies do not cover flood, and "flood" includes a lot of water events people assume are covered. If you're anywhere near a flood zone, ask about a separate flood policy before you close, not after the water's in the basement. That's the one gap that actually ruins people — so ask the question while asking still costs you nothing.
        </p>
        <div className="sig">- Sam</div>
        <div className="ctas" style={{ marginTop: 28 }}>
          <a href="/en/contributors/sam/" className="btn primary">
            More from Sam
          </a>
          <a href="/contact/" className="btn ghost">
            Ask Sam a question
          </a>
        </div>
      </div>
      <div className="sa-readnext">
        <span className="lab">Read next</span>
        <a href="/en/contributors/sam/the-90-minute-backyard/">
          <span>The 90-minute backyard</span>
          <span className="m">SAM</span>
        </a>
        <a href="/en/contributors/sam/the-weekend-project-worth-doing-together/">
          <span>The weekend project worth doing together</span>
          <span className="m">SAM</span>
        </a>
        <a href="/en/contributors/sam/how-to-hang-something-heavy-without-asking-anyone-for-help/">
          <span>Hang something heavy without help</span>
          <span className="m">SAM</span>
        </a>
        <a href="/en/contributors/sam/">
          <span>All of Sam's guides</span>
          <span className="m">PROFILE</span>
        </a>
      </div>
    </div>
  </section>
);

const Article = () => (
  <div className="sa">
    <Crumbs />
    <Hero />
    <Lede />
    <WhatYouNeed />
    <Steps />
    <Affiliate />
    <HotTakes />
    <Signoff />
  </div>
);

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