:root {
	--ecq-green: #015641;
	--ecq-green-dark: #012900;
	--ecq-ink: #111111;
	--ecq-muted: #5f665f;
	--ecq-border: #e5e8e2;
	--ecq-bg: #ffffff;
	--ecq-bg-soft: #f3f3f3;
	--ecq-sale: #dd1d1d;
	--ecq-radius: 12px;
	--ecq-page: 1400px;
	--ecq-shadow: 2px 6px 15px rgba(0, 0, 0, 0.10);
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	color: var(--ecq-ink);
	background: var(--ecq-bg);
	font-family: "Nunito", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.55;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: var(--ecq-green);
}

img {
	height: auto;
	max-width: 100%;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.ecq-container {
	width: min(var(--ecq-page), calc(100% - 32px));
	margin-inline: auto;
}

.ecq-site-header {
	position: sticky;
	top: 0;
	z-index: 40;
	background: rgba(255, 255, 255, 0.97);
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-ticker {
	overflow: hidden;
	background: var(--ecq-green);
	color: #ffffff;
	padding: 12px 0;
	font-size: 21px;
	line-height: 1;
}

.ecq-ticker-track {
	display: flex;
	width: max-content;
	gap: 100px;
	animation: ecqTicker 35s linear infinite;
	white-space: nowrap;
}

.ecq-ticker span {
	font-weight: 700;
}

@keyframes ecqTicker {
	from {
		transform: translateX(-50%);
	}
	to {
		transform: translateX(0);
	}
}

.ecq-header-main {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 24px;
	min-height: 74px;
	padding-top: 20px;
	padding-bottom: 0;
}

/*
 * Custom logo (Appearance -> Customize -> Site Identity).
 *
 * The uploaded mark is a wide, detailed strip rather than a compact wordmark,
 * so it needs far more room than a typical logo: at the old 110px cap its fine
 * detail (small text, avatars) collapsed into an illegible smudge. 220px keeps
 * it readable inside the 74px header without crowding the nav, which takes the
 * flexible column of the .ecq-header-main grid.
 */
.ecq-brand img {
	max-width: 220px;
	height: auto;
	display: block;
}

/* Text wordmark shown when no custom logo image is set. */
.ecq-wordmark {
	display: block;
	font-size: 26px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--ecq-green);
	text-decoration: none;
	white-space: nowrap;
}

.ecq-wordmark:hover,
.ecq-wordmark:focus {
	text-decoration: none;
	opacity: 0.85;
}

.ecq-site-title {
	font-size: 26px;
	font-weight: 900;
	color: var(--ecq-green);
}

.ecq-menu,
.ecq-footer-menu {
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.ecq-menu a {
	font-weight: 800;
	font-size: 15px;
}

.ecq-header-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ecq-header-search input[type="search"] {
	width: 230px;
	border: 1px solid rgba(1, 86, 65, 0.25);
	border-radius: 8px;
	padding: 11px 13px;
	font: inherit;
}

.ecq-icon-link,
.ecq-cart-link {
	font-size: 14px;
	font-weight: 900;
}

.ecq-cart-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.ecq-cart-count {
	min-width: 22px;
	height: 22px;
	display: inline-grid;
	place-items: center;
	border-radius: 99px;
	background: var(--ecq-green);
	color: #ffffff;
	font-size: 12px;
}

.ecq-menu-toggle {
	display: none;
	width: 42px;
	height: 42px;
	border: 1px solid var(--ecq-border);
	border-radius: 6px;
	background: #ffffff;
	padding: 10px;
}

.ecq-menu-toggle span:not(.screen-reader-text) {
	display: block;
	height: 2px;
	margin: 5px 0;
	background: var(--ecq-ink);
}

.button,
button,
input[type="submit"],
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	border: 2px solid var(--ecq-green);
	border-radius: 6px;
	background: var(--ecq-green);
	color: #ffffff;
	padding: 10px 18px;
	font-family: inherit;
	font-weight: 900;
	line-height: 1.2;
	cursor: pointer;
	text-align: center;
}

.wc-block-grid__product-add-to-cart {
    width: 100%;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background: var(--ecq-green-dark);
	border-color: var(--ecq-green-dark);
	color: #ffffff;
}

.button.button-outline {
	background: transparent;
	color: var(--ecq-green);
}

.button.button-outline:hover {
	color: #ffffff;
}

input,
select,
textarea {
	width: 100%;
	border: 1px solid rgba(1, 86, 65, 0.30);
	border-radius: 6px;
	padding: 12px 14px;
	font: inherit;
	background: #ffffff;
}

textarea {
	resize: vertical;
}

.ecq-page-header h1,
.woocommerce-products-header__title,
.product_title {
	margin: 0;
	font-weight: 900;
	line-height: 1.12;
	letter-spacing: 0;
}

.ecq-home-section,
.ecq-content,
.ecq-page,
.ecq-shop-main {
	padding-block: clamp(34px, 5vw, 64px);
}

.ecq-muted-band {
	width: 100%;
	max-width: none;
	background: var(--ecq-bg-soft);
	padding-block: clamp(34px, 5vw, 64px);
}

.ecq-shopify-banner {
	width: min(var(--ecq-page), 100%);
	margin: 0 auto;
	padding-top: 0;
}

.ecq-shopify-banner a,
.ecq-shopify-banner img {
	display: block;
	width: 100%;
}

.ecq-trustpilot-home {
	padding: 0;
	background: #ffffff;
}

.ecq-trustpilot-home a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	color: #000000;
	font-size: 14px;
}

.ecq-trustpilot-home strong {
	font-size: 16px;
	font-weight: 700;
}

.ecq-trustpilot-home span {
	font-weight: 400;
}

.ecq-trustpilot-home em {
	font-style: normal;
	font-weight: 800;
}

.ecq-trust-stars {
	display: inline-flex;
	gap: 2px;
}

.ecq-trust-stars i {
	display: block;
	width: 16px;
	height: 16px;
	background: #00b67a;
	clip-path: polygon(50% 0, 62% 34%, 98% 35%, 69% 56%, 79% 91%, 50% 70%, 21% 91%, 31% 56%, 2% 35%, 38% 34%);
}

.ecq-popular-tiles {
	padding-bottom: 44px;
}

.ecq-popular-tiles h2 {
	margin: 0 0 16px;
	font-size: 28px;
	line-height: 1.2;
}

.ecq-tile-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 13px;
	text-align: center;
}

.ecq-tile-grid a {
	display: block;
	color: #000000;
}

.ecq-tile-grid span {
	position: relative;
	display: block;
	overflow: hidden;
	background: rgb(243, 243, 243);
}

.ecq-tile-grid span::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	transition: background 160ms ease;
}

.ecq-tile-grid a:hover span::after {
	background: rgba(0, 0, 0, 0.3);
}

.ecq-tile-grid img {
	display: block;
	width: calc(100% - 20px);
	margin: 10px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.ecq-tile-grid strong {
	display: block;
	margin-top: 10px;
	font-size: 20px;
	font-weight: 900;
}

.ecq-home-reviews {
	padding: 42px 0 56px;
	background: var(--ecq-bg-soft);
}

.ecq-review-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.ecq-review-grid blockquote {
	margin: 0;
	border-radius: var(--ecq-radius);
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
	padding: 22px;
}

.ecq-review-grid p {
	margin: 0 0 14px;
}

.ecq-review-grid cite {
	color: var(--ecq-green);
	font-style: normal;
	font-weight: 900;
}

.ecq-section-heading {
	margin-bottom: 22px;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	margin-bottom: 22px;
}

.woocommerce .woocommerce-result-count {
	float: left;
}

.woocommerce .woocommerce-ordering {
	float: right;
	max-width: 200px;
}

.ecq-section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 16px;
}

.ecq-section-heading h2 {
	margin: 0;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.15;
}

.ecq-section-heading a {
	color: var(--ecq-green);
	font-weight: 900;
}

.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	padding: 0;
	margin: 0;
	list-style: none;
	clear: both;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	float: none;
	width: auto;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	background: #ffffff;
	border-radius: var(--ecq-radius);
	box-shadow: var(--ecq-shadow);
	overflow: hidden;
	text-align: center;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-width: 0;
	color: inherit;
}

.woocommerce ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	margin: 0;
	background: #f8f8f8;
	transition: transform 180ms ease;
}

.woocommerce ul.products li.product img.ecq-shopify-product-image {
	height: auto;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.025);
}

.woocommerce-loop-product__title {
	min-height: 3.2em;
	margin: 14px 14px 8px;
	padding: 0;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.28;
	letter-spacing: 0;
}

.woocommerce ul.products li.product .price {
	display: block;
	margin: 0 14px 14px;
	color: var(--ecq-green);
	font-size: 17px;
	font-weight: 900;
}

.woocommerce .price del {
	color: var(--ecq-muted);
	font-weight: 600;
	opacity: 0.75;
}

.woocommerce .price ins {
	text-decoration: none;
}

.ecq-product-badges {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	max-width: calc(100% - 20px);
}

.ecq-product-badge,
.woocommerce span.onsale {
	border-radius: 6px;
	background: var(--ecq-green-dark);
	color: #ffffff;
	padding: 5px 8px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.ecq-card-actions {
	padding: 0 14px 16px;
	margin-top: auto;
}

.ecq-card-actions .button {
	width: 100%;
	min-height: 40px;
	font-size: 14px;
}

.ecq-card-actions .added_to_cart {
	display: block;
	margin-top: 10px;
    text-decoration: underline;
}

.woocommerce nav.woocommerce-pagination ul {
	display: flex;
	justify-content: center;
	gap: 6px;
	border: 0;
	margin-top: 32px;
	list-style: none;
	padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	min-width: 42px;
	border: 1px solid var(--ecq-border);
	border-radius: 6px;
	color: var(--ecq-ink);
	padding: 10px 12px;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--ecq-green);
	color: #ffffff;
    border-color: var(--ecq-green);
}

