body {
	background-color: var(--ropecon-background);
	color: var(--ropecon-foreground);

	font-family: var(--ropecon-font);
	line-height: 1.3em;
	min-width: 320px;
}

.dynamic-width,
header.max section,
#content > * {
	padding-right: 30px;
	padding-left: 30px;
}
	#content > .alignfull:not(.wp-block-group) {
/*		padding: 0; */
	}

@media screen and (min-width: 1024px) {
	.dynamic-width,
	#content > *,
	#content > .alignfull > div[class*="__inner-container"] {
		margin-left: auto;
		margin-right: auto;
		width: 80%;
		max-width: 1200px;
	}
		#content > .alignfull + :not(div) {
			margin-top: 3em;
		}
		#content > :last-child:not(div) {
			margin-bottom: 3em;
		}

	#content > .alignwide {
		width: 90%;
		max-width: 1350px;
	}
		#content > .alignwide > div[class*="__inner-container"] {
			padding-left: 5%;
			padding-right: 5%;
		}
	#content > .alignfull {
		padding-left: 0;
		padding-right: 0;
		width: 100%;
		max-width: 100vw;
	}
		#content > .alignfull > div[class*="__inner-container"] {
			padding-right: 30px;
			padding-left: 30px;
		}
}

/*
 *  Header
 *
 */

#header {
	position: absolute;
	z-index: 3000;
	height: 65px;

	width: 100%;
	min-width: 320px;
	background-color: rgba(0,0,0,0.5);
/*	border-bottom: 1px solid rgba(255,255,255,0.15); */
}
	#header #title_main,
	#header nav {
		display: block;
	}

	#header #title_main {
		float: left;
		margin-right: 30px;
	}
		#header #title_main #title {
			margin: 0;
			font-size: 100%;
		}
			#header #title_main #title img {
				display: block;
				height: 49px;
				margin-top: 8px;
			}
	#header nav {
		float: left;
	}
		#header nav ul {
			margin-bottom: 0;
			white-space: nowrap;
		}
			#header nav li,
			#header nav li a {
				display: inline-block;
			}
				#header nav li {
					margin-right: 1em;
				}
					#header nav li a {
						padding-left: 0.5em;
						padding-right: 0.5em;
						line-height: 65px;
					}
						#header nav li.menu-item-has-children a {
							padding-right: 1em;
						}
						#header nav li .sub-menu {
							padding-top: 1em;
							padding-bottom: 1em;
						}
							#header nav li .sub-menu a {
								color: rgba(255,255,255,0.5);
								line-height: 48px;
								padding-left: 1.75em;
								padding-right: 1.75em;
							}

/*  Header link style  */

#header a {
	border-bottom: none;
}
	#header nav a:link, #header nav a:link, #header nav a:visited {
		color: rgba(255,255,255,0.8);
	}
	#header nav a:hover, #header nav a:active, #header nav a:focus {
		color: rgba(255,255,255,1);
	}

/*
 *  Content area
 *
 */

#content {
	min-height: 400px;
}

/*
 *  Footer
 *
 */

footer,
#copyright {
	padding: 1.5em 0;
}

	footer {
		position: relative;
		z-index: 2000;
		background-color: #232323;
		color: #f5f5f5;
		font-size: 90%;
	}
		footer .dynamic-width {
			width: 100%;
		}

		/*  Menu  */
		footer nav {
			margin-top: 4em;
		}
			footer nav ul.menu {
				display: grid;
				grid-template-columns: 1fr;
				grid-gap: 1em;
			}
				footer .menu a, footer .menu a:link, footer .menu a:visited {
					color: #fff;
				}
					footer .menu a, footer .menu a:link, footer .menu a:visited {
						display: block;
						opacity: 0.5;
					}
						footer ul.sub-menu {
							margin-left: 2em;
							margin-bottom: 0;
						}

@media screen and (min-width: 600px) {
	footer section.dynamic-width {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		grid-gap: 2em 4em;
	}

	footer nav ul.menu {
		grid-gap: 2em;
		grid-template-columns: repeat(2,1fr);
	}
}

@media screen and (min-width: 850px) {
	footer nav ul.menu {
		grid-template-columns: repeat(3,1fr);
	}
}

@media screen and (min-width: 1024px) {
	footer section.dynamic-width {
		grid-template-columns: repeat(4,1fr);
	}
	footer nav ul.menu {
		grid-template-columns: repeat(4,1fr);
	}
}

#copyright {
	background-color: #1e1e1e;
	color: rgba(245,245,245,0.5);
	font-size: 80%;
}
