/*************************************/
/*   
/*	Main Sass Config File
/*
/*************************************

* In here, we set up the sass project, 
* define variables, mixins, and everything else.
*
*/
html, body, div, span, applet, object, iframe,
h1, h2, 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; }

/*$heading-font:			"minion-pro", Georgia, Times, serif;*/
/*************************************/
/*   
/*	Import Modules and Mixins
/*
/*************************************/
.left {
  float: left; }

.right {
  float: right; }

.wrap {
  width: 978px;
  height: 100%;
  margin: 0 auto;
  position: relative;
  padding: 0; }
  @media only screen and (max-width: 420px) {
    .wrap {
      width: 100%; } }

.wrapspecial {
  height: 100%;
  margin: 0 1em;
  position: relative;
  padding: 0; }
  @media only screen and (max-width: 420px) {
    .wrapspecial {
      width: 100%; } }

.clr {
  *zoom: 1; }
  .clr:after {
    content: "";
    display: table;
    clear: both; }

strong, b {
  font-weight: bold; }

em, i {
  font-style: italic; }

/*************************************/
/*   
/*	Import different site components
/*
/*************************************/
/*@import "partials/sprites";*/
.header {
  width: 100%;
  min-width: 978px;
  position: relative;
  padding: 0;
  background: #edece8;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  *zoom: 1;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  height: 81px;
  /* Main Menu */ }
  .header:after {
    content: "";
    display: table;
    clear: both; }
  @media only screen and (max-width: 420px) {
    .header {
      height: 40px;
      width: 100%;
      min-width: 100%; } }
  @media print {
    .header {
      display: none; } }
  @media print {
    .header {
      background: #fff; } }
  .header.short {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1000; }
  .header h1, .header .logo {
    display: block;
    width: 395px;
    height: 50px;
    line-height: 70px;
    position: absolute;
    top: 3px;
    left: 8px; }
    @media only screen and (max-width: 420px) {
      .header h1, .header .logo {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 40px;
        margin: 0;
        padding-top: 10px; } }
    .header h1 a, .header .logo a {
      text-indent: -119988px;
      overflow: hidden;
      text-align: left;
      text-transform: capitalize;
      display: block;
      height: 100%;
      width: 395px;
      background: url("../assets/logo-wide.png") no-repeat;
      background-size: 395px 50px; }
      @media only screen and (max-width: 420px) {
        .header h1 a, .header .logo a {
          margin: 0 auto;
          width: 197.5px;
          background-size: 197.5px 25px; } }
  .header h1.sotolon {
    display: block;
    width: 156px;
    height: 112px;
    line-height: 70px;
    position: absolute;
    top: 3px;
    left: 8px; }
    @media only screen and (max-width: 420px) {
      .header h1.sotolon {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 40px;
        margin: 0;
        padding-top: 10px; } }
    .header h1.sotolon a {
      text-indent: -119988px;
      overflow: hidden;
      text-align: left;
      text-transform: capitalize;
      display: block;
      position: relative;
      height: 100%;
      width: 156px;
      background: url("../assets/logo-sotolon-wide.png") no-repeat;
      background-size: 156px 112px; }
      @media only screen and (max-width: 420px) {
        .header h1.sotolon a {
          background: url("../assets/logotype-sotolon.png") no-repeat;
          margin: 0 auto;
          width: 89px;
          background-size: 89px 30px;
          top: -3px; } }
  .header h1.dev a {
    background: url("../assets/logo-wide-dev.png") no-repeat;
    background-size: 395px 50px; }
    @media only screen and (max-width: 420px) {
      .header h1.dev a {
        margin: 0 auto;
        width: 197.5px;
        background: url("../assets/logo-wide-dev.png") no-repeat;
        background-size: 197.5px 25px; } }
  .header h1.dev.sotolon a {
    background: url("../assets/logo-sotolon-wide-dev.png") no-repeat;
    background-size: 156px 112px; }
    @media only screen and (max-width: 420px) {
      .header h1.dev.sotolon a {
        background: url("../assets/logotype-sotolon.png") no-repeat;
        margin: 0 auto;
        width: 89px;
        background-size: 89px 30px;
        top: -3px; } }
  .header h2 {
    float: right;
    font-size: 20px;
    font-style: italic; }
    @media only screen and (max-width: 420px) {
      .header h2 {
        display: none; } }
  .header .toggle {
    display: none;
    position: absolute;
    top: 0px;
    left: 0;
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    font-weight: bold;
    line-height: 70px;
    width: 40px;
    text-align: center;
    background: #a2120f;
    color: #fff;
    text-transform: uppercase; }
    @media only screen and (max-width: 420px) {
      .header .toggle {
        line-height: 40px;
        display: block; } }
  .header #invokeSearchOverlay {
    bottom: -4px; }
  .header #invokeSearchOverlayMobile {
    display: none;
    cursor: pointer; }
    @media only screen and (max-width: 420px) {
      .header #invokeSearchOverlayMobile {
        display: block;
        position: absolute;
        right: 8px;
        top: 11px; } }
  .header #headerTopLayer {
    height: 45px; }
  .header #searchDropdownNavItem, .header #downloadCatalogItem {
    position: absolute;
    right: 0;
    top: 9px;
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px; }
    .header #searchDropdownNavItem a, .header #downloadCatalogItem a {
      display: block;
      padding: 0 18px;
      text-decoration: none;
      position: relative; }
      .header #searchDropdownNavItem a:hover, .header #downloadCatalogItem a:hover {
        cursor: pointer; }
    .header #searchDropdownNavItem img, .header #downloadCatalogItem img {
      vertical-align: middle;
      margin-right: 3px; }
    @media only screen and (max-width: 420px) {
      .header #searchDropdownNavItem, .header #downloadCatalogItem {
        display: none; } }
  .header #downloadCatalogItem {
    right: 108px;
    top: 13px; }
  .header ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    align-items: baseline;
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 420px) {
      .header ul {
        width: 100%;
        display: none;
        clear: both; } }
    .header ul li {
      position: relative;
      display: inline-block;
      text-align: center;
      padding: 0;
      line-height: 36px;
      letter-spacing: 1px;
      /* Horizontal Sub Menu */
      /* If main menu is hovered, show sub menu, but not sub menu options */ }
      @media only screen and (max-width: 420px) {
        .header ul li {
          width: 100%;
          display: block;
          line-height: 40px; } }
      .header ul li a {
        display: block;
        padding: 0 18px;
        text-decoration: none;
        color: #333;
        position: relative; }
        .header ul li a:hover {
          cursor: pointer; }
      .header ul li.current-menu-parent a, .header ul li.current-menu-item a, .header ul li:hover a {
        color: #a2120f; }
      .header ul li.menu-item-has-children:hover a::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        display: block;
        width: 0;
        height: 0;
        margin-left: -10px;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-bottom: 10px solid #333; }
      .header ul li.current-menu-parent ul li a, .header ul li.current-menu-item ul li a, .header ul li:hover ul li a {
        color: #fff; }
        .header ul li.current-menu-parent ul li a:after, .header ul li.current-menu-item ul li a:after, .header ul li:hover ul li a:after {
          display: none; }
      .header ul li#nav-home.here a {
        background: none !important; }
      .header ul li ul {
        float: none;
        display: none;
        margin: 0;
        top: 100%;
        left: 0;
        padding-right: 0;
        position: absolute;
        z-index: 2000;
        background: #333;
        white-space: nowrap;
        width: auto;
        min-width: 100%;
        line-height: 30px;
        text-align: center;
        font-size: 13px; }
        .header ul li ul li {
          float: none;
          display: block;
          white-space: nowrap;
          text-align: left;
          position: relative;
          white-space: nowrap;
          line-height: 30px;
          /* Vertical Dropdown Menu */
          /* If sub menu is hovered, show options */ }
          .header ul li ul li a {
            padding: 0 20px;
            color: #fff;
            white-space: nowrap; }
            .header ul li ul li a:hover {
              background: #a2120f; }
            .header ul li ul li a:after {
              display: none !important; }
          .header ul li ul li a.subcat {
            padding-left: 3em;
            font-weight: 400; }
          .header ul li ul li a.cat {
            font-weight: 700; }
          .header ul li ul li .menuitemicon {
            height: 16px;
            margin-left: 0.3em;
            margin-right: 0.3em;
            vertical-align: baseline;
            position: relative;
            bottom: -2px; }
          .header ul li ul li ul {
            display: none;
            position: absolute;
            top: 0;
            left: 100%;
            width: auto;
            font-size: 13px;
            font-weight: 400;
            overflow: visible;
            margin: 0;
            padding: 0; }
            .header ul li ul li ul li {
              display: block;
              line-height: 30px;
              float: none;
              white-space: nowrap; }
              .header ul li ul li ul li a {
                white-space: nowrap;
                padding: 0 9px 0 18px; }
                .header ul li ul li ul li a:after {
                  display: none; }
          .header ul li ul li:hover ul {
            display: block; }
            .header ul li ul li:hover ul a:after {
              display: none; }
      .header ul li.current-menu-item ul ul, .header ul li.current-menu-parent ul ul {
        display: none; }
      .header ul li:hover ul {
        display: block; }
        .header ul li:hover ul ul {
          display: none; }
  .header ul.sotolon {
    margin-top: 37px;
    margin-left: 150px; }
  .header.short {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1000;
    opacity: .95; }

.header.sotolon {
  height: 118px; }
  @media only screen and (max-width: 420px) {
    .header.sotolon {
      height: 40px; } }

.navigation {
  width: 100%;
  background: #484848; }
  @media print {
    .navigation {
      display: none; } }
  @media only screen and (max-width: 420px) {
    .navigation {
      display: none;
      width: 100%;
      position: static;
      background: #000;
      margin: 0; } }
  .navigation.short {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1000; }

.spacer {
  width: 100%;
  height: 40px;
  background: #333; }
  .spacer.short {
    position: relative;
    top: 70px;
    left: 0;
    z-index: 800; }

.breadcrumb {
  width: 100%;
  background: #fff; }
  .breadcrumb.short {
    position: fixed;
    top: 50px;
    left: 0;
    z-index: 500; }
  .breadcrumb p {
    color: #333;
    font-size: 11px;
    line-height: 18px;
    margin: 0 0 0 0;
    font-weight: 700; }
    .breadcrumb p a {
      color: #666; }
      .breadcrumb p a:hover {
        text-decoration: underline; }
    @media only screen and (max-width: 420px) {
      .breadcrumb p {
        font-size: 12px;
        text-align: center; } }

.search {
  clear: right;
  float: right;
  margin-top: 20px; }
  @media print {
    .search {
      display: none; } }
  .search input {
    margin: 0;
    padding: 0;
    border: 0;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 12px;
    padding: 0 10px;
    line-height: 25px; }
  .search input[type='submit'] {
    background: #a2120f;
    color: #fff; }

#modal {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.35);
  z-index: 80000;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out; }

#sidebarheader {
  height: 40px; }
  #sidebarheader h1 {
    margin: 0;
    padding-top: 10px; }
    #sidebarheader h1 a {
      text-indent: -119988px;
      overflow: hidden;
      text-align: left;
      text-transform: capitalize;
      display: block;
      height: 100%;
      width: 395px;
      margin: 0 auto 0 auto;
      background: url("../assets/logo-wide.png") no-repeat;
      background-size: 395px 50px; }
      @media only screen and (max-width: 420px) {
        #sidebarheader h1 a {
          width: 197.5px;
          background-size: 197.5px 25px; } }

#sidebarheader h1.sotolon {
  height: 40px; }
  #sidebarheader h1.sotolon a {
    position: relative; }
    @media only screen and (max-width: 420px) {
      #sidebarheader h1.sotolon a {
        background: url("../assets/logotype-sotolon.png") no-repeat;
        margin: 0 auto;
        width: 89px;
        background-size: 89px 30px;
        top: -3px; } }

