﻿/*----- Language -----*/

    .language{
	    float:right;
	    margin:0;
	    padding:0;
    }
    .language .language-object span{
	    float:right;
	    padding: 5px 8px;
	    margin:0 0 0 5px;
	    border-radius: 100%;
	    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.1);
	    -moz-border-radius: 100%;
	    -webkit-border-radius: 100%;
	    background-color:#fff;
    }
    .language .language-object span img{
	    height:12px; 
	    width:17px;
	    opacity:0.4;
	     filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 10+, Firefox on Android */
        filter: gray; /* IE6-9 */
        -webkit-filter: grayscale(100%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */
    }
    .language .language-object span:hover img{opacity:1;}
    .language .language-object .Language.selected img{
	    opacity:1;
	    border-color:#222;
	    -webkit-border-radius: 2px;
	    border-radius: 2px; 
	    -webkit-box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.8);
	    box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.8); 
	     filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0\'/></filter></svg>#grayscale");
        -webkit-filter: grayscale(0%);
    }

/*----- Social Icons -----*/

header.colored.flat-menu.darken-top-border div.search,
header.clean-top.center div.search
{
     margin-bottom:0;
}
     

/* LOGIN */
/*------------------------------------------------*/
    #login{	float:right; margin:0;}
	
	#login .registerGroup, 
	#login .registerGroup *, 
	#login .loginGroup, 
	#login .loginGroup * {	display:block; }	

	#login .registerGroup,
	#login .loginGroup {
		float:left;
		padding:0;
		margin:0;		
	} 
	
	#login .registerGroup li:first-child:hover {border-left:#222;}
	
	/* Register Group Styles */
	
	#login .registerGroup li { 	float:left; }
	#login .registerGroup .buttonGroup {margin:0; padding: 0 0 0 10px; }
	
	#login .registerGroup a,
	#login .loginGroup a, 
	#login a.SkinObject, 
	#login a.LoginLink {
		position:relative;	 
		font-size:11px;
		text-transform:uppercase;
	}
	
	#login .registerGroup a {
	    height:32px;
	    padding:10px 16px;
	    line-height:16px;
    }
	
	#login a.SkinObject, 
	#login a.LoginLink {
	    padding: 7px 14px;
	}
	
	#login .userMessages a:hover,
	#login .userNotifications a:hover {
	     background:#666;
    }
	
	#login .userDisplayName a:hover,
	#login .loginGroup a:hover {
	     color:#000
    }
	     
	#login .registerGroup a:hover,
	#login .loginGroup a:hover { text-decoration:none; }
	
	#login .registerGroup a strong,
	#login .loginGroup a strong {
		display:block;
		position:absolute;
		left:0; top:0;
		width:100%;
		overflow:hidden;
		font-size:11px;
		text-indent:-9999px;
	}
	
	#login .userMessages a,
	#login .userNotifications a { background-color: #ccc; }	
	
	#login .userMessages a {
	   margin-right:5px; 
	}
	
	#login .userProfileImg img,
	#login .registerGroup a,
	#login .loginGroup a, 
	#login a.SkinObject, 
	#login a.LoginLink {
	    border-radius:20px;
	}
	
	#login .userMessages strong { 
		height: 100%;
		background: url('Resources/img/icon_message.png') no-repeat center center;
	}
	
	#login .userNotifications strong { 
		height: 100%;
		background: url('Resources/img/icon_notification.png') no-repeat center center;
	}
	
	#login .registerGroup a span {
		display:inline-block;
		position:absolute;
		right:2px; top:-9px;
		min-width:7px;
		margin-right:3px;
		background: rgb(59,150,182); /* Old browsers */
		
		text-align:center;
		font-size:11px;
		color:#fff;
		text-shadow: 0px 1px 0px #333333;
	}
	
	#login .registerGroup .userProfileImg a{
		min-width:25px;
		min-height: 32px;
		padding:0;
		background:none;
	}
	
	#login .registerGroup a img{
		height:32px; width:32px;
		background:#333;
	}
	
	/* Number of message next to the message icon*/
	#login .userMessages  a  span,
	#login .userNotifications   a  span	{ 
		display: inline-block; 
		margin-top: 9px; 
		margin-right: 0px; 
		background-color: transparent;
		font-size: 10px;
	}

