/*
 * Rahiq — component styles.
 *
 * Only what theme.json cannot express. Colours, sizes and spacing come from
 * theme.json presets (var(--wp--preset--…)). RTL-first: logical properties only,
 * except direction-neutral icons (chevrons) which say so in a comment.
 */

:root {
	--rahiq-radius-sm: var(--wp--custom--radius--small, 8px);
	--rahiq-radius: var(--wp--custom--radius--medium, 14px);
	--rahiq-radius-lg: var(--wp--custom--radius--large, 24px);
	--rahiq-gold-hover: #ebc55f;
}

/* Abar "High" everywhere (contrast axis at 100): the brand uses no Low or Mid text. */
body {
	font-variation-settings: "CNTR" 100;
	text-rendering: optimizeLegibility;
}

:where(button, input, select, textarea) {
	font-variation-settings: inherit;
}

:where(h1, h2, h3, h4) {
	text-wrap: balance;
}

:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold-ink);
	outline-offset: 3px;
}

/* ---------- Header ---------- */

.rahiq-announce {
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 400;
	line-height: 1.6;
}

.rahiq-announce a {
	color: var(--wp--preset--color--on-dark);
	text-decoration: underline;
}

.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	inset-block-start: 0;
	z-index: 40;
}

.admin-bar .wp-site-blocks > header.wp-block-template-part {
	inset-block-start: var(--wp-admin--admin-bar--height, 0);
}

.rahiq-header {
	box-shadow: 0 1px 0 var(--wp--preset--color--border);
}

/* The logo already carries the name; the site title stays only as a fallback. */
.wp-block-site-logo + .wp-block-site-title {
	display: none;
}

.wp-block-site-logo img {
	block-size: auto;
}

@media (max-width: 599px) {
	.rahiq-header .wp-block-site-logo img {
		inline-size: clamp(120px, 36vw, 150px) !important;
	}
}

.wp-site-blocks > * + * {
	margin-block-start: 0;
}

.rahiq-header .wp-block-search {
	flex: 1 1 320px;
	max-inline-size: 560px;
}

.rahiq-header .wp-block-search__inside-wrapper {
	border: 0;
	border-radius: var(--rahiq-radius-sm);
	background: var(--wp--preset--color--surface-2);
	padding: 0;
}

.rahiq-header .wp-block-search__input {
	border: 0;
	background: transparent;
	padding-block: 0.7rem;
	padding-inline: 1rem;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 350;
	color: var(--wp--preset--color--ink);
}

.rahiq-header .wp-block-search__button {
	margin: 0;
	background: transparent;
	color: var(--wp--preset--color--muted);
	padding-inline: 0.9rem;
}

.rahiq-header .wp-block-social-links .wp-social-link {
	background: transparent;
	color: var(--wp--preset--color--gold-ink);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--rahiq-radius-sm);
}

.rahiq-header .wp-block-woocommerce-mini-cart .wc-block-mini-cart__badge {
	background: var(--wp--preset--color--gold);
	color: var(--wp--preset--color--dark);
	font-weight: 600;
}

.rahiq-header-nav .wp-block-navigation-item__content {
	color: var(--wp--preset--color--muted);
	padding-block: 0.7rem;
	border-block-end: 2px solid transparent;
}

.rahiq-header-nav .wp-block-navigation-item__content:hover,
.rahiq-header-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--ink);
	border-block-end-color: var(--wp--preset--color--gold);
	text-decoration: none;
}

/* Mobile: the menu button joins the top row instead of taking its own row. */
@media (max-width: 599px) {
	.rahiq-header {
		position: relative;
	}

	.rahiq-header > .alignwide:first-child {
		padding-inline-end: 48px;
	}

	.rahiq-header-nav {
		position: absolute;
		inset-block-start: 2.4rem;
		inset-inline-end: var(--wp--style--root--padding-left, 16px);
		margin: 0 !important;
	}
}

@media (max-width: 781px) {
	.rahiq-header .wp-block-search {
		order: 10;
		flex-basis: 100%;
		max-inline-size: none;
	}
}

/* ---------- Banner slider: group (is-style-slider) of cover blocks ---------- */

.wp-block-group.is-style-slider {
	position: relative;
}

