/******************************************************************
Site Name: Carmela Ice Cream
Author: Pat Brumfield / Mattson Creative

******************************************************************/
html, body, div, span, applet, object, iframe,
h1, h2, main aside.box h3, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

/*********************
TOOLS
*********************/
.group, footer#footer ul, #about .how-we-roll, #catering main form {
  zoom: 1; }
  .group:before, footer#footer ul:before, #about .how-we-roll:before, #catering main form:before, .group:after, footer#footer ul:after, #about .how-we-roll:after, #catering main form:after {
    content: "";
    display: table; }
  .group:after, footer#footer ul:after, #about .how-we-roll:after, #catering main form:after {
    clear: both; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* Firefox */
/* Safari and Chrome */
@-webkit-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* Internet Explorer */
/* Opera */
@-webkit-keyframes navUp {
  from {
    top: 0;
    padding-bottom: 0; }
  to {
    top: -50px;
    padding-bottom: 50px; } }
@keyframes navUp {
  from {
    top: 0;
    padding-bottom: 0; }
  to {
    top: -50px;
    padding-bottom: 50px; } }
/*********************
COLORS
*********************/
/*********************
TYPOGRAPHY & ICONS
*********************/
h2, main aside.box h3 {
  font: 700 1.125rem/150% "proxima-nova-soft", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.2rem; }
  h2 span, main aside.box h3 span {
    font-size: 0.6em;
    letter-spacing: 0.1rem;
    color: #b9bbbc; }

h3 {
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: bold; }

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #512d1e; }

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #512d1e;
  opacity: 1; }

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #512d1e;
  opacity: 1; }

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #512d1e; }

html {
  background: white; }

body {
  background: transparent;
  color: #512d1e;
  font: 17px/150% "schoolbook-web", Georgia, "Times New Roman";
  -webkit-font-smoothing: antialiased;
  position: relative; }

a img, a:visited img {
  border: 0; }

strong {
  font-weight: 700; }

.content, #flavors h2, #flavors main aside.box h3, main aside.box #flavors h3 {
  padding: 0 2rem;
  margin: 0;
  width: 100%; }
  @media (min-width: 1157px) {
    .content, #flavors h2, #flavors main aside.box h3, main aside.box #flavors h3 {
      padding: 0;
      width: 1100px;
      margin: 0 auto; } }

