/*
Theme Name: Waveme
Theme URI: https://demo.avtheme.com/waveme
Author: AVtheme.com
Author URI: https://avtheme.com
Support: https://avtheme.com
Description: A responsive music WordPress theme, Manage audio, album, genres, artist and sell the audio files to customer.
Version: 12.2
Plugin: 14.2
License: Envato License
License URI: http://themeforest.net/licenses/standard
Text Domain: waveme
Tags: custom-colors, editor-style, featured-images, translation-ready
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Accessibility
# Alignments
# Clearings
# Widgets
# Infinite scroll
# Media
	## Captions
	## Galleries
# Forms
# Navigation
	## Links
	## Menus
# Content
	## Posts and pages
	## Comments
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
:root{
	--x-gap: 5vw; /* Horizontal gap for layout */
	--y-gap: 1.5rem; /* Vertical gap for layout */
	--column-gap: 0; /* Gap between columns */
	--color-primary: #FF5500; /* Primary color for theme */
	--color-secondary: #065fd4; /* Secondary color for theme */
	--color-grey-30: #fafbfc; /* Light grey color */
	--color-grey-40: #f7f8f9; /* Light grey color */
	--color-grey-50: #f1f2f3; /* Light grey color */
	--color-grey-60: #b1b2b3; /* Medium grey color */
	--color-grey-70: #919293; /* Medium grey color */
	--color-grey-80: #818383; /* Medium grey color */
	--color-grey-100: #717273; /* Dark grey color */
	--color-grey-200: #636567; /* Dark grey color */
	--color-grey-300: #515355; /* Dark grey color */
	--color-grey-400: #454749; /* Dark grey color */
	--color-grey-500: #3a3c3e; /* Dark grey color */
	--color-grey-600: #202326; /* Dark grey color */
	--color-grey-700: #101316; /* Dark grey color */
	--color-grey-800: #010305; /* Dark grey color */
	--box-shadow: 0 1px 1px rgba(130,140,150,0.1), 0 -1px 0px rgba(120, 130, 140, 0.05); /* Box shadow for elements */
	--border-radius: 0.5rem; /* Border radius for rounded corners */
	--button-radius: 2rem; /* Border radius for buttons */
	--input-radius: 0.25rem; /* Border radius for inputs */
	--font-size: 0.875rem; /* Base font size */
	--line-height: 1.5; /* Base line height */
	--font-article-size: 1rem; /* Font size for articles */
	--font-weight-heading: 600; /* Font weight for headings */
	--color-border: rgba(150,155,160,0.25); /* Border color */
	--plyr-color-main: var(--color-primary); /* Main color for Plyr */
	--navbar-height: 4rem; /* Height of the navbar */
	--adminbar-height: 0rem; /* Height of the admin bar */
	--open-player-height: 0rem; /* Height of the open player */
	--mobile-menu-height: 0rem; /* Height of the mobile menu */
	--mobile-menu-icon-width: 1.25rem; /* Width of mobile menu icons */
	--mobile-menu-icon-height: 1.625rem; /* Height of mobile menu icons */
	--mobile-menu-font-size: 0.625rem; /* Font size for mobile menu */
	--side-width: 12.5rem; /* Width of the sidebar */
	--side-folded-width: 5rem; /* Width of the folded sidebar */
	--side-icon-width: 1.5rem; /* Width of sidebar icons */
	--side-icon-height: 1rem; /* Height of sidebar icons */
	--side-menu-gap: 1.5rem; /* Gap between sidebar menu items */
	--side-menu-item-height: 1.5rem; /* Height of sidebar menu items */
	--side-menu-item-grid-gap: 0.75rem; /* Grid gap for sidebar menu items */
	--side-menu-item-row-gap: 0; /* Row gap for sidebar menu items */
	--sidebar-width: 18.75rem; /* Width of the sidebar */
	--content-width: 60rem; /* Width of the content area */
	--content-margin-top: var(--navbar-height); /* Margin top for content */
	--body-bg-color: #fff; /* Background color for body */
	--text-color: #212529; /* Text color */
	--text-secondary-color: #888; /* Secondary text color */
	--offcanvas: -100%; /* Offcanvas position */
	--transform-rotate: 0; /* Rotation transform */
}

.rtl{
	direction: rtl; /* Right-to-left text direction */
	--offcanvas: 100%; /* Offcanvas position for RTL */
	--transform-rotate: 180deg; /* Rotation transform for RTL */
}

*,
*::before,
*::after {
  box-sizing: border-box; /* Box sizing for all elements */
}

html {
  font-family: sans-serif; /* Default font family */
  line-height: 1.15; /* Default line height */
  -webkit-text-size-adjust: 100%; /* Prevent text size adjustment */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* Disable tap highlight color */
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; /* Block display for semantic elements */
}

body {
  margin: 0; /* Remove default margin */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* Font stack for body */
  overflow-x: hidden; /* Prevent horizontal overflow */
  color: var(--text-color); /* Text color */
  background-color: var(--body-bg-color); /* Background color */
  font-size: var(--font-size); /* Base font size */
  font-weight: var(--font-weight, 400); /* Base font weight */
  line-height: var(--line-height, 1.5); /* Base line height */
  --wp--preset--font-size--large: calc(18px + 2.5vw); /* Large font size */
  --wp--preset--font-size--x-large: calc(24px + 4.5vw); /* Extra large font size */
}

[tabindex="-1"]:focus {
  outline: 0 !important; /* Remove outline for elements with tabindex */
}

hr {
  box-sizing: content-box; /* Box sizing for horizontal rules */
  height: 0; /* Height for horizontal rules */
  overflow: visible; /* Overflow for horizontal rules */
}

p {
  margin-top: 0; /* Remove top margin for paragraphs */
  margin-bottom: 1.5rem; /* Bottom margin for paragraphs */
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline; /* Underline for abbreviations */
  -webkit-text-decoration: underline dotted; /* Dotted underline for abbreviations */
  text-decoration: underline dotted; /* Dotted underline for abbreviations */
  cursor: help; /* Help cursor for abbreviations */
  border-bottom: 0; /* Remove border for abbreviations */
  -webkit-text-decoration-skip-ink: none; /* Prevent ink skipping for abbreviations */
  text-decoration-skip-ink: none; /* Prevent ink skipping for abbreviations */
}

address {
  margin-bottom: 1rem; /* Bottom margin for addresses */
  font-style: normal; /* Normal font style for addresses */
  line-height: inherit; /* Inherit line height for addresses */
}

ol,
ul,
dl {
  margin-top: 0; /* Remove top margin for lists */
  margin-bottom: 1rem; /* Bottom margin for lists */
}

li > ol,
li > ul,
li > ul,
li > ol {
  margin-bottom: 0; /* Remove bottom margin for nested lists */
}

dt {
  font-weight: 700; /* Bold font weight for definition terms */
}

dd {
  margin: 0 1rem 2rem; /* Margin for definition descriptions */
}

blockquote {
  margin: 0 0 1rem; /* Bottom margin for blockquotes */
}

b,
strong {
  font-weight: 600; /* Bold font weight for strong elements */
}

small {
  font-size: 90%; /* Smaller font size for small elements */
}

sub,
sup {
	font-size: 0.15em; /* Font size for subscript and superscript */
	letter-spacing: 0; /* No letter spacing for subscript and superscript */
}

a {
  color: inherit; /* Inherit color for links */
  text-decoration: none; /* No underline for links */
  background-color: transparent; /* Transparent background for links */
}

a:not([href]):not([tabindex]):focus {
  outline: 0; /* Remove outline for links without href */
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* Monospace font for code elements */
  font-size: 1em; /* Font size for code elements */
}

pre {
  margin-top: 0; /* Remove top margin for preformatted text */
  margin-bottom: 1rem; /* Bottom margin for preformatted text */
  overflow: auto; /* Allow overflow for preformatted text */
}

figure {
  margin: 0 0 2rem 0; /* Bottom margin for figures */
}

img {
  max-width: 100%; /* Responsive image width */
  height: auto; /* Auto height for images */
  vertical-align: middle; /* Vertical alignment for images */
  border-style: none; /* No border for images */
  border-radius: inherit; /* Inherit border radius for images */
}

img[src=""] {
	content:url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="); /* Placeholder for empty image src */
	background-color: rgba(150,160,170,0.1); /* Background color for empty image src */
}

svg {
  overflow: hidden; /* Hide overflow for SVGs */
  vertical-align: middle; /* Vertical alignment for SVGs */
}

table {
  border-collapse: collapse; /* Collapse table borders */
}

caption {
  padding-top: 0.75rem; /* Top padding for captions */
  padding-bottom: 0.75rem; /* Bottom padding for captions */
  color: #6c757d; /* Caption text color */
  text-align: left; /* Left align captions */
  caption-side: bottom; /* Caption position */
}

th {
  text-align: inherit; /* Inherit text alignment for table headers */
}

label {
  display: inline-block; /* Inline block display for labels */
  margin-bottom: 0.5rem; /* Bottom margin for labels */
}

button {
  border-radius: 0; /* No border radius for buttons */
}

button:focus {
  outline: none; /* Remove outline for focused buttons */
}

input,
button,
select,
optgroup,
textarea {
  margin: 0; /* Remove margin for form elements */
  font-family: inherit; /* Inherit font family for form elements */
  font-size: inherit; /* Inherit font size for form elements */
  line-height: inherit; /* Inherit line height for form elements */
}

button,
input {
  overflow: visible; /* Allow overflow for buttons and inputs */
}

button,
select {
  text-transform: none; /* No text transformation for buttons and selects */
}

select {
  word-wrap: normal; /* Normal word wrap for selects */
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* Default button appearance */
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; /* Pointer cursor for clickable buttons */
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0; /* No padding for inner focus state */
  border-style: none; /* No border for inner focus state */
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box; /* Box sizing for radio and checkbox inputs */
  padding: 0; /* No padding for radio and checkbox inputs */
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox; /* Default appearance for date inputs */
}

textarea {
  overflow: auto; /* Allow overflow for textareas */
  resize: vertical; /* Allow vertical resizing for textareas */
}

fieldset {
  min-width: 0; /* No minimum width for fieldsets */
  padding: 0; /* No padding for fieldsets */
  margin: 0; /* No margin for fieldsets */
  border: 0; /* No border for fieldsets */
}

legend {
  display: block; /* Block display for legends */
  width: 100%; /* Full width for legends */
  max-width: 100%; /* Max width for legends */
  padding: 0; /* No padding for legends */
  margin-bottom: .5rem; /* Bottom margin for legends */
  font-size: 1.5rem; /* Font size for legends */
  line-height: inherit; /* Inherit line height for legends */
  color: inherit; /* Inherit color for legends */
  white-space: normal; /* Normal white space for legends */
}

progress {
  vertical-align: baseline; /* Vertical alignment for progress elements */
}

input::placeholder{
	opacity: 0.3; /* Placeholder opacity */
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; /* Auto height for number input spinners */
}

[type="search"] {
  outline-offset: -2px; /* Negative outline offset for search inputs */
  -webkit-appearance: none; /* Default appearance for search inputs */
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; /* No decoration for search inputs */
}

::-webkit-file-upload-button {
  font: inherit; /* Inherit font for file upload buttons */
  -webkit-appearance: button; /* Default appearance for file upload buttons */
}

output {
  display: inline-block; /* Inline block display for output elements */
}

summary {
  display: list-item; /* List item display for summary elements */
  cursor: pointer; /* Pointer cursor for summary elements */
}

template {
  display: none; /* Hide template elements */
}

[hidden] {
  display: none !important; /* Hide hidden elements */
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-top: 0; /* Remove top margin for headings */
  margin-bottom: var(--y-gap); /* Bottom margin for headings */
  font-weight: var(--font-weight-heading); /* Font weight for headings */
  line-height: 1.1; /* Line height for headings */
}

h1, .h1 {
  font-size: 2.5rem; /* Font size for h1 */
}

h2, .h2 {
  font-size: 2rem; /* Font size for h2 */
}

h3, .h3 {
  font-size: 1.5rem; /* Font size for h3 */
}

h4, .h4 {
  font-size: 1.25rem; /* Font size for h4 */
}

h5, .h5 {
  font-size: 1rem; /* Font size for h5 */
}

h6, .h6 {
  font-size: 0.75rem; /* Font size for h6 */
}

table {
	margin: 0 0 1.5em; /* Margin for tables */
	width: 100%; /* Full width for tables */
	border-spacing: 0; /* No border spacing for tables */
}
table td, table th{
	padding: 0.5em 0.75em; /* Padding for table cells */
	text-align: inherit; /* Inherit text alignment for table cells */
	border-bottom: 1px solid #ccc; /* Bottom border for table cells */
}
thead th{
	border-bottom-width: 2px; /* Bottom border width for table headers */
}
audio,
video{
	outline: 0; /* No outline for audio and video elements */
	width: auto; /* Auto width for audio and video elements */
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0; /* No border for screen reader text */
	clip: rect(1px, 1px, 1px, 1px); /* Clip for screen reader text */
	clip-path: inset(50%); /* Clip path for screen reader text */
	height: 1px; /* Height for screen reader text */
	margin: -1px; /* Negative margin for screen reader text */
	overflow: hidden; /* Hide overflow for screen reader text */
	padding: 0; /* No padding for screen reader text */
	position: absolute !important; /* Absolute position for screen reader text */
	width: 1px; /* Width for screen reader text */
	word-wrap: normal !important; /* Normal word wrap for screen reader text */
}

