/****************
*** DEFAULTS
*****************/
* { margin: 0px; padding: 0px; }

html { height: 100%; box-sizing: border-box; }
body {
  position: relative;
  margin: 0;
  padding-bottom: 6 rem;
  min-height: 100%;
}
/* HEADINGS DEFAULT */
h1, h2, h3, h4, h5, h6 { color: #444; }
a { text-decoration: none; }
ul, ol { margin-left: 40px; }
hr { margin: 10px 0px; opacity: .25; }

/* FORM DEFAULTS */
form h2 {
	margin: 25px auto;
	text-align: center;
}
/*
form input {
	width: 100%;
	display: block;
	padding: 13px 13px;
	font-size: 1em;
	margin: 5px auto 10px;
	border-radius: 3px;
	box-sizing : border-box;
	background: transparent;
	border: 1px solid #3E606F;
}
*/
form input:focus {
	outline: none;
}
/* BUTTON DEFAULT */

.fielderror
    {
    color: red;
    }

.hiddendiv
    {
    background-color: #FEE2BC;
    display: none;
    position: relative;
    border-style: solid;
    border-width: thin;
    }

.btn
    {
	color: white;
	background: #4E6166;
	text-align: center;
	border: none;
	border-radius: 5px;
	display: block;
	letter-spacing: .1em;
	margin: 10px 0px;
	padding: 13px 20px;
	text-decoration: none;
    }
.container
    {
	width: 70%;
	margin: 0px auto;
    }
    
.leftbar
    {
    width: 15%;
    margin: 0px auto;
    float: left;
    position: static;
    }

.leftbar .menu
    {
    font-size: medium;
    border: none;
    width:auto;
    }
.leftbar .menu a
    {
    color: black;
    }
.leftbar .menu a:hover
    {
    color: black;
    }
.leftbar .menu ul
    {
    z-index: 100;
    opacity: 1.0;
    }

.rightbar
    {
    width: 15%;
    margin: 0px auto;
    float: right;
    }
.rightbar .logo
    {
    display: block;
    margin-left: auto;
    margin-right: auto;
    }
.rightbar label
    {
    font-family: Verdana, Arial, sans-serif;
    font-size: small;
    }
.rightbar legend
    {
    font-family: Verdana, Arial, sans-serif;
    font-size: small;
    }
.rightbar p
    {
    font-family: Verdana, Arial, sans-serif;
    font-size: small;
    }
.closeicon
    {
    float: right;
    cursor: pointer;
    }
.loginhelp
    {
    margin-top: 2px;
    margin-bottom: 2px;
    cursor: pointer;
    }
.beerunavailable
    {
    text-decoration-line: line-through;
    text-decoration-thickness: 2px;
    }
.soldout
    {
    font-style: italic;
    }
.access
    {
    margin-top: 2px;
    margin-bottom: 2px;
    cursor: pointer;
    }
.content .help
    {
    border: 1px solid black;
    font-size: small;
    background-color: #FEE2BC;
    display: none;
    }
    
.content .help .closeicon
    {
    margin: 0px auto;
    float: right;
    }

.centredtext
    {
    text-align: center;
    }
.largecentredtext
    {
    text-align: center;
    font-size: xx-large;
    font-weight: bold;
    }
.smalltext
    {
    font-size: small;
    }
.smallnormaltext
    {
    font-size: small;
    font-weight: normal;        
    }
.smallcentredtext
    {
    text-align: center;
    font-size: small;
    }
.autoscroll
    {width:100%; 
    height:600px; 
    overflow:auto;
    }
.largeboldtext
    {
    font-size: large;
    font-weight: bold;
    }
.largeboldtextspaced
    {
    font-size: large;
    font-weight: bold;
    margin-bottom: 10px;
    }
.largetext
    {
    font-size: large;
    }
.boldtext
    {
    font-weight: bold;
    }
.smallboldtext
    {
    font-size: small;
    font-weight: bold;
    }
.boldcentredtext
    {
    text-align: center;
    font-weight: bold;
    }

.hyperlink
    {
    color: blue;
    cursor: pointer;
    }

.camraevent
    {
    color: red;
    }

.publicevent
    {
    color: black;
    }

.fixedcontent .home .additionalservicesicons
    {
    height: 50px;
    line-height: 50px;
    text-align: center;
    }
        
.fixedcontent .home .additionalservicesicons .verticalcentredicon
    {
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
    }

.fixedcontent .home .additionalservicesicons .verticalcentredtext
    {
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
    font-size: large;
    font-weight: bold;
    margin-right: 5px;
    }

.boldalignedtext
    {
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    }

.ticketheader
    {
    font-weight: bold;
    }

.sales0
    {
    font-weight: bold;
    }

.sales1
    {
    font-weight: bold;
    }

.sales2
    {
    font-weight: bold;
    }

.sales3
    {
    font-weight: bold;
    }

.sales4
    {
    font-weight: bold;
    }

.sales5
    {
    font-weight: bold;
    }

.popupLink
    {
    border: 5px;
    }
.mandatoryfield
    {
    background-color: bisque
    }
.errormessage
    {
    color: #FF0000;
    font-size: x-large;
    font-weight: bold;
    }
/* NAVBAR */
.navbar {
	margin: 0 auto;
    overflow: hidden;
	background-color: #3E606F;
    border-radius: 0px 0px 6px 6px;
}
.navbar ul {
    list-style-type: none;
    float: right;
}
.navbar ul li {
    float: left;
}
.navbar ul li a {
    display: block;
    color: white;
    text-align: center;
    padding: 20px 28px;
    text-decoration: none;
}
.navbar ul li a:hover {
	color: #B9E6F2;
    background-color: #334F5C;
}

/* LOGO */
.navbar .logo_div {
	float: left; 
	padding-top: 5px;
	padding-left: 40px;
}
.navbar .logo_div h1 {
	color: #B9E6F2;
	font-size: 3em;
	letter-spacing: 5px;
	font-weight: 100;
	/*font-family: 'Tangerine', cursive;*/
}
.banner .logo_div {
    text-align: center;
}

.banner .logo_div h1 {
    font-size: xx-large;
    color: blue;
    display: inline-block;
    /*font-family: 'Tangerine', cursive;*/
}

.banner h1
    {
    font-family: Verdana, Arial, sans-serif;
    }
/* FOOTER */
.footer {
  position: relative;
  right: 0;
  bottom: 0;
  left: 0;
  color: white;
  background-color: #73707D;
  text-align: center;
  width: 80%;
  margin: 20px auto 0px;
  padding: 20px 0px;
}

.footer .icon
    {
    float:right;
    margin-left:10px;
    vertical-align: top;
    }

.footer .privacy
    {
    text-align: left;
    vertical-align: middle;
    }

/* BANNER: Welcome message; */
.banner {
    height: 287px;
    color: white;
    border-radius: 5px;
    /*background-image: url('../image/SummerOfPub.png');*/
    background-size: 100% 100%;
    text-align: center;
}
.banner .welcome_msg {
    width: 45%;
    float: left;
    padding: 20px;
}
.banner .welcome_msg h1 {
    color: #B9E6F2;
    margin: 25px 0px;
    font-size: 2.4em;
    font-family: Verdana, Arial, sans-serif;
}
.banner .welcome_msg p {
    color: white;
    font-size: 1.5em;
    line-height: 1.8em;
    font-family: Verdana, Arial, sans-serif;
}
.banner .welcome_msg p span {
    font-size: .81em; 
    color: #3E606F;
}
.banner .welcome_msg a {
    width: 30%;
    margin: 20px 0px;
    padding: 12px 15px;
    font-size: 1.2em;
    text-decoration: none;
}
.banner .welcome_msg a:hover {
    background: #374447;
}
.banner h1 {
    font-size: 3em;
    color: blue;
}

/* CONTENT */
.content {
    position: relative;
    margin: 5px auto;
    border-radius: 5px;
    /*min-height: 400px;*/
    min-height:400px; 
    /*overflow:auto;*/
}

.fixedcontent {
    position: relative;
    margin: 5px auto;
    border-radius: 5px;
}

.fixedcontent .buttons
    {
    margin-top: 20px;
    text-align: center;
    font-size: larger;
    }

.fixedcontent .empty
    {
    margin-top: 20px;
    text-align: center;
    font-size: larger;
    }

.mincontent {
    margin: 5px auto;
    border-radius: 5px;
    overflow:auto;
}

.content:after {
    content: "";
    display: block;
    clear: both;
}
.content .content-title
    {
    margin: 10px 0px;
    color: #374447;
    font-family: Verdana, Arial, sans-serif;
    text-align: center;
    }
.fixedcontent .content-title
    {
    margin: 10px 0px;
    color: #374447;
    font-family: Verdana, Arial, sans-serif;
    text-align: center;
    }
.content .home
    {
    font-family: Verdana, Arial, sans-serif;
    font-size: 1.1em;    
    margin: 9px;
    min-height: 50px;
    border: 1px solid #b3b3b3;
    position: relative;
    }
.content .home-no-border
    {
    font-family: Verdana, Arial, sans-serif;
    font-size: 1.1em;    
    margin: 9px;
    min-height: 50px;
    position: relative;
    }
.content .home p
    {
    margin-bottom: 10px;;
    }
.content .post {
    /*width: 335px;*/
    width: 670px;
    margin: 9px;
    margin-left: 0px;
    min-height: 100px;
    float: left;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    position: relative;
}
.content .post .image
    {
    right: 0px ;
    vertical-align: top;
    position: absolute;
    display: inline-block;
    }
.content .map
    {
    float:right;
    margin-left: 5px;
    vertical-align: top;
    width: 400px;
    height: 390px;
    }
.content .header .caption
    {
    font-size: small;
    font-weight: normal;
    }
.content .header .icon
    {
    vertical-align: middle;
    }

.content .post .category {
    margin-top: 0px;
    padding: 3px 8px;
    color: #374447;
    background: white;
    display: inline-block;
    border-radius: 2px;
    border: 1px solid #374447;
    box-shadow: 3px 2px 2px;
    position: absolute;
    left: 5px; top: 5px;
    z-index: 3;
}
.content .post .category:hover {
    box-shadow: 3px 2px 2px;
    color: white;
    background: #374447;
    transition: .4s;
    opacity: 1;
}
.content .post .post_image {
    height: 260px;
    width: 100%;
    background-size: 100%;
}
.content .post .post_image {
    width: 100%;
    height: 260px;
}
.content .post .post_info {
    height: 100%;
    padding: 0px 5px;
    font-weight: 200;
    /*-family: 'Noto Serif', serif;*/
}
.content .post .post_info {
    color: #222;
}
.content .post .post_info span {
    color: #A6A6A6;
    font-style: italic;
}
.content .post .post_info span.read_more {
    position: absolute;
    right: 5px; bottom: 5px;
}

/* * * * * * * * *
* SINGLE PAGE 
* * * * * * * * */
.content .post-wrapper {
    width: 70%;
    float: left;
    min-height: 250px;
}
/* Styles for diary */
.content .diary
    {
    margin: 9px;
    float: left;
    position: relative;
    border: 1px solid #b3b3b3;
    }

.content .diary .diaryheader
    {
    margin: 9px;
    }

.content .diary .diaryentries
    {
    overflow: auto;
    height: 200px;
    }

.content .diary .diaryentries .diaryentry {
    width: 90% !important;
    margin-top: 5px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
}
.content .diary .diaryentries .diaryentry .header
    {
    font-size: large;
    font-weight: bold;
    vertical-align: top;
    }

.content .diary .diaryentries .diaryentry .icon
    {
    float:right;
    margin-right:10px;
    vertical-align: top;
    }
    
.content .empty
    {
    margin-top: 20px;
    text-align: center;
    font-size: larger;
    }

.content .headlines
    {
    margin: 9px;
    float: left;
    position: relative;
    height: 200px;
    width:90% !important;
    }

.content .headlines .allheadlines
    {
    overflow: auto;
    }

.content .headlines .allheadlines .detail
    {
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    font-size: medium;
    min-height: 100px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    overflow: auto;
    }
.content .headlines .allheadlines .detail .header
    {
    font-size: large;
    font-weight: bold;    
    }
.content .headlines .allheadlines .detail .photo
    {
    float: right;
    display: inline-block;
    text-align: center;
    }
.content .headlines .allheadlines .detail .pubphoto
    {
    float: right;
    display: inline-block;
    text-align: left;
    }

.content .news
    {
    margin: 9px;
    float: left;
    position: relative;
    height: 400px;
    width:90% !important;
    }

.content .news .allnews
    {
    overflow: auto;
    height: 400px;
    }

.content .news .allnews .detail
    {
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    font-size: medium;
    min-height: 100px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    overflow: auto;
    }
.content .news .allnews .detail .header
    {
    font-size: large;
    font-weight: bold;    
    }
.content .news .allnews .detail .photo
    {
    float: right;
    display: inline-block;
    text-align: center;
    }
.content .news .allnews .detail .pubphoto
    {
    float: right;
    display: inline-block;
    text-align: left;
    }

.content .news .closed
    {
    overflow: auto;
    height: 400px;
    }

.content .news .closed .closedheader
    {
    text-align: center;
    font-size: large;
    font-weight: bold;    
    }
.content .news .closed .closeddetail
    {
    display: grid;
    grid-template-columns: 400px 120px auto;
    }

.content .campaigns
    {
    margin: 9px;
    float: left;
    position: relative;
    min-height: 120px;
    overflow: auto;
    }

.content .campaigns .campaign
    {
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    font-size: medium;
    min-height: 100px;
    /*width: 1150px;*/
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    display: grid;
    overflow: auto;
    }
.content .campaigns .campaign .detail
    {
    grid-row: 1;
    grid-column: 1 / span 2;
    /*display: block;*/
    }
.content .campaigns .campaign .photo
    {
    /*float: right;*/
    grid-row: 2;
    grid-column: 1;
    margin-left: 5px;
    vertical-align: middle;
    text-align: center;
    }
.content .campaigns .campaign .petition
    {
    /*float: right;*/
    grid-row: 2;
    grid-column: 2;
    width: 300px;
    margin-left: 5px;
    overflow: auto;
    }
.content .campaigns .campaign .petition .head
    {
    text-align: left;
    font-size: medium;
    font-weight: normal;
    }
.content .campaigns .campaign .petition .smap
    {
    display: inline-block;
    width: 300px;
    height: 300px;
    }
.content .campaigns .campaign .petition .foot
    {
    text-align: left;
    font-size: medium;
    font-weight: normal;
    }
.content .campaigns .campaign .email
    {
    margin-top: 20px;
    font-size: medium;
    font-weight: normal;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    bottom: 0;
    }
.content .campaignsendmail
    {
    margin: 9px;
    float: left;
    position: relative;
    min-height: 120px;
    width: 1000px;;
    overflow: auto;
    }
.content .campaignsendmail .campaignsendmaildetail
    {
    font-size: medium;
    font-weight: normal;
    margin-top: 5px;
    }
.content .campaignsendmail .campaignsendmaildetail .caption
    {
    font-size: medium;
    font-weight: normal;
    width: 300px;
    vertical-align: top;
    display: inline-block;
    }
.content .campaignsendmail .campaignsendmaildetail .field
    {
    font-size: medium;
    font-weight: normal;
    width: 500px;
    display: inline-block;
    }
.content .aboutus
    {
    margin: 9px;
    float: left;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    position: relative;
}
.content .aboutus .header
    {
    font-size: medium;
    font-weight: normal;
    vertical-align: top;
    margin-bottom: 10px;
    }

.content .aboutus .icon
    {
    float:right;
    margin-right:10px;
    vertical-align: top;
    }
.content .aboutus .map
    {
    float:right;
    margin-right:10px;
    vertical-align: top;
    width: 490px;
    height: 560px;
    }
.content .aboutus .postholder
    {
    font-size: medium;
    margin-bottom: 5px;
    }
.content .aboutus .postholder .email
    {
    vertical-align: middle;
    }
.content .pubguide
    {
    /*height: 50px;*/
    min-height: 50px;
    font-weight: bold;
    vertical-align: top;
    }
.content .pubguide .button
    {
    float:right;
    margin-right: 10px;
    }
.content .pubguide .checkbox
    {
    vertical-align: middle;
    }
.content .pubguide .caption
    {
    font-size: medium;
    font-weight: normal;
    }
    
.content .header .caption
    {
    font-size: small;
    font-weight: normal;
    }
    
.content .pubguide .normalpub
    {
    color: #000000;
    font-size: small;
    font-weight: normal;
    }
.content .pubguide .localepub
    {
    color: #16A543;
    font-size: small;
    font-weight: normal;
    }
.content .pubguide .closedpub
    {
    color: #B66923;
    font-size: small;
    font-weight: normal;
    }
.content .pubguide .kegpub
    {
    color: #FF0000;
    font-size: small;
    font-weight: normal;
    }
.content .pubguide .unknownpub
    {
    color: #006699;
    font-size: small;
    font-weight: normal;
    }

.content .pubguidedetails
    {
    border: 1px solid black;
    min-height: 320px;
    }
.content .linkicon
    {
    vertical-align: middle;
    }
.content .pubguidedetails .pubname
    {
    font-size: large;
    font-weight: bold;
    }
.content .pubguidedetails .caption
    {
    font-weight: bold;
    }
.content .pubguidedetails .photo
    {
    width: 320px;
    float:right;
    }
.content .pubguidedetails .photo .thumbnail
    {
    height: 100px;
    overflow: auto;
    }
.content .pubguidedetails .facilities
    {
    width: 320px;
    float:right;
    }
.content .pubguidedetails .facilities .allfacilities
    {
    background-color: #FEE2BC;
    position: absolute;
    border-style: solid;
    border-width: thin;    ;
    display: none;
    }
.content .pubguidedetails .facilities .closefacilities
    {
    float: right;
    }
.content .pubguidedetails .facilities .facilitycomment
    {
    font-size: small;
    font-weight: normal;
    }
.content .pubguidedetails .facilities .facilityicon
    {
    vertical-align: middle;
    }

.content .pubguidedetails .feedbackform
    {
    background-color: #FEE2BC;
    display: none;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    }
.content .pubguidedetails .feedbackform textarea
    {
    vertical-align: text-top;
    }
.content .gallery
    {
    overflow-x: scroll; 
    overflow-y: hidden; 
    white-space: nowrap;
    background-color: black;
    }
.content .gallery .gallerythumbnail
    {
    display: inline-block;
    border-width: medium;
    vertical-align: middle;
    }
.content .currentphoto
    {
    position: relative;
    text-align: center;
    display: inline;
    margin: auto;
    }

.content .currentphoto .galleryphoto
    {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
    }

.content .currentphoto .galleryphoto .fullimage
    {
    position: relative;
    top: 0px;
    left: 0px;
    width: auto;
    display: inline-block;
    }
.content .currentphoto .galleryphoto .fullimage .scrollleft
    {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    margin-top: -22px;
    padding: 16px;
    color: red;
    font-weight: bold;
    font-size: 18px;
    }

.content .currentphoto .galleryphoto .fullimage .scrollright
    {
    cursor: pointer;
    position: absolute;
    top: 50%;
    right: 0px;
    width: auto;
    margin-top: -22px;
    padding: 16px;
    color: red;
    font-weight: bold;
    font-size: 18px;
    }
/* Next & previous buttons */
.content .currentphoto .galleryphoto .fullimage .prev{
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  color: red;
}

/* Position the "next button" to the right */
.content .currentphoto .galleryphoto .fullimage .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  color: red;
  right: 0px;
}