/* ----- HEADER ----- */
header {
  width: 100%;
  height: auto;
  max-height: 211px;
  margin: 0;
  z-index: 100;
  position: relative; }
  .mint header {
    background: #b4e0e0; }
  .pink header {
    background: #fec0b8; }
  @media (min-width: 970px) {
    header {
      height: 211px; } }
  @media (min-width: 1157px) {
    header {
      height: 211px;
      margin: 0 auto; } }
  header a#logo {
    width: 50%;
    height: auto;
    position: relative;
    display: block;
    z-index: 12;
    top: 0;
    margin: 0 auto; }
    @media (min-width: 500px) {
      header a#logo {
        margin: 0 auto;
        width: 230px;
        height: auto; } }
    @media (min-width: 750px) {
      header a#logo {
        margin: 0 auto;
        top: 0; } }
    @media (min-width: 970px) {
      header a#logo {
        margin: 0 0 0 -110px;
        position: absolute;
        left: 50%;
        top: 1.5rem; } }
    @media (min-width: 1157px) {
      header a#logo {
        margin-left: -115px; } }
    header a#logo svg {
      width: 100%;
      height: auto; }
    header a#logo svg #flourishes {
      display: none; }
      @media (min-width: 970px) {
        header a#logo svg #flourishes {
          display: block; } }
    header a#logo svg path,
    header a#logo svg circle {
      fill: #fff; }
  header #menu-btn {
    position: absolute;
    top: 50px;
    right: 1rem;
    display: block;
    z-index: 13;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-size: 0.8rem;
    letter-spacing: 0.1rem; }
    @media (min-width: 500px) {
      header #menu-btn {
        top: 73px; } }
    @media (min-width: 970px) {
      header #menu-btn {
        display: none; } }
  header nav {
    height: auto;
    width: 100vw;
    background: #fec0b8;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 11;
    display: none; }
    @media (min-width: 970px) {
      header nav {
        height: auto;
        width: auto;
        background: transparent;
        top: 93px;
        position: relative;
        display: block !important; } }
  header ul {
    margin: 0;
    padding: 160px 0 0 0;
    clear: both;
    position: relative;
    text-align: center; }
    @media (min-width: 750px) {
      header ul {
        padding-top: 185px; } }
    @media (min-width: 970px) {
      header ul {
        padding: 0; } }
    header ul li {
      list-style: none;
      display: block;
      width: 100%;
      margin-bottom: 1rem;
      position: relative; }
      @media (min-width: 970px) {
        header ul li {
          width: auto;
          margin: 0 1rem;
          display: inline-block; } }
      @media (min-width: 1157px) {
        header ul li {
          width: 148px;
          margin: 0;
          display: inline-block; } }
      @media (min-width: 970px) {
        header ul li.nav-about {
          margin-right: 125px; } }
      @media (min-width: 970px) {
        header ul li.nav-classes {
          margin-left: 125px; } }
      header ul li a, header ul li a:visited {
        color: #512d1e;
        text-decoration: none;
        position: relative;
        font-size: 0.9rem;
        line-height: 100%;
        text-transform: uppercase;
        letter-spacing: 0.2rem; }
        @media (min-width: 970px) {
          header ul li a, header ul li a:visited {
            padding-left: 0.2rem; } }
        header ul li a:hover, header ul li a:active, header ul li a.active, header ul li a:visited:hover, header ul li a:visited:active, header ul li a:visited.active {
          color: #fff;
          border-bottom: 1px solid #fff; }
      header ul li.top-nav {
        padding-bottom: 20px; }
        header ul li.top-nav > a {
          border-bottom: 1px solid #512d1e; }
          @media (min-width: 970px) {
            header ul li.top-nav > a {
              border-bottom: none; } }
      header ul li.nav-locations {
        margin-top: 30px; }
        @media (min-width: 970px) {
          header ul li.nav-locations {
            margin-top: 0; } }
      @media (min-width: 970px) {
        header ul li.top-nav:hover ul {
          display: block;
          -webkit-animation: fadein 0.5s;
          animation: fadein 0.5s; } }
      header ul li ul {
        display: block;
        position: relative;
        margin-top: 1rem;
        border: 0;
        width: 100%;
        margin-left: 0;
        padding: 0;
        border-radius: 0;
        background: none !important; }
        @media (min-width: 970px) {
          header ul li ul {
            display: none;
            position: absolute;
            border: 1px solid #fff;
            border-radius: 10px;
            width: 120%;
            margin-left: -10%;
            padding: 1rem; } }
        header ul li ul::before {
          padding-top: 10px; }
        header ul li ul li {
          width: 100%;
          margin-bottom: 0.5rem; }
          header ul li ul li:last-child {
            margin-bottom: 0; }
          header ul li ul li a {
            line-height: 110%; }

@media (min-width: 970px) {
  html#home header ul ul,
  html.pink header ul ul {
    background: #fec0b8 !important; } }

@media (min-width: 970px) {
  html.mint header ul ul {
    background: #b4e0e0 !important; } }

footer#footer {
  font-size: 0.8rem;
  text-align: right;
  width: 100%;
  position: relative;
  z-index: 101;
  padding-top: 1rem; }
  #catering footer#footer {
    background: #b4e0e0; }
  footer#footer .content, footer#footer #flavors h2, #flavors footer#footer h2, footer#footer #flavors main aside.box h3, #flavors main aside.box footer#footer h3, footer#footer main aside.box #flavors h3, main aside.box #flavors footer#footer h3 {
    border-top: 1px solid #512d1e;
    padding-top: 1rem;
    padding-bottom: 1rem;
    -js-display: flex;
    -ms-box-orient: horizontal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: top;
        -ms-flex-align: top;
            align-items: top;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media (min-width: 750px) {
      footer#footer .content, footer#footer #flavors h2, #flavors footer#footer h2, footer#footer #flavors main aside.box h3, #flavors main aside.box footer#footer h3, footer#footer main aside.box #flavors h3, main aside.box #flavors footer#footer h3 {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end; } }
    footer#footer .content .item, footer#footer #flavors h2 .item, #flavors footer#footer h2 .item, footer#footer #flavors main aside.box h3 .item, #flavors main aside.box footer#footer h3 .item, footer#footer main aside.box #flavors h3 .item, main aside.box #flavors footer#footer h3 .item {
      margin-left: 0;
      margin-bottom: 0.5rem; }
      @media (min-width: 750px) {
        footer#footer .content .item, footer#footer #flavors h2 .item, #flavors footer#footer h2 .item, footer#footer #flavors main aside.box h3 .item, #flavors main aside.box footer#footer h3 .item, footer#footer main aside.box #flavors h3 .item, main aside.box #flavors footer#footer h3 .item {
          margin-left: 1rem; } }
  footer#footer p {
    display: inline;
    padding-top: 0;
    margin-right: 0 !important; }
    @media (min-width: 750px) {
      footer#footer p {
        margin-right: 1rem;
        padding-top: 5px; } }
  footer#footer a {
    color: #512d1e;
    text-decoration: none; }
    footer#footer a:hover {
      text-decoration: underline; }
  footer#footer ul {
    display: inline;
    margin-top: 0; }
    @media (min-width: 750px) {
      footer#footer ul {
        margin-top: 7px; } }
    footer#footer ul li {
      float: left; }
    footer#footer ul a {
      opacity: 1;
      padding: 0.5rem; }
      footer#footer ul a:hover {
        opacity: 0.5; }

