@charset "UTF-8";
/* This reset is loosely derived from HTML5 boilerplate 
for more information visit http://html5boilerplate.com/ */
/* Every browser has its own default ‘user agent’ stylesheet, that it uses to make unstyled websites appear more legible.
Using a CSS Reset, CSS authors can force every browser to have all its styles reset to null, thus avoiding cross-browser differences as much as possible.
From the consistent base that you’ve set up via your reset, you can then go on to re-style your document,
safe in the knowledge that the browsers’ differences in their default rendering of HTML can’t touch you! */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

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

html {
  overflow-y: scroll; }

body {
  -webkit-text-size-adjust: none; }

.clear:before, .clear:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden; }

.clear:after {
  clear: both; }

.clear {
  zoom: 1; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
  padding: 15px; }

textarea {
  overflow: auto; }

.ie6 legend, .ie7 legend {
  margin-left: -7px; }

input[type="radio"], input.radio {
  vertical-align: text-bottom; }

input[type="checkbox"], input.checkbox, .checkboxes input {
  vertical-align: bottom; }

.ie7 input[type="checkbox"], .ie7 input.checkbox, .ie7 .checkboxes input {
  vertical-align: baseline; }

.ie6 input {
  vertical-align: text-bottom; }

label, input[type="button"], input[type="submit"], input[type="image"], button, .btn {
  cursor: pointer; }

button, input, select, textarea {
  margin: 0; }

/* .checkbox, .radio {float:left; width:13px; height:13px; margin-right:6px; padding:0;} */
button {
  width: auto;
  overflow: visible; }

.ie7 img {
  -ms-interpolation-mode: bicubic; }

.ir {
  display: block;
  text-indent: -999em;
  overflow: hidden;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr; }

