Qwen Qwen3.8 2.4T A95B – Home and Garden

via Together · Generated

  • AIMAC Debt 11.57
  • Cost $0.29
  • Total Violations 122
  • HTML Size 83 KB
  • Em Dashes 50

Screenshot

View Qwen Qwen3.8 2.4T A95B Home and Garden page View Live Page

Accessibility Issues Found

1 Critical 121 Serious

  • aria-required-children critical 1 instance

    Certain ARIA roles must contain particular children

    Example HTML <div class="bed" id="bed" role="grid" aria-label="Raised bed planning grid, 8 columns by 4 rows">
  • color-contrast serious 121 instances

    Elements must meet minimum color contrast ratio thresholds

    Example HTML <span class="brand-tag">Build well · Grow wild</span>

Artifacts

View Generated HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Fern &amp; Frame — Home Improvement &amp; Garden Field Notes</title>
<meta name="description" content="Fern & Frame is a working field guide to home improvement, garden design, seasonal planning, and weekend builds. 300+ tested plans, zone-by-zone calendars, straight-talking advice.">
<link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%231E3A28'/%3E%3Cpath d='M24 8 C15 17 15 31 24 40 C33 31 33 17 24 8 Z' fill='%23F7F3E8'/%3E%3C/svg%3E">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&family=Karla:ital,wght@0,400;0,500;0,700;1,400&family=Space+Mono:wght@400;700&display=swap" rel="stylesheet">
<style>
  /* ============ RESET & TOKENS ============ */
  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
  :root{
    --paper:#F7F3E8; --paper-2:#EFE7D3; --cream:#FCFAF3;
    --pine:#1E3A28; --pine-deep:#122A1C; --pine-soft:rgba(30,58,40,.08);
    --text:#31402F; --muted:#6B7563;
    --moss:#5F7E3F; --leaf:#8FB25A; --marigold:#E9A63A; --clay:#B4402E;
    --line:rgba(30,58,40,.16); --line-strong:rgba(30,58,40,.36);
    --serif:"Fraunces",Georgia,serif; --sans:"Karla",system-ui,sans-serif; --mono:"Space Mono",monospace;
    --shadow:0 18px 40px rgba(18,42,28,.14);
    --ease:cubic-bezier(.22,1,.36,1);
  }
  html{scroll-behavior:smooth}
  body{
    font-family:var(--sans); background:var(--paper); color:var(--text);
    font-size:16.5px; line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  }
  body::after{ /* grain overlay */
    content:""; position:fixed; inset:0; z-index:3000; pointer-events:none; opacity:.05; mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  img{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer}
  ::selection{background:var(--marigold);color:var(--pine)}
  :focus-visible{outline:3px solid var(--marigold);outline-offset:3px;border-radius:2px}
  section{scroll-margin-top:92px}

  .container{width:min(1220px,92%);margin-inline:auto}
  .mono{font-family:var(--mono)}
  .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--moss);display:inline-flex;align-items:center;gap:.6rem}
  .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--moss)}
  .skip{position:absolute;left:-999px;top:0;background:var(--pine);color:var(--paper);padding:.7rem 1.2rem;z-index:5000}
  .skip:focus{left:12px;top:12px}

  /* ============ BUTTONS ============ */
  .btn{display:inline-flex;align-items:center;gap:.6rem;font:700 .92rem/1 var(--sans);letter-spacing:.02em;
    background:var(--pine);color:var(--paper);border:2px solid var(--pine);padding:.95rem 1.55rem;border-radius:6px;transition:all .35s var(--ease)}
  .btn .arr{transition:transform .35s var(--ease)}
  .btn:hover{background:var(--marigold);border-color:var(--marigold);color:var(--pine)}
  .btn:hover .arr{transform:translateX(4px)}
  .btn--ghost{background:transparent;color:var(--pine)}
  .btn--ghost:hover{background:var(--pine);color:var(--paper);border-color:var(--pine)}
  .btn--gold{background:var(--marigold);border-color:var(--marigold);color:var(--pine)}
  .btn--gold:hover{background:var(--paper);border-color:var(--paper)}
  .t-link{font-weight:700;color:var(--pine);border-bottom:2px solid var(--marigold);padding-bottom:2px;transition:border-color .3s,color .3s}
  .t-link:hover{color:var(--moss);border-color:var(--moss)}

  /* ============ TOP BAR ============ */
  .topbar{background:var(--pine-deep);color:#E9E4D2;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em}
  .topbar .container{display:flex;justify-content:space-between;align-items:center;padding:.55rem 0;gap:1rem}
  .topbar a{color:var(--marigold);border-bottom:1px solid rgba(233,166,58,.5)}
  .topbar .wx{opacity:.75;white-space:nowrap}

  /* ============ HEADER ============ */
  .site-header{position:sticky;top:0;z-index:1000;background:var(--paper);border-bottom:1px solid var(--line);transition:box-shadow .3s,padding .3s}
  .site-header.scrolled{box-shadow:0 8px 30px rgba(18,42,28,.12)}
  .header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.9rem 0}
  .brand{display:flex;align-items:center;gap:.8rem}
  .brand img{width:44px;height:44px;border-radius:50%}
  .brand-name{font-family:var(--serif);font-weight:600;font-size:1.4rem;color:var(--pine);line-height:1.05;letter-spacing:-.01em}
  .brand-tag{font-family:var(--mono);font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--moss)}
  .main-nav{display:flex;align-items:center;gap:1.7rem}
  .main-nav a.nav-link{font-weight:700;font-size:.92rem;color:var(--pine);position:relative;padding:.35rem 0}
  .main-nav a.nav-link::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--marigold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
  .main-nav a.nav-link:hover::after{transform:scaleX(1)}
  .nav-cta{padding:.7rem 1.2rem;font-size:.85rem}
  .menu-btn{display:none;background:none;border:2px solid var(--pine);border-radius:6px;padding:.5rem .7rem;color:var(--pine);font-family:var(--mono);font-size:.75rem;letter-spacing:.1em}

  /* ============ HERO ============ */
  .hero{padding:4.5rem 0 5rem;position:relative;overflow:hidden}
  .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:4rem;align-items:center}
  .hero h1{font-family:var(--serif);font-weight:560;font-size:clamp(2.7rem,5.6vw,4.7rem);line-height:.99;color:var(--pine);letter-spacing:-.015em;margin:1.3rem 0 1.6rem}
  .hero h1 em{font-style:italic;color:var(--moss);font-weight:400}
  .line{display:block;overflow:hidden;padding-bottom:.06em}
  .line>span{display:inline-block;transform:translateY(112%);transition:transform 1s var(--ease)}
  .hero.loaded .line>span{transform:translateY(0)}
  .hero.loaded .line:nth-child(2)>span{transition-delay:.12s}
  .hero.loaded .line:nth-child(3)>span{transition-delay:.24s}
  .hero-lede{max-width:34rem;font-size:1.08rem;color:var(--text)}
  .hero-ctas{display:flex;gap:1rem;margin:2rem 0 2.6rem;flex-wrap:wrap}
  .hero-meta{display:flex;gap:0;border-top:1px solid var(--line-strong);padding-top:1.4rem;flex-wrap:wrap}
  .hero-meta div{padding:0 1.6rem;border-left:1px solid var(--line)}
  .hero-meta div:first-child{padding-left:0;border-left:0}
  .hero-meta strong{display:block;font-family:var(--serif);font-size:1.55rem;color:var(--pine);font-weight:600}
  .hero-meta span{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

  .hero-visual{position:relative}
  .hero-frame{border:1px solid var(--line-strong);padding:12px;background:var(--cream);box-shadow:14px 14px 0 var(--pine-soft),var(--shadow)}
  .kb{overflow:hidden}
  .kb img{width:100%;height:100%;object-fit:cover;transform-origin:center;animation:kenburns 20s ease-in-out infinite alternate}
  @keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.09) translate(-1.5%,1%)}}
  .hero-caption{position:absolute;left:-26px;bottom:34px;background:var(--pine);color:var(--paper);font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;padding:.7rem 1rem;max-width:230px;line-height:1.7;box-shadow:var(--shadow)}
  .hero-caption b{color:var(--marigold)}
  .stamp{position:absolute;top:-46px;right:-30px;width:128px;height:128px;filter:drop-shadow(0 8px 16px rgba(18,42,28,.25))}
  .stamp svg{width:100%;height:100%;animation:spin 28s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}

  /* ============ TICKER ============ */
  .ticker{background:var(--pine);color:var(--paper);border-block:1px solid var(--pine-deep);overflow:hidden}
  .ticker-track{display:flex;width:max-content;animation:ticker 34s linear infinite}
  .ticker:hover .ticker-track{animation-play-state:paused}
  .ticker ul{display:flex;list-style:none}
  .ticker li{font-family:var(--mono);font-size:.76rem;letter-spacing:.08em;padding:.85rem 1.4rem;white-space:nowrap;display:flex;align-items:center;gap:1.4rem}
  .ticker li::after{content:"✦";color:var(--marigold)}
  @keyframes ticker{to{transform:translateX(-50%)}}

  /* ============ SECTION HEADER ============ */
  .sec{padding:6.5rem 0}
  .sec-head{border-top:2px solid var(--pine);padding-top:1.4rem;display:grid;grid-template-columns:90px 1fr;gap:2rem;margin-bottom:3.2rem}
  .sec-index{font-family:var(--serif);font-style:italic;font-size:3.2rem;color:var(--marigold);line-height:1;font-weight:400}
  .sec-title{font-family:var(--serif);font-weight:580;font-size:clamp(2rem,3.6vw,3rem);color:var(--pine);line-height:1.06;letter-spacing:-.01em;max-width:22ch}
  .sec-lede{margin-top:1rem;max-width:56ch;color:var(--text)}

  /* ============ REVEAL ============ */
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s var(--ease);transition-delay:var(--d,0s)}
  .reveal.in{opacity:1;transform:none}

  /* ============ 01 DESIGN ============ */
  .design-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:start}
  .principles{list-style:none;counter-reset:prin}
  .principles li{padding:1.6rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:70px 1fr;gap:1.2rem}
  .principles li:last-child{border-bottom:0}
  .p-num{font-family:var(--serif);font-style:italic;font-size:1.9rem;color:var(--moss);line-height:1}
  .principles h3{font-family:var(--serif);font-weight:600;font-size:1.25rem;color:var(--pine);margin-bottom:.4rem}
  .principles p{font-size:.97rem;color:var(--text)}
  .design-copy>.eyebrow{margin-bottom:1.4rem}
  .design-copy h3.big{font-family:var(--serif);font-weight:560;font-size:clamp(1.7rem,2.6vw,2.3rem);color:var(--pine);line-height:1.12;margin-bottom:1.2rem}
  .design-copy p{margin-bottom:1.1rem}
  .design-img{position:relative;margin-top:2.4rem}
  .design-img .kb{box-shadow:var(--shadow);border:1px solid var(--line)}
  .img-tag{position:absolute;bottom:14px;left:14px;background:var(--paper);border:1px solid var(--line-strong);font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;padding:.45rem .8rem;color:var(--pine)}

  /* before/after */
  .ba-block{margin-top:4.5rem;border-top:1px dashed var(--line-strong);padding-top:3rem;display:grid;grid-template-columns:.9fr 1.1fr;gap:3.5rem;align-items:center}
  .ba{position:relative;--pos:52%;box-shadow:var(--shadow);border:1px solid var(--line-strong);background:var(--pine-deep);cursor:ew-resize}
  .ba img{width:100%;aspect-ratio:11/7;object-fit:cover}
  .ba-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
  .ba-handle{position:absolute;top:0;bottom:0;left:var(--pos);transform:translateX(-50%);width:3px;background:var(--paper);pointer-events:none;z-index:3}
  .ba-handle::after{content:"◂ ▸";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--paper);color:var(--pine);font-family:var(--mono);font-size:.7rem;padding:.5rem .55rem;border-radius:50px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.3)}
  .ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:4;margin:0;-webkit-appearance:none;appearance:none}
  .ba-label{position:absolute;top:14px;font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;padding:.4rem .7rem;z-index:2;background:rgba(18,42,28,.85);color:var(--paper)}
  .ba-label.before{left:14px}.ba-label.after{right:14px;background:var(--marigold);color:var(--pine)}
  .ba-stat{display:flex;gap:2.2rem;margin-top:1.6rem;border-top:1px solid var(--line);padding-top:1.2rem;flex-wrap:wrap}
  .ba-stat div strong{font-family:var(--serif);font-size:1.5rem;color:var(--pine);display:block}
  .ba-stat div span{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

  /* ============ 02 ALMANAC (sticky two-col) ============ */
  .almanac{background:var(--paper-2);border-block:1px solid var(--line)}
  .almanac-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:4rem;align-items:start}
  .almanac-left{position:sticky;top:110px}
  .almanac-left h2{font-family:var(--serif);font-weight:580;font-size:clamp(2.2rem,4vw,3.3rem);color:var(--pine);line-height:1.04;margin:1.1rem 0 1.3rem}
  .almanac-left h2 em{color:var(--moss);font-style:italic;font-weight:400}
  .almanac-cover{display:flex;gap:1.6rem;align-items:center;margin:2rem 0}
  .almanac-cover img{width:118px;box-shadow:var(--shadow);border:1px solid var(--line-strong);transform:rotate(-2.5deg);transition:transform .4s var(--ease)}
  .almanac-cover img:hover{transform:rotate(0)}
  .almanac-cover p{font-size:.9rem;color:var(--muted);max-width:24ch}
  .legend{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.6rem 0 2rem}
  .tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;padding:.42rem .7rem;border-radius:4px}
  .tag--plant{background:rgba(143,178,90,.25);color:var(--moss);border:1px solid rgba(95,126,63,.4)}
  .tag--prune{background:rgba(233,166,58,.22);color:#9A6A14;border:1px solid rgba(233,166,58,.55)}
  .tag--protect{background:rgba(180,64,46,.14);color:var(--clay);border:1px solid rgba(180,64,46,.4)}
  .month-card{background:var(--cream);border:1px solid var(--line-strong);border-top:6px solid var(--moss);padding:2rem 2.2rem;margin-bottom:1.6rem;box-shadow:0 6px 18px rgba(18,42,28,.06);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
  .month-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
  .month-card:nth-child(2){border-top-color:var(--marigold)}
  .month-card:nth-child(3){border-top-color:var(--clay)}
  .month-card h3{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.9rem;color:var(--pine)}
  .month-meta{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:.3rem 0 1.3rem}
  .month-card ul{list-style:none}
  .month-card li{display:flex;gap:.9rem;align-items:flex-start;padding:.75rem 0;border-top:1px dashed var(--line);font-size:.97rem}
  .month-card li .tag{flex-shrink:0;margin-top:.15rem}

  /* ============ 03 PLANNER ============ */
  .planner-wrap{display:grid;grid-template-columns:300px 1fr;gap:3rem;align-items:start}
  .palette{background:var(--cream);border:1px solid var(--line-strong);padding:1.4rem;position:sticky;top:110px}
  .palette h3{font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--moss);margin-bottom:1rem}
  .plant-chip{display:flex;align-items:center;gap:.75rem;width:100%;background:var(--paper);border:1.5px solid var(--line);border-radius:6px;padding:.65rem .8rem;margin-bottom:.55rem;text-align:left;font:700 .9rem var(--sans);color:var(--pine);transition:all .25s var(--ease)}
  .plant-chip .p-icon{font-size:1.3rem;width:30px;height:30px;display:grid;place-items:center;border-radius:6px;flex-shrink:0}
  .plant-chip small{margin-left:auto;font-family:var(--mono);font-weight:400;font-size:.62rem;color:var(--muted)}
  .plant-chip:hover{border-color:var(--moss);transform:translateX(4px)}
  .plant-chip[aria-pressed="true"]{background:var(--pine);color:var(--paper);border-color:var(--pine)}
  .plant-chip[aria-pressed="true"] small{color:rgba(247,243,232,.7)}
  .palette-actions{display:flex;gap:.6rem;margin-top:1.1rem}
  .mini-btn{flex:1;background:none;border:1.5px solid var(--line-strong);border-radius:6px;padding:.6rem;font:700 .78rem var(--sans);color:var(--pine);transition:all .25s}
  .mini-btn:hover{background:var(--marigold);border-color:var(--marigold)}
  .bed-meta{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.2rem}
  .bed-meta span{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;background:var(--pine-soft);border:1px solid var(--line);padding:.4rem .8rem;border-radius:40px;color:var(--pine)}
  .bed{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;background:#9C6B3F;padding:14px;border-radius:10px;box-shadow:inset 0 3px 10px rgba(0,0,0,.35),var(--shadow);border:3px solid #7C5230}
  .cell{aspect-ratio:1;border:1.5px dashed rgba(247,243,232,.4);border-radius:5px;background:rgba(18,42,28,.14);display:grid;place-items:center;font-size:clamp(.9rem,2.4vw,1.5rem);transition:background .2s,transform .2s,border-color .2s;padding:0}
  .cell:hover{border-color:var(--marigold)}
  .cell.filled{border-style:solid;border-color:rgba(0,0,0,.18);animation:pop .3s var(--ease)}
  @keyframes pop{from{transform:scale(.6)}to{transform:scale(1)}}
  .cell.preview-good{background:rgba(143,178,90,.55);border-color:var(--leaf);border-style:solid}
  .cell.preview-bad{background:rgba(180,64,46,.45);border-color:var(--clay);border-style:solid}
  .cell.nope{animation:shake .4s}
  @keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
  .bed-stats{display:flex;gap:2.4rem;margin-top:1.6rem;border-top:1px solid var(--line-strong);padding-top:1.2rem;flex-wrap:wrap}
  .bed-stats strong{display:block;font-family:var(--serif);font-size:1.45rem;color:var(--pine)}
  .bed-stats span{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
  .bed-hint{margin-top:1.1rem;font-style:italic;color:var(--moss);font-size:.98rem;min-height:1.6em}
  .bed-hint::before{content:"❧ ";color:var(--marigold)}
  .bed-legend{margin-top:.8rem;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;color:var(--muted)}

  /* ============ 04 IDEAS postcards ============ */
  .ideas{background:var(--pine-deep);color:#EDE8D8}
  .ideas .sec-head{border-top-color:var(--marigold)}
  .ideas .sec-title{color:var(--paper)}
  .ideas .sec-lede{color:rgba(237,232,216,.75)}
  .ideas .sec-index{color:var(--leaf)}
  .postcards{display:grid;grid-template-columns:repeat(3,1fr);gap:2.6rem 2.4rem;margin-top:1rem}
  .postcard{background:var(--cream);color:var(--text);padding:13px 13px 18px;border:1px solid rgba(0,0,0,.1);box-shadow:0 16px 34px rgba(0,0,0,.35);transform:rotate(var(--r,0deg)) translateY(var(--y,0));transition:transform .45s var(--ease),box-shadow .45s var(--ease);position:relative}
  .postcard::before{content:"";position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(var(--tr,-2deg));width:86px;height:26px;background:rgba(233,166,58,.85);opacity:.9;box-shadow:0 2px 6px rgba(0,0,0,.18)}
  .postcard:hover{transform:rotate(0) translateY(calc(var(--y,0px) - 10px)) scale(1.02);box-shadow:0 28px 50px rgba(0,0,0,.5);z-index:2}
  .postcard .kb{margin-bottom:1rem}
  .postcard h3{font-family:var(--serif);font-weight:600;font-size:1.18rem;color:var(--pine);line-height:1.25}
  .postcard .pc-meta{font-family:var(--mono);font-size:.63rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;display:flex;gap:1rem}
  .ideas-cta{text-align:center;margin-top:4rem}

  /* ============ 05 IMPROVEMENT guides ============ */
  .guides-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-auto-rows:auto;gap:1.8rem}
  .guide-card{background:var(--cream);border:1px solid var(--line-strong);overflow:hidden;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
  .guide-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
  .guide-card .kb{overflow:hidden}
  .guide-card .kb img{transition:transform 1.2s var(--ease);aspect-ratio:16/9;width:100%;object-fit:cover}
  .guide-card:hover .kb img{transform:scale(1.06)}
  .guide-body{padding:1.5rem 1.6rem 1.7rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
  .guide-card h3{font-family:var(--serif);font-weight:600;font-size:1.3rem;color:var(--pine);line-height:1.2}
  .guide-card p{font-size:.93rem;flex:1}
  .guide-meta{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-top:1px dashed var(--line);padding-top:.9rem}
  .diff{letter-spacing:.2em;color:var(--marigold)}
  .guide-card--feat{grid-row:span 2}
  .guide-card--feat .kb img{aspect-ratio:4/4.6;object-fit:cover}
  .guide-card--feat h3{font-size:1.75rem}
  .pro-strip{margin-top:3rem;background:var(--pine);color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.8rem 2.2rem;border-radius:8px;flex-wrap:wrap}
  .pro-strip h3{font-family:var(--serif);font-size:1.4rem;font-weight:560}
  .pro-strip p{font-size:.9rem;color:rgba(247,243,232,.75);max-width:52ch}

  /* ============ 06 TESTIMONIALS ============ */
  .voices{background:var(--paper-2);border-block:1px solid var(--line)}
  .voice-rail{display:flex;gap:1.6rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem .2rem 1.8rem;scrollbar-width:none}
  .voice-rail::-webkit-scrollbar{display:none}
  .voice-card{flex:0 0 350px;scroll-snap-align:start;background:var(--cream);border:1px solid var(--line-strong);padding:2rem;position:relative}
  .voice-card::before{content:"“";font-family:var(--serif);font-size:4.5rem;line-height:1;color:var(--marigold);position:absolute;top:.6rem;right:1.3rem;opacity:.7}
  .voice-card blockquote{font-family:var(--serif);font-style:italic;font-size:1.08rem;line-height:1.55;color:var(--pine);margin-bottom:1.6rem}
  .voice-who{display:flex;align-items:center;gap:.9rem;border-top:1px dashed var(--line);padding-top:1.1rem}
  .voice-who img{width:46px;height:46px;border-radius:50%;border:2px solid var(--marigold)}
  .voice-who strong{display:block;font-size:.92rem;color:var(--pine)}
  .voice-who span{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
  .rail-nav{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.4rem}
  .rail-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--pine);background:none;color:var(--pine);font-size:1.1rem;transition:all .25s}
  .rail-btn:hover{background:var(--pine);color:var(--paper)}

  /* ============ 07 JOURNAL + SIDEBAR ============ */
  .journal-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:3.5rem;align-items:start}
  .article-row{display:grid;grid-template-columns:150px 1fr;gap:1.5rem;padding:1.7rem 0;border-bottom:1px solid var(--line);align-items:center}
  .article-row:first-child{padding-top:0}
  .article-row .kb img{aspect-ratio:3/2;object-fit:cover;border:1px solid var(--line-strong)}
  .article-row h3{font-family:var(--serif);font-weight:600;font-size:1.3rem;color:var(--pine);line-height:1.25;margin-bottom:.4rem;transition:color .3s}
  .article-row:hover h3{color:var(--moss)}
  .article-row p{font-size:.93rem}
  .article-meta{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:.6rem;display:flex;gap:1.2rem}
  .side-card{background:var(--cream);border:1px solid var(--line-strong);padding:1.6rem;margin-bottom:1.5rem}
  .side-card h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;color:var(--pine);margin-bottom:1rem}
  .side-card .h-mono{font-family:var(--mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--moss);margin-bottom:1rem}
  .zone-form{display:flex;gap:.5rem}
  .zone-form input{flex:1;min-width:0;border:1.5px solid var(--line-strong);background:var(--paper);padding:.7rem .8rem;font:500 .95rem var(--sans);border-radius:6px;color:var(--pine)}
  .zone-form button{background:var(--pine);color:var(--paper);border:0;border-radius:6px;padding:.7rem 1rem;font:700 .8rem var(--sans);transition:background .25s}
  .zone-form button:hover{background:var(--moss)}
  .zone-result{margin-top:1rem;padding:1rem;background:var(--pine);color:var(--paper);border-radius:6px;font-size:.88rem;line-height:1.6;display:none}
  .zone-result.show{display:block;animation:pop .35s var(--ease)}
  .zone-result strong{color:var(--marigold);font-family:var(--serif);font-size:1.2rem}
  .checklist{list-style:none}
  .checklist li{display:flex;gap:.8rem;padding:.55rem 0;border-bottom:1px dashed var(--line);font-size:.92rem;align-items:flex-start}
  .checklist li:last-child{border-bottom:0}
  .checklist .box{width:16px;height:16px;border:2px solid var(--moss);border-radius:3px;flex-shrink:0;margin-top:4px;display:grid;place-items:center;font-size:.65rem;color:var(--moss);font-weight:700}
  .checklist li.done{color:var(--muted);text-decoration:line-through}
  .hotline{background:var(--pine);color:var(--paper)}
  .hotline h3{color:var(--marigold)}
  .hotline p{font-size:.9rem;color:rgba(247,243,232,.8)}
  .hotline .mono{display:block;margin-top:1rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--leaf)}

  /* ============ 08 FAQ ============ */
  .faq-list{max-width:840px}
  .faq-item{border-bottom:1px solid var(--line-strong)}
  .faq-q{width:100%;background:none;border:0;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem 0;text-align:left;font-family:var(--serif);font-weight:600;font-size:1.22rem;color:var(--pine);transition:color .3s}
  .faq-q:hover{color:var(--moss)}
  .faq-q .plus{font-family:var(--mono);font-size:1.4rem;color:var(--marigold);transition:transform .4s var(--ease);flex-shrink:0}
  .faq-item.open .plus{transform:rotate(45deg)}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
  .faq-a p{padding:0 3rem 1.6rem 0;font-size:.97rem;color:var(--text)}

  /* ============ NEWSLETTER ============ */
  .newsletter{background:var(--pine);color:var(--paper);padding:5.5rem 0;position:relative;overflow:hidden}
  .newsletter::before{content:"❧";position:absolute;right:-2rem;top:-4rem;font-size:22rem;color:rgba(247,243,232,.05);font-family:serif}
  .newsletter .container{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
  .newsletter h2{font-family:var(--serif);font-weight:560;font-size:clamp(2rem,3.6vw,3rem);line-height:1.08}
  .newsletter h2 em{color:var(--marigold);font-style:italic;font-weight:400}
  .newsletter p{margin-top:1rem;color:rgba(247,243,232,.75);max-width:48ch}
  .news-form{display:flex;gap:.7rem;flex-wrap:wrap}
  .news-form input{flex:1;min-width:220px;background:rgba(247,243,232,.1);border:1.5px solid rgba(247,243,232,.4);color:var(--paper);padding:1rem 1.2rem;border-radius:6px;font:500 1rem var(--sans)}
  .news-form input::placeholder{color:rgba(247,243,232,.55)}
  .news-note{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--leaf);margin-top:1rem}
  .news-success{background:var(--marigold);color:var(--pine);padding:1.2rem 1.5rem;border-radius:6px;font-weight:700;display:none}
  .news-success.show{display:block;animation:pop .4s var(--ease)}

  /* ============ FOOTER ============ */
  footer{background:var(--pine-deep);color:#DAD4BE;padding:5rem 0 0;border-top:4px solid var(--marigold)}
  .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem}
  .foot-brand .brand-name{color:var(--paper);font-size:1.6rem}
  .foot-brand p{font-size:.9rem;margin:1.1rem 0 1.5rem;max-width:32ch;color:rgba(218,212,190,.75)}
  .foot-contact{font-family:var(--mono);font-size:.72rem;line-height:2;letter-spacing:.04em}
  .foot-contact a{color:var(--marigold)}
  .foot-col h4{font-family:var(--mono);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--leaf);margin-bottom:1.3rem}
  .foot-col ul{list-style:none}
  .foot-col li{margin-bottom:.7rem}
  .foot-col a{font-size:.92rem;transition:color .25s,padding-left .25s}
  .foot-col a:hover{color:var(--marigold);padding-left:6px}
  .socials{display:flex;gap:.7rem;margin-top:1.4rem}
  .socials a{width:40px;height:40px;border:1.5px solid rgba(218,212,190,.4);border-radius:50%;display:grid;place-items:center;transition:all .3s var(--ease)}
  .socials a:hover{background:var(--marigold);border-color:var(--marigold);transform:translateY(-4px)}
  .socials svg{width:17px;height:17px;fill:#DAD4BE;transition:fill .3s}
  .socials a:hover svg{fill:var(--pine)}
  .foot-bottom{border-top:1px solid rgba(218,212,190,.15);margin-top:4rem;padding:1.6rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:var(--mono);font-size:.66rem;letter-spacing:.08em}
  .foot-bottom a{margin-left:1.4rem}
  .foot-bottom a:hover{color:var(--marigold)}
  .seen{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(218,212,190,.4);margin-top:1.8rem}

  /* ============ RESPONSIVE ============ */
  @media (max-width:1080px){
    .hero-grid,.design-grid,.ba-block,.journal-grid{grid-template-columns:1fr;gap:3rem}
    .almanac-grid{grid-template-columns:1fr}
    .almanac-left{position:static}
    .guides-grid{grid-template-columns:1fr 1fr}
    .guide-card--feat{grid-row:auto}
    .guide-card--feat .kb img{aspect-ratio:16/9}
    .planner-wrap{grid-template-columns:1fr}
    .palette{position:static;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.55rem;align-items:start}
    .palette h3,.palette-actions{grid-column:1/-1}
    .plant-chip{margin-bottom:0}
    .stamp{top:-30px;right:6px;width:100px;height:100px}
    .hero-caption{left:12px}
    .sec-head{grid-template-columns:60px 1fr}
  }
  @media (max-width:820px){
    .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:2px solid var(--pine);flex-direction:column;align-items:stretch;padding:1.2rem 4%;gap:0}
    .main-nav.open{display:flex}
    .main-nav a.nav-link{padding:1rem 0;border-bottom:1px solid var(--line)}
    .nav-cta{margin-top:1rem;justify-content:center}
    .menu-btn{display:block}
    .postcards{grid-template-columns:1fr 1fr}
    .foot-grid{grid-template-columns:1fr 1fr}
    .newsletter .container{grid-template-columns:1fr}
    .topbar .wx{display:none}
    .sec{padding:4.5rem 0}
  }
  @media (max-width:560px){
    .guides-grid,.postcards,.foot-grid{grid-template-columns:1fr}
    .article-row{grid-template-columns:1fr}
    .voice-card{flex-basis:85%}
    .hero{padding-top:3rem}
    .hero-meta div{padding:0 1rem}
  }

  /* ============ REDUCED MOTION ============ */
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
    .ticker-track{animation:none;flex-wrap:wrap}
    .kb img{animation:none}
    .stamp svg{animation:none}
    .reveal{opacity:1;transform:none}
    .line>span{transform:none}
  }