.screen-reader-text:focus {
	background-color: #f1f1f1; /* Background color for focused screen reader text */
	border-radius: 3px; /* Border radius for focused screen reader text */
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); /* Box shadow for focused screen reader text */
	clip: auto !important; /* Auto clip for focused screen reader text */
	clip-path: none; /* No clip path for focused screen reader text */
	color: inherit; /* Inherit color for focused screen reader text */
	display: block; /* Block display for focused screen reader text */
	font-size: 14px; /* Font size for focused screen reader text */
	font-size: 0.875rem; /* Font size for focused screen reader text */
	font-weight: bold; /* Bold font weight for focused screen reader text */
	height: auto; /* Auto height for focused screen reader text */
	left: 5px; /* Left position for focused screen reader text */
	line-height: normal; /* Normal line height for focused screen reader text */
	padding: 15px 23px 14px; /* Padding for focused screen reader text */
	text-decoration: none; /* No text decoration for focused screen reader text */
	top: 5px; /* Top position for focused screen reader text */
	width: auto; /* Auto width for focused screen reader text */
	z-index: 100000; /* High z-index for focused screen reader text */
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0; /* No outline for focused content */
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	float: left; /* Float left for aligned elements */
	margin-inline-start: 0; /* No start margin for left aligned elements */
  margin-inline-end: var(--x-gap); /* End margin for left aligned elements */
}

.alignright {
	float: right; /* Float right for aligned elements */
	margin-inline-end: 0; /* No end margin for right aligned elements */
  margin-inline-start: var(--x-gap); /* Start margin for right aligned elements */
}

.aligncenter {
	clear: both; /* Clear floats for centered elements */
	display: block; /* Block display for centered elements */
	margin-left: auto; /* Auto left margin for centered elements */
	margin-right: auto; /* Auto right margin for centered elements */
}

.alignmiddle {
	display: flex; /* Flex display for middle aligned elements */
	align-items: center; /* Center items vertically */
	justify-content: center; /* Center items horizontally */
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: ""; /* Clearfix content */
	display: table; /* Table display for clearfix */
	table-layout: fixed; /* Fixed table layout for clearfix */
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both; /* Clear floats for clearfix */
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em; /* Bottom margin for widgets */
	/* Make sure select elements fit in widgets. */
}

.widget select {
	max-width: 100%; /* Max width for select elements in widgets */
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block; /* Display sticky posts */
}

.sticky-post{
	border-radius: 0; /* No border radius for sticky posts */
	padding: 0px 8px; /* Padding for sticky posts */
	font-size: 12px; /* Font size for sticky posts */
  border: 1px solid; /* Border for sticky posts */
  position: relative; /* Relative position for sticky posts */
  display: inline-block; /* Inline block display for sticky posts */
  margin: 0 1rem; /* Margin for sticky posts */
}

.updated:not(.published) {
	display: none; /* Hide updated posts that are not published */
}

.post-navigation .post-title, 
.entry-title, 
.not-found .page-title, 
.error-404 .page-title, 
.comments-title,
.user-title,
.user-description,
.comment-author,
.comment-content,
blockquote{
	-webkit-hyphens: auto; /* Auto hyphenation for text */
    -moz-hyphens: auto; /* Auto hyphenation for text */
    -ms-hyphens: auto; /* Auto hyphenation for text */
    hyphens: auto; /* Auto hyphenation for text */
    word-break: break-word; /* Break words for long text */
    word-wrap: break-word; /* Wrap words for long text */
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	/* Theme Footer (when set to scrolling) */
	display: none; /* Hide footer when infinite scroll is active */
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block; /* Show footer when infinite scroll ends */
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none; /* No border for smileys */
	margin-bottom: 0; /* No bottom margin for smileys */
	margin-top: 0; /* No top margin for smileys */
	padding: 0; /* No padding for smileys */
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%; /* Max width for embeds and iframes */
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block; /* Inline block display for logo links */
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em; /* Bottom margin for captions */
	max-width: 100%; /* Max width for captions */
}

.wp-caption img[class*="wp-image-"] {
	display: block; /* Block display for caption images */
	margin-left: auto; /* Auto left margin for caption images */
	margin-right: auto; /* Auto right margin for caption images */
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0; /* Margin for caption text */
}

.wp-caption-text {
	text-align: center; /* Centered text for caption */
	font-size: 10px; /* Font size for caption text */
	line-height: 1.2; /* Line height for caption text */
	margin: 4px 0; /* Margin for caption text */
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em; /* Bottom margin for galleries */
}

.gallery-item {
	display: inline-block; /* Inline block display for gallery items */
	text-align: center; /* Centered text for gallery items */
	vertical-align: top; /* Top vertical alignment for gallery items */
	width: 100%; /* Full width for gallery items */
}

.gallery-columns-2 .gallery-item {
	max-width: 50%; /* Max width for 2-column galleries */
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%; /* Max width for 3-column galleries */
}

.gallery-columns-4 .gallery-item {
	max-width: 25%; /* Max width for 4-column galleries */
}

.gallery-columns-5 .gallery-item {
	max-width: 20%; /* Max width for 5-column galleries */
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%; /* Max width for 6-column galleries */
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%; /* Max width for 7-column galleries */
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%; /* Max width for 8-column galleries */
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%; /* Max width for 9-column galleries */
}

