@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Playfair:ital,opsz@0,5..1200;1,5..1200&amp;display=swap');

#more					{float:right; font-size:90%; min-width:200px; text-align:right; margin:20px 4px 0 0; padding-top:10px;}
.left					{float:left;}

/* Company page specific */
#company .outer 			{min-height:100px;}
#company 				{min-height:60px;}
#company h1 				{font-size:44pt; line-height:102% !important; margin:12px 0 16px 0; font-weight:300; letter-spacing:-.03em; padding-right:0; color:#444;}
#company h2 				{font-size:20pt; color:#666 !important; font-weight:300 !important; margin:10px 0 6px 0 !important;}
#company .byline 		{float:left; margin-right:8px; font-size:14pt; line-height:135%;}
#company .dateline 		{float:left; margin-right:8px; font-size:14pt; line-height:135%;}
#company h2.deck 		{font-size:19pt; line-height:120%; margin:-8px 0 6px 0; padding-bottom:0; font-weight:300;}
#company .image-caption {font-size:92%; line-height:120%; color:#666; border-top:1px dotted #CCC; margin:8px 0 10px 0; padding:8px 0 0 0;}
#company .image-credit 	{font-size:10px; line-height:100%; color:#999; margin:6px 0 -8px 0; padding:0 2px 0 0; text-align:right;}
#company .gray			{color:#AAA;}
#company .company-gradient {background: rgb(230,232,235); background: linear-gradient(180deg, rgba(249,249,249,1) 0%, 
						rgba(237,240,244,1) 30%, rgba(255,255,255,1) 100%); margin-top:24px; padding-top:18px;}
#company .company-gradient-2 {border-top:1px solid #DDD; background: rgb(228,234,237);
						background: linear-gradient(180deg, rgba(231,236,238,1) 5%, rgba(228,234,237,0) 75%);}