#sidebarlogo {
  margin-top: 0.2em;
  margin-left: 0.25em;
  height: 25px; }
  @media only screen and (max-width: 420px) {
    #sidebarlogo {
      height: 25px; } }

.sidebarRow, .sidebarRowHeader {
  border-top: 1px solid #bbbbbb; }
  .sidebarRow .sidebarsection, .sidebarRowHeader .sidebarsection {
    text-align: center;
    color: #484848;
    text-transform: uppercase;
    font-weight: 700; }
  .sidebarRow a, .sidebarRowHeader a {
    text-transform: uppercase;
    font-weight: 700;
    line-height: 2.0; }
    @media only screen and (max-width: 420px) {
      .sidebarRow a, .sidebarRowHeader a {
        font-size: 140%; } }
  .sidebarRow .fullrow, .sidebarRowHeader .fullrow {
    margin-left: 2em; }
  .sidebarRow .half, .sidebarRow .halfend, .sidebarRowHeader .half, .sidebarRowHeader .halfend {
    display: inline-block;
    text-align: center;
    width: 50%; }
  .sidebarRow .half, .sidebarRowHeader .half {
    border-right: 1px solid #bbbbbb; }
  .sidebarRow .socialIcons, .sidebarRowHeader .socialIcons {
    text-align: left;
    margin-left: 1.8em;
    padding: 0.25em 0; }

.sidebarRowHeader {
  border-top: 2px solid #484848; }

#dismissMenu {
  position: absolute;
  height: 18px;
  width: 18px;
  top: 12px;
  left: 10px; }

.sidebar2 {
  display: none;
  position: absolute;
  z-index: 99000;
  background-color: #edece8;
  font-family: "myriad-pro-condensed", Impact, sans-serif;
  width: 360px;
  left: 0px;
  top: 0px; }
  @media only screen and (max-width: 420px) {
    .sidebar2 {
      width: 100%; } }

#sidebarAdditionalLinks {
  border-top: 1px solid black;
  text-transform: uppercase; }
  #sidebarAdditionalLinks li {
    margin-left: 0.75em;
    border-bottom: 1px solid #dddcd8;
    font-weight: 700;
    line-height: 2.0; }
  @media only screen and (max-width: 420px) {
    #sidebarAdditionalLinks {
      font-size: 140%; } }

#sidebar-menu {
  list-style-type: none;
  padding: 0;
  margin: 0;
  z-index: 99999;
  font-size: 100%; }
  #sidebar-menu ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
  #sidebar-menu li {
    padding-left: 24px;
    line-height: 2;
    overflow: hidden; }
  #sidebar-menu .handle {
    background: transparent url("../gfx/spacer.png");
    background-repeat: no-repeat;
    background-size: 24px 12px;
    display: inline-block;
    width: 24px;
    height: 12px; }
  #sidebar-menu .collapsed {
    background: transparent url("../gfx/plus-black.png");
    background-repeat: no-repeat;
    background-size: 24px 12px;
    cursor: pointer; }
  #sidebar-menu .expanded {
    background: transparent url("../gfx/minus-black.png");
    background-repeat: no-repeat;
    background-size: 24px 12px;
    cursor: pointer; }

.typeBrowserSection {
  clear: both;
  margin-bottom: 1em;
  line-height: 2.0;
  text-transform: uppercase;
  font-weight: 700;
  border-top: 1px solid #bbbbbb; }

.typeBrowserCat1 {
  margin-left: 2em;
  border-bottom: 1px solid #dddcd8; }
  @media only screen and (max-width: 420px) {
    .typeBrowserCat1 {
      font-size: 140%; } }

.typeBrowserCat2 {
  font-weight: 400;
  margin-left: 3em;
  border-bottom: 1px solid #dddcd8; }
  @media only screen and (max-width: 420px) {
    .typeBrowserCat2 {
      font-size: 140%; } }

.typeBrowserVerticalLeft {
  transform: translate(1.5em, 0.5em) rotate(90deg);
  position: absolute;
  transform-origin: left top 0;
  line-height: 1.0; }
  @media only screen and (max-width: 420px) {
    .typeBrowserVerticalLeft {
      font-size: 140%; } }

#shadowbox {
  position: fixed;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 899; }

#searchOverlay {
  padding: 1em;
  background-color: #edece8;
  width: 100%;
  max-width: 640px;
  position: absolute;
  top: 27px;
  left: 0px;
  right: 0px;
  margin-left: auto;
  margin-right: auto;
  z-index: 999; }
  @media only screen and (max-width: 420px) {
    #searchOverlay {
      top: 0px;
      padding-left: 0.5em;
      padding-right: 0.5em; } }

#dismissSearchOverlay {
  cursor: pointer;
  position: absolute;
  right: 1em;
  top: 1em; }

.searchBar {
  text-align: left;
  margin-bottom: 1em;
  margin-top: 1em; }

#searchBox {
  width: 100%;
  font-size: 16px; }

#searchResults {
  display: none; }
  #searchResults a {
    color: black; }
  #searchResults a:hover {
    text-decoration: none; }
  #searchResults .match {
    padding: 0.5em;
    border: 2px solid #dddcd8;
    clear: both;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    #searchResults .match .icons {
      display: table-cell;
      float: right;
      text-align: right;
      flex-shrink: 0; }
    #searchResults .match .summary {
      font-size: 90%; }
    #searchResults .match .logo {
      width: 160px;
      height: auto; }
    #searchResults .match .clusterbottle2 {
      width: 90px;
      height: 160px; }
    #searchResults .match strong {
      font-weight: bold;
      font-size: 16px; }
  #searchResults .match:hover {
    border: 2px solid #a2120f; }
  @media only screen and (max-width: 420px) {
    #searchResults {
      padding: 0; } }

.clusterbottle2 {
  display: block;
  float: right;
  white-space: nowrap;
  position: relative;
  width: 90px;
  height: 160px;
  text-align: center;
  background-color: white; }
  .clusterbottle2 img {
    height: 160px;
    width: auto;
    margin-right: 0; }

#searchResults .logo {
  display: block;
  float: right;
  white-space: nowrap;
  position: relative;
  width: 160px;
  text-align: center;
  background-color: white; }
  @media only screen and (max-width: 420px) {
    #searchResults .logo {
      width: 120px; } }
  #searchResults .logo img {
    width: 100%;
    height: auto;
    margin-right: 0; }

.menuitemicon {
  height: 16px;
  margin-left: 0.3em;
  margin-right: 0.3em;
  vertical-align: baseline;
  position: relative;
  bottom: -2px; }

.specialhierarchicalmenulogotype {
  height: 25px;
  width: auto;
  vertical-align: bottom;
  position: relative;
  bottom: 5px; }

.footer {
  width: 100%;
  padding: 27px 0;
  background: #fafafa;
  border-top: 1px solid #e3e3e3;
  position: relative;
  font-size: 12px; }
  @media print {
    .footer {
      display: none; } }
  @media only screen and (max-width: 420px) {
    .footer {
      padding: 1em 0 1em 3px; } }
  .footer .subfooter {
    border-top: 1px solid #bbbbbb;
    clear: both; }
  .footer small {
    display: block;
    float: right;
    line-height: 37px;
    color: #bbbbbb; }
    @media only screen and (max-width: 420px) {
      .footer small {
        line-height: inherit; } }
  .footer #buildstamp {
    color: #fafafa;
    font-size: 80%;
    position: absolute;
    bottom: 0;
    right: 9px; }
  .footer .socialIcons {
    width: 400px;
    float: left; }
    @media only screen and (max-width: 420px) {
      .footer .socialIcons {
        float: none;
        width: 100%; } }
  .footer .footerMenu {
    width: 530px;
    float: right;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr; }
    .footer .footerMenu ul {
      margin-right: 1rem;
      margin-bottom: 1rem; }
    @media only screen and (max-width: 420px) {
      .footer .footerMenu li {
        line-height: 1.8; } }
    .footer .footerMenu h4 {
      font-weight: bold;
      border-bottom: 1px solid #484848;
      margin-right: 1em;
      margin-bottom: 3px; }
    .footer .footerMenu ul.subul {
      margin-bottom: 0;
      margin-left: 1rem; }
    .footer .footerMenu .fnSec1Heading {
      grid-column: 1/3;
      grid-row: 1/2; }
    .footer .footerMenu .fnSec2Heading {
      grid-column: 3/4;
      grid-row: 1/2; }
    .footer .footerMenu .fnSec1A {
      grid-column: 1/2;
      grid-row: 2/4; }
    .footer .footerMenu .fnSec1B {
      grid-column: 2/3;
      grid-row: 2/4; }
    .footer .footerMenu .fnSec2A {
      grid-column: 3/4;
      grid-row: 2/3; }
    .footer .footerMenu .fnSec2B {
      grid-column: 3/4;
      grid-row: 3/4; }
    @media only screen and (max-width: 420px) {
      .footer .footerMenu {
        grid-template-columns: 1fr 1fr;
        float: none;
        width: 100%;
        margin-top: 1em; }
        .footer .footerMenu .fnSec1Heading {
          grid-column: 1/3;
          grid-row: 1/2; }
        .footer .footerMenu .fnSec2Heading {
          grid-column: 1/3;
          grid-row: 3/4; }
        .footer .footerMenu .fnSec1A {
          grid-column: 1/2;
          grid-row: 2/3; }
        .footer .footerMenu .fnSec1B {
          grid-column: 2/3;
          grid-row: 2/3; }
        .footer .footerMenu .fnSec2A {
          grid-column: 1/2;
          grid-row: 4/5; }
        .footer .footerMenu .fnSec2B {
          grid-column: 2/3;
          grid-row: 4/5; } }