#mc_embed_signup {
  background: none;
  clear: left;
  font-family: "proxima-nova-soft", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.8rem;
  width: 100%; }
  @media (min-width: 750px) {
    #mc_embed_signup {
      width: 30%; } }
  #mc_embed_signup form {
    padding: 0 !important; }
  #mc_embed_signup .mc-field-group {
    width: 65% !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    margin-bottom: 0.5rem; }
    @media (min-width: 500px) {
      #mc_embed_signup .mc-field-group {
        width: 70% !important; } }
  #mc_embed_signup .mce_inline_error {
    padding: 0 !important; }
  #mc_embed_signup div.mce_inline_error {
    background-color: transparent !important; }
  #mc_embed_signup #mce-responses {
    float: none !important;
    top: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    margin: 0% !important; }
    #mc_embed_signup #mce-responses .response {
      margin: 0 !important;
      padding: 0 !important;
      float: none !important;
      top: 0 !important;
      width: 100% !important;
      line-height: 130%; }
  #mc_embed_signup input.email, #mc_embed_signup main#content form input.email#submit, main#content form #mc_embed_signup input.email#submit,
  #mc_embed_signup main#content form button.email[type="submit"],
  main#content form #mc_embed_signup button.email[type="submit"] {
    color: #512d1e;
    border: 1px solid #512d1e;
    font-size: 0.8rem;
    font-family: "schoolbook-web", Georgia, "Times New Roman";
    padding: 6px 0 6px !important;
    margin-bottom: 0 !important;
    -webkit-border-radius: 5px;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-bottom-right-radius: 0px;
    -moz-border-radius: 5px;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-bottomright: 0px;
    border-radius: 5px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px; }
    @media (min-width: 500px) {
      #mc_embed_signup input.email, #mc_embed_signup main#content form input.email#submit, main#content form #mc_embed_signup input.email#submit,
      #mc_embed_signup main#content form button.email[type="submit"],
      main#content form #mc_embed_signup button.email[type="submit"] {
        padding: 7px 0 6px !important; } }
  #mc_embed_signup input.mce_inline_error, #mc_embed_signup main#content form input.mce_inline_error#submit, main#content form #mc_embed_signup input.mce_inline_error#submit,
  #mc_embed_signup main#content form button.mce_inline_error[type="submit"],
  main#content form #mc_embed_signup button.mce_inline_error[type="submit"] {
    border-width: 1px !important; }
  #mc_embed_signup input#mc-embedded-subscribe,
  #mc_embed_signup main#content form button#mc-embedded-subscribe[type="submit"],
  main#content form #mc_embed_signup button#mc-embedded-subscribe[type="submit"] {
    background: #512d1e;
    position: absolute;
    top: 0;
    right: 0;
    margin: 0 !important;
    width: 36%;
    font-weight: bold;
    font-family: "schoolbook-web", Georgia, "Times New Roman";
    padding: 0 !important;
    text-align: center;
    -webkit-border-radius: 5px;
    -webkit-border-top-left-radius: 0px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius: 5px;
    -moz-border-radius-topleft: 0px;
    -moz-border-radius-bottomleft: 0px;
    border-radius: 5px;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none; }
    @media (min-width: 500px) {
      #mc_embed_signup input#mc-embedded-subscribe,
      #mc_embed_signup main#content form button#mc-embedded-subscribe[type="submit"],
      main#content form #mc_embed_signup button#mc-embedded-subscribe[type="submit"] {
        width: 30%; } }

#home ul.icons {
  text-align: center;
  -js-display: flex;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center; }
  #home ul.icons li {
    margin: auto;
    width: 48%; }
    @media (min-width: 500px) {
      #home ul.icons li {
        width: 25%; } }
    #home ul.icons li svg {
      margin-bottom: 1rem; }
      #home ul.icons li svg .st0 {
        color: #512d1e; }
    #home ul.icons li a {
      color: #512d1e;
      text-decoration: none;
      display: block; }
      #home ul.icons li a:hover h2, #home ul.icons li a:hover main aside.box h3, main aside.box #home ul.icons li a:hover h3 {
        color: #fec0b8; }
      #home ul.icons li a:hover svg .st0 {
        fill: #fec0b8; }
    #home ul.icons li h2, #home ul.icons li main aside.box h3, main aside.box #home ul.icons li h3 {
      font-family: "schoolbook-web", Georgia, "Times New Roman";
      color: #512d1e;
      font-size: 0.7rem;
      font-weight: 400; }
      @media (min-width: 500px) {
        #home ul.icons li h2, #home ul.icons li main aside.box h3, main aside.box #home ul.icons li h3 {
          font-size: 0.875rem; } }
