/*
 * ---:[ Focus CSS reset ]:---
 */
* {
  margin: 0;
  padding: 0;
  word-wrap: break-word; }

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

img,
fieldset {
  border: 0; }

abbr,
acronym {
  text-decoration: none; }

code {
  line-height: 1em; }

pre {
  overflow: auto;
  word-wrap: normal;
  -moz-tab-size: 4;
  tab-size: 4; }

sub,
sup {
  line-height: 0.5em; }

img,
.wp-caption {
  max-width: 100%;
  height: auto; }

iframe,
video,
embed,
object {
  display: block;
  max-width: 100%; }

img,
.left,
.alignleft,
.right,
.alignright {
  display: block; }

.center,
.aligncenter {
  display: block;
  float: none;
  clear: both;
  text-align: center;
  margin-right: auto;
  margin-left: auto; }

.block,
.alignnone {
  display: block;
  clear: both; }

button,
input[type=submit] {
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none; }

body {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", Segoe, "Helvetica Neue", Tahoma, sans-serif;
  font-size: 18px;
  line-height: 30px;
  color: #111111; }

a {
  color: #2692f0;
  text-decoration: none; }
  p a,
  .post_content a {
    text-decoration: underline; }
      p a.button,
      .post_content a.button {
        text-decoration: none; }

code,
pre,
kbd {
  font-family: Menlo, Consolas, Monaco, "Andale Mono", Courier, Verdana, sans-serif; }

.grt {
  font-size: 18px;
  line-height: 30px; }
  .grt h1 {
    font-size: 37px;
    line-height: 58px;
    color: #111111;
    margin-bottom: 30px; }
  .grt h2 {
    font-size: 29px;
    line-height: 46px;
    margin-top: 49px;
    margin-bottom: 19px; }
  .grt h3 {
    font-size: 23px;
    line-height: 38px;
    margin-top: 30px;
    margin-bottom: 12px; }
  .grt h4 {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 7px; }
  .grt h1 + h2,
  .grt h2 + h3,
  .grt h2:first-child,
  .grt h3:first-child {
    margin-top: 0; }

  .grt ul,
  .grt ol {
    margin-left: 30px; }
  .grt li {
    margin-bottom: 12px; }
    .grt li:last-child {
      margin-bottom: 0; }
  .grt blockquote {
    color: #828282;
    padding-left: 19px;
    border-left: 7px solid rgba(0, 0, 0, 0.1); }
  .grt code,
  .grt pre,
  .grt kbd {
    font-size: 16px; }
  .grt code {
    background-color: rgba(0, 0, 0, 0.08);
    padding: 4px;
    border-radius: 7px;
    margin: 0 1px; }
  .grt pre {
    background-color: #eeeeee;
    padding: 19px; }
  .grt kbd {
    font-size: 14px;
    color: #111111;
    text-shadow: 0 1px 0 white;
    background-color: #f7f7f7;
    padding: 5px;
    border: 1px solid #cccccc;
    border-radius: 7px;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 2px white inset;
    margin: 0 1px; }
  .grt p,
  .grt ul,
  .grt ol,
  .grt blockquote,
  .grt pre,
  .grt img:not(.avatar),
  .grt .left,
  .grt .alignleft,
  .grt .right,
  .grt .alignright,
  .grt .center,
  .grt .aligncenter,
  .grt .block,
  .grt .alignnone {
    margin-bottom: 30px; }
  .grt ul ul,
  .grt ul ol,
  .grt ol ul,
  .grt ol ol {
    margin-top: 12px;
    margin-bottom: 0; }
    .grt blockquote > :last-child,
    .grt .left > :last-child,
    .grt .right > :last-child {
      margin-bottom: 0; }
  @media all and (min-width: 682px) {
    .grt .left:not(.bar),
    .grt .alignleft {
      float: left;
      clear: both;
      margin-right: 30px; }
    .grt .right:not(.bar),
    .grt .alignright {
      float: right;
      clear: both;
      margin-left: 30px; } }
  @media all and (min-width: 704px) {
    body:not(.has-sidebar) .grt h1 {
        font-size: 47px;
        line-height: 72px; }
      body:not(.has-sidebar) .grt h2 {
        font-size: 37px;
        line-height: 58px; }
      body:not(.has-sidebar) .grt h3 {
        font-size: 29px;
        line-height: 46px; }
      body:not(.has-sidebar) .grt h4 {
        font-size: 23px;
        line-height: 38px; } }
    .grt h1.headline {
      margin-top: 0;
      margin-bottom: 0; }
      .grt h1.headline a {
        color: #111111; }
        .grt h1.headline a:hover {
          color: #2692f0; }
    .grt h1.archive_title {
      margin-bottom: 30px; }
  .grt .alert,
  .grt .note,
  .grt .box {
    padding: 19px; }
  .grt .alert {
    background-color: #ffe91f; }
  .grt .note {
    background-color: #ccf1ff; }
  .grt .box {
    background-color: #cce8cc; }
  .grt .wp-caption,
  .grt .frame {
    box-sizing: border-box;
    color: #828282;
    background-color: #eeeeee;
    padding: 19px; }
    .grt .wp-caption img {
      margin-bottom: 19px; }
    .grt .wp-caption.aligncenter img {
      margin-right: auto;
      margin-left: auto; }
    .grt .wp-caption .wp-caption-text {
      margin-bottom: 0; }
  .grt .wp-caption-text,
  .grt .caption,
  .grt .footnotes {
    font-size: 14px;
    line-height: 25px; }
    .grt .wp-caption-text code,
    .grt .caption code,
    .grt .footnotes code {
      font-size: 13px; }
  .grt .caption {
    color: #828282;
    margin-top: -19px; }
  .grt .footnotes {
    color: #828282;
    padding-top: 19px;
    border-top: 1px dotted rgba(0, 0, 0, 0.15); }
    .grt .footnotes p {
      margin-bottom: 12px; }
  .grt .extend {
    margin-bottom: 30px; }
    .grt .extend > :last-child {
      margin-bottom: 0; }
  .grt .drop_cap {
    font-size: 60px;
    line-height: 1em;
    margin-right: 7px;
    float: left; }
  .grt .byline {
    font-size: 14px;
    line-height: 25px;
    color: #828282;
    margin-top: 7px; }
      .grt .byline .post_author:after,
      .grt .byline .post_date:after,
      .grt .byline .num_comments_link:after,
      .grt .byline .post_edit:after {
        display: block;
        height: 0;
        content: '\a';
        white-space: pre; }
    .grt .byline .avatar {
      float: left;
      width: 50px;
      height: 50px;
      margin-right: 19px; }
  .grt .featured_image_link {
    display: inline-block;
    vertical-align: top; }
  .grt .author_description {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 30px; }
    .grt .author_description .avatar {
      float: left;
      width: 90px;
      height: 90px;
      margin-right: 19px; }
  .grt .author_description_intro {
    font-weight: bold; }
  .grt .post_box + .post_box {
    margin-top: 49px; }
  .grt .alert,
  .grt .note,
  .grt .box,
  .grt .wp-caption,
  .grt .caption,
  .grt .footnotes,
  .grt .page-links,
  .grt .headline_area {
    margin-bottom: 30px; }
    .grt .alert > :last-child,
    .grt .note > :last-child,
    .grt .box > :last-child,
    .grt .footnotes > :last-child,
    .grt .post_list > :last-child {
      margin-bottom: 0; }
  .grt .highlight {
    background-color: #fffb7a;
    padding: 4px 0; }
  .grt .post_list {
    margin-bottom: 0; }
    .grt .post_box:after,
    .grt .headline_area:after,
    .grt .byline:after,
    .grt .post_content:after,
    .grt .post_list:after,
    .grt .extend:after,
    .grt .author_description:after,
    .grt .query_box:after {
      display: table;
      clear: both;
      content: ''; }
  @media all and (min-width: 682px) {
    .grt .headline_area {
      position: relative; }
    .grt .byline {
      margin-top: 12px; }
        .grt .byline .post_author:after,
        .grt .byline .post_date:after,
        .grt .byline .num_comments_link:after {
          display: none; }
        .grt .byline .post_author ~ .post_date_intro:before,
        .grt .byline .post_date_intro ~ .post_date_intro:before,
        .grt .byline .post_author ~ .num_comments_link:before,
        .grt .byline .post_date ~ .num_comments_link:before,
        .grt .byline .post_author ~ .post_edit:before,
        .grt .byline .post_date ~ .post_edit:before,
        .grt .byline .num_comments_link ~ .post_edit:before {
          color: #828282;
          content: '\2022\0020'; }
    .grt .center + .caption,
    .grt .aligncenter + .caption {
      text-align: center; } }

input:not([type=checkbox]):not([type=radio]):not([type=submit]),
textarea,
select {
  box-sizing: border-box;
  font-family: inherit;
  font-size: inherit;
  line-height: 1em;
  font-weight: inherit;
  padding: 7px;
  border: 1px solid rgba(0, 0, 0, 0.2); }

textarea {
  display: block;
  width: 100%;
  line-height: inherit; }


input[type=checkbox],
input[type=radio] {
  font-size: inherit;
  vertical-align: middle; }
  input[type=checkbox] + label,
  input[type=radio] + label {
    display: inline;
    margin-left: 12px; }


  button,
  input[type=submit],
  .button {
    display: inline-block;
    font-family: inherit;
    font-size: inherit;
    font-weight: normal;
    line-height: 1em;
    vertical-align: top;
    color: #111111;
    text-decoration: none;
    background-color: #eeeeee;
    padding: 7px 12px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom-width: 4px;
    border-bottom-color: rgba(0, 0, 0, 0.25);
    border-radius: 12px;
    cursor: pointer;
    -webkit-appearance: none; }
  button:hover,
  input[type=submit]:hover,
  .button:hover,
  button:active,
  input[type=submit]:active,
  .button:active {
    text-decoration: none;
    background-color: white;
    transition: background-color 0.3s ease; }
  button:active,
  input[type=submit]:active,
  .button:active {
    border-bottom-width: 2px;
    margin-top: 2px; }

    button.save,
    .button.save {
      color: white;
      background-color: #509b26; }
    button.save:hover,
    .button.save:hover,
    button.save:active,
    .button.save:active {
      background-color: #60ba2e; }
    button.delete,
    .button.delete {
      color: white;
      background-color: #d50b0b; }
    button.delete:hover,
    .button.delete:hover,
    button.delete:active,
    .button.delete:active {
      background-color: #f31313; }
    button.action,
    .button.action {
      color: white;
      background-color: #12a7ff; }
    button.action:hover,
    .button.action:hover,
    button.action:active,
    .button.action:active {
      background-color: #38b5ff; }
    button.update,
    .button.update {
      color: #111111;
      background-color: #fcfc0d; }
    button.update:hover,
    .button.update:hover,
    button.update:active,
    .button.update:active {
      background-color: #fcfc33; }


#header {
  padding-top: 19px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

  #nav {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

#content {
  padding-top: 30px;
  padding-bottom: 30px; }

#footer {
  color: #828282;
  padding-top: 19px;
  padding-bottom: 19px;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

.container {
  box-sizing: border-box;
  padding-left: 19px;
  padding-right: 19px; }

@media all and (min-width: 682px) {
  .container {
    max-width: 644px;
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto; } }

@media all and (min-width: 704px) {
  .container {
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px;
    margin-left: 0;
    margin-right: 0; } }

@media all and (min-width: 1100px) {
  .container {
    max-width: 1040px;
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto; } }

.content,
.sidebar {
  box-sizing: border-box; }

  .sidebar {
    font-size: 18px;
    line-height: 30px;
    margin-top: 30px;
    background-color: #eeeeee;
    padding: 19px; }
    .sidebar > div {
      margin-bottom: 49px; }
      .sidebar > div > :last-child {
        margin-bottom: 0; }
    .sidebar .widget_title {
      font-size: 23px;
      line-height: 38px;
      margin-bottom: 12px; }
    .sidebar p,
    .sidebar ul {
      margin-bottom: 30px; }
    .sidebar ul {
      margin-left: 30px; }
    .sidebar li {
      margin-bottom: 12px; }
      .sidebar li:last-child {
        margin-bottom: 0; }
    .sidebar > :last-child,
    .sidebar .textwidget > :last-child {
      margin-bottom: 0; }
    @media all and (min-width: 682px) {
      .sidebar {
    padding: 30px; } }
    @media all and (min-width: 1100px) {
      .sidebar {
    font-size: 14px;
    line-height: 25px;
    margin-top: 0;
    padding: 19px; }
      .sidebar > div {
        margin-bottom: 30px; }
      .sidebar .widget_title {
        font-size: 18px;
        line-height: 30px;
        margin-bottom: 7px; }
      .sidebar p,
      .sidebar ul {
        margin-bottom: 19px; }
      .sidebar ul {
        margin-left: 19px; }
      .sidebar li {
        margin-bottom: 7px; }
      .sidebar input[type=submit] {
        padding: 7px; } }

@media all and (min-width: 682px) {
  .has-sidebar .content,
    .has-sidebar .sidebar {
      max-width: 644px; } }

@media all and (min-width: 1100px) {
  .has-sidebar .columns {
      display: flex;
      justify-content: space-between; }
    .has-sidebar .sidebar {
      max-width: 347px; } }

  #site_title {
    font-size: 47px;
    line-height: 72px;
    font-weight: bold; }
      #site_title a:hover {
        color: #2692f0; }

  #site_tagline {
    font-size: 18px;
    line-height: 30px;
    color: #828282; }

  .menu {
    font-size: 18px;
    line-height: 30px;
    list-style: none;
    display: flex;
    align-items: baseline;
    white-space: nowrap;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
    .menu::-webkit-scrollbar {
      display: none; }
    .menu li {
      margin-right: 30px; }
      .menu li:last-child {
        margin-right: 0; }
    .menu a {
      display: block;
      padding-top: 12px;
      padding-bottom: 12px; }
    .menu:before {
      content: '\2194';
      color: #828282;
      margin-right: 19px; }
    @media all and (min-width: 704px) {
      .mode-focus .menu {
        justify-content: center; } }
    @media all and (min-width: 1040px) {
      .menu:before {
        display: none; } }

  .prev_next {
    border-top: 1px dotted rgba(0, 0, 0, 0.15);
    padding-top: 19px;
    padding-bottom: 19px;
    margin-top: 30px;
    margin-bottom: -30px; }
    .prev_next.blog_nav {
      display: flex;
      justify-content: space-between;
      flex-direction: row-reverse; }
      .prev_next .previous_posts:first-child {
        margin-right: auto; }
      .prev_next .previous_posts a:before {
        content: '\2190\0020'; }
      .prev_next .next_posts a:after {
        content: '\0020\2192'; }
    .prev_next .next_post,
    .prev_next .previous_post {
      margin-bottom: 0; }
    .prev_next .next_post + .previous_post {
      margin-top: 19px; }

    #comments .comments_intro {
      margin-top: 49px;
      margin-bottom: 30px; }
      #comments .comments_intro:after {
        content: '\0020\2193'; }
    #comments .num_comments,
    #comments .comments_closed {
      font-weight: bold; }
    #comments .comments_closed {
      font-weight: bold;
      margin-top: 49px; }
    #comments .comment_list {
      list-style: none;
      margin-left: 0; }
      #comments .comment_list > .comment:first-child {
        margin-top: 0; }
    #comments .comment {
      margin-top: 49px; }
      #comments .comment #respond {
        margin-top: 30px; }
    #comments .children {
      list-style: none;
      margin-top: 0;
      margin-left: 19px; }
      #comments .children .comment {
        margin-top: 30px; }
    #comments .comment_header {
      margin-bottom: 12px; }
    #comments .avatar {
      float: right;
      width: 49px;
      height: 49px;
      margin-left: 19px; }
    #comments .comment_author {
      font-weight: bold; }
      #comments .comment_date:before {
        display: block;
        height: 0;
        content: '\a';
        white-space: pre; }
      #comments .comment_text :last-child {
        margin-bottom: 12px; }
    #comments .comment_footer {
      font-size: 14px;
      line-height: 25px; }
      #comments .comment_footer a {
        text-transform: lowercase;
        margin-right: 12px; }
    #comments .comment_nav {
      display: flex;
      justify-content: space-between;
      flex-direction: row-reverse;
      padding: 19px 0;
      border-top: 1px dotted rgba(0, 0, 0, 0.15);
      border-bottom: 1px dotted rgba(0, 0, 0, 0.15); }
      #comments .comment_nav .previous_comments:first-child {
        margin-right: auto; }
    #comments #respond {
      margin-top: 49px; }
      #comments #respond p {
        margin-bottom: 19px; }
      #comments #respond label {
        display: block; }
      #comments #respond .comment-reply-title {
        font-weight: bold; }
      #comments #respond #cancel-comment-reply-link {
        font-weight: normal;
        margin-left: 12px; }
      #comments #respond input:not([type=checkbox]):not([type=submit]) {
        display: block;
        width: 100%; }
      #comments #respond .comment-form-cookies-consent {
        font-size: 14px;
        line-height: 25px; }
        #comments #respond .comment-form-cookies-consent label {
          display: inline;
          margin-left: 7px; }
      #comments #respond .submit {
        padding: 12px; }
    @media all and (min-width: 682px) {
      #comments .children {
        margin-left: 30px; }
        #comments .comment_date:before {
          display: inline;
          height: auto;
          content: '\2022\0020';
          white-space: normal; } }