/* This stylesheet mostly fixes missing box-shadows and some minor styling */
.ie8 .tab_header a.selected,
.ie8 .tab_header a.selected:hover {
  border: 1px solid #e3e3e3;
  border-bottom: 0px; }
.ie8 .contact_flyout {
  border: 1px solid #e3e3e3; }
.ie8 .line_item_table tr td .tax_list {
  border: 1px solid #e3e3e3; }
.ie8 .button.blue:before {
  display: none; }

/*************************************/
/*   
/*	Import unique pages styles
/*
/*************************************/
* {
  box-sizing: border-box; }

@page {
  size: A4;
  /* auto is the initial value */
  /* this affects the margin in the printer settings */
  margin: 0.25in 0 0.5in 0; }
body {
  font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  background: #fff;
  color: #484848;
  position: relative; }
  @media only screen and (max-width: 420px) {
    body {
      font-size: 80%; } }
  @media print {
    body {
      margin: 0; } }

a {
  color: #a2120f;
  text-decoration: none; }
  a:hover {
    color: #eb2f2c;
    text-decoration: underline; }
  a h2 {
    color: black; }

.button {
  display: inline-block;
  background: #a2120f;
  padding: 0.5rem 1rem;
  margin: 0;
  border: 0px;
  font-size: 18px;
  line-height: 1em;
  font-family: "myriad-pro-condensed", Impact, sans-serif;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #fff;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  text-decoration: none !important; }
  .button:hover {
    cursor: pointer;
    color: #fff;
    background: #d11713; }
  .button.fullprofile {
    margin: 20px 0 0 0; }
    @media print {
      .button.fullprofile {
        display: none; } }
  @media only screen and (max-width: 420px) {
    .button {
      font-size: 13px;
      font-weight: bold; } }

.hero {
  width: 100%;
  height: 440px;
  background: #f2f2f2;
  background-size: cover;
  background-position: center center; }
  @media only screen and (max-width: 420px) {
    .hero {
      height: 200px; } }
  .hero h1 {
    position: absolute;
    bottom: 30px;
    left: 0;
    color: #fff; }

.content {
  background: #fff;
  position: relative;
  z-index: 1;
  /* Single Product Overview page*/
  /* this is actually the half-assed organization of the two columns on product detail page */ }
  @media only screen and (max-width: 420px) {
    .content {
      margin-left: 5px;
      margin-right: 5px; } }
  .content .wrap {
    padding: 18px 9px;
    background: #ffffff; }
    @media only screen and (max-width: 420px) {
      .content .wrap {
        padding: 18px 0; } }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    line-height: 1em; }
  .content h1 {
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    font-size: 36px;
    font-weight: 700;
    margin: 0 0 10px 0;
    position: relative; }
    @media only screen and (max-width: 420px) {
      .content h1 {
        font-size: 24px;
        margin: 0 0 12px 0; } }
  .content h2 {
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    font-size: 22px;
    font-weight: 400;
    margin: 0 0 24px 0; }
    @media only screen and (max-width: 420px) {
      .content h2 {
        font-size: 20px; } }
  .content h3 {
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    font-size: 14px;
    line-height: 1.0;
    font-weight: 700;
    margin: 0 0 0 0;
    text-transform: uppercase;
    letter-spacing: 2px; }
    .content h3.category_title {
      font-size: 26px;
      line-height: 1em; }
    @media only screen and (max-width: 420px) {
      .content h3 {
        font-size: 12px; } }
  .content h4 {
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 0 0;
    color: #999; }
  .content ul, .content ol {
    font-size: 14px;
    font-weight: 300;
    margin: 0 0 20px 0; }
  .content ul {
    list-style-type: disc;
    margin: 0 0 20px 20px; }
  .content p {
    font-weight: 300;
    margin: 0 0 20px 0; }
    .content p.note {
      font-size: 11px;
      font-style: italic;
      font-weight: bold; }
    .content p a {
      color: #a2120f;
      font-weight: 700; }
      @media print {
        .content p a {
          color: inherit; } }
  .content img {
    /*
    @include respond-to(smalltablet) {
    	float: none;
    	width: 100% !important;
    	height: auto !important;
    	margin: 0;
    }
    @include respond-to(phone) {
    	float: none;
    	width: 100% !important;
    	height: auto !important;
    	margin: 0;
    }
    */ }
    .content img.left {
      width: 50%;
      margin: 0 20px 10px 0; }
  .content .catalogue {
    float: right; }
    @media only screen and (max-width: 420px) {
      .content .catalogue {
        font-size: 12px; } }
    @media print {
      .content .catalogue {
        display: none; } }
    .content .catalogue i {
      margin-right: 10px; }
  .content .product-overview {
    /* How the "card" displays on the product page */ }
    .content .product-overview .banner {
      position: relative;
      line-height: 0;
      min-height: 300px;
      margin: 0 0 20px 0;
      overflow: hidden; }
      @media only screen and (max-width: 420px) {
        .content .product-overview .banner {
          min-height: 0;
          position: relative; } }
      @media print {
        .content .product-overview .banner {
          min-height: 0;
          height: auto;
          margin: 0; } }
      @media only screen and (max-width: 420px) {
        .content .product-overview .banner img {
          display: none; } }
      @media print {
        .content .product-overview .banner img {
          display: none; } }
      .content .product-overview .banner .product-name {
        width: 100%;
        position: absolute;
        padding: 20px;
        left: 0px;
        bottom: 0px;
        color: #fff;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC41Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
        background-size: 100%;
        background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.5)));
        background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
        background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
        background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5)); }
        @media print {
          .content .product-overview .banner .product-name {
            background: none;
            position: relative;
            color: black;
            text-shadow: none; } }
        @media only screen and (max-width: 420px) {
          .content .product-overview .banner .product-name {
            background: none;
            position: relative;
            color: black;
            text-shadow: none; }
            .content .product-overview .banner .product-name h3 {
              color: black;
              text-shadow: none; } }
        .content .product-overview .banner .product-name h1 {
          text-shadow: 0 0 10px rgba(0, 0, 0, 0.9);
          margin: 0;
          line-height: 1em; }
          @media print {
            .content .product-overview .banner .product-name h1 {
              background: none;
              position: relative;
              color: black;
              text-shadow: none; } }
          @media only screen and (max-width: 420px) {
            .content .product-overview .banner .product-name h1 {
              background: none;
              position: relative;
              color: black;
              text-shadow: none; } }
        .content .product-overview .banner .product-name h3 {
          text-shadow: 0 0 10px rgba(0, 0, 0, 0.9);
          line-height: 1em;
          position: relative;
          z-index: 20; }
          .content .product-overview .banner .product-name h3 a {
            color: #fff; }
          @media print {
            .content .product-overview .banner .product-name h3 {
              background: none;
              position: relative;
              color: black;
              text-shadow: none; }
              .content .product-overview .banner .product-name h3 a {
                color: black; } }
          @media only screen and (max-width: 420px) {
            .content .product-overview .banner .product-name h3 {
              background: none;
              position: relative;
              color: black;
              text-shadow: none; }
              .content .product-overview .banner .product-name h3 a {
                color: black; } }
    .content .product-overview .nobanner {
      min-height: 0;
      position: relative; }
      .content .product-overview .nobanner .product-name {
        background: none;
        position: relative;
        color: black;
        text-shadow: none; }
        .content .product-overview .nobanner .product-name h3 {
          color: black;
          text-shadow: none; }
          @media print {
            .content .product-overview .nobanner .product-name h3 {
              display: none; } }
    @media only screen and (max-width: 420px) {
      .content .product-overview .artwork {
        width: 100%;
        margin: 1em 0; } }
    .content .product-overview .artwork .columnA, .content .product-overview .artwork .columnB {
      width: 47%;
      float: left; }
    .content .product-overview .artwork .columnB {
      float: left;
      margin-left: 1em; }
    .content .product-overview .artwork figure {
      margin: 0 1em 1em 0;
      -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
      box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
      @media print {
        .content .product-overview .artwork figure {
          -moz-box-shadow: none;
          -webkit-box-shadow: none;
          box-shadow: none; } }
    .content .product-overview .artwork img {
      width: 100%;
      height: auto;
      margin: 0 0 0 0; }
    .content .product-overview .products .type-product {
      padding: 0; }
  @media only screen and (max-width: 420px) {
    .content div.recipes {
      width: 100%;
      margin: 1em 0; } }
  .content div.recipes .columnA, .content div.recipes .columnB {
    width: 47%;
    float: left; }
  .content div.recipes .columnB {
    float: left;
    margin-left: 1em; }
  .content div.recipes .recipe {
    background: #f3f3f3;
    padding: 0.5em;
    margin: 0 0 1em 0;
    font-size: 11px;
    vertical-align: top; }
    .content div.recipes .recipe h4 a {
      color: black; }
    .content div.recipes .recipe h4 {
      font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
      font-size: 14px;
      font-weight: bold;
      line-height: 1.0;
      margin-bottom: 0.5em; }
    .content div.recipes .recipe p {
      font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
      font-size: 11px;
      margin: 0 0 10px 0; }
      .content div.recipes .recipe p:last-child {
        margin: 0; }
  .content .recipeFull {
    background-color: #edece8;
    padding: 1em;
    max-width: 480px;
    line-height: 1.0;
    margin-bottom: 2em;
    font-size: 14px;
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif; }
    .content .recipeFull span.recIcon {
      display: inline-block;
      float: right;
      font-size: 14px; }
    .content .recipeFull h1 {
      font-size: 27px; }
    .content .recipeFull p {
      margin-bottom: 1em;
      line-height: 1.4; }
    .content .recipeFull img {
      margin: 0; }
    .content .recipeFull .measure {
      margin-left: 1.5em; }
    @media only screen and (max-width: 420px) {
      .content .recipeFull h1 {
        font-size: 24px; } }
  .content .main {
    width: 750px;
    float: right;
    margin-left: 18px; }
    @media only screen and (max-width: 420px) {
      .content .main {
        float: none;
        width: 100%; } }
    @media print {
      .content .main {
        width: 100%; } }
    .content .main.fullwidth {
      width: 100%;
      float: none;
      margin: 0; }
    .content .main.halfwidth {
      width: 366px;
      float: left;
      margin: 0; }
      @media only screen and (max-width: 420px) {
        .content .main.halfwidth {
          width: 100%;
          padding: 2%; } }
    .content .main figure.right {
      width: 80%;
      float: none;
      margin-left: auto;
      margin-right: auto; }
  .content #map_canvas {
    width: 100%;
    height: 300px;
    margin: 0 0 18px 0;
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    page-break-inside: avoid; }
  .content .sidebar {
    width: 174px;
    float: left;
    margin: 0 0 0 0; }
    @media only screen and (max-width: 420px) {
      .content .sidebar {
        float: none;
        width: 100%; } }
    .content .sidebar.halfwidth {
      width: 558px;
      float: right; }
      @media only screen and (max-width: 420px) {
        .content .sidebar.halfwidth {
          width: 100%;
          padding: 2%; } }
    @media print {
      .content .sidebar.product-nav {
        display: none; } }

#productSummaryContainer {
  margin: 0.5em 0 0.5em 0;
  border-top: 2px solid #dddcd8;
  margin-top: 0.5em;
  padding-top: 1em; }

section header {
  position: relative; }

header.producerindex h1 {
  margin-bottom: 0; }
header.producerindex p.categorization {
  margin-top: 0;
  margin-bottom: 1em;
  text-transform: uppercase;
  font-size: 90%; }
header.producerindex .images {
  width: 500px;
  float: right;
  text-align: center; }
  header.producerindex .images img {
    width: 100%; }
  header.producerindex .images figure.logo {
    width: 100%;
    margin: 1em auto 1em auto; }
    @media only screen and (max-width: 420px) {
      header.producerindex .images figure.logo {
        line-height: 1; } }
  @media only screen and (max-width: 420px) {
    header.producerindex .images {
      width: 50%;
      float: right; } }

.catblurb h2 {
  font-size: 18px;
  font-weight: 700;
  margin-top: 0.75em;
  margin-bottom: 0.25em; }
.catblurb figure.left2 {
  width: 50%;
  float: left;
  margin-right: 1em;
  margin-bottom: 0; }
.catblurb figure.right2 {
  width: 50%;
  float: right;
  margin-left: 1em;
  margin-bottom: 0; }
.catblurb .images {
  width: 50%;
  float: right; }
  .catblurb .images img {
    width: 100%; }
.catblurb .blurb {
  width: 450px; }
  .catblurb .blurb figure img {
    width: 100%;
    height: auto; }
  .catblurb .blurb figure.left {
    width: 30%;
    float: left; }
  .catblurb .blurb figure.right {
    width: 30%;
    float: right; }
  @media only screen and (max-width: 420px) {
    .catblurb .blurb {
      width: 100%; } }
.catblurb .producerTrio {
  clear: both;
  display: flex;
  flex-direction: row;
  justify-content: space-between; }
  .catblurb .producerTrio figure {
    display: block;
    width: 33%;
    height: 230px;
    overflow: hidden; }
    .catblurb .producerTrio figure img {
      margin: 0; }
    @media only screen and (max-width: 420px) {
      .catblurb .producerTrio figure {
        width: 49%;
        height: auto; } }
  .catblurb .producerTrio figure.placeImage {
    margin-right: 4px; }
    @media only screen and (max-width: 420px) {
      .catblurb .producerTrio figure.placeImage {
        margin-right: 0; } }
  .catblurb .producerTrio figure.processImage {
    margin-right: 4px; }
    @media only screen and (max-width: 420px) {
      .catblurb .producerTrio figure.processImage {
        float: right; } }
  @media only screen and (max-width: 420px) {
    .catblurb .producerTrio figure.peopleImage {
      float: right; } }
.catblurb figure {
  width: 100%;
  text-align: center;
  margin-bottom: 1em; }
  .catblurb figure img {
    width: 100%; }
    @media only screen and (max-width: 420px) {
      .catblurb figure img {
        width: 100%; } }
.catblurb figure.left {
  width: 33%;
  float: left; }
  .catblurb figure.left img {
    width: 100%; }
  @media only screen and (max-width: 420px) {
    .catblurb figure.left {
      width: 100%; } }
.catblurb figure.right {
  width: 33%;
  float: right; }
  .catblurb figure.right img {
    width: 100%; }
  @media only screen and (max-width: 420px) {
    .catblurb figure.right {
      width: 100%; } }

.catblurb.longform {
  -moz-column-count: 2;
  column-count: 2;
  column-gap: 1.5em; }
  @media print {
    .catblurb.longform {
      -moz-column-count: 2;
      column-count: 2; } }
  @media only screen and (max-width: 420px) {
    .catblurb.longform {
      -moz-column-count: 1;
      column-count: 1; } }
  .catblurb.longform .blurb {
    width: 100%; }
    .catblurb.longform .blurb p {
      margin-bottom: 0.5em; }
  .catblurb.longform .box {
    clear: both;
    background-color: #edece8;
    padding: 0.5em 0.75em; }

.features figure {
  position: relative;
  width: 100%;
  border: 4px solid white; }
.features figure img {
  width: 100%;
  height: auto; }
.features .secondfeatures figure {
  width: 50%;
  float: left; }
  @media only screen and (max-width: 420px) {
    .features .secondfeatures figure {
      float: none;
      width: 100%; } }
.features figure div.caption {
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 20%;
  color: white;
  font-size: 240%;
  line-height: 1.0;
  padding: 0.5em;
  baseline: bottom;
  font-weight: bold; }
  @media only screen and (max-width: 420px) {
    .features figure div.caption {
      font-size: 80%; } }
.features .secondfeatures figure .caption {
  font-size: 125%;
  width: 100%; }
  @media only screen and (max-width: 420px) {
    .features .secondfeatures figure .caption {
      font-size: 80%; } }

.folded {
  display: none; }

.expandable {
  overflow: hidden;
  max-height: 7.25em;
  border-bottom: 2px solid black;
  position: relative;
  transition: max-height 1s; }

.morebutton {
  font-family: myriad-pro-condensed, Georgia, Times, serif;
  text-transform: uppercase;
  font-weight: bold;
  display: block;
  font-size: 80%;
  border: 2px solid black;
  background-color: white;
  text-align: center;
  position: relative;
  top: -2px;
  margin-left: auto;
  margin-right: auto;
  width: 200px;
  padding: 0.25em 1em; }
  @media only screen and (max-width: 420px) {
    .morebutton {
      font-size: 12px; } }

.fullsetuptable td {
  white-space: nowrap;
  padding-right: 0.5em;
  padding-top: 2px;
  padding-bottom: 2px; }
.fullsetuptable th {
  font-weight: bold;
  padding-right: 0.5em;
  background-color: #edece8; }

.producerSetup h2 {
  margin-top: 0.5em;
  margin-bottom: 0.25em;
  font-weight: bold; }
  .producerSetup h2 a {
    color: black; }
  .producerSetup h2 a:hover {
    color: #eb2f2c; }
.producerSetup h3 {
  margin-top: 1em;
  margin-bottom: 0;
  padding: 0.5em;
  background-color: #edece8; }
  .producerSetup h3 a {
    color: black; }
  .producerSetup h3 a:hover {
    color: #eb2f2c; }
.producerSetup p {
  margin-bottom: 0.5em; }
.producerSetup .setup {
  margin-top: 0;
  margin-bottom: 0.5em; }
.producerSetup .setup2 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: "myriad-pro-condensed", Impact, sans-serif; }
  .producerSetup .setup2 div {
    display: inline-block;
    margin: 1px;
    background: #edece8;
    padding: 1px 0.5em;
    font-weight: bold; }
    .producerSetup .setup2 div .fieldname {
      text-transform: uppercase;
      display: block;
      color: #000000;
      font-weight: normal; }
  .producerSetup .setup2 div.sku {
    background-color: #dddcd8; }

.setupDownload {
  display: inline-block;
  background: #e3e3e3;
  padding: 4px 9px;
  margin: 0;
  border: 0px;
  font-size: 14px;
  line-height: 1em;
  font-family: "myriad-pro-condensed", Impact, sans-serif;
  text-transform: uppercase;
  color: #484848;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  text-decoration: none !important; }
  .setupDownload:hover {
    cursor: pointer;
    color: #fff;
    background: #d11713; }
  .setupDownload.fullprofile {
    margin: 20px 0 0 0; }
    @media print {
      .setupDownload.fullprofile {
        display: none; } }

#imageryReport .thumbnail img {
  height: 250px;
  float: right; }

#imageryReport h2 {
  margin-top: 1em; }

#imageryReport .thumbnail {
  margin-bottom: 1em;
  max-width: 800px; }

#imageryReport .thumbnail img.wide {
  height: auto;
  width: 250px; }

#tabularnav a {
  margin-right: 0.75em; }
  @media only screen and (max-width: 420px) {
    #tabularnav a {
      margin-right: 0.25em; } }

#tabularnav a:hover {
  color: red; }

