/*
Theme Name: Opti
Theme URI: https://wordpress.com/theme/opti/
Description: An elegant magazine theme for WordPress, with a responsive design, and support for widgets, post thumbnails, custom headers and custom backgrounds.
Version: 1.8
Author: Pro Theme Design
Text Domain: opti
Domain Path: /languages/
Author URI: https://prothemedesign.com
Status: inactive
Tags: black, blog, blue, business, classic-menu, clean, conservative, contemporary, custom-background, custom-colors, custom-header, custom-menu, dark, elegant, featured-images, flexible-header, full-width-template, infinite-scroll, magazine, modern, multiple-menus, news, professional, responsive-layout, right-sidebar, site-logo, sophisticated, theme-options, translation-ready, two-columns
Product: bIBAl

License: GNU General Public License v2.0 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/* ---------- @ HTML Tags -----------*/
* {
  margin: 0;
  padding: 0;
  outline: none;
}

body,
html {
  min-height: 101%;
  /*Firefox scrollbar fix*/
}

body {
  background: #ffffff;
  color: #111;
  font-family: 'Helvetica Neue', Arial, sans-serif;
}

a, a:visited {
  color: #1899CB;
  text-decoration: none;
}

a:hover, a:active {
  color: #127ea8;
}

.container a,
.container a:hover,
.container a:focus,
.container a:hover,
.container li,
.container li:hover,
.container input,
.container input:hover {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

p {
  margin: 16px 0;
  line-height: 1.5;
}

img {
  box-sizing: border-box;
}

hr {
  display: block;
  height: 1px;
  background: #CCC;
  border: 0;
  color: #CCC;
}

table {
  border-collapse: collapse;
  width: 100%;
  margin: 16px 0;
}

th,
td {
  padding: 4px 8px;
  border-bottom: 1px solid #CCC;
}

tr {
  background: #eeeeee;
}

table caption {
  background: #ffffff;
  padding: 2px 0;
}

blockquote {
  color: #666666;
  padding: 0 16px;
  margin: 24px 40px;
  border-left: 4px solid #CCC;
  font-size: 1em;
  letter-spacing: 0.05em;
}

/* ---------- @ Structure -----------*/
.wrapper {
  max-width: 1140px;
  margin: 0 auto;
  overflow: hidden;
  clear: both;
  background: #ffffff;
}

#main {
  padding: 16px 0 32px;
  clear: both;
}

#main, .searchform, #nav {
  margin: 0 20px;
}

#masthead {
  background: #293033;
  color: #ffffff;
  text-align: center;
}

#branding {
  padding: 28px 0 20px;
}

#masthead a.custom-logo-link,
#masthead a.site-logo-link {
  width: 72px;
  margin-top: 20px;
  display: inline-block;
  border: none;
  text-decoration: none;
}

.left, .older {
  float: left;
}

.right, .newer {
  float: right;
}

/* ---------- @ Nav -----------*/
/*Mobile*/
#nav-mobile-pages {
  display: none;
}

/* Navigation */
.menu {
  clear: both;
}

.nav {
  line-height: 1.0;
  zoom: 1;
  font-size: 0.9em;
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
}

.nav li {
  float: left;
  position: relative;
  padding: 0;
  margin: 0;
}

.nav a {
  padding: 8px 16px;
  display: block;
  position: relative;
  border: none;
}

.nav:hover a {
  color: #666666;
}

.nav ul {
  position: absolute;
  top: 100%;
  width: 200px;
  padding: 0;
  margin: 0;
  z-index: 199;
  display: none;
  left: 0;
  border-top: 0;
  border: 1px solid #cccccc;
  border-radius: 4px;
  background: #eeeeee;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#eeeeee));
  background: linear-gradient(#ffffff, #eeeeee);
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  text-align: left;
}

.nav ul li {
  float: none;
  display: block;
  width: 200px;
  position: relative;
  text-transform: uppercase;
  font-weight: bold;
}

.nav ul li a {
  color: #111;
  text-shadow: none;
}

.nav ul li a:hover {
  background-color: #eeeeee;
}

.nav ul ul {
  left: 100%;
  top: -1px;
  position: absolute;
}

.nav .has-children {
  position: relative;
  padding-right: 24px !important;
}

.nav .has-children:after {
  background: url("images/arrow_nav.png") no-repeat right;
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  right: 12px;
  top: 4px;
  content: '';
}

.nav .sub-menu .has-children:after {
  background-image: url("images/arrow_child.png");
  top: 4px;
}

#nav-primary .home span.genericon-home {
  font-size: 24px;
}