.woocommerce .woocommerce-breadcrumb {
	margin: 0 0 18px;
	color: var(--ecq-muted);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--ecq-ink);
	text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: var(--ecq-green);
}

.woocommerce-notices-wrapper {
	margin-bottom: 20px;
}

.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 0.94fr) minmax(380px, 0.72fr);
	align-items: start;
	gap: clamp(22px, 4vw, 48px);
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
	float: none;
	width: auto;
}

.woocommerce div.product div.images {
	position: relative;
}

/* ── Sticky gallery (desktop) ───────────────────────────────────────────────
   theme.js wraps div.images in .ecq-sticky-gallery-rail, which stretches to
   the summary column's height (the tallest member of grid row 1). The
   gallery inside is position:sticky, so it pins below the header while the
   summary scrolls and releases exactly at the row-1 bottom — the rail bounds
   the sticky travel so the gallery can never cover the full-width tabs or
   related-products rows below. Without the rail, sticky on a direct grid
   child is constrained by the whole grid container and the pinned gallery
   overlaps the related products on scroll.

   --ecq-header-h is set by theme.js after measuring .ecq-site-header; it
   falls back to 0px so the rule is safe even if JS is disabled (and without
   JS the rail never exists, so sticky never applies — graceful fallback).
   The WP admin bar offset is handled by WordPress's own custom property.
   Sticky is disabled below 1100 px (grid collapses to 1 column there). */
@media (min-width: 1101px) {
	.ecq-sticky-gallery-rail {
		align-self: stretch;
		min-width: 0;
	}

	.woocommerce div.product .ecq-sticky-gallery-rail div.images {
		/* Specificity (0,4,2): must beat the base rule below —
		   .woocommerce div.product div.images (0,3,2) — or its
		   position: relative wins and the gallery never sticks. */
		position: -webkit-sticky;
		position: sticky;
		z-index: 2;
		top: calc(
			var(--ecq-header-h, 0px)
			+ var(--wp-admin--admin-bar--height, 0px)
			+ 16px
		);
	}
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger,
.woocommerce div.product .woocommerce-product-gallery.ecq-single-image-fallback .woocommerce-product-gallery__trigger {
	position: absolute !important;
	z-index: 2;
	top: 10px !important;
	right: auto !important;
	left: 10px !important;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50% !important;
	background: #ffffff !important;
	box-shadow: 0 2px 10px rgba(16, 24, 40, 0.14);
	color: var(--ecq-ink);
	font-size: 0;
	padding: 5px !important;
	text-decoration: none;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger span,
.woocommerce div.product .woocommerce-product-gallery.ecq-single-image-fallback .woocommerce-product-gallery__trigger span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	line-height: 1;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger img.emoji,
.woocommerce div.product .woocommerce-product-gallery.ecq-single-image-fallback .woocommerce-product-gallery__trigger img.emoji {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	vertical-align: top !important;
}

.woocommerce div.product div.images img {
	border-radius: var(--ecq-radius);
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	margin: 0;
	padding: 0;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	height: auto;
	background: #f8f8f8;
}

.woocommerce div.product div.images:not(.flexslider) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child) {
	display: none;
}

/* ── Customily canvas height fix ─────────────────────────────────────────────
   Customily's Vue app misreads the FlexSlider wrapper's full scrollWidth
   (width:1000% × n slides) instead of the clipped viewport width. It then
   writes min-height / height equal to that huge value via inline style=.
   These !important overrides win over inline styles and restore normal
   auto-height behaviour. The canvas itself keeps its own intrinsic size;
   only the container shell heights are reset.

   Two extra safeguards beyond the min/max overrides:

   1. `position: static` on the canvas chain and resize-sensor takes them
      out of the slide's flow so FlexSlider can never re-measure a tall
      canvas into the slide box. The canvas keeps its pixel size and still
      paints (the first slide is position:relative).
      `.zoomImg` is deliberately NOT in this list: WooCommerce's gallery
      zoom creates an 800px clone of the target slide inside the canvas
      slide while sliding, and it must stay `position: absolute` (the
      `.zoomImg` rule in flexslider.css). With `position: static` it joins
      the slide's flow, the canvas slide grows to 765px + 800px, and
      `smoothHeight` stretches the whole gallery — the "super tall" gallery
      after a thumbnail click.
   2. The active slide is forced square (`aspect-ratio: 1/1`, height 100%
      on the wrapper chain), mirroring the Shopify reference where
      Customily's gallery media box is square (`.customily_gallery_media`
      sets `min-height: <width>px`). Without it, the only in-flow child is
      the canvas wrapper at the small height Customily measured while the
      canvas was still collapsing, and the gallery renders as a short strip
      of the preview. */
.woocommerce-product-gallery .woocommerce-product-gallery__image .cl-canvas-container,
.woocommerce-product-gallery .woocommerce-product-gallery__image .canvas-wrapper,
.woocommerce-product-gallery .woocommerce-product-gallery__image .canvas-container,
.woocommerce-product-gallery .woocommerce-product-gallery__image .resize-sensor {
	position: static !important;
}

.woocommerce-product-gallery .woocommerce-product-gallery__image .cl-canvas-container,
.woocommerce-product-gallery .woocommerce-product-gallery__image .canvas-wrapper,
.woocommerce-product-gallery .woocommerce-product-gallery__image .canvas-container {
	width: 100% !important;
	height: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: 100% !important;
	max-height: none !important;
}

.woocommerce-product-gallery .woocommerce-product-gallery__image.flex-active-slide {
	aspect-ratio: 1 / 1;
}

.woocommerce-product-gallery .woocommerce-product-gallery__image.flex-active-slide .canvas-wrapper,
.woocommerce-product-gallery .woocommerce-product-gallery__image.flex-active-slide .canvas-container {
	height: 100% !important;
}

/* ── Customily swatch / option image size (40px → 69px) ───────────────────────
   Customily renders each image swatch with the <img> and its
   .csh-image-container shell hard-set to 40px via INLINE styles carrying
   !important, inside a tappable <label> sized by the app's global Swatch
   Styles setting (currently 46px). The 40px is too small to read the swatch
   artwork.

   Inline !important cannot be beaten by ANY stylesheet !important rule
   (inline author declarations outrank all stylesheet author declarations), so
   this rule alone is a no-op for the inline 40px. The winning mechanism is
   theme.js (sizeCustomilySwatches), which overwrites the inline width/height
   on label + .csh-image-container + img after Customily mounts and re-applies
   on re-render via MutationObserver. This rule is kept as a baseline for the
   label box and for any swatch Customily renders without inline sizing.
   Label and image are sized together — growing only the image would overflow
   its 46px label and overlap the neighbouring swatch. All swatches on the
   site use the same container, so the override is intentionally global to
   Customily options. */
#cl_optionsapp .swatch-container label,
#cl_optionsapp .swatch-container label .csh-image-container,
#cl_optionsapp .swatch-container label .csh-image-container img {
	width: 69px !important;
	min-width: 69px !important;
	max-width: 69px !important;
	height: 69px !important;
	min-height: 69px !important;
	max-height: 69px !important;
}

/* The swatch image fills the whole 69px label box. Customily draws its
   selected-state border on the LABEL (inline border + `.label-focus`), but a
   full-size image would cover it — so the selected ring is painted as an
   overlay here, flush with the swatch edge (zero gap between border and
   artwork). This mirrors the label's own 3px black selection border. */
#cl_optionsapp .swatch-container label .csh-image-container::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	box-shadow: inset 0 0 0 3px #000000;
	opacity: 0;
	transition: opacity 160ms ease;
}

#cl_optionsapp .swatch-container label.label-focus .csh-image-container::after {
	opacity: 1;
}

/* ── FlexSlider smoothHeight fix ─────────────────────────────────────────────
   FlexSlider's smoothHeight:true reads the active slide height and writes it
   as an inline style on .flex-viewport. Because the Customily canvas
   containers were 7655 px tall before the fix above, the viewport inherited
   that height. Resetting to auto here lets FlexSlider recalculate correctly
   after the canvas containers collapse to their natural size.

   `transition: none` also matters: FlexSlider sets `transition: height 500ms`
   on the viewport, so when the huge height is written and then cleaned, the
   collapse animates over 500 ms — the visible "super tall gallery" jump. An
   instant height change removes that artifact. */
.woocommerce-product-gallery .flex-viewport {
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden;
	transition: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce div.product div.images .flex-control-thumbs img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	padding: 4px;
	background: #ffffff;
	cursor: pointer;
	transition: border-color 160ms ease;
}

.woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs img:hover {
	border-color: var(--ecq-green);
}

.ecq-single-image-fallback img {
	width: 100%;
	border-radius: var(--ecq-radius);
	background: #f8f8f8;
}

.woocommerce-product-gallery.ecq-single-image-fallback {
	position: relative;
}

.ecq-single-image-fallback .woocommerce-product-gallery__image img {
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}

.ecq-product-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-top: 12px;
}

.ecq-product-thumbs a {
	display: block;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	padding: 4px;
	background: #ffffff;
}

.ecq-product-thumbs a.is-active,
.ecq-product-thumbs a:hover {
	border-color: var(--ecq-green);
}

.ecq-product-thumbs img {
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 6px;
}

.woocommerce div.product .product_title {
	margin-top: 12px;
	color: #939191;
	font-size: clamp(18px, 2vw, 22px);
	font-weight: 700;
	line-height: 1.35;
}

