html, body {
  width: 100%;
  height: 100%; }

body {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 14px;
  background-color: black;
  color: #fff;
  -webkit-font-smoothing: antialiased; }

p, td {
  line-height: 1.4em;
  font-size: 16px; }

h2 {
  line-height: 1.4em;
  font-size: 21px;
  font-weight: 700; }

h3 {
  line-height: 1.4em;
  font-size: 19px;
  font-weight: 700; }

h4 {
  line-height: 1.4em;
  font-size: 17px;
  font-weight: 700; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Oswald", sans-serif;
  text-transform: uppercase; }

a {
  color: #fff;
  text-decoration: none;
  -webkit-transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -o-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out; }
  a:focus {
    outline: none; }

img.full-width-responsive {
  width: 100%;
  height: auto; }

.uppercase {
  text-transform: uppercase; }

.mfp-wrap.full-screen .mfp-container {
  padding: 0; }
  .mfp-wrap.full-screen .mfp-container .mfp-content {
    width: 100%;
    height: 100%; }

.consent-splash {
  background-color: #AD272A;
  background: url(https://presence.s3.amazonaws.com/caw/factory.png) no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 100%; }
  .consent-splash .wrap {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center; }
  .consent-splash .inner {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 1em; }
    .consent-splash .inner .logo {
      width: 300px;
      margin: 0 auto; }
      @media only screen and (max-width: 600px) {
        .consent-splash .inner .logo {
          width: 200px; } }
      .consent-splash .inner .logo img {
        width: 100%;
        height: auto; }
    .consent-splash .inner h2 {
      text-transform: uppercase;
      font-size: 30px; }
      @media only screen and (max-width: 600px) {
        .consent-splash .inner h2 {
          font-size: 20px; } }
    .consent-splash .inner .buttons {
      display: flex;
      justify-content: center;
      align-items: center; }
      .consent-splash .inner .buttons a {
        display: block;
        margin: 5px;
        background-color: #54FDFD;
        color: #000;
        text-decoration: none;
        font-size: 15px;
        font-weight: 600;
        padding: 0.6em 1em;
        text-transform: uppercase; }
        .consent-splash .inner .buttons a.nah {
          background-color: white; }
        .consent-splash .inner .buttons a:hover {
          background-color: #332F2F;
          color: white; }

footer {
  width: 1200px;
  margin: 100px auto 50px auto;
  text-align: center; }
  @media only screen and (max-width: 1200px) {
    footer {
      width: auto;
      margin-top: 50px; } }
  footer .to-the-workers img {
    width: 300px;
    height: auto; }
  footer .view-our-beers img {
    width: 250px;
    height: auto; }
  footer p span {
    display: inline-block;
    margin: 0 5px; }
    @media only screen and (max-width: 600px) {
      footer p span {
        display: block;
        margin: 5px 0; } }
  footer .contact-details {
    font-weight: 700;
    font-size: 13px; }
  footer .social-icons {
    display: flex;
    justify-content: center;
    align-items: center; }
    footer .social-icons div {
      margin: 5px;
      font-size: 15px;
      line-height: 15px; }
      footer .social-icons div a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 30px;
        height: 30px;
        border: 2px solid white;
        border-radius: 30px;
        text-decoration: none; }
        footer .social-icons div a:hover {
          border-color: #B11D21;
          color: #B11D21; }

.copyright p {
  font-size: 11px;
  padding: 0 20px 100px 20px;
  color: #aaa;
  text-align: center; }
  .copyright p a {
    text-decoration: underline; }

/*
 * Made by Erik Terwan
 * 24th of November 2015
 * MIT License
 *
 *
 * If you are thinking of using this in
 * production code, beware of the browser
 * prefixes.
 */
.mobile_nav {
  display: none;
  margin: 0;
  padding: 0;
  /* make it look decent enough */
  background: transparent;
  color: #cdcdcd;
  z-index: 100;
  /*
     * Just a quick hamburger
     */
  /* 
     * Transform all the slices of hamburger
     * into a crossmark.
     */
  /*
     * But let's hide the middle one.
     */
  /*
     * Ohyeah and the last one should go the other direction
     */
  /*
     * Make this absolute positioned
     * at the top left of the screen
     */
  /*
     * And let's slide it in from the left
     */ }
  @media only screen and (max-width: 600px) {
    .mobile_nav {
      display: block; } }
  .mobile_nav a {
    text-decoration: none;
    color: #fff;
    transition: color 0.3s ease; }
  .mobile_nav #menuToggle {
    display: block;
    width: 75%;
    position: relative;
    top: 25px;
    left: 25px;
    z-index: 100;
    -webkit-user-select: none;
    user-select: none; }
  .mobile_nav #menuToggle input {
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -7px;
    left: -5px;
    cursor: pointer;
    opacity: 0;
    /* hide this */
    z-index: 2;
    /* and place it over the hamburger */
    -webkit-touch-callout: none; }
  .mobile_nav #menuToggle span {
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;
    background: #fff;
    border-radius: 3px;
    z-index: 1;
    transform-origin: 4px 0px;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease; }
  .mobile_nav #menuToggle span:first-child {
    transform-origin: 0% 0%; }
  .mobile_nav #menuToggle span:nth-last-child(2) {
    transform-origin: 0% 100%; }
  .mobile_nav #menuToggle input:checked ~ span {
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
    background: #fff; }
  .mobile_nav #menuToggle input:checked ~ span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2); }
  .mobile_nav #menuToggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(0, -1px); }
  .mobile_nav #menu {
    position: absolute;
    /*
        width: 100%;
        */
    margin: -100px 0 0 -50px;
    padding: 115px 40px 25px 48px;
    background-color: rgba(177, 29, 33, 0.8);
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    /* to stop flickering of text in safari */
    transform-origin: 0% 0%;
    transform: translate(-100%, 0);
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1); }
  .mobile_nav #menu li {
    padding: 0.5em 0;
    font-size: 17px;
    font-weight: 700; }
  .mobile_nav #menuToggle input:checked ~ ul {
    transform: none; }