#recipefilters {
  background-color: #edece8;
  padding: 0.5em;
  width: 270px;
  float: left; }
  @media only screen and (max-width: 420px) {
    #recipefilters {
      width: 100%;
      display: none;
      padding: 1em;
      width: 100%;
      max-width: 640px;
      position: relative;
      margin-left: auto;
      margin-right: auto;
      height: auto;
      padding-left: 0.5em;
      padding-right: 0.5em; } }
  #recipefilters h3 {
    margin-bottom: 0.2em; }
  #recipefilters fieldset {
    margin-bottom: 0.5em; }

#recipeFiltersMoreButton {
  display: none; }
  @media only screen and (max-width: 420px) {
    #recipeFiltersMoreButton {
      display: inline-block;
      cursor: pointer; } }

#recipeResultsBlock {
  margin-left: 290px; }
  @media only screen and (max-width: 420px) {
    #recipeResultsBlock {
      margin-left: 0; } }

#matchesAnnotation {
  font-weight: bold;
  margin-top: 1em; }

.recipeSummaries {
  max-width: 600px; }

.recipeSummaries td {
  vertical-align: bottom;
  border-bottom: 1em solid white; }

td.combo, td.protocol, td.vessel {
  text-align: center;
  min-width: 54px; }

td.combo {
  min-width: 108px; }

