/*
Theme Name: OSF
Author: Imaginary Landscape
Author URI: http://www.imagescape.com
Version: 2.0
*/

@media screen and (max-width: 600px) {
  #wpadminbar {
    position: fixed!important; /* Fixes bug at small width */
  }
}

/* -- GENERAL -- */
body {
  font-size: 16px;
}
p, li {
	line-height: 1.4em;
	margin-bottom: 16px;
}
table {
  font-size:12px;
text-align:left;
border-collapse:collapse;
border:1px solid #dedede;
width:100%;
-moz-box-shadow:1px 1px 8px #ccc;
-webkit-box-shadow:1px 1px 8px #ccc;
box-shadow:1px 1px 8px #ccc;
margin-bottom:1.6em;
}
table th, table td {
  width: auto;
}

table thead tr th{
font-weight:bold;
padding:5px;
border-collapse:collapse
}

table td{
color:#6C8CA1;
padding:5px
}

table tr:nth-child(even){
background-color:#EAF5F9
}

img.alignleft, img.alignright {
  background: #fff;
  border: 1px solid #CCC;
  box-shadow: 1px 1px 8px #CCC;
  display: inline-block;
  margin: 4px 0px 8px;
  padding: 8px;
}
img.alignleft {
  float: left;
  margin-right: 20px;
}
img.alignright {
  float: right;
  margin-left: 20px;
}
div.wp-caption {
  border: 1px solid #CCC; 
  box-shadow: 1px 1px 8px #CCC;
  box-sizing: border-box;
  margin-bottom: 8px;
  margin-top: 4px;
  padding: 8px;
}
div.alignleft {
  float: left;
  margin-right: 20px;
}
div.alignright {
  float: right;
  margin-left: 20px;
}
h1.entry-title {
  border-bottom: none;
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 4px;
}
h1.entry-title a {
  color: inherit;
  text-decoration: none!important;
}
h2, .entry-title {
  overflow: hidden;
	font-size: 20px;
}
.post-edit-link {
  display: none;
}
.entry-meta {
  color: #777;
  font-style: italic;
  margin-bottom: .8em;
}
#main-nav ul {
  font-size: 16px;
}
#main-nav div > ul > li.no-menu-hierarchy li a {
  font-size: inherit;
  width: 198px;
}
#main-nav div > ul > li.no-menu-hierarchy > ul {
  columns: 4 200px;
  display: block;
}


/* -- REMOVE DEFAULT WIDGET HEADINGS -- */
form#searchform.searchform>div>label.screen-reader-text, li#s2_form_widget-2.widget-container.s2_form_widget > div.search > form > p > label {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px; width: 1px;
  margin: -1px; padding: 0; border: 0;
}
#searchform {
  clear: both;
  float: right;
  margin-top: 10px;
  position: relative;
  width: 280px;
}
#searchform #s {
  border: 1px solid #ccc;
  box-sizing: border-box;
  font-size: 18px;
  height: 36px;
  padding: 2px 34px 0 8px;
  width: 100%;
}
#searchform #s::placeholder {
  color: #008bbf;
  font-weight: bold;
}
#searchform #searchsubmit {
  background: url('magnifying.png') no-repeat center center;
  position: absolute;
  width: 34px;
  height: 34px;
  right: 1px;
  top: 1px;
  text-indent: -9999px;
}
#searchform #searchsubmit:focus {
  outline: 1px dotted;
}
@media screen and (max-width: 480px){
  #searchform {
    width: 180px;
  }
  #searchform #s {
    font-size: 14px;
    height: 23px;
    padding-right: 24px;
  }
  #searchform #searchsubmit {
    height: 21px;
    width: 24px;
  }
}

/* -- WRAPPER -- */

@media screen and (min-width: 800px) {
  #main-nav-row {
    background-image: url('blue_fractals_blog.png');
    background-position: top right;
    background-repeat: no-repeat;
  }  
}
#wrapper {
  display: flex;
  flex-direction: column;
  padding: 20px;
}
#phone-social {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#social p {
  float: right;
}
#content, #blog-sidebar {
  flex: 1;
  padding: 0;
}
#content {
  margin-left: 0;
}
#main-nav div > ul {
  text-transform: none;
}
#footer-legal {
  background: #6e3527;
  color: #fff;
  position: relative;
}
@media screen and (min-width: 680px) {
  #wrapper {
    flex-direction: row;
  }
  #blog-sidebar {
    margin-left: 25px;
    max-width: 250px;
  }
}