@media only screen and (max-width: 600px) {
  nav.header {
    display: none; } }

nav.header ul {
  margin: 10px 0 60px 0;
  padding: 0;
  text-align: center; }
  nav.header ul li {
    display: inline-block;
    margin: 5px 0; }
    nav.header ul li:not(:first-child):before {
      content: " | "; }
    nav.header ul li a {
      display: inline-block;
      text-decoration: none;
      text-transform: uppercase;
      font-weight: 800;
      font-size: 15px;
      padding: 0 8px 0 4px; }
      nav.header ul li a:hover {
        color: #B11D21; }
    nav.header ul li.current a {
      color: #B11D21; }

.home nav.header ul li.parent a {
  color: #fff; }
  .home nav.header ul li.parent a:hover {
    color: #B11D21; }

.site-wrap {
  width: 1200px;
  margin: 0 auto; }
  @media only screen and (max-width: 1200px) {
    .site-wrap {
      width: auto; } }

header {
  text-align: center;
  position: relative;
  height: 560px; }
  @media only screen and (max-width: 1200px) {
    header {
      height: 400px; } }
  @media only screen and (max-width: 600px) {
    header {
      height: 300px; } }
  header .logo {
    position: absolute;
    top: 20px;
    width: 100%;
    z-index: 50; }
    @media only screen and (max-width: 600px) {
      header .logo {
        top: -10px; } }
    header .logo img {
      width: 200px;
      height: auto; }
      @media only screen and (max-width: 600px) {
        header .logo img {
          width: 125px; } }
  header .inner {
    position: absolute;
    top: 150px;
    width: 100%;
    height: 400px;
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (max-width: 1200px) {
      header .inner {
        height: 250px; } }
    @media only screen and (max-width: 600px) {
      header .inner {
        height: 200px; } }
    header .inner h3 {
      text-transform: uppercase;
      font-weight: 600;
      font-size: 40px;
      margin: 0;
      text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7); }
      @media only screen and (max-width: 600px) {
        header .inner h3 {
          font-size: 30px; } }
  header .header-carousel-outer {
    position: absolute;
    top: 150px;
    width: 100%;
    height: 400px; }
    @media only screen and (max-width: 1200px) {
      header .header-carousel-outer {
        height: 250px; } }
    @media only screen and (max-width: 600px) {
      header .header-carousel-outer {
        height: 200px;
        top: 80px; } }
    header .header-carousel-outer .header-carousel-item {
      width: 100%;
      height: 400px;
      background-size: cover;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media only screen and (max-width: 1200px) {
        header .header-carousel-outer .header-carousel-item {
          height: 250px; } }
      @media only screen and (max-width: 600px) {
        header .header-carousel-outer .header-carousel-item {
          height: 200px; } }
      header .header-carousel-outer .header-carousel-item h3 {
        text-transform: uppercase;
        font-weight: 600;
        font-size: 40px;
        margin: 0;
        text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7); }
        @media only screen and (max-width: 600px) {
          header .header-carousel-outer .header-carousel-item h3 {
            font-size: 30px; } }

@media only screen and (max-width: 600px) {
  body.beers.cask header, body.beers.bottle header {
    height: 400px; } }

body header .inner {
  background: url(https://presence.s3.amazonaws.com/caw/header-image.jpg) no-repeat center center;
  background-size: cover; }

body.beers header .inner, body.beers.cask header .inner {
  background: url(https://presence.s3.amazonaws.com/caw/barrels.jpg) no-repeat center center;
  background-size: cover; }

body.beers.bottles header .inner, body.beers.bottle header .inner {
  background: url(https://presence.s3.amazonaws.com/caw/bottles.jpg) no-repeat center center;
  background-size: cover; }

/*
body.workers header .inner { 
	background: url(https://presence.s3.amazonaws.com/caw/workers.jpg) no-repeat center center;
	background-size: cover;
}
*/
.template-body {
  text-align: center;
  padding: 0 2em; }
  .template-body .template-body-title {
    display: none; }

body.about .template-body {
  padding: 0 16em; }
  @media only screen and (max-width: 800px) {
    body.about .template-body {
      padding: 0 2em; } }

body.privacy .template-body {
  text-align: left; }

.beers-list .beer {
  padding: 15px; }
  .beers-list .beer img {
    width: 100%;
    height: auto; }

.beers-list .slick-next, .beers-list .slick-prev {
  color: white; }
  .beers-list .slick-next i.fa, .beers-list .slick-prev i.fa {
    font-size: 50px; }
    @media only screen and (max-width: 800px) {
      .beers-list .slick-next i.fa, .beers-list .slick-prev i.fa {
        font-size: 25px; } }
  .beers-list .slick-next:hover, .beers-list .slick-prev:hover {
    color: #333; }
  .beers-list .slick-next:before, .beers-list .slick-prev:before {
    display: none; }
  .beers-list .slick-next.slick-disabled, .beers-list .slick-prev.slick-disabled {
    color: #333; }

.beer-categories ul {
  margin: 0;
  padding: 0;
  text-align: center; }
  .beer-categories ul li {
    display: inline-block;
    margin: 5px 10px; }
    .beer-categories ul li a {
      text-decoration: none;
      text-transform: uppercase;
      font-weight: 700;
      font-size: 21px;
      font-family: "Oswald", sans-serif; }
      .beer-categories ul li a:hover {
        color: #B11D21; }
      .beer-categories ul li a.current {
        color: #B11D21; }

.beer-view {
  display: flex;
  margin: 0 1%;
  justify-content: center;
  align-items: center; }
  @media only screen and (max-width: 800px) {
    .beer-view {
      flex-direction: column; } }
  .beer-view .clip {
    width: 250px;
    flex: none; }
    .beer-view .clip img {
      width: 250px;
      height: auto; }
  .beer-view .table {
    margin: 20px;
    width: 1000px; }
    @media only screen and (max-width: 800px) {
      .beer-view .table {
        width: 100%; } }
    .beer-view .table table {
      width: 100%;
      border-collapse: collapse; }
      .beer-view .table table td {
        border: 2px solid #E5B447;
        text-align: left;
        padding: 1em;
        vertical-align: top;
        font-size: 14px; }
        .beer-view .table table td.title {
          white-space: nowrap;
          font-weight: 700; }
    .beer-view .table.bitter table td {
      border-color: #925946; }
    .beer-view .table.darks table td {
      border-color: #3e5878; }
    .beer-view .table.red_dust table td {
      border-color: #b8292f; }
    .beer-view .table.stout table td {
      border-color: #5f3268; }
    .beer-view .table.straw table td {
      border-color: #e6b63a; }
    .beer-view .table.golden table td {
      border-color: #e3961e; }
    .beer-view .table.amber table td {
      border-color: #e95b0d; }
  .beer-view .available h4 {
    text-transform: uppercase;
    font-weight: 700; }
  .beer-view .available .icons {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media only screen and (max-width: 800px) {
      .beer-view .available .icons {
        width: 100px; } }
    .beer-view .available .icons img {
      width: 100%;
      height: auto;
      opacity: 0.3; }
      .beer-view .available .icons img.active {
        opacity: 1; }
  .beer-view .previous-beer, .beer-view .next-beer {
    font-size: 60px; }
    @media only screen and (max-width: 800px) {
      .beer-view .previous-beer, .beer-view .next-beer {
        display: none; } }
    .beer-view .previous-beer a, .beer-view .next-beer a {
      color: #666; }
      .beer-view .previous-beer a:hover, .beer-view .next-beer a:hover {
        color: #fff; }
    .beer-view .previous-beer span, .beer-view .next-beer span {
      color: #333; }
  .beer-view .previous-beer {
    margin-right: 10px; }
  .beer-view .next-beer {
    margin-left: 10px; }

.mobile-beer-nav-options {
  display: none; }
  @media only screen and (max-width: 800px) {
    .mobile-beer-nav-options {
      display: flex;
      align-items: center;
      justify-content: center; }
      .mobile-beer-nav-options .previous-beer, .mobile-beer-nav-options .next-beer {
        font-size: 60px; }
        .mobile-beer-nav-options .previous-beer a, .mobile-beer-nav-options .next-beer a {
          color: #666; }
          .mobile-beer-nav-options .previous-beer a:hover, .mobile-beer-nav-options .next-beer a:hover {
            color: #fff; }
        .mobile-beer-nav-options .previous-beer span, .mobile-beer-nav-options .next-beer span {
          color: #333; }
      .mobile-beer-nav-options .previous-beer {
        margin-right: 20px; }
      .mobile-beer-nav-options .next-beer {
        margin-left: 20px; } }

#map iframe {
  width: 100%; }

.workers-list {
  display: flex;
  justify-content: center;
  align-items: flex-start; }
  @media only screen and (max-width: 600px) {
    .workers-list {
      justify-content: space-between; } }

.worker {
  width: 150px;
  margin: 0 25px; }
  @media only screen and (max-width: 600px) {
    .worker {
      margin: 0 15px; } }
  .worker a {
    text-decoration: none;
    line-height: 150%; }
  .worker .images {
    display: none; }
  .worker img {
    width: 100%;
    height: auto; }
  .worker span {
    display: block; }
    @media only screen and (max-width: 600px) {
      .worker span {
        font-size: 12px; } }
    .worker span.name {
      font-weight: 600;
      font-size: 17px; }
      @media only screen and (max-width: 600px) {
        .worker span.name {
          font-size: 14px; } }
    .worker span.phone, .worker span.email {
      display: none; }
  .worker a:hover .role {
    display: none; }
  .worker a:hover .phone, .worker a:hover .email {
    display: block; }
  .worker.rufus a:hover {
    color: #B22F37; }
  .worker.jeff a:hover {
    color: #8F594A; }
  .worker.lynn a:hover {
    color: #E2B34F; }
  .worker.liam a:hover {
    color: #E76839; }

body.links .template-body ul {
  list-style: none;
  font-size: 21px;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
  padding: 0; }
  @media only screen and (max-width: 800px) {
    body.links .template-body ul {
      font-size: 15px; } }
  body.links .template-body ul a {
    text-decoration: none; }
    body.links .template-body ul a:hover {
      color: RGBA(177, 29, 33, 1); }

.protip-skin-default--scheme-pro.protip-container.protip-show {
  background-color: RGBA(177, 29, 33, 1); }
  .protip-skin-default--scheme-pro.protip-container.protip-show[data-pt-position="right"] .protip-arrow {
    border-right-color: RGBA(177, 29, 33, 1); }
  .protip-skin-default--scheme-pro.protip-container.protip-show[data-pt-position="left"] .protip-arrow {
    border-left-color: RGBA(177, 29, 33, 1); }
  .protip-skin-default--scheme-pro.protip-container.protip-show[data-pt-position="top"] .protip-arrow {
    border-top-color: RGBA(177, 29, 33, 1); }
  .protip-skin-default--scheme-pro.protip-container.protip-show[data-pt-position="bottom"] .protip-arrow {
    border-bottom-color: RGBA(177, 29, 33, 1); }

.home .template-body h1 {
  font-size: 4em;
  padding: 0 1em; }
  @media only screen and (max-width: 800px) {
    .home .template-body h1 {
      font-size: 3em; } }
  @media only screen and (max-width: 400px) {
    .home .template-body h1 {
      font-size: 2em; } }

.brewery-image {
  text-align: center;
  margin: 3em auto 0 auto;
  width: 60%; }
  .brewery-image img {
    width: 100%;
    height: auto; }