.is-style-slider > .rahiq-slider__track,
.wp-block-group.is-style-slider:not(.is-ready) {
	display: flex;
	flex-wrap: nowrap;
	gap: 0;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	border-radius: var(--rahiq-radius-lg);
}

.is-style-slider ::-webkit-scrollbar {
	display: none;
}

.is-style-slider .wp-block-cover {
	flex: 0 0 100%;
	min-height: 400px;
	margin: 0 !important;
	scroll-snap-align: start;
	border-radius: 0;
	padding-inline: clamp(1.5rem, 1rem + 5vw, 5rem);
}

.is-style-slider .wp-block-cover h2 {
	font-size: var(--wp--preset--font-size--display);
	font-weight: 780;
	line-height: 1.3;
}

@media (max-width: 719px) {
	.is-style-slider .wp-block-cover {
		min-height: 440px;
		align-items: flex-end;
	}
}

.rahiq-slider__dots {
	position: absolute;
	inset-inline: 0;
	inset-block-end: 1rem;
	display: flex;
	justify-content: center;
	gap: 6px;
}

.rahiq-slider__dots button {
	inline-size: 8px;
	block-size: 8px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgb(255 255 255 / 60%);
	box-shadow: 0 0 0 1px rgb(0 0 0 / 12%);
	cursor: pointer;
	transition: inline-size 0.2s;
}

.rahiq-slider__dots button[aria-current="true"] {
	inline-size: 22px;
	background: var(--wp--preset--color--gold);
}

.rahiq-arrow {
	position: absolute;
	inset-block-start: 50%;
	translate: 0 -50%;
	z-index: 2;
	display: none;
	place-items: center;
	inline-size: 44px;
	block-size: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: var(--wp--preset--shadow--card);
	color: var(--wp--preset--color--ink);
	cursor: pointer;
}

.rahiq-arrow svg {
	inline-size: 20px;
	block-size: 20px;
}

.rahiq-arrow--prev {
	inset-inline-start: 1rem;
}

.rahiq-arrow--next {
	inset-inline-end: 1rem;
}

@media (min-width: 960px) {
	.rahiq-arrow {
		display: grid;
	}
}

/* ---------- Category circles: group (is-style-circles) of figure+caption groups ---------- */

.wp-block-group.is-style-circles {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--wp--preset--spacing--40);
	overflow-x: auto;
	scrollbar-width: none;
	padding-block: var(--wp--preset--spacing--40);
}

.is-style-circles > * {
	flex: none;
	inline-size: 88px;
	margin: 0 !important;
	text-align: center;
}

.is-style-circles p {
	margin-block-start: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 400;
	line-height: 1.5;
}

.is-style-circles p a {
	color: var(--wp--preset--color--ink);
}

@media (min-width: 960px) {
	.wp-block-group.is-style-circles {
		justify-content: center;
		gap: var(--wp--preset--spacing--60);
	}

	.is-style-circles > * {
		inline-size: 104px;
	}
}

.wp-block-image.is-style-circle img {
	aspect-ratio: 1;
	inline-size: 100%;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid #fff;
	box-shadow: 0 0 0 3px var(--wp--preset--color--gold);
}

/* ---------- Arch image (mihrab) ---------- */

.wp-block-image.is-style-arch img {
	aspect-ratio: 3 / 4;
	object-fit: cover;
	border-radius: 999px 999px var(--rahiq-radius-sm) var(--rahiq-radius-sm);
	box-shadow: 0 0 0 1px var(--wp--preset--color--gold), 0 0 0 4px #fff, 0 0 0 5px var(--wp--preset--color--border);
}

/* ---------- Headings ---------- */

.wp-block-heading.is-style-underline {
	position: relative;
	padding-block-end: var(--wp--preset--spacing--20);
}

.wp-block-heading.is-style-underline::after {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-end: 0;
	inline-size: 48px;
	block-size: 3px;
	border-radius: 3px;
	background: var(--wp--preset--color--gold);
}

.wp-block-heading.is-style-underline.has-text-align-center::after {
	inset-inline: 0;
	margin-inline: auto;
}

/* ---------- Buttons ---------- */

.wp-block-button.is-style-dark .wp-block-button__link {
	background: var(--wp--preset--color--dark);
	color: #fff;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--border);
	background: #fff;
	color: var(--wp--preset--color--ink);
}