/* -- SIDEBAR -- */
.widget-container {
  border-color: #cce8f3;
  border-style: solid;
  border-width: 0px 1px 1px;
  list-style-type: none;
  margin-bottom: 20px;
}
.widget-container input {
  margin: 8px;
}
.widget-container input[type=submit] {
  margin-top: 0;
}
.widget-container p {
  margin: 8px;
}
.widget-container ul {
  list-style-type: disc;
  margin: 12px;
  padding-left: 12px;
}
.widget-container ul li {
  overflow: visible;
}
.widget-container ul li a {
  font-weight: bold;
}
.widget-container h3,
.widget-container label {
  background-color: #cce8f3;
  color: inherit;
  display: block;
  font-size: 16px;
  margin: 0px;
  padding: 6px;
}
.widget-container.s2_form_widget {
  background: #f8911d;
  border: none;
  color: #fff;
}
.widget-container.s2_form_widget h3 {
  background: inherit;
}
.widget-container.s2_form_widget a {
  color: inherit;
  text-decoration: underline;
}
.s2_form_widget .search,
.s2_form_widget .search p {
  overflow: hidden;
}
.s2_form_widget .search input {
  border: none;
  font-weight: bold;
  margin: 0;
  padding: .5em;
}
.s2_form_widget .search input[type=text] {
  box-sizing: border-box;
  color: #f8911d;
  width: 100%;
}
.s2_form_widget .search input[type=submit] {
  background: #008bbf;
  color: #fff;
  float: right;
  transition: background-color .1s linear;
}
.s2_form_widget .search input[type=submit]:focus,
.s2_form_widget .search input[type=submit]:hover {
  background-color: #00587c
}
.s2_form_widget .search br {
  display: none;
}
.widget-container.widget_nav_menu {
  border: none;
}
.widget_addthis_tool_by_class_name_widget {
  border: none;
}
.widget_addthis_tool_by_class_name_widget h3 {
  display: none;
}
.widget-container #social {
  float: none;
  padding: .5em .25em;
  text-align: center;
}
.widget-container #social a {
  display: inline-block;
  float: none;
  height: 32px;
  width: 32px;
  line-height: 32px;
  margin: 0 2px;
  text-align: center;
  transition: background-color .1s linear;
  vertical-align: middle;
}
.widget-container #social a:before {
  font-size: 22px;
}
@media screen and (min-width: 680px) {
  .widget_addthis_tool_by_class_name_widget .at-resp-share-element .at-share-btn {
    clear: left!important;
    float: left;
    margin-bottom: 0!important;
  }
  .widget_addthis_tool_by_class_name_widget .at-resp-share-element .at-share-btn .at-label {
    display: none;
  }
}
#menu-side-nav-1 {
  font-size: 15px;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
#menu-side-nav-1 li {
  margin-bottom: 4px;
}
#menu-side-nav-1 a {
  background-color: #008bbf;
  color: #fff;
  display: block;
  font-weight: bold;
  padding: .25em .5em;
  text-decoration: none;
  transition: background-color .1s linear;
}
#menu-side-nav-1 a:focus,
#menu-side-nav-1 a:hover {
  background-color: #00587c
}


/* -- HOMEPAGE -- */
#intro {
  background: #e6f4f9;
  margin-bottom: 10px;
  padding: 20px;
}
#intro h1 {
  color: inherit;
  font-size: 1.3em;
}
#hero {
  margin: 0 0 20px;
}
#hero h2 {
  border: none;
  color: inherit;
	font-size: 20px;
  font-weight: bold;
  margin: 0 0 .25em;
}
#hero a {
  color: inherit;
  display: block;
  position: relative;
  text-decoration: none;
}
#hero a:focus .overlay,
#hero a:hover .overlay {
  background: #008bbf;
  color: #fff;
}
#hero img {
  display: block;
  width: 100%;
}
#hero .overlay {
  background: rgba(255,255,255,.7);
  margin: 0;
  padding: 1em;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transition: .2s all linear;
}
#hero h3 {
  margin: 0;
}
#hero p {
  margin: 0;
}
#hero .mobile {
  display: none;
}
#entry-cards {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
}
.entry-card {
  box-sizing: border-box;
  flex: 1 auto;
  padding: 10px;
  max-width: 33.3%;
}
.entry-card a {
  background: #e6f4f9;
  color: inherit;
  display: block;
  height: 100%;
  text-decoration: none;
  transition: .1s all linear;
}
.entry-card a:focus,
.entry-card a:hover {
  background-color: #008bbf;
  color: #fff;
}
.entry-card img {
  width: 100%;
}
.entry-card h3 {
  color: inherit;
  margin: 0 0 .25em;
	font-size: 16px;
}
.entry-card .date {
  color: inherit;
  font-size: 14px;
  margin: 0;
}
.entry-card .entry-content {
  padding: 1em;
}
@media screen and (max-width: 800px) {
  .entry-card {
    max-width: 50%;
  }
}
@media screen and (max-width: 360px) {
  #hero {
    margin-bottom: 10px;
  }
  #hero .overlay {
    background: #e6f4f9;
    font-size: 12px;
    position: static;
  }
  #hero .overlay h2 {
    font-size: 20px;
  }
  #hero .full {
    display: none;
  }
  #hero .mobile {
    display: block;
  }
  #entry-cards {
    flex-direction: column;
  }
  .entry-card {
    max-width: 100%;
  }
}

