/* =========================
   ZOBACZ WIECEJ TYPOGRAPHY
   ========================= */

.yokuchi-home-more,
.yokuchi-products__more,
.yokuchi-inspiration__more,
.yokuchi-related-more,
.yokuchi-read-more,
.yokuchi-blog-load-more,
.yokuchi-load-more,
.yokuchi-cooperate__button,
.yokuchi-contact-section__button {
	font-family:
		Inter,
		-apple-system,
		BlinkMacSystemFont,
		'Segoe UI',
		sans-serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 500 !important;
	letter-spacing: 2px !important;
}

footer .yokuchi-footer-social a,
.yokuchi-site-footer .yokuchi-footer-social a {
	width: 35px !important;
	height: 35px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 0 !important;
	background: transparent !important;
	overflow: hidden !important;
}

footer .yokuchi-footer-social a::before,
footer .yokuchi-footer-social a::after,
.yokuchi-site-footer .yokuchi-footer-social a::before,
.yokuchi-site-footer .yokuchi-footer-social a::after {
	content: none !important;
	display: none !important;
}

footer .yokuchi-footer-social img,
.yokuchi-site-footer .yokuchi-footer-social img {
	width: 35px !important;
	height: 35px !important;
	display: block !important;
	object-fit: contain !important;
}

footer .yokuchi-footer-col li,
footer .yokuchi-footer-col a,
.yokuchi-site-footer .yokuchi-footer-col li,
.yokuchi-site-footer .yokuchi-footer-col a {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #6e6e6e !important;
	font-family:
		Inter,
		-apple-system,
		BlinkMacSystemFont,
		'Segoe UI',
		sans-serif !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0 !important;
	line-height: 34px !important;
	list-style: none !important;
	outline: 0 !important;
	padding: 0 !important;
	text-decoration: none !important;
	text-transform: none !important;
}

footer .yokuchi-footer-col li,
.yokuchi-site-footer .yokuchi-footer-col li {
	display: block !important;
	margin: 0 !important;
}

footer .yokuchi-footer-col a,
.yokuchi-site-footer .yokuchi-footer-col a {
	display: inline-block !important;
}

footer .yokuchi-footer-col a:hover,
footer .yokuchi-footer-col a:focus,
footer .yokuchi-footer-col a:focus-visible,
.yokuchi-site-footer .yokuchi-footer-col a:hover,
.yokuchi-site-footer .yokuchi-footer-col a:focus,
.yokuchi-site-footer .yokuchi-footer-col a:focus-visible {
	border: 0 !important;
	box-shadow: none !important;
	color: #2b2b2b !important;
	outline: 0 !important;
	text-decoration: none !important;
}

footer .yokuchi-footer-col li::marker,
.yokuchi-site-footer .yokuchi-footer-col li::marker {
	content: '' !important;
}

footer .yokuchi-footer-col li::before,
footer .yokuchi-footer-col li::after,
footer .yokuchi-footer-col a::before,
footer .yokuchi-footer-col a::after,
.yokuchi-site-footer .yokuchi-footer-col li::before,
.yokuchi-site-footer .yokuchi-footer-col li::after,
.yokuchi-site-footer .yokuchi-footer-col a::before,
.yokuchi-site-footer .yokuchi-footer-col a::after {
	content: none !important;
	display: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

body .linguise_switcher_root:not(.linguise_menu_root),
body .linguise_switcher[style*='position: fixed'],
body .linguise_switcher[style*='position:fixed'] {
	display: none !important;
}

body > #gt_float_wrapper {
	display: none !important;
}

.site-header .linguise_switcher,
.site-header .linguise_switcher_root {
	display: flex !important;
}

