@charset "UTF-8";
/*   Freewheel html5 CSS   */

/* COLOURS
yellow        #ebb33a;
yellow-orange #e39137;
orange        #dc6f34;
red           #c44d31;
*/

body {
	font-size: 14px; /* 16/320 */
	line-height: 1.3em;
	background-color: #f0f0f0;
}
html, body {
	height: 100%;
	/* overflow: hidden; */
}
body, p, th, td, li, h1, h2, h3, h4, legend, input, label {
	color: #7f7f7f;
	font-family: Arial, sans-serif;
	text-align: left;
}
strong {
	font-weight: bold;
}
a:link, a:visited {
	color: #666699;
	text-decoration: none;
}
a:hover, a:active, a:focus {
	text-decoration: underline;
}

/* HEADER */
/* ====== */

header {
  background-color: white;
  position: fixed;
  top: 0;
  width: 100%;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
}
header > .header-wrapper {
  display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	height:      10vh; /*  header height  */
}
#content {
	padding-top: 10vh; /* space for header */
	margin: 0 auto;    /* center for responsive */
	background-color: white;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
header h1 {  /* hidden header title */
	height: 0px;
	font-size: 0;
	line-height: 0;
	text-indent: -20000px;
}
#logo {
	width: 80vw; /* 28/498 */
	margin-left: 3.125vw;
}
#menu-icon {
	width: 5.625vw;
	margin-right: 4.6875vw;
}
#logo, #menu-icon {
	display: block; /* removes img pixel gap */
}
.header-wrapper > .nav-links {
  font-size: 18px;
  position: absolute;
  /* display: block; */
  width: 100%;
  height: 0px;
  overflow-y: hidden;
  top: 10vh; /* 50/498 */
  left: 0;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
}
/*  link styles   */
header a:link, header a:visited {
  width: 100%;
  display: block;
  color: #999999;
  background-color: white;
  border-bottom: 1px solid #ccc;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 1.4em;
	line-height: 2;
	text-align: center;
	text-decoration: none;
}
/* all active states + current */
header a:hover, header a:active, header a:focus, header a.current {
  color: white;
	background-color: #ebb33a;
  border-bottom: 1px solid white;
}
.header-wrapper > #nav-check {
  display: none;
}
.header-wrapper > #nav-check:not(:checked) + .nav-links {
  height: 0px;
}
.header-wrapper > #nav-check:checked + .nav-links {
  height: auto;
  overflow-y: auto;
}

/* HEADERS */
h1, h2, h3, h4 {
	color: #c1c1cf;
	font-family: 'Barlow Condensed', sans-serif;
	line-height: 1.2;
}
p, h1, h2, h3, h4 {
	margin-bottom: 1em; /* vertical ONLY margins on text */
}
h1 {
	font-size: 24px;
	text-align: center;
}
h2, h3 {
	color: white;
	font-size: 22px;
	text-align: center;
	background-color: #ebb33a;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	padding-top:    5px; /* vertical space inside */
	padding-bottom: 5px; /* vertical space inside */
	margin-bottom: 15px; /* vertical space after heading */
}
h2 { /* header preceeding panel */
	padding-bottom: 10px; /* extra 5px overlap */
	margin-bottom: -5px; /* vertical space after heading */
	margin-left: 15px;
	margin-right: 15px;
}
h3 { /* header inside panel */
	margin-left: -15px; /* cancel panel padding */
	margin-right: -15px; /* cancel panel padding */
}
.red { /*  red background - for any header  */
	background-color: #c44d31;
}
h3.red span.publisher { /* small caps text in headings */
	color: #ebb33a;
	font-size: 16px;
}
h3 img {
	height: 18px;
}
.welcome > h3,
.writing > h3,
.action > h3 {
	margin-top: -15px;
}
.action > h3 {
	background-color: #c44d31;
}
h4 {font-size: 16px;}
footer {
	padding: 1em 0;
	background-color: white;
}

