/*!
Theme Name: STELLER
Theme URI: https://thoughtandfound.co/
Author: Thought & Found
Author URI: https://thoughtandfound.co/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
*/

@media screen and (min-width: 0) {
/*--------------------------------------------------------------
# GLOBALS
--------------------------------------------------------------*/
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}
/*--------------------------------------------------------------
# TYPOGRAPHY
--------------------------------------------------------------*/
body, html, a, p, h1, h2, h3, h4, h5, h6, span {
	font-family: 'span-condensed', serif;
	font-weight: normal;
	color: black;
	text-decoration: none;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
	font-size: 16px;
}

body {
	padding: 90px 15px 15px 15px;
	margin: 0;
	background: #eae5da;
}

@font-face {
  font-family: 'Steller';
  src: url('fonts/Steller-Regular.eot');
  src: url('fonts/Steller-Regular.eot?#iefix') format('embedded-opentype'),
       url('fonts/Steller-Regular.woff2') format('woff2'),
       url('fonts/Steller-Regular.woff') format('woff'),
       url('fonts/Steller-Regular.ttf')  format('truetype');
}

.m-toggle, .logo-block .f-col, .logo-block .f-col a {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
	text-transform: uppercase;
}

h2, h1, footer#colophon, nav#desktop-navigation, nav#mobile-navigation, span.sub-ttl, span.upper {
	text-transform: uppercase;
}

h1 {
	font-size: 22px;
	margin-top: 0;
}

ul#mobile-menu, ul#desktop-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.desk {
	display: none;
}

.m-toggle {
  position: fixed;
  left: 0;
  right: 0;
  top: 10px;
  text-align: center;
  font-size: 20px;
	z-index: 10;
	transition: all 500ms ease;
	cursor: pointer;
}

.desk-menu-panel a {
	line-height: 25px;
}

.desk-menu-panel a:hover  {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
	font-size: 22px;
	line-height: 20px;
}

ul#mobile-menu a {
	display: block;
	transition: all 500ms ease;
}

ul#mobile-menu a:hover {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
  font-size: 40px;
  line-height: 40px;
  margin-bottom: 5px;
	transform: skew(-10deg, -30deg);
}

ul#desktop-menu li.menu-item a {
  transition: all 500ms ease;
  font-family: 'span-condensed', serif;
}

ul#desktop-menu li.menu-item a:hover, .m-toggle:hover {
	transform: skew(-10deg, -30deg);
  font-family: 'span-condensed', serif;
}

ul#desktop-menu li.menu-item:nth-child(2n) a:hover {
	transform: skew(-70deg, 10deg);
}

ul#desktop-menu li.menu-item:nth-child(3n) a:hover {
  transform: skew(55deg, -15deg);
}

ul#desktop-menu li.menu-item:nth-child(2n) a:hover {
	transform: skew(-55deg, 10deg);
}

ul.sub-menu {
	display: none;
}

ul.sub-menu li {
	opacity: 0;
}

.desk-menu-panel li.menu-item {
	position: relative;
	width: 90px;
	height: 25px;
}

ul#desktop-menu li.menu-item a {
  position: absolute;
  top: 0px;
}

.desk-menu-panel ul.sub-menu {
	display: none;
  position: absolute;
  padding: 0;
  margin: 0;
	width: 255px;
	top: 25px;
}

ul.sub-menu li.menu-item a {
  position: relative!important;
  top: 0px;
}

ul.sub-menu li.menu-item {
	width: auto;
	display: block;
}

ul.sub-menu li:nth-child(8n - 7), ul.sub-menu li:nth-child(8n - 1){
	text-indent: 10px;
}

ul.sub-menu li:nth-child(8n - 6), ul.sub-menu li:nth-child(8n - 2){
	text-indent: 20px;
}

ul.sub-menu li:nth-child(8n - 5), ul.sub-menu li:nth-child(8n - 3){
	text-indent: 30px;
}