td.ing {
  font-size: 14px; }

.mainalt {
  width: 100%; }

.inlineButton {
  display: inline-block; }

.inlineButton, #recipeFiltersMoreButton {
  text-transform: uppercase;
  font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
  letter-spacing: 0;
  font-weight: 700;
  color: #a2120f;
  padding-top: 1px;
  padding-left: 6px;
  padding-right: 6px;
  border: 1px solid #a2120f;
  font-size: 11px;
  line-height: 15px;
  position: relative;
  bottom: 0px; }
  @media print {
    .inlineButton, #recipeFiltersMoreButton {
      display: none; } }

a.inlineButton:hover, #recipeFiltersMoreButton:hover {
  color: white;
  background-color: #a2120f;
  text-decoration: none; }

.revealfold {
  text-transform: uppercase;
  color: #a2120f; }

.socialIcons {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center; }

.socialIcons a {
  margin-right: 1em;
  margin-bottom: 0.5em; }

.socialIcons a:last-child {
  margin-right: 0; }

.socialIcons > div, span.socialButton {
  display: inline-block;
  height: 34px;
  line-height: 34px;
  padding: 0 9px; }

span.socialButton {
  background-color: #a2120f;
  color: white;
  font-family: "myriad-pro-condensed", Impact, sans-serif;
  border-radius: 17px; }

img.socialButton {
  vertical-align: bottom;
  height: 37px; }

.generalTable th {
  font-weight: bold; }
.generalTable th, .generalTable td {
  vertical-align: top;
  padding: 0.5em 1em; }
.generalTable tr.section td {
  border-top: 1px solid #e3e3e3; }

@media only screen and (max-width: 420px) {
  .distState {
    vertical-align: bottom;
    text-align: center; }
    .distState div {
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      white-space: nowrap; } }

.generalForm {
  display: block;
  background-color: #edece8;
  padding: 1em; }
  @media only screen and (max-width: 420px) {
    .generalForm {
      padding: 0.5em 0.5em; } }
  .generalForm p {
    margin-bottom: 0.5em; }
  .generalForm label {
    font-size: 11px;
    display: block; }
  .generalForm input[type=text] {
    width: 30em;
    font-size: 14px; }
    @media only screen and (max-width: 420px) {
      .generalForm input[type=text] {
        font-size: 12px;
        width: 100%; } }

.info {
  margin: 0.5em 0; }
  .info .infoicon {
    display: inline-block;
    width: 36px;
    height: 36px;
    vertical-align: top; }
    @media only screen and (max-width: 420px) {
      .info .infoicon {
        display: block;
        float: left; } }
    .info .infoicon .icon {
      margin: 0;
      height: 36px; }
  .info .infotext {
    margin-left: 0.5em;
    height: 36px;
    display: inline-block;
    line-height: 36px;
    vertical-align: top; }
    @media only screen and (max-width: 420px) {
      .info .infotext {
        display: block;
        line-height: inherit;
        height: auto;
        margin-left: 45px; } }

ul.originTiles {
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin-bottom: 1em; }
  ul.originTiles li {
    vertical-align: top;
    margin: 0;
    width: 150px;
    display: inline-block;
    height: 189px;
    margin-right: 6px;
    font-family: "myriad-pro-condensed", Impact, sans-serif; }
    @media only screen and (max-width: 420px) {
      ul.originTiles li {
        font-size: 80%;
        width: 120px;
        height: 160px; } }
    ul.originTiles li .maplet {
      position: relative;
      width: 150px;
      height: 150px;
      padding: 0.5em;
      border: 2px solid #ddd;
      margin-bottom: 0;
      vertical-align: middle; }
      ul.originTiles li .maplet img {
        width: 100%;
        height: auto;
        position: relative;
        top: 50%;
        transform: translateY(-50%); }
      @media only screen and (max-width: 420px) {
        ul.originTiles li .maplet {
          width: 120px;
          height: 120px; } }
    ul.originTiles li a:hover .maplet {
      border-color: #eb2f2c; }
    ul.originTiles li a:hover {
      text-decoration: none; }

ul.producerTilesLarge {
  margin-left: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between; }
  ul.producerTilesLarge li {
    display: flex;
    flex-basis: 15%;
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    padding-bottom: 1em; }
    ul.producerTilesLarge li a:hover .logo {
      border-color: #eb2f2c; }
    ul.producerTilesLarge li a:hover {
      text-decoration: none; }
    @media only screen and (max-width: 420px) {
      ul.producerTilesLarge li {
        flex-basis: 32%; } }
    ul.producerTilesLarge li .logo {
      display: flex;
      border: 2px solid #ddd;
      padding: 0.5em;
      width: 14vw;
      height: 14vw;
      align-items: center; }
      ul.producerTilesLarge li .logo img {
        width: 100%;
        height: auto; }
      @media only screen and (max-width: 420px) {
        ul.producerTilesLarge li .logo {
          width: 30vw;
          height: 30vw; } }

ul.producerTiles {
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin-bottom: 1em; }
  ul.producerTiles li {
    vertical-align: top;
    margin: 0;
    width: 110px;
    height: 146px;
    display: inline-block;
    margin-right: 6px;
    font-family: "myriad-pro-condensed", Impact, sans-serif; }
    ul.producerTiles li .logo {
      position: relative;
      width: 110px;
      height: 110px;
      padding: 0.5em;
      border: 2px solid #ddd;
      margin-bottom: 0;
      vertical-align: middle; }
      ul.producerTiles li .logo img {
        width: 100%;
        height: auto;
        position: relative;
        top: 50%;
        transform: translateY(-50%); }
    ul.producerTiles li a:hover .logo {
      border-color: #eb2f2c; }
    ul.producerTiles li a:hover {
      text-decoration: none; }
  @media only screen and (max-width: 420px) {
    ul.producerTiles {
      margin-left: 0;
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between; }
      ul.producerTiles li {
        display: flex;
        flex-basis: 30%;
        font-family: "myriad-pro-condensed", Impact, sans-serif;
        margin-bottom: 1em;
        margin-right: 0; }
        ul.producerTiles li a:hover .logo {
          border-color: #eb2f2c; }
        ul.producerTiles li a:hover {
          text-decoration: none; }
        ul.producerTiles li .logo {
          display: flex;
          border: 2px solid #ddd;
          padding: 0.5em;
          width: 29vw;
          height: 29vw;
          align-items: center; }
          ul.producerTiles li .logo img {
            width: 100%;
            height: auto;
            position: inline;
            top: 0;
            transform: none; } }

.country {
  clear: both;
  margin-bottom: 1em;
  min-height: 288px; }
  .country h2 {
    margin-bottom: 0.5em; }
  @media only screen and (max-width: 420px) {
    .country .logoCorral {
      margin-left: 0; } }

.mapPresentation, .producerDetailMap, .productDetailMasterMap {
  position: relative;
  float: right;
  margin-left: 1em;
  margin-right: 0; }
  @media only screen and (max-width: 420px) {
    .mapPresentation, .producerDetailMap, .productDetailMasterMap {
      float: none;
      margin: 0 0 0.5em 0; } }
  .mapPresentation .mapAttribution, .producerDetailMap .mapAttribution, .productDetailMasterMap .mapAttribution {
    display: block;
    position: relative;
    font-size: 70%;
    color: #666666;
    text-align: right;
    top: -3px; }
  .mapPresentation .customMap, .producerDetailMap .customMap, .productDetailMasterMap .customMap {
    width: 455px;
    height: auto; }
    @media only screen and (max-width: 420px) {
      .mapPresentation .customMap, .producerDetailMap .customMap, .productDetailMasterMap .customMap {
        width: 100%;
        height: auto; } }
  .mapPresentation .customMapSVG, .producerDetailMap .customMapSVG, .productDetailMasterMap .customMapSVG {
    width: 455px;
    height: auto; }
    @media only screen and (max-width: 420px) {
      .mapPresentation .customMapSVG, .producerDetailMap .customMapSVG, .productDetailMasterMap .customMapSVG {
        width: 100%;
        height: auto; } }

figure.productDetailMasterMap {
  width: 50%; }
  @media only screen and (max-width: 420px) {
    figure.productDetailMasterMap {
      float: right; } }
  figure.productDetailMasterMap .customMap {
    width: 100%;
    height: auto; }
  @media print {
    figure.productDetailMasterMap {
      width: 50%; } }

.originGmap, .countryDetailGmap {
  width: 360px;
  float: right;
  position: relative;
  height: 288px;
  overflow: hidden;
  margin-right: 1em; }
  @media only screen and (max-width: 420px) {
    .originGmap, .countryDetailGmap {
      width: 100%;
      float: none; } }

.originGmap_canvas, .countryDetailGmap_canvas {
  height: 288px;
  margin: 0;
  box-shadow: none;
  border-bottom: 2px solid #484848; }
  @media only screen and (max-width: 420px) {
    .originGmap_canvas, .countryDetailGmap_canvas {
      width: 100%; } }

.countryDetailGmap {
  float: none;
  margin: 0 0 1em 0; }

.originOutline ul {
  margin-bottom: 0 !important; }

.miniLogoTile {
  position: relative;
  width: 108px;
  height: 108px;
  display: inline-block;
  margin: 0 0.5em 0.5em 0;
  vertical-align: top;
  border: 2px solid #ddd;
  padding: 3px; }
  .miniLogoTile img {
    width: 100%;
    height: auto;
    position: relative;
    top: 50%;
    transform: translateY(-50%); }

svg .hot {
  cursor: pointer; }
  svg .hot .textoutlines {
    fill: #FFFFFF; }
  svg .hot .redhot {
    fill: #A2120F; }
svg .hot:hover .redhot {
  fill: #eb2f2c;
  stroke: #eb2f2c; }

dt {
  margin-bottom: 0.5em;
  font-weight: bold; }

dd {
  padding-left: 2em;
  margin-bottom: 0.5em; }

.contentful {
  font-family: Georgia, serif;
  font-size: 18px;
  line-height: 1.4; }
  .contentful hr {
    border: 0;
    height: 2px;
    background: #dddcd8; }
  @media only screen and (max-width: 420px) {
    .contentful {
      width: 100%;
      font-size: 16px; } }
  .contentful h1 {
    text-align: center;
    margin-bottom: 1em;
    margin-top: 1em; }
  .contentful .resourceCategory {
    margin-top: 1em;
    text-align: center; }
    .contentful .resourceCategory span {
      background-color: #484848;
      color: white;
      font-family: "myriad-pro-condensed", Impact, sans-serif;
      font-size: 15px;
      text-transform: uppercase;
      padding: 3px 9px;
      font-weight: bold;
      letter-spacing: 1px; }
      @media only screen and (max-width: 420px) {
        .contentful .resourceCategory span {
          font-size: 12px; } }
  .contentful .byline {
    text-align: center;
    padding-bottom: 1em;
    border-bottom: 1px solid #e3e3e3;
    margin-bottom: 1em;
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    font-size: 15px; }
    @media only screen and (max-width: 420px) {
      .contentful .byline {
        font-size: 12px; } }
  .contentful .dingbat {
    text-align: center;
    color: #e3e3e3;
    padding-bottom: 1em;
    margin-bottom: 1em;
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    clear: both; }
  .contentful h2, .contentful h3 {
    font-family: Georgia, serif;
    text-transform: none;
    letter-spacing: 1px;
    font-weight: normal;
    line-height: 1.4; }
  .contentful h2 {
    font-size: 27px;
    font-weight: bold;
    color: #ffcf06;
    margin-top: 1em;
    margin-bottom: 0.25em;
    margin-left: 170px;
    max-width: 620px;
    text-align: center; }
    @media only screen and (max-width: 420px) {
      .contentful h2 {
        margin-left: inherit;
        font-size: 24px; } }
  .contentful h3 {
    font-size: 22px;
    color: #484848;
    margin-top: 1em;
    margin-bottom: 0.25em;
    margin-left: 170px;
    max-width: 620px; }
    @media only screen and (max-width: 420px) {
      .contentful h3 {
        margin-left: inherit;
        font-size: 18px; } }
  .contentful p {
    margin-left: 170px;
    max-width: 620px; }
    @media only screen and (max-width: 420px) {
      .contentful p {
        margin-left: inherit; } }
  .contentful figure {
    text-align: center;
    margin: 1em auto 1em auto;
    clear: both;
    width: 620px; }
    .contentful figure img {
      display: inline-block;
      width: 100%;
      margin: 0; }
    .contentful figure figcaption {
      display: block;
      clear: both;
      text-align: center;
      color: #666666;
      font-size: 80%;
      font-style: italic; }
    @media only screen and (max-width: 420px) {
      .contentful figure {
        width: 100%; } }
  .contentful figure.portrait {
    width: auto; }
    .contentful figure.portrait img {
      width: auto;
      height: 620px; }
      @media only screen and (max-width: 420px) {
        .contentful figure.portrait img {
          width: 100%;
          height: auto; } }
  .contentful figure.smaller {
    width: 480px; }
    @media only screen and (max-width: 420px) {
      .contentful figure.smaller {
        width: 100%;
        height: auto; } }
  .contentful figure.smaller-portrait {
    width: auto; }
    .contentful figure.smaller-portrait img {
      width: auto;
      height: 480px; }
      @media only screen and (max-width: 420px) {
        .contentful figure.smaller-portrait img {
          width: 80%;
          height: auto; } }
  .contentful figure.aside {
    width: 33%;
    margin: 0 0 0 1em;
    float: right; }
    .contentful figure.aside img {
      width: 100%;
      margin: 0; }
    @media only screen and (max-width: 420px) {
      .contentful figure.aside {
        width: 40%; } }
  .contentful figure.aside-portrait {
    width: auto;
    margin: 0 0 0 1em;
    float: right; }
    .contentful figure.aside-portrait img {
      width: auto;
      height: 480px;
      margin: 0; }
    @media only screen and (max-width: 420px) {
      .contentful figure.aside-portrait {
        width: 40%;
        margin: 0 0 0 0.5em; }
        .contentful figure.aside-portrait img {
          width: 100%;
          height: auto;
          margin: 0; } }
  .contentful figure.max {
    width: 100%;
    margin: 1em 0; }
    .contentful figure.max img {
      width: 100%;
      margin: 0; }
  .contentful div.recipeFull {
    margin-left: 170px;
    display: block; }
    .contentful div.recipeFull h1 {
      margin-top: 0;
      text-align: left; }
    .contentful div.recipeFull span.recIcon {
      display: inline-block;
      float: right;
      font-size: 14px; }
    .contentful div.recipeFull p {
      margin-left: 0; }
    @media only screen and (max-width: 420px) {
      .contentful div.recipeFull {
        margin-left: inherit; } }
  .contentful div.infographic {
    margin-left: 170px;
    margin-bottom: 1em;
    max-width: 470px;
    break-inside: avoid-column;
    -webkit-column-break-inside: avoid; }
    @media only screen and (max-width: 420px) {
      .contentful div.infographic {
        margin-left: inherit; } }

.specialIcon h1, .specialIcon h3 {
  margin-right: 235px; }
  @media only screen and (max-width: 420px) {
    .specialIcon h1, .specialIcon h3 {
      margin-right: 0; } }

.specialIconProductDetail, .specialIconCategoryIndex {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 99;
  width: 235px;
  margin-left: 0.5em;
  height: auto; }
  @media only screen and (max-width: 420px) {
    .specialIconProductDetail, .specialIconCategoryIndex {
      position: relative;
      display: block;
      margin: 0 0 3px 0; } }

a.tokenlink.fullprofile {
  margin: 20px 0 0 0; }
  @media print {
    a.tokenlink.fullprofile {
      display: none; } }

ul.articleCategories {
  margin: 0 0 1rem 0;
  display: grid;
  grid-template-columns: 1fr 1fr; }
  @media only screen and (max-width: 420px) {
    ul.articleCategories {
      display: block; } }

.xrefTiles {
  clear: both;
  display: grid;
  grid-template-columns: 1fr 1fr; }
  @media only screen and (max-width: 420px) {
    .xrefTiles {
      display: block; } }
  @media print {
    .xrefTiles {
      display: none; } }

.articlebox {
  display: flex;
  align-items: flex-start;
  margin-right: 1rem;
  margin-bottom: 1rem;
  background-color: #edece8;
  padding: 0.5rem; }
  .articlebox h2 {
    font-size: 18px;
    margin-bottom: 0;
    font-weight: bold; }
    .articlebox h2 a {
      color: #484848; }
    .articlebox h2 a:hover {
      color: #eb2f2c; }
    @media only screen and (max-width: 420px) {
      .articlebox h2 {
        font-size: 16px; } }
  @media only screen and (max-width: 420px) {
    .articlebox {
      margin-right: 0; } }
  .articlebox .articlephoto {
    margin-right: 0.5rem;
    width: 110px;
    height: 110px;
    overflow: hidden; }
    .articlebox .articlephoto img {
      width: 100%;
      height: auto; }

table.contentReport {
  margin-bottom: 2rem; }
  table.contentReport th, table.contentReport td {
    text-align: center;
    padding: 1px 0.25rem; }
  table.contentReport th {
    background-color: #dddcd8;
    color: #000000; }
  table.contentReport td {
    text-align: center; }

#productContentReport td:nth-child(6), #productContentReport td:nth-child(7), #productContentReport td:nth-child(8) {
  background-color: #edece8; }
#productContentReport td:nth-child(15), #productContentReport td:nth-child(16), #productContentReport td:nth-child(17) {
  background-color: #edece8; }

.contentwarning {
  color: orange;
  border: 1px solid orange;
  font-size: 65%;
  text-transform: uppercase;
  position: relative;
  cursor: pointer; }
  .contentwarning .tooltip {
    visibility: hidden;
    width: 300px;
    background-color: #dddcd8;
    color: black;
    padding: 0.5rem;
    border-radius: 6px;
    font-size: 100%;
    text-align: left;
    text-transform: none;
    /* Position the tooltip text - see examples below! */
    position: absolute;
    right: 6em;
    z-index: 1; }
    .contentwarning .tooltip strong {
      font-size: 13px;
      font-weight: bold; }

.contentwarning:hover .tooltip {
  visibility: visible; }

.cgrid {
  display: grid;
  grid-template-columns: repeat(14, 1fr);
  grid-gap: 1em;
  grid-template-rows: 420px 287px; }
  @media only screen and (max-width: 420px) {
    .cgrid {
      grid-template-columns: 1fr;
      grid-template-rows: repeat(4, 62vw); } }

.gridfeature {
  background-color: #999;
  overflow: hidden;
  position: relative;
  cursor: pointer; }
  .gridfeature .bkgd {
    position: relative;
    width: 100%;
    height: 100%;
    transition: width 0.5s, height 0.5s, left 0.5s, top 0.5s;
    top: 0;
    left: 0; }
  .gridfeature img {
    width: 100%;
    height: auto; }

.gridfeature1, .gridfeature1equal {
  grid-column: 1/11;
  grid-row: 1/2; }
  @media only screen and (max-width: 420px) {
    .gridfeature1, .gridfeature1equal {
      grid-column: 1/2;
      grid-row: 1/2; } }

.gridfeature1:hover .bkgd1,
.gridfeature1equal:hover .bkgd1,
.gridfeature2:hover .bkgd2,
.gridfeature2equal:hover .bkgd2,
.gridfeature3:hover .bkgd3,
.gridfeature4:hover .bkgd4 {
  top: -5%;
  width: 110%;
  height: 110%;
  left: -5%; }

.gridfeature2 {
  grid-column: 11/15;
  grid-row: 1/2; }
  @media only screen and (max-width: 420px) {
    .gridfeature2 {
      grid-column: 1/2;
      grid-row: 2/3; } }

.gridfeature1equal {
  grid-column: 1/8; }
  @media only screen and (max-width: 420px) {
    .gridfeature1equal {
      grid-column: 1/2;
      grid-row: 1/2; } }

.gridfeature2equal {
  grid-column: 8/15;
  grid-row: 1/2; }
  @media only screen and (max-width: 420px) {
    .gridfeature2equal {
      grid-column: 1/2;
      grid-row: 2/3; } }

.gridfeature3 {
  grid-column: 1/8;
  grid-row: 2/3; }
  @media only screen and (max-width: 420px) {
    .gridfeature3 {
      grid-column: 1/2;
      grid-row: 3/4; } }

.gridfeature4 {
  grid-column: 8/15;
  grid-row: 2/3; }
  @media only screen and (max-width: 420px) {
    .gridfeature4 {
      grid-column: 1/2;
      grid-row: 4/5; } }

.overlay {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: white; }
  .overlay .title {
    text-align: center;
    font-size: 36px;
    line-height: 42px;
    padding: 0 1em;
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    text-shadow: black 0px 0px 9px;
    font-weight: bold;
    background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)); }
    @media only screen and (max-width: 420px) {
      .overlay .title {
        font-size: 24px;
        line-height: 24px; } }
    @media only screen and (max-width: 375px) {
      .overlay .title {
        font-size: 22px;
        line-height: 22px; } }

.overlayB {
  position: absolute;
  top: 9px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  background: none; }
  .overlayB .button {
    font-size: 16px;
    padding: 6px 10px; }
  .overlayB .resourceType {
    margin-top: 0.5rem;
    z-index: 999; }

.contactwell {
  width: 50%;
  float: left; }
  @media only screen and (max-width: 420px) {
    .contactwell {
      width: 100%;
      float: none; } }

.missionwell {
  width: 50%;
  float: right;
  background-color: #edece8;
  padding: 0.5rem; }
  @media only screen and (max-width: 420px) {
    .missionwell {
      width: 100%;
      float: none; } }

.products {
  overflow: hidden;
  margin: 0 0 2em 0;
  list-style-type: none;
  padding: 0; }
  @media only screen and (max-width: 420px) {
    .products {
      margin: 0 0 0 0; } }
  .products .type-product {
    padding: 0;
    list-style-type: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    page-break-inside: avoid;
    width: 100%;
    margin: 0 0 0 0;
    border-bottom: 1px solid #fff; }
    .products .type-product .label {
      float: left;
      position: relative;
      text-align: center;
      width: 230px;
      height: 230px;
      line-height: 230px;
      margin: 0 20px 0 0; }
      @media only screen and (max-width: 420px) {
        .products .type-product .label {
          display: none; } }
      .products .type-product .label img {
        height: 230px;
        width: auto;
        vertical-align: middle; }
      .products .type-product .label img.wideimage {
        width: 100%;
        height: auto;
        vertical-align: middle; }
      .products .type-product .label a {
        display: block; }
      .products .type-product .label .quickview {
        display: none; }
    .products .type-product div.tall {
      height: 320px; }
      .products .type-product div.tall img {
        height: 320px;
        width: auto; }
    .products .type-product .product_text {
      float: left;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding: 0 0;
      width: 478px;
      width: 480px; }
      @media only screen and (max-width: 420px) {
        .products .type-product .product_text {
          width: 100%;
          padding: 0;
          margin: 0 0 20px 0; } }
      .products .type-product .product_text .product_description p:last-child {
        margin-bottom: 0; }
      .products .type-product .product_text h2 {
        font-weight: bold;
        margin: 0; }
      .products .type-product .product_text h3 {
        font-size: 11px;
        color: #999; }
      .products .type-product .product_text p {
        margin-top: 0.25em;
        max-width: 360px; }
    .products .type-product .bottle {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      float: right;
      text-align: center;
      width: 108px;
      height: 230px;
      line-height: 230px;
      padding: 0 0;
      overflow: hidden; }
      @media only screen and (max-width: 420px) {
        .products .type-product .bottle {
          min-width: 108px;
          width: 108px;
          float: right;
          height: auto; } }
      .products .type-product .bottle img {
        height: 230px;
        width: auto;
        vertical-align: middle; }
    .products .type-product .context {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      float: left;
      text-align: center;
      width: 230px;
      height: 230px;
      padding: 0 0;
      line-height: 230px;
      vertical-align: middle; }
      .products .type-product .context a {
        line-height: 0; }
      .products .type-product .context img {
        height: 230px;
        vertical-align: middle;
        width: auto; }
      .products .type-product .context img.wideimage {
        width: 100%;
        vertical-align: middle;
        height: auto; }
      @media only screen and (max-width: 420px) {
        .products .type-product .context {
          display: none;
          float: right; } }
    .products .type-product p {
      width: 100%;
      margin: 10px 0 0 0;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      text-align: left; }
      .products .type-product p span {
        margin-right: 15px; }
  .products p.categorization {
    font-size: 12px;
    margin: 0;
    font-weight: normal; }
  .products .licenses {
    display: none; }
    @media only screen and (max-width: 420px) {
      .products .licenses {
        display: none; } }

.subcatMenuMobile {
  text-align: center;
  margin: 1em;
  display: none; }
  @media only screen and (max-width: 420px) {
    .subcatMenuMobile {
      display: block; } }
  .subcatMenuMobile a {
    margin: 0.25em; }

.subOriginMenu {
  text-align: center;
  margin: 1em; }
  .subOriginMenu a {
    margin: 0.25em; }

.subcatMenuDesktop {
  display: inline-block;
  width: 600px;
  vertical-align: top;
  padding-top: 4px; }
  .subcatMenuDesktop a {
    display: inline-block;
    position: relative;
    bottom: 0.25em;
    vertical-align: middle;
    margin: 0.25em;
    font-weight: normal; }
  .subcatMenuDesktop .button {
    font-size: 16px;
    padding: 6px 10px; }
  @media only screen and (max-width: 420px) {
    .subcatMenuDesktop {
      display: none; } }

.bracket {
  display: inline-block;
  color: #e3e3e3;
  position: relative;
  font-size: 140%;
  font-weight: normal;
  margin-right: 5px; }
  @media only screen and (max-width: 420px) {
    .bracket {
      display: none; } }

@media only screen and (max-width: 420px) {
  .cluster {
    -moz-column-count: 1;
    column-count: 1; } }
.cluster h2 {
  margin-bottom: 0;
  font-weight: bold; }

.groupdetail h2 {
  margin-bottom: 0;
  font-weight: bold; }

.cluster2 {
  -moz-column-count: 2;
  column-count: 2; }
  @media only screen and (max-width: 420px) {
    .cluster2 {
      -moz-column-count: 1;
      column-count: 1; } }

.clusterentry {
  margin-top: 0.5em;
  display: block;
  overflow: hidden; }
  @media only screen and (max-width: 420px) {
    .clusterentry {
      margin-left: 0; } }

.clusterbottle {
  display: inline-block;
  white-space: nowrap;
  position: relative;
  height: 70px;
  background-color: green; }
  .clusterbottle img {
    height: 230px;
    width: auto;
    position: absolute;
    -webkit-transform: translateZ(0);
    transform: translate(83px, -72px) rotate(90deg); }

.clusterbottle:after {
  content: "";
  float: left;
  margin-top: 100%; }

.clusterHeading {
  margin-bottom: 1em; }

.clusterHeadingHenriques {
  margin-bottom: 1em; }
  .clusterHeadingHenriques .product_text .product_description p {
    max-width: none !IMPORTANT; }
  .clusterHeadingHenriques .context {
    width: 452px !IMPORTANT;
    background-color: green; }

div.grouping {
  margin: 1em 0;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid-column;
  clear: both; }
  div.grouping .bottleCorral {
    width: 600px;
    float: right;
    text-align: right; }
    @media only screen and (max-width: 420px) {
      div.grouping .bottleCorral {
        display: none; } }
  div.grouping .bottleCorral2 {
    margin-top: 0.5em; }
    @media only screen and (max-width: 420px) {
      div.grouping .bottleCorral2 {
        display: none; } }
  div.grouping .corralBottle {
    height: 230px;
    display: inline-block;
    width: 72px;
    text-align: right; }
    div.grouping .corralBottle img {
      height: 230px;
      width: auto; }

#groupingVarietal {
  display: none; }

.madeiraSwitch {
  text-align: center;
  clear: both;
  margin-bottom: 1em;
  font-family: "myriad-pro-condensed", Impact, sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  color: #484848; }
  .madeiraSwitch span, .madeiraSwitch span.selected {
    display: inline-block;
    padding: 8px 16px;
    margin: 0;
    font-size: 18px;
    line-height: 1em;
    font-family: "myriad-pro-condensed", Impact, sans-serif;
    text-transform: uppercase;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    color: #a2120f; }
    .madeiraSwitch span:hover, .madeiraSwitch span.selected:hover {
      cursor: pointer;
      color: #fff;
      background: #d11713; }
    @media only screen and (max-width: 420px) {
      .madeiraSwitch span, .madeiraSwitch span.selected {
        font-size: 16px;
        padding: 6px 14px; } }
  .madeiraSwitch span.selected {
    color: #484848;
    text-decoration: underline; }
    .madeiraSwitch span.selected:hover {
      cursor: inherit;
      color: inherit;
      background: inherit; }

h5 {
  font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 1px;
  color: #c5c4bd;
  border-top: 2px solid #dddcd8;
  border-bottom: 2px solid #dddcd8;
  text-align: center;
  margin: 1em 0;
  padding: 0.25em 0;
  text-transform: uppercase; }
  @media only screen and (max-width: 420px) {
    h5 {
      font-size: 18px; } }

#productSummaryContainer > h5:first-of-type {
  border-top: none;
  margin-top: -0.70em; }

#printlogotype {
  display: none;
  float: right;
  width: 15em; }
  @media print {
    #printlogotype {
      display: block; } }

.vitalstable {
  display: none; }

.vitals {
  -moz-column-count: 2;
  column-count: 2;
  column-gap: 1.5em; }
  @media print {
    .vitals {
      -moz-column-count: 2;
      column-count: 2; } }
  @media only screen and (max-width: 420px) {
    .vitals {
      -moz-column-count: 1;
      column-count: 1; } }
  .vitals p {
    width: 100%;
    margin: 10px 0 0 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left; }
    .vitals p span {
      margin-right: 15px; }
  .vitals .description p {
    line-height: 1.4; }
  .vitals td.categorization, .vitals th.categorization {
    margin-top: 0.25em;
    font-size: 90%; }
  .vitals th.categorization {
    padding-right: 1em;
    vertical-align: top; }
  .vitals .highlights {
    margin: 0;
    padding: 1em;
    background-color: #edece8;
    margin-bottom: 0.5em; }
    .vitals .highlights li {
      margin-left: 1em; }
    @media print {
      .vitals .highlights {
        border: 2px solid #dddcd8; } }
  .vitals h3 {
    clear: all;
    margin-top: 1.5em; }

#productImageryCluster, #productImageryCluster2 {
  width: 100%;
  table-layout: fixed;
  clear: all;
  margin-top: 0.5em; }
  @media only screen and (max-width: 420px) {
    #productImageryCluster, #productImageryCluster2 {
      width: 100%;
      float: none; } }
  #productImageryCluster td, #productImageryCluster2 td {
    vertical-align: middle;
    text-align: center;
    overflow: hidden;
    position: relative; }
  #productImageryCluster img, #productImageryCluster2 img {
    width: 100%; }
  #productImageryCluster img.wideimage, #productImageryCluster2 img.wideimage {
    width: 100%; }
  #productImageryCluster #picBottle, #productImageryCluster2 #picBottle {
    border-bottom: 0.5em solid transparent; }
    #productImageryCluster #picBottle figure, #productImageryCluster2 #picBottle figure {
      margin-left: auto;
      margin-right: auto; }
    #productImageryCluster #picBottle img, #productImageryCluster2 #picBottle img {
      margin: 0 auto; }
  #productImageryCluster #picLabel, #productImageryCluster #picContext, #productImageryCluster2 #picLabel, #productImageryCluster2 #picContext {
    width: 50%; }
    #productImageryCluster #picLabel figure, #productImageryCluster #picContext figure, #productImageryCluster2 #picLabel figure, #productImageryCluster2 #picContext figure {
      width: 100%; }
  #productImageryCluster #picPeople, #productImageryCluster #picPlace, #productImageryCluster2 #picPeople, #productImageryCluster2 #picPlace {
    width: 50%; }
  #productImageryCluster #picLabel, #productImageryCluster2 #picLabel {
    border-bottom: 0.5em solid transparent; }
  #productImageryCluster #picContext, #productImageryCluster2 #picContext {
    border-bottom: 0.5em solid transparent; }
  #productImageryCluster #picPeople, #productImageryCluster2 #picPeople {
    border-right: 0.5em solid transparent; }

@media print {
  #productImageryCluster {
    float: right;
    width: 60%;
    margin-left: 1em; } }

