/* Main theme styles */
:root {
	--color-primary: #111111;
	--color-secondary: #666666;
	--color-body: #111111;
	--color-site-background: #ffffff;
	--color-white: #ffffff;
	--site-content-width: 1200px;
	--site-padding-top: 16px;
	--site-padding-right: 16px;
	--site-padding-bottom: 16px;
	--site-padding-left: 16px;
	--font-primary-family: Arial, sans-serif;
	--font-primary-size: 32px;
	--font-primary-weight: 700;
	--font-primary-transform: none;
	--font-primary-style: normal;
	--font-primary-line-height: 1.2;
	--font-secondary-family: Arial, sans-serif;
	--font-secondary-size: 24px;
	--font-secondary-weight: 400;
	--font-secondary-transform: none;
	--font-secondary-style: normal;
	--font-secondary-line-height: 1.3;
	--font-secondary-2-family: Arial, sans-serif;
	--font-secondary-2-size: 16px;
	--font-secondary-2-weight: 400;
	--font-secondary-2-transform: none;
	--font-secondary-2-style: normal;
	--font-secondary-2-line-height: 1.5;
	--font-body-family: Arial, sans-serif;
	--font-body-size: 16px;
	--font-body-weight: 400;
	--font-body-transform: none;
	--font-body-style: normal;
	--font-body-line-height: 1.5;
	--font-dida-family: Arial, sans-serif;
	--font-dida-size: 14px;
	--font-dida-weight: 400;
	--font-dida-transform: none;
	--font-dida-style: normal;
	--font-dida-line-height: 1.4;
	--font-arrow-family: "Times New Roman", serif;
	--site-header-main-padding-y: 0.75rem;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	min-height: 100vh;
	min-height: 100dvh;
	display: flex;
	flex-direction: column;
	font-family: var(--font-body-family);
	font-size: var(--font-body-size);
	font-weight: var(--font-body-weight);
	text-transform: var(--font-body-transform);
	font-style: var(--font-body-style);
	line-height: var(--font-body-line-height);
	color: var(--color-body);
	background: var(--color-site-background);
	scrollbar-width: none;
	-ms-overflow-style: none;
}

body::-webkit-scrollbar {
	display: none;
}

html {
	scrollbar-width: none;
	-ms-overflow-style: none;
	font-synthesis: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

html::-webkit-scrollbar {
	display: none;
}

::selection {
	background-color: transparent;
	color: red;
}

::-moz-selection {
	background-color: transparent;
	color: red;
}

* {
	scrollbar-width: none;
	-ms-overflow-style: none;
}

*::-webkit-scrollbar {
	display: none;
}

.site-container {
	width: 100%;
	max-width: var(--site-content-width);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--site-padding-left);
	padding-right: var(--site-padding-right);
}

.site-main {
	flex: 1 0 auto;
	padding-top: var(--site-padding-top);
	padding-right: var(--site-padding-right);
	padding-bottom: var(--site-padding-bottom);
	padding-left: var(--site-padding-left);
	max-width: var(--site-content-width);
	margin-left: auto;
	margin-right: auto;
}

.site-footer {
	flex-shrink: 0;
	width: 100%;
	margin-top: 20px;
	padding-top: var(--site-padding-top);
	padding-right: var(--site-padding-right);
	padding-bottom: var(--site-padding-bottom);
	padding-left: var(--site-padding-left);
	color: var(--color-primary);
	background-color: var(--color-site-background);
}

.site-footer__logo {
	width: 100%;
	line-height: 0;
	margin-bottom: 2rem;
}

.site-footer__logo-link {
	display: block;
	width: 100%;
	color: inherit;
	text-decoration: none;
	text-align: center;
}

.site-footer__logo .custom-logo-link {
	display: block;
	width: 100%;
	line-height: 0;
}

.site-footer__logo .custom-logo {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
}

.site-footer__bar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 2rem;
}

.site-footer__nav {
	flex: 0 1 auto;
	line-height: 1;
}

.site-footer__nav--01 {
	margin-right: auto;
}

.site-footer__nav--02 {
	margin-left: auto;
}

