/* HIGH CONTRAST ICON FONT */
	@font-face { font-family: "high-contrast"; src: url("../fonts/high-contrast.eot?eadiov"); src: url("../fonts/high-contrast.eot?eadiov#iefix") format("embedded-opentype"), url("../fonts/high-contrast.ttf?eadiov") format("truetype"), url("../fonts/high-contrast.woff?eadiov") format("woff"), url("../fonts/high-contrast.svg?eadiov#high-contrast") format("svg"); font-weight: normal; font-style: normal; font-display: block; }
	[class^="icon-"], [class*=" icon-"] { font-family: "high-contrast" !important; font-style: normal; font-weight: normal; font-variant: normal; line-height: 1; text-transform: none; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
	.icon-High-Contrast::before { content: "\e900"; font-size: 45px; }

/* ACCESS TOOLS */
	.acc-tools { position: fixed; z-index: 9999; display: inline-block; width: 50px; margin: 0; padding: 12px 0; }
	.access_tools .tool { display: block; clear: both; overflow: hidden; vertical-align: middle; }
	.access_tools a { display: block; width: 50px; height: 40px; font-size: 0; line-height: 40px; text-align: center; text-decoration: none; vertical-align: middle; opacity: 0.8; transition: opacity 0.25s ease-out, width 0.25s ease-out; }
	.access_tools a:hover, .access_tools a:focus, .access_tools a:focus-visible { opacity: 1; }
	.access_tools .tool:hover a, .access_tools .tool:focus-within a { width: 60px; }
	.access_tools a:focus-visible, #access_tools input:focus-visible { outline: 3px solid #22b6ff; outline-offset: 2px; box-shadow: 0 0 0 1px #2234ff; }
	.access_tools a.textsize span { text-transform: uppercase; }
	.access_tools a.textsize span.small { font-size: 14px; }
	.access_tools a.textsize span.medium { font-size: 17px; }
	.access_tools a.textsize span.big { font-size: 20px; }

/* TOOL POSITIONS / STATES */
	#access_tools .tool { transition: all 0.35s ease-out; }
	#access_tools .tool.search-tool { position: relative; top: 0; width: 255px; }
	#access_tools .tool.font { top: 55px; }
	#access_tools .tool.contrast { top: 110px; }
	#access_tools .tool.share { top: 165px; width: 230px; padding: 0 10px; line-height: 31px; cursor: pointer; }
	#access_tools .tool.share a { background: none; }
	#access_tools .tool.search-tool.open { right: 0; left: auto; }

/* SEARCH TOOL */
	#access_tools fieldset { margin: 0; padding: 0; border: 0; }
	#access_tools #search label { display: none; }
	#access_tools #search .search-icon { width: 50px; }
	#access_tools #search .search-icon i { display: block; width: 50px; height: 40px; font-size: 22px; line-height: 40px; text-align: center; text-decoration: none; vertical-align: middle; opacity: 0.8; }
	#access_tools #search .search-icon:hover i, #access_tools #search .search-icon:focus i, #access_tools #search .search-icon:focus-visible i { opacity: 1; }
	#access_tools #search input[type="text"] { width: 195px; height: auto; margin: 5px; padding: 10px 10px 8px; overflow: hidden; border: 0; }
	#access_tools #search input[type="submit"] { position: absolute; top: 0; width: 50px; height: 40px; opacity: 0; }
	#access_tools #search button[type="submit"] { position: absolute; top: 0; width: 50px; height: 40px; opacity: 0; background: none; border: 0; padding: 0; margin: 0; }
	#access_tools .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* RESPONSIVE / RELATIVE MODE */
	.acc-tools.relative { position: relative; top: 0; left: auto; right: auto; width: 100%; padding: 0; background: #000; }
	.relative .access_tools { display: flex; flex-direction: row; justify-content: center; width: 100%; }
	.relative .access_tools .tool { left: 0; float: left; }
	.relative .access_tools .tool:hover a, .relative .access_tools .tool:focus-within a { width: 40px; padding-left: 0; }
	.relative #access_tools .tool.contrast:hover, .relative #access_tools .tool.font:hover, .relative #access_tools .tool.contrast:focus-within, .relative #access_tools .tool.font:focus-within { right: auto; left: 0; margin: 0 0 -20px; padding-top: 20px; }
	.relative #access_tools #search .search-icon { float: right; }
	.relative #access_tools #search input[type="text"] { float: left; width: 225px; margin: 5px; padding: 10px 10px 8px; }
	.relative #access_tools #search input[type="submit"] { right: 0; }

/* ADMIN BAR */
	.admin-bar .acc-tools.relative { top: 0; }

/* HIGH CONTRAST MODE */
	.high_contrast .access_tools a, .high_contrast #access_tools .tool.search-tool { background: #000 !important; color: #fff !important; opacity: 1 !important; }