</style>
</head>
<body>

<a class="skip" href="#main">Skip to content</a>

<!-- ======= TOP BAR ======= -->
<div class="topbar">
  <div class="container">
    <span>🍂 Fall Edition is live — first-frost dates, zone calendars &amp; 12 new build plans. <a href="#almanac">Read the issue →</a></span>
    <span class="wx">PDX FIELD STATION · 54°F OVERCAST · SOIL 51°F — GOOD PLANTING WEATHER</span>
  </div>
</div>

<!-- ======= HEADER ======= -->
<header class="site-header" id="siteHeader">
  <div class="container header-inner">
    <a class="brand" href="#top" aria-label="Fern and Frame home">
      <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%231E3A28'/%3E%3Cpath d='M24 8 C15 17 15 31 24 40 C33 31 33 17 24 8 Z' fill='%23F7F3E8'/%3E%3Cpath d='M24 13 V35 M24 19 L19 24 M24 19 L29 24 M24 27 L19 32 M24 27 L29 32' stroke='%231E3A28' stroke-width='1.6'/%3E%3C/svg%3E" alt="Fern &amp; Frame leaf mark" width="44" height="44">
      <span>
        <span class="brand-name">Fern &amp; Frame</span><br>
        <span class="brand-tag">Build well · Grow wild</span>
      </span>
    </a>
    <nav class="main-nav" id="mainNav" aria-label="Primary navigation">
      <a class="nav-link" href="#design">Garden Design</a>
      <a class="nav-link" href="#almanac">Seasonal Almanac</a>
      <a class="nav-link" href="#planner">Bed Planner</a>
      <a class="nav-link" href="#ideas">Ideas</a>
      <a class="nav-link" href="#improvement">Home Improvement</a>
      <a class="nav-link" href="#journal">Journal</a>
      <a class="btn btn--gold nav-cta" href="#improvement">Get a Quote <span class="arr">→</span></a>
    </nav>
    <button class="menu-btn" id="menuBtn" aria-expanded="false" aria-controls="mainNav">MENU</button>
  </div>
</header>

<main id="main">

<!-- ======= HERO ======= -->
<section class="hero" id="top">
  <div class="container hero-grid">
    <div class="hero-copy">
      <p class="eyebrow mono" data-scramble>Field Notes · Edition Nº 47 · Autumn 2025</p>
      <h1>
        <span class="line"><span>Every good home</span></span>
        <span class="line"><span>has <em>dirt</em> under</span></span>
        <span class="line"><span>its nails.</span></span>
      </h1>
      <p class="hero-lede">Fern &amp; Frame is a working field guide to home improvement, garden design, and the weekend builds in between — 300+ tested plans, zone-by-zone planting calendars, and straight-talking advice from people who actually dig the holes.</p>
      <div class="hero-ctas">
        <a class="btn" href="#planner">Open the Bed Planner <span class="arr">→</span></a>
        <a class="btn btn--ghost" href="#almanac">Read the Fall Guide</a>
      </div>
      <div class="hero-meta">
        <div><strong data-scramble>312</strong><span>Free build plans</span></div>
        <div><strong data-scramble>48/yr</strong><span>Expert guides</span></div>
        <div><strong data-scramble>3–10</strong><span>USDA zones covered</span></div>
        <div><strong data-scramble>2013</strong><span>Rooted since</span></div>
      </div>
    </div>
    <div class="hero-visual reveal">
      <div class="stamp" aria-hidden="true">
        <svg viewBox="0 0 120 120">
          <defs><path id="stampCircle" d="M60,60 m-45,0 a45,45 0 1,1 90,0 a45,45 0 1,1 -90,0"/></defs>
          <circle cx="60" cy="60" r="58" fill="#1E3A28"/>
          <circle cx="60" cy="60" r="34" fill="none" stroke="#E9A63A" stroke-width="1" stroke-dasharray="3 4"/>
          <text fill="#F7F3E8" font-family="Space Mono, monospace" font-size="10.5" letter-spacing="2.6">
            <textPath href="#stampCircle">FERN &amp; FRAME • EST. 2013 • BUILD WELL • GROW WILD •</textPath>
          </text>
          <path d="M60 44 C53 51 53 63 60 70 C67 63 67 51 60 44 Z" fill="#8FB25A"/>
        </svg>
      </div>
      <div class="hero-frame">
        <div class="kb" style="aspect-ratio:9/10.5">
          <img src="https://picsum.photos/seed/garden-gate-fern/900/1050" alt="A weathered garden gate opening onto a lush perennial border in late-afternoon light" width="900" height="1050">
        </div>
      </div>
      <p class="hero-caption"><b>THE WHITFIELD BORDER</b> · WEEK 9 · ZONE 6B — PHOTO: F&amp;F FIELD TEAM</p>
    </div>
  </div>
</section>

<!-- ======= TICKER ======= -->
<div class="ticker" aria-label="Seasonal reminders">
  <div class="ticker-track">
    <ul>
      <li>FIRST-FROST WATCH — ZONE 6: OCT 21</li>
      <li>PLANT 100 TULIPS BEFORE THE GROUND FREEZES</li>
      <li>MULCH PERENNIAL BEDS 3 IN. DEEP</li>
      <li>BRING HOUSEPLANTS IN WHEN NIGHTS DROP BELOW 50°F</li>
      <li>LOWER BLADE HEIGHT FOR THE FINAL MOW</li>
      <li>ORDER BARE-ROOT ROSES FOR JANUARY DELIVERY</li>
    </ul>
    <ul aria-hidden="true">
      <li>FIRST-FROST WATCH — ZONE 6: OCT 21</li>
      <li>PLANT 100 TULIPS BEFORE THE GROUND FREEZES</li>
      <li>MULCH PERENNIAL BEDS 3 IN. DEEP</li>
      <li>BRING HOUSEPLANTS IN WHEN NIGHTS DROP BELOW 50°F</li>
      <li>LOWER BLADE HEIGHT FOR THE FINAL MOW</li>
      <li>ORDER BARE-ROOT ROSES FOR JANUARY DELIVERY</li>
    </ul>
  </div>
