/* /en/living-room/install — Install × Living Room L3 intersection page */

const ILR_ACCENT = { terracotta: "#E2725B", cinnamon: "#A67C52" };

/* ===================== HERO ===================== */
const ILRHero = () => (
  <section className="ilr-hero">
    <div className="img" style={{ backgroundImage: "url('https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=2400&q=85')" }} />
    <div className="ilr-mast">
      <span className="crumb">
        <a href="/">Home</a>  ·  <a href="/en/living-room/">Living Room</a>  ·  Install
      </span>
      <span className="ctr">The Living Room Install Edition</span>
      <span className="right">№ 03 / Spring 2026</span>
    </div>
    <div className="ilr-cover">
      <div>
        <div className="eyebrow">Install · Living Room · A Field Guide</div>
        <h1>Mounts, shelves, and <em>the cable run nobody can see.</em></h1>
      </div>
      <div>
        <p className="deck">
          Forty-seven install guides for the room where you sit — TV mounts, floating shelves, curtain rods, cable management, and the invisible infrastructure that separates a living room from a living room that *looks designed.*
        </p>
        <div className="meta">
          <div><span className="k">Section</span><span className="v">Living Room / Install</span></div>
          <div><span className="k">Guides</span><span className="v">47 total</span></div>
          <div><span className="k">Reading time</span><span className="v">11 min</span></div>
          <div><span className="k">Updated</span><span className="v">April 2026</span></div>
        </div>
      </div>
    </div>
  </section>
);

/* ===================== TOP 5 ===================== */
const TOP5 = [
  {
    rank: "01",
    query: "how to mount a TV on the wall",
    monthly: "287,000",
    diff: "Intermediate",
    time: "2 — 3 hrs",
    cost: "$40 — $150",
    blurb:
      "The most-searched living-room install. A laser level and a stud finder with depth sensor are the only equipment that matter. Everything else is execution.",
    link: "Read the TV mount guide",
    href: "/en/living-room/install/how-to-mount-a-tv-on-the-wall/",
  },
  {
    rank: "02",
    query: "how to install floating shelves",
    monthly: "164,000",
    diff: "Beginner",
    time: "1 — 2 hrs each",
    cost: "$20 — $80 each",
    blurb:
      "The bracket anchoring is the entire project. Precision leveling, understanding wall strength, and the discipline not to overload them separate a shelf that holds from a shelf that fails.",
    link: "Read the floating shelf guide",
    href: "/en/living-room/install/how-to-install-floating-shelves/",
  },
  {
    rank: "03",
    query: "how to install curtain rods",
    monthly: "126,000",
    diff: "Beginner",
    time: "45 — 90 min",
    cost: "$30 — $120",
    blurb:
      "Studs or anchors, depending on where the window is. The hard part is admitting when to abandon the studs and use anchors instead. Four inches above the frame is the magic number.",
    link: "Read the curtain rod guide",
    href: "/en/living-room/install/how-to-install-curtain-rods/",
  },
  {
    rank: "04",
    query: "how to hide cable behind a TV",
    monthly: "89,500",
    diff: "Intermediate",
    time: "2 — 3 hrs",
    cost: "$40 — $100",
    blurb:
      "In-wall conduit + fish tape + stud finder = a cable run that doesn't exist. Nobody wants to see your HDMI. The difference between \"I installed it\" and \"it looks installed\" is three hours of conduit work.",
    link: "Read the cable guide",
    href: "/en/living-room/install/how-to-run-cable-inside-the-wall/",
  },
  {
    rank: "05",
    query: "how to install a shelf with cable pass-through",
    monthly: "67,200",
    diff: "Intermediate",
    time: "1.5 — 2 hrs",
    cost: "$60 — $160",
    blurb:
      "A shelf becomes an entertainment center when you hide the cable underneath. A shelf with HDMI draped across is invisible clutter. Bracket + conduit + hidden pass-through = infrastructure.",
    link: "Read the cable shelf guide",
    href: "/en/living-room/install/how-to-install-a-shelf-with-cable-pass-through/",
  },
];

