/* @override 
	http://tapshack.ca/themes/shack.css
*/

/* @group Preload Rules */



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

img,a img {
	border: none;
}

p {
	margin-bottom: 10px;
}

p:last-of-type {
	margin-bottom: 0px;
}

strong,b {
	font-family: Regular;
}

a:hover {
	cursor: pointer !important !important;
}

.offline {
	opacity: .3 !important;
	cursor: default;
}

.offline:hover {
	cursor: default;
}

figure {
	margin: 0;
}

figure img {
	width: 100%;
}

table,td {
	clear: both;
	border-collapse: collapse;
	vertical-align: top;
}



.hidden {
	display: none;
}


.drag {
	cursor: move;
}


mark {
	background-color: transparent;
	font-size: 8px;
	color: rgba(0,0,0,0.2);
}

ul,li,select {
	margin: 0;
	padding: 0;
	list-style: none;
}

a {
	text-decoration: none;
	cursor: pointer !important !important;
}

/* @group SOCIAL ICONS */

a.fb {
	background-image: url(images/icon-social-bookface.svg);
}

a.tw {
	background-image: url(images/icon-social-tweeter.svg);
}

a.ig {
	background-image: url(images/icon-social-insta.svg);
}

a.eml {
	background-image: url(images/icon-social-email.svg);
}

a.phn {
	background-image: url(images/icon-social-phone.svg);
	background-size: 20px !important;
	background-position: 10px !important;
	width: 0px !important;
	padding-left: 40px;
	color: #000 !important;
	font-size: 16px !important;
	line-height: 40px;
	font-family: Regular;
}

a.phn:hover {
	width: 120px !important;
	padding-left: 45px;
}

a.dir {
	background-image: url(images/icon-social-pin.svg);
}

/* @end */


/* @end */

html {
    -webkit-text-size-adjust: none
}

/* @group BRANDbar */

.BRANDbar {
	display: table;
	width: 100%;
	background-color: #000;
	border-bottom: 1px solid #cc2033;
}

.BRANDbar a {
	display: block;
	overflow: hidden;
	width: 40px;
	height: 40px;
	float: left;
	font-size: 0;
	color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	margin: 0 10px;
}

.BRANDbar a:last-of-type {
	float: right;
}

.BRANDbar .badge_shack {
	background-image: url(images/badge-shack.svg);
	background-size: 75%;
}

.BRANDbar .badge_tap {
	background-image: url(images/badge-tap.svg);
	background-size: 65%;
}

.BRANDbar .badge_brands {
	background-image: url(images/badge-brands.svg);
	background-size: 65%;
	background-color: #cc2033;
	margin: 0;
}

/* @end */

/* @group DAY / NIGHT */

.day .sidenav .logo {
	background-image: url(images/logo-line-shack_black.svg);
}

.night .sidenav .logo {
	background-image: url(images/logo-line-shack_white.svg);
}

.day .sidenav a, .night .sidenav a:hover, .night .sidenav a:focus, .night .sidenav a:active, .night .sidenav a.selected, .day .boxedin article p a {
	color: #000;
}

.night .sidenav a, .day .sidenav a:hover, .day .sidenav a:focus, .day .sidenav a:active, .day .sidenav a.selected, .night .boxedin p a {
  color: #fff;
}

.day .sidenav li+li a:before, .day .sidenav a.selected {
	background-color: #000;
	color: #fff;
}

.night .sidenav li+li a:before, .night .sidenav a.selected {
	background-color: #fff;
	color: #000;
}

.day .boxedin, .night .day .boxedin {
	background-color: #fff;
	color: #000;
}

.night .boxedin {
	background-color: #191919;
	color: #fff;
}

/* @end */

/* @group SIDENAV */

.sidenav {
	float: left;
	margin: 60px 0 0 70px;
	position: absolute;
}

.sidenav .logo {
	font-size: 0;
	color: transparent;
	height: 70px;
	width: 300px;
	margin-left: -6px;
	margin-bottom: 30px;
	padding: 0;
	background-position: left;
}

.sidenav a {
	display: inline-block;
	padding: 4px 6px 2px 6px;
	color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
   -webkit-text-stroke: 1px;
	font: 35px Shack;
}

