/* - - - - - - - - - - - - - - - - - - - -
   SCREENINGS GLOBAL CSS
- - - - - - - - - - - - - - - - - - - - - 

CONTENTS:
- helpers
- reset
- fonts
- base
- layout
- links
- buttons
- forms

- - - - - - - - - - - - - - - - - -
FORMULAS:
- - - - - - - - - - - - - - - - - -
FF line-height fix: (container-height / font-size = line-height)

COLORS:
ecf0f1  white
34495e  dull navy blue

*/


/* HELPERS
- - - - - - - - - - - - - - - - - */
.fl { float: left; }
.fr { float: right; }
.cl { clear: left; }
.cr { clear: right; }

.clear { clear: both; }
.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.text-center { text-align: center; }
.text-right  { text-align: right; }
.text-left	 { text-align: left; }
.block-center { margin-left: auto; margin-right: auto; }
img.center { display: block; margin-left: auto; margin-right: auto; }
.relative { position: relative; }
.mt0_1 { margin-top: 0.1em; }
.mt0_5 { margin-top: 0.5em; }
.mt1 { margin-top: 1em; }
.mt1_5 { margin-top: 1.5em; }
.mt2 { margin-top: 2em; }
.mt3 { margin-top: 3em; }
.mt4 { margin-top: 4em; }
.mt5 { margin-top: 5em; }
.mb0_1 { margin-bottom:  0.1em }
.mb0_3 { margin-bottom:  0.3em }
.mb0_5 { margin-bottom: 0.5em; }
.mb1 { margin-bottom: 1em; }
.mb2 { margin-bottom: 2em; }
.mb3 { margin-bottom: 3em; }
.mb4 { margin-bottom: 4em; }
.mb5 { margin-bottom: 5em; }
.ml0_5 { margin-left: .5em; }
.ml1 { margin-left: 1em; }
.ml2 { margin-left: 2em; }
.mr0_5 { margin-right: .5em; }
.mr1 { margin-right: 1em; }
.mr1_5 { margin-right: 1.5em; }
.mr2 { margin-right: 2em; }
.mr1_8 { margin-right: 1.8em; }

.onethird    { width:  33%; }
.twothirds   { width:  66%; }
.five        { width:   5%; }
.ten         { width:  10%; }
.fifteen     { width:  15%; }
.twenty      { width:  20%; }
.twentythree { width:  23%; }
.twentyfive  { width:  25%; }
.thirty      { width:  30%; }
.thirtyfive  { width:  35%; }
.forty       { width:  40%; }
.fortytwo    { width:  42%; }
.fortyfive   { width:  45%; }
.fifty       { width:  50%; }
.fiftyfive   { width:  55%; }
.sixty       { width:  60%; }
.sixtyfive   { width:  65%; }
.seventy     { width:  70%; }
.seventyfour { width:  74%; }
.seventyfive { width:  75%; }
.eighty      { width:  80%; }
.eightyfive  { width:  85%; }
.ninety      { width:  90%; }
.ninetyfive  { width:  95%; }
.onehundred  { width: 100%; }
.full        { width: 100%; }


/* RESET
- - - - - - - - - - - - - - - - - */
* {
	margin: 0;
	padding: 0;
}



/* BASE
- - - - - - - - - - - - - - - - - */
html {
	-webkit-text-size-adjust: 100%;
	   -moz-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
	height: 100%;
}
body {
	color: #2c3e50;
	font-family: 'Lato-Regular';
	font-size: 14px;
	min-height: 100%;
	position: relative;
}

ul {
	list-style: none;
}

