@charset "UTF-8";

/**
 *
 * Palace: Stylesheet public web
 *
 * @author     Manuel Märklin
 * @copyright  2013 Manuel Märklin Programmierung, Switzerland
 * @link       https://www.2mp.ch
 */


@font-face {
	font-family: 'archivo_narrowregular';
    font-weight: normal;
    font-style: normal;
	font-stretch:condensed;
	src: url('types/archivonarrow-regular-webfont.eot');
    src: url('types/archivonarrow-regular-webfont.woff') format('woff'),
		url('types/archivonarrow-regular-webfont.ttf') format('truetype'),
		url('types/archivonarrow-regular-webfont.svg#archivo_narrowregular') format('svg');
}

@font-face {
	font-family: 'archivo_narrowbold';
    font-weight: bold;
    font-style: normal;
	font-stretch:condensed;
	src: url('types/archivonarrow-bold-webfont.eot');
    src: url('types/archivonarrow-bold-webfont.woff') format('woff'),
		url('types/archivonarrow-bold-webfont.ttf') format('truetype'),
		url('types/archivonarrow-bold-webfont.svg#archivo_narrowbold') format('svg');
}


@media all {


	* {
		margin: 0;
		padding: 0
	}

	body {
		font-family: "Times New Roman", Times, serif;
		font-size: 17px;
		font-weight: 500;
		font-style: normal;
		line-height: 1.3em;
		color: #000000;
		max-width: 777px;
		height: 100%;
	}

	a {
		color: #000000;
		text-decoration: none;
		cursor: pointer;
	}

	a.highlight {
		color: #ff0000;
	}

	h1, h2 {
		font-size: 15px;
		text-transform: uppercase;
		margin-bottom: 8px;
	}

	h1 {
		font-family: "archivo_narrowbold", "Arial Narrow", "Arial", sans-serif;
		letter-spacing: 1px;
	}

	h2 {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-weight: normal;
		letter-spacing: 0.11em;
	}

	img {
		border: 0;
	}

	iframe {
		width: 380px;
        height: 228px;
		margin-top: 1.0em;
		margin-bottom: 1.0em;
	}

	p {
		margin-bottom: 1.0em;
	}

	ol, ul {
		margin: 0;
		padding-left: 1.5em;
	}

	table {
		width: 100%;
		border-collapse: collapse;
	}

	td {
		vertical-align: top;
	}

	.form {
		margin-top: 2.0em;
	}

	.form table {
		width: auto;
	}

	.form th {
		padding: 1.0em 0 0.5em 0;
	}

	.form td {
		vertical-align: middle;
		padding-right: 1.0em;
	}

	.form .errormsg,
	.form .helptext,
	.form .label.help
	{
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		letter-spacing: 0.15em;
		text-transform: uppercase;
		padding-bottom: 0.5em;
	}

	.form .confirmation {
		font-weight: bold;
		padding: 1.0em 0;
	}

	.form .helptext {
		padding-left: 24px;
	}

	.form .postfix {
		margin-left: 12px;
		display: inline-block;
	}

	.form td.checkbox {
		padding-right: 0;
	}

	.form td.error {
		color: #ff0000;
	}

	.form input,
	.form select,
	.form textarea {
		padding: 0.2em;
		width: 200px;
		border: 1px solid #aaaaaa;
		margin-bottom: 2px;
	}

	.form input.small {
		width: 40px;
	}

	.form input.med {
		width: 149px;
	}

	.form input.num {
		text-align: right;
	}

	.form label.checkbox {
		padding-left: 6px;
	}

	.form .whpclass,
	.form .whpclass label{
		opacity: 0;
		position: absolute;
		top: 0;
		left: 0;
		height: 0;
		width: 0;
		z-index: -1;
	}

	.form select.small {
		width: 79px;
	}

	.form textarea {
		width: 199px;
	}

	.form input[type="submit"],
	.form input[type="reset"],
	.form input[type="button"],
	.form select {
		width: 100px;
		margin-top: 0.5em;
	}

	.form input[type="checkbox"] {
		width: 15px;
		margin-top: 0;
	}

	.form input[type="submit"],
	.form input[type="reset"],
	.form input[type="button"] {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		letter-spacing: 0.15em;
		text-transform: uppercase;
		background-color: #ffffff;
		padding: 0.3em 0;
		cursor: pointer;
	}

	.form input[disabled],
	.form input[readonly]
	{
		background-color: #f0f0f0;
	}

	.table {
		display: table;
		width: 100%;
	}

	.tr {
		display: table-row;
	}

	.td {
		display: table-cell;
		vertical-align: top;
	}

	.cancelled {
		color: #ff0000;
	}

	.cursor {
		cursor: pointer;
	}
/**
  * Content of main layout elements
  */
	html {
		height: 100% !important;
	}

	#page {
		position: relative !important;
		min-height: 100%; /* real browsers */
		height: auto !important;
		text-align: left;
		margin: 0 auto;
		max-width: 100%;
		z-index: 100;
	}

	#main {
		padding: 12px;
	}

	#event .description a,
	#freetext a,
	#sitepage a {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 15px;
		letter-spacing: 0.11em;
	}

	#event .description a:before,
	#freetext a:before,
	#sitepage a:before {
		content: "\003E";
		margin-right: 6px;
	}