.gallery-caption {
	display: block; /* Block display for gallery captions */
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
.button,
.input,
button,
input,
select,
textarea{
	position: relative; /* Relative position for form elements */
	align-items: center; /* Center items vertically */
  font-weight: 500; /* Font weight for form elements */
  color: inherit; /* Inherit color for form elements */
  border: 1px solid var(--color-border); /* Border for form elements */
  background-color: #fff; /* Background color for form elements */
  border-radius: var(--input-radius, 0.25rem); /* Border radius for form elements */
  font-size: 0.875rem; /* Font size for form elements */
  padding: 0.5rem 0.75rem; /* Padding for form elements */
  height: 2.5rem; /* Height for form elements */
  line-height: 1.5; /* Line height for form elements */
  outline: none; /* No outline for form elements */
  transition: border .3s ease-in-out; /* Transition for border on focus */
}

.button,
button,
input[type='button'], 
input[type='submit'], 
input[type='reset']{
	color: #333; /* Text color for buttons */
	display: inline-flex; /* Inline flex display for buttons */
	cursor: pointer; /* Pointer cursor for buttons */
	text-align: center; /* Centered text for buttons */
	padding: 0.53125rem 1.25rem; /* Padding for buttons */
	border-radius: var(--button-radius); /* Border radius for buttons */
	height: auto; /* Auto height for buttons */
}
[disabled]{
	pointer-events: none; /* Disable pointer events for disabled elements */
	opacity: 0.5; /* Reduced opacity for disabled elements */
}

input[type='checkbox'], 
input[type='radio']{
	width: 18px; /* Width for checkboxes and radio buttons */
	min-width: 18px; /* Minimum width for checkboxes and radio buttons */
	height: 18px;
	margin-inline-end: 0.5rem;
	-webkit-margin-end: 0.5rem;
	vertical-align: middle;
	display: inline-block;
	padding: 0;
	text-align: center;
	line-height: 0;
	border-color: var(--text-secondary-color);
	border-radius: 2px;
	border-width: 2px;
	transition: all .3s ease-in-out;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
input[type='radio']{
	border-radius: 50%;
}
input[type='checkbox']:checked,
input[type='radio']:checked{
	border-color: currentColor;
}
input[type='checkbox']:before, 
input[type='radio']:before{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	border-radius: inherit;
	width: 10px;
	height: 10px;
	background-color: currentColor;
	transform: translate(-50%, -50%) scale(0);
	transition: transform 0.2s;
}
input[type='checkbox']:checked:before,
input[type='radio']:checked:before{
	transform: translate(-50%, -50%) scale(1);
}
input[type='checkbox']:checked{
	background-color: currentColor;
	border-width: 9px;
}
input[type='checkbox']:checked:before{
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	border-radius: 0;
	width: 10px;
	height: 6px;
	transform: translate(-50%, calc(-50% - 1px)) rotate(-45deg);
	background-color: transparent;
}

select{
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23888888' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right .5rem center;
	background-size: 8px 10px;
	padding-inline-end: 1.5rem !important;
	-webkit-padding-end: 1.5rem !important;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.rtl select{
	background-position: left .5rem center;
}
select[multiple],
select[size]:not([size="1"]),
textarea,
textarea.input{
	height: auto;
	padding-inline-end: 0.75rem;
	-webkit-padding-end: 0.75rem;
	background-image: none;
}

input.switch{
	border-radius: 5rem;
	width: 36px;
}
input.switch:before{
	transform: translate(-14px, -50%);
	width: 14px;
	height: 14px;
	opacity: 0.35;
}
input.switch:checked{
	color: #33cc66;
	background-color: currentColor;
}
input.switch:checked:before{
	transform: translate(0, -50%);
	opacity: 1;
	color: #fff;
}
form p{
	margin-bottom: 1em;
}
form label{
	color: var(--text-secondary-color);
	font-size: 0.875rem;
	display: inline-block;
	margin: 0 0 0.5rem 0;
}
form label + label{
	margin-left: 1rem;
	margin-right: 1rem;
}
.btn-follow,
.button-primary{
	border-color: currentColor;
}
button.button-sm,
a.button-sm,
.button-sm a{
	padding-top: 0.65rem;
	padding-bottom: 0.65rem;
	font-size: 13px;
}
button.button-xs,
a.button-xs,
.button-xs a{
	height: 1.125rem;
  padding: 0 .5rem;
  font-size: 12px;
  vertical-align: text-bottom;
  margin-left: 2px;
  margin-right: 2px;
}
a.btn-lg,
.btn-lg a,
a.button-lg,
.button-lg a{
	font-size: 1.2rem;
	padding: 1.25rem 2rem;
}
.button-rounded{
	border-radius: 3rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.button-link{
	color: inherit;
	border-color: transparent;
	background-color: transparent;
}
.button-reverse{
	color: #fff;
	background-color: #000;
}
.button + .button{
	margin-inline-start: 0.5rem;
	-webkit-margin-start: 0.5rem;
}
.button ins{
	text-decoration: none;
}
.form .input{
	width: 100%;
}
.post-password-form{
	padding: 4rem 0;
}
.post-password-form label{
	margin: 0;
}
button[type="submit"]{
	min-width: 3rem;
	justify-content: center;
}

.search-form{
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
}
.search-form label input{
	width: 100%;
}
.search-form label{
	margin-bottom: 0;
}
.search-form .search-submit{
	margin: 0 0.5rem;
}
.search-results .product .entry-footer{
	display: none;
}
/* search */
.site-header .search-form{
	display: flex;
	flex: 10;
	align-items: center;
	background-color: #f7f8f9;
	border-radius: 2rem;
/*	padding: 0 0.5rem; */
	padding-left: 0.5rem;
	position: relative;
}
.site-header .search-form input{
	border: 0;
	outline: 0 !important;
	box-shadow: none !important;
	color: inherit;
	display: block;
	flex: 1;
	width: 1%;
	height: 1.5rem;
	padding: 0 0.5rem;
	background-color: transparent !important;
}
.site-header .search-form input::placeholder {
   color: inherit;
   opacity: 0.3;
}
.site-header .search-form label{
	margin: 0;
}
.site-header .search-form .dropdown-menu:empty{
	display: none;
}
.site-header .search-form .dropdown-menu{
	width: 100%;
	left: 0;
	top: 100% !important;
	transform: none !important;
	min-width: 240px; /* Minimum width for dropdown menu */
	max-height: 300px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overflow: -moz-scrollbars-none;
	-ms-overflow-style: none;
}
.site-header .search-form .dropdown-menu a{
	display: flex;
	grid-gap: 0.5rem;
	align-items: center;
	padding: 0.5rem 1rem;
	word-break: break-word;
}
.site-header .search-form .dropdown-menu img{
	border-radius: 3px;
	display: inline-block;
	vertical-align: middle;
}
.site-header .search-form .dropdown-menu img,
.site-header .search-form .dropdown-menu .avatar{
	width: 2.5rem;
}
.site-header .search-form .dropdown-menu span.author{
	display: block;
	color: var(--text-secondary-color);
	font-size: 12px;
}
.site-header .search-form .dropdown-menu a > span:not(.avatar){
  display: block;
  width: 1%;
  flex: 1;
}
.site-header .search-form .dropdown-menu a > span:not(.avatar) span{
	display: block;
	white-space: nowrap;
	overflow: hidden;
  text-overflow: ellipsis;
}
.site-header .search-form .dropdown-user img{
	border-radius: 50%;
}
.is-touch .site-header .menu-item-has-children > a{
	pointer-events: none;
}
#menu-state:checked ~ .site-header{
	z-index: 1001;
}
#search-state:checked ~ .site-header .search-form{
	position: absolute;
	z-index: 1000;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #fff;
	color: #333;
	margin: 0;
	border-radius: 0;
	padding: 0 0.5rem;
	max-width: initial;
}
#search-state:checked ~ .site-header .search-form input{
	padding: 0 1rem;
	opacity: 1;
	display: block;
	transform: translate3d(0, 0%, 0);
}

/* header alternative */
.hide-search .site-header .search-form{
	display: none;
}
.hide-sidenav-icon .menu-toggle,
.hide-sidenav-icon .site-sidebar{
	display: none !important;
}
.site-header-transparent{
	--side-width: 0;
	--side-folded-width: 0;
	--sub-menu-color: var(--color-grey-600);
}
.site-header-transparent .site-content{
	margin-top: 0;
}
.site-header-transparent .site-header{
	color: rgba(255,255,255,1);
	position: absolute;
	box-shadow: none;
	background: transparent !important;
}
.site-header-transparent .site-sidebar{
	top: 0;
	border: none;
	z-index: 100000;
	--side-width: 15rem;
	--side-folded-width: 5rem;
	transform: translate3d(var(--offcanvas), 0, 0) !important;
}
.site-header-transparent #menu-state.hide-sidenav:checked ~ .site-sidebar{
	transform: none !important;
}
@media (min-width: 600px){
	.site-header-transparent .site-header .search-form{
		background-color: rgba(255, 255, 255, 0.35);
	}
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
nav ul{
	list-style: none;
	padding: 0;
	margin: 0;
}
.nav,
.nav ul{
	margin: 0;
	padding: 0;
	list-style: none;
}
.nav{
	display: flex;
	flex-wrap: nowrap;
	-webkit-overflow-scrolling: touch;
	overflow: -moz-scrollbars-none;
	-ms-overflow-style: none;
}
.nav::-webkit-scrollbar { 
	display: none;
}
.nav li{
	position: relative;
	float: none;
	display: flex;
	flex-direction: column;
}
.nav li > a{
	display: flex;
	align-items: center;
	padding: 0.375rem 0.75rem;
	position: relative;
	transition: color linear 0.2s;
}
.nav .current-menu-item > a,
.nav a:hover{
	transition: color 0.3s ease;
}
.nav ul a{
	white-space: normal;
}
.nav .sub-menu{
	display: none;
	font-weight: 400;
	font-size: max(90%, 13px);
}
.nav li.active > .sub-menu,
.user-navigation .nav li.current-menu-ancestor > .sub-menu,
.site-sidebar .nav li.current-menu-ancestor > .sub-menu{
	display: block;
}
.nav .current-menu-item > a{
	font-weight: 600;
}
.nav .menu-item-has-children:before,
.nav .menu-item-has-children > a:after{
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	width: 2rem;
	height: 100%;
	opacity: 0.5;
	cursor: pointer;
}
.nav .menu-item-has-children > a:after{
	position: static;
  width: 0;
  height: 0;
  top: 50%;
  margin: 1px 2px 0 2px;
  border-color: currentColor transparent transparent;
  border-style: solid;
  border-width: 4px 3px 0;
  background-color: transparent;
  opacity: 0.5;
	z-index: 0;
	transition: transform 0.3s;
}
.is-touch .nav .menu-item-has-children.no-toggle > a{
	pointer-events: none;
}
.nav .menu-item-has-children.current-menu-ancestor > a:after{
	transform: rotate(180deg);
}
.nav .button{
	color: inherit;
	mix-blend-mode: different;
}
.nav .avatar{
	width: 30px;
	border-radius: 100%;
	vertical-align: middle;
}
.nav .user-display-name{
	margin-inline-end: 0.5rem;
	-webkit-margin-end: 0.5rem;
}
.nav .svg-icon + span{
	margin-inline-start: 0.5rem;
	-webkit-margin-start: 0.5rem;
}
.nav li.btn-link a{
	position: relative;
	color: #fff !important;
	padding: 0.125rem 1rem;
	background-color: var(--text-secondary-color);
	border-radius: var(--button-radius, 2rem);
	min-height: 30px;
}
.nav li.hide-text > a{
	padding-left: 0;
	padding-right: 0;
	min-width: 30px;
	text-align: center;
	justify-content: center;
}
.nav li.hide-text > a > span{
	display: none;
}

.admin-bar{
	--adminbar-height: 32px;
}
@media (max-width: 782px){
	.admin-bar{
		--adminbar-height: 46px;
	}
}
.site-header{
	font-size: 0.875rem;
	left: 0;
	right: 0;
	top: var(--adminbar-height);
	z-index: 1000;
	position: fixed;
	background-color: #fff;
	box-shadow: var(--box-shadow);
}
.site-header .nav{
	min-height: var(--navbar-height);
}
.site-header .nav > li{
	flex-direction: row;
	align-items: center;
}
.is-touch .site-header li.current-menu-ancestor > .sub-menu,
html:not(.is-touch) .site-header li:hover > .sub-menu{
	display: block;
}
.is-touch li.fullscreen{
	display: none;
}
.site-header .sub-menu{
	position: absolute;
	background-color: var(--sub-menu-color, #fff);
	right: 50%;
	transform: translate(50%, 0);
	top: 100%;
	min-width: 10rem;
	padding: 0.5rem 0;
	border-radius: var(--border-radius);
	line-height: 1.5;
	box-shadow: 0 10px 30px rgb(0,0,0,0.1);
}
.site-header .menu-after-login{
	display: flex;
}
.site-header .menu-after-login .sub-menu{
	right: 0;
	transform: none;
}
.site-header .sub-menu a{
	padding-left: 1rem;
	padding-right: 1rem;
}
.site-header .sub-menu .sub-menu{
	transform: none;
	right: 100%;
	top: -0.5rem;
}
.site-header .secondary-menu{
	display: none;
}
.header-container{
	padding-left: 10px;
	position: relative;
}
.site-navbar{
	display: flex;
	align-items: center;
	min-height: var(--navbar-height);
}
.site-brand{
	display: flex;
	align-items: center;
	user-select: none;
	min-height: var(--navbar-height);
}
.menu-toggle{
	display: flex;
	align-items: center;
	align-self: stretch;
	padding: 0.75rem;
	margin: 0;
	cursor: pointer;
}
.site-brand .site-tagline{
	margin: 0 0.25rem;
}
.site-title{
	padding-left: 5px; 
	margin: 0 0.25rem;
	font-size: 1.15rem;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: -0.023em;
	color: inherit;
}
.site-title a:hover{
	color: inherit;
}
.hide-site-title .site-title{
	display: none;
}
.site-logo{
	display: inline-flex;
	align-items: center;
	line-height: 0;
}
.site-logo figcaption{
	font-size: var(--site-logo-font-size, 1.15rem);
	font-weight: bold;
	padding: 0 1rem;
	margin: 0;
	color: inherit;
}
.site-logo svg,
.site-logo img{
	width: auto;
	height: var(--site-logo-height, 2rem);
}
.nav .avatar img{
	max-width: 24px;
}

/* side menu */
.site-sidebar{
	--icon-width: 0rem;
	background-color: #fff;
	border-right: 1px solid rgba(130,140,150,0.1);
	width: var(--side-width);
	padding-top: 1rem;
	flex-shrink: 0;
	position: fixed;
	z-index: 990;
	left: 0;
	top: calc(var(--adminbar-height) + var(--navbar-height));
	bottom: 0;
	overflow-y: auto; 
	scrollbar-width: none;
    -ms-overflow-style: none;
    transition: transform 0.2s;
    -webkit-overflow-scrolling: touch;
}
.site-sidebar .site-brand{
	display: none;
	padding: 0 calc(var(--side-menu-gap) - 0.5rem);
	align-items: center;
}
.site-sidebar::-webkit-scrollbar {
    width: 0;
    height: 0;
}
.site-sidebar .svg-icon{
	width: var(--icon-width, 24px);
	height: var(--icon-height, 16px);
	flex-shrink: 0;
}
.site-sidebar .menu-has-icon{
	--icon-width: var(--side-icon-width);
	--icon-height: var(--side-icon-height);
}
.site-sidebar .nav{
	flex-direction: column;
	grid-gap: var(--side-menu-item-row-gap);
}
.site-sidebar .nav a{
	display: flex;
	grid-gap: var(--side-menu-item-grid-gap);
	min-height: var(--side-menu-item-height);
	padding: 0.375rem 0;
}
.site-sidebar .nav a span{
	margin: 0;
}
.site-sidebar .theme-color i{
	margin: calc(var(--side-icon-height)/2 - 0.5rem) calc(var(--side-icon-width)/2 - 0.5rem);
}
.site-sidebar .theme-switch i{
	margin: calc(var(--side-icon-height)/2 - 0.375rem) calc(var(--side-icon-width)/2 - 0.75rem);
}
.site-sidebar .theme-color,
.site-sidebar .theme-switch{
	grid-gap: var(--side-menu-item-grid-gap);
}
.site-sidebar .sub-menu a{
	--padding: calc( var(--icon-width) + var(--side-menu-item-grid-gap) );
	padding-inline-start: var(--padding);
	-webkit-padding-start: var(--padding);
}
.site-sidebar .menu-item-has-children{
	padding: 0 !important;
}
.site-sidebar .menu-item-has-children > a:after{
	margin-inline-start: auto;
	-webkit-margin-start: auto;
}
.site-sidebar .menu-header{
	padding: 0.5rem 0;
	opacity: 0.5;
	font-size: 0.85em;
}
.site-sidebar li ~ .menu-header{
	padding-top: 1.5rem;
}
.site-sidebar .menu-header a{
	padding: 0;
	pointer-events: none;
}
.site-sidebar .primary-menu{
	padding: 0 var(--side-menu-gap);
}
.site-sidebar .site-sidebar-header:not(:empty),
.site-sidebar .site-sidebar-footer:not(:empty){
	font-size: 0.875rem;
}
.site-sidebar .site-sidebar-footer a{
	color: var(--text-secondary-color);
	margin-inline-end: 0.75rem;
	-webkit-margin-end: 0.75rem;
}
.with-left-sidebar .sidebar{
	order: -1;
}
.site-content{
	margin-top: var(--content-margin-top);
	min-height: calc(100vh - var(--navbar-height) - var(--adminbar-height) - var(--open-player-height) - var(--mobile-menu-height));
	transition: margin 0.2s cubic-bezier(0.23, 1, 0.32, 1);
}
.open-player body{
	--open-player-height: var(--plyr-height);
	padding-bottom: calc(var(--open-player-height) + var(--mobile-menu-height));
}
/* Navigation links styling */
.nav-links{
	display: flex; /* Use flexbox for layout */
	align-items: center; /* Center items vertically */
	justify-content: center; /* Center items horizontally */
	margin-bottom: calc(var(--y-gap)*1.5); /* Bottom margin using gap variable */
}

/* Style for page numbers (excluding prev/next buttons) */
.nav-links .page-numbers:not(.prev):not(.next){
	padding: 0.25rem 0.5rem; /* Padding around page numbers */
	font-size: 1rem; /* Font size for page numbers */
	position: relative; /* Relative positioning for hover effects */
	display: inline-block; /* Inline block display for page numbers */
	margin: 0.25rem 0.25rem; /* Margin around page numbers */
}

/* Hover effect underline animation for page numbers */
.nav-links a.page-numbers:not(.prev):not(.next):after{
	content: ""; /* Empty content for decorative underline */
	display: block; /* Block display for underline */
	position: absolute; /* Absolute position for underline */
	left: 25%; /* Left offset for underline */
	bottom: 0; /* Bottom position for underline */
	width: 50%; /* Width of underline */
	border-bottom: 1px solid; /* Solid border for underline */
	transform: translate3d(0,0,0) scaleX(0); /* Initial scale of 0 for animation */
	transform-origin: right top; /* Transform origin for animation */
	transition: transform 0.2s ease-in-out 0.1s; /* Smooth transition for hover effect */
}

/* Hover state for page number underline */
.nav-links a.page-numbers:not(.prev):not(.next):hover:after{
	transform: translate3d(0,0,0) scaleX(1); /* Scale to full width on hover */
	transform-origin: left top; /* Change transform origin for hover animation */
}

/* Current page and span styling */
.nav-links .current,
.nav-links .page-numbers span{
	color: var(--text-secondary-color); /* Secondary text color for current page and spans */
}

/* Meta navigation styling */
.nav-links .meta-nav{
	font-size: 10px; /* Small font size for meta navigation */
	text-transform: uppercase; /* Uppercase text for meta navigation */
	font-weight: bold; /* Bold font weight for meta navigation */
	color: var(--text-secondary-color); /* Secondary text color for meta navigation */
	top: -4px; /* Slight upward offset */
    position: relative; /* Relative positioning for offset */
}

/* Previous/Next navigation links */
.nav-links .prev,
.nav-links .next,
.nav-links .nav-previous,
.nav-links .nav-next{
	display: flex; /* Flex display for navigation links */
	align-items: center; /* Center align items vertically */
	width: 50%; /* Half width for each navigation link */
	margin-right: auto; /* Auto right margin for spacing */
	line-height: 1.2; /* Line height for text */
}

/* Navigation arrows styling */
.nav-links .prev:before,
.nav-links .next:before,
.nav-links .nav-previous:before,
.nav-links .nav-next:before{
	font-family: serif; /* Serif font for navigation arrows */
	content: "\2039"; /* Left-pointing arrow character */
	display: inline-block; /* Inline block display for arrow */
	text-align: center; /* Center align arrow */
	height: 2.25rem; /* Height of arrow container */
	width: 2.25rem; /* Width of arrow container */
	font-size: 28px; /* Font size for arrow */
	border-radius: 50%; /* Circular shape for arrow container */
	flex-shrink: 0; /* Prevent arrow from shrinking */
	color: var(--text-secondary-color); /* Secondary color for arrow */
	box-shadow: var(--box-shadow); /* Box shadow for depth */
	transform: scale(1); /* Initial scale */
	transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1); /* Smooth transition for hover */
	background-color: #fff; /* White background for arrow container */
}

/* Right-pointing arrow for next links */
.nav-links .next:before,
.nav-links .nav-next:before{
	content: "\203a"; /* Right-pointing arrow character */
}

/* Next navigation link layout */
.nav-links .next,
.nav-links .nav-next{
	flex-direction: row-reverse; /* Reverse flex direction for next links */
	margin-left: auto; /* Auto left margin for spacing */
	margin-right: inherit; /* Inherit right margin */
}

/* Post title styling in navigation */
.nav-links .post-title{
	margin: 0 1rem; /* Margin around post title */
	display: block; /* Block display for post title */
}

/* Hover states for navigation arrows */
.nav-links .prev:hover:before,
.nav-links .next:hover:before,
.nav-links .nav-previous:hover:before,
.nav-links .nav-next:hover:before{
	border-color: currentColor; /* Border color matches text on hover */
	color: currentColor; /* Arrow color matches text on hover */
}

/* SVG icon rotation */
.nav-links .prev svg, 
.nav-links .next svg{
	transform: rotate(var(--transform-rotate)); /* Rotate SVG icons based on direction */
}

/* Right alignment for next navigation text */
.nav-links .nav-next a{
	text-align: right; /* Right align text for next navigation */
}

/* Previous and Next link spacing */
.nav-links .prev, 
.nav-links .next{
	margin: 0 0.5rem; /* Margin for previous and next links */
	width: auto; /* Auto width for navigation links */
}
/* Page links container */
.page-links {
	clear: both; /* Clear floats */
	font-size: 0.85rem; /* Smaller font size */
}

/* Hide page links title */
.page-links .page-links-title{
	display: none; /* Hide the title */
}

/* Page links and current page styling */
.page-links .current,
.page-links a{
	display: inline-block; /* Inline block display */
	text-align: center; /* Center text */
	padding: 0; /* No padding */
	width: 2rem; /* Fixed width */
	height: 2rem; /* Fixed height */
	line-height: 1.9rem; /* Line height for vertical centering */
	border-radius: 50%; /* Circular shape */
	border: 1px solid rgba(150,160,170,0.2); /* Light border */
	color: var(--text-secondary-color); /* Secondary text color */
	transition: all 0.3s; /* Smooth transition for hover effects */
}

/* Hover state for page links */
.page-links a:hover{
	border-color: currentColor; /* Border color matches text on hover */
	color: inherit; /* Inherit text color on hover */
}

/* Current page styling */
.page-links .current{
	background-color: rgba(150,160,170,0.1); /* Light background for current page */
	border-color: transparent; /* Transparent border for current page */
}

/* Entry meta container */
.entry-meta{
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
	flex-wrap: wrap; /* Allow wrapping */
	grid-gap: var(--entry-meta-grid-gap, 1rem); /* Gap between items */
	margin-bottom: var(--y-gap); /* Bottom margin */
}

/* Entry term and tag spacing */
.entry-term > *,
.entry-tag > *{
	margin-inline-end: 0.5rem; /* End margin */
	-webkit-margin-end: 0.5rem; /* Webkit end margin */
	margin-bottom: 0.5rem; /* Bottom margin */
}

/* Entry tag and category list items */
.entry-tag li,
.entry-cat li{
	display: inline-block; /* Inline block display */
}

/* Entry info container */
.entry-info{
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
	flex-wrap: wrap; /* Allow wrapping */
	margin-bottom: 1rem; /* Bottom margin */
}

/* Separator dots for entry info and categories */
.entry-info > span + span:before,
.entry-cat li + li:before{
	display: inline-block; /* Inline block display */
	content: '\00B7'; /* Bullet point character */
	color: var(--text-secondary-color); /* Secondary text color */
	width: 1.25rem; /* Fixed width */
	font-weight: bold; /* Bold font weight */
	text-align: center; /* Center text */
}

/* Category links container */
.cat-links{
	display: block; /* Block display */
	margin-left: -0.5rem; /* Negative left margin */
	margin-right: -0.5rem; /* Negative right margin */
	margin-bottom: var(--y-gap); /* Bottom margin */
	white-space: pre-wrap; /* Preserve whitespace */
	text-transform: uppercase; /* Uppercase text */
}

/* Category link styling */
.cat-links a{
	display: inline-flex; /* Inline flex display */
	align-items: center; /* Center items vertically */
	position: relative; /* Relative positioning */
	margin: 0 0.5rem; /* Horizontal margin */
}

/* Category link underline animation */
.cat-links a:before{
	content: ""; /* Empty content */
	display: block; /* Block display */
	position: absolute; /* Absolute positioning */
	bottom: 0; /* Position at bottom */
	left: 0; /* Position at left */
	right: 0; /* Position at right */
	border-bottom: 1px solid; /* Bottom border */
	transform: translate3d(0,0,0) scaleX(0); /* Initial scale of 0 */
	transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); /* Smooth transition */
	transform-origin: right top; /* Transform origin */
}