#home .featured-items {
  margin-bottom: 4rem; }

main {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 99; }
  main .col strong, main .col-2 strong {
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    letter-spacing: 0.1rem;
    font-size: 1rem; }
  main .col img, main .col-2 img {
    max-width: 97%;
    height: auto; }
  main .col ul, main .col-2 ul {
    margin-bottom: 1rem; }
    main .col ul.large, main .col-2 ul.large {
      font-size: 1.5rem;
      line-height: 150%; }
  main .col a, main .col-2 a {
    color: #512d1e; }
    main .col a:hover, main .col-2 a:hover {
      text-decoration: none; }
  main .col small, main .col-2 small {
    font-size: 75%; }
    main .col small.grey, main .col-2 small.grey {
      color: #b9bbbc; }
      main .col small.grey a, main .col-2 small.grey a {
        color: #b9bbbc; }
  main .col, main .col-2 {
    width: 100%;
    float: left;
    padding: 0 1rem;
    margin-bottom: 0; }
    @media (min-width: 750px) {
      main .col, main .col-2 {
        margin-bottom: 2rem; } }
    main .col.first, main .first.col-2 {
      padding-left: 0; }
    main .col.last, main .last.col-2 {
      padding-right: 0; }
  main .col:first-child, main .col-2:first-child {
    padding-left: 0; }
  main .col:last-child, main .col-2:last-child {
    padding-right: 0; }
  main .col-2 {
    width: 100%;
    float: left;
    clear: none; }
    main .col-2:first-child {
      padding-right: 0; }
      @media (min-width: 750px) {
        main .col-2:first-child {
          padding-right: 1rem; } }
    @media (min-width: 750px) {
      main .col-2 {
        width: 50%; } }
  main .col_2_3 {
    width: 100%; }
    @media (min-width: 750px) {
      main .col_2_3 {
        width: 60%;
        padding-right: 3rem; } }
  main .col_1_2 {
    width: 100%;
    padding: 0; }
    @media (min-width: 750px) {
      main .col_1_2 {
        padding: 0 1rem;
        width: 50%; } }
  main .col_1_3 {
    width: 100%;
    padding: 0; }
    @media (min-width: 750px) {
      main .col_1_3 {
        padding: 0 1rem;
        width: 40%; } }
  main .col_1_4 {
    width: 100%;
    padding: 0 !important; }
    @media (min-width: 750px) {
      main .col_1_4 {
        width: 25%; } }
  main .col_1_5 {
    width: 100%;
    padding: 0 !important; }
    @media (min-width: 750px) {
      main .col_1_5 {
        width: 20%; } }
  main .full {
    clear: both;
    width: 100%; }
  main .center {
    text-align: center; }
  main aside.image-left, main aside.image-right, main aside.box {
    width: 35%;
    padding: 10px;
    border-radius: 10px;
    background: #fff;
    -webkit-box-shadow: rgba(0, 0, 0, 0.1) 2px 2px 5px;
    box-shadow: rgba(0, 0, 0, 0.1) 2px 2px 5px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -transition: all 0.3s;
    transition: all 0.3s; }
    main aside.image-left img, main aside.image-right img, main aside.box img {
      max-width: 100%;
      border-radius: 8px;
      overflow: hidden;
      display: block;
      height: auto; }
    main aside.image-left span, main aside.image-right span, main aside.box span {
      margin: 15px 0 5px;
      font-style: italic;
      font-size: 0.875rem;
      display: block;
      text-align: center; }
    main aside.image-left:hover, main aside.image-right:hover, main aside.box:hover {
      -webkit-transform: rotate(0);
              transform: rotate(0);
      -webkit-box-shadow: rgba(0, 0, 0, 0.1) 10px 10px 5px;
      box-shadow: rgba(0, 0, 0, 0.1) 10px 10px 5px; }
  main aside.image-left, main aside.left {
    float: left;
    margin: 0.5rem 2rem 2rem -2rem;
    -webkit-transform: rotate(-3deg);
            transform: rotate(-3deg); }
  main aside.image-right, main aside.right {
    float: right;
    margin: 0 -2rem 2rem 2rem;
    -webkit-transform: rotate(3deg);
            transform: rotate(3deg); }
  main aside.image-up {
    margin-top: -6.5rem; }
  main aside.box {
    width: 25%; }
    main aside.box h3 {
      text-align: center;
      margin-bottom: 0.25rem !important; }
    main aside.box ul {
      list-style-type: disc;
      list-style-position: outside;
      padding: 1rem 2rem 0.25rem;
      margin: 0;
      border-radius: 8px; }
      main aside.box ul li {
        margin-bottom: 0.75rem; }
    main aside.box p {
      padding: 1rem;
      margin: 0;
      border-radius: 8px; }
  main h2, main aside.box h3 {
    margin-bottom: 1rem; }
  main p {
    margin-bottom: 1rem;
    line-height: 150%; }
    main p a {
      color: #512d1e; }
      main p a:hover {
        text-decoration: none; }

.mint aside.box h3 {
  color: #b4e0e0 !important; }

.pink aside.box h3 {
  color: #fec0b8 !important; }

.mint aside.box ul, .mint aside.box p {
  background: #b4e0e0; }

.pink aside.box ul, .pink aside.box p {
  background: #fec0b8; }

.slideshow {
  width: 100%;
  position: relative;
  background: #fff;
  margin: 0 auto 2rem; }

.image-strip, .featured-items {
  clear: both;
  margin-top: 2rem;
  position: relative;
  -js-display: flex;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .image-strip li, .featured-items li {
    margin: auto;
    width: 100%;
    margin-bottom: 1rem; }
    @media (min-width: 500px) {
      .image-strip li, .featured-items li {
        width: 32%;
        margin-bottom: 0; } }
    .image-strip li:first-child, .featured-items li:first-child {
      margin-left: 0; }
    .image-strip li:last-child, .featured-items li:last-child {
      margin-right: 0; }
    .image-strip li img, .featured-items li img {
      width: 100%;
      height: auto;
      opacity: 1; }
    .image-strip li a, .featured-items li a {
      display: block;
      text-decoration: none; }
      .image-strip li a:hover img, .featured-items li a:hover img {
        opacity: 0.7; }
      .image-strip li a:hover h4, .featured-items li a:hover h4 {
        color: #fec0b8; }
    .image-strip li h4, .featured-items li h4 {
      font-family: "proxima-nova-soft", "Helvetica Neue", Helvetica, Arial, sans-serif;
      text-align: center;
      color: #512d1e;
      text-transform: uppercase;
      letter-spacing: 0.1rem;
      font-size: 0.875rem;
      line-height: 130%; }

#about blockquote {
  color: #b4e0e0;
  margin-bottom: 1rem;
  font-size: 2rem;
  line-height: 120%; }
#about .col img, #about main .col-2 img, main #about .col-2 img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-bottom: 1rem; }
#about .how-we-roll {
  background: #b4e0e0;
  position: relative;
  margin-bottom: 1rem; }
  #about .how-we-roll img {
    width: 40%;
    border-right: 1rem solid #fff;
    margin-bottom: 0;
    display: none; }
    @media (min-width: 750px) {
      #about .how-we-roll img {
        display: block; } }
  #about .how-we-roll .wrap {
    width: 100%;
    height: 100%;
    position: relative;
    text-align: center;
    padding: 1rem 0; }
    @media (min-width: 750px) {
      #about .how-we-roll .wrap {
        width: 60%;
        position: absolute;
        top: 0;
        right: 0;
        padding: 0; } }
    @media (min-width: 750px) {
      #about .how-we-roll .wrap .text {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); } }
    #about .how-we-roll .wrap h3 {
      position: relative;
      margin-bottom: 2.5rem; }
      #about .how-we-roll .wrap h3:after {
        content: '';
        position: absolute;
        width: 30%;
        left: 35%;
        bottom: -1rem;
        border-bottom: 1px solid #512d1e; }
    #about .how-we-roll .wrap ul {
      margin-bottom: 0;
      padding: 0 0.5rem;
      text-transform: uppercase;
      letter-spacing: 0.1rem;
      font-size: 0.8rem;
      line-height: 130%; }
      #about .how-we-roll .wrap ul li {
        margin-bottom: 0.75rem; }
        #about .how-we-roll .wrap ul li:last-child {
          margin-bottom: 0; }

#contact main form, #donations main form {
  margin: 2rem 0; }