.hidden {
  display: none;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

a:hover, a:active {
  outline: none; }

.content ul, .content ol {
  margin-left: 2em; }

ol {
  list-style-type: decimal; }

ul li {
  list-style-type: none; }

nav ul, nav li {
  margin: 0;
  list-style: none;
  list-style-image: none; }

strong, b, th {
  font-weight: bold; }

/** ----------------------------------------------------------
 *
 * Contains the generic theme typography styles
 *
 *    Include your notes or table of contents here
 *
 *    Include color hex's or values of your grid
 *      #333333             - body
 *      $link	            - links, headings
 *      #D80000             - links on hover
 *      5px Vertical grid   - based on multiples of 5px, eg 10px, 15px, 20px, 25px...
 *
 *    @author Your Name <email@gmail.com>
 *
 * ------------------------------------------------------- */
/* TEMPLATE CUSTOM FONTS */
/* Generated by Font Squirrel (http://www.fontsquirrel.com) on February 20, 2012 06:04:25 AM America/New_York */
/* add your own custom fonts here */
@font-face {
  font-family: 'CamboRegular';
  src: url("../webfonts/Cambo-Regular-webfont.eot");
  src: url("../webfonts/Cambo-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("../webfonts/Cambo-Regular-webfont.woff") format("woff"), url("../webfonts/Cambo-Regular-webfont.ttf") format("truetype"), url("../webfonts/Cambo-Regular-webfont.svg#CamboRegular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'WebSymbolsRegular';
  src: url("../webfonts/websymbols-regular-webfont.eot");
  src: url("../webfonts/websymbols-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../webfonts/websymbols-regular-webfont.woff") format("woff"), url("../webfonts/websymbols-regular-webfont.ttf") format("truetype"), url("../webfonts/websymbols-regular-webfont.svg#WebSymbolsRegular") format("svg");
  font-weight: normal;
  font-style: normal; }

/* BASE TYPOGRPHY */
/* These are the default styles for the Simple theme */
body {
  font-size: 13px;
  /* This overrides the browsers default font size */
  line-height: 20px;
  /* If you change the font-size make sure you change the line-height value as well - the usual ratio is around 1.5 (font-size x 1.5 = line-height) */
  margin-bottom: 20px;
  color: #333333;
  font-family: Arial, Helvetica, sans-serif; }
  body a {
    text-decoration: none; }
    body a:link {
      -webkit-tap-highlight-color: #df3328; }

.typography {
  /* HEADERS */
  /* PARAGRAGHS */
  /* LINKS */
  /* LIST STYLES */
  /* TABLE STYLES */
  /* WYSIWYG EDITOR ALIGNMENT CLASSES */
  /* IMAGES */
  /* BLOCKQUOTES */ }
  .typography h1, .typography h2, .typography h3, .typography h4, .typography h5, .typography h6 {
    font-family: Helvetica, "CamboRegular", Georgia, "Times New Roman", Times, serif;
    /* This references one of the custom @font-face fonts - the other fonts that are referenced are fallbacks for browsers that don't support @fontface */
    font-weight: normal;
    margin-bottom: 10px;
    color: #444; }
  .typography h1 {
    font-size: 36px;
    line-height: 45px;
    margin: 0 0 25px 0;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 5px;
    font-family: "Palatino Linotype", Helvetica, "CamboRegular", Georgia, "Times New Roman", Times, serif;
    font-weight: bold; }
  .typography h2 {
    font-size: 28px;
    line-height: 35px;
    margin-bottom: 15px; }
  .typography h3 {
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 10px; }
  .typography h4 {
    font-size: 18px;
    line-height: 25px;
    margin-bottom: 5px; }
  .typography h5 {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 5px; }
  .typography h6 {
    font-size: 14px;
    line-height: 20px;
    font-weight: bold;
    margin-bottom: 5px; }
  .typography p {
    font-size: 13px;
    line-height: 20px;
    margin: 0 0 20px; }
  .typography .intro {
    font-family: Helvetica, "CamboRegular", Georgia, "Times New Roman", Times, serif;
    font-size: 22px;
    line-height: 32px;
    margin-bottom: 20px; }
  .typography em {
    font-style: italic; }
  .typography a,
  .typography a.intro {
    color: #df3328;
    text-decoration: none;
    border-bottom: 1px solid transparent; }
    .typography a:hover, .typography a:focus,
    .typography a.intro:hover,
    .typography a.intro:focus {
      transition: all .4s;
      border-bottom: 1px solid #df3328; }
  .typography ul, .typography ol, .typography dl {
    margin: 0 0 20px 25px; }
    .typography ul li, .typography ol li, .typography dl li {
      list-style-type: disc;
      margin-bottom: 5px; }
  .typography table {
    border-collapse: collapse;
    /* borders are collapsed into a single border when possible */
    border: 1px solid #d4d4d4;
    border-spacing: 0;
    /* The border-spacing property sets the distance between the borders of adjacent cells - acts as a backup to border-collapse: collapse */
    margin: 0 0 10px;
    text-align: left; }
    .typography table tr:nth-child(even),
    .typography table tr.even,
    .typography table th,
    .typography table td {
      background-color: #f9f9f9; }
    .typography table td, .typography table th {
      padding: 6px 15px;
      border: 1px solid #d4d4d4;
      vertical-align: top; }
    .typography table th {
      font-weight: bold; }
  .typography .left {
    text-align: left; }
  .typography .center {
    text-align: center; }
  .typography .right {
    text-align: right; }
  .typography img {
    height: auto;
    /* resets the image height so that it maintains its aspect ratio when width is set */
    background: transparent url(../images/ajax-loader.gif) no-repeat center center; }
    .typography img.left {
      float: left;
      max-width: 50%;
      margin: 5px 20px 10px 0; }
    .typography img.right {
      float: right;
      max-width: 50%;
      /* Responsive width */
      margin: 5px 0 10px 20px; }
    .typography img.leftAlone {
      float: left;
      margin-right: 100%;
      margin-bottom: 10px;
      clear: both; }
    .typography img.center {
      float: none;
      margin-left: auto;
      margin-right: auto;
      display: block;
      margin-bottom: 10px;
      clear: both; }
  .typography .captionImage {
    max-width: 100%;
    margin-top: 5px; }
    .typography .captionImage img {
      margin: 0; }
    .typography .captionImage.left[style], .typography .captionImage.right[style] {
      max-width: 50%; }
    .typography .captionImage.left img, .typography .captionImage.right img {
      float: none;
      max-width: none;
      width: 100%; }
    .typography .captionImage.left {
      float: left;
      margin: 5px 30px 20px 0px; }
      .typography .captionImage.left img {
        margin-right: -10px; }
    .typography .captionImage.right {
      float: right;
      margin: 5px 0 20px 30px; }
      .typography .captionImage.right img {
        margin-left: -10px; }
      .typography .captionImage.right p {
        margin-left: -10px;
        text-align: left;
        margin-left: -10px; }
    .typography .captionImage.leftAlone {
      float: none;
      margin: 0 20px 20px 0px; }
    .typography .captionImage.center {
      margin: 0 auto 20px; }
    .typography .captionImage p {
      clear: both;
      margin: 5px 0;
      font-style: italic;
      color: #888; }
  .typography blockquote {
    background: transparent url(../images/blockquote.png) no-repeat 0px 6px;
    font-family: Helvetica, "CamboRegular", Georgia, "Times New Roman", Times, serif;
    color: #777;
    display: block;
    font-style: italic;
    margin: 0 0 20px;
    float: right;
    text-indent: 30px;
    width: 50%;
    margin-left: 5%;
    clear: both; }
    .typography blockquote p {
      font-size: 17px;
      line-height: 25px; }
  .typography pre {
    background: #F7F7F7;
    border: 1px solid #E4E4E4;
    font-family: Courier, monospace;
    margin: 0 0 20px 0;
    padding: 15px;
    clear: both; }

::-moz-selection,
::-moz-selection {
  /* Applies style to highlighted portion of a page */
  background: #df3328;
  color: #fff;
  text-shadow: none; }

::selection,
::-moz-selection {
  /* Applies style to highlighted portion of a page */
  background: #df3328;
  color: #fff;
  text-shadow: none; }

/* ADDRESS */
address {
  display: block;
  margin-bottom: 20px; }

.GalleryPage .typography img {
  border: 5px solid #d7d7d7; }

/* Photo Album
*****************/
#photo-albums, #album-photos {
  margin: 0; }
  #photo-albums li.photo-album, #album-photos li.photo-album {
    list-style-type: none;
    display: inline-block;
    margin: 0 20px 20px 0; }
    #photo-albums li.photo-album .photo-album-cover, #album-photos li.photo-album .photo-album-cover {
      position: relative; }
      #photo-albums li.photo-album .photo-album-cover a img, #album-photos li.photo-album .photo-album-cover a img {
        border-radius: 4px; }
        #photo-albums li.photo-album .photo-album-cover a img:hover, #album-photos li.photo-album .photo-album-cover a img:hover {
          border-color: #e2483e; }
      #photo-albums li.photo-album .photo-album-cover a:hover, #album-photos li.photo-album .photo-album-cover a:hover {
        border-bottom: 0; }
      #photo-albums li.photo-album .photo-album-cover::after, #album-photos li.photo-album .photo-album-cover::after {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #fff;
        opacity: .1;
        pointer-events: none; }
      #photo-albums li.photo-album .photo-album-cover:hover::after, #album-photos li.photo-album .photo-album-cover:hover::after {
        content: ''; }

#album-photos {
  margin: 0; }
  #album-photos li.album-photo {
    list-style-type: none;
    display: inline-block;
    margin: 0 20px 20px 0;
    position: relative; }
    #album-photos li.album-photo a img {
      border-radius: 4px; }
      #album-photos li.album-photo a img:hover {
        border-color: #e2483e; }
    #album-photos li.album-photo a:hover {
      border-bottom: 0; }
    #album-photos li.album-photo::after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: #fff;
      opacity: .1;
      pointer-events: none; }
    #album-photos li.album-photo:hover::after {
      content: ''; }

