/*
 Theme Name:   Mantras Child
 Theme URI:    https://mantras.wpengine.com/
 Description:  Mantras Child Theme
 Author:       the Wedesigntech team
 Author URI:   https://wedesignthemes.com/
 Template:     mantras
 Version:      1.0.0
 Text Domain:  mantras-child
*/

/* Aruna Yoga shop — shared palette. */
.aruna-shop-home,
body.single-product {
	--aruna-ink: #2d2b33;
	--aruna-coral: #f9794b;
	--aruna-red: #c8112b;
	--aruna-purple: #635495;
	--aruna-purple-dark: #493d72;
	--aruna-sand: #dad0c5;
	--aruna-surface: #f8f1ed;
	--aruna-paper: #fffdfb;
}

.aruna-shop-home {
	color: var(--aruna-ink);
	margin: 0 auto;
	max-width: 1220px;
	padding: 0 0 110px;
	width: calc(100% - 60px);
}

.aruna-shop-promos {
	display: grid;
	gap: 30px;
}

.aruna-shop-promos--slider {
	display: block;
	min-height: 510px;
	position: relative;
}

.aruna-shop-promos--slider .aruna-shop-promo--slide {
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity 0.8s ease, visibility 0.8s ease;
	visibility: hidden;
	width: 100%;
	z-index: 0;
}

.aruna-shop-promos--slider .aruna-shop-promo--slide.is-active {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
	z-index: 1;
}

.aruna-shop-promo {
	border-radius: 32px;
	box-shadow: 0 20px 55px rgba(45, 43, 51, 0.13);
	isolation: isolate;
	min-height: 510px;
	overflow: hidden;
	position: relative;
}

.aruna-shop-promo__image,
.aruna-shop-promo__shade {
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}

.aruna-shop-promo__image {
	object-fit: cover;
	object-position: center;
	z-index: -2;
}

.aruna-shop-promo__shade {
	background: linear-gradient(90deg, rgba(248, 241, 237, 0.98) 0%, rgba(248, 241, 237, 0.9) 39%, rgba(248, 241, 237, 0.18) 70%, rgba(45, 43, 51, 0.04) 100%);
	z-index: -1;
}

.aruna-shop-promo--shirts .aruna-shop-promo__shade {
	background: linear-gradient(90deg, rgba(45, 43, 51, 0.93) 0%, rgba(45, 43, 51, 0.72) 40%, rgba(45, 43, 51, 0.08) 73%);
}

.aruna-shop-promo__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 625px;
	min-height: 510px;
	padding: 62px 68px;
}

.aruna-shop-promo--shirts .aruna-shop-promo__content,
.aruna-shop-promo--shirts h1 {
	color: #fff;
}

.aruna-shop-promo__eyebrow,
.aruna-shop-products__eyebrow {
	color: var(--aruna-red);
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.15em;
	margin: 0 0 14px;
	text-transform: uppercase;
}

.aruna-shop-promo--shirts .aruna-shop-promo__eyebrow {
	color: #ffbb9e;
}

.aruna-shop-promo h1 {
	color: var(--aruna-ink);
	font-family: "Open Sans", sans-serif;
	font-size: clamp(43px, 5vw, 66px);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.04;
	margin: 0 0 24px;
	text-transform: none;
}

.aruna-shop-promo__content > p:not(.aruna-shop-promo__eyebrow) {
	font-size: 18px;
	line-height: 1.65;
	margin: 0 0 32px;
	max-width: 540px;
}