#contact main .errors, #donations main .errors {
  color: #fec0b8; }
#contact main input, #contact main#content form input#submit,
#contact main#content form button[type="submit"], #contact main textarea, #donations main input, #donations main#content form input#submit,
#donations main#content form button[type="submit"], #donations main textarea {
  background-color: #fef1ef;
  color: #512d1e !important; }
  #contact main input#submit, #contact main#content form input#submit,
  #contact main#content form button#submit[type="submit"], #contact main textarea#submit, #donations main input#submit, #donations main#content form input#submit,
  #donations main#content form button#submit[type="submit"], #donations main textarea#submit {
    background-color: #fef1ef !important;
    color: #512d1e; }
    #contact main input#submit:hover,
    #contact main#content form button#submit[type="submit"]:hover, #contact main textarea#submit:hover, #donations main input#submit:hover,
    #donations main#content form button#submit[type="submit"]:hover, #donations main textarea#submit:hover {
      background-color: #fec0b8 !important;
      color: white; }
#contact main button[type="submit"], #donations main button[type="submit"] {
  background-color: #fef1ef !important;
  color: #512d1e; }
  #contact main button[type="submit"]:hover, #donations main button[type="submit"]:hover {
    background-color: #fec0b8 !important;
    color: white; }
#contact main textarea, #donations main textarea {
  height: 200px; }
