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

   Sente 1.8.0

   //////////////////////////////////////////////////////////////////////////
    
   I. 3rd party scripts
   |
   ├─ Normalize.css
   └─ FontAwesome

   II. Theme
   |
   ├─ 1.Global
   ├─ 2.Primary Color
   ├─ 3.Fonts
   ├─ 4.Wrapper
   ├─ 5.Header
   ├─ 6.Mobile Menu
   ├─ 7.Navigation & Description
   ├─ 8.Author & Tag
   ├─ 9.Featured Home
   ├─ 10.Masonry
   ├─ 11.Post
   ├─ 12.Related Posts
   ├─ 13.Pagination
   ├─ 14.Subscribe
   ├─ 15.Footer
   ├─ 16.Tags Page
   ├─ 17.Search
   ├─ 18.Disqus
   └─ 19.Animation
   
   //////////////////////////////////////////////////////////////////////////

   I. 3rd party scripts

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

/* Normalize.css
   –––––––––––––––––––––––––––––––––––––––––––––––––––– 
   Version : 8.0.1
   Website : necolas.github.io/normalize.css
   Repo    : github.com/necolas/normalize.css
   Author  : Nicolas Gallagher
   License : MIT
   –––––––––––––––––––––––––––––––––––––––––––––––––––––– */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{overflow:visible;box-sizing:content-box;height:0}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{text-decoration:underline;text-decoration:underline dotted;border-bottom:none}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button}button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{padding:0;border-style:none}button:-moz-focusring,[type='button']:-moz-focusring,[type='reset']:-moz-focusring,[type='submit']:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{display:table;box-sizing:border-box;max-width:100%;padding:0;white-space:normal;color:inherit}progress{vertical-align:baseline}textarea{overflow:auto}[type='checkbox'],[type='radio']{box-sizing:border-box;padding:0}[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button{height:auto}[type='search']{outline-offset:-2px;-webkit-appearance:textfield}[type='search']::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* FontAwesome
   –––––––––––––––––––––––––––––––––––––––––––––––––––– 
   Website : fontawesome.io
   Repo    : github.com/FortAwesome/Font-Awesome
   License : SIL
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
@font-face{font-family:'fontawesome-webfont';font-weight:normal;font-style:normal;src:url('../fonts/fontawesome-webfont.ttf?kb2i0o') format('truetype'),url('../fonts/fontawesome-webfont.woff?kb2i0o') format('woff'),url('../fonts/fontawesome-webfont.svg?kb2i0o#fontawesome-webfont') format('svg')}i{font-family:'fontawesome-webfont'!important;font-weight:normal;font-style:normal;font-variant:normal;line-height:1;text-transform:none;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa{font:normal normal normal 14px/1 'fontawesome-webfont';font-size:inherit;display:inline-block;transform:translate(0,0);text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.snapchat:before{content:'\e903'}.reddit:before{content:'\e904'}.vimeo:before{content:'\e905'}.medium:before{content:'\e906'}.pinterest:before{content:'\e907'}.twitch:before{content:'\e908'}.soundcloud:before{content:'\e909'}.behance:before{content:'\e90a'}.slack:before{content:'\e90b'}.vk:before{content:'\e90c'}.dribbble:before{content:'\e90d'}.arrow-right:before{content:'\e902'}.arrow-left:before{content:'\e919'}.tumblr:before{content:'\e910'}.youtube-play:before{content:'\e911'}.linkedin:before{content:'\e912'}.instagram:before{content:'\e913'}.google-plus:before{content:'\e914'}.feed:before{content:'\e915'}.github:before{content:'\e916'}.twitter:before{content:'\e917'}.facebook:before{content:'\e918'}.bitbucket:before{content:'\e901'}.menu:before{content:'\e900'}.link:before{content:'\e9cb'}.flickr:before{content:'\eaa4'}

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

   II. Theme
   
   ////////////////////////////////////////////////////////////////////////// */

/* --------------------------------------------------------------------------
   1.Global
   -------------------------------------------------------------------------- */

/* Base Styles
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
html,
body {
   height: 100%;
   max-height: 100%;
   -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

body {
   font-size: 18px;
   line-height: 1.7;
   word-wrap: break-word;
   color: #0f0d09;
   background-color: #fff;
}

::-moz-selection {
   background: #dd3c3c;
   color: #fff;
}

::selection {
   background: #dd3c3c;
   color: #fff;
}

/* Typography
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 { line-height: 1.25; margin: 0 0 25px 0 }
h1 { font-size: 35px; font-weight: 700; font-family: 'Nunito', 'Times New Roman', Times, serif; }
h2 { font-size: 30px; font-weight: 700; font-family: 'Nunito', 'Times New Roman', Times, serif; }
h3 { font-size: 26px; font-weight: 600; font-family: 'Nunito', 'Times New Roman', Times, serif; }
h4 { font-size: 23px; font-weight: 600; font-family: 'Nunito', 'Times New Roman', Times, serif; }

@media (min-width:480px) and (max-width:767px) {
   h1, h2, h3, h4, h5, h6 { line-height: 1.35; margin: 0 0 25px 0; }
   h1 { font-size: 40px; }
   h2 { font-size: 34px; }
   h3 { font-size: 28px; }
   h4 { font-size: 24px; }
}
@media (min-width:768px) and (max-width:1023px) {
   h1, h2, h3, h4, h5, h6 { line-height: 1.45; margin: 0 0 30px 0; }
   h1 { font-size: 42px; }
   h2 { font-size: 34px; }
   h3 { font-size: 28px; }
   h4 { font-size: 24px; }
}
@media (min-width:1024px) {
   h1, h2, h3, h4, h5, h6 { line-height: 1.45; margin: 0 0 30px 0; }
   h1 { font-size: 48px; }
   h2 { font-size: 36px; }
   h3 { font-size: 31px; }
   h4 { font-size: 26px; }
}

h5 { font-size: 20px; }
h6 { font-size: 17px; }
/* Links
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
   text-decoration: none;
   color: #0f0d09;
}

/* Lists
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
dl dt {
   font-weight: bold;
   float: left;
   clear: left;
   overflow: hidden;
   width: 180px;
   margin-bottom: 1em;
   text-align: right;
   white-space: nowrap;
   text-overflow: ellipsis;
}

dl dd {
   margin-bottom: 1em;
   margin-left: 200px;
}

ul {
   list-style: disc inside;
}

ul li ul {
   list-style: circle inside;
}

ol {
   list-style: decimal inside;
}

ol,
ul {
   margin-top: 0;
   padding-left: 20px;
}

ul ul,
ul ol,
ol ol,
ol ul {
   font-size: 90%;
   margin: 15px 0 15px 30px;
}

li {
   margin-bottom: 10px;
}

/* Tables
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
table {
   box-sizing: border-box;
   width: 100%;
   max-width: 100%;
   margin: 17px 0;
   background-color: transparent;
}

th,
td {
   padding: 10px 12px;
   text-align: left;
   border-bottom: 1px solid #e1e1e1;
}

th:first-child,
td:first-child {
   padding-left: 0;
}

th:last-child,
td:last-child {
   padding-right: 0;
}

/* Responsive */
.responsive-table {
   overflow-x: auto;
   word-break: normal;
}

/* Code
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
   font-size: 90%;
   margin: 0;
   padding: 2px 5px;
   background: #f0f0f0;
}

pre > code {
   display: block;
   padding: 10px 15px;
   white-space: pre-wrap;
}

pre {
   margin-top: 30px;
}

/* Blockquote
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
blockquote {
   font-style: italic;
   box-sizing: border-box;
}

blockquote p {
   margin: 14px 0;
}

/* Spacing
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
button {
   margin-bottom: 10px;
}

input,
textarea,
select,
fieldset {
   margin-bottom: 15px;
}

pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
   margin-bottom: 25px;
}

/* Misc
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
iframe {
   display: block;
   margin: 0 auto;
}

hr {
   border-width: 0;
   border-top: 1px solid #f0f0f0;
}

mark {
   background-color: yellow;
}

kbd {
   font-size: 14px;
   font-weight: bold;
   display: inline-block;
   margin-bottom: 9px;
   padding: 1px 8px;
   color: #666;
   border: #ccc 1px solid;
   border-radius: 4px;
   background: #f4f4f4;
   box-shadow: 0 1px 0 rgba(0, 0, 0, .2), 0 1px 0 0 #fff inset;
   text-shadow: #fff 0 1px 0;
}

/* Forms
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type='email'],
input[type='number'],
input[type='search'],
input[type='text'],
input[type='tel'],
input[type='url'],
input[type='password'],
textarea,
select {
   box-sizing: border-box;
   height: 38px;
   padding: 6px 10px;
   border: 1px solid #d1d1d1;
   background-color: #fff;
   box-shadow: none;
}

input[type='email'],
input[type='number'],
input[type='search'],
input[type='text'],
input[type='tel'],
input[type='url'],
input[type='password'],
textarea {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
}

textarea {
   min-height: 65px;
   padding-top: 6px;
   padding-bottom: 6px;
}

input[type='email']:focus,
input[type='number']:focus,
input[type='search']:focus,
input[type='text']:focus,
input[type='tel']:focus,
input[type='url']:focus,
input[type='password']:focus,
textarea:focus,
select:focus {
   border: 1px solid;
   outline: 0;
}

label,
legend {
   font-weight: 600;
   display: block;
   margin-bottom: .5rem;
}

fieldset {
   padding: 0;
   border-width: 0;
}

input[type='checkbox'],
input[type='radio'] {
   display: inline;
}

/* Buttons
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
input[type='submit'],
input[type='reset'],
input[type='button'] {
   font-size: 11px;
   font-weight: 600;
   line-height: 38px;
   display: inline-block;
   box-sizing: border-box;
   height: 38px;
   padding: 0 30px;
   cursor: pointer;
   text-align: center;
   white-space: nowrap;
   text-decoration: none;
   letter-spacing: .1rem;
   text-transform: uppercase;
   color: #555;
   border: 1px solid #bbb;
   background-color: transparent;
}

button:hover,
input[type='submit']:hover,
input[type='reset']:hover,
input[type='button']:hover,
button:focus,
input[type='submit']:focus,
input[type='reset']:focus,
input[type='button']:focus {
   color: #333;
   border-color: #888;
   outline: 0;
}

button,
input[type='submit'],
input[type='reset'],
input[type='button'] {
   color: #fff;
   border-radius: 100px;
}

button:hover,
input[type='submit']:hover,
input[type='reset']:hover,
input[type='button']:hover,
button:focus,
input[type='submit']:focus,
input[type='reset']:focus,
input[type='button']:focus {
   color: #fff;
   border: #0f0d09;
   background: #0f0d09;
}

/* --------------------------------------------------------------------------
   2.Primary Color
   -------------------------------------------------------------------------- */
button,
input[type='submit'],
input[type='reset'],
input[type='button'] {
   border: #dd3c3c;
   background: #dd3c3c;
}

a:hover,
.nav-wrap a:hover,
.author-wrap .author-social a:hover,
.search-open-mobile span:hover 
.logo .no-image a,
.nav-wrap .current-menu-item a,
.post-content a,
.post-reading-indicator {
   color: #dd3c3c;
}

.subscribe-email::-webkit-input-placeholder {
   color: #dd3c3c;
}

.subscribe-email::-ms-input-placeholder {
   color: #dd3c3c;
}

.subscribe-email::-moz-placeholder {
   color: #dd3c3c;
}

.subscribe-email::placeholder {
   color: #dd3c3c;
}

.post-content .post-share a:hover,
.subscribe button {
   background: #dd3c3c;
}

.search-input:focus {
   border-bottom-color: #dd3c3c !important;
}

.search-open-mobile svg:hover,
.search-open svg:hover,
.search-close svg:hover {
   fill: #dd3c3c !important;
}

input[type='email']:focus,
input[type='number']:focus,
input[type='search']:focus,
input[type='text']:focus,
input[type='tel']:focus,
input[type='url']:focus,
input[type='password']:focus,
textarea:focus,
select:focus {
   border-color: #dd3c3c;
}

.post-content a:hover {
   border-bottom-color: #dd3c3c;
}

.subscribe .form-control,
.subscribe input[type=email],
.subscribe textarea {
   border-bottom: solid 5px #dd3c3c;
}

@media (max-width:1023px) {
   .featured-wrap .featured-post-label {
      color: #dd3c3c;
   }

}

/* --------------------------------------------------------------------------
   3.Fonts
   -------------------------------------------------------------------------- */
blockquote {
   font-family: 'Nunito', 'Times New Roman', Times, serif;
}

body,
.subscribe input,
.subscribe button {
   font-family: 'Nunito Sans', Helvetica, Arial, sans-serif;
}

/* --------------------------------------------------------------------------
   4.Wrapper
   -------------------------------------------------------------------------- */
@media (max-width:479px) {
   .site-wrap {
      margin: 0;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .site-wrap {
      margin: 0 30px;
   }

}

@media (min-width:768px) and (max-width:1399px) {
   .site-wrap {
      margin: 0 85px;
   }

}

@media (min-width:1400px) {
   .site-wrap {
      margin: 0 13%;
   }

}

.site-wrap {
   min-height: 100%;
   margin-bottom: -120px;
   padding: 0 0 15vh;
}

.site-wrap::after {
   display: block;
   content: '';
}

/* --------------------------------------------------------------------------
   5.Header
   -------------------------------------------------------------------------- */
@media (max-width:479px) {
   .header-wrap,
   .logo .table {
      width: 100px;
      height: 120px;
   }

   .logo {
      left: 10%;
   }

   .logo .image img {
      max-width: 130px;
      max-height: 50px;
   }

   .logo .no-image a {
      font-size: 20px;
      letter-spacing: 4px;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .header-wrap,
   .logo .table {
      width: 100px;
      height: 150px;
   }

   .logo {
      left: 8%;
   }

   .logo .image img {
      max-width: 245px;
      max-height: 62px;
   }

   .logo .no-image a {
      font-size: 30px;
      letter-spacing: 6px;
   }

}

@media (max-width:767px) {
   .logo {
      width: auto;
      text-align: left;
   }

}

@media (min-width:768px) {
   .logo {
      left: 0;
      width: 100%;
      text-align: center;
   }

   .logo .table {
      margin: 0 auto;
   }

   .logo .image img {
      max-height: 72px;
   }

   .logo .no-image a {
      font-size: 40px;
      letter-spacing: 6px;
   }

}

@media (min-width:768px) and (max-width:1023px) {
   .header-wrap,
   .logo .table {
      height: 180px;
   }

}

@media (min-width:1024px) {
   .header-wrap,
   .logo .table {
      height: 210px;
   }

}

.header-wrap {
   position: relative;
   z-index: 999;
}

.logo {
   position: fixed;
   z-index: 99;
   top: 0;
   margin: 0;
   padding: 0;
}

.logo .table {
   display: table;
}

.logo .image,
.logo .no-image {
   display: table-cell;
   vertical-align: middle;
}

.logo .no-image a {
   font-weight: bold;
   line-height: 1;
   text-transform: uppercase;
}

.logo .no-image a:hover {
   color: #0f0d09;
}

.logo,
.logo .no-image a,
.logo.headroom--not-top {
   transform: translateY(-100%);
}

.logo.headroom--top {
   transform: translateY(0px);
}

/* --------------------------------------------------------------------------
   6.Mobile Menu
   -------------------------------------------------------------------------- */
@media (max-width:320px) {
   .nav-mobile-list {
      top: 53%;
   }

}

@media (min-width:321px) {
   .nav-mobile-list {
      top: 50%;
   }

}

@media (max-width:479px) {
   .active .nav-mobile-icon,
   .nav-mobile-icon {
      top: 29px;
      margin-right: 4%;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .active .nav-mobile-icon,
   .nav-mobile-icon {
      top: 43px;
      margin-right: 5%;
   }

}

@media (min-width:768px) {
   .nav-mobile-icon,
   .nav-mobile-wrap {
      display: none;
   }

}

.nav-mobile-icon {
   position: absolute;
   z-index: 9999;
   right: 0;
   width: 30px;
   height: 24px;
   padding: 20px;
   cursor: pointer;
}

.nav-mobile-wrap,
.active .nav-mobile-icon,
.nav-mobile-wrap::after,
.nav-mobile-list {
   position: fixed;
}

.active .nav-mobile-icon {
   right: 0;
}

.nav-mobile-wrap {
   z-index: 150;
   left: 0;
}

.nav-mobile-wrap::after {
   z-index: -1;
   width: 100%;
   height: 100vh;
   content: '';
   transition: transform cubic-bezier(.77, 0, .175, .5) .8s;
   transition-delay: 0s;
   transform: translateX(0%) translateY(-100%);
   background: #fff;
}

.nav-mobile-wrap .nav-mobile-item {
   position: relative;
   display: block;
   margin: 0;
   transition: opacity .2s ease, transform .3s ease;
   transition-delay: .8s;
   transform: translate(0%, 100%);
   opacity: 0;
}

.nav-mobile-wrap .nav-mobile-item:hover::before {
   width: 100%;
}

.nav-mobile-list {
   font-size: 30px;
   font-weight: bold;
   line-height: 1.8;
   left: -100%;
   width: 100%;
   transform: translate(0%, -50%);
   text-align: center;
}

.nav-mobile-list ul {
   margin: 0;
   padding-left: 0;
}

.active .nav-mobile-list {
   left: 0;
}

.active .nav-mobile-wrap::before,
.active .nav-mobile-wrap::after {
   transform: translateX(0%) translateY(0%);
}

.active .nav-mobile-wrap::after {
   transition-delay: .1s;
}

.active .nav-mobile-wrap::before {
   transition-delay: 0s;
}

.active .nav-mobile-item {
   transition: opacity .3s ease, transform .3s ease, color .3s ease;
   transform: translateX(0%);
   opacity: 1;
}

.active .nav-mobile-item:nth-child(0) {
   transition-delay: .5s;
}

.active .nav-mobile-item:nth-child(1) {
   transition-delay: .6s;
}

.active .nav-mobile-item:nth-child(2) {
   transition-delay: .7s;
}

.active .nav-mobile-item:nth-child(3) {
   transition-delay: .8s;
}

.active .nav-mobile-item:nth-child(4) {
   transition-delay: .9s;
}

.active .nav-mobile-item:nth-child(5) {
   transition-delay: 1s;
}

.active .nav-mobile-item:nth-child(6) {
   transition-delay: 1.1s;
}

.active .nav-mobile-list:nth-child(7) {
   transition-delay: 1.2s;
}

.active .nav-mobile-list:nth-child(8) {
   transition-delay: 1.3s;
}

.hamburger {
   font: inherit;
   display: inline-block;
   overflow: visible;
   margin: 0;
   cursor: pointer;
   transition: opacity, -webkit-filter .15s linear;
   transition: opacity, filter .15s linear;
   transition: opacity, filter .15s linear, -webkit-filter .15s linear;
   text-transform: none;
   color: inherit;
   border: 0;
   background-color: transparent;
}

.hamburger-box {
   position: relative;
   display: inline-block;
   width: 30px;
   height: 24px;
}

.hamburger-inner {
   top: 50%;
   display: block;
   margin: -2px 0 0 0;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
   position: absolute;
   width: 30px;
   height: 3px;
   transition: transform linear ease;
   background: #0f0d09;
}

.hamburger-inner::before,
.hamburger-inner::after {
   display: block;
   content: '';
}

.hamburger-inner::before {
   top: -10px;
}

.hamburger-inner::after {
   bottom: -10px;
}

.hamburger-squeeze .hamburger-inner {
   transition: .075s cubic-bezier(.55, .055, .675, .19);
}

.hamburger-squeeze .hamburger-inner::before {
   transition: top .075s .12s ease, opacity .075s ease;
}

.hamburger-squeeze .hamburger-inner::after {
   transition: bottom .075s .12s ease, transform .075s cubic-bezier(.55, .055, .675, .19);
}

.active .hamburger-squeeze .hamburger-inner {
   transition-delay: .12s;
   transition-timing-function: cubic-bezier(.215, .61, .355, 1);
   transform: rotate(45deg);
}

.active .hamburger-squeeze .hamburger-inner::before {
   top: 0;
   transition: top .075s ease, opacity .075s .12s ease;
   opacity: 0;
}

.active .hamburger-squeeze .hamburger-inner::after {
   bottom: 0;
   transition: bottom .075s ease, transform .075s .12s cubic-bezier(.215, .61, .355, 1);
   transform: rotate(-90deg);
}

/* --------------------------------------------------------------------------
   7.Navigation & Description
   -------------------------------------------------------------------------- */
@media (max-width:767px) {
   .nav-wrap,
   .description {
      display: none;
   }

}

@media (min-width:768px) and (max-width:1199px) {
   .description,
   .nav-wrap a {
      font-size: 16px;
      letter-spacing: 1px;
   }

}

@media (min-width:1200px) {
   .description,
   .nav-wrap a {
      font-size: 18px;
      letter-spacing: 2px;
   }

}

.nav-wrap {
   z-index: 9999;
   right: 25px;
   float: right;
   transform: rotate(90deg) translate(50%, 50%);
   transform-origin: 100% 50%;
}

.nav-wrap ul,
.nav-wrap ul li {
   display: inline-block;
   margin-bottom: 0;
   margin-left: 14px;
   padding: 0;
   list-style: none;
}

.nav-wrap .current-menu-item a:hover {
   color: #0f0d09;
}

.description {
   z-index: 9999;
   left: 25px;
   float: left;
   transform: rotate(-90deg) translate(-50%, 50%);
   transform-origin: 0 50%;
}

.description,
.nav-wrap {
   line-height: 1.1;
   position: fixed;
   top: 0;
   bottom: 0;
   max-width: 90vh;
   height: 50px;
   margin: auto;
   padding-top: 8px;
   list-style: none;
   text-align: center;
}

.description,
.nav-wrap a {
   font-weight: bold;
   text-decoration: none;
}

/* --------------------------------------------------------------------------
   8.Author & Tag
   -------------------------------------------------------------------------- */
@media (max-width:479px) {
   .author-wrap {
      margin: 0 5% 12vh;
      padding: 5.5vh 15px;
   }

   .author-wrap .author-image {
      float: initial;
      width: 80px;
      height: 80px;
      margin: 0 auto 20px;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name,
   .author-wrap .author-description {
      text-align: center;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name {
      font-size: 25px;
   }

   .author-wrap .author-description {
      margin: 20px 0 0;
   }

   .author-wrap .author-social {
      margin: 10px 0 0 0;
   }

}

@media (min-width:480px) {
   .author-wrap .author-image {
      display: table-cell;
      float: left;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name {
      font-size: 35px;
      display: table-cell;
   }

   .author-wrap.no-image .author-name,
   .tag-template .author-wrap.no-image .author-name {
      width: 100%;
      padding: 0;
   }

   .author-table {
      display: table;
      width: 100%;
      margin: 0 20px 0 0;
      table-layout: fixed;
   }

   .author-wrap .author-description {
      margin: 40px 0 0;
   }

   .author-wrap.no-image .author-description {
      margin: 20px 0 0;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .author-wrap {
      margin: 0 0 12vh;
      padding: 5.5vh 25px;
   }

   .author-wrap .author-image {
      width: 100px;
      height: 100px;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name {
      width: 100%;
      padding: 0 0 0 125px;
   }

}

@media (min-width:768px) {
   .author-wrap .author-image {
      width: 128px;
      height: 128px;
   }

}

@media (min-width:768px) and (max-width:1023px) {
   .author-wrap {
      max-width: 400px;
      margin: 0 auto 25vh;
      padding: 5.5vh 55px;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name {
      width: 100%;
      padding: 0 0 0 165px;
   }

}

@media (min-width:1024px) {
   .author-wrap {
      max-width: 500px;
      margin: 0 auto 25vh;
      padding: 5.5vh 55px;
   }

   .author-wrap .author-name,
   .tag-template .author-wrap .author-name {
      width: 100%;
      padding: 0 0 0 165px;
   }

}

.author-wrap {
   border: solid 10px #f0f0f0;
}

.author-image {
   display: block;
   float: left;
   width: 38px;
   height: 38px;
   margin: -1px 13px 0 -2px;
   border-radius: 100%;
   background: no-repeat center center;
   background-size: cover;
}

.author-wrap .author-name,
.tag-template .author-wrap .author-name {
   font-weight: bold;
   line-height: 1.2;
   vertical-align: middle;
}

.author-wrap .author-description {
   font-size: 16px;
   line-height: 1.6;
}

.author-wrap .author-social a {
   font-size: 22px;
   margin: 10px 8px 0 0;
   color: #ccc;
}

.author-wrap .author-social a i.link {
   font-size: 20px;
}

.tag-template .author-name span {
   font-size: 14px;
   font-weight: bold;
   line-height: 2;
   display: block;
   letter-spacing: 1px;
   text-transform: uppercase;
}

/* --------------------------------------------------------------------------
   9.Featured Home
   -------------------------------------------------------------------------- */

.featured-page {
   width: 100%;
   margin-bottom: 20%;
   background-color: bisque;
   position: relative;
}
.featured-page-label{
   position: inherit;
   padding-top: 24px;
   margin: auto;
   height: auto;
   left: 4%;
   background: none;
   width: auto;
   display: flex;
   flex-direction: row;
}

.featured-image {
	border-radius: 5em;
}

@media (max-width:1023px) {
   .featured-post-wrap {
      margin: -100px auto 0;
   }

   .featured-image {
      height: 350px;
   }

   .featured-wrap .featured-post-label {
      font-size: 13px;
      font-weight: bold;
      line-height: 13px;
      position: initial;
      width: 100%;
      margin: 20px 0 10px;
      transform: rotate(0deg);
      text-align: left;
      letter-spacing: 1px;
      text-transform: uppercase;
   }

   .featured-list {
      display: none;
   }

}

@media (min-width:1024px) {
   .featured-post-wrap {
      position: absolute;
      top: 0;
   }

}

@media (max-width:479px) {
   .featured-post-wrap {
      width: 80%;
      padding: 20px 5% 50px;
      background-color: #fff;
   }

   .featured-post-wrap h2 {
      font-size: 30px;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .featured-post-wrap {
      width: 70%;
      padding: 38px 10% 80px;
      background-color: #fff;
   }

   .featured-post-wrap h2 {
      font-size: 35px;
   }

}

@media (min-width:768px) and (max-width:1023px) {
   .featured-post-wrap {
      width: 80%;
      margin: -100px auto 0;
      padding: 5%;
      background-color: #fff;
   }

   .featured-post-wrap {
      padding-bottom: 120px;
   }

   .featured-post-wrap h2 {
      font-size: 42px;
   }

}

@media (min-width:1024px) and (max-width:1399px) {
   .featured-wrap {
      width: 61%;
      padding: 0 0 22vh 39%;
   }

   .featured-post-wrap {
      left: 5%;
      width: 450px;
      padding: 20px 0 0;
   }

   .featured-image {
      height: 550px;
   }

   .featured-post-wrap h2 {
      font-size: 42px;
   }

   .featured-list-posts h5 {
      font-size: 15px;
   }

   .featured-post-label {
      top: 87px;
   }

   .featured-list-posts {
      width: 260px;
      padding: 15px 0 0;
   }

   .featured-list-label {
      top: 105px;
   }

}

@media (min-width:1400px) and (max-width:1599px) {
   .featured-wrap {
      width: 67%;
      padding: 0 0 20vh 33%;
   }

   .featured-post-wrap {
      left: 2%;
      width: 500px;
      padding: 30px 0 0;
   }

   .featured-image {
      height: 600px;
   }

   .featured-post-wrap h2 {
      font-size: 48px;
   }

   .featured-list-posts h5 {
      font-size: 15px;
   }

   .featured-post-label {
      top: 100px;
   }

   .featured-list-posts {
      width: 280px;
      padding: 20px 0 0;
   }

   .featured-list-label {
      top: 105px;
   }

}

@media (min-width:1600px) {
   .featured-wrap {
      width: 69%;
      padding: 0 0 20vh 31%;
   }

   .featured-post-wrap {
      left: 2%;
      width: 600px;
      padding: 50px 0 0;
   }

   .featured-image {
      height: 700px;
   }

   .featured-post-wrap h2 {
      font-size: 55px;
   }

   .featured-post-label {
      top: 122px;
   }

   .featured-list-posts {
      width: 330px;
      padding: 20px 0 0;
   }

   .featured-list-posts h5 {
      font-size: 18px;
   }

   .featured-list-label {
      top: 107px;
   }

}

.featured-image {
   width: 100%;
   background: no-repeat center center;
   background-size: cover;
}

.featured-wrap {
   position: relative;
   margin-top: -6vh;
}

.featured-post-wrap .item-meta.post {
   margin-bottom: 50px;
}

.featured-list {
   position: relative;
   left: 0;
}

.featured-list-posts.border {
   padding: 20px 0 0;
   border-top: 10px solid #f0f0f0;
}

.featured-list-posts h5 {
   margin: 0;
}

.featured-list-label,
.featured-post-label {
   font-size: 16px;
   font-weight: normal;
   position: absolute;
   width: 200px;
   text-align: right;
   letter-spacing: 1px;
   color: #d1d1d1;
}

.featured-wrap .hide {
   display: none;
}

.rotate {
   transform: translateX(-67%) translateY(35px) rotate(-90deg);
}

/* --------------------------------------------------------------------------
   10.Masonry
   -------------------------------------------------------------------------- */
img {
   vertical-align: middle;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
}

@media (max-width:479px) {
   .item-meta {
      margin: 0;
   }

   .masonry .item-container {
      margin: 0 5% 10vh;
   }

   .masonry h2 {
      font-size: 25px;
      margin: 0 0 20px 0;
   }

   .masonry-wrap,
   .site-wrap .masonry .color .item-description {
      margin: 0;
   }

   .site-wrap .masonry .color .item-container {
      padding: 50px 20px 50px;
   }

   .masonry .author-image.item-image,
   .site-wrap .masonry .color .item-container-img {
      display: none;
   }

   .masonry .item-excerpt {
      font-size: 16px;
   }

   .masonry .item-description {
      margin: 0 5%;
   }

}

@media (min-width:480px) {
   .item-meta {
      margin: 3vh 0 0;
   }

}

@media (min-width:768px) {
   .masonry .item-container.first {
      margin-top: -12vh;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .masonry-wrap {
      width: 75%;
      margin: 0 auto;
   }

   .masonry .item-container {
      margin: 0 0 100px;
   }

   .masonry h2 {
      font-size: 25px;
      margin: 0 0 20px 0;
   }

   .masonry .item-description {
      margin: 0 40px 0;
   }

   .masonry .item-excerpt {
      font-size: 16px;
   }

}

@media (max-width:767px) {
   .masonry .item-container .item-container-img {
      margin: 0 0 30px;
   }

   .masonry .item-container.last {
      margin-bottom: 50px;
   }

}

@media (min-width:768px) and (max-width:1199px) {
   .masonry-wrap {
      width: 100%;
      margin: 13vh 0 0;
   }

   .masonry .item-container {
      margin: 0 8% 13vh;
   }

   .masonry .item-description {
      margin: 10px 20px 0;
   }

   .masonry .color .item-container {
      padding: 25px 20px 50px;
   }

   .masonry .color .item-description {
      margin: 0;
   }

   .masonry h2 {
      font-size: 28px;
      margin: 0 0 3vh 0;
   }

   .masonry .item-excerpt {
      font-size: 14px;
   }

   .masonry .item {
      width: 50%;
   }

   .masonry .item-container .item-container-img {
      margin: 0 0 3vh;
   }

   .masonry .item-container.last {
      margin-bottom: 4vh;
   }

}

@media (min-width:1200px) {
   .masonry-wrap {
      width: 100%;
      margin: 13vh auto 0;
   }

   .masonry .item-container {
      margin: 0 16% 17vh;
   }

   .masonry .item-description {
      margin: 10px 10px 0 20px;
   }

   .masonry .item {
      width: 50%;
   }

   .masonry .item-excerpt {
      font-size: 16px;
   }

   .masonry h2 {
      font-size: 34px;
      margin: 0 0 3vh 0;
   }

   .masonry .item-container .item-container-img {
      margin: 0 0 4vh;
   }

   .masonry .item-container.last {
      margin-bottom: 8vh;
   }

}

.item-meta {
   font-size: 13px;
   line-height: 1.5;
   max-width: 380px;
   color: #999;
}

.item-meta .author-image {
   overflow: hidden;
   margin-bottom: 50px;
}

.item-meta a {
   font-weight: bold;
}

.masonry-margin {
   height: 6vh;
}

.masonry .item-description {
   line-height: 1.4;
}

.masonry .item-container .item-container-img {
   overflow: hidden;
   border-radius: 5em;
}

.masonry .item-container img {
   width: 100%;
}

.masonry .item-container .item-container-img:hover {
   transform: scale(.96);
}

.masonry .item-container .item-container-img img:hover {
   transform: scale(1.10);
}

.color .item-container {
   position: relative;
   padding: 40px 40px 70px;
}

.color .item-container::before {
   position: absolute;
   z-index: -1;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   content: '';
   transition: transform .25s ease-in-out;
   transform: scale(1);
   border-radius: 5em;
}

.color .item-container:hover::before {
   transform: scale(.96);
}

.color .item-description {
   margin: 10px 10px 0 0;
}

.color,
.color a,
.color time,
.color .reading-time {
   color: #fff;
}

.tag-hash-light-gray.color,
.tag-hash-light-gray.color a,
.tag-hash-light-gray.color time {
   color: #0f0d09;
}

.color a:hover {
   opacity: .7;
}

.color .item-image {
   opacity: 1 !important;
}

.masonry .color .item-container-img:hover {
   transform: scale(1);
}

.related-posts-wrap .related-post.tag-hash-light-gray,
.tag-hash-light-gray .label,
.tag-hash-light-gray .item-container::before {
   background-color: #f0f0f0;
}

.related-posts-wrap .related-post.tag-hash-gray,
.tag-hash-gray .label,
.tag-hash-gray .item-container::before {
   background-color: #787878;
}

.related-posts-wrap .related-post.tag-hash-gold,
.tag-hash-gold .label,
.tag-hash-gold .item-container::before {
   background-color: #bd9b61;
}

.related-posts-wrap .related-post.tag-hash-black,
.tag-hash-black .label,
.tag-hash-black .item-container::before {
   background-color: #1e2531;
}

.related-posts-wrap .related-post.tag-hash-red,
.tag-hash-red .label,
.tag-hash-red .item-container::before {
   background-color: #ef233c;
}

.related-posts-wrap .related-post.tag-hash-blue,
.tag-hash-blue .label,
.tag-hash-blue .item-container::before {
   background-color: #00f;
}

.related-posts-wrap .related-post.tag-hash-green,
.tag-hash-green .label,
.tag-hash-green .item-container::before {
   background-color: #8ed753;
}

.related-posts-wrap .related-post.tag-hash-yellow,
.tag-hash-yellow .label,
.tag-hash-yellow .item-container::before {
   background-color: #fca311;
}

.related-posts-wrap .related-post.tag-hash-orange,
.tag-hash-orange .label,
.tag-hash-orange .item-container::before {
   background-color: #ff4e00;
}

.related-posts-wrap .related-post.tag-hash-violet,
.tag-hash-violet .label,
.tag-hash-violet .item-container::before {
   background-color: #a01a7d;
}

.related-posts-wrap .related-post.tag-hash-light-gray.is-image,
.related-posts-wrap .related-post.tag-hash-gray.is-image,
.related-posts-wrap .related-post.tag-hash-gold.is-image,
.related-posts-wrap .related-post.tag-hash-black.is-image,
.related-posts-wrap .related-post.tag-hash-red.is-image,
.related-posts-wrap .related-post.tag-hash-blue.is-image,
.related-posts-wrap .related-post.tag-hash-green.is-image,
.related-posts-wrap .related-post.tag-hash-yellow.is-image,
.related-posts-wrap .related-post.tag-hash-ornage.is-image,
.related-posts-wrap .related-post.tag-hash-violet.is-image {
   background-color: transparent;
}

/* --------------------------------------------------------------------------
   11.Post
   -------------------------------------------------------------------------- */
.post-featured-image {
   z-index: 5;
   overflow: hidden;
   width: auto;
   height: 350px;
   -webkit-animation: standard-animation .65s ease-in-out;
   animation: standard-animation .65s ease-in-out;
   background: no-repeat center center;
   background-size: cover;
   border-radius: 5em;
}

.post-content-wrap {
   position: relative;
   z-index: 99;
   width: 80%;
   margin: -100px auto 0;
   padding: 30px 5% 0;
   background: #fff;
}

.post-header {
   margin: 0 0 40px 0;
}

.label {
   position: fixed;
   top: 0;
   left: 0;
   width: 10px;
   height: 100vh;
   -webkit-animation: label .25s ease-in-out;
   animation: label .25s ease-in-out;
}

.post-wrap {
   overflow: visible;
   margin: 0;
}

.post-wrap hr {
   border-top: 10px solid #f0f0f0;
}

.post-content-wrap.no-image {
   margin-top: 5vh;
   padding: 0;
}

.post-content p,
.post-content ul,
.post-content ol,
.post-content tr {
   font-size: 16px;
   line-height: 1.7;
}

.post-content a {
   border-bottom: 1px solid #e7e7df;
}

.post-content p img ~ small {
   font-size: 12px;
   line-height: 1.3;
   display: block;
   width: 100%;
   margin: -3vh 0 4vh;
   color: #aeb5be;
}

.post-content p img {
   width: 110% !important;
   height: auto;
   margin: 4vh 0 6vh -5%;
}

.post-content .footnotes p,
.post-content .footnotes li {
   font-size: 14px;
   line-height: 1.4;
   margin-bottom: 10px;
}

.post-content .footnotes {
   padding: 20px 0;
}

.post-content .footnotes ol {
   list-style: decimal;
}

.post-content .footnotes ol {
   padding-left: 20px;
}

.post-content .footnotes-sep {
   width: 100px;
   margin: 50px 0 10px;
}

.post-meta {
   font-size: 13px;
   position: relative;
   display: table;
   width: 100%;
   margin: 5vh 0 0 0;
   table-layout: fixed;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.post-meta .left {
   display: table-cell;
   min-width: 200px;
   height: 100px;
   text-align: center;
   vertical-align: middle;
}

.post-meta .right {
   font-weight: bold;
   line-height: normal;
   display: none;
   width: 40%;
   min-height: 100px;
   text-align: right;
   vertical-align: middle;
}

.post-meta .right a {
   font-weight: normal;
}

.post-meta .post-share a {
   font-size: 17px;
   padding: 11px 20px 11px 25px;
   background: #f0f0f0;
}

.post-meta .post-share a:hover {
   color: #f0f0f0;
}

.post-meta .post-share a {
   color: #0f0d09;
}

.post-meta .post-share a {
   border: none;
}

.post-meta .post-share .copy {
   cursor: pointer;
}

.post-meta .post-share .copy svg {
   width: 19px;
   margin-left: -5px;
}

.post-meta .post-share .copy:hover svg {
   fill: #fff;
}

.post-meta .post-share input {
   position: absolute;
   top: -24px;
   display: block;
   cursor: default;
   opacity: 0;
   color: transparent;
   border: none;
   outline: none;
   background: transparent;
}

.post-meta .post-share .copy-link-info {
   font-size: 10px;
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   text-align: center;
   letter-spacing: 1px;
   text-transform: uppercase;
   opacity: 0;
}

.post-meta .post-share .copy:not(:active) ~ .copy-link-info {
   transition: opacity 10s step-end;
}

.post-meta .post-share .copy:active ~ .copy-link-info {
   opacity: .6;
}

.post-content blockquote {
   font-size: 17px;
   margin: 5vh 0;
   padding: 15px 20px;
   border-left: 10px solid #f0f0f0;
}

.post-reading-indicator {
   position: fixed;
   z-index: 999;
   bottom: 45px;
   left: 3%;
   transition: opacity .3s ease-in-out;
}

.post-reading-indicator.preload {
   opacity: 0;
}

/* Code card
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.kg-code-card {
   min-width: 100%;
   margin: 30px 0 25px
}

.kg-code-card pre,
.kg-code-card code {
   margin: 0;
}

/* Bookmark card
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.kg-bookmark-card {
   margin: 50px 0 40px;
}

.kg-bookmark-card + .kg-bookmark-card {
   margin-top: 20px;
}

.kg-bookmark-card .kg-bookmark-container {
   overflow: hidden;
   min-height: 140px;
   transition: transform .15s ease-in-out;
   text-decoration: none;
   border-bottom: none;
   border-radius: 0;
   background-color: #f7f7f7;
   background-image: none;
   color: #0f0d09
}

.kg-bookmark-container:hover {
   transform: translateY(-2px);
}

.kg-bookmark-container,
.kg-bookmark-content,
.kg-bookmark-metadata {
   display: flex;
}

.kg-bookmark-title,
.kg-bookmark-metadata {
   font-weight: 700;
}

/* Content */
.kg-bookmark-content {
   flex-direction: column;
   padding: 20px;
   flex-grow: 1;
   align-items: flex-start;
   justify-content: start;
}

/* Title */
.kg-bookmark-title {
   font-size: 18px;
   line-height: 1.3;
}

/* Description */
.kg-bookmark-description {
   font-size: 15px;
   line-height: 1.3;
   display: -webkit-box;
   overflow-y: hidden;
   max-height: 40px;
   margin-top: 12px;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
}

/* Meta */
.kg-bookmark-metadata {
   font-size: 14px;
   height: 22px;
   margin-top: 18px;
   align-items: center;
   flex-wrap: wrap;
}

.kg-bookmark-metadata .kg-bookmark-icon {
   width: 22px;
   height: 22px;
   margin-right: 8px;
}

.kg-bookmark-author,
.kg-bookmark-publisher {
   height: 24px;
}

.kg-bookmark-publisher {
   overflow: hidden;
   max-width: 240px;
   white-space: nowrap;
   text-overflow: ellipsis;
}

.kg-bookmark-author:after {
   margin-right: 6px;
   margin-left: 6px;
   content: '•';
}

/* Image */
.kg-bookmark-thumbnail {
   position: relative;
   min-width: 30%;
   max-height: 100%;
}

.kg-bookmark-thumbnail img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   -o-object-fit: cover;
   object-fit: cover;
}

@media (max-width:479px) {
   .post-header h1 {
      font-size: 30px;
   }

   .post-template .label {
      display: none;
   }

   .post-content .footnotes ol {
      padding-left: 0;
   }

   .post-content hr {
      margin: 30px 0 35px;
   }

   .kg-bookmark-card {
      margin: 30px 0;
   }

   .kg-bookmark-container {
      flex-direction: column;
   }

   .kg-bookmark-content {
      order: 2;
   }

   .kg-bookmark-publisher {
      max-width: 140px;
   }

   .kg-bookmark-thumbnail {
      width: 100%;
      min-height: 160px;
      order: 1;
   }

}

@media (min-width:550px) {
   .post-content .post-meta .right {
      display: table-cell;
   }

   .post-content .post-meta .left {
      text-align: left;
   }

   .post-meta .post-share .copy-link-info {
      text-align: left;
      width: 100%
   }

   .post-header {
      margin: 0 0 60px 0;
   }

}

@media (max-width:768px) {
   .post-reading-indicator {
      display: none;
   }

}

@media (min-width:480px) and (max-width:1023px) {
   .post-content hr {
      margin: 30px 0 35px;
   }

   .post-content-wrap {
      width: 70%;
      margin: -100px auto 0;
      padding: 40px 10% 0;
   }

   .post-header h1 {
      font-size: 35px;
   }

   .post-featured-image {
      height: 350px;
   }

   .post-content .post-meta .right {
      font-size: 12px;
   }

}

@media (min-width:1024px) and (max-width:1399px) {
   .post-content hr {
      margin: 40px 0 45px;
   }

   .post-content-wrap {
      width: 60%;
      margin: -200px auto 0;
      padding: 60px 10% 0;
   }

   .post-content blockquote {
      font-size: 17px;
      padding: 5px 45px 5px 25px;
   }

   .post-featured-image {
      height: 550px;
   }

}

@media (min-width:1400px) {
   .post-content hr {
      margin: 50px 0 55px;
   }

   .post-content-wrap {
      width: 700px;
      margin: -200px auto 0;
      padding: 60px 10% 0;
   }

   .post-content blockquote {
      font-size: 18px;
      padding: 5px 45px 5px 25px;
   }

   .post-featured-image {
      height: 600px;
   }

   .post-content p,
   .post-content ul,
   .post-content ol,
   .post-content tr {
      font-size: 18px;
      line-height: 1.9;
   }

}

/* Koenig Editor
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.kg-image-card,
.kg-gallery-card,
.kg-embed-card {
   margin: 50px 0;
}

.kg-image-card img,
.kg-gallery-card img {
   width: 100%;
   height: auto
}

.kg-card figcaption {
   font-size: 12px;
   line-height: 1.3;
   display: block;
   width: 100%;
   margin-top: 5px;
   color: #aeb5be;
}

.kg-embed-card .js-reframe {
   margin-bottom: 0;
}

.kg-gallery-card .kg-gallery-container {
   display: flex;
   flex-direction: column;
   margin: 15px auto;
}

.kg-gallery-card .kg-gallery-row {
   display: flex;
   flex-direction: row;
   justify-content: center;
}

.kg-gallery-card .kg-gallery-image img {
   display: block;
   margin: 0;
}

.kg-gallery-card .kg-gallery-row:not(:first-of-type) {
   margin: 10px 0 0 0;
}

.kg-gallery-card .kg-gallery-image:not(:first-of-type) {
   margin: 0 0 0 10px;
}

@media (max-width:767px) {
   .kg-image-card,
   .kg-gallery-card,
   .kg-embed-card {
      margin: 35px 0;
   }

}

@media (min-width:768px) {
   .kg-image-card.kg-width-full img,
   .kg-image-card.kg-width-full figcaption {
      position: relative;
      right: 50%;
      left: 50%;
      width: calc(100vw - 85px - 85px - 20px);
      margin-right: calc(-50vw + 85px + 10px);
      margin-left: calc(-50vw + 85px + 10px);
   }

}

@media (min-width:768px) and (max-width:1299px) {
   .kg-image-card.kg-width-wide img,
   .kg-gallery-card .kg-gallery-container {
      width: 110%;
      margin-left: -5%;
   }

}

@media (min-width:1300px) {
   .kg-image-card.kg-width-wide img,
   .kg-gallery-card .kg-gallery-container {
      width: calc(1200px - 85px - 85px);
   }

   .kg-image-card.kg-width-wide img,
   .kg-image-card.kg-width-wide figcaption,
   .kg-gallery-card .kg-gallery-container,
   .kg-gallery-card figcaption {
      margin-left: calc((700px - 1200px) / 2 + 85px);
   }

   .kg-image-card.kg-width-wide figcaption,
   .kg-gallery-card figcaption {
      width: 900px;
   }

}

/* --------------------------------------------------------------------------
   12.Related Posts
   -------------------------------------------------------------------------- */
.related-posts-wrap {
   position: relative;
   z-index: 99;
   display: flex;
   width: 85%;
   margin: 0 auto;
   flex-wrap: wrap;
}

.related-title {
   font-size: 13px;
   font-weight: bold;
   line-height: 13px;
   position: absolute;
   left: 50%;
   width: 200px;
   margin: -50px 0 0 -100px;
   text-align: center;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.related-post {
   min-height: 100px;
   margin: 0 10px 30px;
   padding: 10px 10px 65px;
   background: no-repeat center center;
   background-size: cover;
   flex-grow: 2;
   flex-basis: auto;
   border-radius: 5em;
}

.related-post-author {
   padding: 0 20px 3vh;
}

.related-posts-wrap .no-image {
   background-color: #f0f0f0;
}

.related-posts-wrap.is-related-posts {
   margin: 110px auto 0;
}

.related-post-author,
.related-post-title h3 {
   margin: 0;
   background: #fff;
}

.related-post-title h3 {
   font-size: 20px;
   padding: 2vh 20px 2vh;
}

.related-posts-wrap .related-post-author {
   font-size: 13px;
   font-weight: bold;
   line-height: 1.4;
}

@media (min-width:480px) and (max-width:1023px) {
   .related-posts-wrap {
      width: 72%;
      flex-direction: column;
   }

   .related-posts-wrap.is-related-posts {
      margin: 120px auto 0;
   }

}

@media (min-width:1024px) {
   .related-posts-wrap {
      max-width: 1000px;
      flex-wrap: nowrap;
      flex-direction: row;
   }

}

@media (min-width:1024px) and (max-width:1399px) {
   .related-posts-wrap {
      width: 90%;
   }

   .related-posts-wrap.is-related-posts {
      margin: 130px auto 0;
   }

   .related-post-title h3 {
      font-size: 20px;
      padding: 2vh 20px 2vh 10px;
   }

   .related-post {
      min-height: 120px;
      margin: 0 10px 30px;
   }

   .related-post-author {
      padding: 0 30px 3vh 10px;
   }

}

@media (min-width:1400px) {
   .related-posts-wrap.is-related-posts {
      margin: 160px auto 0;
   }

   .related-post-title h3 {
      font-size: 22px;
      padding: 3vh 30px 3vh 20px;
   }

   .related-post {
      min-height: 120px;
      margin: 0 15px 30px;
   }

   .related-post-author {
      padding: 0 20px 3vh 20px;
   }

}

/* --------------------------------------------------------------------------
   13.Pagination
   -------------------------------------------------------------------------- */
.pagination-wrap {
   font-size: 18px;
   font-weight: bold;
   position: relative;
   display: block;
   margin: 0;
   padding: 5vh 0 0;
   text-align: center;
   text-decoration: none;
   letter-spacing: 2px;
}

.pagination-wrap hr {
   width: 250px;
   margin: 10px auto;
   border-bottom: solid 5px #f0f0f0;
}

.pagination-wrap.first hr,
.pagination-wrap.last hr {
   display: none;
}

@media (min-width:480px) {
   .pagination-wrap hr {
      width: 300px;
      margin: 20px auto;
   }

}

@media (min-width:766px) {
   .pagination-wrap {
      padding: 10vh 0 0;
   }

}

/* --------------------------------------------------------------------------
   14.Subscribe
   -------------------------------------------------------------------------- */
.subscribe {
   width: 60%;
   min-width: 200px;
   margin: 12vh auto 0;
   padding: 3.5vh 20px 4vh;
   text-align: center;
   border: 10px solid #f0f0f0;
}

.subscribe .subscribe-email {
   width: 70%;
   min-width: 180px;
   margin-bottom: 16px;
   text-align: center;
}

.subscribe h3 {
   font-weight: lighter;
   padding: 10px 30px;
}

.subscribe h3 b {
   font-weight: bold;
}

.subscribe .form-control,
.subscribe input[type=email],
.subscribe textarea {
   height: 35px;
   margin: 1vh 0 3vh;
   border-radius: 0;
   background: transparent;
}

.subscribe input {
   font-size: 16px;
   margin: 0 0 5px 0;
   padding: 6px 9px 20px;
   border: none;
   outline: 0;
   box-shadow: none;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
}

.subscribe input:focus {
   border: none;
   border-bottom: solid 5px #f0f0f0;
}

.subscribe button {
   font-size: 12px;
   font-weight: bold;
   line-height: 16px;
   height: 55px;
   margin: 5px 0 0 0;
   padding: 20px 35px;
   cursor: pointer;
   letter-spacing: 2px;
   text-transform: uppercase;
   color: #fff;
   border: none;
   border-radius: 50px;
}

.subscribe button:hover {
   background: #0f0d09;
}

/* Alerts
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.subscribe-alert-loading,
.subscribe-alert-error {
   display: none;
}

.subscribe-alert-error {
   color: #f74856;
}

.subscribe-form.loading .subscribe-alert-loading,
.subscribe-form.error .subscribe-alert-error {
   font-size: 10px;
   font-weight: bold;
   position: relative;
   display: block;
   width: 100%;
   margin: 10px auto 0;
   padding: 10px 0;
   letter-spacing: 1.5px;
   text-transform: uppercase;
}

/* Sucess info
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.subscribe-form.success .subscribe-content,
.subscribe-form .subscribe-success {
   display: none;
}

.subscribe-form.success .subscribe-success {
   display: inline-block;
}

@media (min-width:480px) {
   .subscribe {
      min-width: 320px;
      padding: 6.5vh 20px 7vh;
   }

   .subscribe .subscribe-email {
      min-width: 300px;
   }

}

/* --------------------------------------------------------------------------
   15.Footer
   -------------------------------------------------------------------------- */
.footer-wrap,
.site-wrap::after {
   height: 120px;
}

.footer-wrap {
   line-height: normal;
   width: 350px;
   height: auto;
   margin: 0 auto;
   padding-bottom: 3vh;
   text-align: center;
}

.footer-social {
   display: inline-block;
   margin: 0;
   padding: 0;
}

.footer-social a {
   margin: 0 8px;
}

.footer-copyright {
   font-size: 12px;
   line-height: 1.7;
   margin: 16px auto 26px;
   letter-spacing: 1px;
}

.footer-copyright a {
   text-decoration: none;
}

@media (min-width:480px) {
   .footer-wrap {
      width: 320px;
      padding: 0;
   }

}

/* --------------------------------------------------------------------------
   16.Tags Page
   -------------------------------------------------------------------------- */
.tags-page-wrap {
   display: flex;
   width: 100%;
   margin: -25px auto 0;
   padding: 0;
   flex-wrap: wrap;
}

.tag-item-wrap {
   min-height: 180px;
   margin: 25px;
   padding: 10px 10px 65px;
   background: no-repeat center center;
   background-size: cover;
   flex-grow: 2;
   flex-basis: auto;
}

.tags-page-wrap .no-image {
   background: #f0f0f0;
}

.tag-name h2,
.tag-description {
   background: #fff;
}

.tag-name h2,
.tag-description p {
   margin: 0;
}

.tag-name h2 {
   font-size: 23px;
   padding: 3vh 30px;
}

.tag-description {
   padding: 0 30px 3vh;
}

.tag-description p {
   font-size: 15px;
   line-height: 1.5;
   max-width: 450px;
}

/* --------------------------------------------------------------------------
   17.Search
   -------------------------------------------------------------------------- */
.flex {
   display: flex;
   flex-wrap: wrap;
}

.search-opened .logo,
.search-opened .nav-wrap {
   position: absolute;
   overflow: hidden;
}

.search-opened .global-wrap {
   overflow-x: hidden;
   overflow-y: scroll;
}

.search-opened .global-wrap,
.section-search {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

.section-search {
   z-index: 9999;
   overflow: auto;
   -webkit-overflow-scrolling: touch;
   -webkit-backface-visibility: hidden;
}

.search-image {
   z-index: 99998;
   background: no-repeat center center;
   background-size: cover;
   flex: 0 0 40%;
}

.section-search,
.search-image {
   transition: transform .75s ease-in-out;
   transform: translateX(100%);
}

.search-opened .search-image,
.search-opened .section-search {
   transform: translateX(0);
}

.search-wrap {
   position: relative;
   z-index: -999;
   display: flex;
   overflow: auto;
   flex-direction: column;
   box-sizing: border-box;
   height: 100%;
   padding: 0 5%;
   background: #fff;
   flex: 1 0 60%;
}

.search-content {
   width: 100%;
   max-width: 900px;
   margin: 140px auto 6vh;
   padding: 0;
   flex: 1 0 auto;
}

/* Icons
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-open-mobile,
.search-open {
   display: inline-block;
   list-style: none;
   text-decoration: none;
}

.search-open-mobile svg,
.search-open svg {
   width: 21px;
   height: 21px;
   margin: 0 0 -5px 5px;
   list-style: none;
}

.search-close {
   position: absolute;
   z-index: 99999;
   top: 40px;
   right: 40px;
}

.search-close svg {
   width: 27px;
   height: 27px;
   fill: #dcdfe7;
}

.search-featured svg {
   width: 13px;
   height: 13px;
}

.search-open-mobile svg,
.search-open svg,
.search-featured svg {
   fill: #161b3d;
}

.search-open-mobile svg,
.search-open svg,
.search-close svg {
   cursor: pointer;
   transition: all .2s ease-out;
}

.search-open-mobile span {
   transition: .2s ease;
}

/* Placeholder
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-input::-webkit-input-placeholder {
   color: #d8dce4;
}

.search-input::-ms-input-placeholder {
   color: #d8dce4;
}

.search-input::-moz-placeholder {
   color: #d8dce4;
}

.search-input::placeholder {
   color: #d8dce4;
}

/* Form
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-form {
   margin-bottom: 0;
}

.search-input {
   font-size: 30px;
   font-weight: 700;
   display: block;
   width: 100%;
   min-width: 100px;
   height: 62px !important;
   padding: 0 !important;
   transition: border-color .3s ease !important;
   color: #161b3d;
   border-width: 0 0 7px 0 !important;
   border-style: solid !important;
   border-color: #dcdfe7 !important;
   border-radius: 0;
   outline: 0 !important;
   flex: 0 0 100%;
}

/* Meta
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-meta {
   font-size: 10px;
   font-weight: 700;
   display: block;
   width: 100%;
   margin: 0 auto;
   padding: 0 0 10px;
   text-align: left;
   letter-spacing: 1.5px;
   text-transform: uppercase;
   color: #161b3d;
}

.search-meta .hide {
   display: none;
}

/* Results
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-results h4 {
   font-size: 25px;
   position: relative;
   margin: 45px 0;
   padding: 0;
}

.search-results .search-date {
   font-size: 14px;
   font-weight: 400;
   position: absolute;
   top: -18px;
   left: 0;
   width: 400px;
   width: 250px;
   color: #0f0d09;
}

.search-results a:hover .search-date {
   color: #0f0d09 !important;
}

.search-results .search-featured {
   font-size: 14px;
   font-weight: 400;
   position: absolute;
   top: -17px;
   left: -20px;
}

/* Suggestion
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-suggestion {
   width: 100%;
   margin-top: 8vh;
}

.search-suggestion h3 {
   font-size: 30px;
   width: 87%;
   margin-bottom: 20px;
}

.search-suggestion a {
   font-size: 11px;
   font-weight: 700;
   display: inline-block;
   margin: 8px 5px 1px 0;
   padding: 0 12px 0 0;
   letter-spacing: 1.7px;
   text-transform: uppercase;
   border-radius: 20px;
}

.search-suggestion-tags,
.search-suggestion-authors {
   margin: 2vh 0;
   flex: 1 0 250px;
}

.search-suggestion-tags {
   margin-right: 50px;
}

/* Footer
   –––––––––––––––––––––––––––––––––––––––––––––––––––– */
.search-footer {
   width: 100%;
   max-width: 900px;
   height: 70px;
   margin: 0 auto;
   flex-shrink: 0;
}

.search-footer a,
.search-footer span {
   font-size: 14px;
   display: inline;
}

.search-footer a {
   font-weight: 700;
}

@media (max-width:479px) {
   .search-wrap {
      padding: 0 35px;
   }

   .search-content {
      margin-top: 100px;
   }

   .search-close {
      top: 47px;
      right: 37px;
   }

   .search-input {
      font-size: 15px;
      height: 50px;
   }

   .search-suggestion {
      margin-top: 30px;
   }

   .search-suggestion h3 {
      width: 100%;
   }

}

@media (min-width:480px) and (max-width:767px) {
   .search-wrap {
      padding: 0 85px;
   }

   .search-close {
      top: 61px;
      right: 58px;
   }

   .search-input {
      font-size: 30px;
      height: 55px;
      flex: 0 0 100%;
   }

   .search-suggestion {
      margin-top: 40px;
   }

   .search-suggestion h3 {
      width: 95%;
   }

}

@media (max-width:767px) {
   .section-search {
      transition: transform .3s ease-in-out;
   }

   .search-image {
      display: none;
   }

   .search-input {
      font-size: 20px;
      height: 52px;
   }

   .search-open-mobile span {
      display: inline-block;
      padding-left: 10px;
      cursor: pointer;
   }

   .search-open-mobile svg {
      margin: 0 0 -1px 5px;
   }

   .search-opened .logo {
      position: fixed;
      overflow: initial;
   }

}

/* --------------------------------------------------------------------------
   18.Disqus
   -------------------------------------------------------------------------- */
#disqus_thread {
   width: 80%;
   margin: 0 auto;
}

#disqus_thread iframe {
   padding: 13vh 0 0;
}

@media (min-width:480px) and (max-width:1023px) {
   #disqus_thread {
      width: 69%;
   }

}

@media (min-width:1024px) and (max-width:1399px) {
   #disqus_thread {
      width: 60%;
   }

}

@media (min-width:1400px) {
   #disqus_thread {
      width: 700px;
   }

}

/* --------------------------------------------------------------------------
   19.Animation
   -------------------------------------------------------------------------- */
.logo {
   transition: transform .35s ease-in-out;
   will-change: transform;
}

input, button, a {
   transition: .2s ease;
}

.masonry .item-container .item-container-img,
.masonry .item-container .item-container-img img,
.related-posts .related-post-wrap {
   transition: transform .25s ease-in-out;
}

@-webkit-keyframes label {
   0% { transform: translateX(-50px); }
   100% { transform: translateX(0); }
}

@keyframes label {
   0% { transform: translateX(-50px); }
   100% { transform: translateX(0); }
}