.aruna-shop-button,
.aruna-shop-home a.aruna-shop-button {
	align-items: center;
	border: 0;
	border-radius: 999px;
	box-shadow: none;
	display: inline-flex;
	font-family: "Open Sans", sans-serif !important;
	font-size: 14px;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.06em;
	line-height: 1;
	min-height: 48px;
	padding: 0 25px;
	text-decoration: none;
	text-transform: uppercase;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.aruna-shop-button:hover,
.aruna-shop-button:focus-visible {
	box-shadow: 0 10px 24px rgba(99, 84, 149, 0.25);
	transform: translateY(-2px);
}

.aruna-shop-button--primary,
.aruna-shop-home a.aruna-shop-button--primary {
	align-self: flex-start;
	background: linear-gradient(135deg, var(--aruna-coral), var(--aruna-red));
	color: #fff !important;
	-webkit-text-fill-color: #fff;
}

.aruna-shop-products {
	padding-top: 76px;
}

.aruna-shop-products__heading {
	align-items: end;
	display: flex;
	gap: 50px;
	justify-content: space-between;
	margin-bottom: 32px;
}

.aruna-shop-products h2 {
	color: var(--aruna-ink);
	font-family: "Open Sans", sans-serif;
	font-size: clamp(34px, 4vw, 50px);
	font-weight: 900;
	letter-spacing: -0.035em;
	line-height: 1.08;
	margin: 0;
}

.aruna-shop-products__intro {
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
	max-width: 440px;
}

.aruna-shop-grid {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.aruna-shop-card {
	background: var(--aruna-surface);
	border: 1px solid rgba(45, 43, 51, 0.08);
	border-radius: 26px;
	box-shadow: 0 10px 30px rgba(45, 43, 51, 0.07);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.aruna-shop-card:hover {
	box-shadow: 0 18px 38px rgba(45, 43, 51, 0.13);
	transform: translateY(-5px);
}

.aruna-shop-card__image {
	background: rgba(255, 255, 255, 0.55);
	display: block;
	overflow: hidden;
}

.aruna-shop-card__image img {
	aspect-ratio: 4 / 5;
	display: block;
	height: auto;
	object-fit: cover;
	transition: transform 0.45s ease;
	width: 100%;
}

.aruna-shop-card:hover .aruna-shop-card__image img {
	transform: scale(1.035);
}

.aruna-shop-card__body {
	align-items: center;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 24px 20px 22px;
	text-align: center;
}

.aruna-shop-card h3 {
	font-family: "Open Sans", sans-serif;
	font-size: 19px;
	font-weight: 800;
	line-height: 1.3;
	margin: 0 0 12px;
}

.aruna-shop-card h3 a {
	color: var(--aruna-ink);
	font-family: "Open Sans", sans-serif !important;
	text-decoration: none;
}

.aruna-shop-card__price {
	color: var(--aruna-red);
	font-size: 18px;
	font-weight: 800;
	margin: auto 0 17px;
}

.aruna-price-vat {
	color: var(--aruna-ink);
	font-size: 11px;
	font-weight: 700;
	opacity: 0.68;
	text-transform: none;
}

.aruna-shop-button--buy,
.aruna-shop-home a.aruna-shop-button--buy {
	background: var(--aruna-purple);
	color: #fff !important;
	-webkit-text-fill-color: #fff;
	min-height: 42px;
	padding-left: 28px;
	padding-right: 28px;
}

.aruna-shop-button--buy:hover,
.aruna-shop-button--buy:focus-visible {
	background: linear-gradient(135deg, var(--aruna-coral), var(--aruna-red));
	color: #fff;
}

.aruna-shop-home__notice {
	background: var(--aruna-surface);
	border-radius: 20px;
	padding: 28px;
	text-align: center;
}

/* Single product layout. */
body.single-product .main-title-section-wrapper {
	background: linear-gradient(135deg, #f8f1ed, #efe8f5);
}

body.single-product .container {
	max-width: 1220px;
}

body.single-product div.product.type-product {
	display: grid;
	gap: 38px 64px;
	grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr);
	margin-bottom: 90px;
}

body.single-product div.product.type-product .woocommerce-product-gallery {
	float: none;
	margin: 0;
	width: 100%;
}

body.single-product div.product.type-product .woocommerce-product-gallery__wrapper {
	background: var(--aruna-surface);
	border-radius: 30px;
	overflow: hidden;
}

body.single-product div.product.type-product .woocommerce-product-gallery__image img {
	aspect-ratio: 4 / 5;
	background: var(--aruna-surface);
	object-fit: cover;
	width: 100%;
}

body.single-product div.product.type-product .flex-control-thumbs {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 96px));
	margin-top: 16px !important;
}

body.single-product div.product.type-product .flex-control-thumbs li {
	border: 2px solid transparent;
	border-radius: 14px;
	overflow: hidden;
	width: 100% !important;
}

body.single-product div.product.type-product .flex-control-thumbs li:hover {
	border-color: var(--aruna-coral);
}

body.single-product div.product.type-product .summary {
	align-self: start;
	background: var(--aruna-paper);
	border: 1px solid rgba(45, 43, 51, 0.08);
	border-radius: 30px;
	box-shadow: 0 18px 48px rgba(45, 43, 51, 0.08);
	float: none;
	margin: 0;
	padding: 42px 44px;
	width: 100%;
}

body.single-product .summary .product_title {
	color: var(--aruna-ink);
	display: block;
	font-family: "Open Sans", sans-serif;
	font-size: clamp(34px, 3.2vw, 46px);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.08 !important;
	margin: 0 0 25px;
	text-transform: none;
}

body.single-product .woocommerce-product-details__short-description {
	color: var(--aruna-ink);
	font-size: 16px;
	line-height: 1.7;
}

body.single-product .woocommerce-product-details__short-description p {
	margin-bottom: 16px;
}

body.single-product .woocommerce-product-details__short-description ul {
	list-style: none;
	margin: 18px 0 22px;
	padding: 0;
}

body.single-product .woocommerce-product-details__short-description li {
	margin: 9px 0;
	padding-left: 26px;
	position: relative;
}

body.single-product .woocommerce-product-details__short-description li::before {
	color: var(--aruna-coral);
	content: "✓";
	font-weight: 900;
	left: 0;
	position: absolute;
}

.aruna-product-badges {
	align-items: center;
	display: flex !important;
	justify-content: center;
	margin: 26px 0 28px;
	width: 100%;
}

.aruna-product-badges__image {
	display: block;
	height: auto;
	max-width: 100%;
	width: 250px;
}

body.single-product .summary .price {
	color: var(--aruna-red) !important;
	font-size: 30px !important;
	font-weight: 900;
	margin: 0 0 22px !important;
}

body.single-product .summary form.cart,
body.single-product .summary form.variations_form {
	border-top: 1px solid rgba(45, 43, 51, 0.1);
	margin-top: 8px;
	padding-top: 24px;
}

body.single-product .summary table.variations,
body.single-product .summary table.variations tbody,
body.single-product .summary table.variations tr,
body.single-product .summary table.variations th,
body.single-product .summary table.variations td {
	background: transparent;
	border: 0;
}

body.single-product .summary table.variations th {
	color: var(--aruna-ink);
	font-weight: 800;
	padding: 8px 14px 8px 0;
	text-align: left;
}

body.single-product .summary table.variations td {
	padding: 8px 0;
}

body.single-product .summary form.variations_form {
	display: inline-block;
	margin: 10px 0;
	width: 100%;
}

body.single-product .summary form.variations_form table.variations {
	display: inline-block;
	margin: 10px 0 20px !important;
	width: calc(100% - 29px);
}

body.single-product .summary form.variations_form table.variations tbody {
	display: block;
	width: 100%;
}

body.single-product .summary form.variations_form table.variations tr {
	display: block;
	margin-right: 20px;
	padding: 5px;
	width: calc(100% - 10px);
}

body.single-product .summary form.variations_form table.variations th.label,
body.single-product .summary form.variations_form table.variations td.value {
	display: block;
	width: 100%;
}

body.single-product .summary form.variations_form table.variations th.label {
	margin: 0 0 10px;
	padding: 0;
}

body.single-product .summary form.variations_form table.variations td.value {
	min-height: 79px;
	position: relative;
}

body.single-product .summary form.variations_form table.variations .reset_variations {
	display: none !important;
}

body.single-product .summary .stock,
body.single-product .summary .woocommerce-variation-availability {
	display: none !important;
}

body.single-product .summary select {
	background: #fff;
	border: 1px solid var(--aruna-sand);
	border-radius: 12px;
	box-sizing: border-box;
	display: block;
	font: 400 16px/30px "Open Sans", sans-serif;
	min-height: 46px;
	min-width: 305px;
	padding: 0 42px 0 14px;
	width: 305px;
}

body.single-product div.product.type-product .summary form.variations_form table.variations select {
	display: block !important;
	font: 400 16px/30px "Open Sans", sans-serif !important;
	min-width: 305px !important;
	padding: 0 42px 0 14px !important;
	width: 305px !important;
}

body.single-product div.product.type-product .summary form.cart:not(.variations_form),
body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart {
	align-items: center;
	display: flex !important;
	flex-wrap: nowrap;
	gap: 10px;
	width: 100%;
}

body.single-product div.product.type-product .summary form.cart:not(.variations_form) {
	margin: 10px 0;
}

body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart {
	margin-top: 10px;
}

body.single-product div.product.type-product .summary form.cart:not(.variations_form) > .quantity,
body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart > .quantity {
	display: inline-block !important;
	flex: 0 0 90px;
	margin: 0 !important;
	position: relative;
	width: 90px !important;
}

body.single-product div.product.type-product .summary form.cart:not(.variations_form) > .single_add_to_cart_button,
body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart > .single_add_to_cart_button {
	display: inline-block !important;
	flex: 1 1 auto;
	margin: 0 !important;
	min-width: 0;
	width: auto !important;
}

body.single-product .summary .quantity .qty {
	border: 1px solid var(--aruna-sand);
	border-radius: 999px;
	height: 50px;
	min-width: 74px;
}

body.single-product .summary .single_add_to_cart_button {
	background: linear-gradient(135deg, var(--aruna-coral), var(--aruna-red)) !important;
	border-radius: 999px !important;
	box-shadow: 0 10px 24px rgba(200, 17, 43, 0.2);
	font-weight: 900 !important;
	min-height: 50px;
	padding: 0 30px !important;
	text-transform: uppercase;
}

body.single-product div.product.type-product .woocommerce-tabs,
body.single-product div.product.type-product .related,
body.single-product div.product.type-product .upsells {
	grid-column: 1 / -1;
}

body.single-product div.product.type-product > .wdt-product-tabs {
	grid-column: 1 / -1;
	width: 100%;
}

body.single-product div.product.type-product .woocommerce-tabs {
	background: var(--aruna-surface);
	border-radius: 30px;
	clear: both;
	float: none;
	padding: 42px 48px;
	width: 100% !important;
}

body.single-product div.product.type-product .woocommerce-tabs ul.tabs {
	display: none;
}

body.single-product div.product.type-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
	display: block !important;
	margin: 0;
	width: 100% !important;
}

