/* ----------------------------------------------------------------
	Canvas: Writer
-----------------------------------------------------------------*/

:root {
	--cnvs-themecolor: #FFC013;
	--cnvs-themecolor-rgb: 255, 192, 19;

	--cnvs-body-font: 'Lato', sans-serif;
	--cnvs-primary-font: 'Lora', serif;
	--cnvs-secondary-font: 'Cookie', cursive;

	--cnvs-header-height: 70px;
}

#header {
	--cnvs-primary-menu-font-weight: 500;
	--cnvs-primary-menu-font-size:	1rem;
	--cnvs-primary-menu-tt:	none;
	--cnvs-primary-menu-ls:	0;
	--cnvs-primary-menu-submenu-font-size:	0.875rem;
	--cnvs-primary-menu-submenu-font-weight:	400;
	--cnvs-primary-menu-submenu-hover-font-weight: 500;
	--cnvs-primary-menu-submenu-tt:	none;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title > .menu-link {
	font-size: calc(var(--cnvs-primary-menu-submenu-font-size) * 0.9);
}

#header.transparent-header:not(.sticky-header) #header-wrap { border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.menu-container > .menu-item > .menu-link {
	padding-left: 20px;
	padding-right: 20px;
	font-weight: 400 !important;
	text-transform: capitalize;
	letter-spacing: 1px;
}

#header.sticky-header.semi-transparent #header-wrap {
	background-color: rgba(30, 35, 42, 0.85) !important;
	border-bottom: 1px solid #444 !important;
}

#slider .emphasis-title h1 { font-size: 48px; }

.hero-action-link {
	margin-left: 25px;
	color: #DDD;
	font-size: 18px;
	font-weight: 300;
}

.hero-action-link i {
	margin-right: 3px;
	position: relative;
	top: 2px;
}

.hero-action-link:hover { border-bottom: 2px solid #DDD; }


.widget.widget_links.app_landing_widget_link li a {
	color: #AAA;
	font-size: 15px;
}

.widget.widget_links.app_landing_widget_link li a:hover { color: #666; }

.slider-book-img {
	display: inline-block;
	width: 100px;
	margin-bottom: 25px;
	margin-left: 10px;
}

.slider-book-img:first-child { margin-left: 0; }

.move-bg {
	width: auto;
	height: 100%;
	background-size: cover;
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-backface-visibility: hidden;
}

.dropcap {
	padding: 15px 20px 0 0;
	font-size: 54px;
}

/* book-wraps */
.book-image {
	display: block;
	position: relative;
}

.book-image img {
	width: 100%;
	max-width: 100%;
	display: block;
}

.book-image::after {
	content: " ";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.3));
	transition: opacity .3s ease;
	opacity: 0;
}

.book-card {
	position: relative;
	will-change: transform;
	transition: box-shadow .3s ease;
	box-shadow: 0 10px 40px transparent;
}

.book-card.hover-in {
	transition: -webkit-transform .2s ease-out;
	transition: transform .2s ease-out;
	transition: transform .2s ease-out, -webkit-transform .2s ease-out;
}

.book-card.hover-out {
	transition: -webkit-transform .2s ease-in;
	transition: transform .2s ease-in;
	transition: transform .2s ease-in, -webkit-transform .2s ease-in;
}

.book-wrap:hover .book-card { box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4); }

.book-wrap:hover .book-image::after { opacity: 1; }

.book-wrap:hover .book-title,
.book-wrap:hover .book-category,
/* .book-wrap:hover .book-border, */
.book-wrap:hover .button {
	-webkit-transform: translateY(0) scale(1);
	-ms-transform: translateY(0) scale(1);
	transform: translateY(0) scale(1);
	opacity: 1;
}

.book-wrap { -moz-transform-style: flat !important; }

.book-detail {
	position: absolute;
	left: 40px;
	right: 40px;
	top: 40px;
	bottom: 40px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	pointer-events: none;
	-webkit-transform: translateZ(40px);
	transform: translateZ(40px);
}

.book-title {
	margin: 0 0 10px;
	font-size: 24px;
	font-weight: 700;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	transition: .4s ease;
	opacity: 0;
	-webkit-transform: translateY(40px) scale(0);
	-ms-transform: translateY(40px) scale(0);
	transform: translateY(40px) scale(0);
	will-change: transform;
}

.book-title a { color: white; }

