* {
	box-sizing: border-box;
}

body {
	margin: 0;
	background-image: url("background3.jpg");
	background-size: 100%;
}

main {
	max-width: 1024px;
	margin: 0 auto;
	min-height: 560px;
	position: relative;
}

h1 {
	text-align: center;
}

h1 img {
	max-height: 56px;
	display: inline-block;
	margin: 0 10px;
}

.portrait {
	width: 260px;
}

.portrait img {
	max-width: 100%;
	display: block;
	margin: 0 auto;
	transition: 0.5s;
}

.portrait a:hover img {
	box-shadow: 0 0 9px yellow; 
}

#pict {
	position: relative;
	left: -18px;
	top: -5px;
}

.shelf {
	background-image: url("polka.png");
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: bottom;
	width: 460px;
	position: relative;
	padding-left: 38px;
	padding-bottom: 40px;
}

.shelf #feat {
	position: absolute;
	right: -5px;
	bottom: 102px;
}

.shelf #feat img {
	width: 126px;
}

.shelf #firma {
	position: absolute;
	right: 10px;
	bottom: 39px;
}

.shelf #firma img {
	width: 150px;
}

.shelf #info {
	position: absolute;
	right: 1px;
	bottom: 74px;
}

.shelf #info img {
	width: 140px;
}

.shelf #tablet {
	position: relative;
}

.shelf #camera {
	transition: 0.5s;
}

.shelf #camera:hover {
	filter: drop-shadow(0 0 5px yellow);
}

/*
.shelf #tablet::after,
.shelf #tablet::before {
	content: "Flash";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 50px;
	color: white;
	font-size: 18px;
	text-align: center;
	font-style: italic;
	transition: 1s;
}

.shelf #tablet::before {
	left: 5px;
	color: #606060;
}

.shelf #tablet::after {
	right: 5px;
}

.shelf #tablet:focus {
	outline: none;
}

.shelf #tablet:hover::before,
.shelf #tablet:focus::before {
	left: -25px;
}

.shelf #tablet:hover::after,
.shelf #tablet:focus::after {
	right: -25px;
}
*/

.shelf #tablet::after,
.shelf #tablet::before {
	content: "Flash";
	display: block;
	position: absolute;
	top: 50px;
	color: white;
	font-size: 18px;
	text-align: center;
	font-style: italic;
	transition: 1s;
	width: 42px;
}

.shelf #tablet::before {
	left: calc(50% - 18.5px);
	color: #606060;
}

.shelf #tablet::after {
	right: calc(50% - 18.5px);
}

.shelf #tablet:focus {
	outline: none;
}

.shelf #tablet:hover::before,
.shelf #tablet:focus::before {
	left: calc(50% - 32.5px);
}

.shelf #tablet:hover::after,
.shelf #tablet:focus::after {
	right: calc(50% - 32.5px);
}

.sbook {
	display: inline-block;
}

.sbook img,
#info img,
#firma img {
	transform: scale(1.0);
	transition: .5s;
}

.sbook:focus,
#info:focus,
#firma:focus {
	outline: none;
}

.sbook:hover img,
#info:hover img,
#firma:hover img,
.sbook:focus img,
#info:focus img,
#firma:focus img {
	transform: scale(0.92);
}

.sbook:nth-of-type(1) img {
	height: 130px;
}

.sbook:nth-of-type(2) img {
	height: 138px;
}

.sbook:nth-of-type(3) img {
	height: 154px;
}

.sbook:nth-of-type(4) img {
	height: 138px;
}

.twoshelf .sbook:nth-of-type(1) img {
	height: 141px;
}

.twoshelf .sbook:nth-of-type(2) img {
	height: 135px;
}

.twoshelf .sbook:nth-of-type(3) img {
	height: 145px;
}

.sbook:nth-of-type(1){
	margin-right: -22px;
}

.sbook:nth-of-type(2){
	margin-right: -24px;
}

.sbook:nth-of-type(3) {
	margin-right: -19px;
}

.sbook:nth-of-type(4) {
	margin-right: -3px;
	transform: rotate(-9deg);
}

.twoshelf .sbook:nth-of-type(1) {
	margin-right: 2px;
	transform: rotate(-14deg);
}

.twoshelf .sbook:nth-of-type(2) {
	transform: rotate(-22deg);
	margin-right: 19px;
}