const ILRTop5 = () => (
  <section className="ilr-top5">
    <div className="ilr-top5-wrap">
      <div className="section-folio">
        <span>The Charts · Top 5 Living Room Install Searches</span>
        <span className="pg">PG. 02</span>
      </div>
      <div className="ilr-top5-head">
        <div>
          <h2>The five things people <em>actually search for.</em></h2>
          <p className="deck">
            Pulled from twelve months of search data and our own server logs. If you came here from Google, you came here for one of these.
          </p>
        </div>
        <div className="legend">
          <span><span className="dot" style={{background: ILR_ACCENT.terracotta}}/> Difficulty</span>
          <span><span className="dot" style={{background: ILR_ACCENT.cinnamon}}/> Time</span>
          <span><span className="dot" style={{background: '#B8956A'}}/> Materials</span>
        </div>
      </div>

      <div className="ilr-top5-list">
        {TOP5.map(t => (
          <article className="ilr-top5-row" key={t.rank}>
            <div className="rank">№ {t.rank}</div>
            <div className="query">
              <h3>{t.query}</h3>
              <p>{t.blurb}</p>
              <a href={t.href} className="read">{t.link} →</a>
            </div>
            <div className="stats">
              <div className="stat">
                <span className="k">Monthly searches</span>
                <span className="v">{t.monthly}</span>
              </div>
              <div className="stat">
                <span className="k">Difficulty</span>
                <span className="v">{t.diff}</span>
              </div>
              <div className="stat">
                <span className="k">Time</span>
                <span className="v">{t.time}</span>
              </div>
              <div className="stat">
                <span className="k">Materials</span>
                <span className="v">{t.cost}</span>
              </div>
            </div>
          </article>
        ))}
      </div>
    </div>
  </section>
);

/* ===================== ESSAY ===================== */
const ILREssay = () => (
  <section className="ilr-essay">
    <div className="ilr-essay-wrap">
      <div className="section-folio" style={{ borderColor: 'rgba(166,124,82,0.35)' }}>
        <span>Editor's Note · Living Room, Installed</span>
        <span className="pg">PG. 08</span>
      </div>
      <div className="ilr-essay-grid">
        <aside className="ilr-essay-side">
          <h2>The room where <em>visibility matters most.</em></h2>
          <div className="by">By the Editors · 4 min read</div>
          <div className="stat-list">
            <div className="row"><span>Most-googled install</span><strong>TV Mount</strong></div>
            <div className="row"><span>Highest stakes</span><strong>Cable routing</strong></div>
            <div className="row"><span>Most visible failure</span><strong>Unlevel TV</strong></div>
            <div className="row"><span>Best ROI project</span><strong>Floating shelf</strong></div>
          </div>
        </aside>
        <div className="ilr-essay-body">
          <p className="dropcap">
            The living room is where first impressions happen — and where bad installs haunt you for years. A TV mount that's a quarter-inch off-level will trigger vestibular discomfort in anyone who sits in front of it. Cable that shows reads as unfinished. A shelf that looks like it might fall is a shelf nobody will use. The living room is not forgiving.
          </p>
          <p>
            This is also the only room in the house where the invisible infrastructure matters as much as the visible installation. The bracket matters; so does the stud finder you used to locate the bracket. The conduit matters as much as the cable inside it. The difference between a living room that looks designed and a living room that looks assembled is the 60% of time you spend hiding the work.
          </p>
          <div className="pull">
            "A TV mount is 30% hardware, 70% stud-finding and leveling. Get the invisible part right, and the visible part follows."
          </div>
          <p>
            Below: the five searches that brought 70% of you here, the projects ranked by impact, the tools you'll actually need (fewer than you think), what to budget, what to skip, and the mistakes our readers have written in to warn you about. Pick a project. We'll show you how to make it disappear into the wall.
          </p>
        </div>
      </div>
    </div>
  </section>
);