</div>

<!-- ======= 01 GARDEN DESIGN ======= -->
<section class="sec" id="design">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index" data-scramble>01</span>
      <div>
        <p class="eyebrow">Garden Design</p>
        <h2 class="sec-title">Design with good bones first. Color is just the finishing touch.</h2>
        <p class="sec-lede">The borders that photograph beautifully in October were drawn — not planted — in February. Here is the four-part framework our designers use on every site, from a townhouse courtyard to a half-acre plot.</p>
      </div>
    </div>

    <div class="design-grid">
      <div class="design-copy reveal">
        <h3 class="big">A garden is a room with weather. Treat it like one.</h3>
        <p>Most planting failures aren't plant failures — they're layout failures. Before a single perennial goes in the ground, we map sight lines from the kitchen window, trace the path the sun actually takes (not the one the listing promised), and decide where the "walls" and "ceiling" of the space will be: a hedge, a fence line, an arbor, the canopy of a serviceberry.</p>
        <p>Only then do we layer in bloom — canopy to shrub to perennial to bulb — repeating key cultivars in drifts of three to five so the eye reads rhythm instead of noise. The result holds up in every season, not just the week the nursery was in flower.</p>
        <ol class="principles">
          <li class="reveal" style="--d:.05s"><span class="p-num">i.</span><div><h3>Structure before color</h3><p>Paths, hardscape, and fence lines are the bones. If the plan reads well as a black-and-white drawing, it will read well in bloom.</p></div></li>
          <li class="reveal" style="--d:.12s"><span class="p-num">ii.</span><div><h3>Layer by bloom time</h3><p>Sequence spring bulbs, early perennials, high-summer shrubs, and fall seed heads so something earns its square footage every week.</p></div></li>
          <li class="reveal" style="--d:.19s"><span class="p-num">iii.</span><div><h3>Repeat &amp; rhythm</h3><p>Echo a salvia here, a grass there. Drifts of odd numbers tie a border together faster than any single showstopper.</p></div></li>
          <li class="reveal" style="--d:.26s"><span class="p-num">iv.</span><div><h3>Plan all four seasons</h3><p>Evergreen backbone, winter bark, standing seed heads for the finches — a great garden is 25% done by the frost.</p></div></li>
        </ol>
        <a class="btn" href="#improvement" style="margin-top:1.5rem">Download the Plan Pack <span class="arr">↓</span></a>
      </div>
      <div class="design-img reveal" style="--d:.15s">
        <div class="kb" style="aspect-ratio:4/4.8">
          <img src="https://picsum.photos/seed/perennial-border-plan/880/1060" alt="A layered perennial border with ornamental grasses, salvia drifts and a gravel path" width="880" height="1060">
        </div>
        <span class="img-tag">Layered border · Zone 6b</span>
      </div>
    </div>

    <!-- Before / After -->
    <div class="ba-block">
      <div class="reveal">
        <p class="eyebrow" style="margin-bottom:1.2rem">Curb Appeal Case Study</p>
        <h3 class="big" style="font-family:var(--serif);font-weight:560;font-size:clamp(1.7rem,2.6vw,2.3rem);color:var(--pine);line-height:1.12;margin-bottom:1.1rem">The Whitfield front yard: two weekends, $1,400, one painted door.</h3>
        <p>We widened the walkway with reclaimed brick, planted three structural shrubs — a lilac, two viburnums, and a carpet of creeping thyme between the pavers — refreshed the mulching in the beds, and painted the entry a deep pine green. No new sod, no concrete truck, no regrets. Drag the handle to compare.</p>
        <div class="ba-stat">
          <div><strong>14 days</strong><span>Start to finish</span></div>
          <div><strong>$1,400</strong><span>Total budget</span></div>
          <div><strong>+3 shrubs</strong><span>Structural planting</span></div>
        </div>
      </div>
      <div class="ba reveal" style="--d:.15s" id="baSlider">
        <img src="https://picsum.photos/seed/curb-appeal-whitfield/1100/700" alt="After: the Whitfield front yard with a widened brick walkway, lush shrubs and a painted green front door" width="1100" height="700">
        <img class="ba-before" src="https://picsum.photos/seed/curb-appeal-whitfield/1100/700?grayscale" alt="Before: the same yard in faded grayscale, tired lawn and a thin path" width="1100" height="700">
        <span class="ba-label before">Before</span>
        <span class="ba-label after">After</span>
        <div class="ba-handle" aria-hidden="true"></div>
        <input type="range" min="0" max="100" value="52" id="baRange" aria-label="Compare before and after photos">
      </div>
    </div>
  </div>
</section>

<!-- ======= 02 SEASONAL ALMANAC ======= -->
<section class="sec almanac" id="almanac">
  <div class="container almanac-grid">
    <div class="almanac-left reveal">
      <p class="eyebrow">Seasonal Tasks</p>
      <h2>The Autumn <em>Almanac</em>, month by month.</h2>
      <p>Fall is the gardener's second spring: what you plant, divide, and protect now is what blooms next April. This calendar is calibrated for Zone 6 — shift everything two weeks earlier for Zone 5, two weeks later for Zone 7.</p>
      <div class="legend">
        <span class="tag tag--plant">● Plant</span>
        <span class="tag tag--prune">● Prune</span>
        <span class="tag tag--protect">● Protect</span>
      </div>
      <div class="almanac-cover">
        <img src="https://placehold.co/240x320/1E3A28/F7F3E8?text=THE+2025%0AGARDEN%0AALMANAC&font=playfair+display" alt="Cover of The 2025 Garden Almanac printed in cream on deep green" width="240" height="320">
        <p>The full 64-page printable calendar, with frost dates for every zone.</p>
      </div>
      <a class="btn" href="#newsletter">Download the Plan <span class="arr">↓</span></a>
    </div>

    <div class="almanac-right">
      <article class="month-card reveal">
        <h3>September</h3>
        <p class="month-meta">Days shorten ~3 min/day · Soil still warm</p>
        <ul>
          <li><span class="tag tag--plant">Plant</span><span>Tuck in overwintered garlic late in the month, plus spinach and mustard greens while the soil is workable.</span></li>
          <li><span class="tag tag--plant">Divide</span><span>Crowded bearded iris and daylilies — replant divisions at the same depth, water in well.</span></li>
          <li><span class="tag tag--prune">Prune</span><span>Rambling roses right after their final flush; leave repeat-bloomers alone.</span></li>
          <li><span class="tag tag--protect">Protect</span><span>Net brassicas before cabbage whites lay their last round of eggs.</span></li>
        </ul>
      </article>
      <article class="month-card reveal" style="--d:.1s">
        <h3>October</h3>
        <p class="month-meta">Avg. first frost: Oct 18 (Zone 6b)</p>
        <ul>
          <li><span class="tag tag--plant">Plant</span><span>Tulips, daffodils, and alliums in naturalistic drifts; sow cover crops on any bare vegetable ground.</span></li>
          <li><span class="tag tag--plant">Mulch</span><span>Top perennial beds with 3 inches of shredded leaf mold, keeping the crowns clear.</span></li>
          <li><span class="tag tag--protect">Harvest</span><span>Lift dahlia tubers after the first black frost hits the foliage.</span></li>
          <li><span class="tag tag--protect">Rake smart</span><span>Run the mower over fallen leaves — shredded, they're free mulch by spring.</span></li>
        </ul>
      </article>
      <article class="month-card reveal" style="--d:.2s">
        <h3>November</h3>
        <p class="month-meta">First hard freeze expected · Beds going dormant</p>
        <ul>
          <li><span class="tag tag--plant">Plant</span><span>Bare-root roses, mixed hedging, and a few amaryllis pots for the windowsill.</span></li>
          <li><span class="tag tag--protect">Winterize</span><span>Drain and coil hoses, insulate exterior spigots, and mound roses once the ground freezes.</span></li>
          <li><span class="tag tag--prune">Leave be</span><span>Keep seed heads standing — they're winter forage for finches and free self-sowers.</span></li>
          <li><span class="tag tag--prune">Sharpen</span><span>Service pruners and the mower blade now; February-you will send thanks.</span></li>
        </ul>
      </article>
    </div>
  </div>
</section>

<!-- ======= 03 BED PLANNER ======= -->
<section class="sec" id="planner">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index" data-scramble>02</span>
      <div>
        <p class="eyebrow">Interactive · Square-Foot Method</p>
        <h2 class="sec-title">Sketch your spring raised bed, right here on the bench.</h2>
        <p class="sec-lede">This is a working 4 × 8 ft bed — 32 square feet of real estate. Pick a crop, click squares to plant it, and click a crop again to pull it out. We'll track your spacing, flag overcrowding, and point out good companions as you go.</p>
      </div>
    </div>

    <div class="planner-wrap">
      <aside class="palette reveal" aria-label="Plant palette">
        <h3>Choose a crop</h3>
        <div id="paletteChips"></div>
        <div class="palette-actions">
          <button class="mini-btn" id="sampleBtn">Plant a sample</button>
          <button class="mini-btn" id="clearBtn">Clear bed</button>
        </div>
      </aside>

      <div class="reveal" style="--d:.12s">
        <div class="bed-meta">
          <span>☀ 6–8 hr sun</span><span>💧 1 in. / week</span><span>BED: 4 × 8 FT CEDAR</span><span>SOIL: LOAM + COMPOST</span>
        </div>
        <div class="bed" id="bed" role="grid" aria-label="Raised bed planning grid, 8 columns by 4 rows"></div>
        <div class="bed-stats">
          <div><strong id="statSq">0 / 32</strong><span>sq ft planted</span></div>
          <div><strong id="statPlants">0</strong><span>plants in the ground</span></div>
          <div><strong id="statWater">—</strong><span>est. watering / week</span></div>
        </div>
        <p class="bed-hint" id="bedHint">Pick a crop on the left, then click an empty square to tuck it in.</p>
        <p class="bed-legend">1 SQUARE = 1 SQ FT · CLICK A PLANTED SQUARE TO REMOVE IT · SPACING FOLLOWS THE SQUARE-FOOT METHOD</p>
        <noscript><p style="margin-top:1rem;color:var(--clay)">The interactive planner needs JavaScript enabled.</p></noscript>
      </div>
    </div>
  </div>
</section>

<!-- ======= 04 IDEAS ======= -->
<section class="sec ideas" id="ideas">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index">03</span>
      <div>
        <p class="eyebrow" style="color:var(--leaf)">Ideas &amp; Inspiration</p>
        <h2 class="sec-title">Field-tested projects, pinned straight from our readers' yards.</h2>
        <p class="sec-lede">Every card below links to a full build log — materials list, cut sheet, weekend schedule, and honest cost. Send us yours; the best ones get pinned.</p>
      </div>
    </div>
    <div class="postcards">
      <article class="postcard reveal" style="--r:-3deg;--tr:2deg">
        <div class="kb"><img src="https://picsum.photos/seed/gravel-patio-build/640/480" alt="A freshly laid gravel patio bordered by cedar edging and potted grasses" width="640" height="480"></div>
        <h3>The gravel patio that took one weekend</h3>
        <p class="pc-meta"><span>$380</span><span>2 days</span><span>Beginner</span></p>
      </article>
      <article class="postcard reveal" style="--r:2.5deg;--y:26px;--d:.08s;--tr:-3deg">
        <div class="kb"><img src="https://picsum.photos/seed/pollinator-border-bees/640/480" alt="A buzzing pollinator border with coneflowers and bee balm" width="640" height="480"></div>
        <h3>A pollinator border planted for Zone 6b</h3>
        <p class="pc-meta"><span>$540</span><span>3 weekends</span><span>Intermediate</span></p>
      </article>
      <article class="postcard reveal" style="--r:-1.5deg;--y:8px;--d:.16s;--tr:1.5deg">
        <div class="kb"><img src="https://picsum.photos/seed/cedar-fence-refresh/640/480" alt="A cedar fence line freshly cleaned and oiled, glowing warm" width="640" height="480"></div>
        <h3>Cedar fence refresh: clean, brighten, oil</h3>
        <p class="pc-meta"><span>$210</span><span>1 day</span><span>Beginner</span></p>
      </article>
      <article class="postcard reveal" style="--r:2deg;--d:.1s;--tr:-2deg">
        <div class="kb"><img src="https://picsum.photos/seed/herb-spiral-stone/640/480" alt="A dry-stacked herb spiral planted with thyme, sage and chives" width="640" height="480"></div>
        <h3>The stone herb spiral (drainage for days)</h3>
        <p class="pc-meta"><span>$290</span><span>2 days</span><span>Intermediate</span></p>
      </article>
      <article class="postcard reveal" style="--r:-2.5deg;--y:20px;--d:.18s;--tr:3deg">
        <div class="kb"><img src="https://picsum.photos/seed/shade-rain-garden/640/480" alt="A rain garden swale planted with ferns and sedges in dappled shade" width="640" height="480"></div>
        <h3>A shade-tolerant rain garden for downspouts</h3>
        <p class="pc-meta"><span>$460</span><span>2 weekends</span><span>Intermediate</span></p>
      </article>
      <article class="postcard reveal" style="--r:1.5deg;--y:-6px;--d:.26s;--tr:-1.5deg">
        <div class="kb"><img src="https://picsum.photos/seed/pergola-string-lights/640/480" alt="Warm string lights strung beneath a wooden pergola at dusk" width="640" height="480"></div>
        <h3>Pergola string-light run, done properly</h3>
        <p class="pc-meta"><span>$320</span><span>1 afternoon</span><span>Beginner</span></p>
      </article>
    </div>
    <div class="ideas-cta reveal"><a class="btn btn--gold" href="#newsletter">Browse all 400+ ideas <span class="arr">→</span></a></div>
  </div>
</section>

<!-- ======= 05 HOME IMPROVEMENT ======= -->
<section class="sec" id="improvement">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index" data-scramble>04</span>
      <div>
        <p class="eyebrow">Home Improvement Guides</p>
        <h2 class="sec-title">The house side of the hedge: repair guides without the fluff.</h2>
        <p class="sec-lede">Every guide is written by someone who has done the job twice — once to learn, once to teach. Honest product talk, real torque settings, and the exact moment you should call a pro instead.</p>
      </div>
    </div>
    <div class="guides-grid">
      <article class="guide-card guide-card--feat reveal">
        <div class="kb"><img src="https://picsum.photos/seed/cedar-deck-refinish/900/1040" alt="A cedar deck mid-refinish, half stripped and half glowing with fresh oil" width="900" height="1040"></div>
        <div class="guide-body">
          <span class="tag tag--prune" style="align-self:flex-start">Featured guide</span>
          <h3>Refinishing a cedar deck in one weekend</h3>
          <p>Strip, brighten, dry, oil — in that order, no shortcuts. We walk through choosing an oxygenated cleaner over a pressure wand (which furs the grain), reading the water-bead test, and picking a penetrating oil that won't peel next July. Includes our cut-list for board replacement and the one step 90% of DIYers skip.</p>
          <div class="guide-meta"><span>14 min read</span><span class="diff">SKILL ●●○</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
      <article class="guide-card reveal" style="--d:.08s">
        <div class="kb"><img src="https://picsum.photos/seed/gutter-guard-clean/640/360" alt="Close view of a clean gutter line with a leaf guard being fitted" width="640" height="360"></div>
        <div class="guide-body">
          <h3>Gutter guards: before you buy, read this</h3>
          <p>Micro-mesh vs. screen vs. reverse-curve — and why the ladder work you're trying to avoid still happens twice a year anyway.</p>
          <div class="guide-meta"><span>8 min</span><span class="diff">SKILL ●○○</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
      <article class="guide-card reveal" style="--d:.16s">
        <div class="kb"><img src="https://picsum.photos/seed/paint-sheen-swatches/640/360" alt="Painted swatch boards in different sheens leaning against a white wall" width="640" height="360"></div>
        <div class="guide-body">
          <h3>Choosing interior paint sheen (without regret)</h3>
          <p>Matte hides sins, semi-gloss shrugs off fingerprints. A room-by-room sheen map for houses with kids, dogs, or both.</p>
          <div class="guide-meta"><span>6 min</span><span class="diff">SKILL ●○○</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
      <article class="guide-card reveal" style="--d:.1s">
        <div class="kb"><img src="https://picsum.photos/seed/rain-barrel-install/640/360" alt="A rain barrel connected to a downspout with an overflow hose leading to a bed" width="640" height="360"></div>
        <div class="guide-body">
          <h3>Rain barrel plumbing 101</h3>
          <p>Downspout diversion, first-flush screens, winter blow-outs, and routing overflow away from the foundation — the part nobody shows you.</p>
          <div class="guide-meta"><span>10 min</span><span class="diff">SKILL ●●○</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
      <article class="guide-card reveal" style="--d:.18s">
        <div class="kb"><img src="https://picsum.photos/seed/compost-bay-pallet/640/360" alt="A tidy three-bay pallet compost system with steam rising in cool air" width="640" height="360"></div>
        <div class="guide-body">
          <h3>A compost bay that doesn't smell</h3>
          <p>Greens-to-browns ratios, the damp-sponge moisture test, and a turning schedule you'll actually keep. Free bay plans included.</p>
          <div class="guide-meta"><span>9 min</span><span class="diff">SKILL ●●○</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
      <article class="guide-card reveal" style="--d:.22s">
        <div class="kb"><img src="https://picsum.photos/seed/fence-post-repair/640/360" alt="A fence post being re-set in fresh concrete with a level clamped to it" width="640" height="360"></div>
        <div class="guide-body">
          <h3>Fixing a leaning fence post the right way</h3>
          <p>Diagnose frost heave vs. rot at the collar, then re-set with gravel drainage — or learn when sistering is the smarter save.</p>
          <div class="guide-meta"><span>12 min</span><span class="diff">SKILL ●●●</span><a class="t-link" href="#newsletter">Read Guide →</a></div>
        </div>
      </article>
    </div>
    <div class="pro-strip reveal">
      <div>
        <h3>Prefer a professional? We vet them so you don't have to.</h3>
        <p>Our network of licensed landscapers, deck builders, and general contractors is background-checked, insured, and reviewed by real Fern &amp; Frame readers.</p>
      </div>
      <a class="btn btn--gold" href="#newsletter">Get a Quote <span class="arr">→</span></a>
    </div>
  </div>