ul.sub-menu li:nth-child(8n - 4){
	text-indent: 40px;
}
/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/
.mob-menu-panel, .desk-menu-panel {
	display: none;
}

.mob-menu-panel {
	background: #eae5da;
}

nav#mobile-navigation {
	text-align: center;
	min-height: 342px;
}

ul#mobile-menu a {
  font-size: 40px;
  line-height: 45px;
}

.menu-footer {
  font-size: 11px;
	letter-spacing: .5px;
  text-align: center;
	text-transform: uppercase;
}

.menu-footer a {
	font-size: 11px;
	letter-spacing: .5px;
}

a.mob.left-pad {
	padding-left: 15px;
}

.mob-menu-panel {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  padding: 83px 15px 15px 15px;
	z-index: 5;
	overflow-y: scroll;
}

.site-info a, a.pp {
	display: inline-block;
	transition: all 500ms ease;
}

	.main-content p a {
		display: inline-block;
		text-indent: 0;
		transition: all 500ms ease;
	}

h1 a {
	display: inline-block;
	transition: transform 500ms ease;
}

.site-info a:hover, .main-content p a:hover {
/* 	font-size: 10px; */
  transform: skew(-45deg, 0deg);
	letter-spacing: .75px;
}

h1 a:hover {
	transform: skew(35deg, 0deg);
}

a.pp:hover {
	font-size: 10px;
  transform: skew(45deg, 0deg);
	letter-spacing: .75px;
}

/*--------------------------------------------------------------
# FRONT PAGE
--------------------------------------------------------------*/
.calli {
	height: calc(100vh - 323px);
}

canvas#drawCanvas {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
	width: 100vw;
	height: 100vh;
}

body.home footer#colophon {
  margin-top: 90px;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 15px;
	padding: 0 15px;
}
/*--------------------------------------------------------------
# PAGE
--------------------------------------------------------------*/
section.no-results.not-found {
  min-height: calc(100vh - 330px);
	text-align: center;
	display: table;
	width: 100%;
}

section.no-results.not-found header.page-header {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  margin: auto;
}

h1.overview {
  text-align: center;
	max-width: 450px;
  margin: auto auto 55px auto;
}

img {
  display: block;
  width: 100%;
  max-width: none;
}

	.main-content p:empty {
		display: none;
	}

	.main-content p {
		margin: 0 0 10px 0;
	}

	.end-stat p {
  text-transform: uppercase;
	letter-spacing: .5px;
}

.main-content {
  max-width: 370px;
  margin: auto auto 55px auto;
}

	.main-content p a {
		text-decoration: underline;
	}

/* h1.overview {
	max-width: 400px;
} */

.end-stat {
	max-width: 400px;
}

/*--------------------------------------------------------------
# CONTACT
--------------------------------------------------------------*/
h1 a {
  font-size: 22px;
	text-align: center;
}

.entry-content.contact {
	text-align: center;
}

.contact-form {
	max-width: 595px;
  margin-top: 60px;
	margin-left: auto;
  margin-right: auto;
}

input {
	font-size: 22px;
	font-family: 'span-condensed', serif;
  color: black;
  text-transform: uppercase;
  padding: 0;
  border: none;
  border-bottom: 1px solid black;
	padding: 5px 0;
	width: 100%;
	background: transparent;
}

input[type="submit"] {
	border: none;
}

label {
	font-size: 22px;
	font-family: 'span-condensed', serif;
  color: black;
  text-transform: uppercase;
	display: inline-block;
	padding: 5px 0;
}

textarea {
  width: 100%;
  padding: 10px 0;
  border-radius: 0;
  border: none;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
	background: transparent;
}

/*--------------------------------------------------------------
# ARTISTS
--------------------------------------------------------------*/
body.single-post {
	padding-left: 0;
	padding-right: 0;
}

.profile-block {
  /* min-height: calc(100vh - 65px); */
	padding-left: 15px;
	padding-right: 15px;
}