#contact main #message-receipt, #donations main #message-receipt {
  background: #fef1ef;
  padding: 1rem; }

#catering h2, #catering main aside.box h3, main aside.box #catering h3 {
  color: #512d1e; }
#catering h3 {
  text-transform: none;
  font-size: 0.875rem;
  letter-spacing: 0;
  font-weight: 400; }
#catering .bottom {
  background-color: #b4e0e0;
  background-image: none;
  margin-top: 2rem;
  padding-top: 2rem;
  min-height: 630px; }
  @media (min-width: 750px) {
    #catering .bottom {
      background: #b4e0e0 url(../images/bg-chocolate-cookies.png) no-repeat 100% 107%; } }
  #catering .bottom h2, #catering .bottom main aside.box h3, main aside.box #catering .bottom h3 {
    color: #fff; }
#catering main ul.events {
  margin: 2rem 0; }
  #catering main ul.events li {
    width: 33.333%;
    float: left;
    margin-bottom: 1rem; }
    @media (min-width: 750px) {
      #catering main ul.events li {
        width: 16.666%;
        margin-bottom: 0; } }
    #catering main ul.events li img {
      display: block;
      width: 80%;
      margin: 0 auto 1rem; }
    #catering main ul.events li h3 {
      text-align: center;
      font-size: 0.875rem;
      line-height: 130%; }
      @media (min-width: 750px) {
        #catering main ul.events li h3 {
          font-size: 1.125rem; } }
#catering main form {
  width: 100%;
  margin-bottom: 2rem;
  display: block;
  position: relative; }
  @media (min-width: 750px) {
    #catering main form {
      width: 60%; } }
  #catering main form .field {
    width: 100%;
    margin: 0 0% 2% 0;
    float: none; }
    @media (min-width: 750px) {
      #catering main form .field {
        width: 46%;
        margin: 0 4% 2% 0;
        float: left; } }
  #catering main form label span {
    color: #fff !important;
    display: block;
    padding-left: 0 !important; }
#catering main input, #catering main#content form input#submit,
#catering main#content form button[type="submit"] {
  background: #84c8c2; }
  #catering main input#submit, #catering main#content form input#submit,
  #catering main#content form button#submit[type="submit"] {
    color: #512d1e; }
    #catering main input#submit:hover,
    #catering main#content form button#submit[type="submit"]:hover {
      background: #84c8c2; }
#catering main button[type="submit"] {
  color: #512d1e; }
  #catering main button[type="submit"]:hover {
    background: #84c8c2; }
#catering main #message-receipt {
  background: #84c8c2;
  padding: 1rem;
  display: inline-block; }

#press .slideshow {
  margin-bottom: 0.4rem; }
  @media (min-width: 500px) {
    #press .slideshow {
      margin-bottom: 0.6rem; } }
  @media (min-width: 750px) {
    #press .slideshow {
      margin-bottom: 1.0rem; } }
  @media (min-width: 1157px) {
    #press .slideshow {
      margin-bottom: 1.25rem; } }