.comp-line 				{margin:8px 0 -10px 0; border-top:1px dotted #999; width:100%;}
.vid-height				{margin:10px 0 10px 0; min-height:300px;}
.vid-desc				{padding:6px 40px 0 20px; font-size:120%; line-height:140%; font-weight:300;}
.content-height			{margin:30px 0 10px 0; xmin-height:500px;}
.summary					{margin:6px 6% 12px 0; font-size:88%; color:#666; line-height:130%;}
.company-gradiant 		{padding-top:18px; border-top:1px solid #FFF; background: rgb(226,226,226); margin-top:24px;
background: -moz-linear-gradient(180deg, rgba(226,226,226,0.6026785714285714) 0%, rgba(255,255,255,0) 100%);
background: -webkit-linear-gradient(180deg, rgba(226,226,226,0.6026785714285714) 0%, rgba(255,255,255,0) 100%);
background: linear-gradient(180deg, rgba(226,226,226,0.6026785714285714) 0%, rgba(255,255,255,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e2e2e2",endColorstr="#ffffff",GradientType=1);
}

#company p				{line-height:135%;}
#company h2, #company h3	{line-height:100% !important; }
#company					{xline-height:116%;}
#company h2 				{font-size:220%; margin-bottom:20px; line-height:120%;}
#company_news h2 		{font-size:180% important; margin-bottom:12px; line-height:104%; color:#000;}
#company_news h3			{font-size:168% !important; font-family:'Playfair', Times, "Times New Roman", serif; color:inherit; line-height:90%; letter-spacing:-.03em;}
#company h3 				{font-size:168% !important; font-family:'Playfair', Times, "Times New Roman", serif; color:inherit; line-height:90%; letter-spacing:-.02em;}
#company .line			{border:none; border-top:1px dotted #e63535; margin:5px 0 12px 0;}
#company ul				{list-style-type:none; xmargin-left:0; xpadding-left:4px;}
#company li				{xfont-size:100%; xline-height:120%;  xpadding-top:2px; xpadding-bottom:2px;}
#company .image			{width:94%; height:auto; margin:6px 20px 14px 0; float:none; border-radius:4px; border:none; overflow:hidden;
						-webkit-box-shadow:1px 1px 5px 0px rgba(51,51,51,0.4);-moz-box-shadow:1px 1px 5px 0px rgba(51,51,51,0.4); box-shadow:1px 1px 5px 0px rgba(51,51,51,0.4); }
#company .image:hover		{transform:scale(1.02); transition-timing-function:ease; transition:0.2s;}
#company .image img		{width:100%;}
#company .summary 		{color:#666; font-size:72%; margin:2px 0 12px 0; line-height:136%;}
#company .desc 			{color:#666; font-size:82%; margin:0px 0 28px 0; line-height:120%;}
#company a h3:hover, #search a h4:hover, #search a:hover, #search a#link:hover {color:#8D0104;}
#company a:hover 			{color:#8D0104 !important;}
#company .image img:hover {color: #000;}

#company .gray			{color:#999;}
#company #big-video .large-video .video-container {border: 1px solid #DDD; border-radius:4px; background-color:#EEE;}

/* Large article video */
#company #big-video			{margin-left:-8px; padding:4px 0 4px 0;}
.large-video				{text-align:center; background-color:#444; padding:20px 20px 20px 20px; margin: 20px 0 0 0;}
.large-video .video-container {max-width:76% !important; min-width:280px; width:100% !important; text-align:center; margin:0px auto;}
.large-video .video 		{position: relative; padding-top: 0px; height: 0; overflow: hidden; 
							padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */}
.large-video .video iframe 	{position:absolute; top:0; left:0; width:100%; height:100%; border:none;}

/* Large company video */
#company .large-video		{text-align:center; background-color:#999; padding:0; margin: 20px 0 0 0;}
#company .large-video .video-container {max-width:100% !important; min-width:280px; width:100% !important; text-align:center; margin:0px auto;}
#company .large-video .video {position: relative; padding-top: 0px; height: 0; overflow: hidden; 
							padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */}
#company .large-video .video iframe {position:absolute; top:0; left:0; width:100%; height:100%; border:none;}

/* Large company video */
#big-video .large-video		{text-align:center; background-color:#999; padding:0; margin: 20px 0 0 0;}
#big-video .large-video .video-container {max-width:100% !important; min-width:280px; width:100% !important; text-align:center; margin:0px auto;}
#big-video .large-video .video {position: relative; padding-top: 0px; height: 0; overflow: hidden; 
							padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */}
#big-video .large-video .video iframe {position:absolute; top:0; left:0; width:100%; height:100%; border:none;}

/* Wide image at top of company page */
.wide-image-container		{margin:-72px 0 12px 2px; max-height:580px; border-radius:8px 12px 12px 8px; overflow:hidden;}
.wide-image				{width:100%;}
.wide-image img			{width:100% !important; height:auto; margin-top:0; vertical-align:middle; border-radius:8px;}
.credit-box				{width:100%; margin-top:54px;}
.credit-text-podcast 		{transform:rotate(90deg); color:#BBB; float:right; z-index:1; position:static; margin:0 -96px -14px 0; font-size:12px;}
.credit-text 			{transform:rotate(90deg); color:#BBB; float:right; z-index:1; position:static; margin:0 -76px 0px 0; font-size:12px;}
.credit-simple 			{color:#999; font-size:12px; margin:-8px 0 0px 0; text-align:right;}
.image-caption			{color:#666; font-size:13pt; line-height:130%; margin:0px 0 36px 0; border-top:1px dotted #CCC; padding:8px 0 10px 0;}

/* Company Card Styles */
.company-card			{-webkit-box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5); box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5); width:93%;
						background: #FFFFFF; xdisplay:flex; xflex-direction:column; padding:42px 4px 42px 20px; margin:0 -6px 30px 0;
						float:right;display:flex; align-items:center; color:#666;}
.big-logo				{width:70%; min-width:200px; max-width:480px; border:0; margin:10px 0 24px 0px;}
.big-logo img			{max-width:90%; max-height:280px; height:auto; object-fit:contain; object-position:50% 50%; mix-blend-mode:multiply;}
.old-company-card .left	{width:39%; float:left; height:100%; padding:0 3% 0 3%; font-size:120%;}
.company-card .left 		{width: 36%; float: left; height: 100%; padding: 0 2% 0 2%; font-size: 120%;}

.card-logo				{width:65%; min-width:100px; width:100%; border:0; margin:0px 0 20px 0px;}
.card-logo img			{max-width:90%; max-height:120px; height:auto; object-fit:contain; object-position:50% 50%;}
.card-title				{font-weight:500; color:#000; font-size:114%; line-height:130% !important; margin:0 0 0 0;}
.card-text				{font-weight:300; font-size:92%; line-height:130% !important; margin-left:2px;}
.card-url				{font-size:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; width:100%; max-width:300px; margin:10px 0 0px 2px;}
.company-desc			{font-size:100%; line-height:135% !important;}
.card b					{color:#000;}
.card a:hover b			{color:#C00;}
.card 					{-webkit-box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5); box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5);
						background: #FFF; min-height:438px; display:flex; flex-direction:column; padding:10px 6px 6px 6px; margin:10px -5px 10px -5px;}
.card .content 			{flex: 2 2 auto; font-size:90%; line-height:120%; color:#666;}
.card .content h2		{display:none;}
.card .wide-image		{width:100%; background:#333; min-height:80px; border:1px solid #999; margin:2px 0 8px 0; padding:0px; overflow:hidden; text-align:center; object-fit:fill; }
.card .wide-image img	{width:150% !important; height:auto; xobject-fit:fill; padding:0; margin:0 0 -10px -5px !important; object-position:50% 50%;}
.card footer			{height:40px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:10pt; padding-top:20px;}
.card .comp-logo		{height:42px; margin:6px 0 12px 0; border:1px solid #000;}
.card .comp_logo img	{width:180px; height:auto; max-height:42px; }
.card .card-summary		{line-height:110%; margin-bottom:12px; }
.card .rel-logo			{width:100%; margin:0 10px 0 0; min-height:60px; float:left; xoverflow:hidden; 
						display:flex; align-items:center; justify-content:center; object-fit:contain;}
.card .rel-logo img		{xwidth:100% !important; margin:6px 0 6px 6px; object-position:50% 50%;}
.card .card-url			{margin-top:8px;}

.scroller				{overflow-y:scroll; height:1000px; width:80%; min-width:300px;}
.desc					{font-size:88% !important; line-height:132%;}

/* All Company Card Styles for main page */
.centered 				{margin: 0 auto;padding: 0 1em;}
.card-content 			{padding:8px 5px 12px 5px;}
.card-content a			{text-decoration:none;}
.card-content h2 		{margin10px 0 .2em 0; font-weight:400;}
.card-content p 		{font-size: 80%; line-height:112%; margin-bottom:8px; color:#666;}
.card-thumbnail			{width:100%; max-height:120px; overflow:hidden; margin:2px 0 0 0;}
.card-thumbnail img		{width:100%; height:auto;}
.card1 .rel-logo		{width:100%; margin:0 10px 0 0; min-height:60px; float:left; xoverflow:hidden; 
						display:flex; align-items:center; justify-content:center; object-fit:contain;}
.card1 .rel-logo img	{xwidth:100% !important; margin:6px 0 6px 6px; object-position:50% 50%;}
.card1 .bottom-link		{position:absolute; bottom:0px; padding:10px 0 4px 0; font-size:94%; line-height:112%;}
.card1 hr				{margin:0px 0 8px 0;}

/* Flexbox stuff */
.cards 					{display: flex;flex-wrap: wrap; padding-right:0px; margin-right:-30px;}
.card1 					{flex: 1 0 500px;box-sizing: border-box;margin: 1rem .25em; overflow:hidden; background: #FFFFFF; padding:4px 6px 56px 6px; position:relative;
						-webkit-box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5); box-shadow: 2px 4px 8px -2px rgba(0,0,0,0.5); width:94%; border-radius:6px}
.card1:hover 			{transform: scale(1.04); transition-timing-function: ease; transition: 0.2s; border:1px solid #EEE; border-radius:6px; padding:4px 6px 56px 6px;}

@media screen and (min-width: 30em) {
.card1 					{max-width: calc(50% -  1em);}
}
@media screen and (min-width: 40em) {
.card1 					{max-width: calc(33% - 1em);}
}
@media screen and (min-width: 50em) {
.card1 					{max-width: calc(25% - 1em);}
}
@media screen and (min-width: 60em) {
.card1 					{max-width: calc(20% - 1em);}
}
@media screen and (min-width: 52em) {
.centered 				{max-width: 100%;}
}


/* X-Small devices (portrait phones, less than 576px) */
@media (max-width:575.98px) {
	#home h1 {font-size:140%;}
	#more {min-width:180px; margin:0px 4px 2px 0;}
	.email-container {width:100%;}
	.hidden-xs, .hidden-sm {display:none;}
	.company-card		{width:98%; xmin-width:280px; xmin-height:260px; margin:0 5px 0 15px;}
}

/* Small devices (landscape phones, less than 768px) */
@media (min-width:576px) and (max-width:767.98px) {
	#home h1 {font-size:120%;}
	#more {min-width:180px; margin:0px 4px 2px 0;}
	.email-container {width:100%;}
	.hidden-xs, .hidden-sm {display:none;}
	.card-text 			{font-size: 80%;}
	.company-card 		{width:98%; padding:10px 6px 10px 24px; margin:0 5px 0 15px; xmin-height:300px;}
}

/* Medium devices (tablets, less than 992px) */
@media (min-width:768px) and (max-width:991.98px) {
	#home h1 {font-size:140%;}
	#more {min-width:200px; margin:4px 4px 2px 0;}
	.email-container {width:100%;}
	.company-card .left	{display:none;}
	.company-card		{width:98%; xmin-height:240px; font-size:80%; padding: 20px 4px 20px 20px !important; padding: 42px 4px 42px 20px;}
	.card-text 			{font-size: 90%;}
}

/* Large devices (desktops, less than 1200px) */
@media (min-width:992px) and (max-width:1199.98px) {
	#home h1 {font-size:180%;}
	#more {min-width:220px; margin:8px 4px 2px 0;}
	.email-container {width:74%;}
	.display-lg, .display-xl {display:block; margin:12px 0 12px 0;}
	.company-card		{width:96%; min-height:300px; font-size:90%; padding: 10px 6px 10px 24px;}
	.company-card .left	{font-size:130%;}
}

/* X-Large devices (large desktops, less than 1400px) */
@media (min-width:1120px) and (max-width:1399.98px) {
	.email-container {width:60%;}
	.display-lg, .display-xl {display:block; margin:12px 0 12px 0;}
	.company-card		{width:94%; min-height:340px;}
	.company-card .left	{font-size:140%;}
}

/* XX-Large devices (larger desktops) */
@media (min-width:1400px) {
	.display-lg, .display-xl {display:block; margin:12px 0 12px 0;}
	.company-card		{width:94%; min-height:340px;}
	.company-card .left	{font-size:140%;}
}

@media screen and (max-width:600px) {
.card 					{min-height:380px;}
.card .wide-image		{border:0px; text-align:left; object-fit:fill;}
.card .wide-image img		{max-width:500px !important; height:auto;}
}


/* Flexbox media query stuff */

@media screen and (min-width: 34em) {
#companylisting ul {column-count: 2;}
}
@media screen and (min-width: 52em) {
#companylisting ul {column-count: 3;}
}
@media screen and (min-width: 64em) {
#companylisting ul {column-count: 4;}
}