.fixedcontent .ciderperry
    {
    position: relative;
    min-height: 400px;
    /*overflow: auto;*/
    }
.fixedcontent .ciderperry .logo
    {
    float:right;
    margin-right:10px;
    vertical-align: top;
    }

.fixedcontent .ciderperry .pub
    {
    height: 400px;
    overflow: auto;
    }
.fixedcontent .ciderperry .pub .details
    {
    vertical-align: top;
    float: left;
    display: block;
    }
.fixedcontent .ciderperry .pub .details .caption
    {
    font-weight: bold;
    }
.fixedcontent .ciderperry .pub .details .name
    {
    font-size: medium;
    font-weight: bold;
    }

.fixedcontent .ciderperry .pub .icon
    {
    clear: both;
    vertical-align: middle;
    float: left;
    display: block;
    }
.fixedcontent .ciderperry .pub .icon .link
    {
    vertical-align: top;
    }
.fixedcontent .ciderperry .map
    {
    float:right;
    margin-left: 5px;
    vertical-align: top;
    width: 400px;
    height: 390px;
    }

.fixedcontent .ciderperry .icon
    {
    float: right;
    margin-left: 10px;
    }

.fixedcontent .goodbeerguide
    {
    position: relative;
    height: 200px;
    overflow: auto;
    }

