/* Cart page (woocommerce/cart/cart.php) */

.cart-page {
	padding: 32px 100px;
}

.cart-page__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 30px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 24px;
}

.cart-page__items {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0 0 32px;
}

.cart-item__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.cart-item__remove {
	flex-shrink: 0;
	color: #E54545;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	white-space: nowrap;
}

.cart-item__summary {
	border-radius: 8px;
	background: #F6F7F9;
	padding: 10px 12px;
	margin-top: 8px;
}

.cart-item__summary p {
	margin: 0 0 4px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.cart-item__summary p:last-of-type {
	margin-bottom: 8px;
}

.cart-item__edit-link {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.cart-accessories {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
	margin: 0 0 24px;
}

.cart-accessories__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 16px;
}

.cart-accessories__desc {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0 0 16px;
}

.cart-accessories__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}

.cart-accessories__card {
	display: flex;
	align-items: center;
	gap: 12px;
	border-radius: 10px;
	background: #F6F7F9;
	padding: 12px;
}

.cart-accessories__image {
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	border-radius: 8px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.cart-accessories__image img {
	max-width: 70%;
	max-height: 70%;
	object-fit: contain;
}

.cart-accessories__info {
	flex: 1 1 auto;
	min-width: 0;
}

.cart-accessories__name {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.cart-accessories__price {
	margin: 2px 0 0;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.cart-accessories__add,
.cart-accessories__add:hover {
	flex-shrink: 0;
	border-radius: 8px;
	border: 1px solid #CBD0DA;
	background: #FFF;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 8px 16px;
	text-decoration: none;
	cursor: pointer;
}

.cart-notice {
	display: flex;
	align-items: center;
	gap: 10px;
	border-radius: 10px;
	border: 1.5px solid #E4A3A3;
	background: #FEF0F0;
	padding: 14px 16px;
	margin: 0 0 24px;
}

.cart-notice svg {
	flex-shrink: 0;
}

.cart-notice p {
	margin: 0;
	color: #C23434;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.cart-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
}

.cart-footer__continue {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.cart-footer__totals {
	display: flex;
	align-items: center;
	gap: 20px;
}

.cart-footer__subtotal {
	text-align: right;
}

.cart-footer__subtotal-label {
	display: block;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.cart-footer__subtotal-value {
	display: block;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.cart-footer__checkout,
.cart-footer__checkout:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 14px 24px;
	text-decoration: none;
	white-space: nowrap;
}

@media (max-width: 991px) {
	.cart-page {
		padding: 24px 40px;
	}
}

@media (max-width: 575px) {
	.cart-page {
		padding: 16px;
	}

	.cart-page__title {
		font-size: 22px;
	}

	.cart-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.cart-footer__totals {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.cart-footer__subtotal {
		text-align: left;
	}

	.cart-footer__checkout {
		text-align: center;
	}
}

/* Single product page (single-product.php) */

.product-page {
	padding: 32px 100px;
}

.product-page__breadcrumb {
	margin: 0 0 24px;
}

.product-page__breadcrumb-link {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}

.product-page__breadcrumb-sep,
.product-page__breadcrumb-current {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.product-page__breadcrumb-sep {
	margin: 0 6px;
}

.product-page__layout {
	display: grid;
	grid-template-columns: calc(50% - 100px) 1fr;
	gap: 40px;
	align-items: start;
}

.product-page__main-image {
	width: 100%;
	aspect-ratio: 520 / 420;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: radial-gradient(50% 50% at 50% 50%, #FFF 0%, #E2E2E2 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding: 16px;
}

.product-page__main-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.product-page__thumbs {
	display: flex;
	gap: 12px;
	margin-top: 12px;
}

.product-page__thumb,
.product-page__thumb:hover,
.product-page__thumb:focus {
	width: 72px;
	height: 72px;
	flex-shrink: 0;
	border-radius: 10px;
	border: 2px solid transparent;
	background: #FFF;
	padding: 4px;
	cursor: pointer;
	outline: none;
}

.product-page__thumb--active,
.product-page__thumb--active:hover,
.product-page__thumb--active:focus {
	border-color: #243A6E;
}

.product-page__thumb > img {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	background: #E9F0F6;
	object-fit: contain;
	padding: 4px;
}

.product-page__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 28px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 8px;
}

.product-page__meta {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	margin: 0 0 16px;
}

.product-page__meta-sep {
	margin: 0 6px;
}

.product-page__description {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin: 0 0 24px;
}

.product-page__form {
	max-width: 100%;
}

@media (min-width: 992px) {
	.product-page__gallery {
		position: sticky;
		top: 100px;
	}
}

/* Product personalization form */

.product-personalization__notice {
	display: flex;
	align-items: center;
	gap: 10px;
	border-radius: 8px;
	border: 1px solid #E2E4EA;
	background: #EEF0F4;
	padding: 14px 16px;
	margin: 0 0 20px;
}

.product-personalization__notice p {
	margin: 0;
	color: #3A3F49;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.product-personalization__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 16px;
}

.product-personalization__field {
	margin: 0 0 20px;
}

.product-personalization__label {
	display: block;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 8px;
}

.product-personalization__input {
	width: 100%;
	border-radius: 8px !important;
	border: 1px solid #CBD0DA !important;
	background: #FFF !important;
	padding: 10px 12px;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #1F2430;
	box-sizing: border-box;
}

.product-personalization__input--error {
	border-color: #E54545 !important;
}

.product-personalization__hint {
	margin: 6px 0 0;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-weight: 400;
}

.product-personalization__radio-group {
	display: flex;
	gap: 20px;
}

.product-personalization__radio {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
}

.product-personalization__radio input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.product-personalization__radio-dot {
	width: 16px;
	height: 16px;
	border-radius: 999px;
	border: 1.5px solid #9AA0AB;
	background: #FFF;
	flex-shrink: 0;
}

.product-personalization__radio input:checked ~ .product-personalization__radio-dot {
	border: 5px solid #243A6E;
	background: #FFF;
}

.product-personalization__line {
	position: relative;
	margin: 0 0 12px;
}

.product-personalization__line-label {
	display: block;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-weight: 500;
	margin: 0 0 6px;
}

.product-personalization__char-count {
	display: block;
	text-align: right;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 11px;
	margin: 4px 0 0;
}

.product-personalization__char-count--over {
	color: #E54545;
}

.product-personalization__summary {
	border-radius: 8px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 16px;
	margin: 0 0 20px;
}

.product-personalization__summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 500;
	padding: 6px 0;
}

.product-personalization__summary-row--total {
	border-top: 1px solid #E2E4EA;
	margin-top: 6px;
	padding-top: 12px;
	color: #1F2430;
	font-weight: 700;
}

.product-personalization__submit,
.product-personalization__submit:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border: none;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-weight: 600;
	padding: 14px;
	cursor: pointer;
}

@media (max-width: 991px) {
	.product-page {
		padding: 24px 40px;
	}

	.product-page__layout {
		grid-template-columns: 1fr;
	}

	.product-page__main-image {
		width: 100%;
		max-width: 520px;
		height: auto;
		aspect-ratio: 520 / 420;
	}
}

@media (max-width: 575px) {
	.product-page {
		padding: 16px;
	}

	.product-page__name {
		font-size: 22px;
	}

	.product-page__main-image {
		width: 100%;
		max-width: 100%;
	}

	.product-page__form {
		max-width: 100%;
	}
}

/* Product category archive (taxonomy-product_cat.php) */

.category-page {
	padding: 32px 100px;
}

.category-page__breadcrumb {
	margin: 0 0 16px;
}

.category-page__breadcrumb-link {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}

.category-page__breadcrumb-sep {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	margin: 0 6px;
}

.category-page__breadcrumb-current {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.category-page__header {
	display: flex;
	align-items: center;
	gap: 24px;
	margin: 0 0 24px;
}

.category-page__image {
	width: 224px;
	height: 179px;
	flex-shrink: 0;
	border-radius: 10px;
	background: #D9D9D9;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.category-page__image img {
	max-width: 80%;
	max-height: 80%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.category-page__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 30px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0;
}

.category-page__notice,
.category-page__login-banner {
	display: flex;
	align-items: center;
	gap: 10px;
	border-radius: 8px;
	padding: 14px 16px;
	margin: 0 0 16px;
}

.category-page__notice svg,
.category-page__login-banner svg {
	flex-shrink: 0;
}

.category-page__notice {
	border: 1px solid #F2DDB5;
	background: #FAF1DE;
}

.category-page__notice p {
	margin: 0;
	color: #96690F;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.category-page__login-banner {
	border: 1px solid #B8CBE6;
	background: #E6EDF6;
}

.category-page__login-banner p {
	margin: 0;
	color: #285193;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.category-page__login-link {
	color: #285193;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

.category-page__products {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.product-row {
	display: flex;
	align-items: center;
	gap: 20px;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
}

.product-row__image {
	width: 100px;
	height: 100px;
	flex-shrink: 0;
	border-radius: 10px;
	background: #F6F7F9;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px;
}

.product-row__image-inner {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	background: #E9F0F6;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.product-row__image-inner img {
	max-width: 75%;
	max-height: 75%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.product-row__info {
	flex: 1 1 auto;
	min-width: 0;
}

.product-row__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 2px;
}

.product-row__sku {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	margin: 0 0 2px;
}

.product-row__desc {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0;
}

.product-row__action {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}

.product-row__login-link {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	white-space: nowrap;
}

.product-row__price {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	white-space: nowrap;
}

.product-row__button,
.product-row__button:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 10px 16px;
	text-decoration: none;
	white-space: nowrap;
}

@media (max-width: 991px) {
	.category-page {
		padding: 24px 40px;
	}
}

@media (max-width: 575px) {
	.category-page {
		padding: 16px;
	}

	.category-page__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.category-page__image {
		width: 100%;
		height: 160px;
	}

	.category-page__title {
		font-size: 22px;
	}

	.category-page__notice,
	.category-page__login-banner {
		align-items: flex-start;
	}

	.product-row {
		flex-wrap: wrap;
	}

	.product-row__info {
		flex-basis: 100%;
		order: 2;
	}

	.product-row__action {
		flex-basis: 100%;
		order: 3;
		justify-content: space-between;
	}
}

/* Shop catalog [shop_catalog] */

.shop-catalog {
	padding: 32px 100px;
}

.shop-catalog__breadcrumb {
	margin: 0 0 24px;
}

.shop-catalog__breadcrumb-home {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}

.shop-catalog__breadcrumb-sep,
.shop-catalog__breadcrumb-current {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.shop-catalog__breadcrumb-sep {
	margin: 0 6px;
}

.shop-catalog__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 30px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 24px;
}

.shop-catalog__intro {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0 0 24px;
}

.shop-catalog__login-link {
	color: #285193;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

@media (max-width: 991px) {
	.shop-catalog {
		padding: 24px 40px;
	}
}

@media (max-width: 575px) {
	.shop-catalog {
		padding: 16px;
	}

	.shop-catalog__breadcrumb {
		margin: 0 0 16px;
	}

	.shop-catalog__breadcrumb-home,
	.shop-catalog__breadcrumb-sep,
	.shop-catalog__breadcrumb-current {
		font-size: 12px;
	}

	.shop-catalog__title {
		font-size: 22px;
		margin: 0 0 12px;
	}

	.shop-catalog__intro {
		font-size: 14px;
		margin: 0 0 16px;
	}

	.shop-catalog__login-link {
		font-size: 14px;
	}
}

/* Category nav [category_nav] */

.category-nav {
	width: 100%;
	background: #2E4D90;
}

.category-nav__list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 12px 100px;
	gap: 28px;
}

.category-nav__link,
.category-nav__link:hover {
	display: flex;
	align-items: center;
	padding: 1px 0;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.category-nav__link--active,
.category-nav__link--active:hover {
	font-weight: 700;
}

@media (max-width: 767px) {
	.category-nav__list {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding: 10px 16px;
		gap: 20px;
	}
}

/* Login state toggle (used in header: "Log In" button vs [account_nav]) */

body:not(.logged-in) .logged-in-only {
	display: none !important;
}

body.logged-in .logged-out-only {
	display: none !important;
}

body.logged-in #e-n-menu-title-1383 {
	display: none !important;
}

/* Shop by category [shop_by_category] */

.shop-by-category {
	width: 100%;
}

.shop-by-category__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 24px;
}

.shop-by-category__grid {
	--shop-by-category-columns: 3;
	display: grid;
	grid-template-columns: repeat(var(--shop-by-category-columns), 1fr);
	gap: 24px;
}

.shop-by-category__card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 256px;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.shop-by-category__card:hover {
	box-shadow: 0 4px 16px rgba(31, 36, 42, 0.08);
	transform: translateY(-2px);
}

.shop-by-category__image {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #E1E1E1;
	flex: 1 1 auto;
	min-height: 0;
	overflow: hidden;
}

.shop-by-category__image img {
	max-width: 70%;
	max-height: 70%;
	width: auto;
	height: auto;
	object-fit: contain;
}

.shop-by-category__body {
	flex-shrink: 0;
	padding: 16px;
}

.shop-by-category__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 17px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 6px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.shop-by-category__desc {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

@media (max-width: 991px) {
	.shop-by-category__grid {
		--shop-by-category-columns: 2 !important;
	}
}

@media (max-width: 575px) {
	.shop-by-category__title {
		font-size: 20px;
		margin-bottom: 16px;
	}

	.shop-by-category__grid {
		--shop-by-category-columns: 2 !important;
		gap: 16px;
	}

	.shop-by-category__card {
		height: 220px;
	}

	.shop-by-category__body {
		padding: 12px;
	}

	.shop-by-category__name {
		font-size: 16px;
	}
}

/* Account nav [account_nav] */

.account-nav {
	display: flex;
	align-items: center;
	gap: 32px;
}

.account-nav__item {
	display: flex;
	align-items: center;
	gap: 4px;
	text-decoration: none;
}

.account-nav__text {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.account-nav__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: #E54545;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

/* Search bar [search_bar] */

.site-search {
	display: flex;
	align-items: center;
	gap: 10px;
	border-radius: 12px;
	background: #FFF;
	border: 1px solid #E2E4EA;
	padding: 4px 4px 4px 16px;
}

.site-search__icon {
	flex-shrink: 0;
}

.site-search__input {
	flex: 1;
	min-width: 0;
	border: none !important;
	outline: none !important;
	background: transparent;
	color: #171A22;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 0;
}

.site-search__input:focus {
	border-color: transparent !important;
}

.site-search__input::placeholder {
	color: #9AA0AB;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.site-search__input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
}

.site-search__button {
	flex-shrink: 0;
	border: none;
	border-radius: 8px;
	background: #242A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 10px 20px;
	cursor: pointer;
}

.site-search__button:hover,
.site-search__button:focus {
	background: #242A6E;
	color: #FFF;
}

@media (max-width: 575px) {
	.account-nav {
		gap: 20px;
	}

	.account-nav__text {
		display: none;
	}
}

/* Quick cart (mini cart drawer, triggered from [account_nav]) */

.elementor-location-header {
	position: relative;
	z-index: 99000;
}

.elementor-location-header .elementor-sticky:not(.elementor-sticky__spacer) {
	z-index: 99000 !important;
	width: 100% !important;
	left: 0 !important;
	right: 0 !important;
	box-shadow: 0 4px 12px rgba(15, 18, 26, 0.15) !important;
}

.quick-cart-overlay {
	position: fixed;
	top: var(--quick-cart-header-offset, 0px);
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(15, 18, 26, 0.45);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0.25s ease;
	z-index: 90000;
}

.quick-cart-overlay.is-open {
	opacity: 1;
	visibility: visible;
}

.quick-cart {
	position: fixed;
	top: var(--quick-cart-header-offset, 0px);
	right: 0;
	width: min(400px, 100vw);
	height: calc(100vh - var(--quick-cart-header-offset, 0px));
	background: #FFF;
	box-shadow: -8px 0 24px rgba(15, 18, 26, 0.12);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.3s ease;
	z-index: 90001;
}

.quick-cart.is-open {
	transform: translateX(0);
}

body.quick-cart-open {
	overflow: hidden;
}

.quick-cart__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px;
	border-bottom: 1px solid #E2E4EA;
	flex-shrink: 0;
}

.quick-cart__header-left {
	display: flex;
	align-items: center;
	gap: 8px;
}

.quick-cart__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0;
}

.quick-cart__badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #EEF0F4;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 4px 10px;
}

.quick-cart__close,
.quick-cart__close:hover,
.quick-cart__close:focus {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px !important;
	height: 28px !important;
	padding: 0 !important;
	box-sizing: border-box;
	flex-shrink: 0;
	border: none !important;
	border-radius: 999px !important;
	background: #F6F7F9 !important;
	color: #5B6270 !important;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	cursor: pointer;
	text-decoration: none;
}

.quick-cart__body {
	flex: 1;
	overflow-y: auto;
	padding: 0 20px;
}

.quick-cart__empty {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	padding: 40px 0;
}

.quick-cart-item {
	display: flex;
	gap: 12px;
	padding: 16px 0;
	border-bottom: 1px solid #EEF0F4;
}

.quick-cart-item__image {
	width: 56px;
	height: 56px;
	flex-shrink: 0;
	border-radius: 10px;
	border: 1px solid #E2E4EA;
	background: #F6F7F9;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding: 6px;
}

.quick-cart-item__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.quick-cart-item__info {
	flex: 1;
	min-width: 0;
}

.quick-cart-item__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.quick-cart-item__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0;
}

.quick-cart-item__remove {
	flex-shrink: 0;
	color: #C62828;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
	cursor: pointer;
}

.quick-cart-item__meta {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 11.5px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 4px 0 0;
}

.quick-cart-item__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 8px;
}

.quick-cart-item__qty {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 11.5px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.quick-cart-item__price {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	white-space: nowrap;
}

.quick-cart-item__edit,
.quick-cart-item__edit:hover {
	display: inline-block;
	margin-top: 6px;
	color: #242A6E;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.quick-cart__footer {
	flex-shrink: 0;
	border-top: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
}

.quick-cart-footer__subtotal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.quick-cart-footer__subtotal-label {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.quick-cart-footer__subtotal-value {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.quick-cart-footer__note {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 4px 0 0;
}

.quick-cart-footer__checkout,
.quick-cart-footer__checkout:hover {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 16px;
	border: none;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 14px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.quick-cart-footer__view-cart,
.quick-cart-footer__view-cart:hover {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 8px;
	border: none;
	border-radius: 8px;
	background: #FFF;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 14px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

/* WooCommerce "added to cart" notice */

.woocommerce-message {
	outline: none !important;
}

.woocommerce-message a.button.wc-forward,
.woocommerce-message a.button.wc-forward:hover {
	flex-shrink: 0;
	border: none !important;
	border-radius: 8px !important;
	background: #243A6E !important;
	color: #FFF !important;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 10px 18px !important;
	text-decoration: none;
	white-space: nowrap;
}

/* Checkout page (page-checkout.php) */

.checkout-page {
	padding: 32px 100px;
}

.checkout-page__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 26px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin: 0 0 24px;
}

.checkout-page__layout {
	display: grid;
	grid-template-columns: 1fr 410px;
	gap: 24px;
}

.checkout-page__main {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.checkout-card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 24px 24px 24px 24px;
}

.checkout-card__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	margin: 0;
}

.checkout-card__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 17px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 12px;
}

.checkout-card__header .checkout-card__title {
	margin: 0;
}

.checkout-card__badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #EEF0F4;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 11px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	padding: 3px 10px;
}

.checkout-billing {
	white-space: pre-line;
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 160%;
}

.checkout-add-address,
.checkout-add-address:hover,
.checkout-add-address:focus {
	display: inline-block;
	border: none !important;
	background: transparent !important;
	color: #243A6E !important;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 0 !important;
	margin: 0 0 16px;
	cursor: pointer;
}

.checkout-billing--empty {
	color: #5B6270;
	font-weight: 400;
}

.checkout-billing--empty a {
	color: #243A6E;
	font-weight: 600;
}

.checkout-field {
	margin: 0 0 16px;
}

.checkout-field:last-child {
	margin-bottom: 0;
}

.checkout-field-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin: 0 0 16px;
}

.checkout-field-row--three {
	grid-template-columns: 1fr 1fr 1fr;
}

.checkout-field__label {
	display: block;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 6px;
}

.checkout-field__required {
	color: #E54545;
}

.checkout-field__input {
	width: 100%;
	border-radius: 8px !important;
	border: 1px solid #CBD0DA !important;
	background: #FFF !important;
	padding: 10px 12px;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #1F2430;
	box-sizing: border-box;
}

.checkout-field__input::placeholder {
	color: #9AA0AB;
}

.checkout-field__input--textarea {
	min-height: 90px;
	resize: vertical;
}

.checkout-summary {
	position: sticky;
	top: calc(var(--quick-cart-header-offset, 80px) + 24px);
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
}

.checkout-summary__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 16px;
}

.checkout-summary__items {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0 0 16px;
	padding: 0 0 16px;
	border-bottom: 1px solid #E2E4EA;
}

.checkout-summary__item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.checkout-summary__item-name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: 140%;
}

.checkout-summary__item-price {
	flex-shrink: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	white-space: nowrap;
}

.checkout-summary__meta {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 16px;
	padding: 0 0 16px;
	border-bottom: 1px solid #E2E4EA;
}

.checkout-summary__totals {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 16px;
}

.checkout-summary__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.checkout-summary__row-value {
	color: #1F2430;
	font-weight: 600;
	text-align: right;
}

.checkout-summary__row--total {
	padding-top: 8px;
	border-top: 1px solid #E2E4EA;
	color: #1F2430;
	font-size: 20px;
	font-weight: 700;
}

.checkout-summary__row--total span:last-child {
	font-size: 20px;
	font-weight: 700;
	color: #1F2430;
}

.checkout-summary__notice {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	border-radius: 8px;
	border: 1px solid #F3C6C6;
	background: #FEEEEE;
	padding: 12px;
	margin: 0 0 16px;
}

.checkout-summary__notice svg {
	flex-shrink: 0;
	margin-top: 3px;
}

.checkout-summary__notice p {
	margin: 0;
	color: #C23434;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: 140%;
}

.checkout-summary__submit,
.checkout-summary__submit:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border: none;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 14px;
	cursor: pointer;
}