h1, h2, h3, h4 { font-family: 'Oswald-Regular'; font-weight: normal; color: #fff; }
h1 { font-size: 40px; }
h2 { font-size: 30px; color: #1585d8; font-weight: normal;  }
h3 { font-size: 20px; color: #1585d8; font-weight: normal;  }
h4 { font-size: 16px; color: #1585d8; font-weight: normal;  }

h1.white { color:#fff; }
h1.navy { color:#1F396D; }
h1.modal-blue-title {color:#1585d8;}
h1.ssp-bold { font-family: 'SourceSansPro-Bold', Arial, sans-serif; }
h1.caps { text-transform: uppercase; }

h2.white { color:#fff; }
h2.ssp-bold { font-family: 'SourceSansPro-Bold', Arial, sans-serif; }
h2.caps { text-transform: uppercase; }


h4.light-blue {color:#78d2f7;}
h4.white { color:#fff; }
h4.ssp-bold { font-family: 'SourceSansPro-Bold', Arial, sans-serif; }
h4.caps { text-transform: uppercase; }

body.bgfull h1        		 { font-size: 40px; text-transform: uppercase; }

p {
	font-size: 14px;
	max-width: 640px;
	margin: 0.5em 0;
	line-height: 1.3;
	font-family: 'Lato-Regular';
}

p.ssp-light {
	font-family: 'SourceSansPro-Light';
}

p.smaller { font-size: 12px; }
p.bigger { font-size: 16px; }
p.bigger-small {font-size: 18px;}
p.large { font-size: 20px; }
p.larger { font-size: 35px;}
p.white { color: white; }
p.shadow { text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); }
p.yellow { color: #fff200; }
p.red 	{ color: #df383c; }

span.smaller { font-size: 12px; }

strong { font-family: 'Lato-Bold'; font-weight: normal; }

hr {
	clear: both;
	height: 0;
	margin: 25px 0;
	border: 0;
	border-top: 2px solid #e3e3e3;
	border-bottom: 1px solid #ffffff;
}
hr.dark { border-top: 2px solid #878889; }
hr.thin { margin: 5px 0; border-bottom: none; }
hr.blue { border: 0; border-bottom: 1px solid #415462; margin: 5px 0; }
hr.gray { border: 0; border-bottom: 2px solid #ccc; margin: 5px 0; }
hr.white { border: 0; border-bottom: 2px solid #fff; margin: 5px 0; }
hr.footer { border: 0; border-bottom: 2px solid #545454; margin: 10px 100px 20px 100px;}
hr.yellow { border: 0; border-bottom: 1px solid #ee951b; margin-bottom: 15px; }

hr.mt { margin: 1.5em 0; }

/* CHUNKS
- - - - - - - - - - - - - - - - - */
.chunk {
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
}
/* chunk mods */
.chunk.left  { float:  left; padding-right: 3%; }
.chunk.right { float: right; padding-left:  3%; }
.chunk.padding-left  { padding-left:  3%; }
.chunk.padding-right { padding-right: 3%; }
.chunk.no-padding { padding-left: 0; padding-right: 0; }
.chunk.border-left  {  border-left: 1px solid #dcdcdc; }
.chunk.border-right { border-right: 1px solid #dcdcdc; }


/* COLUMNS
- - - - - - - - - - - - - - - - - */
.columns2, .columns3, .column {
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
}
.column {
	float: left;
}
/* column mods */
.column.border-left  {  border-left: 1px solid #dcdcdc; }
.column.border-right { border-right: 1px solid #dcdcdc; }
/* 2-columns */
.columns2 .column { width: 50%; position: relative;  }

.columns2 .column:nth-child(1) { padding-right: 2.5%; }
.columns2 .column:nth-child(2) { padding-left:  2.5%; }
/* 2-columns mods */
.columns2.wider-gutter .column:nth-child(1) { padding-right: 5%; }
.columns2.wider-gutter .column:nth-child(2) { padding-left:  5%; }
.columns2.one-to-two   .column:nth-child(1) { width: 33.3333%; }
.columns2.one-to-two   .column:nth-child(2) { width: 66.6666%; }
.columns2.two-to-one   .column:nth-child(1) { width: 66.6666%; }
.columns2.two-to-one   .column:nth-child(2) { width: 33.3333%; }
/* 3-columns */
.columns3 .column { width: 33.3333%; }
.columns3 .column:nth-child(1) { padding-right: 2.5%; }
.columns3 .column:nth-child(2) { padding-left: 2.5%; padding-right: 2.5%; }
.columns3 .column:nth-child(3) { padding-left: 2.5%; }
/* 3-columns mods */
.columns3.fixed-height.home-page .column { height: 260px; }

/* yellow icon top right in columns */
.columns2.home-page .column:after { width: 9px; height: 9px; position: absolute; content:' '; display: block; top:0; right:0; background-image: url(../img/sprite/s.png); background-position: -5px -5px; }
.columns3.home-page .column:after { width: 9px; height: 9px; position: absolute; content:' '; display: block; top:0; right:0; background-image: url(../img/sprite/s.png); background-position: -5px -5px; }
/* ghost button */

.ghost-button {
  display: inline-block;
  width:auto;
  padding: 8px;
  color: #fff;
  border: 1px solid #fff;
  border-radius:5px;
  text-align: center;
  outline: none;
  text-decoration: none;
}

/* LINKS
- - - - - - - - - - - - - - - - - */
.link { text-decoration: underline; cursor: pointer; }
a.link {
	text-decoration: underline;
	font-family: 'SourceSansPro-Bold';
	font-size: 14px;
	cursor: pointer;
}
a.link.naked {
	text-decoration: none;
}

a.link.large { font-size: 20px;}

a.link.font-lato-regular {font-family: 'Lato-Regular';}

a.link:hover { text-decoration: none;}

a img { border: none; }
/* mods */
a.link.red  { color: #e74c3c; }
a.link.gold {color: #F1B10F;}
a.link.blue { color: #8bc3e9; }
a.link.dark-blue { color: #003366; }
a.link.light-blue { color: #78D2F7; }
a.link.su {color: #047CBF;}
a.link.gray { color: #7f8c8d; }
a.link.white { color: #ffffff; }
a.link.black { color: #000000;}
a.link.red   { color: #df383c;}
a.link.center  { display: block; text-align: center; }
a.link.center2 { display: inline-block; text-align: center; }
a.link.inline-block { display: inline-block; }
a.link.right   { display: block; float: right; }
a.link.film    {
	height: 26px;
	padding-left: 45px;
	background: url(../img/icon-film@2x.png) no-repeat left center;
	background-size: 37px 26px;
}
a.link.sm { font-size: 11px; }
a.link.href:after   { content: attr(href); }

a.link.no-hl { text-decoration: none; }
a.link.no-hl:hover { text-decoration: underline; }

a.link.caps { text-transform: uppercase; }

a.more-trailer, a.more-film, a.buy-tickets 	   { 
	text-transform: uppercase;
	font-family: "Lato-Bold", Arial, sans-serif;
	font-size: 14px;
	color: #243645;
	text-decoration: none;
	display: block;
	margin-top: 0px;
}

a.more-trailer:before { 
	content:' '; 
	float: left; 
	display: inline-block; 
	width: 24px; 
	height: 24px; 
	background-image: url(../img/sprite/s.png); 
	background-position: -437px -102px; 
	background-size: 500px 300px;
	margin-left: -0px; 
	margin-right: 8px; 
	margin-top: -2px;   
}

a.more-film:before { 
	content: ' ';
    display: block;
    float: left;
    width: 18px;
    height: 14px;
    background-image: url(../img/sprite/s.png);
    background-position: -550px -6px;
    margin-right: 10px;
    margin-top: 4px;
}

a.more-trailer:hover, a.more-film:hover, a.buy-tickets:hover { 
	opacity: 0.9;
	text-decoration: underline;
}

a.buy-tickets {
	background-color: #E3E3E3;
	width: 90%;
	max-width: 300px;
	height:40px;
	padding-top: 20px;
}

a.buy-tickets:before {
	content:' '; 
	display: inline-block;
	float: left; 
	width: 24px; 
	height: 24px; 
	background-image: url(../img/sprite/s.png); 
	background-position: -358px -140px; 
	margin-left: 30%; 
	margin-right: 8px; 
	margin-top: -2px;
}

a.buy-tickets.center { margin-left: auto; margin-right: auto; }

/* SOCIAL ICONS
- - - - - - - - - - - - - - - - - */
a.icon, div.icon { display: block; background-image: url(../img/sprite/s.png);  }
a.icon 						{ cursor: pointer; }

div.icon.wb1234			{ width:  122px; height: 34px; background-position: -112px  0px; margin: 0 auto;  }
div.icon.arrow-circle	{ width:  95px; height: 94px;  background-position:    0px  0px; margin: 0 auto;  }
div.icon.tickets    	{ width:  54px; height: 51px;  background-position: -255px  0px; margin: 0 auto;  }
div.icon.chair       	{ width:  46px; height: 42px;  background-position: -330px -5px; margin: 0 auto;  }

a.icon.fb		    { margin-bottom: 10px; margin-right: 10px; width:  32px; height: 32px; background-position: -114px  -62px;  }
a.icon.tw		    { margin-bottom: 10px; margin-right: 10px; width:  32px; height: 32px; background-position: -165px  -62px;  }
a.icon.tb		    { margin-bottom: 10px; margin-right: 10px; width:  32px; height: 32px; background-position: -218px  -62px;  }
a.icon.sc		    { margin-bottom: 10px; margin-right: 10px; width:  32px; height: 32px; background-position: -273px  -62px;  }
a.icon.pn		    { margin-bottom: 10px; margin-right: 10px; width:  32px; height: 32px; background-position: -321px  -62px;  }


a.icon.fb-login 	{ width: 109px; height: 30px; background-position: -163px -114px; border-radius: 4px;  }
a.icon.tw-login  	{ width: 109px; height: 30px; background-position: -163px -149px; border-radius: 4px;  }


a.icon.fb-like, 
a.icon.fb-like-icon 	{ width: 154px; height: 30px; background-position:  0px -114px; margin-top: 10px; }
a.icon.tw-follow		{ width: 154px; height: 30px; background-position:  0px -148px; margin-top: 10px; }

a.icon.fb-like:hover,
a.icon.fb-like-icon:hover, 
a.icon.tw-follow:hover  { opacity: .8; }

a.fb-header { background-image: url(../img/sprite/s.png); width: 300px;  height: 39px; background-position: 0px -190px;  display: block;  }
a.tw-header { background-image: url(../img/sprite/s.png); width: 520px;  height: 39px; background-position: 0px -240px;  display: block;  }

/* BUTTONS
- - - - - - - - - - - - - - - - - */
a.button {
	font-family: 'OpenSans-Semibold', Arial, sans-serif;
	font-size: 18px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}
a.button.plus-icon{
	width: 50px;
	height: 50px;
	line-height: 42px;
	background-image: url(../img/buttons/plus_icon.png);
	background-repeat: no-repeat;
	display: block;

	color: #fff;
	font-family: 'SourceSansPro-Bold';
}

a.button.blue-used {

	width: 260px;
	height: 56px;
	line-height: 42px;
	background-image: url(../img/buttons/blue_button.png);
	background-repeat: no-repeat;
	display: block;
	
	color: #fff;
	text-shadow: 1px 0px 1px #000;
	text-align: left;
	font-family: 'SourceSansPro-Bold';
}

a.button.blue-used:hover{

	width: 260px;
	height: 56px;
	line-height: 42px;
	background-image: url(../img/buttons/blue_button_hover.png);
	background-repeat: no-repeat;
	display: block;

	color: #fff;
	text-shadow: 1px 0px 1px #000;
	text-align: left;
	font-family: 'SourceSansPro-Bold';
}

a.button.gold-pass{

	width: 260px;
	height: 56px;
	line-height: 42px;
	background-image: url(../img/buttons/Pass_Gold_Button.png);
	background-repeat: no-repeat;
	display: block;
	text-align:center;
	color: #fff;
	margin:0;
	font-size: 14px;
	
	font-family: 'SourceSansPro-Bold';
}

a.button.gold-pass:hover{

	width: 260px;
	height: 56px;
	line-height: 42px;
	background-image: url(../img/buttons/Pass_Gold_Button_Hover.png);
	background-repeat: no-repeat;
	display: block;
	text-align:center;
	color: #fff;
	
	
	font-family: 'SourceSansPro-Bold';
}


a.button.check-blue{
	width: 218px;
	height: 46px;
	line-height: 42px;
	background-image: url(../img/buttons/Red_Button.png);
	background-repeat: no-repeat;
	display: block;
	text-align:center;
	color: #fff;
	margin:-2px;
	font-family: 'SourceSansPro-Bold';
}


a.button.check-red{
	width: 218px;
	height: 46px;
	line-height: 46px;
	background-image: url(../img/buttons/Red_Button.png);
	background-repeat: no-repeat;
	display: block;
	text-align:center;
	color: #fff;
	margin:-2px;
	font-family: 'SourceSansPro-Bold';
}

a.button.check-red:hover{

	width: 218px;
	height: 56px;
	line-height: 42px;
	background-image: url(../img/buttons/Red_Button_Hover.png);
	background-repeat: no-repeat;
	display: block;
	text-align:center;
	color: #fff;
	
	
	font-family: 'SourceSansPro-Bold';
}


/* cta buttons */
a.button.gold-tab {
	width: 260px;
	height: 56px;
	line-height: 53px;
	background-image: url(../img/buttons/gold_tab_button.png);
	background-repeat: no-repeat;
	display: block;
	color: #fff;
	text-shadow: 1px 0px 1px #000;
	text-align: left;
	font-family: 'SourceSansPro-Bold';
}

a.button.gold-tab.small {
	width: 210px;
	height: 45px;
	background-size: contain;
	line-height: 40px;
	font-size: 12px;
}
a.button.gray {
	width: 209px;
	height: 49px;
	line-height: 49px;
	color: #000;
	font-size: 11px;
	display: block;
	text-transform: uppercase;
	background: #fefefe; /* Old browsers */
	background: -webkit-linear-gradient(top, #fefefe 0%, #b3b2b2 100%); 
	background:    -moz-linear-gradient(top, #fefefe 0%, #b3b2b2 100%); 
	background:     -ms-linear-gradient(top, #fefefe 0%, #b3b2b2 100%); 
	background:      -o-linear-gradient(top, #fefefe 0%, #b3b2b2 100%); 
	margin: 0 auto;
	margin-top: 11px;
	margin-bottom: 13px;
	border-radius: 8px;
	font-family: 'Gotham-Bold';
}
a.button.gold-tab:hover span {
	color: #fff;
	text-align: center;
}

a.button.gray div.blue-arrow {
	width: 22px;
	height: 22px;
	background-image: url(../img/sprite/s.png);
	background-position: -518px -2px;
	float: right;
	margin-top: 15px;
	margin-right: 20px;
}

a.button.gold-tab div.icon {
	width: 40px;
	height: 56px; 
	float: left;
	background-image: url(../img/sprite/s.png);
}
a.button.gold-tab div.icon.redeem {
	width:  25px;
	height: 21px;
	background-position: -393px -4px;
	margin: 17px 11px;
}

a.button.gold-tab div.icon.arrow {
	width:  25px;
	height: 21px;
	background-position: -491px -4px;
	margin: 17px 11px;
	margin-right: 20%;
}
a.button.gold-tab.small div.icon.arrow {
	width:  25px;
	height: 21px;
	background-position: -491px -4px;
	margin: 11px 11px;
	margin-right: 4%;
}

a.button.gold-tab div.icon.register {
	width:  21px;
	height: 19px;
	background-position: -429px -5px;
	margin: 19px 13px;
}
a.button.gold-tab div.icon.find {
	width:  23px;
	height: 22px;
	background-position: -460px -5px;
	margin: 18px 12px;
}
a.button.gold-tab.small div.icon.find {
	width:  25px;
	height: 21px;
	background-position: -460px -5px;
	margin: 11px 9px;
	margin-right: 4%;
}

a.button.gold-tab span {
	float: left; 
	font-family: 'SourceSansPro-Bold';
	font-size: 14px;
	color: #fff;
	text-transform: uppercase;
	width: 200px;
	text-shadow: 0 1px 1px #555;
	text-align: center;
}
a.button.gold-tab:hover { 
	width: 260px;
	height: 56px;
	line-height: 53px;
	background-image: url(../img/buttons/gold_tab_button_hover.png);
	background-repeat: no-repeat;
	display: block;
	color: #fff;
	text-shadow: 1px 0px 1px #000;
	text-align: left;
	font-family: 'SourceSansPro-Bold';
}
a.button.gold-tab.small:hover {
	width: 210px;
	height: 45px;
	background-size: contain;
	line-height: 40px;
}

a.button.share span { margin: 3px 5px; }
a.button.share span iframe { margin: 3px 1px; opacity: 0; }
a.button.share.facebook        { background-position:    -751px   -89px; }
a.button.share.facebook:hover  { opacity: 0.8; }
a.button.share.twitter         { background-position: -751px   -140px; }
a.button.share.twitter:hover   { opacity: 0.8; }
div.button.share.facebook        { background-position:    -751px   -89px; }
div.button.share.facebook:hover  { opacity: 0.8; }
div.button.share.facebook a { opacity: 0; display: block; padding: 4px 12px;}
div.button.share.twitter         { background-position: -751px   -140px; padding: 5px 10px; }
div.button.share.twitter:hover   { opacity: 0.8; }
div.button.share.twitter iframe  { opacity: 0; }

/* share buttons container */
div.share-buttons.bottom { position: absolute; bottom: 0; }
div.share-buttons a.button.share {
	float: left;
	height: 31px;
	margin-right: 15px;
	margin-bottom: 8px;
}
div.share-buttons a.button.share:last-child { margin-right: 0; }

/* primary buttons */
a.button.blue,
a.button.dark-blue,
a.button.yellow,
a.button.purple,
a.button.white,
a.button.red,
a.button.light-blue  {
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	display: block;
	width: 260px;
	height: 36px;
	line-height: 36px;
	padding-left: 0px;
	padding-right: 0px;
	text-transform: uppercase;
	height: 47px;
	line-height: 47px;
	font-family: 'SourceSansPro-Bold';
	font-size: 14px;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
}

a.button.lato-reg { font-family: 'Lato-Regular';}
a.button.colored { overflow: hidden; }

a.button.colored.yellow {
	background: -webkit-linear-gradient(top, #f4b90d 0%, #8b4b1c 100%); 
	background:    -moz-linear-gradient(top, #f4b90d 0%, #8b4b1c 100%); 
	background:     -ms-linear-gradient(top, #f4b90d 0%, #8b4b1c 100%); 
	background:      -o-linear-gradient(top, #f4b90d 0%, #8b4b1c 100%); 
}
a.button.colored.yellow:hover {
	background: -webkit-linear-gradient(top, #e1a800 0%, #6d2f00 100%); 
	background:    -moz-linear-gradient(top, #e1a800 0%, #6d2f00 100%); 
	background:     -ms-linear-gradient(top, #e1a800 0%, #6d2f00 100%); 
	background:      -o-linear-gradient(top, #e1a800 0%, #6d2f00 100%); 
	color: #fff;
}
a.button.colored.blue {
	background: -webkit-linear-gradient(top, #006497 0%, #00396c 100%); 
	background:    -moz-linear-gradient(top, #006497 0%, #00396c 100%); 
	background:     -ms-linear-gradient(top, #006497 0%, #00396c 100%); 
	background:      -o-linear-gradient(top, #006497 0%, #00396c 100%); 
}

a.button.colored.blue:hover {
	background: -webkit-linear-gradient(top, #004d76 0%, #052b53 100%); 
	background:    -moz-linear-gradient(top, #004d76 0%, #052b53 100%); 
	background:     -ms-linear-gradient(top, #004d76 0%, #052b53 100%); 
	background:      -o-linear-gradient(top, #004d76 0%, #052b53 100%); 
}
a.button.colored.blue.light {
	background: -webkit-linear-gradient(top, rgba(118,209,247,1) 0%,rgba(4,174,239,1) 100%); 
	background:    -moz-linear-gradient(top, rgba(118,209,247,1) 0%,rgba(4,174,239,1) 100%);
	background:      -o-linear-gradient(top, rgba(118,209,247,1) 0%,rgba(4,174,239,1) 100%);
	background:     -ms-linear-gradient(top, rgba(118,209,247,1) 0%,rgba(4,174,239,1) 100%);
}

a.button.colored.blue.light:hover {
	background: -webkit-linear-gradient(top, #06afef 0%, #00a0d8 100%); 
	background:    -moz-linear-gradient(top, #06afef 0%, #00a0d8 100%); 
	background:     -ms-linear-gradient(top, #06afef 0%, #00a0d8 100%); 
	background:      -o-linear-gradient(top, #06afef 0%, #00a0d8 100%); 
}

a.button:hover span	  { color: #4d6d88; }
a.button.blue:hover   { background-color: #3498db; }
a.button.purple:hover { background-color: #ab62c9; }
a.button.white:hover  { background-color: #ecf0f1; }

/* common button mods */
a.button.full { width: 100%; }
a.button.flex { width: auto; display: inline-block; }
a.button.long { width: 310px; height: 49px; line-height: 49px; }
a.button.su {width: 200px; height: 35px; line-height: 35px; margin-top: 20px;}
a.button.long-small { width: 290px; height: 33px; line-height: 33px; font-size: 18px; }
a.button.longest { width: 290px; height: 41px; line-height: 41px; }
a.button.medium {width: 230px; height:41px; line-height: 41px; font-size: 18px;}
.bgfull a.button.long {  height: 41px; line-height: 41px; text-transform: uppercase; }
a.button.small 	{ width: 184px; height: 33px; line-height: 33px; }
a.button.mini { width: 131px; height: 40px; line-height: 40px; font-size: 16px; padding: 0; text-align: center;  }
a.button.tiny { width: 120px; height: 33px; line-height: 33px; font-size: 13px; padding: 0; }
a.button.center { margin-left: auto; margin-right: auto; }
a.button.right  { float: right; }
a.button.bottom {
	position: absolute; /* Note: There MUST be a non-static parent, obviously. */
	bottom: 0px;
}
a.blue.medium { height:30px; line-height: 30px; font-size: 16px; }

/* Square Button e.g for seats number selection*/
a.button.square {
    -moz-box-sizing: border-box;
	     box-sizing: border-box;
	display: inline-block;
	margin-right:10px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	color:#003366;
	background-color:#fff;
	font-family: 'BerninoSansCondensed-Regular', Arial, sans-serif;
	border: 1px solid #003366;
	/*border-radius: 20px;*/
}
a.button.square:hover, a.button.square.chosen {color:#FFF; background-color: #ffcc00; border-color:#f4b90d;}

/* FORMS
- - - - - - - - - - - - - - - - - */
label {
	color: #1f396d;
	font-family: 'SourceSansPro-Bold';
	font-size: 12px;
	font-weight: normal;
}

label.optionals{color: #5E5F61; font-size: 12px; font-family: 'SourceSansPro-Light';}
label.optionals span { font-family: 'SourceSansPro-Bold'; }


label span  { color: #5E5F61; font-size: 12px; font-weight: bold; }
label.light { color: #999; }
label.error { color: #e44c3e; display: block; }
label.dark_green  {color: #336600;}
label.green { color: #27ae60; }
label.light_green {color: #53B26D;}
label.white { color: #ffffff; }
label.red   { color: #e44c3e; }

input, textarea, select {
	width: 260px;
	outline: none; /* removes crappy default webkit blue glow */
}

textarea#message{
	width: 350px;
	height: 100px;
}

input.error, textarea.error, select.error { border: 2px solid #e44c3e; box-shadow: none; }
input, textarea {
	-moz-box-sizing: border-box;
	     box-sizing: border-box;
	padding-left:  4px;
	padding-right: 4px;
	border: none;
	box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.3);
	border: 1px solid #eee;
}
input, select {
	border-radius: 5px;
	color: #2c3e50;
	font-family: 'OpenSans-Regular', Arial, sans-serif;
	font-size: 14px;
	line-height: 28px;
	height: 28px;
}
select{ margin-bottom: 10px; line-height: 16px; }
input.long { width: 240px; }

input.tall { height: 38px; line-height: 38px; margin-top: 6px; }

input.short { width: 110%; }
textarea {
	color: #2c3e50;
	font-family: 'OpenSans-Regular', Arial, sans-serif;
	font-size: 12px;
	height: 60px;
	max-width: 100%;
	max-height: 400px;
	background-color: white;
}
textarea.taller { height: 120px; }

input[type="file"] {
	line-height: 0;
	padding: 0;
	border: none;
	box-shadow: none;
	color: #ffffff;
}

input[type="checkbox"] {
	display: inline
	width: auto;
	box-shadow: none;
	margin-right: 4px;
}

input.terms[type="checkbox"]{
	display: inline;
	width: auto;
	box-shadow: none;
	margin-right: 4px;
	margin-bottom: 0px;
}

input.rounded { 
	border-radius: 11px;
	border-top: 1px solid #999;
	background-color: #f1f2f2;
	width: 260px;

}

select.gray {
	max-width: 100px;
}
textarea.gray, select.gray {
	border-radius: 3px;
	background-color: #ccc;
	background: -webkit-linear-gradient(top, #d2d4d5 0%, #fefefe 100%); 
	background:    -moz-linear-gradient(top, #d2d4d5 0%, #fefefe 100%); 
	background:     -ms-linear-gradient(top, #d2d4d5 0%, #fefefe 100%); 
	background:      -o-linear-gradient(top, #d2d4d5 0%, #fefefe 100%); 
}



.checkboxes input[type="checkbox"],
.checkboxes label {
	height: auto;
	line-height: 1;
	vertical-align: middle;
	width: auto;
}
.checkboxes input[type="checkbox"] {
}

/*file uploading */

.fileUpload {
	position: relative;
	float: left;
	overflow: hidden;

	padding-top: 4px;
	padding-left: 20px;
	padding-bottom: 4px;
	padding-right: 20px;
	background-image: url(../img/buttons/blue_button.png);
	margin-bottom: 10px;
}
.fileUpload input.upload {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	padding: 0;
	font-size: 20px;
	cursor: pointer;
	opacity: 0;
	filter: alpha(opacity=0);

}

.flex
{
	display: flex;
}
.flex-wrap
{
	flex-wrap: wrap;
}
.flex-col
{
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}

.flex-row
{
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
}

.jc-center
{
	justify-content: center;
}

.ai-center
{
	align-items: center;
}