.fixedcontent .locale
    {
    position: relative;
    min-height: 400px;
    /*overflow: auto;*/
    }
.fixedcontent .locale .logo
    {
    float:right;
    margin-right:10px;
    vertical-align: top;
    }

.fixedcontent .locale .pub
    {
    height: 400px;
    overflow: auto;
    }
.fixedcontent .locale .pub .details
    {
    vertical-align: top;
    float: left;
    display: block;
    }
.fixedcontent .locale .pub .details .caption
    {
    font-weight: bold;
    }
.fixedcontent .locale .pub .details .name
    {
    font-size: medium;
    font-weight: bold;
    }

.fixedcontent .locale .pub .icon
    {
    clear: both;
    vertical-align: middle;
    float: left;
    display: block;
    }
.fixedcontent .locale .pub .icon .link
    {
    vertical-align: top;
    }
.fixedcontent .locale .map
    {
    float:right;
    margin-left: 5px;
    vertical-align: top;
    width: 400px;
    height: 390px;
    }

.fixedcontent .locale .brewery
    {
    height: 400px;
    overflow: auto;
    display: grid;
    grid-template-columns: auto auto;
    }
    
.fixedcontent .locale .brewery .allbreweries
    {
    margin-left: 5px;
    text-align: left;
    vertical-align: top;
    }