.press-grid {
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .press-grid li {
    width: 49%;
    margin-bottom: 1.5%; }
    @media (min-width: 500px) {
      .press-grid li {
        width: 32.333%; } }
    @media (min-width: 750px) {
      .press-grid li {
        width: 24%; } }
    @media (min-width: 1157px) {
      .press-grid li {
        width: 19%; } }
    .press-grid li a {
      display: block;
      position: relative;
      line-height: 0; }
      .press-grid li a:hover img {
        opacity: 0.7; }
      .press-grid li a img {
        width: 100%;
        height: auto;
        opacity: 1;
        display: block;
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        -transition: opacity 0.3s;
        transition: opacity 0.3s; }

.pressitem {
  position: relative;
  margin-top: 0; }
  @media (min-width: 1157px) {
    .pressitem {
      margin-top: 2rem; } }
  .pressitem.active {
    pointer-events: auto; }
  .pressitem div.wrap {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 2rem; }
    .pressitem div.wrap h2, .pressitem div.wrap main aside.box h3, main aside.box .pressitem div.wrap h3 {
      color: #512d1e; }
    @media (min-width: 1157px) {
      .pressitem div.wrap {
        width: 1100px; } }
    .pressitem div.wrap div.text {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; }
      .pressitem div.wrap div.text img {
        width: 100%;
        height: auto;
        -ms-flex-item-align: center;
            align-self: center; }
        @media (min-width: 1157px) {
          .pressitem div.wrap div.text img {
            width: 50%;
            margin-bottom: 2rem; } }
      .pressitem div.wrap div.text .pressitem-content {
        width: 100%;
        padding: 2rem 2rem 0; }
        @media (min-width: 1157px) {
          .pressitem div.wrap div.text .pressitem-content {
            padding: 0 2rem;
            width: 50%; } }
      @media (min-width: 1157px) {
        .pressitem div.wrap div.text.multiple-images .pressitem-content {
          padding: 0; } }
    .pressitem div.wrap div.video .video-container {
      display: block;
      width: 100%;
      margin-bottom: 1rem; }
    .pressitem div.wrap div.video .pressitem-content {
      padding: 2rem; }
      @media (min-width: 1157px) {
        .pressitem div.wrap div.video .pressitem-content {
          padding: 0; } }
    .pressitem div.wrap a.close {
      text-transform: uppercase;
      letter-spacing: 0.2rem;
      color: #512d1e;
      font-size: 0.75rem; }
      .pressitem div.wrap a.close:hover {
        text-decoration: none; }
    .pressitem div.wrap .pressitem-content {
      color: #512d1e;
      width: 100%;
      padding: 0; }
      .pressitem div.wrap .pressitem-content p.link-wrap {
        margin-bottom: 3.5rem; }

main#content form legend {
  display: none; }
main#content form input, main#content form input#submit,
main#content form button[type="submit"] {
  border: 0;
  color: #fff;
  font: 1rem "schoolbook-web", Georgia, "Times New Roman";
  padding: 8px;
  float: none;
  width: 100%;
  margin: 0 0 2% 0; }
  main#content form input.full, main#content form input.full#submit,
  main#content form button.full[type="submit"] {
    clear: both;
    float: none;
    width: 98%; }
  main#content form input#pooh,
  main#content form button#pooh[type="submit"] {
    display: none; }
main#content form input#submit,
main#content form button#submit[type="submit"],
main#content form button[type="submit"] {
  background: #fff;
  width: auto;
  border-radius: 20px;
  padding: 8px 1.5rem;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none; }
  main#content form input#submit:hover,
  main#content form button#submit[type="submit"]:hover,
  main#content form button[type="submit"]:hover {
    color: #fff !important; }
main#content form label span {
  font-size: 0.75em;
  color: #b9bbbc;
  padding-left: 0.5rem; }
main#content form textarea {
  border: 0;
  color: #fff;
  font: 1rem "schoolbook-web", Georgia, "Times New Roman";
  padding: 8px;
  clear: both;
  width: 100%; }

html.pink header {
  background-color: #fec0b8; }
html.pink h2, html.pink main aside.box h3, main aside.box html.pink h3 {
  color: #fec0b8; }

html.mint header {
  background-color: #b4e0e0; }
html.mint h2, html.mint main aside.box h3, main aside.box html.mint h3 {
  color: #b4e0e0; }

.farmers-market-locations {
  -js-display: flex;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .farmers-market-locations .col, .farmers-market-locations main .col-2, main .farmers-market-locations .col-2 {
    padding: 0 !important;
    margin: auto; }
    @media (min-width: 750px) {
      .farmers-market-locations .col, .farmers-market-locations main .col-2, main .farmers-market-locations .col-2 {
        padding: 0 2rem !important; } }
    .farmers-market-locations .col:first-child, .farmers-market-locations main .col-2:first-child, main .farmers-market-locations .col-2:first-child {
      padding-left: 0 !important;
      margin-left: 0; }
    .farmers-market-locations .col:last-child, .farmers-market-locations main .col-2:last-child, main .farmers-market-locations .col-2:last-child {
      padding-right: 0 !important;
      margin-right: 0; }
  .farmers-market-locations strong {
    letter-spacing: 0 !important;
    text-transform: none !important; }

#flavors h2, #flavors main aside.box h3, main aside.box #flavors h3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
  line-height: 120%; }
#flavors ul.flavors {
  -js-display: flex;
  -ms-box-orient: horizontal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: flex;
  -ms-flex-flow: row wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-flow: row wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  #flavors ul.flavors li {
    margin: 0 0 1.5%;
    width: 100%;
    position: relative; }
    @media (min-width: 500px) {
      #flavors ul.flavors li {
        width: 49%; } }
    @media (min-width: 750px) {
      #flavors ul.flavors li {
        width: 32.333%; } }
    @media (min-width: 1157px) {
      #flavors ul.flavors li {
        width: 24%; } }
    #flavors ul.flavors li img {
      width: 100%;
      height: auto;
      position: relative;
      z-index: 55;
      display: block; }
    #flavors ul.flavors li a:hover .over,
    #flavors ul.flavors li a:focus .over {
      display: block;
      cursor: default;
      opacity: 1; }
    #flavors ul.flavors li .over {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      padding: 1rem;
      background: rgba(60, 36, 21, 0.8);
      color: #fff;
      text-align: center;
      z-index: 56;
      opacity: 0; }
      #flavors ul.flavors li .over .text {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
      #flavors ul.flavors li .over h3 {
        text-transform: none;
        position: relative;
        margin-bottom: 2rem;
        padding: 0 2rem;
        font-weight: 400;
        font-size: 1.25rem; }
        #flavors ul.flavors li .over h3:after {
          content: '';
          position: absolute;
          width: 30%;
          left: 35%;
          bottom: -1rem;
          border-bottom: 1px solid #fff; }
      #flavors ul.flavors li .over p {
        text-transform: uppercase;
        font-family: "proxima-nova-soft", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: 400;
        letter-spacing: 0.1rem;
        font-size: 0.875rem; }

