:root { --flavnost-navy: #252d54; }

.screen-reader-text, .flavnost-skip:not(:focus) {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
.flavnost-skip:focus {
	position: fixed;
	top: 1rem;
	left: 1rem;
	z-index: 100000;
	padding: .6rem 1rem;
	background: #fff;
}
:focus-visible { outline: 2px solid #ad762d; outline-offset: 4px; }
.main-header .logo img { width: 134px; height: auto; }
.hidden-bar .hidden-bar-wrapper { max-height: 100dvh; overflow: auto; }
.hidden-bar .side-menu { margin-top: 52px; }
.admin-bar .main-header.fixed-header .main-box { top: 32px; }
.flavnost-page { padding-block: 70px; }
.flavnost-page article + article { margin-top: 36px; }
.flavnost-page-title {
	background: var(--flavnost-navy) url('../images/background/pattern-one.png') center / cover no-repeat;
}
.flavnost-categories .filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}
.flavnost-categories .filters li { margin: 0; padding: 0; border: 0; }
.flavnost-categories a[aria-current='page'] { background: #333; color: #fff; }
.flavnost-term-description { text-align: center; margin-bottom: 30px; }
.flavnost-product-link { display: block; }
.default-shop-item .flavnost-product-link .image-box img { height: auto; transition: transform 500ms ease; }
.default-shop-item .flavnost-product-link:hover img,
.default-shop-item .flavnost-product-link:focus-visible img { transform: scale(1.06); }
.default-shop-item:hover .flavnost-product-link .lower-content { opacity: 1; visibility: visible; }
.flavnost-product-categories { margin-bottom: 12px; }
.about-farm .theme-btn { margin-top: 18px; }
.footer-style-one .footer-upper p { color: #fff; }

.main-slider { background: var(--flavnost-navy); }
.main-slider .tp-banner { background: var(--flavnost-navy); }
.flavnost-slider-toggle {
	position: absolute;
	z-index: 20;
	right: 20px;
	bottom: 20px;
	width: 42px;
	height: 42px;
	border: 1px solid rgb(255 255 255 / 65%);
	border-radius: 50%;
	color: #fff;
	background: rgb(0 0 0 / 34%);
}
.main-slider:not(.flavnost-slider-ready) .tp-banner > ul {
	display: block !important;
	position: relative;
	margin: 0;
}
.main-slider:not(.flavnost-slider-ready) .tp-banner > ul > li { display: none !important; }
.main-slider:not(.flavnost-slider-ready) .tp-banner > ul > li:first-child {
	position: relative !important;
	display: flex !important;
	min-height: clamp(400px, 64vw, 900px);
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: 12px;
	padding: 45px 18px;
	background: var(--flavnost-navy);
}
.main-slider:not(.flavnost-slider-ready) li:first-child > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.main-slider:not(.flavnost-slider-ready) li:first-child::before {
	content: '';
	position: absolute;
	z-index: 1;
	inset: 0;
	background: rgb(0 0 0 / 32%);
}
.main-slider:not(.flavnost-slider-ready) li:first-child .tp-caption {
	position: relative;
	display: block;
	visibility: visible;
}
.main-slider:not(.flavnost-slider-ready) h2 { font-size: clamp(72px, 9vw, 110px); }
.main-slider:not(.flavnost-slider-ready) .big-text { font-size: clamp(19px, 3vw, 36px); }
.intro-section .inner-part .content-box .inner-box::before,
.intro-section .inner-part .content-box .inner-box::after { background-image: none; }
.intro-section .flavnost-intro-copy { text-align: center; }
.intro-section .flavnost-intro-copy .text { margin-inline: auto; max-width: 38rem; }
.scroll-to-top.flavnost-scroll-visible { display: block; }
#flavnost-about, #flavnost-products, #flavnost-contact { scroll-margin-top: 110px; }

@media (max-width: 782px) {
	.admin-bar .main-header.fixed-header .main-box { top: 46px; }
}
@media (max-width: 767px) {
	.main-slider .tp-caption { display: block !important; }
	.main-slider.flavnost-slider-ready .tp-caption h2 { font-size: clamp(31px, 9vw, 70px) !important; }
	.main-slider.flavnost-slider-ready .tp-caption h3 { font-size: clamp(20px, 5vw, 40px) !important; }
	.main-slider.flavnost-slider-ready .tp-caption .big-text { font-size: clamp(12px, 3vw, 24px) !important; }
	.main-slider.flavnost-slider-ready .tp-caption .theme-btn { font-size: clamp(12px, 2.5vw, 16px) !important; }
	.flavnost-slider-toggle { right: 10px; bottom: 10px; }
}
@media (max-width: 600px) {
	.admin-bar .main-header.fixed-header .main-box { top: 0; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
