/*
Theme Name: Freedom Oklahoma
Theme URI: http://www.freedomoklahoma.org

Version: 1.0
Description: Original responsive design for Freedom Oklahoma.

Author: Olive Digital
Author URI: http://www.olive.digital

*************************************************************************************/

html {
    -webkit-text-size-adjust: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
}

body {
	padding: 0;
	margin: 0;
	background-color: #fff;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1;
	color: #666;
	font-family: 'brandon-grotesque';
}

body * {
	transition:
		color .25s ease,
		background-color .25s ease,
		opacity .25s ease,
		box-shadow .25s ease;
	-webkit-transition:
		color .25s ease,
		background-color .25s ease,
		opacity .25s ease,
		box-shadow .25s ease;
	-moz-transition:
		color .25s ease,
		background-color .25s ease,
		opacity .25s ease,
		box-shadow .25s ease;
	-ms-transition:
		color .25s ease,
		background-color .25s ease,
		opacity .25s ease,
		box-shadow .25s ease;
}

img { border: 0 !important }

.show { display: none !important }

.clear { clear: both !important; width: 100%; }


/** HEADER **/

header {
	padding: 2em;
	background-color: #fff;
	position: relative;
	z-index: 1000;
}

header .logo {
	display: block;
	width: 9em;
	height: auto;
	-moz-transition: all .5s;
	-webkit-transition: all .5s;
	transition: all .5s;
}

header.bsdheader .logo {
	margin: 0 auto;
}

header .logo img {
	display: block;
	width: 9em;
	height: auto;
}

