:root {
	--promodose-radius-sm: 8px;
	--promodose-radius-md: 12px;
	--promodose-radius-lg: 18px;
	--promodose-shadow-soft: 0 14px 40px rgb(29 40 79 / 10%);
	--promodose-shadow-nav: 0 10px 30px rgb(29 40 79 / 8%);
}

html {
	max-width: 100%;
	overflow-x: hidden;
	scroll-behavior: smooth;
}

body {
	-webkit-font-smoothing: antialiased;
	direction: rtl;
	font-family: var(--wp--preset--font-family--promodose-arabic);
	max-width: 100%;
	overflow-x: hidden;
	text-rendering: optimizeLegibility;
}

.wp-site-blocks {
	overflow-x: clip;
}

body .is-layout-constrained > .alignwide {
	max-width: var(--wp--style--global--wide-size);
}

.wp-site-blocks > .wp-block-template-part + .promodose-page-shell,
.wp-site-blocks > .promodose-page-shell + .wp-block-template-part,
.promodose-page-shell > .entry-content,
.promodose-page-shell > .wp-block-post-content,
.promodose-page-shell > .entry-content > :first-child,
.promodose-page-shell > .wp-block-post-content > :first-child {
	margin-block-start: 0;
}

.promodose-page-shell {
	margin-block-start: 0;
	min-height: 100vh;
}

.promodose-section-soft {
	background:
		radial-gradient(circle at 12% 12%, color-mix(in srgb, var(--wp--preset--color--turquoise) 16%, transparent) 0, transparent 28%),
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary) 8%, var(--wp--preset--color--base)) 0%, color-mix(in srgb, var(--wp--preset--color--turquoise) 9%, var(--wp--preset--color--base)) 100%);
}

.promodose-card {
	background: var(--wp--preset--color--base);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--navy) 10%, transparent);
	border-radius: var(--promodose-radius-md);
	box-shadow: var(--promodose-shadow-soft);
}

.promodose-trust-pill {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 11%, white);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 24%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 700;
	gap: 0.45rem;
	padding: 0.45rem 0.75rem;
}

.promodose-muted {
	color: var(--wp--preset--color--muted);
}

.promodose-consultation-native {
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 16%, var(--wp--preset--color--base)) 0%, color-mix(in srgb, var(--wp--preset--color--primary) 8%, var(--wp--preset--color--base)) 100%);
}

.promodose-consultation-native[style] {
	padding-bottom: clamp(3rem, 5vw, 4.25rem) !important;
	padding-top: clamp(3rem, 5vw, 4.25rem) !important;
}

.promodose-consultation-native .wp-block-button__link {
	font-weight: 800;
}

.promodose-consultation-native .wp-block-button:first-child .wp-block-button__link {
	background: #25d366 !important;
	color: #fff !important;
}

.promodose-consultation-native .wp-block-button:first-child .wp-block-button__link:hover,
.promodose-consultation-native .wp-block-button:first-child .wp-block-button__link:focus-visible {
	background: #1ebe5d !important;
	color: #fff !important;
}

.promodose-consultation-native__panel {
	background: color-mix(in srgb, var(--wp--preset--color--base) 92%, transparent);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 24%, transparent);
	border-radius: var(--promodose-radius-md);
	box-shadow: var(--promodose-shadow-soft);
}

.promodose-consultation-native__icon {
	align-items: center;
	background: linear-gradient(135deg, var(--wp--preset--color--primary), var(--wp--preset--color--turquoise));
	border-radius: 16px;
	color: var(--wp--preset--color--base);
	display: inline-flex;
	font-size: 1.8rem;
	height: 58px;
	justify-content: center;
	width: 58px;
}

.promodose-consultation-native__list {
	font-weight: 800;
}

.promodose-catalog-card,
.promodose-showcase-card,
.promodose-offer-card,
.promodose-package-card {
	position: relative;
}

.promodose-favorite-button {
	align-items: center;
	background: rgb(255 255 255 / 92%);
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 999px;
	box-shadow: 0 10px 24px rgb(18 40 74 / 14%);
	color: var(--wp--preset--color--navy);
	cursor: pointer;
	display: inline-flex;
	height: var(--promodose-favorite-size, 38px);
	inset-block-start: var(--promodose-favorite-offset, 0.75rem);
	inset-inline-start: var(--promodose-favorite-offset, 0.75rem);
	justify-content: center;
	padding: 0;
	position: absolute;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, opacity 160ms ease, transform 160ms ease;
	width: var(--promodose-favorite-size, 38px);
	z-index: 5;
}

.promodose-favorite-button svg {
	fill: none;
	height: calc(var(--promodose-favorite-size, 38px) * 0.52);
	stroke: currentColor;
	stroke-width: 2;
	width: calc(var(--promodose-favorite-size, 38px) * 0.52);
}

.promodose-catalog-card {
	--promodose-favorite-size: 36px;
	--promodose-favorite-offset: 0.65rem;
}

.promodose-catalog-card > .promodose-favorite-button {
	inset-inline-end: var(--promodose-favorite-offset, 0.65rem);
	inset-inline-start: auto;
}

.promodose-showcase-card,
.promodose-offer-card {
	--promodose-favorite-size: 42px;
	--promodose-favorite-offset: 0.78rem;
}

.promodose-package-card {
	--promodose-favorite-size: 34px;
	--promodose-favorite-offset: 0.65rem;
}

.promodose-favorite-button:hover,
.promodose-favorite-button:focus-visible {
	background: #fff;
	color: #ff235d;
	outline: none;
	transform: translateY(-1px);
}

.promodose-favorite-button.is-favorite {
	background: #ff235d;
	border-color: #ff235d;
	color: #fff;
}

.promodose-favorite-button.is-favorite svg {
	fill: currentColor;
}

.promodose-favorite-button.is-loading {
	opacity: 0.72;
	pointer-events: none;
}

.promodose-header-favorites-link {
	position: relative;
}

.promodose-header-favorites-link svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
}

.promodose-header-favorites-count {
	align-items: center;
	background: #ff235d;
	border: 2px solid #fff;
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 900;
	height: 22px;
	justify-content: center;
	inset-block-start: -3px;
	inset-inline-start: -4px;
	line-height: 1;
	min-width: 22px;
	padding-inline: 0.25rem;
	position: absolute;
}

.promodose-header-favorites-count[hidden] {
	display: none;
}

.promodose-account-favorites {
	display: grid;
	gap: 1.25rem;
}

.promodose-account-favorites h2 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(1.5rem, 3vw, 2.2rem);
	margin: 0;
}

.promodose-account-favorites__empty {
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 8px;
	display: grid;
	gap: 0.9rem;
	padding: 1.25rem;
}

.promodose-account-favorites__empty p {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	margin: 0;
}

.promodose-account-favorites__empty a,
.promodose-account-favorite-card__cart {
	background: var(--wp--preset--color--turquoise);
	border-radius: 8px;
	color: #fff;
	font-weight: 900;
	justify-self: start;
	padding: 0.7rem 1rem;
	text-decoration: none;
}

.promodose-account-favorites__grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.promodose-account-favorite-card {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 8px;
	overflow: hidden;
	position: relative;
}

.promodose-account-favorite-card__media {
	background: var(--wp--preset--color--base-2);
	display: block;
}

.promodose-account-favorite-card__media img {
	aspect-ratio: 4 / 3;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-account-favorite-card__body {
	display: grid;
	gap: 0.7rem;
	padding: 1rem;
}

.promodose-account-favorite-card h3 {
	font-size: 1.05rem;
	line-height: 1.35;
	margin: 0;
}

.promodose-account-favorite-card h3 a {
	color: var(--wp--preset--color--navy);
	text-decoration: none;
}

.promodose-account-favorite-card__price {
	color: var(--wp--preset--color--turquoise);
	font-weight: 900;
}

.promodose-account-favorite-card__actions {
	align-items: center;
	display: flex;
	gap: 0.55rem;
	justify-content: space-between;
}

.promodose-account-favorite-card__favorite {
	inset: auto;
	position: static;
}

.promodose-account-body .entry-content > .woocommerce,
.promodose-account-body .wp-block-post-content > .woocommerce,
.promodose-account-body main .woocommerce {
	box-sizing: border-box;
	direction: rtl;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 320px minmax(0, 1fr);
	margin-inline: auto;
	max-width: min(100% - 2rem, 1320px) !important;
	padding-block: clamp(0.8rem, 2vw, 1.5rem) clamp(1.5rem, 3vw, 2.5rem);
	width: min(100% - 2rem, 1320px) !important;
}

.promodose-account-body .wp-block-post-content,
.promodose-account-body .entry-content {
	max-width: none !important;
	width: 100% !important;
}

.promodose-account-body main.wp-block-group {
	padding-block-start: clamp(1.25rem, 3vw, 2.25rem) !important;
	padding-block-end: clamp(2rem, 4vw, 3rem) !important;
	padding-inline: clamp(0.75rem, 2vw, 1.25rem) !important;
}

.promodose-account-body .wp-block-post-title {
	display: none;
}

.promodose-account-body .woocommerce::before,
.promodose-account-body .woocommerce::after {
	content: none;
	display: none;
}

.promodose-account-body .woocommerce-MyAccount-navigation {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 14px;
	box-shadow: 0 18px 46px rgb(18 40 74 / 7%);
	float: none;
	padding: 0.85rem;
	width: auto;
}

.promodose-account-body .woocommerce-MyAccount-navigation ul {
	display: grid;
	gap: 0.45rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.promodose-account-body .woocommerce-MyAccount-navigation-link a {
	align-items: center;
	border-radius: 10px;
	color: var(--wp--preset--color--muted);
	display: flex;
	font-size: 0.95rem;
	font-weight: 900;
	justify-content: space-between;
	line-height: 1.45;
	min-height: 46px;
	padding: 0.72rem 0.9rem;
	text-decoration: none;
	transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.promodose-account-body .woocommerce-MyAccount-navigation-link a::after {
	border-block-start: 3px solid currentColor;
	border-inline-end: 3px solid currentColor;
	color: color-mix(in srgb, var(--wp--preset--color--turquoise) 72%, var(--wp--preset--color--navy));
	content: "";
	display: inline-block;
	height: 0.48rem;
	transform: rotate(-135deg);
	width: 0.48rem;
}

.promodose-account-body .woocommerce-MyAccount-navigation-link.is-active a,
.promodose-account-body .woocommerce-MyAccount-navigation-link a:hover,
.promodose-account-body .woocommerce-MyAccount-navigation-link a:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 12%, #fff);
	color: var(--wp--preset--color--navy);
	outline: none;
}

.promodose-account-body .woocommerce-MyAccount-navigation-link.is-active a {
	box-shadow: inset 4px 0 0 var(--wp--preset--color--turquoise);
}

.promodose-account-body .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 16px;
	box-shadow: 0 22px 60px rgb(18 40 74 / 7%);
	box-sizing: border-box;
	color: var(--wp--preset--color--navy);
	float: none;
	min-width: 0;
	padding: clamp(1rem, 2vw, 1.5rem);
	width: auto;
}

.promodose-account-body .woocommerce-MyAccount-content > h2,
.promodose-account-body .woocommerce-MyAccount-content > h3,
.promodose-account-body .woocommerce-MyAccount-content legend {
	color: var(--wp--preset--color--navy);
	font-weight: 900;
}

.promodose-account-body .woocommerce-MyAccount-content p,
.promodose-account-body .woocommerce-MyAccount-content address {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	line-height: 1.8;
}

.promodose-account-body .woocommerce-MyAccount-content a {
	color: var(--wp--preset--color--purple);
	font-weight: 900;
}

.promodose-account-body .woocommerce table.shop_table {
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 12px;
	overflow: hidden;
}

.promodose-account-body .woocommerce table.shop_table th,
.promodose-account-body .woocommerce table.shop_table td {
	border-color: rgb(18 40 74 / 8%);
	color: var(--wp--preset--color--navy);
	font-weight: 800;
	padding: 0.9rem;
}

.promodose-account-body .woocommerce form .form-row label {
	color: var(--wp--preset--color--navy);
	font-weight: 900;
	margin-block-end: 0.35rem;
}

.promodose-account-body .woocommerce form .input-text,
.promodose-account-body .woocommerce form select,
.promodose-account-body .woocommerce form textarea {
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 14%);
	border-radius: 10px;
	color: var(--wp--preset--color--navy);
	font-family: inherit;
	font-weight: 800;
	min-height: 48px;
	padding: 0.78rem 0.9rem;
}

.promodose-account-profile-fields {
	background:
		radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--wp--preset--color--turquoise) 9%, transparent) 0, transparent 32%),
		linear-gradient(135deg, #fff 0%, color-mix(in srgb, var(--wp--preset--color--turquoise) 5%, #fff) 100%);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 18%, rgb(18 40 74 / 10%));
	border-radius: 14px;
	display: grid;
	gap: 1rem;
	margin-block: 1.25rem;
	padding: clamp(1rem, 2vw, 1.35rem);
}

.promodose-account-profile-fields__heading span {
	color: var(--wp--preset--color--turquoise);
	display: inline-block;
	font-size: 0.88rem;
	font-weight: 900;
	margin-block-end: 0.3rem;
}

.promodose-account-profile-fields__heading h3 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(1.25rem, 2.4vw, 1.75rem);
	line-height: 1.3;
	margin: 0;
}

.promodose-account-profile-fields__heading p {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	line-height: 1.75;
	margin: 0.35rem 0 0;
}

.promodose-account-profile-fields__photo {
	align-items: center;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 12px;
	display: grid;
	gap: 1rem;
	grid-template-columns: 104px minmax(0, 1fr);
	padding: 1rem;
}

.promodose-account-profile-fields__avatar {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 24%, transparent);
	border-radius: 50%;
	box-shadow: 0 14px 28px rgb(18 40 74 / 8%);
	height: 104px;
	overflow: hidden;
	width: 104px;
}

.promodose-account-profile-fields__avatar img,
.promodose-account-profile-fields__avatar .avatar {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.promodose-account-body .woocommerce form .promodose-account-profile-fields__photo label {
	color: var(--wp--preset--color--navy);
	display: block;
	font-weight: 900;
	margin-block-end: 0.4rem;
}

.promodose-account-profile-fields input[type="file"] {
	background: var(--wp--preset--color--base-2);
	border: 1px dashed rgb(18 40 74 / 18%);
	border-radius: 10px;
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	font-family: inherit;
	font-weight: 800;
	padding: 0.75rem;
	width: 100%;
}

.promodose-account-profile-fields__remove {
	align-items: center;
	color: var(--wp--preset--color--muted) !important;
	display: inline-flex !important;
	font-size: 0.9rem;
	gap: 0.45rem;
	margin-block-start: 0.55rem;
}

.promodose-account-profile-fields__grid {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-account-profile-fields__grid .form-row {
	float: none !important;
	margin: 0 !important;
	width: auto !important;
}

.promodose-account-profile-fields__grid .form-row-wide {
	grid-column: 1 / -1;
}

.promodose-account-body .woocommerce .button,
.promodose-account-body .woocommerce button.button,
.promodose-account-body .woocommerce input.button {
	background: var(--wp--preset--color--turquoise);
	border: 0;
	border-radius: 10px;
	color: #fff;
	font-family: inherit;
	font-weight: 900;
	min-height: 44px;
	padding: 0.72rem 1.15rem;
	text-decoration: none;
}

.promodose-account-dashboard {
	display: grid;
	gap: 1.15rem;
}

.promodose-account-dashboard__hero {
	align-items: center;
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 14%, #fff) 0%, #fff 70%);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 28%, transparent);
	border-radius: 14px;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: clamp(1rem, 2.5vw, 1.65rem);
}

.promodose-account-dashboard__hero span,
.promodose-account-section-heading span {
	color: var(--wp--preset--color--turquoise);
	display: inline-block;
	font-size: 0.9rem;
	font-weight: 900;
	margin-block-end: 0.4rem;
}

.promodose-account-dashboard__hero h2,
.promodose-account-section-heading h2 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(1.65rem, 4vw, 2.6rem);
	line-height: 1.25;
	margin: 0;
}

.promodose-account-dashboard__hero p,
.promodose-account-section-heading p {
	color: var(--wp--preset--color--muted);
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.85;
	margin: 0.55rem 0 0;
}

.promodose-account-dashboard__hero a,
.promodose-account-empty a {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 12%);
	border-radius: 999px;
	color: var(--wp--preset--color--navy);
	flex: 0 0 auto;
	font-weight: 900;
	padding: 0.7rem 1rem;
	text-decoration: none;
}