.profile-block img.profile {
  width: 80%;
	/* max-width: 320px; */
	max-width: 280px;
  margin: auto;
}

.profile-block h2 {
	margin-top: 20px;
	margin-bottom: 0;
}

span.sub-ttl {
	display: inline-block;
	margin-bottom: 20px;
}

span.sub-ttl, .profile-block h2 {
  font-size: 20px;
	text-align: center;
}

h1.prof-ttl {
	font-size: 55px;
	line-height: 55px;
	text-align: center;
	font-family: 'Steller', 'span-condensed', serif;
}

.compositions p {
	margin: 0;
	text-indent: 20px;
}

.reviews, .bio, .concerto {
  margin-bottom: 60px;
}

.reviews {
  width: 75%;
}

.bio p {
	margin: 0 0 10px 0;
}

.inst-wrap {
	position: relative;
	overflow: hidden;
	left: 0;
	right: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	min-height: 550px;
}

img.instrument {
  /* display: none; */
  position: absolute;
  bottom: 0;
  right: -20%;
	transform: rotate(-30deg);
	max-width: 520px;
}

img.instrument-follow {
  display: none;
  position: absolute;
	transform: rotate(-30deg);
	max-width: 520px;
	z-index: -1;
}

img.profile, .gride-block h2 {
	transition: all ease 500ms;
}


img.instrument-follow {
  -webkit-animation-name: spin;
  -webkit-animation-duration: 20s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  -moz-animation-name: spin;
  -moz-animation-duration: 20s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;
  -ms-animation-name: spin;
  -ms-animation-duration: 20s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-timing-function: linear;
  animation-name: spin;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: cubic-bezier(.43,.84,.61,.14);
}

/* .grid-block:nth-child(3n) img.instrument-follow {
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  -ms-animation-direction: reverse;
  animation-direction: reverse;
} */

article:nth-child(3n - 1) img.instrument-follow {
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  -ms-animation-direction: reverse;
  animation-direction: reverse;
}

@-ms-keyframes spin {
  from { -ms-transform: rotate(0deg); }
  to { -ms-transform: rotate(360deg); }
}

@-moz-keyframes spin {
  from { -moz-transform: rotate(0deg); }
  to { -moz-transform: rotate(360deg); }
}

@-webkit-keyframes spin {
  from { -webkit-transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  from { transform:rotate(0deg); }
  to { transform:rotate(360deg); }
}


/* .invert {
	color: white;
	mix-blend-mode: difference;
} */

.single-main, body.single-post footer, .peformances {
	padding-left: 15px;
	padding-right: 15px;
}

.media {
	padding-left: 15px;
	padding-right: 15px;
}

.peformances {
  text-align: center;
}

span.date, span.time, span.location {
  text-transform: uppercase;
}

span.time {
  margin-left: 15px;
}

span.comp {
  opacity: .5;
}

span.location p {
	margin: 0;
  font-size: 12px;
}

.peformances h1, span.location p, .year h2 {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
}

h1.per-ttl {
	font-size: 40px;
  margin: 0;
  margin-bottom: 60px;
}

.year {
  margin-bottom: 30px;
}

.year h2, span.date, span.time, .performance h2 {
  font-size: 20px;
	margin: 0;
	letter-spacing: .5px;
}

.single-peformance {
  margin-bottom: 60px;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
}

.media {
	margin-bottom: 45px;
}

.media img {
	margin-bottom: 15px;
}

.iframe-wrap {
	position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
	margin-bottom: 15px;
}

iframe {
	position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/*--------------------------------------------------------------
# INDEX
--------------------------------------------------------------*/
.grid-block {
  text-align: center;
  width: 80%;
	max-width: 280px;
  margin: auto auto 60px auto;
}

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
footer, footer a {
  font-size: 11px;
	letter-spacing: .5px;
  text-align: center;
}

.site-info, .f-col {
  margin-bottom: 15px;
}

.f-col a.mob {
  padding-left: 15px;
}

footer#colophon {
  margin-top: 90px;
}

.f-logo {
	max-width: 323px;
	margin: auto;
}

}

