html {
	scroll-behavior: smooth;
}

body {
	font-family: "Source Serif Pro";
	background-color: rgb(71, 100, 104);
	margin: 0 30px;
}

#wrapper {
	background-color: rgb(253, 253, 253);
	border-radius: 20px;
	padding: 0 80px 0 80px;
	margin: 40px auto 40px auto;
	max-width: 1200px;
	box-sizing: border-box;
	box-shadow: 0px 0px 30px rgb(68, 68, 68);
}

a:link, a:visited {
	color: rgb(0, 94, 135);
}

a:hover {
	color: rgb(48, 136, 176)
}

#websitetitle {
	font-size: 26px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	background-color: rgb(0, 123, 175);
	color: white;
	margin: 0 -80px;
	padding: 40px 0px 140px 50px;
	border-top-left-radius: 18px;
	border-top-right-radius: 18px;
	background-image: url(/img/treebg.png), linear-gradient(140deg, rgb(7, 86, 120) 0%, rgb(0, 123, 175) 100%); 
	background-repeat: no-repeat;
	background-position: right 28%;
	background-size: 120% auto;
}

#websitetitle * {
	color: white;
	text-shadow: 0px -1px 1px black;
	text-decoration: none;
}

#websitetitle a:hover {
	text-decoration: underline;
}

article {
	padding: 40px 0 0 0;
	max-width: 1000px;
}

#title {
	font-size: 36px;
}

#notice {
	background-color:rgb(214, 190, 190);
	padding: 2em 3em 2em 4.3em;
	margin: 2em 0;
	border-radius: 14px;
}

#notice span.material-symbols-outlined {
	position: absolute;
	display: block;
	margin-left: -1.3em;
}

.material-symbols-outlined {
	vertical-align: top;
}

hr {
	border: 0;
	border-top: 1px solid rgb(157, 157, 157);
	border-bottom: 1px solid rgb(221, 221, 221);
	height: 0;
	margin: 80px -80px 80px -80px;
}

article hr {
	margin: 40px 0;
	border: 0;
	border-top: 1px dashed rgb(157, 157, 157);
}

p, li {
	font-size: 1.1em;
	line-height: 1.6em;
}

h3 {
	font-size: 1.3em;
	margin-top: 2em;
	margin-bottom: 1em;
}

h4 {
	font-size: 1.1em;
	line-height: 1.6em;
	margin-top: 1.5em;
	margin-bottom: 1em;
}

p.quote {
    border-left: 10px solid #ccc;
    padding-left: 10px;
}

#allCommentaries {
	columns: 3;
}

#allCommentaries h4:first-of-type {
	margin-top: 0;
}

#allCommentaries h4 {
	break-after: avoid;
	font-size: 22px;
}

#allCommentaries ul {
	break-inside: avoid;
	padding-left: 15px;
}

#allCommentaries li {
	margin-bottom: 2px;
}

#copyright {
	color: rgb(223, 223, 223);
	background-color: rgb(68, 68, 68);
	margin: 80px -80px 0 -80px;
	padding: 60px 40% 110px 80px;
	border-bottom-left-radius: 19px;
	border-bottom-right-radius: 19px;
	background-image: url(/img/treebg.png), linear-gradient(140deg, rgb(88, 88, 88) 0%, rgb(62, 62, 62)100%);   background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 100% auto;
	min-height: 220px;
}

#copyright p {
	font-size: 16px;
}

#copyright a:link, #copyright a:visited {
	color: rgb(161, 221, 247);
}

#copyright a:hover {
	color: rgb(0, 145, 255);
}

div.box {
    padding: 20px 40px 40px 40px;
    box-sizing: border-box;
    margin: 40px auto;
    border-radius: 10px;
    max-width: 640px;
	background-color: #ccc;
}

figure {
	margin: 20px 0 40px 0;
	width: 100%;
  }
  
figure img {
	width: 100%;
}

figure figcaption {
	text-align: right;
	font-weight: bold;
}

a.callToAction, button.callToAction {
	display: inline-block;
	border-radius: 10px;
	padding: 12px 30px 10px 30px;
	border: 0;
	font-weight: bold;
	transition: box-shadow .1s linear;
	font-family: 'Source Serif Pro', serif;
	margin: 0 10px 10px 0;
	font-size: 18px;
	line-height: 27px;
}

a.callToAction:link, a.callToAction:visited, #homeMenu a.callToAction:link, #homeMenu a.callToAction:visited, button.callToAction {
	background-color: rgb(255, 206, 28);
	color: black;
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
	text-decoration: none;
	text-shadow: none;
}

button.callToAction[disabled] {
	box-shadow: none;
}

button.callToAction[disabled]:hover {
	box-shadow: none;
	cursor: default;
}

a.callToAction:hover, button.callToAction:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
}

@media screen and (max-width: 1000px) {

	#allCommentaries {
		columns: 2;
	}

}

@media screen and (max-width: 768px) {

	html {
		scroll-behavior: auto;
	}

	body {
		margin: 0;
	}

	#wrapper {
		margin: 0;
		padding: 0 40px;
		border-radius: 0;
	}

	#websitetitle, #copyright, hr {
		border-radius: 0;
		padding-left: 40px;
		padding-right: 40px;
		margin-left: -40px;
		margin-right: -40px;
	}

	#allCommentaries {
		columns: 1;
	}

	#notice {
		padding: 1em 2em 1em 3.3em;
		font-size: 1em;
	}

	#websitetitle {
		padding-top: 20px;
		background-position: right bottom;
	}

	article {
		padding-top: 1px;
	}

}

@media screen and (max-width: 400px) {

	#wrapper {
		padding: 0 20px;
	}

	#websitetitle, #copyright, hr {
		padding-left: 20px;
		padding-right: 20px;
		margin-left: -20px;
		margin-right: -20px;
	}

	hr {
		margin-top: 50px;
		margin-bottom: 55px;
	}

}

@media screen and (max-width: 375px) {

	#websitetitle {
		background-size: 150% auto;
	}

}