.promodose-account-dashboard__stats,
.promodose-account-dashboard__links,
.promodose-account-reviews__grid {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.promodose-account-dashboard__stats a,
.promodose-account-dashboard__links a,
.promodose-account-review-card,
.promodose-account-empty {
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 12px;
	box-sizing: border-box;
	text-decoration: none;
}

.promodose-account-dashboard__stats a {
	display: grid;
	gap: 0.2rem;
	padding: 1rem;
	text-align: center;
}

.promodose-account-dashboard__stats strong {
	color: var(--wp--preset--color--turquoise);
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1;
}

.promodose-account-dashboard__stats span {
	color: var(--wp--preset--color--muted);
	font-weight: 900;
}

.promodose-account-dashboard__links {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-account-dashboard__links a {
	color: var(--wp--preset--color--navy);
	display: grid;
	gap: 0.35rem;
	padding: 1rem;
}

.promodose-account-dashboard__links strong {
	color: var(--wp--preset--color--navy);
	font-size: 1.04rem;
	font-weight: 900;
}

.promodose-account-dashboard__links em {
	color: var(--wp--preset--color--muted);
	font-style: normal;
	font-weight: 800;
	line-height: 1.7;
}

.promodose-account-reviews {
	display: grid;
	gap: 1.2rem;
}

.promodose-account-reviews__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-account-review-card {
	display: grid;
	overflow: hidden;
}

.promodose-account-review-card__media {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff);
	display: block;
}

.promodose-account-review-card__media img {
	aspect-ratio: 4 / 3;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-account-review-card__body {
	display: grid;
	gap: 0.55rem;
	padding: 1rem;
}

.promodose-account-review-card__meta {
	display: grid;
	gap: 0.15rem;
}

.promodose-account-review-card__meta a {
	color: var(--wp--preset--color--navy);
	font-weight: 900;
	text-decoration: none;
}

.promodose-account-review-card__meta span {
	color: var(--wp--preset--color--muted);
	font-size: 0.82rem;
	font-weight: 800;
}

.promodose-account-review-card__stars {
	color: #f6b04f;
	font-size: 1rem;
	letter-spacing: 0;
}

.promodose-account-review-card p {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	line-height: 1.75;
	margin: 0;
}

.promodose-account-review-card__status {
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 900;
	justify-self: start;
	padding: 0.34rem 0.65rem;
}

.promodose-account-review-card__status.is-approved {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 13%, #fff);
	color: var(--wp--preset--color--turquoise);
}

.promodose-account-review-card__status.is-pending {
	background: #fff7e8;
	color: #b86a00;
}

.promodose-account-empty {
	display: grid;
	gap: 0.65rem;
	padding: 1.35rem;
}

.promodose-account-empty h3 {
	color: var(--wp--preset--color--navy);
	font-size: 1.3rem;
	margin: 0;
}

.promodose-account-empty p {
	margin: 0;
}

.promodose-account-empty a {
	justify-self: start;
}

.promodose-account-body .woocommerce-notices-wrapper,
.promodose-account-body .woocommerce-message,
.promodose-account-body .woocommerce-info,
.promodose-account-body .woocommerce-error {
	grid-column: 1 / -1;
}

body:not(.logged-in).promodose-account-body .entry-content > .woocommerce,
body:not(.logged-in).promodose-account-body .wp-block-post-content > .woocommerce,
body:not(.logged-in).promodose-account-body main .woocommerce {
	grid-template-columns: 1fr;
	max-width: min(100% - 2rem, 560px);
}

body:not(.logged-in).promodose-account-body .woocommerce-form-login,
body:not(.logged-in).promodose-account-body .woocommerce-form-register {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 16px;
	box-shadow: 0 22px 60px rgb(18 40 74 / 7%);
	color: var(--wp--preset--color--navy);
	padding: clamp(1rem, 3vw, 1.6rem);
}

.promodose-favorites-standalone-body .wp-site-blocks {
	background:
		radial-gradient(circle at 14% 10%, color-mix(in srgb, var(--wp--preset--color--turquoise) 14%, transparent) 0, transparent 30%),
		linear-gradient(180deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, var(--wp--preset--color--base)) 0%, var(--wp--preset--color--base) 42%);
	min-height: 100vh;
}

.promodose-favorites-page {
	color: var(--wp--preset--color--navy);
	padding-block: clamp(2.25rem, 5vw, 4.5rem);
}

.promodose-favorites-page__hero,
.promodose-favorites-page__content {
	margin-inline: auto;
	max-width: min(100% - 2rem, var(--wp--style--global--wide-size, 1180px));
}

.promodose-favorites-page__hero-inner {
	align-items: center;
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 14%, #fff) 0%, #fff 64%);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 26%, transparent);
	border-radius: 14px;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr auto;
	padding: clamp(1.4rem, 3vw, 2.5rem);
}

.promodose-favorites-page__intro {
	display: grid;
	gap: 0.75rem;
	justify-items: start;
}

.promodose-favorites-page__eyebrow {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 35%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--primary);
	font-size: 0.9rem;
	font-weight: 900;
	padding: 0.45rem 0.85rem;
}

.promodose-favorites-page h1 {
	font-size: clamp(2rem, 4.2vw, 4rem);
	line-height: 1.18;
	margin: 0;
}

.promodose-favorites-page__intro p {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1rem, 1.5vw, 1.18rem);
	font-weight: 800;
	line-height: 1.9;
	margin: 0;
	max-width: 58ch;
}

.promodose-favorites-page__summary {
	align-items: center;
	background: var(--wp--preset--color--navy);
	border-radius: 12px;
	color: #fff;
	display: grid;
	justify-items: center;
	min-width: 150px;
	padding: 1.2rem 1.4rem;
}

.promodose-favorites-page__summary strong {
	color: var(--wp--preset--color--turquoise);
	font-size: clamp(2rem, 4vw, 3.1rem);
	line-height: 1;
}

.promodose-favorites-page__summary span {
	font-size: 0.95rem;
	font-weight: 900;
}

.promodose-favorites-page__content {
	margin-block-start: clamp(1.2rem, 3vw, 2rem);
}

.promodose-favorites-page__grid {
	display: grid;
	gap: 0.95rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.promodose-favorite-product-card {
	--promodose-favorite-size: 34px;
	--promodose-favorite-offset: 0.62rem;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgb(18 40 74 / 8%);
	overflow: hidden;
	position: relative;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.promodose-favorite-product-card:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 34%, transparent);
	box-shadow: 0 18px 44px rgb(18 40 74 / 12%);
	transform: translateY(-2px);
}

.promodose-favorite-product-card__media {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff);
	display: block;
	position: relative;
}