@media (min-height: 574px) and (max-width: 568px) {
/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/
nav#mobile-navigation {
  min-height: calc(100vh - 232px);
}

}

@media screen and (min-width: 568px) {
/*--------------------------------------------------------------
# GLOBALS
--------------------------------------------------------------*/
.mob, .m-toggle {
	display: none;
}

.desk, .desk-menu-panel {
	display: block;
}
/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/
.desk-menu-panel {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
	z-index: 5;
}

ul#desktop-menu {
  display: block;
	text-align: justify;
	-ms-text-justify: distribute-all-lines;
	text-justify: distribute-all-lines;
	padding: 15px;
	height: 7px;
  /* background-image: linear-gradient(to top, rgba(255,0,0,0), #e9e5da 40%); */
	background: #e9e5da;
	box-shadow: 0 0 45px 60px #e9e5da;
}

li.menu-item {
  display: inline-block;
}

ul#desktop-menu:after {
	content: '';
	width: 100%;
	display: inline-block;
	font-size: 0;
	line-height: 0;
}

ul#desktop-menu li a {
	font-size: 22px;
	line-height: 25px;
}

ul.sub-menu li a {
	line-height: 25px;
	font-family: 'span-condensed', serif;
	display: inline-block;
	transition: all 500ms ease;
}

ul#desktop-menu ul.sub-menu li a:hover {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
	transform: skew(45deg, 0deg);
}

.mob-menu-panel {
	display: none!important;
}

.sans, .sans a {
	font-family: 'acumin-pro-semi-condensed', sans-serif;
	line-height: 26px;
	/* line-height: 20px; */
}
/*--------------------------------------------------------------
# PAGE
--------------------------------------------------------------*/
section.no-results.not-found {
	min-height: calc(100vh - 420px);
}

/*--------------------------------------------------------------
# CONTACT
--------------------------------------------------------------*/
h1 span.desk {
 display: none;
 font-size: 22px;
}

br.break.mob {
	display: block;
}

/*--------------------------------------------------------------
# ARTISTS
--------------------------------------------------------------*/
.main-text-wrap {
	clear: both;
	overflow: hidden;
}

.reviews, .bio, .concerto {
  width: 65%;
	max-width: 370px;
	margin-left: auto;
	margin-right: auto;
}

.bio span.sub-ttl {
  text-align: center;
  width: 100%;
}

.bio .inner {
	padding-right: 7.5px;
}

.concerto .inner {
	padding-left: 7.5px;
}

.media {
	font-size: 0;
	padding-left: 7.5px;
	padding-right: 7.5px;
}

.media-box {
  display: inline-block;
  width: 50%;
}

.m50 {
	width: 100%;
}

.media-box .box-inner {
	padding: 0 7.5px;
}

.m20 {
	vertical-align: bottom;
}

.m30, .m35, .m50 {
	vertical-align: top;
}

/*--------------------------------------------------------------
# INDEX
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
footer, footer a, footer span {
	font-size: 12px;
  letter-spacing: .5px;
}

a.pp.mob {
	display: none;
}

span.desk {
  display: inline-block;
}

.logo-block {
	font-size: 0;
}

.logo-block .f-col, .logo-block a {
	font-size: 12px;
	letter-spacing: .5px;
}

.f-col {
  display: inline-block;
  width: 20%;
	margin: 0;
}

.f-col.left {
	text-align: left;
}

.f-col.right {
	text-align: right;
}

.f-logo {
  display: inline-block;
  width: 60%;
	max-width: none;
}

}

@media screen and (min-width: 768px) {
/*--------------------------------------------------------------
# GLOBAL
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# PAGE
--------------------------------------------------------------*/
h1.overview {
  text-align: center;
  width: 500px;
	font-size: 70px;
  line-height: 70px;
	width: auto;
	margin-left: auto;
	margin-right: auto;
	max-width: none;
}

