@import url(https://fonts.googleapis.com/css2?family=Titillium+Web:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700&display=swap);
/*family=Titillium+Web:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700&family=Prata&display=swap);*/
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,300);
@font-face {
  font-family: 'Great Vibes';
  src: url('https://www.cttangofest.org/fonts/GreatVibes-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Prata';
  src: url('https://www.cttangofest.org/fonts/Prata-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
body {
  font-size: 12px;
  background-color: #27C6C4; /*#690A0C; #27C6C4;*/
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  font-kerning: normal;
  color: #081723;
  margin: 0 auto;
  margin-top: 0px;
}
/************** links ***************/
a {
  color: #43ccba;
  text-decoration: none;
}
a:link, a:visited {
  color: #067971;
  text-decoration: none;
}
a:hover {
  color: #43ccba;
  text-decoration: none;
}
tr.strip a:hover img {
  border: 1px solid #FFCC00;
}
tr.strip a:active img {
  border: 1px solid #FF0000;
}
td.strip a:hover img {
  border: 1px solid #FFCC00;
}
td.strip a:active img {
  border: 1px solid #FF0000;
}
.festival_sub_title a:link, .festival_sub_title a:visited {
  color: #099;
  text-decoration: none;
}
.festival_sub_title a:hover {
  color: #C00;
  text-decoration: underline;
}
/************** misc general styles ***************/
form {
  margin-top: 0px;
  margin-bottom: -2px;
  text-align: center;
}
img {
  border: 1px solid #000000;
}
img.no_border {
  border: none;
}
table {
  border: none;
}
td.left_column {
  text-align: right;
  width: 350px;
}
td.right_column {
  text-align: left;
  width: 350px;
}
hr, hr.narrow, hr.medium, hr.vertical, hr.vertical_two_thirds {
  background-color: #00E9F0; /*#FEC53A;*/
  height: 1px;
  opacity: 60%;
  width: 98%;
}
hr.narrow {
  width: 30%;
  opacity: 30%;
}
hr.medium {
  width: 60%;
  opacity: 30%;
}
hr.light {
  background-color: transparent;
  height: 2px;
  width: 96%;
  text-align: center;
}
hr.light_red {
  background-color: #9c3424;
  height: 1px;
  width: 98%;
  opacity: 45%;
  text-align: center;
}
hr.vertical, hr.vertical_two_thirds {
  height: 1400px;
  width: 2px;
  text-align: center;
}
.or_border {
  /*color: rgba(0, 0, 0, 0.55);*/
  color: #9c3424;
  background: #9c3424;
  opacity: 100%;
  height: 1px;
  /*border-top-color: #eeeeee;
  border-top-style: solid;
  border-top-width: 1px;*/
  width: 96%;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 14px; /*OR word*/
  line-height: 20px;
  text-transform: uppercase;
  position: relative;
}

.or_border span {
  position: absolute;
  top: -10px;
  background: #ffffff;
  opacity: 100%;
  padding: 0 10px;
  left: calc(50% - 1em - 25px);
  /*left: calc(50% - 1em - 5px);*/
}
.border_box {
  margin-top: 5px;
  margin-bottom: 5px;
  padding-top: 5px;
  padding-bottom: 5px;
  border-color: #9c3424;
  border-style: solid;
  border-width: 1px;
}
p {
  text-align: left;
  margin-bottom: 0px;
}
p.date_text {
  margin-bottom: 10px;
  text-align: center;
}
p.date_text_italic {
  margin-bottom: -10px;
  text-align: center;
}
ul {
  text-align: left;
  margin-top: -5px;
}
li {
  color: #000;
  padding-bottom: 5px;
  margin-left: -15px;
}
td {
  padding: 5px;
}
/************** IDs and areas ***************/
#body_area, #body_area_pop_up {
  position: relative;
  top: 0px;
  left: 0px;
  width: 900px;
  margin: 0 auto;
  background-image: url(../jpg/bandoneon_bg_sepia.jpg);
  background-repeat: repeat;
  box-shadow: 0px 0px 20px 5px #89f1f0; /* #E9B306  #1A95BA  */
  border: 1px solid #5c0404; /* #F4E468 #CEE7D0*/
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}
#body_area_pop_up {
  width: auto;
  box-shadow: none;
  height: auto;
  min-height: 100vh;
}
#banner_area {
  position: relative;
  left: 0;
  top: 0;
}
#banner {
  position: relative;
  padding: 0px;
  height: 70px;
  top: 0px;
}
#banner_m {
	position: absolute;
	left: 124px;
	top: 1px;
	padding: 0px;
	height: auto;
	background-color: transparent;/*#F30;*/
	width: auto;
 }
#banner img, #banner_m img {
  border: none;
}
#icon_area img {
  border: none;
}
#title_strip, #title_strip_narrow, #title_strip_weekend, #title_strip_m, #title_strip_m_index {
  position: relative;
  left: 0px;
  background-color: #9c3424;
  margin: 0;
  padding: 0;
  border-top-width: 2px;
  border-top-style: solid;
  border-top-color: #bc5444;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-bottom-color: #7c1404;
}
#title_strip {
  height: 195px;
}
#title_strip_narrow, #title_strip_m {
  height: 132px;
}
#title_strip_m_index {
  height: auto;
}
#title_strip_weekend {
  width: auto;
  height: 132px;
}
#icon_area {
  position: absolute;
  top: 10px;
  right: 20px;
}
/*#button_area_main {
  position: absolute;
  top: 90px;
  left: 560px;
  height: 50px;
  width: 280px;
  background-color: #033;
  text-align: right;
  color: #ddd;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  font-size: 21px;
}*/
#button_area_main_show, #button_area_main_boot_camp, #button_area_main_workshops, #button_area_main_milongas, #button_area_main_fest, #button_area_main_weekend, #button_area_main_tango_sueno {
  position: absolute;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
}
	
