@font-face {
	font-family:'Serif';
	src: url('webfonts/alacserifwebltd-regular150106.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family:'Serif';
	src: url('webfonts/alacserifwebltd-bold150106.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family:'Serif';
	src: url('webfonts/alacserifwebltd-italic150106.woff') format('woff');
	font-weight: normal;
	font-style: italic;
}
@font-face {
	font-family:'Serif';
	src: url('webfonts/alacserifwebltd-italic150106.woff') format('woff');
	font-weight: bold;
	font-style: italic;
}
body {
	font-family: "Serif", Georgia, Times, serif;
	font-size:15px;
	line-height:1.5em;
	color:#777;
	text-align:center;
	margin:0;
	padding:20px 10px 0;
	background-color:#FFF;
	-webkit-text-size-adjust: 100%;
}
body, input, textarea {
	font-size:15px;
	line-height:1.5em;
}
img {
	border:0;
	max-width:100%;
}
p {
	margin:0 0 1.5em 0;
	padding:0;
}
hr {
	clear:both;
	border:none;
	height:1px;
	margin:20px 0;
	padding:0;
	background-color:#EEE;
}
a:link, a:visited, a:active {
	color:#777;
	text-decoration:underline;
}
a:hover {
	color: #000;
	text-decoration:underline;
}
a:link img, a:hover img, a:visited img, a:active img {
	border:0;
	text-decoration: none;	
}
a.clean:link,
a.clean:active,
a.clean:visited {
	text-decoration:none;
}
a.clean:hover {
	text-decoration:underline;
}
a:focus {
	outline:none !important;
}

h1, h2, h3 {
	font-weight:normal;
	line-height:1.5em;
	margin:0 0 .5em 0;
	color:#000;
}
h1 {
	font-size:22px;
}
h2 {
	font-size:18px;
}
h3 {
	font-size:14px;
}
input, 
textarea {
	display:block;
	width:100%;
	margin:0 0 1em 0;
	padding:2px 4px;
	border:1px solid #CCC;
	color:#000;
	font-family: "Serif", Georgia, Times, serif;
	font-style:normal;
	border-radius:0;
	box-sizing:border-box;
}
textarea {
	height:200px;
}
input.empty,
textarea.empty {
	color:#999;
	font-style:italic;
}
input[type=submit],
.button {
	display:inline-block;
	width:auto;
	color:#666;
	border:1px solid #aaa;
	background-color:#f6f6f6;
	-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);
	-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);
	box-shadow:0 1px 1px rgba(0,0,0,.1);
	text-transform:uppercase;
	font-size:.85em;
	letter-spacing:.1em;
	line-height:1em;
	padding:4px 4px 3px 5px;
	cursor:pointer;
}
input[type=submit]:hover,
.button:hover {
	color:#222;
	border:1px solid #888;
	background-color:#fbfbfb;
}
.bm {
	margin-bottom:20px;
}
.mm {
	margin-bottom:15px;
}
.sm {
	margin-bottom:10px;
}
.tm {
	margin-bottom:5px;
}
.nm {
	margin-bottom:0;
}
.clear {
	clear:both;
	height:.01px;
	margin:0;
	padding:0;
	line-height:0;
}
.bold {
	font-weight:bold;
}
.black {
	color:#000;
}
.gray {
	color:#888;
}
.red {
	color:#f00;
}
.smallcaps {
	text-transform:uppercase;
	font-size:.9em;
	letter-spacing:.1em;
}
.reading {
	max-width:600px;
	margin:0 auto 1.5em; 
	padding:0 0 1.5em;
	text-align:left;
	line-height:1.5em;
}
.hide, .hidden {
	display:none;
}
.center {
	text-align:center;
}

#main {
	position:relative;
	clear:both;
	width:calc(100% - 40px);
	margin:0 auto;
	padding:0;
	text-align:center;
}
#content {
	margin:0;
	padding:0;
	text-align:center;
}
.w600 {
	max-width:600px;
}
.w400 {
	max-width:400px;
}
.s100 {
	max-width:150px;
	max-height:150px;
}
#header {
	position:relative;
	margin:0 auto 1.5vh;
	padding:0;
}
#logo {
	position:relative;
	margin:.5vh 0 2vh .2em;
	font-size:24px;
	line-height:24px;
}
@media screen and (max-height:933px){
	#header, #logo {
		margin-bottom:14px;
	}
}

a#logolink,
a#logolink:link,
a#logolink:visited,
a#logolink:active,
a#logolink:hover {
	text-decoration:none;
	color:#000;
}