@media all and (min-width: 704px) {
  .readability .text,
    .focus .text {
      max-width: 644px; }
      .readability .text .extend,
      .focus .text .extend {
        box-sizing: border-box; }
      .readability .text .extend,
      .readability .text .wp-post-image,
      .focus .text .extend,
      .focus .text .wp-post-image {
        max-width: calc(100vw - 60px); }
      .readability .text .wp-caption img,
      .focus .text .wp-caption img {
        max-width: 100%; }
      .readability .text img {
        max-width: calc(100vw - 60px); }
      .readability .text .headline_area,
      .readability .text .post_content > h1,
      .readability .text .post_content > h2,
      .readability .text .post_content > h3,
      .readability .text .post_content > h4,
      .readability .text .alignnone,
      .readability .text .block,
      .readability .text .extend,
      .readability .text .extend + .caption,
      .readability .text .featured_image_link + .caption {
        margin-right: calc(704px - 100vw); }
    .focus .text {
      margin-left: auto;
      margin-right: auto; }
      .focus .text .post_content h1,
      .focus .text h2,
      .focus .text h3,
      .focus .text .headline_area,
      .focus .text .featured_image_wrap,
      .focus .text .extend + .caption,
      .focus .text .extend .caption {
        text-align: center; }
      .focus .text .byline .avatar {
        position: absolute;
        left: 0;
        bottom: 0; }
      .focus .text .headline_area,
      .focus .text .post_content > h1,
      .focus .text .post_content > h2,
      .focus .text .post_content > h3,
      .focus .text .extend,
      .focus .text .extend + .caption,
      .focus .text .featured_image_wrap {
        margin-left: calc(352px - (100vw / 2));
        margin-right: calc(352px - (100vw / 2)); }
      .focus .text .wp-post-image {
        margin-left: auto;
        margin-right: auto; }

    .mode-focus #header,
    .mode-focus #nav,
    .mode-focus #nav-secondary,
    .mode-focus #footer {
      text-align: center; }
    .mode-focus #header_image,
    .mode-focus #logo {
      margin-left: auto;
      margin-right: auto; }

  .focus .archive_title {
    text-align: center; } }