.twoshelf .sbook:nth-of-type(3) {
	margin-right: 0px;
}

.sitem {
	display: inline-block;
}

.sitem:nth-of-type(1) img {
	height: 130px;
}

.sitem:nth-of-type(2) img {
	height: 119px;
}

.twoshelf .sitem:nth-of-type(1) img {
	height: 100px;
}

.sitem:nth-of-type(1){
	margin-right: -12px;
	margin-left: 18px;
}

.sitem:nth-of-type(2){
	margin-right: 110px;
	transform: rotate(15deg);
}

.twoshelf .sitem:nth-of-type(1){
	position: relative;
	bottom: -20px;
}

#portrait,
#shelf1,
#shelf2  {
	position: absolute;
}

#portrait {
	left: 50px;
	top: 100px;
}

#shelf1 {
	right: 70px;
	top: 140px;
}

#shelf2 {
	right: 0px;
	top: 370px;
}

.twoshelf {
	display: inline;
}

@media (max-width: 767px) {

	h1 img {
		max-height: 47px;
	}

	#portrait {
		left: calc(50% - 130px);
		top: 130px;
	}
	
	.shelf {
		atransform: scale(0.5);
		transform-origin: right;
	}
	
	#shelf1 {
		right: 70px;
		top: 540px;
	}
	
	#shelf2 {
		right: 0px;
		top: 770px;
	}

}

@media (max-width: 543px) {
	.shelf {
		padding-left: 38px;
		margin-bottom: 1050px;
	}

	#shelf2 {
		right: 0px;
		top: 1075px;
	}

	.shelf #feat {
		right: -65px;
		bottom: 75px;
	}

	.shelf #firma {
		right: calc(50% - 92px);
		bottom: 39px;
	}
	
	.shelf #info {
		right: calc(50% - 50px);
		bottom: 74px;
	}

	.sitem:nth-of-type(2){
		margin-right: 0px;
	}
	
	.shelf,
	.twoshelf {
		right: calc(50% - 115px) !important;
		background-image: url("polkasmall.png");
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: bottom;
		width: 230px;
		padding-bottom: 40px;
	}
	
	.twoshelf {
		display: block;
		position: absolute;
		top: 150%;
		width: 230px;
		padding-left: 38px;
	}
	
	.twoshelf .sbook {
		top: -64px;
		position: relative;
		z-index: 1;
	}
	
	.twoshelf .sbook:nth-of-type(1) {
		margin-right: 2px;
		transform: none;
	}
	
	.twoshelf .sbook:nth-of-type(2) {
		transform: none;
		margin-right: 3px;
	}
	
	.twoshelf .sbook:nth-of-type(3) {
		margin-right: 0px;
	}
}

/* */

#full-simage,
#full-image {
 position: absolute;
 left: 0;
 top: 0;
 height: 0;
 display: block;
}

#full-flash {
 position: absolute;
 left: 0;
 top: 0;
 height: 0;
 display: none;
}

#full-gallery {
 display: none;
 position: fixed;
 left: 0;
 top: 0;
 width: 100%;
 height: 100%;
 z-index: 1;
}

#full-gallery-back {
 position: fixed;
 left: 0;
 top: 0;
 width: 100%;
 height: 100%;
 background-color: rgba(0, 0, 0, 0.5);
}

#full-gallery-prev,
#full-gallery-next,
#full-gallery-link,
#full-image-desc {
 text-align: center;
 color: white;
 display: block;
 position: absolute;
 background-color: rgba(255, 255, 255, 0.2);
 right: 64px;
 bottom: 64px;
}

#full-gallery-prev,
#full-gallery-next,
#full-gallery-link {
 font-weight: bold;
 text-decoration: none;
 right: 64px;
 bottom: 64px;
}

#full-gallery-prev:hover,
#full-gallery-next:hover,
#full-gallery-link:hover,
#full-gallery-link:focus {
 background-color: rgba(255, 255, 255, 0.5);
}

#full-gallery-prev,
#full-gallery-next {
 width: 64px;
 height: 64px;
 top: calc(50% - 32px);
 font-size: 22px;
 line-height: 64px;
}

#full-gallery-prev {
 left: 64px;
}

#full-gallery-next {
 right: 64px;
}

#full-gallery-link {
 right: 64px;
 bottom: 64px;
 padding: 12px;
}

