/*--------------------------------------------------------------
Theme Name: Charles Riffenburg Theatre Artist Site 2023
Theme URI: http://charlesriffenburg.com/
Author: Charles Riffenburg
Author URI: http://grabbagmedia.com
Description: Charles Riffenburg Theatre Artist Site 2023
Version: 1.0

/*--------------------------------------------------------------
1.0 - CSS Reset
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}


/*--------------------------------------------------------------
2.0 - Theme colors
--------------------------------------------------------------*/
:root {
  --highlight-color:#36ccd5;
  --highlight-color-bright:#70e7d1;
  --text-color: #ffffff;
}


/*--------------------------------------------------------------
3.0 - Typography
--------------------------------------------------------------*/
@font-face {
	font-family: 'nexa-slab';
	src: url("fonts/nexa_slab_black-webfont.eot"),
			 url('fonts/nexa_slab_black-webfont.woff2') format('woff2'),
       url('fonts/nexa_slab_black-webfont.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family: 'nexa';
	src: url("fonts/nexa_book-webfont.eot"),
			 url('fonts/nexa_book-webfont.woff2') format('woff2'),
       url('fonts/nexa_book-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: 'nexa';
    src: url('fonts/nexa_book_italic-webfont.woff2') format('woff2'),
         url('fonts/nexa_book_italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'nexa';
    src: url('fonts/nexa_heavy-webfont.woff2') format('woff2'),
         url('fonts/nexa_heavy-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'nexa';
    src: url('fonts/nexa_heavy_italic-webfont.woff2') format('woff2'),
         url('fonts/nexa_heavy_italic-webfont.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}
strong {
	font-weight:bold;
}
em {
	font-style:italic;
}
html {
  font-family:'nexa', sans-serif;
	font-size:18px;
  font-weight:normal;
  line-height:1.4;
  color:#fff;
}
h1 {
	line-height:0.9;
	background: var(--highlight-color);
	background: linear-gradient(159deg, rgba(54,172,213,1) 0%, rgba(54,204,213,1) 49%, rgba(112,231,209,1) 100%, rgba(0,212,255,1) 100%);
	-webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	padding-bottom:1rem; /* hack because the background clip cuts off the text descenders */
	margin-bottom:-1rem; /* hack because the background clip cuts off the text descenders */
}
h2 {
	color:rgb(102,184,201);
	color:#36d5cc;
	color:var(--highlight-color);
	font-size:clamp(2rem, 5vw, 2.5rem);
	text-transform:lowercase;
	text-align:center;
	margin-bottom:2rem;
}
h3 {
	font-size:2rem;
	font-weight:700;
}
h4 {
	font-size:1.25rem;
	font-weight:bold;
}


/*--------------------------------------------------------------
4.0 - General Layout
--------------------------------------------------------------*/
.site-name a,
.site-name a:hover {
	text-decoration:none;
}
.site-name {
	font-family:'nexa-slab';
	font-weight:bold;
	font-size:clamp(3.5rem, 8vw, 6rem);
	text-transform:lowercase;
}
.site-name--subhead {
	font-family:'nexa';
	font-weight:normal;
	font-size:40%;
	letter-spacing:0.3em;
	opacity:0.8;
}
body {
	background-color:#000;
	position:relative;
}
.bg-img {
  display:block;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  opacity:0.5;
  background-image:url('https://grabbagmedia.com/theatreartist/img/background-texture_1600x1067.jpg');
  background-repeat:no-repeat;
	background-attachment:fixed;
  background-position:center;
	background-size:cover;
  z-index:-1; /* drops div below content that follows */
	margin-top:-3.5rem; /* offset the margin of the header so it starts at top of page */
}

header,
main,
footer-wrap {
	max-width:1200px;
	margin:0 auto;
}
@media (max-width:1200px) {
	header, main {
		margin-left:1rem;
		margin-right:1rem;
	}
}
header {
	text-align:center;
	margin-top:3.5rem;
}
nav {
	border-top:2px solid rgba(255,255,255,0.1);
	width:80%;
	margin-top:1.25rem;
	margin-right:auto;
	margin-left:auto;
	margin-bottom:3rem;
	padding:1.5rem 0;
}
nav ul {
	display:flex;
	flex-direction:row;
	justify-content:center;
	list-style:none;
	margin:0;
}
nav li {
	padding:0 2rem;
	border-right:solid 2px rgba(255,255,255,0.1);
	font-size:1.6rem;
	line-height:0.9;
	text-transform:lowercase;
}
nav li:last-of-type {
	border-right:none;
}
nav a {
	display:block;
	color:#fff;
	text-decoration:none;
}
nav a:hover {
	color:var(--highlight-color);
}

@media (max-width:500px) {
	nav ul {
		flex-direction:column;
	}
	nav li {
		padding:1rem 0;
		border-right:none;
		border-bottom: solid 2px rgba(255,255,255,0.5);
	}
	nav li:last-of-type {
		border-bottom:none;
	}
}
main {
	font-size:1.2rem;
	line-height:1.5;
	display:grid;
}
.home-about {
	width:60%;
}
footer {
	margin-top:6rem;
	padding-top:2rem;
	padding-bottom:2rem;
	text-align:center;
	background:#fff;
	color:#000;
}
@media (max-width:1000px) {
	main {
		padding-right:2rem;
		padding-left:2rem;
	}
}


/*--------------------------------------------------------------
5.0 - Home Page
--------------------------------------------------------------*/
.home-about {
	width:100%;
	max-width:1100px;
	margin:0 auto;
	display:grid;
	grid-template-columns: repeat(9, 1fr);
	grid-template-rows: min-content;
}
.home-about--intro {
	grid-column-start: 1;
	grid-row-start:1;
	grid-column-end: 6;
	grid-row-end:2;
	margin-top:5%;
	z-index:2;
}
.home-about--pic {
	grid-column-start:6;
	grid-row-start:1;
	grid-column-end:10;
	grid-row-end:2;
	width:100%;
	margin-top:-18%;
	z-index:-1;
}
@media (max-width:1100px) {
	.home-about--intro {
		grid-column-end: 7;
		margin-top:0;
	}
	.home-about--pic {
	}
}
@media (max-width: 830px) {
	.home-about	{
		display:flex;
		flex-direction:column-reverse;
	}
	.home-about--intro {
		margin-top:-10%;
	}
	.home-about--pic {
		margin-top:-10%;
	}
}


/*--------------------------------------------------------------
6.0 - Direction Page
--------------------------------------------------------------*/
.directing-show {
	margin-bottom:6rem;
	display:flex;
	align-items:flex-start;
}
.directing-show>div {
	width:50%;
}
.directing-show>div:first-of-type {
	padding-right:1rem;
}
.directing-show>div:last-of-type {
	padding-left:1rem;
}
.show-credits {
	font-size:0.75rem;
	line-height:1.4;
	margin-top:-5px;
	margin-bottom:1.5rem;
}
.quote {
	display:block;
	border-left:3px solid var(--highlight-color-bright);
	border-bottom:3px solid var(--highlight-color-bright);
	border-image: linear-gradient(to right, var(--highlight-color-bright), rgba(0, 0, 0, 0)) 1;
	padding-left:1.5rem;
	padding-bottom: 1rem;
	margin-top:1rem;
	margin-bottom:2rem;
}
.quote:nth-of-type(even) {
	border-left:3px solid var(--highlight-color);
	border-bottom:3px solid var(--highlight-color);
	border-image: linear-gradient(to right, var(--highlight-color), rgba(0, 0, 0, 0)) 1;
}
.quote-att {
	font-style:italic;
}
.directing-show--photos {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
}
.directing-show--photos>img {
	width:calc(50% - 10px);
	padding:5px;
}
.directing-show--photos>img:first-of-type {
	width:100%;
	padding:5px;
}
@media (max-width:1000px) { /* directing section responsive */
	.directing-show {
		flex-direction:column-reverse;
	}
	.directing-show > div {
		width:100%;
		padding-left:0 !important;
	}
	.directing-show--photos img {
		width:31%
	}
	.directing-show--photos img:first-child {
		width:100%;
	}
	.directing-show--photos img:nth-of-type(4) {
		display:none;
	}
	.directing-other {
		padding-right:1rem;
		padding-left:1rem;
	}
}


/*--------------------------------------------------------------
7.0 - Acting Section
--------------------------------------------------------------*/
.acting-resume table {
	margin-bottom:3rem;
}
.acting-resume td {
	padding-right:1.5rem;
}
.acting-resume tbody td:first-of-type {
	font-weight:bold;
	width:26ch;
}
.acting-resume tbody td:nth-of-type(2) {
	width:13ch;
}
.acting-resume tfoot {
	font-size:75%;
}
.acting-resume tfoot tr:first-of-type td {
		padding-top:1.5rem;
}
@media (max-width: 760px)  {
	/* Responsive table */
	table, thead, tbody, th, td, tr { 
		display: block; 
	}
	tr { margin-bottom:0.75rem;	}
	tfoot tr { margin-bottom:0; }
	.acting-resume h3 {
		border-bottom: 2px solid rgba(255,255,255,0.1);
		margin-bottom: 1rem;
	}
}