.book-category {
	opacity: 0;
	margin: 0 0 18px;
	font-family: var(--cnvs-body-font);
	transition: .4s ease;
	transition-delay: .1s;
	-webkit-transform: translateY(40px) scale(0);
	-ms-transform: translateY(40px) scale(0);
	transform: translateY(40px) scale(0);
	will-change: transform;
}

.book-category a {
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.3em;
}

.book-wrap .button {
	opacity: 0;
	margin: 0 auto;
	transition: .4s ease !important;
	transition-delay: .15s !important;
	-webkit-transform: translateY(40px) scale(0);
	-ms-transform: translateY(40px) scale(0);
	transform: translateY(40px) scale(0);
	will-change: transform;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* testimonial */
.testimonial-full.writer-feedback { overflow: visible; }

.testimonial-full.writer-feedback .testi-content { -webkit-backface-visibility: hidden; }

.testimonial-full.writer-feedback .flex-control-nav li {
	margin: 0 3px;
	width: 12px;
	height: 12px;
}

.testimonial-full.writer-feedback .flex-control-nav li a {
	width: 12px !important;
	height: 12px !important;
	-webkit-transform: scale(0.7);
	-ms-transform: scale(0.7);
	-o-transform: scale(0.7);
	transform: scale(0.7);
}

.section:not(.dark) .testimonial-full.writer-feedback .flex-control-nav li a { background-color: #1E232A !important; }

.testimonial-full.writer-feedback .flex-control-nav li a.flex-active {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}


.portfolio-single-image h2 {
	font-size: 44px;
	font-weight: 700;
	letter-spacing: 2px;
}

.book-page-single-desc { padding-left: 15px; }

.book-page-single-desc h3 {
	font-size: 36px;
	font-weight: 400;
}

.book-price {
	display: block;
	margin-bottom: 25px;
	font-size: 34px;
}

.book-page-single-desc p { font-size: 17px; }

.entry-meta li {
	font-family: var(--cnvs-primary-font) !important;
}

.dark .entry-meta li,
.dark .entry-meta li a,
.dark .entry-meta li i { color: #DDD; }


@media (min-width: 992px) {

	.sub-menu-container:not(.mega-menu-column) {
		width: 260px;
		padding: 16px;
		border-radius: 0 0 3px 3px;
		left: -20px;
	}

	.sub-menu-container .menu-item > .menu-link {
		font-size: 15px;
		font-weight: 400;
		text-transform: capitalize;
		padding: 12px 16px;
		letter-spacing: 0;
	}

	.sub-menu-container .menu-item:hover > .menu-link { padding-left: 25px; }


	.writer-feedback .flexslider::before,
	.writer-feedback .flexslider::after {
		content: '';
		background-image: url('writer/images/others/testi-1.png');
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 100% auto;
		position: absolute;
		width: 120px;
		height: 179px;
		top: 50%;
		margin-top: -90px;
		left: 12%;
		opacity: .4;
	}

	.writer-feedback .flexslider::after {
		background-image: url('writer/images/others/testi-2.png');
		left: auto;
		right: 12%;
	}

	.dark .writer-feedback .flexslider::before { background-image: url('writer/images/others/testi-1-dark.png'); opacity: .7; }
	.dark .writer-feedback .flexslider::after { background-image: url('writer/images/others/testi-2-dark.png'); opacity: .7; }

	.book-title { font-size: 36px;  }

}

.dark .entry::after { background-color: rgba(255,255,255,0.2); }

.dark .form-control:not(.not-dark),
.dark .sm-form-control:not(.not-dark),
.dark .form-control:not(.not-dark):active,
.dark .form-control:not(.not-dark):focus,
.dark .sm-form-control:not(.not-dark):active,
.dark .sm-form-control:not(.not-dark):focus {
	color: #999;
    background-color: rgba(255,255,255,.9) !important;
    border: 1px solid rgba(255,255,255,1) !important;
}


/* ----------------------------------------------------------------
	ADDITIVE: shared one-page base layer.

	The design's pages load a shared base stylesheet BEFORE the sheet
	above, and thirteen of its rules materially style the Writer pages
	(button-border sizing/colour, the transparent header border reset,
	the footer widget-title scale, the related-post title scale and the
	sub-992px header treatment). Ported verbatim, minus every declaration
	the sheet above already re-declares, so nothing here can override it.
-----------------------------------------------------------------*/

#header {
	--cnvs-sticky-header-height: 70px;
	--cnvs-header-transparent-border-color: rgba(var(--cnvs-contrast-rgb), .05);
}

.is-expanded-menu #header.transparent-header:not(.border-full-header):not(.sticky-header) #header-wrap { border-bottom: transparent; }

.is-expanded-menu .menu-link { --cnvs-primary-menu-padding-x: 22px; }

.button.button-border {
	font-weight: 400;
	letter-spacing: 2px;
	font-size: 13px;
}

.button.button-border.button-large { font-size: 15px; }

.button.button-border.button-light {
	border-color: #F9F9F9;
	color: #F9F9F9;
}

.posts-md .entry-title h3 {
	font-size: 1.375rem;
	letter-spacing: 0;
}

.more-link {
	font-weight: 400;
	text-decoration-thickness: 1px;
	font-style: normal;
}

#footer .widget {
	padding: 30px 0;
	--cnvs-widget-title-margin: 50px;
	--cnvs-widget-title-font-size: 20px;
	--cnvs-widget-title-font-weight: 300;
	--cnvs-widget-title-letter-spacing: 3px;
	--cnvs-widget-title-text-transform: uppercase;
}

@media (max-width: 991px) {

	#header.transparent-header:not(.sticky-header) #header-wrap {
		background-color: #FFF;
		border-bottom: 1px solid #EEE;
	}

	#header.transparent-header.dark:not(.sticky-header) #header-wrap {
		background-color: #333;
		border-bottom-color: rgba(255,255,255,0.1) !important;
	}

	.dark #header.transparent-header #header-wrap,
	.dark #header.semi-transparent #header-wrap,
	#header.dark.transparent-header #header-wrap,
	#header.dark.semi-transparent #header-wrap {
		background-color: #333;
		border-bottom-color: rgba(255,255,255,0.1);
	}

}