/* ===================== TOOLS ===================== */
const TOOLS = [
  { n: "01", name: "Laser level",                     note: "Not a bubble level. A laser that projects a line. The single most-important tool for TV mounting.", req: "TV mounts" },
  { n: "02", name: "Stud finder with depth sensor",   note: "Tells you where the stud is and how thick it is. Prevents the 'I thought I was hitting wood' failure.", req: "All wall work" },
  { n: "03", name: "Cordless drill / driver",         note: "Two batteries. The second one is the one you actually need.", req: "Required" },
  { n: "04", name: "Drywall anchors (assorted)",      note: "E-anchors, toggle bolts, molly bolts. Know the load rating of each.", req: "Shelves, outlets" },
  { n: "05", name: "Fish tape",                       note: "For running cable through walls and conduit. Impossible to improvise.", req: "Cable runs" },
  { n: "06", name: "Cable conduit (3/4-inch PVC)",    note: "Hide HDMI, speaker wire, power. Costs $12 and extends cable life by 5× years.", req: "Cable runs" },
  { n: "07", name: "Outlet testers",                  note: "Verify an outlet is live and grounded before you mount a TV over it.", req: "Behind TV" },
  { n: "08", name: "Torpedo level (24-inch)",         note: "Faster for shelf leveling than a laser. Keep one upstairs, one downstairs.", req: "Shelves" },
  { n: "09", name: "Voltage tester",                  note: "Non-contact, pen-style. Touch nothing until you've verified it's de-energized.", req: "Electrical" },
  { n: "10", name: "Drop cloth, gloves, vac",         note: "The boring three. Skip and the install becomes a clean.", req: "Always" },
];

const ILRTools = () => (
  <section className="ilr-tools">
    <div className="ilr-tools-wrap">
      <div className="section-folio">
        <span>The Tool Kit · Living Room Install</span>
        <span className="pg">PG. 16</span>
      </div>
      <div className="ilr-tools-head">
        <h2>Ten tools that handle <em>most living-room installs.</em></h2>
        <p className="deck">If you own these ten things, you can do roughly 85% of every project on this page. Buy the cheap version of each, then upgrade only the ones you reach for twice.</p>
      </div>
      <div className="ilr-tools-grid">
        {TOOLS.map(t => (
          <div className="ilr-tool" key={t.n}>
            <div className="head">
              <span className="n">№ {t.n}</span>
              <span className="req">{t.req}</span>
            </div>
            <h4>{t.name}</h4>
            <p>{t.note}</p>
          </div>
        ))}
      </div>
    </div>
  </section>
);

/* ===================== DECISION MATRIX ===================== */
const MATRIX = [
  { p: "Install curtain rod",              diff: 1, time: "45 min",        cost: "$30 — $120",     impact: 4 },
  { p: "Mount floating shelf (no cable)",  diff: 2, time: "60 — 90 min",   cost: "$20 — $80",      impact: 4 },
  { p: "Mount TV (no in-wall cable)",      diff: 2, time: "2 — 3 hrs",     cost: "$40 — $150",     impact: 5 },
  { p: "Bias lighting behind TV",          diff: 2, time: "45 min — 1 hr", cost: "$25 — $60",      impact: 4 },
  { p: "Route cable in-wall (conduit)",    diff: 3, time: "3 — 4 hrs",     cost: "$40 — $100",     impact: 5 },
  { p: "Shelf with cable pass-through",    diff: 3, time: "1.5 — 2 hrs",   cost: "$60 — $160",     impact: 5 },
  { p: "Floating shelf with styling",      diff: 3, time: "2 hrs each",    cost: "$60 — $200 each", impact: 4 },
  { p: "Motorized curtain track",          diff: 4, time: "Half day",      cost: "$200 — $600",    impact: 4 },
  { p: "Full-motion TV wall mount",        diff: 3, time: "2 — 3 hrs",     cost: "$80 — $300",     impact: 5 },
  { p: "Soundbar under-TV mount",          diff: 2, time: "1 hr",          cost: "$40 — $120",     impact: 4 },
];