/* Col 1  */
	#logo {
		font-size: 21px;
		width: 360px;
		position: relative;
		top: 0;
		z-index: 300;
	}

	#nav table {
		border-top: 6px solid #ffffff;
		border-bottom: 6px solid #ffffff;
	}

	#nav td {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 14px;
		line-height: 1.0em;
		text-transform: uppercase;
		letter-spacing: 4px;
		text-align: center;
		vertical-align: middle;
		color: #f6f6f6;
		background-color: #000000;
		padding-top: 6px;
		padding-bottom: 5px;
		margin-right: 6px;
		cursor: pointer;
	}

	@-moz-document url-prefix() {
	    #nav td {
	        padding-top: 5px;
	        padding-bottom: 6px;
	    }
	}

	#nav td.active {
		font-family: "archivo_narrowbold", "Arial Narrow", "Arial", sans-serif;
		color: #000000;
		background-color: #ffffff;
	}

	#nav td.narrow {
		padding-left: 6px;
		padding-right: 6px;
	}

	#nav td.spacer {
		width: 6px;
		color: #000000;
		background-color: #ffffff;
		cursor: auto;
	}

	#nav ul,
	#subnav ul {
		padding-left: 0;
	}

	#nav li,
	#subnav li {
		font-family: "archivo_narrowregular", "Arial Narrow", "Nimbus Sans L", sans-serif;
		font-size: 15px;
		letter-spacing: 1px;
		text-transform: uppercase;
		margin: 0;
		padding: 4px 0 4px 12px;
		border-top: 1px solid #000000;
	}

	#subnav ul {
		list-style: none;
		border-bottom: 6px solid #000000;
		cursor: pointer;
	}

	#subnav li {
		background-color: #ffffff;
	}

	#nav li.active,
	#subnav li.active {
		background-color: #dddddd;
	}

	#subnav h2 {
		cursor: pointer;
	}

	#subnav h2.active {
		border-bottom: 1px solid #000000;
	}

	#leftscrollable,
	#rightscrollable {
		scrollbar-color: #eee #fff;
		scrollbar-width: thin;
	}

	#leftscrollable::-webkit-scrollbar,
	#rightscrollable::-webkit-scrollbar {
		width: 6px; /* vertical scrollbars */
	}

	#leftscrollable:hover,
	#rightscrollable:hover{
		scrollbar-color: #444 #eee;
	}

	#leftscrollable::-webkit-scrollbar-thumb,
	#rightscrollable::-webkit-scrollbar-thumb {
		background: #444;
	}

	#leftscrollable::-webkit-scrollbar-track,
	#rightscrollable::-webkit-scrollbar-track {
		background: #eee;
	}


	#leftscrollable {
		width: 386px;
		height: 97%;
		position: fixed;
		top: 12px;
		overflow-y: auto;
		overflow-x: hidden;
		z-index: 200;
	}

	#scrollcontainer {
		padding-top: 150px;
		width: 360px;
	}

	#teaser {
		position: relative;	/* position, width, height required to rotate teaser content */
		width: 360px;
		height: 100px;
		cursor: pointer;
	}

	#teaser div.event {
		padding: 12px 12px 12px 0;
		margin-bottom: 6px;
		display: none;
		position: absolute;	/* position, top, left, width required to rotate content (banner) */
		top: 0;
		left: 0;
		width: 348px;
		height: 66px;
	}

	#teaser div.date,
	#teaser div.event .act {
		margin-left: 12px;
	}

	#teaser .color1 {
		background-color: #ecf7a4;
	}

	#teaser .color2 {
		background-color: #fcd0e7;
	}

	#teaser .color3 {
		background-color: #bce6e3;
	}

	#teaser #event h1 {
		margin-bottom: 12px;
	}

	#freetext {
		padding: 12px 0 0 12px;
		border-top: 6px solid #000000;
		margin-bottom: 20px;
	}

	div.date,
	#freetext h1 {
		font-family: "Times New Roman", Times, serif;
		font-size: 22px;
		font-style: italic;
		font-weight: normal;
		letter-spacing: 0;
		text-transform: none;
		margin-bottom: 8px;
	}

	#program {
		font-size: 21px;
		border-top: 6px solid #000000;
	}

	#program .eventtable {
		padding-top: 10px;
		padding-left: 12px;
		padding-bottom: 12px;
		border-bottom: 2px solid #000000;
		cursor: pointer;
		position: relative;
	}

	#program .headline {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: 0.15em;
		position: absolute;
		top: 6px;
		right: 0;
	}

	#error {
		padding-right: 12px;
		width: 100%;
	}