/* ---------- Dark feature band (Kiswa) ---------- */

.wp-block-group.is-style-feature {
	background: radial-gradient(60% 120% at 100% 0%, rgb(224 184 76 / 14%), transparent 60%), radial-gradient(80% 120% at 0% 50%, var(--wp--preset--color--dark-2), var(--wp--preset--color--dark));
	color: var(--wp--preset--color--on-dark);
	border-radius: var(--rahiq-radius-lg);
}

.is-style-feature :is(h1, h2, h3) {
	color: var(--wp--preset--color--gold);
}

.is-style-feature a:not(.wp-element-button) {
	color: var(--wp--preset--color--gold);
}

.is-style-feature .has-muted-color,
.is-style-feature .rahiq-source {
	color: var(--wp--preset--color--on-dark-muted) !important;
}

/* ---------- Note and card boxes ---------- */

.wp-block-group.is-style-note {
	background: var(--wp--preset--color--gold-tint);
	border: 1px solid #f0e2b4;
	border-start-start-radius: var(--rahiq-radius-lg);
	border-start-end-radius: var(--rahiq-radius);
	border-end-start-radius: var(--rahiq-radius);
	border-end-end-radius: var(--rahiq-radius);
}

.is-style-note :is(h2, h3) {
	color: var(--wp--preset--color--gold-ink);
}

.wp-block-group.is-style-card {
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--rahiq-radius);
}

/* ---------- Lists ---------- */

.wp-block-list.is-style-timeline {
	position: relative;
	list-style: none;
	padding: 0;
	counter-reset: rahiq-step;
	display: grid;
	gap: var(--wp--preset--spacing--40);
}

.wp-block-list.is-style-timeline::before {
	content: "";
	position: absolute;
	inset-block: 10px;
	inset-inline-start: 15px;
	inline-size: 2px;
	background: var(--wp--preset--color--surface-2);
}

.wp-block-list.is-style-timeline > li {
	position: relative;
	padding-inline-start: 52px;
	counter-increment: rahiq-step;
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--small);
}

.wp-block-list.is-style-timeline > li::before {
	content: counter(rahiq-step, decimal-leading-zero);
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 2px;
	display: grid;
	place-items: center;
	inline-size: 32px;
	block-size: 32px;
	border-radius: 8px;
	background: var(--wp--preset--color--dark);
	color: var(--wp--preset--color--gold);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 600;
}

.wp-block-list.is-style-timeline > li strong {
	display: block;
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 600;
}

.wp-block-list.is-style-checks {
	list-style: none;
	padding: 0;
	display: grid;
	gap: var(--wp--preset--spacing--20);
}

.wp-block-list.is-style-checks > li {
	position: relative;
	padding-inline-start: 1rem;
}

.wp-block-list.is-style-checks > li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 0.75em;
	inline-size: 6px;
	block-size: 6px;
	border-radius: 50%;
	background: var(--wp--preset--color--gold);
}

/* ---------- Details (accordion) ---------- */

.wp-block-details {
	background: #fff;
}

.wp-block-details + .wp-block-details {
	margin-block-start: var(--wp--preset--spacing--20);
}

.wp-block-details summary {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	font-weight: 500;
	list-style: none;
	cursor: pointer;
}

.wp-block-details summary::-webkit-details-marker {
	display: none;
}

.wp-block-details summary::after {
	content: "";
	flex: none;
	margin-inline-start: auto;
	inline-size: 9px;
	block-size: 9px;
	/* Physical sides on purpose: a direction-neutral chevron. */
	border-right: 2px solid currentcolor;
	border-bottom: 2px solid currentcolor;
	transform: translateY(-3px) rotate(45deg);
	transition: transform 0.2s;
}

.wp-block-details[open] summary::after {
	transform: translateY(2px) rotate(-135deg);
}

.wp-block-details > :not(summary) {
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--small);
}

/* ---------- Product carousel: product collection (is-style-carousel) ---------- */

.is-style-carousel {
	position: relative;
}

.is-style-carousel .wc-block-product-template {
	display: grid !important;
	grid-auto-flow: column;
	grid-auto-columns: 168px;
	grid-template-columns: none !important;
	gap: var(--wp--preset--spacing--30) !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-block: 2px var(--wp--preset--spacing--30);
	margin: 0;
}

