/*!
Theme Name: Counterpoint Communications 2022
Theme URI: https://www.icontext.com/
Author: iContext Internet Services Inc.
Author URI: https://www.icontext.com/
Description: Theme for Counterpoint Communications 2022
Version: 3.0.4
Text Domain: counterpoint
*/


/*------------------------------
# STRUCTURE
------------------------------*/
#main {
    margin-top: 3rem;
    margin-bottom: 4rem;
}

/* remove margin from stretch rows if last on page */
.home #main, .page-id-32 #main {
    margin-bottom: 0;
}

.home section#section-twitter {
    margin-bottom: 0;
}

#breadcrumb{
    margin-bottom: 45px;
}

.list-inline, .list-unstyled {
    list-style: none;
    padding-left: 0;
}

.list-inline li {
    display: inline-block;
}

.edit-link{
    display: none;    
}


/*------------------------------
# HEADER
------------------------------*/
#navbar-brand-container {
    padding: 10px 0;
}

.navbar-brand img {
    height: 80px;
}

#header-social-container{
    background:#eee;
    padding:10px;
}

#header-social-container .list-inline, #header-utility-container .list-inline {
    margin-bottom: 0;
}

#header-social-container p, #header-utility-container p{
    margin-bottom: 0;
}

#header-social-container ul.list-inline li {
    padding: 0 6px;
}

.header-utility-social .fab, .header-utility-social .fas, .header-utility-social .far {
    font-size: 22px;
    line-height: 1;
    color: #bebebe;
    transition: all .35s;
}

.tagline{
    font-size: 20px;
    color:#797979;
}


/*------------------------------
# MAIN NAV
------------------------------*/
#navbar-bg-container{
    background:#272525;
    -webkit-box-shadow: 0 2px 10px 0 rgb(147 148 142 / 30%);
    -moz-box-shadow: 0 2px 10px 0 rgb(147 148 142 / 30%);
    /* box-shadow: 0 2px 6px -2px rgb(0 0 0 / 20%); */
    box-shadow: 0 2px 10px 0 rgb(147 148 142 / 30%);
}

.navbar-dark .navbar-nav .nav-link {
    color: hsla(0,0%,100%,1);
}

.navbar-dark .navbar-nav .nav-link:focus, .navbar-dark .navbar-nav .nav-link:hover {
    color: hsla(0,0%,100%,1);
}

#navbar > ul > li {
    padding: 0 10px;
    text-transform: uppercase;
}

#navbar > ul > li > ul > li {
    text-transform: none;
}

#header li.menu-item:hover, #header li.current-menu-item{
    background-color: rgba(0, 0, 0, .85);
}

#header.navbar-light .navbar-nav .nav-link {
    /* padding: 0.1rem 0.6rem !important; */
    padding: 10px 10px;
    font-family: 'Lato', Arial, sans-serif;
    font-size: 18px;
    line-height:20px;
    color: #fff;
    text-transform: uppercase;
}

#header.navbar-light .navbar-nav .nav-link:hover, #header li.current-menu-item .nav-link{
    color: #fff !important;
}

.dropdown-item.active, .dropdown-item:active {
    background-color: #262626;
}

.navbar-dark .navbar-toggler-icon {
    background-image:none;
}

.navbar-toggler-icon{
    display:initial;
    background-position: initial;
    background-repeat: initial;
    background-size: initial;
}

.navbar-dark .fa-bars{
    color:#fff;
    opacity:1;
    padding: 4px;
}

.navbar-toggler:focus {
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
}


/*------------------------------
# BODY / TYPOGRAPHY
------------------------------*/
body {
    color: #333;
    font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Lato', 'Open Sans', Arial, sans-serif;
}

.entry-title {
    margin-bottom: 2rem;
    color: #000;
    text-transform:uppercase;
}

.page-id-20 .entry-title, .page-id-24 .entry-title{
    display:none;
}

.page-id-20 .vc_row .entry-title, .page-id-24 .vc_row .entry-title{
    display:block;
}

.page-id-20 h1, .page-id-24 h1{
    color:#000;
}

h2:not(.wpb_wrapper h2){
    margin-top: 1.5rem;    
    margin-bottom: 1.5rem;
}

/*
.h3:not(.alert .h3), h3:not(.alert h3), h3:not(.carousel-caption h3) {
    font-size: 1.5rem;
    color: #272525 !important;
}
*/

hr{
    margin:40px 0 40px;
}

.hero{
    font-size:22px;
    color: #808080;
}

.fa-google{
    color:#4885ed;
}

.fa-facebook-f{
    color:#3B5998;    
}

.fa-twitter{
    color:#1DA1F2;        
}

.fa-youtube{
    color:#cc181e;        
}

.fa-linkedin-in{
    color:#2867B2;
}

.fa-envelope{
    color:#f5cc57;      
}

