/*
Theme Name: Reboot Child
Theme URI: https://wpshop.ru/themes/reboot
Author: WPShop.biz
Author URI: http://wpshop.biz/
Template: reboot
Version: 1.1.0
*/

/* ========== Meadow Soft tokens ========== */
:root,
html[data-theme="light"] {
	--fp-bg: #f4f7f2;
	--fp-bg-elev: #ffffff;
	--fp-bg-soft: #e8efe4;
	--fp-ink: #1c2a1f;
	--fp-ink-muted: #5a6b5e;
	--fp-line: #d5e0d2;
	--fp-accent: #3d7a4a;
	--fp-accent-soft: #d8edd9;
	--fp-accent-ink: #ffffff;
	--fp-shadow: 0 12px 40px rgba(28, 42, 31, 0.08);
	--fp-radius: 14px;
	--fp-display: "Fraunces", Georgia, serif;
	--fp-body: "Source Sans 3", "Segoe UI", sans-serif;
}

html[data-theme="dark"] {
	--fp-bg: #121a14;
	--fp-bg-elev: #1a2420;
	--fp-bg-soft: #24302a;
	--fp-ink: #e8f0e6;
	--fp-ink-muted: #9aada0;
	--fp-line: #2e3d34;
	--fp-accent: #7ec98a;
	--fp-accent-soft: #243a2a;
	--fp-accent-ink: #102016;
	--fp-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

html {
	color-scheme: light;
}
html[data-theme="dark"] {
	color-scheme: dark;
}

body,
body.home,
body.blog,
body.archive,
body.single,
#page,
.site,
.site-content,
.site-content-inner {
	font-family: var(--fp-body) !important;
	background: var(--fp-bg) !important;
	color: var(--fp-ink) !important;
	transition: background 0.3s ease, color 0.3s ease;
}

#primary,
.content-area,
.site-main {
	background: transparent !important;
}

a {
	color: var(--fp-accent);
}
a:hover {
	color: var(--fp-ink);
}

h1, h2, h3, h4,
.entry-title,
.section-block__header,
.home-header,
.site-title,
.post-card__title {
	font-family: var(--fp-display) !important;
	letter-spacing: -0.02em;
	color: var(--fp-ink);
}

/* ========== Header ========== */
.site-header,
#site-header,
.header-block {
	background: var(--fp-bg-elev) !important;
	border-bottom: 1px solid var(--fp-line);
	box-shadow: none !important;
}

.site-branding {
	display: flex;
	align-items: center;
	gap: 12px;
}

.site-logotype img,
.site-logotype .skip-lazy {
	width: 44px !important;
	height: 44px !important;
	max-width: 44px !important;
	object-fit: contain;
	background: transparent !important;
}

html[data-theme="dark"] .site-logotype img {
	filter: brightness(0) invert(1);
}

.site-title {
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
}

.site-description {
	color: var(--fp-ink-muted) !important;
	font-size: 11px !important;
}

/* Theme toggle */
.fp-theme-toggle {
	position: fixed;
	top: 12px;
	right: 12px;
	z-index: 9999;
	display: inline-flex;
	gap: 6px;
	align-items: center;
	padding: 4px;
	border-radius: 999px;
	background: var(--fp-bg-elev);
	border: 1px solid var(--fp-line);
	box-shadow: var(--fp-shadow);
}
.fp-theme-toggle button {
	font-family: var(--fp-body);
	font-size: 12px;
	font-weight: 600;
	padding: 7px 12px;
	border-radius: 999px;
	border: 1px solid var(--fp-line);
	background: transparent;
	color: var(--fp-ink);
	cursor: pointer;
	line-height: 1;
}
.fp-theme-toggle button[aria-pressed="true"] {
	background: var(--fp-accent);
	border-color: var(--fp-accent);
	color: var(--fp-accent-ink);
}

/* Nav */
.main-navigation,
.header-menu,
#site-navigation {
	background: transparent !important;
}
.main-navigation a,
.header-menu a,
.menu-item a {
	font-family: var(--fp-body) !important;
	font-weight: 600 !important;
	color: var(--fp-ink-muted) !important;
	border-radius: 999px;
	padding: 8px 14px !important;
	transition: background 0.2s, color 0.2s;
}
.main-navigation a:hover,
.header-menu a:hover,
.menu-item a:hover,
.current-menu-item > a,
.current-menu-ancestor > a {
	background: var(--fp-accent-soft) !important;
	color: var(--fp-accent) !important;
}

/* Hide Video rubric leftovers if any */
.menu-item a[href*="/category/video"],
.menu-item a[href*="/category/video-uk"] {
	display: none !important;
}

/* ========== Cards / home ========== */
.site-content,
.site-container,
.container,
.content-area,
#content {
	background: transparent;
}

.section-block,
.home-section,
.section-posts {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding-top: 1.5rem !important;
	padding-bottom: 0.5rem !important;
	margin-bottom: 1.25rem;
	border-top: 1px solid var(--fp-line) !important;
}

.section-block:first-of-type,
.home-section:first-of-type {
	border-top: none !important;
}