.promodose-favorite-product-card__image {
	aspect-ratio: 4 / 3;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-favorite-product-card__badge {
	background: var(--wp--preset--color--turquoise);
	border-radius: 8px;
	color: var(--wp--preset--color--navy);
	font-size: 0.7rem;
	font-weight: 900;
	inset-block-start: 0.62rem;
	inset-inline-end: 0.62rem;
	line-height: 1;
	padding: 0.45rem 0.55rem;
	position: absolute;
	z-index: 3;
}

.promodose-favorite-product-card__badge.is-rx {
	background: #ffb53d;
}

.promodose-favorite-product-card__body {
	display: grid;
	gap: 0.62rem;
	padding: 0.85rem;
}

.promodose-favorite-product-card__category {
	color: var(--wp--preset--color--turquoise);
	font-weight: 900;
}

.promodose-favorite-product-card__title {
	font-size: clamp(0.98rem, 1.15vw, 1.12rem);
	line-height: 1.45;
	margin: 0;
	min-height: 3em;
}

.promodose-favorite-product-card__title a {
	color: var(--wp--preset--color--navy);
	text-decoration: none;
}

.promodose-favorite-product-card__price {
	color: var(--wp--preset--color--turquoise);
	font-size: 1rem;
	font-weight: 900;
}

.promodose-favorite-product-card__actions {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: 1fr;
	margin-block-start: 0.25rem;
}

.promodose-favorite-product-card__cart,
.promodose-favorite-product-card__consult,
.promodose-favorite-product-card__details,
.promodose-favorites-page__shop-link {
	align-items: center;
	border-radius: 8px;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	min-height: 40px;
	padding: 0.62rem 0.75rem;
	text-decoration: none;
}

.promodose-favorite-product-card__cart,
.promodose-favorite-product-card__consult,
.promodose-favorites-page__shop-link {
	background: var(--wp--preset--color--turquoise);
	color: #fff;
}

.promodose-favorite-product-card__details {
	background: color-mix(in srgb, var(--wp--preset--color--navy) 5%, #fff);
	color: var(--wp--preset--color--navy);
}

.promodose-favorites-page__empty {
	align-items: center;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 14px;
	box-shadow: 0 14px 34px rgb(18 40 74 / 8%);
	display: grid;
	gap: 0.8rem;
	justify-items: center;
	padding: clamp(2rem, 5vw, 4rem);
	text-align: center;
}

.promodose-favorites-page__empty-icon {
	align-items: center;
	background: color-mix(in srgb, #ff235d 10%, #fff);
	border-radius: 999px;
	color: #ff235d;
	display: inline-flex;
	height: 72px;
	justify-content: center;
	width: 72px;
}

.promodose-favorites-page__empty-icon svg {
	fill: none;
	height: 34px;
	stroke: currentColor;
	stroke-width: 2;
	width: 34px;
}

.promodose-favorites-page__empty h2 {
	font-size: clamp(1.5rem, 3vw, 2.4rem);
	margin: 0;
}

.promodose-favorites-page__empty p {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	line-height: 1.8;
	margin: 0;
	max-width: 44ch;
}

@media (max-width: 960px) {
	.promodose-account-body .entry-content > .woocommerce,
	.promodose-account-body .wp-block-post-content > .woocommerce,
	.promodose-account-body main .woocommerce {
		grid-template-columns: 1fr;
		max-width: min(100% - 1.25rem, 1320px) !important;
		padding-block: 1.25rem 2.25rem;
		width: min(100% - 1.25rem, 1320px) !important;
	}

	.promodose-account-body .woocommerce-MyAccount-navigation ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.promodose-account-dashboard__hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.promodose-account-dashboard__stats,
	.promodose-account-dashboard__links,
	.promodose-account-reviews__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.promodose-account-profile-fields__grid {
		grid-template-columns: 1fr;
	}

	.promodose-favorites-page__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.promodose-single-product-hero {
		grid-template-areas:
			"media"
			"summary";
		grid-template-columns: 1fr;
	}

	.promodose-single-product-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.promodose-single-product-favorite {
	align-items: center;
	display: inline-flex;
	gap: 0.65rem;
	margin-block: 0.75rem;
}

.promodose-single-product-favorite__button {
	inset: auto;
	position: static;
}

.promodose-single-product-favorite span {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
}

.promodose-single-product-body .wp-site-blocks {
	background:
		radial-gradient(circle at 16% 8%, color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, transparent) 0, transparent 30%),
		linear-gradient(180deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff) 0%, #fff 48%);
}

.promodose-single-product-body .woocommerce-breadcrumb,
.promodose-single-product-body nav.woocommerce-breadcrumb,
body.single-product .woocommerce-breadcrumb,
body.single-product nav.woocommerce-breadcrumb,
body.single-product .wp-block-woocommerce-breadcrumbs,
body.single-product .wc-block-breadcrumbs,
body.single-product [data-block-name="woocommerce/breadcrumbs"] {
	display: none;
}

.promodose-single-product-page {
	box-sizing: border-box;
	color: var(--wp--preset--color--navy);
	max-width: 100%;
	overflow-x: clip;
	padding-block: clamp(1.5rem, 4vw, 3.5rem);
	width: 100%;
}

.promodose-single-product-page *,
.promodose-single-product-page *::before,
.promodose-single-product-page *::after {
	box-sizing: inherit;
}

.promodose-single-product-breadcrumbs,
.promodose-single-product-hero,
.promodose-single-product-tabs,
.promodose-single-product-related {
	margin-inline: auto;
	max-width: min(100% - 2rem, var(--wp--style--global--wide-size, 1180px));
}

.promodose-single-product-breadcrumbs {
	align-items: center;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.92rem;
	font-weight: 800;
	gap: 0.45rem;
	margin-block-end: 1rem;
}

.promodose-single-product-breadcrumbs a {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.promodose-single-product-hero {
	align-items: start;
	display: grid;
	gap: clamp(1.25rem, 3vw, 2rem);
	grid-template-areas: "summary media";
	grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
}

.promodose-single-product-gallery {
	grid-area: media;
}

.promodose-single-product-summary {
	grid-area: summary;
}

.promodose-single-product-gallery__main,
.promodose-single-product-summary,
.promodose-single-product-tabs,
.promodose-single-product-related {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 14px;
	box-shadow: 0 14px 34px rgb(18 40 74 / 7%);
}

.promodose-single-product-gallery__main {
	overflow: hidden;
}

.promodose-single-product-gallery__image {
	aspect-ratio: 1 / 1;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 6%, #fff);
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-single-product-gallery__video {
	aspect-ratio: 1 / 1;
	background: #0f172a;
	border: 0;
	display: block;
	width: 100%;
}

.promodose-single-product-gallery__thumbs {
	display: grid;
	gap: 0.55rem;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	margin-block-start: 0.75rem;
}

.promodose-single-product-gallery__thumb {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 12%);
	border-radius: 10px;
	cursor: pointer;
	overflow: hidden;
	padding: 0;
}

.promodose-single-product-gallery__thumb.is-video {
	align-items: center;
	aspect-ratio: 1.25 / 1;
	color: var(--wp--preset--color--navy);
	display: block;
	font-family: inherit;
	font-weight: 900;
	position: relative;
}

.promodose-single-product-gallery__thumb.is-video span {
	align-items: center;
	background: rgb(255 255 255 / 90%);
	border-radius: 999px;
	color: var(--wp--preset--color--primary);
	display: inline-flex;
	height: 30px;
	inset: 50% auto auto 50%;
	justify-content: center;
	position: absolute;
	transform: translate(-50%, -50%);
	width: 30px;
	z-index: 2;
}

.promodose-single-product-gallery__thumb.is-video small {
	background: rgb(18 40 74 / 62%);
	border-radius: 999px;
	color: #fff;
	font-size: 0.68rem;
	font-weight: 900;
	inset-block-end: 0.35rem;
	inset-inline-start: 0.35rem;
	line-height: 1;
	padding: 0.28rem 0.45rem;
	position: absolute;
	z-index: 2;
}

.promodose-single-product-gallery__thumb.is-active {
	border-color: var(--wp--preset--color--turquoise);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--turquoise) 16%, transparent);
}

.promodose-single-product-gallery__thumb img,
.promodose-single-product-gallery__thumb video {
	aspect-ratio: 1.25 / 1;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-single-product-summary {
	display: grid;
	gap: 0.95rem;
	padding: clamp(1.1rem, 2.5vw, 1.7rem);
	position: relative;
}

.promodose-single-product-summary__topline {
	align-items: center;
	display: flex;
	gap: 0.7rem;
	justify-content: space-between;
	min-height: 42px;
}

.promodose-single-product-summary__topline > span {
	color: var(--wp--preset--color--turquoise);
	font-size: 0.9rem;
	font-weight: 900;
	letter-spacing: 0;
	text-transform: uppercase;
}

.promodose-single-product-summary__favorite {
	inset: auto;
	position: static;
}

.promodose-single-product-summary h1 {
	font-size: clamp(1.65rem, 2.8vw, 2.45rem);
	line-height: 1.24;
	margin: 0;
}

.promodose-single-product-summary__excerpt {
	color: var(--wp--preset--color--muted);
	font-weight: 800;
	line-height: 1.8;
}

.promodose-single-product-summary__excerpt p {
	margin: 0;
}

.promodose-single-product-summary__rating {
	align-items: center;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-wrap: wrap;
	font-weight: 800;
	gap: 0.55rem;
}

.promodose-single-product-summary__rating .star-rating {
	color: #f5a524;
	float: none;
	margin: 0;
}

.promodose-single-product-summary__price {
	color: var(--wp--preset--color--turquoise);
	font-size: clamp(1.7rem, 3vw, 2.4rem);
	font-weight: 900;
	line-height: 1.1;
}

.promodose-single-product-summary__price del {
	color: var(--wp--preset--color--muted);
	font-size: 0.65em;
	margin-inline-start: 0.4rem;
	opacity: 0.8;
}

.promodose-single-product-summary__price ins {
	text-decoration: none;
}

.promodose-single-product-rx {
	background: color-mix(in srgb, #ffb53d 13%, #fff);
	border: 1px solid color-mix(in srgb, #ffb53d 45%, transparent);
	border-radius: 10px;
	color: var(--wp--preset--color--navy);
	display: grid;
	gap: 0.2rem;
	padding: 0.85rem 1rem;
}

.promodose-single-product-rx strong {
	color: #af6800;
}

.promodose-single-product-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.promodose-single-product-pills span,
.promodose-single-product-pills a {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 9%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 20%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	font-size: 0.84rem;
	font-weight: 900;
	padding: 0.48rem 0.7rem;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.promodose-single-product-pills a:hover,
.promodose-single-product-pills a:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 16%, #fff);
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 42%, transparent);
	color: var(--wp--preset--color--primary);
	outline: none;
	transform: translateY(-1px);
}

.promodose-single-product-benefits {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.55rem;
	overflow-x: auto;
	padding-block: 0.1rem;
	scrollbar-width: thin;
}

.promodose-single-product-benefits span {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 9%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 22%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 0.82rem;
	font-weight: 900;
	gap: 0.36rem;
	line-height: 1.15;
	padding: 0.42rem 0.62rem;
	white-space: nowrap;
}

.promodose-single-product-benefits svg {
	color: var(--wp--preset--color--turquoise);
	fill: currentcolor;
	flex: 0 0 auto;
	height: 1.05em;
	width: 1.05em;
}

.promodose-single-product-cart form.cart,
.promodose-single-product-cart .cart {
	align-items: stretch;
	display: grid;
	gap: 0.6rem;
	grid-template-columns: minmax(76px, 86px) 1fr;
	margin: 0;
}

.promodose-single-product-cart .quantity {
	margin: 0;
}

.promodose-single-product-cart .qty {
	border: 1px solid rgb(18 40 74 / 16%);
	border-radius: 8px;
	color: var(--wp--preset--color--navy);
	font-weight: 900;
	min-height: 42px;
	text-align: center;
	width: 100%;
}

.promodose-single-product-cart .single_add_to_cart_button,
.promodose-single-product-consult {
	align-items: center;
	border: 0;
	border-radius: 10px;
	display: inline-flex;
	font-size: 0.95rem;
	font-weight: 900;
	justify-content: center;
	min-height: 43px;
	padding: 0.68rem 0.9rem;
	text-decoration: none;
}

.promodose-single-product-cart .single_add_to_cart_button {
	background: var(--wp--preset--color--turquoise);
	color: #fff;
}

.promodose-single-product-consult {
	background: #25d366;
	color: #fff;
}

.promodose-single-product-tabs {
	margin-block-start: clamp(1.25rem, 3vw, 2rem);
	overflow: hidden;
}

.promodose-single-product-tabs__nav {
	border-bottom: 1px solid rgb(18 40 74 / 10%);
	display: flex;
	gap: 0.3rem;
	overflow-x: auto;
	padding: 0.8rem 1rem 0;
}

.promodose-single-product-tabs__nav button {
	background: transparent;
	border: 0;
	border-bottom: 3px solid transparent;
	color: var(--wp--preset--color--muted);
	cursor: pointer;
	font-family: inherit;
	font-weight: 900;
	padding: 0.85rem 0.95rem;
	white-space: nowrap;
}

.promodose-single-product-tabs__nav button[aria-selected="true"] {
	border-color: var(--wp--preset--color--turquoise);
	color: var(--wp--preset--color--primary);
}

.promodose-single-product-tabs__panel {
	color: var(--wp--preset--color--navy);
	font-size: 1.02rem;
	font-weight: 700;
	line-height: 2;
	padding: clamp(1rem, 2.5vw, 1.6rem);
}

.promodose-single-product-tabs__panel[hidden] {
	display: none;
}

.promodose-single-product-tabs__panel p:first-child {
	margin-block-start: 0;
}

.promodose-single-product-tabs__panel p:last-child {
	margin-block-end: 0;
}

.promodose-single-product-tabs__empty {
	color: var(--wp--preset--color--muted);
}

.promodose-single-product-ingredients {
	display: grid;
	gap: 0.7rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-single-product-ingredients span,
.promodose-single-product-ingredients a {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 18%, transparent);
	border-radius: 10px;
	color: var(--wp--preset--color--primary);
	display: block;
	font-weight: 900;
	padding: 0.85rem 1rem;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.promodose-single-product-ingredients a:hover,
.promodose-single-product-ingredients a:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 14%, #fff);
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 38%, transparent);
	color: var(--wp--preset--color--navy);
	outline: none;
	transform: translateY(-1px);
}

.promodose-single-product-related {
	margin-block-start: clamp(1.25rem, 3vw, 2rem);
	padding: clamp(1rem, 2.5vw, 1.4rem);
}

.promodose-single-product-related__header {
	display: grid;
	gap: 0.45rem;
	margin-block-end: 1rem;
}

.promodose-single-product-related__header span {
	color: var(--wp--preset--color--turquoise);
	font-weight: 900;
}

.promodose-single-product-related__header h2 {
	font-size: clamp(1.5rem, 3vw, 2.4rem);
	line-height: 1.25;
	margin: 0;
}

.promodose-single-product-related__grid {
	display: grid;
	gap: 0.95rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.promodose-single-product-related .promodose-favorite-button {
	inset-inline-end: var(--promodose-favorite-offset, 0.65rem);
	inset-inline-start: auto;
}

@media (max-width: 960px) {
	.promodose-single-product-hero {
		grid-template-areas:
			"media"
			"summary";
		grid-template-columns: minmax(0, 1fr);
	}

	.promodose-single-product-gallery,
	.promodose-single-product-summary {
		max-width: 100%;
		min-width: 0;
		width: 100%;
	}

	.promodose-single-product-summary > *,
	.promodose-single-product-gallery > * {
		min-width: 0;
	}

	.promodose-single-product-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.promodose-floating-whatsapp {
	align-items: center;
	direction: ltr;
	display: inline-flex;
	gap: 0.7rem;
	inset-block-end: calc(1rem + env(safe-area-inset-bottom));
	inset-inline-end: calc(1rem + env(safe-area-inset-right));
	inset-inline-start: auto;
	position: fixed;
	z-index: 80;
}

.promodose-scroll-top {
	align-items: center;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 999px;
	box-shadow: 0 14px 34px rgb(18 40 74 / 14%);
	color: var(--wp--preset--color--navy);
	cursor: pointer;
	display: inline-flex;
	height: 48px;
	inset-block-end: calc(1rem + env(safe-area-inset-bottom));
	inset-inline-end: calc(1rem + env(safe-area-inset-right));
	justify-content: center;
	opacity: 0;
	padding: 0;
	pointer-events: none;
	position: fixed;
	transform: translateY(10px) scale(0.96);
	transition: opacity 180ms ease, transform 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
	width: 48px;
	z-index: 79;
}

.promodose-scroll-top.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
}

.promodose-scroll-top svg {
	fill: currentColor;
	height: 24px;
	width: 24px;
}

.promodose-scroll-top:hover,
.promodose-scroll-top:focus-visible {
	background: var(--wp--preset--color--turquoise);
	box-shadow: 0 18px 38px rgb(18 40 74 / 20%);
	color: #fff;
	outline: none;
	transform: translateY(-2px) scale(1);
}

.promodose-floating-whatsapp.is-dismissed .promodose-floating-whatsapp__bubble,
.promodose-floating-whatsapp.is-dismissed .promodose-floating-whatsapp__dismiss {
	display: none;
}

.has-promodose-whatsapp-modal {
	overflow: hidden;
}

.promodose-whatsapp-modal[hidden] {
	display: none;
}

.promodose-whatsapp-modal {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 1rem;
	position: fixed;
	z-index: 120;
}

.promodose-whatsapp-modal__overlay {
	background: rgb(18 40 74 / 42%);
	backdrop-filter: blur(8px);
	inset: 0;
	position: absolute;
}

.promodose-whatsapp-modal__dialog {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 8px;
	box-shadow: 0 28px 70px rgb(18 40 74 / 24%);
	color: var(--wp--preset--color--navy);
	inline-size: min(100%, 620px);
	padding: 1.35rem;
	position: relative;
	text-align: start;
}

.promodose-whatsapp-modal__close {
	align-items: center;
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 999px;
	color: var(--wp--preset--color--muted);
	cursor: pointer;
	display: inline-flex;
	font-size: 1.35rem;
	font-weight: 800;
	height: 34px;
	justify-content: center;
	line-height: 1;
	padding: 0;
	position: absolute;
	inset-block-start: 0.85rem;
	inset-inline-end: 0.85rem;
	width: 34px;
}

.promodose-whatsapp-modal__close:hover,
.promodose-whatsapp-modal__close:focus-visible {
	color: var(--wp--preset--color--navy);
	outline: 2px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 45%, transparent);
	outline-offset: 2px;
}

.promodose-whatsapp-modal__eyebrow {
	color: var(--wp--preset--color--turquoise);
	font-size: 0.88rem;
	font-weight: 950;
	margin-block-end: 0.45rem;
}

.promodose-whatsapp-modal h2 {
	font-size: clamp(1.35rem, 4vw, 2rem);
	line-height: 1.25;
	margin: 0 0 0.6rem;
	padding-inline-end: 2.5rem;
}

.promodose-whatsapp-modal p {
	color: var(--wp--preset--color--muted);
	font-weight: 750;
	line-height: 1.7;
	margin: 0 0 1rem;
}

.promodose-whatsapp-modal__options {
	display: grid;
	gap: 0.7rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-whatsapp-modal__option {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 5%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--navy) 12%, transparent);
	border-radius: 8px;
	color: var(--wp--preset--color--navy);
	cursor: pointer;
	display: flex;
	font: inherit;
	font-weight: 900;
	gap: 0.65rem;
	justify-content: flex-start;
	min-height: 58px;
	padding: 0.85rem 0.95rem;
	text-align: start;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.promodose-whatsapp-modal__option:hover,
.promodose-whatsapp-modal__option:focus-visible {
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 55%, transparent);
	box-shadow: 0 12px 28px rgb(18 40 74 / 10%);
	outline: none;
	transform: translateY(-1px);
}

.promodose-whatsapp-modal__option-icon {
	font-size: 1.35rem;
	line-height: 1;
}

.promodose-floating-whatsapp__dismiss {
	align-items: center;
	background: transparent;
	border: 0;
	color: #c8cbd3;
	cursor: pointer;
	display: inline-flex;
	font-size: 1.35rem;
	font-weight: 700;
	height: 24px;
	justify-content: center;
	inset-block-start: -1.55rem;
	inset-inline-start: 0;
	line-height: 1;
	padding: 0;
	position: absolute;
	width: 24px;
}

.promodose-floating-whatsapp__dismiss:hover,
.promodose-floating-whatsapp__dismiss:focus-visible {
	color: var(--wp--preset--color--navy);
	outline: none;
}

.promodose-floating-whatsapp__bubble {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 8px;
	box-shadow: 0 10px 30px rgb(18 40 74 / 12%);
	color: #323846;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.35;
	margin: 0;
	min-width: 190px;
	padding: 0.78rem 0.95rem;
	position: relative;
	text-align: center;
	z-index: 1;
}

.promodose-floating-whatsapp__bubble::after {
	background: #fff;
	border-block-start: 1px solid rgb(18 40 74 / 10%);
	border-inline-end: 1px solid rgb(18 40 74 / 10%);
	block-size: 15px;
	content: "";
	inline-size: 15px;
	inset-block-start: 50%;
	inset-inline-end: -7px;
	inset-inline-start: auto;
	left: auto;
	position: absolute;
	right: auto;
	transform: translateY(-50%) rotate(45deg);
	z-index: -1;
}

.promodose-floating-whatsapp__button {
	align-items: center;
	background: #15c876;
	border: 5px solid rgb(21 200 118 / 18%);
	border-radius: 999px;
	box-shadow: 0 16px 36px rgb(18 40 74 / 18%);
	color: #fff;
	display: inline-flex;
	height: 56px;
	justify-content: center;
	position: relative;
	text-decoration: none;
	transition: background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
	width: 56px;
}

.promodose-floating-whatsapp__button svg {
	fill: currentColor;
	height: 30px;
	width: 30px;
}

.promodose-floating-whatsapp__button:hover,
.promodose-floating-whatsapp__button:focus-visible {
	background: #10b869;
	box-shadow: 0 20px 42px rgb(18 40 74 / 24%);
	color: #fff;
	outline: none;
	transform: translateY(-2px);
}

.promodose-floating-whatsapp__badge {
	align-items: center;
	background: #ff235d;
	border: 2px solid #fff;
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 900;
	height: 22px;
	justify-content: center;
	inset-block-start: -5px;
	inset-inline-end: -5px;
	line-height: 1;
	position: absolute;
	width: 22px;
}

@media (max-width: 560px) {
	.promodose-account-body .entry-content > .woocommerce,
	.promodose-account-body .wp-block-post-content > .woocommerce,
	.promodose-account-body main .woocommerce {
		max-width: min(100% - 0.9rem, 1320px) !important;
		width: min(100% - 0.9rem, 1320px) !important;
	}

	.promodose-account-body main.wp-block-group {
		padding-inline: 0.45rem !important;
	}

	.promodose-account-body .wp-block-post-title {
		max-width: min(100% - 0.9rem, 1440px);
	}

	.promodose-account-body .woocommerce-MyAccount-navigation,
	.promodose-account-body .woocommerce-MyAccount-content {
		border-radius: 12px;
		padding: 0.72rem;
	}

	.promodose-account-body .woocommerce-MyAccount-navigation ul {
		gap: 0.38rem;
	}

	.promodose-account-body .woocommerce-MyAccount-navigation-link a {
		font-size: 0.8rem;
		min-height: 40px;
		padding: 0.58rem 0.62rem;
	}

	.promodose-account-dashboard__stats,
	.promodose-account-dashboard__links,
	.promodose-account-reviews__grid {
		grid-template-columns: 1fr;
	}

	.promodose-account-dashboard__hero {
		padding: 1rem;
	}

	.promodose-account-dashboard__hero h2,
	.promodose-account-section-heading h2 {
		font-size: 1.55rem;
	}

	.promodose-account-profile-fields__photo {
		align-items: start;
		grid-template-columns: 82px minmax(0, 1fr);
		padding: 0.75rem;
	}

	.promodose-account-profile-fields__avatar {
		height: 82px;
		width: 82px;
	}

	.promodose-account-review-card {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.promodose-account-review-card__media img {
		aspect-ratio: 1 / 1;
		height: 100%;
	}

	.promodose-account-review-card__body {
		padding: 0.78rem;
	}

	.promodose-favorites-page {
		padding-block: 1.4rem 2.5rem;
	}

	.promodose-favorites-page__hero,
	.promodose-favorites-page__content {
		max-width: min(100% - 1rem, var(--wp--style--global--wide-size, 1180px));
	}

	.promodose-favorites-page__hero-inner {
		grid-template-columns: 1fr;
		padding: 1.05rem;
	}

	.promodose-favorites-page__summary {
		min-width: 0;
		width: 100%;
	}

	.promodose-favorites-page__grid {
		gap: 0.75rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.promodose-favorite-product-card {
		--promodose-favorite-size: 32px;
		--promodose-favorite-offset: 0.55rem;
		border-radius: 10px;
	}

	.promodose-favorite-product-card__body {
		gap: 0.55rem;
		padding: 0.72rem;
	}

	.promodose-favorite-product-card__badge {
		border-radius: 7px;
		font-size: 0.68rem;
		inset-block-start: 0.55rem;
		inset-inline-end: 0.55rem;
		padding: 0.42rem 0.5rem;
	}

	.promodose-favorite-product-card__category,
	.promodose-favorite-product-card__price {
		font-size: 0.9rem;
	}

	.promodose-favorite-product-card__title {
		font-size: 0.9rem;
		line-height: 1.55;
		min-height: 4.5em;
	}

	.promodose-favorite-product-card__actions {
		grid-template-columns: 1fr;
	}

	.promodose-favorite-product-card__cart,
	.promodose-favorite-product-card__consult,
	.promodose-favorite-product-card__details {
		font-size: 0.78rem;
		min-height: 38px;
		padding: 0.55rem 0.6rem;
	}

	.promodose-single-product-page {
		padding-block: 0.85rem 2rem;
	}

	.promodose-single-product-breadcrumbs,
	.promodose-single-product-hero,
	.promodose-single-product-tabs,
	.promodose-single-product-related {
		max-width: min(100% - 1.25rem, var(--wp--style--global--wide-size, 1180px));
	}

	.promodose-single-product-breadcrumbs {
		font-size: 0.82rem;
		gap: 0.32rem;
		line-height: 1.7;
		margin-block-end: 0.75rem;
	}

	.promodose-single-product-summary {
		border-radius: 12px;
		gap: 0.68rem;
		max-width: 100%;
		overflow: hidden;
		padding: 0.9rem;
	}

	.promodose-single-product-gallery__main {
		border-radius: 12px;
	}

	.promodose-single-product-gallery__image,
	.promodose-single-product-gallery__video {
		aspect-ratio: 4 / 3;
	}

	.promodose-single-product-gallery__thumbs {
		gap: 0.5rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.promodose-single-product-summary__topline {
		min-height: 0;
	}

	.promodose-single-product-summary h1 {
		font-size: 1.45rem;
		line-height: 1.35;
	}

	.promodose-single-product-summary__excerpt {
		font-size: 0.92rem;
		line-height: 1.75;
	}

	.promodose-single-product-summary__rating {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.35rem;
	}

	.promodose-single-product-summary__price {
		font-size: 1.55rem;
	}

	.promodose-single-product-consult,
	.promodose-single-product-cart .single_add_to_cart_button,
	.promodose-single-product-cart .button {
		min-height: 44px;
		padding: 0.72rem 0.85rem;
	}

	.promodose-single-product-benefits {
		flex-wrap: wrap;
		margin-inline: -0.15rem;
		overflow-x: visible;
		padding-block-end: 0.2rem;
		scroll-padding-inline: 0.5rem;
	}

	.promodose-single-product-benefits span {
		flex: 1 1 calc(50% - 0.35rem);
		font-size: 0.68rem;
		justify-content: center;
		padding: 0.34rem 0.42rem;
		white-space: normal;
	}

	.promodose-single-product-cart form.cart,
	.promodose-single-product-cart .cart {
		grid-template-columns: 1fr;
		width: 100%;
	}

	.promodose-single-product-cart .quantity,
	.promodose-single-product-cart .qty,
	.promodose-single-product-cart .single_add_to_cart_button,
	.promodose-single-product-consult {
		width: 100%;
	}

	.promodose-single-product-tabs__nav {
		overflow-x: auto;
		padding-inline: 0.7rem;
		white-space: nowrap;
	}

	.promodose-single-product-tabs__nav button {
		flex: 0 0 auto;
		font-size: 0.88rem;
		padding: 0.75rem 0.65rem;
	}

	.promodose-single-product-ingredients,
	.promodose-single-product-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.promodose-single-product-related {
		padding: 0.85rem;
	}

	.promodose-single-product-related__header {
		margin-block-end: 0.75rem;
	}

	.promodose-single-product-related__header h2 {
		font-size: 1.35rem;
	}

	.promodose-single-product-related .promodose-catalog-card {
		--promodose-favorite-size: 32px;
		--promodose-favorite-offset: 0.5rem;
		border-radius: 10px;
		box-shadow: 0 10px 26px rgb(18 40 74 / 7%);
	}

	.promodose-single-product-related .promodose-catalog-card__media {
		min-height: 0;
	}

	.promodose-single-product-related .promodose-catalog-card__image {
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}

	.promodose-single-product-related .promodose-catalog-card__badge {
		border-radius: 6px;
		font-size: 0.62rem;
		inset-block-start: 0.45rem;
		inset-inline-start: 0.45rem;
		padding: 0.3rem 0.42rem;
	}

	.promodose-single-product-related .promodose-catalog-card__body {
		gap: 0.45rem;
		padding: 0.68rem;
	}

	.promodose-single-product-related .promodose-catalog-card__category,
	.promodose-single-product-related .promodose-catalog-card__price {
		font-size: 0.82rem;
	}

	.promodose-single-product-related .promodose-catalog-card__title {
		font-size: 0.84rem;
		line-height: 1.45;
		min-height: 3.65em;
	}

	.promodose-single-product-related .promodose-catalog-card__rx-note {
		font-size: 0.72rem;
		line-height: 1.45;
	}

	.promodose-single-product-related .promodose-catalog-card__add,
	.promodose-single-product-related .promodose-catalog-card__consult {
		border-radius: 7px;
		font-size: 0.72rem;
		min-height: 36px;
		padding: 0.5rem 0.42rem;
	}

	.promodose-whatsapp-modal {
		align-items: flex-end;
		padding: 0.75rem;
	}

	.promodose-whatsapp-modal__dialog {
		padding: 1.05rem;
	}

	.promodose-whatsapp-modal__options {
		grid-template-columns: 1fr;
	}

	.promodose-whatsapp-modal__option {
		min-height: 54px;
		padding: 0.75rem 0.8rem;
	}

	.promodose-scroll-top {
		height: 44px;
		width: 44px;
	}

	.promodose-scroll-top svg {
		height: 22px;
		width: 22px;
	}

	.promodose-floating-whatsapp__bubble {
		font-size: 0.82rem;
		min-width: 0;
		max-width: calc(100vw - 6.6rem);
		padding: 0.72rem 0.85rem;
	}

	.promodose-floating-whatsapp__button {
		border-width: 4px;
		height: 50px;
		width: 50px;
	}

	.promodose-floating-whatsapp__button svg {
		height: 27px;
		width: 27px;
	}

	.promodose-floating-whatsapp__badge {
		font-size: 0.74rem;
		height: 21px;
		width: 21px;
	}
}

.promodose-cart-standalone-shell {
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff) 0%, #fff 42%),
		#fff;
	box-sizing: border-box;
	padding-block: clamp(1rem, 2.5vw, 2rem) clamp(2rem, 4vw, 3rem);
	width: 100%;
}

.woocommerce-cart .woocommerce-notices-wrapper,
.promodose-cart-page {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: min(1760px, calc(100vw - clamp(1rem, 3vw, 2.5rem)));
	width: min(1760px, calc(100vw - clamp(1rem, 3vw, 2.5rem)));
}

.promodose-cart-page {
	background:
		radial-gradient(circle at 8% 10%, color-mix(in srgb, var(--wp--preset--color--turquoise) 13%, transparent) 0, transparent 30%),
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff) 0%, #fff 54%, color-mix(in srgb, var(--wp--preset--color--primary) 4%, #fff) 100%);
	color: var(--wp--preset--color--navy);
	display: grid;
	gap: clamp(0.85rem, 1.6vw, 1.2rem);
	min-height: 65vh;
	padding: clamp(0.85rem, 1.8vw, 1.35rem);
}

.promodose-cart-hero {
	align-items: center;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 16px;
	box-shadow: 0 18px 46px rgb(18 40 74 / 7%);
	display: flex;
	gap: 0.85rem;
	justify-content: space-between;
	padding: clamp(0.9rem, 1.8vw, 1.25rem);
}

.promodose-cart-eyebrow,
.promodose-cart-panel__head span {
	color: var(--wp--preset--color--turquoise);
	display: inline-block;
	font-size: 0.82rem;
	font-weight: 950;
	margin-block-end: 0.22rem;
}

.promodose-cart-hero h1,
.promodose-cart-panel__head h2,
.promodose-cart-page .cart_totals h2 {
	color: var(--wp--preset--color--navy);
	font-weight: 950;
	letter-spacing: 0;
	line-height: 1.18;
	margin: 0;
}

.promodose-cart-hero h1 {
	font-size: clamp(1.65rem, 2.8vw, 2.35rem);
}

.promodose-cart-hero p {
	color: var(--wp--preset--color--muted);
	font-size: clamp(0.9rem, 1.1vw, 1rem);
	font-weight: 800;
	line-height: 1.65;
	margin: 0.28rem 0 0;
}

.promodose-cart-hero__meta {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 28%, transparent);
	border-radius: 14px;
	display: grid;
	flex: 0 0 auto;
	justify-items: center;
	min-width: 112px;
	padding: 0.7rem 0.85rem;
}

.promodose-cart-hero__meta span {
	color: var(--wp--preset--color--turquoise);
	font-size: 1.6rem;
	font-weight: 950;
	line-height: 1;
}

.promodose-cart-hero__meta small {
	color: var(--wp--preset--color--navy);
	font-size: 0.82rem;
	font-weight: 850;
	margin-block-start: 0.25rem;
}

.promodose-cart-layout {
	align-items: start;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 330px);
}

.promodose-cart-panel,
.promodose-cart-page .cart_totals,
.promodose-cart-page .cross-sells {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 16px;
	box-shadow: 0 18px 46px rgb(18 40 74 / 7%);
}

.promodose-cart-panel {
	display: grid;
	gap: 0.8rem;
	padding: clamp(0.75rem, 1.4vw, 1rem);
}

.promodose-cart-panel__head {
	align-items: center;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
}

.promodose-cart-panel__head h2,
.promodose-cart-page .cart_totals h2 {
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
}

.promodose-cart-continue {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 9%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 24%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 900;
	min-height: 34px;
	padding: 0.48rem 0.72rem;
	text-decoration: none;
	white-space: nowrap;
}

.promodose-cart-continue:hover,
.promodose-cart-continue:focus-visible {
	background: var(--wp--preset--color--turquoise);
	color: #fff;
	outline: none;
}

.promodose-cart-items {
	display: grid;
	gap: 0.7rem;
}

.promodose-cart-item {
	align-items: stretch;
	background: color-mix(in srgb, var(--wp--preset--color--base-2) 42%, #fff);
	border: 1px solid rgb(18 40 74 / 8%);
	border-radius: 14px;
	display: grid;
	gap: 0.8rem;
	grid-template-columns: 96px minmax(0, 1fr);
	padding: 0.65rem;
}

.promodose-cart-item__image {
	align-self: start;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 7%);
	border-radius: 12px;
	overflow: hidden;
}

.promodose-cart-item__image a,
.promodose-cart-item__image img {
	display: block;
}

.promodose-cart-item__image img {
	aspect-ratio: 1 / 1;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.promodose-cart-item__body {
	display: grid;
	gap: 0.65rem;
	min-width: 0;
}

.promodose-cart-item__title-row {
	align-items: start;
	display: flex;
	gap: 0.8rem;
	justify-content: space-between;
}

.promodose-cart-item__category,
.promodose-cart-item__category a {
	color: var(--wp--preset--color--turquoise);
	font-size: 0.76rem;
	font-weight: 900;
	text-decoration: none;
}

.promodose-cart-item h3 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(0.92rem, 1.2vw, 1.05rem);
	font-weight: 950;
	line-height: 1.35;
	margin: 0.16rem 0 0;
}

.promodose-cart-item h3 a {
	color: inherit;
	text-decoration: none;
}

.promodose-cart-item__remove {
	align-items: center;
	background: rgb(255 93 143 / 10%) !important;
	border: 1px solid rgb(255 93 143 / 28%);
	border-radius: 999px;
	color: #c42554 !important;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 0.76rem;
	font-weight: 900;
	height: auto !important;
	line-height: 1 !important;
	min-height: 30px;
	padding: 0.34rem 0.65rem;
	text-decoration: none;
	width: auto !important;
}

.promodose-cart-item__remove:hover,
.promodose-cart-item__remove:focus-visible {
	background: #ff5d8f !important;
	color: #fff !important;
	outline: none;
}

.promodose-cart-item dl.variation {
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.78rem;
	font-weight: 800;
	gap: 0.35rem 0.75rem;
	margin: 0;
}

.promodose-cart-item dl.variation :is(dt, dd, p) {
	margin: 0;
}

.promodose-cart-item__controls {
	align-items: center;
	display: grid;
	gap: 0.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.promodose-cart-item__price,
.promodose-cart-item__quantity,
.promodose-cart-item__subtotal {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 8%);
	border-radius: 10px;
	display: grid;
	gap: 0.25rem;
	min-height: 60px;
	padding: 0.52rem 0.62rem;
}

.promodose-cart-item__controls span {
	color: var(--wp--preset--color--muted);
	font-size: 0.72rem;
	font-weight: 850;
}

.promodose-cart-item__controls strong,
.promodose-cart-page .cart_totals .order-total td {
	color: var(--wp--preset--color--turquoise);
	font-size: 0.95rem;
	font-weight: 950;
}

.promodose-cart-item__quantity .quantity {
	margin: 0;
}

.promodose-cart-page .quantity .qty {
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 14%);
	border-radius: 8px;
	color: var(--wp--preset--color--navy);
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 900;
	height: 34px;
	max-width: 76px;
	padding: 0.3rem 0.55rem;
	text-align: center;
}

