/*
Theme Name: Nutri Coach
Author: WPEverest
Author URI: https://wpeverest.com/
Description: Nutri Coach is a modern, fully customizable WordPress block theme built for nutrition coaches and wellness professionals. Designed with Full Site Editing capabilities and fully compatible with AllCoach, it makes it easy to showcase multiple coaching programs, offer free consultations, accept program bookings and session appointments, and deliver structured client activities. Perfect for independent coaches, nutrition practices, and wellness studios looking for a clean, professional online presence.
Requires at least: 6.9
Tested up to: 7.0
Requires PHP: 5.7
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nutri-coach
Tags: blog, full-site-editing, block-patterns, block-styles, custom-colors, custom-menu, custom-logo, editor-style, featured-images, one-column, two-columns, translation-ready, wide-blocks
*/

html,
body,
.wp-block-post-author__avatar,
.wp-block-social-links,
.wp-block-post-excerpt__excerpt,
.wp-block-separator {
	margin: 0;
	padding: 0;
}

html,
body {
	overflow-x: hidden;
}

/* Hero pattern */
.hero-image-wrap {
	position: relative;
}

.hero-stat-card {
	position: absolute;
	bottom: 20px;
	right: 20px;
	z-index: 2;
	white-space: nowrap;
}

.hero-avatars {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}

.hero-avatars .wp-block-image {
	flex-shrink: 0;
	margin: 0;
}

.hero-avatars .wp-block-image:not(:last-child) {
	margin-right: -8px;
}

.hero-avatars .wp-block-image img {
	border-radius: 50%;
	border: 2px solid var(--wp--preset--color--cream);
	object-fit: cover;
	display: block;
}

.hero-coach-img {
	margin: 0 !important;
}

.hero-coach-img img {
	border-radius: 16px;
	width: 100%;
	height: auto;
	object-fit: cover;
	display: block;
}

.hero-stat-icon {
	background: color-mix(in oklab, var(--wp--preset--color--primary) 12%, transparent);
	border-radius: 8px;
	padding: 8px;
	line-height: 1;
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.no-margin-top {
	margin-top: 0 !important;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
html {
	font-smooth: antialiased;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: antialiased;
 }

body {
	font-smooth: auto;
	font-smooth: inherit;
	-webkit-font-smoothing: inherit;
}

.wp-site-blocks > .wp-block-group  {
	margin-block-start: 0;
}

.wp-block-columns{
	margin-block-start: 0;
	margin-block-end: 0;
}

.wp-block-cover{
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Instagram pattern */
.instagram-grid .wp-block-column {
	margin: 0;
}

.instagram-grid .wp-block-image {
	margin: 0;
	overflow: hidden;
	border-radius: 12px;
}

.instagram-grid .wp-block-image img {
	width: 100%;
	height: 220px;
	object-fit: cover;
	display: block;
}

@media (max-width: 600px) {
	.instagram-grid {
		overflow-x: auto;
		flex-wrap: nowrap !important;
	}
	.instagram-grid .wp-block-column {
		min-width: 150px;
	}
}

/* Blog Journal pattern */
.journal-label-line {
	width: 32px;
	height: 2px;
	background-color: var(--wp--preset--color--primary);
	flex-shrink: 0;
}

.blog-separator {
	background-color: var(--wp--preset--color--border);
}

.blog-feat-image-wrap {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
}

.blog-feat-image-wrap > .wp-block-image {
	margin: 0;
}

.blog-feat-image-wrap > .wp-block-image img {
	width: 100%;
	height: 360px;
	object-fit: cover;
	display: block;
	border-radius: 0;
}

.blog-feat-category-pill {
	position: absolute !important;
	top: 16px;
	left: 16px;
	z-index: 2;
}

.blog-feat-arrow {
	position: absolute !important;
	bottom: 16px;
	right: 16px;
	z-index: 2;
	width: 40px !important;
	height: 40px !important;
}

.blog-list-item {
	border-top: 1px solid var(--wp--preset--color--border);
	padding-top: 24px;
	padding-bottom: 24px;
}

.blog-list-item:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.blog-list-num {
	flex-shrink: 0;
	min-width: 32px;
}

.blog-list-content {
	flex: 1 !important;
	min-width: 0;
}

.blog-list-thumb {
	flex-shrink: 0;
	width: 80px;
}

.blog-list-thumb .wp-block-image {
	margin: 0;
}

.blog-list-thumb img {
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 8px;
	display: block;
}

/* Get Started CTA pattern */
.cta-images-pair .wp-block-image {
	flex: 1;
	margin: 0;
	overflow: hidden;
	border-radius: 16px;
}

.cta-images-pair .wp-block-image img {
	width: 100%;
	height: 380px;
	object-fit: cover;
	display: block;
}

.cta-right-image .wp-block-image {
	margin: 0;
	overflow: hidden;
	border-radius: 16px;
}

.cta-right-image .wp-block-image img {
	width: 100%;
	height: 380px;
	object-fit: cover;
	display: block;
}

/* Footer pattern */
.footer-logo-circle img {
	filter: brightness(0) invert(1);
	display: block;
}

/* Navigation active state */
.header-nav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.header-nav .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"],
.header-nav .wp-block-navigation-item.is-active > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent, var(--wp--preset--color--primary)) !important;
	font-weight: 600 !important;
}

.header-nav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content *,
.header-nav .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"] *,
.header-nav .wp-block-navigation-item.is-active > .wp-block-navigation-item__content * {
	color: var(--wp--preset--color--accent, var(--wp--preset--color--primary)) !important;
}

@media (max-width: 600px) {
	.site-header .wp-block-buttons {
		display: none;
	}
}

/* Skip link */
.skip-link {
	position: absolute;
	top: -9999px;
	left: -9999px;
	z-index: 999999;
	text-decoration: none;
}

.skip-link:focus {
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	background: var(--wp--preset--color--primary, #2563eb);
	color: #fff;
	padding: 0.75rem 1.5rem;
	font-size: 1rem;
	font-weight: 600;
}

/* Focus indicators */
a:focus,
a:focus-visible,
button:focus,
button:focus-visible,
.wp-block-button__link:focus,
.wp-block-button__link:focus-visible,
input:focus,
input:focus-visible,
textarea:focus,
textarea:focus-visible,
select:focus,
select:focus-visible,
[tabindex]:focus,
[tabindex]:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary, #2563eb);
	outline-offset: 2px;
}
