/* @override
	http://127.0.0.1:4000/assets/css/main.css */

/* == NORMALIZE ============== */

:root {
	--background: white;
	--text: black;
	--link-color: blue;
	--link-hover: green;

  }

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, picture, source {
	border:0;
	font-size:100%;
	font:inherit;
	vertical-align:baseline;
	margin:0;
	padding:0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, picture, img, video {
	display:block;
}

body {
}

ol, ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content:none;
}

i {
	font-style: italic;
}

/* == MOBILE: Global ============== */

body {
	color: var(--text);
	background-color: var(--background);
	line-height: 1.5em;
	font-family: -apple-system, BlinkMacSystemFont,'Helvetica Neue', Helvetica, Roboto, Arial, Verdana, sans-serif;
	letter-spacing: 1px;
	/* -webkit-font-smoothing: antialiased; */
	text-rendering: optimizeLegibility;
	margin-bottom: 4em;
}

a, a:visited { 
	color: var(--link-color);
	text-decoration: none;
}

a:hover {	
	color: var(--link-hover);
}

h1 {
	font-size:2.5em;
	line-height: 1em;
	font-weight: 300;

}

h2 {
	font-size: 1.5em;
	font-weight: normal;
	margin-bottom: 0.5em;
}

/* Article subheaders */
h3 {
	font-size: 1.5em;
	margin-bottom: 1em;
	margin-top: 2em;
}

h4 {
	font-size: 0.8em;
	font-weight: bold;
	padding-left: 1em;
	border-bottom: 1px solid hsl(215, 10%, 80%);
	text-transform: uppercase;
}

.left {
	float: none;
	clear: none;	
}

.right {
	float: none;
	clear: none;
}

/*::selection {
  background: hsla(215, 100%, 44%, 0.5);; /* WebKit/Blink Browsers *!/
}
::-moz-selection {
  background: hsla(215, 100%, 44%, 0.5);; /* Gecko Browsers *!/
}*/

/* == All but iPhone/iPad: Download Buttons ======= */

.download {
	display: inline;
}

.download-iphone {
	display: none;
}

.download-ipad {
	display: none;
}

/* == MOBILE: Homepage/Posts archive ============== */

#post-list, #archive-list, #photo-list {
	margin: 0 1em 2em 1em;
}

#post-list ul li, #archive-list ul li ul li {
	margin: 1em auto 2em auto;
}

#post-list ul li:first-child, #archive-list ul li ul li:first-child {
	border: none;
}

#post-list figure, #archive-list figure, #photo-list figure {
	margin-bottom: 1em;
}

/* == MOBILE: Articles ============== */

article {
	margin: 2.5em auto;
	width: 80%;
}

article.post header {
	margin: 1em;
}

article section {
	margin: 1em;
}

article section p {
	margin: 0 0 1em 0;
	line-height: 1.8em;
	/* font-weight: 300; */
	font-size: 1.1em;
}

del {
	color: black;
	background-color: black;
}

del::selection {
	color: black;
}

blockquote {
	margin: 2em;
	color: hsl(215, 10%, 50%);
	font-style: italic;
}

.gear-list {
	list-style: circle;
	padding-left: 1.2em;
	font-size: 1.1em;
	font-weight: 200;
}

.footnote {
	font-size: 0.7em;
}

/* Photo pages */

article.photo-post h3 {
	text-align: center;
	font-weight: bold;
}

/* == MOBILE: Figures/Images ============== */

figure {
	margin: 0 auto;
	display: flex;
}

article.photo-post figure {
	margin: 0 auto 0 auto;
}


figcaption {
	text-align: center;
	margin: 1em;
	font-size: .8em;
}


img {
	width: 100%;
	height: auto;
	background-color: hsl(215, 9%, 80%);
}

.photo-video {
	border-top: 1px solid white;	
	border-bottom: 1px solid white;
	width: 99.8%;
}
/* Photo Headers */
figure.photo-header.dark, figure.photo-header {
	position: relative;
	display: block;
}

figure.photo-header header {	
	position: absolute;
	top: 5%;
	width: 100%;
	padding-left: 1em;
	
	color: #fff;
	max-width: 62.5em;
	z-index: 99;
}

figure.photo-header.dark header {
	color: hsl(215, 10%, 20%);
}

figure.photo-header header h2 {
	font-size: 2em;
	font-weight: bold;
	margin-bottom: .2em;
}

/* General photoset style */
.photoset {
	overflow: hidden;
	width: 100%;
}
.photoset .photoset-row {
	margin-bottom: .5rem;
	overflow: hidden;
  width: 150%;
}
	.photoset .photoset-row:last-child { margin: 0; }
.photoset .photoset-item {
	display: block;
	float: left;
	margin: 0 .25rem;
}
	.photoset .photoset-item:first-child { margin-left: 0; }
	.photoset .photoset-item:last-child  { margin-right: 0; }