#full-image-desc {
 display: none;
 left: 192px;
 right: 192px;
 height: 60px;
 bottom: 20px;
 apadding: 8px;
 
 background-color: #E4C998;
 border: 5px solid rgba(0, 0, 0, 0.2);
 font-size: 22px;
 text-align: center;
 font-family: sans-serif;
 color: black;
}

#full-gallery.has-desc #full-image-desc {
 hdisplay: block;
 display: flex;
 align-items: center;
 justify-content: center;
}

@media (max-width: 767px) {
 #full-gallery-prev,
 #full-gallery-next {
  top: auto;
  bottom: 32px;
 }
 
 #full-gallery-prev {
  left: 32px;
 }
 
 #full-gallery-next {
  right: 32px;
 }
 
 #full-gallery-link {
  font-weight: bold;
  left: calc(50% - 40px);
  right: auto;
  bottom: 32px;
 }
 
 #full-gallery.has-desc #full-gallery-link {
  left: auto;
  right: 128px;
 }

 #full-image-desc {
  left: 112px;
  right: 224px;
  height: 60px;
  bottom: 20px;
 }
}

@media (max-width: 639px) {
 #full-gallery.has-desc #full-gallery-link {
  font-weight: bold;
  left: calc(50% - 40px);
  right: auto;
 }
 
 #full-image-desc {
  left: 16px;
  right: 16px;
  height: 60px;
  bottom: 112px;
 }
}

/* */

.book {
	perspective: 1600px;
	background-image: url("Open_Book.png");
	background-size: 100%;
	background-repeat: no-repeat;
	width: 950px;
	height: 550px;
	margin: 0 auto;
	padding: 8px 64px;
	position: relative;
	margin-top: 160px;
}

.book::before {
	content: "";
	background-image: url("Open_Book.jpg");
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	left: 57px;
	top: 57px;
	right: 57px;
	bottom: 57px;
	z-index: -1000;
}

.book .backButton,
.book .backButton2 {
	display: block;
	position: absolute;
	width: 60px;
	top: calc(100% - 45px);
	right: 500px;
	z-index: 1000;
    -webkit-filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.5));
    filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.5));
}


.book .backButton img,
.book .backButton2 img {
	max-height: 100%;
	max-width: 100%;
}

.book .backButton2 {
	right: auto;
	left: 315px;
	transform: scale(0.93) translateY(5px);
}

.book .bookmark {
	display: block;
	position: absolute;
	padding-top: 30px;
	padding-bottom: 40px;
	width: 60px;
	height: 156px;
	background-repeat: no-repeat;
	background-size: 100%;
	top: calc(100% - 45px);
	z-index: 1000;
    -webkit-filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.5));
    filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.5));
	font-size: 50px;
	color: black;
	text-decoration: none;
	text-align: center;
	transform-origin: top;
}

.book .page .bookmark.b1 {
	background-image: url('1page.png');
	right: 245px;
}

.book .page.back .bookmark.b1 {
	right: auto;
	left: 245px;
	transform: scale(0.94) translateY(5px);
}

.book .page .bookmark.b2 {
	background-image: url('2page.png');
	right: 170px;
	transform: scale(0.98) translateY(3px);
}

.book .page.back .bookmark.b2 {
	right: auto;
	left: 170px;
	transform: scale(0.96) translateY(4px);
}

.book .page .bookmark.b3 {
	background-image: url('3page.png');
	right: 95px;
	transform: scale(0.96) translateY(4px);
}

.book .page.back .bookmark.b3 {
	right: auto;
	left: 95px;
	transform: scale(0.98) translateY(3px);
}

.book .page .bookmark.b4 {
	background-image: url('4page.png');
	right: 20px;
	transform: scale(0.94) translateY(5px);
}

.book .page.back .bookmark.b4 {
	right: auto;
	left: 20px;
	transform: scale(1.0) translateY(2px);
}

.book .bookmark.hidden {
	display: none;
}

.book .prevPage,
.book .nextPage {
	display: block;
	position: absolute;
	width: 64px;
	height: 64px;
	bottom: 52px;
	z-index: 1000;
}

.book .prevPage {
	left: 52px;
}

.book .nextPage {
	right: 52px;
}

.book .page {
	text-align: center;
	padding-top: 96px;
	position: absolute;
	right: 64px;
	width: calc(50% - 64px);
	height: calc(100% - 16px);
	transform: rotateX(10deg) rotateY(0deg);
	transform-origin: left center;
	backface-visibility: hidden;
}