/* Default
*****************/
.hidden {
  display: none; }

.line,
.lastUnit {
  overflow: hidden;
  *overflow: visible;
  *zoom: 1;
  padding: 0 10px; }

.unit {
  /* unit - Base class which divides a line into sections (columns). */
  float: left;
  padding: 0 10px;
  box-sizing: border-box;
  /* box-sizing:border-box; creates a box-model where
	padding and border are NOT added onto the width - they are included in the width,
	so a 200px wide element with 20px padding will be 200px, NOT 240px wide */ }

.unitRightv {
  /* Use this class if you want to offset a column eg: |--content(.unit)--|--content(.unit)--|--no-content--|--no-content--|--content(.unitRighttv)--| */
  float: right; }

/* sizeXofY - Extends unit. Indicates the fractional width of the unit, for example size3of4 would take up three quarters, or 75%, of the horizontal space.
The following fractions are supported: 1, 1/2, 1/3, 2/3, 1/4, 3/4, 1/5, 2/5, 3/5, 4/5 */
/* It is possible to add more columns if you wish you will just have to add the fractions that are missing eg: .size1of6 {width:16.66666%;} */
.size1of1 {
  float: none; }

.size1of2 {
  width: 50%; }

.size1of3 {
  width: 33.33333%; }

.size2of3 {
  width: 66.66666%; }

.size1of4 {
  width: 25%; }

.size3of4 {
  width: 75%; }

.size1of5 {
  width: 20%; }

.size2of5 {
  width: 40%; }

.size3of5 {
  width: 60%; }

.size4of5 {
  width: 80%; }

.lastUnit {
  /* lastUnit - Extends unit. Applied to the last child of every line. */
  float: none;
  width: auto; }

/* MAIN LAYOUT */
body {
  margin: 0;
  background: #ededed;
  min-width: 240px;
  -webkit-text-size-adjust: none;
  /* The text size is not adjusted for Safari on iPhone */ }

.main {
  background: #fff;
  padding: 40px 0 60px;
  min-height: 300px; }

.inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px; }