const DotsILR = ({ n, max = 5, color = ILR_ACCENT.terracotta }) => (
  <span className="ilr-dots">
    {Array.from({length: max}).map((_, i) => (
      <span key={i} className="d" style={{ background: i < n ? color : 'rgba(168,149,128,0.15)' }} />
    ))}
  </span>
);

const ILRMatrix = () => (
  <section className="ilr-matrix">
    <div className="ilr-matrix-wrap">
      <div className="section-folio">
        <span>The Decision Matrix · By Difficulty, Time, Cost</span>
        <span className="pg">PG. 22</span>
      </div>
      <div className="ilr-matrix-head">
        <h2>Ten living-room installs, <em>ranked.</em></h2>
        <p className="deck">A working table to scan before you start. Difficulty assumes you've never done it before. Costs are materials only — no labor, no surprise electrician, no extra trip to the store.</p>
      </div>
      <div className="ilr-matrix-table">
        <div className="ilr-matrix-row head">
          <div>Project</div>
          <div>Difficulty</div>
          <div>Time</div>
          <div>Materials</div>
          <div>Impact</div>
          <div></div>
        </div>
        {MATRIX.map((m, i) => (
          <div className="ilr-matrix-row" key={i}>
            <div className="proj"><span className="num">{String(i+1).padStart(2,'0')}</span>{m.p}</div>
            <div><DotsILR n={m.diff} color={ILR_ACCENT.terracotta} /></div>
            <div className="mono">{m.time}</div>
            <div className="mono">{m.cost}</div>
            <div><DotsILR n={m.impact} color={ILR_ACCENT.cinnamon} /></div>
            <div className="go"><a href="/en/living-room/install/">Read →</a></div>
          </div>
        ))}
      </div>
    </div>
  </section>
);

/* ===================== TIPS ===================== */
const TIPS = [
  {
    n: "01", h: "Stud-find twice, drill once.",
    p: "A stud-finder mistake is an eight-inch error. Verify with a second stud-finder, or drill a small pilot hole. The pilot hole costs 30 seconds and saves the TV mount.",
  },
  {
    n: "02", h: "Use a laser level, not your eye.",
    p: "A TV that's 0.5 degrees off-level triggers vestibular discomfort in people sitting in front of it. Your eye will lie. The laser won't. Laser level. No exceptions.",
  },
  {
    n: "03", h: "Drywall anchors have load limits. Know them.",
    p: "E-anchors hold 20–30 pounds. Toggle bolts hold 50–100. If you're unsure, step down to a lighter-load shelf or find a stud. The shelf that almost falls is a shelf nobody will use.",
  },
  {
    n: "04", h: "Fish the conduit before the cable.",
    p: "Run empty 3/4\" PVC conduit through the wall first. Then fish your HDMI and power through the conduit. Conduit costs $12 and extends cable life by 5 years.",
  },
  {
    n: "05", h: "Verify the outlet behind the TV works before you mount it.",
    p: "Plug in an outlet tester. Verify ground and hot. A failed outlet behind a TV is a $400 wall deconstruction. Five minutes now, hours of regret later.",
  },
  {
    n: "06", h: "Curtain rods go 4 inches ABOVE the frame.",
    p: "Not at the frame, not below the trim. Four inches above. This single number makes the window read taller and the room read larger.",
  },
  {
    n: "07", h: "Floating shelves look better odd than even.",
    p: "One shelf reads like storage. Two shelves read like symmetry. Three shelves read like design. Asymmetry and negative space matter more than quantity.",
  },
  {
    n: "08", h: "The cable matters as much as the mount.",
    p: "Conduit + organization + bias lighting = invisible infrastructure. A TV on a wall with visible cable is a TV that looks installed. A TV with hidden cable looks designed.",
  },
];