.checkout-summary__footnote {
	margin: 10px 0 0;
	text-align: center;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

@media (max-width: 991px) {
	.checkout-page {
		padding: 24px 40px;
	}

	.checkout-page__layout {
		grid-template-columns: 1fr;
	}

	.checkout-summary {
		position: static;
	}
}

@media (max-width: 575px) {
	.checkout-page {
		padding: 16px;
	}

	.checkout-page__title {
		font-size: 20px;
	}

	.checkout-field-row,
	.checkout-field-row--three {
		grid-template-columns: 1fr;
	}
}

/* Order confirmation (page-checkout.php order-received state) */

.checkout-page--confirmation {
	display: flex;
	justify-content: center;
	padding-top: 60px;
	padding-bottom: 60px;
}

.order-confirmation {
	width: 100%;
	max-width: 720px;
	min-height: 544px;
	border-radius: 16px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 48px;
	box-sizing: border-box;
	text-align: center;
}

.order-confirmation__icon {
	display: flex;
	width: 64px;
	height: 64px;
	justify-content: center;
	align-items: center;
	border-radius: 999px;
	background: #EAF7EE;
	margin: 0 auto 20px;
}

.order-confirmation__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 26px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 12px;
}

.order-confirmation__text {
	color: #5B6270;
	text-align: center;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin: 0 0 20px;
}

