/*
 * Sansara Store — airy aqua storefront palette.
 * Dark teal remains a supporting colour; aqua is the primary interactive colour.
 */

:root {
	--sansara-aqua-600: #087e7b;
	--sansara-aqua-500: #14b8b3;
	--sansara-aqua-400: #27cbc4;
	--sansara-aqua-100: #dff7f4;
	--sansara-aqua-050: #f1fbf9;
	--sansara-ivory: #fbfaf7;
	--sansara-navy: #102f33;
	--sansara-line: #dcebe9;
	--sansara-gradient: linear-gradient(135deg, #079b97 0%, #20c7c0 100%);
	--sansara-gradient-deep: linear-gradient(135deg, #0b6868 0%, #079b97 100%);
	--sansara-aqua-shadow: 0 12px 26px rgba(7, 155, 151, .19);
	--aqua: var(--sansara-aqua-500);
	--aqua-dark: var(--sansara-aqua-600);
	--ink: var(--sansara-navy);
	--line: var(--sansara-line);
}

html {
	background: var(--sansara-ivory);
}

body {
	background:
		radial-gradient(circle at 8% 4%, rgba(39, 203, 196, .06), transparent 22rem),
		var(--sansara-ivory);
}

::selection {
	background: rgba(20, 184, 179, .25);
	color: var(--sansara-navy);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid rgba(39, 203, 196, .36);
	outline-offset: 2px;
}

/* Header and discovery */
.site-header {
	border-bottom-color: rgba(7, 155, 151, .1);
	box-shadow: 0 8px 28px rgba(16, 47, 51, .07);
}

.header-cart,
.woocommerce-product-search button {
	background: var(--sansara-gradient) !important;
	box-shadow: var(--sansara-aqua-shadow);
}

.header-cart:hover,
.woocommerce-product-search button:hover {
	background: linear-gradient(135deg, #058b88 0%, #17bdb7 100%) !important;
}

.header-navigation {
	background: var(--sansara-gradient-deep);
}

.nav-shell li a:hover,
.nav-shell .current-menu-item > a {
	background: rgba(255, 255, 255, .13);
	color: #fff;
}

.store-promise-strip {
	border-color: var(--sansara-line);
	background: rgba(255, 255, 255, .9);
}

.store-promise .promise-icon {
	background: var(--sansara-aqua-100);
	color: var(--sansara-aqua-600);
}

/* Homepage surfaces */
.sansara-hero {
	box-shadow: 0 22px 52px rgba(7, 126, 123, .11);
}

.hero-price,
.hero-sticker {
	border-color: #cfe8e5;
}

.hero-tradein {
	background: var(--sansara-gradient-deep);
	box-shadow: 0 14px 30px rgba(7, 126, 123, .2);
}

.category-strip .category-card,
.category-strip > a {
	border-color: var(--sansara-line);
	background: linear-gradient(145deg, #fff 0%, var(--sansara-aqua-050) 100%);
}

.category-strip .category-card:hover,
.category-strip > a:hover {
	border-color: #a7dfda;
	box-shadow: 0 12px 28px rgba(7, 155, 151, .11);
}

.home-products,
.home-catalog,
.sansara-used-home {
	border-color: var(--sansara-line);
}

/* Product cards */
.woocommerce ul.products li.product {
	border-color: var(--sansara-line);
	background: rgba(255, 255, 255, .97);
}

.woocommerce ul.products li.product:hover {
	border-color: #9eddd8;
	box-shadow: 0 16px 36px rgba(7, 126, 123, .12);
}

.woocommerce ul.products li.product a img {
	background: linear-gradient(145deg, #fafbf9 0%, #eef9f7 100%);
}

.woocommerce ul.products li.product .button,
.woocommerce div.product form.cart .button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wc-block-components-button,
.sansara-empty-cart-actions .button,
.sansara-used-empty .button,
.sansara-sort-panel form button,
.sansara-filter-actions button,
body.woocommerce-cart .woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button.button.alt {
	border: 0 !important;
	background: var(--sansara-gradient) !important;
	color: #fff !important;
	box-shadow: 0 9px 20px rgba(7, 155, 151, .15);
	transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce div.product form.cart .button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.wc-block-components-button:hover,
.sansara-empty-cart-actions .button:hover,
.sansara-used-empty .button:hover,
.sansara-sort-panel form button:hover,
.sansara-filter-actions button:hover,
body.woocommerce-cart .woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button.button.alt:hover {
	filter: saturate(1.06) brightness(.96);
	box-shadow: var(--sansara-aqua-shadow);
	transform: translateY(-1px);
}

.woocommerce ul.products li.product .added_to_cart,
.sansara-card-payment,
.sansara-card-payment a,
.woocommerce div.product .stock {
	color: var(--sansara-aqua-600) !important;
}

.sansara-card-colors i,
.sansara-used-card-meta span {
	border-color: #bfe7e3;
}

.sansara-used-card-meta span {
	background: var(--sansara-aqua-100);
	color: #067a77;
}

.sansara-used-home > header p:not(.eyebrow) {
	display: none;
}

.sansara-gift {
	color: #087f7c;
}

/* Catalogue controls */
.sansara-category-rail a,
.sansara-catalog-toolbar,
.woocommerce .woocommerce-ordering select {
	border-color: var(--sansara-line);
}

.sansara-category-rail a:hover {
	border-color: #9eddd8;
	background: var(--sansara-aqua-050);
}

.sansara-category-rail a.is-active {
	border-color: var(--sansara-aqua-500);
	background: var(--sansara-aqua-100);
	color: #067a77;
}

.sansara-catalog-toolbar {
	background: linear-gradient(135deg, #fff 0%, var(--sansara-aqua-050) 100%);
}

.sansara-catalog-toolbar__summary span i {
	background: var(--sansara-aqua-500);
	box-shadow: 0 0 0 4px rgba(20, 184, 179, .12);
}

/* Promotional blocks: brighter, but still useful as contrast anchors. */
.offer-banner:not(.offer-credit),
.brand-cta-pickup {
	background: linear-gradient(135deg, #0b7270 0%, #0da39f 62%, #21c7c0 100%) !important;
	box-shadow: 0 18px 40px rgba(7, 126, 123, .17);
}

.offer-banner:not(.offer-credit) p:not(.eyebrow):not(.offer-link),
.brand-cta-pickup p:not(.eyebrow) {
	color: rgba(255, 255, 255, .82);
}

.offer-credit {
	background: linear-gradient(145deg, #e6f8f6 0%, #f4fcfb 100%);
}

.service-cards > .service-card,
.service-cards > .wp-block-group__inner-container > .service-card {
	border: 1px solid var(--sansara-line);
	background: linear-gradient(145deg, #fff 0%, var(--sansara-aqua-050) 100%);
	color: var(--sansara-navy);
}

.service-cards > .service-card:nth-child(2n),
.service-cards > .wp-block-group__inner-container > .service-card:nth-child(2n) {
	background: linear-gradient(145deg, #e5f8f6 0%, #f7fdfc 100%);
}

.service-cards .service-number {
	background: var(--sansara-aqua-100);
	color: var(--sansara-aqua-600);
}

.service-cards > .service-card h3 a,
.service-cards .service-card h3 a {
	color: var(--sansara-navy);
}

.service-cards > .service-card > p:last-child,
.service-cards .service-card p:last-child {
	color: #667879;
}

.brand-cta-actions .wp-block-button__link {
	background: var(--sansara-gradient);
	box-shadow: 0 9px 20px rgba(7, 155, 151, .14);
}

.brand-cta-actions .is-style-outline .wp-block-button__link {
	border-color: var(--sansara-aqua-600);
	background: transparent;
	color: var(--sansara-aqua-600);
	box-shadow: none;
}

/* Trade-In campaign poster generated for the storefront. */
.sansara-tradein-cta {
	min-height: 360px;
	grid-template-columns: minmax(280px, 420px) 1fr;
	grid-template-rows: auto auto auto;
	align-content: center;
	align-items: center;
	gap: 16px;
	border: 1px solid rgba(7, 155, 151, .18);
	border-radius: 28px;
	padding: 40px 44px;
	background: #f7f1e9 url(../images/tradein-poster-v1.png) center / cover no-repeat !important;
	color: var(--sansara-navy);
	box-shadow: 0 24px 56px rgba(7, 126, 123, .16);
}

.sansara-tradein-cta::before {
	content: "";
	position: absolute;
	z-index: 0;
	inset: 0;
	background: linear-gradient(90deg, rgba(251, 247, 241, .99) 0%, rgba(251, 247, 241, .96) 31%, rgba(251, 247, 241, .62) 43%, rgba(251, 247, 241, 0) 57%);
	font-size: 0;
	transform: none;
	pointer-events: none;
}

.sansara-tradein-cta > * {
	position: relative;
	z-index: 1;
	grid-column: 1;
}

.sansara-tradein-cta-copy .eyebrow {
	margin-bottom: 9px;
	color: var(--sansara-aqua-600);
}

.sansara-tradein-cta-copy h3 {
	max-width: 390px;
	color: var(--sansara-navy);
	font-size: clamp(31px, 3.2vw, 43px);
	line-height: .96;
}

.sansara-tradein-cta-copy > p:last-child {
	max-width: 370px;
	color: #56696b;
	font-size: 13px;
}

.sansara-tradein-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
}

.sansara-tradein-steps span {
	min-height: 55px;
	border-color: rgba(7, 155, 151, .16);
	border-radius: 12px;
	padding: 9px 10px;
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 8px 20px rgba(16, 47, 51, .05);
	backdrop-filter: blur(8px);
}

.sansara-tradein-steps b {
	color: var(--sansara-aqua-600);
}

.sansara-tradein-steps small {
	color: #385557;
}

.sansara-tradein-cta > a {
	min-height: 52px;
	width: max-content;
	border-radius: 13px;
	padding-inline: 22px;
	background: var(--sansara-gradient) !important;
	color: #fff;
	box-shadow: var(--sansara-aqua-shadow);
}

.sansara-tradein-cta > a span {
	color: #fff;
}

.sansara-tradein-cta > a:hover {
	background: linear-gradient(135deg, #058b88 0%, #17bdb7 100%) !important;
	color: #fff;
}

/* Product and cart shells */
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .summary,
body.woocommerce-cart article.content-card,
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals {
	border-color: var(--sansara-line);
}

.woocommerce div.product .woocommerce-product-gallery {
	background: linear-gradient(145deg, #fff 0%, #f0faf8 100%);
}

.single-product .product_cat-used .sansara-used-details {
	background: var(--sansara-gradient-deep);
}

.sansara-used-details {
	border-color: #cde8e4;
	background: var(--sansara-aqua-050);
}

body.woocommerce-cart .woocommerce .cart_totals,
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart article.content-card {
	background: rgba(255, 255, 255, .96);
}

body.woocommerce-cart .woocommerce-shipping-methods li:has(input:checked) {
	border-color: var(--sansara-aqua-500);
	background: var(--sansara-aqua-050);
}

input[type="radio"],
input[type="checkbox"] {
	accent-color: var(--sansara-aqua-600);
}

/* Footer remains the visual anchor, without the previous near-black green. */
.site-footer {
	background: linear-gradient(135deg, #0d6666 0%, #087d7a 100%);
	color: #f2fffd;
}

.footer-grid p,
.footer-grid span,
.footer-grid a {
	color: rgba(240, 255, 253, .76);
}

.footer-grid a:hover {
	color: #fff;
}

.footer-bottom {
	border-top-color: rgba(255, 255, 255, .18);
	color: rgba(240, 255, 253, .6);
}

/* Mobile navigation and bottom bar */
@media (max-width: 720px) {
	.mobile-menu-toggle {
		border-color: #cbe7e4;
		background: var(--sansara-aqua-050);
		color: var(--sansara-aqua-600);
	}

	.header-cart {
		background: var(--sansara-gradient) !important;
	}

	.nav-shell nav {
		background: linear-gradient(165deg, #0b6767 0%, #078e8a 100%);
	}

	.mobile-bottom-nav,
	.sansara-mobile-nav {
		border-top-color: #d9ebe8;
		background: rgba(255, 255, 255, .97);
	}

	.mobile-bottom-nav a.is-active,
	.mobile-bottom-nav .current,
	.sansara-mobile-nav a.is-active,
	.sansara-mobile-nav .current {
		color: var(--sansara-aqua-600);
	}

	.mobile-product-bar > a,
	.mobile-cart-bar > a,
	.mobile-checkout-bar > button {
		border: 0;
		background: var(--sansara-gradient) !important;
		color: #fff;
		box-shadow: 0 9px 22px rgba(7, 155, 151, .2);
	}

	.sansara-category-rail a.is-active {
		border-color: #9eddd8;
		background: var(--sansara-aqua-100);
		color: #067a77;
	}

	.sansara-tradein-cta {
		min-height: 540px;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-end;
		gap: 14px;
		border-radius: 22px;
		padding: 245px 18px 20px;
		background-color: #f7f1e9 !important;
		background-image: url(../images/tradein-poster-mobile-v1.webp) !important;
		background-size: auto 280px !important;
		background-position: 90% top !important;
		background-repeat: no-repeat !important;
	}

	.sansara-tradein-cta::before {
		background: linear-gradient(180deg, rgba(247, 241, 233, 0) 0, rgba(247, 241, 233, .05) 205px, #f7f1e9 268px, #f7f1e9 100%);
	}

	.sansara-tradein-cta-copy h3 {
		font-size: 30px;
	}

	.sansara-tradein-cta-copy > p:last-child {
		font-size: 11px;
	}

	.sansara-tradein-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px;
	}

	.sansara-tradein-steps span {
		min-height: 53px;
		display: grid;
		grid-template-columns: 1fr;
		gap: 3px;
		padding: 8px;
	}

	.sansara-tradein-cta > a {
		width: 100%;
	}

	.site-footer {
		background: linear-gradient(155deg, #0d6666 0%, #087d7a 100%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce ul.products li.product,
	.woocommerce ul.products li.product .button,
	.woocommerce div.product form.cart .button {
		transition: none;
	}
}
/* Mobile verified-device showcase: one readable card per row. */
@media (max-width: 720px) {
	.sansara-used-home {
		width: calc(100% - 24px);
		margin: 22px auto 34px;
		padding: 22px 12px 24px;
		border-color: #dce9e6;
		border-radius: 22px;
		background: linear-gradient(155deg, #f2f8f6 0%, #fbfaf6 100%);
	}

	.sansara-used-home > header {
		gap: 14px;
		margin-bottom: 18px;
		padding: 0 3px;
	}

	.sansara-used-home > header h2 {
		max-width: 310px;
		margin-bottom: 0;
		font-size: 30px;
		line-height: .96;
	}

	.sansara-used-home > header > a {
		min-height: 38px;
		border-color: #badbd7;
		border-radius: 999px;
		padding: 0 13px;
		background: rgba(255, 255, 255, .76);
	}

	body.sansara-woocommerce .sansara-used-home ul.products {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.sansara-used-home ul.products li.product {
		position: relative;
		display: grid !important;
		min-height: 200px;
		grid-template-columns: 116px minmax(0, 1fr);
		grid-template-rows: auto auto auto auto auto 42px;
		gap: 4px 13px;
		overflow: hidden;
		border: 1px solid #d8e6e3;
		border-radius: 19px;
		padding: 11px !important;
		background: rgba(255, 255, 255, .96);
		box-shadow: 0 10px 26px rgba(19, 67, 65, .07);
		transform: none !important;
	}

	.sansara-used-home ul.products li.product > a.woocommerce-LoopProduct-link {
		display: contents !important;
	}

	.sansara-used-home ul.products li.product a img {
		width: 116px !important;
		height: 100% !important;
		min-height: 178px;
		max-height: 206px;
		grid-column: 1;
		grid-row: 1 / 7;
		margin: 0 !important;
		border-radius: 14px;
		padding: 0 !important;
		background: #edf1ef;
		object-fit: cover;
		object-position: center;
	}

	.sansara-used-home .sansara-used-badge {
		z-index: 3;
		top: 18px;
		left: 18px;
		right: auto;
		padding: 6px 8px;
		border: 1px solid rgba(255, 255, 255, .3);
		border-radius: 8px;
		font-size: 8px;
		letter-spacing: .03em;
		box-shadow: 0 6px 15px rgba(0, 0, 0, .14);
	}

	.sansara-used-home ul.products li.product .woocommerce-loop-product__title {
		display: -webkit-box;
		grid-column: 2;
		grid-row: 1;
		overflow: hidden;
		margin: 1px 0 2px;
		padding: 0 !important;
		color: #122628;
		font-size: 14px !important;
		font-weight: 900;
		line-height: 1.25;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.sansara-used-home .sansara-used-card-meta {
		grid-column: 2;
		grid-row: 2;
		margin: 0;
		gap: 5px;
	}

	.sansara-used-home .sansara-used-card-meta span {
		min-height: 22px;
		padding: 0 7px;
		border-radius: 7px;
		font-size: 8px;
	}

	.sansara-used-home .sansara-card-availability {
		grid-column: 2;
		grid-row: 3;
		margin: 1px 0 0;
	}

	.sansara-used-home .sansara-card-availability span {
		color: #418548;
		font-size: 9px;
		font-weight: 850;
	}

	.sansara-used-home ul.products li.product .price {
		display: block;
		grid-column: 2;
		grid-row: 4;
		align-self: end;
		margin: 3px 0 0 !important;
		color: #122628 !important;
		font-size: 21px !important;
		font-weight: 950 !important;
		letter-spacing: -.025em;
		line-height: 1;
	}

	.sansara-used-home .sansara-card-payment {
		display: flex;
		grid-column: 2;
		grid-row: 5;
		flex-wrap: wrap;
		gap: 0 4px;
		align-items: baseline;
		margin: 0;
		color: #688081;
		font-size: 8px;
		line-height: 1.25;
	}

	.sansara-used-home .sansara-card-payment strong {
		color: #087e7b;
		font-size: 10px;
	}

	.sansara-used-home .sansara-card-payment span {
		width: 100%;
		margin: 0;
		color: #087e7b;
		font-size: 8px;
		font-weight: 800;
	}

	.sansara-used-home ul.products li.product > .button {
		width: 100%;
		min-height: 42px;
		grid-column: 2;
		grid-row: 6;
		align-self: end;
		margin: 0 !important;
		border-radius: 11px !important;
		padding: 0 10px !important;
		font-size: 10px !important;
		box-shadow: 0 8px 18px rgba(8, 159, 154, .18);
	}

	.sansara-used-home ul.products li.product > .screen-reader-text {
		display: none;
	}
}
/* Mobile used-card information panel v2. */
@media (max-width: 720px) {
	.sansara-used-home ul.products li.product {
		min-height: 194px;
		grid-template-columns: 104px minmax(0, 1fr);
		grid-template-rows: auto auto auto auto auto 40px;
		gap: 4px 12px;
		padding: 11px !important;
	}

	.sansara-used-home ul.products li.product a img {
		width: 104px !important;
		min-height: 172px;
		max-height: 198px;
	}

	.sansara-used-home ul.products li.product .woocommerce-loop-product__title {
		min-height: 0;
		margin: 0 0 2px;
		font-size: 14px !important;
		line-height: 1.18;
	}

	.sansara-used-home .sansara-used-card-meta {
		gap: 4px;
	}

	.sansara-used-home .sansara-used-card-meta span {
		min-height: 21px;
		padding: 0 7px;
		font-size: 8px;
	}

	.sansara-used-home .sansara-card-availability {
		align-self: center;
		margin: 1px 0;
	}

	.sansara-used-home .sansara-card-availability span {
		font-size: 0;
	}

	.sansara-used-home .sansara-card-availability span::before {
		color: #418548;
		content: "●  1 экземпляр в наличии";
		font-size: 8px;
		font-weight: 850;
		letter-spacing: -.01em;
	}

	.sansara-used-home ul.products li.product .price {
		margin-top: 2px !important;
		font-size: 22px !important;
	}

	.sansara-used-home .sansara-card-payment {
		width: max-content;
		max-width: 100%;
		gap: 3px;
		margin: 2px 0 3px;
		border-radius: 8px;
		padding: 5px 7px;
		color: transparent;
		background: #edf8f6;
		font-size: 0;
	}

	.sansara-used-home .sansara-card-payment::before {
		color: #5f7879;
		content: "Рассрочка";
		font-size: 8px;
	}

	.sansara-used-home .sansara-card-payment strong {
		color: #087e7b;
		font-size: 9px;
		white-space: nowrap;
	}

	.sansara-used-home .sansara-card-payment span {
		display: none;
	}

	.sansara-used-home ul.products li.product > .button {
		min-height: 40px;
		border-radius: 10px !important;
		font-size: 10px !important;
	}

	.sansara-used-home ul.products li.product > .added_to_cart {
		display: none !important;
	}
}
/* Keep the mobile reservation label optically centered. */
@media (max-width: 720px) {
	.sansara-used-home ul.products li.product > .button {
		display: flex !important;
		align-items: center;
		justify-content: center;
		text-align: center;
		line-height: 1.1;
	}
}
/* Availability is implicit for reservable verified devices on mobile. */
@media (max-width: 720px) {
	.sansara-used-home .sansara-card-availability {
		display: none;
	}
}
/* Center every mobile catalogue CTA regardless of WooCommerce product type. */
@media (max-width: 720px) {
	.woocommerce ul.products li.product > .button {
		display: flex !important;
		align-items: center;
		justify-content: center;
		text-align: center;
		line-height: 1.1;
	}
}
/* Compact closing bridge after the verified-device shelf. */
.sansara-tradein-cta.sansara-tradein-cta--compact {
	display: grid;
	min-height: 0;
	grid-template-columns: 54px minmax(0, 1fr) auto;
	grid-template-rows: 1fr;
	gap: 18px;
	align-items: center;
	margin-top: 24px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 22px;
	padding: 22px 24px;
	color: #fff;
	background: linear-gradient(125deg, #123f41 0%, #087a78 100%) !important;
	box-shadow: 0 16px 38px rgba(14, 67, 67, .16);
}

.sansara-tradein-cta.sansara-tradein-cta--compact::before {
	display: none;
}

.sansara-tradein-cta.sansara-tradein-cta--compact > * {
	grid-column: auto;
}

.sansara-tradein-cta-icon {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .15);
	border-radius: 17px;
	color: #8ce5df;
	background: rgba(255, 255, 255, .08);
	font-size: 27px;
	font-weight: 800;
}

.sansara-tradein-cta--compact .sansara-tradein-cta-copy .eyebrow {
	margin: 0 0 4px;
	color: #83e2dd;
	font-size: 9px;
}

.sansara-tradein-cta--compact .sansara-tradein-cta-copy h3 {
	max-width: none;
	margin: 0;
	color: #fff;
	font-size: 29px;
	line-height: 1;
}

.sansara-tradein-cta.sansara-tradein-cta--compact > a {
	min-height: 46px;
	width: max-content;
	border: 0;
	border-radius: 12px;
	padding-inline: 18px;
	color: #0a6262;
	background: #fff !important;
	box-shadow: 0 9px 22px rgba(0, 0, 0, .13);
}

.sansara-tradein-cta.sansara-tradein-cta--compact > a span {
	color: #0a7775;
}

.sansara-tradein-cta.sansara-tradein-cta--compact > a:hover {
	color: #064f50;
	background: #eefafa !important;
}

@media (max-width: 720px) {
	.sansara-tradein-cta.sansara-tradein-cta--compact {
		display: grid;
		min-height: 0;
		grid-template-columns: 44px minmax(0, 1fr);
		grid-template-rows: auto auto;
		gap: 12px 13px;
		align-items: center;
		justify-content: initial;
		margin-top: 18px;
		border-radius: 18px;
		padding: 18px;
		background: linear-gradient(135deg, #123f41 0%, #087a78 100%) !important;
	}

	.sansara-tradein-cta--compact .sansara-tradein-cta-icon {
		width: 44px;
		height: 44px;
		border-radius: 14px;
		font-size: 22px;
	}

	.sansara-tradein-cta--compact .sansara-tradein-cta-copy h3 {
		font-size: 23px;
		line-height: .98;
	}

	.sansara-tradein-cta.sansara-tradein-cta--compact > a {
		min-height: 46px;
		width: 100%;
		grid-column: 1 / -1;
		padding-inline: 16px;
	}
}
/* Editorial Trade-In card: one message, one interaction. */
.sansara-tradein-card {
	position: relative;
	isolation: isolate;
	display: grid;
	min-height: 168px;
	grid-template-columns: minmax(0, 1fr) 118px;
	grid-template-rows: auto 1fr auto;
	gap: 5px 24px;
	align-items: center;
	overflow: hidden;
	margin-top: 24px;
	border: 1px solid #d8e7e3;
	border-radius: 24px;
	padding: 27px 30px;
	color: #122628;
	background:
		radial-gradient(circle at 78% 120%, rgba(23, 190, 183, .18) 0 26%, transparent 27%),
		linear-gradient(135deg, #fbf6ef 0%, #edf8f5 100%);
	box-shadow: 0 15px 38px rgba(22, 77, 74, .1);
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.sansara-tradein-card::before {
	position: absolute;
	z-index: -1;
	top: -85px;
	right: 36px;
	width: 220px;
	height: 220px;
	border: 1px solid rgba(8, 126, 123, .1);
	border-radius: 50%;
	content: "";
}

.sansara-tradein-card:hover {
	border-color: #a9d8d3;
	box-shadow: 0 20px 44px rgba(15, 105, 101, .14);
	transform: translateY(-2px);
}

.sansara-tradein-card__kicker {
	grid-column: 1;
	color: #087e7b;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.sansara-tradein-card > strong {
	grid-column: 1;
	color: #122628;
	font-size: clamp(45px, 5.4vw, 68px);
	font-weight: 950;
	letter-spacing: -.065em;
	line-height: .9;
}

.sansara-tradein-card__action {
	display: inline-flex;
	width: max-content;
	grid-column: 1;
	gap: 10px;
	align-items: center;
	color: #0a6867;
	font-size: 12px;
	font-weight: 900;
}

.sansara-tradein-card__action b {
	display: grid;
	width: 25px;
	height: 25px;
	place-items: center;
	border-radius: 50%;
	color: #fff;
	background: #12bcb7;
	font-size: 14px;
}

.sansara-tradein-card__visual {
	position: relative;
	display: grid;
	width: 104px;
	height: 104px;
	grid-column: 2;
	grid-row: 1 / -1;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .42);
	border-radius: 32px;
	color: #dff9f6;
	background: linear-gradient(145deg, #075e60 0%, #12bcb7 100%);
	box-shadow: 0 16px 34px rgba(8, 126, 123, .22);
	font-size: 49px;
	font-weight: 700;
	transform: rotate(4deg);
}

.sansara-tradein-card__visual::after {
	position: absolute;
	inset: 10px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 25px;
	content: "";
}

@media (max-width: 720px) {
	.sansara-tradein-card {
		min-height: 174px;
		grid-template-columns: minmax(0, 1fr) 82px;
		gap: 5px 12px;
		margin-top: 18px;
		border-radius: 20px;
		padding: 22px 18px;
	}

	.sansara-tradein-card::before {
		top: -62px;
		right: -22px;
		width: 160px;
		height: 160px;
	}

	.sansara-tradein-card > strong {
		font-size: 45px;
	}

	.sansara-tradein-card__kicker {
		font-size: 8px;
	}

	.sansara-tradein-card__action {
		gap: 8px;
		font-size: 10px;
	}

	.sansara-tradein-card__action b {
		width: 23px;
		height: 23px;
		font-size: 12px;
	}

	.sansara-tradein-card__visual {
		width: 76px;
		height: 76px;
		border-radius: 24px;
		font-size: 37px;
	}

	.sansara-tradein-card__visual::after {
		inset: 8px;
		border-radius: 18px;
	}
}

/* Mobile homepage: promo cards are the first sales message. */
@media (max-width: 720px) {
	body.home .sansara-hero {
		display: none !important;
	}

	body.home .hero-mobile-promos {
		margin-top: 8px;
	}
}

/* Cart polish: clearer hierarchy and one consistent mobile content grid. */
.sansara-cart-line-copy {
	padding-right: 0;
}

.sansara-cart-line-title {
	padding-right: 42px;
}

.sansara-cart-line-status b {
	max-width: 100%;
	white-space: normal;
}

@media (max-width: 720px) {
	body.woocommerce-cart .content-shell {
		padding-top: 16px;
		padding-bottom: 108px;
	}

	body.woocommerce-cart .content-card > h1 {
		margin-bottom: 18px;
		font-size: 29px;
		font-weight: 850;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-form {
		gap: 12px;
		padding: 0;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-lines {
		gap: 10px;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line {
		grid-template-columns: 100px minmax(0, 1fr);
		gap: 14px;
		border-color: #d8e5e3;
		border-radius: 18px;
		padding: 12px;
		box-shadow: 0 7px 22px rgba(18, 52, 54, .055);
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-media,
	body.woocommerce-cart .woocommerce .sansara-cart-line-media img {
		width: 100px;
		height: 112px;
		border-radius: 13px;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-title {
		display: -webkit-box;
		overflow: hidden;
		padding-right: 38px;
		font-size: 14px;
		font-weight: 800;
		letter-spacing: -.012em;
		line-height: 1.22;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-status {
		width: 100%;
		margin-top: 6px;
		line-height: 1.25;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-status b {
		display: flex;
		font-size: 9.5px;
		font-weight: 750;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-status b::before {
		width: 6px;
		height: 6px;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-price {
		margin-top: 8px;
		font-size: 21px;
		font-weight: 850;
		letter-spacing: -.02em;
		line-height: 1.05;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-quantity.is-fixed {
		display: none;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-line-remove {
		right: 11px;
		top: 11px;
		border-color: #dbe6e5 !important;
		background: #f8fbfa !important;
		color: #758587 !important;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-coupon {
		border-color: #d8e5e3;
		border-radius: 16px;
		box-shadow: 0 5px 16px rgba(18, 52, 54, .04);
	}

	body.woocommerce-cart .woocommerce .sansara-cart-coupon summary {
		min-height: 52px;
		padding: 0 16px;
		font-size: 12px;
		font-weight: 800;
	}

	body.woocommerce-cart .woocommerce .sansara-cart-coupon summary::after {
		font-size: 22px;
		font-weight: 500;
		line-height: 1;
	}

	body.woocommerce-cart .woocommerce .cart-collaterals {
		margin-top: 18px;
	}

	body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
		padding: 0;
		background: transparent;
	}

	body.woocommerce-cart .woocommerce .cart_totals h2 {
		margin: 0 0 14px;
		font-size: 22px;
		font-weight: 850;
		letter-spacing: -.025em;
		line-height: 1.15;
	}

	body.woocommerce-cart .woocommerce .cart_totals table.shop_table {
		background: transparent;
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods {
		gap: 8px;
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods li {
		min-height: 60px;
		grid-template-columns: 20px minmax(0, 1fr);
		gap: 9px;
		border-color: #d8e5e3;
		border-radius: 14px;
		padding: 10px 12px;
		box-shadow: 0 4px 14px rgba(18, 52, 54, .035);
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods li:has(input:checked) {
		border-color: var(--sansara-aqua-600);
		background: var(--sansara-aqua-050);
		box-shadow: 0 6px 18px rgba(7, 126, 123, .09);
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods input {
		width: 18px;
		height: 18px;
		margin: 0;
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods label {
		font-size: 12px;
		font-weight: 800;
		line-height: 1.25;
	}

	body.woocommerce-cart .woocommerce .cart_totals .woocommerce-shipping-methods label::after {
		margin-top: 3px;
		font-size: 9px;
		font-weight: 500;
		line-height: 1.25;
	}

	body.woocommerce-cart .mobile-cart-bar {
		gap: 12px;
		padding-inline: 14px;
	}

	body.woocommerce-cart .mobile-cart-bar > span {
		min-width: 96px;
		line-height: 1.15;
	}

	body.woocommerce-cart .mobile-cart-bar > a {
		min-height: 52px;
		border-radius: 14px;
		font-size: 14px;
	}
}

@media (max-width: 720px) {
	body.woocommerce-cart .woocommerce .cart_totals .shipping > td {
		padding: 0 !important;
	}
}
