@charset "UTF-8";
/*
Theme Name: Period
Theme URI: https://www.competethemes.com/period/
Author: Compete Themes
Author URI: https://www.competethemes.com
Description: Period is a dark, clean, and SEO-optimized blogging theme. As a responsive theme, it displays your content beautifully across phones, widescreen monitors, and everything in between. With special attention to typography, accessibility, and minimalism, Period has a design you can trust for presenting your content. Now with WooCommerce support, you can include an eCommerce shop right on your website (for free). Use Period to blog about the news, music, travel, business, gaming, you name it! It’s equally well-suited for a corporate blog or personal podcast. Period also has full compatibility with the new Gutenberg post editor. Preview Period on desktop, tablets, and mobile devices with the interactive live demo: https://www.competethemes.com/demos/?theme=period
Version: 1.750
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: two-columns, left-sidebar, right-sidebar, accessibility-ready, custom-logo, custom-menu, featured-images, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, blog, education, news
Text Domain: period
Tested up to: 6.7
Requires PHP: 5.4

Period WordPress Theme, Copyright 2024 Compete Themes
Period is distributed under the terms of the GNU GPL
*/
/*===== Variables =====*/
/* Theme Colors */
/* Media Query widths */
/* Social Media Brand Colors */
/*===== Mixins =====*/
/***** Silent Classes *****/
.site-title {
  font-size: 1.3125em;
  /* 21px / 16px */
  line-height: 1.333;
  /* 28px */
}

.post-title, h1 {
  font-size: 1.125em;
  /* 18px / 16px */
  line-height: 1.333;
  /* 24px */
}

.widget > *, .sidebar-primary .widget > *, .further-reading a, .post-tags a, .post-categories, .menu-primary a, .tagline, .comment-content > *, .comment-author .author-name, .comment-respond label, .more-link,
.comments-link, .archive-header p, .archive-header h1,
.archive-header h2, #breadcrumbs > span {
  font-size: 0.875em;
  /* 14px / 16px */
  line-height: 1.715;
  /* 24px */
}

.single-attachment .attachment-caption, .further-reading span, .post-byline, .design-credit span, .comment-footer a,
.comment-footer i, .comment-author .comment-date, .sticky-status span, input[type=submit], input[type=text],
input[type=email],
input[type=password],
input[type=number],
input[type=search],
input[type=tel],
input[type=url],
textarea, .wp-caption-text,
.gallery-caption, .wp-block-image figcaption, .wp-block-table figcaption {
  font-size: 0.75em;
  /* 12px / 16px */
  line-height: 1.5;
  /* 18px */
}

.menu-primary a, .social-media-icons a, .site-title a, .site-footer a, #breadcrumbs a {
  color: #ffffff;
}
.menu-primary a:link, .social-media-icons a:link, .site-title a:link, .site-footer a:link, #breadcrumbs a:link, .menu-primary a:visited, .social-media-icons a:visited, .site-title a:visited, .site-footer a:visited, #breadcrumbs a:visited {
  color: #ffffff;
}
.menu-primary a:hover, .social-media-icons a:hover, .site-title a:hover, .site-footer a:hover, #breadcrumbs a:hover, .menu-primary a:active, .social-media-icons a:active, .site-title a:active, .site-footer a:active, #breadcrumbs a:active, .menu-primary a:focus, .social-media-icons a:focus, .site-title a:focus, .site-footer a:focus, #breadcrumbs a:focus {
  color: #D4D4D4;
}

.sidebar-primary .widget, .search-bottom, .pagination, .comment-pagination, .comments-closed, .comments-number,
li.comment > article,
li.pingback > article,
.comment-respond,
#disqus_thread {
  background: #ffffff;
  box-shadow: 0 0 2px 0 rgba(58, 58, 58, 0.2);
  padding: 1.5em 4.6875375%;
}

@media all and (min-width: 56.25em) {
  .sidebar-primary .widget, .search-bottom, .pagination, .comment-pagination, .comments-closed, .comments-number,
li.comment > article,
li.pingback > article,
.comment-respond,
#disqus_thread {
    background: #ffffff;
    box-shadow: 0 0 2px 0 rgba(58, 58, 58, 0.2);
    padding: 1.5em 7.50006%;
  }
}
/*===== Basic Styles =====*/
/* apply a natural box layout model to all elements */
*, *:before, *:after {
  box-sizing: border-box;
}

body {
  height: 100%;
  font-size: 100%;
  font-weight: 300;
  margin: 0;
  padding: 0;
  font-family: "Roboto", "Open Sans", sans-serif;
  line-height: 1.5;
  background: #EDEDED;
  color: #000000;
  -webkit-font-smoothing: subpixel-antialiased;
  word-wrap: break-word;
  -ms-word-wrap: break-word;
}

.overflow-container {
  position: relative;
  overflow: hidden;
  height: auto;
  min-height: 100%;
}

.max-width {
  max-width: 1300px;
  margin: 0 auto;
}

.primary-container {
  padding: 0 5.5556%;
  margin-top: -5.25em;
  min-height: 100vh;
  min-height: calc(100vh - 291px);
}
.primary-container:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.main {
  margin: 0 auto;
}

.loop-container:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

p {
  margin: 1.5em 0;
}

a {
  color: #000000;
  text-decoration: none;
  -webkit-transition: 0.1s ease-in-out;
          transition: 0.1s ease-in-out;
}
a:link, a:visited {
  color: #000000;
}
a:hover, a:active, a:focus {
  color: #757575;
}