.order-confirmation__badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #EEF0F4;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 8px 18px;
	margin: 0 0 24px;
}

.order-confirmation__items {
	border-top: 1px solid #E2E4EA;
	border-bottom: 1px solid #E2E4EA;
	padding-top: 20px;
	padding-bottom: 20px;
	margin: 0 0 16px;
	text-align: left;
}

.order-confirmation__items-label {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 10px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.order-confirmation__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 160%;
}

.order-confirmation__meta {
	text-align: left;
	margin: 0 0 28px;
}

.order-confirmation__meta .order-confirmation__row span:first-child {
	color: #5B6270;
	font-weight: 400;
}

.order-confirmation__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}

.order-confirmation__view,
.order-confirmation__view:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 12px 24px;
	text-decoration: none;
}

.order-confirmation__continue,
.order-confirmation__continue:hover {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

@media (max-width: 575px) {
	.checkout-page--confirmation {
		padding-top: 24px;
		padding-bottom: 24px;
	}

	.order-confirmation {
		padding: 28px 20px;
	}

	.order-confirmation__actions {
		flex-direction: column;
		gap: 12px;
	}

	.order-confirmation__view {
		width: 100%;
	}
}

/* Breadcrumb [breadcrumb] */

.site-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.site-breadcrumb__link {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}

.site-breadcrumb__sep,
.site-breadcrumb__current {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.site-breadcrumb__sep {
	margin: 0 6px;
}

/* Account login page (woocommerce/myaccount/form-login.php) */

body.woocommerce-account:not(.logged-in) .site-main,
body.woocommerce-lost-password .site-main {
	max-width: none !important;
}

.account-login {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 120px 100px;
}

.account-login__card {
	display: flex;
	width: 100%;
	max-width: 1020px;
	min-height: 500px;
	border-radius: 16px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
}

.account-login__promo {
	display: flex;
	flex-direction: column;
	flex: 0 0 360px;
	background: #1E3C70;
	overflow: hidden;
}

.account-login__promo-text {
	padding: 44px 36px;
}

.account-login__promo-title {
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 12px;
}

.account-login__promo-desc {
	color: #BCCBE8;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 0;
}

.account-login__promo-image {
	height: 311px;
	flex-shrink: 0;
	width: 100%;
}

.account-login__promo-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.account-login__panel {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	justify-content: flex-start;
	padding: 48px;
	box-sizing: border-box;
}

.account-login__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 22px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 12px;
}

.account-login__desc {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin: 0 0 24px;
}

.account-login__result {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex: 1 1 auto;
}

.account-login__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #EEF0F3;
	margin: 0 0 20px;
}