/* main photo */
.photo {
	width: 100%;
	height: 20vh; /* 50/498 */
	background-size: cover;
	background-position: left;
	margin-bottom: 1.5em;
}
section:first-child { /* margins on 1st section */
	margin-left: 15px;
	margin-right: 15px;
}
section:first-child > p:first-of-type { /* margins on 1st section */
	font-size: 1.1em;
	line-height: 1.6em;
	margin-left: 15px;
	margin-right: 15px;
	padding-top: 1.5em;
	border-top: 1px solid #e6e6e6;
}
section + section > h2 { /* space above "year" section */
	margin-top: 1em;
}
h2.job-title 	{
	margin-top: 1em;
}
section:first-of-type + section > h2 { /* space above "year" section */
	margin-top: 0;
}
.quote-group {
	margin-top: auto;
}
blockquote {
	border-top: 1px solid #ccccff;
}
.split-columns {
	display: flex;
	flex-direction: column;
}
.split-columns blockquote {
	flex-basis: 100%;
	border-top: 1px solid #ccccff;
}
.writing blockquote:first-of-type {
	margin-top: 10px;
}
/* quoting p tags */
blockquote p {
	color: #666699;
	font-size: 1.4em;
	text-align: center;
	font-family: 'Barlow Condensed', sans-serif;
	font-style: italic;
	line-height: 1.2em;
	margin: 0.6em 0 0.8em 0;
}
/* bottom credit line */
blockquote p:last-of-type, blockquote a:link {
	color: #333366;
	font-size: 10px;
	text-align: right;
	font-style:	normal;
	line-height: 10px;
	font-family: Arial, sans-serif;
	background-image: none; /* cancel play images */
}
blockquote p:last-of-type {
	background-color: #e4e4fe;
	padding: 3px 1em 3px 0; /* cancel play padding */
}
/* bottom credit line - in panels */
.writing blockquote,
.writing blockquote p:last-of-type,
.history blockquote,
.history blockquote p:last-of-type {
	margin-top: 0;
	margin-bottom: 0;
}
blockquote img {
	height: 10px;
	margin: 0 5px -1px 0;
}
blockquote + blockquote {
	border: none;
}
blockquote + p {
	margin-top: 1.4em;
}
.return-to-top {
	text-align: center;
}
.return-to-top a {
	height: 20px;
	font-size: 70%;
	font-weight: bold;
	text-align: center;
	padding-left: 20px;
	margin: 2em 0;
	background-image: url("../images/triangle-top.svg");
	background-size: 10px;
	background-repeat: no-repeat;
	background-position: 0px 2px;
}
.copyright {
	color: #999;
	font-size: 8px;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1em;
}
.responsive-br { /* responsive line breaks */
	display: block;
}

/* CONTENT */

.image-home {
	background-image: url("../images/1-audio-equipment.jpg");
}
.image-history {
	background-image: url("../images/2-voice-recording.jpg");
}
.image-productions {
	background-image: url("../images/3-microphone.jpg");
}
.image-writing {
	background-image: url("../images/4-writing.jpg");
}

/* FLEX panels */