const ILRTips = () => (
  <section className="ilr-tips">
    <div className="ilr-tips-wrap">
      <div className="section-folio" style={{ marginBottom: 0 }}>
        <span>Field Notes · Eight Tips, From Eight Living Rooms</span>
        <span className="pg">PG. 28</span>
      </div>
      <div className="ilr-tips-head">
        <h2>Pro tips, written down so you <em>don't have to learn them twice.</em></h2>
        <div className="num">№ 01 — 08</div>
      </div>
      <div className="ilr-tips-grid">
        {TIPS.map(t => (
          <div className="ilr-tip" key={t.n}>
            <div className="badge">№ {t.n}</div>
            <h4>{t.h}</h4>
            <p>{t.p}</p>
          </div>
        ))}
      </div>
    </div>
  </section>
);

/* ===================== MISTAKES ===================== */
const ILRMistakes = () => {
  const items = [
    { h: "Mounting without verifying stud depth",        p: "A 2×4 stud is only 3.5 inches thick. Mounting bracket + backplate + TV = deeper than the stud. Backplate hits drywall = entire load on drywall anchors = failure in 18 months." },
    { h: "Running cable without conduit protection",     p: "Bare HDMI behind a TV gets crushed, abraded, and aged by drywall dust. Conduit costs $12. Use it." },
    { h: "Shelf anchored to drywall at full load",       p: "Wall anchors rated for 30 pounds will hold 35-pound shelf + books for 18 months, then suddenly fail. Know your anchor rating. Move the shelf or lower the load." },
    { h: "Curtain rod installed at window-trim height",  p: "Rod should be 4 inches ABOVE the frame. At the frame and the window reads smaller. Below the frame and the room reads shorter." },
    { h: "Forgetting to level the TV after installation", p: "0.5 degrees off-level triggers vestibular discomfort in every person sitting in front of it. Laser level. Non-negotiable." },
    { h: "Cable routed without planning the exit point",  p: "Fish tape into a wall without knowing where the cable comes out = surprise wall-cutting at the other end. Plan the route. Verify the exit point. Then drill." },
    { h: "Mounting too low to accommodate cable",         p: "Mount the TV low to hide the cable better = TV at neck-height = neck pain for everyone sitting down. Mount higher and run the cable down the backside in conduit." },
    { h: "Treating the shelf as temporary storage",      p: "A shelf that holds temporary stuff starts looking like a catch-all. Design it first, fill it second. The styling is the install." },
  ];
  return (
    <section className="ilr-mistakes">
      <div className="ilr-mistakes-wrap">
        <div className="section-folio" style={{ marginBottom: 0 }}>
          <span>Field Notes · Living Room Install Mistakes We've Seen</span>
          <span className="pg">PG. 36</span>
        </div>
        <div className="ilr-mistakes-head">
          <h2>Eight install mistakes <em>worth avoiding.</em></h2>
          <div className="num">№ 01 — 08</div>
        </div>
        <div className="ilr-mistakes-grid">
          {items.map((m, i) => (
            <div className="ilr-mistake" key={i}>
              <div className="n">{String(i+1).padStart(2,'0')}</div>
              <div>
                <h4>{m.h}</h4>
                <p>{m.p}</p>
              </div>
            </div>
          ))}
        </div>
      </div>
    </section>
  );
};

/* ===================== BUYING GUIDE ===================== */
const BUYING = [
  { cat: "TV Mounts",    pick: "Fixed or tilting, 42-65\", VESA-compatible", note: "Most installs don't need full-motion. Fixed or tilting takes less wall space, costs less, and mounts more securely.",
    avoid: "Corner mounts for non-corner walls. Looks like you ran out of wall space." },
  { cat: "Shelves",      pick: "Floating, 36-48\", steel bracket", note: "Steel brackets outlast any shelf. Stagger at least three across a wall. Odd numbers read better than even.",
    avoid: "Oversized shelves that fill the wall. Negative space is part of the design." },
  { cat: "Curtain Rods", pick: "Standard mount, 4\" above frame", note: "Makes the window read taller. Paint the rod to match the wall, not the curtain. Invisible rod = apparent wall height.",
    avoid: "Cheap adjustable rods that sag under heavy curtains. Buy the real thing." },
  { cat: "Cable Conduit", pick: "3/4-inch PVC, paintable",    note: "Can be painted to match the wall behind the TV. Hide completely or let it be part of the aesthetic.",
    avoid: "Visible cable without intention. An HDMI cord on display is an accident, not a design choice." },
  { cat: "Bias Lighting", pick: "LED strip, 2700K, adhesive",  note: "Warm, diffused light behind the TV reduces eye strain and makes the TV look like it's floating into the wall.",
    avoid: "Hard-color LED. Blue LED makes skin tones look digital. Warm only." },
];