.menu {
	margin:0 auto 2%;
	color:#999;
	font-size:.85em;
	line-height:1em;
	text-align:center;
	text-transform:uppercase;
	letter-spacing:.1em;
}
.menu dt,
.menu .menuitem {
	display:inline;
	margin:0;
	padding:0 4px;
}
.menu a:link,
.menu a:visited,
.menu a:active,
.menu a:hover {
	color:#999;
	margin:0;
	padding:0;
	text-decoration:none;
}
.menu a:hover,
.menu a.on {
	color:#000 !important;
}

div.aboutdiv p {
	margin:0;
}
div#cv span.year {
	color:#000;
}

.indexview {
	width:100%;
	margin:0 auto;
	text-align:center;
}
.indexcard {
	position:relative;
	display:inline-block;
	max-width:400px;
	margin:10px 30px 30px;
	padding:0;
	text-align:center;
}
@media screen and (max-width:600px) {
	.indexcard {
		margin:10px 5% 5%;
	}	
}
.indexcard img {
	width:100%;
}

/* =============== */
/* = work page = */
/* =============== */
.albumtitle,
.albumtitle a {
	font-size:18px;
	line-height:1em;
	margin:.2em auto 1.5vh;
	color:#000;
	padding:0;
	text-decoration:none;
}
@media screen and (max-height:933px){
	.albumtitle {
		margin-bottom:14px;
	}
}
.albumabout {
	display:none;
	padding:20px 0;
}
.itemtitle {
	margin:10px auto;
	color:#000;
	text-align:center;
}
.totalcount {
	display:inline-block;
}
#imagediv {
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	opacity:0;
	max-width:100%;
	margin:3vh auto;
	text-align:center;
	padding:0;
	min-height:0;
}
#imagediv a.next {
	position:absolute;
	display:block;
	z-index:200;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
#imagediv img {
	position:relative;
	width:auto;
	height:auto;
	object-fit: contain;
	min-height:0;
}
#infodiv {
	color:#999;
	max-width:500px;
	margin:20px auto;
}
#infodiv .itemtitle {
	font-size:16px;
	margin:10px auto;
	color:#000;
	text-align:center;
}
#infodiv .details{
	line-height:1.3em;
}
#infodiv .description {
	max-width:500px;
	margin:15px auto;
	text-align:left;
	line-height:1.5em;
}


.thumbs {
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
.thumbs.tray {
	margin-top:-3%;
	display:flex;
	align-items:center;
	justify-content:center;
}
.thumbs a {
	display:inline-block;
	margin:1.5vh 1.5vw; 
}
.thumbs.tray a {
	padding:3px;
}
.thumbs.tray a.on {
	border:1px solid #666;
	padding:2px;
}
.thumbs a img {
	display:block;
	height:18vw;	
	max-height:200px;
}
.thumbs.tray a img {
	max-height:40px;	
}


/* =============== */
/* = end work page = */
/* =============== */
div.news {
	max-width:600px;
	text-align:left;
	margin:0 auto 50px;
	padding:0 0 30px 0;
	border-bottom:1px solid #ccc;
}
div.news .title {
	font-size:20px;
}
div.news .title a {
	color:#000;
	text-decoration:none;
}
div.news .title a:hover {
	text-decoration:underline;
}
div.news .date {
	font-size:.8em;
	color:#888;
}
div.news p {
	margin:0 0 1em 0;
}
div.news img {
	max-width:100%;
}


div.backnext {
	text-transform:uppercase;
	position:absolute;
	top:-2.5em;
	margin:0 0 40px 0;
	color:#888;
}
div.backnext a:link,
div.backnext a:visited,
div.backnext a:active,
div.backnext a:hover {
	margin:0 10px 0 0;
	text-decoration:none;
	color:#888;
}
div.backnext a:hover {
	color:#000;
}

#footer {
	width:100%;
	position:relative;
	margin:40px auto 20px;
	padding:0;
	color:#CCC;
	font-size:.8em;
	text-align:center;
	text-transform:uppercase;
	letter-spacing:.1em;
	box-sizing:border-box;
}
#footer a:link,
#footer a:visited,
#footer a:active {
	color:#CCC;
	text-decoration:none;
}
#footer a:hover {
	color:#888;
	text-decoration:underline;
}
#footslug {
	position:absolute;
	bottom:-1px;
	height:1px;
	width:1px;
	margin:0;
	padding:0;
}
#toTop {
	cursor:pointer;
	display:none;
	position:fixed;
	top:20px;
	right:20px;
	border:1px solid #ccc;
	color:#666;
	font-size:.8em;
	line-height:1em;
	padding:2px 4px;
	margin:0;
	text-transform:uppercase;
	letter-spacing:.1em;
	background-color:rgba(255,255,255,.8);
}