@media all and (min-width: 1100px) {
  .readability .text .extend,
      .readability .text .wp-post-image,
      .focus .text .extend,
      .focus .text .wp-post-image {
        max-width: 1040px; }
      .readability .text img {
        max-width: 1040px; }
      .readability .text .headline_area,
      .readability .text .post_content > h1,
      .readability .text .post_content > h2,
      .readability .text .post_content > h3,
      .readability .text .post_content > h4,
      .readability .text .alignnone,
      .readability .text .block,
      .readability .text .extend,
      .readability .text .extend + .caption,
      .readability .text .featured_image_link + .caption {
        margin-right: -396px; }
      .focus .text .headline_area,
      .focus .text .post_content > h1,
      .focus .text .post_content > h2,
      .focus .text .post_content > h3,
      .focus .text .extend,
      .focus .text .extend + .caption,
      .focus .text .featured_image_wrap {
        margin-left: -198px;
        margin-right: -198px; }
        .focus .text .extend.right {
          margin-left: 30px; }
        .focus .text .extend.left {
          margin-right: 30px; }

      .readability .grt .bar,
      .focus .grt .bar {
        box-sizing: border-box;
        float: right;
        clear: right;
        font-size: 14px;
        line-height: 25px;
        margin-bottom: 19px; }
      .readability .grt .bar {
        max-width: 347px;
        margin-right: -396px; }
      .focus .grt .bar {
        max-width: 168px;
        margin-right: -198px; }
        .focus .grt .bar.left {
          float: left;
          clear: left;
          margin-left: -198px; } }