.section-block__header,
.section-header,
.home-header {
	font-size: clamp(1.35rem, 2.4vw, 1.85rem) !important;
	font-weight: 700 !important;
	margin-bottom: 1rem !important;
	color: var(--fp-ink) !important;
}

.section-block__header a,
.section-header a {
	color: var(--fp-accent) !important;
	font-family: var(--fp-body) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
}

.post-card,
.card,
.post-box {
	background: var(--fp-bg-elev) !important;
	border: 1px solid var(--fp-line) !important;
	border-radius: var(--fp-radius) !important;
	overflow: hidden;
	box-shadow: none !important;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.post-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--fp-shadow) !important;
}

.post-card__thumbnail,
.post-card__image,
.post-card__thumbnail img {
	border-radius: 0 !important;
}
.post-card__thumbnail img {
	object-fit: cover;
	object-position: center center;
	aspect-ratio: 16 / 10;
	width: 100%;
	height: auto;
}

.post-card__title,
.post-card__title a {
	color: var(--fp-ink) !important;
	font-size: 1.1rem !important;
	line-height: 1.25 !important;
}
.post-card__category a,
.post-card__meta,
.post-card__excerpt {
	color: var(--fp-ink-muted) !important;
}
.post-card__category a {
	color: var(--fp-accent) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 11px !important;
	font-family: var(--fp-body) !important;
}

/* Slider / hero */
.card-slider,
.slider-posts,
.swiper-container {
	border-radius: calc(var(--fp-radius) + 6px);
	overflow: hidden;
	box-shadow: var(--fp-shadow);
}
.card-slider__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.card-slider__title,
.card-slider__content,
.slider-posts .post-card__title {
	font-family: var(--fp-display) !important;
}

/* Buttons */
.btn,
.button,
button[type="submit"],
.wp-block-button__link {
	background: var(--fp-accent) !important;
	color: var(--fp-accent-ink) !important;
	border-radius: 999px !important;
	border: none !important;
	font-weight: 700 !important;
	font-family: var(--fp-body) !important;
}

/* ========== Single article ========== */
.article-post .entry-title,
.single .entry-title {
	font-size: clamp(1.85rem, 4vw, 2.75rem) !important;
	line-height: 1.15 !important;
	margin-bottom: 0.6em;
}

.article-post,
.entry-content {
	color: var(--fp-ink);
}
.entry-content h2,
.entry-content h3 {
	color: var(--fp-ink);
}
.entry-content a {
	color: var(--fp-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.article-post .entry-image.post-card.post-card__thumbnail,
.article-post .entry-image.post-card__thumbnail {
	display: block !important;
	float: none !important;
	position: relative;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	flex-basis: auto !important;
	flex-grow: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-bottom: 25px;
	text-align: center;
	overflow: hidden;
	border-radius: calc(var(--fp-radius) + 4px) !important;
	box-shadow: var(--fp-shadow);
	border: none !important;
}

.article-post .entry-image.post-card.post-card__thumbnail > img,
.article-post .entry-image.post-card__thumbnail > img,
.article-post .entry-image.post-card.post-card__thumbnail img.wp-post-image {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin-left: auto !important;
	margin-right: auto !important;
	object-fit: cover;
	object-position: center center;
}

.breadcrumb,
.breadcrumbs {
	color: var(--fp-ink-muted);
	font-size: 13px;
}
.breadcrumb a,
.breadcrumbs a {
	color: var(--fp-accent);
	font-weight: 600;
}

.entry-meta,
.post-meta {
	color: var(--fp-ink-muted) !important;
}

.page-links a,
.nav-links a,
.pagination a {
	border-radius: 999px !important;
	border-color: var(--fp-line) !important;
	color: var(--fp-ink) !important;
	background: var(--fp-bg-elev) !important;
}

/* Sidebars / widgets */
.widget,
.sidebar .widget {
	background: var(--fp-bg-elev) !important;
	border: 1px solid var(--fp-line) !important;
	border-radius: var(--fp-radius) !important;
	box-shadow: none !important;
	color: var(--fp-ink);
}
.widget-title {
	font-family: var(--fp-display) !important;
	color: var(--fp-ink) !important;
}

/* Footer */
.site-footer,
#colophon {
	background: var(--fp-bg-elev) !important;
	border-top: 1px solid var(--fp-line) !important;
	color: var(--fp-ink-muted) !important;
}

/* Forms */
input, textarea, select {
	background: var(--fp-bg-elev) !important;
	color: var(--fp-ink) !important;
	border-color: var(--fp-line) !important;
	border-radius: 10px !important;
}

/* Soften old gradient section presets */
.section-block.bgc-12,
.section-block.bgc-16,
.section-block.bgc-2,
.section-block.bgc-4,
.section-block.gradient-2,
.section-block.gradient-3,
[class*="bgc-"],
[class*="gradient-"] {
	background: transparent !important;
	background-image: none !important;
}

/* Related posts */
.related-posts .post-card,
.yarpp .post-card {
	background: var(--fp-bg-elev) !important;
}