#producerPics {
  width: 455px;
  float: right;
  margin-top: 1em;
  height: 162px; }
  #producerPics img {
    height: 100%;
    width: auto;
    vertical-align: middle; }
  #producerPics img.wideimage {
    width: 100%;
    height: auto;
    vertical-align: middle; }
  #producerPics .extrapic {
    width: 220px;
    display: inline-block; }

.setup {
  clear: both;
  overflow-x: auto;
  border-top: 2px solid #dddcd8;
  margin-top: 0.5em;
  padding-top: 0.5em; }
  .setup table {
    width: auto;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    font-family: "myriad-pro-condensed", Impact, sans-serif; }
    .setup table th, .setup table td {
      border-right: 1em solid #fff;
      border-bottom: 1px solid #fff;
      white-space: nowrap; }
    .setup table th {
      background: white;
      font-weight: 700;
      text-transform: uppercase;
      font-size: 13px;
      font-family: "myriad-pro-condensed", Impact, sans-serif; }
    .setup table td {
      font-size: 14px;
      font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif; }
  @media only screen and (max-width: 420px) {
    .setup {
      overflow-x: auto; } }
  @media print {
    .setup {
      overflow-x: visible; } }

@media print {
  .downloadsCorral {
    display: none; } }

.artworkCorral {
  width: 100%;
  padding-left: 0.5em;
  padding-right: 0.5em; }
  @media only screen and (max-width: 420px) {
    .artworkCorral .artwork2 {
      columns: 2; } }
  .artworkCorral .artwork2 figure {
    display: inline-block;
    margin-right: 0.5em;
    margin-bottom: 0.5em;
    margin-top: 0;
    padding: 0; }
  .artworkCorral .artwork2 img {
    height: 200px;
    width: auto; }
    @media only screen and (max-width: 420px) {
      .artworkCorral .artwork2 img {
        width: 100%;
        height: auto; } }