.fixedcontent .locale .brewery .selbreweries
    {
    margin-left: 5px;
    text-align: left;
    vertical-align: top;
    }

.fixedcontent .additionalservices
    {
    position: relative;
    min-height: 420px;
    display: block;
    }
.fixedcontent .additionalservices .details
    {
    vertical-align: top;
    float: left;
    height: 420px;
    width: 55%;
    overflow: auto;
    }
.fixedcontent .additionalservices .details .pub
    {
    display: inline-block;
    }

.fixedcontent .additionalservices .details .pub .name
    {
    margin-left: 5px;
    font-size: medium;
    font-weight: bold;
    width: 70%;
    float: left;
    }

.fixedcontent .additionalservices .details .pub .icon
    {
    clear: both;
    float: left;
    }
.fixedcontent .additionalservices .details .pub .icon .link
    {
    vertical-align: top;
    }
.fixedcontent .additionalservices .maparea
    {
    font-size: medium;
    font-weight: bold;
    float:right;
    margin-left: 5px;
    vertical-align: top;
    height: 420px;
    width: 40%;
    }
.fixedcontent .additionalservices .maparea .map
    {
    height: 390px;
    }

.mincontent .links
    {
    width: 950px;
    margin: 9px;
    height: unset;
    float: left;
    /*border-radius: 2px;
    border: 1px solid #b3b3b3;*/
    position: relative;
    }

