@import url('https://fonts.googleapis.com/css?family=IBM+Plex+Sans');

:root {
	--site-primary: #92555f;
	--site-primary-hover: #8a3543;
	--site-secondary: #584045;

	--bs-primary: var(--site-primary);
	--bs-primary-rgb: 146, 85, 95;
	--bs-secondary: var(--site-secondary);
	--bs-secondary-rgb: 88, 64, 69;
	--bs-body-font-family: Arial, sans-serif;
	--bs-link-color: var(--site-primary);
	--bs-link-color-rgb: 146, 85, 95;
	--bs-link-hover-color: var(--site-primary-hover);
	--bs-link-hover-color-rgb: 138, 53, 67;
	--bs-link-decoration: none;
	--bs-link-hover-decoration: none;
}

html {
	overflow-x: hidden;
}

.bg-outer {
	background: #f9f9f9 url("/images/primary/marble_arch.jpg") center / cover no-repeat;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title {
	font-family: 'IBM Plex Sans', Arial, sans-serif;
}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--site-primary);
	--bs-btn-border-color: var(--site-primary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--site-primary-hover);
	--bs-btn-hover-border-color: var(--site-primary-hover);
	--bs-btn-focus-shadow-rgb: 146, 85, 95;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--site-secondary);
	--bs-btn-active-border-color: var(--site-secondary);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--site-primary);
	--bs-btn-disabled-border-color: var(--site-primary);
}

#site-navbar .nav-item {
	height: 50px;
	border-bottom: 3px solid var(--site-primary);
}

#site-navbar .nav-item:hover {
	background-color: var(--site-secondary);
}

/* These classes are part of the links HTML loaded from sandn.net. */
.list-spread-out li {
	margin-top: 20px;
}

.margin-space-top {
	margin-top: 15px;
}

.links-outer-line {
	margin-top: 20px;
}

.main-link-list {
	border: 1px solid #fff;
	transition: border-color 0.1s;
}

.main-link-list:hover {
	border-color: #aaa;
}

.sub-link-list {
	border-right: 2px solid #fff;
	border-left: 2px solid #fff;
	transition: border-color 0.1s;
}

.sub-link-list:hover {
	border-right-color: #505050;
	border-left-color: #505050;
}

/* The family-tree form uses a positioned diagram that has no Bootstrap equivalent. */
.input-tree-shape {
	width: 565px;
	height: 200px;
}

.input-tree-shape #indi_fn {
	position: relative;
	top: 102px;
	left: -45px;
	width: 300px;
}

.input-tree-shape #dad_fn {
	position: relative;
	top: 6px;
	left: 272px;
	width: 320px;
}

.input-tree-shape #mum_fn {
	position: relative;
	top: 93px;
	left: 272px;
	width: 320px;
}

.ver-line-tree {
	position: relative;
	left: 460px;
	top: -27px;
	width: 2px;
	height: 83px;
}

.hor-line-tree {
	position: relative;
	left: 254px;
	top: -69px;
	width: 207px;
	height: 2px;
}

@media (max-width: 767.98px) {
	#site-navbar {
		position: relative;
	}

	#site-navbar .navbar-collapse {
		position: absolute;
		top: 100%;
		left: 0;
		overflow-x: hidden;
	}

	#site-navbar .navbar-nav {
		border-bottom: 2px solid var(--site-secondary);
	}

	#site-navbar .nav-item {
		height: 40px;
		border: 0;
		background-color: transparent;
	}

	#site-navbar .nav-item:hover {
		background-color: var(--site-primary);
	}

	#site-navbar .nav-link {
		color: #475050;
	}

	#site-navbar .nav-link:hover,
	#site-navbar .nav-item:hover .nav-link {
		color: #fff;
	}

	#site-navbar .navbar-collapse.collapsing {
		border-bottom: 2px solid var(--site-secondary);
	}

	#site-navbar .nav-link:focus {
		color: #fff;
		background-color: var(--site-primary);
	}

	.ver-line-tree,
	.hor-line-tree {
		display: none;
	}

	.family-search .input-tree-shape #indi_fn,
	.family-search .input-tree-shape #mum_fn,
	.family-search .input-tree-shape #dad_fn {
		position: static;
		width: auto;
	}

	.input-tree-shape {
		width: auto;
		height: auto;
	}
}

@media (max-width: 450px) {
	.site-title {
		font-size: 0.8em;
		margin-left: 10px;
	}
}