.ecq-single-trustpilot {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 5px 0 -8px;
	color: #000000;
	font-size: 14px;
}

.ecq-single-trustpilot strong {
	font-weight: 700;
}

.ecq-single-trustpilot em {
	font-style: normal;
	font-weight: 900;
}

.ecq-special-offer {
	display: inline-flex;
	align-items: center;
	margin: 0 0 8px;
	border-radius: 6px;
	background: var(--ecq-green);
	color: #ffffff;
	padding: 8px 12px;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
}

.woocommerce-product-rating {
	margin-block: 10px 16px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--ecq-green);
	font-size: clamp(26px, 3vw, 34px);
	font-weight: 900;
}

.woocommerce-product-details__short-description {
	color: var(--ecq-muted);
	font-size: 17px;
}

.ecq-personalization {
    display: none !important;
	/* flex: 1 1 100%;
	margin: 8px 0 10px;
	padding: 16px;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: #fbfdfb; */
}

.ecq-personalization label {
	display: block;
	margin-bottom: 8px;
	font-weight: 900;
}

.ecq-personalization p {
	margin: 8px 0 0;
	color: var(--ecq-muted);
	font-size: 13px;
}

.ecq-product-promises {
	display: grid;
	gap: 8px;
	margin: 12px 0 18px;
}

.ecq-product-promises div {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--ecq-ink);
	font-size: 14px;
	font-weight: 800;
}

.ecq-product-promises span {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 99px;
	background: #eaf3ff;
	color: #2f58b8;
	font-weight: 900;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: flex-start;
	margin-top: 18px;
}

.woocommerce div.product form.cart .variations {
	flex: 1 1 100%;
	margin-bottom: 0;
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
	display: block;
	padding: 0;
	text-align: left;
}

.woocommerce div.product form.cart .variations label {
	display: block;
	margin: 0 0 8px;
	font-weight: 900;
}

.woocommerce div.product form.cart .variations select {
	border-color: rgba(1, 86, 65, 0.55);
	border-radius: 40px;
	font-weight: 800;
}

.woocommerce div.product form.cart .reset_variations {
	display: inline-block;
	margin-top: 8px;
	color: var(--ecq-green);
	font-size: 13px;
	font-weight: 900;
}

.woocommerce .quantity .qty {
	width: 86px;
	text-align: center;
	border-radius: 8px;
}

.woocommerce div.product form.cart .button {
	flex: 1 1 240px;
	min-height: 50px;
	text-transform: uppercase;
}

.woocommerce div.product form.cart .single_variation_wrap,
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
	display: flex;
	flex: 1 1 100%;
	flex-wrap: wrap;
	gap: 12px;
	align-items: flex-start;
	width: 100%;
}

/* AJAX add to cart: in-flight state for the single product button. */
.woocommerce div.product form.cart .single_add_to_cart_button.ecq-adding {
	position: relative;
	color: transparent;
	cursor: progress;
	opacity: 0.85;
}

.woocommerce div.product form.cart .single_add_to_cart_button.ecq-adding::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	border: 2px solid rgba(255, 255, 255, 0.45);
	border-top-color: #fff;
	border-radius: 50%;
	animation: ecq-spin 0.7s linear infinite;
}

@keyframes ecq-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce div.product form.cart .single_add_to_cart_button.ecq-adding::after {
		animation-duration: 2s;
	}
}

/*
 * The feedback for an AJAX add is the .ecq-cart-toast, which already offers
 * "View cart". WooCommerce's own added_to_cart handler also appends an
 * unstyled "View cart" link after the button, which would duplicate that and
 * shift the layout - hide it on the product form only (loop cards keep theirs).
 */
.woocommerce div.product form.cart .added_to_cart {
	display: none;
}

.ecq-atc-notice {
	margin: 0 0 16px;
	outline: none;
}

.ecq-atc-notice .woocommerce-error,
.ecq-atc-notice .woocommerce-message,
.ecq-atc-notice .woocommerce-info {
	margin: 0;
}

.ecq-payment-badge {
	margin: 0 0 20px;
}

.ecq-payment-badge img {
	display: block;
	width: 100%;
	max-width: 420px;
	margin: 0;
}

.ecq-trust-strip {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding: 0;
	margin: 18px 0;
	list-style: none;
}

.ecq-trust-strip li {
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	padding: 10px;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
}

.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	padding-top: 32px;
}

.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products {
	grid-column: 1 / -1;
	width: 100%;
}

.ecq-policy-links {
	display: block;
	width: 100%;
	margin: 18px 0 0;
	border-top: 1px solid var(--ecq-border);
}

.ecq-policy-item {
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-policy-item summary {
	display: flex;
	justify-content: space-between;
	border-radius: 0;
	padding: 18px 0;
	font-weight: 900;
	text-align: left;
	cursor: pointer;
	list-style: none;
}

.ecq-policy-item summary::-webkit-details-marker {
	display: none;
}

.ecq-policy-item summary::after {
	content: "+";
	font-size: 22px;
	line-height: 1;
}

.ecq-policy-item[open] summary::after {
	content: "-";
}

.ecq-policy-content {
	padding: 0 0 18px;
	color: var(--ecq-muted);
	font-size: 14px;
	line-height: 1.55;
}

.ecq-policy-content p {
	margin: 0;
}

.ecq-policy-content a {
	color: var(--ecq-green);
	font-weight: 900;
	overflow-wrap: anywhere;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0;
	margin: 0 0 18px;
	border-bottom: 1px solid var(--ecq-border);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0 20px 0 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	padding: 12px 0;
	font-weight: 900;
}

.ecq-commerce-page {
	max-width: var(--ecq-page);
	padding-top: 34px;
	padding-bottom: 70px;
}

.ecq-commerce-page .ecq-page-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 22px;
	text-align: left;
}

.ecq-commerce-page .ecq-page-header h1 {
	margin: 0;
	font-size: clamp(32px, 4vw, 48px);
	line-height: 1.1;
}

.ecq-continue-shopping {
	color: var(--ecq-green);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.ecq-cart-progress {
	max-width: 760px;
	margin: 0 0 24px;
}

.ecq-cart-progress p {
	margin: 0 0 10px;
	font-weight: 900;
	color: var(--ecq-green-dark);
}

.ecq-cart-progress-bar {
	position: relative;
	height: 12px;
	overflow: hidden;
	border-radius: 999px;
	background: var(--ecq-bg-soft);
}

.ecq-cart-progress-bar span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--ecq-green);
}

.ecq-commerce-assurance {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	padding: 0;
	margin: 0 0 28px;
	list-style: none;
}

.ecq-commerce-assurance li {
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	padding: 14px 16px;
	background: #ffffff;
}

.ecq-commerce-assurance strong,
.ecq-commerce-assurance span {
	display: block;
}

.ecq-commerce-assurance strong {
	color: var(--ecq-green-dark);
	font-size: 15px;
	font-weight: 900;
}

.ecq-commerce-assurance span {
	margin-top: 2px;
	color: var(--ecq-muted);
	font-size: 13px;
}

.woocommerce-cart table.cart img {
	width: 96px;
	border-radius: 8px;
}

.woocommerce table.shop_table,
.wc-block-cart-items,
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar {
	border-color: var(--ecq-border);
	border-radius: var(--ecq-radius);
}

.woocommerce table.shop_table th,
.wc-block-cart-items__header th,
.wc-block-components-totals-wrapper,
.wc-block-components-title {
	color: var(--ecq-green-dark);
}

.wc-block-cart,
.wp-block-woocommerce-checkout {
	margin-top: 0;
}

.wc-block-components-sidebar-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
	gap: 32px;
	align-items: flex-start;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
	width: auto;
	border: 1px solid var(--ecq-border);
	padding: 24px;
	background: #ffffff;
}

