@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700&family=Cinzel:wght@400;600&family=Libre+Baskerville&family=Cormorant+Garamond:wght@400;600&display=swap');

html,body{
	margin:0;
	padding:0;
	color:#53455C;
	font-family:'Libre Baskerville',serif;
	background:#F6F1FC;
}
#header{
	background-image:url("https://memories.buruma.net/images/header.jpg"),url("https://memories.buruma.net/images/bg1.jpg");
	background-repeat:no-repeat,repeat-x;
	height:476px;
	background-position:center;
	width:100%;
	position:relative;
}
b,strong{
	display:inline-block;
	padding:4px 12px;
	color:#584A74;
	font-weight:600;
	background:linear-gradient(180deg,#ffffff,#f7f2fd);
	border:1px solid #e6ddf6;
	border-radius:8px;
	box-shadow:0 2px 10px rgba(170,145,225,.12);
}
i,em{
	padding:2px 8px;
	color:#9a82d6;
	font-style:italic;
	background:rgba(168,141,232,.10);
	border-radius:6px;
}
#layout-container{
	width:70%;
	max-width:1300px;
	margin:-40px auto 0;
	padding:50px;
	display:block !important;
	position:relative;
	z-index:5;
}
#navigation{
	position:fixed;
	top:24px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
	padding:16px 22px;
	width:fit-content;
	background:rgba(255,252,255,.82);
	backdrop-filter:blur(16px);
	border:1px solid #e8e0f7;
	border-radius:999px;
	opacity:.82;
	box-shadow:0 12px 35px rgba(165,145,215,.10),0 0 35px rgba(218,204,248,.20);
	z-index:9999;
}
#navigation a{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:12px 22px;
	font-family:'Cinzel',serif;
	font-size:14px;
	letter-spacing:.18em;
	text-transform:uppercase;
	text-decoration:none;
	color:#5c4d78;
	border-radius:999px;
	transition:color .35s,background .35s,transform .35s,box-shadow .35s;
}
#navigation a:hover{
	color:#9479cf;
	background:rgba(168,141,232,.12);
	transform:translateY(-2px);
	box-shadow:0 0 22px rgba(168,141,232,.18);
}
#navigation a::after{
	content:"";
	position:absolute;
	left:50%;
	bottom:6px;
	width:0;
	height:2px;
	background:#b196ef;
	transform:translateX(-50%);
	transition:.35s;
}
#navigation a:hover::after{
	width:70%;
}
.contentx{
	width:100% !important;
	flex:none !important;
	opacity:.82;
	margin-top:-50px;
	padding:48px;
	font-size:21px;
	line-height:2;
	text-align:justify;
	color:#56496f;
	background:rgba(255,252,255,.76);
	backdrop-filter:blur(14px);
	border:1px solid #ebe4f8;
	border-radius:22px;
	box-shadow:0 18px 45px rgba(170,145,225,.10),0 0 45px rgba(222,210,250,.22);
}
h1{
	position:relative;
	margin:0 auto 55px;
	padding:0 0 20px;
	text-align:center;
	text-transform:uppercase;
	font-family:'Cinzel Decorative',serif;
	font-weight:400;
	font-size:26px;
	letter-spacing:.24em;
	line-height:1.2;
	color:#5a4b76;
	text-shadow:0 0 22px rgba(181,156,236,.25);
}
h1::after{
	content:"✦";
	display:block;
	margin-top:16px;
	font-size:30px;
	color:#b193ee;
	letter-spacing:0;
}
h1::before{
	content:"";
	position:absolute;
	left:50%;
	bottom:0;
	width:260px;
	height:2px;
	background:linear-gradient(90deg,transparent,#dacbf8,transparent);
	transform:translateX(-50%);
}
h1 span{
	display:block;
	margin-top:12px;
	font-family:'Cormorant Garamond',serif;
	font-size:18px;
	font-style:italic;
	font-weight:400;
	text-transform:none;
	letter-spacing:.14em;
	color:#9b82d7;
}
blockquote{
	position:relative;
	margin:80px auto;
	max-width:760px;
	padding:55px;
	font-family:'Libre Baskerville',serif;
	font-size:23px;
	font-style:italic;
	line-height:1.8;
	color:#5a4d74;
	background:rgba(255,253,255,.82);
	backdrop-filter:blur(16px);
	border-left:6px solid #b193ee;
	border-radius:22px;
	box-shadow:0 20px 40px rgba(170,145,225,.10),0 0 40px rgba(224,212,250,.25);
}
blockquote::before{
	content:"❝";
	position:absolute;
	left:24px;
	top:12px;
	font-size:48px;
	font-family:serif;
	color:#b89df1;
	opacity:.35;
}
.contentx a{
	color:#9a82d6;
	text-decoration:none;
	position:relative;
	transition:.3s;
}
.contentx a::after{
	content:"";
	position:absolute;
	left:0;
	bottom:-4px;
	width:100%;
	height:2px;
	background:linear-gradient(90deg,#ece3fd,#b193ee);
	transform:scaleX(.35);
	transform-origin:left;
	transition:.35s;
}
.contentx a:hover{
	color:#7658b6;
}
.contentx a:hover::after{
	transform:scaleX(1);
}
textarea,input,select{
	width:88%;
	max-width:800px;
	padding:1.4rem;
	font-family:'Libre Baskerville',serif;
	font-size:16px;
	color:#5a4d74;
	background:#fffdff;
	border:1px solid #ebe2f8;
	border-radius:40px;
	box-shadow:inset 0 2px 8px rgba(170,145,225,.05);
	transition:border .3s,box-shadow .3s,background .3s;
}
textarea:focus,input:focus,select:focus{
	outline:none;
	background:#ffffff;
	border-color:#b193ee;
	box-shadow:0 0 18px rgba(177,147,238,.20);
}
#footer{
	width:min(900px,90%);
	margin:90px auto 40px;
	padding:40px 30px;
	text-align:center;
}
.footer-divider{
	width:180px;
	height:2px;
	margin:0 auto 28px;
	background:linear-gradient(90deg,transparent,#d8c8f8,transparent);
}
.footer-bottom{
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:12px;
}
.footer-bottom p{
	margin:0;
	color:#8f7abf;
	font-family:'Cormorant Garamond',serif;
	font-size:21px;
	line-height:1.6;
}
.footer-bottom a{
	color:#9b82d6;
	text-decoration:none;
	transition:.3s;
}
.footer-bottom a:hover{
	color:#7458b8;
}
.back-to-top{
	display:inline-block;
	margin-top:12px;
	padding:10px 24px;
	font-family:'Cinzel',serif;
	font-size:13px;
	letter-spacing:.15em;
	text-transform:uppercase;
	color:#5c4d78;
	background:rgba(255,255,255,.85);
	border:1px solid #e7def7;
	border-radius:999px;
	box-shadow:0 6px 16px rgba(176,150,232,.10);
	transition:background .3s,color .3s,transform .3s,box-shadow .3s;
}
.back-to-top:hover{
	color:#fff;
	background:#b193ee;
	border-color:#b193ee;
	transform:translateY(-3px);
	box-shadow:0 10px 24px rgba(177,147,238,.28);
}
@media (max-width:768px){
	#footer{
		padding:32px 20px;
		margin:60px auto 30px;
	}
	.footer-bottom p{
		font-size:18px;
	}
	.back-to-top{
		width:100%;
		max-width:260px;
	}
}
@media(max-width:768px){
	#layout-container{
		padding:25px;
	}
	#navigation{
		position:relative;
		width:100%;
		right:auto;
		bottom:auto;
		margin:0 auto 30px;
		grid-template-columns:1fr;
	}
	.contentx{
		padding:28px;
		font-size:18px;
	}
	h1{
		font-size:32px;
		letter-spacing:.1em;
	}
	blockquote{
		font-size:24px;
		padding:35px;
	}
	textarea,input,select{
		width:100%;
	}
}