h1, h2, h3, .comment-respond .comment-reply-title, h4, h5, h6 {
  font-family: "Cormorant Garamond", Georgia, Cambria, "Times New Roman", Times, serif;
  color: rgb(36, 36, 36);
  font-feature-settings: "lnum" 1, "pnum" 1;
  font-weight: 400;
  margin: 0;
  padding: 0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

h2, h3, .comment-respond .comment-reply-title, h4, h5, h6 {
  font-size: 1em;
  line-height: 1.5;
}

ul,
ol {
  font-size: 1em;
  padding: 0;
  margin: 1.5em;
}
ul ul, ul ol,
ol ul,
ol ol {
  margin: 0 1.5em;
}

ul ul,
ol ol,
ul ol,
ol ul,
li li {
  font-size: 1em;
}

/* Markup styles */
pre {
  word-wrap: break-word;
  white-space: pre-wrap;
  background: #F7F7F7;
  border: solid 1px #EDEDED;
  padding: 0.75em;
}

code {
  background: #F7F7F7;
  padding: 0 0.375em;
}

pre code {
  padding: 0;
}

blockquote {
  margin: 1.5em 1.5em 1.5em 0;
  padding-left: 1.5em;
  border-left: solid 3px #000000;
}
blockquote cite {
  display: block;
  text-align: right;
}

hr {
  margin: 1.5em 0;
}

/* Table styles */
table {
  border-spacing: 0;
  border-collapse: collapse;
  margin: 1.5em 0;
}

td,
th {
  padding: 0.75em;
  border: solid 1px #000000;
}

.wp-block-table {
  margin: 0;
}
.wp-block-table thead {
  background: #F7F7F7;
}
.wp-block-table td,
.wp-block-table th {
  border-color: #EDEDED;
}
.wp-block-table figcaption {
  text-align: center;
  margin-top: -18px;
}

.wp-block-table.is-style-stripes thead {
  background: none;
}
.wp-block-table.is-style-stripes td,
.wp-block-table.is-style-stripes th {
  border-color: #EDEDED;
}

/* Images */
img,
.alignright,
.alignleft,
.aligncenter,
.alignnone,
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

.wp-block-image {
  margin: 1.5em 0;
}
.wp-block-image figcaption {
  margin: 0;
  text-align: center;
}

.alignleft {
  float: left;
  margin: 0 1.5em 1.5em 0;
}

.alignright {
  float: right;
  margin: 0 0 1.5em 1.5em;
}

.aligncenter {
  text-align: center;
  margin: 1.5em auto;
  display: block;
}

.alignnone {
  margin: 1.5em 0;
}

.wp-caption-text,
.gallery-caption {
  margin: 0 0 1.8450184502em;
}

.wp-block-group.alignwide,
.wp-block-group .alignwide,
.wp-block-group.alignfull,
.wp-block-group .alignfull {
  line-height: 1.5;
}

/* Form styles */
input[type=text],
input[type=email],
input[type=password],
input[type=number],
input[type=search],
input[type=tel],
input[type=url],
textarea {
  width: 100%;
  font-family: "Roboto", "Open Sans", sans-serif;
  font-weight: 400;
  padding: 10px 12px;
  max-width: 27.75em;
  min-height: 37px;
  background: #F7F7F7;
  color: #000000;
  border: solid 1px #D4D4D4;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transition: background 0.2s;
          transition: background 0.2s;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=url]:focus,
textarea:focus {
  outline: none;
  background: #ffffff;
}

textarea {
  max-width: 41.625em;
  overflow: auto;
  /* to hide scrollbar in IE */
}
textarea:focus {
  outline: none;
  background: #ffffff;
}

input[type=submit] {
  font-family: "Roboto", "Open Sans", sans-serif;
  font-weight: 400;
  padding: 10px 12px;
  color: #000000;
  border: solid 1px #000000;
  background: none;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
input[type=submit]:hover {
  cursor: pointer;
}
input[type=submit]:hover, input[type=submit]:active, input[type=submit]:focus {
  background: #000000;
  color: #ffffff;
}

input[type=search] {
  padding-right: 0.375em;
  /* so safari 'x' doesn't get cut off */
}

::-webkit-input-placeholder {
  color: #666666;
  font-weight: 300;
}

:-moz-placeholder {
  color: #666666;
  font-weight: 300;
}

::-moz-placeholder {
  color: #666666;
  font-weight: 300;
}

:-ms-input-placeholder {
  color: #666666;
  font-weight: 300;
}

/* ie image border fix */
a img {
  border: none;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (orientation: landscape) {
  html {
    -webkit-text-size-adjust: none;
    /* none for no scaling */
  }
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
  html {
    -webkit-text-size-adjust: none;
    /* none for no scaling */
  }
}
.screen-reader-text {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
}

.skip-content {
  position: absolute;
  top: -100%;
  width: 100%;
  left: 0;
  display: block;
  text-align: center;
  color: #ffffff !important;
  z-index: 99;
  padding: 1.5em;
  background: #242424;
  box-shadow: 0 2px 2px 0 rgba(41, 41, 41, 0.4);
  -webkit-transition: top 0.2s ease-in-out;
          transition: top 0.2s ease-in-out;
}
.skip-content:focus {
  top: 0;
  outline: none;
}

.admin-bar .skip-content:focus {
  top: 32px;
}

#breadcrumbs {
  display: inline-block;
  margin-bottom: 0.75em;
  color: #D4D4D4;
  margin-top: 0;
}
.page-template-landing-page .primary-container,
.page-template-landing-page-header .primary-container {
  padding: 0;
}
.page-template-landing-page .max-width,
.page-template-landing-page-header .max-width {
  max-width: none;
}
.page-template-landing-page .main,
.page-template-landing-page-header .main {
  width: 100%;
  float: none;
  margin: 0 auto;
}
.page-template-landing-page .post-container,
.page-template-landing-page-header .post-container {
  padding: 0;
}

.elementor-location-header + .primary-container {
  margin-top: 1.5em;
}
.elementor-location-header + .primary-container .sidebar-primary {
  margin-top: 0;
}

@media all and (min-width: 37.5em) {
  h1 {
    font-size: 1.3125em;
    /* 21px / 16px */
    line-height: 1.333;
    /* 28px */
  }

  h2 {
    font-size: 1.125em;
    /* 18px / 16px */
    line-height: 1.333;
    /* 24px */
  }
}
@media all and (min-width: 56.25em) {
  .main {
    width: 62.5005%;
    float: left;
    margin-right: 3.125025%;
  }

  .page-template-full-width .main {
    width: 100%;
    float: none;
    margin-right: 0;
  }

  .left-sidebar .main {
    float: right;
    margin-right: 0;
    margin-left: 3.125025%;
  }
}
@media all and (min-width: 68.75em) {
  h1 {
    font-size: 1.75em;
    /* 28px / 16px */
    line-height: 1.357;
    /* 38px */
  }

  h2 {
    font-size: 1.3125em;
    /* 21px / 16px */
    line-height: 1.333;
    /* 28px */
  }

  h3, .comment-respond .comment-reply-title {
    font-size: 1.125em;
    /* 18px / 16px */
    line-height: 1.333;
    /* 24px */
  }
}
.archive-header {
  margin-bottom: 0.75em;
  color: #ffffff;
}
.archive-header h1,
.archive-header h2 {
  display: inline-block;
  font-weight: 300;
  background: #242424;
  padding: 6px 14px 6px 14px;
}
.archive-header h1 .query,
.archive-header h2 .query {
  font-weight: 700;
}
.archive-header i {
  margin-right: 4px;
}
.archive-header p {
  display: inline-block;
  margin: 0;
  color: #D4D4D4;
  background: #242424;
  padding: 6px 14px 6px 14px;
}

.more-link,
.comments-link {
  display: inline-block;
}

.post-content .more-link,
.post-content .comments-link a {
  text-decoration: none;
}

.more-link {
  border: solid 1px #000000;
  padding: 6px 12px;
  margin-right: 12px;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.more-link:hover, .more-link:active, .more-link:focus {
  color: #ffffff;
  background: #000000;
}

.more-link-wrapper {
  display: inline-block;
}

.comments-link {
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.comments-link a:hover, .comments-link a:active, .comments-link a:focus {
  text-decoration: underline;
}
.comments-link i {
  margin-right: 1px;
}

.entry.sticky .post-title {
  margin-top: -12px;
}
.entry.sticky.has-post-thumbnail .post-title {
  margin-top: 0;
}
.entry.sticky.has-post-thumbnail .sticky-status {
  position: absolute;
  top: 0.75em;
  left: -4px;
  background: #ffffff;
}

.sticky-status {
  position: relative;
  display: inline-block;
  top: -1.5em;
  left: 0;
  padding: 0 12px 2px;
  background: #D4D4D4;
  font-weight: 400;
}
.search .entry.sticky {
  display: none;
}

@media all and (min-width: 68.75em) {
  .entry.sticky .post-title {
    margin-top: -12px;
  }

  .sticky-status {
    top: -1.875em;
  }
}
.comment-respond label {
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
}
.comment-respond .comment-form-cookies-consent label {
  display: inline-block;
  font-weight: 400;
}
.comment-respond p {
  margin: 1.125em 0;
}
.comment-respond p.comment-notes {
  margin: 1.5em 0;
}
.comment-respond p.form-submit {
  margin-top: 2.25em;
}

@media all and (min-width: 37.5em) {
  .comment-respond {
    padding-top: 2.25em;
  }
}
.comments-number {
  padding-top: 18px;
  padding-bottom: 18px;
}
.comments-number h2 {
  font-size: 1em;
  line-height: 1.5;
}

.comment-list,
.comment-list .children {
  margin: 0.75em 0;
  list-style: none;
}

.comment-list .children {
  padding-left: 1.5em;
  border-left: solid 1px #D4D4D4;
}

li.comment,
li.pingback {
  position: relative;
  margin-bottom: 0.75em;
}
li.comment.bypostauthor > article,
li.pingback.bypostauthor > article {
  border: solid 5px #D4D4D4;
}

.comment-author .avatar {
  border-radius: 50%;
  width: 3em;
  height: 3em;
  float: left;
  margin-right: 0.75em;
}
.comment-author .author-name {
  display: block;
  font-weight: 700;
}
.comment-author .comment-date {
  float: left;
}
.comment-author:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.comment-content {
  margin: 1.5em 0;
}
.comments-closed,
.comments-link {
  display: none !important;
}

.comment-footer {
  position: absolute;
  top: 1.5em;
  right: 4.6875375%;
}
.comment-footer a,
.comment-footer i {
  vertical-align: text-top;
}
.comment-footer a {
  font-weight: 700;
  margin-left: 4px;
}
.comment-footer i.fa-edit {
  margin-left: 6px;
}

.comment-pagination {
  margin-bottom: 0.75em;
}
.comment-pagination p {
  display: inline-block;
  margin: 0 -4px 0 0;
  width: 50%;
}
.comment-pagination a {
  font-weight: 700;
}
.comment-pagination .next-comment {
  float: right;
  text-align: right;
}
.comment-pagination:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

@media all and (min-width: 37.5em) {
  li.comment > article,
li.pingback > article {
    padding-top: 2.25em;
  }
}
@media all and (min-width: 68.75em) {
  .comments-number h2 {
    font-size: 1.125em;
    /* 18px / 16px */
    line-height: 1.333;
    /* 24px */
  }
}
.site-footer {
  text-align: center;
  background: #000000;
  margin-top: 3.75em;
  color: #D4D4D4;
  clear: both;
}
.site-footer a {
  font-weight: 700;
}

.design-credit {
  background: #242424;
  padding: 9px 5.5556%;
  margin-top: 1.875em;
}
.scroll-to-top {
  position: fixed;
  bottom: -45px;
  right: 0;
  z-index: 9;
  background: #242424;
  border: none;
  color: #fff;
  padding: 9px 0;
  width: 60px;
  -webkit-transition: background 0.2s, -webkit-transform 0.3s;
          transition: background 0.2s, transform 0.3s;
}
.scroll-to-top.visible {
  -webkit-transform: translateY(-45px);
          transform: translateY(-45px);
}
.scroll-to-top:hover {
  cursor: pointer;
  background: #666666;
}
.scroll-to-top:hover i {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.scroll-to-top i {
  font-size: 21px;
  -webkit-transition: -webkit-transform 0.2s;
          transition: transform 0.2s;
}

/**
 * 14.2 Galleries
 */
.gallery {
  margin: 2.25em auto;
}

.gallery-item {
  display: inline-block;
  padding: 0.75em;
  text-align: center;
  vertical-align: top;
  width: 100%;
  margin: 0;
}
.gallery-item img {
  max-width: 100%;
  max-height: 100%;
}
.gallery-item a {
  border: none;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

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

.gallery-caption {
  display: block;
  font-size: 12px;
  padding: 0.5em 0 0;
  margin: 0;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
  display: none;
}

/* Jetpack Galleries */
.tiled-gallery {
  margin: 2.25em auto !important;
}
.tiled-gallery .gallery-row {
  margin: 0 auto;
}

.site-header {
  background: #000000;
  color: #ffffff;
  text-align: center;
  padding: 36px 5.5556% 5.25em;
}
.site-header:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.site-title {
  font-family: "Cormorant Garamond", Georgia, Cambria, "Times New Roman", Times, serif;
  font-weight: 900;
  font-size: 2em;
  line-height: 1;
  letter-spacing: -2px;
}
.tagline {
  color: #D4D4D4;
  margin: 0;
}

.logo {
  max-width: 100%;
  width: 168px;
  height: auto;
}

.social-media-icons {
  list-style: none;
  margin: 0 0 1.5em 0;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.social-media-icons li {
  display: inline-block;
  margin-right: 20px;
}
.social-media-icons li:last-child {
  margin-right: 0;
}
.social-media-icons a {
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
}
.social-media-icons.fade {
  opacity: 0;
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}
.social-media-icons.custom-icon img {
  line-height: 0;
  margin: 0;
  width: 20px;
  height: auto;
}

@media all and (min-width: 56.25em) {
  .site-header {
    text-align: left;
  }

  .title-container {
    position: relative;
    z-index: 9;
    margin-bottom: 2.25em;
    float: left;
  }

  .site-title,
.tagline {
    display: inline-block;
  }

  .tagline {
    margin-left: 6px;
  }

  .icon-container {
    float: right;
  }

  .social-media-icons {
    display: inline-block;
    margin: 0;
  }
}
.pagination {
  text-align: center;
  margin-bottom: 1.5em;
}
.pagination .prev,
.pagination .next {
  font-weight: 700;
}
.pagination .prev {
  float: left;
  margin-left: 0;
}
.pagination .prev:before {
  content: "«";
  margin-right: 4px;
}
.pagination .next {
  float: right;
  margin-right: 0;
}
.pagination .next:after {
  content: "»";
  margin-left: 4px;
}
.pagination a,
.pagination span {
  margin: 0 0.75em;
}
.pagination a.current,
.pagination span.current {
  padding: 2px 8px;
  background: #EDEDED;
}

@media all and (min-width: 37.5em) {
  .pagination {
    position: relative;
  }
  .pagination.prev, .pagination.next {
    position: absolute;
  }
  .pagination.prev {
    left: 0;
  }
  .pagination.next {
    right: 0;
  }
}
.toggle-navigation {
  font-size: 1em;
  background: 0;
  padding: 0;
  border: none;
  margin: 1.5em 0 1.875em 0;
}
.toggle-navigation:hover {
  cursor: pointer;
}

.menu-primary-container {
  position: relative;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.3s ease-in-out;
          transition: max-height 0.3s ease-in-out;
}

.menu-primary {
  color: #ffffff;
  margin: 1.5em 0 2.25em;
  /***** Tier 2 *****/
}
.menu-primary ul {
  margin: 0;
  list-style: none;
}
.menu-primary li {
  margin-bottom: 6px;
}
.menu-primary li:last-child {
  margin-bottom: 0;
}
.menu-primary li.current-menu-item > a, .menu-primary li.current_page_item > a, .menu-primary li.current-menu-ancestor > a {
  background: #242424;
}
.menu-primary li.current-menu-item > a:hover, .menu-primary li.current-menu-item > a:active, .menu-primary li.current-menu-item > a:focus, .menu-primary li.current_page_item > a:hover, .menu-primary li.current_page_item > a:active, .menu-primary li.current_page_item > a:focus, .menu-primary li.current-menu-ancestor > a:hover, .menu-primary li.current-menu-ancestor > a:active, .menu-primary li.current-menu-ancestor > a:focus {
  background: #ffffff;
}
.menu-primary a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  z-index: 9;
  overflow: hidden;
  padding: 0 8px 2px 8px;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.menu-primary a:hover, .menu-primary a:active, .menu-primary a:focus {
  color: #000000;
  background: #ffffff;
}
.menu-primary ul ul {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.3s ease-in-out;
          transition: max-height 0.3s ease-in-out;
}
.menu-primary ul ul li:first-child {
  margin-top: 6px;
}
.menu-primary ul ul li:last-child {
  margin-bottom: 6px;
}
.menu-primary ul ul li.current-menu-item > a, .menu-primary ul ul li.current_page_item > a {
  background: none;
  font-weight: 700;
}
.menu-primary .toggle-dropdown {
  display: inline-block;
  vertical-align: middle;
  font-size: 1em;
  margin: 0 -26px 0 2px;
  padding: 2px 6px;
  border: solid 1px #D4D4D4;
  background: none;
  color: #ffffff;
}
.menu-primary .toggle-dropdown:hover {
  cursor: pointer;
}
.menu-primary .toggle-dropdown .arrow {
  display: inline-block;
}
.menu-primary .toggle-dropdown .arrow:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
.menu-primary .open > ul {
  max-height: 999px;
}
.menu-primary .open > .toggle-dropdown .arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

@media all and (min-width: 56.25em) {
  .toggle-navigation {
    display: none;
  }

  .menu-primary-container {
    max-height: none;
    margin-bottom: 1.875em;
    overflow: visible;
  }

  .menu-primary {
    margin: 0;
    clear: both;
    /***** Tier 2 *****/
  }
  .menu-primary .toggle-dropdown {
    display: none;
  }
  .menu-primary li {
    -webkit-transition: all 0.2s;
            transition: all 0.2s;
  }
  .menu-primary li:hover, .menu-primary li:active {
    color: #000000;
    background: #ffffff;
  }
  .menu-primary li:hover > a, .menu-primary li:active > a {
    color: #000000;
    background: #ffffff;
  }
  .menu-primary ul ul {
    position: absolute;
    z-index: 19;
    top: 100%;
    top: calc(100% + 4px);
    max-height: none;
    overflow: visible;
    background: #ffffff;
    left: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.2s;
            transition: all 0.2s;
  }
  .menu-primary ul ul:hover, .menu-primary ul ul.focused {
    opacity: 1;
    visibility: visible;
    top: 100%;
  }
  .menu-primary ul ul li {
    white-space: nowrap;
    margin: 0 10px 6px 0;
  }
  .menu-primary ul ul li.current-menu-ancestor {
    background: none;
  }
  .menu-primary ul ul li.current-menu-ancestor > a {
    background: none;
    font-weight: 700;
  }
  .menu-primary ul ul a {
    color: #000000;
    width: 100%;
  }
  .menu-primary ul ul a:link, .menu-primary ul ul a:visited {
    color: #000000;
  }
  .menu-primary li {
    display: inline-block;
    margin: 0 10px 0 0;
  }
  .menu-primary li.menu-item-has-children {
    position: relative;
    /***** Tier 3+ *****/
  }
  .menu-primary li.menu-item-has-children:hover > a:after {
    top: 2px;
  }
  .menu-primary li.menu-item-has-children > a:hover ~ ul, .menu-primary li.menu-item-has-children > a:active ~ ul, .menu-primary li.menu-item-has-children > a:focus ~ ul {
    opacity: 1;
    visibility: visible;
    top: 100%;
  }
  .menu-primary li.menu-item-has-children > a:hover:after, .menu-primary li.menu-item-has-children > a:active:after, .menu-primary li.menu-item-has-children > a:focus:after {
    top: 2px;
  }
  .menu-primary li.menu-item-has-children > a:after {
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: relative;
    top: 0;
    margin-left: 4px;
    -webkit-transition: top 0.2s ease;
            transition: top 0.2s ease;
  }
  .menu-primary li.menu-item-has-children ul li {
    display: list-item;
  }
  .menu-primary li.menu-item-has-children ul .menu-item-has-children:hover a:after, .menu-primary li.menu-item-has-children ul .menu-item-has-children:active a:after {
    right: -2px;
    top: 0;
  }
  .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:after {
    content: "";
    -webkit-transition: right 0.2s ease;
            transition: right 0.2s ease;
  }
  .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:hover ~ ul, .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:active ~ ul, .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:focus ~ ul {
    opacity: 1;
    visibility: visible;
    top: -6px;
    left: 100%;
  }
  .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:hover:after, .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:active:after, .menu-primary li.menu-item-has-children ul .menu-item-has-children > a:focus:after {
    top: 0;
    right: -2px;
  }
  .menu-primary li.menu-item-has-children ul ul {
    top: -6px;
    left: 100%;
    left: calc(100% + 4px);
  }
  .menu-primary li.menu-item-has-children ul ul:hover, .menu-primary li.menu-item-has-children ul ul.focused {
    top: -6px;
    left: 100%;
  }

  .rtl .menu-primary ul li.menu-item-has-children > a:after {
    display: none;
  }
  .rtl .menu-primary ul li.menu-item-has-children > a:before {
    position: relative;
    top: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "";
    margin-left: 4px;
    -webkit-transition: top 0.2s ease;
            transition: top 0.2s ease;
  }
  .rtl .menu-primary ul ul {
    right: auto;
    left: 0;
  }
  .rtl .menu-primary ul ul li.menu-item-has-children a:before {
    content: "";
  }
  .rtl .menu-primary ul ul li.menu-item-has-children a:hover ~ ul, .rtl .menu-primary ul ul li.menu-item-has-children a:active ~ ul, .rtl .menu-primary ul ul li.menu-item-has-children a:focus ~ ul {
    right: auto;
    left: 100%;
  }
  .rtl .menu-primary ul ul ul:hover, .rtl .menu-primary ul ul ul.focused {
    right: auto;
    left: 100%;
  }
}
.entry {
  position: relative;
  margin-bottom: 1.5em;
}
.entry > article {
  background: #ffffff;
  box-shadow: 0 0 2px 0 rgba(58, 58, 58, 0.2);
}

.post-container {
  padding: 1.5em 4.6875375%;
  margin-bottom: 0.75em;
}

.featured-image {
  position: relative;
  height: 0;
  padding-bottom: 50%;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.featured-image > a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-size: 0;
}
.featured-image > a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #ffffff;
  opacity: 0;
  -webkit-transition: opacity 0.1s ease-in-out;
          transition: opacity 0.1s ease-in-out;
}
.featured-image > a:focus:after {
  opacity: 0.2;
}
.featured-image > img,
.featured-image > a > img {
  position: absolute;
  left: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.featured-image > img.no-object-fit,
.featured-image > a > img.no-object-fit {
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  width: auto;
  top: 50%;
  right: 50%;
  left: auto;
  -webkit-transform: translateX(50%) translateY(-50%);
          transform: translateX(50%) translateY(-50%);
}
.featured-image .ccfic {
  position: absolute;
  width: 100%;
  bottom: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  color: #ffffff;
  padding: 4px 4px 4px 12px;
  font-size: 13px;
}
.featured-image .ccfic a {
  color: #fff;
  text-decoration: underline;
  margin-left: 4px;
}
.featured-image .ccfic a:link, .featured-image .ccfic a:visited {
  color: #fff;
}

.post-header {
  margin: 0 0 1.5em 0;
}

.post-byline .date,
.post-byline .author {
  font-weight: 700;
  text-decoration: underline;
}
.post-byline .date:hover, .post-byline .date:active, .post-byline .date:focus,
.post-byline .author:hover,
.post-byline .author:active,
.post-byline .author:focus {
  text-decoration: none;
}

.post-content a {
  text-decoration: underline;
  font-weight: 700;
}
.post-content a:hover, .post-content a:active, .post-content a:focus {
  text-decoration: none;
}
.post-content iframe {
  max-width: 100%;
}
.post-content:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.post-meta {
  margin: 1.875em 0 0.75em;
}

.post-categories {
  margin-bottom: 1.71em;
}
.post-categories a {
  font-weight: 700;
}
.post-categories a:hover, .post-categories a:active, .post-categories a:focus {
  text-decoration: underline;
}

.post-tags {
  margin-bottom: 1.125em;
}
.post-tags ul {
  list-style: none;
  margin: 0;
}
.post-tags li {
  display: inline-block;
}
.post-tags a {
  display: inline-block;
  padding: 0 12px;
  border: solid 1px #000000;
  margin: 0 6px 6px 0;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.post-tags a:hover, .post-tags a:active, .post-tags a:focus {
  background: #000000;
  color: #ffffff;
}

.further-reading .previous {
  margin-bottom: 0.75em;
}
.further-reading a {
  font-weight: 700;
  display: block;
}
.further-reading a:hover, .further-reading a:active, .further-reading a:focus {
  text-decoration: underline;
}

.singular-pagination a {
  font-weight: 700;
  text-decoration: underline;
}
.singular-pagination a:hover, .singular-pagination a:after, .singular-pagination a:focus {
  text-decoration: none;
}

.last-updated {
  font-style: italic;
}

.wp-block-image.alignfull,
.wp-block-cover {
  position: relative;
  left: -5.2%;
  width: 110.4%;
  max-width: none;
}

.wp-block-image.alignwide {
  position: relative;
  left: -2.6%;
  width: 105.2%;
  max-width: none;
}

.wp-block-quote.is-large {
  padding-left: 0;
  border-left: none;
  margin: 1.5em;
}

.wp-block-embed {
  margin: 1.5em 0;
}

.wp-block-code code {
  background: none;
}

.wp-block-button a {
  font-weight: 400;
  text-decoration: none;
  color: #fff;
}
.wp-block-button a:link, .wp-block-button a:visited {
  color: #fff;
}

.wp-block-social-links a {
  color: #fff;
}

@media all and (min-width: 37.5em) {
  .post-title {
    font-size: 1.3125em;
    /* 21px / 16px */
    line-height: 1.333;
    /* 28px */
  }

  .further-reading div {
    width: 50%;
    display: inline-block;
    vertical-align: top;
    margin-right: -4px;
  }
  .further-reading .previous {
    margin-bottom: 0;
  }
  .further-reading .next {
    text-align: right;
  }
}
@media all and (min-width: 56.25em) {
  .post-container {
    padding: 1.5em 7.50006%;
  }

  .wp-block-image.alignfull,
.wp-block-cover {
    left: -8.8%;
    width: 117.6%;
  }

  .wp-block-image.alignwide {
    left: -4.4%;
    width: 108.8%;
  }
}
@media all and (min-width: 68.75em) {
  .post-container {
    padding: 1.875em 7.50006% 2.25em;
  }

  .post-title {
    font-size: 1.75em;
    /* 28px / 16px */
    line-height: 1.357;
    /* 38px */
  }
}
.search-form-container .search-submit {
  min-width: 99px;
}

.site-header .search-form-container {
  position: absolute;
  right: 6px;
  top: 0.75em;
  z-index: 19;
}
.site-header .search-form-container button {
  position: relative;
  z-index: 9;
  background: none;
  border: none;
  margin: 5px -10px 0 0;
  padding: 6px 10px;
  font-size: 1em;
  line-height: 1.5;
}
.site-header .search-form-container button:hover {
  cursor: pointer;
}
.site-header .search-form-container button:hover i, .site-header .search-form-container button:active i, .site-header .search-form-container button:focus i {
  color: #D4D4D4;
}
.site-header .search-form-container button.open i {
  color: #000000;
}
.site-header .search-form-container button.open + form {
  opacity: 1;
}
.site-header .search-form-container i {
  color: #ffffff;
  z-index: -1;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.site-header .search-form-container form {
  position: absolute;
  top: -2px;
  right: -12px;
  left: 0;
  padding-top: 6px;
  opacity: 0;
  -webkit-transition: opacity 0.15s ease-in-out, left 0.15s ease-in-out;
          transition: opacity 0.15s ease-in-out, left 0.15s ease-in-out;
}
.site-header .search-form-container .search-field {
  max-width: none !important;
  outline: none !important;
  padding: 6px 12px !important;
}
.site-header .search-form-container .search-field::-webkit-search-decoration, .site-header .search-form-container .search-field::-webkit-search-cancel-button, .site-header .search-form-container .search-field::-webkit-search-results-button, .site-header .search-form-container .search-field::-webkit-search-results-decoration {
  -webkit-appearance: none;
}
.site-header .search-form-container .search-field::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}
.site-header .search-form-container .search-field::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}
.site-header .search-form-container .search-field:focus {
  background: #ffffff !important;
  outline: solid 1px #EDEDED !important;
  -webkit-animation: pulse 1s infinite;
          animation: pulse 1s infinite;
}

@media all and (min-width: 56.25em) {
  .site-header .search-form-container {
    position: relative;
    float: right;
    top: -5px;
    right: 0;
    z-index: 9;
    text-align: right;
    margin: 0 0 0 1.5em;
  }
  .site-header .search-form-container button {
    margin: 0;
    padding: 4px 10px;
  }
  .site-header .search-form-container button:hover {
    cursor: pointer;
  }
  .site-header .search-form-container button.open + form {
    left: -266px;
  }
  .site-header .search-form-container form {
    padding-top: 0;
    right: 0;
  }
}
@-webkit-keyframes pulse {
  0% {
    outline-color: #000000;
  }
  50% {
    outline-color: #EDEDED;
  }
  100% {
    outline-color: #000000;
  }
}
@keyframes pulse {
  0% {
    outline-color: #000000;
  }
  50% {
    outline-color: #EDEDED;
  }
  100% {
    outline-color: #000000;
  }
}
.search-bottom p {
  margin-top: 0;
}

.sidebar-primary .widget {
  margin-bottom: 0.75em;
}
.sidebar-primary .widget .widget-title {
  font-size: 1em;
  line-height: 1.5;
}

@media all and (min-width: 56.25em) {
  .sidebar-primary {
    width: 34.375275%;
    float: left;
    margin-top: 3em;
  }
  .sidebar-primary .widget {
    padding-top: 1.875em;
  }
}
.widget-title {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 1.5em;
}

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

.widget_calendar a:hover, .widget_calendar a:active, .widget_calendar a:focus {
  text-decoration: none;
}
.widget_calendar caption {
  margin-bottom: 6px;
}
.widget_calendar table {
  margin: 0 auto 0.75em;
  width: 100%;
  text-align: center;
}
.widget_calendar thead {
  background: #EDEDED;
}
.widget_calendar th,
.widget_calendar tr,
.widget_calendar td {
  border-color: #D4D4D4;
}
.widget_calendar #today {
  background: #000000;
  color: #ffffff;
}
.widget_calendar #prev,
.widget_calendar #next,
.widget_calendar .pad {
  padding: 0;
}
.widget_calendar #prev a,
.widget_calendar #next a,
.widget_calendar .pad a {
  display: block;
  padding: 8px;
}
.widget_calendar #prev a:hover, .widget_calendar #prev a:active, .widget_calendar #prev a:focus,
.widget_calendar #next a:hover,
.widget_calendar #next a:active,
.widget_calendar #next a:focus,
.widget_calendar .pad a:hover,
.widget_calendar .pad a:active,
.widget_calendar .pad a:focus {
  background: #EDEDED;
}

.widget_nav_menu .current-menu-item > a {
  font-weight: 700;
}

.widget_recent_comments a {
  text-decoration: underline;
}
.widget_recent_comments a:hover, .widget_recent_comments a:active, .widget_recent_comments a:focus {
  text-decoration: none;
}

.widget_recent_entries .post-date {
  font-size: 12px;
  line-height: 1.5;
  display: block;
  margin-bottom: 6px;
}

.widget_search .search-field {
  width: 74% !important;
  width: calc(75% - 6px) !important;
  float: left;
  margin-right: 2px;
}
.widget_search .search-submit {
  width: auto !important;
  max-width: 25% !important;
  min-width: 25% !important;
}
.widget_search:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.widget_rss .widget-title img {
  margin-right: 4px;
}
.widget_rss .widget-title a:hover, .widget_rss .widget-title a:active, .widget_rss .widget-title a:focus {
  text-decoration: none;
}
.widget_rss .rssSummary {
  margin: 0.75em 1.5em;
  color: #666666;
}
.widget_rss .rssSummary + cite {
  display: block;
  margin: 0 0 1.5em 1.5em;
}
.widget_rss .rss-date {
  font-style: italic;
}
.widget_rss li {
  display: block;
}
.widget_rss cite,
.widget_rss span {
  margin-bottom: 1.5em;
  display: block;
}
.widget_rss span + cite {
  margin-top: -1.5em;
}

.single-attachment .attachment-container img {
  display: block;
}
.rtl .featured-image > a > img, .rtl .featured-image > img {
  right: initial;
}

.woocommerce .entry {
  padding: 1.5em 5.5556%;
  background: #ffffff;
}
.woocommerce a {
  border-bottom: none;
}
.woocommerce .product .quantity .qty {
  width: 50px !important;
  font-size: 16px !important;
  padding: 11px 6px 11px 12px !important;
}
.woocommerce .product .single_add_to_cart_button {
  line-height: 1.5;
  padding: 12px 24px;
}
.woocommerce .product_meta a {
  text-decoration: underline;
}
.woocommerce .woocommerce-review-link {
  text-decoration: underline;
}
.woocommerce .woocommerce-Reviews-title,
.woocommerce .related h2,
.woocommerce .upsells h2 {
  margin-bottom: 24px;
}
.woocommerce .comment-reply-title {
  display: block;
  margin-bottom: 12px;
  color: #242424;
  font-weight: 700;
}
.woocommerce .comment-respond {
  box-shadow: none;
}
.woocommerce .woocommerce-loop-product__title,
.woocommerce .price {
  padding-right: 8px !important;
  padding-left: 8px !important;
}
.woocommerce .add_to_cart_button {
  display: block !important;
  text-align: center;
  border-radius: 0 0 3px 3px !important;
}
.woocommerce .added_to_cart {
  display: block !important;
  text-align: center;
}

.woocommerce-cart th, .woocommerce-cart td,
.woocommerce-checkout th,
.woocommerce-checkout td,
.woocommerce-account th,
.woocommerce-account td,
.woocommerce-page th,
.woocommerce-page td {
  border: none;
}
.woocommerce-cart h2,
.woocommerce-cart h3,
.woocommerce-cart .comment-respond .comment-reply-title,
.comment-respond .woocommerce-cart .comment-reply-title,
.woocommerce-checkout h2,
.woocommerce-checkout h3,
.woocommerce-checkout .comment-respond .comment-reply-title,
.comment-respond .woocommerce-checkout .comment-reply-title,
.woocommerce-account h2,
.woocommerce-account h3,
.woocommerce-account .comment-respond .comment-reply-title,
.comment-respond .woocommerce-account .comment-reply-title,
.woocommerce-page h2,
.woocommerce-page h3,
.woocommerce-page .comment-respond .comment-reply-title,
.comment-respond .woocommerce-page .comment-reply-title {
  margin-bottom: 24px;
}
.woocommerce-cart input,
.woocommerce-checkout input,
.woocommerce-account input,
.woocommerce-page input {
  max-width: none;
}

.woocommerce-cart .main,
.woocommerce-checkout .main,
.woocommerce-account .main {
  float: none;
  margin: 0 auto;
}

.woocommerce-cart .quantity input {
  width: 50px !important;
  font-size: 14px !important;
  padding: 8px 4px !important;
}
.woocommerce-cart .coupon input {
  max-width: none !important;
  width: 49% !important;
  padding: 10px 12px;
}
.woocommerce-cart .coupon input[type=text] {
  font-size: 14px !important;
  padding: 7px 12px 8px !important;
}
.woocommerce-cart table.shop_table td.product-name {
  padding: 24px 12px;
}
.woocommerce-cart table.shop_table .actions {
  padding: 12px;
}
.woocommerce-cart .post-content a.remove {
  text-decoration: none;
}
.woocommerce-cart .post-content .checkout-button {
  text-decoration: none;
}

.woocommerce-checkout input {
  max-width: none;
}
.woocommerce-checkout .required {
  text-decoration: none;
}
.woocommerce-checkout #customer_details {
  margin-bottom: 24px;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
  width: auto;
  float: none;
}

.woocommerce .col-2 {
  margin-top: 1.5em;
}

.woocommerce-account .woocommerce {
  position: relative;
  border: solid 1px #F7F7F7;
  border-radius: 6px;
  min-height: 260px;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #F7F7F7;
  padding: 1.5em;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin-bottom: 12px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  text-decoration: underline;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  font-size: 0.75em;
  line-height: 1.5;
  text-decoration: none;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover, .woocommerce-account .woocommerce-MyAccount-navigation li a:active, .woocommerce-account .woocommerce-MyAccount-navigation li a:focus {
  text-decoration: underline;
}
.woocommerce-account .woocommerce-MyAccount-content {
  padding: 1.5em;
}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
  margin-top: 0;
}
.woocommerce-account .woocommerce-MyAccount-content fieldset {
  margin: 1.5em 0;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .button {
  margin-top: 18px;
}
.woocommerce-account .woocommerce-MyAccount-content .button {
  text-decoration: none;
}
.woocommerce-account .woocommerce-message {
  z-index: 9;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
  top: -26px;
}
.woocommerce-account .col-2.woocommerce-Address {
  margin-top: 1.5em;
}

.woocommerce form .form-row .required {
  text-decoration: none;
}

.post-type-archive-product.woocommerce .loop-container,
.archive.woocommerce .loop-container {
  padding: 24px 2.7778%;
  background: #fff;
}

.bbpress .entry {
  padding: 1.5em;
  background: #ffffff;
  box-shadow: 0 0 2px 0 rgba(58, 58, 58, 0.2);
}

div.bbp-breadcrumb {
  display: inline-block;
  float: none;
}

#subscription-toggle {
  font-weight: 400;
  margin-left: 6px;
  text-decoration: underline;
}

span.bbp-admin-links,
span.bbp-admin-links a,
.bbp-reply-header a.bbp-reply-permalink {
  color: #666666;
}

#bbpress-forums p.bbp-topic-meta img.avatar,
#bbpress-forums ul.bbp-reply-revision-log img.avatar,
#bbpress-forums ul.bbp-topic-revision-log img.avatar,
#bbpress-forums div.bbp-template-notice img.avatar,
#bbpress-forums .widget_display_topics img.avatar,
#bbpress-forums .widget_display_replies img.avatar {
  margin: 0 0 -3px;
  display: inline-block;
}

.bbp-form textarea {
  max-width: none;
}

/*

ATTENTION:

Please do not edit this. Your changes will be overwritten when you update Period.

If you want to make CSS edits, use the "Custom CSS" section in the Customizer instead (Appearance > Customize).

If you want more information about customizing Period with CSS, check out this guide: https://www.competethemes.com/help/custom-css-period/

*/

/* ===== Post License Box ===== */

.post-license {
  margin-top: 2.25em;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  padding-top: 1.5em;
}

.post-license__meta {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}

.post-license__row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25em 0.75em;
  font-size: 0.75em;
  line-height: 1.5;
}

.post-license__row dt {
  font-weight: 700;
  color: #000000;
  min-width: 130px;
  flex-shrink: 0;
}

.post-license__row dd {
  margin: 0;
  color: #666666;
  word-break: break-all;
}

.post-license__row dd a {
  color: #000000;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  text-decoration-thickness: 1px;
}

.post-license__row dd a:hover {
  color: #666666;
}

/* ===== Footer Copyright ===== */

.design-credit__copyright {
  font-size: 0.75em;
  line-height: 1.5;
  color: #D4D4D4;
  margin: 0 0 0.5em 0;
}

.design-credit__copyright a {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.design-credit__copyright a:hover {
  color: #D4D4D4;
}

/* ===== Heading Sizes — clamp based ===== */

h1 {
  font-size: clamp(54px, 8vw, 106px);
  line-height: clamp(52px, 7.2vw, 95px);
}

h2 {
  font-size: clamp(42px, 5.8vw, 76px);
  line-height: clamp(44px, 5.6vw, 76px);
}

h3 {
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: clamp(38px, 4.4vw, 60px);
}

h4 {
  font-size: clamp(28px, 3vw, 42px);
  line-height: clamp(34px, 3.4vw, 48px);
}

h5 {
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: clamp(30px, 2.8vw, 40px);
}

/* ===== Post Title ===== */

.post-title,
.entry-title {
  font-family: "Cormorant Garamond", Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: clamp(35px, 4.2vw, 58px);
  line-height: 1.12;
  font-weight: 400;
  letter-spacing: -0.02em;
  color: rgb(18, 18, 18);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.post-title a,
.entry-title a {
  color: inherit;
  text-decoration: none;
}

.post-title a:hover,
.entry-title a:hover {
  color: #000000;
  text-decoration: none;
}

/* ===== Content Typography System ===== */

.article-content,
.entry-content,
.wp-block-post-content {
  font-family: "source-serif-pro", Inter, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: clamp(18px, 1.1vw, 20px);
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: -0.06px;
  color: rgb(36, 36, 36);
  overflow-wrap: break-word;
  word-break: break-word;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}

.article-content *,
.article-content *::before,
.article-content *::after,
.entry-content *,
.entry-content *::before,
.entry-content *::after,
.wp-block-post-content *,
.wp-block-post-content *::before,
.wp-block-post-content *::after {
  box-sizing: border-box;
}

.article-content p,
.entry-content p,
.wp-block-post-content p {
  box-sizing: border-box;
  color: rgb(36, 36, 36);
  color-scheme: light;
  display: block;
  font-family: "Inter", "Inter Variable", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-size: clamp(18px, 1.12vw, 20px);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.06px;
  line-height: 1.6;
  margin-top: clamp(28px, 4vw, 42.8px);
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  overflow-wrap: break-word;
  word-break: break-word;
  text-rendering: optimizeLegibility;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}

.article-content > p:first-child,
.entry-content > p:first-child,
.wp-block-post-content > p:first-child {
  margin-top: 0;
}

.article-content strong,
.article-content b,
.entry-content strong,
.entry-content b,
.wp-block-post-content strong,
.wp-block-post-content b {
  font-weight: 700;
  color: rgb(28, 28, 28);
}

.article-content em,
.article-content i,
.entry-content em,
.entry-content i,
.wp-block-post-content em,
.wp-block-post-content i {
  font-style: italic;
}

.article-content strong em,
.article-content em strong,
.article-content b i,
.article-content i b,
.entry-content strong em,
.entry-content em strong,
.entry-content b i,
.entry-content i b,
.wp-block-post-content strong em,
.wp-block-post-content em strong,
.wp-block-post-content b i,
.wp-block-post-content i b {
  font-weight: 700;
  font-style: italic;
}

.article-content a,
.entry-content a,
.wp-block-post-content a {
  color: inherit;
  text-decoration-line: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
  text-decoration-color: rgba(36, 36, 36, 0.45);
  transition: text-decoration-color 160ms ease, color 160ms ease;
}

.article-content a:hover,
.entry-content a:hover,
.wp-block-post-content a:hover {
  color: rgb(0, 0, 0);
  text-decoration-color: currentColor;
}

.article-content q,
.entry-content q,
.wp-block-post-content q {
  font-style: italic;
  quotes: "\201C" "\201D" "\2018" "\2019";
}

.article-content q::before,
.entry-content q::before,
.wp-block-post-content q::before { content: open-quote; }

.article-content q::after,
.entry-content q::after,
.wp-block-post-content q::after { content: close-quote; }

.article-content blockquote,
.entry-content blockquote,
.wp-block-post-content blockquote,
.article-content .wp-block-quote,
.entry-content .wp-block-quote,
.wp-block-post-content .wp-block-quote {
  margin-top: clamp(36px, 5vw, 56px);
  margin-right: 0;
  margin-bottom: clamp(36px, 5vw, 56px);
  margin-left: 0;
  padding-top: clamp(18px, 2.4vw, 28px);
  padding-right: clamp(22px, 4vw, 40px);
  padding-bottom: clamp(18px, 2.4vw, 28px);
  padding-left: clamp(22px, 4vw, 40px);
  border-left: 2px solid rgba(36, 36, 36, 0.28);
  color: rgb(36, 36, 36);
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 1.42;
  letter-spacing: -0.04em;
  font-style: normal;
}

.article-content blockquote p,
.entry-content blockquote p,
.wp-block-post-content blockquote p,
.article-content .wp-block-quote p,
.entry-content .wp-block-quote p,
.wp-block-post-content .wp-block-quote p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

.article-content blockquote cite,
.entry-content blockquote cite,
.wp-block-post-content blockquote cite,
.article-content .wp-block-quote cite,
.entry-content .wp-block-quote cite,
.wp-block-post-content .wp-block-quote cite {
  display: block;
  margin-top: 18px;
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.5;
  font-style: normal;
  letter-spacing: 0;
  color: rgba(36, 36, 36, 0.68);
}

.article-content .wp-block-pullquote,
.entry-content .wp-block-pullquote,
.wp-block-post-content .wp-block-pullquote {
  margin-top: clamp(44px, 6vw, 72px);
  margin-bottom: clamp(44px, 6vw, 72px);
  padding: clamp(28px, 5vw, 56px) 0;
  border-top: 1px solid rgba(36, 36, 36, 0.22);
  border-bottom: 1px solid rgba(36, 36, 36, 0.22);
  text-align: center;
}

.article-content .wp-block-pullquote blockquote,
.entry-content .wp-block-pullquote blockquote,
.wp-block-post-content .wp-block-pullquote blockquote {
  margin: 0;
  padding: 0;
  border-left: 0;
}

.article-content ul,
.article-content ol,
.entry-content ul,
.entry-content ol,
.wp-block-post-content ul,
.wp-block-post-content ol {
  margin-top: clamp(26px, 4vw, 40px);
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-left: clamp(22px, 4vw, 34px);
  font-size: clamp(18px, 1.1vw, 20px);
  line-height: 1.6;
  letter-spacing: -0.06px;
}

.article-content li,
.entry-content li,
.wp-block-post-content li {
  margin-top: 10px;
  padding-left: 4px;
}

.article-content li:first-child,
.entry-content li:first-child,
.wp-block-post-content li:first-child { margin-top: 0; }

.article-content li > ul,
.article-content li > ol,
.entry-content li > ul,
.entry-content li > ol,
.wp-block-post-content li > ul,
.wp-block-post-content li > ol { margin-top: 10px; }

.article-content code,
.entry-content code,
.wp-block-post-content code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 0.88em;
  line-height: 1.45;
  padding: 0.12em 0.34em;
  border-radius: 4px;
  background-color: rgba(36, 36, 36, 0.07);
  color: rgb(24, 24, 24);
  word-break: break-word;
}

.article-content pre,
.entry-content pre,
.wp-block-post-content pre {
  margin-top: clamp(32px, 5vw, 48px);
  margin-bottom: 0;
  padding: clamp(18px, 3vw, 28px);
  overflow-x: auto;
  border-radius: 10px;
  background-color: rgb(245, 245, 245);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.7;
  letter-spacing: 0;
}

.article-content pre code,
.entry-content pre code,
.wp-block-post-content pre code {
  padding: 0;
  border-radius: 0;
  background: transparent;
  font-size: inherit;
  line-height: inherit;
}

.article-content figure,
.entry-content figure,
.wp-block-post-content figure {
  margin-top: clamp(36px, 5vw, 56px);
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.article-content img,
.entry-content img,
.wp-block-post-content img {
  display: block;
  max-width: 100%;
  height: auto;
}

.article-content figcaption,
.entry-content figcaption,
.wp-block-post-content figcaption,
.article-content .wp-caption-text,
.entry-content .wp-caption-text,
.wp-block-post-content .wp-caption-text {
  margin-top: 10px;
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: clamp(13px, 0.95vw, 15px);
  line-height: 1.5;
  letter-spacing: 0;
  color: rgba(36, 36, 36, 0.64);
}

.article-content table,
.entry-content table,
.wp-block-post-content table {
  width: 100%;
  margin-top: clamp(36px, 5vw, 56px);
  margin-bottom: 0;
  border-collapse: collapse;
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.5;
  letter-spacing: 0;
}

.article-content th,
.article-content td,
.entry-content th,
.entry-content td,
.wp-block-post-content th,
.wp-block-post-content td {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(36, 36, 36, 0.16);
  text-align: left;
  vertical-align: top;
}

.article-content th,
.entry-content th,
.wp-block-post-content th {
  font-weight: 700;
  color: rgb(24, 24, 24);
}

.article-content hr,
.entry-content hr,
.wp-block-post-content hr {
  margin-top: clamp(44px, 6vw, 72px);
  margin-bottom: clamp(44px, 6vw, 72px);
  border: 0;
  border-top: 1px solid rgba(36, 36, 36, 0.18);
}

.article-content mark,
.entry-content mark,
.wp-block-post-content mark {
  padding: 0.08em 0.18em;
  background-color: rgba(255, 225, 120, 0.55);
  color: inherit;
}

.article-content small,
.entry-content small,
.wp-block-post-content small {
  font-size: 0.82em;
  line-height: 1.5;
}

.article-content sup,
.article-content sub,
.entry-content sup,
.entry-content sub,
.wp-block-post-content sup,
.wp-block-post-content sub {
  position: relative;
  font-size: 0.72em;
  line-height: 0;
  vertical-align: baseline;
}

.article-content sup,
.entry-content sup,
.wp-block-post-content sup { top: -0.45em; }

.article-content sub,
.entry-content sub,
.wp-block-post-content sub { bottom: -0.2em; }

.article-content .alignleft,
.entry-content .alignleft,
.wp-block-post-content .alignleft {
  float: left;
  margin-right: 24px;
  margin-bottom: 16px;
}

.article-content .alignright,
.entry-content .alignright,
.wp-block-post-content .alignright {
  float: right;
  margin-left: 24px;
  margin-bottom: 16px;
}

.article-content .aligncenter,
.entry-content .aligncenter,
.wp-block-post-content .aligncenter {
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 640px) {
  .article-content,
  .entry-content,
  .wp-block-post-content {
    font-size: 18px;
    line-height: 1.65;
  }

  .article-content p,
  .entry-content p,
  .wp-block-post-content p {
    font-size: 18px;
    line-height: 1.6;
    margin-top: 28px;
    margin-bottom: 0;
  }

  .article-content blockquote,
  .entry-content blockquote,
  .wp-block-post-content blockquote,
  .article-content .wp-block-quote,
  .entry-content .wp-block-quote,
  .wp-block-post-content .wp-block-quote {
    padding-left: 22px;
    padding-right: 0;
    font-size: 22px;
    line-height: 1.45;
    letter-spacing: -0.03em;
  }

  .article-content .alignleft,
  .article-content .alignright,
  .entry-content .alignleft,
  .entry-content .alignright,
  .wp-block-post-content .alignleft,
  .wp-block-post-content .alignright {
    float: none;
    margin-right: 0;
    margin-left: 0;
  }
}