#button_area_main_show {
  /*top: 227px; /*60px;*/
  top: 207px;
  /*left: 358px;*/
  left: 63px;
  height: 45px; /*75px;*/
  width: 150px;
  font-size: 18px; /*24px;*/
  padding-top: 16px; /*39px;*/
  padding-left: 10px;
  padding-bottom: 0px;
  padding-right: 10px;
}
#button_area_main_boot_camp {
  top: 93px;
  left: 0px;
  height: 90px;
  width: 129px;
  font-size: 18px;
  padding-top: 28px; /*39px;*/
  padding-left: 10px;
  padding-bottom: 0px;
  padding-right: 10px;
}
#button_area_main_workshops {
  top: 0px;
  left: 106px;
  height: 75px;
  font-size: 24px;
  padding-top: 39px;
  padding-left: 10px;
  padding-right: 10px;
}
#button_area_main_milongas {
  top: 111px;
  left: 166px;
  height: 75px;
  font-size: 24px;
  padding-top: 39px;
  padding-left: 10px;
  padding-right: 10px;
}
#button_area_main_fest {
  top: 20px;
  left: 175px;
  height: 116px;
  width: 180px;
  font-size: 18px;
  padding-top: 64px;
  padding-left: 0px;
  padding-right: 0px;
}
#button_area_main_weekend {
  top: 40px;
  left: 360px;
  height: 116px;
  width: 180px;
  font-size: 18px;
  padding-top: 64px;
  padding-left: 0px;
  padding-right: 0px;
}
#button_area_main_tango_sueno {
  top: 60px;
  left: 530px;
  height: 116px;
  width: 180px;
  font-size: 18px;
  padding-top: 64px;
  padding-left: 0px;
  padding-right: 0px;
}
#button_area, #button_area_d {
  position: relative;
  height: 24px;
  background-color: #9c3424;
  padding-top: 4px;
  padding-bottom: 0px;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-bottom-color: #7c1404;
  border-top-width: 2px;
  border-top-style: solid;
  border-top-color: #bc5444;
}
#activity_area {
  position: relative;
  margin-left: 10px;
  margin-right: 10px;
  border-bottom-width: 0px;
  border-bottom-color: #990000;
  border-bottom-style: solid;
  padding-top: 10px;
  min-height: 280px;
  width: auto;
}
#at_a_glance_area {
  position: relative;
  margin: 0 auto;
  width: auto;
  max-width: 720px;
  margin-top: 0px;
  border-bottom-width: 0px;
  border-bottom-color: #990000;
  border-bottom-style: solid;
  padding-top: 10px;
}
#registration_area {
  position: relative;
  margin-left: 10px;
  /*font-size:14px;*/
  padding-top: 10px;
  margin-right: 10px;
  height: auto;
}
#seating_chart_area {
  width: 390px;
  margin: auto;
  border: 2px;
  border-color: #000000;
  border-style: solid;
}
#footer_area {
  position: relative;
  width: auto;
  background-color: #255753;
  font-size: 8px;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  color: #ffd700;
  text-align: center;
  margin-top: 10px;
  padding-bottom: 3px;
  padding-top: 3px;
  padding-left: 5px;
  padding-right: 5px;
  border-top-width: 2px;
  border-top-style: solid;
  border-top-color: #0086e7;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-bottom-color: #002687;
}
#footer_area a:link, #footer_area a:visited {
  color: #D6F8C9;
  text-decoration: underline;
}
#footer_area a:hover {
  color: #f00;
  text-decoration: underline;
}
#festival_organizer, #festival_organizer_welcome {
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  letter-spacing: 1px;
  color: #F0F998;
  font-size: 11px;
  font-style: italic;
  font-weight: 400;
  font-stretch: extra-expanded;
  padding-top: 10px;
  padding-bottom: 2px;
  position: absolute;
}
#festival_organizer {
  top: 15px;
  width: 470px;
  margin-left: 480px;
}
#festival_organizer_welcome {
  top: 75px;
  width: 380px;
  margin-left: 480px;
}
#festival_organizer > a:link, #festival_organizer > a:visited, #festival_organizer_welcome > a:link, #festival_organizer_welcome > a:visited {
  color: #BCE50D;
  text-decoration: none;
}
#festival_organizer > a:hover, #festival_organizer_welcome > a:hover {
  color: #f33;
  text-decoration: none;
}
#welcome_text {
  position: relative;
  margin-top: 260px;
  margin-bottom: 20px;
}
/************** button styles ***************/
li.red {
  color: #f00;
}
li.orange {
  color: #c90;
}
li.green {
  color: #0c3;
}
li.blue {
  color: #0cc;
}
.at_a_glance a:visited, .at_a_glance a:link {
  color: #2e2d7b;
  text-decoration: none;
}
.at_a_glance a:hover {
  color: #c60B05;
  text-decoration: none;
}
a.button_main {
  text-shadow: none;
  text-decoration: none;
}
table.at_a_glance {
  font-size: 14px;
}
.button_show, .button_boot_camp, .button_workshops, .button_milongas {
  text-align: center;
  border-width: 3px;
  border-style: solid;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  font-weight: 600;
}
.button_show {
  background-color: #a00;
  color: #fdd701;
  border-bottom-color: #800;
  border-right-color: #800;
  border-top-color: #ca3030;
  border-left-color: #ca3030;
}
.button_show a:visited, .button_show a:link {
  color: #fdd701;
  text-decoration: none;
}
.button_show a:hover {
  color: #2e2d7b;
  text-decoration: none;
}
.button_boot_camp {
  background-color: #ef3c23;
  color: #fdd701;
  border-bottom-color: #af0c03;
  border-right-color: #af0c03;
  border-top-color: #ff6c53;
  border-left-color: #ff6c53;
}
.button_boot_camp a:visited, .button_boot_camp a:link {
  color: #fdd701;
  text-decoration: none;
}
.button_boot_camp a:hover {
  color: #2e2d7b;
  text-decoration: none;
}
.button_workshops {
  background-color: #fdd701; /*#0cc;*/
  color: #2e2d7b;
  border-bottom-color: #f9b701;
  border-right-color: #f9b701;
  border-top-color: #fdf731;
  border-left-color: #fdf731;
}
.button_workshops a:visited, .button_workshops a:link {
  color: #2e2d7b;
  text-decoration: none;
}
.button_workshops a:hover {
  color: #c60B05;
  text-decoration: none;
}
.button_milongas {
  background-color: #f6891f;
  color: #fdf701;
  border-bottom-color: #b6590f;
  border-right-color: #b6590f;
  border-top-color: #f6c94f;
  border-left-color: #f6c94f;
}
.button_milongas a:visited, .button_milongas a:link {
  color: #fdf701;
  text-decoration: none;
}
.button_milongas a:hover {
  color: #c60B05;
  text-decoration: none;
}
table.at_a_glance .button_show, table.at_a_glance .button_boot_camp, table.at_a_glance .button_workshops, table.at_a_glance .button_milongas {
  padding: 2px;
  font-size: 11px;	
}
.button_area_return {
  position: relative;
  height: 24px;
  text-align: center;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-style: italic;
  padding: 2px;
}
a.button_return {
  font-size: 14px;
  text-shadow: 0px 1px 0px #009;
  color: #ff0;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 20px;
  padding-right: 20px;
  border-width: 3px;
  border-bottom-color: #300;
  border-top-color: #900;
  border-left-color: #900;
  border-right-color: #300;
  border-style: solid;
}
a.button_return:link, a.button_return:visited {
  color: #600;
  text-shadow: 1px 1px 1px #C5C37C;
  text-decoration: none;
  /*border-width: 3px;
  border-bottom-color: #300;
  border-top-color: #900;
  border-left-color: #900;
  border-right-color: #300;*/
}
a.button_return:hover {
  background: #600;
  color: #f30;
  text-shadow: 1px 1px 1px #FB5E6D;
  text-decoration: none;
}
.footer {
  color: #ccc;
  font-size: 9px;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
}
a.footer:visited, a.footer:link {
  color: #ccc;
  text-decoration: none;
}
a.footer:hover {
  color: #f30;
  text-decoration: none;
}
.buttons {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 600;
  background-color: #00E9F0; /* #14A1FC; #00E9F0*/
  color: #067971; /*#ff8;*/
  padding-left: 8px;
  padding-right: 8px;
  padding-top: 3px;
  padding-bottom: 4px;
  top: 0px;
  position: relative;
  height: 26px;
  width: auto;
  letter-spacing: 1px;
  border-bottom-color: #00c9d0; /* #0481cC; #00b9c0;*/
  border-right-color: #00c9d0; /* #0481cC; /*#00b9c0;*/
  border-top-color: #20f9f0; /* #34c1FC; /*#00feFa;*/
  border-left-color: #20f9f0; /* #00E9F0; /*#00feFa;*/
  text-shadow: 0px 0px 1px #b0F9F0;
  border-width: 3px;
  border-style: solid;
}
button.buttons {
  height: auto;
  text-decoration: none;
}
a.buttons {
	text-decoration: none;
}
a.buttons:visited, a.buttons:link {
  color: #067971; /*#ff8;*/
  /*text-decoration: none;*/
  text-shadow: 0px 0px 1px #b0F9F0; /*#0ff; #0057b7; 0px 0px 3px #Fb0;*/
}
a.buttons:hover, button.buttons:hover {
  color: #ff0; /*F3FD9F;*/
  /*text-decoration: none;*/
}
a.buttons:active, button.buttons:active {
  color: #27C6C4; /*F3FD9F;*/
  /*text-decoration: none;*/
}
.button_fest, .button_weekend, .button_tango_sueno {
  text-align: center;
  border-width: 5px;
  border-style: solid;
  font-family: "Titillium Web", Arial, Helvetica, sans-serif;
  font-weight: 400;
}
.button_fest {
  background-color: #F7EB15;
  color: #D65236;
  border-bottom-color: #F7bB05;
  border-right-color: #F7bB05;
  border-top-color: #F7FB45;
  border-left-color: #F7FB45;
}
.button_fest a:visited, .button_fest a:link {
  color: #D65236;
  text-decoration: none;
}
.button_fest a:hover {
  color: #f00;
  text-decoration: none;
}
.button_weekend {
  background-color: #F38E40;
  color: #FFDC26;
  border-bottom-color: #f36E40;
  border-right-color: #f36E40;
  border-top-color: #F3bE70;
  border-left-color: #F3bE70;
}
.button_weekend a:visited, .button_weekend a:link {
  color: #FFDC26;
  text-decoration: none;
}
.button_weekend a:hover {
  color: #f00;
  text-decoration: none;
}
.button_tango_sueno {
  background-color: #C54232;
  color: #F7EB15;
  border-bottom-color: #C51232;
  border-right-color: #C51232;
  border-top-color: #C57232;
  border-left-color: #C57232;
}
.button_tango_sueno a:visited, .button_tango_sueno a:link {
  color: #F7EB15;
  text-decoration: none;
}
.button_tango_sueno a:hover {
  color: #f00;
  text-decoration: none;
}
.bio_area {
  position: relative;
  border: thin;
  border-style: solid;
  border-color: #000;
  padding: 6px;
  padding-top: 3px;
  margin: auto;
  width: 93%;
}
/************** title area styles ***************/
.festival_title {
  position: relative;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  margin-left: 20px;
  margin-top: 10px;
  color: #ffd700;
  font-size: 24px;
  font-weight: 500;
  text-shadow: 0px 0px 1px #0C9;
}
.festival_location {
  position: relative;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  letter-spacing: 1px;
  font-style: italic;
  margin-top: 2px;
  margin-left: 40px;
  color: #ffd700;
  font-size: 16px;
  font-weight: 400;
}
#title_strip > p > span.festival_location, #title_strip_weekend > p > span.festival_location, #title_strip_m > p > span.festival_location {
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  /*font-stretch: extra-expanded;*/
  color: #ffd700;
  font-size: 16px;
  font-weight: 200;
}
.festival_sub_title {
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  letter-spacing: 1px;
  margin-left: 40px;
  margin-top: 10px;
  color: #ffd700;
  font-size: 16px;
  font-weight: 400;
  text-shadow: 0px 0px 1px #6F9;
}
#festival_page_title {
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  position: absolute;
  right: 20px;
  top: 72px;
  color: #BCE50D;
  font-size: 42px;
  font-weight: 200;
  /*text-align: right;
  margin-right: 40px;*/
  text-shadow: 0px 0px 1px #731007;
}
/************** general text styles ***************/
.tiny_text, .small_text_times, .summary_text {
	font-family: "Prata", "Times New Roman", Times, serif;
}
.tiny_text {
  font-size: 10px;
  text-align: justify;
}
.small_text, .small_text_justified, .regular_text, .regular_text_justified, .regular_text_centered, .medium_text, .medium_text_justified, .large_text, .large_text_justified, .title_text, .event_content {
	font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
}
.small_text {
  font-size: 11px;
  text-align: center;
}
.small_text_justified {
  font-size: 11px;
  text-align: justify;
}
p.small_text_justified {
  margin-bottom: -5px;
}
.small_text_times {
  font-size: 11px;
  text-align: justify;
}
.regular_text {
  font-size: 12px;
  text-align: left;
}
.regular_text_justified {
  font-size: 12px;
  text-align: justify;
}
.regular_text_centered {
  font-size: 12px;
  text-align: center;
}
.summary_text {
  font-size: 13px;
  text-align: center;
}
.medium_text {
  font-size: 14px;
  text-align: center;
}
.medium_text_justified {
  font-size: 14px;
  text-align: justify;
}
.large_text {
  font-size: 16px;
  text-align: center;
}
.large_text_justified {
  font-size: 16px;
  text-align: justify;
}
.title_text {
  color: #999;
  font-weight: bold;
  text-align: center;
  font-size: 14px;
}
.center {
  text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
.justify {
  text-align: justify;
}
.red_text {
  color: #c00;
}
.event_content {
  font-size: 12px;
  color: #000;
}
table.event_content {
  font-family: "Prata", "Palatino Linotype", "Book Antiqua", Palatino, serif;
  font-size: 14px;
  color: #081723;
  text-align: justify;
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-top-style: solid;
  border-top-width: 2px;
  border-left-style: solid;
  border-left-width: 1px;
  border-right-style: solid;
  border-right-width: 0px;
  border-top-color: #2e2d7b;
  border-right-color: #2e2d7b;
  border-bottom-color: #2e2d7b;
  border-left-color: #2e2d7b;
}
table.event_content td {
  border-bottom-style: solid;
  border-bottom-color: #168193;
  border-bottom-width: 1px;
  border-right-style: solid;
  border-right-color: #168193;
  border-right-width: 1px;
  padding-right: 4px;
  padding-left: 4px;
  padding-top: 2px;
  padding-bottom: 1px;
}
table.event_description {
  vertical-align: top;
  width: 100%;
}
table.event_description td {
  vertical-align: top;
  text-align: center;
}
table.at_a_glance {
  text-align: center;
  color: #fdd700;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  border: 1px solid #2e2d7b;
  font-weight: 300;
}
td.border_right, td.border_bottom {
  border-right-color: #FEC53A;
  border-right-style: solid;
  border-right-width: 2px;
}
td.border_top, td.border_left {
  border-top-color: #FEC53A;
  border-top-style: solid;
  border-top-width: 2px;
}
table.seating_chart_row {
  margin: auto;
  font-size: 10px;
  text-align: center;
  vertical-align: middle;
}
table.seating_chart_row tr {
  height: 32px;
}
table.seating_chart_row td {
  width: 32px;
  height: 32px;
  /*border-width: 2px;
	border-color: #4112DE;
	border-style: solid;*/
  vertical-align: inherit;
  padding: 0px;
  border: none;
}
table.seating_chart_row td img {
  border: none;
}
.seat {
  position: relative;
  top: 0;
  left: 0;
  color: #ffd700;
}
.centered {
  position: relative;
  margin: auto;
  width: 100%;
}
.event_title_text, .description_title_text, .description_title_text_large_red {
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;	
} 
.event_title_text {
  color: #095241;
  letter-spacing: 3px;
  font-weight: bold;
  margin-top: 16px;
  padding-left: 10px;
  font-size: 14px;
}
.description_title_text {
  color: #9C3424; /*#067971;*/
  font-weight: bold;
  text-align: center;
  font-size: 20px;
}
.description_title_text_large_red {
  color: #9A0B05;
  font-weight: bold;
  text-align: center;
  font-size: 24px;
  margin-top: 0px;
  font-style: italic;
  text-shadow: 0px 0px 1px #6E1511;
}
.description_title_text_large, .description_title_text_not_so_large {
  background-color: #9c3424;
  color: #ffd790;
  font-weight: normal;
  text-align: center;
  font-family: "Great Vibes", Verdana, Arial, Helvetica, sans-serif;
  padding-top: 10px;
  padding-bottom: 2px;
  padding-left: 20px;
  padding-right: 20px;
  text-shadow: 0px 1px 2px #665A57;
  border-top-style: solid;
  border-right-style: solid;
  border-bottom-style: solid;
  border-left-style: solid;
  border-top-color: #bc5444;
  border-right-color: #7c1404;
  border-bottom-color: #7c1404;
  border-left-color: #bc5444;
  font-style: italic;
}
.description_title_text_large {
  padding-top: 4px;
  font-size: 32px;
  border-top-width: 2px;
  border-right-width: 2px;
  border-bottom-width: 2px;
  border-left-width: 2px;
}
.description_title_text_not_so_large {
  font-size: 16px;
  border-top-width: thin;
  border-right-width: thin;
  border-bottom-width: thin;
  border-left-width: thin;
}
.description_title_text_large a:link, .description_title_text_large a:visited {
  color: #fff;
  text-decoration: underline;
}
.description_title_text_large a:hover {
  color: #fff;
  text-decoration: underline;
}
.description_title_text_not_so_large a:link, .description_title_text_not_so_large a:visited {
  color: #fff;
  text-decoration: underline;
}
.description_title_text_not_so_large a:hover {
  color: #fff;
  text-decoration: underline;
}
.date_text {
  font-weight: 600;
  font-size: 16px;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  text-align: center;
  color: #255753;
}
.date_text_italic {
  font-weight: bold;
  font-size: 14px;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  text-align: center;
  color: #9F5841;
  font-style: italic;
}
.date_text a {
  text-decoration: underline;
}
.time_and_place_text {
  text-align: center;
  color: #000;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 600;
}
.location_text, .location_address, .address_text {
  text-align: center;
  color: #255753;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  font-weight: 400;
  font-size: 16px;
}
.address_text {
  font-weight: 300;
  font-size: 14px;
  font-style: italic;
}
.location_address {
  font-weight: 300;
  font-size: 14px;
  text-align: left;
}
.performer_text {
  text-align: center;
  color: #153863;
  font-size: 14px;
  font-weight: bold;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  font-style: italic;
  margin-bottom: 10px;
  margin-top: 5px;
}
.strong {
  font-weight: bolder;
}
.calendar_event_title {
  font-weight: bold;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  font-size: 11px;
}
.calendar_event_title_red {
  font-weight: bold;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  font-size: 11px;
  color: #f00;
}
.black_text {
  color: #000;
  text-align: center;
}
.slogan_text {
  font: "Prate", "Palatino Linotype", "Book Antiqua", Palatino, serif;
  font-size: 18px;
  text-align: center;
  font-style: italic;
  top: 5px;
  padding-top: 20px;
  padding-bottom: 10px;
}
.sponsor_text {
  text-align: center;
  margin-bottom: 0px;
  font-size: 12px;
  font-weight: bold;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  color: #C37667;
}
/************** for e-mails ***************/
td.red_cell {
  background-color: #a00;
  color: #eff;
}
td.red_cell a:link, td.red_cell a:visited {
  color: #bbb;
  text-decoration: none;
}
td.red_cell a:hover {
  color: #ddd;
  text-decoration: underline;
}
.very_large_text {
  font-size: 24px;
  text-align: center;
}
.very_large_red_text {
  font-size: 24px;
  text-align: center;
  color: #c00;
}
/* ----------- tables and buttons --------------*/
table.activity_table {
  width: 900px;
  background-color: #FEE;
  /*box-shadow: 0px 0px 5px 1px #444;*/
  border-style: solid;
  border-top-color: #eee;
  border-left-color: #eee;
  border-right-color: #111;
  border-bottom-color: #111;
  border-top-width: 1px;
  border-left-width: 1px;
  border-right-width: 1px;
  border-bottom-width: 1px;
}
.large_red_text {
  font-size: 16px;
  font-family: "Titillium Web", Verdana, Arial, Helvetica, sans-serif;
  text-align: center;
  color: #c00;
}
.btn {
  height: 24px;
  width: 120px;
  position: absolute;
  top: 0px;
  left: 0px;
}
.btn_minus, .b_minus {
  height: 24px;
  position: absolute;
  top: 0px;
  left: 0px;
}
.btn_plus, .b_plus {
  height: 24px;
  width: 36px;
  position: absolute;
  top: 0px;
  left: 40px;
}
.btn_trash {
  height: 24px;
  width: 36px;
}
.btn_like {
  height: 24px;
}
.b_like {
  height: 24px;
}
button {
  border: none;
  height: 24px;
  margin: 0px;
  cursor: pointer;
  background: transparent;
  padding: 0px;
  top: 0px;
  left: 0px;
}
input.input_btn, input.discount_btn, input.discount_btn_fixed {
  -webkit-appearance: none;
  border: none;
  background: transparent;
  height: 24px;
  width: 48px;
  text-align: center;
  padding: 0px;
  margin: 0px;
  top: 0px;
  left: 36px;
  position: absolute;
  color: #9C3424; /*#ef3e24;*/
  font-weight: bold;
  font-size: 12px;
}
input.discount_btn {
  position: relative;
  width: 200px;
  top: 30px;
  left: 0px;
  height: 40px;
  font-size: 16px;
  border: 2px solid #9C3424;
  margin: 0 auto;
}
input.discount_btn_fixed {
  background: #ffffff;
  position: fixed;
  top: 280px;
  left: 20px;
  height: 40px;
  width: 200px;
  font-size: 16px;
  border: 2px solid #9C3424;
  margin: 0 auto;
}
::placeholder {
  color: lightgrey;
  opacity: 1; /* Firefox */
}
::-ms-input-placeholder { /* Edge 12 -18 */
  color: lightgrey;
}
button:focus, input:focus {
  outline: 0;
}
.quantity {
  /*width: 120px;*/
}
.btn_background {
  position: relative;
  top: 0px;
  left: 0px;
  height: 24px;
  width: 120px;
}
.btn_background_fixed {
  position: fixed;
  top: 240px;
  left: 20px;
  height: 30px;
  width: 150px;
}
.inpt_background_fixed {
  position: fixed;
  top: 240px;
  left: 200px;
  height: 40px;
  width: 200px;
  font-size: 16px;
  border: 2px solid #9C3424;
}
button img, .btn_background img {
  border: none;
  box-shadow: none;
}
img.btn_seat_img {
  border: none;
  height: 32px;
  width: 32px;
}
img.btn_seat_img_fixed {
  border: none;
  height: 32px;
  width: 32px;
}
button.btn_seat {
  height: auto;
}
.item {
  width: auto;
  margin: auto;
  display: flex;
  /*flex-grow: 1;*/
  flex-direction: row;
  /*margin-top: 10px;*/
}
.price_text {
  color: #255753;
  font-size: 14px;
  font-weight: bold;
  font-family: "Titillium Web", Geneva, sans-serif;
  /*margin-right: 10px;
  /*margin-top: 3px;*/
  /*width: 40px;*/
  /*height: 30px;*/
  text-align: right;
}
.item_description {
  color: #255753;
  font-size: 14px;
  font-weight: normal;
  font-family: "Titillium Web", Geneva, sans-serif;
  margin-right: 0px;
  margin-top: 5px;
  width: auto;
  height: auto;
  text-align: center;
}
div.flex_row, div.flex_row_like, div.flex_row_two_thirds {
  display: flex;
  flex-direction: row;
  padding: 5px;
  /*padding-bottom: 5px;*/
}
div.flex_row_two_thirds {
  padding: 0px;
}
div.flex_column, div.flex_column_390, div.flex_column_full, div.flex_column_auto, div.flex_column_narrow, div.flex_column_220 {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 10px;
  padding-top: 0px;
  padding-bottom: 5px;
  width: 300px;
  margin: 0 auto;
  margin-top: 0px;
  text-align: center;
  vertical-align: top;
}
div.flex_column_390 {
  width: 390px;
}
div.flex_column_220 {
  width: 240px;
}
div.flex_column_full {
  width: 100%;
}
div.flex_column_auto {
  width: auto;
}
div.flex_column_narrow {
  width: 40px;
}
div.flex_column_blank {
  position: relative;
  display: flex;
  flex-direction: column;
  width: auto;
}
.flex_column_220 .item_description {
  text-align: right;	
}
div.description_title_block {
  font-size: 14px;
  font-weight: bold;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0 auto;
  vertical-align: middle;
}
div.description_content_block {
  font-size: 12px;
  text-align: justify;
}
.titillium-web-extralight {
  font-family: "Titillium Web", sans-serif;
  font-weight: 200;
  font-style: normal;
}
.titillium-web-extralight-italic {
  font-family: "Titillium Web", sans-serif;
  font-weight: 200;
  font-style: italic;
}
.titillium-web-light {
  font-family: "Titillium Web", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.titillium-web-light-italic {
  font-family: "Titillium Web", sans-serif;
  font-weight: 300;
  font-style: italic;
}
.titillium-web-regular {
  font-family: "Titillium Web", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.titillium-web-regular-italic {
  font-family: "Titillium Web", sans-serif;
  font-weight: 400;
  font-style: italic;
}
.titillium-web-semibold {
  font-family: "Titillium Web", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.titillium-web-semibold-italic {
  font-family: "Titillium Web", sans-serif;
  font-weight: 600;
  font-style: italic;
}
.titillium-web-bold {
  font-family: "Titillium Web", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.titillium-web-bold-italic {
  font-family: "Titillium Web", sans-serif;
  font-weight: 700;
  font-style: italic;
}
.titillium-web-black {
  font-family: "Titillium Web", sans-serif;
  font-weight: 900;
  font-style: normal;
}

@media (max-width: 852px) {
  body {
	background-image: none;
	width: auto;
	/*background-color: transparent;*/
  }
  #title_strip_weekend {
	height: 132px;
  }
  a.button_return {
	font-size: 11px;
	/*background-color: #36F;*/
	text-shadow: 0px 1px 0px #009;
	color: #ff0;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-left: 5px;
	padding-right: 5px;
	border-bottom-color:#009;
	border-top-color: #0CF;
	border-left-color: #0CF;
	border-right-color: #009;
	border-width: 1px;
	border-top-width: 2px;
	border-style: solid;
  }
  a.button_return:link, a.button_return:visited {
	color: #ff0;
	text-shadow: 0px 1px 0px #009;
	border-bottom-color:#c10;
	border-top-color: #f54;
	border-left-color: #f54;
	border-top-width: 2px;
	background-color: #F30;
	border-right-color: #c10;
  }
  a.button_return:hover {
	background: #0CF;
	text-shadow: 0px 1px 0px #009;
  }
  .button_area_return {
	/*background: none;
	background-color: none;
	border-width: 0px; TO BE DELETED */
	height: 30 px;
  }
  .at_a_glance {
	/*width: 100%;*/
  }
  table.at_a_glance {
	font-size: 12px;
  }
  .tiny_text {
	font-size: 12px;
  }
  .small_text, .small_text_justified {
	font-size: 12px;
  }
  .festival_organizer {
	margin-left: 100px;
  }
  .button_fest, .button_weekend, .button_tango_sueno {
	border-width: 3px;
  }
  .festival_location {
	margin-left: 20px;
	font-size: 11px;
  }
  .festival_sub_title {
	margin-left: 20px;
	font-size: 12px;
  }
  table.seating_chart_row tr{
	height: 24px;
  }
  table.seating_chart_row td{
	width: 24px;
	height: 24px;
  }
  div.flex_row_two_thirds {
    display: flex;
    flex-direction: column;
    padding: 0px;
  }
  hr.vertical_two_thirds {
    display: none;
  }
  /************** ID and area overrides ***************/
  #body_area {
	position: relative;
	top: 0px;
	left: 0px;
	/*width: 300px;*/
	width: auto;
	/*box-shadow: 0px 0px 10px 5px #666;*/
	background-image:url(https://www.cttangofest.org/jpg/bandoneon_bg_sepia.jpg);
	background-repeat: repeat;
  }
  /*#button_area {
	display: none;
  }*/
	
  #festival_organizer, #festival_organizer_welcome {
	  position: relative;
	  top: 0px;
	  left: 0px;
	  margin-left: 30px;
	}
  #activity_area {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 5px;
	width: 96%;
	margin: auto;
  }
  #button_area_main_show, #button_area_main_boot_camp, #button_area_main_workshops, #button_area_main_milongas {
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	width: auto;
	font-size: 18px;
	padding: 2px;
  }
  div#large_button_area {
	  flex-direction: column;
	}
  /*#button_area_main_boot_camp {
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	width: auto;
	font-size: 18px;
	padding: 2px;
  }
  #button_area_main_workshops {
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	font-size: 18px;
	padding: 2px;
  }
  #button_area_main_milongas {
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	font-size: 18px;
	padding: 2px;
  }*/
  #button_area_main_fest, #button_area_main_weekend, #button_area_main_tango_sueno {
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	width: auto;
	font-size: 18px;
	padding: 2px;
  }
  #at_a_glance_area {
	/*min-width: 200px;
	max-width: 320px;
	margin-left: auto;
	margin-right: auto;*/

  }
  #welcome_text {
	position: relative;
	top: 0px;
	left: 0px;
	margin-top: 10px;
  }
  /************** Mobile Menu Styles ***************/
  #cssmenu {
	font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, Sans-Serif;
    font-size: 14px;
	line-height: 15px;
	/*text-transform: uppercase;*/
    text-align: left;
	margin-bottom: 0;
	position: relative;
	top: 0;
	left: 0px;
	margin-left: 14px;
	margin-top: -1px;
	width: 108px;
	height: auto;
  }
  #cssmenu > ul {
  	width: auto;
  	list-style-type: none;
  	padding: 0;
  	margin: 0;
  	background: #fff;
  	/*border: 0px solid #0057b7;*/
	/*border: 1px solid #5c0404;*/
	border-top-color: transparent; /*#F4E468;*/
	border-left-color: #F4E468;
	border-right-color: #00c9d0; /*#F4E468;*/
  	border-bottom: 3px solid #d9ced2;
	border: 1px solid #5c0404;
  	-webkit-border-radius: 0px;
	-webkit-border-bottom-left-radius: 0px;
	-webkit-border-bottom-right-radius: 0px;
  	-moz-border-radius: 0px;
	-moz-border-bottom-left-radius: 0px;
	-moz-border-bottom-right-radius: 0px;
	-o-border-radius: 0px;
	-o-border-bottom-left-radius: 0px;
   	-o-border-bottom-right-radius: 0px;
  	border-radius: 0px;
  	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
  	height: auto;
  }
  #cssmenu > ul li#responsive-tab {
    display: none;
    /* Hide for large screens */
  }
  #cssmenu > ul li {
    display: inline-block;
    *display: inline;
    zoom: 1;
    height: 22px;
  }
  #cssmenu > ul li.right {
    float: right;
  }
  #cssmenu > ul li.has-sub {
    position: relative;
  }
  #cssmenu > ul li.has-sub:hover ul {
    display: block;
  }
  #cssmenu > ul li.has-sub ul {
    display: none;
    width: 250px;
    position: absolute;
    margin: 0;
    padding: 0;
    list-style-type: none;
    background: #fff;
    border: 1px solid #ece6e8;
    border-bottom: 3px solid #d9ced2;
    /*border-top: 0 none;*/
    border-top-color: transparent;
  }
  #cssmenu > ul li.has-sub ul li {
    display: block;
  }
  #cssmenu > ul li.has-sub > a {
    background-image: url('images/caret.png');
    background-repeat: no-repeat;
    background-position: 90% -95%;
  }
  #cssmenu > ul li.has-sub > a.active,
  #cssmenu > ul li.has-sub > a:hover {
    background: #d80041 url('images/caret.png') no-repeat;
    background-position: 90% 195%;
  }
  #cssmenu > ul li a {
	display: block;
	/*padding: 12px 24px 11px 24px;*/
    padding: 10px 10px 10px 10px;
	text-decoration: none;/*#d80041;*/
	/*text-shadow: 0px 1px 0px #009;*/
	text-shadow: 0px 0px 1px #b0F9F0;
	background-color: #00E9F0; /*#14A1FC; #F30;*/
	color: #067971; /*#ff8; *#FF0;*/
	border-width: 0px;
	border-top-width: 1px;
	border-top-color: #20ffF6; /*#34c1FC;*/
  }
  /*#cssmenu > ul li a:active,  a.active ?? */
  #cssmenu > ul li a:hover {
	color: #ff0; /*#f30;*/
	background-color: #F30; /*#14A1FC;*/
  	text-shadow: 0px 0px 1px #F77;
	border-width: 0px;
	border-top-width: 1px;
	border-top-color: #F99;
}
  #cssmenu > ul li a:active {
	color: #067971; /*#f30;*/
	background-color: #20ffF6; /*#14A1FC;*/
  	text-shadow: 0px 0px 1px #ff0;
	border-width: 0px;
	border-top-width: 1px;
	border-top-color: #20ffF6;
  }
} /* end max-width: 1024px, since it is set to 852px above, these two lines are redundant */
@media (max-width: 852px) {
  #cssmenu > ul {
    width: 100%;
  }
  #cssmenu > ul li#responsive-tab {
    display: block;
	margin-bottom: 0px;
	padding-bottom: 20px;
  }
  #cssmenu > ul li#responsive-tab a {
    background: url('../png/mobile_menu.png') no-repeat;
	 background-size: 108px;
    /*background-position: 95% -35%;*/
	/*background-color: #F30; old background color of the menu button*/
	background-color: #00E9F0;
	font-size: 0;
	padding-bottom: 20px;
	border-width: 0px;
	border-top-width: 1px;
	border-top-color: #20ffF6; /*#34c1FC;*/
  }
  #cssmenu > ul li#responsive-tab a:hover {
    /*background-color: #d80041;*/
	background-color: #F30;
    /*background-position: 95% 135%;*/
	color:  #3F3;
  }
  /*#cssmenu > ul li#responsive-tab a:visited {
	background-color: #F30;
	color:  #3F3;
  }*/
  #cssmenu > ul li#responsive-tab a:active {/*tutti*/
	background-color: #20ffF6;
	color:  #3F3;
  }
  #cssmenu > ul li {
    display: none;
	margin-bottom: 0px;
  }
  #cssmenu > ul li.right {
    float: none;
  }
  #cssmenu > ul li.has-sub {
    position: relative;
  }
  #cssmenu > ul li.has-sub ul {
    display: block;
    position: static;
    width: 100%;
    /*background: #ffffff;*/
	background-color: transparent;
    border: 0 none;
  }
  #cssmenu > ul li.has-sub ul li {
    display: block !important;
  }
  #cssmenu > ul li.has-sub ul li a span {
    display: block;
    padding-left: 24px;
  }
  #cssmenu > ul li.has-sub > a {
    background-image: none;
  }
  #festival_page_title {
	font-size: 36px;
	right: 20px;
	top: 72px;
  }
} /* end max-width: 852px */
/* Make sure they show even if hidden in mobile view by JS */
/*@media (min-width: 600px) 
@media (min-width: 650px) {
  #cssmenu > ul > li.collapsed {
    display: inline-block !important;
    *display: inline;
    zoom: 1;
  }
  #cssmenu > ul ul li.collapsed {
    display: block !important;
  }
}*/
/* cellphone portrait mode */
@media (max-width: 450px) {
  div.flex_row {
    display: flex;
    flex-direction: column;
    padding: 0px;
  }
  .festival_title {
    font-size: 22px;
  }
  hr.vertical {
    display: none;
  }
  #festival_page_title {
    font-size: 32px;
	top: 67px;
  }
  #calendar_separator {
	display: none;
  }
  #footer_area {
    font-size: 7px;
  }
  #seating_chart_area {
    width: auto;
    margin: 0;
    border: none;
  }
}

/* --------- TOGGLES ---------------- */
@media (min-width: 853px) {
	#cssmenu {
		display: none;
	}
	#banner_m {
		display: none;
	}
	#banner {
		display: block;
	}
	#title_strip_m, #title_strip_m_index {
		display: none;
	}
	#title_strip, #title_strip_narrow {
		display: block;
	}
	#button_area_d {
		display: block;
	}
	#main_buttons_m {
		display: none;
	}
	#main_buttons_d {
		display: block;
	}
}
@media (max-width: 852px) {
	#cssmenu {
		display: block;
	}
	#banner_m {
		display: inline;
	}
	#banner, #banner_w {
		display: none;
	}
	#title_strip_m, #title_strip_m_index {
		display: block;
	}
	#title_strip, #title_strip_narrow, #title_strip_weekend {
		display: none;
	}
	#button_area_d {
		display: none;
	}
	#main_buttons_m {
		display: block;
	}
	#main_buttons_d {
		display: none;
	}
}