/* Category link hover state */
.cat-links a:hover:before{
	transform: translate3d(0,0,0) scaleX(1); /* Scale to full width on hover */
	transform-origin: left top; /* Change transform origin */
}
/* User links container */
.user-links{
	display: flex; /* Flex display for layout */
	flex-wrap: wrap; /* Allow wrapping of items */
	list-style: none; /* No bullet points */
	padding: 0; /* No padding */
	margin: 0; /* No margin */
}

/* User links list items */
.user-links li{
	display: flex; /* Flex display for list items */
	align-items: center; /* Center align items vertically */
}

/* User links anchor tags */
.user-links li a{
	display: inline-block; /* Inline block display for links */
	padding: 0.375rem; /* Padding around links */
	line-height: 0; /* No line height */
}

/* Tags container */
.tags{
	display: block; /* Block display for tags container */
	margin-top: calc(var(--y-gap)*2); /* Top margin using gap variable */
	margin-bottom: calc(var(--y-gap)*2); /* Bottom margin using gap variable */
}

/* Entry tags and general tags styling */
.entry-tag a,
.tags a{
	color: inherit; /* Inherit text color */
	display: inline-block; /* Inline block display for tag links */
	padding: 2px 10px; /* Padding for tag links */
	border: 1px solid rgba(150,170,170,0.2); /* Light border for tags */
	background-color: #fff; /* White background */
	border-radius: 4px; /* Rounded corners */
	margin-bottom: 4px; /* Bottom margin between tags */
	text-transform: capitalize; /* Capitalize tag text */
	transition: all 0.2s; /* Smooth transition for hover effects */
}

/* Hover state for tags */
.entry-tag a:hover,
.tags a:hover{
	border-color: inherit; /* Border color matches text on hover */
}

/* Links after tags */
.tags + a{
	color: var(--text-secondary-color); /* Secondary text color for links after tags */
	margin: 0 var(--tag-gap, 0.5rem); /* Horizontal margin using tag gap variable */
}
.byline,
.posted-on,
.comments-link,
.post-edit-link{
	color: var(--text-secondary-color); /* Secondary text color for meta links */
}
.avatar{
	display: block;
	position: relative;
	border-radius: 50%;
	flex-shrink: 0;
	background-color: #666;
	color: #fff;
}
.avatar:before{
	content: '';
	display: block;
	padding-top: 100%;
}
.avatar img,
.avatar > .avatar-name{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: bolder;
	text-transform: capitalize;
}
.avatar-name svg{
	color: var(--text-secondary-color);
}
#wp-admin-bar-my-account > .ab-item .avatar{
	display: none;
}

.count{
	color: var(--text-secondary-color);
	font-weight: 500;
}
.count:empty{
	display: none;
}

.user-social-links{
	margin-bottom: 1rem;
	color: var(--text-secondary-color);
}

.user-social-links a:after{
	content: '';
	display: inline-block;
	width: 1rem;
}
/* User bio container */
.user-bio{
	display: flex; /* Flex display */
	width: 100%; /* Full width */
	font-size: 14px; /* Small font size */
	margin-bottom: var(--y-gap); /* Bottom margin */
}

/* User follower text styling */
.user-bio .user-follower span{
	color: var(--text-secondary-color); /* Secondary text color */
}

/* User follower count styling */
.user-bio .user-follower .count{
	color: inherit; /* Inherit text color */
}

/* User meta container */
.user-meta{
	display: flex; /* Flex display */
	width: 100%; /* Full width */
}

/* User avatar container */
.user-avatar{
	flex-shrink: 0; /* Prevent shrinking */
	display: inline-flex; /* Inline flex display */
	align-items: flex-start; /* Align items to top */
}

/* User avatar size */
.user-avatar .avatar{
	width: 3.75rem; /* Fixed width */
}

/* Spacing after user elements */
.user-link:after,
.user-avatar:after,
.user-title h3:after{
	content: ''; /* Empty content */
	display: inline-block; /* Inline block display */
	width: 1rem; /* Fixed width spacing */
}

/* User title styling */
.user-title{
	text-transform: capitalize; /* Capitalize text */
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
}

/* Author name styling */
.author-name{
	text-transform: capitalize; /* Capitalize text */
}

/* User info container */
.user-info{
	flex: 1; /* Flex grow */
	display: flex; /* Flex display */
	flex-wrap: wrap; /* Allow wrapping */
	align-items: center; /* Center items vertically */
}

/* User title heading styling */
.user-info .user-title > h3{
	font-size: 1.1rem; /* Font size */
	margin: 0.25rem 0; /* Vertical margin */
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
}

/* User links margin */
.user-bio .user-links{
	margin-top: 0.5rem; /* Top margin */
}

/* Follow button styling */
.user-bio .btn-follow{
	padding: 0.25rem 1rem; /* Horizontal padding */
}

/* Entry header user title */
.entry-header .user-title h3{
	font-size: 14px; /* Small font size */
}

/* Entry footer user bio styling */
.entry-footer .user-bio{
	padding: 1.5rem 1.5rem; /* Equal padding */
	background-color: #fff; /* White background */
	box-shadow: var(--box-shadow); /* Box shadow */
	border-radius: 4px; /* Rounded corners */
	margin-top: var(--y-gap); /* Top margin */
}

/* Hide spacing after user link in footer */
.entry-footer .user-bio .user-link:after{
	display: none; /* Hide element */
}

/* User heading styling */
.user-heading{
	display: none; /* Hidden by default */
	font-size: 10px; /* Small font size */
	font-weight: bold; /* Bold font weight */
	color: var(--text-secondary-color); /* Secondary text color */
}

/* User description styling */
.user-description{
	color: var(--text-secondary-color); /* Secondary text color */
}

/* Show user heading in single view */
.single .user-heading{
	display: block; /* Show element */
}

/* Font size for single post and archive content */
.single-post .entry-content,
.archive-content p{
	font-size: var(--font-article-size); /* Use article font size variable */
}
/*--------------------------------------------------------------
## Comments 
--------------------------------------------------------------*/
.comments-area{
	margin-bottom: calc(var(--y-gap)*2);
}
.comments-title{
	display: flex;
	align-items: center;
}
.comments-title .close{
	margin-inline-start: auto;
	-webkit-margin-start: auto;
	font-weight: 100;
	cursor: pointer;
	padding: 0 0.25rem;
	display: none;
}
.comment-list,
.comment-list .comment-list,
.comment-list .comment,
.comment-list .children{
    list-style: none;
    padding: 0;
    margin: 0;
}