body.single-product div.product.type-product .woocommerce-tabs .woocommerce-Tabs-panel--additional_information,
body.single-product div.product.type-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews {
	display: none !important;
}

body.single-product div.product.type-product .woocommerce-tabs h2,
body.single-product div.product.type-product .woocommerce-tabs h3 {
	color: var(--aruna-ink);
	font-family: "Open Sans", sans-serif;
	font-weight: 900;
	text-transform: none;
}

body.single-product div.product.type-product .woocommerce-tabs h2 {
	font-size: 34px;
	margin: 0 0 20px;
}

body.single-product div.product.type-product .woocommerce-tabs h3 {
	font-size: 23px;
	line-height: 50px;
	margin: 30px 0 12px;
}

body.single-product div.product.type-product .woocommerce-tabs p,
body.single-product div.product.type-product .woocommerce-tabs li {
	font-size: 16px;
	line-height: 1.75;
}

body.single-product div.product.type-product .woocommerce-tabs p {
	margin: 0 0 12px;
}

body.single-product div.product.type-product .woocommerce-tabs table {
	background: var(--aruna-paper);
	border-radius: 18px;
	overflow: hidden;
	width: 100%;
}

body.single-product div.product.type-product .woocommerce-tabs th,
body.single-product div.product.type-product .woocommerce-tabs td {
	border-color: rgba(45, 43, 51, 0.1);
	padding: 14px 18px;
}

/* Magnesium product: keep the controls legible and the composition table compact. */
body.postid-8638.single-product .summary .quantity .qty {
	color: #000 !important;
	font-size: 22.4px !important;
}

body.postid-8638.single-product .summary .single_add_to_cart_button {
	color: #fff !important;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs {
	background: #fff;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table,
body.postid-8638.single-product div.product.type-product .woocommerce-tabs tbody,
body.postid-8638.single-product div.product.type-product .woocommerce-tabs tr,
body.postid-8638.single-product div.product.type-product .woocommerce-tabs th,
body.postid-8638.single-product div.product.type-product .woocommerce-tabs td {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table {
	border: 0 !important;
	border-radius: 0;
	border-collapse: collapse;
	box-shadow: none !important;
	margin: 0 0 16px;
	width: 50%;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table th,
body.postid-8638.single-product div.product.type-product .woocommerce-tabs table td {
	color: #000 !important;
	line-height: 1.5;
	padding: 3px 14px;
}

/* Shirt products: compact title and legible purchase controls. */
body.postid-8639.single-product .summary .product_title,
body.postid-8644.single-product .summary .product_title,
body.postid-8653.single-product .summary .product_title {
	font-size: 28.672px !important;
}

body.postid-8639.single-product .summary .quantity .qty,
body.postid-8644.single-product .summary .quantity .qty,
body.postid-8653.single-product .summary .quantity .qty {
	color: #000 !important;
	font-size: 22.4px !important;
}

body.postid-8639.single-product .summary .single_add_to_cart_button,
body.postid-8644.single-product .summary .single_add_to_cart_button,
body.postid-8653.single-product .summary .single_add_to_cart_button {
	color: #fff !important;
}

.aruna-product-shop-return {
	margin-left: auto;
	margin-right: auto;
	max-width: 1160px;
	text-align: left;
	width: 100%;
}

.aruna-product-shop-return .wdt-button-holder {
	display: inline-flex;
	position: relative;
}

.aruna-product-shop-return .wdt-button {
	align-items: center;
	background: transparent !important;
	border: 1px solid #2d2b33 !important;
	border-radius: 35px !important;
	box-shadow: none !important;
	color: #545454 !important;
	display: flex !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	letter-spacing: 3px !important;
	line-height: 14px !important;
	padding: 16px 30px !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	transition: 0.3s linear;
}

.aruna-product-shop-return .wdt-button-text {
	display: grid;
	padding-right: 45px;
}

.aruna-product-shop-return--top {
	margin-bottom: 28px;
}

.aruna-product-shop-return--bottom {
	margin-bottom: 42px;
	margin-top: 28px;
}

/* Keep the add-to-cart confirmation and its cart link legible. */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-message a,
.woocommerce-notices-wrapper .woocommerce-message .button,
.woocommerce-message,
.woocommerce-message a,
.woocommerce-message .button {
	color: #fff !important;
}

/* Persistent cart status on the store landing and product pages. */
.aruna-cart-status {
	align-items: center;
	background-color: var(--wdtTertiaryColor) !important;
	border-top: 0 !important;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin: 0 auto 28px !important;
	max-width: 1160px;
	padding: 16px 22px !important;
}

.aruna-cart-status::before {
	display: none !important;
}

.aruna-cart-status br {
	display: none;
}

.aruna-cart-status,
.aruna-cart-status__message,
.aruna-cart-status__link,
.aruna-cart-status__link:hover,
.aruna-cart-status__link:focus {
	color: #27282c !important;
}

.aruna-cart-status__message {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	line-height: 1.5;
	min-width: 0;
}

.aruna-cart-status__link {
	align-items: center;
	color: #27282c !important;
	display: inline-flex;
	flex: 0 0 auto;
	gap: 8px;
	margin-left: auto;
	text-decoration: none;
	-webkit-text-fill-color: #27282c !important;
	white-space: nowrap;
}

.aruna-cart-status__link span {
	color: #27282c !important;
	-webkit-text-fill-color: #27282c !important;
}

@media only screen and (min-width: 769px) {
	.woocommerce .aruna-cart-status {
		display: flex;
	}

	.woocommerce .aruna-cart-status > .aruna-cart-status__link {
		display: inline-flex;
		margin-left: auto;
	}
}

.aruna-cart-status__icon {
	color: #f37021 !important;
	display: block;
	flex: 0 0 22px;
	height: 22px;
	width: 22px;
}

/* Keep product names and the cart action visible on every store page. */
.aruna-cart-status__message,
.aruna-cart-status__product-line {
	color: #27282c !important;
	-webkit-text-fill-color: #27282c !important;
}

/* Cart page: readable product images and correctly aligned product heading. */
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .woocommerce-shipping-calculator {
	display: none !important;
}

body.woocommerce-cart .wdt-cart-coupon-holder {
	display: none !important;
}

body.woocommerce-cart table.cart th.product-name {
	text-align: center !important;
	transform: none !important;
	white-space: nowrap;
	writing-mode: horizontal-tb !important;
}

body.woocommerce-cart .woocommerce {
	margin: 0 auto 80px;
	max-width: 1220px;
	width: calc(100% - 60px);
}

body.woocommerce-cart table.shop_table.cart,
body.woocommerce-cart .cart_totals table.shop_table {
	background: #fffdfb !important;
	border: 1px solid rgba(45, 43, 51, 0.1) !important;
	border-collapse: separate !important;
	border-radius: 0 0 22px 22px !important;
	overflow: hidden;
}

body.woocommerce-cart table.shop_table.cart thead,
body.woocommerce-cart .cart_totals h2 {
	background: linear-gradient(135deg, #f9794b, #ed6f3f) !important;
}

body.woocommerce-cart table.shop_table.cart thead th,
body.woocommerce-cart .cart_totals h2 {
	color: #fff !important;
	font-family: "Open Sans", sans-serif;
	font-weight: 800;
}

body.woocommerce-cart table.shop_table.cart thead th {
	border: 0 !important;
	padding: 18px 14px !important;
}

body.woocommerce-cart table.shop_table.cart tbody td,
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
	background: #fffdfb !important;
	border-color: rgba(45, 43, 51, 0.1) !important;
}

body.woocommerce-cart table.shop_table.cart td.actions {
	padding: 18px !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon {
	display: none !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
	float: right;
	max-width: 600px;
	width: 50%;
}

body.woocommerce-cart .cart_totals h2 {
	border-radius: 22px 22px 0 0;
	font-size: 24px;
	margin: 0 !important;
	padding: 18px 22px;
}

body.woocommerce-cart .cart_totals table.shop_table {
	margin: 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	background: #ed6f3f !important;
	border-color: #ed6f3f !important;
	color: #fff !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus {
	background: #2d2b33 !important;
	border-color: #2d2b33 !important;
	color: #fff !important;
}

@media only screen and (min-width: 769px) {
	body.woocommerce-cart table.cart th.product-thumbnail,
	body.woocommerce-cart table.cart td.product-thumbnail {
		width: 190px !important;
	}

	body.woocommerce-cart table.cart td.product-thumbnail img {
		height: auto !important;
		max-width: 160px !important;
		width: 160px !important;
	}
}

@media only screen and (max-width: 768px) {
	body.woocommerce-cart .woocommerce {
		width: calc(100% - 30px);
	}

	body.woocommerce-cart .cart-collaterals .cart_totals {
		float: none;
		max-width: none;
		width: 100%;
	}
}

/* Block-theme cart compatibility: retain the pre-rebuild desktop composition. */
body.woocommerce-cart main#wp--skip-link--target {
	position: relative;
	top: -30px;
}

body.woocommerce-cart main#wp--skip-link--target > h1 {
	display: none !important;
}

body.woocommerce-cart main#wp--skip-link--target > .wp-block-post-content {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.woocommerce-cart .woocommerce {
	font-size: 16px;
	font-weight: 400;
	line-height: 30px;
}

body.woocommerce-cart table.shop_table.cart {
	background: transparent !important;
	border: 1px solid #2d2b33 !important;
	border-collapse: separate !important;
	border-radius: 10px !important;
	display: block;
	margin-bottom: 129px !important;
	overflow: visible;
	position: relative;
}

body.woocommerce-cart table.shop_table.cart thead,
body.woocommerce-cart table.shop_table.cart tbody {
	background: transparent !important;
	display: block;
	width: 100%;
}

body.woocommerce-cart table.shop_table.cart thead tr,
body.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 205px 459px 100px 120px 100px 220px;
	width: 100%;
}