.recipeCorral {
  border-top: 2px solid #dddcd8;
  margin-top: 0.5em;
  padding-top: 1em;
  width: 100%; }
  .recipeCorral table {
    margin: 1em 0 0 0;
    width: 100%; }
  .recipeCorral td {
    vertical-align: top;
    width: 100%; }
  .recipeCorral .recipe {
    padding: 0;
    margin: 0 1em 1em 0;
    font-size: 11px;
    vertical-align: top;
    display: inline-block;
    width: 15%; }
    @media only screen and (max-width: 420px) {
      .recipeCorral .recipe {
        width: 45%; } }
    .recipeCorral .recipe h4 a {
      color: black; }
    .recipeCorral .recipe h4 {
      font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
      font-size: 14px;
      font-weight: bold;
      line-height: 1.0;
      margin-bottom: 0.5em; }
      @media print {
        .recipeCorral .recipe h4 {
          font-size: 12px; } }
    .recipeCorral .recipe p {
      font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
      font-size: 11px;
      margin: 0 0 10px 0; }
      .recipeCorral .recipe p:last-child {
        margin: 0; }
      @media print {
        .recipeCorral .recipe p {
          font-size: 10px; } }

.recipeInfoForPrint {
  display: none;
  font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
  font-size: 11px;
  letter-spacing: normal;
  text-transform: none;
  font-weight: normal;
  float: right; }