.comment-list .trackback,
.comment-list .pingback{
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.comment-list .says{
	font-size: 0;
	display: none;
}
.comment-content,
.comment-body > .reply,
.children .comment,
.comment-toolbar,
.comment-meta,
.comment .comment-respond{
	padding-inline-start: 3.25rem;
	-webkit-padding-start: 3.25rem;
	line-height: 1.5;
}

#cancel-comment-reply-link{
	padding-inline-start: 0.75rem;
	-webkit-padding-start: 0.75rem;
}
.comment-body{
	margin-bottom: var(--y-gap);
	font-size: 14px;
}
.comment-toolbar{
	display: flex;
	align-items: center;
	margin-top: 4px;
	color: var(--text-secondary-color);
}
.comment-author .avatar{
	position: absolute;
	left: 0;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	font-size: 0.85rem;
}
.rtl .nav .menu-item-has-children:before{
	left: 0;
	right: auto;
}
.rtl .site-header .menu-after-login .sub-menu{
	left: 0;
	right: auto;
}
.rtl .site-header .sub-menu .sub-menu{
	left: 100%;
	right: auto;
}
.rtl .site-sidebar{
	left: auto;
	right: 0;
}
.rtl .comment-author .avatar{
	left: auto;
	right: 0;
}
.comment-meta{
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.comment-metadata{
	display: flex;
	flex: 1;
	margin: 0 4px;
}
.comment-metadata > a{
	margin-inline-end: auto;
	-webkit-margin-end: auto;
}
.comment-metadata time,
.comment-metadata > a{
	font-size: 0;
}
.comment-meta,
.comment-metadata > a .comment-human-time{
	font-size: 13px;
	line-height: 1.5;
}
.comment-metadata > a .comment-human-time{
	color: var(--text-secondary-color);
}
.comment-content a {
	word-wrap: break-word;
}
.comment-content p{
	color: inherit !important;
}
.comment-content p:last-child{
	margin-bottom: 0;
}
.bypostauthor > .comment-body .comment-author b a{
	background-color: #999;
	color: #fff;
	font-size: 12px;
	padding: 0px 8px;
	border-radius: 10px;
  display: inline-block;
}
.comment-author a:hover{
	color: inherit;
}
/* Comment form container */
.comment-respond{
	position: relative; /* Relative positioning */
	margin-bottom: 1.5rem; /* Bottom margin */
	display: flex; /* Flex display */
	grid-gap: 0.75rem; /* Gap between elements */
	align-items: start; /* Align items to top */
}

/* Nested comment response spacing */
.comment-list .comment-respond{
	margin-top: 2rem; /* Top margin for nested comments */
}

/* No comments message */
.no-comments{
	font-size: 14px; /* Small font size */
	color: var(--text-secondary-color); /* Secondary text color */
	text-align: center; /* Center align text */
	padding: 1rem; /* Padding around message */
}

/* Comment message styling */
.comment-message{
	margin-top: 0.5rem; /* Top margin */
	order: 2; /* Order in flex container */
}

/* Hide empty paragraphs and links in comment message */
.comment-message p:empty,
.comment-message p a{
	display: none; /* Hide elements */
}

/* Comment form avatar */
.comment-respond .avatar{
	width: 2.5rem; /* Fixed width */
	height: 2.5rem; /* Fixed height */
	border-radius: 50%; /* Circular shape */
	margin: 0 !important; /* No margin */
}

/* Comment form header */
.comment-respond .comment-reply-header{
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
}

/* Comment reply title */
.comment-respond .comment-reply-title{
	font-size: 1rem; /* Font size */
	margin: 0 1rem; /* Horizontal margin */
	height: 2rem; /* Fixed height */
	overflow: hidden; /* Hide overflow */
}

/* Comment reply title span */
.comment-respond .comment-reply-title span{
	display: flex; /* Flex display */
	align-items: center; /* Center items vertically */
	color: var(--text-secondary-color); /* Secondary text color */
	height: 2rem; /* Fixed height */
	transition: all 0.2s ease-in-out; /* Smooth transition */
}

/* Small text in reply header */
.comment-respond .comment-reply-header small{
	margin-inline-start: auto; /* Push to end */
	-webkit-margin-start: auto; /* Webkit support */
}

/* Comment form container */
.comment-form{
	transition: max-height 0.3s ease-in-out; /* Height transition */
	overflow: hidden; /* Hide overflow */
	display: flex; /* Flex display */
	flex: 1; /* Flex grow */
	flex-wrap: wrap; /* Allow wrapping */
}

/* Logged in comment form */
.is-logged-in ~ .comment-form{
	max-height: inherit; /* Inherit max height */
}

/* Comment form label */
.comment-form-comment label{
	width: 100%; /* Full width */
	height: 2.375rem; /* Fixed height */
	position: absolute; /* Absolute position */
	top: 0; /* Align to top */
	padding: 0.375rem 0.75rem; /* Padding */
	margin: 0; /* No margin */
	z-index: 2; /* Stack order */
}

/* Hide label when logged in */
.is-logged-in + .comment-form .comment-form-comment label{
	display: none; /* Hide label */
}

/* Comment form state */
#commentform-state{
	display: none; /* Hidden by default */
}

/* Expanded comment form */
#commentform-state:checked ~ .comment-form{
	max-height: 50rem; /* Maximum height when expanded */
}

/* Hide label when form expanded */
#commentform-state:checked ~ .comment-form .comment-form-comment label{
	display: none; /* Hide label */
}

/* Comment form inputs */
.comment-form input[name="author"], 
.comment-form input[name="email"], 
.comment-form input[name="url"],
.comment-form textarea {
    display: block; /* Block display */
    width: 100%; /* Full width */
}

/* Comment form paragraphs */
.comment-form > p{
	order: 10; /* Order in flex container */
	position: relative; /* Relative position */
}

/* Comment form notes */
.comment-form .comment-notes{
	font-size: 0.85rem; /* Small font size */
	color: var(--text-secondary-color); /* Secondary text color */
	order: 3; /* Order in flex container */
	width: 100%; /* Full width */
	margin-top: 0.5rem; /* Top margin */
}

/* Cookie consent checkbox */
.comment-form .comment-form-cookies-consent{
	display: flex; /* Flex display */
}

/* Comment form comment area */
.comment-form .comment-form-comment{
	flex: 1; /* Flex grow */
	display: flex; /* Flex display */
}

/* Spacing after comment area */
.comment-form .comment-form-comment:after{
	display: inline-block; /* Inline block display */
	width: 1rem; /* Fixed width */
}

/* Comment form layout */
.comment-form .comment-form-comment,
.comment-form .form-submit{
	width: 100%; /* Full width */
	flex: auto; /* Flex grow */
}

/* Comment reply title margin */
.comment-reply-title{
	margin-bottom: 0; /* No bottom margin */
}

/* Logged in message */
.comment-form .logged-in-as{
	margin-top: 0.5rem; /* Top margin */
	font-size: 0.85em; /* Small font size */
	color: var(--text-secondary-color); /* Secondary text color */
}
.comment-list .pingback .comment-body a:not(.comment-edit-link), 
.comment-list .trackback .comment-body a:not(.comment-edit-link) {
    font-weight: 500;
    font-size: 14px;
    padding-right: 0.5rem;
    display: block;
}
.comment-edit-link,
.comment-reply-link{
	font-size: 0.75rem;
	color: var(--text-secondary-color);
	text-transform: uppercase;
	display: inline-block;
}
.comment-toolbar .comment-reply-link{
	padding: 0.5rem;
}
.comment-edit-link:hover,
.comment-reply-link:hover{
	color: inherit;
	border-color: currentColor;
}
#cancel-comment-reply-link{
	position: absolute;
	top: -1.5rem;
	color: #999;
	font-size: 13px;
}
.comment-reply-login{
	display: none;
}
.comment-respond .must-log-in{
	flex: 1;
	display: flex;
}
.comment-respond .must-log-in p{
	flex: 1;
	display: block;
	text-align: inherit;
	height: auto;
	margin-bottom: 0;
}
.comment-respond .must-log-in + button{
	display: none;
}
.comment-respond .must-log-in:after{
	content: '';
	display: inline-block;
	width: 0.75rem;
}
.comment-awaiting-moderation{
	width: 100%;
	display: block;
	margin-top: 0.5rem;
	font-size: 0.85em;
}
.comment-form .comment-form-author, 
.comment-form .comment-form-email, 
.comment-form .comment-form-url{
	width: 100%;
}
.comment-navigation{
	margin: 1rem 0;
	width: auto !important;
	max-width: auto !important;
}
/* Base button styling */
.btn{
	position: relative; /* Relative positioning for pseudo-elements */
    display: inline-flex; /* Inline flex display */
    align-items: center; /* Center items vertically */
    justify-content: center; /* Center items horizontally */
    vertical-align: middle; /* Middle vertical alignment */
    padding: .375rem 1rem; /* Padding */
    border-radius: 0; /* No border radius */
    font-size: 0.875rem; /* Font size */
    color: #222 !important; /* Text color */
    background-color: transparent !important; /* Transparent background */
    user-select: none; /* Prevent text selection */
    outline: none; /* No outline */
    cursor: pointer; /* Pointer cursor */
}

/* Button background layers */
.btn:before,
.btn:after{
	position: absolute; /* Absolute positioning */
	content: ""; /* Empty content */
	z-index: -2; /* Stack below button */
	left: 0; /* Align to left */
	top: 0; /* Align to top */
	bottom: 0; /* Align to bottom */
	width: 100%; /* Full width */
	background: #fff; /* White background */
	border-radius: inherit; /* Inherit border radius */
	transform: translate3d(0,0,0) scaleX(1); /* Initial transform */
	transition: transform 0.35s cubic-bezier(0.23, 1, 0.32, 1); /* Smooth transition */
	transform-origin: right center; /* Transform from right */
}

/* Button hover layer */
.btn:after{
	z-index: -1; /* Stack above base layer */
	background-color: #000; /* Black background */
	transform: translate3d(0,0,0) scaleX(0); /* Initially hidden */
}

/* Button hover and focus states */
.btn:hover,
.btn:focus{
	color: #fff !important; /* White text on hover/focus */
}

/* Button hover/focus animation */
.btn:hover:after,
.btn:focus:after{
	transform: translate3d(0,0,0) scaleX(1); /* Show hover layer */
	transform-origin: left center; /* Transform from left */
}

/* Small button variant */
.btn-sm,
.btn-sm a{
	padding: 4px 12px; /* Smaller padding */
	font-size: 12px; /* Smaller font size */
}

/* Reverse color button */
.btn-reverse{
	color: #fff; /* White text */
}

/* Reverse button background */
.btn-reverse:before{
	background: #000; /* Black background */
}

/* Reverse button hover layer */
.btn-reverse:after{
	background: #fff; /* White background */
}
/* Navigation and search icons */
#icon-nav,
#icon-search{
	line-height: 0; /* No line height */
	padding: 0.5rem; /* Equal padding */
	margin: 0; /* No margin */
	text-align: center; /* Center text */
	color: inherit; /* Inherit color */
	cursor: pointer; /* Pointer cursor */
	white-space: nowrap; /* No text wrapping */
	border-top-left-radius: 0; /* No top left radius */
    border-bottom-left-radius: 0; /* No bottom left radius */
}

/* Hide navigation icon by default */
#icon-nav{
	display: none; /* Hidden */
}

/* Menu icon container */
i.icon-menu {
  position: relative; /* Relative positioning */
  display: inline-block; /* Inline block display */
  vertical-align: middle; /* Middle vertical alignment */
  width: 20px; /* Fixed width */
  height: 20px; /* Fixed height */
  cursor: pointer; /* Pointer cursor */
  font-size: 0; /* No font size */
}

/* Menu icon bars */
i.icon-menu:before, 
i.icon-menu:after,
i.icon-menu i:before,
i.icon-menu i:after {
    content: ''; /* Empty content */
    position: absolute; /* Absolute positioning */
    width: 80%; /* Bar width */
    height: 2px; /* Bar height */
    border-radius: 1px; /* Rounded corners */
    top: 50%; /* Center vertically */
    left: 10%; /* Center horizontally */
    margin-top: -1px; /* Vertical offset */
    background-color: currentColor; /* Inherit color */
    transition: transform .2s ease-in-out; /* Smooth transition */
    transform-origin: left center; /* Transform from left */
}

/* Top bar */
i.icon-menu:before {
    top: 37.5%; /* Position top bar */
    transition-delay: .3s; /* Delay transition */
}

/* Bottom bar */
i.icon-menu:after {
    top: 62.5%; /* Position bottom bar */
    transition-delay: .4s; /* Delay transition */
}

/* Hover effect for bottom bar */
i.icon-menu:hover:after {
    transform: scaleX(1); /* Full width on hover */
}

