<div id="slide1">
  <div class="callout">
    Ultra-fast Search Library<br/>
  </div>
  <div class="descwrapper">
    <div class="description">
      Apache Lucene sets the standard for search and indexing performance
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Lucene" src="{{ SITEURL }}/theme/images/lucene/core/mantle-lucene.png{{ STATIC_RESOURCE_SUFFIX }}"/>
  </div>
</div>
<div id="slide2" style="display:none">
  <div class="callout">
    Proven search capabilities<br/>
  </div>
  <div class="descwrapper">
    <div class="description">
      Lucene is the de facto standard for search libraries
    </div>
  </div>
  <div class="mantle">
    <img alt="Lucene Power" src="{{ SITEURL }}/theme/images/lucene/mantle-power.png{{ STATIC_RESOURCE_SUFFIX }}"/>
  </div>
</div>
<div id="slide3" style="display:none">
  <div class="callout">
    Innovation and Maturity
  </div>
  <div class="descwrapper">
    <div class="description">
      Lucene has proven stability as well as a track record of innovation
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Lucene" src="{{ SITEURL }}/theme/images/lucene/core/mantle-innovation.png{{ STATIC_RESOURCE_SUFFIX }}"/>
  </div>
</div>
<div id="slide4" style="display:none">
  <div class="callout">
    Apache 2.0 licensed
  </div>
  <div class="descwrapper">
    <div class="description">
      Apache Lucene is distributed under a commercially friendly Apache Software license
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Software Foundation" src="{{ SITEURL }}/theme/images/lucene/mantle-asf.png{{ STATIC_RESOURCE_SUFFIX }}"/>
  </div>
</div>