.promodose-cart-actions {
	align-items: end;
	border-top: 1px solid rgb(18 40 74 / 8%);
	display: grid;
	gap: 0.7rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding-block-start: 0.8rem;
}

.promodose-cart-coupon {
	display: grid;
	gap: 0.45rem;
}

.promodose-cart-coupon label {
	color: var(--wp--preset--color--navy);
	font-size: 0.82rem;
	font-weight: 950;
}

.promodose-cart-coupon__row {
	display: flex;
	gap: 0.55rem;
}

.promodose-cart-coupon input.input-text {
	background: var(--wp--preset--color--base-2);
	border: 1px solid rgb(18 40 74 / 12%);
	border-radius: 10px;
	color: var(--wp--preset--color--navy);
	font-family: inherit;
	font-weight: 850;
	min-height: 40px;
	padding: 0.6rem 0.75rem;
	width: min(100%, 260px);
}

.promodose-cart-page .button,
.promodose-cart-page button.button,
.promodose-cart-page input.button,
.promodose-cart-page .wc-forward,
.promodose-cart-page .checkout-button {
	background: var(--wp--preset--color--turquoise);
	border: 0;
	border-radius: 10px;
	color: #fff;
	cursor: pointer;
	font-family: inherit;
	font-size: 0.86rem;
	font-weight: 900;
	min-height: 40px;
	padding: 0.62rem 0.9rem;
	text-align: center;
	text-decoration: none;
	transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.promodose-cart-page .button:hover,
.promodose-cart-page .button:focus-visible,
.promodose-cart-page .wc-forward:hover,
.promodose-cart-page .wc-forward:focus-visible,
.promodose-cart-page .checkout-button:hover,
.promodose-cart-page .checkout-button:focus-visible {
	background: var(--wp--preset--color--navy);
	color: #fff;
	outline: none;
	transform: translateY(-1px);
}

.promodose-cart-page .button:disabled,
.promodose-cart-page button.button:disabled,
.promodose-cart-page button.button:disabled[disabled] {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 45%, #d7dde8);
	color: #fff;
	cursor: not-allowed;
	opacity: 0.82;
	transform: none;
}

.promodose-cart-sidebar {
	position: sticky;
	top: 110px;
}

.promodose-cart-page .cart_totals {
	padding: clamp(0.85rem, 1.5vw, 1.05rem);
}

.promodose-cart-page .cart_totals h2 {
	margin-block-end: 0.75rem;
}

.promodose-cart-page .cart_totals table.shop_table {
	border: 0;
	border-collapse: collapse;
	margin: 0;
	width: 100%;
}

.promodose-cart-page .cart_totals table.shop_table :is(th, td) {
	border: 0;
	border-bottom: 1px solid rgb(18 40 74 / 8%);
	color: var(--wp--preset--color--navy);
	font-size: 0.86rem;
	font-weight: 850;
	padding: 0.65rem 0;
	text-align: start;
	vertical-align: top;
}

.promodose-cart-page .cart_totals table.shop_table td {
	color: var(--wp--preset--color--muted);
	text-align: end;
}

.promodose-cart-page .cart_totals .order-total :is(th, td) {
	border-bottom: 0;
	font-size: 1rem;
	padding-block-start: 0.8rem;
}

.promodose-cart-page .cart_totals .woocommerce-shipping-methods {
	list-style: none;
	margin: 0;
	padding: 0;
}

.promodose-cart-page .cart_totals .woocommerce-shipping-destination,
.promodose-cart-page .cart_totals .shipping-calculator-button,
.promodose-cart-page .cart_totals small {
	color: var(--wp--preset--color--muted);
	font-size: 0.78rem;
	font-weight: 800;
}

.promodose-cart-page .wc-proceed-to-checkout {
	display: grid;
	gap: 0.55rem;
	margin-block-start: 0.8rem;
	padding: 0;
}

.promodose-cart-page .wc-proceed-to-checkout .checkout-button {
	align-items: center;
	background: #25d366;
	border-radius: 10px;
	display: inline-flex;
	font-size: 0.92rem;
	justify-content: center;
	min-height: 46px;
	width: 100%;
}

.promodose-cart-page .wc-proceed-to-checkout .checkout-button:hover,
.promodose-cart-page .wc-proceed-to-checkout .checkout-button:focus-visible {
	background: #1ebe5d;
}

.promodose-cart-page .cross-sells {
	margin-block-start: 1rem;
	padding: 1rem;
}

.promodose-cart-page .cross-sells h2 {
	color: var(--wp--preset--color--navy);
	font-size: 1.2rem;
	font-weight: 950;
	margin: 0 0 0.85rem;
}

.woocommerce-cart .cart-empty,
.woocommerce-cart .return-to-shop {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: 760px;
	text-align: center;
	width: min(100% - 2rem, 760px);
}

.woocommerce-cart .cart-empty {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 16px;
	box-shadow: 0 18px 46px rgb(18 40 74 / 7%);
	color: var(--wp--preset--color--navy);
	font-size: 1.15rem;
	font-weight: 900;
	margin-block-start: 2rem;
	padding: clamp(1.5rem, 4vw, 2.5rem);
}

.woocommerce-cart .return-to-shop .button {
	background: var(--wp--preset--color--turquoise);
	border-radius: 10px;
	color: #fff;
	font-weight: 950;
	padding: 0.8rem 1.25rem;
	text-decoration: none;
}

.promodose-cart-empty {
	background:
		radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--wp--preset--color--turquoise) 13%, transparent) 0, transparent 32%),
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff) 0%, #fff 72%);
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 18px;
	box-shadow: 0 20px 56px rgb(18 40 74 / 8%);
	box-sizing: border-box;
	display: grid;
	justify-items: center;
	margin: clamp(1.5rem, 4vw, 3rem) auto;
	max-width: 780px;
	padding: clamp(1.5rem, 5vw, 3rem);
	text-align: center;
	width: min(100% - 2rem, 780px);
}

.promodose-cart-empty__icon {
	align-items: center;
	background: linear-gradient(135deg, var(--wp--preset--color--primary), var(--wp--preset--color--turquoise));
	border-radius: 16px;
	color: #fff;
	display: inline-flex;
	height: 70px;
	justify-content: center;
	margin-block-end: 1rem;
	width: 70px;
}

.promodose-cart-empty__icon svg {
	fill: currentColor;
	height: 40px;
	width: 40px;
}

.promodose-cart-empty > span {
	color: var(--wp--preset--color--turquoise);
	font-weight: 950;
}

.promodose-cart-empty h1 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(1.75rem, 4vw, 2.75rem);
	font-weight: 950;
	line-height: 1.18;
	margin: 0.35rem 0 0;
}

.promodose-cart-empty p {
	color: var(--wp--preset--color--muted);
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.8;
	margin: 0.7rem 0 0;
	max-width: 560px;
}

.promodose-cart-empty .cart-empty {
	display: none;
}

.promodose-cart-empty .return-to-shop {
	margin-block-start: 1.25rem;
}

/* Clean cart treatment. */
body.woocommerce-cart .promodose-cart-standalone-shell {
	background: #fff;
	padding-block: clamp(1rem, 2vw, 1.75rem) clamp(2rem, 4vw, 3rem);
}

body.woocommerce-cart .promodose-cart-page {
	background: transparent;
	gap: 1.15rem;
	max-width: min(1440px, calc(100vw - clamp(2rem, 5vw, 5.5rem)));
	padding: 0;
	width: min(1440px, calc(100vw - clamp(2rem, 5vw, 5.5rem)));
}

body.woocommerce-cart .promodose-cart-hero,
body.woocommerce-cart .promodose-cart-panel,
body.woocommerce-cart .promodose-cart-page .cart_totals {
	border: 1px solid rgb(18 40 74 / 8%);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgb(18 40 74 / 5%);
}

body.woocommerce-cart .promodose-cart-hero {
	min-height: 0;
	padding: 1rem 1.2rem;
}

body.woocommerce-cart .promodose-cart-hero h1 {
	font-size: clamp(1.55rem, 2.2vw, 2rem);
}

body.woocommerce-cart .promodose-cart-hero p {
	font-size: 0.88rem;
	line-height: 1.55;
}

body.woocommerce-cart .promodose-cart-eyebrow,
body.woocommerce-cart .promodose-cart-panel__head span {
	font-size: 0.78rem;
}

body.woocommerce-cart .promodose-cart-hero__meta {
	background: #fff;
	border-color: rgb(0 184 169 / 22%);
	border-radius: 10px;
	min-width: 96px;
	padding: 0.55rem 0.75rem;
}

body.woocommerce-cart .promodose-cart-hero__meta span {
	font-size: 1.25rem;
}

body.woocommerce-cart .promodose-cart-hero__meta small {
	font-size: 0.74rem;
}