/* Middle bar container */
i.icon-menu i {
    position: absolute; /* Absolute positioning */
    left: 10%; /* Center horizontally */
    top: 10%; /* Center vertically */
    width: 80%; /* Container width */
    height: 80%; /* Container height */
    -webkit-transform: rotate(-45deg); /* Rotate for animation */
    transform: rotate(-45deg); /* Rotate for animation */
}

/* Middle bar before state */
i.icon-menu i:before {
	top: 0; /* Align to top */
	left: 50%; /* Center horizontally */
	transform: rotate(90deg) scaleX(0); /* Initial rotation and scale */
	transition-delay: 0.1s; /* Delay transition */
}

/* Middle bar after state */
i.icon-menu i:after {
	top: 50%; /* Center vertically */
	right: 0; /* Align to right */
	transform: scaleX(0); /* Initially hidden */
	transition-delay: 0s; /* No transition delay */
}
i.icon-nav,
i.icon-nav:before,
i.icon-nav:after{
	content: "";
	display: inline-block;
	position: relative;
	height: 1px;
	width: 18px;
	border-radius: 2px;
	background-color: var(--text-secondary-color, currentcolor);
}
i.icon-nav:before{
	position: absolute;
	left: 0;
	top: -0.3125em;
}
i.icon-nav:after{
	position: absolute;
	left: 0;
	bottom: -0.3125em;
}
i.icon-search{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	width: 1.5em;
	height: 1.5em;
	cursor: pointer;
	color: black;
}

i.icon-search:before,
i.icon-search:after{
	content: '';
    position: absolute;
    width: 25%;
    height: 1px;
    border-radius: 1px;
    background-color: currentColor;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: transform .1s ease-in-out;
}
i.icon-search:before{
	width: 50%;
	height: 50%;
	border-radius: 100%;
	border: 1px solid currentColor;
	background-color: transparent;
}
i.icon-search:after{
	transform: rotate(45deg);
	transform-origin: left top;
	left: 62.5%;
	top: 62.5%;
}

#nav-state,
#menu-state,
#search-state{
	display: none;
}
#menu-state:checked ~ * i.icon-menu:before {
    transition-delay: 0.1s;
    transform: scaleX(0);
    transform-origin: right center;
}
#menu-state:checked ~ * i.icon-menu:after {
    transition-delay: 0s;
    transform: scaleX(0);
    transform-origin: right center;
}
#menu-state:checked ~ * i.icon-menu i:before {
    transition-delay: .4s;
    -webkit-transform: rotate(90deg) scaleX(1);
    transform: rotate(90deg) scaleX(1);
}
#menu-state:checked ~ * i.icon-menu i:after {
    transition-delay: .5s;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

#menu-state:checked ~ .site-sidebar{
	transform: translate3d(var(--offcanvas), 0, 0);
}

#search-state:checked ~ * i.icon-search:before{
	width: 75%;
	height: 1px;
	border-radius: 1px;
	background-color: currentColor;
	border: none;
	transform: translate(-50%, -50%) rotate(45deg);
}
#search-state:checked ~ * i.icon-search:after{
	width: 75%;
	transform: translate(-50%, -50%) rotate(-45deg);
	left: 50%;
	top: 50%;
	transform-origin: center center;
}

/* Theme color and switch containers */
.theme-color,
.theme-switch{
	display: inline-flex; /* Inline flex display */
	align-items: center; /* Center items vertically */
	margin: 0; /* No margin */
}

/* Theme color indicator */
.theme-color i{
	display: inline-block; /* Inline block display */
	position: relative; /* Relative positioning */
	width: 1rem; /* Fixed width */
	height: 1rem; /* Fixed height */
	padding: 0; /* No padding */
	margin: 0 0.25rem; /* Horizontal margin */
    border-radius: 50%; /* Circular shape */
   	flex-shrink: 0; /* Prevent shrinking */
}

/* Theme color input */
.theme-color input{
	width: 1px; /* Minimal width */
	height: 1px; /* Minimal height */
	padding: 0; /* No padding */
	order: 5; /* Order in flex container */
	position: absolute; /* Absolute positioning */
	border: none; /* No border */
	background-color: transparent; /* Transparent background */
}

/* Theme color swatch styling */
.theme-color input::-webkit-color-swatch {
    border: none; /* No border for color swatch */
}

/* Theme switch toggle */
.theme-switch i{
	display: inline-block; /* Inline block display */
	position: relative; /* Relative positioning */
	width: 1.5rem; /* Fixed width */
	height: 0.75rem; /* Fixed height */
	border-radius: 2rem; /* Pill shape */
	background-color: rgba(120,130,140,0.2); /* Light background */
	line-height: 1; /* Normal line height */
	cursor: pointer; /* Pointer cursor */
	flex-shrink: 0; /* Prevent shrinking */
}

/* Theme switch toggle button */
.theme-switch i:before{
	content: ""; /* Empty content */
	display: block; /* Block display */
	opacity: 1; /* Full opacity */
	width: 1rem; /* Fixed width */
	height: 1rem; /* Fixed height */
	margin-top: -2px; /* Negative top margin */
	background-color: #fff; /* White background */
	box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26); /* Drop shadow */
	position: absolute; /* Absolute positioning */
	border-radius: 2rem; /* Circular shape */
	transition: all 0.2s; /* Smooth transition */
	left: 0; /* Initial position */
}

/* Dark theme toggle position */
.dark .theme-switch i:before{
	left: 0.5rem; /* Moved position for dark theme */
}

/* Loading spinner animation */
.loading-spin {
	animation-duration: .75s; /* Animation duration */
	transform-origin: center center; /* Rotation origin */
	animation-iteration-count: 1; /* Play once */
	animation-name: loading; /* Use loading keyframes */
}

/* Bouncing animation for children */
.loading-bounce > *{
	animation-duration: .75s; /* Animation duration */
	animation-name: bounce; /* Use bounce keyframes */
	animation-iteration-count: 1; /* Play once */
	animation-fill-mode: forwards; /* Keep final state */
	animation-delay: calc(var(--n) * 0.075s); /* Staggered delay */
	transform-origin: center center; /* Scale origin */
}

/* Progress bar */
.page-progress{
	position: fixed; /* Fixed position */
	z-index: 100000; /* High z-index */
	top: 0; /* Align to top */
	left: 0; /* Align to left */
	width: 0; /* Initial width */
	height: 2px; /* Fixed height */
	background-color: var(--color-primary); /* Primary color */
}

/* Loading state animations */
.page-loading .loading-spin{
	animation-iteration-count: infinite; /* Infinite rotation */
}

.page-loading .loading-bounce > * {
	animation-iteration-count: infinite; /* Infinite bounce */
}

/* Spinner element */
.spinner{
	display: inline-block; /* Inline block display */
    width: 1rem; /* Fixed width */
    height: 1rem; /* Fixed height */
    vertical-align: text-bottom; /* Bottom alignment */
    background-color: currentColor; /* Inherit color */
    border-radius: 50%; /* Circular shape */
    opacity: 0; /* Initially hidden */
    -webkit-animation: spinner .75s linear infinite; /* Webkit animation */
    animation: spinner .75s linear infinite; /* Standard animation */
}

/* Loading cursor */
.page-loading body,
.page-loading a{
	cursor: wait; /* Wait cursor */
}

/* Spinner animation keyframes */
@keyframes spinner {
  0% {
  	opacity: 0; /* Start hidden */
    transform: scale(0); /* Start small */
  }
  50% {
    opacity: 1; /* Full opacity */
    transform: scale(0.5); /* Half size */
  }
  100% {
  	opacity: 0; /* End hidden */
    transform: scale(1); /* Full size */
  }
}

/* Loading rotation animation */
@keyframes loading {
  0% {
    transform: translateZ(0) rotate(0deg); /* Start rotation */
  }
  100% {
    transform: translateZ(0) rotate(359deg); /* Full rotation */
  } 
}

/* Bounce animation */
@keyframes bounce {
  0% {
    transform: scaleY(1); /* Normal height */
  }
  50% {
    transform: scaleY(0); /* Squished */
  }
  100% {
    transform: scaleY(1); /* Back to normal */
  }
}

/* refine */
.has-white-color{
	color: #fff !important;;
}
.has-black-color{
	color: #000 !important;;
}
.has-white-background-color{
	background-color: #fff !important;;
}
.has-black-background-color{
	background-color: #000 !important;;
}

.flex{
	width: 1%;
	flex: 1;
	min-width: 1rem;
}

.flex-sm-row{
	display: flex;
}

.separator{
	display: flex;
	height: 2rem;
}
.separator:before,
.separator:after{
	content: '';
	border-bottom: 1px solid rgba(156,160,170,0.2);
	width: 1%;
	height: 1rem;
	flex: 1;
}
.separator span{
	margin: 0 1rem;
	line-height: 2;
}

.wp-block-button__link{
    font-size: 0.875rem;
    padding: 0.8125rem 1.5rem;
    line-height: 1;
    box-shadow: 0 0 0 1px rgba(0,0,0,0);
    transition: all .3s ease-in-out;
}
.has-drop-cap{
	line-height: inherit;
}
.has-drop-cap:not(:focus):first-letter{
	float: left;
	font-size: 5.1em;
	line-height: .6;
	font-weight: inherit;
	margin-top: .15em;
	margin-right: .2em;
	text-transform: uppercase;
	font-style: inherit;
}
.has-drop-cap-2:not(:focus):first-letter{
	font-size: 3.2em;
	margin-right: .3em;
}
.has-drop-cap:after {
	content: "";
	display: table;
	clear: both;
}
ul, ol {
		padding-inline-start: 1.5rem;
		-webkit-padding-start: 1.5rem;
}
ul {
    list-style: disc;
}
ol {
    list-style: decimal;
}
.wp-block-pullquote blockquote,
blockquote{
	padding: 2rem 4rem !important;
	color: #333;
	background-color: var(--color-blockquote, #fff);
	border-radius: 1rem;
	border-width: 0;
	position: relative;
	font-family: Georgia, Cambria, "Times New Roman", Times, serif;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.025);
	margin-bottom: 3rem !important;
	font-style: italic;
}
blockquote p{
	font-size: 1.25rem;
}
blockquote:after{
	position: absolute;
	bottom: -1rem;
	left: 2rem;
	content: "";
	display: inline-block;
	border-width: 1rem 0 0 2rem;
	border-style: solid;
	border-color: var(--color-blockquote, #fff) transparent transparent;
}
blockquote.is-style-large:after,
blockquote.has-text-align-right:after{
	left: auto;
	right: 2rem;
	border-width: 1rem 2rem 0 0;
}
blockquote:before{
	content: '\201C';
	font-family: arial;
	position: absolute;
	left: 1rem;
	top: 4rem;
	font-size: 6rem;
	line-height: 0;
	opacity: 0.1;
	z-index: 1;
}
.wp-block-quote cite,
blockquote cite{
	display: block;
	color: #888;
	position: relative;
	bottom: -3rem;
	height: 0;
	margin: 0 !important;
}
blockquote p:last-of-type{
	margin-bottom: 0;
}
.wp-block-pullquote{
	border-width: 0;
	padding: 0 !important;
}
.wp-block-pullquote cite{
	text-align: left;
}
.wp-block-pullquote blockquote{
	border-top: 2px solid;
	border-color: inherit;
}
.wp-block-pullquote.is-style-solid-color{
	border-radius: 1rem;
}
.wp-block-pullquote.is-style-solid-color blockquote{
	max-width: 100%;
	background-color: transparent;
	border-width: 0;
}

mark, ins{
/* 	background-color: #fff9c0;*/
	color: #dddddd;
	text-decoration: none;
}
address{
	font-style: italic;
}

.wp-block-separator{
	border-color: rgba(150,160,170,0.2);
}
.wp-block-separator.is-style-dots:before{
	color: rgba(150,160,170,0.5);
}
.wp-block-cover-contain{
	background-size: contain;
	background-repeat: no-repeat;
	background-color: transparent;
}
.wp-block-cover-contain .wp-block-cover__inner-container{
	color: inherit;
}
.has-large-font-size,
.has-x-large-font-size{
	line-height: 1.05;
	letter-spacing: -0.015em;
}
.wp-block-image{
	margin-bottom: 2rem;
}
/* layout style */
.is-layout-flex{
	display: flex;
}
.is-content-justification-left{
	justify-content: flex-start;
}
.is-content-justification-center{
	justify-content: center;
}
.is-content-justification-right{
	justify-content: flex-end;
}
.is-vertical{
	flex-direction: column;
}
.is-content-justification-left.is-vertical{
	align-items: flex-start;
}
.is-content-justification-center.is-vertical{
	align-items: center;
}
.is-content-justification-right.is-vertical{
	align-items: flex-end;
}
.is-nowrap{
	flex-wrap: nowrap;
}

.with-padding{
	padding: var(--x-gap);
}
.with-padding-x{
	padding-left: var(--x-gap);
	padding-right: var(--x-gap);
}
.with-padding-y{
	padding-top: var(--x-gap);
	padding-bottom: var(--x-gap);
}
.with-column-gap{
	--column-gap: 1.5rem;
	gap: var(--column-gap);
}
.with-gap{
	gap: var(--x-gap);
}
.no-padding{
	padding: 0 !important;
}
.no-margin{
	margin: 0 !important;
}
.no-gap{
	gap: 0;
}
.wp-block-columns.alignfull p{
	margin-left: 2rem;
	margin-right: 2rem;
}
.wp-block-cover.no-padding .wp-block-cover__inner-container{
	width: 100%;
}
.wp-block-cover.has-background-dim{
	color: #fff;
}
.wp-block-group.has-background{
	margin-bottom: 0;
}
.is-style-squared a{
	border-radius: 0;
}
.single-post figure[style]{
	max-width: 100% !important;
}
/* container */
.container,
.container-wrap .wp-block-cover__inner-container,
.container-wrap .wp-block-group__inner-container,
.navigation,
.page-header,
.page-content,
.archive-header,
.archive-content,
.archive-footer,
.site-main > .comments-area,
.site-main > .entry > .entry-header-container,
.site-main > .entry > .entry-header,
.site-main > .entry > .entry-summary,
.site-main > .entry > .entry-footer,
.site-main > .entry > .post-thumbnail,
.site-main > .entry > .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
	width: calc(100% - var(--x-gap) * 2);
	max-width: var(--content-width);
	margin-left: auto;
  margin-right: auto;
}
.entry-content > .alignleft{
	margin-inline-end: var(--x-gap);
}
.entry-content > .alignright{
	margin-inline-start: var(--x-gap);
}
.entry-content > .alignwide{
	width: calc(100% - var(--x-gap) * 1);
	max-width: calc(var(--content-width) + 10vw);
	margin-left: auto;
  margin-right: auto;
}
.container-wrap{
	padding: 0 !important;
}
/* Main */
.error-404,
.not-found{
	padding: 5rem 0 5rem 0;
}
.error-404,
.not-found{
	text-align: center;
}
.error-404 h2{
	font-size: 9rem;
}
.error-404 .search-form,
.not-found .search-form{
	margin-left: auto;
	margin-right: auto;
	max-width: 280px;
	margin: 3rem auto;
}
.entry-header{
	margin-top: calc(var(--y-gap)*2);
}
.hide-title{
	display: none;
}
.entry-description{
	color: var(--text-secondary-color);
	margin-bottom: 1rem;
}
.entry-footer{
	margin-bottom: calc(var(--y-gap)*2);
}
.entry-artist a:after{
	display: none;
}
.entry-content > *{
	word-wrap: break-word;
	margin-bottom: var(--y-gap);
}
.search-title,
.archive-title{
	font-size: 1.25rem;
	margin-top: calc(var(--y-gap)*2);
	line-height: inherit;
}
.archive-description{
	color: var(--text-secondary-color);
}
.byline{
	display: inline-flex;
	align-items: center;
}
.byline .avatar{
	width: 24px;
	height: 24px;
}
.byline .avatar + .author-name:before,
.byline .svg-icon + .author:before{
	content: '';
	display: inline-block;
	width: 0.25rem;
}