.is-style-carousel .wc-block-product-template::-webkit-scrollbar {
	display: none;
}

.is-style-carousel .wc-block-product-template > li {
	scroll-snap-align: start;
	inline-size: auto !important;
	margin: 0 !important;
}

.is-style-carousel .rahiq-arrow {
	inset-block-start: 40%;
}

.is-style-carousel .rahiq-arrow--prev {
	inset-inline-start: -14px;
}

.is-style-carousel .rahiq-arrow--next {
	inset-inline-end: -14px;
}

@media (min-width: 720px) {
	.is-style-carousel .wc-block-product-template {
		grid-auto-columns: 210px;
		gap: var(--wp--preset--spacing--40) !important;
	}
}

/* ---------- Product card (inside product collections) ---------- */

.rahiq-pcard,
.wc-block-product.rahiq-pcard {
	display: flex;
	flex-direction: column;
	block-size: 100%;
	background: #fff;
	color: var(--wp--preset--color--ink);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--rahiq-radius);
	overflow: hidden;
	transition: box-shadow 0.2s, border-color 0.2s;
}

.rahiq-pcard:hover {
	box-shadow: var(--wp--preset--shadow--raised);
	border-color: transparent;
}

.rahiq-pcard .wc-block-components-product-image {
	margin: 0 !important;
	aspect-ratio: 1;
	background: var(--wp--preset--color--surface);
}

.rahiq-pcard .wc-block-components-product-image img {
	inline-size: 100%;
	block-size: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

.rahiq-pcard > :not(.wc-block-components-product-image) {
	margin-inline: var(--wp--preset--spacing--30) !important;
}

.rahiq-pcard .wp-block-post-terms {
	margin-block: var(--wp--preset--spacing--30) 0 !important;
	font-size: 11px;
	font-weight: 400;
	color: var(--wp--preset--color--gold-ink);
}

.rahiq-pcard .wp-block-post-terms a {
	color: inherit;
}

.rahiq-pcard .wp-block-post-title {
	margin-block: var(--wp--preset--spacing--10) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500;
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.rahiq-pcard .wp-block-post-title a {
	color: var(--wp--preset--color--ink);
}

.rahiq-pcard .wp-block-post-excerpt {
	margin-block: 0 !important;
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--muted);
	line-height: 1.7;
}

.rahiq-pcard .wp-block-post-excerpt__excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
}

.rahiq-pcard .rahiq-wa-wrap,
.rahiq-pcard .wc-block-components-product-price,
.rahiq-pcard .wp-block-button {
	margin-block: auto var(--wp--preset--spacing--30) !important;
	padding-block-start: var(--wp--preset--spacing--20);
	border-block-start: 1px dashed var(--wp--preset--color--border);
}

/* Dark band around a carousel (the hirz strip) */
.is-style-feature .rahiq-pcard {
	border-color: transparent;
}

.is-style-feature .rahiq-pcard .wp-block-post-title a,
.is-style-feature .rahiq-pcard .rahiq-wa--link {
	color: var(--wp--preset--color--ink);
}

.is-style-feature .rahiq-pcard .wp-block-post-terms a {
	color: var(--wp--preset--color--gold-ink);
}

/* ---------- WhatsApp order block ---------- */

.rahiq-wa {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	text-decoration: none;
}

.rahiq-wa__icon {
	inline-size: 20px;
	block-size: 20px;
	flex: none;
}

.rahiq-wa--button {
	justify-content: center;
	inline-size: 100%;
}

.rahiq-wa--link {
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 500;
	color: var(--wp--preset--color--ink);
}

.rahiq-wa--link .rahiq-wa__icon {
	inline-size: 18px;
	block-size: 18px;
	color: var(--wp--preset--color--gold-ink);
}

.rahiq-wa--link:hover {
	text-decoration: underline;
}

.rahiq-wa__price {
	display: flex;
	justify-content: space-between;
	margin: 0 0 var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--muted);
}

.rahiq-wa__price strong {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

.rahiq-wa-notice {
	padding: 0.5rem 0.75rem;
	border: 1px dashed var(--wp--preset--color--gold);
	border-radius: 6px;
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--gold-ink);
}