const ILRBuyingGuide = () => (
  <section className="ilr-buy">
    <div className="ilr-buy-wrap">
      <div className="section-folio">
        <span>The Buying Guide · What Actually to Buy</span>
        <span className="pg">PG. 42</span>
      </div>
      <div className="ilr-buy-head">
        <h2>What to buy, <em>and what to skip.</em></h2>
        <p className="deck">A short, biased, well-researched shopping list — written by editors who've mounted, shelved, and hidden cable in their own living rooms.</p>
      </div>
      <div className="ilr-buy-grid">
        {BUYING.map(b => (
          <div className="ilr-buy-cell" key={b.cat}>
            <div className="cat">{b.cat}</div>
            <div className="block pick">
              <span className="label">Buy</span>
              <h4>{b.pick}</h4>
              <p>{b.note}</p>
            </div>
            <div className="block avoid">
              <span className="label">Skip</span>
              <p>{b.avoid}</p>
            </div>
          </div>
        ))}
      </div>
    </div>
  </section>
);

/* ===================== FAQ ===================== */
const ILRFaq = () => {
  const [open, setOpen] = React.useState(0);
  const faqs = [
    { q: "How high should I mount my TV?",
      a: "Eye level when seated — usually 42–50 inches from the floor to the center of the TV. Measure from where you sit. Too high and you'll regret it; too low and you're looking down at every scene." },
    { q: "Can I mount a TV on drywall without studs?",
      a: "Not safely. Drywall anchors rated for 30–50 pounds might hold for 2–3 years, then fail suddenly. If studs aren't available, move the TV location 16 inches (standard stud spacing) or use a TV stand." },
    { q: "How do I know if a shelf can hold my stuff?",
      a: "Know your anchor rating. E-anchors hold 20–30 pounds per anchor. Toggle bolts hold 50–100. Multiply the anchor rating by the number of anchors. If that's less than your shelf + stuff, step down to a lighter load." },
    { q: "What's the best way to hide cable?",
      a: "3/4-inch PVC conduit through the wall. Fish the conduit first, then fish your HDMI and power through it. Costs $12 and extends cable life by 5 years." },
    { q: "Do I need to level the TV after installation?",
      a: "Yes. A TV that's 0.5 degrees off-level triggers vestibular discomfort in anyone sitting in front of it. Use a laser level. Non-negotiable." },
    { q: "How many shelves should I mount?",
      a: "Odd numbers read better than even. One shelf reads like storage. Two reads like symmetry. Three reads like design. Vary the heights; let negative space breathe." },
    { q: "Should I paint the conduit?",
      a: "If your wall is not pure white, paint the conduit to match. If your wall is white and the conduit is white, you've won. Invisible infrastructure is the entire point." },
    { q: "What happens if my shelf is slightly off-level?",
      a: "Level it. A shelf that's 0.25 degrees off doesn't read visually, but after two weeks your brain starts to feel it. A laser level takes 30 seconds and costs $30. Use it." },
  ];
  return (
    <section className="ilr-faq">
      <div className="section-folio">
        <span>Reader Questions · Living Room Install, Answered</span>
        <span className="pg">PG. 48</span>
      </div>
      <div className="ilr-faq-head">
        <span className="label">FAQ · The Most-Asked</span>
        <h2>What people ask <em>before they install.</em></h2>
      </div>
      <div className="ilr-faq-list">
        {faqs.map((f, i) => (
          <div key={i} className={`ilr-faq-item ${open === i ? 'open' : ''}`} onClick={() => setOpen(open === i ? -1 : i)}>
            <div className="ilr-faq-q">
              <span>{f.q}</span>
              <span className="toggle">+</span>
            </div>
            <div className="ilr-faq-a">{f.a}</div>
          </div>
        ))}
      </div>
    </section>
  );
};