.content .winterfest
    {
    margin: 9px;
    height: unset;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    position: relative;
    display: grid;
    }

.content .winterfest .leftlogo
    {
    float: left;
    grid-row: 1 / span 5;
    grid-column: 1;
    }    

.content .winterfest .dates
    {
    text-align: center;
    font-size: large;
    font-weight: bold;
    margin-bottom: 5px;
    grid-row: 1;
    grid-column: 2;
    }
    
.content .winterfest .rightlogo
    {
    float: right;
    text-align: right;
    grid-row: 1 / span 5;
    grid-column: 3;
    }    

.content .winterfest .location
    {
    text-align: center;
    font-size: large;
    font-weight: bold;
    margin-bottom: 5px;
    grid-row: 2;
    grid-column: 2;
    }
    
.content .winterfest .staffingmessage
    {
    text-align: center;
    font-weight: bold;
    margin-bottom: 5px;
    grid-row: 3;
    grid-column: 2;
    }

.content .winterfest .detail
    {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    vertical-align: middle;
    grid-row: 4;
    grid-column: 2;
    }

.content .winterfest .poster
    {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    vertical-align: middle;
    grid-row: 5;
    grid-column: 2;
    }

.content .ticketsales
    {
    margin: 9px;
    height: unset;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    position: relative;
    }