article { /* !!! major flex item !!! */
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.welcome,
.history,
.production,
.writing,
.action {
	background-color: white;
  border-radius: 6px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
	padding: 15px;
	margin-left: 15px;
	margin-right: 15px;
	margin-bottom: 15px;
	display: flex;   /* inside elements as flex */
	flex-direction: column;  /* inside as a col */
}
.history-year {
	display: flex;
	flex-direction: column;
}
.action { /* extra ACTION attributes */
	border: none;
	margin-top: 1em;
	margin-bottom: 1em;
}
.panel-width {
	margin: -15px -15px 10px -15px;
}
.extra-content {
	display: none;
}
.extra-large-content {
	display: none;
}
.hide-medium, .hide-large {
	display: inline;
}
.switch-large img:nth-of-type(1){
	display: block;
}
.switch-large img:nth-of-type(2){
	display: none;
}
.news { /* LATEST NEWS title image div */
	margin: 1em auto;
	width: 80%;
}
.link-telephone, .link-email {
	font-family: 'Barlow Condensed', sans-serif;
  margin: 0;
	text-align: center;
	font-size: 20px;
	line-height: 30px;
}
.link-telephone a, .link-email a {
	color: #c44d31;
	padding: 3px 0 3px 30px;
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: 0 6px;
}
.link-email a {
	background-size: 18px;
	background-position: 0 11px;
}

/* inc HISTORY and PRODUCTIONS */
.link-telephone a {
	background-image: url("../images/contact-telephone.svg");
}
.link-email a {
	background-image: url("../images/contact-email.svg");
}
a.link-play:link, a.link-play:visited {
	font-size: 12px;
	font-weight: bold;
	background-size: 13px;
	background-repeat: no-repeat;
	background-position: 0px 6px;
	background-image: url("../images/triangle-play.svg");
	background-color: #dedeff;
	text-align: center;
	line-height:   2em;
	border-radius: 2em;
	/* flex auto top = push to end */
	margin: auto auto 15px auto;
	padding: 0 2em 0 3em;
	background-position: calc(50% - 3.7em) 0.45em; /* calc */
	text-decoration: none;
	align-self: flex-start;
}
a.link-play:hover, a.link-play:active, a.link-play:focus {
	color: white;
	background-image: url("../images/triangle-play-white.svg");
	background-color: #6666cc;
}
/* cancel auto flex spacer on consecutive buttons */
a.link-play + a.link-play:link {
	margin-top: -5px;
}
/* cancel margin if button ends panel */
a.link-play:last-child {
	margin-bottom: 0;
}
/*  HISTORY page  */
.production .panel-column p,
.history > p,
{
	font-size: 0.95em;
	line-height: 1.3em;
}
/*  production titles  */
.history > p:first-of-type,
.history .split-col-left > p:first-of-type,
.production .panel-column > p:first-of-type,
.production > p:first-of-type,
.split-col-left > p:first-of-type {
	color: #666;
	font-size: 1em;
	margin: 0;
	font-weight: bold;
}
p.station { /*  station and date */
	color: #9999cc;
	font-size: 0.8em;
	line-height: 1.2em;
	font-weight: bold;
	margin-bottom: 15px;
}
p.station:last-child { /* nothing after */
	margin-bottom: 0;
}
.link-external {
	font-size: 0.8em;
	font-weight: bold;
	text-transform: uppercase;
	/* margin-bottom: 15px; */
}
.plain, .award {
	color: #999;
	font-style: normal;
	line-height: 0.8em;
	margin-bottom: 0;
}
.award {
	color: #ebb33a;
	line-height: 1.2em;
}
.book {
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
}
.img-border {
	border: 1px solid rgba(0, 0, 0, 0.3);
}

/*  PRODUCTIONS page  */
.production figcaption {
	color: white;
	text-align: right;
	height: 0;
	font-size: 10px;
	text-transform: uppercase;
	line-height: 0;
	margin: -1.5em 0.5em 2em 0;
	text-shadow: 0 1px 2px black;
}
.production figcaption a {
	color: white;
	font-size: 10px;
	text-decoration: none;
}
/*  ROWS  */
.panel-row {
	display: flex;
	flex-direction: row;
}
.production > .panel-row {
	display: flex;
	flex-direction: column; /*  row as col!!!  */
}
.item-blue-canvas .panel-row {
	display: flex;
	flex-direction: column; /*  row as col!!!  */
}
/*  COLUMNS  */
figure.panel-column {
	flex-basis: 50%;
}
figure > img {
	width: 100%;
}
div.panel-column {
	display: flex;
	flex-direction: column;
	flex-basis: 50%;
	padding-left: 15px; /*  left padding  */
}
.item-introduction .split-col-left p:first-of-type {
	font-weight: normal;
	margin-bottom: 1em;
}
.production .panel-column {
	padding-left: 0; /*  cancel left padding  */
}
.item-blue-canvas {
	display: flex;
	flex-direction: column;
}
.item-johnny-cash,
.item-child-of-the-state {
	display: flex;
	flex-flow: column nowrap;
}
.split-col-left,
.split-col-right {
	flex-basis: 100%;
	display: flex;
	flex-flow: column nowrap;
}
.split-col-right {
	margin-top: 10px;
}
.writing-wrapper {
	display: flex;
	flex-direction: column;
}
.production-wrapper {
	display: flex;
	flex-direction: column;
}
.production-wrapper .panel-column {
	display: flex;
	flex-direction: column;
}
.writing-wrapper .split-col-left {
	display: flex;
	flex-direction: row;
	flex-basis: 100%;
}


/*  MEDIA QUERIES   */
/* ================ */

/*  MEDIUM screens  */
@media screen and (min-width: 600px) {
	header > .header-wrapper {
		height: 125px;
		flex-direction: column;
		align-items: center;
		justify-content: space-between;
	}
	.header-wrapper > #nav-check:not(:checked) + .nav-links {
	  height: 50px;
		position: static;
		box-shadow: none;
	}
  .header-wrapper > .nav-logo {
    display: block;
  }
  #logo {
  	margin-left: 0;
		margin-top: 11px;
		width: 430px;
		height: auto;
  }
  .header-wrapper > .nav-btn {
    display: none;
  }
  .header-wrapper > .nav-links {
    font-size: 1.3em;
		text-align: center;
    overflow-y: visible;
		background-image: url("../images/line-gradient.jpg");
		background-position: center top;
		background-repeat: no-repeat;
  }
  header ul {
		display: inline-block;
  }
  header li {
    display: inline; /* horizontal list */
  }
  header a:link, header a:visited {
		height:      50px;
		line-height: 50px;
  	width: auto;
		display: inline-block;
    color: #cccccc;
    background: none;
		border: none;
  	font-size: 1.4em;
		margin: 0 0.2em;
  }
	/* hover and focus - yellow */
	header a:hover, header a:focus {
		color: #ebb33a;
	}
	/* active and current - red */
	header a:active, header a.current {
	  color: #c44d31;
	}
	#content {
		max-width: 800px;
		/* extra space for 2nd line in header */
		padding-top: 125px;
	}
	article {
		margin: 0 15px;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.article-history {
		margin: 0 25px;
	}
	section.item-intro { /* margins on 1st section */
		margin-left: 12%;
		margin-right: 12%;
	}
	section.item-intro p {
		text-align: center;
	}
	.photo			{ height: 18vh; }
	.news 			{ width: 40%; }
	.action {
		margin-left: 20%;
		margin-right: 20%;
	}
	h1 {
		font-size: 30px;
		text-align: center;
	}
	h2 {font-size: 24px;}
	h3 {font-size: 24px;}
	h4 {font-size: 22px;}

	blockquote p {
		font-size: 1.8em;
		line-height: 1.2;
	}
	.split-columns {
		flex-direction: row;
	}
	.extra-content {
		display: inline-block;
	}
	.mobile-only {
		display: none;
	}
	.responsive-br { /* responsive line breaks */
		display: none;
	}
	.copyright {
		font-size: 10px;
		letter-spacing: 0.1em;
	}
	.welcome {
		flex-basis: 45%;
		flex-grow: 1;
	}
	.action {
		flex-basis: 50%;
	}
	.hide-medium {
		display: none;
	}
	.history-year {
		flex-basis: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
	}
	.productions-period {
		display: flex;
		flex-basis: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	.productions-period > h2 {
		flex-basis: 100%;
	}
	.production {
		flex-basis: calc(50% - 30px);
	}
	.production-wrapper {
		margin-top: 10px;
		flex-direction: row;
	}
	.production-wrapper .panel-column {
		flex-direction: column;
	}
	.history-year h2 { /* archive flex item */
		margin: 0 5px -5px 5px;
		flex-basis: 100%;
		border-radius: 6px;
	}
	.history { /* archive flex item */
		flex-basis: 31%; /* 1/3 columns */
		margin-left: 5px; /* 5+5=10 between */
		margin-right: 5px;
		flex-grow: 1;
	}

	/* full width */
	.item-charlotte-mew,
	.item-last-elfdalians,
	.item-hurricane-girls,
	.item-blue-canvas,
	.item-sarah-lucas,
	.item-the-wire,
	.item-atomic-states,
	.item-thousand-kisses,
	.item-one-planet,
	.item-chopin-200,
	.item-johnny-cash,
	.item-sleep-diaries,
	.item-child-of-the-state,
	.item-wh-auden {
		flex-basis: 100%;
	}
	.item-johnny-cash,
	.item-sleep-diaries,
	.item-child-of-the-state,
	.item-wh-auden {
		display: flex;
		flex-flow: row wrap;
	}
	.split-col-left,
	.split-col-right {
		display: flex;
		flex-flow: column nowrap;
	}
	.split-col-left {
		flex-basis: 32.5%;
		padding-right: 15px;
		border-right: 1px solid #e6e6e6;
	}
	.split-col-right {
		flex-basis: 67.5%;
		padding-left: 20px;
		padding-right: 5px;
		margin-top: 0;
	}
	.item-introduction {
		display: flex;
		flex-direction: row;
	}
	.item-introduction .split-col-left,
	.item-introduction .split-col-right
	{
		flex-basis: 50%;
	}
	h2.job-title {
		flex-basis: 100%;
		font-size: 20px;
		margin: 25px 5px -5px 5px;
	}
	.year-narrow {
		flex-basis: 50%;
	}
	.year-narrow .history {
		flex-basis: 209px;
	}
	.writing-wrapper {
		flex-basis: 100%;
		flex-direction: row;
	}
	.writing-wrapper figure.panel-column {
		flex-basis: 45%;
	}
	.writing-wrapper div.panel-column {
		flex-basis: 55%;
	}
	.writing-wrapper .split-col-left {
		flex-basis: 60%;
	}
	.writing-wrapper .split-col-right {
		flex-basis: 40%;
	}
	.writing .quote-group {
		margin-top: 0;
		flex-basis: 50%;
	}
	.writing blockquote:first-of-type {
		margin-top: 0;
	}
	.year2019 > .history {
		flex-basis: calc(25% - 10px);
	}
}

/*   larger screens   */
@media screen and (min-width: 1300px) {
	header > .header-wrapper {
		height:      75px;
		width:     1100px;
		flex-direction: row;
		margin: 0 auto;
	}
	#content {
		max-width: 1100px;
	  /* space for header */
		padding-top: 75px;
	}
	#logo {
		margin-top: 0;
  }
	.header-wrapper > .nav-links {
		text-align: right;
		border: none;
		background: none;
  }
	.photo {
		margin-bottom: 0;
	}
	section.item-intro { /* margins on 1st section */
		margin-left: 20%;
		margin-right: 20%;
	}
	section.item-intro h1 {
		width: 1100px;
		height: 18vh;
		line-height: 18vh;
		margin-top: -18vh;
		color: white;
		vertical-align: middle;
		text-shadow: 0 1px 2px black;
		background-color: rgba(0, 0, 0, 0.1);
	}
	.news { width: 25%; }
	h1 {
		font-size: 30px;
	}
	section:first-child { /* margins on 1st section */
		margin-left: 60px;
		margin-right: 60px;
	}
	.extra-large-content {
		display: block;
	}
	.item-2 {
		flex-basis: 45%;
	}
	.item-3, .item-4 {
		flex-basis: 10%;
	}
	.hide-large {
		display: none;
	}
	.switch-large img:nth-of-type(1){
		display: none;
	}
	.switch-large img:nth-of-type(2){
		display: block;
	}

	/* history */
	.history {
		flex-basis: calc(20% - 10px); /* 5 base columns */
	}
	.item-wh-auden {
		flex-basis: calc(60% - 10px); /* 3/5 columns */
	}
	.item-child-of-the-state {
		flex-basis: calc(80% - 10px); /* 4/5 columns */
	}
	#year2011 .history:not(:first-of-type) {
		flex-basis: calc(25% - 10px); /* 1/4 special fit */
	}
	/* productions */
	.production { /* flex item */
		flex-basis: 47.15%;
	}
	.production-wrapper {
		flex-basis: 50%;
	}
	.split-col-left {
		flex-basis: 50%;
	}
	.split-col-right {
		flex-basis: 50%;
	}
	.item-charlotte-mew,
	.item-last-elfdalians,
	.item-sleep-diaries,
	.item-johnny-cash,
	.item-atomic-states,
	.item-blue-canvas,
	.item-sarah-lucas,
	.item-the-wire,
	.item-thousand-kisses {
		flex-basis: 100%; /* 1/2 columns */
	}
	.item-charlotte-mew .panel-row,
	.item-last-elfdalians .panel-row,
	.item-sarah-lucas .panel-row,
	.item-the-wire .panel-row,
	.item-atomic-states .panel-row,
	.item-thousand-kisses .panel-row {
		flex-direction: row;
	}
	.item-charlotte-mew figure,
	.item-last-elfdalians figure,
	.item-thousand-kisses figure,
	.item-sarah-lucas figure,
	.item-the-wire figure,
	.item-atomic-states figure {
		padding-right: 15px;
		flex-basis: 50%;
	}
	.item-charlotte-mew div.split-col-left,
	.item-last-elfdalians div.split-col-left,
	.item-thousand-kisses div.panel-column,
	.item-sarah-lucas div.split-col-left,
	.item-the-wire div.panel-column,
	.item-atomic-states div.panel-column {
		padding-left: 15px;
	}
	.year2018 > .history {
		flex-basis: calc(33.333% - 10px);
	}
	.year2019 > .history {
		flex-basis: calc(25% - 10px);
	}
}

/*   HUGE screens, eg. iMac Pro   */
@media screen and (min-width: 1700px) {
	body {
		font-size: 18px;
	}
	header > .header-wrapper {
		height:     100px;
		width:     1300px;
	}
	#content {
		max-width: 1300px;
	  /* space for header */
		padding-top: 100px;
	}
	#logo {
		width: 600px;
  }
	.header-wrapper > .nav-links {
		text-align: right;
		border: none;
		background: none;
  }
	.photo {
		height: 15vh;
		margin-bottom: 0;
	}
	section.item-intro h1 {
		font-size: 2em;
		width: 1300px;
		height:      15vh;
		line-height: 15vh;
		margin-top: -15vh;
	}
}