#nav-primary .home a {
  /* Use non power of 4 for padding so that the icon can remain a nice size
	and be consistent with the other menu items. */
  padding: 7px 12px;
  color: currentColor;
}

/* main navigation */
#nav-primary {
  border-top: 1px solid #000000;
  box-shadow: inset 0 2px 0 -1px rgba(255, 255, 255, 0.1);
  background: url(images/bg_nav.png);
  min-height: 36px;
}

#nav-primary a {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
  padding: 12px 20px;
}

#nav-primary .has-children:after {
  top: 8px;
}

#nav-primary .sub-menu .has-children:after {
  top: 6px;
}

#nav-primary li {
  border-right: 1px solid #111111;
  border-left: 1px solid #333333;
  text-transform: uppercase;
  font-weight: bold;
}

#nav-primary li:hover, #nav-primary li.current-cat {
  outline: 0;
  color: #ffffff;
  text-decoration: none;
  background-color: #293033;
}

#nav-primary li li a {
  color: #111;
  text-shadow: none;
  padding: 8px 20px;
  font-size: 0.8em;
}

#nav-primary .current-menu-item {
  background-color: #111111;
  color: #000000;
}

#nav-primary .current-menu-item > a,
#nav-primary .current-cat > a {
  border-top: 4px solid #1899cb;
  margin-top: -4px;
}

#nav-primary li li.current-menu-item {
  background-color: inherit;
  color: inherit;
}

#nav-primary li li.current-menu-item > a {
  border-top: none;
  margin-top: 0;
}

/* secondary nav */
#nav-lower {
  float: none;
  padding: 4px 0 4px 0;
  border-bottom: 1px solid #cccccc;
}

#nav-lower .nav {
  padding: 0 12px;
  font-size: 0.8em;
}

#nav-lower li {
  border-radius: 4px;
}

#nav-lower li a {
  color: #333333;
  padding: 8px 16px;
  border-radius: 4px;
}

#nav-lower .nav > li:hover {
  background-color: #cccccc;
}

#nav-primary li li,
#nav-lower li li {
  border: transparent;
  border-bottom: 1px solid #cccccc;
  border-top: 1px solid #ffffff;
  border-radius: 0;
}

#nav-primary ul li li:hover,
#nav-lower ul li li:hover {
  background-color: #eeeeee;
}

#nav-primary li li:first-child,
#nav-lower li li:first-child {
  border-top: none;
}

#nav-primary li li:last-child,
#nav-lower li li:last-child {
  border-bottom: none;
}

/* ---------- @ Headers -----------*/
a#header-image {
  border-bottom: none;
  line-height: 0;
  display: block;
}

h1, h2, h3, h4, h5,
.headlines a, nav,
.postmetadata,
.wp-caption {
  font-family: "Merriweather", Georgia, serif;
}

h1, h2, h3, h4, h5 {
  letter-spacing: 0.02em;
  line-height: 1.2;
}

h1 {
  font-size: 2.8em;
}

h1.pagetitle {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 16px;
  margin-bottom: 16px;
  font-size: 1.6em;
}

h1.posttitle {
  font-size: 1.75em;
  letter-spacing: -1px;
}

h1.pagetitle,
h1.posttitle {
  margin-top: 4px;
}

h2 {
  font-size: 2.4em;
}

h2#description {
  font-weight: normal;
  font-size: .7em;
  color: #95A0A4;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

h2#description,
#logo {
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
  margin: 0 18%;
  font-weight: normal;
}

#logo {
  margin-bottom: 0.6%;
}

.entry h2 {
  margin: 20px 0 0 0;
  font-size: 1.6em;
}

.entry p:empty {
  display: none;
}

h2.posttitle {
  margin: 0;
  font-size: 1.6em;
  line-height: 1;
  margin-bottom: 4px;
}

.excerpt-wrap h2.posttitle, .excerpt-wrap h2.pagetitle {
  font-size: 1.15em;
  letter-spacing: 0;
}

h3 {
  font-size: 2em;
}

.entry h3 {
  font-size: 1.4em;
}

aside h3.widgettitle {
  font-size: 1em;
  padding: 8px 12px;
  margin: -12px -12px 12px -12px;
  background: #eeeeee;
}

footer h4.widgettitle {
  font-size: 1em;
  color: #f5f5f5;
  margin-bottom: 8px;
  text-transform: uppercase;
  font-weight: normal;
  border-bottom: 1px solid #333333;
  padding-bottom: 8px;
}

.widget .PDS_Poll,
.widget .pds-box {
  max-width: 100%;
}

.widget .pds-input-label {
  max-width: 100%;
  width: auto;
  float: none;
  display: inline;
}