.content .ticketsales .outlets
    {
    display: grid;
    }
        
.content .ticketsales .outlets .header
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }

.content .ticketsales .outlets .outlet
    {
    border: 1px solid #b3b3b3;
    text-align: left;
    font-size: small;
    font-weight: bold;
    }

.content .ticketsales .outlets .detail
    {
    display: grid;
    grid-template-columns: auto;
    }
    
.content .ticketsales .outlets .detail .detail0
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .outlets .detail .detail1
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .outlets .detail .detail2
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .outlets .detail .detail3
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .outlets .detail .detail4
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .outlets .detail .detail5
    {
    border: 1px solid #b3b3b3;
    text-align: center;
    font-size: small;
    font-weight: bold;
    }
    
.content .ticketsales .ticketonlineinfo
    {
    margin-top: 5px;
    margin-bottom: 5px;;
    text-align: center;
    }
    
.content .ticketsales .ticketpostalinfo
    {
    margin-top: 5px;
    margin-bottom: 5px;;
    text-align: center;
    }
    
.content .ticketsales .ticketsalesinfo
    {
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
    display: grid;
    grid-template-columns: auto auto;
    }

.content .ticketsales .ticketsalesinfo .leftcol
    {
    text-align: right;
    margin-right: 10px;
    }
    