.layout_trigger {
	position:fixed;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	z-index:-2;
	background-size:cover;
}
.body{
    font-size: 16px;
}

.body .dnnSortable {min-height:0px !important;}
.body .dnnDropEmptyPanes {min-height:110px !important; outline: 1px dashed #ccc !important;}
.body ul.dnnAdminTabNav, .body ul.dnnActions, #dnnModuleDigitalAssetsBreadcrumb ul {padding-left:0;}
.body ul.dnnAdminTabNav li {line-height:normal;}

header.flat-menu.clean-top div.social-icons, header.colored.flat-menu div.social-icons, header.clean-top.center div.social-icons {
    float:left;
    margin:0;
    clear:none;
}

header.flat-menu.clean-top .header-top div.container, header.colored.flat-menu .header-top div.container, header.clean-top.center .header-top div.container {
    padding-top:10px;
    padding-bottom:10px;
}

#ControlBar,
div.body .mdMemberList * ,
div.body .dnnDocumentViewerBackground *,
div.body .dnnDropDownList .selected-item a,
.dnnDocumentViewerBackground div,
#dnnModuleDigitalAssetsMainToolbar,
#dnnModuleDigitalAssetsSelectionToolbar {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.icon-search {
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
}

.DnnModule {
    z-index: inherit !important;
}

.console {
    width: 250px;
	height: auto;
	background-color: #484848; /* Menu Background Color */
}

.console-none div {  
	cursor: pointer;
	cursor: hand;
	float:left; 
	height: auto; 
	width: 250px;
	padding:0px; 
	margin:0px;  
	text-align:left; 	
}

.console-none h3 {
    padding:10px 8px 10px 40px; 
	margin: 0; 	   
	border-bottom: solid 1px #fff; 
	background: url('Resources/img/arrow_2.png') 18px center no-repeat;
	color: #eee;  
	font-size:13px; 
	line-height: 1; 
	font-weight: bold;
}

.console-none div div { display:none; }
.console-mouseon { background-color:#70b1c7; }
    
#UserProfileImg img {
	width: 100px;
	height: auto;
	border: solid 3px #fff;
}

.UserProfileControls ul {
	margin: 15px 0;
	padding: 0;
}

.UserProfileControls ul li {
	list-style-type: none;
	margin-bottom: 3px;
}

blockquote p {
    font-style:normal;
    font-family:"Open Sans",Arial,sans-serif;
}

.dnnEditState .DnnModule {
    opacity: 1;
}

.DNNEmptyPane {
    width: auto;
}

.dnnFormMessage {
    max-width: 100%;
}

.btn-primary:visited, 
.btn-primary:visited:hover {
	color: #fff;
}

.font18 { font-size: 18px !important; }
.font24 { font-size: 24px !important; }
.font36 { font-size: 36px !important; }
.font48 { font-size: 48px !important; }
.font60 { font-size: 60px !important; }
.font120 { font-size: 120px !important; }
.font240 { font-size: 240px !important; }

.list li {
    font-size:14px;
}

.vertical-center 
{
    display: inline-block;
    vertical-align: middle;
    float: none;
}

.top-buffer { margin-top:32px; }

.bottom-buffer { margin-bottom:32px; }

/*------- Custom Changes --------*/

.header-contact {
    display: inline;
    font-size: 22px;
    color: #ccc;
    top: -43px;
    left: 15px;
    position: absolute;
    font-style: italic;
}

.header-contact .phone-number{
    color:white;
    font-size:1.2em;
    letter-spacing: 1px;
}

.header-contact a.phone-number:hover {
    text-decoration:none;
}

.sticky-menu-active .header-contact {
    position: absolute;
    top: 88px;
    left: 50px;
    font-size: 11px;        
    color:#444;
}

.sticky-menu-active .header-contact .phone-number {
    color: #16216c;
}