body.woocommerce-cart table.shop_table.cart thead tr {
	height: 90px;
}

body.woocommerce-cart table.shop_table.cart thead th {
	align-items: center;
	background: transparent !important;
	box-sizing: border-box;
	color: #2d2b33 !important;
	display: flex;
	font-size: 16px;
	font-weight: 700;
	height: 90px;
	line-height: 30px;
	justify-content: center;
	padding: 15px 5px !important;
}

body.woocommerce-cart table.shop_table.cart tbody td {
	align-items: center;
	background: transparent !important;
	box-sizing: border-box;
	display: flex;
	height: 190px;
	padding: 15px 10px !important;
}

body.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
	height: 190px;
}

body.woocommerce-cart table.shop_table.cart .product-thumbnail {
	grid-column: 1;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart td.product-thumbnail {
	padding-left: 29px !important;
}

body.woocommerce-cart table.shop_table.cart .product-name {
	grid-column: 2;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart td.product-name {
	padding-left: 13px !important;
}

body.woocommerce-cart table.shop_table.cart .product-price {
	grid-column: 3;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart td.product-price {
	padding-left: 7px !important;
}

body.woocommerce-cart table.shop_table.cart .product-quantity {
	grid-column: 4;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart th.product-quantity,
body.woocommerce-cart table.shop_table.cart td.product-quantity {
	justify-content: flex-start;
	padding-left: 6px !important;
}

body.woocommerce-cart table.shop_table.cart td.product-quantity input.qty {
	background: transparent;
	border: 1px solid #fff;
	border-radius: 10px;
	box-sizing: border-box;
	font-size: 16px;
	height: 47px;
	padding: 0 10px;
	text-align: center;
	width: 90px;
}

body.woocommerce-cart table.shop_table.cart .product-subtotal {
	grid-column: 5;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart th.product-subtotal,
body.woocommerce-cart table.shop_table.cart td.product-subtotal {
	justify-content: flex-start;
	padding-left: 5px !important;
}

body.woocommerce-cart table.shop_table.cart .product-remove {
	grid-column: 6;
	grid-row: 1;
}

body.woocommerce-cart table.shop_table.cart th.product-remove {
	padding-left: 30px !important;
}

body.woocommerce-cart table.shop_table.cart td.product-remove {
	justify-content: flex-start;
	padding-left: 10px !important;
}

body.woocommerce-cart table.shop_table.cart td.product-remove .remove {
	align-items: center;
	background: transparent !important;
	border: 0 !important;
	color: #d40000 !important;
	display: inline-flex;
	font-size: 0 !important;
	justify-content: center;
	height: 30px;
	padding: 0 !important;
	width: 30px;
}

body.woocommerce-cart table.shop_table.cart td.product-remove .remove::before {
	content: "×";
	font-size: 25px;
	font-weight: 400;
	line-height: 1;
}

body.woocommerce-cart table.shop_table.cart tbody tr:not(.cart_item) {
	display: block;
	height: 50px;
	left: 0;
	position: absolute;
	right: 0;
	top: calc(100% + 30px);
}

body.woocommerce-cart table.shop_table.cart td.actions {
	background: transparent !important;
	border: 0 !important;
	display: block;
	height: 50px;
	padding: 0 !important;
	text-align: right;
	width: 100%;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
	background: transparent;
	border: 1px solid #2d2b33;
	border-radius: 10px;
	box-sizing: border-box;
	float: none;
	margin: 0 0 50px;
	max-width: none;
	padding: 40px 3.6%;
	width: 100%;
}

body.woocommerce-cart .cart_totals h2 {
	background: transparent !important;
	border-radius: 0;
	color: #2d2b33 !important;
	display: inline-block;
	font-size: 25.6px;
	font-weight: 900;
	line-height: 25.6px;
	margin: 0 0 20px !important;
	padding: 0;
}

body.woocommerce-cart .cart_totals table.shop_table {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	margin: 0 0 30px !important;
	width: 100%;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
	background: transparent !important;
}

/* Keep the previously approved orange active/inactive checkout button. */
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:disabled,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button.disabled {
	background: #ed6f3f !important;
	border-color: #ed6f3f !important;
	color: #fff !important;
}

/* Practices page: one valid back-to-top button matching the Services CTA. */
html:has(body.page-id-8592) {
	scroll-behavior: smooth;
}

#aruna-practices-back-to-top {
	display: flex;
	justify-content: center;
	margin-top: 42px;
}

#aruna-practices-back-to-top .wdt-button-holder {
	display: inline-flex;
	position: relative;
}

#aruna-practices-back-to-top .wdt-button {
	align-items: stretch;
	background: transparent !important;
	border: 1px solid #2d2b33;
	border-radius: 35px;
	color: #545454;
	display: inline-flex;
	font-family: "Open Sans", sans-serif;
	font-size: 14px;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 3px;
	line-height: 14px;
	margin: 0;
	overflow: hidden;
	padding: 16px 30px;
	position: relative;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: 0.3s linear;
	z-index: 0;
}

#aruna-practices-back-to-top .wdt-button-text {
	align-content: center;
	display: inline-grid;
	height: 100%;
	position: relative;
	text-align: left;
}

#aruna-practices-back-to-top .wdt-button::after {
	bottom: auto;
	content: "";
	display: block;
	height: auto;
	left: 0;
	padding-top: 100%;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 50%;
	transform: rotate(-45deg) scale(1.25) translate(0, -50%);
	transform-origin: center top;
	transition: inherit;
	z-index: -1;
}