.content .ticketsales .ticketsalesinfo .rightcol
    {
    text-align: left;
    margin-left: 10px;;
    }
    
.content .beerlists
    {
    margin: 9px;
    height: unset;
    border-radius: 2px;
    border: 1px solid #b3b3b3;
    position: relative;
    height: 400px;
    overflow: auto;
    }

.content .beerlists .sponsor
    {
    display: grid;
    margin-left: auto;
    margin-right: auto;
    text-align: center;    
    }

.content .beerlists .sponsor .sponsormessagecentred
    {
    grid-row: 1;
    grid-column: 1;
    text-align: center;
    }

.content .beerlists .sponsor .sponsorlogocentred
    {
    grid-row: 2;
    grid-column: 1;
    text-align: center;
    }

.content .beerlists .sponsor .sponsormessageleft
    {
    grid-row: 1;
    grid-column: 1;
    text-align: right;
    margin-right: 5px;
    margin-top: auto;
    margin-bottom: auto;
    }

.content .beerlists .sponsor .sponsorlogoleft
    {
    grid-row: 1;
    grid-column: 1;
    text-align: right;
    margin-right: 5px;
    }

.content .beerlists .sponsor .sponsormessageright
    {
    grid-row: 1;
    grid-column: 2;
    text-align: left;
    margin-left: 5px;
    margin-top: auto;
    margin-bottom: auto;
    }