.no-sidebar .content-container {
  float: left;
  width: 100%;
  /* makes content container full width when there is no sidebar */ }

.sidebar {
  /* this is the sidebar element */
  margin-top: 12px; }

.no-sidebar .sidebar {
  display: none; }

/* HEADER */
.header {
  background: url(../images/header.jpg);
  background-position: 0 center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  /* Brand */
  /* Search form */
  /* NAVIGATION */
  /* Primary navigation */ }
  .header textarea:focus {
    outline: none; }
  .header .inner {
    padding-top: 20px;
    position: relative;
    min-height: 72px; }
    .header .inner .unit {
      position: relative;
      /* used to position the main navigation */ }
  .header .brand {
    float: left;
    color: #fff;
    display: inline-block; }
    .header .brand img {
      max-height: 100px;
      max-width: 250px; }
    .header .brand h1 {
      margin: 0;
      padding: 0;
      font-size: 48px;
      font-family: "HelveticaNeueLTPro-Bd", "Helvetica Neue LT Pro Bold", "HelveticaNeueBold", "HelveticaNeue-Bold", "Helvetica Neue Bold", "Helvetica Neue LT Pro", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
      color: #fff;
      font-weight: 600;
      font-stretch: normal;
      /* default value. No font stretching */
      line-height: 1em; }
    .header .brand p {
      color: #888;
      margin-bottom: 22px; }
  .header .search-bar {
    position: absolute;
    right: 13px;
    top: 12px; }
    .header .search-bar .field {
      margin: 0;
      padding: 0; }
    .header .search-bar form input.text {
      width: 155px;
      padding: 5px 34px 5px 15px;
      color: #888;
      margin: 0;
      border: none;
      border-radius: 14px;
      background: #fff; }
    .header .search-bar form input.action {
      /* positions the search button icon over the top of the search input */
      font-size: 14px;
      position: absolute;
      right: 5px;
      top: 0;
      cursor: pointer;
      border: none;
      padding: 5px;
      background: none;
      font-family: 'WebSymbolsRegular';
      color: #848484;
      border-radius: 0;
      margin: 0; }
    .header .search-bar form input.active,
    .header .search-bar form input.action:hover {
      color: #000; }
    .header .search-bar form input:focus {
      outline: none;
      /* removes default browser outlining on focus */ }
    .header .search-bar .search-dropdown-icon {
      display: none;
      /* hides search-dropdown-icon when site is at full width - media queries set it to display:block when at mobile/tablet width */ }
  .header .primary ul {
    position: absolute;
    bottom: 0;
    right: 0;
    /* positions the main navigation */ }
  .header .primary li {
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
    white-space: nowrap;
    /* forces text to never wrap onto a second line */
    background: #fff;
    border-radius: 12px 12px 0 0;
    opacity: .85; }
    .header .primary li a {
      color: #444;
      font-size: 15px;
      font-family: Helvetica, Arial, sans-serif;
      padding: 6px 13px 12px;
      font-weight: bold;
      display: block; }
    .header .primary li.section, .header .primary li.current, .header .primary li:hover {
      opacity: 1; }
      .header .primary li.section a, .header .primary li.current a, .header .primary li:hover a {
        color: #000; }
    .header .primary li.section:after, .header .primary li.current:after {
      content: '}';
      /* adds triangle beneath current nav item ('}' is renders as a triangle when WebSymbolsRegular is set as the font) */
      display: block;
      position: absolute;
      left: 50%;
      margin-left: -7px;
      bottom: -7px;
      font-family: 'WebSymbolsRegular';
      font-size: 30px;
      color: #fff;
      text-align: center;
      line-height: 20px; }

/* Tablet Navigation */
/* When navigation and logo overlap tablet-nav is initialized */
.tablet-nav .brand p {
  margin-bottom: 0; }

.tablet-nav .header .inner {
  padding-top: 20px; }

.tablet-nav .header .primary ul {
  float: left;
  clear: both;
  position: relative;
  margin: 20px 0 0 -13px;
  white-space: nowrap;
  right: auto;
  /* resets the right property value that is set for the desktop site */ }
  .tablet-nav .header .primary ul li {
    white-space: normal; }
    .tablet-nav .header .primary ul li a {
      transition: none; }

.tablet-nav .footer .right {
  clear: left;
  height: 100px;
  width: 100%; }

/* Secondary navigation */
.main .secondary {
  border-bottom: 1px solid #e5e5e5; }
  .main .secondary h3 {
    font-size: 20px;
    color: #AAA;
    margin: 0 0 8px 0;
    font-family: "CamboRegular", Georgia, "Times New Roman", Times, serif;
    font-weight: normal; }
  .main .secondary ul {
    padding: 0;
    margin: 0;
    /* Secondary navigation 2-5 levels deep */ }
    .main .secondary ul li.current ul,
    .main .secondary ul li.section ul {
      display: block; }
    .main .secondary ul ul {
      display: none; }
      .main .secondary ul ul li a {
        padding-left: 10px; }
        .main .secondary ul ul li a .arrow {
          left: 12px; }
        .main .secondary ul ul li a:hover .arrow {
          left: 16px; }
      .main .secondary ul ul ul li a {
        padding-left: 20px; }
        .main .secondary ul ul ul li a .arrow {
          left: 22px; }
        .main .secondary ul ul ul li a:hover .arrow {
          left: 26px; }
      .main .secondary ul ul ul ul li a {
        padding-left: 30px; }
        .main .secondary ul ul ul ul li a .arrow {
          left: 32px; }
        .main .secondary ul ul ul ul li a:hover .arrow {
          left: 36px; }
  .main .secondary li {
    border-top: 1px solid #e5e5e5;
    position: relative;
    list-style-type: none;
    margin-bottom: 0; }
    .main .secondary li .arrow {
      color: #df3328;
      padding-right: 5px;
      display: block;
      font-size: 15px;
      line-height: 20px;
      position: absolute;
      left: 2px;
      top: 7px;
      /* this transition moves the arrow from left:2px to left:6px */
      transition: 0.2s; }
    .main .secondary li a {
      /* side nav link styling */
      padding: 10px 0;
      display: block;
      text-transform: uppercase;
      letter-spacing: 2px;
      font-size: 11px;
      color: #333;
      line-height: 17px;
      border-bottom: none;
      font-family: 'Lucida Sans', 'Lucida Grande', Arial, Helvetica, sans-serif; }
      .main .secondary li a:hover {
        color: #df3328; }
        .main .secondary li a:hover .arrow {
          left: 6px; }
    .main .secondary li .text {
      padding-left: 28px;
      display: block; }
    .main .secondary li.current, .main .secondary li.section {
      background-color: #F3F3F3; }
      .main .secondary li.current a, .main .secondary li.section a {
        color: #000; }
        .main .secondary li.current a.current, .main .secondary li.section a.current {
          color: #df3328;
          background-color: #EDEDED; }
      .main .secondary li.current ul ul, .main .secondary li.section ul ul {
        display: none; }

/* MIXED */
header:after,
.main:after,
#Root:after,
.search-bar:after,
header .inner:after,
footer:after {
  /* clearfix */
  height: 0;
  content: ".";
  display: block;
  clear: both;
  visibility: hidden; }

.search-bar form input.action,
.header .primary li a,
.footer a {
  /* adds color transition when links/inputs on hover */
  transition: color 0.2s; }

.footer a.brand {
  color: #333;
  margin-left: 0; }
  .footer a.brand:hover {
    color: #df3328; }

body h1 span.amp {
  font-family: Baskerville,"Goudy Old Style","Palatino","Book Antiqua",Georgia;
  font-style: italic; }

/* FOOTER */
.footer {
  color: #999;
  background: #ededed;
  padding: 20px 0;
  font-size: 11px;
  line-height: 22px; }
  .footer .footer-logo {
    margin: 0 0 0 20px;
    vertical-align: middle;
    max-width: 200px;
    max-height: 100px; }
  .footer .slick-arrow::before {
    color: #333; }
  .footer .slick-track,
  .footer .slick-slider {
    height: 100px; }

.footer a {
  color: #999; }

.footer a:hover {
  color: #df3328; }

.footer .left {
  float: left;
  color: #000;
  display: block;
  margin-bottom: 10px; }

.footer .right {
  clear: left;
  display: block;
  height: 100px;
  margin-bottom: 10px; }

.footer span {
  padding: 0 3px;
  color: #bbb; }

.footer .primary,
.footer .primary ul {
  display: inline;
  margin: 0;
  padding: 0; }

.footer .primary li {
  display: inline; }

.ie6 .footer .primary li,
.ie7 .footer .primary li {
  /* this is a bugfix for ie6/7 */
  display: inline;
  zoom: 1;
  margin-right: 10px; }

.footer .primary li:after {
  /* adds '/' to separate the footer navigation items */
  padding: 0 3px 0 5px;
  content: '/';
  color: #999; }

.footer .primary li:last-child:after {
  content: '';
  /* makes sure last nav item doesn't have a '/' following it */ }

.footer .arrow {
  padding: 0 8px 0 5px;
  color: #df3328;
  font-size: 13px; }

.footer .primary .nav-open-button {
  display: none;
  /* the footer includes the primary nav include - this makes sure the nav open close button doesn't show up */ }

/* PAGE SPECIFIC LAYOUT */
/* Homepage */
/* currently no Hompage specific styles - feel free to add your own */
/* Search Results */
.typography .searchResults h1 {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none; }

.searchResults p.searchQuery {
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: bold; }

.searchResults ul#SearchResults {
  padding: 0;
  border-bottom: 1px solid #e5e5e5;
  margin: 0; }

.searchResults ul#SearchResults li {
  border-top: 1px solid #e5e5e5;
  padding: 20px 0;
  list-style-type: none; }

.searchResults ul#SearchResults p {
  margin-bottom: 10px; }

.searchResults #PageNumbers a {
  padding: 0 5px; }

.searchResults #PageNumbers .pagination {
  border-bottom: 1px solid #e5e5e5;
  padding: 20px 0;
  display: table;
  /* displays the pagination as a table so that elements stay inline and the middle column adjusts its size to accomodate and the right arrow stays to the right */
  width: 100%; }

.searchResults #PageNumbers .pagination span {
  display: table-cell;
  /* each element in the pagination div displays as a table cell */ }

.searchResults #PageNumbers p {
  text-align: center;
  padding: 20px 0; }

.searchResults #PageNumbers .next,
.searchResults #PageNumbers .prev {
  font-size: 14px;
  padding: 0 20px;
  display: table-cell;
  /* each element in the pagination div displays as a table cell */
  vertical-align: middle;
  border-bottom: 0 !important; }

.searchResults #PageNumbers .next {
  margin-left: 15px; }

.searchResults #PageNumbers .prev {
  margin-right: 15px; }

/* DEVICE & RESPONSIVE LAYOUT */
.header .nav-open-button {
  display: none;
  /* removes the nav toggle button for desktop site */ }

#media-query-trigger {
  /* instead of detecting the width of the window in simple/javascript/script.js it detects the visibility of this element (which is set using media queries)
    instead to trigger the hiding/showing of nav and search in mobile mode */
  display: none;
  visibility: hidden; }

/* BREAKPOINT 960px */
@media only screen and (max-width: 960px) {
  .content img {
    max-width: 97%;
    height: auto; }
  .header .primary ul {
    margin-left: -12px;
    -webkit-padding-start: 0px;
    /* removes default webkit padding on ul items */ } }

/* BREAKPOINT 640px */
/* when changing the breakpoint below, change it ito the same value in the script.js file as well */
@media only screen and (max-width: 640px) {
  body {
    max-width: 640px; }
  #media-query-trigger {
    visibility: visible; }
  /* Navigation*/
  .tablet-nav .header .brand {
    float: none;
    display: inline-block;
    margin-left: 22px;
    margin-bottom: 22px; }
  .brand h1 {
    font-size: 40px; }
  .brand h1 {
    padding-right: 100px;
    /* padding stops .brand text from overlapping the search and nav buttons */ }
  .tablet-nav .header {
    padding: 0px; }
  .tablet-nav .header .inner {
    padding: 20px 0 0 0;
    min-height: 0; }
  .tablet-nav .header .primary .nav-open-button {
    /* styling and positioning of the nav toggle button */
    z-index: 100;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 20px;
    top: 35px;
    display: block;
    cursor: pointer;
    font-family: 'WebSymbolsRegular';
    font-size: 20px;
    color: #ededed; }
  .tablet-nav .header .primary ul {
    z-index: 10;
    position: relative;
    display: none;
    /* initially hiding the navigation */
    float: left;
    margin: 0;
    padding: 0;
    white-space: normal;
    width: 100%; }
  .tablet-nav .header .primary ul li {
    width: 100%;
    margin: 0;
    padding: 0;
    float: none;
    /* displays list items vertically */
    background: none;
    position: relative;
    text-shadow: 0 1px #fff; }
  .tablet-nav .header .primary ul li:after {
    /* creates the arrow for the primary nav links */
    content: '\003e';
    display: block;
    position: absolute;
    right: 20px;
    top: 0px;
    font-family: 'WebSymbolsRegular';
    font-size: 14px;
    color: #999;
    text-align: center;
    vertical-align: middle;
    line-height: 38px; }
  .tablet-nav .header .primary ul li a,
  .tablet-nav .header .primary ul li.current a,
  .tablet-nav .header .primary ul li.section a {
    /* styling the  top level nav links */
    padding: 10px 0 10px 22px;
    font-weight: bold;
    border-bottom: 1px solid #bbb;
    color: #434343;
    background: #e7e7e7; }
  .tablet-nav .header .primary ul li.current a,
  .tablet-nav .header .primary ul li.section a {
    background: #CCCCCC;
    /* makes background on current top level page slightly darker */ }
  .tablet-nav .header .primary ul li a:hover {
    color: inherit; }
  .tablet-nav .header .primary li.section:after,
  .tablet-nav .header .primary li.current:after {
    display: none;
    /* hides the link arrow on current top level page */ }
  .tablet-nav .tablet-nav .header nav.primary ul li {
    padding: 0; }
  /* Search Form */
  .search-bar {
    /* adds new styling to mobile search bar */
    width: 100%;
    position: relative;
    top: 0;
    right: 0;
    display: none;
    /* hides searchbar initially */
    padding: 20px 0;
    margin: 0;
    background-color: #E7E7E7; }
  .search-dropdown-icon {
    /* styling for search toggle button */
    display: block;
    cursor: pointer;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 60px;
    top: 34px;
    font-family: 'WebSymbolsRegular';
    font-size: 20px;
    color: #ededed;
    text-align: center;
    line-height: 20px; }
  .search-bar form {
    margin: 0;
    width: 100%; }
  .search-bar form fieldset {
    padding: 0 18px;
    left: 0;
    right: 0;
    position: relative; }
  .search-bar div.field {
    margin-bottom: 0; }
  .search-bar form input.text {
    width: 89%;
    /* makes search input full width - allowing for space either side */
    max-width: 89%;
    padding: 8px 10% 8px 1%;
    text-indent: 15px;
    position: relative;
    display: block;
    right: 0;
    left: 0;
    border: 1px solid #e5e5e5;
    background: #fff;
    font-size: 17px;
    /* increase border radius due to increased padding */
    border-radius: 20px; }
  .search-bar form input.action {
    right: 5%;
    top: 2px;
    font-size: 18px; }
  /* Main Content */
  .main {
    padding: 20px 0 45px;
    /* decrease padding so that more content can fit on screen */ }
  .content-container,
  .sidebar {
    width: 100%;
    /* sidenav is now shown above the page content */
    margin-bottom: 30px; }
  .typography h1 {
    /* decrease size of page heading due to smaller screen */
    font-size: 30px;
    line-height: 35px;
    margin-bottom: 15px;
    padding-bottom: 10px; }
  .typography p {
    font-size: 14px;
    line-height: 23px; }
  p.intro {
    font-size: 19px;
    line-height: 27px; }
  .main .inner {
    padding: 0 22px; }
  /* Secondry Nav */
  .secondary li a {
    line-height: 24px; }
  .secondary li .arrow {
    line-height: 26px; }
  /* Footer */
  .footer .right {
    float: left;
    width: 100%; } }

/* Print Styles */
/* Based on HTML5 boilerplate print styles */
@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  /*
     * Don't show links for images, or javascript/internal links
     */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  /* Simple theme custom print styles */
  .header,
  .footer,
  .nav-open-button,
  .search-bar,
  .search-dropdown-icon,
  nav.primary {
    display: none; } }

/* Custom Styles
----------------------------------------------- */
.entry-fee input.entry-fee {
  background: none;
  border: none;
  font-size: 20px;
  font-weight: bold;
  color: #00b800; }

/* GENERIC FORMS
----------------------------------------------- */
div.field {
  margin: 10px 0 15px; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/* Radio and Checkbox */
input.checkbox,
input.radio {
  float: left;
  width: 13px;
  height: 13px;
  margin-right: 6px;
  margin-top: 3px;
  padding: 0; }

.checkbox label.right,
.radio label.right {
  float: left; }

form {
  max-width: 500px;
  width: 50%;
  /* Messages */ }
  form label {
    margin-bottom: 5px; }
    form label.left {
      display: block;
      font-weight: bold; }
    form label.right {
      font-size: 12px;
      color: #888; }
  form input.text,
  form textarea,
  form select {
    width: 100%;
    max-width: 400px;
    padding: 6px 5px;
    font-size: 15px;
    background-color: #fff;
    border: 1px solid #dad9d9; }
  form input.text:focus,
  form textarea:focus,
  form select:focus {
    outline: none; }
  form input[disabled],
  form textarea[disabled] {
    background-color: #f7f7f7;
    border: 1px solid #dad9d9; }
  form textarea {
    resize: vertical; }
  form .message {
    background-color: #fef4ba;
    padding: 5px 10px;
    border: 1px solid #e8c805;
    border-radius: 3px; }
  form .good {
    background-color: #ecf9d0;
    border-color: #8fbe00; }
  form .bad,
  form .required,
  form .error {
    background-color: #f9d0d0;
    border-color: #cf0000;
    color: #b80000; }

/* ACTIONS */
.Actions {
  margin-bottom: 20px; }
  .Actions:after {
    color: #B94A48;
    display: inline-block;
    font-weight: normal;
    margin-top: 9px; }

a.btn,
button,
input[type="submit"],
input[type="reset"],
.Actions .action {
  background: #0055dd;
  color: #fff;
  display: inline-block;
  border-radius: 4px;
  padding: 6px 15px;
  margin-top: 10px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: none;
  font-size: 13px;
  margin-right: 10px;
  float: left; }
  a.btn:hover,
  button:hover,
  input[type="submit"]:hover,
  input[type="reset"]:hover,
  .Actions .action:hover {
    background: #0041aa; }

a.btn {
  line-height: 18px;
  margin-bottom: 10px; }
  a.btn:after {
    /* creates arrow in button */
    content: '\2192';
    padding-left: 10px; }

#MemberLoginForm_LoginForm .Actions:after {
  display: none; }

/* AREA SPECIFIC */
/* LOGIN and FORGOT PASSWORD */
#Remember {
  min-height: 20px; }

#ForgotPassword {
  clear: left; }

#MemberLoginForm_LostPasswordForm .Actions:after {
  display: none; }

/* USER DEFINED USER FORM MODULE STYLES
----------------------------------------------- */
/*Generic and mixed*/
.FormHeading {
  clear: both;
  padding-top: 15px; }

form .date .middleColumn input {
  /*background: transparent url(../images/icons/your_icon_here.png) no-repeat scroll 90px 5px;*/
  width: 114px; }

.Actions input.resetformaction,
.Actions input.action-minor {
  /* Clear button */
  float: left;
  background-color: #888; }

.Actions input.resetformaction:hover,
.Actions input.action-minor:hover {
  /* Clear button */
  background-color: #aaa; }

/* Labels */
.checkbox label.right {
  font-size: 13px;
  /* reset to default */
  color: #333;
  /* reset to default */ }

form .requiredField label.left:after {
  /* pseudo element adds an asterisk to a required fields label */
  color: #B94A48;
  content: "*";
  font-size: 14px;
  font-weight: normal;
  padding-left: 3px; }

/* Radio / Checkbox */
form .checkboxset ul,
form .optionset ul {
  margin: 0; }

form .checkboxset li,
form .optionset li {
  margin-bottom: 5px;
  list-style-type: none; }

form div.checkbox:after {
  /* clearfix */
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

form .checkbox .checkbox {
  clear: both; }

/* Messages */
span.message {
  margin: 10px 0;
  display: block;
  max-width: 390px;
  clear: left; }

div.holder-required {
  /* This class needs to be changed - is used for both input and div */
  /* background-color: #f9d0d0;
    border: 1px solid #cf0000;
    padding: 10px;
    margin-left: -11px; */ }

form input.holder-required {
  /* This class needs to be changed - is used for both input and div */
  border: 1px solid #cf0000; }

/* Error messages */
input:invalid,
textarea:invalid {
  border-radius: 1px;
  box-shadow: 0px 0px 5px red; }

.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid {
  background-color: #f0dddd; }

/* To test - potentially not needed? */
.ss-uploadfield-item-info button {
  margin-top: 4px !important;
  float: left; }

form .creditCardField input,
form input.currency,
form input.numeric {
  width: 50px; }

form #DMYDate-month,
form #DMYDate-day {
  width: 25px; }

/* Responsive form styles
----------------------------------------------- */
@media only screen and (max-width: 700px) {
  /* To test - potentially not needed? */
  .header form .middleColumn {
    float: none;
    width: 100% !important; }
  form label.left,
  #MemberLoginForm_LoginForm label {
    margin-bottom: 8px; } }

@media only screen and (max-width: 900px) {
  form {
    max-width: 100%; } }

/**
 * SLICK STUFF, OUT STUFF IS BELOW
 */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../webfonts/slick.eot");
  src: url("../webfonts/slick.eot?#iefix") format("embedded-opentype"), url("../webfonts/slick.woff") format("woff"), url("../webfonts/slick.ttf") format("truetype"), url("../webfonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

/**
 * OUR STUFF
 */
.carousel {
  margin-bottom: 20px; }

.typography .carousel-item__image,
.carousel-item__image {
  max-width: 100%;
  border: 0; }

.typography .carousel-item__caption,
.carousel-item__caption {
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  padding: 10px 20px;
  background: rgba(0, 0, 0, 0.75);
  color: white;
  margin: 0; }

.slick-slide {
  height: 0; }
  .slick-slide.slick-current {
    height: auto; }

.slick-next,
.slick-prev {
  z-index: 1; }
  .slick-next::before,
  .slick-prev::before {
    opacity: 1;
    font-size: 30px; }

.slick-next {
  right: 10px; }

.slick-prev {
  left: 10px; }

ul.slick-dots {
  margin: 0; }