.fa-life-ring{
    color:#ff0000; 
}

.fa-graduation-cap{
    color:#484848; 
}

.fa-plug{
    color:#00add8; 
}

.fa-shopping-cart{
    color:#ffcc00; 
}

.fa-gratipay{
    color:#e800e0; 
}

.fa-building{
    color:#c38602; 
}

.fa-th, .fa-users, .fa-code, .fa-paint-brush, .fa-camera, .fa-video{
    color:#9c9c9c;     
}

#sidebar .widget-title{
    margin-bottom: 1.5rem;
    padding: 10px;
    background: #272525;
    color: #fff;
    font-size: 24px;
    text-transform:uppercase;
}

.blog .entry-meta .sep, .single .entry-meta .sep{
    display:none;
}

footer.entry-meta{
    margin-top: 2rem;
    padding-top: 3rem;
    border-top:1px solid #c5c5c5;
}

.entry-meta{
    font-size:initial;
    font-style:italic;
}

footer.entry-meta{
    display:none;
}

#sidebar .entry-meta span.sep, #sidebar .entry-meta .author{
    display:none;
}

#sidebar section{
    margin-top:40px;
}

.post-thumbnail{
    margin-bottom:30px;
}

.recent-posts li{
    margin-bottom:30px;
}

.page-id-78 h2{
    margin-top:45px;
}

.page-id-78 h2:nth-child(1){
    margin-top:0;
}

.list-contact-details{
    margin-top:20px;
    font-size:20px;
}

.list-contact-details li{
    margin-bottom:6px;
}

.list-contact-details i{
    width:32px;
}


/*------------------------------
# LINKS
------------------------------*/
a{
    color:rgba(204, 0, 0, .85); /* #d42626 */
}

a:hover{
    color:rgba(204, 0, 0, 1); /* #cc0000 */
}

#main a:not(.btn, .gv-sort, .fc-button, .fc-col-header-cell-cushion, .fc-daygrid-day-number), #colophon a {
    text-decoration:underline;
}


/*------------------------------
# BUTTONS
------------------------------*/
.btn, .gform_button, .gform_next_button, .gform_previous_button, .gpnf-add-entry, input[type="submit"], .um-button {
    background-color: rgba(204, 0, 0, .85); /* #d42626 */
	color: #fff;
	border-radius:4px;
    text-decoration: none;
    /* text-transform:uppercase; */
    border: 0;
    padding: .375rem .75rem;
}

.btn:hover, .gform_button:hover, .gform_next_button:hover, .gform_previous_button:hover, .gpnf-add-entry:hover, input[type="submit"]:hover {
    background-color: rgba(204, 0, 0, 1); /* #cc0000 */
    color: #fff;
}

.btn-critical{
    background-color: rgba(255, 201, 43, .90);
    color: #000;
}

.btn-critical:hover{
    background-color: rgba(255, 201, 43, 1);
    color: #000;    
}

input[readonly], textarea[readonly]{
    opacity:.5;
}


/*------------------------------
# WPB CARDS
------------------------------*/
.home #section-cards .vc_row:nth-child(1), .home #section-cards .vc_row:nth-child(2){
    margin-bottom:60px;
}

.wpb-card .vc_column-inner{
    border: 0px solid rgba(0,0,0,.125);
    border-top: 1px solid rgb(147 148 142 / 20%);
    border-radius: .25rem;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin:0 30px;
    box-shadow: 0 2px 10px 0 rgb(147 148 142 / 30%);
    background: #fff;
}

.vc_row-has-fill+.vc_row-full-width+.vc_row>.wpb-card.vc_column_container>.vc_column-inner{
    padding-top: 0;
}

.wpb-card .wpb_text_column{
    padding:30px 20px 0;
}

.wpb-card .wpb_single_image.wpb_content_element{
    margin-bottom: 0;
}

.wpb-card h2, .wpb-card p{
    text-align:center;
}

.wpb-card h2{
    font-size: 1.5rem;
    color:#5d5c5c;
    min-height:56px;
}


/*------------------------------
# SEARCH FORM
------------------------------*/
.search-form-wrapper {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    padding: 10px 15px;
    z-index: 100000;
}

.search-form-wrapper.open {
    display: block;
}


/*------------------------------
# CAROUSEL
------------------------------*/
#carousel-slider .carousel-item {
    height: 450px;
    background: no-repeat 0 scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.carousel-control-next-icon, .carousel-control-prev-icon{
    height: 6rem;
    width: 6rem;
}

.carousel-caption{
    bottom:initial;
    top: 50%;
    transform: translateY(-50%);
    padding: 30px 30px 30px;
    text-align:initial;
}

.carousel-caption h3{
    color:#5d5c5c;
    font-size: 1.9rem;
}