.mainalt .extendedDescription, .mainalt .categoryDescription {
  -moz-column-count: 2;
  column-count: 2;
  margin: 1em 0; }
  @media only screen and (max-width: 420px) {
    .mainalt .extendedDescription, .mainalt .categoryDescription {
      -moz-column-count: 1;
      column-count: 1; } }
.mainalt .productDetailGmap {
  width: 473px;
  width: 235px;
  float: right;
  margin-left: 1em; }
  @media only screen and (max-width: 420px) {
    .mainalt .productDetailGmap {
      width: 100%;
      float: none;
      margin-left: 0; } }
.mainalt .productDetailGmap_canvas {
  width: 100%;
  height: 300px;
  margin: 0 0 18px 0;
  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  page-break-inside: avoid; }
.mainalt #gmapmaker {
  width: 600px;
  height: 480px;
  float: right;
  margin-left: 1em; }
  @media only screen and (max-width: 420px) {
    .mainalt #gmapmaker {
      width: 100%;
      float: none;
      margin-left: 0; } }
.mainalt .producerDescription {
  column-count: 1;
  margin: 1em 0; }
.mainalt h3 {
  clear: both; }

.infographic {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin-top: 1em;
  width: 100%;
  break-inside: avoid-column;
  -webkit-column-break-inside: avoid; }
  .infographic .infographicSegment {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    align-items: center;
    width: 32%;
    padding: 0.5em;
    font-family: "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
    background-color: #edece8; }
    .infographic .infographicSegment .desktopIcon {
      display: block; }
      @media only screen and (max-width: 420px) {
        .infographic .infographicSegment .desktopIcon {
          display: none; } }
    .infographic .infographicSegment .mobileIcon {
      display: none; }
      @media only screen and (max-width: 420px) {
        .infographic .infographicSegment .mobileIcon {
          display: block; } }
    @media only screen and (max-width: 420px) {
      .infographic .infographicSegment {
        padding: 1%; } }
    .infographic .infographicSegment .infographicSectionText {
      width: auto;
      text-align: center;
      font-size: 12px;
      flex: 1 1 auto;
      margin-left: 0.25em;
      margin-right: 0.25em; }
      @media only screen and (max-width: 420px) {
        .infographic .infographicSegment .infographicSectionText {
          font-size: 10px; } }
    .infographic .infographicSegment .infographicSectionIcons {
      display: flex;
      flex-direction: row;
      justify-content: space-evenly;
      flex-wrap: nowrap;
      align-items: flex-end;
      overflow: hidden;
      text-align: center;
      flex: 1 0 auto; }
      @media only screen and (max-width: 420px) {
        .infographic .infographicSegment .infographicSectionIcons {
          padding-top: 3px;
          padding-bottom: 3px; } }

.viticultureTable {
  font-size: 12px;
  margin-top: 0.25em; }
  .viticultureTable th {
    font-weight: bold; }
  .viticultureTable th, .viticultureTable td {
    vertical-align: top;
    padding: 0.25em 1em 0.25em 0; }
  .viticultureTable tr.section td {
    border-top: 1px solid #e3e3e3; }

/*************************************/
/*   
/*	Import plugins
/*
/*************************************/