.widget .pds-answer-input {
  display: inline;
  float: none;
}

.widget_gravatar p {
  padding: 16px 12px;
}

.widget_rss_links p {
  padding: 0;
  margin: 0;
}

.widget form {
  margin: 0;
}

.widget select {
  max-width: 100%;
}

.widget .twitter-follow-button {
  margin: 12px 0 0 12px;
}

.widget_search input.searchfield {
  width: 100%;
  box-sizing: border-box;
}

.widget_search form {
  margin-top: 12px;
  position: relative;
}

.widget_search input.searchfield:focus {
  width: 100%;
}

.widget_recent_comments img.avatar {
  margin: 2px;
}

.widget_recent_comments table {
  width: auto;
  margin: 0;
}

.widget_recent_comments td {
  border: none;
  padding: 4px 0;
}

.widget_recent_comments tr {
  background: transparent;
}

.widget_recent_comments td.recentcommentsavatartop img,
.widget_recent_comments td.recentcommentsavatarend img {
  margin: 0;
}

.widget_recent_comments table.recentcommentsavatar {
  background: transparent;
}

.widget_authors ul {
  clear: both;
}

aside .widget_authors .widget-wrap .avatar {
  margin-top: 0;
}

.jetpack-video-wrapper .embed-twitter iframe {
  width: 100%;
}

.milestone-widget .milestone-content {
  margin: 0 auto;
}

#respond h3, h3#comments, h3#trackbacks {
  margin: 32px 0 20px;
  font-size: 1.25em;
}

h3#comments {
  margin: 32px 0 12px;
}

#featured-cats h3,
#recent-posts h3 {
  font-size: 1em;
  border-bottom: 4px solid #333;
  padding-bottom: 4px;
}

#featured-cats h3 {
  margin-bottom: 12px;
}

h4 {
  font-size: 1.6em;
}

.entry h4 {
  font-size: 1.2em;
}

#recent-excerpts h4 {
  font-size: 1.25em;
}

h5 {
  font-size: 1.2em;
}

.entry h5 {
  font-size: 1.1em;
}

#featured-cats h5 {
  background: #eeeeee;
  text-transform: uppercase;
  font-size: 0.7em;
  padding: 4px;
  margin: 16px 0 8px;
  letter-spacing: 0.01em;
  border-top: 1px solid #cccccc;
  letter-spacing: 0.1em;
}

#related-posts h5 {
  margin: 0;
}

.entry h6,
h6 {
  font-size: .8em;
}

/* ---------- @ Content Styles -----------*/
/*Home*/
#lead-story {
  background: #eeeeee;
  overflow: hidden;
  margin-bottom: 20px;
  position: relative;
  min-height: 248px;
}

#lead-story a.lead-image {
  float: left;
  margin-right: 16px;
  max-width: 345px;
}

#lead-story .item {
  position: absolute;
  padding: 16px 16px 20px 16px;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  display: none;
}

#lead-story.lead-latest .item {
  display: block;
}

#lead-story h2.posttitle {
  font-size: 1.6em;
  margin-top: 4px;
}

#lead-story .excerpt {
  margin-bottom: 0;
  padding-bottom: 0;
}

#lead-story p {
  margin: 0;
}

#lead-story p.postmetadata {
  margin-bottom: 8px;
}

#lead-story nav {
  z-index: 99;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1;
  width: 100%;
  text-align: right;
}

#lead-story nav a {
  padding: 4px 0;
  border: none;
  width: 20px;
  font-size: 0.75em;
  display: inline-block;
  text-align: center;
  color: #333333;
  background-color: #ddd;
  line-height: 1;
  box-sizing: border-box;
}

#lead-story nav a:hover,
#lead-story a.selected {
  color: #ffffff;
  background-color: #999999;
}

#featured-cats {
  width: left;
  width: 26%;
}

#featured-cats ul {
  list-style: none;
}

#featured-cats .date {
  font-size: 1em;
  margin: 4px 0 2px;
  font-weight: normal;
  color: #666666;
}

.headlines {
  font-size: .9em;
  font-weight: bold;
  list-style: none;
}

.headlines a, .headlines a:visited {
  font-size: 1em;
  line-height: 1.5em;
  border: none;
}

.headlines li {
  margin-bottom: 12px;
  padding-bottom: 12px;
}

.headlines li,
aside .widget li,
#recent-excerpts li,
#related-posts {
  border-bottom: 1px dotted #B0B0B0;
}

#recent-posts .sticky {
  background: #ffd;
  padding: 12px 16px 0 16px;
}

#recent-posts li p:last-child {
  margin-bottom: 0;
}