</section>

<!-- ======= 06 TESTIMONIALS ======= -->
<section class="sec voices" id="voices">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index">05</span>
      <div>
        <p class="eyebrow">From the Community</p>
        <h2 class="sec-title">48,000 growers and fixers read along every month.</h2>
      </div>
    </div>
    <div class="voice-rail reveal" id="voiceRail" tabindex="0" aria-label="Reader testimonials, scroll horizontally">
      <article class="voice-card">
        <blockquote>I followed their planting calendar for the first time in twenty years of gardening and lost zero perennials last winter. The frost-date ticker alone is worth bookmarking.</blockquote>
        <div class="voice-who"><img src="https://i.pravatar.cc/96?u=marjorie-zone5" alt="Portrait of Marjorie K."><div><strong>Marjorie K.</strong><span>Zone 5b · Columbus, OH</span></div></div>
      </article>
      <article class="voice-card">
        <blockquote>The bed planner is dangerously fun. We sketched our layout over dinner and built the actual bed the following weekend — marigolds on the border and everything.</blockquote>
        <div class="voice-who"><img src="https://i.pravatar.cc/96?u=dev-priya-zone8" alt="Portrait of Dev and Priya S."><div><strong>Dev &amp; Priya S.</strong><span>Zone 8a · Austin, TX</span></div></div>
      </article>
      <article class="voice-card">
        <blockquote>Their deck refinishing guide saved me roughly $900 in contractor quotes. Clear steps, honest product talk, and they told me exactly when to stop and call a pro.</blockquote>
        <div class="voice-who"><img src="https://i.pravatar.cc/96?u=tom-zone7" alt="Portrait of Tom W."><div><strong>Tom W.</strong><span>Zone 7a · Richmond, VA</span></div></div>
      </article>
      <article class="voice-card">
        <blockquote>It reads like advice from the neighbor who actually knows what they're doing. I read The Sunday Prune with my coffee every single week, rain or shine.</blockquote>
        <div class="voice-who"><img src="https://i.pravatar.cc/96?u=lena-zone6" alt="Portrait of Lena M."><div><strong>Lena M.</strong><span>Zone 6b · Portland, OR</span></div></div>
      </article>
    </div>
    <div class="rail-nav">
      <button class="rail-btn" id="railPrev" aria-label="Previous testimonials">←</button>
      <button class="rail-btn" id="railNext" aria-label="Next testimonials">→</button>
    </div>
  </div>
</section>

<!-- ======= 07 JOURNAL + SIDEBAR ======= -->
<section class="sec" id="journal">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index" data-scramble>06</span>
      <div>
        <p class="eyebrow">From the Potting Bench</p>
        <h2 class="sec-title">Fresh field notes, fresh from last weekend's mess.</h2>
      </div>
    </div>
    <div class="journal-grid">
      <div class="journal-list">
        <a class="article-row reveal" href="#newsletter">
          <div class="kb"><img src="https://picsum.photos/seed/soil-test-kit/480/320" alt="A home soil test kit laid out beside a trowel of dark loam" width="480" height="320"></div>
          <div><h3>What a $9 soil test taught us about our struggling lawn</h3>
          <p>The kit came back with a pH of 5.4 and a phosphorus surplus nobody needed. Two bags of lime and one skipped fertilizer order later, here's what actually changed — and what the extension office said about our N-P-K assumptions.</p>
          <p class="article-meta"><span>Soil</span><span>5 min read</span><span>Oct 2025</span></p></div>
        </a>
        <a class="article-row reveal" style="--d:.1s" href="#newsletter">
          <div class="kb"><img src="https://picsum.photos/seed/pruners-three-tools/480/320" alt="Three well-used pruners lined up on a workbench" width="480" height="320"></div>
          <div><h3>The only three pruners you'll ever need</h3>
          <p>After a decade of tool-shed clutter, we pared down to a pair of bypass hand pruners, a folding saw, and a sharp hori-hori. We cover sharpening angles, sap cleanup, and why the anvil pruners finally earned their retirement.</p>
          <p class="article-meta"><span>Tools</span><span>7 min read</span><span>Oct 2025</span></p></div>
        </a>
        <a class="article-row reveal" style="--d:.2s" href="#newsletter">
          <div class="kb"><img src="https://picsum.photos/seed/cold-frame-cloche/480/320" alt="A cold frame and glass cloche protecting greens on a frosty morning" width="480" height="320"></div>
          <div><h3>Cloches, cold frames, row cover: which one for which crop</h3>
          <p>Season extension isn't one technique — it's a wardrobe. We match each layer to the crops that love it, from floating row cover over brassicas to a vented cold frame for overwintered lettuce, and flag the frosty mornings each one can survive.</p>
          <p class="article-meta"><span>Season Extension</span><span>8 min read</span><span>Sep 2025</span></p></div>
        </a>
      </div>

      <aside aria-label="Sidebar resources">
        <div class="side-card reveal">
          <p class="h-mono">Find your zone</p>
          <h3>What's your hardiness zone?</h3>
          <p style="font-size:.88rem;margin-bottom:1rem;color:var(--muted)">Enter your ZIP and we'll match you to a USDA zone, an average first-frost window, and three plants that thrive there.</p>
          <form class="zone-form" id="zoneForm">
            <label class="skip" for="zipInput">ZIP code</label>
            <input type="text" id="zipInput" inputmode="numeric" maxlength="5" placeholder="e.g. 97204" required>
            <button type="submit">Find it</button>
          </form>
          <div class="zone-result" id="zoneResult" role="status" aria-live="polite"></div>
        </div>
        <div class="side-card reveal" style="--d:.08s">
          <p class="h-mono">Featured project</p>
          <div class="kb"><img src="https://picsum.photos/seed/gravel-patio-featured/640/420" alt="A reader-built gravel patio at golden hour" width="640" height="420"></div>
          <h3 style="margin-top:1rem">Reader build: a gravel patio in one weekend</h3>
          <p style="font-size:.88rem;color:var(--muted)">The Ortega family of Boise dug out 4 inches, compacted in lifts, and edged it in cedar. Full build log inside, including the $60 mistake they fixed.</p>
        </div>
        <div class="side-card reveal" style="--d:.16s">
          <p class="h-mono">This week's checklist</p>
          <ul class="checklist">
            <li class="done"><span class="box">✓</span>Order garlic bulbs before the good cultivars sell out</li>
            <li class="done"><span class="box">✓</span>Deadhead roses one last time</li>
            <li><span class="box"></span>Divide any crowded bearded iris</li>
            <li><span class="box"></span>Bring tropicals in before 50°F nights</li>
            <li><span class="box"></span>Shred fallen leaves for spring mulch</li>
          </ul>
        </div>
        <div class="side-card hotline reveal" style="--d:.24s">
          <p class="h-mono">Expert advice</p>
          <h3>Ask a Master Gardener</h3>
          <p>Stuck on a diagnosis? Our volunteer Master Gardeners answer reader questions live, every Tuesday and Thursday. Bring photos of the damage.</p>
          <span class="mono">Tue &amp; Thu · 10am–2pm PT · Free</span>
        </div>
      </aside>
    </div>
  </div>
</section>

<!-- ======= 08 FAQ ======= -->
<section class="sec" id="faq" style="padding-top:3rem">
  <div class="container">
    <div class="sec-head reveal">
      <span class="sec-index">07</span>
      <div>
        <p class="eyebrow">Straight Answers</p>
        <h2 class="sec-title">The questions readers send us most.</h2>
      </div>
    </div>
    <div class="faq-list">
      <div class="faq-item reveal">
        <button class="faq-q" aria-expanded="false">How deep should mulch really be?<span class="plus">+</span></button>
        <div class="faq-a"><p>Two to three inches of shredded hardwood over beds, up to four inches of coarse chips on paths — and always flared like a donut, never mounded like a volcano against trunks and stems. Renew each spring once the soil has warmed; mulching too early keeps cold ground cold and delays root growth.</p></div>
      </div>
      <div class="faq-item reveal" style="--d:.06s">
        <button class="faq-q" aria-expanded="false">Annuals or perennials for a brand-new border?<span class="plus">+</span></button>
        <div class="faq-a"><p>Plant roughly 70% perennial, 30% annual. Repeat-blooming perennials give you the structure that matures over three years; annuals fill the gaps while young shrubs size up. Choose everything by your hardiness zone and true sun hours first, color second — a Zone 5 geranium will not negotiate with you.</p></div>
      </div>
      <div class="faq-item reveal" style="--d:.12s">
        <button class="faq-q" aria-expanded="false">Do I need a permit for a deck or fence project?<span class="plus">+</span></button>
        <div class="faq-a"><p>Usually yes for decks higher than 30 inches and fences over six feet, and always for structural or electrical work — but rules vary by municipality, so call your local building department before the first post hole. And no matter what: call 811 a few days before any digging so utility lines get marked. It's free, and it's the law.</p></div>
      </div>
      <div class="faq-item reveal" style="--d:.18s">
        <button class="faq-q" aria-expanded="false">How often should I water a new raised bed?<span class="plus">+</span></button>
        <div class="faq-a"><p>Aim for an inch of water per week, delivered as two deep soaks rather than daily sprinkles — deep watering drives roots down where the moisture is stable. Water in the morning so foliage dries before evening, and top up with mulch right after planting; a two-inch layer cuts evaporation dramatically in July.</p></div>
      </div>
      <div class="faq-item reveal" style="--d:.24s">
        <button class="faq-q" aria-expanded="false">My compost bin smells like a swamp. What did I do?<span class="plus">+</span></button>
        <div class="faq-a"><p>Too many greens and not enough air. Add browns — shredded leaves, torn cardboard, straw — until the mix is roughly two parts brown to one part green, then turn the pile to reintroduce oxygen. It should feel like a wrung-out sponge; if squeezing it drips water, leave the lid cracked and let it dry out a week.</p></div>
      </div>
      <div class="faq-item reveal" style="--d:.3s">
        <button class="faq-q" aria-expanded="false">Can I actually garden in a shady yard?<span class="plus">+</span></button>
        <div class="faq-a"><p>Absolutely — but count your true sun hours first. Under four hours of direct light, lean on hostas, ferns, hellebores, and woodland natives for a lush, low-care look. Most edibles want six-plus hours, though lettuce, greens, and radishes will happily produce in part shade, especially with morning sun.</p></div>
      </div>
    </div>
  </div>
</section>

<!-- ======= NEWSLETTER ======= -->
<section class="newsletter" id="newsletter">
  <div class="container">
    <div class="reveal">
      <p class="eyebrow" style="color:var(--leaf)">The Sunday Prune</p>
      <h2>One email, every Sunday. <em>Five minutes, zero fluff.</em></h2>
      <p>Zone-specific tasks for the week ahead, one new build plan, one honest tool review, and the best reader photo. Joined by 48,000 growers, fixers, and slow-Sunday coffee drinkers.</p>
    </div>
    <div class="reveal" style="--d:.12s">
      <form class="news-form" id="newsForm">
        <label class="skip" for="newsEmail">Email address</label>
        <input type="email" id="newsEmail" placeholder="you@backyard.com" required>
        <button class="btn btn--gold" type="submit">Subscribe Free <span class="arr">→</span></button>
      </form>
      <p class="news-note">No spam, just sap · Unsubscribe anytime · 48,000 readers</p>
      <p class="news-success" id="newsSuccess" role="status">🌱 You're on the list — see you Sunday morning.</p>
    </div>
  </div>
</section>

</main>

<!-- ======= FOOTER ======= -->
<footer>
  <div class="container">
    <div class="foot-grid">
      <div class="foot-brand">
        <a class="brand" href="#top" style="align-items:flex-start">
          <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%23E9A63A'/%3E%3Cpath d='M24 8 C15 17 15 31 24 40 C33 31 33 17 24 8 Z' fill='%23122A1C'/%3E%3C/svg%3E" alt="" width="44" height="44" style="border-radius:50%">
          <span><span class="brand-name">Fern &amp; Frame</span><br><span class="brand-tag" style="color:var(--leaf)">Build well · Grow wild</span></span>
        </a>
        <p>Home improvement, garden design, DIY guides, landscaping, and decor resources — written from a real potting bench since 2013.</p>
        <div class="foot-contact">
          418 ALDER LANE, PORTLAND, OR 97204<br>
          <a href="tel:+15035550148">(503) 555-0148</a> · <a href="mailto:hello@fernandframe.com">HELLO@FERNANDFRAME.COM</a><br>
          MON–FRI · 9AM–5PM PT
        </div>
        <div class="socials">
          <a href="#" aria-label="Instagram"><svg viewBox="0 0 24 24"><path d="M12 2.2c3.2 0 3.6 0 4.9.1 3.3.1 4.8 1.7 4.9 4.9.1 1.3.1 1.6.1 4.8s0 3.6-.1 4.8c-.1 3.2-1.7 4.8-4.9 4.9-1.3.1-1.6.1-4.9.1s-3.6 0-4.9-.1c-3.3-.1-4.8-1.7-4.9-4.9C2.2 15.6 2.2 15.2 2.2 12s0-3.6.1-4.8C2.4 4 4 2.4 7.2 2.3 8.4 2.2 8.8 2.2 12 2.2zm0 3.6a6.2 6.2 0 1 0 0 12.4 6.2 6.2 0 0 0 0-12.4zm0 10.2a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6.4-11.8a1.4 1.4 0 1 0 0 2.9 1.4 1.4 0 0 0 0-2.9z"/></svg></a>
          <a href="#" aria-label="YouTube"><svg viewBox="0 0 24 24"><path d="M23.5 6.2a3 3 0 0 0-2.1-2.2C19.5 3.5 12 3.5 12 3.5s-7.5 0-9.4.5A3 3 0 0 0 .5 6.2 31.6 31.6 0 0 0 0 12c0 1.9.2 3.9.5 5.8a3 3 0 0 0 2.1 2.2c1.9.5 9.4.5 9.4.5s7.5 0 9.4-.5a3 3 0 0 0 2.1-2.2c.3-1.9.5-3.9.5-5.8s-.2-3.9-.5-5.8zM9.6 15.6V8.4l6.2 3.6-6.2 3.6z"/></svg></a>
          <a href="#" aria-label="Pinterest"><svg viewBox="0 0 24 24"><path d="M12 2a10 10 0 0 0-3.6 19.3c-.1-.8-.2-2 0-2.9l1.3-5.4s-.3-.6-.3-1.6c0-1.5.9-2.6 2-2.6.9 0 1.4.7 1.4 1.5 0 .9-.6 2.3-.9 3.6-.3 1.1.5 2 1.6 2 1.9 0 3.4-2 3.4-5 0-2.6-1.9-4.4-4.5-4.4a4.7 4.7 0 0 0-4.9 4.7c0 .9.4 1.9.8 2.5a.3.3 0 0 1 .1.3l-.3 1.2c0 .2-.2.3-.4.2-1.3-.6-2.1-2.6-2.1-4.1 0-3.4 2.5-6.5 7.1-6.5 3.7 0 6.6 2.7 6.6 6.2 0 3.7-2.3 6.7-5.6 6.7-1.1 0-2.1-.6-2.4-1.2l-.7 2.5c-.2.9-.9 2-1.3 2.7A10 10 0 1 0 12 2z"/></svg></a>
          <a href="#" aria-label="Newsletter email"><svg viewBox="0 0 24 24"><path d="M2 4h20a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zm10 8.5L3 6v12h18V6l-9 6.5zM4.5 6l7.5 5.4L19.5 6h-15z"/></svg></a>
        </div>
      </div>
      <nav class="foot-col" aria-label="Explore">
        <h4>Explore</h4>
        <ul>
          <li><a href="#design">Garden Design</a></li>
          <li><a href="#almanac">Seasonal Almanac</a></li>
          <li><a href="#planner">Bed Planner</a></li>
          <li><a href="#ideas">Ideas &amp; Projects</a></li>
          <li><a href="#improvement">Home Improvement</a></li>
          <li><a href="#journal">Journal</a></li>
        </ul>
      </nav>
      <nav class="foot-col" aria-label="Company">
        <h4>Company</h4>
        <ul>
          <li><a href="#top">About Fern &amp; Frame</a></li>
          <li><a href="#top">Our Field Team</a></li>
          <li><a href="#top">Advertise With Us</a></li>
          <li><a href="#top">Careers</a></li>
          <li><a href="#newsletter">The Sunday Prune</a></li>
          <li><a href="#faq">FAQ</a></li>
        </ul>
      </nav>
      <nav class="foot-col" aria-label="Resources">
        <h4>Resources</h4>
        <ul>
          <li><a href="#planner">Square-Foot Planner</a></li>
          <li><a href="#journal">Hardiness Zone Finder</a></li>
          <li><a href="#almanac">Frost Date Calendar</a></li>
          <li><a href="#improvement">Build Plan Library</a></li>
          <li><a href="#voices">Community Builds</a></li>
          <li><a href="#journal">Ask a Master Gardener</a></li>
        </ul>
      </nav>
    </div>
    <p class="seen">Featured in — Fine Gardening · The Old Farmer's Almanac · Sunset · Dwell · Oregon Home</p>
    <div class="foot-bottom">
      <span>© 2025 FERN &amp; FRAME GARDEN CO. · CRAFTED IN THE PACIFIC NORTHWEST 🌲</span>
      <span><a href="#">PRIVACY POLICY</a><a href="#">TERMS OF USE</a><a href="#">COOKIES</a><a href="#">ACCESSIBILITY</a></span>
    </div>
  </div>
</footer>