body.woocommerce-cart .promodose-cart-layout {
	gap: 1.25rem;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 390px);
}

body.woocommerce-cart .promodose-cart-panel {
	padding: 0.9rem;
}

body.woocommerce-cart .promodose-cart-panel__head {
	border-bottom: 1px solid rgb(18 40 74 / 7%);
	padding-block-end: 0.75rem;
}

body.woocommerce-cart .promodose-cart-panel__head h2,
body.woocommerce-cart .promodose-cart-page .cart_totals h2 {
	font-size: clamp(1.08rem, 1.35vw, 1.28rem);
}

body.woocommerce-cart .promodose-cart-continue {
	background: #fff;
	border-color: rgb(18 40 74 / 12%);
	border-radius: 8px;
	font-size: 0.76rem;
	min-height: 34px;
	padding: 0.42rem 0.7rem;
}

body.woocommerce-cart .promodose-cart-item {
	background: #fff;
	border-radius: 10px;
	box-shadow: none;
	grid-template-columns: 84px minmax(0, 1fr);
	padding: 0.7rem;
}

body.woocommerce-cart .promodose-cart-item__image {
	border-radius: 8px;
}

body.woocommerce-cart .promodose-cart-item h3 {
	font-size: clamp(0.95rem, 1.1vw, 1.05rem);
	font-weight: 900;
}

body.woocommerce-cart .promodose-cart-item__remove {
	background: transparent !important;
	border-color: rgb(196 37 84 / 16%);
	border-radius: 8px;
	color: #b4234f !important;
	font-size: 0.76rem;
	min-height: 30px;
	padding: 0.35rem 0.6rem;
}