#aruna-practices-back-to-top .wdt-button:hover::after,
#aruna-practices-back-to-top .wdt-button:focus::after {
	background-color: #bbb9b9;
	padding-top: 0;
}

@media (prefers-reduced-motion: reduce) {
	html:has(body.page-id-8592) {
		scroll-behavior: auto;
	}

	#aruna-practices-back-to-top .wdt-button {
		animation: none !important;
		transition: none !important;
	}
}

@media (max-width: 1024px) {
	.aruna-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aruna-shop-products__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 18px;
	}

	body.single-product div.product.type-product {
		gap: 34px;
		grid-template-columns: 1fr 1fr;
	}

	body.single-product div.product.type-product .summary {
		padding: 34px 30px;
	}
}

@media (max-width: 767px) {
	.aruna-shop-home {
		padding-bottom: 70px;
		width: calc(100% - 30px);
	}

	.aruna-shop-promo,
	.aruna-shop-promo__content {
		min-height: 500px;
	}

	.aruna-shop-promos--slider {
		min-height: 500px;
	}

	.aruna-shop-promo__content {
		justify-content: flex-end;
		padding: 38px 28px;
	}

	.aruna-shop-promo__shade,
	.aruna-shop-promo--shirts .aruna-shop-promo__shade {
		background: linear-gradient(0deg, rgba(45, 43, 51, 0.94) 0%, rgba(45, 43, 51, 0.7) 46%, rgba(45, 43, 51, 0.04) 100%);
	}

	.aruna-shop-promo__content,
	.aruna-shop-promo h1 {
		color: #fff;
	}

	.aruna-shop-promo h1 {
		font-size: clamp(34px, 10vw, 38px);
	}

	.aruna-shop-grid {
		grid-template-columns: 1fr;
	}

	body.single-product div.product.type-product {
		display: block;
	}

	body.single-product div.product.type-product .summary {
		margin-top: 28px;
		padding: 30px 24px;
	}

	body.single-product div.product.type-product .woocommerce-tabs {
		margin-top: 36px;
		padding: 30px 24px;
	}

	body.postid-8638.single-product div.product.type-product .woocommerce-tabs table {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aruna-shop-promos--slider .aruna-shop-promo--slide {
		transition: none;
	}
}

/*
 * Block-theme compatibility for the rebuilt site.
 *
 * The shop module and its WooCommerce presentation were copied from the
 * pre-rebuild site.  The block theme adds constrained-layout wrappers around
 * that markup, which made the landing page and product pages narrower than
 * the original.  Restore the old 1200px container / 30px gutter geometry
 * without changing the rebuilt header or footer.
 */
body.page-id-129 main#wp--skip-link--target.aruna-page-shell {
	box-sizing: border-box;
	max-width: 1205px !important;
	padding: 24px 0 96px !important;
	width: 100% !important;
}

body.page-id-129 main#wp--skip-link--target.aruna-page-shell > .wp-block-post-content {
	margin-block-start: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.page-id-129 .aruna-shop-home,
body.single-product div.product.type-product {
	font-size: 16px;
	font-weight: 400;
	line-height: 30px;
}

body.single-product main#wp--skip-link--target {
	box-sizing: border-box;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1220px !important;
	padding: 24px 30px 0 !important;
	width: 100% !important;
}

body.single-product main#wp--skip-link--target > #primary,
body.single-product main#wp--skip-link--target > #primary > main.site-main {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.single-product div.product.type-product .summary {
	font-size: 16px;
	font-weight: 400;
	line-height: 30px;
}

body.single-product div.product.type-product .summary p {
	font-weight: 400;
	line-height: 30px;
}

body.single-product div.product.type-product .summary li {
	font-weight: 400;
	line-height: 28.8px;
}

/* The parent theme suppressed the first editorial heading in the old tabs. */
body.single-product .woocommerce-Tabs-panel--description > h2:first-child {
	display: none !important;
}

