/*
Theme Name: ePotala
Theme URI: http://tcert.htb
Description: ePotala — cybersecurity blog theme, child of Twenty Seventeen.
Author: ePotala
Template: twentyseventeen
Version: 1.1.0
Tags: blog, dark, red, security
*/

/* ============================================================
   GOOGLE FONTS — loaded via functions.php
   Alfa Slab One  : headings / entry titles
   Open Sans      : body text (300, 300i, 400, 400i, 800, 800i)
   Libre Franklin : parent-theme supplemental
   ============================================================ */

/* ============================================================
   CSS CUSTOM PROPERTIES
   ============================================================ */

:root {
	--shadow-red:    #900;
	--shadow-dark:   #222;
	--shadow-black:  #000;
	--shadow-nav:    #111;
}

/* ============================================================
   1. NORMALIZE — inherit parent; only overrides below
   ============================================================ */

html {
	font-family: sans-serif;
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body { margin: 0; }

h1 { font-size: 2em; margin: 0.67em 0; }

b, strong { font-weight: 800; }

/* ============================================================
   2. ACCESSIBILITY
   ============================================================ */

.screen-reader-text {
	clip: rect(1px,1px,1px,1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: .875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* ============================================================
   3. ALIGNMENTS
   ============================================================ */

.alignleft  { display: inline; float: left;  margin-right: 1.5em; }
.alignright { display: inline; float: right; margin-left:  1.5em; }
.aligncenter { clear: both; display: block; margin: 0 auto; }

/* ============================================================
   4. CLEARINGS
   ============================================================ */

.clear:before, .clear:after,
.entry-content:before, .entry-content:after,
.entry-footer:before, .entry-footer:after,
.comment-content:before, .comment-content:after,
.site-header:before, .site-header:after,
.site-content:before, .site-content:after,
.site-footer:before, .site-footer:after,
.nav-links:before, .nav-links:after,
.pagination:before, .pagination:after,
.comment-author:before, .comment-author:after,
.widget-area:before, .widget-area:after,
.widget:before, .widget:after,
.comment-meta:before, .comment-meta:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after, .entry-content:after, .entry-footer:after,
.comment-content:after, .site-header:after, .site-content:after,
.site-footer:after, .nav-links:after, .pagination:after,
.comment-author:after, .widget-area:after, .widget:after,
.comment-meta:after { clear: both; }

/* ============================================================
   5. TYPOGRAPHY
   ============================================================ */

body, button, input, select, textarea {
	color: #333;
	font-family: "Open Sans", sans-serif !important;
	font-weight: 400;
	line-height: 1.66;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	line-height: 1.4;
	margin: 0 0 .75em;
	padding: 1.5em 0 0;
}

h1, .entry-title, h3 {
	font-family: 'Alfa Slab One', cursive !important;
	text-transform: none !important;
	line-height: 108%;
}

h1:first-child, h2:first-child, h3:first-child,
h4:first-child, h5:first-child, h6:first-child { padding-top: 0; }

h1, h1 .entry-title {
	font-size: 2.5rem;
	line-height: 105% !important;
	font-weight: 300;
}

h2, .home.blog .entry-title {
	color: #666;
	font-size: 1.25rem;
	font-weight: 300;
}

h2.category-title {
	font-size: 60px !important;
	line-height: 30px !important;
	margin-bottom: 0 !important;
	color: var(--shadow-red) !important;
	letter-spacing: -2px;
}

h2.category-title span.category-title-bold {
	color: #999 !important;
	font-weight: bold;
	font-size: 60px !important;
}

h3 {
	color: #333;
	font-size: 2.125rem !important;
	line-height: 105% !important;
	font-weight: 300;
}

h4 { color: #333; font-size: 1rem;    font-weight: 800; }
h5 { color: #767676; font-size: .8125rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
h6 { color: #333; font-size: .9375rem; font-weight: 800; }

p { margin: 0 0 1.5em; padding: 0; }

dfn, cite, em, i { font-style: italic; }

blockquote {
	color: #666;
	font-size: 100% !important;
	font-style: italic;
	line-height: 1.5 !important;
	border-left: 3px #aaa solid;
	padding: 0 0 0 15px !important;
	margin: 0;
	overflow: hidden;
}

blockquote cite { display: block; font-style: normal; font-weight: 600; margin-top: .5em; }

address { margin: 0 0 1.5em; }

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: .9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: .9375rem;
}

abbr, acronym { border-bottom: 1px dotted #666; cursor: help; }

mark, ins { background: #eee; text-decoration: none; }

big { font-size: 125%; }

blockquote { quotes: "" ""; }
q { quotes: "\201C" "\201D" "\2018" "\2019"; }
blockquote:before, blockquote:after { content: ""; }

:focus { outline: none; }

::-webkit-input-placeholder { color: #333; font-family: "Open Sans", sans-serif; }
:-moz-placeholder            { color: #333; font-family: "Open Sans", sans-serif; }
::-moz-placeholder           { color: #333; font-family: "Open Sans", sans-serif; opacity: 1; }
:-ms-input-placeholder       { color: #333; font-family: "Open Sans", sans-serif; }

/* ============================================================
   6. FORMS
   ============================================================ */

label { color: #333; display: block; font-weight: 800; margin-bottom: .5em; }
fieldset { margin-bottom: 1em; }

input[type="text"], input[type="email"], input[type="url"],
input[type="password"], input[type="search"], input[type="number"],
input[type="tel"], input[type="range"], input[type="date"],
input[type="month"], input[type="week"], input[type="time"],
input[type="datetime"], input[type="datetime-local"],
input[type="color"], textarea {
	color: #666;
	background: #fff;
	border: 1px solid #bbb;
	border-radius: 3px;
	display: block;
	padding: .7em;
	width: 100%;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus,
input[type="password"]:focus, input[type="search"]:focus,
input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus,
input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus,
input[type="time"]:focus, input[type="datetime"]:focus,
input[type="datetime-local"]:focus, input[type="color"]:focus,
textarea:focus { color: #222; border-color: #333; }

select { border: 1px solid #bbb; border-radius: 3px; height: 3em; max-width: 100%; }

input[type="radio"], input[type="checkbox"] { margin-right: .5em; }
input[type="radio"] + label, input[type="checkbox"] + label { font-weight: 400; }

button, input[type="button"], input[type="submit"] {
	background-color: #222;
	border: 0;
	border-radius: 2px;
	box-shadow: none;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: .875rem;
	font-weight: 800;
	line-height: 1;
	padding: 1em 2em;
	text-shadow: none;
	transition: background .2s;
}

button:hover, button:focus,
input[type="button"]:hover, input[type="button"]:focus,
input[type="submit"]:hover, input[type="submit"]:focus { background: #767676; }

/* ============================================================
   7. FORMATTING
   ============================================================ */

hr { background-color: #bbb; border: 0; height: 1px; margin-bottom: 1.5em; }

/* ============================================================
   8. LISTS
   ============================================================ */

ul, ol { margin: 0 0 1.5em; padding: 0; }
ul { list-style: disc; }
ol { list-style: decimal; }
li > ul, li > ol { margin-bottom: 0; margin-left: 1.5em; }
dt { font-weight: 700; }
dd { margin: 0 1.5em 1.5em; }

/* ============================================================
   9. TABLES
   ============================================================ */

table { border-collapse: collapse; margin: 0 0 1.5em; width: 100%; }
thead th { border-bottom: 2px solid #bbb; padding-bottom: .5em; }
th { padding: .4em; text-align: left; }
tr { border-bottom: 1px solid #eee; }
td { padding: .4em; }
th:first-child, td:first-child { padding-left: 0; }
th:last-child,  td:last-child  { padding-right: 0; }

/* ============================================================
   10. LINKS
   ============================================================ */

a { color: #222; text-decoration: none; }
a:focus { outline: thin dotted; }
a:hover, a:active { color: var(--shadow-red) !important; outline: 0; }

.entry-content a, .entry-summary a, .comment-content a,
.widget a, .site-footer .widget-area a, .posts-navigation a,
.widget_authors a strong {
	box-shadow: none !important;
	transition: color 80ms ease-in, box-shadow 130ms ease-in-out;
}

.entry-title a, .entry-meta a, .page-links a,
.page-links a .page-number, .entry-footer a,
.entry-footer .cat-links a, .entry-footer .tags-links a,
.edit-link a, .post-navigation a, .logged-in-as a,
.comment-navigation a, .comment-metadata a,
.comment-reply-link, a .nav-title,
.pagination a, .comments-pagination a, .site-info a,
.widget .widget-title a, .widget ul li a,
.site-footer .widget-area ul li a {
	box-shadow: inset 0 0 0 rgba(255,255,255,1);
	text-decoration: none;
	transition: color 80ms ease-in, box-shadow 130ms ease-in-out;
}

.entry-content a:hover, .entry-content a:focus,
.entry-summary a:hover, .entry-summary a:focus,
.comment-content a:hover, .comment-content a:focus,
.widget a:hover, .widget a:focus,
.site-footer .widget-area a:hover, .site-footer .widget-area a:focus,
.posts-navigation a:hover, .posts-navigation a:focus,
.entry-title a:hover, .entry-title a:focus,
.entry-meta a:hover, .entry-meta a:focus,
.entry-footer a:hover, .entry-footer a:focus,
.post-navigation a:hover, .post-navigation a:focus,
.logged-in-as a:hover, .logged-in-as a:focus,
a:hover .nav-title, a:focus .nav-title,
.site-info a:hover, .site-info a:focus,
.widget .widget-title a:hover, .widget .widget-title a:focus,
.widget ul li a:hover, .widget ul li a:focus,
.comment-reply-link:hover, .comment-reply-link:focus,
.comment-metadata a:hover, .comment-metadata a:focus {
	color: var(--shadow-red) !important;
	box-shadow: none !important;
}

.entry-content a img, .comment-content a img, .widget a img {
	box-shadow: none !important;
}

.post-navigation a:hover .icon, .post-navigation a:focus .icon {
	color: var(--shadow-red) !important;
}

/* ============================================================
   11. FEATURED IMAGE HOVER
   ============================================================ */

.post-thumbnail { margin-bottom: 1em; }
.post-thumbnail a img { transition: opacity .2s; }
.post-thumbnail a:hover img, .post-thumbnail a:focus img { opacity: .7; }

/* ============================================================
   12. NAVIGATION
   ============================================================ */

.navigation-top {
	background: var(--shadow-nav) !important;
	border-bottom: 0 !important;
	border-top: 0 !important;
	font-size: 1rem;
	position: relative;
}

.navigation-top .wrap { max-width: 1000px; padding: 0; }

.navigation-top a {
	color: #ccc !important;
	font-weight: 600;
	transition: color .2s;
}

.navigation-top .current-menu-item > a,
.navigation-top .current_page_item > a { color: #fff !important; }

.main-navigation { clear: both; display: block; }

.main-navigation ul {
	background: #fff;
	list-style: none;
	margin: 0;
	padding: 0 1.5em;
	text-align: left;
}

.js .main-navigation ul,
.main-navigation .menu-item-has-children > a > .icon,
.main-navigation .page_item_has_children > a > .icon,
.main-navigation ul a > .icon { display: none; }

.main-navigation > div > ul { border-top: 1px solid #eee; padding: .75em 1.695em; }
.js .main-navigation.toggled-on > div > ul { display: block; }
.main-navigation ul ul { padding: 0 0 0 1.5em; }
.main-navigation ul ul.toggled-on { display: block; }
.main-navigation ul ul a { letter-spacing: 0; padding: .4em 0; position: relative; text-transform: none; }
.main-navigation li { border-bottom: 1px solid #eee; position: relative; }
.main-navigation li li, .main-navigation li:last-child { border: 0; }
.main-navigation a { display: block; padding: .5em 0; text-decoration: none; }
.main-navigation a:hover { color: #fff; }

.menu-toggle {
	background-color: transparent;
	border: 0;
	box-shadow: none;
	color: #222;
	display: none;
	font-size: .875rem;
	font-weight: 800;
	line-height: 1.5;
	margin: 1px auto 2px;
	padding: 1em;
	text-shadow: none;
}

.js .menu-toggle { display: block; }
.main-navigation.toggled-on ul.nav-menu { display: block; }
.menu-toggle:hover, .menu-toggle:focus { background-color: transparent; box-shadow: none; }
.menu-toggle:focus { outline: thin solid; }
.menu-toggle .icon { margin-right: .5em; top: -2px; }
.toggled-on .menu-toggle .icon-bars, .menu-toggle .icon-close { display: none; }
.toggled-on .menu-toggle .icon-close { display: inline-block; }

.dropdown-toggle {
	background-color: transparent;
	border: 0;
	box-shadow: none;
	color: #222;
	display: block;
	font-size: 16px;
	right: -.5em;
	line-height: 1.5;
	margin: 0 auto;
	padding: .5em;
	position: absolute;
	text-shadow: none;
	top: 0;
}

.dropdown-toggle:hover, .dropdown-toggle:focus { background: transparent; }
.dropdown-toggle:focus { outline: thin dotted; }
.dropdown-toggle.toggled-on .icon { transform: rotate(-180deg); }

.site-header .menu-scroll-down { display: none; }

/* ============================================================
   13. LAYOUT
   ============================================================ */

html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

body { background: #fff; }

#page { position: relative; word-wrap: break-word; }

.wrap {
	margin-left: auto;
	margin-right: auto;
	max-width: 700px;
	padding-left: 2em;
	padding-right: 2em;
}

.wrap:after { clear: both; content: ""; display: block; }

/* 13.1 HEADER ------------------------------------------------ */

#masthead .wrap { position: relative; }

.site-header {
	background-color: var(--shadow-dark) !important;
	position: relative;
	margin-bottom: 0;
}

.site-branding {
	background-color: var(--shadow-dark);
	padding: 1em 0;
	position: relative;
	transition: margin-bottom .2s;
	z-index: 3;
}

.site-branding a { text-decoration: none; transition: opacity .2s; }
.site-branding a:hover, .site-branding a:focus { opacity: .7; }

.site-title {
	clear: none;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .08em;
	margin: 0;
	padding: 0;
	text-transform: uppercase;
}

.site-title, .site-title a { color: #222; opacity: 1; }

body.has-header-image .site-title,
body.has-header-video .site-title,
body.has-header-image .site-title a,
body.has-header-video .site-title a { color: #fff; }

.site-description { color: #666; font-size: .8125rem; margin-bottom: 0; }

body.has-header-image .site-description,
body.has-header-video .site-description { color: #fff; opacity: .8; }

.custom-logo-link {
	display: inline-block;
	padding-right: 1em;
	vertical-align: middle;
	width: auto;
}

.custom-logo-link img { display: inline-block; max-height: 80px; width: auto; }

body.home.title-tagline-hidden.has-header-image .custom-logo-link img,
body.home.title-tagline-hidden.has-header-video .custom-logo-link img {
	max-height: 200px;
	max-width: 100%;
}

body:not(.title-tagline-hidden) .site-branding-text { display: inline-block; vertical-align: middle; }

.custom-header { position: relative; }

.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header {
	display: table;
	height: 75vh;
	width: 100%;
}

.custom-header-media {
	bottom: 0; left: 0;
	overflow: hidden;
	position: absolute;
	right: 0; top: 0;
	width: 100%;
}

.custom-header-media:before {
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,.3) 75%, rgba(0,0,0,.3) 100%);
	bottom: 0; content: ""; display: block;
	height: 100%; left: 0;
	position: absolute; right: 0; z-index: 2;
}

.has-header-image .custom-header-media img,
.has-header-video .custom-header-media video,
.has-header-video .custom-header-media iframe {
	position: fixed;
	height: auto; left: 50%;
	min-height: 100%; min-width: 100%; min-width: 100vw;
	width: auto; top: 50%;
	transform: translateX(-50%) translateY(-50%);
}

@supports (object-fit: cover) {
	.has-header-image .custom-header-media img,
	.has-header-video .custom-header-media video,
	.has-header-video .custom-header-media iframe {
		height: 100%; left: 0;
		object-fit: cover; top: 0;
		transform: none; width: 100%;
	}
}

body:not(.has-header-image):not(.has-header-video) .custom-header-media { display: none; }

.has-header-image.twentyseventeen-front-page .site-branding,
.has-header-video.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding,
.has-header-video.home.blog .site-branding { display: table-cell; height: 100%; vertical-align: bottom; }

/* 13.2 FRONT PAGE -------------------------------------------- */

.twentyseventeen-front-page .site-content { padding: 0; }

.twentyseventeen-panel { overflow: hidden; position: relative; }

.panel-image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.panel-image:before {
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,.3) 100%);
	bottom: 0; content: ""; left: 0; right: 0;
	position: absolute; top: 100px;
}

.twentyseventeen-front-page article:not(.has-post-thumbnail):not(:first-child) {
	border-top: 1px solid #ddd;
}

.panel-content { position: relative; }
.panel-content .wrap { padding-bottom: .5em; padding-top: 1.75em; }
.twentyseventeen-panel .edit-link { display: block; margin: .3em 0 0; }
.twentyseventeen-panel .entry-header .edit-link { font-size: .875rem; }

.twentyseventeen-front-page .panel-content .recent-posts article {
	border: 0; color: #333; margin-bottom: 3em;
}

.recent-posts .entry-header { margin-bottom: 1.2em; }

.page .panel-content .recent-posts .entry-title {
	font-size: 1.25rem; font-weight: 300; letter-spacing: 0; text-transform: none;
}

/* 13.3 REGULAR CONTENT --------------------------------------- */

.site-content-contain { background-color: #fff; position: relative; margin-top: 2em; }
.site-content { padding: 2.5em 0 0; }

/* 13.4 POSTS ------------------------------------------------- */

.sticky { position: relative; }
.post:not(.sticky) .icon-thumb-tack { display: none; }
.sticky .icon-thumb-tack {
	display: block; height: 18px; left: -1.5em;
	position: absolute; top: 1.65em; width: 20px;
}

/* Page panel titles (home/front-page panels only) */
.page .panel-content .entry-title,
.page-title {
	font-family: 'Alfa Slab One', cursive !important;
	font-size: 40px !important;
	font-weight: 400 !important;
	color: #333 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* Single post / page entry title — natural Alfa Slab One, parent controls size */
.single .entry-title,
.single-post .entry-title,
body.page:not(.twentyseventeen-front-page) .entry-title {
	font-family: 'Alfa Slab One', cursive !important;
	font-weight: 400 !important;
	color: #333 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.entry-header .entry-title { margin-bottom: .25em; }

.entry-title a { color: #333; text-decoration: none; margin-left: -2px; }
.entry-title:not(:first-child) { padding-top: 0; }

.entry-meta {
	color: #767676;
	font-size: .6875rem;
	font-weight: 800;
	letter-spacing: .1818em;
	padding-bottom: .25em;
	text-transform: uppercase;
}

.entry-meta a { color: #767676; }

.byline, .updated:not(.published) { display: none; }
.single .byline, .group-blog .byline { display: none !important; }

.pagination, .comments-pagination {
	border-top: 1px solid #eee;
	font-size: .875rem;
	font-weight: 800;
	padding: 2em 0 3em;
	text-align: center;
}

.page-numbers { display: none; padding: .5em .75em; }
.page-numbers.current { color: #767676; display: inline-block; }

.prev.page-numbers, .next.page-numbers {
	background-color: #ddd;
	border-radius: 2px;
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1;
	padding: .25em .5em .4em;
	transition: background-color .2s ease-in-out, color .3s ease-in-out;
}

.prev.page-numbers:focus, .prev.page-numbers:hover,
.next.page-numbers:focus, .next.page-numbers:hover {
	background-color: #767676; color: #fff;
}

.prev.page-numbers { float: left; }
.next.page-numbers { float: right; }

.entry-content blockquote.alignleft,
.entry-content blockquote.alignright { color: #666; font-size: .8125rem; width: 48%; }

/* Blog / archive post separator */
.blog .site-main > article,
.archive .site-main > article,
.search .site-main > article {
	padding-bottom: 10px !important;
	border-bottom: 5px var(--shadow-red) solid !important;
	margin-bottom: 30px;
}

body:not(.twentyseventeen-front-page) .entry-header { padding: 1em 0; }

body:not(.twentyseventeen-front-page) .entry-header,
body:not(.twentyseventeen-front-page) .entry-content,
body:not(.twentyseventeen-front-page) #comments {
	margin-left: auto; margin-right: auto;
}

body:not(.twentyseventeen-front-page) .entry-header { padding-top: 0; }

.taxonomy-description { color: #666; font-size: .8125rem; }

.entry-content .more-link:before { content: ""; display: block; margin-top: 1.5em; }

.single-post:not(.has-sidebar) #primary,
.page.page-one-column:not(.twentyseventeen-front-page) #primary,
.archive.page-one-column:not(.has-sidebar) .page-header,
.archive.page-one-column:not(.has-sidebar) #primary {
	margin-left: auto; margin-right: auto; max-width: 1000px;
}

.single-featured-image-header { display: none; }

.page-links { font-size: .875rem; font-weight: 800; padding: 2em 0 3em; }
.page-links .page-number { color: #767676; display: inline-block; padding: .5em 1em; }
.page-links a { display: inline-block; }
.page-links a .page-number { color: #222; }

.entry-footer {
	border-bottom: 1px solid #eee;
	border-top: 1px solid #eee;
	margin-top: 2em;
	padding: 2em 0;
}

.entry-footer .cat-links, .entry-footer .tags-links {
	display: block;
	font-size: .6875rem;
	font-weight: 800;
	letter-spacing: .1818em;
	padding-left: 2.5em;
	position: relative;
	text-transform: uppercase;
}

.entry-footer .cat-links + .tags-links { margin-top: 1em; }
.entry-footer .cat-links a, .entry-footer .tags-links a { color: #333; }

.entry-footer .cat-links .icon, .entry-footer .tags-links .icon {
	color: #767676; left: 0; margin-right: .5em; position: absolute; top: 2px;
}

.entry-footer .edit-link { display: inline-block; }
.entry-footer .edit-link a.post-edit-link {
	background-color: #222;
	border-radius: 2px;
	box-shadow: none;
	color: #fff;
	display: inline-block;
	font-size: .875rem;
	font-weight: 800;
	margin-top: 2em;
	padding: .7em 2em;
	transition: background-color .2s ease-in-out;
	white-space: nowrap;
}

.entry-footer .edit-link a.post-edit-link:hover,
.entry-footer .edit-link a.post-edit-link:focus { background-color: #767676; }

.format-quote blockquote {
	color: #333;
	font-size: 1.25rem;
	font-weight: 300;
	overflow: visible;
	position: relative;
}

.post-navigation { font-weight: 800; margin: 3em 0; }
.post-navigation .nav-links { padding: 1em 0; }

.nav-subtitle {
	background: transparent;
	color: #767676;
	display: block;
	font-size: .6875rem;
	letter-spacing: .1818em;
	margin-bottom: 1em;
	text-transform: uppercase;
}

.nav-title { color: #333; font-size: .9375rem; }
.post-navigation .nav-next { margin-top: 1.5em; }

/* 13.5 PAGES ------------------------------------------------- */

.page-header { padding-bottom: 2em; }
.page .entry-header .edit-link { font-size: .875rem; }
.page-links { clear: both; margin: 0 0 1.5em; }
.page:not(.home) #content { padding-bottom: 1.5em; }

.error404 .page-content { padding-bottom: 4em; }
.error404 .page-content .search-form,
.search .page-content .search-form { margin-bottom: 3em; }

/* 13.6 FOOTER ------------------------------------------------ */

.site-footer {
	border-top: 1px solid #eee;
	background-color: var(--shadow-black) !important;
	color: #eb2c2c;
}

.site-footer .wrap { padding-bottom: 1.5em; padding-top: 2em; }
.site-footer .widget-area { padding-bottom: 2em; padding-top: 2em; }

.social-navigation { font-size: 1rem; margin-bottom: 1em; }
.social-navigation ul { list-style: none; margin-bottom: 0; margin-left: 0; }
.social-navigation li { display: inline; }

.social-navigation a {
	background-color: #767676;
	border-radius: 40px;
	color: #fff;
	display: inline-block;
	height: 40px;
	margin: 0 1em .5em 0;
	text-align: center;
	width: 40px;
}

.social-navigation a:hover, .social-navigation a:focus { background-color: #333; }
.social-navigation .icon { height: 16px; top: 12px; width: 16px; vertical-align: top; }

.site-info { font-size: .875rem; margin-bottom: 1em; }
.site-info a { color: #666; }

/* ============================================================
   14. COMMENTS
   ============================================================ */

#comments { clear: both; padding: 2em 0 .5em; }
.comments-title { font-size: 1.25rem; margin-bottom: 1.5em; }
.comment-list, .comment-list .children { list-style: none; margin: 0; padding: 0; }
.comment-list li:before { display: none; }
.comment-body { margin-left: 65px; }
.comment-author { font-size: 1rem; margin-bottom: .4em; position: relative; z-index: 2; }
.comment-author .avatar { height: 50px; left: -65px; position: absolute; width: 50px; }
.comment-author .says { display: none; }
.comment-meta { margin-bottom: 1.5em; }

.comment-metadata {
	color: #767676;
	font-size: .625rem;
	font-weight: 800;
	letter-spacing: .1818em;
	text-transform: uppercase;
}

.comment-metadata a { color: #767676; }
.comment-metadata a.comment-edit-link { color: #222; margin-left: 1em; }

.comment-body { color: #333; font-size: .875rem; margin-bottom: 4em; }
.comment-reply-link { font-weight: 800; position: relative; }
.comment-reply-link .icon { color: #222; left: -2em; height: 1em; position: absolute; top: 0; width: 1em; }

.children .comment-author .avatar { height: 30px; left: -45px; width: 30px; }
.bypostauthor > .comment-body > .comment-meta > .comment-author .avatar { border: 1px solid #333; padding: 2px; }

.no-comments, .comment-awaiting-moderation { color: #767676; font-size: .875rem; font-style: italic; }
.comments-pagination { margin: 2em 0 3em; }
.form-submit { text-align: right; }

/* ============================================================
   15. WIDGETS
   ============================================================ */

#secondary { padding: 1em 0 2em; }
.widget { padding-bottom: 2em; }

h2.widget-title {
	color: #c00;
	font-size: .8125rem;
	font-weight: 800;
	letter-spacing: .1818em;
	margin-bottom: 1.5em;
	text-transform: uppercase;
}

.widget-title a { color: inherit; }
.widget select { width: 100%; }

.widget ul { list-style: none; margin: 0; }

.widget ul li, .widget ol li {
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
	padding: .5em 0;
}

.widget:not(.widget_tag_cloud) ul li + li { margin-top: -1px; }

.widget_recent_entries ul li,
.widget_recent_entries ol li { display: block !important; }

.widget_recent_entries ul li a,
.widget_recent_entries ol li a {
	font-weight: bold !important;
	font-size: 15px;
	line-height: 1.4;
	text-transform: uppercase;
}

.widget_recent_entries .post-date {
	font-size: 14px !important;
	line-height: 18px;
	font-style: italic;
	margin-bottom: 5px;
}

.widget .post-date, .widget .rss-date { font-size: .81em; }
.widget_text { word-wrap: break-word; }
.widget_text ul { list-style: disc; margin: 0 0 1.5em 1.5em; }
.widget_text ol { list-style: decimal; }
.widget_text ul li, .widget_text ol li { border: none; }

.search-form { position: relative; }
.search-form .search-submit { bottom: 3px; padding: .5em 1em; position: absolute; right: 3px; top: 3px; }

.tagcloud ul li { float: left; border-top: 0; border-bottom: 0; padding: 0; margin: 4px 4px 0 0; }
.tagcloud, .widget_tag_cloud, .wp_widget_tag_cloud { line-height: 1.5; }

.widget .tagcloud a, .widget.widget_tag_cloud a, .wp_widget_tag_cloud a {
	border: 1px solid #ddd;
	box-shadow: none;
	display: block;
	padding: 4px 10px 5px;
	position: relative;
	transition: background-color .2s ease-in-out, border-color .2s ease-in-out, color .3s ease-in-out;
}

/* ============================================================
   16. MEDIA
   ============================================================ */

img, video { height: auto; max-width: 100%; padding-bottom: 15px; }

img.alignleft, img.alignright { float: none; margin: 0; }

.page-content .wp-smiley, .entry-content .wp-smiley,
.comment-content .wp-smiley { border: none; margin-bottom: 0; margin-top: 0; padding: 0; }

embed, iframe, object { margin-bottom: 1.5em; max-width: 100%; }
p > embed:only-child, p > iframe:only-child, p > object:only-child { margin-bottom: 0; }

.wp-caption, .gallery-caption { color: #666; font-size: .8125rem; font-style: italic; margin-bottom: 1.5em; max-width: 100%; }
.wp-caption img[class*="wp-image-"] { display: block; margin: auto; }
.wp-caption .wp-caption-text { margin: .8075em 0; }

.gallery-item { display: inline-block; text-align: left; vertical-align: top; margin: 0 0 1.5em; padding: 0 1em 0 0; width: 50%; }
.gallery-columns-1 .gallery-item { width: 100%; }
.gallery-columns-2 .gallery-item { max-width: 50%; }

.gallery-item a img { display: block; transition: filter .2s ease-in; }
.gallery-item a:hover img, .gallery-item a:focus img { filter: opacity(60%); }
.gallery-caption { display: block; text-align: left; padding: 0 10px 0 0; margin-bottom: 0; }

.icon { display: inline-block; fill: currentColor; height: 1em; position: relative; top: -.0625em; vertical-align: middle; width: 1em; }

/* ============================================================
   18. SHADOW TIBET — custom overrides
   ============================================================ */

.wp-block-button .wp-block-button__link {
	border-radius: 5px !important;
	background-color: #49111c !important;
}

.wp-block-button .wp-block-button__link:hover {
	color: #fff !important;
	border-radius: 5px !important;
	background-color: #222 !important;
}

/* Footer */

#colophon .widget ul li, #colophon .widget ol li {
	color: #fff;
	border-bottom: 1px solid #666;
	border-top: 1px solid #666;
	padding: .5em 0;
}

#colophon .widget a { color: #ccc; }
#colophon h2 { color: #ccc; font-size: 20px; }

/* Home page two-column layout */

.home-top { margin-bottom: 1em; width: 100%; }

.home-left {
	display: flex;
	flex-wrap: wrap;
	float: left;
	width: 58%;
}

.home-right {
	float: right !important;
	width: 36%;
}

/* Adding line between posts */
.entry-content { border-bottom: 5px !important; border-color: var(--shadow-red) !important; }


/* Logo in navigation bar */
#site-navigation { clear: none; float: left; }
.site-navigation-fixed #site-navigation { clear: none; float: left; }

.navigation-top .custom-logo-link { display: none; float: left; }
.site-navigation-fixed .custom-logo-link { display: block; padding-right: 1em; }
.site-navigation-fixed .custom-logo { width: 15rem; }

/* Top story featured post */
.top-story { width: 100%; }

.top-story h1 { font-size: 50px; margin-bottom: 20px; }

/* Recent posts (home-left feed) */
.shadow-recent {
	display: flex;
	margin-bottom: 0;
}

.shadow-recent-image { width: auto; margin-right: 15px; flex-shrink: 0; }
.shadow-recent-image img { margin: 0; padding: 0; }

.shadow-recent-body { width: 100%; }

.shadow-recent-body h3 {
	font-size: 1.3rem !important;
	line-height: 1.2 !important;
	margin: 0 0 .25em !important;
	padding: 0 !important;
}

.shadow-recent-body .entry-date { font-size: .875rem; font-style: italic; color: #767676; margin-bottom: .5em; }

.shadow-recent-body .desc { font-size: .9rem; color: #333; margin: 0; }

div[style*="border-top: 1px solid #666"] { margin: 20px 0; }

/* Latest posts area */
.latest-posts { width: 100%; }
.latest-posts .topstory { width: 100%; }
.latest-posts .details { width: 100%; }
.latest-posts .entry-date { font-size: .9rem; }
.latest-posts .link-more { margin-top: .5em; }

.anchor-hover { text-decoration: none; }
.anchor-hover:hover h1, .anchor-hover:hover h2,
.anchor-hover:hover h3, .anchor-hover:hover h4 {
	color: var(--shadow-red) !important;
}

/* Category widget titles */
.cat-widget-title {
	font-family: "Open Sans", sans-serif !important;
	font-size: 2em !important;
	font-weight: 300 !important;
	color: var(--shadow-red) !important;
	margin: 0 !important;
	border-bottom: 1px solid #333;
	border-left: 10px solid var(--shadow-red);
	padding-left: .2em;
}

/* Grey prefix: Open Sans 800 (heavy) | Red text: Open Sans 300 (light) */
.cat-widget-title-bold { color: #999 !important; font-weight: 800; }

/* Category post widget items */


.cat-post-footer-link {
	font-weight: bold;
	color: var(--shadow-red);
	font-size: 20px;
	text-align: right;
	float: right;
	padding: 7px 15px 0 0;
}

.home-right .widget_text { padding: 0 0 .5em 0 !important; }


/* YARPP related posts */
.yarpp-related { border-top: 10px #222 solid; padding-top: 10px; }
.yarpp-related h3 {
	text-transform: uppercase !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	letter-spacing: 3px;
	padding-top: 10px !important;
}

.yarpp-related ol, .yarpp-related-widget ol { list-style: none !important; }

/* EDD shop */
#main .edd_download_title {
	font-family: "Open Sans", sans-serif !important;
	margin-bottom: 0;
	padding: 10px 0;
}

.wp-block-image, .wp-block-image img { max-width: 100%; margin: 0; padding: 0; }

#edd-purchase-button, .edd-submit, [type="submit"].edd-submit {
	border-radius: 0;
	text-transform: uppercase;
}

.edd-submit.button.blue { color: #fff; background: #222; border-color: #222; }
.edd-submit.button.blue:hover, .edd-submit.button.blue:focus { color: #fff; background: #000; border-color: #000; }

.edd-cart-number-of-items {
	font-style: normal;
	font-weight: bold;
	background-color: #222;
	padding: 5px 0 5px 12px;
	color: #fff;
}

.edd-cart-quantity {
	font-weight: bold;
	font-size: 120%;
	color: #fff;
	background-color: #c00;
	padding: 0 9px;
	margin-left: 5px;
}

.edd-cart-meta.edd_subtotal, .edd-cart-meta.edd_total {
	background-color: #ccc;
	border-top: 3px #222 solid !important;
	padding-left: 12px;
}

.edd_checkout a { color: #fff !important; background-color: #222; padding: 5px 15px !important; }

/* Highlight search terms */
mark, ins, .hilite { background: #ffcc00 !important; text-decoration: none; padding: 0 3px !important; }

/* ============================================================
   19. SVG FALLBACKS
   ============================================================ */

.svg-fallback { display: none; }
.no-svg .svg-fallback { display: inline-block; }

.no-svg .dropdown-toggle .svg-fallback.icon-angle-down {
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1;
	transform: rotate(180deg);
}

.no-svg .dropdown-toggle.toggled-on .svg-fallback.icon-angle-down { transform: rotate(0); }
.no-svg .dropdown-toggle .svg-fallback.icon-angle-down:before { content: "\005E"; }

.no-svg .social-navigation a { background: transparent; color: #222; height: auto; width: auto; }

/* ============================================================
   20. MEDIA QUERIES
   ============================================================ */

/* 20.1 Mobile (320–480 px) ---------------------------------- */

@media screen and (min-width: 20em) {

	.site-branding, .navigation-top { display: none; }

	.home-left { display: flex; flex-wrap: wrap; float: left; width: 100% !important; }
	.home-right { float: right !important; width: 100% !important; }

	body, button, input, select, textarea { font-size: 1rem !important; }
	h1 { font-size: 1.875rem; }
	h2, .home.blog .entry-title { font-size: 1.625rem; }
	h3 { font-size: 1.375rem; }
	h4 { font-size: 1.125rem; }
	h5 { font-size: .8125rem; }
	h6 { font-size: 1rem; }
}

/* 20.2 Tablets (480–768 px) --------------------------------- */

@media screen and (min-width: 30em) {

	.site-branding, .navigation-top { display: none; }

	.home-left { width: 100% !important; }
	.home-right { width: 100% !important; }

	body, button, input, select, textarea { font-size: 1.125rem; }
	h1 { font-size: 1.875rem; }

	h2.category-title {
		font-size: 70px !important;
		line-height: 35px !important;
		letter-spacing: -3px;
	}

	h2.category-title span.category-title-bold { font-size: 70px !important; }

	h2, .home.blog .entry-title { font-size: 40px; line-height: 40px; margin-bottom: 0; }
	h3 { font-size: 1.375rem; }
	h4 { font-size: 1.125rem; }
	h5 { font-size: .8125rem; }
	h6 { font-size: 1rem; }

	img.alignleft { float: left; margin-right: 1.5em; }
	img.alignright { float: right; margin-left: 1.5em; }

	.site-branding {
		padding: 2em 0;
		background-repeat: no-repeat;
		background-size: cover;
	}

	.panel-content .wrap { padding-bottom: 2em; padding-top: 3.5em; }
	.taxonomy-description { font-size: .875rem; }
	.page-numbers.current { font-size: 1rem; }
	.site-footer { font-size: 1rem; }

	.gallery-item { max-width: 25%; }
	.gallery-columns-1 .gallery-item { max-width: 100%; }
	.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%; }
}

/* 20.3 Tablets XL (768–1072 px) — show full layout --------- */

@media screen and (min-width: 48em) {

	.site-branding, .navigation-top { display: block; }

	.home-left { width: 58% !important; }
	.home-right { width: 36% !important; }

	body, button, input, select, textarea { font-size: 1rem; line-height: 1.5; }

	.wrap { max-width: 1000px; padding-left: 3em; padding-right: 3em; padding-top: 50px; }

	.has-sidebar:not(.error404) #primary { float: left; width: 58%; }
	.has-sidebar #secondary { float: right; padding-top: 0; width: 36%; }

	.site-branding { margin-bottom: 0; }

	.has-header-image.twentyseventeen-front-page .site-branding,
	.has-header-video.twentyseventeen-front-page .site-branding,
	.has-header-image.home.blog .site-branding,
	.has-header-video.home.blog .site-branding {
		bottom: 0; display: block; left: 0; height: auto;
		padding-top: 0; position: absolute; width: 100%;
	}

	.has-header-image.twentyseventeen-front-page .custom-header,
	.has-header-video.twentyseventeen-front-page .custom-header,
	.has-header-image.home.blog .custom-header,
	.has-header-video.home.blog .custom-header { display: block; height: auto; }

	.custom-header-media { height: 165px; position: relative; }

	.twentyseventeen-front-page.has-header-image .custom-header-media,
	.twentyseventeen-front-page.has-header-video .custom-header-media,
	.home.blog.has-header-image .custom-header-media,
	.home.blog.has-header-video .custom-header-media { height: 0; position: relative; }

	.custom-logo-link { padding-right: 2em; }

	.custom-logo-link img,
	body.home.title-tagline-hidden.has-header-image .custom-logo-link img,
	body.home.title-tagline-hidden.has-header-video .custom-logo-link img { max-width: 350px; }

	.site-title { font-size: 2.25rem; }
	.site-description { font-size: 1rem; }

	.navigation-top {
		bottom: 0;
		font-size: .875rem;
		left: 0;
		position: absolute;
		right: 0;
		width: 100%;
		z-index: 3;
	}

	.navigation-top .wrap { max-width: 1000px; padding: 0 2em !important; }
	.navigation-top nav { margin-left: -1.25em; }

	.site-navigation-fixed.navigation-top {
		bottom: auto;
		position: fixed;
		left: 0; right: 0; top: 0;
		width: 100%; z-index: 7;
	}

	/* Override absolute nav — keep in normal flow */
	.navigation-top:not(.site-navigation-fixed) {
		position: relative !important;
		bottom: auto !important;
	}

	.js .menu-toggle, .js .dropdown-toggle { display: none; }
	.main-navigation { width: auto; }
	.js .main-navigation ul, .js .main-navigation ul ul, .js .main-navigation > div > ul { display: block; }
	.main-navigation ul { background: transparent; padding: 0; }
	.main-navigation > div > ul { border: 0; margin-bottom: 0; padding: 0; }
	.main-navigation li { border: 0; display: inline-block; }
	.main-navigation li li { display: block; }
	.main-navigation a { padding: 0.75em 0.75em; }
	.main-navigation ul ul { background: #fff; border: 1px solid #bbb; left: -999em; padding: 0; position: absolute; top: 100%; z-index: 99999; }
	.main-navigation ul ul a { padding: .75em 1.25em; width: 16em; }
	.main-navigation li li:hover, .main-navigation li li.focus { background: #767676; }
	.main-navigation li li.focus > a, .main-navigation li li:focus > a,
	.main-navigation li li:hover > a, .main-navigation li li a:hover,
	.main-navigation li li a:focus { color: #fff; }
	.main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul { left: .5em; right: auto; }

	.main-navigation .menu-item-has-children > a > .icon,
	.main-navigation .page_item_has_children > a > .icon { display: inline; left: 5px; position: relative; top: -1px; }

	.site-header .menu-scroll-down { display: block; padding: 1em; position: absolute; right: 0; }
	.site-header .menu-scroll-down { color: #fff; top: 2em; }

	.has-header-image.twentyseventeen-front-page .site-branding,
	.has-header-video.twentyseventeen-front-page .site-branding,
	.has-header-image.home.blog .site-branding,
	.has-header-video.home.blog .site-branding { margin-bottom: 70px; }

	.site-content { padding: 0 !important; }



	.comments-pagination, .post-navigation { clear: both; }
	.post-navigation .nav-previous { float: left; width: 50%; }
	.post-navigation .nav-next { float: right; text-align: right; width: 50%; }

	.blog .site-main > article,
	.archive .site-main > article,
	.search .site-main > article {
		padding-bottom: 10px;
		border-bottom: 5px var(--shadow-red) solid;
		margin-bottom: 30px;
	}

	.navigation.pagination { clear: both; float: right; width: 58%; }

	.entry-footer { display: table; width: 100%; }
	.entry-footer .cat-tags-links { display: table-cell; vertical-align: middle; width: 100%; }
	.entry-footer .edit-link { display: table-cell; text-align: right; vertical-align: middle; }

	.page.page-one-column .entry-header { margin-bottom: 4em; }
	.page:not(.home) #content { padding-bottom: 3.25em; }
	.error404 .page-content { padding-bottom: 9em; }

	#comments { padding-top: 5em; }
	.comments-title { margin-bottom: 2.5em; }

	.nav-links .nav-previous .nav-title .nav-title-icon-wrapper { left: -2em; }
	.nav-links .nav-next .nav-title .nav-title-icon-wrapper { right: -2em; }

	#secondary { font-size: .875rem; line-height: 1.6; }

	h2.widget-title { font-size: .6875rem; margin-bottom: 2em; }

	.site-footer { font-size: .875rem; line-height: 1.6; margin-top: 3em; }
	.site-footer .widget-column.footer-widget-1 { float: left; width: 36% !important; }
	.site-footer .widget-column.footer-widget-2 { float: right; width: 58% !important; }

	.social-navigation { clear: left; float: left; margin-bottom: 0; width: 36%; }
	.site-info { float: left; padding: .7em 0 0; width: 58%; }

	.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%; }
}

/* 20.4 XXL (1072–1264 px) ----------------------------------- */

@media screen and (min-width: 67em) {
	.navigation-top .wrap { padding: .75em 2em; }
	.navigation-top nav { margin-left: 0; }
}

/* ============================================================
   21. PLUGINS
   ============================================================ */

/* Social Pug share buttons */
:root { --global-size: 36px; --global-color: #333; }

#dpsp-content-bottom { border-top: 1px #222 solid; padding-top: 20px; margin-top: 2em !important; }

.dpsp-networks-btns-wrapper .dpsp-network-btn {
	height: var(--global-size);
	min-width: var(--global-size);
	max-height: var(--global-size);
	font-family: Arial, sans-serif;
	font-weight: bold;
	font-size: 14px;
	line-height: 36px;
	vertical-align: middle;
	padding: 0 10px 0 48px;
	border: 4px solid;
}

/* ============================================================
   22. PRINT
   ============================================================ */

@media print {
	form, button, input, select, textarea,
	.navigation-top, .social-navigation, #secondary,
	.content-bottom-widgets, .header-image,
	.page-links, .edit-link, .post-navigation,
	.pagination.navigation, .comments-pagination,
	.comment-respond, .comment-edit-link,
	.comment-reply-link, .comment-metadata .edit-link,
	.pingback .edit-link, .site-footer aside.widget-area,
	.site-info { display: none !important; }

	.entry-footer, #comments, .site-footer,
	.single-featured-image-header { border: 0; }

	body { font-size: 12pt; }
	h1 { font-size: 24pt; }
	h2 { font-size: 22pt; }
	h3 { font-size: 17pt; }
	h4 { font-size: 12pt; }
	h5 { font-size: 11pt; }
	h6 { font-size: 12pt; }

	.wrap { padding-left: 5% !important; padding-right: 5% !important; max-width: none; }
	.site-header { background: transparent; padding: 0; }
	.site-branding { margin-top: 0; margin-bottom: 1.75em !important; }
	.site-title { font-size: 25pt; }
	.single-featured-image-header { display: none; }
	.entry-meta { font-size: 9pt; }

	body, .site { background: none !important; }
	body, a, .site-title a { color: #222 !important; }
	h2, h5, blockquote, .site-description, .entry-meta, .entry-meta a { color: #777 !important; }
}

/* ============================================================
   TCERT — Site-specific overrides
   ============================================================ */

/* ---- Header: Buddha Eyes at 50% size, full image visible ---- */
.site-branding {
	background-color: #1e1e1e !important;
	background-image: url('/wp-content/uploads/buddha_eyes_white.png') !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: 30% auto !important;
	padding: 0 !important;
	min-height: 0 !important;
	/* Height = 50% width × (501/2000) aspect ratio */
	padding-top: calc(100% * 501 / 6667) !important;
	box-sizing: border-box;
	position: relative;
}

.site-branding .wrap {
	position: absolute !important;
	top: 50% !important;
	left: 0 !important;
	right: 0 !important;
	transform: translateY(-50%) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.site-branding .site-title a {
	text-shadow: 2px 2px 8px rgba(0,0,0,0.95), 0 0 20px rgba(0,0,0,0.8) !important;
}

.site-branding .site-description {
	text-shadow: 1px 1px 4px rgba(0,0,0,0.9) !important;
}

.site-branding .wrap {
	padding-top: 0.8em !important;
	padding-bottom: 0.8em !important;
}

/* TCERT title — Alfa Slab One, left-aligned */
.site-title {
	font-family: 'Alfa Slab One', cursive !important;
	font-size: 2rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.04em !important;
	text-transform: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	text-align: left !important;
}

.site-title a,
body.has-header-image .site-title a,
body.has-header-video .site-title a {
	color: #fff !important;
}

.site-title a:hover { color: #ddd !important; }

.site-description {
	color: #bbb !important;
	font-size: 0.8rem !important;
	font-style: italic;
	margin-top: 0.3em;
	text-align: left;
}

/* Navigation bar */
.navigation-top {
	background: #111 !important;
	font-size: 0.75rem !important;
	position: relative !important;
	bottom: auto !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
}

/* ---- Right sidebar: search box at top ---- */
.home-right .widget_search {
	padding: 0 0 1.5em 0;
}

.home-right .widget_search .search-form {
	display: flex;
}

.home-right .widget_search input[type="search"] {
	flex: 1;
	background: #f5f5f5;
	border: 1px solid #ddd;
	border-right: 0;
	border-radius: 2px 0 0 2px;
	padding: 8px 12px;
	font-size: 14px;
	color: #333;
}

.home-right .widget_search input[type="search"]:focus {
	outline: none;
	border-color: #900;
	background: #fff;
}

.home-right .widget_search .search-submit {
	background: #222 !important;
	color: #fff !important;
	border: 0;
	border-radius: 0 2px 2px 0;
	padding: 8px 14px;
	cursor: pointer;
	transition: background 0.2s;
}

.home-right .widget_search .search-submit:hover { background: #900 !important; }

/* ---- Category widget titles: exact color match ---- */
.cat-widget-title {
	font-family: "Open Sans", sans-serif !important;
	font-size: 2em !important;
	font-weight: 300 !important;
	color: #900 !important;
	margin: 0 0 0.5em 0 !important;
	padding: 0 0 0.3em 0.3em !important;
	border-bottom: 1px solid #333;
	border-left: 8px solid #900;
	line-height: 1.2;
	text-transform: none !important;
}

/* Grey prefix: Open Sans 800 (heavy) | Red text: Open Sans 300 (light/slim) */
.cat-widget-title-bold {
	color: #aaa !important;
	font-weight: 800;
}

/* ---- Category post items in sidebar — matches jamyang float layout ---- */
.cat-post-item {
	display: block !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 6px 0 !important;
	border-top: 1px solid #ddd !important;
	border-bottom: 1px solid #ddd !important;
	overflow: hidden;
}

.cat-post-item + .cat-post-item {
	border-top: 0 !important;
}

.cat-post-thumbnail {
	float: left !important;
	margin: 2px 10px 5px 0 !important;
}

.cat-post-thumbnail img {
	width: 60px !important;
	height: 60px !important;
	object-fit: cover;
	display: block;
	padding-bottom: 0 !important;
}

.cat-post-title {
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-transform: uppercase;
	margin: 0 0 2px 0 !important;
	padding: 0 !important;
}

.cat-post-date {
	font-size: 13px !important;
	line-height: 18px !important;
	font-style: italic;
	color: #555 !important;
	margin: 0 !important;
}

.cat-post-footer-link {
	font-size: 22px;
	color: #900;
	text-align: right;
	padding: 4px 0 0 0;
	float: right;
}

.cat-post-footer-link a { color: #900 !important; }
.cat-post-footer-link a:hover { color: #600 !important; }

/* ---- Home-left posts: match original ---- */
.home-left .shadow-recent-body h3 {
	font-size: 1.4rem !important;
	line-height: 1.15 !important;
	margin: 0 0 0.2em 0 !important;
	padding: 0 !important;
	color: #222;
}

.home-left .shadow-recent-body h3:hover { color: #900; }

.home-left .entry-date.published {
	color: #767676;
	font-size: 0.8rem;
	font-style: italic;
	margin-bottom: 0.4em;
}

.home-left .shadow-recent-image img {
	width: 150px !important;
	height: 150px !important;
	object-fit: cover;
	padding-bottom: 0 !important;
}

/* ---- Top story featured post ---- */
.top-story h1 {
	font-family: 'Alfa Slab One', cursive !important;
	color: #111 !important;
	text-transform: uppercase;
}

.top-story h1:hover { color: #900 !important; }

/* ---- Two-column layout on desktop ---- */
@media screen and (min-width: 48em) {
	.home-left  { width: 58% !important; }
	.home-right { width: 36% !important; }

	.home-right .widget { padding-bottom: 1.5em; }
}

/* ---- Footer: black + light text ---- */
.site-footer { background: #000 !important; }

.site-footer .widget-column.footer-widget-1 .widget_nav_menu ul { list-style: none; margin: 0; padding: 0; }
.site-footer .widget-column.footer-widget-1 .widget_nav_menu ul li { border: 0; padding: 3px 0; }
.site-footer .widget-column.footer-widget-1 .widget_nav_menu ul li a { color: #ccc !important; font-size: 13px; }
.site-footer .widget-column.footer-widget-1 .widget_nav_menu ul li a:hover { color: #fff !important; }
.site-footer .widget-column.footer-widget-1 .widget-title { color: #ccc; font-size: 13px; text-transform: uppercase; }

.site-footer .widget_search input[type="search"] {
	background: #1a1a1a;
	border: 1px solid #444;
	color: #ccc;
	width: 100%;
	padding: 7px 10px;
	border-radius: 2px;
}

.site-footer .widget_search .search-submit {
	background: #900 !important;
	color: #fff !important;
	margin-top: 5px;
}

.site-info { color: #666; }
.site-info a { color: #888 !important; }

/* ============================================================
   HEADER HEIGHT FIX — prevent full-viewport expansion
   ============================================================ */

/* Never let the custom-header grow to full viewport */
.custom-header {
	height: auto !important;
	display: block !important;
}

/* Hide the media container entirely (no header image/video used) */
.custom-header-media {
	display: none !important;
	height: 0 !important;
}

/* Keep branding visible and compact */
.has-header-image .site-branding,
.has-header-video .site-branding,
.twentyseventeen-front-page .site-branding,
.home .site-branding {
	display: block !important;
	position: relative !important;
	height: auto !important;
	margin-bottom: 0 !important;
	vertical-align: baseline !important;
}

/* Override the 75vh / 100vh rules from Twenty Seventeen */
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header,
.twentyseventeen-front-page .custom-header {
	display: block !important;
	height: auto !important;
}

.twentyseventeen-front-page.has-header-image .custom-header-media,
.twentyseventeen-front-page.has-header-video .custom-header-media,
.home.blog.has-header-image .custom-header-media,
.home.blog.has-header-video .custom-header-media {
	display: none !important;
	height: 0 !important;
}



/* Remove the bottom margin that Twenty Seventeen adds when header image is present */
.has-header-image.twentyseventeen-front-page .site-branding,
.has-header-video.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding,
.has-header-video.home.blog .site-branding {
	margin-bottom: 0 !important;
}

/* Hide search from home/front-page sidebar only */
.home .home-right .widget_search,
.twentyseventeen-front-page .home-right .widget_search {
	display: none !important;
}

/* Remove cat-post-footer arrow links — not in original inspiration */
.cat-post-footer-link { display: none !important; }

/* ---- Post navigation vertical alignment fix ---- */
.post-navigation .nav-links {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.post-navigation .nav-previous { flex: 0 0 48%; }
.post-navigation .nav-next     { flex: 0 0 48%; text-align: right; margin-top: 0 !important; }

/* ---- Math captcha — comment form ---- */
.tcert-math-wrap {
	margin: 1em 0;
	clear: both;
}

.tcert-math-wrap label {
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	color: #333;
	margin-bottom: 0.4em;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.tcert-math-wrap .required {
	color: #900;
	margin-left: 2px;
}

.tcert-math-input {
	width: 120px !important;
	padding: 0.6em 0.8em;
	font-size: 1rem;
	border: 1px solid #bbb;
	border-radius: 3px;
	background: #fff;
}

.tcert-math-input:focus {
	border-color: #900;
	outline: none;
	box-shadow: 0 0 0 2px rgba(153,0,0,0.15);
}