.wc-block-components-sidebar {
	width: auto;
	border: 1px solid var(--ecq-border);
	padding: 20px;
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout {
	grid-template-columns: minmax(0, 1fr) minmax(360px, 430px);
}

.wc-block-cart-items__header {
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 1.3px;
	text-transform: uppercase;
}

.wc-block-cart-items__row {
	border-top: 1px solid var(--ecq-border);
}

.wc-block-cart-item__image img,
.wc-block-components-order-summary-item__image img {
	overflow: hidden;
	border-radius: 12px;
	background: var(--ecq-bg-soft);
}

.wc-block-cart-item__product a,
.wc-block-components-product-name {
	color: var(--ecq-ink);
	font-weight: 900;
	line-height: 1.25;
}

.wc-block-components-product-metadata,
.wc-block-components-product-details,
.wc-block-cart-item__prices {
	color: var(--ecq-muted);
	font-size: 14px;
}

.wc-block-components-quantity-selector {
	border: 1px solid rgba(1, 86, 65, 0.25);
	border-radius: 8px;
	background: #ffffff;
}

.wc-block-components-quantity-selector__button {
	color: var(--ecq-green-dark);
	font-weight: 900;
}

.wc-block-cart-item__remove-link {
	color: var(--ecq-sale) !important;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.wc-block-components-totals-coupon__form .wc-block-components-text-input input,
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-text-input input[type="email"],
.wc-block-components-form .wc-block-components-text-input input[type="tel"],
.wc-block-components-form .wc-block-components-text-input input[type="text"] {
	border: 1px solid rgba(1, 86, 65, 0.28);
	border-radius: 6px;
	background: #ffffff;
	box-shadow: none;
}

.wc-block-components-totals-coupon__form .wc-block-components-text-input input:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-form .wc-block-components-text-input input:focus {
	border-color: var(--ecq-green);
	box-shadow: 0 0 0 3px rgba(1, 86, 65, 0.14);
	outline: 0;
}

.wp-block-woocommerce-checkout .wc-block-checkout__contact-fields,
.wp-block-woocommerce-checkout .wc-block-checkout__shipping-fields,
.wp-block-woocommerce-checkout .wc-block-checkout__billing-fields,
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method {
	border-bottom: 1px solid var(--ecq-border);
	padding-bottom: 22px;
	margin-bottom: 22px;
}

.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-container {
	margin-top: 24px;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox,
.wp-block-woocommerce-checkout .wc-block-components-radio-control__option,
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option {
	border: 1px solid rgba(1, 86, 65, 0.2) !important;
	border-radius: 8px !important;
	background: #ffffff !important;
	box-shadow: none !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox {
	margin-top: 14px;
	padding: 0 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox label {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100%;
	min-height: 52px;
	margin: 0 !important;
	padding: 14px !important;
	line-height: 1.35 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type="checkbox"] {
	position: relative !important;
	display: inline-block !important;
	flex: 0 0 20px !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	margin: 0 !important;
	padding-right: 10px;
	border: 2px solid rgba(1, 86, 65, 0.58) !important;
	border-radius: 4px !important;
	background: #ffffff !important;
	accent-color: var(--ecq-green);
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type="checkbox"]:checked {
	border-color: var(--ecq-green) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox__mark {
	fill: var(--ecq-green) !important;
	width: 30px;
	margin-left: 0 !important;
	margin-top: -3px !important;
}

.wp-block-woocommerce-checkout .wc-block-components-checkbox__label {
	display: block;
	color: var(--ecq-ink) !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__option,
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option {
	position: relative !important;
	display: block !important;
	min-height: 54px;
	margin: 0 !important;
	padding: 14px !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__option:after {
	border: 0 !important;
	box-shadow: none !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__option-checked,
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option:has(.wc-block-components-radio-control__input:checked) {
	border-color: var(--ecq-green) !important;
	box-shadow: inset 0 0 0 1px var(--ecq-green) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input {
	position: absolute !important;
	top: 50% !important;
	right: auto !important;
	left: 16px !important;
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	border: 2px solid rgba(1, 86, 65, 0.58) !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	color: var(--ecq-green) !important;
	transform: translateY(-50%) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked {
	border-color: var(--ecq-green) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
	right: 50% !important;
	left: auto !important;
	width: 10px !important;
	height: 10px !important;
	margin: 0 !important;
	background: var(--ecq-green) !important;
	transform: translate(50%, -50%) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__option-layout {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	padding: 0 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__label-group {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100% !important;
	min-width: 0 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__label {
	color: var(--ecq-ink) !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	min-width: 0 !important;
	padding: 5px;
    margin-left: 40px !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-label {
	margin-left: auto !important;
	color: var(--ecq-ink) !important;
	font-weight: 800 !important;
	white-space: nowrap;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control__description {
	margin-top: 4px !important;
	color: var(--ecq-muted) !important;
	line-height: 1.35 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus,
.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type="checkbox"]:focus {
	outline: 3px solid rgba(1, 86, 65, 0.18) !important;
	outline-offset: 2px !important;
}

.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	border: 2px solid var(--ecq-sale);
	border-radius: 6px;
	background: var(--ecq-sale);
	color: #ffffff;
	font-weight: 900;
	text-transform: none;
	box-shadow: none;
}

.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text,
.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button,
.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button .wc-block-components-button__text {
	color: #ffffff !important;
}

.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background: #b91515;
	border-color: #b91515;
	color: #ffffff;
}

.wc-block-components-totals-footer-item {
	/* border-top: 1px solid var(--ecq-border); */
	padding-top: 16px;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 20px;
	font-weight: 900;
}

.wc-block-cart__empty-cart__title {
	color: var(--ecq-green-dark);
	font-size: clamp(28px, 4vw, 42px);
}

.wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title),
.wp-block-woocommerce-empty-cart-block .wp-block-separator,
.wp-block-woocommerce-empty-cart-block .wc-block-grid {
	display: none !important;
}

.wc-block-grid__products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
}

.wc-block-grid__product {
	display: flex;
	flex-direction: column;
	min-width: 0;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
	overflow: hidden;
	text-align: center;
	border-radius: var(--ecq-radius);
	position: relative;
}

.wc-block-grid__product-link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
	color: inherit;
}

.wc-block-grid__product-image {
	margin: 0 !important;
}

.wc-block-grid__product-image img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	margin: 0;
	background: #f8f8f8;
	transition: transform 180ms ease;
}

.wc-block-grid__product:hover .wc-block-grid__product-image img {
	transform: scale(1.025);
}

.wc-block-grid__product-onsale {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	pointer-events: none;
}

.wc-block-grid__product-onsale span:not(.screen-reader-text) {
	display: inline-block;
	border-radius: 6px;
	background: var(--ecq-green-dark);
	color: #ffffff;
	padding: 5px 8px;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.wc-block-grid__product-title {
	min-height: 3.2em;
	margin: 14px 14px 8px;
	color: var(--ecq-ink);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.28;
}

.wc-block-grid__product-price {
	margin: 0 14px 14px;
	color: var(--ecq-green);
	font-size: 17px;
	font-weight: 900;
}

.wc-block-grid__product-add-to-cart {
	padding: 0 14px 16px;
	margin-top: auto;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link,
.wc-block-grid__product-add-to-cart .wp-block-button__link:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 40px;
	border: 2px solid var(--ecq-sale);
	border-radius: 6px;
	background: var(--ecq-sale);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
	background: #b91515;
	border-color: #b91515;
	color: #ffffff;
}

.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content {
	border: 1px solid var(--ecq-border);
	border-radius: var(--ecq-radius);
	padding: 20px;
	background: #ffffff;
}

.ecq-cart-recommendations {
	padding-top: 70px;
}

.ecq-cart-newsletter,
.ecq-checkout-support {
	margin-top: 60px;
	padding: 52px 24px;
	text-align: center;
	border-radius: 0;
	background: var(--ecq-bg-soft);
}

.ecq-cart-newsletter h2,
.ecq-checkout-support h2 {
	margin: 0 0 10px;
	font-size: clamp(28px, 4vw, 44px);
}

.ecq-cart-newsletter p,
.ecq-checkout-support p {
	max-width: 620px;
	margin: 0 auto 22px;
	color: var(--ecq-muted);
	font-weight: 700;
}

.ecq-checkout-support {
	text-align: left;
}

.ecq-checkout-support p {
	margin-left: 0;
}

.ecq-order-received-page {
	max-width: var(--ecq-page);
	padding-top: 28px;
}

.ecq-order-received-page .ecq-page-header {
	display: none;
}

.ecq-thankyou {
	color: var(--ecq-ink);
}

.ecq-thankyou-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 460px);
	gap: 48px;
	align-items: flex-start;
}

.ecq-thankyou-main {
	min-width: 0;
	padding: 18px 0 72px;
}

.ecq-thankyou-hero {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin-bottom: 24px;
}

.ecq-thankyou-status-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border: 2px solid var(--ecq-green);
	border-radius: 50%;
	background: var(--ecq-green);
	color: #ffffff;
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
}

.ecq-thankyou-order-number {
	margin: 0 0 4px;
	color: var(--ecq-muted);
	font-size: 14px;
	font-weight: 800;
}

.ecq-thankyou h2,
.ecq-thankyou h3 {
	color: var(--ecq-green-dark);
}

.ecq-thankyou h2 {
	margin: 0;
	font-size: clamp(30px, 4vw, 46px);
	line-height: 1.12;
}

.ecq-thankyou h3 {
	margin: 0 0 12px;
	font-size: 18px;
	line-height: 1.25;
}

.ecq-thankyou-message,
.ecq-thankyou-panel,
.ecq-thankyou-info-grid {
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: #ffffff;
}

.ecq-thankyou-message {
	padding: 22px;
	margin-bottom: 18px;
}

.ecq-thankyou-message p,
.ecq-thankyou-panel p,
.ecq-thankyou-info-block p,
.ecq-thankyou-info-block address {
	margin: 0;
	color: var(--ecq-muted);
	font-weight: 700;
	line-height: 1.55;
}

.ecq-thankyou-message p + p {
	margin-top: 10px;
}

.ecq-thankyou-email-link {
	color: var(--ecq-green);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ecq-thankyou-panel {
	padding: 22px;
	margin-bottom: 18px;
}

.ecq-thankyou-info-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-bottom: 28px;
	overflow: hidden;
}

.ecq-thankyou-info-block {
	min-width: 0;
	padding: 22px;
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-thankyou-info-block:nth-child(odd) {
	border-right: 1px solid var(--ecq-border);
}

.ecq-thankyou-info-block:nth-last-child(-n+2) {
	border-bottom: 0;
}

.ecq-thankyou-info-block address {
	font-style: normal;
}

.ecq-thankyou-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
}

.ecq-thankyou-actions .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 24px;
	border: 2px solid var(--ecq-green) !important;
	background: var(--ecq-green) !important;
	color: #ffffff !important;
	text-decoration: none;
}

.ecq-thankyou-actions .button:hover {
	background: var(--ecq-green-dark) !important;
	border-color: var(--ecq-green-dark) !important;
}

.ecq-thankyou-secondary {
	color: var(--ecq-green);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.ecq-thankyou-summary {
	position: sticky;
	top: 24px;
	padding: 28px;
	border: 1px solid var(--ecq-border);
	border-radius: var(--ecq-radius);
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
}

#ecq-thankyou-summary-title {
	padding-bottom: 18px;
	border-bottom: 1px solid var(--ecq-border);
	margin-bottom: 18px;
}

.ecq-thankyou-items {
	display: grid;
	gap: 18px;
	padding-bottom: 22px;
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-thankyou-item {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	gap: 14px;
	align-items: center;
}

.ecq-thankyou-item-image {
	position: relative;
	width: 72px;
	height: 72px;
}

.ecq-thankyou-item-image img {
	display: block;
	width: 72px;
	height: 72px;
	object-fit: cover;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: #ffffff;
}

.ecq-thankyou-item-image span {
	position: absolute;
	top: -8px;
	right: -8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	height: 24px;
	padding: 0 7px;
	border-radius: 999px;
	background: var(--ecq-muted);
	color: #ffffff;
	font-size: 12px;
	font-weight: 900;
}

.ecq-thankyou-item-name {
	min-width: 0;
}

.ecq-thankyou-item-name strong {
	display: block;
	color: var(--ecq-ink);
	font-size: 15px;
	line-height: 1.3;
}

.ecq-thankyou-item-name .wc-item-meta {
	padding: 0;
	margin: 6px 0 0;
	color: var(--ecq-muted);
	font-size: 12px;
	list-style: none;
}

.ecq-thankyou-item-total {
	color: var(--ecq-ink);
	font-weight: 900;
	white-space: nowrap;
}

.ecq-thankyou-totals {
	padding-top: 18px;
}

.ecq-thankyou-total-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 18px;
	padding: 8px 0;
	color: var(--ecq-muted);
	font-weight: 800;
}

.ecq-thankyou-total-row strong {
	color: var(--ecq-ink);
	text-align: right;
}

.ecq-thankyou-total-row--order_total {
	margin-top: 10px;
	padding-top: 18px;
	border-top: 1px solid var(--ecq-border);
	color: var(--ecq-green-dark);
	font-size: 18px;
}

.ecq-thankyou-total-row--order_total strong {
	color: var(--ecq-green-dark);
	font-size: 22px;
}

.ecq-thankyou-failed {
	max-width: 720px;
	margin: 0 auto 70px;
	padding: 42px;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: #ffffff;
	text-align: center;
	box-shadow: var(--ecq-shadow);
}

.ecq-thankyou-failed .ecq-thankyou-status-icon {
	margin: 0 auto 18px;
	border-color: var(--ecq-sale);
	background: var(--ecq-sale);
	color: #ffffff;
}

.ecq-thankyou-failed p {
	color: var(--ecq-muted);
	font-weight: 700;
}

.ecq-tracking-page {
	max-width: var(--ecq-page);
}

.ecq-tracking-page .ecq-page-header {
	display: none;
}

.ecq-tracking-shell {
	padding-bottom: 72px;
}

.ecq-tracking-hero {
	max-width: 760px;
	margin: 0 auto 28px;
	text-align: center;
}

.ecq-tracking-hero p {
	margin: 0 0 8px;
	color: var(--ecq-green);
	font-size: 32px;
	font-weight: 900;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.ecq-tracking-hero h1 {
	display: none;
}

.ecq-tracking-hero span {
	display: block;
	max-width: 620px;
	margin: 0 auto;
	color: var(--ecq-muted);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.55;
}

.ecq-tracking-card,
.ecq-tracking-status-card,
.ecq-tracking-progress,
.ecq-tracking-detail-card,
.ecq-tracking-help {
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: #ffffff;
}

.ecq-tracking-card {
	max-width: 860px;
	margin: 0 auto;
	padding: 30px;
	box-shadow: var(--ecq-shadow);
}

.ecq-tracking-card-heading {
	margin-bottom: 22px;
	text-align: center;
}

.ecq-tracking-card-heading h2,
.ecq-tracking-status-card h2,
.ecq-tracking-detail-card h3,
.ecq-tracking-help h2 {
	margin: 0;
	color: var(--ecq-green-dark);
	line-height: 1.18;
}

.ecq-tracking-card-heading h2 {
	font-size: 28px;
}

.ecq-tracking-card-heading p,
.ecq-tracking-status-card p,
.ecq-tracking-help p {
	margin: 10px 0 0;
	color: var(--ecq-muted);
	font-weight: 700;
	line-height: 1.55;
}

.ecq-tracking-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ecq-tracking-form .form-row {
	margin: 0;
}

.ecq-tracking-form label {
	display: block;
	margin-bottom: 8px;
	color: var(--ecq-green-dark);
	font-weight: 900;
}

.ecq-tracking-form input.input-text {
	width: 100%;
	min-height: 50px;
	border: 1px solid rgba(1, 86, 65, 0.28);
	border-radius: 6px;
	padding: 0 14px;
	background: #ffffff;
	color: var(--ecq-ink);
	font: inherit;
	font-weight: 700;
}

.ecq-tracking-form input.input-text:focus {
	border-color: var(--ecq-green);
	box-shadow: 0 0 0 3px rgba(1, 86, 65, 0.14);
	outline: 0;
}

.ecq-tracking-submit {
	margin-top: 20px !important;
	text-align: center;
}

.ecq-tracking-submit .button {
	min-width: 220px;
	min-height: 50px;
}

.ecq-tracking-promises {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	max-width: 980px;
	margin: 22px auto 0;
}

.ecq-tracking-promises div {
	padding: 16px;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: var(--ecq-bg-soft);
}

.ecq-tracking-promises strong,
.ecq-tracking-promises span {
	display: block;
}

.ecq-tracking-promises strong {
	color: var(--ecq-green-dark);
	font-size: 15px;
	font-weight: 900;
}

.ecq-tracking-promises span {
	margin-top: 4px;
	color: var(--ecq-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}

.ecq-tracking-result {
	max-width: 1180px;
	margin: 0 auto;
}

.ecq-tracking-status-card {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 26px;
	margin-bottom: 18px;
}

.ecq-tracking-kicker {
	margin: 0 0 4px !important;
	color: var(--ecq-green) !important;
	font-size: 14px;
	font-weight: 900 !important;
}

.ecq-tracking-status-card h2 {
	font-size: clamp(28px, 4vw, 42px);
}

.ecq-tracking-status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 14px;
	border-radius: 999px;
	background: rgba(1, 86, 65, 0.1);
	color: var(--ecq-green);
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.ecq-tracking-progress {
	padding: 26px;
	margin-bottom: 18px;
}

.ecq-tracking-progress-steps {
	display: flex;
	position: relative;
}

.ecq-tracking-progress-steps::before {
	content: "";
	position: absolute;
	top: 24px;
	left: 10%;
	right: 10%;
	height: 8px;
	background: #c6c6c6;
	border-radius: 9999px;
	z-index: 0;
}

.ecq-tracking-progress-steps::after {
	content: "";
	position: absolute;
	top: 24px;
	left: 10%;
	height: 8px;
	background: #008000;
	border-radius: 9999px;
	z-index: 1;
	width: calc(var(--step, 0) / 4 * 80%);
	animation: ecq-track-fill 0.9s ease forwards;
}

@keyframes ecq-track-fill {
	from {
		width: 0;
	}
	to {
		width: calc(var(--step, 0) / 4 * 80%);
	}
}

.ecq-tracking-step-node {
	width: 20%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	position: relative;
	z-index: 2;
}

.ecq-tracking-step-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	border: 4px solid #c6c6c6;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #c6c6c6;
}

.ecq-tracking-step-icon svg {
	width: 22px;
	height: 22px;
}

.ecq-tracking-step-node.is-active .ecq-tracking-step-icon {
	border-color: #008000;
	color: #1a1a1a;
}

.ecq-tracking-step-label {
	font-size: 12px;
	font-weight: 700;
	color: #c6c6c6;
	white-space: nowrap;
	text-align: center;
}

.ecq-tracking-step-node.is-active .ecq-tracking-step-label {
	color: #121212;
}

.ecq-tracking-details-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
	gap: 18px;
	align-items: flex-start;
}

.ecq-tracking-detail-card {
	padding: 24px;
}

.ecq-tracking-items {
	display: grid;
	gap: 16px;
	margin-top: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-tracking-item {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr) auto;
	gap: 14px;
	align-items: center;
}

.ecq-tracking-item-image img {
	display: block;
	width: 70px;
	height: 70px;
	object-fit: cover;
	border: 1px solid var(--ecq-border);
	border-radius: 8px;
	background: var(--ecq-bg-soft);
}

.ecq-tracking-item strong,
.ecq-tracking-item span {
	display: block;
}

.ecq-tracking-item strong {
	color: var(--ecq-ink);
	font-size: 15px;
	line-height: 1.3;
}

.ecq-tracking-item span {
	margin-top: 4px;
	color: var(--ecq-muted);
	font-size: 13px;
	font-weight: 800;
}

.ecq-tracking-item em {
	color: var(--ecq-ink);
	font-style: normal;
	font-weight: 900;
	white-space: nowrap;
}

.ecq-tracking-totals {
	padding-top: 14px;
}

.ecq-tracking-total-row {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	padding: 8px 0;
	color: var(--ecq-muted);
	font-weight: 800;
}

.ecq-tracking-total-row strong {
	color: var(--ecq-ink);
	text-align: right;
}

.ecq-tracking-total-row--order_total {
	margin-top: 8px;
	padding-top: 16px;
	border-top: 1px solid var(--ecq-border);
	color: var(--ecq-green-dark);
	font-size: 18px;
}

.ecq-tracking-total-row--order_total strong {
	color: var(--ecq-green-dark);
	font-size: 21px;
}

.ecq-tracking-meta {
	display: grid;
	gap: 18px;
	margin: 18px 0 0;
}

.ecq-tracking-meta div {
	padding-bottom: 18px;
	border-bottom: 1px solid var(--ecq-border);
}

.ecq-tracking-meta div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.ecq-tracking-meta dt {
	margin-bottom: 6px;
	color: var(--ecq-green-dark);
	font-weight: 900;
}

.ecq-tracking-meta dd {
	margin: 0;
	color: var(--ecq-muted);
	font-weight: 700;
	line-height: 1.5;
}

.ecq-tracking-updates {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid var(--ecq-border);
}

.ecq-tracking-updates ol {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 14px 0 0;
	list-style: none;
}

.ecq-tracking-updates li {
	padding-left: 14px;
	border-left: 3px solid var(--ecq-green);
}

.ecq-tracking-updates time {
	display: block;
	margin-bottom: 4px;
	color: var(--ecq-green-dark);
	font-size: 13px;
	font-weight: 900;
}

.ecq-tracking-updates p {
	margin: 0;
	color: var(--ecq-muted);
	font-weight: 700;
	line-height: 1.5;
}

.ecq-tracking-help {
	max-width: 860px;
	margin: 50px auto 0;
	padding: 24px;
	text-align: center;
	background: var(--ecq-bg-soft);
}

/* ============================================================
   Third-party carrier tracking (ecomquant) — ecq-3pt-*
   Mirrors the Shopify /pages/order-tracking design.
   ============================================================ */

.ecq-3pt-wrap {
	max-width: 780px;
	margin: 0 auto;
}

/* Form card */
.ecq-3pt-form {
	background: var(--ecq-bg);
	border: 1px solid var(--ecq-border);
	border-radius: var(--ecq-radius);
	box-shadow: var(--ecq-shadow);
	padding: 48px 64px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-align: center;
}

.ecq-3pt-form-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	max-width: 480px;
}

.ecq-3pt-form-label {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ecq-muted);
}

.ecq-3pt-input-row {
	display: flex;
	align-items: stretch;
	width: 100%;
}

.ecq-3pt-input {
	flex: 1;
	padding: 0 14px;
	font-size: 15px;
	font: inherit;
	border: 1.5px solid var(--ecq-border);
	border-right: 0;
	border-radius: var(--ecq-radius) 0 0 var(--ecq-radius);
	outline: none;
	height: 46px;
	background: var(--ecq-bg);
	color: var(--ecq-ink);
	transition: border-color 0.15s;
}

.ecq-3pt-input:focus {
	border-color: var(--ecq-green);
	box-shadow: none;
}

.ecq-3pt-input.is-error {
	border-color: var(--ecq-sale);
}

.ecq-3pt-input-error {
	margin: 4px 0 0;
	font-size: 12px;
	font-weight: 600;
	color: var(--ecq-sale);
	min-height: 1em;
}

.ecq-3pt-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	background-color: var(--ecq-green);
	color: #fff;
	height: 46px;
	border-radius: 0 var(--ecq-radius) var(--ecq-radius) 0;
	padding: 0 28px;
	border: none;
	cursor: pointer;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.03em;
	white-space: nowrap;
	transition: background-color 0.15s;
}

.ecq-3pt-btn:hover {
	background-color: var(--ecq-green-dark);
}

.ecq-3pt-btn:disabled {
	opacity: 0.65;
	cursor: wait;
}

.ecq-3pt-spinner {
	display: none;
	animation: ecq-3pt-spin 0.8s infinite linear;
	flex-shrink: 0;
}

@keyframes ecq-3pt-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Order title shown after lookup */
.ecq-3pt-order-title {
	margin: 32px 0 0;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.01em;
	color: var(--ecq-ink);
}

/* Desktop progress bar */
.ecq-3pt-progress-desktop {
	padding: 40px;
	overflow: hidden;
}

.ecq-3pt-bar-bg {
	background-color: var(--ecq-border);
	position: relative;
	border-radius: 9999px;
}

.ecq-3pt-bar-line {
	color: transparent;
	background-color: var(--ecq-green);
	width: calc(var(--index, 0) * 25% + 5%);
	max-width: 100%;
	height: 6px;
	margin: 72px 0 52px;
	border-radius: 9999px;
	animation: ecq-3pt-line-grow 1s ease forwards;
}

@keyframes ecq-3pt-line-grow {
	from {
		width: 0;
	}
	to {
		width: calc(var(--index, 0) * 25% + 5%);
	}
}

.ecq-3pt-icon-dot {
	position: absolute;
	width: 16px;
	height: 16px;
	border-radius: 9999px;
	top: -5px;
	background-color: var(--ecq-border);
	color: transparent;
	transform: translateX(-50%);
	transition: background-color 0.3s;
}

.ecq-3pt-icon-dot:last-child {
	transform: translateX(-100%);
}

.ecq-3pt-icon-dot.is-active {
	background-color: var(--ecq-green);
}

.ecq-3pt-icon {
	width: 36px;
	height: 36px;
	position: absolute;
	top: -48px;
	left: 50%;
	transform: translateX(-50%);
	color: var(--ecq-border);
	transition: color 0.3s;
}

.ecq-3pt-icon-dot.is-active .ecq-3pt-icon {
	color: var(--ecq-green);
}

.ecq-3pt-icon-label {
	position: absolute;
	top: 18px;
	left: 50%;
	transform: translateX(-50%);
	color: var(--ecq-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap;
}

/* Mobile progress bar */
.ecq-3pt-progress-mobile {
	padding-left: 44px;
	position: relative;
	margin-bottom: 40px;
}

.ecq-3pt-mobile-line {
	height: 100%;
	width: 6px;
	background-color: var(--ecq-border);
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 9999px;
}

.ecq-3pt-mobile-line-fill {
	height: calc(var(--index, 0) * 25% + 10%);
	background-color: var(--ecq-green);
	border-radius: 9999px;
	animation: ecq-3pt-line-grow-v 1s ease forwards;
	color: transparent;
}

@keyframes ecq-3pt-line-grow-v {
	from {
		height: 0;
	}
	to {
		height: calc(var(--index, 0) * 25% + 10%);
	}
}

.ecq-3pt-mobile-step {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 32px;
}

.ecq-3pt-mobile-step:first-of-type {
	margin-top: 0;
}

.ecq-3pt-mobile-dot {
	position: absolute;
	width: 16px;
	height: 16px;
	border-radius: 9999px;
	background-color: var(--ecq-border);
	left: -5px;
	color: transparent;
	flex-shrink: 0;
	transition: background-color 0.3s;
}

.ecq-3pt-mobile-dot.is-active {
	background-color: var(--ecq-green);
}

.ecq-3pt-mobile-icon {
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	color: var(--ecq-border);
}

.ecq-3pt-mobile-label {
	color: var(--ecq-muted);
	font-weight: 700;
	font-size: 13px;
	letter-spacing: 0.02em;
}

/* Timeline events */
.ecq-3pt-events {
	margin-top: 24px;
}

.ecq-3pt-event-row {
	display: flex;
	gap: 24px;
}

.ecq-3pt-event-spine {
	background-color: var(--ecq-border);
	width: 3px;
	position: relative;
	flex-shrink: 0;
	border-radius: 9999px;
}

.ecq-3pt-event-dot {
	width: 14px;
	height: 14px;
	border-radius: 9999px;
	border: 3px solid var(--ecq-border);
	background-color: var(--ecq-green);
	position: absolute;
	top: calc(50% - 7px);
	left: 50%;
	transform: translateX(-50%);
}

.ecq-3pt-event-card {
	background-color: var(--ecq-bg-soft);
	border: 1px solid var(--ecq-border);
	padding: 14px 20px;
	border-radius: 8px;
	position: relative;
	flex: 1;
	margin-bottom: 16px;
}

.ecq-3pt-event-card.is-last {
	margin-bottom: 0;
}

.ecq-3pt-event-arrow {
	position: absolute;
	background-color: var(--ecq-bg-soft);
	border-left: 1px solid var(--ecq-border);
	border-bottom: 1px solid var(--ecq-border);
	left: 0;
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 14px;
	height: 14px;
}

.ecq-3pt-event-date {
	margin: 0 0 6px;
	color: var(--ecq-muted);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ecq-3pt-event-desc {
	margin: 0;
	color: var(--ecq-ink);
	font-size: 14px;
	line-height: 1.5;
}

.ecq-3pt-not-found {
	padding: 60px 0 35px;
	text-align: center;
	font-size: 17px;
	color: var(--ecq-sale);
}

/* Responsive */
@media (max-width: 640px) {
	.ecq-3pt-form {
		padding: 32px 20px;
	}

	.ecq-3pt-input {
		font-size: 16px;
	}

	.ecq-3pt-btn {
		padding: 0 18px;
	}
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	float: left;
	width: 25%;
}

.woocommerce-account .woocommerce-MyAccount-content {
	float: right;
	width: 72%;
}

.woocommerce-MyAccount-navigation ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.woocommerce-MyAccount-navigation a {
	display: block;
	padding: 10px 0;
	font-weight: 800;
	border-bottom: 1px solid var(--ecq-border);
}

/* .ecq-page {
	max-width: 980px;
} */

.ecq-page-header {
	margin-bottom: 28px;
	text-align: center;
}

.ecq-page-header h1 {
	font-size: clamp(34px, 5vw, 56px);
}

.ecq-page-content a {
	color: var(--ecq-green);
	font-weight: 800;
}

.page-id-16864 .ecq-page-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 24px 0;
	font-size: 15px;
	box-shadow: var(--ecq-shadow);
	border-radius: var(--ecq-radius);
	overflow: hidden;
}

.page-id-16864 .ecq-page-content table td,
.page-id-16864 .ecq-page-content table th {
	padding: 14px 18px;
	border: 1px solid var(--ecq-border);
	vertical-align: middle;
	line-height: 1.45;
	text-align: center;
}

.page-id-16864 .ecq-page-content table td:first-child,
.page-id-16864 .ecq-page-content table th:first-child {
	text-align: left;
}

.page-id-16864 .ecq-page-content table td p,
.page-id-16864 .ecq-page-content table th p,
.page-id-16864 .ecq-page-content table td div,
.page-id-16864 .ecq-page-content table th div {
	margin: 0;
	display: inline;
}

.page-id-16864 .ecq-page-content table tbody tr:first-child td,
.page-id-16864 .ecq-page-content table thead tr th {
	background: var(--ecq-green);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	border-color: rgba(255, 255, 255, 0.15);
}

.page-id-16864 .ecq-page-content table tbody tr:not(:first-child):nth-child(even) td {
	background: var(--ecq-bg-soft);
}

.page-id-16864 .ecq-page-content table tbody tr:not(:first-child):hover td {
	background: #edf3f0;
}

.page-id-16864 .ecq-page-content .wp-block-table {
	overflow-x: auto;
	margin: 24px 0;
}

.page-id-16864 .ecq-page-content .wp-block-table table {
	margin: 0;
}

.ecq-post-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.ecq-post-card {
	border: 1px solid var(--ecq-border);
	border-radius: var(--ecq-radius);
	padding: 18px;
	background: #ffffff;
}

.ecq-post-card h1,
.ecq-post-card h2 {
	margin-top: 12px;
	font-size: 22px;
	line-height: 1.2;
}

.ecq-post-thumb img,
.ecq-single-featured img {
	width: 100%;
	border-radius: var(--ecq-radius);
}

.ecq-empty-state {
	min-height: 46vh;
	display: grid;
	place-items: center;
	align-content: center;
	gap: 16px;
	text-align: center;
	padding-block: 64px;
}

.ecq-site-footer {
	background: var(--ecq-green-dark);
	color: #ffffff;
	margin-top: 40px;
}

/* Newsletter strip */
.ecq-footer-newsletter {
	background: #013d20;
	padding: 40px 0;
}

.ecq-footer-newsletter-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.ecq-footer-newsletter-text h2 {
	margin: 0 0 6px;
	font-size: clamp(20px, 2.5vw, 28px);
}

.ecq-footer-newsletter-text p {
	margin: 0;
	color: rgba(255, 255, 255, 0.85);
	font-size: 15px;
}

.ecq-newsletter-form {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	width: min(440px, 100%);
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.15);
	padding: 4px;
}

.ecq-newsletter-form input[type="email"] {
	flex: 1;
	border: none;
	outline: none;
	box-shadow: none;
	padding: 8px 14px;
	background: transparent;
	font-size: 15px;
	min-width: 0;
	min-height: unset;
	height: auto;
	width: auto;
	border-radius: 0;
	color: #ffffff;
}

.ecq-newsletter-form input[type="email"]::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.ecq-newsletter-form button {
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	min-height: unset;
	padding: 0;
	margin: 0;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.2);
	color: #ffffff;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.2s;
}

.ecq-newsletter-form button:hover {
	background: rgba(255, 255, 255, 0.35);
}

/* WPForms newsletter — footer (dark green bg, white pill) */
.ecq-footer-newsletter .wpforms-container {
	width: min(440px, 100%);
	flex-shrink: 0;
}

.ecq-footer-newsletter .wpforms-form {
	display: flex;
	align-items: center;
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.15);
	padding: 4px;
	margin: 0;
}

.ecq-footer-newsletter .wpforms-field-container {
	flex: 1;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.ecq-footer-newsletter .wpforms-field {
	margin: 0;
	padding: 0;
}

.ecq-footer-newsletter .wpforms-form input[type="email"] {
	flex: 1;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	padding: 8px 14px;
	background: transparent !important;
	font-size: 15px;
	min-width: 0;
	min-height: unset;
	height: auto;
	width: 100%;
	border-radius: 0;
	color: #ffffff !important;
}

.ecq-footer-newsletter .wpforms-form input[type="email"]::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.ecq-footer-newsletter .wpforms-submit-container {
	flex-shrink: 0;
	margin: 0;
	padding: 0;
}

.ecq-footer-newsletter .wpforms-submit {
	width: 36px;
	height: 36px;
	min-height: unset;
	padding: 0;
	margin: 0;
	border-radius: 9999px !important;
	background: rgba(255, 255, 255, 0.2) !important;
	border: none !important;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.2s;
	font-size: 0;
	color: transparent;
	position: relative;
}

#wpforms-submit-148474 {
	margin-right: 10px;
	margin-top: -10px;
	border-radius: 50% !important;
}

#wpforms-submit-148474:focus:after {
    display: none !important;
}

#wpforms-148474-field_1-container {
    padding: 5px 0 !important;
}