@media (min-width: 782px) and (max-width: 1320px) {
	body .site-header,
	body.home .site-header,
	body.front-page .site-header,
	body.page-template-page-yokuchi-home .site-header,
	body.yokuchi-header-at-top .site-header,
	body.yokuchi-header-scrolled .site-header,
	body.yokuchi-menu-open .site-header {
		display: block !important;
		box-sizing: border-box !important;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		background: #fff !important;
		border-bottom: 1px solid rgba(20, 21, 21, 0.08) !important;
		box-shadow: none !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	body {
		padding-top: 64px;
	}

	body .site-header > .site-header__inner,
	body .site-header > .yokuchi-shell,
	body .site-header > .site-header__inner.yokuchi-shell {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding-inline: 16px !important;
	}
}

@media (max-width: 781px) {
	.yokuchi-product-card .yokuchi-product-card__button {
		width: fit-content !important;
		justify-content: flex-start !important;
		align-self: flex-start !important;
		text-align: left !important;
	}
}

@media (max-width: 781px) {
	.yokuchi-products-grid,
	.woocommerce ul.products.yokuchi-products-grid,
	.woocommerce-page ul.products.yokuchi-products-grid {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	.yokuchi-products__track {
		display: grid !important;
		width: 100% !important;
		gap: 14px !important;
		padding-right: 0 !important;
	}

	.yokuchi-products__viewport {
		overflow: visible !important;
	}

	.yokuchi-product-card,
	.woocommerce ul.products .yokuchi-product-card,
	.woocommerce-page ul.products .yokuchi-product-card,
	.yokuchi-products__track .yokuchi-product-card,
	.yokuchi-related-grid .yokuchi-product-card {
		display: flex;
		flex-direction: row !important;
		gap: 18px !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		flex: 0 0 auto !important;
		align-items: center !important;
		margin: 0 !important;
		padding: 12px !important;
		box-sizing: border-box !important;
		background: #fff !important;
		border: 0 !important;
		box-shadow: none !important;
		scroll-snap-align: none !important;
	}

	.yokuchi-product-card__image {
		flex: 0 0 120px !important;
		width: 120px !important;
		height: 120px !important;
		aspect-ratio: 1 / 1 !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.yokuchi-product-card__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		transform: none !important;
	}

	.yokuchi-product-card__content {
		display: flex !important;
		flex: 1 1 0 !important;
		min-width: 0 !important;
		height: 100% !important;
		flex-direction: column !important;
		justify-content: center !important;
		gap: 10px;
		padding: 0 !important;
	}

	.yokuchi-product-card__title {
		min-height: 0 !important;
		margin: 0 0 12px !important;
		font-family:
			Inter,
			-apple-system,
			BlinkMacSystemFont,
			'Segoe UI',
			sans-serif !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		font-style: normal !important;
		line-height: 24px !important;
		letter-spacing: 0 !important;
		text-transform: none !important;
	}

	.yokuchi-product-card__title a {
		color: #222 !important;
		text-decoration: none !important;
	}

	.yokuchi-product-card__button {
		display: inline-flex !important;
		width: fit-content !important;
		min-height: 0 !important;
		max-width: 100% !important;
		align-items: center !important;
		justify-content: flex-start !important;
		align-self: flex-start !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		color: #2b2b2b !important;
		font-family:
			Inter,
			-apple-system,
			BlinkMacSystemFont,
			'Segoe UI',
			sans-serif !important;
		font-size: 12px !important;
		font-weight: 500 !important;
		font-style: normal !important;
		line-height: 24px !important;
		letter-spacing: 1px !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: uppercase !important;
	}

	.yokuchi-product-card__arrow,
	.yokuchi-product-card__button-arrow {
		position: static !important;
		color: #e64d4d !important;
		font-size: 14px !important;
		line-height: 1 !important;
	}
}

@media (max-width: 781px) {
	.wp-block-buttons,
	.wp-block-button,
	.yokuchi-blog-load-more-wrap,
	.yokuchi-load-more-wrap {
		width: 100% !important;
	}

	.wp-block-buttons {
		align-items: stretch !important;
	}

	.yokuchi-home-more,
	.yokuchi-products__more,
	.yokuchi-inspiration__more,
	.yokuchi-related-more,
	.yokuchi-read-more,
	.yokuchi-blog-load-more,
	.yokuchi-load-more {
		display: flex !important;
		width: 100% !important;
		max-width: none !important;
		min-height: 44px !important;
		box-sizing: border-box !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 12px !important;
		padding: 0 22px !important;
		border: 1px solid #888 !important;
		background: transparent !important;
		color: #222 !important;
		font-family:
			Inter,
			-apple-system,
			BlinkMacSystemFont,
			'Segoe UI',
			sans-serif !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		line-height: 24px !important;
		letter-spacing: 2px !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: uppercase !important;
		white-space: normal !important;
	}

	input[type='button'],
	input[type='submit'],
	.button,
	.wp-block-button__link,
	.wp-element-button,
	.yokuchi-cooperate__button,
	.yokuchi-contact-section__button,
	.yokuchi-hero__button,
	.yokuchi-universal-hero__button,
	.yokuchi-comments__load-more,
	.yokuchi-contact__form button[type='submit'],
	.yokuchi-newsletter-form button,
	.yokuchi-home-form button,
	.yokuchi-distributors-map__map #wpsl-search-btn {
		display: flex !important;
		width: 100% !important;
		max-width: none !important;
		box-sizing: border-box !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
	}

	.yokuchi-filter,
	.yokuchi-blog-filter {
		width: auto !important;
		max-width: none !important;
		flex: 0 0 auto !important;
		justify-content: center !important;
	}
}

@media (max-width: 781px) {
	body .yokuchi-home-hero {
		position: relative !important;
		height: calc(100svh - 64px) !important;
		min-height: calc(100svh - 64px) !important;
		max-height: none !important;
		aspect-ratio: auto !important;
		background-color: #fff !important;
		background-image: var(
			--yokuchi-home-hero-mobile-bg,
			var(--yokuchi-home-hero-bg)
		) !important;
		background-position: center center !important;
		background-repeat: no-repeat !important;
		background-size: cover !important;
		overflow: hidden !important;
	}

	body .yokuchi-home-hero::before {
		content: '' !important;
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		z-index: 0 !important;
		display: block !important;
		background-image: var(
			--yokuchi-home-hero-mobile-bg,
			var(--yokuchi-home-hero-bg)
		) !important;
		background-position: center center !important;
		background-repeat: no-repeat !important;
		background-size: cover !important;
		pointer-events: none !important;
	}

	body .yokuchi-home-hero .wp-block-cover__inner-container {
		position: relative !important;
		z-index: 1 !important;
	}

	body .yokuchi-home-hero__background {
		position: absolute !important;
		inset: 0 !important;
		z-index: 0 !important;
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		pointer-events: none !important;
	}

	body .yokuchi-home-hero__background img {
		position: absolute !important;
		inset: 0 !important;
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		object-position: center center !important;
	}

	body .site-header,
	body.home .site-header,
	body.front-page .site-header,
	body.page-template-page-yokuchi-home .site-header,
	body.yokuchi-header-at-top .site-header,
	body.yokuchi-header-scrolled .site-header,
	body.yokuchi-menu-open .site-header {
		display: block !important;
		box-sizing: border-box !important;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		background: #fff !important;
		border-bottom: 1px solid rgba(20, 21, 21, 0.08) !important;
		box-shadow: none !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	body {
		padding-top: 64px;
	}

	body.admin-bar .site-header {
		top: 46px !important;
	}

	body.admin-bar {
		padding-top: 110px;
	}

	body .site-header > .site-header__inner,
	body .site-header > .yokuchi-shell,
	body .site-header > .site-header__inner.yokuchi-shell {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding-inline: 16px !important;
	}
}
.grecaptcha-badge {
	display: none !important;
}

/* Privacy policy imported from the client's formatted document. */
.yokuchi-privacy-policy {
	box-sizing: border-box;
	width: min(100% - 40px, 1040px);
	margin: 0 auto;
	padding: clamp(56px, 7vw, 104px) 0;
	color: #555;
	font-size: 16px;
	line-height: 1.75;
}
.yokuchi-privacy-policy h1 {
	margin: 0 0 14px;
	color: #242424;
	font-size: clamp(28px, 4vw, 48px);
	font-weight: 500;
	letter-spacing: .15em;
	line-height: 1.2;
	text-transform: uppercase;
}
.yokuchi-privacy-policy > h1 + p { margin: 0 0 6px; font-size: 18px; }
.yokuchi-privacy-policy h2 {
	margin: 64px 0 28px;
	color: #292929;
	font-size: clamp(21px, 2.2vw, 29px);
	font-weight: 500;
	letter-spacing: .08em;
	line-height: 1.3;
}
.yokuchi-privacy-policy h2::after {
	content: "";
	display: block;
	width: 48px;
	height: 2px;
	margin-top: 18px;
	background: #ed1c24;
}
.yokuchi-privacy-policy p { margin: 0 0 18px; }
.yokuchi-privacy-policy ol,
.yokuchi-privacy-policy ul { margin: 0 0 26px; padding-left: 1.65em; }
.yokuchi-privacy-policy ul { list-style: disc; }
.yokuchi-privacy-policy ol { list-style: decimal; }
.yokuchi-privacy-policy li { margin: 0 0 10px; padding-left: .35em; }
.yokuchi-privacy-policy li > p { margin: 0; }
.yokuchi-privacy-policy li > ul,
.yokuchi-privacy-policy li > ol { margin: 12px 0 4px; }
.yokuchi-privacy-policy a { color: #d71920; text-decoration: underline; text-underline-offset: 3px; }
.yokuchi-privacy-policy .yokuchi-policy-table {
	margin: 32px 0 38px;
	overflow-x: auto;
	border: 1px solid #dedbd8;
}
.yokuchi-privacy-policy table {
	width: 100%;
	min-width: 680px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
}
.yokuchi-privacy-policy th,
.yokuchi-privacy-policy td {
	padding: 15px 18px;
	border: 0;
	border-bottom: 1px solid #e6e3e0;
	text-align: left;
	vertical-align: top;
}
.yokuchi-privacy-policy th { background: #f4f1ee; color: #262626; font-weight: 600; }
.yokuchi-privacy-policy tr:last-child td { border-bottom: 0; }
@media (max-width: 700px) {
	.yokuchi-privacy-policy { width: min(100% - 32px, 1040px); font-size: 15px; }
	.yokuchi-privacy-policy h1 { letter-spacing: .09em; }
	.yokuchi-privacy-policy h2 { margin-top: 48px; }
}

/* Astra's content filter closes the outer document wrapper after the title. */
body.page-id-3 .entry-content {
	box-sizing: border-box;
	width: min(100% - 40px, 1040px);
	margin: 0 auto;
	padding: clamp(56px, 7vw, 104px) 0;
	color: #555;
	font-size: 16px;
	line-height: 1.75;
}
body.page-id-3 .entry-content .yokuchi-privacy-policy {
	width: 100%;
	margin: 0;
	padding: 0;
}
body.page-id-3 .entry-content h1 { margin: 0 0 14px; color: #242424; font-size: clamp(28px, 4vw, 48px); font-weight: 500; letter-spacing: .15em; line-height: 1.2; text-transform: uppercase; }
body.page-id-3 .entry-content h2 { margin: 64px 0 28px; color: #292929; font-size: clamp(21px, 2.2vw, 29px); font-weight: 500; letter-spacing: .08em; line-height: 1.3; }
body.page-id-3 .entry-content h2::after { content: ""; display: block; width: 48px; height: 2px; margin-top: 18px; background: #ed1c24; }
body.page-id-3 .entry-content p { margin: 0 0 18px; }
body.page-id-3 .entry-content ol,
body.page-id-3 .entry-content ul { margin: 0 0 26px; padding-left: 1.65em; }
body.page-id-3 .entry-content ul { list-style: disc; }
body.page-id-3 .entry-content ol { list-style: decimal; }
body.page-id-3 .entry-content li { margin: 0 0 10px; padding-left: .35em; }
body.page-id-3 .entry-content li > p { margin: 0; }
body.page-id-3 .entry-content li > ul,
body.page-id-3 .entry-content li > ol { margin: 12px 0 4px; }
body.page-id-3 .entry-content a { color: #d71920; text-decoration: underline; text-underline-offset: 3px; }
body.page-id-3 .entry-content .yokuchi-policy-table { margin: 32px 0 38px; overflow-x: auto; border: 1px solid #dedbd8; }
body.page-id-3 .entry-content table { width: 100%; min-width: 680px; margin: 0; border: 0; border-collapse: collapse; }
body.page-id-3 .entry-content th,
body.page-id-3 .entry-content td { padding: 15px 18px; border: 0; border-bottom: 1px solid #e6e3e0; text-align: left; vertical-align: top; }
body.page-id-3 .entry-content th { background: #f4f1ee; color: #262626; font-weight: 600; }
body.page-id-3 .entry-content tr:last-child td { border-bottom: 0; }
@media (max-width: 700px) {
	body.page-id-3 .entry-content { width: min(100% - 32px, 1040px); font-size: 15px; }
	body.page-id-3 .entry-content h1 { letter-spacing: .09em; }
	body.page-id-3 .entry-content h2 { margin-top: 48px; }
}