#featured-cats li:last-child {
  border-bottom: none;
}

#recent-excerpts {
  margin-top: 16px;
}

ul#recent-excerpts .wp-post-image {
  float: left;
  margin: 16px 16px 0 4px;
}

#recent-excerpts li {
  margin-bottom: 16px;
  list-style-type: none;
}

.excerpt {
  overflow: hidden;
  padding-bottom: 16px;
}

/*Misc*/
.error404 article {
  height: 360px;
}

.noborder {
  border: none;
}

a.dark,
a.dark:visited,
aside .widget li a,
aside .widget li a:visited {
  color: #111;
  border: none;
}

a.dark:hover,
a.dark:active {
  text-decoration: underline;
}

.commentcount {
  padding-left: 20px;
  background: url(images/bubble.png) no-repeat center left;
  white-space: nowrap;
}

.more-link {
  display: inline-block;
  margin-top: 12px;
  clear: both;
}

#logo a, #logo a:visited {
  color: #ffffff;
  border: none;
}

#logo a:hover, #logo a:active {
  text-decoration: underline;
}

a.post-edit-link,
a.post-edit-link:visited {
  background-image: url(images/menu.png);
  background-repeat: no-repeat;
  background-position: -272px -35px;
  white-space: nowrap;
  text-indent: 100%;
  overflow: hidden;
  display: inline-block;
  border-radius: 4px;
  border: none;
  text-indent: -99em;
  white-space: nowrap;
  overflow: hidden;
  height: 24px;
  width: 24px;
}

/* Author Page*/
#writer {
  overflow: hidden;
  background: #f5f5f5;
  margin-bottom: 20px;
  padding: 16px;
}

#writer p {
  margin-top: 0;
}

#writer .avatar {
  margin: 4px 16px 8px 0;
}

/* Search and Archives*/
.archive-pagination {
  padding: 24px 0 0 0;
  clear: both;
  text-align: center;
  font-weight: bold;
}

.archive-pagination a,
.archive-pagination span {
  display: inline-block;
  padding: 2px 6px;
  margin-bottom: 2px;
}

.archive-pagination a span {
  padding: 0;
  margin-bottom: 0;
}

.archive-pagination a,
.archive-pagination a:visited {
  border: 1px solid #cccccc;
  border-radius: 4px;
}

.archive-pagination a:hover,
.archive-pagination a:active {
  border-color: #666666;
}

#pagination {
  overflow: hidden;
}

#pagination li {
  list-style-type: none;
  float: left;
}

#pagination li#newer {
  float: right;
}

.archive article,
.search article {
  border-bottom: 1px solid #cccccc;
  padding: 20px 20px 4px 20px;
  overflow: hidden;
  float: left;
  width: 49.5%;
  box-sizing: border-box;
  min-height: 6.5em;
}

.thumb-wrap img {
  float: left;
  margin: 4px 16px 20px 4px;
}

.attachment-archive {
  display: block;
  width: 120px;
}

.excerpt-wrap .postmetadata {
  margin-bottom: -8px;
}

/*Sidebar and Widgets*/
.widget {
  margin-bottom: 32px;
  overflow: hidden;
}

.widget_tag_cloud a {
  display: inline;
  float: none;
}

.widget #wp-calendar {
  margin: 0;
}

.textwidget {
  line-height: 160%;
}

.widget td {
  background: none;
}

aside .widget li {
  padding: 0;
  line-height: 130%;
  padding: 8px 0;
  list-style-type: none;
}

.widget li {
  margin-left: 0;
  list-style: none;
  border: none;
  padding: 4px 0;
}

.widget li li {
  list-style: square;
}

aside .widget {
  background: #eeeeee;
  padding: 4px;
  margin: 0 0 16px 0;
}

aside .widget-wrap {
  border: 1px solid #cccccc;
  background: #ffffff;
  padding: 12px;
  overflow: hidden;
}

aside .widget-wrap ul {
  margin: -8px 0 -2px 0;
}

aside .widget-wrap li,
aside .tagcloud {
  margin: 2px 0;
}

aside .widget-wrap li li {
  margin: 0 0 0 32px;
}

aside .widget li:last-child {
  border-bottom: none;
}

aside .widget-wrap .avatar {
  margin: 12px 8px 0 12px;
}

aside .widget select {
  margin: 12px 0 0 0;
}

#postDetails ul {
  margin-top: 8px;
}

aside .widget-wrap li:last-child {
  padding-bottom: 0;
  border: 0;
}

/* ---------- @ Post Styles -----------*/
p.postmetadata,
#related-posts h5 {
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