/* @end */

body {
	color: #fefefe;
	font-family: Light;
	letter-spacing: 1px;
	min-width: 1250px !important;
}

body > section {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
}

body > section:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

/* @group SPLASH */

#page_home section.splash {
	background-image: url(images/background-shack001-2019.jpg);
}

#page_locations section.splash {
	background-image: url(images/background-shack_burrard.jpg);
}

#page_menu section.splash {
	background-image: url(images/background-shack_menu.jpg);
}

#page_locations section.splash.harbour {
	background-image: url(images/background-shack_harbour.jpg);
}

#page_locations section.splash {
	background-image: url(images/background-shack_harbour.jpg);
}

#page_about section.splash {
	background-image: url(images/background-shack_about.jpg);
}

#page_contact section.splash {
	background-image: url(images/background-shack_kegs.jpg);
}

#page_careers section.splash {
	background-image: url(images/background-shack_home.jpg);
}

#page_privatedining section.splash {
	background-image: url(images/background-shack001.jpg);
}

section.splash figure {
	margin-bottom: -6px;
	padding-top: 100px;
	clear: both;
}

section.splash figure.top {
	margin-bottom: 0px;
	padding-top: 0;
	margin-top: -7px;
	clear: both;
}

section.splash > figure img {
	width: 105%;
	margin-left: -2%;
}

section.splash > figure {
	width: 100%;
	overflow: hidden;
	display: block;
	text-align: left;
}

.splash header h1 {
	float: right;
	text-transform: uppercase;
	width: 700px;
	text-align: right;
	margin-top: 250px;
	margin-right: 60px;
   -webkit-text-stroke: 5px;
	font: 200px/160px Shack;
}

.splash header h1 em {
   -webkit-text-stroke: 0px;
	font: 40px/42px Shack;
	margin-bottom: -70px;
	display: table;
	float: right;
	background-color: rgba(0,0,0,0.8013188);
	padding-right: 7px;
	padding-left: 7px;
	padding-top: 2px;
	border-radius: 2px;
}

.splash.harbour header h1 {
	margin-top: 100px;
}

/* @end */

/* @group BOXEDIN */

.boxedin > article {
	width: 60%;
	padding: 60px 60px 0;
	margin: 0 auto;
}

.boxedin > article:last-of-type {
	padding-bottom: 80px;
}

.boxedin h2 {
	text-transform: uppercase;
   -webkit-text-stroke: 1px;
	margin-bottom: 15px;
	font: 30px Shack;
}

.boxedin article p {
	text-transform: lowercase;
	text-align: left;
	line-height: 20px;
	font-size: 15px;
}


.boxedin table {
	margin: 0 auto;
	width: 60%;
}

.boxedin.menu table {
	margin: 0 auto;
	width: 80%;
}

.boxedin table td {
	text-align: center;
	padding: 0 40px;
	vertical-align: text-top;
	width: 50%;
}

.boxedin.menu {
	padding: 60px 60px 0;
}

.boxedin.menu:last-of-type {
	padding-bottom: 80px;
}

.boxedin.menu table a {
	display: inline-block;
	padding: 10px;
	border: 1px solid;
	border-radius: 2px;
	margin-bottom: 10px;
	
	-webkit-transition: .2s;
	
	transition: .2s;
}

.boxedin p a {
	display: inline-block;
	padding: 10px;
	border: 1px solid;
	border-radius: 2px;
	margin-bottom: 10px;
	
	-webkit-transition: .2s;
	
	transition: .2s;
}

.night .boxedin.menu table a {
	color: #fff;
}

.day .boxedin.menu table a {
	color: #000;
}

.boxedin.locations table a {
	width: 40px;
	height: 40px;
	overflow: hidden;
	font-size: 0;
	color: transparent;
	display: block;
	float: left;
	background-color: #f0f0f0;
	
	background-position: center;
	background-repeat: no-repeat;
	background-size: 60%;
	
	margin-right: 5px;
	margin-top: 10px;
}