.ecq-footer-newsletter .wpforms-submit::after {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.ecq-footer-newsletter .wpforms-submit:hover {
	background: rgba(255, 255, 255, 0.35) !important;
}

.ecq-footer-newsletter .w-submit-spinner,
.ecq-footer-newsletter .wpforms-submit-spinner,
.ecq-cart-newsletter .w-submit-spinner,
.ecq-cart-newsletter .wpforms-submit-spinner {
	display: none !important;
}

.ecq-footer-newsletter .wpforms-confirmation-container-full {
	color: #ffffff;
	text-align: center;
	padding: 8px 0;
	font-size: 15px;
	background: transparent;
	border: none;
}

/* Error state: keep pill shape, float message below */
.ecq-footer-newsletter .wpforms-form {
	position: relative;
}
.ecq-footer-newsletter .wpforms-form:has(.wpforms-has-error) {
	border-color: rgba(255, 110, 90, 0.9) !important;
}
.ecq-footer-newsletter em.wpforms-error {
	position: absolute;
	top: calc(100% + 5px);
	left: 14px;
	margin: 0 !important;
	padding: 0;
	font-size: 11px;
	font-style: normal;
	color: rgba(255, 190, 185, 1);
	white-space: nowrap;
	line-height: 1.4;
}

/* WPForms newsletter — cart page (light bg, green pill) */
.ecq-cart-newsletter .wpforms-container {
	max-width: 440px;
	margin: 0 auto;
	width: 100%;
}

.ecq-cart-newsletter .wpforms-form {
	display: flex;
	align-items: center;
	border: 1px solid rgba(1, 86, 65, 0.4);
	border-radius: 9999px;
	background: #ffffff;
	padding: 4px;
	margin: 0;
}

.ecq-cart-newsletter .wpforms-field-container {
	flex: 1;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.ecq-cart-newsletter .wpforms-field {
	margin: 0;
	padding: 0;
}

.ecq-cart-newsletter .wpforms-form input[type="email"] {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	padding: 8px 14px;
	background: transparent !important;
	font-size: 15px;
	min-width: 0;
	min-height: unset;
	height: auto;
	width: 100%;
	border-radius: 0;
	color: var(--ecq-green) !important;
}

.ecq-cart-newsletter .wpforms-form input[type="email"]::placeholder {
	color: var(--ecq-muted);
}

.ecq-cart-newsletter .wpforms-submit-container {
	flex-shrink: 0;
	margin: 0;
	padding: 0;
}

.ecq-cart-newsletter .wpforms-submit {
	width: 36px;
	height: 36px;
	min-height: unset;
	padding: 0;
	margin: 0;
	border-radius: 9999px !important;
	background: var(--ecq-green) !important;
	border: none !important;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.2s;
	font-size: 0;
	color: transparent;
	position: relative;
}

.ecq-cart-newsletter .wpforms-submit::after {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.ecq-cart-newsletter .wpforms-submit:hover {
	background: var(--ecq-green-dark) !important;
}

.ecq-cart-newsletter .wpforms-confirmation-container-full {
	text-align: center;
	padding: 8px 0;
	font-size: 15px;
	background: transparent;
	border: none;
	color: var(--ecq-green);
}

/* Error state: keep pill shape, float message below */
.ecq-cart-newsletter .wpforms-form {
	position: relative;
}
.ecq-cart-newsletter .wpforms-form:has(.wpforms-has-error) {
	border-color: #e05252 !important;
}
.ecq-cart-newsletter em.wpforms-error {
	position: absolute;
	top: calc(100% + 5px);
	left: 14px;
	margin: 0 !important;
	padding: 0;
	font-size: 11px;
	font-style: normal;
	color: #e05252;
	white-space: nowrap;
	line-height: 1.4;
}

/* Main footer body */
.ecq-footer-main {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: 40px;
	padding-block: 48px;
	align-items: start;
}

.ecq-footer-brand {
	margin: 0 0 8px;
}

/* Footer reuses the same custom logo; the footer column is narrower than the
   header, and this instance sits above a paragraph, so hold it well short of
   the header's cap. */
.ecq-footer-brand-col .custom-logo-link {
	display: inline-block;
}

.ecq-footer-brand-col .custom-logo {
	max-width: 200px;
	height: auto;
	display: block;
}

.ecq-footer-brand-col p {
	margin-top: 12px;
	color: rgba(255, 255, 255, 0.75);
	font-size: 14px;
	max-width: 280px;
}

.ecq-footer-nav-heading {
	display: block;
	margin-bottom: 14px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #ffffff;
}

.ecq-footer-menu,
.ecq-social {
	display: grid;
	gap: 8px;
}

.ecq-footer-menu a {
	color: rgba(255, 255, 255, 0.75);
	font-size: 14px;
	text-decoration: none;
}

.ecq-footer-menu a:hover {
	color: #ffffff;
}

.ecq-footer-social-col {
	display: flex;
	gap: 12px;
	margin-top: 16px;
}

.ecq-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	opacity: 0.7;
	transition: opacity 0.2s;
}

.ecq-social-link:hover {
	opacity: 1;
}

/* Bottom utilities bar */
.ecq-footer-bottom {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	padding-block: 16px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.75);
}

.ecq-footer-bottom-links {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	justify-content: center;
}

.ecq-footer-bottom-links a {
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

.ecq-footer-bottom-links a:hover {
	color: #ffffff;
}

.ecq-footer-bottom-social {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	display: flex;
	align-items: center;
	gap: 12px;
	border-top: 0;
	border-left: 4px solid var(--ecq-green);
	border-radius: 8px;
	padding: 16px 18px;
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
	color: var(--ecq-ink);
	font-weight: 800;
}

.wc-block-components-notice-banner {
	border: 1px solid rgba(1, 86, 65, 0.18);
	border-left: 4px solid var(--ecq-green);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: var(--ecq-shadow);
	color: var(--ecq-ink);
	font-weight: 800;
}

.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	border-left-color: var(--ecq-sale);
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--ecq-green);
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	margin-right: 0;
	border-radius: 999px;
	background: rgba(1, 86, 65, 0.12);
	flex: 0 0 auto;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	margin-left: auto;
	border-color: var(--ecq-green);
	background: var(--ecq-green);
	color: #ffffff;
}