/* ===================== RELATED ===================== */
const ILRRelated = () => (
  <section className="ilr-related">
    <div className="ilr-related-wrap">
      <div className="ilr-related-col">
        <div className="section-folio" style={{ marginBottom: 16 }}>
          <span>Other things to do · in the Living Room</span>
          <span className="pg">A</span>
        </div>
        <h3>You're in the living room. <em>Pick a different verb.</em></h3>
        <div className="ilr-related-list">
          <a href="/en/living-room/repair/"    className="row"><span className="n">01</span><span className="t">Repair the living room</span><span className="ct">52 guides</span></a>
          <a href="/en/living-room/install/"   className="row current"><span className="n">02</span><span className="t">Install in the living room</span><span className="ct">47 guides — you are here</span></a>
          <a href="/en/living-room/build/"     className="row"><span className="n">03</span><span className="t">Build for the living room</span><span className="ct">36 guides</span></a>
          <a href="/en/living-room/clean/"     className="row"><span className="n">04</span><span className="t">Clean the living room</span><span className="ct">48 guides</span></a>
          <a href="/en/living-room/organize/"  className="row"><span className="n">05</span><span className="t">Organize the living room</span><span className="ct">41 guides</span></a>
          <a href="/en/living-room/decorate/"  className="row"><span className="n">06</span><span className="t">Decorate the living room</span><span className="ct">44 guides</span></a>
        </div>
      </div>
      <div className="ilr-related-col">
        <div className="section-folio" style={{ marginBottom: 16 }}>
          <span>Install something else · Other Rooms</span>
          <span className="pg">B</span>
        </div>
        <h3>Or install <em>somewhere else.</em></h3>
        <div className="ilr-related-list">
          <a href="/en/install/kitchen/"       className="row"><span className="n">01</span><span className="t">Install in the kitchen</span><span className="ct">78 guides</span></a>
          <a href="/en/install/bathroom/"      className="row"><span className="n">02</span><span className="t">Install in the bathroom</span><span className="ct">51 guides</span></a>
          <a href="/en/install/bedroom/"       className="row"><span className="n">03</span><span className="t">Install in the bedroom</span><span className="ct">38 guides</span></a>
          <a href="/en/install/lawn-garden/"   className="row"><span className="n">04</span><span className="t">Install in the lawn / garden</span><span className="ct">56 guides</span></a>
          <a href="/en/install/garage/"        className="row"><span className="n">05</span><span className="t">Install in the garage</span><span className="ct">33 guides</span></a>
          <a href="/en/install/exterior/"      className="row"><span className="n">06</span><span className="t">Install on the exterior</span><span className="ct">41 guides</span></a>
        </div>
      </div>
    </div>
  </section>
);

/* ===================== COLOPHON ===================== */
const ILRColophon = () => (
  <section className="ilr-colophon">
    <h2>Found what you're <em>mounting?</em></h2>
    <p>Save a project to your profile and we'll send you the install checklist the night before — plus a single, well-edited follow-up if you tell us how it went. No newsletter spam, no upsells, no eight-step launch sequence.</p>
    <a href="/en/living-room/" className="go">Back to Living Room →</a>
  </section>
);

window.ILRHero        = ILRHero;
window.ILRTop5        = ILRTop5;
window.ILREssay       = ILREssay;
window.ILRTools       = ILRTools;
window.ILRMatrix      = ILRMatrix;
window.ILRTips        = ILRTips;
window.ILRMistakes    = ILRMistakes;
window.ILRBuyingGuide = ILRBuyingGuide;
window.ILRFaq         = ILRFaq;
window.ILRRelated     = ILRRelated;
window.ILRColophon    = ILRColophon;