/* ----------------------------------------------------------------
	ADDITIVE SECTION (not part of the 1:1 port above)

	Everything below adapts the design to WordPress surfaces the static
	pages do not have: the shared page/single/archive templates, the
	core block widgets in the sidebar, and the comment thread.
-----------------------------------------------------------------*/

/* ── Page shell ──────────────────────────────────────────────────
	The shared page template's .content-wrap carries the theme's default
	5rem padding and no background; each page reproduces the padding
	utilities its own design uses through a page marker class. */

.writer #content > .content-wrap { background-color: #1E232A; }

.writer #content > .content-wrap:has(> .writer-home) { padding-bottom: 0; }
.writer #content > .content-wrap:has(> .writer-about) { padding: 0; }
.writer #content > .content-wrap:has(> .writer-testimonials) { padding: 0; }
.writer #content > .content-wrap:has(> .writer-articles) { padding: 0; }
.writer #content > .content-wrap:has(> .writer-contact) { padding-bottom: .5rem; }
.writer #content > .content-wrap:has(> .writer-login) { padding: 0; }

.writer #content > .content-wrap:has(> .writer-about) { min-height: 0; }

/* ── Articles page: the journal feed grid ────────────────────────*/

.writer-articles .canvas-posts-widget .entry-title h3,
.writer-articles .canvas-posts-widget .entry-title h4 {
	font-family: var(--cnvs-primary-font);
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
}