a.sticky-contact-cta, a.sticky-contact-cta:visited {
    display: inline-block;
    height: 50px;
    width: 50px;
    line-height: 50px;
    padding-left: 14px;  
    position: fixed;
    z-index: 100;
    right: 0px;
    top: 195px;
    font-size: 30px;
    background-color: rgba(103, 103, 103, 0.73);
    color: #fff;  
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    transition: all .25s ease-in-out;
}

.sticky-contact-cta:hover {
    background-color: rgba(103, 103, 103, 0.9);
    color:#fff;
}

.page-top{
    border-top:0 !important;
}

.page-top h2 {
    border-bottom: 0 !important;
}

.page-top .breadcrumbs {
    margin-top: 5px;
    margin-bottom: -5px;    
    padding-left: 5px;
}

.page-top .breadcrumbs a {
    color: #bbb;
}

section.section {
    border-top: 0 !important;
}

#footer
{
    background-image:url("/Portals/0/img/PM-Icon-Watermark.png");
    background-repeat: no-repeat;
    background-position: 10% 50%;
}

.secondary-font {
    font-family: "Poiret One";
}

/*Blog module heading fix*/
.eds_news_Vision.eds_subCollection_categoryMenu .EDN_module_box > .edn_module_title span {
    font-family:Arial, Helvetica, sans-serif !important;
}

/*Services Blocks*/

section.section-services {
    background-image: url('/Portals/_default/Skins/Porto/Resources/img/topography.png') !important;
}

.service-block-container {
  display:flex;  
  justify-content: center;
}

.service-block {
  position:relative;
  transition: all .3s ease-in-out;
  overflow:hidden;
  display:flex;  
  justify-content: center;
   text-align:center;
  background-color: #fff;
  color:#666;
  border:1px solid #ccc;
  margin-bottom:30px;
  padding:0 10px;
  min-width: 100%;
  width: 100%;
  height: 240px;
}

.service-underlay {
    position:absolute;
    height:60px;
    bottom:0;
    left:0;
    right:0;
    background-color: rgb(226, 226, 226);
    transition: all .3s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.service-icon {
  position:absolute;
  top:30px;
  left:0; 
  right: 0;
  font-size: 40px;
  transition: all .3s ease-in-out;
  color: #737373;
}

.service-name {
    margin:0 auto;
    display:block;
    text-transform: Capitalize;
    font-size:18px;
    color: #292929;
}

.service-desc {
  display:block;
  font-size:20px;
  margin-top: 75px;
}

.service-underlay .cta {
    display: none;
    color:#fff;
    font-size: 14px;
    margin-bottom: 15px;
}

.service-block:hover {
  transform: scale(1.1);
  cursor:pointer;
  border:1px solid #141b41;
}

.service-block:hover .service-underlay{
    background-color: #141b41;  
    justify-content: space-between;
}

.service-block:hover .service-icon {
  color:#fff;
  transform: scale(1.5);
  top:80px;
}

.service-block:hover .service-name {
    display: block;
    height: auto;
    color:#fff;
    font-weight:bold;
    margin-top: 10px;
    align-self: flex-start;
}

.service-block:hover .service-desc {
  display:none;
}

.service-block:hover .cta {
    display:block;
}

.service-block .service-underlay .cta:hover {    
    text-decoration:none;  
}

/*section backgrounds*/

#custom-back {
    background-image:url('/portals/0/Images/PageImages/bg3.jpg'); 
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

#custom-back2 {
	background-image:url('/portals/0/images/pageImages/wheel.jpg');
	background-repeat: no-repeat;
	background-size: cover; 
	background-position:center;
}

/*Customer Squares*/

.square-holder {
  padding:30px;
  border: 1px solid #cecece;
  align-items: center;
  display:flex;
  align-items: center;
  justify-content: center;
  margin-bottom:20px;
  background-color:#fff;
  min-height:200px
}

.square-holder img {
  max-width:100%;
  filter: grayscale(100%);
  transition: all 0.3s;
}

.square-holder:hover img{
  filter:none;
}

/*Case Studies*/