.rahiq-price-on-request {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--muted);
}

/* The WhatsApp block already says "price on request" in cards and the order box. */
.rahiq-pcard .rahiq-price-on-request,
.rahiq-order-box .rahiq-price-on-request,
.rahiq-pcard .wc-block-components-product-price:has(.rahiq-price-on-request) {
	display: none;
}

/* ---------- Single product ---------- */

.rahiq-order-box {
	position: sticky;
	inset-block-start: 140px;
}

.rahiq-order-box .wp-block-woocommerce-product-price:empty {
	display: none;
}

@media (max-width: 781px) {
	.rahiq-order-box {
		position: static;
	}
}

#order,
.rahiq-product-landing [id] {
	scroll-margin-block-start: calc(var(--wp-admin--admin-bar--height, 0px) + var(--rahiq-sticky-offset, 140px) + 16px);
}

/* Product gallery (classic WooCommerce gallery with thumbnails) */
.woocommerce-product-gallery .woocommerce-product-gallery__image img {
	border-radius: var(--rahiq-radius);
}

.woocommerce-product-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--20);
	margin: var(--wp--preset--spacing--20) 0 0;
	padding: 0;
	list-style: none;
}

.woocommerce-product-gallery .flex-control-thumbs li {
	inline-size: auto !important;
	margin: 0 !important;
	float: none !important;
}

.woocommerce-product-gallery .flex-control-thumbs img {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--rahiq-radius-sm);
	opacity: 0.75;
	cursor: pointer;
	transition: opacity 0.2s, border-color 0.2s;
}

.woocommerce-product-gallery .flex-control-thumbs img:hover,
.woocommerce-product-gallery .flex-control-thumbs img.flex-active {
	border-color: var(--wp--preset--color--gold);
	opacity: 1;
}

/* ---------- Section tabs (rahiq/section-nav) ---------- */

.rahiq-section-nav {
	position: sticky;
	inset-block-start: calc(var(--wp-admin--admin-bar--height, 0px) + var(--rahiq-header-h, 0px));
	z-index: 30;
	background: var(--wp--preset--color--base);
	border-block-end: 1px solid var(--wp--preset--color--border);
	overflow-x: auto;
	scrollbar-width: none;
}

.rahiq-section-nav::-webkit-scrollbar {
	display: none;
}

.rahiq-section-nav__list {
	display: flex;
	gap: var(--wp--preset--spacing--50);
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
}

.rahiq-section-nav a {
	display: block;
	padding-block: 0.85rem;
	border-block-end: 2px solid transparent;
	margin-block-end: -1px;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	color: var(--wp--preset--color--muted);
	text-decoration: none;
}

.rahiq-section-nav a:hover {
	color: var(--wp--preset--color--ink);
}

.rahiq-section-nav a[aria-current] {
	color: var(--wp--preset--color--ink);
	font-weight: 500;
	border-block-end-color: var(--wp--preset--color--gold);
}

.rahiq-section-nav__hint {
	margin: 0;
	padding-block: 0.85rem;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--muted);
}

/* ---------- Mobile order bar (rahiq/order-bar) ---------- */

.rahiq-order-bar {
	position: fixed;
	inset-inline: 0;
	inset-block-end: 0;
	z-index: 50;
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	margin: 0 !important;
	padding-block: 0.6rem calc(0.6rem + env(safe-area-inset-bottom, 0px));
	padding-inline: var(--wp--style--root--padding-left, 16px);
	background: var(--wp--preset--color--base);
	box-shadow: 0 -1px 0 var(--wp--preset--color--border), 0 -8px 24px rgb(21 18 14 / 6%);
	transition: translate 0.25s ease, visibility 0.25s;
}

.rahiq-order-bar.is-hidden {
	translate: 0 110%;
	visibility: hidden;
}

.rahiq-order-bar__info {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-inline-size: 0;
	line-height: 1.5;
}

.rahiq-order-bar__title {
	overflow: hidden;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.rahiq-order-bar__price {
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--muted);
}