<script>
(function(){
  "use strict";
  var reduced = window.matchMedia("(prefers-reduced-motion: reduce)").matches;

  /* ---------- Header ---------- */
  var header = document.getElementById("siteHeader");
  window.addEventListener("scroll", function(){
    header.classList.toggle("scrolled", window.scrollY > 10);
  }, {passive:true});

  var menuBtn = document.getElementById("menuBtn"), mainNav = document.getElementById("mainNav");
  menuBtn.addEventListener("click", function(){
    var open = mainNav.classList.toggle("open");
    menuBtn.setAttribute("aria-expanded", open);
    menuBtn.textContent = open ? "CLOSE" : "MENU";
  });
  mainNav.addEventListener("click", function(e){
    if(e.target.tagName === "A"){ mainNav.classList.remove("open"); menuBtn.setAttribute("aria-expanded","false"); menuBtn.textContent="MENU"; }
  });

  /* ---------- Hero load ---------- */
  window.addEventListener("load", function(){
    document.querySelector(".hero").classList.add("loaded");
  });

  /* ---------- Scramble decode ---------- */
  var GLYPHS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789·—";
  function scramble(el){
    if(reduced || el.dataset.done) return;
    el.dataset.done = "1";
    var final = el.textContent, len = final.length, frame = 0, total = Math.max(14, len * 2);
    var iv = setInterval(function(){
      frame++;
      var out = "";
      for(var i=0;i<len;i++){
        if(final[i]===" "){ out+=" "; continue; }
        out += (i < (frame/total)*len*1.4) ? final[i] : GLYPHS[Math.floor(Math.random()*GLYPHS.length)];
      }
      el.textContent = out;
      if(frame >= total){ el.textContent = final; clearInterval(iv); }
    }, 34);
  }

  /* ---------- Reveal on scroll ---------- */
  var io = new IntersectionObserver(function(entries){
    entries.forEach(function(en){
      if(en.isIntersecting){
        en.target.classList.add("in");
        en.target.querySelectorAll("[data-scramble]").forEach(scramble);
        if(en.target.hasAttribute("data-scramble")) scramble(en.target);
        io.unobserve(en.target);
      }
    });
  }, {threshold:.15});
  document.querySelectorAll(".reveal").forEach(function(el){ io.observe(el); });
  document.querySelectorAll("[data-scramble]").forEach(function(el){
    if(el.closest(".reveal")) return;
    var o = new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ scramble(el); o.unobserve(el);} }); }, {threshold:.4});
    o.observe(el);
  });

  /* ---------- Before / After slider ---------- */
  var ba = document.getElementById("baSlider"), baRange = document.getElementById("baRange");
  if(ba && baRange){
    baRange.addEventListener("input", function(){ ba.style.setProperty("--pos", baRange.value + "%"); });
  }

  /* ---------- Raised Bed Planner ---------- */
  var COLS=8, ROWS=4, TOTAL=COLS*ROWS;
  var PLANTS = {
    tomato:   {name:"Tomato",   icon:"🍅", w:2, h:2, color:"#B4402E"},
    cucumber: {name:"Cucumber", icon:"🥒", w:1, h:2, color:"#3F7A44"},
    pepper:   {name:"Pepper",   icon:"🫑", w:1, h:1, color:"#2F6B4F"},
    basil:    {name:"Basil",    icon:"🌿", w:1, h:1, color:"#5F9A4E"},
    lettuce:  {name:"Lettuce",  icon:"🥬", w:1, h:1, color:"#8CBE62"},
    carrot:   {name:"Carrot",   icon:"🥕", w:1, h:1, color:"#D07A2A"},
    marigold: {name:"Marigold", icon:"🌼", w:1, h:1, color:"#E0A33C"},
    squash:   {name:"Squash",   icon:"🎃", w:2, h:2, color:"#C0762B"}
  };
  var GOOD = {
    "basil|tomato":"Basil at the tomato's elbow confuses hornworm moths — a classic pairing.",
    "marigold|tomato":"French marigolds beside tomatoes help fend off root-knot nematodes.",
    "basil|pepper":"Basil and peppers share the same sun and water — happy bedfellows.",
    "carrot|lettuce":"Lettuce shades the soil while the carrots size up below.",
    "carrot|tomato":"Tomatoes and carrots coexist well; carrots loosen the bed's shoulders.",
    "pepper|tomato":"Nightshade neighbors — feed them the same compost tea on the same day."
  };
  var DEFAULT_HINT = "Pick a crop on the left, then click an empty square to tuck it in.";
  var selected = null, cells = [], gridMap = new Array(TOTAL).fill(null), instances = new Map(), uid = 0;

  var bedEl = document.getElementById("bed"),
      chipsEl = document.getElementById("paletteChips"),
      statSq = document.getElementById("statSq"),
      statPlants = document.getElementById("statPlants"),
      statWater = document.getElementById("statWater"),
      hintEl = document.getElementById("bedHint");

  // Build palette
  Object.keys(PLANTS).forEach(function(id){
    var p = PLANTS[id];
    var b = document.createElement("button");
    b.className = "plant-chip"; b.type = "button";
    b.setAttribute("aria-pressed","false"); b.dataset.plant = id;
    b.innerHTML = '<span class="p-icon" style="background:'+p.color+'33">'+p.icon+'</span>'+p.name+'<small>'+(p.w>1||p.h>1 ? p.w+"×"+p.h+" ft" : "1 sq ft")+'</small>';
    b.addEventListener("click", function(){
      selected = (selected === id) ? null : id;
      chipsEl.querySelectorAll(".plant-chip").forEach(function(c){ c.setAttribute("aria-pressed", c.dataset.plant===selected ? "true":"false"); });
      if(selected){ hintEl.textContent = p.name + (p.w>1||p.h>1 ? " needs a clear "+p.w+"×"+p.h+" patch." : " — one square each, plant in drifts."); }
      else { hintEl.textContent = DEFAULT_HINT; }
      clearPreview();
    });
    chipsEl.appendChild(b);
  });

  // Build grid
  for(var r=0;r<ROWS;r++){
    for(var c=0;c<COLS;c++){
      (function(idx, rr, cc){
        var cell = document.createElement("button");
        cell.type = "button"; cell.className = "cell";
        cell.setAttribute("aria-label","Row "+(rr+1)+", column "+(cc+1)+": empty");
        cell.addEventListener("click", function(){
          var inst = gridMap[idx];
          if(inst){ removeInst(inst); return; }
          if(selected){ place(selected, rr, cc, cell); }
          else { hintEl.textContent = "Choose a crop from the palette first — then click away."; }
        });
        cell.addEventListener("mouseenter", function(){ showPreview(rr, cc); });
        cell.addEventListener("mouseleave", clearPreview);
        bedEl.appendChild(cell); cells.push(cell);
      })(r*COLS+c, r, c);
    }
  }

  function footprint(id, r, c){
    var p = PLANTS[id], out = [];
    for(var dr=0; dr<p.h; dr++){ for(var dc=0; dc<p.w; dc++){
      var rr=r+dr, cc=c+dc;
      if(rr>=ROWS || cc>=COLS) return null;
      out.push(rr*COLS+cc);
    }}
    return out;
  }
  function showPreview(r,c){
    clearPreview();
    if(!selected) return;
    var fp = footprint(selected, r, c);
    if(!fp){ return; }
    var ok = fp.every(function(i){ return !gridMap[i]; });
    fp.forEach(function(i){ cells[i].classList.add(ok ? "preview-good" : "preview-bad"); });
  }
  function clearPreview(){ cells.forEach(function(c){ c.classList.remove("preview-good","preview-bad"); }); }

  function place(id, r, c, origin){
    var fp = footprint(id, r, c);
    var p = PLANTS[id];
    if(!fp || fp.some(function(i){ return gridMap[i]; })){
      hintEl.textContent = p.name + " needs a clear " + p.w + "×" + p.h + " patch — give it room to breathe.";
      if(origin){ origin.classList.add("nope"); setTimeout(function(){ origin.classList.remove("nope"); }, 420); }
      return;
    }
    var key = "i" + (++uid);
    instances.set(key, {plant:id, cells:fp});
    fp.forEach(function(i){
      gridMap[i] = key;
      cells[i].classList.add("filled");
      cells[i].style.background = p.color;
      cells[i].textContent = p.icon;
    });
    update();
  }
  function removeInst(key){
    var inst = instances.get(key); if(!inst) return;
    inst.cells.forEach(function(i){
      gridMap[i]=null; cells[i].classList.remove("filled");
      cells[i].style.background=""; cells[i].textContent="";
    });
    instances.delete(key);
    hintEl.textContent = "Pulled it out. The soil thanks you for the rotation.";
    update();
  }
  function update(){
    var planted = gridMap.filter(Boolean).length;
    statSq.textContent = planted + " / " + TOTAL;
    statPlants.textContent = instances.size;
    statWater.textContent = planted ? "≈ " + (planted * 0.12).toFixed(1) + " gal" : "—";
    cells.forEach(function(cell,i){
      var k = gridMap[i];
      cell.setAttribute("aria-label","Row "+(Math.floor(i/COLS)+1)+", column "+((i%COLS)+1)+": "+(k ? PLANTS[instances.get(k).plant].name : "empty"));
    });
    // companion scan
    var found = [], seen = {};
    gridMap.forEach(function(k,i){
      if(!k) return;
      var a = instances.get(k).plant, r = Math.floor(i/COLS), c = i%COLS;
      [[r,c+1],[r+1,c]].forEach(function(nb){
        var ni = nb[0]*COLS + nb[1];
        if(nb[0]<ROWS && nb[1]<COLS && gridMap[ni] && gridMap[ni]!==k){
          var b = instances.get(gridMap[ni]).plant;
          if(a===b) return;
          var pair = [a,b].sort().join("|");
          if(GOOD[pair] && !seen[pair]){ seen[pair]=1; found.push(GOOD[pair]); }
        }
      });
    });
    if(found.length){ hintEl.textContent = found.slice(0,2).join(" "); }
    else if(planted >= TOTAL-3){ hintEl.textContent = "Nearly full — leave a square or two open for airflow and harvesting elbows."; }
    else if(planted > 0 && hintEl.textContent.indexOf("needs a clear")===-1 && hintEl.textContent.indexOf("Pulled it out")===-1){ hintEl.textContent = DEFAULT_HINT; }
  }

  document.getElementById("clearBtn").addEventListener("click", function(){
    instances.clear(); gridMap.fill(null);
    cells.forEach(function(c){ c.classList.remove("filled"); c.style.background=""; c.textContent=""; });
    hintEl.textContent = DEFAULT_HINT; update();
  });
  document.getElementById("sampleBtn").addEventListener("click", function(){
    document.getElementById("clearBtn").click();
    [["tomato",0,0],["pepper",0,2],["pepper",1,2],["basil",0,3],["basil",1,3],
     ["lettuce",0,4],["lettuce",0,5],["lettuce",1,4],["lettuce",1,5],
     ["cucumber",0,6],["cucumber",0,7],
     ["carrot",2,0],["carrot",2,1],["carrot",3,0],["carrot",3,1],
     ["marigold",2,2],["marigold",3,2],["marigold",2,3],["lettuce",3,3],
     ["squash",2,6]].forEach(function(s){ place(s[0], s[1], s[2], null); });
    hintEl.textContent = "A proven fall-to-spring layout: nightshades west, roots east, marigolds on the seams.";
  });

  /* ---------- Zone finder ---------- */
  var FROST = {3:"Sep 15",4:"Sep 28",5:"Oct 7",6:"Oct 18",7:"Oct 29",8:"Nov 9",9:"Nov 24"};
  var PICKS = {3:"'Northern Blaze' serviceberry, peonies, overwintered garlic",4:"lilac, hosta, Siberian iris",5:"'October Glory' maple, pansies, garlic",6:"hydrangea, coneflower, tulip drifts",7:"crepe myrtle, rosemary, fig",8:"vitex, agapanthus, citrus in pots",9:"bougainvillea, succulents, peppers"};
  document.getElementById("zoneForm").addEventListener("submit", function(e){
    e.preventDefault();
    var zip = document.getElementById("zipInput").value.trim(),
        out = document.getElementById("zoneResult");
    if(!/^\d{5}$/.test(zip)){
      out.innerHTML = "That doesn't look like a 5-digit ZIP — try again and we'll take another reading.";
      out.classList.add("show"); return;
    }
    var sum = zip.split("").reduce(function(a,d){ return a + Number(d); }, 0);
    var z = 3 + (sum % 7), letter = sum % 2 ? "b" : "a";
    out.innerHTML = "You're in <strong>Zone " + z + letter + "</strong>.<br>Average first frost: <strong>≈ " + FROST[z] + "</strong>.<br>Happy there: " + PICKS[z] + ".";
    out.classList.add("show");
  });

  /* ---------- Testimonial rail ---------- */
  var rail = document.getElementById("voiceRail");
  document.getElementById("railPrev").addEventListener("click", function(){ rail.scrollBy({left:-380, behavior: reduced?"auto":"smooth"}); });
  document.getElementById("railNext").addEventListener("click", function(){ rail.scrollBy({left:380, behavior: reduced?"auto":"smooth"}); });

  /* ---------- FAQ accordion ---------- */
  document.querySelectorAll(".faq-item").forEach(function(item){
    var q = item.querySelector(".faq-q"), a = item.querySelector(".faq-a");
    q.addEventListener("click", function(){
      var open = item.classList.contains("open");
      document.querySelectorAll(".faq-item.open").forEach(function(o){
        o.classList.remove("open");
        o.querySelector(".faq-a").style.maxHeight = null;
        o.querySelector(".faq-q").setAttribute("aria-expanded","false");
      });
      if(!open){
        item.classList.add("open");
        a.style.maxHeight = a.scrollHeight + "px";
        q.setAttribute("aria-expanded","true");
      }
    });
  });

  /* ---------- Newsletter ---------- */
  document.getElementById("newsForm").addEventListener("submit", function(e){
    e.preventDefault();
    this.style.display = "none";
    document.getElementById("newsSuccess").classList.add("show");
    document.querySelector(".news-note").style.display = "none";
  });
})();
</script>
</body>
</html>
View Axe Report (JSON)
{
  "testEngine": {
    "name": "axe-core",
    "version": "4.10.2"
  },
  "testRunner": {
    "name": "axe"
  },
  "testEnvironment": {
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36",
    "windowWidth": 1280,
    "windowHeight": 720,
    "orientationAngle": 0,
    "orientationType": "landscape-primary"
  },
  "timestamp": "2026-11-12T09:47:24.687Z",
  "url": "https://benchmark.aimac.invalid/b8b1bcc8a49bc9b6fba3038f92ad093a1ae30cc51e45b14910d5caef1cf44df9.html",
  "toolOptions": {
    "runOnly": {
      "type": "tag",
      "values": [
        "wcag2a",
        "wcag2aa",
        "wcag21a",
        "wcag21aa",
        "wcag22a",
        "wcag22aa"
      ]
    },
    "resultTypes": [
      "violations"
    ],
    "reporter": "v1"
  },
  "inapplicable": [
    {
      "id": "area-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag244",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.2.4.4",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure <area> elements of image maps have alternative text",
      "help": "Active <area> elements must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/area-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-braille-equivalent",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-braillelabel and aria-brailleroledescription have a non-braille equivalent",
      "help": "aria-braille attributes must have a non-braille equivalent",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-braille-equivalent?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-command-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA button, link and menuitem has an accessible name",
      "help": "ARIA commands must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-command-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-input-field-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA input field has an accessible name",
      "help": "ARIA input fields must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-meter-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag111",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure every ARIA meter node has an accessible name",
      "help": "ARIA meter nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-meter-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-progressbar-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag111",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure every ARIA progressbar node has an accessible name",
      "help": "ARIA progressbar nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-required-parent",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure elements with an ARIA role that require parent roles are contained by them",
      "help": "Certain ARIA roles must be contained by particular parents",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-parent?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-toggle-field-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every ARIA toggle field has an accessible name",
      "help": "ARIA toggle fields must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "aria-tooltip-name",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure every ARIA tooltip node has an accessible name",
      "help": "ARIA tooltip nodes must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "autocomplete-valid",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag21aa",
        "wcag135",
        "EN-301-549",
        "EN-9.1.3.5",
        "ACT"
      ],
      "description": "Ensure the autocomplete attribute is correct and suitable for the form field",
      "help": "autocomplete attribute must be used correctly",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/autocomplete-valid?application=axeAPI",
      "nodes": []
    },
    {
      "id": "blink",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag222",
        "section508",
        "section508.22.j",
        "TTv5",
        "TT2.b",
        "EN-301-549",
        "EN-9.2.2.2"
      ],
      "description": "Ensure <blink> elements are not used",
      "help": "<blink> elements are deprecated and must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/blink?application=axeAPI",
      "nodes": []
    },
    {
      "id": "definition-list",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <dl> elements are structured correctly",
      "help": "<dl> elements must only directly contain properly-ordered <dt> and <dd> groups, <script>, <template> or <div> elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/definition-list?application=axeAPI",
      "nodes": []
    },
    {
      "id": "dlitem",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <dt> and <dd> elements are contained by a <dl>",
      "help": "<dt> and <dd> elements must be contained by a <dl>",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/dlitem?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-focusable-content",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag211",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1"
      ],
      "description": "Ensure <frame> and <iframe> elements with focusable content do not have tabindex=-1",
      "help": "Frames with focusable content must not have tabindex=-1",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-focusable-content?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-title-unique",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT12.d",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure <iframe> and <frame> elements contain a unique title attribute",
      "help": "Frames must have a unique title attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title-unique?application=axeAPI",
      "nodes": []
    },
    {
      "id": "frame-title",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.i",
        "TTv5",
        "TT12.d",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure <iframe> and <frame> elements have an accessible name",
      "help": "Frames must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title?application=axeAPI",
      "nodes": []
    },
    {
      "id": "html-xml-lang-mismatch",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure that HTML elements with both valid lang and xml:lang attributes agree on the base language of the page",
      "help": "HTML elements with lang and xml:lang must have the same base language",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-xml-lang-mismatch?application=axeAPI",
      "nodes": []
    },
    {
      "id": "input-button-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure input buttons have discernible text",
      "help": "Input buttons must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-button-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "input-image-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure <input type=\"image\"> elements have alternative text",
      "help": "Image buttons must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-image-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "marquee",
      "impact": null,
      "tags": [
        "cat.parsing",
        "wcag2a",
        "wcag222",
        "TTv5",
        "TT2.b",
        "EN-301-549",
        "EN-9.2.2.2"
      ],
      "description": "Ensure <marquee> elements are not used",
      "help": "<marquee> elements are deprecated and must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/marquee?application=axeAPI",
      "nodes": []
    },
    {
      "id": "meta-refresh",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag221",
        "TTv5",
        "TT8.a",
        "EN-301-549",
        "EN-9.2.2.1"
      ],
      "description": "Ensure <meta http-equiv=\"refresh\"> is not used for delayed refresh",
      "help": "Delayed refresh under 20 hours must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-refresh?application=axeAPI",
      "nodes": []
    },
    {
      "id": "object-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "EN-301-549",
        "EN-9.1.1.1"
      ],
      "description": "Ensure <object> elements have alternative text",
      "help": "<object> elements must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/object-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "role-img-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure [role=\"img\"] elements have alternative text",
      "help": "[role=\"img\"] elements must have an alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/role-img-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "select-name",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.n",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure select element has an accessible name",
      "help": "Select element must have an accessible name",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/select-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "server-side-image-map",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag211",
        "section508",
        "section508.22.f",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1"
      ],
      "description": "Ensure that server-side image maps are not used",
      "help": "Server-side image maps must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/server-side-image-map?application=axeAPI",
      "nodes": []
    },
    {
      "id": "summary-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure summary elements have discernible text",
      "help": "Summary elements must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/summary-name?application=axeAPI",
      "nodes": []
    },
    {
      "id": "svg-img-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure <svg> elements with an img, graphics-document or graphics-symbol role have an accessible text",
      "help": "<svg> elements with an img role must have an alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/svg-img-alt?application=axeAPI",
      "nodes": []
    },
    {
      "id": "td-headers-attr",
      "impact": null,
      "tags": [
        "cat.tables",
        "wcag2a",
        "wcag131",
        "section508",
        "section508.22.g",
        "TTv5",
        "TT14.b",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that each cell in a table that uses the headers attribute refers only to other cells in that table",
      "help": "Table cells that use the headers attribute must only refer to cells in the same table",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/td-headers-attr?application=axeAPI",
      "nodes": []
    },
    {
      "id": "th-has-data-cells",
      "impact": null,
      "tags": [
        "cat.tables",
        "wcag2a",
        "wcag131",
        "section508",
        "section508.22.g",
        "TTv5",
        "TT14.b",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that <th> elements and elements with role=columnheader/rowheader have data cells they describe",
      "help": "Table headers in a data table must refer to data cells",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/th-has-data-cells?application=axeAPI",
      "nodes": []
    },
    {
      "id": "valid-lang",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2aa",
        "wcag312",
        "TTv5",
        "TT11.b",
        "EN-301-549",
        "EN-9.3.1.2",
        "ACT"
      ],
      "description": "Ensure lang attributes have valid values",
      "help": "lang attribute must have a valid value",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/valid-lang?application=axeAPI",
      "nodes": []
    },
    {
      "id": "video-caption",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag122",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT17.a",
        "EN-301-549",
        "EN-9.1.2.2"
      ],
      "description": "Ensure <video> elements have captions",
      "help": "<video> elements must have captions",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/video-caption?application=axeAPI",
      "nodes": []
    },
    {
      "id": "no-autoplay-audio",
      "impact": null,
      "tags": [
        "cat.time-and-media",
        "wcag2a",
        "wcag142",
        "TTv5",
        "TT2.a",
        "EN-301-549",
        "EN-9.1.4.2",
        "ACT"
      ],
      "description": "Ensure <video> or <audio> elements do not autoplay audio for more than 3 seconds without a control mechanism to stop or mute the audio",
      "help": "<video> or <audio> elements must not play automatically",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/no-autoplay-audio?application=axeAPI",
      "nodes": []
    }
  ],
  "passes": [
    {
      "id": "aria-allowed-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure an element's role supports its ARIA attributes",
      "help": "Elements must only use supported ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-allowed-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-allowed-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attributes are used correctly for the defined role"
            }
          ],
          "none": [
            {
              "id": "aria-unsupported-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute is supported"
            }
          ],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\" aria-label=\"Fern and Frame home\">",
          "target": [
            "a[aria-label=\"Fern and Frame home\"]"
          ]
        }
      ]
    },
    {
      "id": "aria-conditional-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are used as described in the specification of the element's role",
      "help": "ARIA attributes must be used as specified for the element's role",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-conditional-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "ARIA attribute is allowed"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\" aria-label=\"Fern and Frame home\">",
          "target": [
            "a[aria-label=\"Fern and Frame home\"]"
          ]
        }
      ]
    },
    {
      "id": "aria-deprecated-role",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure elements do not use deprecated roles",
      "help": "Deprecated ARIA roles must not be used",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "deprecatedrole",
              "data": null,
              "relatedNodes": [],
              "impact": "minor",
              "message": "ARIA role is not deprecated"
            }
          ],
          "impact": null,
          "html": "<div class=\"bed\" id=\"bed\" role=\"grid\" aria-label=\"Raised bed planning grid, 8 columns by 4 rows\">",
          "target": [
            "#bed"
          ]
        }
      ]
    },
    {
      "id": "aria-hidden-body",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "wcag412",
        "EN-301-549",
        "EN-9.1.3.1",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-hidden=\"true\" is not present on the document body.",
      "help": "aria-hidden=\"true\" must not be present on the document body",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-hidden-body",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "No aria-hidden attribute is present on document body"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<body>",
          "target": [
            "body"
          ]
        }
      ]
    },
    {
      "id": "aria-hidden-focus",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure aria-hidden elements are not focusable nor contain focusable elements",
      "help": "ARIA hidden element must not be focusable or contain focusable elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "focusable-modal-open",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "No focusable elements while a modal is open"
            },
            {
              "id": "focusable-disabled",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "No focusable elements contained within element"
            },
            {
              "id": "focusable-not-tabbable",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "No focusable elements contained within element"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<div class=\"stamp\" aria-hidden=\"true\">",
          "target": [
            ".stamp"
          ]
        }
      ]
    },
    {
      "id": "aria-prohibited-attr",
      "impact": "serious",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are not prohibited for an element's role",
      "help": "Elements must only use permitted ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "aria-prohibited-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "ARIA attribute is allowed"
            }
          ],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\" aria-label=\"Fern and Frame home\">",
          "target": [
            "a[aria-label=\"Fern and Frame home\"]"
          ]
        }
      ]
    },
    {
      "id": "aria-required-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure elements with ARIA roles have all required ARIA attributes",
      "help": "Required ARIA attributes must be provided",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-attr?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-required-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "All required ARIA attributes are present"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<div class=\"bed\" id=\"bed\" role=\"grid\" aria-label=\"Raised bed planning grid, 8 columns by 4 rows\">",
          "target": [
            "#bed"
          ]
        }
      ]
    },
    {
      "id": "aria-roles",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure all elements with a role attribute use a valid value",
      "help": "ARIA roles used must conform to valid values",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-roles?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "invalidrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA role is valid"
            },
            {
              "id": "abstractrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Abstract roles are not used"
            },
            {
              "id": "unsupportedrole",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA role is supported"
            }
          ],
          "impact": null,
          "html": "<div class=\"bed\" id=\"bed\" role=\"grid\" aria-label=\"Raised bed planning grid, 8 columns by 4 rows\">",
          "target": [
            "#bed"
          ]
        }
      ]
    },
    {
      "id": "aria-valid-attr-value",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure all ARIA attributes have valid values",
      "help": "ARIA attributes must conform to valid values",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "aria-valid-attr-value",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute values are valid"
            },
            {
              "id": "aria-errormessage",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-errormessage exists and references elements visible to screen readers that use a supported aria-errormessage technique"
            },
            {
              "id": "aria-level",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-level values are valid"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\" aria-label=\"Fern and Frame home\">",
          "target": [
            "a[aria-label=\"Fern and Frame home\"]"
          ]
        }
      ]
    },
    {
      "id": "aria-valid-attr",
      "impact": null,
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure attributes that begin with aria- are valid ARIA attributes",
      "help": "ARIA attributes must conform to valid names",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-valid-attr",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "ARIA attribute name is valid"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a class=\"brand\" href=\"#top\" aria-label=\"Fern and Frame home\">",
          "target": [
            "a[aria-label=\"Fern and Frame home\"]"
          ]
        }
      ]
    },
    {
      "id": "avoid-inline-spacing",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag21aa",
        "wcag1412",
        "EN-301-549",
        "EN-9.1.4.12",
        "ACT"
      ],
      "description": "Ensure that text spacing set through style attributes can be adjusted with custom stylesheets",
      "help": "Inline text spacing must be adjustable with custom stylesheets",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/avoid-inline-spacing?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [
            {
              "id": "important-letter-spacing",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Letter-spacing in the style attribute is not set to !important, or meets the minimum"
            },
            {
              "id": "important-word-spacing",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "word-spacing in the style attribute is not set to !important, or meets the minimum"
            },
            {
              "id": "important-line-height",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "line-height in the style attribute is not set to !important, or meets the minimum"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<div class=\"kb\" style=\"aspect-ratio:9/10.5\">\n          <img src=\"https://picsum.photos/seed/garden-gate-fern/900/1050\" alt=\"A weathered garden gate opening onto a lush perennial border in late-afternoon light\" width=\"900\" height=\"1050\">\n        </div>",
          "target": [
            ".hero-frame > .kb"
          ]
        }
      ]
    },
    {
      "id": "button-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure buttons have discernible text",
      "help": "Buttons must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/button-name?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "button-has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has inner text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"tomato\"><span class=\"p-icon\" style=\"background:#B4402E33\">\ud83c\udf45</span>Tomato<small>2\u00d72 ft</small></button>",
          "target": [
            "button[data-plant=\"tomato\"]"
          ]
        }
      ]
    },
    {
      "id": "bypass",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag241",
        "section508",
        "section508.22.o",
        "TTv5",
        "TT9.a",
        "EN-301-549",
        "EN-9.2.4.1"
      ],
      "description": "Ensure each page has at least one mechanism for a user to bypass navigation and jump straight to the content",
      "help": "Page must have means to bypass repeated blocks",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/bypass?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "internal-link-present",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Valid skip link found"
            },
            {
              "id": "header-present",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<h1>\n        <span class=\"line\"><span>Every good home</span></span>\n        <span class=\"line\"><span>has <em>dirt</em> under</span></span>\n        <span class=\"line\"><span>its nails.</span></span>\n      </h1>",
                  "target": [
                    "h1"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">Design with good bones first. Color is just the finishing touch.</h2>",
                  "target": [
                    "#design > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h3 class=\"big\">A garden is a room with weather. Treat it like one.</h3>",
                  "target": [
                    ".design-copy > .big"
                  ]
                },
                {
                  "html": "<h3>Structure before color</h3>",
                  "target": [
                    "li:nth-child(1) > div > h3"
                  ]
                },
                {
                  "html": "<h3>Layer by bloom time</h3>",
                  "target": [
                    "li:nth-child(2) > div > h3"
                  ]
                },
                {
                  "html": "<h3>Repeat &amp; rhythm</h3>",
                  "target": [
                    "li:nth-child(3) > div > h3"
                  ]
                },
                {
                  "html": "<h3>Plan all four seasons</h3>",
                  "target": [
                    "li:nth-child(4) > div > h3"
                  ]
                },
                {
                  "html": "<h3 class=\"big\" style=\"font-family:var(--serif);font-weight:560;font-size:clamp(1.7rem,2.6vw,2.3rem);color:var(--pine);line-height:1.12;margin-bottom:1.1rem\">The Whitfield front yard: two weekends, $1,400, one painted door.</h3>",
                  "target": [
                    ".ba-block > .reveal:nth-child(1) > .big"
                  ]
                },
                {
                  "html": "<h2>The Autumn <em>Almanac</em>, month by month.</h2>",
                  "target": [
                    ".almanac-left > h2"
                  ]
                },
                {
                  "html": "<h3>September</h3>",
                  "target": [
                    ".month-card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>October</h3>",
                  "target": [
                    ".month-card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>November</h3>",
                  "target": [
                    ".month-card:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">Sketch your spring raised bed, right here on the bench.</h2>",
                  "target": [
                    "#planner > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h3>Choose a crop</h3>",
                  "target": [
                    ".palette > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">Field-tested projects, pinned straight from our readers' yards.</h2>",
                  "target": [
                    "#ideas > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h3>The gravel patio that took one weekend</h3>",
                  "target": [
                    ".postcard:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>A pollinator border planted for Zone 6b</h3>",
                  "target": [
                    ".postcard:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Cedar fence refresh: clean, brighten, oil</h3>",
                  "target": [
                    ".postcard:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h3>The stone herb spiral (drainage for days)</h3>",
                  "target": [
                    ".postcard:nth-child(4) > h3"
                  ]
                },
                {
                  "html": "<h3>A shade-tolerant rain garden for downspouts</h3>",
                  "target": [
                    ".postcard:nth-child(5) > h3"
                  ]
                },
                {
                  "html": "<h3>Pergola string-light run, done properly</h3>",
                  "target": [
                    ".postcard:nth-child(6) > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">The house side of the hedge: repair guides without the fluff.</h2>",
                  "target": [
                    "#improvement > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h3>Refinishing a cedar deck in one weekend</h3>",
                  "target": [
                    ".guide-card--feat > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>Gutter guards: before you buy, read this</h3>",
                  "target": [
                    ".guide-card:nth-child(2) > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>Choosing interior paint sheen (without regret)</h3>",
                  "target": [
                    ".guide-card:nth-child(3) > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>Rain barrel plumbing 101</h3>",
                  "target": [
                    ".guide-card:nth-child(4) > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>A compost bay that doesn't smell</h3>",
                  "target": [
                    ".guide-card:nth-child(5) > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>Fixing a leaning fence post the right way</h3>",
                  "target": [
                    ".guide-card:nth-child(6) > .guide-body > h3"
                  ]
                },
                {
                  "html": "<h3>Prefer a professional? We vet them so you don't have to.</h3>",
                  "target": [
                    ".pro-strip > div > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">48,000 growers and fixers read along every month.</h2>",
                  "target": [
                    "#voices > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">Fresh field notes, fresh from last weekend's mess.</h2>",
                  "target": [
                    "#journal > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h3>What a $9 soil test taught us about our struggling lawn</h3>",
                  "target": [
                    ".article-row.reveal[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>The only three pruners you'll ever need</h3>",
                  "target": [
                    ".article-row.reveal[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Cloches, cold frames, row cover: which one for which crop</h3>",
                  "target": [
                    ".article-row.reveal[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>What's your hardiness zone?</h3>",
                  "target": [
                    ".side-card.reveal:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3 style=\"margin-top:1rem\">Reader build: a gravel patio in one weekend</h3>",
                  "target": [
                    ".side-card.reveal:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Ask a Master Gardener</h3>",
                  "target": [
                    ".hotline > h3"
                  ]
                },
                {
                  "html": "<h2 class=\"sec-title\">The questions readers send us most.</h2>",
                  "target": [
                    "#faq > .container > .sec-head.reveal > div > .sec-title"
                  ]
                },
                {
                  "html": "<h2>One email, every Sunday. <em>Five minutes, zero fluff.</em></h2>",
                  "target": [
                    "#newsletter > .container > .reveal:nth-child(1) > h2"
                  ]
                },
                {
                  "html": "<h4>Explore</h4>",
                  "target": [
                    "nav[aria-label=\"Explore\"] > h4"
                  ]
                },
                {
                  "html": "<h4>Company</h4>",
                  "target": [
                    "nav[aria-label=\"Company\"] > h4"
                  ]
                },
                {
                  "html": "<h4>Resources</h4>",
                  "target": [
                    "nav[aria-label=\"Resources\"] > h4"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a heading"
            },
            {
              "id": "landmark",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<main id=\"main\">",
                  "target": [
                    "#main"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a landmark region"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9e4d2",
                "bgColor": "#122a1c",
                "contrastRatio": 12,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has sufficient color contrast of 12"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<span>\ud83c\udf42 Fall Edition is live \u2014 first-frost dates, zone calendars &amp; 12 new build plans. <a href=\"#almanac\">Read the issue \u2192</a></span>",
          "target": [
            ".container > span:nth-child(1)"
          ]
        }
      ]
    },
    {
      "id": "document-title",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag242",
        "TTv5",
        "TT12.a",
        "EN-301-549",
        "EN-9.2.4.2",
        "ACT"
      ],
      "description": "Ensure each HTML document contains a non-empty <title> element",
      "help": "Documents must have <title> element to aid in navigation",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/document-title?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "doc-has-title",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Document has a non-empty <title> element"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "duplicate-id-aria",
      "impact": null,
      "tags": [
        "cat.parsing",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure every id attribute value used in ARIA and in labels is unique",
      "help": "IDs used in ARIA and labels must be unique",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/duplicate-id-aria?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "duplicate-id-aria",
              "data": "mainNav",
              "relatedNodes": [],
              "impact": "critical",
              "message": "Document has no elements referenced with ARIA or labels that share the same id attribute"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<nav class=\"main-nav\" id=\"mainNav\" aria-label=\"Primary navigation\">",
          "target": [
            "#mainNav"
          ]
        }
      ]
    },
    {
      "id": "form-field-multiple-labels",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag332",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.3.3.2"
      ],
      "description": "Ensure form field does not have multiple label elements",
      "help": "Form field must not have multiple label elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/form-field-multiple-labels?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "multiple-label",
              "data": null,
              "relatedNodes": [],
              "impact": "moderate",
              "message": "Form field does not have multiple label elements"
            }
          ],
          "impact": null,
          "html": "<input type=\"range\" min=\"0\" max=\"100\" value=\"52\" id=\"baRange\" aria-label=\"Compare before and after photos\">",
          "target": [
            "#baRange"
          ]
        }
      ]
    },
    {
      "id": "html-has-lang",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "TTv5",
        "TT11.a",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure every HTML document has a lang attribute",
      "help": "<html> element must have a lang attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-has-lang?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-lang",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "The <html> element has a lang attribute"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "html-lang-valid",
      "impact": null,
      "tags": [
        "cat.language",
        "wcag2a",
        "wcag311",
        "TTv5",
        "TT11.a",
        "EN-301-549",
        "EN-9.3.1.1",
        "ACT"
      ],
      "description": "Ensure the lang attribute of the <html> element has a valid value",
      "help": "<html> element must have a valid value for the lang attribute",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-lang-valid?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "valid-lang",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Value of lang attribute is included in the list of valid languages"
            }
          ],
          "impact": null,
          "html": "<html lang=\"en\">",
          "target": [
            "html"
          ]
        }
      ]
    },
    {
      "id": "image-alt",
      "impact": null,
      "tags": [
        "cat.text-alternatives",
        "wcag2a",
        "wcag111",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT7.a",
        "TT7.b",
        "EN-301-549",
        "EN-9.1.1.1",
        "ACT"
      ],
      "description": "Ensure <img> elements have alternative text or a role of none or presentation",
      "help": "Images must have alternative text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/image-alt?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-alt",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has an alt attribute"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "alt-space-value",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has a valid alt attribute value"
            }
          ],
          "impact": null,
          "html": "<img src=\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%231E3A28'/%3E%3Cpath d='M24 8 C15 17 15 31 24 40 C33 31 33 17 24 8 Z' fill='%23F7F3E8'/%3E%3Cpath d='M24 13 V35 M24 19 L19 24 M24 19 L29 24 M24 27 L19 32 M24 27 L29 32' stroke='%231E3A28' stroke-width='1.6'/%3E%3C/svg%3E\" alt=\"Fern &amp; Frame leaf mark\" width=\"44\" height=\"44\">",
          "target": [
            "img[alt=\"Fern & Frame leaf mark\"]"
          ]
        }
      ]
    },
    {
      "id": "label",
      "impact": null,
      "tags": [
        "cat.forms",
        "wcag2a",
        "wcag412",
        "section508",
        "section508.22.n",
        "TTv5",
        "TT5.c",
        "EN-301-549",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure every form element has a label",
      "help": "Form elements must have labels",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/label?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "aria-label attribute exists and is not empty"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "hidden-explicit-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Form element has a visible explicit <label>"
            }
          ],
          "impact": null,
          "html": "<input type=\"range\" min=\"0\" max=\"100\" value=\"52\" id=\"baRange\" aria-label=\"Compare before and after photos\">",
          "target": [
            "#baRange"
          ]
        }
      ]
    },
    {
      "id": "link-in-text-block",
      "impact": null,
      "tags": [
        "cat.color",
        "wcag2a",
        "wcag141",
        "TTv5",
        "TT13.a",
        "EN-301-549",
        "EN-9.1.4.1"
      ],
      "description": "Ensure links are distinguished from surrounding text in a way that does not rely on color",
      "help": "Links must be distinguishable without relying on color",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-in-text-block?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "link-in-text-block-style",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<span>\ud83c\udf42 Fall Edition is live \u2014 first-frost dates, zone calendars &amp; 12 new build plans. <a href=\"#almanac\">Read the issue \u2192</a></span>",
                  "target": [
                    ".container > span:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Links can be distinguished from surrounding text by visual styling"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a href=\"#almanac\">Read the issue \u2192</a>",
          "target": [
            "span:nth-child(1) > a[href$=\"#almanac\"]"
          ]
        }
      ]
    },
    {
      "id": "link-name",
      "impact": null,
      "tags": [
        "cat.name-role-value",
        "wcag2a",
        "wcag244",
        "wcag412",
        "section508",
        "section508.22.a",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.2.4.4",
        "EN-9.4.1.2",
        "ACT"
      ],
      "description": "Ensure links have discernible text",
      "help": "Links must have discernible text",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-name?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "focusable-no-name",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element is not in tab order or has accessible text"
            }
          ],
          "impact": null,
          "html": "<a class=\"skip\" href=\"#main\">Skip to content</a>",
          "target": [
            "a[href$=\"#main\"]"
          ]
        }
      ]
    },
    {
      "id": "list",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure that lists are structured correctly",
      "help": "<ul> and <ol> must only directly contain <li>, <script> or <template> elements",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/list?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "only-listitems",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "List element only has direct children that are allowed inside <li> elements"
            }
          ],
          "impact": null,
          "html": "<ul>",
          "target": [
            "ul:nth-child(1)"
          ]
        }
      ]
    },
    {
      "id": "listitem",
      "impact": null,
      "tags": [
        "cat.structure",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure <li> elements are used semantically",
      "help": "<li> elements must be contained in a <ul> or <ol>",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/listitem?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "listitem",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "List item has a <ul>, <ol> or role=\"list\" parent element"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<li>FIRST-FROST WATCH \u2014 ZONE 6: OCT 21</li>",
          "target": [
            "ul:nth-child(1) > li:nth-child(1)"
          ]
        }
      ]
    },
    {
      "id": "meta-viewport",
      "impact": null,
      "tags": [
        "cat.sensory-and-visual-cues",
        "wcag2aa",
        "wcag144",
        "EN-301-549",
        "EN-9.1.4.4",
        "ACT"
      ],
      "description": "Ensure <meta name=\"viewport\"> does not disable text scaling and zooming",
      "help": "Zooming and scaling must not be disabled",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-viewport?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "meta-viewport",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "<meta> tag does not disable zooming on mobile devices"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">",
          "target": [
            "meta[name=\"viewport\"]"
          ]
        }
      ]
    },
    {
      "id": "nested-interactive",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag412",
        "TTv5",
        "TT6.a",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure interactive controls are not nested as they are not always announced by screen readers or can cause focus problems for assistive technologies",
      "help": "Interactive controls must not be nested",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/nested-interactive?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "no-focusable-content",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element does not have focusable descendants"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<img src=\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%231E3A28'/%3E%3Cpath d='M24 8 C15 17 15 31 24 40 C33 31 33 17 24 8 Z' fill='%23F7F3E8'/%3E%3Cpath d='M24 13 V35 M24 19 L19 24 M24 19 L29 24 M24 27 L19 32 M24 27 L29 32' stroke='%231E3A28' stroke-width='1.6'/%3E%3C/svg%3E\" alt=\"Fern &amp; Frame leaf mark\" width=\"44\" height=\"44\">",
          "target": [
            "img[alt=\"Fern & Frame leaf mark\"]"
          ]
        }
      ]
    },
    {
      "id": "scrollable-region-focusable",
      "impact": null,
      "tags": [
        "cat.keyboard",
        "wcag2a",
        "wcag211",
        "wcag213",
        "TTv5",
        "TT4.a",
        "EN-301-549",
        "EN-9.2.1.1",
        "EN-9.2.1.3"
      ],
      "description": "Ensure elements that have scrollable content are accessible by keyboard",
      "help": "Scrollable region must have keyboard access",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/scrollable-region-focusable?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "focusable-element",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element is focusable"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<div class=\"voice-rail reveal\" id=\"voiceRail\" tabindex=\"0\" aria-label=\"Reader testimonials, scroll horizontally\">",
          "target": [
            "#voiceRail"
          ]
        }
      ]
    },
    {
      "id": "target-size",
      "impact": null,
      "tags": [
        "cat.sensory-and-visual-cues",
        "wcag22aa",
        "wcag258"
      ],
      "description": "Ensure touch targets have sufficient size and space",
      "help": "All touch targets must be 24px large, or leave sufficient space",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/target-size?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "target-size",
              "data": {
                "minSize": 24,
                "width": 153.6,
                "height": 49.6
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Control has sufficient size (153.6px by 49.6px, should be at least 24px by 24px)"
            },
            {
              "id": "target-offset",
              "data": {
                "closestOffset": 24,
                "minOffset": 24
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Target has sufficient space from its closest neighbors. Safe clickable space has a diameter of 24px which is at least 24px."
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a class=\"skip\" href=\"#main\">Skip to content</a>",
          "target": [
            "a[href$=\"#main\"]"
          ]
        }
      ]
    }
  ],
  "incomplete": [
    {
      "id": "aria-prohibited-attr",
      "impact": "serious",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag412",
        "EN-301-549",
        "EN-9.4.1.2"
      ],
      "description": "Ensure ARIA attributes are not prohibited for an element's role",
      "help": "Elements must only use permitted ARIA attributes",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
      "nodes": [
        {
          "any": [],
          "all": [],
          "none": [
            {
              "id": "aria-prohibited-attr",
              "data": {
                "role": null,
                "nodeName": "div",
                "messageKey": "noRoleSingular",
                "prohibited": [
                  "aria-label"
                ]
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "aria-label attribute is not well supported on a div with no valid role attribute."
            }
          ],
          "impact": "serious",
          "html": "<div class=\"ticker\" aria-label=\"Seasonal reminders\">",
          "target": [
            ".ticker"
          ],
          "failureSummary": "Fix all of the following:\n  aria-label attribute is not well supported on a div with no valid role attribute."
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "messageKey": "nonBmp"
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element content contains only non-text characters"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"arr\">\u2192</span>",
          "target": [
            ".nav-cta > .arr"
          ],
          "failureSummary": "Fix any of the following:\n  Element content contains only non-text characters"
        }
      ]
    }
  ],
  "violations": [
    {
      "id": "aria-required-children",
      "impact": "critical",
      "tags": [
        "cat.aria",
        "wcag2a",
        "wcag131",
        "EN-301-549",
        "EN-9.1.3.1"
      ],
      "description": "Ensure elements with an ARIA role that require child roles contain them",
      "help": "Certain ARIA roles must contain particular children",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-children?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "aria-required-children",
              "data": {
                "messageKey": "unallowed",
                "values": "button[aria-label]"
              },
              "relatedNodes": [
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 1: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 1: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 2: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 2: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 3: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 3: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 4: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 4: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 5: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 5: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 6: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 6: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 7: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 7: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 1, column 8: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 1, column 8: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 1: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 1: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 2: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 2: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 3: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 3: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 4: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 4: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 5: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 5: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 6: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 6: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 7: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 7: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 2, column 8: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 2, column 8: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 1: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 1: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 2: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 2: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 3: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 3: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 4: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 4: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 5: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 5: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 6: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 6: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 7: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 7: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 3, column 8: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 3, column 8: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 1: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 1: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 2: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 2: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 3: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 3: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 4: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 4: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 5: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 5: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 6: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 6: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 7: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 7: empty\"]"
                  ]
                },
                {
                  "html": "<button type=\"button\" class=\"cell\" aria-label=\"Row 4, column 8: empty\"></button>",
                  "target": [
                    "button[aria-label=\"Row 4, column 8: empty\"]"
                  ]
                }
              ],
              "impact": "critical",
              "message": "Element has children which are not allowed: button[aria-label]"
            }
          ],
          "all": [],
          "none": [],
          "impact": "critical",
          "html": "<div class=\"bed\" id=\"bed\" role=\"grid\" aria-label=\"Raised bed planning grid, 8 columns by 4 rows\">",
          "target": [
            "#bed"
          ],
          "failureSummary": "Fix any of the following:\n  Element has children which are not allowed: button[aria-label]"
        }
      ]
    },
    {
      "id": "color-contrast",
      "impact": "serious",
      "tags": [
        "cat.color",
        "wcag2aa",
        "wcag143",
        "TTv5",
        "TT13.c",
        "EN-301-549",
        "EN-9.1.4.3",
        "ACT"
      ],
      "description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
      "help": "Elements must meet minimum color contrast ratio thresholds",
      "helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
      "nodes": [
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "7.2pt (9.6px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<header class=\"site-header\" id=\"siteHeader\">",
                  "target": [
                    "#siteHeader"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 7.2pt (9.6px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"brand-tag\">Build well \u00b7 Grow wild</span>",
          "target": [
            "a[aria-label=\"Fern and Frame home\"] > span > .brand-tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 7.2pt (9.6px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow mono\" data-scramble=\"\" data-done=\"1\">Field Notes \u00b7 Edition N\u00ba 0O Q 3BWYML GWV4</p>",
          "target": [
            "p[data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Free build plans</span>",
          "target": [
            ".hero-meta > div:nth-child(1) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Expert guides</span>",
          "target": [
            ".hero-meta > div:nth-child(2) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>USDA zones covered</span>",
          "target": [
            ".hero-meta > div:nth-child(3) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Rooted since</span>",
          "target": [
            ".hero-meta > div:nth-child(4) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#626e5d",
                "bgColor": "#122a1c",
                "contrastRatio": 2.84,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<footer>",
                  "target": [
                    "footer"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.84 (foreground color: #626e5d, background color: #122a1c, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"seen\">Featured in \u2014 Fine Gardening \u00b7 The Old Farmer's Almanac \u00b7 Sunset \u00b7 Dwell \u00b7 Oregon Home</p>",
          "target": [
            ".seen"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.84 (foreground color: #626e5d, background color: #122a1c, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow mono\" data-scramble=\"\" data-done=\"1\">Field Notes \u00b7 Edition N\u00ba 47 \u00b7 Autumn 2025</p>",
          "target": [
            ".mono[data-done=\"1\"][data-scramble=\"\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">01</span>",
          "target": [
            ".sec-index[data-done=\"1\"][data-scramble=\"\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Garden Design</p>",
          "target": [
            ".in.sec-head.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Garden Design</p>",
          "target": [
            ".sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\" style=\"margin-bottom:1.2rem\">Curb Appeal Case Study</p>",
          "target": [
            ".in.reveal:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Start to finish</span>",
          "target": [
            ".ba-stat > div:nth-child(1) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Total budget</span>",
          "target": [
            ".ba-stat > div:nth-child(2) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Structural planting</span>",
          "target": [
            ".ba-stat > div:nth-child(3) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\" style=\"margin-bottom:1.2rem\">Curb Appeal Case Study</p>",
          "target": [
            ".ba-block > .in.reveal:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#efe7d3",
                "contrastRatio": 3.75,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec almanac\" id=\"almanac\">",
                  "target": [
                    "#almanac"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Seasonal Tasks</p>",
          "target": [
            ".almanac-left > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#d7dab5",
                "contrastRatio": 3.21,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">\u25cf Plant</span>",
                  "target": [
                    ".legend > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<section class=\"sec almanac\" id=\"almanac\">",
                  "target": [
                    "#almanac"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.21 (foreground color: #5f7e3f, background color: #d7dab5, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">\u25cf Plant</span>",
          "target": [
            ".legend > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.21 (foreground color: #5f7e3f, background color: #d7dab5, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#eed9b1",
                "contrastRatio": 3.41,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">\u25cf Prune</span>",
                  "target": [
                    ".legend > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<section class=\"sec almanac\" id=\"almanac\">",
                  "target": [
                    "#almanac"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.41 (foreground color: #9a6a14, background color: #eed9b1, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">\u25cf Prune</span>",
          "target": [
            ".legend > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.41 (foreground color: #9a6a14, background color: #eed9b1, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#e7d0bc",
                "contrastRatio": 3.8,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">\u25cf Protect</span>",
                  "target": [
                    ".legend > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<section class=\"sec almanac\" id=\"almanac\">",
                  "target": [
                    "#almanac"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.8 (foreground color: #b4402e, background color: #e7d0bc, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">\u25cf Protect</span>",
          "target": [
            ".legend > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.8 (foreground color: #b4402e, background color: #e7d0bc, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#efe7d3",
                "contrastRatio": 3.91,
                "fontSize": "10.8pt (14.4px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec almanac\" id=\"almanac\">",
                  "target": [
                    "#almanac"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #6b7563, background color: #efe7d3, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p>The full 64-page printable calendar, with frost dates for every zone.</p>",
          "target": [
            ".almanac-cover > p"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #6b7563, background color: #efe7d3, font size: 10.8pt (14.4px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card.in:nth-child(1) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card.in:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card.in:nth-child(1) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Divide</span>",
                  "target": [
                    ".month-card.in:nth-child(1) > ul > li:nth-child(2) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card.in:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Divide</span>",
          "target": [
            ".month-card.in:nth-child(1) > ul > li:nth-child(2) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">Prune</span>",
                  "target": [
                    ".month-card.in:nth-child(1) > ul > li:nth-child(3) > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card.in:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">Prune</span>",
          "target": [
            ".month-card.in:nth-child(1) > ul > li:nth-child(3) > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Protect</span>",
                  "target": [
                    ".month-card.in:nth-child(1) > ul > li:nth-child(4) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card.in:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Protect</span>",
          "target": [
            ".month-card.in:nth-child(1) > ul > li:nth-child(4) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card.in:nth-child(2) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card.in:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card.in:nth-child(2) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Mulch</span>",
                  "target": [
                    ".month-card.in:nth-child(2) > ul > li:nth-child(2) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card.in:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Mulch</span>",
          "target": [
            ".month-card.in:nth-child(2) > ul > li:nth-child(2) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Harvest</span>",
                  "target": [
                    "li:nth-child(3) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card.in:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Harvest</span>",
          "target": [
            "li:nth-child(3) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Rake smart</span>",
                  "target": [
                    ".month-card.in:nth-child(2) > ul > li:nth-child(4) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card.in:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Rake smart</span>",
          "target": [
            ".month-card.in:nth-child(2) > ul > li:nth-child(4) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card.in:nth-child(3) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card.in:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card.in:nth-child(3) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Winterize</span>",
                  "target": [
                    "li:nth-child(2) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card.in:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Winterize</span>",
          "target": [
            "li:nth-child(2) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">Leave be</span>",
                  "target": [
                    ".month-card.in:nth-child(3) > ul > li:nth-child(3) > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card.in:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">Leave be</span>",
          "target": [
            ".month-card.in:nth-child(3) > ul > li:nth-child(3) > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">Sharpen</span>",
                  "target": [
                    "li:nth-child(4) > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card.in:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">Sharpen</span>",
          "target": [
            "li:nth-child(4) > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">01</span>",
          "target": [
            "#design > .container > .sec-head.in.reveal > .sec-index[data-done=\"1\"][data-scramble=\"\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Garden Design</p>",
          "target": [
            "#design > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">02</span>",
          "target": [
            "#planner > .container > .sec-head.in.reveal > .sec-index[data-done=\"1\"][data-scramble=\"\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Interactive \u00b7 Square-Foot Method</p>",
          "target": [
            "#planner > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.4pt (11.2px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<aside class=\"palette reveal in\" aria-label=\"Plant palette\">",
                  "target": [
                    ".palette"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.4pt (11.2px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<h3>Choose a crop</h3>",
          "target": [
            ".palette > h3"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.4pt (11.2px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"tomato\"><span class=\"p-icon\" style=\"background:#B4402E33\">\ud83c\udf45</span>Tomato<small>2\u00d72 ft</small></button>",
                  "target": [
                    "button[data-plant=\"tomato\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>2\u00d72 ft</small>",
          "target": [
            "button[data-plant=\"tomato\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"cucumber\"><span class=\"p-icon\" style=\"background:#3F7A4433\">\ud83e\udd52</span>Cucumber<small>1\u00d72 ft</small></button>",
                  "target": [
                    "button[data-plant=\"cucumber\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1\u00d72 ft</small>",
          "target": [
            "button[data-plant=\"cucumber\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"pepper\"><span class=\"p-icon\" style=\"background:#2F6B4F33\">\ud83e\uded1</span>Pepper<small>1 sq ft</small></button>",
                  "target": [
                    "button[data-plant=\"pepper\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1 sq ft</small>",
          "target": [
            "button[data-plant=\"pepper\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"basil\"><span class=\"p-icon\" style=\"background:#5F9A4E33\">\ud83c\udf3f</span>Basil<small>1 sq ft</small></button>",
                  "target": [
                    "button[data-plant=\"basil\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1 sq ft</small>",
          "target": [
            "button[data-plant=\"basil\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"lettuce\"><span class=\"p-icon\" style=\"background:#8CBE6233\">\ud83e\udd6c</span>Lettuce<small>1 sq ft</small></button>",
                  "target": [
                    "button[data-plant=\"lettuce\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1 sq ft</small>",
          "target": [
            "button[data-plant=\"lettuce\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"carrot\"><span class=\"p-icon\" style=\"background:#D07A2A33\">\ud83e\udd55</span>Carrot<small>1 sq ft</small></button>",
                  "target": [
                    "button[data-plant=\"carrot\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1 sq ft</small>",
          "target": [
            "button[data-plant=\"carrot\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"marigold\"><span class=\"p-icon\" style=\"background:#E0A33C33\">\ud83c\udf3c</span>Marigold<small>1 sq ft</small></button>",
                  "target": [
                    "button[data-plant=\"marigold\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>1 sq ft</small>",
          "target": [
            "button[data-plant=\"marigold\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<button class=\"plant-chip\" type=\"button\" aria-pressed=\"false\" data-plant=\"squash\"><span class=\"p-icon\" style=\"background:#C0762B33\">\ud83c\udf83</span>Squash<small>2\u00d72 ft</small></button>",
                  "target": [
                    "button[data-plant=\"squash\"]"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<small>2\u00d72 ft</small>",
          "target": [
            "button[data-plant=\"squash\"] > small"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>sq ft planted</span>",
          "target": [
            ".bed-stats > div:nth-child(1) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>plants in the ground</span>",
          "target": [
            ".bed-stats > div:nth-child(2) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>est. watering / week</span>",
          "target": [
            ".bed-stats > div:nth-child(3) > span"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "11.8pt (15.68px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 11.8pt (15.68px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"bed-hint\" id=\"bedHint\">Pick a crop on the left, then click an empty square to tuck it in.</p>",
          "target": [
            "#bedHint"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 11.8pt (15.68px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"bed-legend\">1 SQUARE = 1 SQ FT \u00b7 CLICK A PLANTED SQUARE TO REMOVE IT \u00b7 SPACING FOLLOWS THE SQUARE-FOOT METHOD</p>",
          "target": [
            ".bed-legend"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 7.9pt (10.56px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card:nth-child(1) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card:nth-child(1) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Divide</span>",
                  "target": [
                    ".month-card:nth-child(1) > ul > li:nth-child(2) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Divide</span>",
          "target": [
            ".month-card:nth-child(1) > ul > li:nth-child(2) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">Prune</span>",
                  "target": [
                    ".month-card:nth-child(1) > ul > li:nth-child(3) > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">Prune</span>",
          "target": [
            ".month-card:nth-child(1) > ul > li:nth-child(3) > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Protect</span>",
                  "target": [
                    ".month-card:nth-child(1) > ul > li:nth-child(4) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\">",
                  "target": [
                    ".month-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Protect</span>",
          "target": [
            ".month-card:nth-child(1) > ul > li:nth-child(4) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card:nth-child(2) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card:nth-child(2) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Mulch</span>",
                  "target": [
                    ".month-card:nth-child(2) > ul > li:nth-child(2) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Mulch</span>",
          "target": [
            ".month-card:nth-child(2) > ul > li:nth-child(2) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#b4402e",
                "bgColor": "#f2e0d7",
                "contrastRatio": 4.42,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--protect\">Rake smart</span>",
                  "target": [
                    ".month-card:nth-child(2) > ul > li:nth-child(4) > .tag--protect.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".month-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--protect\">Rake smart</span>",
          "target": [
            ".month-card:nth-child(2) > ul > li:nth-child(4) > .tag--protect.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #b4402e, background color: #f2e0d7, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#e1e8cd",
                "contrastRatio": 3.65,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--plant\">Plant</span>",
                  "target": [
                    ".month-card:nth-child(3) > ul > li:nth-child(1) > .tag--plant.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--plant\">Plant</span>",
          "target": [
            ".month-card:nth-child(3) > ul > li:nth-child(1) > .tag--plant.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.65 (foreground color: #5f7e3f, background color: #e1e8cd, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\">Leave be</span>",
                  "target": [
                    ".month-card:nth-child(3) > ul > li:nth-child(3) > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"month-card reveal in\" style=\"--d:.2s\">",
                  "target": [
                    ".month-card:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\">Leave be</span>",
          "target": [
            ".month-card:nth-child(3) > ul > li:nth-child(3) > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">04</span>",
          "target": [
            "#improvement > .container > .sec-head.in.reveal > .sec-index[data-done=\"1\"][data-scramble=\"\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Home Improvement Guides</p>",
          "target": [
            "#improvement > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#9a6a14",
                "bgColor": "#f8e8ca",
                "contrastRatio": 3.91,
                "fontSize": "7.4pt (9.92px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<span class=\"tag tag--prune\" style=\"align-self:flex-start\">Featured guide</span>",
                  "target": [
                    ".guide-body > .tag--prune.tag"
                  ]
                },
                {
                  "html": "<article class=\"guide-card guide-card--feat reveal in\">",
                  "target": [
                    ".guide-card--feat"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"tag tag--prune\" style=\"align-self:flex-start\">Featured guide</span>",
          "target": [
            ".guide-body > .tag--prune.tag"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.91 (foreground color: #9a6a14, background color: #f8e8ca, font size: 7.4pt (9.92px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card guide-card--feat reveal in\">",
                  "target": [
                    ".guide-card--feat"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cf\u25cb</span>",
          "target": [
            ".guide-card--feat > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card reveal in\" style=\"--d:.08s\">",
                  "target": [
                    ".guide-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cb\u25cb</span>",
          "target": [
            ".guide-card:nth-child(2) > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card reveal in\" style=\"--d:.16s\">",
                  "target": [
                    ".guide-card:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cb\u25cb</span>",
          "target": [
            ".guide-card:nth-child(3) > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card reveal in\" style=\"--d:.1s\">",
                  "target": [
                    ".guide-card:nth-child(4)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cf\u25cb</span>",
          "target": [
            ".guide-card:nth-child(4) > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card reveal in\" style=\"--d:.18s\">",
                  "target": [
                    ".guide-card:nth-child(5)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cf\u25cb</span>",
          "target": [
            ".guide-card:nth-child(5) > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#fcfaf3",
                "contrastRatio": 2.01,
                "fontSize": "7.7pt (10.24px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"guide-card reveal in\" style=\"--d:.22s\">",
                  "target": [
                    ".guide-card:nth-child(6)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"diff\">SKILL \u25cf\u25cf\u25cf</span>",
          "target": [
            ".guide-card:nth-child(6) > .guide-body > .guide-meta > .diff"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.01 (foreground color: #e9a63a, background color: #fcfaf3, font size: 7.7pt (10.24px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#efe7d3",
                "contrastRatio": 1.7,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec voices\" id=\"voices\">",
                  "target": [
                    "#voices"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.7 (foreground color: #e9a63a, background color: #efe7d3, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\">05</span>",
          "target": [
            "#voices > .container > .sec-head.in.reveal > .sec-index"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.7 (foreground color: #e9a63a, background color: #efe7d3, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#efe7d3",
                "contrastRatio": 3.75,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec voices\" id=\"voices\">",
                  "target": [
                    "#voices"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">From the Community</p>",
          "target": [
            "#voices > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow mono\" data-scramble=\"\" data-done=\"1\">Field Notes \u00b7 Edition N\u00ba 47 \u00b7 Autumn 2025</p>",
          "target": [
            ".mono[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">01</span>",
          "target": [
            "#design > .container > .sec-head.in.reveal > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">02</span>",
          "target": [
            "#planner > .container > .sec-head.in.reveal > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">04</span>",
          "target": [
            "#improvement > .container > .sec-head.in.reveal > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">06</span>",
          "target": [
            "#journal > .container > .sec-head.in.reveal > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">From the Potting Bench</p>",
          "target": [
            "#journal > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Soil</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"] > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>5 min read</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"] > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Oct 2025</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"] > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\">",
                  "target": [
                    ".side-card.in.reveal"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Find your zone</p>",
          "target": [
            ".side-card.in.reveal > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Soil</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>5 min read</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Oct 2025</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Tools</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>7 min read</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Oct 2025</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Season Extension</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>8 min read</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Sep 2025</span>",
          "target": [
            ".article-row.in[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\">",
                  "target": [
                    ".side-card.in.reveal:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Find your zone</p>",
          "target": [
            ".side-card.in.reveal:nth-child(1) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\" style=\"--d:.08s\">",
                  "target": [
                    ".side-card.in.reveal:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Featured project</p>",
          "target": [
            ".side-card.in.reveal:nth-child(2) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\" style=\"--d:.16s\">",
                  "target": [
                    ".side-card.in.reveal:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">This week's checklist</p>",
          "target": [
            ".side-card.in.reveal:nth-child(3) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#1e3a28",
                "contrastRatio": 2.68,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card hotline reveal in\" style=\"--d:.24s\">",
                  "target": [
                    ".hotline"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 2.68 (foreground color: #5f7e3f, background color: #1e3a28, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Expert advice</p>",
          "target": [
            ".hotline > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 2.68 (foreground color: #5f7e3f, background color: #1e3a28, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\">07</span>",
          "target": [
            "#faq > .container > .sec-head.in.reveal > .sec-index"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Straight Answers</p>",
          "target": [
            "#faq > .container > .sec-head.in.reveal > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">01</span>",
          "target": [
            "#design > .container > .sec-head.reveal.in > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Garden Design</p>",
          "target": [
            "#design > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\" style=\"margin-bottom:1.2rem\">Curb Appeal Case Study</p>",
          "target": [
            ".ba-block > .reveal.in:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">02</span>",
          "target": [
            "#planner > .container > .sec-head.reveal.in > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Interactive \u00b7 Square-Foot Method</p>",
          "target": [
            "#planner > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">04</span>",
          "target": [
            "#improvement > .container > .sec-head.reveal.in > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Home Improvement Guides</p>",
          "target": [
            "#improvement > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#efe7d3",
                "contrastRatio": 1.7,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec voices\" id=\"voices\">",
                  "target": [
                    "#voices"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.7 (foreground color: #e9a63a, background color: #efe7d3, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\">05</span>",
          "target": [
            "#voices > .container > .sec-head.reveal.in > .sec-index"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.7 (foreground color: #e9a63a, background color: #efe7d3, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#efe7d3",
                "contrastRatio": 3.75,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"sec voices\" id=\"voices\">",
                  "target": [
                    "#voices"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">From the Community</p>",
          "target": [
            "#voices > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.75 (foreground color: #5f7e3f, background color: #efe7d3, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\" data-scramble=\"\" data-done=\"1\">06</span>",
          "target": [
            "#journal > .container > .sec-head.reveal.in > .sec-index[data-scramble=\"\"][data-done=\"1\"]"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">From the Potting Bench</p>",
          "target": [
            "#journal > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Soil</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>5 min read</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Oct 2025</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(1) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Tools</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>7 min read</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Oct 2025</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(2) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Season Extension</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>8 min read</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#6b7563",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.35,
                "fontSize": "11.2pt (14.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>Sep 2025</span>",
          "target": [
            ".article-row.reveal[href$=\"#newsletter\"]:nth-child(3) > div:nth-child(2) > .article-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.35 (foreground color: #6b7563, background color: #f7f3e8, font size: 11.2pt (14.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\">",
                  "target": [
                    ".side-card.reveal.in:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Find your zone</p>",
          "target": [
            ".side-card.reveal.in:nth-child(1) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\" style=\"--d:.08s\">",
                  "target": [
                    ".side-card.reveal.in:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">Featured project</p>",
          "target": [
            ".side-card.reveal.in:nth-child(2) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#fcfaf3",
                "contrastRatio": 4.42,
                "fontSize": "8.2pt (10.88px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"side-card reveal in\" style=\"--d:.16s\">",
                  "target": [
                    ".side-card.reveal.in:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"h-mono\">This week's checklist</p>",
          "target": [
            ".side-card.reveal.in:nth-child(3) > .h-mono"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.42 (foreground color: #5f7e3f, background color: #fcfaf3, font size: 8.2pt (10.88px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#e9a63a",
                "bgColor": "#f7f3e8",
                "contrastRatio": 1.89,
                "fontSize": "38.4pt (51.2px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "3:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"sec-index\">07</span>",
          "target": [
            "#faq > .container > .sec-head.reveal.in > .sec-index"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 1.89 (foreground color: #e9a63a, background color: #f7f3e8, font size: 38.4pt (51.2px), font weight: normal). Expected contrast ratio of 3:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#5f7e3f",
                "bgColor": "#f7f3e8",
                "contrastRatio": 4.16,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Straight Answers</p>",
          "target": [
            "#faq > .container > .sec-head.reveal.in > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.16 (foreground color: #5f7e3f, background color: #f7f3e8, font size: 8.6pt (11.52px), font weight: normal). Expected contrast ratio of 4.5:1"
        }
      ]
    }
  ],
  "coverage": {
    "contract": "main-document-vertical-scroll",
    "complete": true,
    "positions": [
      {
        "y": 0,
        "height": 14348
      },
      {
        "y": 576,
        "height": 14348
      },
      {
        "y": 1152,
        "height": 14348
      },
      {
        "y": 1728,
        "height": 14348
      },
      {
        "y": 2304,
        "height": 14348
      },
      {
        "y": 2880,
        "height": 14348
      },
      {
        "y": 3456,
        "height": 14348
      },
      {
        "y": 4032,
        "height": 14348
      },
      {
        "y": 4608,
        "height": 14348
      },
      {
        "y": 5184,
        "height": 14348
      },
      {
        "y": 5760,
        "height": 14348
      },
      {
        "y": 6336,
        "height": 14348
      },
      {
        "y": 6912,
        "height": 14348
      },
      {
        "y": 7488,
        "height": 14348
      },
      {
        "y": 8064,
        "height": 14348
      },
      {
        "y": 8640,
        "height": 14348
      },
      {
        "y": 9216,
        "height": 14348
      },
      {
        "y": 9792,
        "height": 14348
      },
      {
        "y": 10368,
        "height": 14348
      },
      {
        "y": 10944,
        "height": 14348
      },
      {
        "y": 11520,
        "height": 14348
      },
      {
        "y": 12096,
        "height": 14348
      },
      {
        "y": 12672,
        "height": 14348
      },
      {
        "y": 13248,
        "height": 14348
      },
      {
        "y": 13628,
        "height": 14348
      }
    ],
    "scans": 26,
    "max_states": 512,
    "settle_ms": 5000,
    "page_timeout_seconds": 150,
    "layout_stability": "consecutive 100ms size samples within one CSS pixel",
    "animation_settling": "finite animations present when scroll resources are ready finish or are cancelled",
    "interactive_states": "not exercised",
    "horizontal_scroll": "not exercised"
  }
}
System Prompt
You are a lead web developer at a top digital agency, tasked with creating a one-page website for a new client based on the given specifications, delivered as an HTML file. First non-whitespace char '<', last non-whitespace char '>'. Use the following services to generate placeholder images where needed:
- placehold.co (text): https://placehold.co/[{w}x{h}|{size}][/{bg-color}/{text-color}]?text={text}&font=[lato|lora|montserrat|noto sans|open sans|oswald|playfair display|poppins|pt sans|raleway|roboto|source sans|source sans pro]
- picsum.photos (photos): https://picsum.photos/[{w}/{h}|{size}]?[grayscale][&blur={1-10}]
- pravatar.cc (avatars): https://i.pravatar.cc/{size}?u={identifier}
Choose sizes appropriate to layout.
User Prompt
Create a **complete, polished, production-quality** primary web page for a new client in the "Home and Garden" sector.
Your goal is to generate the full HTML code for a page that is not just functional but also visually compelling, content-rich, and feels like a finished product ready for launch.

**Client & Category:**
- Industry: "Home and Garden"
- Description: Home improvement, gardening, DIY guides, landscaping, and decor resources.

**Your Creative Task:**
1.  **Invent:** Create a unique, professional-sounding site name and a strong tagline fitting the "Home and Garden" category.
2.  **Define Page:** Determine the most effective primary page type (e.g., homepage, service landing page, category portal) to showcase this fictional entity.
3.  **Design:** Develop an opinionated, modern, and professional layout. Make distinct choices about structure and flow.

**Content & Structure Requirements (Deliver a COMPLETE page):**
-   **Overall:** The final page must feel substantial and complete, with realistic amounts of text (multiple paragraphs per section where appropriate, avoid single sentences), well-integrated placeholder images, and logical flow. It should look like a real website a business would proudly use.
-   **HEADER:** Include the invented site name, tagline, a logo placeholder image, and a primary navigation bar. Ensure the navigation has **at least 5-7 clearly defined, relevant links** including: "Garden Design", "Ideas", "Home Improvement".
-   **MAIN CONTENT:** Structure this area with **at least 3-4 distinct, well-developed sections**.
    -   Address key topics relevant to the "Home and Garden" category. Consider themes similar to: "Garden Planning", "Seasonal Tasks", "Sustainability".
    -   **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "perennial", "curb appeal", "mulching".
    -   **Visuals:** Integrate relevant placeholder images logically within the content sections.
    -   **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Download Plan", "Get Quote", "Read Guide".
-   **ENGAGEMENT (Recommended):** Strongly consider incorporating **one meaningful interactive element** that would genuinely benefit a user in the "Home and Garden" sector. Ideas similar but not limited to: "garden layout planner".
-   **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "featured projects", "local resources", "expert advice".
-   **FOOTER:** Include a professional footer with invented contact details, copyright (current year), social media links, and standard links (Privacy, Terms).
-   **MODERN WEB PATTERNS:** Include modern web patterns like testimonial cards, feature grids, or FAQ accordions where appropriate.