.writer-articles .canvas-posts-widget .entry-title a { color: #FFF; }
.writer-articles .canvas-posts-widget .entry-title a:hover { color: var(--cnvs-themecolor); }
.writer-articles .canvas-posts-widget .entry-image img { border-radius: 3px; }
.writer-articles .canvas-posts-widget .entry-content,
.writer-articles .canvas-posts-widget .entry-meta li { color: #AAA; }

/* ── Blog single + archive: the demo's dark reading surface ──────*/

.writer-post #content > .content-wrap,
.writer-archive #content > .content-wrap {
	background-color: #1E232A;
	padding-top: 3rem;
}

.writer-post .entry-content,
.writer-post .entry-content p,
.writer-archive .entry-content,
.writer-archive .entry-content p { color: #BBB; }

.writer-post .entry-content h1,
.writer-post .entry-content h2,
.writer-post .entry-content h3,
.writer-post .entry-content h4,
.writer-archive .entry-title h2,
.writer-archive .entry-title h3 {
	color: #FFF;
	font-family: var(--cnvs-primary-font);
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
}

.writer-post .entry-content a,
.writer-archive .entry-content a { color: var(--cnvs-themecolor); }

.writer-post .entry::after,
.writer-archive .entry::after { background-color: rgba(255, 255, 255, 0.1); }

.writer-post .entry-content blockquote {
	border-left-color: var(--cnvs-themecolor);
	background-color: rgba(255, 255, 255, 0.03);
	border-radius: 0 3px 3px 0;
}

.writer-post .entry-content blockquote p {
	font-family: var(--cnvs-primary-font);
	font-style: italic;
	font-size: 1.125rem;
	line-height: 1.7;
	color: #DDD;
}

.writer-post .entry-content pre {
	background-color: rgba(0, 0, 0, .35);
	color: #CCC;
	border: 0;
}

.writer-post .tagcloud a,
.writer-archive .tagcloud a {
	color: #DDD;
	border-color: rgba(255, 255, 255, .2);
	background-color: rgba(255, 255, 255, .04);
}

.writer-post .tagcloud a:hover,
.writer-archive .tagcloud a:hover {
	color: #1E232A;
	background-color: var(--cnvs-themecolor);
	border-color: var(--cnvs-themecolor);
}

.writer-post .card,
.writer-archive .card {
	background-color: rgba(255, 255, 255, .03);
	border-color: rgba(255, 255, 255, .12);
}

.writer-post .card p,
.writer-post .card .text-dark,
.writer-post .card a.text-dark { color: #DDD !important; }

.writer-post .card h5 a { color: #FFF; }
.writer-post .card h5 a:hover,
.writer-post .card .more-link { color: var(--cnvs-themecolor); }

.writer-post .post-navigation a,
.writer-post .single-post + * a.uil,
.writer-post .postcontent .entry-title a,
.writer-post .posts-md .entry-title h3 a { color: #DDD; }

.writer-post .post-navigation a:hover,
.writer-post .postcontent .entry-title a:hover,
.writer-post .posts-md .entry-title h3 a:hover { color: var(--cnvs-themecolor); }

.writer-post .posts-md .entry-content,
.writer-post .posts-md .entry-meta li,
.writer-post .posts-md .entry-meta li a { color: #999; }

.writer-post .postcontent > h4,
.writer-post .single-post ~ h4 { color: #FFF; }

.writer-post .line,
.writer-post .divider { border-color: rgba(255, 255, 255, .12); }

/* ── Comment thread ──────────────────────────────────────────────*/

.writer-post .comments-area h3,
.writer-post .comment-reply-title,
.writer-post #comments-title { color: #FFF; }

.writer-post .commentlist .comment-content,
.writer-post .comment-content p,
.writer-post .comment-notes,
.writer-post .comment-form-cookies-consent label { color: #BBB; }

.writer-post .comment-wrap { border-color: rgba(255, 255, 255, .12); }
.writer-post .comment-meta a,
.writer-post .comment-author a { color: #FFF; }
.writer-post .comment-reply-link { color: var(--cnvs-themecolor); }

.writer-post .comment-form label { color: #DDD; }

/* ── Sidebar: the shared single template ships CORE block widgets,
	which the theme's classic-widget CSS does not cover ────────────*/

.writer-post .sidebar .widget-title,
.writer-archive .sidebar .widget-title {
	color: #FFF;
	font-family: var(--cnvs-primary-font);
	font-weight: 400;
	font-size: 1.125rem;
	text-transform: none;
	letter-spacing: 0;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.writer-post .sidebar .widget-title::after,
.writer-archive .sidebar .widget-title::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 40px;
	height: 2px;
	background-color: var(--cnvs-themecolor);
}

.writer-post .sidebar .wp-block-latest-posts__list,
.writer-post .sidebar .wp-block-categories,
.writer-archive .sidebar .wp-block-latest-posts__list,
.writer-archive .sidebar .wp-block-categories {
	list-style: none;
	margin: 0;
	padding: 0;
}

.writer-post .sidebar .wp-block-latest-posts__list > li,
.writer-post .sidebar .wp-block-categories > li,
.writer-archive .sidebar .wp-block-latest-posts__list > li,
.writer-archive .sidebar .wp-block-categories > li {
	padding: 10px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.writer-post .sidebar .wp-block-latest-posts__list > li:last-child,
.writer-post .sidebar .wp-block-categories > li:last-child,
.writer-archive .sidebar .wp-block-latest-posts__list > li:last-child,
.writer-archive .sidebar .wp-block-categories > li:last-child { border-bottom: 0; }

.writer-post .sidebar .wp-block-latest-posts__post-title,
.writer-post .sidebar .wp-block-categories a,
.writer-archive .sidebar .wp-block-latest-posts__post-title,
.writer-archive .sidebar .wp-block-categories a {
	display: block;
	color: #DDD;
	font-family: var(--cnvs-primary-font);
	font-size: .9375rem;
	line-height: 1.5;
}

.writer-post .sidebar .wp-block-latest-posts__post-title:hover,
.writer-post .sidebar .wp-block-categories a:hover,
.writer-archive .sidebar .wp-block-latest-posts__post-title:hover,
.writer-archive .sidebar .wp-block-categories a:hover { color: var(--cnvs-themecolor); }

.writer-post .sidebar .wp-block-latest-posts__post-date,
.writer-archive .sidebar .wp-block-latest-posts__post-date {
	display: block;
	margin-top: 3px;
	color: #777;
	font-size: .8125rem;
}

.writer-post .sidebar .wp-block-categories li,
.writer-archive .sidebar .wp-block-categories li { color: #777; }

.writer-post .sidebar .tag-cloud-link,
.writer-archive .sidebar .tag-cloud-link {
	display: inline-block;
	margin: 0 4px 6px 0;
	padding: 4px 10px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 3px;
	background-color: rgba(255, 255, 255, .04);
	color: #DDD;
	font-family: var(--cnvs-body-font);
	font-size: .75rem !important;
	line-height: 1.4;
	text-transform: capitalize;
}

.writer-post .sidebar .tag-cloud-link:hover,
.writer-archive .sidebar .tag-cloud-link:hover {
	background-color: var(--cnvs-themecolor);
	border-color: var(--cnvs-themecolor);
	color: #1E232A;
}

/* ── Archive title band + entry list ─────────────────────────────*/

.writer-archive .page-title {
	background-color: rgba(0, 0, 0, .25);
	border-bottom: 0;
}

.writer-archive .page-title h1,
.writer-archive .page-title h2 {
	color: #FFF;
	font-family: var(--cnvs-primary-font);
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
}

.writer-archive .page-title .breadcrumb,
.writer-archive .page-title .breadcrumb a,
.writer-archive .entry-meta li,
.writer-archive .entry-meta li a { color: #AAA; }

.writer-archive .entry-title h2 a,
.writer-archive .entry-title h3 a { color: #FFF; }
.writer-archive .entry-title h2 a:hover,
.writer-archive .entry-title h3 a:hover { color: var(--cnvs-themecolor); }
.writer-archive .entry-image img { border-radius: 3px; }
.writer-archive .more-link { color: var(--cnvs-themecolor); }

/* ── Canvas form labels + fields: the design's forms are plain framework
	labels (1rem / 400) on the dark surface ────────────────────────*/

.writer .cnvs-form-field .cnvs-field-label {
	--cnvs-form-label-font-size: 1rem;
	--cnvs-form-label-font-weight: 500;
	line-height: 1.5;
	display: inline-block;
	color: #E9ECEF;
}

/* The message field is a six-row textarea in the design. */
.writer .cnvs-form-field textarea.cnvs-field-input { min-height: 158px; }

/* ── Login card: the real login form keeps the lost-password link and
	the submit button in one row; the design stacks them ───────────*/

.writer #login-form .d-flex.justify-content-between {
	flex-direction: column-reverse;
	align-items: stretch;
}

.writer #login-form .d-flex.justify-content-between > a {
	margin-bottom: 1rem;
	font-weight: 300;
	text-align: right;
}

.writer .cnvs-form-field .cnvs-field-required { color: inherit; }

/* ── Blog single: the design puts the article title + meta in the
	page banner, so the repeat inside the article is suppressed, and
	the WordPress-native article furniture takes the demo colours ──*/

.writer-post .single-post > .entry > .entry-title,
.writer-post .single-post > .entry > .entry-meta { display: none; }

.writer-post .postcontent h4,
.writer-post .postcontent h5,
.writer-post .postcontent h6 { color: #FFF; }

.writer-post .postcontent .text-muted,
.writer-post .postcontent .fst-italic.text-muted { color: #888 !important; }

.writer-post .postcontent .row.justify-content-between a,
.writer-post .postcontent .row.justify-content-between span { color: #DDD; }

.writer-post .postcontent .row.justify-content-between a:hover { color: var(--cnvs-themecolor); }

.writer-post .comment-author,
.writer-post .comment-author a,
.writer-post .comment-meta,
.writer-post .comment-meta a { color: #DDD; }

.writer-post .comment-meta,
.writer-post .comment-meta a { color: #888; }

.writer-post .font-sizer .btn { color: #DDD; border-color: rgba(255, 255, 255, .2); }
.writer-post .font-sizer .btn:hover { color: #1E232A; background-color: var(--cnvs-themecolor); border-color: var(--cnvs-themecolor); }