p.postmetadata {
  margin: 4px 0 0 0;
}

p.postmetadata em {
  text-transform: lowercase;
}

.entry {
  overflow: hidden;
}

.entry > * {
  margin-top: 20px;
}

.entry hr {
  margin: 20px 0;
  clear: both;
}

.entry hr.sep {
  margin: 4px 0 24px 0;
  border-width: 0px;
  border-top: 1px dotted #b0b0b0;
  height: 1px;
  background: transparent;
  clear: both;
}

.entry .post-taxonomies {
  font-size: 0.8em;
  color: #666666;
  display: inline;
  margin-right: 20px;
}

.entry .post-taxonomies a {
  background: #f5f5f5;
  padding: 2px 8px;
  border-radius: 4px;
  color: #999999;
  border-color: #ddd;
}

.entry .post-taxonomies a:hover {
  color: #666666;
}

.entry .post-taxonomies-categories {
  background: url(images/icon-cats.png) center left no-repeat;
  padding-left: 20px;
}

.entry .post-taxonomies-tags {
  background: url(images/icon-tags.png) center left no-repeat;
  padding-left: 20px;
}

.entry pre,
.entry code {
  font: 1em "Courier New", Courier, monospace;
  padding: 20px 16px;
  color: #666666;
  font-size: 1em;
  overflow: auto;
}

.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6 {
  clear: both;
}

.post code {
  background: #f5f5f5;
  padding: 4px;
}

.post a.read-more {
  font-size: 0.8em;
  border: none;
}

.post a.read-more:hover {
  text-decoration: underline;
}

.entry ul, .entry ol {
  padding: 16px 0;
}

.entry dl dt {
  font-weight: bold;
  font-size: 1.2em;
}

.entry dl dd {
  margin: 0 0 16px 0;
}

.entry ol li, .entry ul li {
  margin: 0 0 12px 48px;
  line-height: 135%;
}

.entry ul li {
  list-style: disc;
}

.postnav {
  width: 50%;
  margin-bottom: 20px;
}

.postnav.right {
  text-align: right;
}

#tags {
  clear: both;
  font-size: 0.8em;
}

#tags a, #tags a:visited {
  display: inline-block;
  background: #eeeeee;
  border: none;
  padding: 1px 9px;
  border-radius: 10em;
  margin-right: 4px;
  color: #555;
}

#sharethis {
  margin-top: 20px;
}

a.post-edit-link, a.post-edit-link:visited,
#sharethis a, #sharethis a:visited,
#related-posts ul a, #related-posts ul a:visited {
  background-color: #eeeeee;
  border: 1px solid #cccccc;
}

a.post-edit-link:hover, a.post-edit-link:active,
#sharethis a:hover, #sharethis a:active,
#related-posts ul a:hover, #related-posts ul a:active {
  background-color: #cccccc;
  border-color: #95a0a4;
  text-decoration: none;
}

#sharethis a, #sharethis a:visited {
  display: inline-block;
  border-radius: 4px;
  padding: 4px 16px 4px 6px;
  font-weight: bold;
  font-size: .8em;
}

.entry #sharethis img {
  box-shadow: none;
  display: inline;
  margin: 0 2px 0 0;
  border: none;
  vertical-align: bottom;
}

#related-posts {
  clear: both;
  overflow: hidden;
  margin-top: 28px;
  border-top: 1px dotted #b0b0b0;
  padding: 12px 0 20px;
}

.entry #related-posts ul {
  padding: 12px 0 0;
}

.entry #related-posts li {
  list-style: none;
  font-size: .9em;
  font-weight: bold;
  float: left;
  width: 49%;
  margin: 0.5%;
}

.entry #related-posts li a {
  padding: 8px;
  height: 85px;
  display: block;
}

#related-posts a:last-child {
  margin: 0;
}

.entry #related-posts img {
  box-shadow: none;
  border: none;
  float: left;
  margin: 0 12px 0 0;
}

/*Post Images*/
.entry img {
  margin: 16px 0;
}

.wp-caption {
  background: #eeeeee;
  text-align: center;
  padding: 4px 4px 0 4px;
  font-style: italic;
  font-size: .6em;
  box-sizing: border-box;
  max-width: 100%;
}

.alignleft,
.alignright,
.aligncenter {
  display: block;
}

img.alignleft {
  margin: 4px 16px 12px 4px;
  float: left;
}

img.alignright {
  margin: 4px 4px 12px 16px;
  float: right;
}

img.wp-smiley,
.entry img.wp-smiley {
  float: none;
  border: none;
  padding: 0;
  background: transparent;
  display: inline;
  margin: 0;
}