.site-footer__nav,
.site-footer__menu,
.site-footer__menu li,
.site-footer__menu a,
.site-footer__menu .header-nav-link__label {
	font-family: var(--font-dida-family);
	font-size: var(--font-dida-size);
	font-weight: var(--font-dida-weight);
	text-transform: var(--font-dida-transform);
	font-style: var(--font-dida-style);
	line-height: var(--font-dida-line-height);
	color: var(--color-primary);
}

.site-footer__menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-footer__menu--01 {
	justify-content: flex-start;
}

.site-footer__menu--02 {
	justify-content: flex-end;
}

.site-footer__menu li {
	flex: 0 0 auto;
}

.site-footer__menu a {
	box-sizing: content-box;
	color: inherit;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
}

.site-footer__menu .header-nav-link__label {
	display: block;
	color: inherit;
}

.site-footer__menu a:is(:hover, :active, :focus-visible) .header-nav-link__label,
.site-footer__menu .current-menu-item > a .header-nav-link__label,
.site-footer__menu .current-menu-ancestor > a .header-nav-link__label,
.site-footer__menu .current_page_item > a .header-nav-link__label,
.site-footer__menu .current_page_ancestor > a .header-nav-link__label,
.site-footer__menu a[aria-current="page"] .header-nav-link__label {
	font-style: italic;
}

.site-header-wrapper {
	position: sticky;
	top: 0;
	z-index: 1000;
	flex-shrink: 0;
	width: 100%;
}

body.admin-bar .site-header-wrapper {
	top: var(--wp-admin--admin-bar--height, 32px);
}

.pre-header__menu .pre-header__cart-count {
	display: inline;
	margin-left: 0.35em;
}