.case-study-container:before {
content: "";
position: absolute;
left: -0.3rem;
height: 100%;
width: 10%;
border-left: .25rem solid #141b41;
border-top: .25rem solid #141b41;
}
.case-study-container {
padding: 0 0 10px 5px;
position: relative;
left: -5px;
margin-bottom:45px;
background-color: #fbf4f4;
}
.case-study-company {
background-color: #141b41;
color: #fff;
padding: 5px 10px;
top: -1rem;
position: relative;
}
.case-study-overview {
padding: 0 10px;
}
.case-study-overview p {
color: #1f2552;
}
.case-study-logo {
box-shadow: 1px 1px 8px #b5b5b5;
position:relative;
top:5px;
right:5px;
}

/*Sub Nav*/

.sub-nav {
    text-align:right;
    margin-bottom:30px;
}
.sub-nav-title {
padding:15px;
background-color:#141b41;
color:#fff;
font-size:1.2em;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
}
.sub-nav nav a {
display:block;
padding:15px;
border-bottom:1px solid #fafafa;
background-color:#eee;
color:#444;
text-decoration:none;
transition: all 0.3s ease;
}
.sub-nav nav a:hover {
text-decoration:none;
color:#inherit;
cursor:pointer;
padding-right:20px;
background-color:#ddd;
}

/* Custom 7 column layout for bootstrap*/

@media (min-width: 0px) and (max-width: 479px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1  {
    width: 100%;
    *width: 100%;
  }
}

@media (min-width: 992px) {
  .seven-cols .col-md-1,
  .seven-cols .col-sm-1,
  .seven-cols .col-lg-1 {
    width: 14.285714285714285714285714285714%;
    *width: 14.285714285714285714285714285714%;
  }
}

/* Media Queries */

@media (max-width: 991px)
{
    .sticky-menu-active header .header-extra-info,.sticky-menu-active header .header-top,.sticky-menu-active header .search,.sticky-menu-active header .social-icons {
        display: none !important;
    }

    .header-contact {        
        color:#444;
        font-size: 20px;
    }

    .header-contact .phone-number {
        color: #16216c;
    }

    .sticky-menu-active .header-contact {
        position: absolute;
        top: 65px;
        left: 180px;
        font-size: 18px;
    }

    .btn-responsive-nav 
    {
        top:60px !important;
    }
}

/*Extra Small*/
@media only screen and (min-width: 0px) and (max-width: 479px) 
{    
    .sticky-menu-active header .header-top, .sticky-menu-active header nav ul.nav-top {
        display: none !important;
    }

    body.sticky-menu-active header .logo img {
        margin-top:-20px !important;
    }
    
    .header-contact {   
        position: absolute;
        top: 58px;
        left: 58px;
        font-size: 11px;
    }

    .sticky-menu-active .header-contact {
        position: absolute;
        top: 78px;
        left: 52px;
        font-size: 10px !important;
    }
        
    .LoginPanel{
		width: 100%;
		padding:0;
	}
		
	.dnnLoginService input[type="text"], .dnnLoginService input[type="password"]{
		min-width: 100%;
        width: 100%;
	}
		
	.dnnFormItem > label.dnnFormLabel, .dnnLabel{
		width: auto;
	}
		
	div.dnnRegistrationForm{
		min-width: 100%;
        width: 100%;
	}
		
	.dnnFormItem input[type="text"], .dnnFormItem input[type="password"], .dnnFormItem input[type="email"], .dnnFormItem input[type="tel"], .dnnFormItem select, .dnnFormItem textarea{
		max-width: 100%;
        width: 100%;
	}
		
	.dnnFormMessage{
		max-width: 100%;
	}
		
	div.dnnRegistrationForm .dnnForm{
		width:100%;
	}

    .service-block:hover .service-underlay {
        height: 240px;
    }
}

/*Small*/
@media (min-width: 479px) {    

    .service-block:hover .service-underlay {
        height: 240px;
    }
    .service-desc {
        font-size: 14px;
    }
}

/*Medium*/
@media (min-width: 992px) {

    .btn-company-read-more {
        position: absolute;
        top: 50px;
    }

    .service-name {
       font-size:14px;
    }

    .service-desc {
      font-size:15px;
    }

    .service-block:hover .service-underlay {
        height: 240px;
    }
}

/*Large*/
@media (min-width: 1200px) {
    
    .service-block:hover .service-underlay{
      height: 240px;
    }
}