.boxedin.locations table a:hover {
	background-color: #fafafa;
	
	-webkit-transition: 0.2s;
	
	transition: 0.2s;
}

.boxedin a:hover {
	color: #cc2033 !important;
}

a.dineout {
	border-color: #9869c5 !important;
	
}

a.dineout:hover {
	color: #9869c5 !important;
}

.boxedin.menu a {
	font-size: 30px;
}

.boxedin.tripple {
	padding: 60px;
}

.boxedin.tripple table {
	width: 80%;
	table-layout: fixed;
}

.boxedin.tripple table td {
	width: 33%;
	text-align: left;
	padding: 0 20px;
	text-transform: lowercase;
}

.boxedin.tripple table figure {
	margin: 20px 0;
}

.boxedin.tripple table figure:before {
	content: "";
	display: block;
	background-size: 110%;
	background-repeat: no-repeat;
	background-position: center top;
	height: 25px;
	position: relative;
	z-index: 999;
	width: 100%;
	margin-bottom: -20px;
	
}

.boxedin.tripple table figure:after {
	content: "";
	display: block;
	background-size: 110%;
	background-repeat: no-repeat;
	background-position: center top;
	height: 25px;
	position: relative;
	z-index: 999;
	width: 100%;
	margin-top: -25px;	
}

.boxedin.tripple table td figure:before {
	background-image: url(images/slice-white-top-003.svg);
}

.boxedin.tripple table td figure:after {
	background-image: url(images/slice-white-bottom-001.svg);
}

.boxedin.tripple table td+td figure:before {
	background-image: url(images/slice-white-top-001.svg);
}

.boxedin.tripple table td+td+td figure:before {
	background-image: url(images/slice-white-top-003.svg);
}

.boxedin.tripple table td+td+td figure:after {
	background-image: url(images/slice-white-bottom-003.svg);
}

.boxedin p.note {
	font-size: 14px;
	line-height: 18px;
	opacity: .6;
}

.boxedin .important {
	display: inline-block;
	background-color: #cb1d31;
	color: #feffff;
	padding: 5px;
	font-family: Regular;
	text-transform: uppercase;
}

#page_locations .locations table td {
	text-align: left;
}

#page_locations .locations table tr:first-of-type td {
	border-bottom: 3px solid;
	padding: 0;
}

#page_locations .locations table tr:first-of-type td h2 {
	margin: 30px 0 20px 0;
}

h2 strong {
	text-transform: none;
	font-family: Shack;
   -webkit-text-stroke: 1px;
}

#page_locations .locations table tr+tr td {
	padding: 30px 30px 0 0;
	text-transform: lowercase;
}

#page_locations .locations table tr+tr td+td {
	border-left: 3px solid;
	padding: 30px 0 30px 30px;
	text-transform: uppercase;
}

#page_contact table li strong {
	text-transform: uppercase;
}

#page_locations .locations {
	padding-bottom: 60px;
}


#page_contact .locations table td {
	text-align: left;
	padding: 0;
}

#page_contact .locations table td li p {
	padding: 10px 0;
}

#page_contact .locations {
	padding: 70px 0 80px 0;
	border-bottom: 1px dashed #ccc;
}


/* @end */

/* @group FOOTER */

footer {
	background-color: #000;
	padding: 60px;
}

footer table {
	margin: 0 auto;
	text-transform: uppercase;
}

footer table td {
	text-align: center;
	width: 33%;
	padding: 0 40px;
	vertical-align: middle;
	font-size: 9px;
}


footer a {
	width: 40px;
	height: 40px;
	overflow: hidden;
	font-size: 0;
	color: transparent;
	display: block;
	float: left;
	
	background-position: center;
	background-repeat: no-repeat;
	background-size: 60%;
}

footer ul li {
	float: left;
}

footer ul {
	margin: 0 auto;
	display: table;
}

footer strong {
	font-family: Bold;
}

/* @end */

@media only screen and (max-device-width: 480px) {
body {
	min-width: 100% !important;
}

body > section {
	background-attachment: scroll;
}

#page_home section.splash {
	background-position: calc(100% + 100px) top;
	
}

#page_locations section.splash {
	background-position: left top;
	background-size: 350%;
	
}