.photoset figure {
	margin: 0;
	overflow: hidden;
	position: relative;
}
.photoset figcaption {
	background-color: rgba(255, 255, 255, .75);
	box-sizing: border-box;
  font-size: .75rem;
	padding: .5rem;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	transition: all .5s ease-in-out;
}
.photoset-item a {
  background-position: center center;
  background-size: cover;
  border: 0;
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.photoset .photoset-item:hover a + figcaption {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.photoset img {
	display: block;
  	max-width: 100%;
	transition: all .25s ease-in-out;
}

@media screen
and (min-width: 480px)
and (max-width: 768px) { 
  .photoset figcaption {
    display: none;
  }
}

@media screen
and (max-width: 480px) { 
  .photoset .photoset-row {
    width: 100%;
  }
  .photoset .photoset-item {
    float: none;
    margin: 0 0 .75em 0;
  }
  .photoset figcaption {
    display: block;
    -webkit-transform: none;
    transform: none;
    position: relative;
  }
  .photoset img {
    max-width: 100%;
  }
}


/* == MOBILE: Menu ============== */

#main-header {
	overflow: hidden;
	margin: 1em 1em 2em 1em;
}

#title
{
	text-align: center;
	margin: 0 auto 0.5em auto;
	line-height: 1.8em;
	
	fill: #454b54;
	stroke-width: 0;
}

#title a, title a:visited {
	color: hsl(215, 10%, 30%);
}

nav {
	text-align: center;
	margin: 0 auto;
}

nav li {
	display: inline-block;
	margin: 0 0.5em;
}
	
a span, svg {
	font-weight: bold;
	vertical-align: middle;
}

a span {
	display: none;
}
	
nav a, nav a:visited {
	color: hsl(215, 10%, 60%);
	text-decoration:none;
	font-size: 0.9em;
	
	fill: none;
	stroke-width: 1.5px;
	stroke: hsl(215, 10%, 60%);
}

nav a:hover, nav a.selected, nav a:hover.selected ,nav a:visited.selected, #title a:hover {
	fill: hsl(215, 100%, 45%);
	color: hsl(215, 100%, 45%);
	stroke: hsl(215, 100%, 45%);
}

nav a:hover .alt-color, nav a.selected .alt-color, nav a:hover.selected .alt-color, nav a:visited.selected .alt-color {
		fill: white;
	}
	
nav a:hover .alt-color2, nav a.selected .alt-color2, nav a:hover.selected .alt-color2, nav a:visited.selected .alt-color2 {
 		stroke: white;
 	}
 	
/* ==== MOBILE: Footer ==== */

footer {
	font-weight: 600;
	overflow: hidden;
	color: #7f7f7f;
	margin: 1em;
	text-align: center;
	padding: 1em;
}

footer p {
	font-size: 0.9em;
	line-height: 3em;
}

footer	nav a, footer nav a:visited {
	padding: 0.5em;
	border-radius: .3em;
	color: white;
	fill: white;
	stroke: none;
	display: block;
}

footer nav a:hover {
	color: white;
	opacity: 0.8;
	fill: white;
	stroke: none;
}

#twitter {
	background-color: #1DA1F2;
}

#twitter svg {
	margin-top: -1px;
}

#instagram {
	background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
}

#instagram svg {
	margin-top: -2px;
}

#date {
	text-transform: uppercase;
}
		

/* ==|== non-semantic helper classes ======================================== */
.hidden { display: none !important; visibility: hidden; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

@media only screen and (min-width: 38em) {
/* We want to keep the wide menu a little longer past 43.7em */

/* == WIDE: Menu ============ */

#main-header {

}

#title {
	margin-bottom: 0;
}

a span {
	display: inline;
}

.left {
	float: left;
	clear: left;	
}

.right {
	float: right;
	clear: right;

}

}

@media only screen and (min-width: 43.7em) {
/* 699.2 px
Max width for text sections is 41.7em, after that it keeps a 1em margin on either side, hence the break point at 43.7em
*/

/* == WIDE: Main ============ */

article.post header, article section, #main-header, footer, figure.narrow {
	/* max-width: 41.7em; */
	max-width: 45em;
	margin: 2em auto;
}

figcaption {
	/* max-width: 41.7em; */
	max-width: 45em;
	margin: 0 auto;
}

#main-header {
	margin-bottom: 2em;
}

footer {
	margin: 2em auto;
}

article.post figure, article.photo-post figure {
	/* max-width: 62.5em; */
	/* max-width: 66vw; 
	max-width: 120em;*/
}

picture, figure a {
	border: 2px solid white;
}

/* == WIDE: Homepage ============== */

#post-list, #archive-list, #photo-list  {
	/* max-width: 41.7em; */
	max-width: 45em;
	margin: 0 auto;
}

/* ==|== download buttons (iPhone + iPad) =========================== */

/* iPhone */
@media only screen and (max-device-width: 480px) {
	.download {
		display: none;
	}
	
	.download-iphone {
		display: inline;
	}
	
	.download-ipad {
		display: none;
	}
}

@media only screen and (device-width: 768px) {
	.download {
		display:none;
	}
	
	.download-iphone {
		display: none;
	}
	
	.download-ipad {
		display: inline;
	}
}

/* ==|== print styles ======================================================= */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important;
} 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
}