.carousel-caption p{
    color:#fff;    
    font-size: 20px;
    line-height: 1.4;
    text-align: left;
}


/*------------------------------
# SECTIONS
------------------------------*/
section{
    margin-bottom:30px;
}

#section-twitter{
    padding-top:90px;
    padding-bottom:90px;    
}

#section-services .vc_row{
    margin-bottom:60px;    
}

#section-people .vc_row{
    margin-bottom:60px;    
}

.section-associations img{
    width: 300px;
}

.section-associations p{
    margin-bottom:0;
}

#section-client-logos .vc_row:nth-child(1), #section-client-logos .vc_row:nth-child(2), #section-client-logos .vc_row:nth-child(3){
    margin-bottom:30px;
}

#section-client-logos img{
    max-width:150px;
}

#section-wp-development .hero{
    color:initial;
}


#section-twitter{

}

.widget_twitter{
    margin-top:30px;
}

.widget_twitter ul{
    list-style: none;
    padding-left: 0;
}

.widget_twitter li{
    font-size:20px;
    margin-bottom:30px;   
}

.widget_twitter .time-meta{
    display:block;
}

.widget_twitter .intent-meta a {
    background: url(/wp-content/themes/counterpoint/assets/images/everything-spritev2.png);
    display: inline-block;
    height: 16px;
    text-indent: -9999px;
    width: 16px;
}
.widget_twitter .intent-meta a:hover.favorite {
    background-position: -64px center;
}

.widget_twitter .intent-meta a.in-reply-to {
    background-position: 0 center;
}

.widget_twitter .intent-meta a:hover.in-reply-to {
    background-position: -16px center;
}

.widget_twitter .intent-meta a.retweet {
    background-position: -80px center;
}

.widget_twitter .intent-meta a:hover.retweet {
    background-position: -112px center;
}

.widget_twitter .intent-meta a.favorite {
    background-position: -32px center;
}


/*------------------------------
# ALERTS
------------------------------*/
.alert-critical{
    background:#ffdf80;
}

.vc_row.alert{
    margin-left: 0;
    margin-right: 0;
}

.alert .wpb_text_column{
    margin-bottom: 0;
}


/*------------------------------
# FOOTER
------------------------------*/
#footer-widgets {
    background: #000;
    padding: 30px 0;
}

#footer-widgets h2, #footer-widgets h3, #footer-widgets p, #footer-widgets a {
    color: #fff;
}

#colophon .nav-link, #colophon .menu-item a[aria-current=page] {
    color: rgba(204, 0, 0, .85);
}

#footer-widgets h3.widget-title{
    font-size: 22px;
}


/*------------------------------
# LANDING PAGES WITHOUT BRANDING
------------------------------*/
.page-id-1765 header, .page-id-1765 footer, .page-id-1771 header, .page-id-1771 footer{
	display:none;
}


/*------------------------------
# MEDIA QUERIES
------------------------------*/
@media (max-width: 752px){
    .navbar-brand .col-sm-6{
        text-align: center; 
        padding:10px 10px;
    }

	.navbar-brand img {
		height: 80px;
	}	
	
    .tagline{
        font-size:16px;
        white-space: normal;
    }
    
    .tagline .text-start{
        text-align: center!important;
    }
    
    .header-utility-social.text-end{
        text-align: center!important;
    }
    
    #menu-main-navigation-menu .nav-link{
        font-size:20px;
    }
    
    #colophon .nav-link{
        padding: 0.5rem 0.5rem;
    }

    #carousel-slider .carousel-item {
        height: 250px;
    }
    
    #section-cards .wpb-card {
        margin-bottom: 30px;
    }
    
    #section-client-logos, #section-wp-development, #section-cards{
        padding-top:60px;
        padding-bottom:60px;    
    }
    
    /* center footer widgets on mobile */
    #custom_html-2 .custom-html-widget, #colophon .col-md-6, #colophon .menu.justify-content-end{
        text-align: center;
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }
    
    #section-services .vc_row{
        margin-bottom: 0;
    }
    
    .wpb-card{
        margin-bottom:45px;
    }
    
    #custom_html-7, #custom_html-8 {
        display: none;
    }
    
    #footer .navbar-brand.text-start{
        text-align: center!important;
    }
}

@media (min-width: 753px){
    .navbar {
        padding-bottom: 0;
        padding-top: 0;
    }
}

@media (max-width: 1399px){
    #navbar > ul > li {
        padding: 0 4px;
    }
    
    #header.navbar-light .navbar-nav .nav-link{
        font-size: 14px;
        line-height: 18px;
    }
}

@media (min-width: 1200px){
    .h1, h1 {
        font-size: 2rem;
    }
}

@media (min-width: 1400px){
    #navbar > ul > li {
        padding: 0 10px;
    }
    
    #header.navbar-light .navbar-nav .nav-link {
        text-align: center;
    }
}