/* Theme 016 */

@import url('https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,600;0,700;1,400&family=Source+Sans+3:wght@400;600;700&display=swap');

body {
	--cs-heading-font: "Spectral", Georgia, serif;
	--cs-body-font: "Source Sans 3", system-ui, sans-serif;
}

/* --- TDM (single post) --- */
body.single-post .ruby-table-contents .toc-header {
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--accent-color-1, var(--g-color));
}
body.single-post .ruby-table-contents .toc-header span {
	font-size: 22px;
	font-weight: 700;
	font-family: var(--cs-heading-font);
	text-transform: initial;
	color: var(--noir);
	font-style: italic;
}
body.single-post .ruby-table-contents .toc-header .rbi-read:before {
	content: "\270E";
	font-family: initial;
	font-size: 22px;
	color: var(--accent-color-1, var(--g-color)) !important;
	padding-right: 8px;
}
body.single-post .ruby-table-contents .inner {
	column-count: 2;
	margin-top: 0;
	padding-top: 0;
}
body.single-post .ruby-table-contents .inner a {
	position: relative;
	display: block;
	padding: 7px 4px 7px 22px;
	margin-bottom: 3px;
	color: var(--noir) !important;
	font-size: 14px;
	line-height: 17px;
	font-weight: 400;
	font-family: var(--cs-body-font);
	text-decoration: none !important;
	text-shadow: none !important;
	transition: all .2s ease;
}
.rbtoc .inner a {
    border-top:0!important;
}
body.single-post .ruby-table-contents .inner a:hover {
	color: var(--accent-color-1, var(--g-color)) !important;
	border-left: 2px solid var(--accent-color-1, var(--g-color));
	font-weight: 600;
}
.rbtoc {
    padding: 0!important;
    box-shadow:none!important;
}
body.single-post .ruby-table-contents .inner a::before {
	content: "\203A";
	position: absolute;
	left: 4px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--accent-color-1, var(--g-color));
	font-weight: 700;
	font-size: 16px;
	width: auto;
	height: auto;
	background: none;
}
body.single-post .ruby-table-contents .inner a::after {
	display: none !important;
}
body.single-post .ruby-table-contents .ruby-toc-toggle i:before {
	content: "\2B9F" !important;
	font-family: initial !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: var(--accent-color-1, var(--g-color)) !important;
}

/* --- POST (single article) --- */
body.single-post .s-feat-outer {
	width: 100%;
	margin-bottom: 28px;
}
body.single-post .s-feat img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 0;
	border: 8px solid var(--g-color);
}
body.single-post .s-cats {
	margin-bottom: 14px;
}
body.single-post .s-cats a,
body.single-post .s-cats .p-category,
body.single-post .s-cats .meta-category a {
	display: inline-block;
	color: var(--blanc) !important;
	font-size: 12px;
	font-weight: 700;
    padding:8px 16px;
    background:var(--g-color)!important;
	font-family: var(--cs-body-font);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	text-decoration: none;
}

body.single-post .ArticleHeader .elementor-widget-foxiz-single-category .elementor-widget-container {
    margin: 0!important;
}

body.single-post .single-meta,
body.single-post .single-meta a,
body.single-post .single-meta time,
body.single-post .single-meta .meta-date,
body.single-post .single-meta .meta-author,
body.single-post .single-meta .meta-author a,
body.single-post .single-meta .meta-category a,
body.single-post .single-meta .is-meta,
body.single-post .single-meta .smeta-in,
body.single-post .single-meta .smeta-extra,
body.single-post time {
	font-family: var(--cs-body-font);
}
body.single-post .s-title {
	font-size: 46px;
	line-height: 1.15;
	font-weight: 700;
	font-family: var(--cs-heading-font);
	border-left: 7px solid var(--accent-color-1, var(--g-color));
	padding-left: 18px;
	margin: 14px 0 20px;
	letter-spacing: -0.3px;
}
body.single-post .entry-content.rbct {
	border: none;
	border-left: 4px solid var(--g-color);
	border-radius: 0;
	padding: 24px 32px;
	box-shadow: none;
	background: var(--blanc);
}
body.single-post .entry-content.rbct h2,
body.single-post .entry-content.rbct h3 {
	font-weight: 700;
	font-family: var(--cs-heading-font);
	border-left: 6px solid var(--accent-color-1, var(--g-color));
	padding-left: 14px;
	margin-top: 28px;
}
.elementor-widget-sidebar .Titre1 p {
	font-weight: 700;
	font-family: var(--cs-heading-font);
	border-left: 6px solid var(--accent-color-1, var(--g-color));
	padding-left: 14px;
}
body.single-post .entry-content.rbct h2 { font-size: 29px; }
body.single-post .entry-content.rbct h3 { font-size: 23px; }
body.single-post .entry-content.rbct p,
body.single-post .entry-content.rbct ol li,
body.single-post .entry-content.rbct ul li {
	font-size: 17px;
	line-height: 1.8;
	font-family: var(--cs-body-font);
}
body.single-post .entry-content.rbct blockquote {
	border-left: 6px solid var(--accent-color-1, var(--g-color));
	background: color-mix(in srgb, var(--accent-color-1, var(--g-color)) 5%, var(--blanc));
	padding: 18px 24px;
	margin: 24px 0;
	font-style: italic;
	border-radius: 0;
	font-family: var(--cs-heading-font);
	font-size: 20px;
	line-height: 1.45;
}
body.single-post .entry-content.rbct a {
	color: var(--accent-color-1, var(--g-color));
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* --- MENU (sitewide) --- */
#site-header {
	background: var(--blanc);
	border-bottom: 1px solid color-mix(in srgb, var(--noir) 12%, transparent);
}
#site-header .logo-sec-inner {
	padding: 22px 0;
}
#site-header .main-menu > li > a {
	color: var(--noir);
	font-weight: 600;
	font-family: var(--cs-body-font);
	letter-spacing: 0.03em;
	text-transform: uppercase;
	font-size: 13px;
	border-left: 3px solid transparent;
	padding-left: 12px;
	transition: border-color .2s ease;
}
#site-header .main-menu > li:hover > a,
#site-header .main-menu > li.current-menu-item > a {
	border-left: 3px solid var(--accent-color-1, var(--g-color));
}
#site-header .navbar-wrap {
	border-top: 1px solid color-mix(in srgb, var(--noir) 8%, transparent);
	background: var(--blanc);
}
#site-header .search-btn,
#site-header .dark-mode-toggle {
	color: var(--noir);
}


.ArticleHeader .e-con-inner {
    display: flex;
    flex-direction: row-reverse;
}
.ArticleHeader .e-con-inner > .elementor-element:first-child {
    order: 2;
}

.ArticleHeader .e-con-inner > .elementor-element:last-child {
    order: 1;
}