.book .page::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	background-image: url("page1corner.png"), url("page1.png");
	background-position: right -16px;
	background-size: 475px;
	background-repeat: no-repeat;
    transform: scaleX(-1.0);
}

.book .page:last-of-type::before,
.book .page.last-of-group::before,
.book .page.back:first-of-type::before,
.book .page.first-of-group::before,
.book .page.empty::before {
	background-image: url("page1.png");
}

.book .page.first-of-group.vis::before {
	background-image: url("page1corner.png"), url("page1.png");
}

.book .page[data-noarrow]::before {
	background-image: url("page1.png") !important;
}

.book .page.flipped {
	transform: rotateX(10deg) rotateY(-180deg);
}

.book .page.back {
	position: absolute;
	right: auto;
	transform: rotateX(10deg) rotateY(180deg);
	transform-origin: right center;
}

.book .page.back::before {
    transform: none;
}

.book .page.back.flipped {
	transform: rotateX(10deg) rotateY(0deg);
}

.book h1 {
	text-align: center;
	font-family: cursive;
	afont-style: italic;
	font-size: 40px;
	position: relative;
}

.book article {
	text-align: center;
	position: relative;
	padding: 16px 32px;
	font-family: "Monotype Corsiva", cursive;
	font-size: 22px;
	line-height: 1.5em;
}

@font-face {
	font-family: "Monotype Corsiva";
	src: url("MonotypeCorsiva.ttf");
}

.book .wlist {
	text-align: left;
}

.book .vis {
	display: block !important;
}

.book h2 {
	position: absolute;
	left: 0;
	right: -100%;
	top: -150px;
	background-color: #E4C998;
	border: 5px solid rgba(0, 0, 0, 0.2);
	padding: 30px;
	z-index: 1000;
	font-size: 22px;
	text-align: center;
	font-family: sans-serif;
}

.book h3 {
	height: 2.34em;
	margin-top: -3.51em;
	margin-bottom: 1.17em;
	position: relative;
	text-align: center;
	font-family: "Monotype Corsiva", cursive;
	font-size: 21px;
}

.book h3 a {
	color: inherit;
	text-decoration: inherit;
}

.book .i,
.book .ie {
	vertical-align: top;
	width: 160px;
	height: 120px;
	margin: 8px;
	display: inline-block;
}

.book .i {
	line-height: 100px;
	border-radius: 16px;
	padding: 4px;
	font-size: 16px;
	 
	cursor: pointer;
	border: 3px solid #000000;
	background-color: #E0E0E0;
	position: relative;
}

.book .i:hover,
.book .i:focus {
	background-color: #FFFFFF;
}

.book .i img {
	vertical-align: middle;
	max-width: 100%;
	max-height: 100%;
}

/* Tablet */

.tablet {
	background-image: url("tabletbig.png");
	background-size: 100%;
	background-repeat: no-repeat;
	width: 780px;
	height: 610px;
	margin: 0 auto;
	padding: 66px 72px;
	position: relative;
	margin-top: 160px;
	margin-bottom: 160px;
	aborder-radius: 25px;
	aborder: 3px solid #b96;
	abox-shadow: 4px 4px 4px rgba(0, 0, 0, 0.5);
	abackground-color: white;
	az-index: 0;
}

.otablet::before {
	content: "";
	display: block;
	position: absolute;
	left: 66px;
	top: 72px;
	right: 66px;
	bottom: 72px;
	z-index: -1;
	background-color: black;
}