.content .beerlists .sponsor .sponsorlogoright
    {
    grid-row: 1;
    grid-column: 2;
    text-align: left;
    margin-right: 5px;
    }

.content .beerlists .styleheader
    {
    display: grid;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    align-content: center;
    justify-content: center;
    }

.content .beerlists .styleheader .style
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #000000;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist
    {
    display: grid;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;    
    grid-template-columns: 300px 300px 100px 100px 150px;    
    }
        
.content .beerlists .beerlist .breweryheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .beerheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .abvheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .unfinedheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .veganfriendlyheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 150px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .originheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .brewery
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }
    
.content .beerlists .beerlist .beer
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }
.content .beerlists .beerlist .beer .tastingnotes
    {
    background-color: #FEE2BC;
    display: none;
    position: relative;
    border-style: solid;
    border-width: thin;
    }

.content .beerlists .beerlist .beer .hidetastingnotes
    {
    margin: 0px auto;
    float: right;
    }
      
    
.content .beerlists .beerlist .abv
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .unfined
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .veganfriendly
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 150px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .beerlist .origin
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }
    
.content .beerlists .ciderlist
    {
    display: grid;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;    
    grid-template-columns: 300px 300px 300px 100px;    
    }
        
.content .beerlists .ciderlist .breweryheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .ciderlist .beerheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .ciderlist .originheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .ciderlist .abvheader
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .beerlists .ciderlist .brewery
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }
    
.content .beerlists .ciderlist .beer
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }

.content .beerlists .ciderlist .origin
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 300px;
    text-align: left;
    justify-self: center;
    }
    
.content .beerlists .beerlist .abv
    {
    margin-left: 0px;
    margin-right: 0px;
    border: 1px solid #e4e1e1;
    width: 100px;
    text-align: center;
    justify-self: center;
    }
    
.content .awardwinners
    {
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;    
    }

.content .awardwinners .allwinners
    {
    display: grid;
    margin-top: 10px;
    margin-bottom: 5px;
    grid-template-columns: 500px 500px;    
    }

.content .awardwinners .allwinners .classwinner
    {
    text-align: left;
    border: 1px solid #000000;
    font-weight: bold;
    }

.content .awardwinners .allwinners .festivalwinner
    {
    text-align: left;
    border: 1px solid #e4e1e1;
    font-size: larger;
    font-weight: bold;
    }

.content .home .pubtours
    {
    display: grid;
    margin-top: 10px;
    margin-bottom: 5px;
    }
    
.content .home .pubtours .listcaption
    {
    text-align: right;
    margin-right: 5px;
    grid-row: 1;
    grid-column: 1;        
    }
    
.content .home .pubtours .listselect
    {
    text-align: left;
    margin-left: 5px;
    grid-row: 1;
    grid-column: 2
    }
    
.content .home .pubtours .tourselect
    {
    text-align: center;
    margin-top: 5px;
    grid-row: 2;
    grid-column: 1 / span 2;
    }

.content .home .tourmap
    {
    width: 100%;
    height: 500px;
    }

.content .home .tourdetails
    {
    display: grid;
    margin-top: 10px;
    margin-bottom: 5px;
    max-height: 300px;
    overflow-x: hidden;
    overflow-y: auto;
    display: grid;
    grid-template-columns: 10% 85%;    
    }

.content .home .tourdetails .infoicon
    {
    cursor: pointer;
    }

.content .home .tourdetails .pubhours
    {
    display: none;
    }    