.account-login__form {
	border: none !important;
	border-radius: 0 !important;
	background: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.account-login__field {
	margin: 0 0 16px;
}

.account-login__field label {
	display: block;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin: 0 0 6px;
}

.account-login__input {
	width: 100%;
	border-radius: 8px !important;
	border: 1px solid #CBD0DA !important;
	background: #FFF !important;
	padding: 10px 12px;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #1F2430;
	box-sizing: border-box;
}

.account-login__input::placeholder {
	color: #9AA0AB;
}

.account-login__submit,
.account-login__submit:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border: none;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 14px;
	margin: 8px 0 16px;
	text-decoration: none !important;
	cursor: pointer;
}

.account-login__forgot,
.account-login__forgot:hover {
	display: inline-block;
	color: #243A6E !important;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

.account-login__request {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid #E2E4EA;
}

.account-login__request span {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-login__request a,
.account-login__request a:hover {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

@media (max-width: 991px) {
	.account-login {
		padding: 40px;
	}

	.account-login__promo {
		flex-basis: 300px;
	}

	.account-login__panel {
		padding: 32px;
	}
}

@media (max-width: 767px) {
	.account-login {
		padding: 24px 16px;
	}

	.account-login__card {
		flex-direction: column;
		min-height: 0;
	}

	.account-login__promo {
		flex-basis: auto;
	}

	.account-login__promo-text {
		padding: 32px 24px 24px;
	}

	.account-login__promo-image {
		height: 180px;
	}

	.account-login__panel {
		padding: 28px 24px;
	}

	.account-login__title {
		font-size: 20px;
	}

	.account-login__icon {
		width: 52px;
		height: 52px;
	}

	.account-login__icon svg {
		width: 22px;
		height: 22px;
	}
}

/* Account dashboard (woocommerce/myaccount/dashboard.php + nav sidebar) */

body.woocommerce-account.logged-in .site-main {
	max-width: none !important;
}

body.woocommerce-account.logged-in:not(.woocommerce-lost-password) .woocommerce {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
	gap: 24px;
	padding: 16px 100px 40px;
	box-sizing: border-box;
	min-height: calc(100vh - var(--quick-cart-header-offset, 80px) - 140px);
}

.woocommerce-notices-wrapper:empty {
	display: none;
}

.account-dashboard__page-title {
	flex: 1 0 100%;
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.woocommerce-MyAccount-navigation {
	flex: 0 0 240px;
	box-sizing: border-box;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 16px;
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.woocommerce-MyAccount-navigation-link a {
	display: block;
	border-radius: 8px;
	padding: 10px 12px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none;
}

.woocommerce-MyAccount-navigation-link.is-active a {
	border-radius: 8px;
	background: #EEF0F4;
	color: #242A6E;
	font-weight: 600;
}

.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: #C62828;
}

.woocommerce-MyAccount-content {
	flex: 1 1 auto;
	min-width: 0;
}

.account-dashboard {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.account-dashboard__header {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.account-dashboard__title {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-dashboard__subtitle {
	margin: 0;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-dashboard__stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

.account-dashboard__stat-card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 16px;
}

.account-dashboard__stat-title {
	margin: 0 0 8px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.account-dashboard__stat-value {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-dashboard__orders {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
}

.account-dashboard__orders-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px;
}

.account-dashboard__orders-title {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-dashboard__orders-link,
.account-dashboard__orders-link:hover {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
	white-space: nowrap;
}

.account-dashboard__orders-empty {
	margin: 0;
	padding: 0 20px 20px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 14px;
}

.account-dashboard__row {
	display: flex;
	padding: 13px 20px;
	align-items: center;
	gap: 16px;
	align-self: stretch;
	border-top: 1px solid #E2E4EA;
}

.account-dashboard__row--head {
	background: #F6F7F9;
	border-top: none;
}

.account-dashboard__row--head .account-dashboard__cell {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-dashboard__cell {
	flex: 1 1 0;
	min-width: 0;
}

.account-dashboard__cell--order {
	flex: 1.2 1 0;
}

.account-dashboard__cell--view {
	flex: 0 0 50px;
	text-align: right;
}

.account-dashboard__cell--order a {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

.account-dashboard__cell--date {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-dashboard__cell--total {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.account-dashboard__cell--view a {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

.account-dashboard__badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	padding: 4px 10px;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-dashboard__badge--processing {
	background: #E6EDF6;
	color: #3965AB;
}

.account-dashboard__badge--invoiced {
	background: #FAF1DE;
	color: #C08C17;
}

.account-dashboard__badge--paid {
	background: #EAF7EE;
	color: #34A853;
}

.account-dashboard__badge--default {
	background: #EEF0F4;
	color: #5B6270;
}

@media (max-width: 991px) {
	body.woocommerce-account.logged-in:not(.woocommerce-lost-password) .woocommerce {
		padding: 24px 40px;
	}

	.account-dashboard__stats {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	body.woocommerce-account.logged-in:not(.woocommerce-lost-password) .woocommerce {
		flex-direction: column;
	}

	.account-dashboard__page-title {
		flex: none;
		width: 100%;
	}

	.woocommerce-MyAccount-navigation {
		flex-basis: auto;
		width: 100%;
	}

	.woocommerce-MyAccount-content {
		width: 100%;
	}
}

@media (max-width: 575px) {
	body.woocommerce-account.logged-in:not(.woocommerce-lost-password) .woocommerce {
		padding: 16px;
	}

	.account-dashboard__page-title {
		font-size: 20px;
	}

	.account-dashboard__stats {
		grid-template-columns: 1fr;
	}

	.account-dashboard__orders-header {
		flex-wrap: wrap;
	}

	.account-dashboard__row {
		flex-wrap: wrap;
		gap: 6px 16px;
		padding: 12px 16px;
	}

	.account-dashboard__row--head {
		display: none;
	}

	.account-dashboard__cell {
		flex: 1 1 auto;
	}

	.account-dashboard__cell--view {
		text-align: left;
	}
}

/* Account orders list (woocommerce/myaccount/orders.php) */

.account-orders {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.account-orders__title {
	margin: 0;
}

.account-orders__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 16px;
	box-sizing: border-box;
}

.account-orders__search {
	flex: 1 1 240px;
	min-width: 0;
	border-radius: 8px !important;
	border: 1px solid #CBD0DA !important;
	background: #FFF !important;
	padding: 10px 12px;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #1F2430;
	box-sizing: border-box;
}

.account-orders__date {
	flex: 0 0 160px;
	border-radius: 8px !important;
	border: 1px solid #E2E4EA !important;
	background: #F9FAFB !important;
	padding: 10px 14px;
	font-family: Inter, sans-serif;
	font-size: 13px;
	color: #5B6270;
	box-sizing: border-box;
}

.account-orders__date::placeholder {
	color: #9AA0AB;
}

.account-orders__status {
	flex: 0 0 160px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border-radius: 8px !important;
	border: 1px solid #E2E4EA !important;
	background: #F9FAFB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%235B6270' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center !important;
	padding: 10px 32px 10px 14px;
	font-family: Inter, sans-serif;
	font-size: 13px;
	color: #5B6270;
	box-sizing: border-box;
	cursor: pointer;
}

.account-orders__table-card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
}

.account-orders__row {
	display: flex;
	padding: 13px 20px;
	align-items: center;
	gap: 12px;
	align-self: stretch;
	border-top: 1px solid #E2E4EA;
}

.account-orders__row--head {
	background: #F6F7F9;
	border-top: none;
}

.account-orders__row--head .account-orders__cell {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-orders__cell {
	flex: 1 1 0;
	min-width: 0;
}

.account-orders__cell--order {
	flex: 1.2 1 0;
}

.account-orders__cell--actions {
	flex: 1.4 1 0;
	display: flex;
	align-items: center;
	gap: 12px;
	justify-content: flex-end;
}

.account-orders__cell--order a {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

.account-orders__cell--date,
.account-orders__cell--po,
.account-orders__cell--due {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-orders__cell--total {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.account-orders__cell--balance {
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-orders__cell--balance-processing,
.account-orders__cell--balance-invoiced {
	color: #C08C17;
}

.account-orders__cell--balance-paid {
	color: #34A853;
}

.account-orders__cell--actions a {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
	white-space: nowrap;
}

.account-orders__pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px;
	/* Flex items default to min-width:auto, which let a long page list push
	   past the table and stretch the page. Keep it inside the card width. */
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.account-orders__page-gap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 32px;
	color: #9AA0AB;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: normal;
	user-select: none;
}

.account-orders__page-link,
.account-orders__page-link:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 0 10px;
	border-radius: 8px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration: none !important;
	box-sizing: border-box;
}

.account-orders__page-link.is-current,
.account-orders__page-link.is-current:hover {
	background: #243A6E;
	color: #FFF;
	font-weight: 600;
}

.account-orders__page-link.is-disabled {
	opacity: 0.4;
	pointer-events: none;
}

@media (max-width: 991px) {
	.account-orders__date,
	.account-orders__status {
		flex-basis: calc(50% - 6px);
	}
}

@media (max-width: 575px) {
	.account-orders__row {
		flex-wrap: wrap;
		gap: 6px 16px;
		padding: 12px 16px;
	}

	.account-orders__row--head {
		display: none;
	}

	.account-orders__cell {
		flex: 1 1 auto;
	}

	.account-orders__cell--actions {
		justify-content: flex-start;
		flex-basis: 100%;
	}

	.account-orders__date,
	.account-orders__status {
		flex-basis: 100%;
	}
}

/* Account addresses (woocommerce/myaccount/my-address.php) */

.account-addresses {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.account-addresses__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.account-addresses__title {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-addresses__add,
.account-addresses__add:hover {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
	white-space: nowrap;
}

.account-addresses__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.account-addresses__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	border-radius: 10px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 16px 20px;
}

.account-addresses__info {
	min-width: 0;
}

.account-addresses__name-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 4px;
}

.account-addresses__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-addresses__badge {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #EAF7EE;
	color: #34A853;
	font-family: Inter, sans-serif;
	font-size: 11px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 3px 10px;
}

.account-addresses__text {
	margin: 0;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-addresses__actions {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-shrink: 0;
}

.account-addresses__actions a {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
	white-space: nowrap;
}

.account-addresses__delete,
.account-addresses__delete:hover {
	color: #E54545 !important;
}

.account-addresses__card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 24px;
}

.account-addresses__form-title {
	margin: 0 0 20px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 17px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-addresses__checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	cursor: pointer;
}

.account-addresses__form-actions {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 8px;
}

.account-addresses__cancel,
.account-addresses__cancel:hover {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

@media (max-width: 575px) {
	.account-addresses__item {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.account-addresses__actions {
		align-self: flex-start;
	}
}

.account-form__submit,
.account-form__submit:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 8px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 12px 20px;
	cursor: pointer;
}

.account-details__card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 24px;
}

.account-details__title {
	margin: 0 0 20px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 17px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-details__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 16px;
	row-gap: 20px;
}

.account-details__label {
	margin: 0 0 6px;
	color: #9AA0AB;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.account-details__value {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-details__divider {
	height: 1px;
	background: #E2E4EA;
	margin: 24px 0 20px;
}

.account-details__section-label {
	margin: 0 0 16px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.account-details__form .checkout-field-row {
	margin-bottom: 20px;
}

@media (max-width: 767px) {
	.account-details__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.account-details__grid {
		grid-template-columns: 1fr;
	}
}

/* Order details (woocommerce/myaccount/view-order.php) */

.order-details {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.order-details__back {
	display: inline-block;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-decoration: none !important;
}

body.woocommerce-view-order .account-dashboard__page-title,
body.woocommerce-view-order .woocommerce-MyAccount-navigation {
	display: none;
}

.order-details__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
}

.order-details__heading {
	display: flex;
	align-items: center;
	gap: 12px;
}

.order-details__title {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 22px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.order-details__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.order-details__reorder,
.order-details__reorder:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #243A6E;
	border: 1px solid #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 10px 16px;
	text-decoration: none !important;
	white-space: nowrap;
}

.order-details__reorder--outline,
.order-details__reorder--outline:hover {
	background: #FFF;
	color: #243A6E;
}

.order-details__print {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid #243A6E;
	border-radius: 8px;
	background: #FFF;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 10px 16px;
	cursor: pointer;
	white-space: nowrap;
}

.order-details__info-card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	padding: 20px;
}

.order-details__info-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 16px;
	row-gap: 20px;
}

.order-details__info-label {
	margin: 0 0 6px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.order-details__info-value {
	margin: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__info-value--balance-processing,
.order-details__info-value--balance-invoiced {
	color: #C08C17;
}

.order-details__info-value--balance-paid {
	color: #34A853;
}

.order-details__section-title {
	margin: 4px 0 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__items-card {
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
}

.order-details__items-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 20px;
	border-top: 1px solid #E2E4EA;
}

.order-details__items-group:first-child .order-details__items-row {
	border-top: none;
}

.order-details__items-row--head {
	background: #F6F7F9;
	border-top: none;
}

.order-details__items-row--head .order-details__items-cell {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__items-row--toggle {
	cursor: pointer;
}

.order-details__items-cell {
	flex: 1 1 0;
	min-width: 0;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.order-details__items-cell--item {
	flex: 0 0 60px;
	font-weight: 600;
}

.order-details__items-cell--desc {
	flex: 2.4 1 0;
}

.order-details__items-cell--qty {
	flex: 0 0 60px;
}

.order-details__items-cell--unit,
.order-details__items-cell--ext {
	flex: 0 0 90px;
	text-align: right;
}

.order-details__items-cell--unit {
	color: #5B6270;
	font-weight: 400;
}

.order-details__items-cell--ext {
	font-weight: 600;
}

.order-details__items-cell--toggle {
	flex: 0 0 16px;
	text-align: right;
	color: #9AA0AB;
	transform: rotate(0deg);
	transition: transform 0.15s ease;
}

.order-details__items-group.is-open .order-details__items-cell--toggle {
	transform: rotate(90deg);
}

.order-details__items-detail {
	background: #F6F7F9;
	padding: 12px 20px 16px 20px;
}

.order-details__items-group:not(.is-open) .order-details__items-detail {
	display: none;
}

.order-details__items-detail-summary {
	margin: 0 0 8px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.order-details__items-lines {
	display: grid;
	grid-template-columns: repeat(2, max-content);
	grid-auto-flow: column;
	grid-template-rows: repeat(3, auto);
	column-gap: 32px;
	row-gap: 2px;
}

.order-details__items-lines span {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 12.5px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.order-details__bottom {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	align-items: start;
}

.order-details__bottom .checkout-card__title {
	color: #5B6270;
	font-size: 13px;
	font-weight: 600;
	line-height: normal;
}

.order-details__bottom .checkout-billing {
	line-height: normal;
}

.order-details__tracking {
	border-radius: 8px;
	background: #EEF0F4;
	padding: 10px 12px;
	margin-top: 12px;
}

.order-details__tracking-label {
	margin: 0 0 4px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__tracking-value {
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__summary-card {
	position: static;
}

.order-details__summary-card .checkout-summary__row {
	font-size: 14px;
	font-weight: 400;
}

.order-details__summary-card .checkout-summary__row-value {
	font-weight: 500;
}

.order-details__summary-card .checkout-summary__row--total {
	font-size: 15px;
	font-weight: 600;
}

.order-details__balance-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 4px;
}

.order-details__balance-label {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.order-details__balance-value {
	font-family: Inter, sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.order-details__balance-value--processing,
.order-details__balance-value--invoiced {
	color: #C08C17;
}

.order-details__balance-value--paid {
	color: #34A853;
}

.order-details__terms-note {
	margin: 8px 0 0;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

@media (max-width: 991px) {
	.order-details__info-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.order-details__bottom {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.order-details__items-cell--desc {
		flex-basis: 100%;
		order: 1;
	}

	.order-details__items-row {
		flex-wrap: wrap;
	}

	.order-details__items-lines {
		grid-template-columns: 1fr;
		grid-auto-flow: row;
		grid-template-rows: none;
	}
}

@media (max-width: 575px) {
	.order-details__info-grid {
		grid-template-columns: 1fr;
	}

	.order-details__header {
		flex-direction: column;
		align-items: flex-start;
	}

	.order-details__actions {
		width: 100%;
	}

	.order-details__reorder {
		flex: 1 1 auto;
	}
}

@media print {
	.woocommerce-MyAccount-navigation,
	.account-dashboard__page-title,
	.order-details__back,
	.order-details__actions {
		display: none !important;
	}
}

/* Cart line pricing + quantity (Stone order-form business rules, 2026-08-18) */
.cart-item__pricing {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 10px;
}

.cart-item__qty-form {
	display: flex;
	align-items: center;
	gap: 8px;
}

.cart-item__qty-label {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 500;
}

.cart-item__qty-input {
	width: 96px;
	padding: 8px 10px;
	border: 1px solid #CBD0DA;
	border-radius: 8px;
	background: #FFF;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #1F2430;
	box-sizing: border-box;
}

.cart-item__qty-update {
	padding: 8px 14px;
	border: 1px solid #CBD0DA;
	border-radius: 8px;
	background: #F6F7F9;
	color: #243A6E;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
}

.cart-item__qty-update:hover {
	background: #EDEFF3;
}

.cart-item__unit-price {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
}

.cart-item__line-total {
	margin-left: auto;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 15px;
	font-weight: 600;
}

.cart-item__free-note {
	margin: 4px 0 0;
	color: #34A853;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 500;
}

/* Tag inscriptions are engraved in capitals — show what will be stamped. */
.product-personalization__line-input {
	text-transform: uppercase;
}

/* Featured current-year tag band (home, above the category grid). */
.featured-tag {
	max-width: 1200px;
	margin: 0 auto 32px;
	padding: 0 16px;
}

.featured-tag__title {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 24px;
	font-weight: 600;
	margin: 0 0 16px;
}

.featured-tag__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 380px));
	gap: 24px;
}

.featured-tag__card {
	display: flex;
	align-items: stretch;
	border-radius: 12px;
	border: 1px solid #E2E4EA;
	background: #FFF;
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.featured-tag__card:hover {
	box-shadow: 0 4px 16px rgba(31, 36, 42, 0.08);
	transform: translateY(-2px);
}

.featured-tag__image {
	flex: 0 0 140px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F4F5F7;
}

.featured-tag__image img {
	max-width: 100%;
	max-height: 140px;
	object-fit: contain;
}

.featured-tag__body {
	padding: 16px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
}

.featured-tag__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 17px;
	font-weight: 600;
	margin: 0;
}

.featured-tag__price {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	margin: 0;
}

.featured-tag__cta {
	color: #2B4A9B;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
}

/* Account numbers are stored in caps — show what will be saved. */
.product-personalization__caps-input {
	text-transform: uppercase;
}

/* Special-instructions box appears only when Tag Year is SPEC. */
.product-personalization__special.is-hidden {
	display: none;
}

/* Category page: seasonal callout above the title. */
.category-page__designated {
	color: #2B7A3F;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin: 0 0 4px;
}

/* Category page: featured designated-tag band. */
.category-featured {
	display: flex;
	align-items: center;
	gap: 24px;
	border: 1px solid #CBE3D2;
	background: #F3FAF5;
	border-radius: 12px;
	padding: 20px 24px;
	margin: 0 0 24px;
}

.category-featured__image {
	flex: 0 0 120px;
}

.category-featured__image img {
	max-width: 120px;
	max-height: 120px;
	object-fit: contain;
}

.category-featured__body {
	flex: 1 1 auto;
}

.category-featured__badge {
	display: inline-block;
	background: #2B7A3F;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	border-radius: 999px;
	padding: 3px 10px;
	margin: 0 0 8px;
}

.category-featured__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 20px;
	font-weight: 600;
	margin: 0 0 2px;
}

.category-featured__sku {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 13px;
	margin: 0;
}

.category-featured__action {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
}

.category-featured__price {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-weight: 600;
}

.category-featured__price-unit,
.category-card__price-unit {
	color: #5B6270;
	font-size: 12px;
	font-weight: 400;
}

/* Category page: gallery grid. */
.category-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 20px;
}

.category-card {
	display: flex;
	flex-direction: column;
	border: 1px solid #E2E4EA;
	background: #FFF;
	border-radius: 12px;
	overflow: hidden;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.category-card:hover {
	box-shadow: 0 4px 16px rgba(31, 36, 42, 0.08);
	transform: translateY(-2px);
}

.category-card__image {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F4F5F7;
	height: 160px;
}

.category-card__image img {
	max-width: 100%;
	max-height: 150px;
	object-fit: contain;
}

.category-card__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px 16px 16px;
	flex: 1 1 auto;
}

.category-card__name {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	margin: 0;
}

.category-card__sku {
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	margin: 0;
}

.category-card__price {
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	margin: 6px 0 0;
}

.category-card__button {
	display: inline-block;
	margin-top: auto;
	padding: 8px 14px;
	background: #243A6E;
	color: #FFF;
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 600;
	border-radius: 8px;
	text-align: center;
	text-decoration: none;
}

.category-card__button:hover {
	background: #1C2E58;
	color: #FFF;
}

@media (max-width: 640px) {
	.category-featured {
		flex-direction: column;
		align-items: flex-start;
	}
	.category-featured__action {
		align-items: flex-start;
	}
}

/* Slim category header — the featured band below carries the visual. */
.category-page__header--slim {
	margin: 4px 0 18px;
}

.category-page__header--slim .category-page__title {
	margin: 0;
}

/* Start Number: optional prefix box sits in front of the digits. */
.product-personalization__start-row {
	display: flex;
	gap: 8px;
	align-items: stretch;
}

.product-personalization__start-prefix {
	flex: 0 0 96px;
	max-width: 96px;
}

.product-personalization__start-number {
	flex: 1 1 auto;
}

/* Checkout proof of tag details — the last screen before submit.
   Inscriptions are engraved exactly as entered, so this repeats them
   the way the old site's Confirm Shopping Cart Submission page did. */
.checkout-summary__proof {
	border-radius: 8px;
	background: #F6F7F9;
	padding: 10px 12px;
	margin: 8px 0 14px;
}

.checkout-summary__proof-meta {
	margin: 0 0 6px;
	color: #5B6270;
	font-family: Inter, sans-serif;
	font-size: 12px;
	line-height: 150%;
}

.checkout-summary__proof-heading {
	margin: 0 0 4px;
	color: #1F2430;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-weight: 600;
	line-height: 140%;
}

.checkout-summary__proof-lines {
	margin: 0;
	padding: 0;
	list-style: none;
}

.checkout-summary__proof-lines li {
	display: flex;
	gap: 8px;
	align-items: baseline;
	padding: 2px 0;
}

.checkout-summary__proof-linenum {
	flex: 0 0 44px;
	color: #8A909E;
	font-family: Inter, sans-serif;
	font-size: 11px;
}

/* Monospace so a stray space or a mistyped character is visible. */
.checkout-summary__proof-linetext {
	color: #1F2430;
	font-family: "SFMono-Regular", Menlo, Consolas, monospace;
	font-size: 12.5px;
	letter-spacing: 0.02em;
	white-space: pre-wrap;
	word-break: break-word;
}

.checkout-summary__proof-edit {
	display: inline-block;
	margin-top: 8px;
	color: #1B3A6B;
	font-family: Inter, sans-serif;
	font-size: 12px;
	font-weight: 500;
	text-decoration: none;
}

.checkout-summary__proof-edit:hover {
	text-decoration: underline;
}

.checkout-summary__notice {
	margin: 0 0 16px;
	padding: 10px 12px;
	border-radius: 8px;
	border-left: 3px solid #C8102E;
	background: #FDF3F4;
	color: #5B2A30;
	font-family: Inter, sans-serif;
	font-size: 12px;
	line-height: 150%;
}