.ecq-cart-toast {
	position: fixed;
	top: 18px;
	right: 18px;
	z-index: 9999;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 14px;
	width: min(390px, calc(100vw - 32px));
	padding: 18px 18px 16px;
	border: 1px solid rgba(1, 86, 65, 0.16);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 16px 42px rgba(0, 0, 0, 0.18);
	color: var(--ecq-ink);
	opacity: 0;
	pointer-events: none;
	transform: translateY(-18px);
	transition: opacity 180ms ease, transform 180ms ease;
}

.ecq-cart-toast.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.ecq-cart-toast__close {
	position: absolute;
	top: 8px;
	right: 10px;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ecq-muted);
	font-size: 24px;
	line-height: 1;
}

.ecq-cart-toast__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin-top: 2px;
	border-radius: 999px;
	background: var(--ecq-green);
	color: #ffffff;
	font-weight: 900;
}

.ecq-cart-toast__content {
	padding-right: 24px;
}

.ecq-cart-toast__content strong {
	display: block;
	color: var(--ecq-green-dark);
	font-size: 17px;
	font-weight: 900;
	line-height: 1.2;
}

.ecq-cart-toast__content p {
	margin: 4px 0 14px;
	color: var(--ecq-muted);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

.ecq-cart-toast__actions {
	display: flex;
	gap: 8px;
}

.ecq-cart-toast__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 14px;
	border: 2px solid var(--ecq-green);
	border-radius: 6px;
	color: var(--ecq-green);
	font-size: 14px;
	font-weight: 900;
}