#page_locations section.splash.harbour {
	background-position: right top;
	background-size: cover;
	
}



.sidenav {
	float: left;
	margin: 30px 0 0 30px;
	position: static;
}

.sidenav .logo {
	font-size: 0;
	color: transparent;
	height: 50px;
	width: 200px;
	margin-left: -2px;
	margin-bottom: 20px;
	padding: 0;
	background-position: left;
}

.splash header h1 {
	display: none;
}

section.splash figure {
	padding-top: 40px;
}

section.splash figure.top  {
	padding-top: 0;
	padding-bottom: 140px !important;
}


.boxedin.menu {
	padding: 30px 10px 0;
}
.boxedin.menu:last-of-type {
	padding-bottom: 20px;
}
.boxedin.menu a {
	font-size: 15px;
}

.boxedin table td {
	display: block;
	vertical-align: text-top;
	width: 100%;
	padding: 10px 0px;
}

.boxedin.tripple table td {
	display: block;
	padding: 0 0 30px 0;
	vertical-align: text-top;
	width: 100%;
}

.boxedin > article {
	width: calc(100% - 60px);
	padding: 30px 30px 0;
	margin: 0 auto;
}

.boxedin.tripple {
	padding: 30px;
}

.boxedin.tripple table {
	width: 100%;
	table-layout: auto;
}


.boxedin table {
	margin: 0 auto;
	width: calc(100% - 60px);
	padding: 0 30px;
}

.boxedin table td {
	text-align: center;
	padding: 0px;
	vertical-align: text-top;
	width: 100%;
}



#page_locations .locations table tr:first-of-type td h2 {
	margin: 30px 0 20px 0;
}

#page_locations .locations table tr+tr td {
	padding: 20px 0;
	text-transform: lowercase;
}

#page_locations .locations table tr+tr td+td {
	border-top: 1px dashed;
	border-left: none;
	padding: 20px 0;
	text-transform: uppercase;
	font-size: 12px;
}
#page_locations .locations {
	padding-bottom: 60px;
}


.day .sidenav li+li a:before  {
	background-color: transparent;
}

.night .sidenav li+li a:before {
	background-color: transparent;
}

#page_contact .locations table td:last-of-type {
	padding-top: 80px;
}

footer {
	padding: 30px;
}

footer table tr td{
	display: block;
	width: 100%;
	padding: 10px 0px;
}

}


/* @group ANIMATIONS */





.sidenav li+li a:hover:before, .sidenav li+li a:focus:before, .sidenav li+li a:active:before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
	transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

.sidenav li+li a:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-duration: 0.5s;
	transition-duration: 0.5s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}



.sidenav li+li a {
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);

  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0);

  box-shadow: 0 0 1px rgba(0, 0, 0, 0);

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;

  position: relative;

  -webkit-transition-property: color;

  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}




.blink {
    -webkit-animation: blink 7s linear infinite;
    animation: blink 7s linear infinite;
}

.fadein {
    -webkit-animation: fade 2s linear 1;
    animation: fade 2s linear 1;
}

.flash:hover {
    -webkit-animation: flash .5s linear;
    animation: flash .5s linear;
}


@-webkit-keyframes flash {
    0% { background-color: white; color: black;}
    25% { background-color: blakc; color: white; }
    50% { background-color: white; color: black; }
    75% { background-color: black; color: white; }
    100% { background-color: white; color: black; }
}


@keyframes flash {
    0% { background-color: white; color: black;}
    25% { background-color: blakc; color: white; }
    50% { background-color: white; color: black; }
    75% { background-color: black; color: white; }
    100% { background-color: white; color: black; }
}

@-webkit-keyframes blink {  
    0% { opacity: .2; }
    50% { opacity: 1; }
    100% { opacity: .2; }
}

@keyframes blink {  
    0% { opacity: .2; }
    50% { opacity: 1; }
    100% { opacity: .2; }
}

@-webkit-keyframes fade {  
    0% { opacity: .0; }
    100% { opacity: 1; }
}

@keyframes fade {  
    0% { opacity: .0; }
    100% { opacity: 1; }
}

/* @end */