.alignleft,
.wp-caption.alignleft {
  float: left;
  margin: 20px 22px 12px 0;
}

.alignright,
.wp-caption.alignright {
  float: right;
  margin: 20px 0 12px 22px;
}

.aligncenter,
.wp-caption.aligncenter,
img.aligncenter {
  margin: 0 auto;
  display: block;
  margin-bottom: 16px;
  float: none;
}

.aligncenter,
.wp-caption.aligncenter {
  margin: 16px auto;
}

p.wp-caption-text {
  margin: 4px 0 0;
  padding: 4px 0 12px;
}

.entry .wp-caption img,
.entry .wp-caption img:hover {
  float: none;
  border: none;
  padding: 0;
  box-shadow: none;
  margin: 0 auto;
  display: block;
}

.gallery {
  margin: 16px 0;
  display: block;
}

.gallery img {
  border: none !important;
  padding: 2px;
}

.gallery-item {
  padding: 12px 0;
}

#image-gallery .image-gallery-item {
  width: 111px;
  height: 86px;
  float: left;
  text-align: center;
  margin: 0 16px 16px 0;
}

#image-gallery .image-gallery-item a img {
  margin: 0 auto;
}

.gallery-caption {
  padding: 12px;
}

.gallery-icon img {
  margin: 0 auto;
  display: block;
}

/* ---------- @ Comments -----------*/
.reply {
  margin: 16px 0;
}

.commentlist {
  margin-top: 12px;
}

.commentlist ol,
.commentlist ul {
  margin-left: 22px;
}

.commentlist ul.children {
  margin: 0;
}

.commentlist li.comment {
  padding: 16px;
  list-style: none;
  border-top: 1px solid #cccccc;
}

.commentlist li.comment .comment-wrapper {
  overflow: hidden;
}

.commentlist li.depth-2 {
  margin-bottom: 16px;
}

.commentlist li.depth-2,
.commentlist li.depth-3,
.commentlist li.depth-4,
.commentlist li.depth-5 {
  border: none;
  padding: 12px 0 0 20px;
  margin: 12px 0 12px 20px;
  border-left: 1px solid #cccccc;
}

.commentlist code {
  background: #eeeeee;
  padding: 4px;
}

.bypostauthor > div {
  background: rgba(255, 255, 255, 0.1);
}

.container .avatar {
  margin: 4px 12px 0 4px;
  float: left;
}

.avatar,
.entry img,
.wp-post-image {
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  border: 2px solid #ffffff;
}

img.latex {
  display: inline-block;
  box-shadow: none;
}

.avatar:hover,
.entry img:hover,
.lead-image img:hover,
#recent-posts img:hover,
#featured-cats img:hover {
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.75);
}

#trackbacklist li {
  margin: 12px 0 12px 36px;
}

#trackbacklist cite {
  font-style: normal;
}

cite.fn {
  font-size: 1.2em;
  display: block;
  padding: 4px 0;
  font-style: normal;
  font-weight: bold;
}

.says {
  display: none;
}

.comment-mod {
  margin: 16px 0 0;
}

#cancel-comment-reply-link {
  font-size: .75em;
  display: inline-block;
  margin-left: 12px;
}

.comment-date {
  font-size: .8em;
}

.comment-date a,
.comment-date a:visited {
  color: #999999;
  border: none;
}

.comment-date a:hover,
.comment-date a:active {
  color: #333;
}

/* ---------- @ Form Elements -----------*/
textarea,
select,
input[type=text],
input[type=email],
input[type=date],
input[type=url] {
  background: #ffffff;
  padding: 8px;
  border-width: 1px;
  border-style: solid;
  border-color: #cccccc #eeeeee #eeeeee #cccccc;
  box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.1) inset;
  font: inherit;
  border-radius: 4px;
}

select {
  height: calc( 1em + 16px);
  font: inherit;
}

label {
  line-height: 2;
  font-weight: bold;
  font-size: 0.8em;
}

textarea:focus,
input[type=text]:focus,
input[type=email]:focus,
input[type=date]:focus,
input[type=url]:focus {
  border-color: #999999 #cccccc #cccccc #999999;
  color: #111;
}

input[type=radio],
input[type=checkbox] {
  -webkit-margin-end: 8px;
          margin-inline-end: 8px;
}

textarea {
  width: 100%;
  max-width: 24rem;
  min-height: 10rem;
}

fieldset {
  border: 1px solid #ccc;
  padding: 8px 16px;
  border-radius: 4px;
}

legend {
  padding: 0 8px;
}

#commentform p {
  overflow: hidden;
}

#commentform input[type=text] {
  float: left;
  margin-right: 12px;
}

