/*
Theme Name: Public Media
Theme URI: http://demo.qodeinteractive.com/bridge/
Description: A child theme of Bridge Theme
Author: Public Media
Author URI: https://publicmedia.com/
Version: 1.0.1
Template: bridge
*/

@import url("../bridge/style.css");

h4.subtitle {
   margin: 1em 22% 0 22%;
}
/* Key Elections and Issues */
.elections {
	text-align:center;
}
.elections,
.issues {
	border-top: 1px solid #ccc;
}
.elections .wpb_column,
.issues .wpb_column {
	padding-top: 2em;
}
.elections h5,
.elections p,
.issues h5,
.issues p {
	text-align: left;
}
.donate a {
    background-color: #db0000 !important;
	-webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
nav.main_menu ul li.donate:hover a span.underline_dash {
    opacity: 0 !important;
}
nav.main_menu ul li.donate:hover a {
    background-color: #fff !important;
	color: #db0000;
	-webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.innernav {
	background: rgba(255,255,255,0.90);
	text-align: center;
}
.innernav a {
	display: inline-block;
	padding: .25em 1em;
	background: #28395e;
	border: 1px solid #28395e;
	color: #fff;
	font-size: .8em;
	font-weight: 600;
	border-radius: 30px;
	white-space: nowrap;
	margin: 1em .25em;
}
.innernav a:hover {
	background: #fff;
	color: #28395e;
}
.fix-innernav {
	position: fixed !important;
	top: 80px !important;
	width: 100%;
	z-index: 1000 !important;
}
.wpb_gallery .wpb_flexslider.flexslider .flex-control-nav {
    margin-top: 2em;
}

body.page-template-page-landing-head header.centered_logo nav.main_menu,
body.page-template-page-landing-head header.centered_logo nav.main_menu.right,
body.page-template-page-landing-head header.centered_logo .header_inner_right {
	display: none !important;
}
body.page-template-page-landing-head header.centered_logo .header_inner_left {
    margin: 0;
}

body.page-template-page-landing-head h1 {
	font-size: 4.5em;
	line-height: 1.25em;
	color: #28395e;
}
body.page-template-page-landing-head h2 {
	font-size: 3em;
	line-height: 1.25em;
	letter-spacing: 0px;
	text-transform: none;
	font-weight: 500;
	font-family: 'Lora','Playfair Display', sans-serif;
}
body.page-template-page-landing-head h3 {
	font-size: 2.5em;
	line-height: 1.25em;
	font-weight: 500;
	font-family: 'Lora','Playfair Display', sans-serif;
}

body.page-template-page-landing-head .wpb_wrapper a:not(.qbutton) {
	text-decoration: underline;
	color: #28395e;
	font-weight: bold;
}
body.page-template-page-landing-head .white h1 {
	color: #fff;
}

/* PADDING */
.nopad .vc_column-inner {
    padding: 0;
}
.fullpad > .vc_column-inner {
    padding: 8em;
}
.fullpad-tb {
    padding-top: 8em;
    padding-bottom: 8em;
}
.fullpad-t {
    padding-top: 8em;
}
.fullpad-b {
    padding-bottom: 8em;
}
.fullpad-rl {
    padding-right: 8em;
    padding-left: 8em;
}
.fullpad-r {
    padding-right: 8em;
}
.fullpad-l {
    padding-left: 8em;
}
.halfpad {
    padding: 4em;
}
.halfpad-tb {
    padding-top: 4em;
    padding-bottom: 4em;
}
.halfpad-t {
    padding-top: 4em;
}
.halfpad-b {
    padding-bottom: 4em;
}
.halfpad-rl {
    padding-right: 4em;
    padding-left: 4em;
}
.halfpad-r {
    padding-right: 4em;
}
.halfpad-l {
    padding-left: 4em;
}
.box {
	padding: 2em;
}
.box>.vc_column-inner .vc_column-inner {
	padding: 4em;
	min-height: 250px;
	background: #0d1b3a;
}
.box .qbutton.large {
    height: auto;
    line-height: 1.25em;
    padding: 12px 20px;
	font-size: 14px;
    white-space: normal;
    text-align: center;
}
.intro p {
	font-size: 1.75em;
	line-height: 1.5em;
}
div.pp_default .pp_details {
    position: absolute;
    top: 0;
    right: 0;
}
div.pp_default .pp_close {
    background: #000 !important;
    border: 2px solid #fff !important;
    border-radius: 50%;
	top: -14px !important;
}
div.pp_default .pp_close:hover {
    background: #fff !important;
    border-color: #000 !important;
}
div.pp_default .pp_close:after {
    color: #fff !important;
	font-size: 20px !important;
    height: 20px !important;
}
div.pp_default .pp_close:hover:after {
    color: #000 !important;
}

.fix-head {
	position: fixed !important;
	top: -982px !important;
	z-index: 109 !important;
}
.bg_blue {
	background: #002868;
}
.bg_blue h2,
.bg_blue p {
	color: #fff;
}
.row {
	padding: 10% 0;
}
.col {
	padding: 10%;
}
.vc_text_separator.full div {
    line-height: 1.25;
    font-size: 1.5em;
}
.btn_lg:hover, .btn_lg:hover .vc_text_separator.full div {
    background: #001b44;
}
.post-password-form {
	margin: 0 auto;
	padding: 80px 0;
}
.mobileimg {
	display: none;
}
.push {
	float: right;
}
.white,
.white h1,
.white h2,
.white h3,
.white h4,
.white h5,
.white p,
.hero h1 {
	color: #fff;
}

.disclaimer p, div.disclaimer {
    border: 1px solid #000;
    padding: 4px 8px;
    display: inline-block;
    color: #000;
    text-transform: uppercase;
    /*font-size: .8em;*/
	margin: 2em;
}
.disclaimer.white p, div.disclaimer.white {
    border: 1px solid #fff;
    color: #fff;
}
.smaller {
	font-size: 90%;
}
header .container_inner .header_inner_left {
	width: 100%;
}
.parallax_content_full_width {
	padding: 0 5%;
}
.wpb_wrapper .custom_font_holder h3 {
	margin-bottom: -10px !important;
}
.page_not_found {
	padding-top: 83px;
}
.justify p {
	text-align: justify;
}
.fullcol {
    display: table;
    min-height: 850px;
}
.fullcol > .vc_column-inner {
    display: table-cell;
    vertical-align: middle;
    padding: 10% 0 !important;
    background-color: #fff;
}
.nopad .full_section_inner>.vc_col-sm-6>.vc_column-inner {
	padding: 0px;
}
sup {
    vertical-align: super;
    font-size: smaller;
}
body.blog .content.content_top_margin,
body.single .content.content_top_margin {
	padding-top: 40px;
}
section.parallax_section_holder.cover {
	background-size:cover;
}
section.parallax_section_holder.cover h2 {
	text-transform: none !important;
}
.hero {
	padding: 6% 0;
}
.hero.small {
	padding: 2em 0;
}
.hero.full {
	padding: 14% 0 18% 0;
}
.hero.full .section_inner_margin {
	width: 100%;
}
.hero h1,
.hero h2,
.hero p,
.halfpad h1,
.halfpad h2,
.halfpad p {
	color: #fff;
}
.home .section .video-wrap {
    overflow: visible;
}
section.parallax_section_holder.cover h1,
.video_section h1, .hero.full h1 {
	font-size: 100px;
	line-height: 1.25em;
	text-transform: none;
	font-weight: 900;
}
section.parallax_section_holder.cover h2,
.video_section h2, .hero.full h2 {
	font-size: 30px;
	line-height: 1.5em;
	text-transform: none;
	/*margin: 0 16%;*/
}
@media only screen and (max-height: 736px) and (min-height: 668px) {
    section.parallax_section_holder {
		min-height: 700px;
	}
}
@media only screen and (max-width: 736px) and (min-width: 480px) {
    section.parallax_section_holder {
		min-height: 500px;
	}
}
.flexslider {
	margin: 0;
}
body.page-template-page-full_screen header {
	display: none;
}
body.page-template-page-full_screen .content.content_top_margin {
	margin-top: 0px !important;
}
@media only screen and (max-width: 1000px) and (min-width: 601px) {
    body.page-template-page-full_screen .full_screen_holder {
		margin-top: 0px;
	}
}
@media only screen and (max-width: 1400px) {
	.hero.full .section_inner_margin {
		width: 62%;
	}
	.rev_slider h1 {
		font-size: 1.2em;
		line-height: 1.25em;
	}
}
@media only screen and (max-width: 1200px) {
	.hero.full .section_inner_margin {
		width: 68%;
	}
}
@media only screen and (max-width: 1000px) {
    .fullcol {
		min-height: 300px;
	}
    header {
		position: fixed !important;
	}
    section.parallax_section_holder.cover {
		background-size: auto ; min-height:600px;
	}
    .content, .content.content_top_margin {
		margin-top: 106px !important;
	}
    .single .content_inner, .blog .content_inner {
		padding-top: 40px !important;
	}
	.hero.full .section_inner_margin {
		width: 84%;
	}
	section.parallax_section_holder.cover h1,
	.video_section h1, .hero.full h1 {
		font-size: 54px;
	}
	section.parallax_section_holder.cover h2,
	.video_section h2, .hero.full h2 {
		font-size: 30px;
	}
	.contact .fullpad-rl {
		padding-left: 1em;
		padding-right: 1em;
	}
	.contact .halfpad-tb {
		padding-top: 0;
		padding-bottom: 0;
	}
	.container_inner>.two_columns_50_50>.column1, .two_columns_50_50>.footer_col3 {
		width: 100%;
	}
	.two_columns_50_50>.footer_col3 {
		margin-top: 2em;
	}
	.two_columns_50_50>.column1 .column1 .column_inner {
		padding-left: 1.35em;
	}
}
@media only screen and (max-width: 767px) {
    .mobileimg {
		display: block;
	}
    .push {
		float: none;
	}
    .justify p {
		text-align: left;
	}
    #down_cta_button, .hidecol {
		display: none;
	}
	.hero.full .section_inner_margin {
		width: 100%;
	}
	section.parallax_section_holder.cover h1,
	.video_section h1, .hero.full h1 {
		font-size: 40px;
	}
	section.parallax_section_holder.cover h2,
	.video_section h2, .hero.full h2 {
		font-size: 20px;
	}
	.halfpad .vc_column-inner {
		padding: 4em 2em;
	}
	.rev_slider h1 {
		font-size: .45em;
	}
}

html .formcraft-css .fc-form .form-element .field-cover.customText-cover h1,
html .formcraft-css .fc-form .form-element .field-cover.customText-cover h2,
html .formcraft-css .fc-form .form-element .field-cover.customText-cover h3,
html .formcraft-css .fc-form .form-element .field-cover.customText-cover h4 {
    line-height: 1.2em;
    font-weight: 300;
    text-transform: capitalize;
}
html .formcraft-css .fc-form .form-element .form-element-html {
	padding-bottom: .5em;
}
html .formcraft-css .fc-form .form-element .submit-cover .submit-button {
	font-size: 1.5em;
}
html .formcraft-css .fc-form .form-page-content {
	padding: 1.5em 0 1em 1.5em;
}
html .contact .formcraft-css .fc-form .form-page-content {
    padding: 1.5em 0 0;
}
html .formcraft-css .fc-form-3 .form-page-content {
	padding: 0;
}
html .formcraft-css .fc-form .form-page-content .form-element-type-customText:first-child {
	margin-top: 0;
}
html .formcraft-css .fc-form .form-page-content .form-element-type-customText:last-child .customText-cover {
	padding-bottom: 0;
}
html .formcraft-css .fc-form .form-page-content .customText-cover .disclaimer p {
    line-height: 12px;
    font-size: 12px;
    padding-bottom: 0.75em;
}
html .formcraft-css .fc-form .form-element .submit-cover .submit-button:hover {
    background-color: #328b44;
}
.customText-cover p {
	line-height: 1.25em !important;
}
.widget.widget_text select {
    border: 1px solid #ddd !important;
    padding: 9px 12px 8px 12px !important;
}
html .formcraft-css .fc-form .form-element .field-cover.customText-cover {
    margin-top: 1em;
}
.wpb_wrapper p {
	margin: .75em 0;
}
.wpb_text_column ul, .wpb_text_column ol {
    list-style-position: outside;
    margin-left: 20px;
}
.latest_post_holder ul {
	margin-left: 0;
}
.wpb_text_column li {
	margin: .5em 0;
}
.footer_top {
	padding: 40px 0;
}
.footer_bottom {
    line-height: 1.25em !important;
    height: auto !important;
}
.steps {
    padding: 20px;
    border: 10px solid rgba(0,40,104,0.21);
    background-color: #ffffff;
}
.steps h3 {
    margin: 0 0 20px;
}
.steps li {
    list-style-type: none;
    margin: 0 0 20px 0 !important;
    padding-left: 70px;
    position: relative;
    min-height: 50px;
    counter-increment: step-counter;
    font-weight: 300 !important;
    font-size: 14px;
    color: #818181;
    text-align: left !important;
}
.steps li:before {
    content: counter(step-counter);
    font-size: 35px;
    line-height: 50px;
    width: 50px;
    height: 50px;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    vertical-align: middle;
    text-align: center;
    font-weight: 900;
    background-color: #002868;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
}
.steps li .outer-container {
    display: table;
    height: 50px;
    overflow: hidden;
}
.steps li .outer-container .inner-container {
    display: table-cell;
    vertical-align: middle;
}
.blog_holder.blog_small_image article .post_text .post_text_inner {
	padding: 0 40px 20px 40px;
}
.blog_holder article .post_text .post_text_inner {
	background-color: transparent;
}
.blog_holder article .post_image {
	margin-bottom: 20px;
}
.post_image .vc_box_shadow_3d:after,
.post_image .vc_box_shadow_3d:before {
    content: "";
    position: absolute;
    -webkit-box-shadow: 0 15px 10px rgba(0,0,0,.6);
    box-shadow: 0 15px 10px rgba(0,0,0,.6);
    left: 5px;
    right: 50%;
    bottom: 8px;
    height: 30%;
    z-index: -1;
    border-radius: inherit;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: skewY(-6deg);
    -ms-transform: skewY(-6deg);
    transform: skewY(-6deg);
}
.post_image .vc_box_shadow_3d:after {
    left: 50%;
    right: 5px;
    -webkit-transform: skewY(6deg);
    -ms-transform: skewY(6deg);
    transform: skewY(6deg);
    -webkit-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0;
}

.qode-advanced-image-gallery .qode-aig-image a,
.qode-advanced-image-gallery .qode-aig-image img {
    margin: 0 auto;
}

@media only screen and (max-width: 768px) {
    .touch .content {
        margin-top: 101px !important;
    }
}
@media only screen and (max-width: 600px){
    .wpcf7-form.cf7_custom_style_1 .two_columns_form_with_space,.wpcf7-form.cf7_custom_style_1 .two_columns_form_with_space .column_left,.wpcf7-form.cf7_custom_style_1 .two_columns_form_with_space .column_right{
        display: block;
        width: 100%;
        padding: 0;
    }

    .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-text{
        margin-bottom: 10px;
    }

    .cf7_custom_style_1 input.wpcf7-form-control.wpcf7-submit{
        width: 100%;
        box-sizing: border-box;
        text-align: center;
    }

}

@media only screen and (min-width: 970px) {
	.mobile {
		display: none;
	}
	.desktop {
		display: block;
	}
}
@media only screen and (max-width: 969px) {
	.desktop {
		display: none;
	}
	.mobile {
		display: block;
	}
}

/* Fix for set content sizes */
@media only screen and (max-width: 1200px) {
	.boxed div.section .section_inner, .carousel-inner .slider_content_outer, .container_inner, .container_inner nav.content_menu, .full_width .parallax_content, .steps_holder_inner, div.grid_section .section_inner, nav.content_menu ul {
		width: 85%;
	}
}

/* blog */
.blog_holder.masonry article .post_text .post_text_inner,
.blog_holder.masonry_full_width article .post_text .post_text_inner {
    background-color: transparent;
}
.blog_holder.masonry_full_width article .time,
body.archive .blog_holder article .time {
    left: 1em;
    margin: 0;
    padding: 5px 15px;
    position: absolute;
    text-align: center;
    top: 1em;
    color: #fff;
    line-height: 22px;
    font-size: 11px;
    z-index: 4;
    border-radius: 50%;
	border: 2px solid #fff;
    width: 50px;
	background-color: rgba(219,0,0,0.90);
}
.blog_holder.masonry_full_width article .time .time_day,
body.archive .blog_holder article .time .time_day {
    font-size: 26px;
    line-height: 26px;
    font-weight: 700;
	color: #fff;
}
.blog_holder.masonry_full_width article .time .time_year,
body.archive .blog_holder article .time .time_year {
    color: #e6e6e6;
}
.blog_holder article .cat {
	margin-bottom: 1em;
}
.blog_holder article .cat a {
	/* color: #2f81fe; */
	display: inline-block;
    padding: .25em 1em;
    background: #28395e;
    border: 1px solid #28395e;
    color: #fff;
    font-size: .8em;
	line-height: 1.25em;
    font-weight: 600;
    border-radius: 30px;
    white-space: nowrap;
    margin: 1em .25em;
	transition: all ease-in-out .25s;
}
.blog_holder article .cat a:hover {
	/* color: #001b44; */
	background: #fff;
    color: #28395e;
	transition: all ease-in-out .25s;
}
.blog_holder.masonry_full_width article .post_image img,
body.archive .blog_holder article .post_image img {
    max-height: 190px;
}
.blog_holder.blog_masonry_date_in_image article .post_text .post_text_inner,
body.archive .blog_holder article .post_text .post_text_inner {
    text-align: left;
    padding: 0 1em;
}
.blog_holder.blog_masonry_date_in_image article .post_text h5,
body.archive .blog_holder article .post_text h5 {
    margin-bottom: .25em;
	font-weight: 400;
}
.blog_holder.blog_masonry_date_in_image article .post_text h5 a,
body.archive .blog_holder article .post_text h5 a {
	color: #28395e;
	transition: color ease-in-out .25s;
}
.blog_holder.blog_masonry_date_in_image article .post_text h5 a:hover,
body.archive .blog_holder article .post_text h5 a:hover {
	color: #db0000;
	transition: color ease-in-out .25s;
}
a.btn-more, .blog_holder article .cat {
    font-size: .75em;
}
p.post_excerpt {
    margin-bottom: 1em;
    font-size: .95em;
}
a.btn-more, a.btn-more .q_font_awsome_icon i {
    color: #db0000;
	transition: color ease-in-out .25s;
}
a:hover.btn-more, a:hover.btn-more .q_font_awsome_icon i {
    color: #28395e;
	transition: color ease-in-out .25s;
}
a.btn-more, .blog_holder article .cat {
	font-weight: bold;
	text-transform: uppercase;
}
.blog_holder article .post_image {
    max-height: 400px;
    overflow: hidden;
}
body.blog .content .container .default_template_holder, body.single .content .container .default_template_holder, body.archive .content .container .default_template_holder, body.page-template-blog-masonry-full-width-date-in-image .full_page_container_inner {
    padding-top: 6em;
}

#cooler-nav{clear: both; overflow: hidden; margin: 0; background: #a1abbe; padding: 1.5em;}
#cooler-nav .nav-box{background: #fff; padding:1em 1.5em 1.5em;}
#cooler-nav img{float: left; margin: 0 1em 0 0;}
#cooler-nav h5{margin: 0 0 .5em 0;}
#cooler-nav p{margin: 0 1em; font-size: 12px; vertical-align: middle;}
#cooler-nav .previous{float: left; vertical-align: middle; width: 250px;}
#cooler-nav .next{float: right; width: 250px;}