section.no-results.not-found header.page-header h1 {
	font-size: 70px;
  line-height: 70px;
}

/*--------------------------------------------------------------
# CONTACT
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# ARTISTS
--------------------------------------------------------------*/
.peformances {
	clear: both;
	overflow: hidden;
}

.year {
	float: left;
	width: 20%;
	text-align: left;
}

.single_performance-wrap {
	width: 60%;
	float: left;
}

.single-peformance {
	clear: both;
	overflow: hidden;
	max-width: none;
}

span.date, .performance {
  float: left;
}

span.date {
	text-align: left;
}

span.time {
	float: right;
	text-align: right;
}

span.date, span.time {
  width: 25%;
}

.performance {
  width: 50%;
}

h1.per-ttl {
	font-size: 70px;
  letter-spacing: -1px;
	text-align: right;
}

h1.prof-ttl {
  font-size: 120px;
	line-height: 110px;
}
/*--------------------------------------------------------------
# INDEX
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
}

@media screen and (min-width: 890px) {
/*--------------------------------------------------------------
# GLOBAL
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# PAGE
--------------------------------------------------------------*/
body {
	padding-top: calc(50vh - 210px);
}
/*--------------------------------------------------------------
# CONTACT
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# ARTISTS
--------------------------------------------------------------*/
body.single-post {
	padding-top: 0;
}

.profile-block {
	position: absolute;
  width: 100%;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 420px;
	padding: 0;
}

img.instrument {
	top: 0px;
	left: 0;
	bottom: -40px;
	right: -460px;
	margin: auto auto auto auto;
}
/*--------------------------------------------------------------
# INDEX
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
}

@media screen and (min-width: 1024px) {
/*--------------------------------------------------------------
# GLOBAL
--------------------------------------------------------------*/
body {
	padding: 90px 25px 25px 25px;
}

body {
  padding-top: calc(50vh - 210px);
}

.single-main, body.single-post footer, .peformances {
	padding-left: 25px;
	padding-right: 25px;
}

.media {
	padding-left: 17.5px;
	padding-right: 17.5px;
}
/*--------------------------------------------------------------
# NAVIGATION
--------------------------------------------------------------*/
ul#desktop-menu {
	padding: 25px;
}
/*--------------------------------------------------------------
# FRONT PAGE
--------------------------------------------------------------*/
body.home footer#colophon {
	bottom: 25px;
	padding: 0 25px;
}
/*--------------------------------------------------------------
# PAGE
--------------------------------------------------------------*/
body.page article {
	display: block;
}
/*--------------------------------------------------------------
# CONTACT
--------------------------------------------------------------*/
h1 span.desk {
	display: inline-block;
}

br.break.mob {
	display: none;
}
/*--------------------------------------------------------------
# ARTISTS
--------------------------------------------------------------*/
.reviews {
  width: 25%;
  float: left;
	max-width: none;
}

.reviews p {
  margin-top: 43px;
}

.reviews .inner {
	padding-right: 7.5px;
}

.bio span.sub-ttl {
  text-align: center;
  display: block;
}

.bio .inner {
	padding-right: 0;
	padding-left: 7.5px;
}

.bio {
	width: 33%;
	float: left;
	max-width: none;
}

.bio {
	margin-left: 8.5%;
}

.concerto {
	width: 25%;
	float: right;
	max-width: none;
}

.m20 {
  width: 20%;
}

.m30 {
  width: 30%;
	margin-left: 15%;
}

.m35 {
  width: 35%;
}

.m50 {
  width: 50%;
	margin-left: 20%;
}

h1.prof-ttl {
  font-size: 150px;
  line-height: 130px;
}
/*--------------------------------------------------------------
# INDEX
--------------------------------------------------------------*/
body.blog main#primary {
  text-align: center;
}

body.blog main#primary {
  max-width: 870px;
  margin: auto;
}

article {
  display: inline-block;
	vertical-align: top;
}
/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
}

@media screen and (min-width: 1100px) {
}