.navigation .nav{
	overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
}
.navigation .nav a{
	white-space: nowrap;
}

.page-navigation .nav{
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	padding-top: 2px;
	padding-bottom: 2px;
}

.user-navigation{
	margin-bottom: 1.5rem;
	font-weight: 600;
}
.user-navigation a span{
	font-size: 0.85em;
	margin-inline-start: 4px;
	-webkit-margin-start: 4px;
}
.user-navigation a span:empty{
	display: none;
}
.user-placeholder{
	text-align: center;
	padding: 3rem 0;
}
.user-placeholder p{
	margin-top: 1rem;
	color: var(--text-secondary-color);
}
.menu-mega .menu-item-has-children > a{
	font-weight: bold;
}
.menu-divider{
	border-top: 1px solid rgba(130,140,150,0.1);
}
/* Footer */
.site-footer{
	font-size: 0.875rem;
	position: relative;
}
.site-footer ul{
  list-style: none;
	margin: 0 0 1.5rem 0;
  padding: 0;
  line-height: 2;
}
.site-footer .site-info{
	margin-bottom: calc(var(--y-gap)*2);
}

.site-info{
	display: flex;
}
.site-info .site-copyright{
	font-size: 85%;
	margin-inline-start: auto;
	-webkit-margin-start: auto;
	margin-top: 1.25rem;
}

.sticky-top{
	position: -webkit-sticky;
    position: sticky;
    top: 6rem;
    z-index: 10;
}

/* archive */
.archive-content-column{
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-gap: calc(var(--y-gap)*2);
	margin-top: calc(var(--y-gap)*2);
	margin-bottom: calc(var(--y-gap)*2);
}
.archive-content-column > h3{
	grid-column: 1/-1;
	margin-bottom: -0.5rem;
}
.archive-content-column > .entry{
	display: inline-block;
	width: 100%;
}
.archive-content-column .entry-header{
	margin-top: 0;
}
.archive-content-column .entry-title{
	font-size: 1.25rem;
}
.archive-content-column .block-loop-items{
	margin-bottom: 0;
}

.accordion p{
	display: none;
}
.accordion h3,
.accordion h4{
	display: flex;
	align-items: center;
	margin: 0;
	padding: 1.5rem 0;
}
.accordion h3 ~ h3,
.accordion h4 ~ h4{
	border-top: 1px solid var(--color-border);
}
.accordion h3:after,
.accordion h4:after{
	content: "";
	display: block;
	border: 0.35rem solid transparent;
  border-top-color: currentColor;
  border-bottom-width: 0;
  opacity: 0.5;
  margin-inline-start: auto;
  -webkit-margin-start: auto;
}
.accordion h3.open:after,
.accordion h4.open:after{
	transform: rotate(-180deg);
}

/* dark theme */
.dark,
.dark body{
	--text-color: #fff;
	--text-secondary-color: #aaa;
	--body-bg-color: #121212;
	--tooltip-color: var(--color-grey-500);
	--sub-menu-color: var(--color-grey-600);
}

.dark .site-header,
.dark .site-header .search-form,
.dark .site-sidebar,
.dark .plyr-playlist{
	background-color: inherit;
}
.dark #search-state:checked ~ .site-header .search-form,
.dark .entry-footer .user-bio,
.dark .modal-content,
.dark .dropdown-menu,
.dark .wp-block-code,
.dark .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.dark .nav-links .prev:before,
.dark .nav-links .next:before,
.dark .nav-links .nav-previous:before,
.dark .nav-links .nav-next:before,
.dark .button:not(.button-primary){
	color: #fff;
	background-color: var(--color-grey-600);
}
.dark .dark-white,
.dark .tags a,
.dark .entry-tag a{
	color: #fff;
	background-color: var(--color-grey-500);
}
.dark .dark-white .has-white-background-color{
	background-color: var(--color-grey-500) !important;
}

.dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6,
.dark .dark-white .wp-block-cover__inner-container,
.dark .dropdown-menu .dropdown-item{
	color: inherit;
}
.dark .input,
.dark input:not([type='range']):not([type='button']):not([type='submit']):not([type='reset']):not([type='checkbox']):not([type='radio']),
.dark select,
.dark textarea,
.dark .button-primary,
.dark input[type="checkbox"],
.dark input[type="radio"]{
	background-color: transparent;
	color: #f1f1f1;
}

/* theme color */
.text-primary,
.text-primary:hover,
.site-logo,
.button-primary,
.button-primary,
input.button-primary, 
button.button-primary:hover, 
input.button-primary:hover, 
.btn-follow, 
.btn-like.active,
.album-track.active .icon-play,
.user-navigation a span,
input[type="checkbox"]:checked, 
input[type="radio"]:checked{
/*     color: var(--color-primary); */
	color: #cdcdcdcf;
}
.text-primary:hover{
	text-decoration: underline;
}

[data-plyr="like"] .icon--pressed,
.btn-like.active svg{
    stroke: var(--color-primary);
    fill: var(--color-primary);
}

input:not([type="radio"]):not([type="checkbox"]):not([type="range"]):focus,
select:focus,
textarea:focus,
.dropdown-toggle.button:hover,
.waveform .waveform-container{
 /*   border-color: var(--color-primary);*/
	border-color: #5f5f5f;
}
.theme-color i,
.nav li.btn-link a,
.btn-primary a{
    color: #fff !important;
    background-color: var(--color-primary) !important;
}
.is--repeat svg,
.is--shuffle svg{
    fill: var(--color-primary);
}

.wp-block-loop:not(.block-loop-row) .btn-like.active svg{
    stroke: currentColor;
    fill: currentColor;
}
.progress-bar,
.block-loop-hover .block-loop-item:hover, 
.block-loop-hover .block-loop-item.active{
    background-color: var(--color-primary);
}
.block-loop-hover .block-loop-item:hover .post-thumbnail:after, 
.block-loop-hover .block-loop-item.active .post-thumbnail:after{
    background-color: var(--color-primary);
    background: linear-gradient(180deg, rgba(0,0,0,0.2), var(--color-primary));
}

.user-description a,
.entry-content > p a,
.entry-content > table a,
.entry-content > dl a,
.entry-content > ul a,
.entry-content > ol a,
.station-content a{
/*	color: var(--color-secondary); */
	color: #e1e1e1;
}

/* page animate */
.backdrop{
	transform: translate3d(0, 0, 0);
  transform-origin: top right;
  position: fixed;
  z-index: 980;
  top: 0;
  right: 0;
  left: 0;
  height: 0;
  display: flex;
	background-color: inherit;
  transition: transform 0.2s cubic-bezier(0.32, 0.08, 0.24, 1);
  transition-delay: 0.3s;
}
.backdrop i{
	display: flex;
	flex: 1;
	flex-shrink: 0;
	background-color: inherit;
	background-clip: padding-box;
}
.backdrop i:before,
.backdrop i:after{
	flex: 1;
	flex-shrink: 0;
	background-color: inherit;
	content: "";
	display: block;
	height: 100vh;
	transform: translate3d(0, 0, 0) scaleX(0);
  transform-origin: right center;
  transition: transform 0.5s cubic-bezier(0.32, 0.08, 0.24, 1);
  transition-delay: 1;
  border-left: 1px solid rgba(150,160,170,0.1);
}
.page-loading .backdrop i:before,
.page-loading .backdrop i:after{
	/*transform: translate3d(0, 0, 0) scaleX(1);
	transform-origin: left center;*/
}
.entry-header-container > .entry-header .entry-title{
	clip-path: polygon(0 0, 100% 0, 100% 120%, 0 120%);
  transform: translate3d(0, 0, 0);
  transition: clip-path cubic-bezier(0.075,.82,.165,1) 1s;
  transition-delay: 0.35s;
}
.page-animate.page-animating .featured-image .entry-header-container > .post-thumbnail{
  opacity: 0;
  transition-delay: 0s;
  transform: translate3d(0, 0, 0);
}
.page-animate.page-animating .entry-header-container > .entry-header .entry-title{
  clip-path: polygon(0 0,0 0,0 120%,0 120%);
  transition-delay: 0s;
}