/* ----- FLEXSLIDER ----- */
/* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus {
  outline: none; }

.slides,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none; }

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
  padding: 0; }

.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden;
  width: 100%;
  background: transparent; }

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
  width: 100%;
  height: auto;
  margin: 0;
  display: block; }

.flexslider .slides img.square {
  width: 100%; }
  @media (min-width: 750px) {
    .flexslider .slides img.square {
      width: 56.25%; } }

.flex-pauseplay span {
  text-transform: capitalize; }

/* Clearfix for the .slides element */
.slides:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

html[xmlns] .slides {
  display: block; }

* html .slides {
  height: 1%; }

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
/*.no-js .slides > li:first-child {display: block;}*/
/* FlexSlider Default Theme
*********************************/
.flexslider {
  zoom: 1;
  display: block;
  position: relative; }

.flex-viewport {
  max-height: 2000px;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.loading .flex-viewport {
  max-height: 300px; }

.flexslider .slides {
  zoom: 1; }

.carousel li {
  margin-right: 5px; }

/* Direction Nav */
.flex-direction-nav {
  *height: 0; }

.flex-direction-nav a {
  width: 18px;
  height: 30px;
  margin: -9px 0 0;
  display: none;
  position: absolute;
  top: 50%;
  z-index: 10;
  cursor: pointer;
  text-indent: -9999px;
  opacity: 1;
  -webkit-transition: all .3s ease; }
  @media (min-width: 750px) {
    .flex-direction-nav a {
      display: block; } }

.flex-direction-nav .flex-next {
  background: url(../images/arrow-right.svg) no-repeat 50% 50%;
  right: 20px; }

.flex-direction-nav .flex-prev {
  background: url(../images/arrow-left.svg) no-repeat 50% 50%;
  left: 20px; }

/*.flexslider:hover .flex-next {opacity: 0.8; }
.flexslider:hover .flex-prev {opacity: 0.8; }*/
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
  opacity: 1; }

.flex-direction-nav .flex-disabled {
  opacity: 0.3 !important;
  filter: alpha(opacity=30);
  cursor: default; }

/* Control Nav */
.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: 1rem;
  text-align: center; }

.flex-control-nav li {
  margin: 0 8px;
  display: inline-block;
  zoom: 1;
  *display: inline; }

/*.flex-control-paging li a {width: 11px; height: 11px; display: block; background: #666; background: rgba(0,0,0,0.5); cursor: pointer; text-indent: -9999px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; box-shadow: inset 0 0 3px rgba(0,0,0,0.3);}
.flex-control-paging li a:hover { background: #333; background: rgba(0,0,0,0.7); }
.flex-control-paging li a.flex-active { background: #000; background: rgba(0,0,0,0.9); cursor: default; }*/
.flex-control-paging li a {
  width: 14px;
  height: 14px;
  background: #fff;
  border-radius: 14px;
  display: block;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer; }

.flex-control-paging li a.flex-active {
  opacity: 0.5; }

.flex-control-thumbs {
  margin: 5px 0 0;
  position: static;
  overflow: hidden; }

.flex-control-thumbs li {
  width: 25%;
  float: left;
  margin: 0; }

.flex-control-thumbs img {
  width: 100%;
  display: block;
  opacity: .7;
  cursor: pointer; }

.flex-control-thumbs img:hover {
  opacity: 1; }

.flex-control-thumbs .flex-active {
  opacity: 1;
  cursor: default; }