/* Col 2: Content  */

	#rightscrollable {
		width: 98%;
		height: 97%;
		position: fixed;
		top: 12px;
		overflow-y: auto;
		overflow-x: hidden;
		z-index: 100;
	}

	#content {
		padding-left: 408px;
	}

	#content #event,
	#content #showarchive,
	#content #sitepage {
		width: 584px;
	}

	.act {
		font-family: "archivo_narrowbold", "Arial Narrow", "Arial", sans-serif;
		font-size: 22px;
		line-height: 1.0em;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		padding-left: 18px;
		padding-right: 12px;
		padding-bottom: 4px;
	}

	.support,
	.origin {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 15px;
		text-transform: uppercase;
		letter-spacing: 1px;
	}

	.origin {
		padding-left: 6px;
		line-height: 1em;
	}

	.support {
		padding-left: 18px;
		padding-right: 12px;
	}

	.support .origin:before {
		content: "\0028";
	}

	.support .origin:after {
		content: "\0029";
	}

	#event .img {
		margin-bottom: 12px;
		position: relative;
		height: 324px;
	}

	#event .img img {
		max-height: 100%;
	}

	#event .acts {
		margin-bottom: 12px;
	}

	#event .admin {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: 0.15em;
		line-height: 1.5em;
		margin-bottom: 6px;
	}

	#event .rightcol {
		width: 190px;
	}

	#event .admin span {
		padding-right: 8px;
	}

	#event .caption,
	#gallery .caption {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: 0.15em;
		color: #000000;
		background-color: #ffffff;
		padding: 1px 6px;
		margin: 0;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 500;
	}

	#event .description {
		padding-right: 34px;
	}

	#event .links {
		margin-bottom: 12px;
	}

	#event .links ul,
	#event .social td {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		letter-spacing: 0.15em;
		line-height: 1.5em;
		list-style: none;
		cursor: pointer;
		padding-left: 0;
	}

	#event .links li:before {
		content: "\003E";
		margin-right: 6px;
	}

	#event .media {
		margin-bottom: 6px;
	}

	#event .media ul {
		line-height: 0;
		list-style: none;
		cursor: pointer;
		padding-left: 0;
		margin: 0;
		padding: 0;
	}

	#event .media .caption {
		line-height: 1.5em;
	}

	#event .media img,
	#event .media li {
		position: relative;
		width: 190px;
	}

	#event .media li {
		margin-bottom: 6px;
	}

	#event .social {
		margin-bottom: 6px;
	}

	#event .social table {
		width: auto;
	}

	#event .social td {
		padding-right: 6px;
		width: 22px;
	}

	#event .social .fb {
		position: absolute;
	}

	#event .social .fb-overlay,
	#event .social .fb-like {
		width: 16px;
		height:16px;
		position: absolute;
		top: 0;
		left: 0;
	}

	#event .social .fb-overlay {
		color: #ffffff;
		background-color: #000000;
		text-align: center;
		vertical-align: middle;
	}

	#event .social .fb-like {
		border:none;
		margin: 0;
		overflow:hidden;
		opacity: 0;
		filter: alpha( opacity=0 );
		z-index:1000;
	}

	#event .tickets {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 11px;
		text-transform: uppercase;
		text-decoration: underline;
		letter-spacing: 0.15em;
		line-height: 1.5em;
	}

	#gallery .title {
		line-height: 1.2em;
		text-align: center;
		width: 100%;
		position: absolute;
		z-index: 100;
		top: 45px;
	}

	#gallery .title .prefix{
		line-height: 1.5em;
	}

	#gallery .image {
		margin-right: 12px;
		margin-bottom: 12px;
		height: 180px;
		float: left;
		position: relative;
	}

	#gallery .large {
		height: 540px;
	}

	#gallery .image img {
		position: relative;
		z-index: 200;
		height: 180px;
		width: auto;
	}

	#gallery .large img {
		height: 540px;
	}

	#showarchive .years {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-weight: normal;
		font-size: 18px;
		letter-spacing: 0.11em;
		margin-top: 6px;
	}

	#showarchive .years a {
		padding: 8px 8px 8px 0;
	}

	#showarchive .currentyear {
		font-family: "archivo_narrowbold", "Arial Narrow", "Arial", sans-serif;
		font-size: 27px;
		letter-spacing: 1px;
		margin-top: 6px;
		padding: 8px 0;
		border-top: 6px solid #000000;
		border-bottom: 6px solid #000000;
	}

	#showarchive .event {
		cursor: pointer;
		border-bottom: 2px solid #000000;
		padding: 6px 0;
		position: relative;
	}

	#showarchive .info {
		display: flex;
	}

	#showarchive .acts,
	#showarchive .date {
		display: inline-block;
	}

	#showarchive .acts {
		margin-bottom: 6px;
	}

	#showarchive .acts .act,
	#showarchive .acts .support {
		padding: 0;
	}

	#showarchive .date {
		flex: 0 0 120px;
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-weight: normal;
		font-style: normal;
		font-size: 15px;
		letter-spacing: 0.11em;
		vertical-align: top;
		padding-top: 3px;
	}

	#showarchive .img {
		display: none;
		position: absolute;
		right: -200px;
		top: -8px;
	}

	#showarchive .img img {
		width: 180px;
		height: auto;
	}

	#showarchive .content {
		display: none;
		margin: 20px 0 0 0;
		padding-left: 0;
	}

	#showarchive .content .headline {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 15px;
		text-transform: uppercase;
		letter-spacing: 0.15em;
		line-height: 1.5em;
		margin-bottom: 6px;
	}

	#sitepage td {
		padding-right: 12px;
	}

	#sitepage td:last-child {
		padding-right: 0;
	}

	#sitepage img.imgleft {
		float: left;
        margin-right: 12px;
	}

	#sitepage img.imgright {
		float: right;
        margin-left: 12px;
	}

	#sitepage .customer table {
		width: auto;
		margin-bottom: 1.0em;
	}

	#sitepage .customer td {
		font-family: "archivo_narrowregular", "Arial Narrow", "Arial", sans-serif;
		font-size: 14px;
		letter-spacing: 0.15em;
		padding-left: 24px;
	}

	#sitepage .form {
		margin-bottom: 2.0em;
	}

	/* Phone Layout */
	.phone #main {
		padding: 0;
	}


	.phone .form input[type="submit"],
	.phone .form input[type="reset"],
	.phone .form select {
		width: auto;
		font-size: 14px;
		line-height: 2.0em;
		padding: 0.4em 2.0em;
	}


	.phone #logo {
		width: 100%;
		position: static;
	}

	.phone #nav td {
		font-size: 15px;
		font-family: "archivo_narrowbold", "Arial Narrow", "Arial", sans-serif;
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.phone #subnav ul {
		margin-bottom: 8px;
	}

	.phone #nav li,
	.phone #subnav li {
		font-size: 17px;
		letter-spacing: 2px;
		padding: 9px 0 9px 12px;
	}

	.phone #content {
		padding-left: 0;
	}

	.phone #teaser {
		width: 100%;
	}

	.phone #teaser div.event {
		width: 100%;
		padding-right: 0px;
	}

	.phone #freetext {
		font-size: 17px;
		padding-right: 12px;
	}

	.phone #program .eventtable {
		padding-left: 0px;
		padding-right: 0px;
	}

	.phone #program .eventtable h1,
	.phone #program .eventtable .admin,
	.phone #program div.date,
	.phone #program .eventtable .description,
	.phone #program .eventtable .links,
	.phone #program .eventtable .social,
	.phone #program .eventtable .tickets {
		padding-left: 12px;
		padding-right: 6px;
	}

	.phone #program .eventtable .act,
	.phone #program .eventtable .headline,
	.phone #program .eventtable .support {
		padding-left: 30px;
	}

	.phone #program .eventtable .headline {
		position: static;
		font-size: 12px;
	}

	.phone #program .active {
		color: #ffffff;
		background-color: #000000;
		border-bottom-color: #ffffff;
		cursor: auto;
	}

	.phone #program .active a {
		color: #ffffff;
	}

	.phone #program #event {
		margin-right: 0;
	}

	.phone #program #event .admin,
	.phone #program #event .tickets {
		font-size: 15px;
		letter-spacing: 1px;
	}

	.phone #program #event .admin {
		margin-bottom: 12px;
		clear: both;
	}

	.phone #program #event .description {
		font-size: 17px;
	}

	.phone #event .links ul {
		font-size: 13px;
		letter-spacing: 0.1em;
	}

	.phone #program #event .media {
		margin-left: 0;
		margin-right: 0;
	}

	.phone #program #event .tickets div {
		float: left;
		width: 50%;
		padding: 15px 0;
	}

	.phone #gallery {
		margin-left: 12px;
	}

	.phone #showarchive .active {
		color: #ffffff;
		background-color: #000000;
		border-bottom-color: #ffffff;
	}

	.phone #showarchive .active a {
		color: #ffffff;
	}

	.phone #showarchive h1,
	.phone #showarchive .years,
	.phone #showarchive .currentyear,
	.phone #showarchive .info,
	.phone #showarchive .content {
		padding-left: 12px;
		padding-right: 12px;
	}

	.phone #showarchive .years {
		margin: 8px 0 10px 0;
	}

	.phone #showarchive .years a {
		padding: 6px 12px 6px 0;
	}


	.phone #showarchive .img {
		left: 130px;
	}


	.phone #sitepage {
		margin-left: 12px;
	}

}