.tablet .backButton {
	background-color: #777;
	border-radius: 100px;
	padding: 10px;
	text-decoration: none;
	color: white;
	abackground: linear-gradient(#666, #222);
	background-image: url("gradient.png");
	background-size: 100% 200%;
	background-position: 0 0;
	position: absolute;
	right: 10px;
	top: 50%;
	max-width: 56px;
	transition: 1s;
}

.tablet .backButton:hover {
	abackground: linear-gradient(#222, #666);
	background-position: 0 100%;
}

.tablet .backButton img {
	max-width: 100%;
	max-height: 100%;
}

.tablet .i {
	line-height: 112px;
	vertical-align: middle;
	display: inline-block;
	width: 160px;
	height: 120px;
	margin: 10px;
	border: 2px solid #000000;
	text-align: center;
	background-color: white;
}

.tablet .i img {
	vertical-align: middle;
	max-width: 100%;
	max-height: 100%;
}

/* Photos */

.photos {
	perspective: 600px;
	position: relative;
}

.photos .container {
	transform: rotateX(30deg);
	atransform-origin: top;
	margin-top: 100px;
	background-color: #C0A050;
	background-image: url("312.jpg");
	padding: 30px;
	text-align: center;
	height: 600px;
	aoverflow-y: auto;
	overflow-x: visible;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	border: 4px solid white;
	box-shadow: 0px 0px 0 4px black, 0px 2px 0 8px #8080ff;
}

.photos .backButton {
	color: black;
	text-decoration: none;
	position: absolute;
	right: 36px;
	bottom: 50px;
	background-color: white;
	padding: 8px;
	transform: rotate(0deg) scale(2.0);
	box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.75);
	transition: 0.5s;
}

.photos .backButton:hover {
	box-shadow: 0px 4px 14px rgba(255, 0, 0, 0.75);
}

.photos .prevPage,
.photos .nextPage {
	position: absolute;
	font-size: 70px;
	top: calc(50% - 12px);
	color: white;
	text-shadow: 0 2px 8px blue;
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.8);
	color: rgba(255, 255, 255, 0.8);
	width: 70px;
}

.photos .prevPage {
	right: calc(100% + 40px);
}

.photos .nextPage {
	left: calc(100% + 40px);
}

.photos .i {
	cursor: pointer;
	border: 15px solid white;
	margin: 12px;
	display: inline-block;
	border-radius: 4px;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.5);
	background-color: white;
}

.photos .i.v {
	margin: 19.5px;
	border-width: 7.5px;
	border-radius: 2px;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.5);
}

.photos .i img {
	height: 140px;
	max-width: 100%;
	xmax-height: 100%;
}

.photos .ie {
	display: none;
}

.photos .i:nth-of-type(3n-2) {
	transform: rotate(3deg);
}

.photos .i:nth-of-type(3n-1) {
	transform: rotate(2deg);
}

.photos .i:nth-of-type(3n) {
	transform: rotate(-2deg);
}

.photos .i:nth-of-type(6n) {
	transform: translate(-50px, 20px) rotate(-2deg);
}

.photos .i.v:nth-of-type(3n-2) {
	transform: rotate(3deg) scale(1.5);
}

.photos .i.v:nth-of-type(3n-1) {
	transform: rotate(2deg) scale(1.5);
}

.photos .i.v:nth-of-type(3n) {
	transform: rotate(-10deg) scale(1.5);
}

.photos .i.v:nth-of-type(6n) {
	transform: translate(-50px, 20px) rotate(-2deg) scale(1.5);
}

.aboutall {
	position: relative;
	margin-top: 100px;
	margin-bottom: 160px
}

.aboutall .pageportrait {
	position: absolute;
	width: 300px;
}

.aboutall .aboutpage {
	position: relative;
	background-image: url("Paper.jpg");
	background-size: 100%;
	margin-left: 350px;
	margin-right: 30px;
	padding: 38px;
	padding-bottom: 160px;
	font-size: 20px;
	font-family: cursive;
}

.aboutall h1 {
	margin-top: 0;
	font-size: 32px;
}

.aboutall p {
	margin-top: 0;
}

.aboutall .backButton3 {
	background-image: url("seal.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	padding: 35px;
	position: absolute;
	right: 65px;
	bottom: 20px;
	color: white;
	text-shadow: 1px 1px 2px black;
	transition: 0.5s;
	text-decoration: none;
}

.aboutall .backButton3:hover {
	filter: drop-shadow(0 0 4px #800000);
	transform: scale(0.9);
}

@media (max-width: 767px) {
	.aboutall .pageportrait {
		position: static;
		display: block;
		margin: 0 auto;
		max-width: 100%;
		margin-bottom: 30px;
	}

	.aboutall .aboutpage {
		margin-left: 30px;
	}
}

@media (max-width: 639px) {
	.aboutall .aboutpage {
		font-size: 18px;
	}
}

@media (max-width: 479px) {
	.aboutall .aboutpage {
		margin-left: 16px;
		margin-right: 16px;
		padding: 16px;
		padding-bottom: 160px;
		afont-size: 15px;
	}
}