.ecq-cart-toast__button--primary {
	background: var(--ecq-sale);
	border-color: var(--ecq-sale);
	color: #ffffff;
}

.ecq-cart-toast__button:hover {
	color: #ffffff;
	background: var(--ecq-green);
}

.ecq-cart-toast__button--primary:hover {
	background: #b91515;
	border-color: #b91515;
}

@media (max-width: 640px) {
	.ecq-cart-toast {
		top: auto;
		right: 16px;
		bottom: 16px;
		left: 16px;
		width: auto;
	}

	.ecq-cart-toast__actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1100px) {
	.ecq-header-main {
		grid-template-columns: auto 1fr auto;
	}

	.ecq-menu-toggle {
		display: block;
	}

	.ecq-primary-nav {
		position: fixed;
		inset: 118px 0 auto 0;
		display: none;
		background: #ffffff;
		border-bottom: 1px solid var(--ecq-border);
		padding: 20px 16px;
	}

	.ecq-primary-nav.is-open {
		display: block;
	}

	.ecq-menu {
		display: grid;
		gap: 14px;
		max-width: var(--ecq-page);
		margin: 0 auto;
	}

	.ecq-header-search {
		display: none;
	}

	.woocommerce div.product {
		grid-template-columns: 1fr;
	}

	.woocommerce ul.products,
	.wc-block-grid__products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.wc-block-components-sidebar-layout,
	.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
	.ecq-thankyou-layout {
		display: block;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main,
	.wc-block-components-sidebar {
		width: 100%;
		margin: 0 0 24px;
	}

	.ecq-thankyou-summary {
		position: static;
		margin: 0;
	}

	.ecq-tracking-promises,
	.ecq-tracking-details-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.ecq-container {
		width: min(100% - 24px, var(--ecq-page));
	}

	.page-id-16864 .ecq-page-content table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.ecq-ticker {
		padding: 10px 0;
		font-size: 18px;
	}

	.ecq-ticker-track {
		gap: 60px;
	}

	.ecq-header-main {
		min-height: 68px;
		gap: 12px;
	}

	/* The header is a three-column grid at this width; let the logo shrink
	   rather than push the menu toggle and cart actions off-screen. */
	.ecq-brand img {
		max-width: 150px;
	}

	.ecq-icon-link {
		display: none;
	}

	.ecq-cart-link {
		font-size: 0;
	}

	.ecq-cart-link::before {
		content: "Cart";
		font-size: 14px;
	}

	.ecq-trustpilot-home a {
		flex-wrap: wrap;
		min-height: 48px;
		padding: 8px 0;
		font-size: 13px;
	}

	.ecq-primary-nav {
		inset-block-start: 106px;
	}

	.woocommerce ul.products,
	.wc-block-grid__products,
	.ecq-post-grid,
	.ecq-trust-strip,
	.ecq-policy-links,
	.ecq-review-grid,
	.ecq-commerce-assurance {
		grid-template-columns: 1fr;
	}

	.ecq-footer-main {
		grid-template-columns: 1fr;
		gap: 28px;
		padding-block: 32px;
	}

	.ecq-footer-newsletter-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}

	.ecq-newsletter-form {
		width: 100%;
	}

	.ecq-footer-bottom {
		grid-template-columns: 1fr;
		text-align: center;
		gap: 12px;
	}

	.ecq-footer-bottom-links {
		justify-content: center;
	}

	.ecq-footer-bottom-social {
		justify-content: center;
	}

	.ecq-commerce-page {
		padding-top: 24px;
		padding-bottom: 44px;
	}

	.ecq-commerce-page .ecq-page-header {
		display: grid;
		gap: 10px;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main {
		padding: 0 14px 14px;
	}

	.wc-block-components-sidebar {
		padding: 16px;
		box-shadow: none;
	}

	.wc-block-cart-items__row {
		padding: 18px 0;
	}

	.ecq-cart-recommendations {
		padding-top: 42px;
	}

	.ecq-cart-newsletter,
	.ecq-checkout-support {
		margin-top: 40px;
		padding: 34px 18px;
	}

	.ecq-order-received-page {
		padding-top: 18px;
	}

	.ecq-thankyou-main {
		padding-bottom: 36px;
	}

	.ecq-thankyou-hero {
		gap: 14px;
	}

	.ecq-thankyou-status-icon {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		font-size: 22px;
	}

	.ecq-thankyou-message,
	.ecq-thankyou-panel,
	.ecq-thankyou-info-block {
		padding: 18px;
	}

	.ecq-thankyou-info-grid {
		grid-template-columns: 1fr;
	}

	.ecq-thankyou-info-block,
	.ecq-thankyou-info-block:nth-child(odd),
	.ecq-thankyou-info-block:nth-last-child(-n+2) {
		border-right: 0;
		border-bottom: 1px solid var(--ecq-border);
	}

	.ecq-thankyou-info-block:last-child {
		border-bottom: 0;
	}

	.ecq-thankyou-summary {
		padding: 22px 16px;
	}

	.ecq-thankyou-item {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	.ecq-thankyou-item-image,
	.ecq-thankyou-item-image img {
		width: 64px;
		height: 64px;
	}

	.ecq-thankyou-item-total {
		grid-column: 2;
	}

	.ecq-tracking-shell {
		padding-bottom: 44px;
	}

	.ecq-tracking-card,
	.ecq-tracking-status-card,
	.ecq-tracking-detail-card,
	.ecq-tracking-help {
		padding: 18px;
	}

	.ecq-tracking-fields {
		grid-template-columns: 1fr;
	}

	.ecq-tracking-status-card {
		display: grid;
	}

	.ecq-tracking-progress-steps {
		flex-direction: column;
		gap: 0;
		padding-left: 44px;
	}

	.ecq-tracking-progress-steps::before {
		left: 24px;
		top: 0;
		bottom: 0;
		height: auto;
		right: auto;
		width: 8px;
	}

	.ecq-tracking-progress-steps::after {
		left: 24px;
		top: 0;
		width: 8px;
		height: calc(var(--step, 0) / 4 * 100%);
		animation: ecq-track-fill-v 0.9s ease forwards;
	}

	@keyframes ecq-track-fill-v {
		from {
			height: 0;
		}
		to {
			height: calc(var(--step, 0) / 4 * 100%);
		}
	}

	.ecq-tracking-step-node {
		width: 100%;
		flex-direction: row;
		gap: 14px;
		padding: 16px 0;
	}

	.ecq-tracking-step-node:first-child {
		padding-top: 0;
	}

	.ecq-tracking-step-node:last-child {
		padding-bottom: 0;
	}

	.ecq-tracking-step-label {
		text-align: left;
	}

	.ecq-tracking-item {
		grid-template-columns: 62px minmax(0, 1fr);
	}

	.ecq-tracking-item-image img {
		width: 62px;
		height: 62px;
	}

	.ecq-tracking-item em {
		grid-column: 2;
	}

	.ecq-tile-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ecq-section-heading {
		display: grid;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: auto;
		margin-bottom: 18px;
	}
}

#radio-control-wc-payment-method-options-stripe__content {
    margin-top: 14px !important;
}