.page-load-status {
  margin-top: 20px;
  text-align: center;
}
#nav-below {
  font-size: 16px;
  text-align: center;
}
#nav-below a {
  background: #f89422;
  color: #fff;
  display: inline-block;
  font-weight: 500;
  margin: 40px 0;
  padding: .75em 1.5em;
  text-decoration: none;
  transition: .1s background-color ease-in-out;
}
#nav-below a:focus, #nav-below a:hover {
  background: #d57d19;
}

/* -- ENTRY PAGE -- */
.entry-header {
}
.entry-header a {
}
.entry-header img {
  margin-bottom: 30px;
}
.addthis_tool {
  margin-bottom: 1em;
}
.entry-content {
  overflow: hidden;
}
.entry-footer {
  clear: both;
  font-size: 14px;
  margin: 20px 0;
}
.entry-footer a {
  text-transform: none;
}

/* -- AUTHOR PROFILES -- */
img.profile {
  border: 1px solid #70382D;
  float: right;
  margin: 0 0 1em 1em;
  height: 200px;
}

.author-description {
	border: 1px solid #73a333;
    margin-bottom: 20px;
}

.author-title {
	/*background-color: #cce8f3;*/
    padding: 5px 10px;
    color: #425768;
    border: 0px solid;
    font-weight: bold;
	font-size: 16px;
	margin-top: 10px;
	margin-bottom: 0px;
}

.author-bio {
	padding: 10px;
}

.author-bio br {
	display: block;
    margin-top: 10px;
    content: " ";
}


/* -- COLUMNS -- */

div.columns{
	width:100%
}

div.col2{
	width:46%;
	display:inline-block;
	vertical-align:top;
	padding:0 10px 10px 0
}
div.col3{
	width:30%;
	display:inline-block;
	vertical-align:top;
	margin-right:4%;
	padding-bottom:10px
}

div.col3 img{
	text-align:center
}
div:last-child.col3{
	margin-right:0
}

@media screen and (max-width: 799px) {
.widget_nav_menu, .menu-item {
	display: none;	
}

#main-nav .side-nav-mobile {
	display: block;
}
}

@media screen and (min-width: 800px) {
#main-nav .side-nav-mobile {
	display: none;	
}
}

article.fpw-layout-banner h2:after {
    content: "Featured Post";
	display: block;
	color: inherit;
	font-weight: normal;
    font-size: 14px;
    margin: 0;
}

.cta {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
    background: #EBF0E3;
    display: inline-block;
    margin-bottom: 20px !important;
    width: 27%;
    padding: 27px;
	
}



@media screen and (max-width: 875px) {
  .cta {
    width: 80%;
    margin: 0 auto 20px auto !important;
    display: block;
    float: none !important;
  }
}


.cta>p {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
	margin: 0;
    font-size: 22px;
    color: #578300;
	word-break: break-word;
	hyphens: auto;
}

.cta p a {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
    font-size: 18px;
    padding-top: 15px;
    display: block;
    color: #578300 !important;
}

.tweeter {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
	padding: 27px 0 54px;
}

.tweeter p.tweet {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
    margin: 0;
    font-size: 25px;
    color: #578300 !important;
}

.tweeter a.tweet {
	font-family: 'Montserrat', PTSansRegular, Arial, Helvetica, sans-serif;
	color: #578300 !important;
	cursor: pointer; 
}

.tweeter i:before {
    content: "\e908";
    color: #578300;
    font-size: 22px;
    font-family: 'icomoon'!important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}