body.woocommerce-cart .promodose-cart-item__controls {
	background: color-mix(in srgb, var(--wp--preset--color--base-2) 58%, #fff);
	border: 1px solid rgb(18 40 74 / 7%);
	border-radius: 10px;
	grid-template-columns: minmax(0, 1fr) 120px minmax(0, 1fr);
	padding: 0.55rem;
}

body.woocommerce-cart .promodose-cart-item__price,
body.woocommerce-cart .promodose-cart-item__quantity,
body.woocommerce-cart .promodose-cart-item__subtotal {
	background: transparent;
	border: 0;
	border-radius: 0;
	min-height: 0;
	padding: 0;
}

body.woocommerce-cart .promodose-cart-item__controls span {
	font-size: 0.7rem;
}

body.woocommerce-cart .promodose-cart-item__controls strong,
body.woocommerce-cart .promodose-cart-page .cart_totals .order-total td {
	font-size: 0.9rem;
}

body.woocommerce-cart .promodose-cart-page .quantity .qty {
	background: #fff;
	height: 34px;
	max-width: 70px;
}

body.woocommerce-cart .promodose-cart-actions {
	background: #fff;
	border-top-color: rgb(18 40 74 / 7%);
	padding-block-start: 0.75rem;
}

body.woocommerce-cart .promodose-cart-coupon__row {
	align-items: center;
}

body.woocommerce-cart .promodose-cart-coupon input.input-text {
	background: #fff;
	border-radius: 8px;
	min-height: 38px;
}

body.woocommerce-cart .promodose-cart-page .button,
body.woocommerce-cart .promodose-cart-page button.button,
body.woocommerce-cart .promodose-cart-page input.button,
body.woocommerce-cart .promodose-cart-page .wc-forward,
body.woocommerce-cart .promodose-cart-page .checkout-button {
	border-radius: 8px !important;
	font-size: 0.82rem !important;
	line-height: 1.3 !important;
	min-height: 38px !important;
	padding: 0.55rem 0.85rem !important;
}

body.woocommerce-cart .promodose-cart-update .button:disabled,
body.woocommerce-cart .promodose-cart-update .button:disabled[disabled] {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 52%, #fff) !important;
}

body.woocommerce-cart .promodose-cart-page .cart_totals {
	padding: 1rem;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-page .cart_totals table.shop_table :is(th, td) {
	font-size: 0.8rem;
	padding-block: 0.58rem;
}

body.woocommerce-cart .promodose-cart-page .cart_totals .order-total :is(th, td) {
	font-size: 0.92rem;
}

body.woocommerce-cart .promodose-cart-page .wc-proceed-to-checkout .checkout-button {
	background: var(--wp--preset--color--turquoise) !important;
	font-size: 0.9rem !important;
	min-height: 42px !important;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-page .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart .promodose-cart-page .wc-proceed-to-checkout .checkout-button:focus-visible {
	background: var(--wp--preset--color--navy) !important;
}

@media (max-width: 980px) {
	.promodose-cart-layout,
	body.woocommerce-cart .promodose-cart-layout {
		grid-template-columns: 1fr;
	}

	.promodose-cart-sidebar {
		position: static;
	}
}

@media (max-width: 700px) {
	.promodose-cart-page,
	body.woocommerce-cart .promodose-cart-page {
		width: min(100% - 1rem, var(--wp--style--global--wide-size));
	}

	.promodose-cart-hero,
	.promodose-cart-panel__head,
	.promodose-cart-actions {
		align-items: stretch;
		flex-direction: column;
		grid-template-columns: 1fr;
	}

	.promodose-cart-hero {
		display: grid;
	}

	.promodose-cart-hero__meta {
		justify-items: start;
		min-width: 0;
	}

	.promodose-cart-panel__head {
		display: grid;
	}

	.promodose-cart-continue {
		justify-content: center;
	}

	.promodose-cart-item {
		grid-template-columns: 82px minmax(0, 1fr);
		padding: 0.65rem;
	}

	.promodose-cart-item__title-row {
		display: grid;
		gap: 0.65rem;
	}

	.promodose-cart-item__remove {
		justify-self: start;
		min-height: 30px;
		padding: 0.35rem 0.65rem;
	}

	.promodose-cart-item__controls {
		grid-template-columns: 1fr;
	}

	.promodose-cart-item__price,
	.promodose-cart-item__quantity,
	.promodose-cart-item__subtotal {
		align-items: center;
		display: flex;
		justify-content: space-between;
		min-height: 0;
	}

	.promodose-cart-coupon__row {
		display: grid;
	}

	.promodose-cart-coupon input.input-text,
	.promodose-cart-page .button,
	.promodose-cart-page button.button {
		width: 100%;
	}

	.promodose-cart-page .cart_totals table.shop_table :is(th, td) {
		display: block;
		padding-block: 0.45rem;
		text-align: start;
	}

	.promodose-cart-page .cart_totals table.shop_table tr {
		border-bottom: 1px solid rgb(18 40 74 / 8%);
		display: block;
		padding-block: 0.5rem;
	}

	.promodose-cart-page .cart_totals table.shop_table tr:last-child {
		border-bottom: 0;
	}
}

/* Final cart layout pass: stable columns, cleaner cards, lighter controls. */
body.woocommerce-cart {
	overflow-x: hidden;
}

body.woocommerce-cart .promodose-cart-standalone-shell {
	background: #fff;
	overflow-x: hidden;
	padding-block: clamp(1.1rem, 2vw, 1.8rem) clamp(2.25rem, 4vw, 3.25rem);
	padding-inline: 0;
}

body.woocommerce-cart .promodose-cart-standalone-shell > .woocommerce {
	box-sizing: border-box;
	display: block;
	margin: 0 !important;
	max-width: none !important;
	padding-inline: clamp(1rem, 3vw, 2.5rem);
	width: 100% !important;
}

body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .promodose-cart-page {
	box-sizing: border-box;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1760px;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-page {
	display: grid;
	gap: 1.25rem;
	margin-inline: auto;
	min-height: 0;
}

body.woocommerce-cart .promodose-cart-hero,
body.woocommerce-cart .promodose-cart-panel,
body.woocommerce-cart .promodose-cart-page .cart_totals {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 14px;
	box-shadow: 0 16px 36px rgb(18 40 74 / 5%);
}

body.woocommerce-cart .promodose-cart-hero {
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(1rem, 1.6vw, 1.35rem);
}

body.woocommerce-cart .promodose-cart-hero h1 {
	font-size: clamp(1.55rem, 2.2vw, 2.1rem);
}

body.woocommerce-cart .promodose-cart-hero p {
	font-size: 0.92rem;
	max-width: 58rem;
}

body.woocommerce-cart .promodose-cart-hero__meta {
	border-radius: 12px;
	min-width: 118px;
	padding: 0.7rem 0.9rem;
}

body.woocommerce-cart .promodose-cart-layout {
	align-items: start;
	display: grid;
	gap: 1.25rem;
	grid-template-areas: "products summary";
	grid-template-columns: minmax(0, 1fr) 320px;
}

body.woocommerce-cart .promodose-cart-main {
	grid-area: products;
	min-width: 0;
}

body.woocommerce-cart .promodose-cart-sidebar {
	align-self: start;
	grid-area: summary;
	min-width: 0;
	position: sticky;
	width: 320px;
	top: 112px;
}

body.woocommerce-cart .promodose-cart__summary,
body.woocommerce-cart .promodose-cart-page .cart_totals {
	align-self: start;
	box-sizing: border-box;
	height: max-content;
	max-width: 320px;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-panel {
	display: grid;
	gap: 0.9rem;
	padding: 1rem;
}

body.woocommerce-cart .promodose-cart-panel__head {
	align-items: center;
	border-bottom: 1px solid rgb(18 40 74 / 7%);
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding-block-end: 0.85rem;
}

body.woocommerce-cart .promodose-cart-panel__head h2,
body.woocommerce-cart .promodose-cart-page .cart_totals h2 {
	font-size: clamp(1.12rem, 1.3vw, 1.35rem);
}

.promodose-free-sample-notice {
	align-items: center;
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 28%, transparent);
	border-radius: 14px;
	box-shadow: 0 18px 42px rgb(18 40 74 / 6%);
	box-sizing: border-box;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: auto minmax(0, 1fr);
	margin-block: 0 1rem;
	padding: 0.9rem 1rem;
	text-align: start;
	width: 100%;
}

.promodose-free-sample-notice.is-earned {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff);
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 42%, transparent);
}

.promodose-free-sample-notice.is-near {
	background: color-mix(in srgb, #ffb23f 8%, #fff);
	border-color: color-mix(in srgb, #ffb23f 45%, transparent);
}

.promodose-free-sample-notice__icon {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 12%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 38%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--turquoise);
	display: inline-flex;
	height: 46px;
	justify-content: center;
	width: 46px;
}

.promodose-free-sample-notice.is-near .promodose-free-sample-notice__icon {
	background: color-mix(in srgb, #ffb23f 16%, #fff);
	border-color: color-mix(in srgb, #ffb23f 42%, transparent);
	color: #b16a00;
}

.promodose-free-sample-notice__icon svg {
	fill: none;
	height: 22px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 22px;
}

.promodose-free-sample-notice__body {
	display: grid;
	gap: 0.35rem;
}

.promodose-free-sample-notice__body strong {
	color: var(--wp--preset--color--navy);
	font-size: clamp(0.98rem, 1.2vw, 1.12rem);
	font-weight: 900;
}

.promodose-free-sample-notice__body p {
	color: var(--wp--preset--color--muted);
	font-size: 0.86rem;
	font-weight: 750;
	line-height: 1.7;
	margin: 0;
}

.promodose-free-sample-notice__progress {
	background: rgb(18 40 74 / 8%);
	border-radius: 999px;
	height: 7px;
	margin-block-start: 0.18rem;
	overflow: hidden;
}

.promodose-free-sample-notice__progress span {
	background: linear-gradient(90deg, var(--wp--preset--color--turquoise), #ffb23f);
	border-radius: inherit;
	display: block;
	height: 100%;
}

body.woocommerce-cart .promodose-cart-continue,
body.woocommerce-cart .promodose-cart-page .button,
body.woocommerce-cart .promodose-cart-page button.button,
body.woocommerce-cart .promodose-cart-page input.button,
body.woocommerce-cart .promodose-cart-page .wc-forward,
body.woocommerce-cart .promodose-cart-page .checkout-button {
	border-radius: 10px !important;
	font-size: 0.84rem !important;
	min-height: 40px !important;
	padding: 0.58rem 0.85rem !important;
}

body.woocommerce-cart .promodose-cart-continue:hover,
body.woocommerce-cart .promodose-cart-continue:focus-visible {
	background: var(--wp--preset--color--turquoise) !important;
	border-color: var(--wp--preset--color--turquoise) !important;
	color: #fff !important;
	outline: none;
}

body.woocommerce-cart .promodose-cart-items {
	gap: 0.75rem;
}

body.woocommerce-cart .promodose-cart-item {
	align-items: start;
	background: #fff;
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 12px;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: 92px minmax(0, 1fr);
	padding: 0.78rem;
}

body.woocommerce-cart .promodose-cart-item__image {
	border-radius: 10px;
}

body.woocommerce-cart .promodose-cart-item__image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

body.woocommerce-cart .promodose-cart-item__body {
	gap: 0.65rem;
}

body.woocommerce-cart .promodose-cart-item__title-row {
	align-items: start;
	display: grid;
	gap: 0.7rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

body.woocommerce-cart .promodose-cart-item__category,
body.woocommerce-cart .promodose-cart-item__category a {
	font-size: 0.74rem;
}

body.woocommerce-cart .promodose-cart-item h3 {
	font-size: clamp(0.98rem, 1.05vw, 1.12rem);
	line-height: 1.35;
	max-width: 52rem;
}

body.woocommerce-cart .promodose-cart-item__remove {
	align-items: center;
	background: #fff !important;
	border: 1px solid rgb(180 35 79 / 18%) !important;
	border-radius: 999px;
	color: #b4234f !important;
	display: inline-flex;
	height: 34px !important;
	justify-content: center;
	min-height: 34px;
	padding: 0 !important;
	width: 34px !important;
}

body.woocommerce-cart .promodose-cart-item__remove:hover,
body.woocommerce-cart .promodose-cart-item__remove:focus-visible {
	background: rgb(180 35 79 / 9%) !important;
	color: #971b43 !important;
}

body.woocommerce-cart .promodose-cart-item__remove svg {
	fill: none;
	height: 17px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
	width: 17px;
}

body.woocommerce-cart .promodose-cart-item__controls {
	background: transparent;
	border: 0;
	display: grid;
	gap: 0.55rem;
	grid-template-columns: repeat(3, minmax(120px, 1fr));
	min-width: 0;
	padding: 0;
}

body.woocommerce-cart .promodose-cart-item__price,
body.woocommerce-cart .promodose-cart-item__quantity,
body.woocommerce-cart .promodose-cart-item__subtotal {
	background: color-mix(in srgb, var(--wp--preset--color--base-2) 56%, #fff);
	border: 1px solid rgb(18 40 74 / 8%);
	border-radius: 10px;
	display: grid;
	gap: 0.2rem;
	justify-items: start;
	min-height: 54px;
	min-width: 0;
	padding: 0.55rem 0.65rem;
}

body.woocommerce-cart .promodose-cart-item__controls span {
	font-size: 0.68rem;
}

body.woocommerce-cart .promodose-cart-item__controls strong {
	font-size: 0.86rem;
}

body.woocommerce-cart .promodose-cart-page .quantity .qty {
	height: 32px;
	max-width: 68px;
}

body.woocommerce-cart .promodose-cart-actions {
	align-items: center;
	background: #fff;
	border-top: 1px solid rgb(18 40 74 / 7%);
	display: grid;
	gap: 0.85rem;
	grid-template-columns: 1fr;
	padding-block-start: 0.9rem;
}

body.woocommerce-cart .promodose-cart-coupon {
	align-items: center;
	display: grid;
	gap: 0.55rem;
	grid-template-columns: auto minmax(220px, 330px);
	justify-content: end;
}

body.woocommerce-cart .promodose-cart-coupon label {
	align-self: center;
	font-size: 0.82rem;
	margin-inline-end: 0.15rem;
	white-space: nowrap;
}

body.woocommerce-cart .promodose-cart-coupon__row {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

body.woocommerce-cart .promodose-cart-coupon input.input-text {
	height: 40px;
	min-height: 40px;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-update {
	block-size: 1px;
	clip-path: inset(50%);
	inline-size: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
}

body.woocommerce-cart .promodose-cart-update .button:disabled,
body.woocommerce-cart .promodose-cart-update .button:disabled[disabled] {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 42%, #fff) !important;
}

body.woocommerce-cart .promodose-cart-coupon .button {
	height: 40px !important;
	min-height: 40px !important;
}

body.woocommerce-cart .promodose-cart-page .cart_totals {
	box-sizing: border-box;
	overflow: hidden;
	padding: 0.85rem;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-page .cart_totals h2 {
	margin-block-end: 0.85rem;
}

body.woocommerce-cart .promodose-cart-page .cart_totals table.shop_table :is(th, td) {
	font-size: 0.82rem;
	padding-block: 0.62rem;
}

body.woocommerce-cart .promodose-cart-page .cart_totals table.shop_table td {
	text-align: end;
}

body.woocommerce-cart .promodose-cart-page .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .promodose-cart-page .cart_totals .shipping-calculator-button,
body.woocommerce-cart .promodose-cart-page .cart_totals small {
	font-size: 0.75rem;
	line-height: 1.6;
}

body.woocommerce-cart .promodose-cart-page .wc-proceed-to-checkout {
	box-sizing: border-box;
	margin: 0.85rem 0 0 !important;
	padding: 0 !important;
	width: 100%;
}

body.woocommerce-cart .promodose-cart-page .wc-proceed-to-checkout .checkout-button {
	align-items: center !important;
	background: var(--wp--preset--color--turquoise) !important;
	border-radius: 9px !important;
	box-sizing: border-box !important;
	display: inline-flex !important;
	font-size: 0.84rem !important;
	height: 42px !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	max-height: 42px !important;
	max-width: 100% !important;
	min-height: 42px !important;
	padding: 0 0.85rem !important;
	width: 100% !important;
}

@media (max-width: 1180px) {
	body.woocommerce-cart .promodose-cart-layout {
		grid-template-columns: minmax(0, 1fr) 300px;
	}

	body.woocommerce-cart .promodose-cart-sidebar,
	body.woocommerce-cart .promodose-cart__summary,
	body.woocommerce-cart .promodose-cart-page .cart_totals {
		max-width: 300px;
		width: 300px;
	}

	body.woocommerce-cart .promodose-cart-item__controls {
		grid-template-columns: repeat(3, minmax(95px, 1fr));
	}
}

@media (max-width: 980px) {
	body.woocommerce-cart .woocommerce-notices-wrapper,
	body.woocommerce-cart .promodose-cart-page {
		max-width: calc(100vw - 1.5rem);
		width: calc(100vw - 1.5rem);
	}

	body.woocommerce-cart .promodose-cart-layout {
		grid-template-areas:
			"products"
			"summary";
		grid-template-columns: 1fr;
	}

	body.woocommerce-cart .promodose-cart-sidebar {
		max-width: none;
		position: static;
		width: 100%;
	}

	body.woocommerce-cart .promodose-cart__summary,
	body.woocommerce-cart .promodose-cart-page .cart_totals {
		max-width: none;
		width: 100%;
	}
}

@media (max-width: 720px) {
	body.woocommerce-cart .promodose-cart-standalone-shell {
		padding: 0.75rem 0.5rem 2.25rem;
	}

	body.woocommerce-cart .promodose-cart-standalone-shell > .woocommerce {
		padding-inline: 0;
	}

	body.woocommerce-cart .woocommerce-notices-wrapper,
	body.woocommerce-cart .promodose-cart-page {
		max-width: none;
		width: 100%;
	}

	body.woocommerce-cart .promodose-cart-hero,
	body.woocommerce-cart .promodose-cart-panel {
		padding: 0.82rem;
	}

	body.woocommerce-cart .promodose-cart-hero {
		grid-template-columns: 1fr;
	}

	body.woocommerce-cart .promodose-cart-hero h1 {
		font-size: 1.45rem;
	}

	body.woocommerce-cart .promodose-cart-item {
		grid-template-columns: 72px minmax(0, 1fr);
		padding: 0.65rem;
	}

	body.woocommerce-cart .promodose-cart-item__title-row,
	body.woocommerce-cart .promodose-cart-item__controls,
	body.woocommerce-cart .promodose-cart-actions,
	body.woocommerce-cart .promodose-cart-coupon,
	body.woocommerce-cart .promodose-cart-coupon__row {
		grid-template-columns: 1fr;
	}

	body.woocommerce-cart .promodose-cart-item__remove,
	body.woocommerce-cart .promodose-cart-update {
		justify-self: start;
	}

	body.woocommerce-cart .promodose-cart-item__price,
	body.woocommerce-cart .promodose-cart-item__quantity,
	body.woocommerce-cart .promodose-cart-item__subtotal {
		align-items: center;
		display: flex;
		justify-content: space-between;
		min-height: 0;
	}

	body.woocommerce-cart .promodose-cart-coupon {
		align-items: center;
		gap: 0.45rem;
		grid-template-columns: auto minmax(0, 1fr);
		justify-content: stretch;
	}

	body.woocommerce-cart .promodose-cart-coupon label {
		font-size: 0.78rem;
		margin: 0;
	}

	body.woocommerce-cart .promodose-cart-coupon__row {
		align-items: center;
		gap: 0.38rem;
		grid-template-columns: minmax(0, 1fr) auto;
	}

	body.woocommerce-cart .promodose-cart-coupon input.input-text {
		font-size: 0.78rem;
		height: 34px;
		min-height: 34px;
		padding: 0.35rem 0.6rem;
	}

	body.woocommerce-cart .promodose-cart-coupon .button {
		font-size: 0.78rem;
		height: 34px !important;
		min-height: 34px !important;
		min-width: 64px;
		padding: 0.35rem 0.7rem !important;
		width: auto !important;
	}
}

@media (min-width: 981px) {
	body.woocommerce-cart .promodose-cart-item {
		align-items: center;
		gap: 0.75rem;
		grid-template-columns: 88px minmax(0, 1fr);
		padding: 0.62rem 0.7rem;
	}

	body.woocommerce-cart .promodose-cart-item__body {
		align-items: center;
		display: grid;
		gap: 0.85rem;
		grid-template-columns: minmax(0, 1fr) minmax(360px, 0.84fr);
		min-width: 0;
	}

	body.woocommerce-cart .promodose-cart-item__title-row {
		align-items: center;
		gap: 0.65rem;
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-cart .promodose-cart-item h3 {
		font-size: clamp(0.92rem, 1vw, 1.02rem);
		line-height: 1.3;
	}

	body.woocommerce-cart .promodose-cart-item__controls {
		align-items: center;
		gap: 0.42rem;
		grid-template-columns: repeat(3, minmax(0, 1fr)) 34px;
	}

	body.woocommerce-cart .promodose-cart-item__price,
	body.woocommerce-cart .promodose-cart-item__quantity,
	body.woocommerce-cart .promodose-cart-item__subtotal {
		align-items: center;
		display: flex;
		gap: 0.4rem;
		justify-content: space-between;
		min-height: 38px;
		padding: 0.35rem 0.48rem;
	}

	body.woocommerce-cart .promodose-cart-item__controls span {
		font-size: 0.64rem;
	}

	body.woocommerce-cart .promodose-cart-item__controls strong {
		font-size: 0.8rem;
	}

	body.woocommerce-cart .promodose-cart-page .quantity .qty {
		height: 30px;
		max-width: 58px;
		padding: 0.2rem 0.35rem;
	}

	body.woocommerce-cart .promodose-cart-item__remove {
		justify-self: end;
	}
}

@media (min-width: 981px) and (max-width: 1320px) {
	body.woocommerce-cart .promodose-cart-item__body {
		grid-template-columns: 1fr;
	}

	body.woocommerce-cart .promodose-cart-item__controls {
		max-width: 100%;
	}
}

/* Checkout page */
body.woocommerce-checkout {
	background:
		radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--wp--preset--color--turquoise) 12%, transparent) 0, transparent 26%),
		linear-gradient(135deg, #fff 0%, color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff) 100%);
}

body.woocommerce-checkout .promodose-checkout-standalone-shell {
	background: transparent;
	padding-block: clamp(1.1rem, 2vw, 1.8rem) clamp(2.5rem, 4vw, 3.5rem);
	padding-inline: 0;
}

body.woocommerce-checkout .promodose-checkout-standalone-shell > .woocommerce {
	box-sizing: border-box;
	display: block;
	margin: 0 !important;
	max-width: none !important;
	padding-inline: clamp(1rem, 3vw, 2.5rem);
	width: 100% !important;
}

body.woocommerce-checkout .woocommerce-notices-wrapper {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: 1920px;
	width: 100%;
}

.promodose-checkout-page {
	box-sizing: border-box;
	color: var(--wp--preset--color--navy);
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
}

.promodose-checkout-hero,
.promodose-checkout-panel,
.promodose-checkout-prelude :is(.woocommerce-form-coupon-toggle, .checkout_coupon, .woocommerce-info, .woocommerce-error, .woocommerce-message) {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 18px;
	box-shadow: 0 16px 45px rgb(18 40 74 / 7%);
	box-sizing: border-box;
}

.promodose-checkout-hero {
	align-items: center;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(1.1rem, 2vw, 1.65rem);
}

.promodose-checkout-eyebrow,
.promodose-checkout-panel__head span {
	color: var(--wp--preset--color--turquoise);
	display: block;
	font-size: 0.82rem;
	font-weight: 800;
	margin-block-end: 0.28rem;
}

.promodose-checkout-hero h1,
.promodose-checkout-panel__head h2,
.promodose-checkout-panel h3 {
	color: var(--wp--preset--color--navy);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.18;
	margin: 0;
}

.promodose-checkout-hero h1 {
	font-size: clamp(2rem, 4vw, 3.35rem);
}

.promodose-checkout-hero p {
	color: var(--wp--preset--color--muted);
	font-size: clamp(0.9rem, 1.45vw, 1.1rem);
	font-weight: 650;
	margin: 0.45rem 0 0;
}

.promodose-checkout-hero__meta {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 30%, transparent);
	border-radius: 14px;
	display: grid;
	min-width: 128px;
	padding: 0.8rem 1rem;
	place-items: center;
	text-align: center;
}

.promodose-checkout-hero__meta strong {
	color: var(--wp--preset--color--turquoise);
	font-size: 1.45rem;
	line-height: 1;
}

.promodose-checkout-hero__meta span {
	font-size: 0.76rem;
	font-weight: 800;
	margin-block-start: 0.2rem;
}

.promodose-checkout-prelude {
	display: grid;
	gap: 0.8rem;
}

.promodose-checkout-prelude :is(.woocommerce-form-coupon-toggle, .checkout_coupon, .woocommerce-info, .woocommerce-error, .woocommerce-message) {
	border-color: rgb(18 40 74 / 10%) !important;
	border-width: 1px !important;
	margin: 0;
	padding: 0.9rem 1rem;
}

.promodose-checkout-prelude :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
	background: #fff;
	color: var(--wp--preset--color--navy);
}

.promodose-checkout-prelude .woocommerce-info::before,
.promodose-checkout-prelude .woocommerce-message::before {
	display: none;
}

.promodose-checkout-prelude .showcoupon {
	color: var(--wp--preset--color--primary);
	font-weight: 850;
	text-decoration: none;
}

.promodose-checkout-prelude .checkout_coupon {
	align-items: end;
	gap: 0.75rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

.promodose-checkout-prelude .checkout_coupon[style*="display: block"] {
	display: grid !important;
}

.promodose-checkout-prelude .checkout_coupon p {
	margin: 0;
}

.promodose-checkout-layout {
	align-items: start;
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: minmax(0, 1.55fr) minmax(360px, 0.85fr);
}

.promodose-checkout-panel {
	padding: clamp(1rem, 2vw, 1.35rem);
}

.promodose-checkout-summary {
	position: sticky;
	top: 1rem;
}

.promodose-checkout-panel__head {
	border-bottom: 1px solid rgb(18 40 74 / 8%);
	margin-block-end: 1rem;
	padding-block-end: 0.75rem;
}

.promodose-checkout-panel__head h2,
.promodose-checkout-panel h3 {
	font-size: clamp(1.3rem, 2vw, 1.85rem);
}

.promodose-checkout-fields,
.promodose-checkout-fields .col-1,
.promodose-checkout-fields .col-2 {
	float: none !important;
	margin: 0;
	width: 100% !important;
}

.promodose-checkout-fields {
	display: grid;
	gap: 1rem;
}

.promodose-checkout-fields h3 {
	font-size: 1.05rem;
	margin-block: 0 0.85rem;
}

.promodose-checkout-fields :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper) {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.promodose-checkout-fields .form-row {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.promodose-checkout-fields .form-row-wide,
.promodose-checkout-fields #billing_address_1_field,
.promodose-checkout-fields #billing_address_2_field,
.promodose-checkout-fields #shipping_address_1_field,
.promodose-checkout-fields #shipping_address_2_field,
.promodose-checkout-fields .woocommerce-additional-fields__field-wrapper .form-row {
	grid-column: 1 / -1;
}

.promodose-checkout-page label,
.promodose-checkout-page .woocommerce-input-wrapper {
	color: var(--wp--preset--color--navy);
	font-size: 0.78rem;
	font-weight: 800;
}

.promodose-checkout-page :is(input.input-text, textarea, select, .select2-container--default .select2-selection--single) {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 13%);
	border-radius: 12px;
	box-shadow: none;
	box-sizing: border-box;
	color: var(--wp--preset--color--navy);
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 700;
	min-height: 44px;
	outline: none;
	padding: 0.6rem 0.75rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	width: 100%;
}

.promodose-checkout-page textarea {
	min-height: 96px;
	resize: vertical;
}

.promodose-checkout-page :is(input.input-text, textarea, select):focus,
.promodose-checkout-page .select2-container--open .select2-selection--single {
	border-color: color-mix(in srgb, var(--wp--preset--color--turquoise) 55%, transparent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--turquoise) 14%, transparent);
}

.promodose-checkout-page .select2-container .select2-selection--single .select2-selection__rendered {
	color: var(--wp--preset--color--navy);
	line-height: 1.7;
	padding-inline: 0;
}

.promodose-checkout-page .select2-container .select2-selection--single .select2-selection__arrow {
	inset-inline-end: auto;
	inset-inline-start: 0.65rem;
	top: 0.55rem;
}

.promodose-prescription-upload {
	align-items: start;
	background: color-mix(in srgb, #ffb23f 10%, #fff);
	border: 1px solid color-mix(in srgb, #ffb23f 42%, transparent);
	border-radius: 16px;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: auto minmax(0, 1fr);
	margin-block-start: 1rem;
	padding: 0.9rem;
}

.promodose-prescription-upload.is-invalid {
	background: color-mix(in srgb, #e11d48 5%, #fff);
	border-color: #e11d48;
	box-shadow: 0 0 0 3px rgb(225 29 72 / 10%);
}

.promodose-prescription-upload__icon {
	align-items: center;
	background: #ffb23f;
	border-radius: 12px;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 950;
	height: 42px;
	justify-content: center;
	width: 42px;
}

.promodose-prescription-upload h3 {
	font-size: 1.05rem;
	margin-block-end: 0.35rem;
}

.promodose-prescription-upload p {
	color: var(--wp--preset--color--muted);
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.8;
	margin: 0 0 0.75rem;
}

.promodose-prescription-upload__field {
	align-items: center;
	background: #fff;
	border: 1px dashed color-mix(in srgb, var(--wp--preset--color--turquoise) 55%, transparent);
	border-radius: 14px;
	cursor: pointer;
	display: grid;
	gap: 0.6rem;
	padding: 0.75rem;
}

.promodose-prescription-upload__field.is-invalid {
	border-color: #e11d48;
	box-shadow: 0 0 0 3px rgb(225 29 72 / 10%);
}

.promodose-prescription-upload__field span {
	color: var(--wp--preset--color--navy);
	font-size: 0.88rem;
	font-weight: 900;
}

.promodose-prescription-upload__field input[type="file"] {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 6%, #fff);
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 10px;
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	font-family: inherit;
	font-size: 0.82rem;
	font-weight: 750;
	padding: 0.55rem;
	width: 100%;
}

.promodose-prescription-upload__field.is-invalid input[type="file"] {
	background: #fff7f8;
	border-color: #e11d48;
}

.promodose-prescription-upload small {
	color: var(--wp--preset--color--muted);
	display: block;
	font-size: 0.75rem;
	font-weight: 750;
	margin-block-start: 0.55rem;
}

.promodose-checkout-summary table.shop_table {
	border: 0;
	border-collapse: separate;
	border-spacing: 0 0.55rem;
	margin: 0;
	width: 100%;
}

.promodose-checkout-summary table.shop_table thead {
	display: none;
}

.promodose-checkout-summary table.shop_table :is(th, td) {
	border: 0;
	color: var(--wp--preset--color--navy);
	font-size: 0.85rem;
	font-weight: 800;
	padding: 0;
}

.promodose-checkout-summary table.shop_table tbody tr,
.promodose-checkout-summary table.shop_table tfoot tr {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 4%, #fff);
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 12px;
	display: grid;
	gap: 0.45rem;
	grid-template-columns: minmax(0, 1fr) auto;
	margin-block-end: 0.55rem;
	padding: 0.72rem 0.8rem;
}

.promodose-checkout-summary table.shop_table tbody tr {
	background: #fff;
}

.promodose-checkout-summary table.shop_table .product-name {
	min-width: 0;
}

.promodose-checkout-summary table.shop_table .product-total,
.promodose-checkout-summary table.shop_table td {
	text-align: end;
}

.promodose-checkout-summary .product-quantity {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, #fff);
	border-radius: 999px;
	color: var(--wp--preset--color--turquoise);
	display: inline-flex;
	font-size: 0.74rem;
	margin-inline-start: 0.35rem;
	padding: 0.12rem 0.45rem;
}

.promodose-checkout-summary .order-total {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, #fff) !important;
}

.promodose-checkout-summary .order-total :is(th, td) {
	font-size: 1rem !important;
}

.promodose-checkout-summary #payment,
.promodose-checkout-summary .woocommerce-checkout-payment {
	background: #fff !important;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 16px;
	box-shadow: none;
	margin-block-start: 0.9rem;
	padding: 0.8rem;
}

.promodose-checkout-summary #payment ul.payment_methods,
.promodose-checkout-summary .wc_payment_methods {
	border: 0 !important;
	display: grid;
	gap: 0.6rem;
	margin: 0 !important;
	padding: 0 !important;
}

.promodose-checkout-summary #payment .wc_payment_method,
.promodose-checkout-summary .wc_payment_method {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 12px;
	list-style: none;
	padding: 0.75rem;
}

.promodose-checkout-summary #payment .wc_payment_method > label,
.promodose-checkout-summary .wc_payment_method > label {
	align-items: center;
	color: var(--wp--preset--color--navy);
	display: inline-flex;
	gap: 0.45rem;
	font-size: 0.92rem;
	font-weight: 900;
}

.promodose-checkout-summary #payment div.payment_box,
.promodose-checkout-summary .payment_box {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 7%, #fff) !important;
	border-radius: 10px !important;
	color: var(--wp--preset--color--muted) !important;
	font-size: 0.82rem !important;
	line-height: 1.8 !important;
	margin: 0.65rem 0 0 !important;
	padding: 0.75rem !important;
}

.promodose-checkout-summary #payment div.payment_box::before,
.promodose-checkout-summary .payment_box::before {
	display: none !important;
}

.promodose-checkout-summary #payment .place-order,
.promodose-checkout-summary .place-order {
	margin: 0.9rem 0 0 !important;
	padding: 0 !important;
}

.promodose-checkout-page .button,
.promodose-checkout-page button.button,
.promodose-checkout-page #place_order {
	align-items: center;
	background: var(--wp--preset--color--turquoise) !important;
	border: 0 !important;
	border-radius: 12px !important;
	color: #fff !important;
	display: inline-flex;
	font-family: inherit;
	font-size: 0.9rem !important;
	font-weight: 900 !important;
	justify-content: center;
	min-height: 44px;
	padding: 0.65rem 1.1rem !important;
	text-decoration: none !important;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.promodose-checkout-page .button:hover,
.promodose-checkout-page .button:focus-visible,
.promodose-checkout-page button.button:hover,
.promodose-checkout-page button.button:focus-visible,
.promodose-checkout-page #place_order:hover,
.promodose-checkout-page #place_order:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 86%, var(--wp--preset--color--navy)) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.promodose-checkout-page #place_order {
	width: 100%;
}

.promodose-checkout-page .optional {
	color: var(--wp--preset--color--muted);
	font-size: 0.72rem;
	font-weight: 750;
}

.promodose-checkout-page .woocommerce-terms-and-conditions-wrapper {
	color: var(--wp--preset--color--muted);
	font-size: 0.8rem;
	line-height: 1.8;
	margin-block-end: 0.75rem;
}

@media (max-width: 980px) {
	.promodose-checkout-summary {
		position: static;
	}

	.promodose-checkout-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	body.woocommerce-checkout .promodose-checkout-standalone-shell {
		padding: 0.75rem 0.5rem 2.25rem;
	}

	.promodose-checkout-page {
		gap: 0.8rem;
	}

	.promodose-checkout-hero,
	.promodose-checkout-panel {
		border-radius: 16px;
		padding: 0.9rem;
	}

	.promodose-checkout-hero {
		grid-template-columns: 1fr;
	}

	.promodose-checkout-hero h1 {
		font-size: 1.65rem;
	}

	.promodose-checkout-hero p {
		font-size: 0.86rem;
	}

	.promodose-checkout-hero__meta {
		justify-self: start;
		min-width: 108px;
		padding: 0.65rem 0.8rem;
	}

	.promodose-checkout-prelude .checkout_coupon {
		grid-template-columns: 1fr auto;
		padding: 0.75rem;
	}

	.promodose-checkout-prelude .checkout_coupon .form-row-first {
		min-width: 0;
	}

	.promodose-checkout-fields :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper) {
		grid-template-columns: 1fr;
	}

	.promodose-prescription-upload {
		grid-template-columns: 1fr;
		padding: 0.8rem;
	}

	.promodose-prescription-upload__icon {
		height: 36px;
		width: 36px;
	}

	.promodose-checkout-panel__head h2,
	.promodose-checkout-panel h3 {
		font-size: 1.18rem;
	}

	.promodose-checkout-summary table.shop_table tbody tr,
	.promodose-checkout-summary table.shop_table tfoot tr {
		grid-template-columns: 1fr;
	}

	.promodose-checkout-summary table.shop_table .product-total,
	.promodose-checkout-summary table.shop_table td {
		text-align: start;
	}

	.promodose-checkout-page :is(input.input-text, textarea, select, .select2-container--default .select2-selection--single) {
		font-size: 0.84rem;
		min-height: 40px;
	}

	.promodose-checkout-page .button,
	.promodose-checkout-page button.button,
	.promodose-checkout-page #place_order {
		font-size: 0.84rem !important;
		min-height: 40px;
		padding: 0.55rem 0.85rem !important;
	}
}

/* Order received page */
.promodose-order-received {
	box-sizing: border-box;
	color: var(--wp--preset--color--navy);
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
}

.promodose-order-received *,
.promodose-order-received *::before,
.promodose-order-received *::after {
	box-sizing: border-box;
}

.promodose-order-received__hero,
.promodose-order-received__overview,
.promodose-order-received__panel,
.promodose-order-received__actions {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 18px;
	box-shadow: 0 16px 45px rgb(18 40 74 / 7%);
}

.promodose-order-received__hero {
	align-items: center;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(1rem, 2.4vw, 1.8rem);
}

.promodose-order-received__hero--failed,
.promodose-order-received__hero--empty {
	grid-template-columns: 1fr;
}

.promodose-order-received__eyebrow,
.promodose-order-received__panel-head span,
.promodose-order-received__side-card > span {
	color: var(--wp--preset--color--turquoise);
	display: block;
	font-size: 0.82rem;
	font-weight: 850;
	margin-block-end: 0.35rem;
}

.promodose-order-received h1,
.promodose-order-received h2,
.promodose-order-received h3,
.promodose-order-received p {
	letter-spacing: 0;
	margin: 0;
}

.promodose-order-received h1 {
	font-size: clamp(2rem, 4vw, 3.35rem);
	font-weight: 900;
	line-height: 1.15;
}

.promodose-order-received__hero p,
.promodose-order-received__panel-head p,
.promodose-order-received__side-card p,
.promodose-order-received__address {
	color: var(--wp--preset--color--muted);
	font-size: clamp(0.9rem, 1.25vw, 1rem);
	font-weight: 650;
	line-height: 1.8;
}

.promodose-order-received__hero p {
	margin-block-start: 0.55rem;
	max-width: 760px;
}

.promodose-order-received__badge {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 10%, #fff);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--turquoise) 30%, transparent);
	border-radius: 14px;
	display: grid;
	justify-items: center;
	min-width: 150px;
	padding: 0.85rem 1rem;
	text-align: center;
}

.promodose-order-received__badge strong {
	color: var(--wp--preset--color--turquoise);
	font-size: 1rem;
	font-weight: 900;
}

.promodose-order-received__badge span,
.promodose-order-received__stat span,
.promodose-order-received__item-meta span {
	color: var(--wp--preset--color--muted);
	font-size: 0.76rem;
	font-weight: 800;
}

.promodose-order-received__overview {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	padding: clamp(0.75rem, 1.4vw, 1rem);
}

.promodose-order-received__stat {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 6%, #fff);
	border: 1px solid rgb(18 40 74 / 8%);
	border-radius: 14px;
	display: grid;
	gap: 0.3rem;
	min-width: 0;
	padding: 0.85rem 1rem;
}

.promodose-order-received__stat strong {
	color: var(--wp--preset--color--navy);
	font-size: 0.95rem;
	font-weight: 900;
	overflow-wrap: anywhere;
}

.promodose-order-received__layout {
	align-items: start;
	display: grid;
	gap: clamp(1rem, 2vw, 1.35rem);
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
}

.promodose-order-received__panel {
	padding: clamp(1rem, 2vw, 1.35rem);
}

.promodose-order-received__panel-head {
	border-bottom: 1px solid rgb(18 40 74 / 9%);
	margin-block-end: 1rem;
	padding-block-end: 0.85rem;
}

.promodose-order-received__panel-head h2,
.promodose-order-received__side-card h2 {
	font-size: clamp(1.35rem, 2.1vw, 1.9rem);
	font-weight: 900;
	line-height: 1.2;
}

.promodose-order-received__panel-head p {
	margin-block-start: 0.35rem;
}

.promodose-order-received__item-list,
.promodose-order-received__side {
	display: grid;
	gap: 0.75rem;
}

.promodose-order-received__item {
	align-items: center;
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 3%, #fff);
	border: 1px solid rgb(18 40 74 / 9%);
	border-radius: 14px;
	display: grid;
	gap: 0.8rem;
	grid-template-columns: 92px minmax(0, 1fr);
	padding: 0.75rem;
}

.promodose-order-received__item-image {
	aspect-ratio: 1;
	background: #f6fafb;
	border-radius: 12px;
	overflow: hidden;
}

.promodose-order-received__item-image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.promodose-order-received__item-content {
	display: grid;
	gap: 0.55rem;
	min-width: 0;
}

.promodose-order-received__item-content h3 {
	font-size: clamp(0.98rem, 1.35vw, 1.16rem);
	font-weight: 900;
	line-height: 1.45;
}

.promodose-order-received__item-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.75rem;
	justify-content: space-between;
}

.promodose-order-received__item-meta strong {
	color: var(--wp--preset--color--turquoise);
	font-size: 0.95rem;
	font-weight: 900;
}

.promodose-order-received__side {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.promodose-order-received__side-card {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 16px;
	padding: 1rem;
}

.promodose-order-received__address {
	margin-block-start: 0.4rem;
}

.promodose-order-received__side-card--rx {
	background: #fff8ea;
	border-color: rgb(255 178 55 / 35%);
}

.promodose-order-received__side-card--rx > span {
	color: #b36b00;
}

.promodose-order-received__side-card--total {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff);
}

.promodose-order-received__side-card--total strong {
	color: var(--wp--preset--color--turquoise);
	display: block;
	font-size: 1.35rem;
	font-weight: 900;
}

.promodose-order-received__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
	padding: 1rem;
}

.promodose-order-received__actions--inline {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 4%, #fff);
	box-shadow: none;
	margin-block-start: 0.9rem;
	width: 100%;
}

.promodose-order-received > .promodose-order-received__actions:not(.promodose-order-received__actions--inline) {
	display: none;
}

.promodose-order-received__verify-intro,
.woocommerce-checkout .promodose-order-received__verify-intro {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 18px;
	box-shadow: 0 16px 45px rgb(18 40 74 / 7%);
	color: var(--wp--preset--color--navy);
	margin-inline: auto;
	max-width: 1920px;
	padding: clamp(1rem, 2.4vw, 1.8rem);
	width: 100%;
}

.promodose-order-received__verify-intro h1 {
	font-size: clamp(2rem, 4vw, 3.35rem);
	font-weight: 900;
	line-height: 1.15;
	margin: 0;
}

.promodose-order-received__verify-intro p {
	color: var(--wp--preset--color--muted);
	font-size: clamp(0.9rem, 1.25vw, 1rem);
	font-weight: 650;
	line-height: 1.8;
	margin: 0.55rem 0 0;
}

.promodose-order-received__verify-form,
.woocommerce .promodose-order-received__verify-form {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 10%);
	border-radius: 18px;
	box-shadow: 0 16px 45px rgb(18 40 74 / 7%);
	color: var(--wp--preset--color--navy);
	display: block;
	margin: clamp(1rem, 2vw, 1.35rem) auto 0;
	max-width: 1920px;
	padding: clamp(1rem, 2vw, 1.35rem);
	width: 100%;
}

.promodose-order-received__verify-card {
	align-items: end;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.55fr) auto;
}

.promodose-order-received__verify-card h2 {
	font-size: clamp(1.35rem, 2.1vw, 1.9rem);
	font-weight: 900;
	line-height: 1.2;
	margin: 0;
}

.promodose-order-received__verify-card p {
	color: var(--wp--preset--color--muted);
	font-size: 0.9rem;
	font-weight: 650;
	line-height: 1.8;
	margin: 0.35rem 0 0;
}

.promodose-order-received__verify-card a {
	color: var(--wp--preset--color--purple);
	font-weight: 850;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.promodose-order-received__verify-field {
	display: grid;
	gap: 0.35rem;
	margin: 0 !important;
}

.promodose-order-received__verify-field label {
	color: var(--wp--preset--color--navy);
	font-size: 0.82rem;
	font-weight: 850;
}

.promodose-order-received__verify-field input.input-text {
	background: #fff;
	border: 1px solid rgb(18 40 74 / 14%);
	border-radius: 12px;
	color: var(--wp--preset--color--navy);
	font-size: 0.92rem;
	font-weight: 750;
	min-height: 44px;
	padding: 0.65rem 0.8rem;
	width: 100%;
}

.promodose-order-received__verify-submit {
	margin: 0 !important;
}

.promodose-order-received__verify-submit .button,
.woocommerce .promodose-order-received__verify-submit .button {
	align-items: center;
	background: var(--wp--preset--color--turquoise) !important;
	border: 0 !important;
	border-radius: 12px !important;
	color: #fff !important;
	display: inline-flex !important;
	font-size: 0.9rem !important;
	font-weight: 900 !important;
	justify-content: center;
	line-height: 1.3 !important;
	min-height: 44px;
	padding: 0.72rem 1.25rem !important;
	text-decoration: none !important;
	white-space: nowrap;
}

.promodose-order-received__verify-submit .button:hover,
.promodose-order-received__verify-submit .button:focus-visible,
.woocommerce .promodose-order-received__verify-submit .button:hover,
.woocommerce .promodose-order-received__verify-submit .button:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 84%, var(--wp--preset--color--navy)) !important;
	color: #fff !important;
}

.promodose-order-received__button,
.woocommerce .promodose-order-received__button {
	align-items: center;
	background: var(--wp--preset--color--turquoise) !important;
	border: 0 !important;
	border-radius: 12px !important;
	color: #fff !important;
	display: inline-flex !important;
	font-size: 0.9rem !important;
	font-weight: 900 !important;
	justify-content: center;
	line-height: 1.3 !important;
	min-height: 42px;
	padding: 0.72rem 1.25rem !important;
	text-decoration: none !important;
	transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.promodose-order-received__button:hover,
.promodose-order-received__button:focus-visible,
.woocommerce .promodose-order-received__button:hover,
.woocommerce .promodose-order-received__button:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 84%, var(--wp--preset--color--navy)) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.promodose-order-received__button--ghost,
.woocommerce .promodose-order-received__button--ghost {
	background: #fff !important;
	border: 1px solid rgb(18 40 74 / 18%) !important;
	color: var(--wp--preset--color--navy) !important;
}

.promodose-order-received__button--ghost:hover,
.promodose-order-received__button--ghost:focus-visible,
.woocommerce .promodose-order-received__button--ghost:hover,
.woocommerce .promodose-order-received__button--ghost:focus-visible {
	background: color-mix(in srgb, var(--wp--preset--color--turquoise) 8%, #fff) !important;
	color: var(--wp--preset--color--navy) !important;
}

.promodose-order-received .woocommerce-order-details,
.promodose-order-received .woocommerce-customer-details {
	display: none;
}

@media (max-width: 980px) {
	.promodose-order-received__overview {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.promodose-order-received__layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 720px) {
	.promodose-order-received {
		gap: 0.8rem;
	}

	.promodose-order-received__hero {
		border-radius: 16px;
		grid-template-columns: 1fr;
		padding: 0.95rem;
	}

	.promodose-order-received h1 {
		font-size: 1.65rem;
	}

	.promodose-order-received__hero p {
		font-size: 0.86rem;
	}

	.promodose-order-received__badge {
		justify-self: start;
		min-width: 118px;
		padding: 0.65rem 0.8rem;
	}

	.promodose-order-received__overview {
		grid-template-columns: 1fr;
		padding: 0.75rem;
	}

	.promodose-order-received__panel {
		border-radius: 16px;
		padding: 0.9rem;
	}

	.promodose-order-received__panel-head h2,
	.promodose-order-received__side-card h2 {
		font-size: 1.2rem;
	}

	.promodose-order-received__item {
		grid-template-columns: 76px minmax(0, 1fr);
		padding: 0.65rem;
	}

	.promodose-order-received__item-meta {
		align-items: start;
		flex-direction: column;
	}

	.promodose-order-received__actions {
		border-radius: 16px;
		justify-content: stretch;
		padding: 0.75rem;
	}

	.promodose-order-received__button,
	.woocommerce .promodose-order-received__button {
		width: 100%;
	}

	.promodose-order-received__verify-intro,
	.woocommerce-checkout .promodose-order-received__verify-intro,
	.promodose-order-received__verify-form,
	.woocommerce .promodose-order-received__verify-form {
		border-radius: 16px;
		padding: 0.9rem;
	}

	.promodose-order-received__verify-card {
		grid-template-columns: 1fr;
	}

	.promodose-order-received__verify-submit .button,
	.woocommerce .promodose-order-received__verify-submit .button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* About page Gutenberg composition */
.promodose-about-template {
	direction: rtl;
	color: #17234a;
}

.promodose-about-template.alignfull {
	padding-inline: clamp(28px, 6vw, 92px) !important;
}

.promodose-about-template.promodose-about-section {
	margin-block: 0;
}

.promodose-about-template :where(h1, h2, h3, p) {
	letter-spacing: 0;
}

.promodose-about-template .promodose-about-section {
	margin-block: clamp(24px, 3.25vw, 44px);
}

.promodose-about-template .promodose-about-card,
.promodose-about-template .promodose-about-soft-card,
.promodose-about-template .promodose-about-step,
.promodose-about-template .promodose-about-stat {
	border: 1px solid #dce2ea;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.07);
}

.promodose-about-template .promodose-about-soft-card {
	background: #eefbf9;
	border-color: #a8ece6;
}

.promodose-about-template .promodose-about-hero {
	align-items: center;
	gap: clamp(18px, 3vw, 36px);
}

.promodose-about-template .promodose-about-hero-copy {
	min-height: clamp(260px, 30vw, 390px);
	padding: clamp(24px, 3.25vw, 42px);
}

.promodose-about-template .promodose-about-media {
	overflow: hidden;
	height: clamp(260px, 30vw, 390px);
	margin: 0;
	border-radius: 22px;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.08);
}

.promodose-about-template .promodose-about-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.promodose-about-template .promodose-about-eyebrow {
	color: #07b9a8;
	font-weight: 900;
	margin-block-end: 10px;
}

.promodose-about-template .promodose-about-title {
	margin: 0;
	color: #17234a;
	font-size: clamp(26px, 2.55vw, 38px);
	line-height: 1.18;
}

.promodose-about-template .promodose-about-lead {
	color: #667085;
	font-size: clamp(16px, 1.18vw, 19px);
	line-height: 1.85;
}

.promodose-about-template .promodose-about-section-title {
	color: #17234a;
	font-size: clamp(22px, 1.9vw, 30px);
	line-height: 1.3;
}

.promodose-about-template .promodose-about-section-text {
	color: #667085;
	font-size: clamp(15.5px, 1vw, 18px);
	line-height: 1.85;
}

.promodose-about-template .promodose-about-stat {
	padding: clamp(18px, 2vw, 26px);
	text-align: center;
}

.promodose-about-template .promodose-about-stat strong {
	display: block;
	color: #08b9aa;
	font-size: clamp(22px, 2.4vw, 32px);
	line-height: 1;
}

.promodose-about-template .promodose-about-stat span {
	display: block;
	margin-block-start: 10px;
	color: #667085;
	font-weight: 800;
}

.promodose-about-template .promodose-about-value {
	padding: clamp(20px, 2.5vw, 30px);
}

.promodose-about-template .promodose-about-value h3,
.promodose-about-template .promodose-about-step h3 {
	margin-block-start: 0;
	color: #17234a;
	font-size: clamp(19px, 1.45vw, 24px);
}

.promodose-about-template .promodose-about-value p,
.promodose-about-template .promodose-about-step p {
	color: #667085;
	line-height: 1.8;
}

.promodose-about-template .promodose-about-step {
	position: relative;
	padding: clamp(20px, 2.5vw, 30px);
}

.promodose-about-template .promodose-about-step-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin-block-end: 18px;
	border-radius: 999px;
	background: #08b9aa;
	color: #fff;
	font-weight: 900;
}

.promodose-about-template .promodose-about-check-list {
	padding: clamp(20px, 2.5vw, 30px);
}

.promodose-about-template .promodose-about-check-list ul {
	margin: 0;
	padding-inline-start: 1.25em;
	color: #667085;
	line-height: 2;
	font-weight: 700;
}

.promodose-about-template .promodose-about-cta {
	border-radius: 24px;
	background: linear-gradient(135deg, #e9fbf8 0%, #fff 58%, #f7f3ff 100%);
	border: 1px solid #dce2ea;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.07);
	padding: clamp(26px, 4vw, 48px);
}

.promodose-about-template .wp-block-button__link {
	border-radius: 999px;
	font-weight: 900;
	padding: 0.75rem 1.15rem;
}

@media (max-width: 900px) {
	.promodose-about-template .promodose-about-hero-copy {
		min-height: 0;
	}

	.promodose-about-template .promodose-about-media {
		height: auto;
		aspect-ratio: 16 / 10;
	}
}

@media (max-width: 640px) {
	.promodose-about-template.alignfull {
		padding-inline: 18px !important;
	}

	.promodose-about-template .promodose-about-section {
		margin-block: 24px;
	}

	.promodose-about-template .promodose-about-hero-copy,
	.promodose-about-template .promodose-about-value,
	.promodose-about-template .promodose-about-step,
	.promodose-about-template .promodose-about-check-list,
	.promodose-about-template .promodose-about-cta {
		padding: 22px 18px;
	}

	.promodose-about-template .promodose-about-title {
		font-size: 27px;
	}
}

/* Contact page Gutenberg composition */
.promodose-contact-section {
	direction: rtl;
	color: #17234a;
}

.promodose-contact-section.alignfull {
	padding-inline: clamp(28px, 6vw, 92px) !important;
}

.promodose-contact-section :where(h1, h2, h3, p) {
	letter-spacing: 0;
}

.promodose-contact-section > .wp-block-columns,
.promodose-contact-section > .wp-block-group {
	width: 100%;
	max-width: min(1500px, calc(100vw - 64px));
	margin-inline: auto;
}

.promodose-contact-card,
.promodose-contact-soft-card,
.promodose-contact-form-card,
.promodose-contact-info-card,
.promodose-contact-method-card {
	border: 1px solid #dce2ea;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.07);
}

.promodose-contact-soft-card {
	background: #eefbf9;
	border-color: #a8ece6;
}

.promodose-contact-hero .wp-block-columns {
	align-items: stretch;
	gap: clamp(18px, 3vw, 36px);
}

.promodose-contact-hero-copy {
	min-height: clamp(260px, 28vw, 380px);
	padding: clamp(24px, 3.25vw, 42px);
}

.promodose-contact-eyebrow {
	margin: 0 0 10px;
	color: #07b9a8;
	font-weight: 900;
}

.promodose-contact-title {
	margin: 0;
	color: #17234a;
	font-size: clamp(27px, 2.65vw, 42px);
	line-height: 1.18;
}

.promodose-contact-lead {
	color: #667085;
	font-size: clamp(16px, 1.16vw, 19px);
	line-height: 1.85;
}

.promodose-contact-quick-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: repeat(2, 178px);
	align-content: start;
	align-items: stretch;
	gap: 14px;
	margin: 0;
}

.promodose-contact-quick-grid > .wp-block-group {
	height: 100%;
	margin: 0 !important;
}

.promodose-contact-method-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 100%;
	min-height: 0;
	overflow: hidden;
	padding: clamp(18px, 2vw, 24px);
	text-align: center;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.promodose-contact-method-card:hover,
.promodose-contact-method-card:focus-visible {
	border-color: #08b9aa;
	box-shadow: 0 20px 50px rgba(8, 185, 170, 0.14);
	transform: translateY(-2px);
}

.promodose-contact-method-card strong {
	color: #17234a;
	font-size: clamp(17px, 1.2vw, 20px);
	line-height: 1.45;
}

.promodose-contact-method-card span {
	margin-block-start: 8px;
	color: #667085;
	font-weight: 800;
	line-height: 1.6;
}

.promodose-contact-method-card p {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 10px 0 0;
	max-width: 100%;
	color: #667085;
	font-weight: 800;
	line-height: 1.55;
}

.promodose-contact-method-card a {
	display: inline-block;
	max-width: 100%;
	color: #6e42a8;
	overflow-wrap: anywhere;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.promodose-contact-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.promodose-contact-link::before {
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	background-color: #08b9aa;
	-webkit-mask: var(--promodose-contact-icon) center / contain no-repeat;
	mask: var(--promodose-contact-icon) center / contain no-repeat;
}

.promodose-contact-link--phone {
	--promodose-contact-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.15 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z'/%3E%3C/svg%3E");
}

.promodose-contact-link--email {
	--promodose-contact-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Zm0 4.2-8 5-8-5V6l8 5 8-5v2.2Z'/%3E%3C/svg%3E");
}

.promodose-contact-link--whatsapp {
	--promodose-contact-icon: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 3C8.87 3 3.04 8.82 3.04 15.98c0 2.29.6 4.53 1.74 6.5L3 29l6.68-1.75a13 13 0 0 0 6.36 1.62h.01c7.16 0 12.99-5.82 12.99-12.98C29.04 8.82 23.21 3 16.04 3Zm0 23.66h-.01a10.8 10.8 0 0 1-5.49-1.5l-.39-.23-3.96 1.04 1.06-3.86-.25-.4a10.73 10.73 0 0 1-1.65-5.73c0-5.95 4.85-10.79 10.82-10.79 2.89 0 5.6 1.13 7.64 3.17a10.7 10.7 0 0 1 3.16 7.63c-.01 5.95-4.86 10.67-10.93 10.67Zm5.93-8.08c-.32-.16-1.91-.94-2.2-1.05-.3-.11-.52-.16-.74.16-.21.32-.85 1.05-1.04 1.27-.19.21-.38.24-.7.08-.32-.16-1.36-.5-2.59-1.6-.96-.85-1.61-1.9-1.8-2.22-.19-.32-.02-.49.14-.65.15-.15.32-.38.49-.57.16-.19.21-.32.32-.54.11-.21.05-.4-.03-.57-.08-.16-.73-1.76-1-2.41-.26-.63-.53-.54-.73-.55l-.62-.01c-.21 0-.57.08-.86.4-.3.32-1.13 1.1-1.13 2.68 0 1.58 1.15 3.1 1.31 3.32.16.21 2.27 3.46 5.5 4.85.77.33 1.37.53 1.84.68.77.25 1.47.21 2.03.13.62-.09 1.91-.78 2.18-1.53.27-.75.27-1.39.19-1.53-.08-.13-.3-.21-.62-.37Z'/%3E%3C/svg%3E");
}

.promodose-contact-form-section .wp-block-columns {
	align-items: flex-start;
	gap: clamp(18px, 3vw, 34px);
}

.promodose-contact-form-card,
.promodose-contact-info-card {
	padding: clamp(22px, 3vw, 36px);
}

.promodose-contact-section-title {
	margin: 0 0 10px;
	color: #17234a;
	font-size: clamp(22px, 1.9vw, 30px);
	line-height: 1.3;
}

.promodose-contact-section-text {
	margin: 0;
	color: #667085;
	font-size: clamp(15.5px, 1vw, 18px);
	line-height: 1.85;
}

.promodose-contact-info-list {
	display: grid;
	gap: 12px;
	margin-block-start: 22px;
}

.promodose-contact-info-list p {
	margin: 0;
	padding: 16px 18px;
	border: 1px solid #dce2ea;
	border-radius: 14px;
	background: #f8fbfc;
	color: #17234a;
	font-weight: 850;
	line-height: 1.6;
}

.promodose-contact-info-list a {
	color: inherit;
	text-decoration: none;
}

.promodose-contact-info-list a:hover,
.promodose-contact-info-list a:focus-visible {
	color: #08b9aa;
}

.promodose-contact-form-card .fluentform,
.promodose-contact-form-card .frm-fluent-form {
	margin-block-start: 22px;
}

.promodose-contact-form-card .ff-el-group {
	margin-bottom: 16px;
}

.promodose-contact-form-card :is(input, textarea, select),
.promodose-contact-form-card .ff-el-form-control {
	width: 100%;
	min-height: 48px;
	border: 1px solid #dce2ea !important;
	border-radius: 14px !important;
	background: #f8fbfc !important;
	color: #17234a !important;
	font-family: inherit;
	font-size: 1rem;
	padding: 0.8rem 1rem !important;
}

.promodose-contact-form-card textarea,
.promodose-contact-form-card textarea.ff-el-form-control {
	min-height: 140px;
	resize: vertical;
}

.promodose-contact-form-card :is(input, textarea, select):focus,
.promodose-contact-form-card .ff-el-form-control:focus {
	border-color: #08b9aa !important;
	box-shadow: 0 0 0 4px rgba(8, 185, 170, 0.14) !important;
	outline: none;
}

.promodose-contact-form-card .ff-el-input--label label {
	color: #17234a;
	font-weight: 900;
}

.promodose-contact-form-card .ff-btn-submit,
.promodose-contact-form-card button[type="submit"],
.promodose-contact-form-card input[type="submit"] {
	border: 0 !important;
	border-radius: 999px !important;
	background: #08b9aa !important;
	color: #fff !important;
	font-family: inherit;
	font-weight: 950 !important;
	padding: 0.82rem 1.35rem !important;
}

.promodose-contact-form-card .ff-btn-submit:hover,
.promodose-contact-form-card button[type="submit"]:hover,
.promodose-contact-form-card input[type="submit"]:hover {
	background: #0a9d94 !important;
	color: #fff !important;
}

.promodose-contact-form-placeholder {
	margin-block-start: 22px;
	padding: 22px;
	border: 1px dashed #08b9aa;
	border-radius: 18px;
	background: #eefbf9;
	color: #17234a;
}

.promodose-contact-form-placeholder strong {
	display: block;
	color: #08b9aa;
	font-size: 1.08rem;
	font-weight: 950;
}

.promodose-contact-form-placeholder p {
	margin: 8px 0 0;
	color: #667085;
	font-weight: 750;
	line-height: 1.7;
}

.promodose-contact-support-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(14px, 2vw, 20px);
}

.promodose-contact-support-card {
	padding: clamp(20px, 2.5vw, 30px);
}

.promodose-contact-support-card h3 {
	margin: 0 0 8px;
	color: #17234a;
	font-size: clamp(18px, 1.35vw, 22px);
}

.promodose-contact-support-card p {
	margin: 0;
	color: #667085;
	line-height: 1.8;
}

.promodose-contact-cta {
	border-radius: 24px;
	background: linear-gradient(135deg, #e9fbf8 0%, #fff 58%, #f7f3ff 100%);
	border: 1px solid #dce2ea;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.07);
	padding: clamp(26px, 4vw, 48px);
}

.promodose-contact-section .wp-block-button__link {
	border-radius: 999px;
	font-weight: 900;
	padding: 0.75rem 1.15rem;
}

@media (max-width: 900px) {
	.promodose-contact-hero-copy {
		min-height: 0;
	}

	.promodose-contact-quick-grid,
	.promodose-contact-support-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.promodose-contact-section.alignfull {
		padding-inline: 18px !important;
	}

	.promodose-contact-hero-copy,
	.promodose-contact-form-card,
	.promodose-contact-info-card,
	.promodose-contact-support-card,
	.promodose-contact-cta {
		padding: 22px 18px;
	}

	.promodose-contact-title {
		font-size: 28px;
	}

	.promodose-contact-quick-grid,
	.promodose-contact-support-grid {
		grid-template-columns: 1fr;
	}

	.promodose-contact-quick-grid {
		grid-template-rows: none;
		grid-auto-rows: 132px;
	}

	.promodose-contact-method-card {
		min-height: 0;
	}
}

.promodose-policy-main {
	box-sizing: border-box;
	width: 100%;
	max-width: none !important;
	margin-block-start: 0 !important;
	overflow: hidden;
}

.promodose-policy-main > .wp-block-post-content {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
}

.promodose-policy-page {
	box-sizing: border-box;
	--wp--style--global--content-size: min(1500px, calc(100vw - 64px));
	--wp--style--global--wide-size: min(1500px, calc(100vw - 64px));
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	background: linear-gradient(180deg, #f7fffe 0%, #fff 38%, #f7fffe 100%);
}

.promodose-policy-section {
	box-sizing: border-box;
	--wp--style--global--content-size: min(1500px, calc(100vw - 64px));
	--wp--style--global--wide-size: min(1500px, calc(100vw - 64px));
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	padding-inline: clamp(28px, 6vw, 92px);
}

.promodose-policy-section > .wp-block-group,
.promodose-policy-section > .wp-block-columns {
	width: 100%;
	max-width: min(1500px, calc(100vw - 64px));
	margin-inline: auto;
}

.promodose-policy-card,
.promodose-policy-soft-card,
.promodose-policy-note,
.promodose-policy-cta {
	border: 1px solid #dce2ea;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(15, 35, 80, 0.07);
}

.promodose-policy-card,
.promodose-policy-soft-card,
.promodose-policy-note {
	padding: clamp(20px, 3vw, 34px);
}

.promodose-policy-soft-card {
	background: #effdfa;
	border-color: #a8ece6;
}

.promodose-policy-eyebrow {
	margin: 0 0 10px;
	color: #08b9aa;
	font-weight: 900;
}

.promodose-policy-title {
	margin: 0;
	color: #17234a;
	font-size: clamp(34px, 4vw, 58px);
	line-height: 1.18;
}

.promodose-policy-lead,
.promodose-policy-text {
	color: #667085;
	font-size: clamp(16px, 1.1vw, 19px);
	font-weight: 750;
	line-height: 1.9;
}

.promodose-policy-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(16px, 1.5vw, 24px);
	align-items: stretch;
}

.promodose-policy-grid > .wp-block-column {
	min-width: 0;
	width: auto !important;
	flex-basis: auto !important;
}

.promodose-policy-mini-card {
	min-height: 185px;
	padding: clamp(20px, 2vw, 28px);
	border: 1px solid #dce2ea;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(15, 35, 80, 0.05);
}

.promodose-policy-mini-card h3,
.promodose-policy-card h2,
.promodose-policy-soft-card h2,
.promodose-policy-note h2 {
	margin-top: 0;
	color: #17234a;
	line-height: 1.3;
}

.promodose-policy-mini-card p,
.promodose-policy-card p,
.promodose-policy-note p,
.promodose-policy-card li,
.promodose-policy-note li {
	color: #667085;
	font-weight: 750;
	line-height: 1.8;
}

.promodose-policy-card ul,
.promodose-policy-note ul {
	padding-inline-start: 1.4em;
}

.promodose-policy-note {
	border-color: #ffc46b;
	background: #fff8eb;
}

.promodose-policy-cta {
	padding: clamp(24px, 4vw, 44px);
	background: linear-gradient(135deg, #e9fbf8 0%, #fff 64%, #f7f3ff 100%);
}

.promodose-policy-section .wp-block-button__link {
	border-radius: 999px;
	font-weight: 900;
	padding: 0.75rem 1.15rem;
}

@media (max-width: 980px) {
	.promodose-policy-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.promodose-policy-section {
		padding-inline: 18px !important;
	}

	.promodose-policy-section > .wp-block-group,
	.promodose-policy-section > .wp-block-columns {
		max-width: calc(100vw - 36px);
	}

	.promodose-policy-grid {
		grid-template-columns: 1fr;
	}

	.promodose-policy-card,
	.promodose-policy-soft-card,
	.promodose-policy-note,
	.promodose-policy-cta {
		padding: 22px 18px;
	}

	.promodose-policy-title {
		font-size: 30px;
	}
}