.rahiq-order-bar__price .amount {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

.rahiq-order-bar__button {
	flex: none;
	padding: 0.7rem 1.1rem;
	font-size: var(--wp--preset--font-size--small);
	text-decoration: none;
}

body:has(.rahiq-order-bar) .rahiq-footer {
	padding-block-end: calc(var(--wp--preset--spacing--50) + 72px) !important;
}

@media (min-width: 782px) {
	.rahiq-order-bar {
		display: none;
	}

	body:has(.rahiq-order-bar) .rahiq-footer {
		padding-block-end: var(--wp--preset--spacing--50) !important;
	}
}

/* In the editor the bar is a static preview. */
.editor-styles-wrapper .rahiq-order-bar {
	position: static;
	display: flex;
	border: 1px dashed var(--wp--preset--color--border);
	border-radius: var(--rahiq-radius);
}

/* ---------- Cart, checkout and WooCommerce notices ---------- */

.wc-block-components-notice-banner.is-success {
	background: var(--wp--preset--color--gold-tint);
	border-color: #f0e2b4;
	color: var(--wp--preset--color--ink);
}

.wc-block-components-notice-banner.is-success > svg {
	background-color: var(--wp--preset--color--gold-ink);
}

.wc-block-components-notice-banner a {
	color: var(--wp--preset--color--gold-ink);
}

.wc-block-cart-items__header,
.wc-block-cart__totals-title {
	text-transform: none !important;
	letter-spacing: 0;
	font-size: var(--wp--preset--font-size--small) !important;
	font-weight: 500 !important;
	color: var(--wp--preset--color--muted);
}

.wc-block-components-product-name {
	color: var(--wp--preset--color--ink);
	font-weight: 500;
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :is(
	.wc-block-components-text-input input,
	.wc-block-components-textarea,
	.wc-blocks-components-select__select,
	.wc-block-components-combobox .components-combobox-control__input,
	.wc-block-components-quantity-selector
) {
	border-color: var(--wp--preset--color--faint) !important;
	border-radius: var(--rahiq-radius-sm) !important;
	background-color: var(--wp--preset--color--base);
}

:is(.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :is(
	.wc-block-components-text-input input,
	.wc-block-components-textarea,
	.wc-blocks-components-select__select,
	.wc-block-components-combobox .components-combobox-control__input
):focus {
	border-color: var(--wp--preset--color--gold-ink) !important;
	box-shadow: 0 0 0 1px var(--wp--preset--color--gold-ink) !important;
	outline: 0;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked,
.wc-block-components-radio-control__input:checked {
	border-color: var(--wp--preset--color--gold-ink);
	background-color: var(--wp--preset--color--gold-ink);
}

.wc-block-components-checkbox .wc-block-components-checkbox__mark {
	fill: #fff;
}

.wc-block-components-radio-control__input:checked::before {
	background: #fff;
}

.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-totals-wrapper:has(.wc-block-components-totals-coupon) {
	border-color: var(--wp--preset--color--border) !important;
}

.wp-block-woocommerce-checkout-order-summary-block {
	border-radius: var(--rahiq-radius) !important;
}

.wc-block-components-checkout-step__title,
.wc-block-components-checkout-order-summary__title-text {
	font-weight: 600;
}

.wc-block-components-button:not(.is-link) {
	border-radius: var(--rahiq-radius-sm);
	font-weight: 600;
}

.wc-block-components-button:not(.is-link):hover {
	background-color: var(--rahiq-gold-hover);
}

.rahiq-secure::before {
	content: "";
	display: inline-block;
	inline-size: 14px;
	block-size: 14px;
	margin-inline-end: 0.35rem;
	vertical-align: -2px;
	background: currentcolor;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- Media & text ---------- */

.wp-block-media-text__media img {
	border-radius: var(--rahiq-radius);
}

/* ---------- Footer ---------- */

.rahiq-services img {
	inline-size: 40px;
	block-size: 40px;
	margin-inline: auto;
}

.rahiq-services p {
	margin: 0;
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--muted);
	line-height: 1.6;
}

.rahiq-services p strong {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	color: var(--wp--preset--color--ink);
}

.rahiq-footer .rahiq-wa--button,
.rahiq-cta .rahiq-wa--button {
	inline-size: auto;
}

.rahiq-verse {
	font-weight: 400;
	line-height: 1.9;
}

.rahiq-footer .wp-block-navigation-item__content {
	color: var(--wp--preset--color--muted);
	font-weight: 350;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
		scroll-behavior: auto !important;
	}
}