#commentform input[type=checkbox] {
  margin-right: 5px;
  margin-left: 5px;
}

#author,
#email,
#url {
  width: 220px;
}

.menu#nav-lower,
.form-submit input,
.button,
.toolbelt-submit input {
  background: #eeeeee;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#eeeeee));
  background: linear-gradient(#ffffff, #eeeeee);
}

.form-submit input,
.button,
.toolbelt-submit input {
  border-color: #cccccc #cccccc #999999;
  border-style: solid;
  border-width: 1px;
  cursor: pointer;
  box-shadow: 0 1px 0 #eeeeee;
  text-shadow: 0 1px rgba(255, 255, 255, 0.85);
  opacity: .9;
  font-size: 1em;
  padding: 12px 32px;
  font-weight: bold;
  border-radius: 4px;
}

.form-submit input:hover,
.button:hover,
.toolbelt-submit input:hover {
  border-color: #999999 #999999 #666666;
  opacity: 1;
}

.form-submit input:active,
.button:active,
.toolbelt-submit input:active {
  box-shadow: inset 0 0 4px #cccccc;
}

#commentform textarea {
  max-width: 100%;
  height: 250px;
  box-sizing: border-box;
}

#masthead form.searchform {
  margin-top: -54px;
  float: right;
  position: relative;
}

#masthead input.searchfield {
  background: #333333;
  border: none;
}

#masthead input.searchfield:focus,
#masthead input.searchfield:hover {
  background: #666666;
}

input.searchfield {
  border-radius: 100em;
  padding: 8px 32px 8px 12px;
  width: 100px;
}

input.searchfield:focus {
  width: 150px;
}

input.searchsubmit {
  top: 4px;
  right: 4px;
  position: absolute;
  width: 16px;
  height: 16px;
  opacity: .7;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  padding: 4px;
}

input.searchsubmit:hover,
input.searchsubmit:focus {
  opacity: 1;
}

.widget input.searchfield {
  color: #333;
}

/* ---------- @ Footer -----------*/
#footer-wrap {
  padding: 12px 1.5%;
  font-size: .8em;
  text-transform: uppercase;
  border-top: 1px solid #333333;
}

footer {
  overflow: hidden;
  margin-top: 32px;
  color: #999999;
  font-size: 0.8em;
  background: #111111;
}

footer a, footer a:visited {
  border: none;
}

footer .widget_calendar tr,
footer .widget_calendar caption {
  background: transparent;
}

footer a:hover, footer a:active {
  color: #ffffff;
}

footer .left {
  width: 70%;
}

footer .right {
  width: 30%;
  text-align: right;
}

footer #icon-rss {
  vertical-align: middle;
  margin-right: 4px;
}

footer .col {
  padding: 36px 20px;
  width: 25%;
  float: left;
  box-sizing: border-box;
}

/** Magic Clear **/
.clearfloat {
  zoom: 1;
}

.clearfloat:after {
  content: " ";
  display: block;
  visibility: hidden;
  clear: both;
}

.clearfloat:before {
  content: " ";
  display: block;
  visibility: hidden;
}

.attachment-image {
  margin: 0 4px;
}

#wpstats {
  margin: -20px 0 0 16px;
  position: absolute;
}

/* ---------- @ Jetpack: Infinite Scroll -----------*/
/**
 * Globally hidden elements when IS is supported and in use.
 */
.infinite-scroll .pagination,
.infinite-scroll #pagination,
.infinite-scroll.neverending footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

.search.infinite-scroll .masonry-wrapper .infinite-loader,
.archive.infinite-scroll .masonry-wrapper .infinite-loader,
.search.infinite-scroll .masonry-wrapper #infinite-handle,
.archive.infinite-scroll .masonry-wrapper #infinite-handle {
  position: absolute;
  bottom: -55px;
  left: 0;
  right: 0;
}

.search.infinite-scroll .row .eightcol.full-width,
.archive.infinite-scroll .row .eightcol.full-width {
  padding-bottom: 70px;
}

/**
 * When IS has reached its end we need to re-display elements that were hidden (via .neverending) before
 */
.infinity-end.neverending footer {
  display: block;
}

/**
 * Global style tweaks when IS is supported and in use
 */
.infinite-scroll .infinite-wrap,
.infinite-scroll .infinite-loader,
.infinite-scroll #infinite-handle {
  clear: both;
}

/**
 * Make sure that clicking Load more posts doesn't cause any jarringness.
 */
.infinite-scroll #infinite-handle {
  height: 32px;
}