header .logo:hover {
	display: block;
	width: 9em;
	height: auto;
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

header .updates {
	background-color: #cbe6ff;
	padding: .75em;
	font-size: 1em;
	position: absolute;
	top: 0;
	right: 2em;
	border-bottom-left-radius: .15em;
    border-bottom-right-radius: .15em;
}

header .updates input {
	font-family: 'brandon-grotesque';
	background-color: #fff;
	color: #017bc1;
	font-size: 1em;
	padding: .5em .75em;
	margin: 0;
	border: 0;
	float: left;
	border-radius: .25em;
	margin-right: .75em;
}

::-webkit-input-placeholder { line-height: normal; color: #81b5e1 }
:-moz-placeholder { line-height: normal; color: #81b5e1 }
::-moz-placeholder { line-height: normal; color: #81b5e1 }
:-ms-input-placeholder { line-height: normal; color: #81b5e1 }


header .updates input:nth-child(1) { width: 13em }
header .updates input:nth-child(2) { width: 6em }

header .updates input[type=submit] {
	font-weight: 600;
	padding: .5em 1em;
	background-color: #017bc1;
	color: #fff;
	cursor: pointer;
	float: left;
	margin: 0;
}

header .nav {
	position: absolute;
	border: 0;
	right: 2em;
	bottom: 2em;
	padding: 0;
	margin: 0;
}

header .nav li {
	display: block;
	float: left;
}

header .nav li a {
	line-height: 1;
	padding: .75em 1em;
	text-decoration: none;
	color: #017bc1;
	font-weight: 600;
	position: relative;
	display: block;
}

header .nav a:hover {
	color: #f0502a
}

header .nav .drop_arrow:hover a {	
	background-image: url('/images/drop.png');
	background-size: .6em .4em;
	background-repeat: no-repeat;
	background-position: center bottom;
}

header .nav li.social a img {
	display: block;
	height: 1em;
	width: auto;
}

header .nav li.social:hover a img {
	opacity: .75
}

header .nav li.callout a {
	background-color: #f0502a;
	color: #fff;
	margin-left: 1em;
	border-radius: .25em;
}

header .nav li.callout a:hover {
	background-color: #f1755d
}

header .nav li .drop {
	display: none;
	position: absolute;
	border-radius: .25em;
}

header .nav li:hover .drop {
	display: block;
}

header .nav li .drop a {
	background-image: none !important;
	display: block;
	background-color: #017bc1;
	float: none;
	color: #fff;
}

header .nav li .drop a:hover {
	background-color: #138dd3
}

header .nav li .drop a:first-child {
	border-top-left-radius: .15em;
    border-top-right-radius: .15em;
}

header .nav li .drop a:last-child {
	border-bottom-left-radius: .15em;
    border-bottom-right-radius: .15em;
}

/** FOOTER **/

footer {
	background-color: #017abf;
	color: #fff;
}

footer .contact {
	background-color: #006fae;
	padding: 1.2em;
	text-align: center;
}

footer .content {
	padding: 2em;
	display: table;
	width: 100%;
}

footer .bullet {
	display: inline-block;
	padding: 0 .5em;
	color: #cbe6ff;
	font-weight: 600;
}

footer a {
	color: #fff;
	text-decoration: none
}

footer a:hover {
	color: #cbe6ff;
	text-decoration: underline
}

footer .logos {
	display: table-cell;
	vertical-align: middle;
}

footer .logos .logo {
	display: block;
	height: 4em;
	float: left;
	margin-right: 3em;
}

footer .text {
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	line-height: 2
}

/** FEATURE **/

section.feature {
	background-color: #017bc1;
	position: relative;
	z-index: 1;
}

section.feature * {
	z-index: 1
}

section.feature .container {
	max-width: 1400px;
	margin: 0 auto;	
}

section.feature .container img {
	display: block;
	max-width: 100%
}

section.feature .easingsliderpro-arrows.easingsliderpro-prev,
section.feature .easingsliderpro-arrows.easingsliderpro-next {
    top: -moz-calc(50% - 1em) !important;
    top: -webkit-calc(50% - 1em) !important;
    top: calc(50% - 1em) !important;
    width: 2em;
    height: 2em;
    background-repeat: no-repeat;
    background-size: cover;
}

.easingsliderpro-next.inside { right: 1em !important }
.easingsliderpro-prev.inside { left: 1em !important }

.easingsliderpro-arrows.easingsliderpro-prev {
    background-image: url('/images/slideshow_arrow_prev.png') !important;
    background-position: top right;
    border-radius: .25em;
}

.easingsliderpro-arrows.easingsliderpro-next {
    background-image: url('/images/slideshow_arrow_next.png') !important;
    background-position: top right;
    border-radius: .25em;
}

/** ACTION BAR **/

section.connect {
	background-color: #f0502a
}

section.connect .container {
	max-width: 1400px;
	margin: 0 auto;
	display: table;
}

section.connect a {
	display: table-cell;
	vertical-align: middle;
	color: #ffc6b8;
	text-decoration: none;
	padding: 1em 3em;
	font-size: 1.2em;
}

section.connect a b {
	color: #fff;
	font-weight: 600;
}

section.connect a img {
	display: block;
	float: left;
	height: 1em !important;
	width: auto;
	margin-right: .5em;
}

section.news {
	max-width: 1400px;
	padding: 2em;
	margin: 0 auto;
	overflow: auto
}

.column1 {
	width: 70%;
	padding-right: 2em;
	border-right: 1px solid #cbe6ff;
	float: left;
}

.page.wide .column1 {
	width: 100%;
	padding-right: 0;
	border-right: 0;
	float: none
}

.column2 {
	width: 30%;
	padding-left: 2em;
	float: left
}

section.news .pledge_logo {
	display: block;
	margin: 0 auto 2em;
	max-width: 80%;
}

form.pledge {
	display: block;
	border-radius: .25em;
	background-color: #cbe6ff;
	padding: 1em;
}

form.pledge input {
	width: 100%;
	display: block;
	font-family: 'brandon-grotesque';
	background-color: #fff;
	color: #017bc1;
	font-size: 1em;
	padding: .5em .75em;
	margin: 0;
	border: 0;
	border-radius: .25em;
	margin-bottom: .25em;
}

form.pledge input[type=submit] {
	font-weight: 600;
	padding: .5em 1em;
	text-transform: uppercase;
	background-color: #017bc1;
	color: #fff;
	cursor: pointer;
	margin: .75em 0 0 0;
}

.action_button {
	display: block;
	margin-bottom: .25em;
	padding: .75em 0;
	color: #cbe6ff !important;
	text-decoration: none;
	background-color: #017bc1;
	border-radius: .25em;
	text-align: center;
	font-size: 1.2em;
}

.action_button b { color: #fff !important }

.action_button.report {
	color: #ffc6b8 !important;
	background-color: #f0502a
}

section.programs {
	background-color: #cbe6ff;
}

section.programs .container {
	padding: 2em 1em;
	max-width: 1400px;
	overflow: auto;
	margin: 0 auto;
}

section.programs .program {
	display: block;
	float: left;
	width: -moz-calc(33.33% - 2em);
	width: -webkit-calc(33.33% - 2em);
	width: calc(33.33% - 2em);
	padding-top: 20%;
	margin: 0 1em;
	background-color: #fff;
	border-radius: .25em;
	background-size: cover;
	background-position: center center
}

section.about {
	background-color: #017bc1;
	background-image: url('/images/about.png');
	background-size: cover;
}

section.about .container {
	padding: 4em 1em;
	max-width: 1400px;
	overflow: auto;
	margin: 0 auto;
	text-align: center
}

section.about .title {
	font-size: 1.4em;
	color: #fff;
	display: block;
	margin: 0 auto;
	text-align: center;
	font-weight: 600;
	text-shadow: 0 0 1em #006fae;
}

section.about .text {
	font-size: 1.2em;
	color: #cbe6ff;
	display: block;
	margin: 1em auto;
	line-height: 1.4;
	max-width: 70%;
	text-align: center;
	text-shadow: 0 0 1em #006fae;
}

section.about b {
	font-size: 1em;
	color: #fff;
	display: block;
	line-height: 1;
	margin: 1em auto;
	max-width: 70%;
	text-align: center;
	text-shadow: 0 0 1em #006fae;
	text-transform: uppercase
}


section.about .button {
	display: inline-block;
	padding: .75em .75em;
	color: #fff;
	text-decoration: none;
	background-color: #f0502a;
	border-radius: .25em;
	text-align: center;
	font-size: 1.2em;
	margin: 0 .25em;
	font-weight: 600;
}

section.press {
	max-width: 1400px;
	padding: 2em;
	margin: 0 auto;
	overflow: auto
}

section.press .column1 {
	width: 70%;
	padding-right: 2em;
	border-right: 1px solid #cbe6ff;
	float: left;
}

section.press .column2 {
	width: 30%;
	padding-left: 2em;
	float: left
}

section.press .column2 .text {
	display: block;
	text-align: center;
	margin-top: 1em;
	line-height: 1.4;
	color: #f0502a;
}

section.press .column2 .text a {
	color: #017bc1;
	text-decoration: none;
}

section.press .column2 .text a:hover {
	color: #017bc1;
	text-decoration: underline;
}


/** CONTENT **/

.bar {
	width: 100%;
	background-image: url(/images/blue.png);
	background-size: 100% 1px;
	background-repeat: no-repeat;
	background-position: center center;
	text-align: center;
	margin: 2em 0;
}

.bar img { display: block; margin: 0px auto; width: auto !important; height: 1em !important }

.section_title {
	border-bottom: 1px solid #cbe6ff;
	padding-bottom: .5em;
}

.section_title b {
	font-size: 1.4em;
	color: #017bc1
}

.section_title a {
	display: block;
	float: right;
	color: #f0502a;
	text-decoration: none;
}

.section_title a:hover {
	color: #f1755d;
	text-decoration: underline;
}

.news_list {
	display: block;
	padding: 0;
	margin: 0;
}

.news_list li {
	display: block;
	padding: 0;
	margin: 0;
	border-bottom: 1px solid #cbe6ff;
}

.news_list li:last-child { border: 0 }

.news_list li:last-child a { padding-bottom: 0; overflow: hidden }

.news_list li a {
	display: block;
	overflow: auto;
	padding: 1.5em 0;
	color: inherit;
	text-decoration: none
}

.news_list li a:hover {
	opacity: .7;
	color: inherit
}

.news_list li a .thumbnail {
	width: 28%;
	padding-top: 20%;
	background-image: url('/images/logo_place.png');
	background-size: cover;
	background-position: center center;
	background-color: #cbe6ff;
	border-radius: .25em;
	float: left;
	position: relative;
}

.news_list li a .thumbnail div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
}

.news_list li a .news_text {
	width: 72%;
	padding-left: 1em;
	float: left;
}

.news_list.alt li a .news_text {
	width: 100%;
	padding-left: 0;
	float: none;
}

.news_list li a .news_text .title {
	font-size: 1.2em;
	line-height: 1.2;
	display: block;
	color: #017bc1;
}

.news_list li a .news_text .subtitle {
	line-height: 1;
	font-weight: 600;
	color: #f0502a;
	font-size: .8em;
	display: block;
	margin: 1em 0 .8em;
}

.news_list.alt li a .news_text .subtitle {
	margin: 1em 0 0 0;
}

.news_list li a .news_text .excerpt {
	line-height: 1.4;
	display: block;
}

/** PAGE AND SINGLE **/

.page_container {
	background-color: #cbe6ff;
	padding: 2em;
}

.page {
	background-color: #fff;
	border-radius: .25em;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 2em;
	overflow: auto;
}

.page.wide {
	max-width: 800px;
}

.page .title {
	font-size: 1.6em;
	line-height: 1.2;
	display: block;
	color: #f0512a;
	font-weight: 600;
}

.page .subtitle {
	line-height: 1;
	color: #017bc1;
	font-size: 1em;
	font-weight: 600;
	display: block;
	margin: 1em 0 2em;
}

.page span.text {
	line-height: 1.4;
	display: block;
	font-size: 1.2em;
}

.page a {
	color: #f0512a;
}

.page a:hover {
	color: #f1755d;
	text-decoration: none;
}

.page p {
	margin: 1em 0
}

.page blockquote {
	display: block;
	margin: 1.5em 2em;
	padding: .5em 0 .5em 1.5em;
	border-left: 1px solid #f0512a
}

.page blockquote p {
	margin: 0;
	color: #017bc1;
	font-size: 1.2em;
	font-style: italic;
}

.page hr {
	margin: 2em 0;
	height: 1px !important;
	border: 0;
	background-color: #cbe6ff
}

.page .share {
	font-weight: 600;
	color: #f0512a;
	font-size: 1.2em;
	display: block;
	margin-bottom: 1em;
}

.page .thumbnail {
	width: 100%;
	padding-top: 71%;
	background-size: cover;
	background-position: center center;
	background-image: url('/images/logo_place.png');
	background-color: #cbe6ff;
	border-radius: .25em;
	position: relative;
}

.page .thumbnail div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center center;
}

.page .column2 .excerpt {
	display: block;
	font-size: .8em;
	margin-top: 1em;
	line-height: 1.4;
}

.page .column2 .excerpt b {
	color: #f0512a
}

.page h1,
.page h2,
.page h3,
.page h4 {
	font-size: 1.2em;
	line-height: 1.2;
	display: block;
	color: #f0512a;
	font-weight: 600;
	margin: 1.5em 0 1em;
}

.page h2 {
	color: #017bc1	
}

.page h3 {
	font-size: 1em;
}

.page h4 {
	font-size: 1em;
	color: #017bc1	
}

.logos_array {
	text-align: center; background-color: #fff;
}

.logos_array img {
	width: 32%;
	padding: 1em;
	display: inline-block;
}

.logo_image {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 3em;
    -moz-column-gap: 3em;
    column-gap: 3em;
    font-size: 1em;
    line-height: 1.5;
    margin: 2em 0;
    padding: 0;
    text-align: center;
}

.columns ul {
	margin: 0;
	padding: 0;
	display: block;
}
	
.columns ul li {
	display: block;
	break-inside: avoid-column;
	padding: 0;
	margin: 0 0 1em 0;
	-webkit-column-break-inside: avoid;
	color: #f0512a;
}
	
.columns ul li:nth-child(2n) {
	color: #017bc1;
}

.sidebar_logo {
	display: block;
	width: 100%;
	max-width: 80%;
	margin: 0 auto
}

.category_nav {
	margin-top: 2em;
	text-align: center;
	line-height: 1;
}

.prev,.next,.page-numbers {
	display: inline-block;
	font-size: 1em;
	width: auto;
	font-weight: 600;
	padding: .75em 1em;
	color: #fff !important;
	text-decoration: none;
	text-transform: uppercase;
	background-color: #017bc1;
	border-radius: .25em;
	margin: 0 .25em
}

.current {
	background-color: #f0512a !important;
	color: #fff
}

.prev:hover,.next:hover,.page-numbers:hover:not(.dots) {
	background-color: #409cd0;
	color: #fff !important
}