/* mobile */
.mobile-menu{
	position: fixed;
  bottom: 0;
  background-color: inherit;
  z-index: 1000;
  width: 100%;
  height: var(--mobile-menu-height);
  overflow-y: hidden;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  transition: transform 0.2s;
  -webkit-overflow-scrolling: touch;
  box-shadow: 0 -1px 0 rgba(130,140,150,0.1);
  background-clip: padding-box;
  display: none;
}
.mobile-menu::-webkit-scrollbar{
	display: none;
}
.mobile-menu .nav{
	display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: var(--mobile-menu-font-size);
  min-height: var(--mobile-menu-height);
}
.mobile-menu .nav li{
	flex: 1 1;
}
.mobile-menu .nav li > a{
	display: flex;
	flex-direction: column;
	align-items: center;
  justify-content: center;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
.mobile-menu .nav li > a span{
	margin: 0;
	line-height: 1;
}
.mobile-menu .nav li.hide-text a{
	max-width: 30px;
	margin: 0 auto;
}
.mobile-menu .nav a > svg{
	width: var(--mobile-menu-icon-width);
	height: var(--mobile-menu-icon-height);
	color: inherit;
	display: block;
}
.mobile-menu li.current_page_item > a,
.mobile-menu li.current-menu-item > a{
	color: var(--color-primary);
}
.mobile-menu .menu-item-has-children > a:after{
	display: none;
}
/* simple wp member */
.swpm-login-widget-form input[type="text"],
.swpm-login-widget-form input[type="password"],
.swpm-pw-reset-widget-form input[type="text"],
.swpm-validate-form input[type="text"], 
.swpm-validate-form input[type="password"]{
	width: 100%;
}
input.swpm-buy-now-button-submit{
	min-width: 10rem;
	justify-content: center;
	color: #fff;
	background-color: var(--color-primary);
}
.swpm-validate-form table{
	margin-bottom: 0;
}
.swpm-password-input,
.swpm-validate-form td{
	position: relative;
}
.swpm-validate-form th,
.swpm-validate-form td{
	display: block;
	border: none;
	padding: 0;
}
.swpm-validate-form tr{
	display: block;
	margin-bottom: 1rem;
}
.swpm-edit-profile-submit-section,
.swpm-registration-submit-section{
	text-align: inherit !important;
}
.swpm-remember-me{
	margin-bottom: 1rem;
}
.swpm-registration-widget-form .formError{
	display: none !important;
}
.formError .formErrorArrow div,
.formError .formErrorContent{
	box-shadow: none !important;
	border: none !important;
}
/* responsive */
@media (min-width: 360px){
	.site-header .secondary-menu{
		display: block;
	}
	.site-header .nav > li.menu-has-icon{
		min-width: 2.5rem;
		justify-content: center;
	}
}

@media (max-width: 359px){
	.user-info,
	.user-meta{
		display: block;
	}
}

@media (min-width: 600px){
	.site-header .search-form{
		margin: 0 1rem;;
	}
	.archive-content-column{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 599px){
	.mobile-menu{
		display: block;
	}
	.with-mobile-menu{
		--mobile-menu-height: 3rem;
	}
	.plyr-playlist{
		bottom: var(--mobile-menu-height);
	}
	.site-header .search-form{
		flex: inherit;
		margin: 0 0.5rem;
		background-color: transparent;
		padding: 0;
		margin: 0;
	}
	.site-header .search-form input{
		display: none;
	}
	.site-header .flex ~ .flex{
		display: none;
	}
	.comment-list .children .children .comment{
		margin-left: 0;
		margin-right: 0;
	}
	.hide-sm{
		display: none;
	}
	.no-float-sm{
		float: none;
	}
	.align-center-sm,
	.text-center-sm{
		text-align: center;
		justify-content: center !important;
	}
	.wp-block-columns.column-sm-2 > .wp-block-column {
	    flex-basis: calc(50% - var(--column-gap)) !important;
	}
	.wp-block-columns.column-sm-1 > .wp-block-column {
	    flex-basis: 100% !important;
	}
}

@media (max-width: 781px){
	h1.entry-title{
		font-size: 2rem;
	}
	.site-brand{
		min-width: auto;
	}
	.admin-bar .site-header{
		top: 0;
		position: relative;
	}
	.admin-bar .site-sidebar{
		top: 0;
		z-index: 100000;
	}
	.admin-bar .site-content{
		margin-top: 0;
	}
	.site-sidebar{
		transform: translate3d(var(--offcanvas), 0, 0);
	}
	.site-sidebar .site-brand{
		display: flex;
		align-items: center;
	}
	#menu-state:checked ~ .site-header .menu-toggle {
	    background-color: rgba(0,0,0,0.5);
	    position: fixed;
	    z-index: 990;
	    left: 0;
	    top: 0;
	    width: 100%;
	    height: 100%;
	}
	#menu-state:checked ~ .site-sidebar{
		top: 0;
		padding-top: 0;
		z-index: 100000;
		transform: none !important;
		width: 300px;
	}
	.site-header .menu-avatar > a > span:not(.avatar),
	.site-header .nav > .menu-has-icon > a > span{
		display: none;
	}
	.site-header .menu-has-icon.btn-link a{
		padding-left: 0;
		padding-right: 0;
		min-width: 30px;
		text-align: center;
		justify-content: center;
	}
	#icon-nav{
		display: block;
		padding: 0 0.5rem;
		font-size: 12px;
		min-height: var(--navbar-height);
		line-height: var(--navbar-height);
	}
	.site-header .secondary-menu .nav{
		padding: 0;
		border-radius: 0;
		min-width: 10rem;
		display: block;
		opacity: 0;
		transform: translate3d(0, 2rem, 0);
		transition: opacity .5s 0.25s cubic-bezier(0.52, 0.16, 0.24, 1), transform .5s 0.25s cubic-bezier(0.52, 0.16, 0.24, 1);
	}
	.site-header .secondary-menu .nav li{
		flex-direction: column;
		align-items: stretch;
	}
	.site-header .secondary-menu .nav a{
		padding: 0.75rem 1rem;
	}
	.site-header .secondary-menu > div > .nav > li > a{
		border-top: 1px solid rgba(140,150,160,0.1);
	}
	.site-header .secondary-menu > div{
		height: 0;
		overflow: hidden;
		position: absolute;
		right: 0;
		left: 0;
		top: 100%;
		background-color: var(--sub-menu-color, #fff);
    	transition: height .35s cubic-bezier(0.52, 0.16, 0.24, 1);
    	-webkit-overflow-scrolling: touch;
	    overflow: -moz-scrollbars-none;
	    -ms-overflow-style: none;
	}
	.site-header .secondary-menu.current-menu-ancestor > div{
		height: calc(100vh - var(--navbar-height));
		overflow-y: auto;
		padding-bottom: 4rem;
	}
	.site-header .secondary-menu.current-menu-ancestor .nav{
		opacity: 1;
		transform: none;
	}
	.site-header .secondary-menu .sub-menu{
		transform: none;
		position: static;
		padding: 0;
		box-shadow: none;
		left: 0;
	}
	.site-header .secondary-menu .menu-item-has-children > a:after{
		margin-inline-start: auto;
		-webkit-margin-start: auto;
	}
	.nav-links .prev span, 
	.nav-links .next span{
		display: none;
	}
	.hide-md{
		display: none;
	}
	.wp-block-columns.column-md-2 > .wp-block-column {
	    flex-basis: calc(50% - var(--column-gap)) !important;
	}
	.wp-block-columns.column-md-1 > .wp-block-column {
	    flex-basis: 100% !important;
	}
}

@media (max-width: 991px){
	.wp-block-columns.column-lg-2 > .wp-block-column {
	    flex-basis: calc(50% - var(--column-gap)) !important;
	}
	.wp-block-columns.column-lg-1 > .wp-block-column {
	    flex-basis: 100% !important;
	}
}

@media (max-width: 1200px){
	.wp-block-columns[class*="column-"]{
		flex-wrap: wrap !important;
	}
	.wp-block-columns.column-xl-1 > .wp-block-column {
	    flex-basis: 100% !important;
	}
	.wp-block-columns.column-xl-2 > .wp-block-column {
	    flex-basis: calc(50% - var(--column-gap)) !important;
	}
}

@media (min-width: 782px){
	.site-sidebar ~ .site-content,
	.site-sidebar ~ .site-footer{
		margin-inline-start: var(--side-width);
		-webkit-margin-start: var(--side-width);
	}
	#menu-state:checked ~ .site-content,
	#menu-state:checked ~ .site-footer{
		margin-left: 0;
		margin-right: 0;
	}
	#menu-state:checked ~ .site-sidebar .hide-menu-folded{
		display: none;
	}

	.hide-sidenav ~ .site-sidebar{
		transform: translate3d(var(--offcanvas), 0, 0);
	}
	.hide-sidenav ~ .site-content,
	.hide-sidenav ~ .site-footer{
		margin-left: 0;
		margin-right: 0;
	}
	#menu-state.hide-sidenav:checked ~ .site-sidebar{
		transform: none;
	}
	#menu-state.hide-sidenav:checked ~ .site-content,
	#menu-state.hide-sidenav:checked ~ .site-footer{
		margin-inline-start: var(--side-width);
		-webkit-margin-start: var(--side-width);
	}

	.site-header .search-form{
		margin: 0 2rem;
		max-width: 35rem;
	}
	.menu-mega .sub-menu .sub-menu{
		display: block;
		position: static;
		padding: 0;
		box-shadow: none;
	}
	.menu-mega:hover > .sub-menu,
	.menu-mega.active > .sub-menu{
		display: flex !important;
		flex-wrap: wrap;
		width: 21rem;
	}
	.menu-mega > .sub-menu > li{
		width: 10rem;
	}
	.menu-mega-3 > .sub-menu{
		width: 31rem !important;
	}
	.menu-mega-4 > .sub-menu{
		width: 41rem !important;
	}
	#commentform{
		display: flex;
		flex-wrap: wrap;
	}
	.comment-form-cookies-consent,
	.comment-message{
		width: 100%;
	}
	.comment-form .comment-form-author, 
	.comment-form .comment-form-email,
	.comment-form .comment-form-url{
		width: calc(33.33% - 0.75rem);
	}
	.comment-form .comment-form-email {
		width: calc(33.33% + 1.5rem);
	    padding: 0 1rem;
	}
	.has-medium-gap{
		gap: 4rem;
	}
	.nav .menu-item-has-children.no-toggle > a:after{
		display: none;
	}
}

@media (min-width: 992px){
	h1, .h1{
		font-size: 3rem;
	}
	.with-sidebar .content-area,
	.with-sidebar .entry-content-wrap{
		display: flex;
	}
	.with-sidebar .site-main,
	.with-sidebar .entry-content-inner{
		flex: 1;
		width: 1%;
	}
	.sidebar{
	    flex-shrink: 0;
	    width: var(--sidebar-width);
	    margin-inline-start: 2rem;
	    -webkit-margin-start: 2rem;
	}
	.content-area > .sidebar{
		margin: 0;
		margin-inline-end: 2rem;
		-webkit-margin-end: 2rem;
	}
	.with-sidebar .entry-content-inner .wp-block-loop:not(.block-loop-row){
		--loop-columns: 3;
	}
}

@media (min-width: 1660px){
	#menu-state:checked ~ .site-content{
		--side-width: 0rem;
	}
	.site-header .site-brand + .flex{
		flex: 2;
	}
	.entry-content > .alignleft{
		position: absolute;
		right: calc(( 100vw - var(--content-width) - var(--side-width) ) / 2 + var(--content-width));
    	margin-left: -13rem;
    	max-width: 11rem;
    	height: auto;
	}
	.entry-content > .alignright{
		position: absolute;
		left: calc(( 100vw - var(--content-width) + var(--side-width) ) / 2 + var(--content-width));
    	margin-right: -13rem;
    	max-width: 11rem;
    	height: auto;
	}
}

/* Category pages and Sidebar styling */

/* Parent container for grid layout, takes up full viewport height */
.custom-product-category-page {
    display: grid;
    grid-template-columns: 200px 1fr; /* Sidebar at 200px, content takes the rest */
    min-height: 100vh; /* Full viewport height */
    box-sizing: border-box;
}

/* Sidebar styling, sticks to the top of the viewport, full viewport height, independent scrolling */
.product-category-sidebar {
    background-color: #252525;
    position: sticky;
    top: 0; /* Stick to the top of the viewport */
    height: 100vh; /* Full viewport height */
    overflow-y: auto; /* Independent scrolling */
    box-sizing: border-box;
    z-index: 1;
    
    /* Modern Scrollbar Styling */
    scrollbar-width: thin; /* Firefox */
    scrollbar-color: #494949 #242424; /* Firefox */
}

/* Webkit (Chrome, Safari, Edge) scrollbar styling */
.product-category-sidebar::-webkit-scrollbar {
    width: 7px;
}

.product-category-sidebar::-webkit-scrollbar-track {
    background: #242424;
}

.product-category-sidebar::-webkit-scrollbar-thumb {
    background-color: #494949;
    border-radius: 10px;
}

/* Hidden scrollbar by default, visible on hover with thinner appearance and rounded corners */
.product-category-sidebar {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */
}

.product-category-sidebar::-webkit-scrollbar {
    width: 0; /* Chrome, Safari, Opera */
    display: none;
}

.product-category-sidebar:hover {
    scrollbar-width: thin; /* Firefox */
    -ms-overflow-style: auto; /* IE and Edge */
}

.product-category-sidebar:hover::-webkit-scrollbar {
    width: 7px;
    display: block;
}

.product-category-sidebar:hover::-webkit-scrollbar-thumb {
    background-color: rgb(73, 73, 73);
    border-radius: 10px;
}

.product-category-sidebar:hover::-webkit-scrollbar-track {
    background-color: #242424;
}



/* Main content and footer area styling */
.main-content-and-footer {
    display: flex; /* Flex container for main content and footer */
    flex-direction: column; /* Stack items vertically */
    box-sizing: border-box; /* Include padding and border in element's total width and height */
}

/* Main content styling */
.product-category-main-content {
    padding: 20px; /* Top and bottom padding for main content */
    box-sizing: border-box; /* Include padding and border in element's total width and height */
    overflow-y: auto; /* Independent scrolling for main content */
}

/* Footer styling */
.product-category-footer {
    background-color: #121212; /* Dark grey footer background color */
    padding: 20px; /* Top and bottom padding for footer */
    text-align: center; /* Centered text in footer */
    box-sizing: border-box; /* Include padding and border in element's total width and height */
}

/* Truendo text colour */
p.tru_cookie-dialog_message.mdc-typography--body2 {
    color: white !important;
}

h1.mdc-typography--headline5   {
    color: white !important;
}