OpenAI GPT 6 Luna – Science

via Azure · Generated

  • AIMAC Debt 4.58
  • Cost $0.006
  • Total Violations 15
  • HTML Size 42 KB
  • Em Dashes 9

Screenshot

View OpenAI GPT 6 Luna Science page View Live Page

Accessibility Issues Found

15 Serious

  • color-contrast serious 15 instances

    Elements must meet minimum color contrast ratio thresholds

    Example HTML <p class="eyebrow">An independent science journal &amp; community</p>

Artifacts

View Generated HTML
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="theme-color" content="#f5f4ef">
  <meta name="description" content="Fieldnote is an independent home for rigorous science, curious minds, and research that moves us forward.">
  <title>Fieldnote — Science, in the making</title>
  <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=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap" rel="stylesheet">
  <style>
    :root {
      --ink: #172d32;
      --muted: #627276;
      --paper: #f5f4ef;
      --white: #fffefa;
      --line: #dce1dc;
      --green: #d8f26b;
      --green-dark: #a9c842;
      --coral: #df765f;
      --blue: #dce9e8;
      --serif: Georgia, "Times New Roman", serif;
      --sans: "DM Sans", sans-serif;
      --display: "Manrope", sans-serif;
      --radius: 18px;
      --shadow: 0 18px 50px rgba(23, 45, 50, .08);
    }

    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; scroll-padding-top: 90px; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: var(--sans);
      font-size: 16px;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }
    img { display: block; max-width: 100%; }
    a { color: inherit; text-decoration: none; }
    button, input, select { font: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    :focus-visible { outline: 3px solid #739c22; outline-offset: 4px; }
    .container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
    .eyebrow {
      margin: 0 0 13px;
      color: #66812c;
      font-size: .72rem;
      font-weight: 700;
      letter-spacing: .15em;
      line-height: 1.4;
      text-transform: uppercase;
    }
    h1, h2, h3, p { margin-top: 0; }
    h1, h2, h3 { font-family: var(--display); letter-spacing: -.045em; }
    h2 { margin-bottom: 18px; font-size: clamp(2rem, 3.4vw, 3.4rem); line-height: 1.08; }
    .section-intro { max-width: 650px; color: var(--muted); font-size: 1.04rem; }
    .button {
      min-height: 49px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 0 21px;
      border: 1px solid var(--ink);
      border-radius: 999px;
      background: var(--ink);
      color: white;
      font-size: .88rem;
      font-weight: 700;
      transition: transform .2s ease, background .2s ease, color .2s ease;
    }
    .button:hover { transform: translateY(-2px); background: #29474d; }
    .button--light { border-color: var(--white); background: var(--white); color: var(--ink); }
    .button--light:hover { background: var(--green); border-color: var(--green); }
    .button--outline { background: transparent; color: var(--ink); }
    .button--outline:hover { background: var(--ink); color: white; }
    .text-link { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
    .text-link span { transition: transform .2s ease; }
    .text-link:hover span { transform: translateX(4px); }

    /* Header */
    .top-note { padding: 8px 0; background: var(--ink); color: #e8efe9; text-align: center; font-size: .75rem; letter-spacing: .03em; }
    .top-note a { color: var(--green); font-weight: 700; }
    .site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(23,45,50,.1); background: rgba(245,244,239,.94); backdrop-filter: blur(16px); }
    .nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .brand { display: flex; align-items: center; gap: 12px; min-width: 245px; }
    .brand img { width: 44px; height: 44px; border-radius: 50%; }
    .brand-name { display: block; font-family: var(--display); font-size: 1.12rem; font-weight: 800; letter-spacing: -.05em; line-height: 1.1; }
    .brand-tagline { display: block; margin-top: 3px; color: var(--muted); font-size: .67rem; letter-spacing: .01em; }
    .main-nav { display: flex; align-items: center; gap: clamp(16px, 2.5vw, 34px); }
    .main-nav a { color: #405257; font-size: .84rem; font-weight: 600; }
    .main-nav a:hover { color: #648327; }
    .header-cta { padding-inline: 17px; min-height: 42px; font-size: .8rem; }
    .menu-toggle { display: none; border: 0; background: transparent; color: var(--ink); font-size: 1.6rem; cursor: pointer; }

    /* Hero */
    .hero { padding: 66px 0 74px; overflow: hidden; }
    .hero-grid { display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: clamp(40px, 7vw, 90px); }
    .hero-copy { padding: 16px 0; }
    .hero h1 { max-width: 670px; margin-bottom: 22px; font-size: clamp(3.35rem, 6.8vw, 6.6rem); line-height: .99; }
    .hero h1 em { color: #718b35; font-family: var(--serif); font-weight: 400; }
    .hero-lede { max-width: 540px; margin-bottom: 29px; color: #526469; font-size: 1.1rem; line-height: 1.75; }
    .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 13px; }
    .hero-note { display: flex; align-items: center; gap: 10px; margin-top: 36px; color: var(--muted); font-size: .78rem; }
    .avatar-stack { display: flex; padding-left: 3px; }
    .avatar-stack img { width: 29px; height: 29px; margin-left: -4px; border: 2px solid var(--paper); border-radius: 50%; }
    .hero-visual { position: relative; min-height: 530px; }
    .hero-image { position: absolute; inset: 0 0 25px 22px; width: calc(100% - 22px); height: calc(100% - 25px); border-radius: 46% 46% 20px 20px; object-fit: cover; }
    .hero-visual::before { position: absolute; z-index: 1; top: 34px; left: 0; width: 76px; height: 76px; border: 1px solid rgba(23,45,50,.24); border-radius: 50%; content: ""; }
    .hero-visual::after { position: absolute; z-index: 2; top: 53px; left: 20px; width: 36px; height: 36px; border-radius: 50%; background: var(--green); content: ""; }
    .image-caption { position: absolute; z-index: 3; right: -18px; bottom: 0; width: min(280px, 78%); padding: 18px 20px; border-radius: 14px; background: var(--white); box-shadow: var(--shadow); }
    .image-caption strong { display: block; font-family: var(--display); font-size: .93rem; }
    .image-caption span { color: var(--muted); font-size: .76rem; }
    .hero-stamp { position: absolute; z-index: 2; top: 42%; left: -16px; display: grid; width: 90px; height: 90px; place-items: center; border-radius: 50%; background: var(--green); color: var(--ink); text-align: center; transform: rotate(-10deg); }
    .hero-stamp b { max-width: 64px; font-family: var(--display); font-size: .66rem; line-height: 1.2; text-transform: uppercase; }

    /* Topic strip */
    .topic-strip { border-block: 1px solid var(--line); background: rgba(255,255,255,.35); }
    .topic-row { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
    .topic-label { color: var(--muted); font-size: .78rem; font-weight: 600; }
    .topic-list { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
    .topic-list a { padding: 8px 14px; border: 1px solid #d4dbd3; border-radius: 999px; color: #4c5e60; font-size: .75rem; font-weight: 600; transition: all .2s; }
    .topic-list a:hover { border-color: var(--ink); background: var(--ink); color: white; }

    /* Shared sections */
    .section { padding: 96px 0; }
    .section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
    .section-heading > div { max-width: 700px; }
    .section-heading h2 { margin-bottom: 12px; }
    .section-heading .section-intro { margin-bottom: 0; }

    /* Research feature */
    .feature-card { display: grid; grid-template-columns: 1fr 1fr; min-height: 460px; overflow: hidden; border-radius: 22px; background: #e6ece4; }
    .feature-image-wrap { position: relative; min-height: 390px; }
    .feature-image-wrap img { width: 100%; height: 100%; min-height: 390px; object-fit: cover; }
    .image-tag { position: absolute; top: 20px; left: 20px; padding: 8px 12px; border-radius: 999px; background: var(--green); font-size: .67rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
    .feature-copy { align-self: center; padding: clamp(32px, 5vw, 64px); }
    .feature-copy h3 { margin-bottom: 17px; font-size: clamp(1.9rem, 3vw, 3rem); line-height: 1.1; }
    .feature-copy p { color: #536468; }
    .feature-meta { display: flex; flex-wrap: wrap; gap: 12px 20px; margin: 24px 0; color: #627276; font-size: .75rem; }
    .feature-meta span { display: inline-flex; align-items: center; gap: 7px; }
    .feature-copy .text-link { margin-top: 5px; }

    /* Explorer */
    .explorer-section { background: var(--ink); color: #f7f7ef; }
    .explorer-section .eyebrow { color: var(--green); }
    .explorer-section .section-intro { color: #c0ccca; }
    .explorer-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 46px; align-items: start; margin-top: 40px; }
    .explorer-panel { padding: 27px; border: 1px solid rgba(255,255,255,.16); border-radius: var(--radius); background: rgba(255,255,255,.055); }
    .explorer-panel label { display: block; margin: 0 0 8px; font-size: .76rem; font-weight: 700; }
    .explorer-panel input, .explorer-panel select { width: 100%; min-height: 48px; margin-bottom: 19px; padding: 0 13px; border: 1px solid rgba(255,255,255,.24); border-radius: 8px; background: #203a3f; color: white; }
    .explorer-panel select option { color: var(--ink); }
    .explorer-panel input::placeholder { color: #9cacaa; }
    .explorer-panel .button { width: 100%; border-color: var(--green); background: var(--green); color: var(--ink); }
    .explorer-panel .button:hover { background: #e6ff91; }
    .explorer-hint { margin: 12px 0 0; color: #aabbb8; font-size: .72rem; }
    .results-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 12px; }
    .results-heading strong { font-family: var(--display); font-size: 1.02rem; }
    .results-heading span { color: #aabbb8; font-size: .76rem; }
    .result-list { display: grid; gap: 10px; }
    .result-card { display: grid; grid-template-columns: 82px 1fr auto; align-items: center; gap: 17px; padding: 14px; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; background: rgba(255,255,255,.055); transition: background .2s; }
    .result-card:hover { background: rgba(255,255,255,.1); }
    .result-card img { width: 82px; height: 72px; border-radius: 8px; object-fit: cover; }
    .result-card h3 { margin: 0 0 4px; font-family: var(--display); font-size: .92rem; letter-spacing: -.02em; }
    .result-card p { margin: 0; color: #b7c4c1; font-size: .73rem; line-height: 1.45; }
    .result-tag { color: var(--green); font-size: .66rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
    .result-arrow { color: var(--green); font-size: 1.3rem; }
    .no-results { color: #d4dfdb; font-size: .9rem; }

    /* More stories */
    .story-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
    .story-card { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--white); transition: transform .2s, box-shadow .2s; }
    .story-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
    .story-card > img { width: 100%; height: 220px; object-fit: cover; }
    .story-content { padding: 23px; }
    .story-category { color: #758d3a; font-size: .67rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
    .story-card h3 { margin: 10px 0; font-size: 1.35rem; line-height: 1.2; }
    .story-card p { margin-bottom: 20px; color: var(--muted); font-size: .87rem; }
    .story-card .text-link { font-size: .82rem; }

    /* Development / opportunity */
    .pathways { padding: 90px 0; background: #e6ece4; }
    .pathway-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; margin-top: 35px; }
    .pathway-card { display: flex; flex-direction: column; min-height: 280px; padding: 26px; border: 1px solid rgba(23,45,50,.12); border-radius: 15px; background: rgba(255,255,255,.58); }
    .pathway-icon { display: grid; width: 43px; height: 43px; margin-bottom: 24px; place-items: center; border-radius: 50%; background: var(--green); font-size: 1.15rem; }
    .pathway-card h3 { margin-bottom: 10px; font-size: 1.23rem; }
    .pathway-card p { flex: 1; color: #59696b; font-size: .86rem; }
    .pathway-card .text-link { font-size: .8rem; }

    /* Testimonial */
    .quote-section { padding: 83px 0; }
    .quote-card { position: relative; max-width: 900px; margin: auto; padding: 0 50px; text-align: center; }
    .quote-mark { display: block; margin-bottom: 9px; color: #8ba642; font-family: var(--serif); font-size: 4.8rem; line-height: .8; }
    blockquote { margin: 0 auto 24px; font-family: var(--serif); font-size: clamp(1.55rem, 3.1vw, 2.65rem); line-height: 1.32; }
    .quote-byline { color: var(--muted); font-size: .82rem; }
    .quote-byline strong { color: var(--ink); }

    /* FAQ */
    .faq-section { padding: 84px 0; border-top: 1px solid var(--line); }
    .faq-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 70px; }
    .faq-list details { border-bottom: 1px solid var(--line); }
    .faq-list summary { position: relative; padding: 19px 36px 19px 0; cursor: pointer; list-style: none; font-family: var(--display); font-size: .98rem; font-weight: 700; }
    .faq-list summary::-webkit-details-marker { display: none; }
    .faq-list summary::after { position: absolute; right: 3px; content: "+"; color: #718b35; font-size: 1.4rem; font-weight: 400; }
    .faq-list details[open] summary::after { content: "−"; }
    .faq-list details p { max-width: 650px; padding: 0 35px 17px 0; color: var(--muted); font-size: .88rem; }

    /* Newsletter / Footer */
    .newsletter { padding: 64px 0; background: var(--green); }
    .newsletter-inner { display: flex; justify-content: space-between; align-items: center; gap: 45px; }
    .newsletter h2 { max-width: 480px; margin: 0; font-size: clamp(1.8rem, 3vw, 2.7rem); }
    .newsletter-copy { max-width: 390px; margin: 7px 0 0; color: #465746; font-size: .88rem; }
    .newsletter-form { display: flex; width: min(440px, 100%); padding: 5px; border: 1px solid rgba(23,45,50,.25); border-radius: 999px; background: rgba(255,255,255,.53); }
    .newsletter-form input { flex: 1; min-width: 0; padding: 0 15px; border: 0; outline: 0; background: transparent; color: var(--ink); }
    .newsletter-form input::placeholder { color: #576856; }
    .newsletter-form button { min-height: 43px; padding: 0 17px; border: 0; border-radius: 999px; background: var(--ink); color: white; font-size: .78rem; font-weight: 700; cursor: pointer; }
    .form-message { min-height: 1.3em; margin: 8px 4px 0; color: #28432f; font-size: .75rem; }
    .site-footer { padding: 52px 0 24px; background: var(--ink); color: #e9efea; }
    .footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; padding-bottom: 42px; }
    .footer-brand { display: flex; align-items: center; gap: 11px; margin-bottom: 15px; }
    .footer-brand img { width: 38px; height: 38px; border-radius: 50%; }
    .footer-brand strong { font-family: var(--display); font-size: 1.1rem; }
    .footer-about p { max-width: 270px; color: #b9c7c3; font-size: .83rem; }
    .footer-col h3 { margin: 4px 0 14px; color: var(--green); font-family: var(--sans); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
    .footer-col a, .footer-col p { display: block; margin: 7px 0; color: #d2dcda; font-size: .8rem; }
    .footer-col a:hover { color: var(--green); }
    .footer-bottom { display: flex; justify-content: space-between; gap: 18px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); color: #aabbb8; font-size: .73rem; }
    .footer-legal { display: flex; gap: 20px; }
    .footer-legal a:hover { color: white; }

    @media (max-width: 900px) {
      .brand { min-width: unset; }
      .main-nav { gap: 15px; }
      .main-nav a { font-size: .77rem; }
      .header-cta { display: none; }
      .hero { padding-top: 48px; }
      .hero-grid { gap: 30px; }
      .hero-visual { min-height: 450px; }
      .explorer-layout { grid-template-columns: .85fr 1.15fr; gap: 24px; }
      .faq-layout { gap: 36px; }
    }
    @media (max-width: 700px) {
      .container { width: min(100% - 36px, 560px); }
      .top-note { font-size: .69rem; }
      .nav-wrap { min-height: 70px; }
      .brand img { width: 39px; height: 39px; }
      .brand-tagline { font-size: .61rem; }
      .menu-toggle { display: block; }
      .main-nav { position: absolute; top: 69px; right: 0; left: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 10px 24px 18px; border-bottom: 1px solid var(--line); background: var(--paper); }
      .main-nav.is-open { display: flex; }
      .main-nav a { padding: 11px 0; border-bottom: 1px solid var(--line); font-size: .9rem; }
      .main-nav a:last-child { border: 0; }
      .hero { padding: 46px 0 55px; }
      .hero-grid { grid-template-columns: 1fr; }
      .hero h1 { max-width: 500px; font-size: clamp(3.3rem, 15vw, 5.2rem); }
      .hero-lede { font-size: 1rem; }
      .hero-visual { min-height: 385px; margin: 4px 10px 0 0; }
      .hero-image { inset: 0 0 20px 13px; width: calc(100% - 13px); height: calc(100% - 20px); }
      .hero-stamp { left: -12px; width: 76px; height: 76px; }
      .hero-stamp b { font-size: .58rem; }
      .image-caption { right: -6px; }
      .topic-row { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 19px; }
      .topic-list { justify-content: flex-start; gap: 7px; }
      .topic-list a { padding: 7px 10px; font-size: .69rem; }
      .section { padding: 68px 0; }
      .section-heading { align-items: flex-start; flex-direction: column; margin-bottom: 28px; }
      .feature-card { grid-template-columns: 1fr; }
      .feature-image-wrap, .feature-image-wrap img { min-height: 270px; max-height: 330px; }
      .feature-copy { padding: 29px 25px 34px; }
      .explorer-layout { grid-template-columns: 1fr; }
      .result-card { grid-template-columns: 66px 1fr auto; gap: 12px; padding: 11px; }
      .result-card img { width: 66px; height: 63px; }
      .story-grid, .pathway-grid { grid-template-columns: 1fr; }
      .story-card > img { height: 235px; }
      .pathways { padding: 68px 0; }
      .pathway-card { min-height: 230px; }
      .quote-section { padding: 67px 0; }
      .quote-card { padding: 0 8px; }
      .faq-layout { grid-template-columns: 1fr; gap: 18px; }
      .newsletter-inner { align-items: flex-start; flex-direction: column; gap: 24px; }
      .newsletter-form { width: 100%; }
      .newsletter { padding: 49px 0; }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 22px; }
      .footer-about { grid-column: 1 / -1; }
      .footer-bottom { align-items: flex-start; flex-direction: column; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
    }
  </style>
</head>
<body>
  <div class="top-note">The Fieldnotes briefing: new perspectives for curious minds. <a href="#newsletter">Get the monthly edition&nbsp; →</a></div>

  <header class="site-header">
    <div class="container nav-wrap">
      <a class="brand" href="#home" aria-label="Fieldnote home">
        <img src="https://placehold.co/96x96/172d32/d8f26b?text=F&font=manrope" alt="Fieldnote logo">
        <span>
          <span class="brand-name">fieldnote</span>
          <span class="brand-tagline">Science, in the making.</span>
        </span>
      </a>
      <button class="menu-toggle" type="button" aria-label="Open navigation" aria-expanded="false" aria-controls="primary-navigation">☰</button>
      <nav class="main-nav" id="primary-navigation" aria-label="Primary navigation">
        <a href="#about">About</a>
        <a href="#news">News</a>
        <a href="#research">Research</a>
        <a href="#opportunities">Opportunities</a>
        <a href="#resources">Resources</a>
        <a href="#events">Events</a>
      </nav>
      <a class="button header-cta" href="#newsletter">Get updates <span aria-hidden="true">↗</span></a>
    </div>
  </header>

  <main>
    <section class="hero" id="home">
      <div class="container hero-grid">
        <div class="hero-copy">
          <p class="eyebrow">An independent science journal & community</p>
          <h1>Good science starts with <em>good questions.</em></h1>
          <p class="hero-lede">We bring emerging research, thoughtful reporting, and practical tools into one curious corner of the internet. For the people asking what we know—and how we know it.</p>
          <div class="hero-actions">
            <a class="button" href="#news">Explore the latest <span aria-hidden="true">↗</span></a>
            <a class="button button--outline" href="#about">What is Fieldnote?</a>
          </div>
          <div class="hero-note">
            <div class="avatar-stack" aria-hidden="true">
              <img src="https://i.pravatar.cc/64?u=fieldnote-reader-1" alt="">
              <img src="https://i.pravatar.cc/64?u=fieldnote-reader-2" alt="">
              <img src="https://i.pravatar.cc/64?u=fieldnote-reader-3" alt="">
            </div>
            <span>Made for a community of researchers, educators & lifelong learners</span>
          </div>
        </div>
        <div class="hero-visual">
          <img class="hero-image" src="https://picsum.photos/900/1050?random=31" alt="Researcher working carefully at a laboratory bench">
          <div class="hero-stamp" aria-hidden="true"><b>Stay curious<br>Stay rigorous</b></div>
          <div class="image-caption">
            <strong>From the lab to the living world</strong>
            <span>Ideas, evidence, and the people connecting them.</span>
          </div>
        </div>
      </div>
    </section>

    <div class="topic-strip" aria-label="Explore popular topics">
      <div class="container topic-row">
        <span class="topic-label">Follow a question</span>
        <div class="topic-list">
          <a href="#research">Climate &amp; Earth</a>
          <a href="#news">Health &amp; biology</a>
          <a href="#resources">Data &amp; methods</a>
          <a href="#opportunities">STEM careers</a>
          <a href="#events">Science education</a>
        </div>
      </div>
    </div>

    <section class="section" id="research">
      <div class="container">
        <div class="section-heading">
          <div>
            <p class="eyebrow">Lab highlights · Field report 024</p>
            <h2>A closer look at the living planet.</h2>
            <p class="section-intro">Great discoveries rarely happen in isolation. Meet the teams combining long-term fieldwork, open data, and new analytical tools to understand how ecosystems respond to a changing climate.</p>
          </div>
          <a class="text-link" href="#explorer">Browse featured research <span aria-hidden="true">→</span></a>
        </div>
        <article class="feature-card">
          <div class="feature-image-wrap">
            <img src="https://picsum.photos/1000/800?random=12" alt="A field scientist collecting environmental samples in a forest">
            <span class="image-tag">In the field</span>
          </div>
          <div class="feature-copy">
            <p class="eyebrow">Ecology · Open science</p>
            <h3>Reading the forest’s changing pulse</h3>
            <p>Across a network of research plots, ecologists are pairing decades of biodiversity observations with high-resolution satellite data. The work helps distinguish short-term seasonal variation from meaningful shifts in species composition—and gives conservation teams a clearer picture of what may come next.</p>
            <p>Rather than treating a single measurement as a definitive answer, the collaboration shares protocols, uncertainty estimates, and reproducible analysis workflows. That methodological rigor makes it easier for other labs to validate the findings and build on them.</p>
            <div class="feature-meta">
              <span>◷ 8 min read</span>
              <span>◎ Research perspective</span>
              <span>↗ Open methods</span>
            </div>
            <a class="text-link" href="#resources">Read the field report <span aria-hidden="true">→</span></a>
          </div>
        </article>
      </div>
    </section>

    <section class="section explorer-section" id="explorer">
      <div class="container">
        <div class="section-heading">
          <div>
            <p class="eyebrow">The research finder</p>
            <h2>Find a question worth following.</h2>
            <p class="section-intro">Start with a topic or a keyword. Our small, carefully selected research desk connects you to accessible explainers, active projects, and the methods behind the headlines.</p>
          </div>
        </div>
        <div class="explorer-layout">
          <form class="explorer-panel" id="research-form">
            <label for="research-search">Search topics or keywords</label>
            <input id="research-search" type="search" placeholder="Try “climate” or “imaging”">
            <label for="research-category">Choose a field</label>
            <select id="research-category">
              <option value="all">All fields</option>
              <option value="climate">Climate &amp; Earth</option>
              <option value="biology">Health &amp; biology</option>
              <option value="data">Data &amp; methods</option>
              <option value="space">Space &amp; physics</option>
            </select>
            <button class="button" type="submit">Explore research <span aria-hidden="true">↗</span></button>
            <p class="explorer-hint">Curated for clarity. Grounded in peer-reviewed evidence.</p>
          </form>
          <div aria-live="polite">
            <div class="results-heading">
              <strong>On the research radar</strong>
              <span id="result-count">4 projects</span>
            </div>
            <div class="result-list" id="result-list">
              <a class="result-card" href="#news" data-category="climate" data-search="climate forest ecology biodiversity earth">
                <img src="https://picsum.photos/180/150?random=21" alt="">
                <div><span class="result-tag">Climate &amp; Earth</span><h3>When forests become carbon sources</h3><p>How researchers model the tipping points behind ecosystem change.</p></div>
                <span class="result-arrow" aria-hidden="true">↗</span>
              </a>
              <a class="result-card" href="#news" data-category="biology" data-search="biology health cells imaging microscopy">
                <img src="https://picsum.photos/180/150?random=22" alt="">
                <div><span class="result-tag">Health &amp; biology</span><h3>Seeing cellular systems in a new light</h3><p>Next-generation imaging brings hidden interactions into focus.</p></div>
                <span class="result-arrow" aria-hidden="true">↗</span>
              </a>
              <a class="result-card" href="#resources" data-category="data" data-search="data statistics methods visualization reproducibility">
                <img src="https://picsum.photos/180/150?random=23" alt="">
                <div><span class="result-tag">Data &amp; methods</span><h3>Better plots, better scientific conversations</h3><p>Small choices in data visualization can clarify uncertainty.</p></div>
                <span class="result-arrow" aria-hidden="true">↗</span>
              </a>
              <a class="result-card" href="#news" data-category="space" data-search="space physics astronomy telescope universe">
                <img src="https://picsum.photos/180/150?random=24" alt="">
                <div><span class="result-tag">Space &amp; physics</span><h3>Mapping the invisible matter of the cosmos</h3><p>A new survey turns subtle gravitational signals into a wider view.</p></div>
                <span class="result-arrow" aria-hidden="true">↗</span>
              </a>
            </div>
            <p class="no-results" id="no-results" hidden>No matches yet. Try another keyword or choose “All fields.”</p>
          </div>
        </div>
      </div>
    </section>

    <section class="section" id="news">
      <div class="container">
        <div class="section-heading">
          <div>
            <p class="eyebrow">The latest from Fieldnote</p>
            <h2>Big ideas, made clearer.</h2>
            <p class="section-intro">A good science story does more than announce a result. We look at the evidence, explain what it can—and cannot—tell us, and put new findings in conversation with the wider research landscape.</p>
          </div>
          <a class="text-link" href="#newsletter">All stories <span aria-hidden="true">→</span></a>
        </div>
        <div class="story-grid">
          <article class="story-card">
            <img src="https://picsum.photos/700/440?random=41" alt="Close-up view of a scientific specimen under study">
            <div class="story-content">
              <span class="story-category">Research explained · 6 min</span>
              <h3>What a “statistically significant” result really means</h3>
              <p>A p-value is one piece of a much larger evidence puzzle. We unpack effect size, uncertainty intervals, and the questions a headline often leaves out.</p>
              <a class="text-link" href="#resources">Read the explainer <span aria-hidden="true">→</span></a>
            </div>
          </article>
          <article class="story-card">
            <img src="https://picsum.photos/700/440?random=42" alt="Scientific researchers collaborating over a shared experiment">
            <div class="story-content">
              <span class="story-category">People in science · 9 min</span>
              <h3>Inside the lab making research more reproducible</h3>
              <p>Meet a cross-disciplinary team creating shared protocols and transparent analysis practices—without losing sight of the human work behind the data.</p>
              <a class="text-link" href="#about">Meet the team <span aria-hidden="true">→</span></a>
            </div>
          </article>
          <article class="story-card">
            <img src="https://picsum.photos/700/440?random=43" alt="Colorful scientific data visualization displayed on a screen">
            <div class="story-content">
              <span class="story-category">Data &amp; methods · 5 min</span>
              <h3>Making uncertainty visible in every chart</h3>
              <p>Thoughtful data visualization helps audiences see the range around a result, not just a single clean line. Here are practical principles to try.</p>
              <a class="text-link" href="#resources">Explore the guide <span aria-hidden="true">→</span></a>
            </div>
          </article>
        </div>
      </div>
    </section>

    <section class="pathways" id="opportunities">
      <div class="container">
        <div class="section-heading">
          <div>
            <p class="eyebrow">Build what comes next</p>
            <h2>Good work needs room to grow.</h2>
            <p class="section-intro">Research is a practice and a career, shaped by access to mentorship, resources, and supportive colleagues. Explore pathways created for people at every stage of their scientific journey.</p>
          </div>
        </div>
        <div class="pathway-grid">
          <article class="pathway-card">
            <div class="pathway-icon" aria-hidden="true">↗</div>
            <h3>Find your next funding opportunity</h3>
            <p>Explore a curated selection of early-career awards, collaborative research calls, and small grants for public engagement. Each listing includes eligibility notes and practical application pointers.</p>
            <a class="text-link" href="#resources">Browse grant opportunities <span aria-hidden="true">→</span></a>
          </article>
          <article class="pathway-card">
            <div class="pathway-icon" aria-hidden="true">◎</div>
            <h3>Grow your scientific toolkit</h3>
            <p>From research communication to reproducible coding, our resource library focuses on skills you can use right away. Learn at your own pace with plain-language guides and examples from working scientists.</p>
            <a class="text-link" href="#resources">Explore learning resources <span aria-hidden="true">→</span></a>
          </article>
          <article class="pathway-card" id="events">
            <div class="pathway-icon" aria-hidden="true">✳</div>
            <h3>Meet your research community</h3>
            <p>Join open lectures, small-group skill shares, and conversations across disciplines. These welcoming events make space for thoughtful questions—not just polished presentations.</p>
            <a class="text-link" href="#newsletter">See upcoming events <span aria-hidden="true">→</span></a>
          </article>
        </div>
      </div>
    </section>

    <section class="section" id="about">
      <div class="container">
        <div class="section-heading">
          <div>
            <p class="eyebrow">About Fieldnote</p>
            <h2>Science is a shared endeavor.</h2>
            <p class="section-intro">Fieldnote is an independent science publication and learning community for people who believe that evidence matters—and that access to it should not depend on a journal subscription or a specialist vocabulary.</p>
          </div>
        </div>
        <div class="feature-card">
          <div class="feature-image-wrap">
            <img src="https://picsum.photos/1000/800?random=55" alt="A diverse group of scientists discussing research together">
            <span class="image-tag">Why we’re here</span>
          </div>
          <div class="feature-copy">
            <p class="eyebrow">Clear-eyed. Open-minded. Evidence-led.</p>
            <h3>Make room for the questions behind the findings.</h3>
            <p>We work with researchers, educators, and science communicators to make complex ideas easier to enter without making them less precise. Our editorial approach values context, transparency, and the details that help readers judge evidence for themselves.</p>
            <p>That means asking how a study was designed, whether a result has been replicated, and where uncertainty remains. We celebrate discovery while staying attentive to methodological rigor and the difference between a promising signal and a settled conclusion.</p>
            <a class="button" href="#newsletter">Join the Fieldnote community <span aria-hidden="true">↗</span></a>
          </div>
        </div>
      </div>
    </section>

    <section class="quote-section" aria-label="Community testimonial">
      <div class="container">
        <div class="quote-card">
          <span class="quote-mark" aria-hidden="true">“</span>
          <blockquote>Fieldnote makes the process of science visible. It gives my students permission to be curious about the evidence, not just memorize the answer.</blockquote>
          <p class="quote-byline"><strong>Dr. Maya Chen</strong> · Biology educator and Fieldnote reader</p>
        </div>
      </div>
    </section>

    <section class="faq-section" id="resources">
      <div class="container faq-layout">
        <div>
          <p class="eyebrow">Useful to know</p>
          <h2>Questions, answered.</h2>
          <p class="section-intro">A little more about how we work, what we publish, and how to get involved.</p>
        </div>
        <div class="faq-list">
          <details>
            <summary>Who is Fieldnote for?</summary>
            <p>Anyone interested in how science works: active researchers, students, educators, and curious readers. We write for a broad audience while respecting the complexity and nuance of the research itself.</p>
          </details>
          <details>
            <summary>How do you evaluate research stories?</summary>
            <p>Our editorial team considers study design, sample size, uncertainty, conflicts of interest, and the broader evidence base. When possible, we speak with researchers beyond the study team and link to primary sources, datasets, or protocols.</p>
          </details>
          <details>
            <summary>Can I contribute a story or resource?</summary>
            <p>Yes. We welcome pitches from researchers, educators, and science communicators. Share the question you want to explore, who it could help, and any relevant sources or materials through our editorial inbox.</p>
          </details>
          <details>
            <summary>Are Fieldnote resources free to use?</summary>
            <p>Our public explainers, guides, and community events are free to access. Some partner workshops may require registration, and any costs are clearly stated before you sign up.</p>
          </details>
        </div>
      </div>
    </section>

    <section class="newsletter" id="newsletter">
      <div class="container newsletter-inner">
        <div>
          <p class="eyebrow">A good question, delivered monthly</p>
          <h2>Stay curious. Get Fieldnote.</h2>
          <p class="newsletter-copy">One thoughtful email with new research, useful tools, and invitations to learn together. No noise, no hype—just science worth your time.</p>
        </div>
        <div>
          <form class="newsletter-form" id="newsletter-form">
            <label class="visually-hidden" for="email">Email address</label>
            <input id="email" type="email" placeholder="Your email address" required autocomplete="email">
            <button type="submit">Get updates&nbsp; →</button>
          </form>
          <p class="form-message" id="form-message" aria-live="polite">By subscribing, you agree to receive Fieldnote updates. Unsubscribe anytime.</p>
        </div>
      </div>
    </section>
  </main>

  <footer class="site-footer">
    <div class="container">
      <div class="footer-grid">
        <div class="footer-about">
          <a class="footer-brand" href="#home">
            <img src="https://placehold.co/96x96/172d32/d8f26b?text=F&font=manrope" alt="">
            <strong>fieldnote</strong>
          </a>
          <p>Independent science for a more curious world. Grounded in evidence, open to possibility.</p>
        </div>
        <div class="footer-col">
          <h3>Discover</h3>
          <a href="#news">Latest stories</a>
          <a href="#research">Research highlights</a>
          <a href="#resources">Guides &amp; resources</a>
          <a href="#events">Events</a>
        </div>
        <div class="footer-col">
          <h3>Get involved</h3>
          <a href="#opportunities">Grants &amp; opportunities</a>
          <a href="#about">About Fieldnote</a>
          <a href="#newsletter">Write for us</a>
          <a href="mailto:hello@fieldnote.science">Contact the team</a>
        </div>
        <div class="footer-col">
          <h3>Say hello</h3>
          <p>hello@fieldnote.science</p>
          <p>+1 (617) 555-0148</p>
          <a href="https://www.instagram.com/">Instagram ↗</a>
          <a href="https://www.linkedin.com/">LinkedIn ↗</a>
          <a href="https://bsky.app/">Bluesky ↗</a>
        </div>
      </div>
      <div class="footer-bottom">
        <span>© <span id="current-year">2025</span> Fieldnote Science. All rights reserved.</span>
        <div class="footer-legal">
          <a href="mailto:hello@fieldnote.science?subject=Privacy%20policy">Privacy</a>
          <a href="mailto:hello@fieldnote.science?subject=Terms%20of%20use">Terms</a>
          <a href="#home">Back to top ↑</a>
        </div>
      </div>
    </div>
  </footer>

  <script>
    const menuToggle = document.querySelector(".menu-toggle");
    const primaryNav = document.querySelector("#primary-navigation");

    menuToggle.addEventListener("click", () => {
      const isOpen = primaryNav.classList.toggle("is-open");
      menuToggle.setAttribute("aria-expanded", String(isOpen));
      menuToggle.setAttribute("aria-label", isOpen ? "Close navigation" : "Open navigation");
      menuToggle.textContent = isOpen ? "×" : "☰";
    });

    primaryNav.querySelectorAll("a").forEach(link => {
      link.addEventListener("click", () => {
        primaryNav.classList.remove("is-open");
        menuToggle.setAttribute("aria-expanded", "false");
        menuToggle.setAttribute("aria-label", "Open navigation");
        menuToggle.textContent = "☰";
      });
    });

    const researchForm = document.querySelector("#research-form");
    const searchInput = document.querySelector("#research-search");
    const categorySelect = document.querySelector("#research-category");
    const resultCards = [...document.querySelectorAll(".result-card")];
    const resultCount = document.querySelector("#result-count");
    const noResults = document.querySelector("#no-results");

    function filterResearch(event) {
      if (event) event.preventDefault();
      const query = searchInput.value.trim().toLowerCase();
      const category = categorySelect.value;
      let visibleCount = 0;

      resultCards.forEach(card => {
        const matchesCategory = category === "all" || card.dataset.category === category;
        const searchableText = (card.dataset.search + " " + card.textContent).toLowerCase();
        const matchesQuery = !query || searchableText.includes(query);
        const show = matchesCategory && matchesQuery;
        card.hidden = !show;
        if (show) visibleCount++;
      });

      resultCount.textContent = `${visibleCount} ${visibleCount === 1 ? "project" : "projects"}`;
      noResults.hidden = visibleCount !== 0;
    }

    researchForm.addEventListener("submit", filterResearch);
    categorySelect.addEventListener("change", filterResearch);
    searchInput.addEventListener("input", filterResearch);

    document.querySelector("#newsletter-form").addEventListener("submit", event => {
      event.preventDefault();
      const email = document.querySelector("#email");
      const message = document.querySelector("#form-message");
      if (!email.checkValidity()) {
        email.reportValidity();
        return;
      }
      message.textContent = "Thanks for joining us. Look out for a Fieldnote in your inbox soon.";
      email.value = "";
    });

    document.querySelector("#current-year").textContent = new Date().getFullYear();
  </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:57:17.480Z",
  "url": "https://benchmark.aimac.invalid/82b77db3f4af4904c7f7f830c00f0f0cb95b80e5d56ae36c9cf880e1bd277230.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-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": []
    },
    {
      "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-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": []
    },
    {
      "id": "aria-required-children",
      "impact": null,
      "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": []
    },
    {
      "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-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": []
    },
    {
      "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": "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": []
    },
    {
      "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": "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": []
    },
    {
      "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": []
    },
    {
      "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": "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": []
    },
    {
      "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": "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=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "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=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "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": "<span aria-hidden=\"true\">\u2197</span>",
          "target": [
            ".header-cta > span[aria-hidden=\"true\"]"
          ]
        }
      ]
    },
    {
      "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=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "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=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "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=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    },
    {
      "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": [
        {
          "any": [],
          "all": [
            {
              "id": "autocomplete-valid",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "the autocomplete attribute is correctly formatted"
            }
          ],
          "none": [],
          "impact": null,
          "html": "<input id=\"email\" type=\"email\" placeholder=\"Your email address\" required=\"\" autocomplete=\"email\">",
          "target": [
            "#email"
          ]
        }
      ]
    },
    {
      "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=\"button\" type=\"submit\">Explore research <span aria-hidden=\"true\">\u2197</span></button>",
          "target": [
            "#research-form > button[type=\"submit\"]"
          ]
        }
      ]
    },
    {
      "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>Good science starts with <em>good questions.</em></h1>",
                  "target": [
                    "h1"
                  ]
                },
                {
                  "html": "<h2>A closer look at the living planet.</h2>",
                  "target": [
                    "#research > .container > .section-heading > div > h2"
                  ]
                },
                {
                  "html": "<h3>Reading the forest\u2019s changing pulse</h3>",
                  "target": [
                    "#research > .container > .feature-card > .feature-copy > h3"
                  ]
                },
                {
                  "html": "<h2>Find a question worth following.</h2>",
                  "target": [
                    "#explorer > .container > .section-heading > div > h2"
                  ]
                },
                {
                  "html": "<h3>When forests become carbon sources</h3>",
                  "target": [
                    "a[data-category=\"climate\"] > div > h3"
                  ]
                },
                {
                  "html": "<h3>Seeing cellular systems in a new light</h3>",
                  "target": [
                    "a[data-category=\"biology\"] > div > h3"
                  ]
                },
                {
                  "html": "<h3>Better plots, better scientific conversations</h3>",
                  "target": [
                    "a[data-category=\"data\"] > div > h3"
                  ]
                },
                {
                  "html": "<h3>Mapping the invisible matter of the cosmos</h3>",
                  "target": [
                    "a[data-category=\"space\"] > div > h3"
                  ]
                },
                {
                  "html": "<h2>Big ideas, made clearer.</h2>",
                  "target": [
                    "#news > .container > .section-heading > div > h2"
                  ]
                },
                {
                  "html": "<h3>What a \u201cstatistically significant\u201d result really means</h3>",
                  "target": [
                    ".story-card:nth-child(1) > .story-content > h3"
                  ]
                },
                {
                  "html": "<h3>Inside the lab making research more reproducible</h3>",
                  "target": [
                    ".story-card:nth-child(2) > .story-content > h3"
                  ]
                },
                {
                  "html": "<h3>Making uncertainty visible in every chart</h3>",
                  "target": [
                    ".story-card:nth-child(3) > .story-content > h3"
                  ]
                },
                {
                  "html": "<h2>Good work needs room to grow.</h2>",
                  "target": [
                    "#opportunities > .container > .section-heading > div > h2"
                  ]
                },
                {
                  "html": "<h3>Find your next funding opportunity</h3>",
                  "target": [
                    ".pathway-card:nth-child(1) > h3"
                  ]
                },
                {
                  "html": "<h3>Grow your scientific toolkit</h3>",
                  "target": [
                    ".pathway-card:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Meet your research community</h3>",
                  "target": [
                    "#events > h3"
                  ]
                },
                {
                  "html": "<h2>Science is a shared endeavor.</h2>",
                  "target": [
                    "#about > .container > .section-heading > div > h2"
                  ]
                },
                {
                  "html": "<h3>Make room for the questions behind the findings.</h3>",
                  "target": [
                    "#about > .container > .feature-card > .feature-copy > h3"
                  ]
                },
                {
                  "html": "<h2>Questions, answered.</h2>",
                  "target": [
                    ".faq-layout > div:nth-child(1) > h2"
                  ]
                },
                {
                  "html": "<h2>Stay curious. Get Fieldnote.</h2>",
                  "target": [
                    ".newsletter-inner > div:nth-child(1) > h2"
                  ]
                },
                {
                  "html": "<h3>Discover</h3>",
                  "target": [
                    ".footer-col:nth-child(2) > h3"
                  ]
                },
                {
                  "html": "<h3>Get involved</h3>",
                  "target": [
                    ".footer-col:nth-child(3) > h3"
                  ]
                },
                {
                  "html": "<h3>Say hello</h3>",
                  "target": [
                    ".footer-col:nth-child(4) > h3"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Page has a heading"
            },
            {
              "id": "landmark",
              "data": null,
              "relatedNodes": [
                {
                  "html": "<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": "#e8efe9",
                "bgColor": "#172d32",
                "contrastRatio": 12.31,
                "fontSize": "9.0pt (12px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has sufficient color contrast of 12.31"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<div class=\"top-note\">The Fieldnotes briefing: new perspectives for curious minds. <a href=\"#newsletter\">Get the monthly edition&nbsp; \u2192</a></div>",
          "target": [
            ".top-note"
          ]
        }
      ]
    },
    {
      "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": "primary-navigation",
              "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=\"primary-navigation\" aria-label=\"Primary navigation\">",
          "target": [
            "#primary-navigation"
          ]
        }
      ]
    },
    {
      "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": [
                {
                  "html": "<label for=\"research-search\">Search topics or keywords</label>",
                  "target": [
                    "label[for=\"research-search\"]"
                  ]
                }
              ],
              "impact": "moderate",
              "message": "Form field does not have multiple label elements"
            }
          ],
          "impact": null,
          "html": "<input id=\"research-search\" type=\"search\" placeholder=\"Try \u201cclimate\u201d or \u201cimaging\u201d\">",
          "target": [
            "#research-search"
          ]
        }
      ]
    },
    {
      "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=\"https://placehold.co/96x96/172d32/d8f26b?text=F&amp;font=manrope\" alt=\"Fieldnote logo\">",
          "target": [
            "img[alt=\"Fieldnote logo\"]"
          ]
        }
      ]
    },
    {
      "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": "explicit-label",
              "data": {
                "explicitLabel": "Search topics or keywords"
              },
              "relatedNodes": [
                {
                  "html": "<label for=\"research-search\">Search topics or keywords</label>",
                  "target": [
                    "label[for=\"research-search\"]"
                  ]
                }
              ],
              "impact": "critical",
              "message": "Element has an explicit <label>"
            },
            {
              "id": "non-empty-placeholder",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Element has a placeholder attribute"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "hidden-explicit-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Form element has a visible explicit <label>"
            }
          ],
          "impact": null,
          "html": "<input id=\"research-search\" type=\"search\" placeholder=\"Try \u201cclimate\u201d or \u201cimaging\u201d\">",
          "target": [
            "#research-search"
          ]
        }
      ]
    },
    {
      "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": "<div class=\"top-note\">The Fieldnotes briefing: new perspectives for curious minds. <a href=\"#newsletter\">Get the monthly edition&nbsp; \u2192</a></div>",
                  "target": [
                    ".top-note"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Links can be distinguished from surrounding text by visual styling"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<a href=\"#newsletter\">Get the monthly edition&nbsp; \u2192</a>",
          "target": [
            ".top-note > a[href$=\"#newsletter\"]"
          ]
        }
      ]
    },
    {
      "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 href=\"#newsletter\">Get the monthly edition&nbsp; \u2192</a>",
          "target": [
            ".top-note > a[href$=\"#newsletter\"]"
          ]
        }
      ]
    },
    {
      "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\">",
          "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=\"https://placehold.co/96x96/172d32/d8f26b?text=F&amp;font=manrope\" alt=\"Fieldnote logo\">",
          "target": [
            "img[alt=\"Fieldnote logo\"]"
          ]
        }
      ]
    },
    {
      "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": [
        {
          "any": [
            {
              "id": "explicit-label",
              "data": {
                "explicitLabel": "Choose a field"
              },
              "relatedNodes": [
                {
                  "html": "<label for=\"research-category\">Choose a field</label>",
                  "target": [
                    "label[for=\"research-category\"]"
                  ]
                }
              ],
              "impact": "critical",
              "message": "Element has an explicit <label>"
            }
          ],
          "all": [],
          "none": [
            {
              "id": "hidden-explicit-label",
              "data": null,
              "relatedNodes": [],
              "impact": "critical",
              "message": "Form element has a visible explicit <label>"
            }
          ],
          "impact": null,
          "html": "<select id=\"research-category\">",
          "target": [
            "#research-category"
          ]
        }
      ]
    },
    {
      "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": [
        {
          "any": [
            {
              "id": "has-visible-text",
              "data": null,
              "relatedNodes": [],
              "impact": "serious",
              "message": "Element has text that is visible to screen readers"
            }
          ],
          "all": [],
          "none": [],
          "impact": null,
          "html": "<summary>Who is Fieldnote for?</summary>",
          "target": [
            "details:nth-child(1) > summary"
          ]
        }
      ]
    },
    {
      "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": 245,
                "height": 44
              },
              "relatedNodes": [],
              "impact": "serious",
              "message": "Control has sufficient size (245px by 44px, 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=\"brand\" href=\"#home\" aria-label=\"Fieldnote home\">",
          "target": [
            ".brand"
          ]
        }
      ]
    }
  ],
  "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=\"topic-strip\" aria-label=\"Explore popular topics\">",
          "target": [
            ".topic-strip"
          ],
          "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": {
                "fontSize": "7.9pt (10.56px)",
                "fontWeight": "bold",
                "messageKey": "pseudoContent",
                "expectedContrastRatio": "4.5:1"
              },
              "relatedNodes": [
                {
                  "html": "<div class=\"hero-visual\">",
                  "target": [
                    ".hero-visual"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element's background color could not be determined due to a pseudo element"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<b>Stay curious<br>Stay rigorous</b>",
          "target": [
            "b"
          ],
          "failureSummary": "Fix any of the following:\n  Element's background color could not be determined due to a pseudo element"
        }
      ]
    }
  ],
  "violations": [
    {
      "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": "#66812c",
                "bgColor": "#f5f4ef",
                "contrastRatio": 4.02,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">An independent science journal &amp; community</p>",
          "target": [
            ".hero-copy > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#f5f4ef",
                "contrastRatio": 4.02,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Lab highlights \u00b7 Field report 024</p>",
          "target": [
            "#research > .container > .section-heading > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#627276",
                "bgColor": "#e6ece4",
                "contrastRatio": 4.17,
                "fontSize": "9.0pt (12px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"feature-card\">",
                  "target": [
                    "#research > .container > .feature-card"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>\u25f7 8 min read</span>",
          "target": [
            ".feature-meta > span:nth-child(1)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#627276",
                "bgColor": "#e6ece4",
                "contrastRatio": 4.17,
                "fontSize": "9.0pt (12px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"feature-card\">",
                  "target": [
                    "#research > .container > .feature-card"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>\u25ce Research perspective</span>",
          "target": [
            ".feature-meta > span:nth-child(2)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#627276",
                "bgColor": "#e6ece4",
                "contrastRatio": 4.17,
                "fontSize": "9.0pt (12px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"feature-card\">",
                  "target": [
                    "#research > .container > .feature-card"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span>\u2197 Open methods</span>",
          "target": [
            ".feature-meta > span:nth-child(3)"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#f5f4ef",
                "contrastRatio": 4.02,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">The latest from Fieldnote</p>",
          "target": [
            "#news > .container > .section-heading > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#758d3a",
                "bgColor": "#fffefa",
                "contrastRatio": 3.69,
                "fontSize": "8.0pt (10.72px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"story-card\">",
                  "target": [
                    ".story-card:nth-child(1)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"story-category\">Research explained \u00b7 6 min</span>",
          "target": [
            ".story-card:nth-child(1) > .story-content > .story-category"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#758d3a",
                "bgColor": "#fffefa",
                "contrastRatio": 3.69,
                "fontSize": "8.0pt (10.72px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"story-card\">",
                  "target": [
                    ".story-card:nth-child(2)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"story-category\">People in science \u00b7 9 min</span>",
          "target": [
            ".story-card:nth-child(2) > .story-content > .story-category"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#758d3a",
                "bgColor": "#fffefa",
                "contrastRatio": 3.69,
                "fontSize": "8.0pt (10.72px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<article class=\"story-card\">",
                  "target": [
                    ".story-card:nth-child(3)"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"story-category\">Data &amp; methods \u00b7 5 min</span>",
          "target": [
            ".story-card:nth-child(3) > .story-content > .story-category"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.69 (foreground color: #758d3a, background color: #fffefa, font size: 8.0pt (10.72px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#e6ece4",
                "contrastRatio": 3.68,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"pathways\" id=\"opportunities\">",
                  "target": [
                    "#opportunities"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.68 (foreground color: #66812c, background color: #e6ece4, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Build what comes next</p>",
          "target": [
            "#opportunities > .container > .section-heading > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.68 (foreground color: #66812c, background color: #e6ece4, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#627276",
                "bgColor": "#e6ece4",
                "contrastRatio": 4.17,
                "fontSize": "12.5pt (16.64px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"pathways\" id=\"opportunities\">",
                  "target": [
                    "#opportunities"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 12.5pt (16.64px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"section-intro\">Research is a practice and a career, shaped by access to mentorship, resources, and supportive colleagues. Explore pathways created for people at every stage of their scientific journey.</p>",
          "target": [
            "#opportunities > .container > .section-heading > div > .section-intro"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.17 (foreground color: #627276, background color: #e6ece4, font size: 12.5pt (16.64px), font weight: normal). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#f5f4ef",
                "contrastRatio": 4.02,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">About Fieldnote</p>",
          "target": [
            "#about > .container > .section-heading > div > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#f5f4ef",
                "contrastRatio": 4.02,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<body>",
                  "target": [
                    "body"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">Useful to know</p>",
          "target": [
            ".faq-layout > div:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.02 (foreground color: #66812c, background color: #f5f4ef, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#66812c",
                "bgColor": "#d8f26b",
                "contrastRatio": 3.55,
                "fontSize": "8.6pt (11.52px)",
                "fontWeight": "bold",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<section class=\"newsletter\" id=\"newsletter\">",
                  "target": [
                    "#newsletter"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 3.55 (foreground color: #66812c, background color: #d8f26b, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<p class=\"eyebrow\">A good question, delivered monthly</p>",
          "target": [
            ".newsletter-inner > div:nth-child(1) > .eyebrow"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 3.55 (foreground color: #66812c, background color: #d8f26b, font size: 8.6pt (11.52px), font weight: bold). Expected contrast ratio of 4.5:1"
        },
        {
          "any": [
            {
              "id": "color-contrast",
              "data": {
                "fgColor": "#627276",
                "bgColor": "#e8e9e4",
                "contrastRatio": 4.1,
                "fontSize": "8.0pt (10.72px)",
                "fontWeight": "normal",
                "messageKey": null,
                "expectedContrastRatio": "4.5:1",
                "shadowColor": null
              },
              "relatedNodes": [
                {
                  "html": "<header class=\"site-header\">",
                  "target": [
                    "header"
                  ]
                },
                {
                  "html": "<input id=\"research-search\" type=\"search\" placeholder=\"Try \u201cclimate\u201d or \u201cimaging\u201d\">",
                  "target": [
                    "#research-search"
                  ]
                }
              ],
              "impact": "serious",
              "message": "Element has insufficient color contrast of 4.1 (foreground color: #627276, background color: #e8e9e4, font size: 8.0pt (10.72px), font weight: normal). Expected contrast ratio of 4.5:1"
            }
          ],
          "all": [],
          "none": [],
          "impact": "serious",
          "html": "<span class=\"brand-tagline\">Science, in the making.</span>",
          "target": [
            ".brand-tagline"
          ],
          "failureSummary": "Fix any of the following:\n  Element has insufficient color contrast of 4.1 (foreground color: #627276, background color: #e8e9e4, font size: 8.0pt (10.72px), font weight: normal). Expected contrast ratio of 4.5:1"
        }
      ]
    }
  ],
  "coverage": {
    "contract": "main-document-vertical-scroll",
    "complete": true,
    "positions": [
      {
        "y": 0,
        "height": 7041
      },
      {
        "y": 576,
        "height": 7041
      },
      {
        "y": 1152,
        "height": 7041
      },
      {
        "y": 1728,
        "height": 7041
      },
      {
        "y": 2304,
        "height": 7041
      },
      {
        "y": 2880,
        "height": 7041
      },
      {
        "y": 3456,
        "height": 7041
      },
      {
        "y": 4032,
        "height": 7041
      },
      {
        "y": 4608,
        "height": 7041
      },
      {
        "y": 5184,
        "height": 7041
      },
      {
        "y": 5760,
        "height": 7041
      },
      {
        "y": 6321,
        "height": 7041
      }
    ],
    "scans": 13,
    "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 "Science" 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: "Science"
- Description: Scientific research, discoveries, STEM education, and science news.

**Your Creative Task:**
1.  **Invent:** Create a unique, professional-sounding site name and a strong tagline fitting the "Science" 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: "About", "News", "Resources".
-   **MAIN CONTENT:** Structure this area with **at least 3-4 distinct, well-developed sections**.
    -   Address key topics relevant to the "Science" category. Consider themes similar to: "Lab Highlights", "Career Development", "Grant Opportunities".
    -   **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "data visualization", "statistical significance", "methodological rigor".
    -   **Visuals:** Integrate relevant placeholder images logically within the content sections.
    -   **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Join Lab", "Learn More", "Get Updates".
-   **ENGAGEMENT (Recommended):** Strongly consider incorporating **one meaningful interactive element** that would genuinely benefit a user in the "Science" sector. Ideas similar but not limited to: "data visualization tool".
-   **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "scientist profiles", "upcoming lectures", "featured research".
-   **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.