/* Match the old compact, left-aligned magnesium composition table. */
body.postid-8638.single-product div.product.type-product .woocommerce-tabs table th {
	font-weight: 400 !important;
	text-align: left !important;
	vertical-align: top !important;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table td {
	text-align: left !important;
	vertical-align: top !important;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table tr > :last-child {
	text-align: center !important;
	width: 17%;
}

body.postid-8638.single-product div.product.type-product .woocommerce-tabs table tr > :first-child {
	width: 83%;
}

@media (max-width: 767px) {
	body.page-id-129 .aruna-page-shell,
	body.single-product main#wp--skip-link--target {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

/* Restored checkout layout: compact, readable and consistent with the store. */
body.woocommerce-checkout:not(.woocommerce-order-received) main.aruna-checkout-shell {
	box-sizing: border-box;
	max-width: 1205px !important;
	padding: 24px 0 96px !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) main.aruna-checkout-shell > .wp-block-post-content,
body.woocommerce-checkout:not(.woocommerce-order-received) main.aruna-checkout-shell .woocommerce {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-header,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon,
body.woocommerce-checkout:not(.woocommerce-order-received) .checkout_coupon {
	display: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout {
	display: block !important;
	margin: 40px auto 80px !important;
	max-width: 1200px;
	width: 60% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-checkout-order-review-wrap,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-additional-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-additional-fields__field-wrapper {
	background: transparent !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-checkout-order-review-wrap {
	float: none !important;
	margin: 0 0 32px !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details .col-1,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details .col-2 {
	background: transparent !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details .col-2:empty {
	display: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout label,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout h3,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout p,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout span,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout a {
	color: #2d2b33;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .form-row,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-shipping-fields__field-wrapper {
	background: transparent !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input.input-text,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout textarea,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout select,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .select2-selection {
	background: #fff !important;
	color: #2d2b33 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-additional-fields {
	clear: both;
	margin: 30px 0 18px !important;
	padding: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .aruna-checkout-order-notes {
	background: transparent !important;
	clear: both;
	margin: 28px 0 18px;
	width: 100%;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_comments_field,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_comments {
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_comments {
	height: 110px !important;
	min-height: 110px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading {
	color: #2d2b33 !important;
	margin-bottom: 20px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .product-name,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .product-total,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-Price-amount,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-Price-currencySymbol {
	white-space: nowrap;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-terms-and-conditions-wrapper {
	clear: both;
	margin-top: 12px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input[type="checkbox"] {
	accent-color: #2d2b33;
	background: #fff !important;
	border: 2px solid #2d2b33 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #place_order {
	background: #ed6f3f !important;
	border-color: #ed6f3f !important;
	color: #fff !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #place_order:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #place_order:focus {
	background: #2d2b33 !important;
	border-color: #2d2b33 !important;
	color: #fff !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout label[for^="shipping_method_"][for*="econt"],
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout label[for^="shipping_method_"][for*="delivery_with_econt"] {
	display: inline-flex !important;
	white-space: nowrap;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #delivery_with_econt_calculate_shipping a,
body.woocommerce-checkout:not(.woocommerce-order-received) .delivery-with-econt a {
	color: #2d2b33 !important;
}

/* Exact pre-rebuild checkout order card, adapted to the block-theme shell. */
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-checkout-order-review-wrap {
	border: 1px solid #2d2b33;
	border-radius: 10px;
	box-sizing: border-box;
	float: none !important;
	margin: 0 0 32px !important;
	overflow: hidden;
	padding: 0 !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading {
	display: block;
	font-size: 25.6px;
	font-weight: 900;
	line-height: 30px;
	margin: 0 0 20px !important;
	padding: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment {
	float: none !important;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid #2d2b33 !important;
	border-collapse: collapse !important;
	border-radius: 0 !important;
	margin: 0 !important;
	max-width: none !important;
	table-layout: auto;
	width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table td {
	background: transparent !important;
	border-color: rgba(45, 43, 51, 0.28) !important;
	border-left-width: 0 !important;
	border-right-width: 0 !important;
	font-size: 15px;
	line-height: 30px;
	padding: 20px 0 !important;
	vertical-align: middle;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table th {
	font-weight: 600;
	text-align: left;
	text-transform: capitalize;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table td:last-child {
	font-weight: 500;
	text-align: right;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .product-name img {
	border-radius: 10px;
	display: table-cell;
	float: left;
	height: 80px !important;
	margin-right: 20px;
	max-width: 80px !important;
	object-fit: cover;
	width: 80px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .checkout-review-order-details {
	display: inline-block;
	overflow: hidden;
	padding: 22px 0;
	position: relative;
	text-align: left;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .checkout-review-order-details span {
	float: left;
	margin-right: 8px;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .checkout-review-order-details > .product-total {
	display: none;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment.woocommerce-checkout-payment {
	background: transparent !important;
	border-radius: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment ul.payment_methods {
	border: 0 !important;
	padding: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment ul.payment_methods li {
	margin: 0 0 20px;
	padding: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment .payment_box,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment .payment_box p {
	background: transparent !important;
	line-height: 28px;
	margin-top: 0;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment .payment_box::before {
	display: none;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment .place-order {
	border-top: 1px solid rgba(45, 43, 51, 0.28);
	box-sizing: border-box;
	margin: 0;
	padding: 20px 0 0 !important;
	width: 100%;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment #place_order {
	float: left !important;
	width: auto !important;
}

@media (max-width: 1280px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout {
		width: 78% !important;
	}
}

@media (max-width: 767px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout {
		width: calc(100% - 30px) !important;
	}
}

/* Team overview: compact portrait cards inspired by the Practices page. */
body.page-id-8593 #aruna-team {
	box-sizing: border-box;
}

body.page-id-8593 .aruna-team-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 30px;
}

body.page-id-8593 .aruna-team-card {
	background: #fff;
	border-radius: 28px;
	box-shadow: 0 12px 34px rgba(45, 43, 51, 0.08);
	box-sizing: border-box;
	color: #2d2b33 !important;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	padding: 18px;
	text-decoration: none !important;
	transition: box-shadow 180ms ease, transform 180ms ease;
}

body.page-id-8593 .aruna-team-card:hover,
body.page-id-8593 .aruna-team-card:focus-within {
	box-shadow: 0 18px 42px rgba(45, 43, 51, 0.14);
	transform: translateY(-4px);
}

body.page-id-8593 .aruna-team-photo {
	aspect-ratio: 4 / 5;
	background: #d4cbc2;
	border-radius: 22px;
	cursor: zoom-in;
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
}

body.page-id-8593 .aruna-team-photo img {
	display: block;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center 22%;
	transition: transform 220ms ease;
	width: 100% !important;
}

body.page-id-8593 .aruna-team-photo:hover img {
	transform: scale(1.035);
}

body.page-id-8593 .aruna-team-card > div {
	padding: 22px 10px 10px;
}

body.page-id-8593 .aruna-team-card h2 {
	color: #2d2b33;
	font-size: 28px;
	line-height: 1.2;
	margin: 0 0 10px;
}

body.page-id-8593 .aruna-team-card p {
	color: #615b61;
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

/* Instructor detail galleries: circular thumbnails, three per row, aligned right. */
body.instruktor .aruna-instructor-gallery {
	display: grid !important;
	gap: 16px;
	grid-template-columns: repeat(3, 132px);
	justify-content: end;
	margin: 34px 0 0 auto;
	max-width: 428px;
	width: 100%;
}

body.instruktor .aruna-instructor-gallery a {
	aspect-ratio: 1;
	background: #d4cbc2;
	border: 3px solid #fff;
	border-radius: 50%;
	box-shadow: 0 8px 22px rgba(45, 43, 51, 0.13);
	cursor: zoom-in;
	display: block;
	overflow: hidden;
	transition: box-shadow 180ms ease, transform 180ms ease;
}

body.instruktor .aruna-instructor-gallery a:hover,
body.instruktor .aruna-instructor-gallery a:focus {
	box-shadow: 0 12px 28px rgba(45, 43, 51, 0.2);
	transform: translateY(-3px);
}

body.instruktor .aruna-instructor-gallery img {
	display: block;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center 22%;
	width: 100% !important;
}

/* Shared full-size image viewer. */
.aruna-image-lightbox[hidden] {
	display: none !important;
}

.aruna-image-lightbox {
	align-items: center;
	background: rgba(28, 26, 30, 0.9);
	cursor: zoom-out;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 64px 28px 32px;
	position: fixed;
	z-index: 1000000;
}

.aruna-image-lightbox__dialog {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.aruna-image-lightbox__image {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
	cursor: default;
	display: block;
	max-height: calc(100vh - 100px);
	max-width: min(1200px, 94vw);
	object-fit: contain;
}

.aruna-image-lightbox__close {
	align-items: center;
	background: #ed6f3f;
	border: 0;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	display: flex;
	font: 400 34px/1 Arial, sans-serif;
	height: 46px;
	justify-content: center;
	padding: 0 0 4px;
	position: absolute;
	right: 24px;
	top: 18px;
	width: 46px;
}

.aruna-image-lightbox__close:hover,
.aruna-image-lightbox__close:focus {
	background: #fff;
	color: #2d2b33;
}

/* Econt checkout controls that are rendered by the local WooCommerce page. */
body.woocommerce-checkout:not(.woocommerce-order-received) #edit_details.econt-button,
body.woocommerce-checkout:not(.woocommerce-order-received) .econt-button-details {
	background: #ed6f3f !important;
	border: 1px solid #ed6f3f !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #edit_details.econt-button:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) #edit_details.econt-button:focus,
body.woocommerce-checkout:not(.woocommerce-order-received) .econt-button-details:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) .econt-button-details:focus {
	background: #d85f31 !important;
	border-color: #d85f31 !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

@media (max-width: 1024px) {
	body.page-id-8593 .aruna-team-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	body.page-id-8593 .aruna-team-list {
		grid-template-columns: 1fr;
	}

	body.instruktor .aruna-instructor-gallery {
		gap: 12px;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		max-width: 100%;
	}

	.aruna-image-lightbox {
		padding: 62px 15px 20px;
	}

	.aruna-image-lightbox__close {
		right: 14px;
		top: 12px;
	}
}

/* Final phone layout for the complete WooCommerce journey. */
@media (max-width: 767px) {
	.aruna-cart-status {
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 12px 16px;
		margin-bottom: 20px !important;
		padding: 14px 16px !important;
	}

	.aruna-cart-status__message {
		flex-basis: calc(100% - 110px);
		font-size: 14px;
		overflow-wrap: anywhere;
	}

	.aruna-cart-status__link {
		font-size: 14px;
		min-height: 44px;
	}

	body.single-product main#wp--skip-link--target {
		max-width: 100% !important;
		padding: 18px 15px 0 !important;
	}

	body.single-product div.product.type-product {
		display: block !important;
		margin-bottom: 58px;
		min-width: 0;
	}

	body.single-product div.product.type-product .woocommerce-product-gallery,
	body.single-product div.product.type-product .summary,
	body.single-product div.product.type-product .wdt-product-tabs,
	body.single-product div.product.type-product .woocommerce-tabs {
		box-sizing: border-box;
		max-width: 100% !important;
		min-width: 0;
		width: 100% !important;
	}

	body.single-product div.product.type-product .summary {
		border-radius: 22px;
		margin-top: 24px;
		padding: 26px 18px;
	}

	body.single-product .summary .product_title,
	body.postid-8639.single-product .summary .product_title,
	body.postid-8644.single-product .summary .product_title,
	body.postid-8653.single-product .summary .product_title {
		font-size: clamp(27px, 8.2vw, 34px) !important;
		line-height: 1.15 !important;
		overflow-wrap: anywhere;
	}

	body.single-product .summary .price {
		font-size: 27px !important;
	}

	body.single-product .summary form.variations_form,
	body.single-product .summary form.variations_form table.variations,
	body.single-product .summary form.variations_form table.variations tbody,
	body.single-product .summary form.variations_form table.variations tr,
	body.single-product .summary form.variations_form table.variations th.label,
	body.single-product .summary form.variations_form table.variations td.value {
		box-sizing: border-box;
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	body.single-product .summary form.variations_form table.variations tr {
		padding: 5px 0;
	}

	body.single-product .summary form.variations_form table.variations td.value {
		min-height: 0;
	}

	body.single-product .summary select,
	body.single-product div.product.type-product .summary form.variations_form table.variations select {
		max-width: 100% !important;
		min-height: 48px;
		min-width: 0 !important;
		width: 100% !important;
	}

	body.single-product div.product.type-product .summary form.cart:not(.variations_form),
	body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart {
		align-items: stretch;
		display: grid !important;
		gap: 10px;
		grid-template-areas: "quantity add";
		grid-template-columns: 82px minmax(0, 1fr) !important;
		grid-template-rows: minmax(52px, auto);
		width: 100%;
	}

	body.single-product div.product.type-product .summary form.cart:not(.variations_form) > .quantity,
	body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart > .quantity {
		align-self: stretch;
		clear: none !important;
		flex-basis: auto;
		float: none !important;
		grid-area: quantity;
		width: 82px !important;
	}

	body.single-product .summary .quantity .qty {
		box-sizing: border-box;
		height: 100%;
		min-height: 52px;
		min-width: 0;
		width: 82px;
	}

	body.single-product div.product.type-product .summary form.cart:not(.variations_form) > .single_add_to_cart_button,
	body.single-product div.product.type-product .summary .woocommerce-variation-add-to-cart > .single_add_to_cart_button {
		box-sizing: border-box;
		clear: none !important;
		float: none !important;
		font-size: 13px !important;
		grid-area: add;
		line-height: 1.25 !important;
		margin: 0 !important;
		min-height: 52px;
		min-width: 0 !important;
		padding: 10px 14px !important;
		white-space: normal;
		width: 100% !important;
	}

	body.single-product div.product.type-product .woocommerce-tabs {
		border-radius: 22px;
		margin-top: 32px;
		padding: 26px 18px;
	}

	body.single-product div.product.type-product .woocommerce-tabs h2 {
		font-size: 28px;
		line-height: 1.2;
	}

	body.single-product div.product.type-product .woocommerce-tabs h3 {
		font-size: 21px;
		line-height: 1.35;
	}

	body.postid-8638.single-product div.product.type-product .woocommerce-tabs table {
		font-size: 14px;
		max-width: 100%;
		width: 100%;
	}

	body.postid-8638.single-product div.product.type-product .woocommerce-tabs table th,
	body.postid-8638.single-product div.product.type-product .woocommerce-tabs table td {
		padding: 5px 6px;
	}

	body.woocommerce-cart main#wp--skip-link--target {
		top: 0;
	}

	body.woocommerce-cart .woocommerce {
		margin-bottom: 56px;
		width: calc(100% - 24px);
	}

	body.woocommerce-cart table.shop_table.cart {
		background: #fffdfb !important;
		border-radius: 12px !important;
		margin-bottom: 76px !important;
		overflow: hidden;
	}

	body.woocommerce-cart table.shop_table.cart::before {
		background: #ed6f3f;
		color: #fff;
		content: "Продукти";
		display: block;
		font-size: 18px;
		font-weight: 800;
		letter-spacing: .04em;
		padding: 14px 16px;
	}

	body.woocommerce-cart table.shop_table.cart thead {
		display: none !important;
	}

	body.woocommerce-cart table.shop_table.cart tbody,
	body.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
		display: block !important;
		height: auto !important;
		width: 100% !important;
	}

	body.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
		border-bottom: 1px solid rgba(45,43,51,.22);
		display: grid !important;
		gap: 8px 12px;
		grid-template-areas:
			"thumb name remove"
			"thumb price remove"
			"thumb quantity remove"
			"thumb subtotal remove";
		grid-template-columns: 92px minmax(0, 1fr) 34px;
		padding: 18px 12px;
	}

	body.woocommerce-cart table.shop_table.cart tbody td {
		align-items: center;
		background: transparent !important;
		display: flex !important;
		height: auto !important;
		min-width: 0;
		padding: 0 !important;
		text-align: left !important;
	}

	body.woocommerce-cart table.shop_table.cart td.product-thumbnail {
		align-self: start;
		grid-area: thumb;
		padding: 0 !important;
	}

	body.woocommerce-cart table.shop_table.cart td.product-thumbnail img {
		border-radius: 10px;
		height: 116px !important;
		object-fit: cover;
		width: 88px !important;
	}

	body.woocommerce-cart table.shop_table.cart td.product-name {
		font-size: 15px;
		font-weight: 700;
		grid-area: name;
		line-height: 1.35;
		overflow-wrap: anywhere;
	}

	body.woocommerce-cart table.shop_table.cart td.product-name::before {
		content: none !important;
		display: none !important;
	}

	body.woocommerce-cart table.shop_table.cart td.product-price { grid-area: price; }
	body.woocommerce-cart table.shop_table.cart td.product-quantity { grid-area: quantity; }
	body.woocommerce-cart table.shop_table.cart td.product-subtotal { grid-area: subtotal; }
	body.woocommerce-cart table.shop_table.cart td.product-remove { align-self: start; grid-area: remove; justify-content: center; }

	body.woocommerce-cart table.shop_table.cart td.product-price::before,
	body.woocommerce-cart table.shop_table.cart td.product-quantity::before,
	body.woocommerce-cart table.shop_table.cart td.product-subtotal::before {
		color: #615b61;
		font-size: 12px;
		font-weight: 700;
		margin-right: 8px;
	}

	body.woocommerce-cart table.shop_table.cart td.product-price::before { content: "Цена:"; }
	body.woocommerce-cart table.shop_table.cart td.product-quantity::before { content: "Брой:"; }
	body.woocommerce-cart table.shop_table.cart td.product-subtotal::before { content: "Общо:"; }

	body.woocommerce-cart table.shop_table.cart td.product-quantity input.qty {
		border: 1px solid #2d2b33;
		height: 44px;
		width: 72px;
	}

	body.woocommerce-cart table.shop_table.cart tbody tr:not(.cart_item) {
		display: block;
		height: auto;
		position: static;
	}

	body.woocommerce-cart table.shop_table.cart td.actions {
		display: block !important;
		height: auto;
		padding: 14px 12px !important;
	}

	body.woocommerce-cart table.shop_table.cart td.actions button,
	body.woocommerce-cart table.shop_table.cart td.actions .button {
		box-sizing: border-box;
		min-height: 48px;
		width: 100%;
	}

	body.woocommerce-cart .cart-collaterals .cart_totals {
		padding: 26px 16px;
	}

	body.woocommerce-cart .cart_totals h2 {
		font-size: 28px;
		line-height: 1.1;
	}

	body.woocommerce-cart .cart_totals table.shop_table th,
	body.woocommerce-cart .cart_totals table.shop_table td {
		box-sizing: border-box;
		font-size: 14px;
		padding: 13px 5px !important;
	}

	body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
		box-sizing: border-box;
		font-size: 14px !important;
		line-height: 1.3 !important;
		min-height: 52px;
		padding: 13px 16px !important;
		white-space: normal;
		width: 100%;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) main.aruna-checkout-shell {
		box-sizing: border-box;
		padding: 18px 0 64px !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout {
		box-sizing: border-box;
		margin: 24px auto 56px !important;
		width: calc(100% - 24px) !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout h3,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading {
		font-size: 25px;
		line-height: 1.2;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .form-row {
		box-sizing: border-box;
		float: none !important;
		width: 100% !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input.input-text,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout textarea,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout select,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .select2-container,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .select2-selection {
		box-sizing: border-box;
		max-width: 100% !important;
		min-height: 48px;
		width: 100% !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout .woocommerce-checkout-order-review-wrap {
		border-radius: 12px;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table {
		table-layout: fixed;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table th,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table td {
		font-size: 13px;
		line-height: 1.4;
		padding: 14px 8px !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .product-name {
		overflow-wrap: anywhere;
		white-space: normal;
		width: 68%;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .product-total,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .woocommerce-Price-amount,
	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .woocommerce-Price-currencySymbol {
		white-space: nowrap;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .product-name img {
		height: 62px !important;
		margin-right: 10px;
		max-width: 62px !important;
		width: 62px !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout table.woocommerce-checkout-review-order-table .checkout-review-order-details {
		box-sizing: border-box;
		max-width: calc(100% - 72px);
		padding: 8px 0;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment .place-order {
		padding-top: 16px !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #payment #place_order,
	body.woocommerce-checkout:not(.woocommerce-order-received) #edit_details.econt-button,
	body.woocommerce-checkout:not(.woocommerce-order-received) .econt-button-details {
		box-sizing: border-box;
		float: none !important;
		min-height: 48px;
		white-space: normal;
		width: 100% !important;
	}

	body.woocommerce-checkout .ui-dialog,
	body.woocommerce-checkout .econt-modal,
	body.woocommerce-checkout #econt-modal,
	body.woocommerce-checkout iframe {
		box-sizing: border-box;
		max-width: calc(100vw - 20px) !important;
	}
}