.pre-header {
	background-color: var(--color-secondary);
	color: var(--color-white, #ffffff);
	line-height: 1;
}

.pre-header__inner {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
}

.pre-header__nav {
	line-height: 1;
}

.pre-header__nav,
.pre-header__menu,
.pre-header__menu li,
.pre-header__menu a,
.pre-header__menu .header-nav-link__label {
	font-family: var(--font-body-family);
	font-size: var(--font-body-size);
	font-weight: var(--font-body-weight);
	text-transform: var(--font-body-transform);
	font-style: var(--font-body-style);
	line-height: var(--font-body-line-height);
}

.pre-header__menu {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.pre-header__menu li {
	flex: 0 0 auto;
}

.pre-header__menu a {
	box-sizing: content-box;
	color: var(--color-white, #ffffff);
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
}

.pre-header__menu .header-nav-link__label {
	display: block;
	color: var(--color-white, #ffffff);
}

.pre-header__menu a:is(:hover, :active, :focus-visible) .header-nav-link__label,
.pre-header__menu .current-menu-item > a .header-nav-link__label,
.pre-header__menu .current-menu-ancestor > a .header-nav-link__label,
.pre-header__menu .current_page_item > a .header-nav-link__label,
.pre-header__menu .current_page_ancestor > a .header-nav-link__label,
.pre-header__menu a[aria-current="page"] .header-nav-link__label {
	font-style: italic;
}

.site-header {
	background-color: var(--color-site-background);
	color: var(--color-primary);
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding-top: var(--site-header-main-padding-y);
	padding-bottom: var(--site-header-main-padding-y);
}

.site-branding {
	flex: 0 0 auto;
	line-height: 0;
}

.site-branding__link {
	color: inherit;
	text-decoration: none;
}

.site-branding .custom-logo-link {
	display: block;
	line-height: 0;
	max-width: 130px;
}

.site-branding .custom-logo {
	display: block;
	width: 100%;
	height: auto;
	max-width: 130px;
}

.site-header__nav,
.site-header__menu,
.site-header__menu li,
.site-header__menu a,
.site-header__menu .header-nav-link__label {
	font-family: var(--font-secondary-family);
	font-size: var(--font-secondary-size);
	font-weight: var(--font-secondary-weight);
	text-transform: var(--font-secondary-transform);
	font-style: var(--font-secondary-style);
	line-height: var(--font-secondary-line-height);
}

.site-header__menu {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 2rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-header__menu li {
	flex: 0 0 auto;
}

.site-header__menu a {
	box-sizing: content-box;
	color: inherit;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
}

.site-header__menu .header-nav-link__label {
	display: block;
}

.site-header__menu a:is(:hover, :active, :focus-visible) .header-nav-link__label,
.site-header__menu .current-menu-item > a .header-nav-link__label,
.site-header__menu .current-menu-ancestor > a .header-nav-link__label,
.site-header__menu .current_page_item > a .header-nav-link__label,
.site-header__menu .current_page_ancestor > a .header-nav-link__label,
.site-header__menu a[aria-current="page"] .header-nav-link__label {
	font-style: italic;
}

.site-header__menu-toggle {
	display: none;
	border: 0;
	margin: 0;
	padding: 0;
	background: none;
	color: inherit;
	cursor: pointer;
	line-height: 1;
}

.site-header__menu-toggle-icon {
	display: block;
}

@media (max-width: 767px) {
	.site-header__menu-toggle {
		display: block;
		flex: 0 0 auto;
	}

	.site-header__nav {
		flex: 0 0 auto;
		margin-left: auto;
	}

	.site-header__menu {
		display: none;
	}

	body.is-mobile-menu-open {
		overflow: hidden;
	}

	body.is-mobile-menu-open .site-header__nav {
		position: fixed;
		inset: 0;
		z-index: 1100;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		background-color: var(--color-white, #ffffff);
		padding: var(--site-padding-top) var(--site-padding-right) var(--site-padding-bottom) var(--site-padding-left);
	}

	body.admin-bar.is-mobile-menu-open .site-header__nav {
		top: var(--wp-admin--admin-bar--height, 32px);
	}

	body.is-mobile-menu-open .site-header__menu-toggle {
		align-self: flex-end;
	}

	body.is-mobile-menu-open .site-header__menu {
		display: flex;
		flex: 1 1 auto;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: 5px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	body.is-mobile-menu-open .site-header__menu,
	body.is-mobile-menu-open .site-header__menu li,
	body.is-mobile-menu-open .site-header__menu a,
	body.is-mobile-menu-open .site-header__menu .header-nav-link__label {
		font-family: var(--font-primary-family);
		font-size: var(--font-primary-size);
		font-weight: var(--font-primary-weight);
		text-transform: var(--font-primary-transform);
		font-style: var(--font-primary-style);
		line-height: var(--font-primary-line-height);
	}

	body.is-mobile-menu-open .site-header__menu li {
		width: 100%;
		flex: 0 0 auto;
	}

	body.is-mobile-menu-open .site-header__menu a {
		width: auto !important;
		white-space: normal;
		color: var(--color-primary);
		display: block;
	}

	.site-footer__bar {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}

	.site-footer__nav--01,
	.site-footer__nav--02 {
		margin-left: 0;
		margin-right: 0;
	}

	.site-footer__menu {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}

	.site-footer__menu--01,
	.site-footer__menu--02 {
		justify-content: flex-start;
	}
}

.woocommerce .pre-header__nav,
.woocommerce .pre-header__menu,
.woocommerce .pre-header__menu li,
.woocommerce .pre-header__menu a,
.woocommerce .pre-header__menu .header-nav-link__label {
	font-family: var(--font-body-family);
	font-size: var(--font-body-size);
	font-weight: var(--font-body-weight);
	text-transform: var(--font-body-transform);
	line-height: var(--font-body-line-height);
	color: var(--color-white, #ffffff);
}

.woocommerce .pre-header__menu a:is(:hover, :active, :focus-visible) .header-nav-link__label,
.woocommerce .pre-header__menu .current-menu-item > a .header-nav-link__label,
.woocommerce .pre-header__menu .current-menu-ancestor > a .header-nav-link__label,
.woocommerce .pre-header__menu .current_page_item > a .header-nav-link__label,
.woocommerce .pre-header__menu .current_page_ancestor > a .header-nav-link__label,
.woocommerce .pre-header__menu a[aria-current="page"] .header-nav-link__label {
	font-style: italic;
}

.woocommerce a.woo-single-gallery__cell--link.font-primary,
.woocommerce a.woo-single-gallery__cell--link.font-primary .woo-single-gallery__link-text {
	font-family: var(--font-primary-family);
	font-size: var(--font-primary-size);
	font-weight: var(--font-primary-weight);
	font-style: var(--font-primary-style);
	line-height: var(--font-primary-line-height);
	text-transform: var(--font-primary-transform);
	color: var(--color-white, #ffffff);
}

.woocommerce a.woo-single-gallery__cell--link.font-primary .woo-single-gallery__arrow {
	font-family: var(--font-arrow-family);
	font-size: inherit;
	line-height: inherit;
	font-style: normal;
	font-weight: 400;
	color: var(--color-white, #ffffff);
}

h1,
.font-primary {
	font-family: var(--font-primary-family);
	font-size: var(--font-primary-size);
	font-weight: var(--font-primary-weight);
	text-transform: var(--font-primary-transform);
	font-style: var(--font-primary-style);
	line-height: var(--font-primary-line-height);
}

h2,
h3,
.font-secondary {
	font-family: var(--font-secondary-family);
	font-size: var(--font-secondary-size);
	font-weight: var(--font-secondary-weight);
	text-transform: var(--font-secondary-transform);
	font-style: var(--font-secondary-style);
	line-height: var(--font-secondary-line-height);
}

.font-secondary-2 {
	font-family: var(--font-secondary-2-family);
	font-size: var(--font-secondary-2-size);
	font-weight: var(--font-secondary-2-weight);
	text-transform: var(--font-secondary-2-transform);
	font-style: var(--font-secondary-2-style);
	line-height: var(--font-secondary-2-line-height);
}

.font-body {
	font-family: var(--font-body-family);
	font-size: var(--font-body-size);
	font-weight: var(--font-body-weight);
	text-transform: var(--font-body-transform);
	font-style: var(--font-body-style);
	line-height: var(--font-body-line-height);
}

small,
.dida,
.font-dida {
	font-family: var(--font-dida-family);
	font-size: var(--font-dida-size);
	font-weight: var(--font-dida-weight);
	text-transform: var(--font-dida-transform);
	font-style: var(--font-dida-style);
	line-height: var(--font-dida-line-height);
	color: var(--color-secondary);
}

.theme-arrow,
.woo-notice__arrow,
.woo-archive-row__arrow,
.woo-single-gallery__arrow {
	font-family: var(--font-arrow-family);
	font-style: normal;
	font-weight: 400;
}

a:where(:not(.button, .custom-logo-link, .added_to_cart, .remove, .wc-forward, .pre-header__menu a, .site-header__menu a, .site-footer__menu a, .site-footer__logo-link, .woo-single-gallery__cell--link)):hover,
a:where(:not(.button, .custom-logo-link, .added_to_cart, .remove, .wc-forward, .pre-header__menu a, .site-header__menu a, .site-footer__menu a, .site-footer__logo-link, .woo-single-gallery__cell--link)):active,
a:where(:not(.button, .custom-logo-link, .added_to_cart, .remove, .wc-forward, .pre-header__menu a, .site-header__menu a, .site-footer__menu a, .site-footer__logo-link, .woo-single-gallery__cell--link)):focus-visible {
	font-style: italic;
}

.pre-header__menu a:where(:hover, :active, :focus-visible),
.pre-header__menu .current-menu-item > a,
.pre-header__menu .current-menu-ancestor > a,
.pre-header__menu .current_page_item > a,
.pre-header__menu .current_page_ancestor > a,
.pre-header__menu a[aria-current="page"],
.woocommerce .pre-header__menu a:where(:hover, :active, :focus-visible),
.woocommerce .pre-header__menu .current-menu-item > a,
.woocommerce .pre-header__menu .current-menu-ancestor > a,
.woocommerce .pre-header__menu .current_page_item > a,
.woocommerce .pre-header__menu .current_page_ancestor > a,
.woocommerce .pre-header__menu a[aria-current="page"] {
	color: var(--color-white, #ffffff);
}

.site-header__menu a:where(:hover, :active, :focus-visible),
.site-header__menu .current-menu-item > a,
.site-header__menu .current-menu-ancestor > a,
.site-header__menu .current_page_item > a,
.site-header__menu .current_page_ancestor > a,
.site-header__menu a[aria-current="page"],
.site-branding__link:where(:hover, :active, :focus-visible) {
	color: inherit;
}

.site-main a:where(:not(.button)):where(:hover, :active, :focus-visible) {
	color: inherit;
}
