
	/*
	*  Theme Name: 	WDAV 2024
	*  Text Domain: 	wdav2024
	*  Author: 			Zero Defect Design
	*  Author URI: 	https://zerodefectdesign.com
	*/
	
	/* fonts */
	
	@font-face { font-display: swap; font-family: 'Spartan'; font-style: normal; font-weight: 300; src: url('fonts/ls300.woff2') format('woff2'); }
	@font-face { font-display: swap; font-family: 'Spartan'; font-style: normal; font-weight: 400; src: url('fonts/ls400.woff2') format('woff2'); }
	@font-face { font-display: swap; font-family: 'Spartan'; font-style: normal; font-weight: 500; src: url('fonts/ls500.woff2') format('woff2'); }
	@font-face { font-display: swap; font-family: 'Spartan'; font-style: normal; font-weight: 600; src: url('fonts/ls600.woff2') format('woff2'); }

	@font-face { font-display: swap; font-family: 'Fanwood'; font-style: normal; font-weight: 400; src: url('fonts/fw.woff') format('woff'); }
	@font-face { font-display: swap; font-family: 'Fanwood'; font-style: italic; font-weight: 400; src: url('fonts/fwi.woff') format('woff'); }
	@font-face { font-display: swap; font-family: 'Fanwood'; font-style: italic; font-weight: 500; src: url('fonts/fwti.woff') format('woff'); }

   /* resets */

   *, *::before, *::after { box-sizing: border-box; }
	* { margin: 0; background-position: center center; background-repeat: no-repeat; background-size: cover; }
	*:focus { outline: none; } 
   html, body { height: 100%; }
   body { line-height: 1.5; }   
   table { border-collapse: collapse; }
	img, picture, video, canvas, svg { display: block; max-width: 100%; }
   sup, sub { vertical-align: baseline; position: relative; top: -0.4em; }
   sub { top: 0.4em; }
	p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; margin-bottom: 22px; }
   input, button, textarea, select { font: inherit; }
	textarea { white-space: revert; }
	dd { margin-left: 2em; }
	
	/* structure */
	
	body { text-align: center; color: #000000; background-color: #FFFFFF; padding-top: 120px; }
	@media screen and (max-width: 700px) { body { padding-top: 65px; } }
	body > footer { position: sticky; top: 100vh; }
	main { padding-top: 50px; padding-bottom: 50px; text-align: left; }
	.frame { text-align: left; padding-left: 50px; padding-right: 50px; max-width: 1400px; margin: 0 auto; position: relative; }
	@media screen and (max-width: 1200px) { .frame { padding-left: 30px; padding-right: 30px; } }
	.frame.primary { padding-top: 65px; padding-bottom: 50px; }
	.leftside { display: flex; gap: 20px; }
	.pushmeta { display: none; }
	.has-controls { display: flex; gap: 30px; justify-content: space-between; }
	.has-controls div:last-child { text-align: right; }
	.controls { float: right; }
	.moar { display: none; }
	@media screen and (max-width: 900px)
	{
		.has-controls { display: block; }
		.has-controls .controls, .has-controls div:last-child { text-align: left; float: none; }
		.controls { float: none; margin-bottom: 30px; }
	}
		
	.zone { padding: 50px 0; background-position: center center; background-repeat: no-repeat; background-size: cover; }
	.panels { display: flex; gap: 50px; }
	.panels.compact, .compact .panels { gap: 35px; }
	@media screen and (max-width: 900px)
	{
		.panels.compact, .compact .panels { flex-direction: column; }
	}
	.single-program .panel-left a { display: block; }
	.shade { background-color: rgba(198,216,255,0.25); }
	.padded { padding: 35px; }
	.compact p, .compact h3 { margin-bottom: 10px; }	
	div.striped > div:nth-child(odd), table.striped tbody tr:nth-child(odd) { background-color: rgba(198,216,255,0.25); }
	@media screen and (max-width: 1000px)
	{
		body.type-page .frame.panels, body.type-program .frame.panels, body.type-episode .frame.panels { flex-wrap: wrap; gap: 30px; }
		body.type-page .panel-center, body.type-page .panel-right,
			body.type-program .panel-center, body.type-program .panel-right,
			body.type-episode .panel-center, body.type-episode .panel-right { width: 100%; }
		body.type-program .panel-left .thumb, body.type-episode .panel-left .thumb { width: 100px; height: 100px; }
	}
	
	/* type */
	
	body { font: 400 20px/1.4 'Spartan', sans-serif; }
	.primary { font-size: 22px; font-weight: 300; }
	body i, body em { font-family: 'Fanwood', serif; font-size: 102%; font-weight: 500; }
	b, strong { font-weight: 600; }
	b.semi { font-weight: 500; }
	h2 { font: 400 44px/1.1 'Fanwood', serif; letter-spacing: -0.01em; }
	h3 { font: 400 34px/1.1 'Fanwood', serif; letter-spacing: -0.01em; }
	h4 { font: 500 22px/1.3 'Spartan', sans-serif; position: relative; }
	h4 strong { font-weight: 500; }
	h5 { font: 600 16px/1 'Spartan', sans-serif; text-transform: uppercase; letter-spacing: 1px;	}
	.intro {	font: 400 28px/1.2 'Fanwood', serif; color: #777777; margin-bottom: 30px; }
	h2, h3, h5 { font-feature-settings: "lnum"; }
	h2 .subtitle { font-size: 33px; }
	main .date { opacity: 0.3; }
	.light { opacity: 0.9; }
	.lighter { opacity: 0.6; }
	.greyed { opacity: 0.4; }
	.reversed { color: #FFFFFF; }
	.warm { color: #B21212 !important; }
	.dot { display: inline-block; margin: 0 4px; opacity: 0.8; }
	.error { color: #B21212; font-weight: 600; }
	
	br.cb { clear: both; }
	.divided { padding-top: 30px; border-top: 2px dotted #CCCCCC; position: relative;  }
	td h3.divided { padding-top: 20px; margin-top: 20px; }
	@media screen and (max-width: 700px)
	{
		body { font-size: 18px; }
		h2 { font-size: 34px; }
		h3 { font-size: 26px; }
		h4 { font-size: 18px; }
	}

	/* links and controls */
	
	a { text-decoration: none; color: #1a659e; }
	a.ul, .ul a { text-decoration: underline; }
	.breadcrumb a, .reversed a { color: #71a9f7; }
	a:hover, .breadcrumb a:hover, .reversed a:hover { color: #f29f33; }
	a.tel 
	{ 
		display: inline-block; padding-left: 24px;
		background: transparent url('images/icon-phone2.svg') left center no-repeat; 
		background-size: 18px auto;
	}
	a .light, a.light { opacity: 0.6; }
	a .light:hover, a.light:hover { opacity: 1; }
	.btn, a.tag, span.tag, .wp-block-buttons .wp-block-button__link, button
	{ 
		background-color: #004e89; color: #FFFFFF !important; font-size: 20px; font-weight: 500; line-height: 1; border: 0;
		padding: 10px 18px 6px 18px; cursor: pointer; display: inline-block; white-space: nowrap; border-radius: 0;
	}

	.wp-block-buttons { margin-bottom: 1rem; }
	.btn.inactive { opacity: 0.6; background-color: #71A9F7; }
	a.tag, span.tag { background-color: #2289d8; font-size: 16px; padding: 3px 5px 2px 5px; }
	.btn:hover, a.tag:hover, .wp-block-button__link:hover, button:hover { background-color: #f29f33; color: #FFFFFF; opacity: 1; }
	.btn-icon { padding-left: 40px; background-position: 12px center; background-repeat: no-repeat; background-size: 20px auto; }
	.btn-schedule { background-image: url('images/icon-programs.svg'); }
	.btn-calendar { background-image: url('images/icon-calendar.svg'); }
	.btn-read { background-image: url('images/icon-glasses.svg'); }
	.btn-list { background-image: url('images/icon-list.svg'); }
	.btn-grid { background-image: url('images/icon-grid.svg'); }
	.btn-play { background-image: url('images/icon-play2.svg'); }
	.btn-action { background-image: url('images/icon-right-arrow.svg'); background-size: 25px auto; background-position: 10px center; }
	.btn-small { padding: 5px 8px 2px 8px; }
	.btn-small.btn-icon { padding-left: 30px; background-position: 6px center; }
	.wp-block-buttons .wp-block-button__link
	{ 
		padding-left: 40px; background-repeat: no-repeat; 
		background-image: url('images/icon-right-arrow.svg'); background-size: 25px auto; background-position: 10px center;
	}
	.category-filter { margin-bottom: 30px; }
	.category-filter .btn { padding: 6px 14px 2px 14px; }
	a.anchor { position: relative; top: -120px; }
	a.totop { position: absolute; right: 0; bottom: 5px; }
	a.totop svg { width: 32px; height: auto; }
	.btn .light, a.btn .light { font-weight: 300; opacity: 0.75; }
	@media screen and (max-width: 650px) 
	{
		.btn, .wp-block-buttons .wp-block-button__link, button { font-size: 18px; padding: 8px 16px 4px 16px; }
		.btn-icon { padding-left: 40px; }
	}
	
	fieldset { display: block; margin: 0 0 20px 0; padding: 0; border: 0; }
	fieldset label { display: block; font-weight: 500; margin: 0 0 2px 0; }
	fieldset label .error { display: inline; color: #B21212; font-weight: 500; }
	input[type=text], input[type=date], input[type=password], input[type=email], input[type=tel], select, textarea
	{
		border: 0; padding: 6px 6px 4px 6px; color: #000000; background-color: #EAEAEA; font-size: 20px; line-height: 1;
	}
	input[type=date], select { cursor: pointer; }
	.fieldsets { display: flex; gap: 30px; flex-wrap: wrap; }
	.fieldsets fieldset { width: calc(50% - 15px); }
	.fieldsets fieldset.half { width: calc(25% - 22.5px); }
	fieldset input[type=text], fieldset select, fieldset textarea, .wpforms-field-container select, 
		.wpforms-field-container input { width: 100%; padding: 10px 10px 8px 10px; }
	fieldset textarea { height: 100px; }
	input#street, input#notes { position: absolute; left: -9999px; height: 0; width: 0; overflow: hidden; }
	@media screen and (max-width: 1000px) { .fieldsets fieldset.half { width: calc(50% - 15px); } }
	@media screen and (max-width: 700px) { .fieldsets fieldset, .fieldsets fieldset.half { width: 100%; } }
	
	/* lists */
	
	main .frame ul { margin-bottom: 1rem; }
	ul.cols { columns: 3; gap: 30px; }
	@media screen and (max-width: 1400px) { ul.cols { columns: 2; } }
	@media screen and (max-width: 900px) { ul.cols { columns: 1; } }
	ul.cols li { break-inside: avoid; clear: left; }
	ul.cols-episodes .thumb { width: 50px; height: 50px; float: left; margin: 0 20px 5px 0; }
	ul.cols-episodes { list-style-type: none; margin: 0 0 20px 0; padding: 0; }
	ul.cols-episodes li { padding: 0; margin: 0 0 10px 0; }
	ul.items { list-style-type: none; margin: 0 0 1rem 0; padding: 0; }
	ul.items li { line-height: 1.2; margin: 0 0 15px 0; }
	ul.archive-years li { display: inline-block; margin: 0 10px 10px 0; }
	ul.loose li { margin-bottom: 5px; }
	
	/* header */
	
	header 
	{	
		position: fixed; top: 0; left: 0; right: 0; z-index: 200; 
		background: #1f1448 url('images/bg.jpg') center top no-repeat; background-size: cover;
	}
	header .frame { display: flex; align-items: center; justify-content: space-between; }
	
	/* nav bar */
	
	nav { flex-grow: 1; display: flex; align-items: center; justify-content: flex-end; gap: 30px; }
	nav svg { display: inline-block; width: auto; height: 26px; position: relative; top: 2px; }
	nav a { font-size: 22px; line-height: 1; font-weight: 400; color: #FFFFFF; }
	#menu #menu-item-7778 a, nav .mobiledonate
	{ 
		background: linear-gradient(to bottom, #51d568, #2D932B); padding: 8px 14px 4px 14px; border-radius: 20px; 
		text-shadow: 2px 2px 2px rgba(0,0,0,0.2); color: #FFFFFF;
	}
	nav .mobiledonate { position: relative; top: -3px; }
	#menu #menu-item-7778 a:hover { color: #FFFFFF; background: linear-gradient(to bottom, #77FA8E, #3EAC51); }
	nav { height: 65px; }
	.wdav { padding: 20px 0 20px 0; background-color: transparent; transition: all 0.5s; opacity: 1; }
	.wdav img { height: 80px; width: auto; transition: all 0.5s; opacity: 1; }
	@media screen and (min-width: 1001px) { nav .mobiledonate { display: none; } }
	@media screen and (min-width: 701px) 
	{
		body.scrolled .wdav { padding: 10px 0; }
		body.scrolled .wdav img { height: 50px; }	
	}
	@media screen and (max-width: 700px) 
	{ 
		.wdav { padding: 10px 0; } 
		.wdav img { height: 32px; }
		nav { gap: 15px; }
		nav a { font-size: 18px; }
		nav svg { height: 22px; }
		nav .mobiledonate, nav .mobiledonate:active, nav .mobiledonate:hover
		{ 
			background: linear-gradient(to bottom, #51d568, #2D932B); padding: 4px 10px 2px 10px; border-radius: 20px; 
			text-shadow: 2px 2px 2px rgba(0,0,0,0.2); position: relative; top: -2px; color: #FFFFFF;
		}
	}
	#menu 
	{ 
		list-style-type: none; margin: 0; padding: 0; 
		flex-grow: 0; display: flex; align-items: center; justify-content: flex-end; gap: 30px;
	}
	@media screen and (max-width: 1000px) { #menu { display: none; } }
	
	/* flyout menu */
	
	#flyout
	{ 
		position: fixed; top: 0; right: -270px; bottom: 0; width: 260px; background-color: #B21212; padding: 30px; z-index: 400; 
		text-align: left; transition: all 0.1s ease-out;
	}
	#flyout.active { right: 0px; }
	#flyout ul { list-style-type: none; margin: 0 0 40px 0; padding: 0; }
	#flyout ul li { margin: 10px 0; padding: 0; }
	#flyout .close 
	{ 
		display: block; cursor: pointer; opacity: 0.75; width: 32px; height: 32px;
		background: transparent url('images/icon-close.svg') center center no-repeat; background-size: contain;
	}
	#flyout .close:hover { opacity: 1; }
	#flyout a { color: #FFFFFF; line-height: 1; }
	#flyout a:hover { color: #FFCC00; }
	#flyout .big a { font-size: 150%; }
	@media screen and (max-width: 700px) 
	{ 
		#flyout { right: -101vw; width: 100vw; }
		#flyout.active { right: 0px; }
	}

	/* search */
	
	#searchcontrol { display: none; }
	
	/* images */
	
	img.hero { width: 100%; height: auto; margin: 0 0 30px 0; }
	img.alignright { float: right; margin: 0 0 30px 50px; width: 33.333%; height: auto; }
	.on-air { width: 22px; height: auto; display: inline-block; margin-bottom: -2px; animation: pulse 2s infinite; }
	@keyframes pulse 
	{
		0%, 100% { opacity: 1; }
		50% { opacity: 0; }
	}
	body.home .on-air { width: 22px; margin-bottom: -2px; position: relative; }
	
	/* footer */
	
	footer 
	{ 
		padding: 50px 0 150px 0; color: rgba(255,255,255,0.7); 
		background: #1f1448 url('images/bg.jpg') center center no-repeat;
		background-size: cover;
	}
	footer b, footer strong { color: #FFFFFF; }
	footer a { color: #a9c3fF; font-weight: 500; }
	footer a:hover { color: #f29f33; }
	footer .socials { float: right; margin: 0 0 30px 30px; text-align: right; white-space: nowrap; }
	footer .socials a { display: inline-block; margin-left: 10px; }
	footer .socials a .label 
	{ 
		display: inline-block; margin-left: 10px; line-height: 1; 
		position: relative; top: -8px;
	}
	@media screen and (max-width: 1000px)
	{ 
		footer .socials { float: none; margin-left: 0; text-align: left; }
		footer .socials a { margin-left: 0; margin-right: 10px; }
		footer .socials a.mailing-lists .label { display: none; }
	}
	@media screen and (max-width: 700px)
	{	
		footer { padding-bottom: 230px; }
	}
	
	/* audio player */
	
	#player 
	{ 
		position: fixed; bottom: 0; left: 0; right: 0; color: #FFFFFF; z-index: 200; display: none;
		background-color: #004e89; 
	}
	#player .frame { display: flex; line-height: 1.1; }
	#player h6 
	{ 
		font: 600 15px/1 'Spartan', sans-serif; margin: 0 0 6px 0; text-transform: uppercase; color: #FFCC00; 
		white-space: nowrap;
	}
	#player .play
	{ 
		width: 72px; min-height: 36px; background: #b21212 url('images/icon-play2.svg') center center no-repeat; 
		background-size: 45px auto; cursor: pointer; flex-shrink: 0;
	}
	#player .play.pause { background-image: url('images/icon-pause.svg'); }
	#player a { color: #c6d8ff; }	
	#player a:hover { color: #f29f33; }
	#player .section { padding: 14px 20px 10px 20px; }
	#player .section:nth-child(even) { background-color: #1e75b8; }
	#player .section:nth-child(odd) { background-color: #1a659e; }
	#player select 
	{ 
		border: 0; outline: none;
		cursor: pointer; background-color: #004e89; color: #FFFFFF;
		font: 400 17px/1 'Spartan', sans-serif; padding: 5px 3px 3px 5px; 
	}
	#player select option { padding-top: 8px; }
	#player .section1 h6 { margin-bottom: 3px; }
	@media screen and (max-width: 900px) { #player .frame { padding: 0; } }
	@media screen and (max-width: 650px)
	{
		#player .frame { flex-wrap: wrap; }
		#player .section { flex-grow: 1; }
		#player .section h6 { display: inline; margin: 0 5px 0 0; }
		#player .section .description { display: none; }
		#player .section form { display: inline; }
	}
	
	/* audio progress control */
	
	input[type="range"] 
	{
		-webkit-appearance: none; width: 100%; height: 2px; background: rgba(255,255,255,0.3); border-radius: 0px;
		background-image: linear-gradient(#FFCC00, #FFCC00); background-size: 1% 100%; background-repeat: no-repeat;
		margin-bottom: 10px;
	}
	input[type="range"]::-webkit-slider-runnable-track, input[type="range"]::moz-range-track  { -webkit-appearance: none; box-shadow: none; border: none; background: transparent; }
	input[type="range"]::-moz-range-thumb 
	{
		-webkit-appearance: none; height: 15px; width: 15px; border-radius: 50%;
		background-image: radial-gradient(rgba(0,0,0,1) 0%, rgba(0,0,0,1) 20%, rgba(255,204,0,1) 21%);
		background-size: 100% 100%; cursor: ew-resize; 
	}
	input[type="range"]::-webkit-slider-thumb
	{
		-webkit-appearance: none; height: 15px; width: 15px; border-radius: 50%;
		background-image: radial-gradient(rgba(0,0,0,1) 0%, rgba(0,0,0,1) 20%, rgba(255,204,0,1) 21%);
		background-size: 100% 100%; cursor: ew-resize; 
	}
	#progress { display: block; padding-top: 5px; }
	#timing
	{ 
		height: 20px; position: relative; width: 100%; display: flex; align-items: space-between; 
		font: 300 16px/1 'Spartan', sans-serif; opacity: 0.7; margin-top: 6px;
	}
	#timing .el { text-align: left; width: 50%; }
	#timing .re { text-align: right; width: 50%; }
	
	/* images */
	
	.icon 
	{
		display: inline-block; width: 32px; height: 32px; border-radius: 16px;
		background-position: center center; background-repeat: no-repeat;
		background-size: 65% auto;
	}
	.icon-facebook { background-image: url('images/icon-facebook.svg'); background-color: #1a659e; }
	.icon-instagram { background-image: url('images/icon-instagram.svg'); background-color: #6b5ca5; }
	.icon-x { background-image: url('images/icon-x.svg'); background-color: #000000; background-size: 45% auto; }
	.icon-youtube { background-image: url('images/icon-youtube.svg'); background-color: #FF0000; background-size: 70% auto; }
	.icon-tiktok { background-image: url('images/icon-tiktok.svg'); background-color: #000000; }
	.icon-mail { background-image: url('images/icon-mail.svg'); background-color: #7ebc89; }
	footer .socials a.icon:hover, footer .socials a:hover .icon { background-color: #f29f33; }
	.thumb 
	{ 
		display: block; width: 200px; height: 200px; margin: 0 30px 30px 0; 
		background-position: center center; background-repeat: no-repeat; background-size: cover;
	}
	.thumb.alignright { float: right; margin: 0 0 30px 30px; background-size: contain; }
	.compact .thumb { margin: 0; }
	.icon-inline { display: inline-block; width: auto; height: 1em; position: relative; top: .2rem; }
	@media screen and (max-width: 700px) { .thumb.alignright { float: none; margin: 0 0 30px 0; } }
		

	/* program schedule grid */
	
	.program-schedule 
	{ 
		display: grid; 
		column-gap: 5px; row-gap: 5px;
		grid-template-rows: [days] 
			auto [h0000] auto [h0015] auto [h0030] auto [h0045] auto [h0100] auto [h0115] auto [h0130] auto [h0145] 
			auto [h0200] auto [h0215] auto [h0230] auto [h0245] auto [h0300] auto [h0315] auto [h0330] auto [h0345] 
			auto [h0400] auto [h0415] auto [h0430] auto [h0445] auto [h0500] auto [h0515] auto [h0530] auto [h0545] 
			auto [h0600] auto [h0615] auto [h0630] auto [h0645] auto [h0700] auto [h0715] auto [h0730] auto [h0745] 
			auto [h0800] auto [h0815] auto [h0830] auto [h0845] auto [h0900] auto [h0915] auto [h0930] auto [h0945] 
			auto [h1000] auto [h1015] auto [h1030] auto [h1045] auto [h1100] auto [h1115] auto [h1130] auto [h1145] 
			auto [h1200] auto [h1215] auto [h1230] auto [h1245] auto [h1300] auto [h1315] auto [h1330] auto [h1345] 
			auto [h1400] auto [h1415] auto [h1430] auto [h1445] auto [h1500] auto [h1515] auto [h1530] auto [h1545] 
			auto [h1600] auto [h1615] auto [h1630] auto [h1645] auto [h1700] auto [h1715] auto [h1730] auto [h1745] 
			auto [h1800] auto [h1815] auto [h1830] auto [h1845] auto [h1900] auto [h1915] auto [h1930] auto [h1945] 
			auto [h2000] auto [h2015] auto [h2030] auto [h2045] auto [h2100] auto [h2115] auto [h2130] auto [h2145] 
			auto [h2200] auto [h2215] auto [h2230] auto [h2245] auto [h2300] auto [h2315] auto [h2330] auto [h2345] 
			auto [h2200] auto [h2215] auto [h2230] auto [h2245] auto [h2300] auto [h2315] auto [h2330] auto [h2345] 
			auto [h2400];
		grid-template-columns: [hours] auto [day0] 1fr [day1] 1fr [day2] 1fr [day3] 1fr [day4] 1fr [day5] 1fr [day6] 1fr;
	}
	.program-schedule a 
	{ 
		display: flex; align-items: center; justify-content: center; background-color: #71A9F7; 
		background: linear-gradient(to bottom, #89baff, #71A9F7); color: #FFFFFF;
	}
	.program-schedule a.current { background: linear-gradient(to bottom, #ffcc00, #f29f33); }
	.program-schedule a:hover, .program-schedule a.current:hover { background: #c6d8ff; color: #000000; }
	.program-schedule .label { display: flex; align-items: center; justify-content: center; background-color: #DEDEDE; }
	.program-schedule .weekday span { white-space: nowrap; }
	.program-schedule .weekday span div.nomobile { display: inline; }
	.program-schedule span { display: block; padding: 12px 10px 10px 10px; font-weight: 500; text-align: center; line-height: 1.2;  }
	.program-schedule span span { padding-bottom: 2px; }
	.program-schedule span.hour, .program-schedule.hour span { font-weight: 400; }
	.program-schedule .on-now { color: #000000; display: block; text-align: center; }
	@media screen and (max-width: 1100px) 
	{ 
		.program-schedule { font-size: 16px; } 
		.program-schedule span { padding-left: 3px; padding-right: 3px; }
	}
	@media screen and (max-width: 850px) 
	{ 
		.program-schedule a span { display: none; }
	}
	
	/* features */
	
	.features { display: flex; flex-wrap: wrap; gap: 10px; }
	.feature 
	{ 
		position: relative; background-position: center center; background-repeat: no-repeat; 
		background-size: cover; overflow: hidden; width: calc(50% - 5px); height: 0; padding-top: 33.33%;
		background-color: #6b5ca5;
	}
	.event.feature { height: 0; padding-top: 33%; }
	@media screen and (max-width: 1000px) 
	{	
		.event.feature { width: 100%; padding-top: 100%; } 
		.event.feature h4 { font-size: 20px; line-height: 1.2; }
		.event.feature .info { font-size: 16px; }	
	}
	.feature .frame 
	{ 
		position: absolute; bottom: 0; left: 0; right: 0; padding: 100px 25px 25px 25px;
		background: linear-gradient(to top, rgba(0,0,0,0.7) 0px, rgba(0,0,0,0.7) 70px, rgba(0,0,0,0) 100%);
	}
	.feature h5 { color: #c6d8ff; padding-bottom: 8px; border-bottom: 2px dotted rgba(255,255,255,0.75); margin-bottom: 18px; display: inline-block; }
	.feature h4 { color: #FFFFFF; font-size: 28px; line-height: 1; margin-bottom: 10px; }
	.feature h3 { color: #FFFFFF; line-height: 1; text-shadow: 0 0 18px rgba(0,0,0,0.9); margin-bottom: 10px; }
	.feature .info { font-weight: 400; color: #FFCC00; }
	.feature5 { width: 66.667%; }
	.feature6 { width: 33.333%; }
	body.home .feature:nth-child(n+3) { width: calc(33.333% - 6.667px);  }	
	.feature .categories { position: absolute; top: 0; right: 0; text-align: right; display: inline-block; }
	.feature .categories .ctag 
	{ 
		font-weight: 600; text-transform: uppercase; letter-spacing: 1px; font-size: 16px; 
		display: inline-block; color: #FFFFFF; background-color: #b21212; padding: 4px 8px 1px 8px; margin: 0 0 0 5px; 
	} 
	.event-item .ctag 
	{ 
		font-weight: 400; text-transform: uppercase; letter-spacing: 1px; font-size: 14px; line-height: 14px;
		display: inline-block; color: #FFFFFF; background-color: #71a9f7; padding: 4px 4px 1px 4px; margin: 0 3px 0 0;
		position: relative; top: -1px;
	}
	@media screen and (max-width: 1000px) 
	{
		body.home .feature h4 { font-size: 22px; margin-bottom: 5px; }
		body.home .feature .info { font-size: 16px; }
		.stories .feature, body.home .feature:nth-child(n+3) { width: 100%; }
		body.home .controls { margin-bottom: 20px; }
	}
	
	/* event lists */
	
	.event-item { display: flex; gap: 30px; margin-bottom: 30px; }
	.event-day { width: 50px; text-align: center; flex-shrink: 0; }
	.event-day-no { font: 500 32px/1 'Fanwood', serif; font-feature-settings: "lnum"; }
	.event-day-name { text-transform: uppercase; font-size: 16px; font-weight: 400; opacity: 0.7; letter-spacing: 1px; }
	.event-item .event-info { align-self: center; }
	.event-item .event-info .info { opacity: 0.7; }
	.item-title { font-weight: 600; display: block; font-size: 22px; }
	
	/* event calendar */
	
	#yrmo { font: inherit; line-height: 1; padding: 10px 5px 0px 5px; } 
	#calendar-month-select { display: inline-block; }
	#calendar-month-select span 
	{ 
		font: inherit; display: block; padding: 5px 55px 0px 10px; cursor: pointer; 
		background: #EAEAEA url('images/icon-down.svg') right center no-repeat; background-size: 21px auto;
		border-right: 10px solid #EAEAEA;
	}
	#calendar-month-select ul { display: none; position: absolute; z-index: 220; margin: 0px; padding: 0px; list-style-type: none; }
	#calendar-month-select:hover ul { display: block; text-align: left; background-color: #EAEAEA; }
	#calendar-month-select ul li { margin: 0; padding: 0; }
	#calendar-month-select ul li a { display: block; font-size: inherit; color: #000000; background-color: #EAEAEA; padding: 5px 50px 5px 10px; }
	#calendar-month-select ul li a:hover, #calendar-month-select span:hover { background-color: #CCCCCC; border-color: #CCCCCC; }
			
	.calendar-month { display: flex; gap: 30px; flex-wrap: wrap; margin: 50px 0; }
	.calendar-month > div { width: calc(14.285% - 26px); padding: 15px 0; border-top: 1px solid transparent; }
	.calendar-month .th { font-weight: 600; padding: 0; }
	.calendar-month .blank, .calendar-month .day { border-color: #999999; min-height: 100px; }
	.calendar-month h4 { color: #000000; font-weight: 300; margin: 0 0 15px 0; }
	.calendar-month .item { margin: 0 0 20px 0; line-height: 1.2; font-size: 18px; }
	.calendar-month .item-title { font-size: 18px; line-height: 1.2; font-weight: 500; display: block; margin: 0 0 5px 0; }
	.calendar-month .item-info { display: block; margin-top: 3px; font-size: 16px; opacity: 0.5; }
	.calendar-month .day.today { border-top: 5px solid #b21212; padding-top: 11px; }
	.calendar-month .day.today h4 { color: #b21212; font-weight: 600; }
	.calendar-month .item-audience { display: block; margin-top: 5px; }
	.calendar-month .audience { font-size: 16px; padding: 3px 8px; margin: 0 2px 4px 0; }
	.calendar-month .img
	{ 
		width: 100%; height: 0; padding-top: 66.667%; position: relative; background-color: #6B5CA5;
		background-position: center center; background-repeat: no-repeat; background-size: cover;
		overflow: hidden; margin: 0 0 10px 0;
	}	
	@media screen and (max-width: 1200px) 
	{ 
		.calendar-month { gap: 10px; } 
		.calendar-month .item-title { font-size: 16px; }
	}
	@media screen and (max-width: 1000px) 
	{ 
		.calendar-month .no-events, .calendar-month .th { display: none; }
		.calendar-month > div { width: 100%; padding-bottom: 0; }
		.calendar-month .item-title { font-size: 18px; }
	}

	/* cells : hosts grid */
	
	.cells-hosts { display: flex; gap: 5px; flex-wrap: wrap; margin: 0 0 50px 0; }
	.cells-hosts .cell { width: calc(25% - 4px); }
	.cells-hosts .cell .img
	{ 
		width: 100%; height: 0; padding-top: 100%; position: relative; background-color: #1A659E;
		background-position: center center; background-repeat: no-repeat; background-size: cover;
		overflow: hidden;
	}
	.cells-hosts .cell .caption
	{
		position: absolute; bottom: 0; left: 0; right: 0; padding: 100px 15px 15px 15px; color: #FFFFFF;
		background: linear-gradient(to top, rgba(0,0,0,1), rgba(0,0,0,0));
	}
	.cells-hosts .cell .caption h4 { margin: 0; }
	.cells-hosts a.cell:hover .caption { background: linear-gradient(to top, rgba(113,169,247,1), rgba(113,169,247,0)); }
	@media screen and (max-width: 1000px) { .cells-hosts .cell { width: calc(33.333% - 4px); } }
	@media screen and (max-width: 700px)
	{ 
		.cells-hosts .cell { width: calc(50% - 3px); }
		.cells-hosts .cell .caption { padding: 40px 10px 10px 10px; }
		.cells-hosts .cell .caption h4 { font-size: 18px; }
	}

	/* cells : podcasts grid */
	
	.cells-podcasts { display: flex; gap: 30px; flex-wrap: wrap; margin: 0 0 30px 0; }
	.cells-podcasts .cell { width: calc(25% - 28px); }
	.cells-podcasts .cell h4 { line-height: 1.2; margin-bottom: 10px; }
	.cells-podcasts .cell .img
	{ 
		width: 100%; height: 0; padding-top: 100%; position: relative; background-color: #B21212;
		background-image: url('images/podcast.jpg');
		background-position: center center; background-repeat: no-repeat; background-size: cover;
		overflow: hidden; margin-bottom: 20px;
	}

	.cells-podcasts .cell .info { display: block; line-height: 1.2; color: #999999; margin: 0 0 5px 0; }
	.cells-podcasts .cell .info a { font-weight: 500; }
	@media screen and (max-width: 1000px) { .cells-podcasts .cell { width: calc(33.333% - 20px); } }
	@media screen and (max-width: 700px) { .cells-podcasts .cell  { width: calc(50% - 15px); } }
	
	/* blog landing page */
	
	.features.blog ul { list-style-type: none; margin: 20px 0 0 0; padding: 0; }
	.features.blog ul li { margin: 9px 0; padding: 0; line-height: 1.2; }
	.features.blog ul li strong { font-weight: 400; }
	.features.blog .feature { color: #FFFFFF; background-color: rgba(198,216,255,0.2); position: relative; align-items: stretch; height: 0; }

	.features.blog .feature .frame 
	{
		position: absolute; bottom: 0; left: 0; right: 0; padding: 90px 30px 30px 30px; 
		color: #FFFFFF; padding-top: 60px; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.9)); 
	}
	.features.blog .feature.archive { background-color: rgba(198,216,255,0.2); padding-top: 0; }
	.features.blog .feature.archive h4 { color: #000000; }
	.features.blog .feature.archive .frame { padding-top: 30px; color: #000000; }
	.features.blog .feature:first-child { width: calc(33.333% - 5px); padding-top: 33%; }
	.features.blog .feature:nth-child(2) { width: calc(66.666% - 5px); padding-top: 33%; }
	.features.blog .feature:nth-child(3), .features.blog .feature:nth-child(4) { width: calc(50% - 5px); padding-top: 25%; }
	.features.blog .feature:nth-child(5), .features.blog .feature:nth-child(6), .features.blog .feature:nth-child(7) { width: calc(33.333% - 7px); padding-top: 25%; }
	.features.blog .feature:nth-child(n+8) { width: calc(50% - 5px); height: auto; }
	.features.blog .feature:nth-child(n+8) .frame { position: relative; background: none; }
	.features.blog .feature:nth-child(n+8) .frame h3 { text-shadow: none; }
	.features.blog .feature:nth-child(9), .features.blog .feature:nth-child(10), .features.blog .feature:nth-child(13),
		.features.blog .feature:nth-child(14), .features.blog .feature:nth-child(17), .features.blog .feature:nth-child(18) ,
		.features.blog .feature:nth-child(21), .features.blog .feature:nth-child(22), .features.blog .feature:nth-child(25),
		.features.blog .feature:nth-child(26) { background-color: rgba(198,216,255,0.7); }
	.features.blog .feature.blog-title { background-color: #B21212; }
	.features.blog .feature.blog-title img { width: 100%; height: auto; margin: 0; }
	.features.blog .feature.blog-title .frame { padding: 50px; background: transparent; }
	
	.features.blog-archive .feature { width: calc(33.333% - 7px); padding-top: 25%; }
	.features.blog-archive .feature:nth-child(1), .features.blog-archive .feature:nth-child(2) { width: calc(50% - 5px); padding-top: 33%; }
	
   @media screen and (max-width: 1100px) 
	{ 
		.feature, .features.blog .feature { height: auto; padding-top: 0; display: flex; align-items: flex-end; }
		.feature .frame, .features.blog .feature .frame { position: relative; width: 100%; }
		.features.blog .feature:nth-child(3), .features.blog .feature:nth-child(4),  
			.features.blog .feature:nth-child(5), .features.blog .feature:nth-child(6) { width: calc(50% - 5px); }
		.features.blog .feature:nth-child(7) { width: 100%; }
		.features.blog .feature:nth-child(n+8) { width: 100%; }
		.features.blog .feature.blog-title .frame { padding: 30px; }
		.features.blog-archive .feature { width: calc(50% - 5px); padding-top: 25%; height: auto; }
		.features.blog-archive .feature h4 { font-size: 20px; margin-bottom: 2px; }
		.features.blog-archive .feature .info { font-size: 16px; }
		.features.blog-archive .feature .info .tag, .features.blog-archive .feature .info br { display: none; }
				
	}
   @media screen and (max-width: 700px) 
	{
		body.archive.category-blog main { padding-top: 50px; }
		.features.blog .feature.blog-title { padding-top: 0; height: auto; width: 100%; }
		.features.blog .feature.blog-title .frame { position: relative; }
		.features.blog .feature.blog-title img { width: 150px; height: auto; }
		.features.blog .feature:nth-child(2), .features.blog .feature:nth-child(3), .features.blog .feature:nth-child(4),  
			.features.blog .feature:nth-child(5), .features.blog .feature:nth-child(6), .features.blog .feature:nth-child(7)
			{ width: 100%; }
		.features.blog-archive .feature, .features.blog-archive .feature:nth-child(1), .features.blog-archive .feature:nth-child(2)
			{ width: 100%; padding-top: 50%; }
	}
	
	/* blog posts */
	
	.blogheader 
	{ 
		display: flex; align-items: center; justify-content: flex-start; width: 100%; margin-bottom: 40px; gap: 15px;
	}
	.blogheader .ofnote { color: #B21212; font: 500 italic 36px/1 'Fanwood', serif; white-space: nowrap; flex-grow: 0; flex-shrink: 0; }
	.blogheader .theblog
	{ 
		font-weight: 600; color: #000000; text-transform: uppercase; font-size: 16px; line-height: 1; 
		padding-top: 3px; white-space: nowrap; flex-grow: 0; flex-shrink: 0;
		
	}
	.blogheader .hr { height: 1px; flex-basis: 100%; flex-shrink: 1; border-bottom: 2px solid rgba(178,18,18,1); }
	.category-blog .panel-right { width: 25%; flex-shrink: 0; }
   @media screen and (max-width: 700px) 
	{
		.blogheader { margin-bottom: 20px; }
		.category-blog .frame.panels { flex-wrap: wrap; }
		.category-blog .panel-center, .category-blog .panel-right { width: 100%; }
	}

	/* tables */
	
	table.standard td, table.standard th { padding: 5px 15px 5px 4px; }
	table.listings td { padding: 4px 20px 4px 0; }
	table.listings td:last-child { padding-right: 0; }
	table.listings a.btn, table.listings .btn { background-color: #71a9f7; }
	table.listings a.btn:hover, table.listings .btn:hover { background-color: #1a659e; }	
	.compact table.listings { margin-top: 20px; }
	.compact p, .compact h3 { margin-bottom: 10px; }
	table.padded td { padding: 35px 35px 35px 0; }
	table.padded td:first-child { padding-left: 35px; }
   @media screen and (max-width: 700px) 
	{
		table.padded td { padding: 15px 15px 15px 0; }
		table.padded td:first-child { padding-left: 15px; }
	}
	
	/* underwriter / sponsor */
	
	.uw {	display: block; text-align: center; margin-bottom: 30px; }
	.uw img { width: 100%; height: auto; margin: 0 auto; }
	.uw-banner img { width: 728px; max-width: 728px; }
	.uw-rectangle img { width: 300px; max-width: 300px; }
	.uw.align-right { float: right; margin: 0; padding: 0 0 30px 30px; }
   @media screen and (max-width: 800px) 
	{
		.uw.align-right { float: none; padding: 0; margin-bottom: 30px; }
		.uw-banner img { max-width: calc(100% - 60px); height: auto; }
	}
	
	/* announcement bar */
	
	.announcement, a.announcement 
	{ 
		display: block; background-color: #1A659E; padding: 12px 0 8px 0; color: #FFFFFF; 
		line-height: 1.2; font-weight: 500;
	}
	.announcement.c1A659E { background-color: #1A659E; }
	.announcement.cB21212 { background-color: #B21212; }
	.announcement.c2D932B { background-color: #2D932B; }
	.announcement.c6B5CA5 { background-color: #6B5CA5; }
	a.announcement:hover { color: #FFFFFF; background-color: #F29F33; }
	
	/* compact features */
	
	.cf { display: flex; align-items: center; gap: 30px; margin: 0 0 40px 0; }
	.cf .img
	{ 
		width: 150px; height: 100px; background-position: center center; background-repeat: no-repeat;
		background-size: cover; flex-grow: 0; flex-shrink: 0; align-self: flex-start;
	}
	.cf .cf_headline { font-size: 22px; line-height: 1.2; font-weight: 600; margin-bottom: 3px; }
	.cf .cf_copy { color: #777777; }
	@media screen and (max-width: 800px) 
	{ 
		.cf { flex-direction: column; align-items: flex-start; gap: 15px; }
		.cf .img { width: 100%; height: 0; padding-top: 66%; }
	}	
	
	/* search */

	#searchcontrol  { display: flex; gap: 15px; width: 100%; margin-bottom: 35px; }
	#searchcontrol #s 
	{ 
		flex-basis: 50%; flex-grow: 1; border: 0; font-size: 22px; 
		line-height: 1; padding: 3px 6px; 
	}
	#searchcontrol .btn { margin: 0; }
	
	.results { display: flex; gap: 35px; flex-wrap: wrap; margin-bottom: 35px; }
	.result { display: flex; gap: 20px; width: calc(33.333% - 24px); line-height: 1.2; }
	.result-host, .result-story, .result-event, .result-podcast { align-items: center; }
	.result-playlist { width: 100%; }
	.result-playlist .mdy { width: 120px; white-space: nowrap; }
	.result-playlist .airtime { width: 80px; white-space: nowrap; }
	a.result { color: #666666; }
	.result .img
	{ 
		width: 25%; flex-grow: 0; flex-shrink: 0; background-position: center center;
		background-repeat: no-repeat; background-size: contain; height: 0; padding-top: 25%;
	}
	.result ul.items { margin: 4px 0; }
	.result ul.items li { margin-bottom: 2px; }
	a.result b { color: #1a659e; }
	a.result:hover b { color: #f29f33; }
	a.result b.semi { color: #000000; }
	@media screen and (max-width: 1000px) { .result { width: calc(50% - 18px); } }	
	@media screen and (max-width: 700px)
	{ 
		.result { width: 100%; } 
		.result .img { width: 125px; flex-grow: 0; flex-shrink: 0;  }
	}	
	
	/* mobile */
	
   @media screen and (min-width: 701px) { .mobileonly, .mobile-only { display: none !important; } }
   @media screen and (max-width: 700px) { .nomobile, #menu.nomobile, .no-mobile { display: none !important; } }
	
	/* wordpress */
	
	body.admin-bar header { top: 32px; }
   @media screen and (max-width: 782px) { body.admin-bar header { top: 46px; } }
	
	/* wpforms */
	
	.wpforms-container .wpforms-field-label, .wp-core-ui div.wpforms-container .wpforms-field-label { font-weight: 600 !important; }
	
   /* print */

   @media print
   {

   }
   