@font-face {
	font-family: 'fontello';
	src: url('https://zsr.wfu.edu/theme/css/fonts/fontello.eot?80779063');
	src: url('https://zsr.wfu.edu/theme/css/fonts/fontello.eot?80779063#iefix') format('embedded-opentype'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.woff2?80779063') format('woff2'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.woff?80779063') format('woff'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.ttf?80779063') format('truetype'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.svg?80779063#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
}

.banner
{
	/* background-color: #fff; */
	margin: 0;
	padding: 0;
	position: relative;
	width: 100%;

	.container
	{
		background-color: #353331;
		display: flow-root;
		width: auto;
		max-width: 100%;
		z-index: 9;
	}
	a, a:hover
	{
		border: none;
		text-decoration: none;
	}
}
.off-screen, h2.role
{
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
	height: 1px;
	line-height: 1;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	top: -9999px;
	white-space: nowrap;
	width: 1px;
}

.rabbet
{
	font-size: .6em;
}
.zsr-return
{
	display: none;
	line-height: 1;
	padding: .59rem 0 0 0;
	a
	{
		background-image: url('https://zsr.wfu.edu/files/zsrlibrary-icon-100x100.png');
		background-image: url('https://zsr.wfu.edu/files/zsr-library-icon.svg');
		background-repeat: no-repeat;
		background-size: contain;
		display: block;
		height: 50px;
		margin: 0 auto;
		text-indent: -9999px;
		width: 50px;
	}
}
.zsr-imprint
{
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 1em;
	font-style: normal;
	line-height: 1;
	margin: 0 auto;
	padding: 1rem 0;
	position: relative;
	text-align: center;
	width: 100%;

	a 
	{
		background-image: url('https://zsr.wfu.edu/files/zsr-sca-ds-800x200.png');
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		border: none;
		/* color: #8c6d2c; */
		/* color: #a67f31; */
		color: #fff;
		display: block;
		font-size: 1.5rem;
		font-weight: normal;
		min-height: 70px;
		margin: 0 auto;
		padding: 0;
		text-indent: -9999px;
		text-transform: uppercase;
		&:hover
		{
			/* color: #8c6d2c; */
			color: #efeeed;
		}
	}
}
.library-hours
{
	border: none;
	clear: both;
	/* color: #777675; */
	color: #afaead;
	display: none;
	font-size: .9em;
	line-height: 1;
	padding: .5rem 1rem 1rem 1rem;
	position: relative;
	/* top: -.19rem; */
	text-align: center;

	a
	{
		border: none;
		/* color: #777675; */
		color: #afaead;
		line-height: 1;
	}
	& > a
	{
		display: inline-block;
		margin-inline-start: .125em;
	}
	b
	{
		font-weight: normal;
	}
	.icon-clock::before
	{
		/* color: #afaead; */
		color: #bfbebd;
		font-size: 1.3em;
	}
}
#zsr-hours-today
{
	display: inline-block;
}
#more-hours
{
	display: inline-block;
	text-align: left;

	a
	{
		font-size: 1em;
	}
	.menu-quoin
	{
		display: inline-block;
		line-height: 1;
	}
	.menu-block
	{
		border-radius: 5px 0 5px 5px;
		right: 5px;
		left: auto;

		a
		{
			font-size: 1em;
		}
		b
		{
			display: inline-block;
			font-weight: bold;
			text-transform: uppercase;
			width: 7em;
		}
	}
}
#giving 
{
	/* background-color: #353331; */
	background-color: #695221;
	clip-path: polygon(0% 0%,100% 0%,100% 100%,50% 80%,0% 100%);
	/* color: #a78234; */
	color: #fff;
	display: none;
	font-size: .5rem;
	height: 7em;
	letter-spacing: 0;
	line-height: 1.2;
	padding: 1em;
	position: absolute;
	top: 0;
	right: 5%; 
	text-align: center;
	width: 7em;
	z-index: 3;

	&:has(a:hover)
	{
		background-color: #836729;
	}

	a 
	{
		/* background-color: #353331; */
		/* background-color: #efeeed; */
		border: none;
		/* color: #a78234; */
		color: #fff;
		text-transform: uppercase;
		&:hover
		{
			/* color: #be943b; */
			color: #fff;
		}
	}
	span 
	{
		/* color: #e0ddcf; */
		color: #d3d2d1;
		display: block;
		font-size: .7em;
		&:hover
		{
			color: #fff;
		}
	}
}
@media only screen and (min-width: 400px)
{
	.zsr-imprint
	{
		width: 320px;
		a
		{
			height: 80px;
			width: 320px;
		}
	}
}
@media only screen and (min-width: 600px)
{
	#giving 
	{
		/* display: block; */
	}
}
@media only screen and (min-width: 960px)
{
	.banner .container
	{
		padding: 0;
	}
	.zsr-return
	{
		padding: 0;
		position: absolute;
		top: 1.9rem;
		left: 5%;
	}
	.library-hours
	{
		/* display: block; */
		font-size: 1em; 
		margin: 0 0 0 60px;
		padding: 0;
		text-align: left;
		position: absolute;
		top: 3.4rem;
		left: 5%;
	}
	#more-hours
	{
		position: absolute;
		top: -0.67em;
		right: -3.7em;

		.menu-block
		{
			border-radius: 0 5px 5px 5px;
			right: auto;
			left: 0;
		}
	}
	#giving
	{
		font-size: 1em;
	}
}
@media only screen and (min-width: 1280px)
{
	#more-hours
	{
		position: absolute;
		top: .43em;
		right: -3.7em;
	}
}

/* @see partials/icons-fontello */
/*@font-face {
	font-family: 'fontello';
	src: url('https://zsr.wfu.edu/theme/css/fonts/fontello.eot?80779063');
	src: url('https://zsr.wfu.edu/theme/css/fonts/fontello.eot?80779063#iefix') format('embedded-opentype'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.woff2?80779063') format('woff2'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.woff?80779063') format('woff'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.ttf?80779063') format('truetype'),
			 url('https://zsr.wfu.edu/theme/css/fonts/fontello.svg?80779063#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
}*/

[class*="icon-"]::before,
[class*="status-"]::before, 
[href$=".doc"]::after,[href$=".docx"]::after,[href$=".xls"]::after,[href$=".xlsx"]::after,[href$=".pdf"]::after,
.furniture [href^="mailto:"]::after,
.furniture [href^="tel:"]::before
{
	display: inline-block;
	font-family: 'fontello' !important;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	speak: none;
	text-align: center;
	text-decoration: inherit;
	text-transform: none;
	width: 1em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
[class*="icon-"] > span
{
	clip: rect(1px,1px,1px,1px);
	clip-path: polygon(0px 0px,0px 0px,0px 0px);
	height: 1px;
	overflow: hidden;
	position: absolute;
	top: -9999px;
	width: 1px;
}
 
.icon-mail::before {content: '\e800';}
.icon-search::before {content: '\e801';}
.icon-checkmark::before {content: '\e802';}
.icon-book::before {content: '\e803';}
.icon-bookmark::before {content: '\e804';}
.icon-info::before {content: '\e805';}
.icon-film::before {content: '\e806';}
.icon-alert::before {content: '\e807';}
.icon-location::before {content: '\e808';}
.icon-journal::before {content: '\e809';}
.icon-clock::before {content: '\e80a';}
.icon-block::before {content: '\e80b';}
.icon-lock::before {content: '\e80c';}
.icon-calendar::before {content: '\e80d';}
.icon-phone::before {content: '\e80e';}
.icon-box::before {content: '\e80f';}
.icon-website::before {content: '\e810';}
.icon-goodreads::before {content: '\e811';}
.icon-mobile::before {content: '\e812';}
.icon-tiktok::before {content: '\e813';}
.icon-refresh::before {content: '\e814';}
.icon-x-logo::before {content: '\e815';}
.icon-threads::before {content: '\e816';}
.icon-bluesky::before {content: '\e817';}
.icon-twitter::before {content: '\f099';}
.icon-facebook::before {content: '\f09a';}
.icon-feed::before {content: '\f09e';}
.icon-chat::before {content: '\f0e6';}
.icon-article::before {content: '\f0f6';}
.icon-angle-up::before {content: '\f106';}
.icon-caret::before {content: '\f106';}
.icon-angle-down::before {content: '\f107';}
.icon-feed-square::before {content: '\f143';}
.icon-compass::before {content: '\f14e';}
.icon-youtube-square::before {content: '\f166';}
.icon-youtube::before {content: '\f16a';}
.icon-instagram::before {content: '\f16d';}
.icon-flickr-square::before {content: '\f16e';}
.icon-tumblr::before {content: '\f173';}
.icon-tumblr-square::before {content: '\f174';}
.icon-file-pdf::before {content: '\f1c1';}
.icon-file-word::before {content: '\f1c2';}
.icon-file-excel::before {content: '\f1c3';}
.icon-database::before {content: '\f233';}
.icon-guide::before {content: '\f277';}
.icon-map::before {content: '\f278';}
.icon-snapchat::before {content: '\f2ac';}
.icon-snapchat-square::before {content: '\f2ad';}
.icon-librarian::before {content: '\f2bc';}
.icon-contact::before {content: '\f2bc';}
.icon-flickr::before {content: '\f303';}
.icon-twitter-square::before {content: '\f304';}
.icon-facebook-square::before {content: '\f308';}
.icon-caret::before {content: '\f106';}	

.icon-bluesky {color: #0085ff !important;}
.icon-facebook,.icon-facebook-square {color: #3b5998 !important;}
.icon-feed,.icon-feed-square {color: #f60 !important;}
.icon-flickr,.icon-flickr-square {color: #ff0084 !important;}
.icon-goodreads {color: #553b08 !important;}
.icon-instagram {color: #326c93 !important;}
.icon-snapchat,.icon-snapchat-square {color: #fffc00 !important;}
.icon-threads {color: #000 !important;}
.icon-tiktok {color: #ff0050 !important;}
.icon-tumblr,.icon-tumblr-square {color: #36465d !important;}
.icon-twitter,.icon-twitter-square {color: #00a2f1 !important;}
.icon-x-logo {color: #000 !important;}
.icon-youtube,.icon-youtube-square {color: #ff0000 !important;}

.connect .icon-mail {color: #7e7774 !important;}
.colophon .connect .icon-bluesky,
.colophon .connect .icon-facebook,
.colophon .connect .icon-feed,
.colophon .connect .icon-flickr,
.colophon .connect .icon-goodreads,
.colophon .connect .icon-instagram,
.colophon .connect .icon-threads,
.colophon .connect .icon-tiktok,
.colophon .connect .icon-x-logo,
.colophon .connect .icon-youtube {color: #8d857e !important;}
.colophon .connect .icon-bluesky:hover,
.colophon .connect .icon-facebook:hover,
.colophon .connect .icon-feed:hover,
.colophon .connect .icon-flickr:hover,
.colophon .connect .icon-goodreads:hover,
.colophon .connect .icon-instagram:hover,
.colophon .connect .icon-threads:hover,
.colophon .connect .icon-tiktok:hover,
.colophon .connect .icon-x-logo:hover,
.colophon .connect .icon-youtube:hover {color: #fff !important;}

.furniture
{
	[href^="mailto:"]::after
	{
		content: '\e800';
		margin: 0 0 0 .25em;
	}
	[href^="tel:"]::before
	{
		content: '\e80e';
		margin: 0 .25em 0 0;
	}
}

/* files */
[href$=".doc"],[href$=".docx"]
{
	&::after
	{
		color: #2a7ccb;
		content: '\f1c2';
		margin: 0 0 0 .25em;
	}
}
[href$=".xls"],[href$=".xlsx"]
{
	&::after
	{
		color: #3f9021;
		content: '\f1c3';
		margin: 0 0 0 .25em;
	}
}
[href$=".pdf"]
{
	&::after
	{
		color: #d80719;
		content: '\f1c1';
		margin: 0 0 0 .25em;
	}
}
.status-info::before {content: '\e805';}
.status-error::before {content: '\e80b';}
.status-success::before {content: '\e802';}
.status-alert::before {content: '\e807';}

/* @see partials/menus */
.site-menu
{
	/* background-color: #f6f5f4; */
	background-color: #2f2e2d;
	font-size: .9em;
	padding: .25rem .5rem;
	position: relative;
	width: 100%;

		&::after
		{
		clear: both;
		content: '';
		display: table;
	}

	#site-search
	{
		position: absolute;
		top: .19rem;
		right: .23rem;
	}
}

.menu-register
{
	display: block;
	margin: 0;
	padding: 0;

	& > li
	{
		float: left;
		list-style: none;
		text-align: left;
	}
}
.menu-dwell
{
	padding: 0 5px 0 0;
	position: relative;

	&:focus,
	&:active,
	&:target, 
	&.active
	{
		/* border-radius: 5px 5px 0 0; */

		.menu-quoin
		{
			background-color: rgb(239 238 237/.96);
			/* border-radius: 5px 5px 0 0; */
			color: #353331;
		}
		.menu-block
		{
			display: block;
		}
	}
	.menu-block
	{
		display: none;
	}

	li
	{
		float: none;
		line-height: 1.5;
		list-style: none;
		margin: 0;
	}
	a 
	{
		border: none;
		/* color: #353331; */
		color: #afaead;
		float: none;
		&:hover
		{
			color: #353331;
		}
	}
}
.menu-quoin
{
	color: #afaead;
	display: block;
	padding: .25rem .5rem;
	&::after
	{
		color: #939291;
		content: " \25BE";
		speak: none;
	}
	&.alt::after
	{
		content: "";
	}
	&:hover
	{
		background-color: rgb(239 238 237/.96);
		/* border-radius: 5px; */
		color: #353331;
	}
}
.menu-block
{
	background-color: rgb(239 238 237/.96);
	/* border-radius: 0 5px 5px 5px; */
	box-shadow: 5px 5px 10px -5px rgb(53 51 49/.2), 1px 5px 10px -5px rgb(53 51 49/.2), -1px 5px 10px -5px rgb(53 51 49/.2);
	font-size: .9em;
	margin: 0;
	padding: 6px 0;
	position: absolute;
	top: 100%;
	left: 0;
	white-space: nowrap;
	z-index: 13;
	a 
	{
		/* border-radius: 0; */
		color: #353331;
		display: block;
		padding: .25rem 1rem .25rem .5rem;
		&:hover
		{
			background-color: #2171a1;
			color: #fff;
		}
	}
	.separator,.rule
	{
		border-top: 1px solid #dbdcdd;
		margin: .25rem 0 0 0;
		padding: .25rem 0 0 0;
	}
}

@media only screen and (min-width: 960px)
{
	.site-menu
	{
		display: flex;
		justify-content: center;
		margin: 0;
		font-size: 1em;
		margin: 0;
		padding: 0;
		/* position: static; */
		/* position: absolute; */
		/* top: 2.8rem; */
		/* right: 5%; */
		/* left: auto; */
		text-align: left;
		width: auto;
		z-index: 1;

		#site-search
		{
			position: static;
		}
	}
	.menu-quoin
	{
		padding: .5rem 1rem;
	}
	.menu-block
	{
		a
		{
			padding: .5rem 2rem .5rem 1rem;
		}
		.separator,.rule
		{
			margin: .5rem 0 0 0;
			padding: .5rem 0 0 0;
		}
	}
}

/* @see partials/search-site */
.site-search 
{
	margin: 0;
	position: relative;

	fieldset
	{
		border: none;
		margin: 0;
		padding: 0;
		&:hover
		{
			background-color: #efeeed;
			border-radius: 5px;
		}
	}
	label, input, button
	{
		font-size: 1em;
	}
	button
	{
		display: none;
	}

	label 
	{
		/* color: #353331; */
		color: #afaead;
		border-radius: 5px;
		display: block;
		float: none;
		font-size: 1.3em;
		margin: 0;
		padding: 0;
		position: absolute;
		text-align: center;
		width: 3rem;
		z-index: 1;
		&:hover
		{
			cursor: pointer;
		}
	}

	#site-search-q
	{
		border: 1px solid rgb(255 255 255/0);
		border-radius: 5px;
		display: block;
		margin: 0;
		opacity: 0;
		padding: .25rem 0; 
		transition: all .3s ease;
		width: 3rem;
		-webkit-appearance: none;
		&:focus 
		{
			background-color: #efeeed;
			border-color: rgb(255 255 255/0);
			box-shadow: inset 1px 1px 2px 0 rgb(151 144 126/.2);
			color: #353331;
			opacity: 1;
			outline: none;
			padding: .25rem 1rem .25rem 2.5rem;
			right: 0; 
			width: 14rem;
			& + label
			{
				display: none;
			}
		}
	}
	@media only screen and (min-width: 600px)
	{
		label 
		{
			height: 2.6rem;
			line-height: 1.9;
		}
		#site-search-q
		{
			height: 2.6rem;
			&:focus
			{
				padding: .5rem 1rem .5rem 2.5rem;
			}
		}
	}
}
@media print
{
	.banner
	{
		display: none;
	}
}