/**
 *	Medium screen
 */

@media screen and (max-width:1230px)
{
	#showarchive .img {
		display: none;
		position: relative;
		right: 0;
		top: 0;
		left: 110px;
		margin-top: 12px;
	}
}

@media screen and (min-width:801px) and (max-width:1038px)
{
	#content #event,
	#content #showarchive,
	#content #sitepage {
		width: auto;
		margin-right: 24px;
	}

	.phone #content #showarchive {
		margin-right: 0;
	}

	#content #event .img img,
	#event .media img {
		max-width: 100%;
	}

	#event .rightcol {
		width: 140px;
		padding-left: 12px;
	}

	#event .description {
		font-size: 16px;
		padding-right: 0;
	}

	#event .media {
		width: 140px;
	}

	#showarchive .acts {
		width: auto;
	}

	#showarchive .date {
		width: 106px;
		max-width: 106px;
	}

}


/**
 *	Small screen
 */
@media screen and (max-width:800px)
{
	body {
		font-size: 16px;
	}

	.form td {
		padding-right: 0.5em;
	}

	.form input,
	.form select {
		width: 160px;
	}

	.form input.small {
		width: 33px;
	}

	.form input.med {
		width: 116px;
	}

	.form textarea {
		width: 159px;
	}

	.form .helptext {
		float: left;
		padding-left: 8px;
	}

	#logo {
		width: 290px;
	}

	#logo img {
		max-width: 100%;
	}

	#nav td {
		font-size: 12px;
		letter-spacing: 3px;
	}

	#leftscrollable {
		width: 316px;
	}

	#scrollcontainer {
		padding-top: 126px;
		width: 290px;
	}

	#teaser {
		width: 290px;
	}

	#teaser div.event {
		width: 278px;
		height: 66px;
	}

	#program {
		font-size: 19px;
	}

	#program .headline {
		font-size: 10px;
	}

	#content {
		padding-left: 328px;
	}

	#content #event,
	#content #showarchive,
	#content #sitepage {
		width: auto;
		margin-right: 24px;
	}

	.phone #content #showarchive {
		margin-right: 0;
	}

	#logo img,
	#content #event .img img,
	#event .media img {
		width: 100%;
		max-width: 100%;
	}

	#event .media,
	#event .media li {
		width: 100%;
	}

	#event .description {
		font-size: 16px;
		padding-right: 0;
	}

	#event .links {
		margin-top: 12px;
		margin-bottom: 0;
	}

	#event .social {
		margin-top: 18px;
	}

	#event .tickets {
		margin-bottom: 12px;
	}

	#gallery .large,
	#gallery .large img {
		height: 360px;
	}

	#sitepage img {
		max-width: 120px;
		height: auto;
	}

}

@media screen and (max-width:420px)
{
	iframe {
		width: 98%;
 	}
}

@media screen and (max-width:360px)
{
	#showarchive .date {
		flex: 0 0 100px;
	}

}