.infinite-scroll #infinite-handle span {
  display: block;
  margin: 0 auto;
  min-width: 200px;
  width: 10%;
  text-align: center;
  border-radius: 32px;
}

.infinite-scroll #infinite-handle span:hover {
  background: #000000;
  color: #ffffff;
}

.infinite-scroll .infinite-loader .spinner {
  margin: 0 auto;
  width: 20px;
}

.category_description {
  padding: 20px 16px 4px 16px;
  background: #f5f5f5;
  margin-bottom: 12px;
}

.category_description p {
  margin: 0 0 16px 0;
  color: #333;
  max-width: 45em;
}

p.breadcrumbs {
  margin-bottom: 32px;
}

html, body, input, input.text, textarea {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
}

h1 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 31px;
}

h2 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 26px;
}

h3 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 21px;
}

h4 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 19px;
}

h5 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 19px;
}

h6 {
  font-family: "Merriweather", Georgia, serif;
  font-size: 16px;
}

nav,
.postmetadata,
.wp-caption {
  font-family: "Merriweather", Georgia, serif;
  font-size: 16px;
}

nav {
  font-size: 16px;
}

header h1,
header h3 a {
  font-family: "Merriweather", Georgia, serif;
  font-size: 36px;
}

h2#description {
  font-family: "Merriweather", Georgia, serif;
  font-size: 12px;
}

.screen-reader {
  display: none;
}

.cdm-icon {
  z-index: 999;
}

[class^="wp-block"] {
  box-sizing: border-box;
}

ul.wp-block-social-links .wp-social-link {
  margin: 0;
  -webkit-margin-end: 5px;
          margin-inline-end: 5px;
}

/*!
 * ## - Blocks
 */
.wp-block-cover,
.alignfull,
.alignwide,
.wp-block-pullquote,
.wp-block-group,
.wp-block-quote,
.wp-block-gallery,
.wp-block-media-text__media {
  margin-bottom: 3rem;
}

.margin-bottom-none {
  margin-bottom: 0 !important;
}

.margin-top-none {
  margin-top: 0 !important;
}

.alignfull .alignfull,
.alignfull .alignwide {
  -webkit-margin-start: 0 !important;
          margin-inline-start: 0 !important;
}

.alignfull .alignfull {
  width: 100% !important;
  max-width: 100% !important;
}

[class*="_inner-container"] > *:last-child {
  margin-bottom: 0;
}

[class*="_inner-container"] .alignfull {
  width: 100% !important;
  max-width: 100% !important;
  -webkit-margin-start: 0 !important;
          margin-inline-start: 0 !important;
  margin-left: 0;
  margin-right: 0;
}

.wp-block-group.has-background {
  padding: 1.5rem 3rem;
}

p.wp-block-subhead {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
  opacity: 1;
}

.wp-block-pullquote cite,
.wp-block-quote cite {
  margin-top: 0.75rem;
  display: block;
}

figure.wp-block-pullquote {
  padding: 0;
}

figure.wp-block-pullquote blockquote {
  margin: 0;
}

.wp-block-quote p {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
}

.wp-block-quote.is-large p {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.5;
}

.wp-block-separator {
  width: 10rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  border: none;
  border-bottom: 0.2rem solid rgba(0, 0, 0, 0.3);
}

.wp-block-separator.is-style-wide {
  width: 20rem;
  border-bottom-width: 0.2rem;
}

.wp-block-separator.is-style-dots:before {
  font-size: 2rem;
  letter-spacing: 1em;
  padding-left: 1em;
  padding-right: 0;
  line-height: 0;
  color: rgba(0, 0, 0, 0.3);
}

.wp-block-audio audio {
  width: 100%;
}

.wp-block-image {
  margin-bottom: 3rem;
}

.wp-block-image > img {
  display: block;
}

.wp-block-image.is-resized > img {
  max-width: 100%;
}

.wp-block-image.alignfull {
  width: 100%;
}

.wp-block-image.alignfull > img {
  width: 100%;
}

.wp-block-cover .wp-block-cover__inner-container {
  padding: 1.5rem 0;
}

.wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover-image.aligncenter {
  display: -webkit-box;
  display: flex;
}

.wp-block-social-links {
  flex-wrap: wrap;
}

.wp-block-social-links li {
  margin-top: 0;
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
  background: white;
  color: black;
}

.wp-block-columns .wp-block-column {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.wp-block-columns .wp-block-column:first-child {
  padding-left: 0;
  padding-right: 0.75rem;
}

.wp-block-columns .wp-block-column:last-child {
  padding-right: 0;
  padding-left: 0.75rem;
}

.wp-block-coblocks-dynamic-separator {
  visibility: hidden;
}
