/* Naqaa (نقاء) — direction: naqaa.md */

/* 1. Derived roles + type */
:root { --nq-glow: color-mix(in srgb, var(--pf-color-primary) 34%, var(--pf-color-on-accent)); --nq-band-ink: color-mix(in srgb, var(--pf-color-on-accent) 90%, var(--pf-color-accent)); --nq-band-deep: var(--pf-color-accent); --nq-band-line: color-mix(in srgb, var(--pf-color-on-accent) 22%, var(--pf-color-accent)); --nq-line: color-mix(in srgb, var(--pf-color-on-surface) 14%, var(--pf-color-surface)); --nq-press: color-mix(in srgb, var(--pf-color-primary) 82%, var(--pf-color-on-surface)); }
@supports (color: oklch(from red l c h)) {
	/* text on the mint */
	:root { --nq-glow: oklch(from var(--pf-color-primary) 0.86 0.09 h); --nq-band-deep: oklch(from var(--pf-color-accent) 0.26 c h); }
}
.pf-block { font-family: var(--pf-font-arabic); font-size: var(--pf-font-size-base); line-height: var(--pf-line-height-normal); }
.pf-block :is(h1, h2, h3, h4) { font-family: var(--pf-font-display); letter-spacing: 0; text-transform: none; }
.pf-block :is(.pf-services__price, .pf-trade-catalog__price, .pf-article__date, .pf-pricing__price, .pf-stats__value, .pf-trust__badge-val) { font-variant-numeric: tabular-nums; }
::selection { background-color: color-mix(in srgb, var(--pf-color-primary) 22%, var(--pf-color-surface)); color: var(--pf-color-on-surface); }

/* Bands: accent + surface heroes */
.pf-hero[style*="background-color:var(--pf-color-surface);"] { --pf-color-surface: var(--pf-color-accent); --pf-color-on-surface: var(--pf-color-on-accent); --pf-color-surface-raised: var(--nq-band-deep); --pf-color-hairline: var(--nq-band-line); }
.pf-block:is([style*="background-color:var(--pf-color-accent)"], .pf-hero[style*="background-color:var(--pf-color-surface);"]) { --pf-color-primary: var(--nq-glow); --pf-color-on-primary: var(--nq-band-deep); --pf-color-primary-text: var(--nq-glow); --pf-color-muted: var(--nq-band-ink); --nq-line: var(--nq-band-line); --nq-press: color-mix(in srgb, var(--nq-glow) 82%, var(--pf-color-on-accent)); }
.pf-block[style*="background-color:var(--pf-color-accent)"] + .pf-block[style*="background-color:var(--pf-color-accent)"] { border-block-start: 1px solid var(--nq-band-line); }

/* 2. Masthead */
header.pf-header { --wp--preset--color--surface: var(--pf-color-accent); --wp--preset--spacing--4: var(--pf-space-4); color: var(--pf-color-on-accent); border-block-end: 0; }
.pf-header p.pf-logo__word { display: flex; margin: 0; line-height: 1.3; }
.pf-header p.pf-logo__word > a { font-family: var(--pf-font-display); display: inline-flex; align-items: center; min-block-size: 2.75rem; font-weight: 700; font-size: 1rem; line-height: 1.3; color: var(--pf-color-on-accent); text-decoration: none; }
.pf-header p.pf-logo__word > a:hover { color: var(--pf-color-on-accent); }
.pf-header .pf-logo .wp-block-site-logo img { max-inline-size: 8rem; block-size: auto; }
.pf-header .wp-block-navigation-item > a.wp-block-navigation-item__content { display: inline-flex; align-items: center; min-block-size: 2.75rem; font-weight: 400; font-size: var(--pf-font-size-base); color: var(--nq-band-ink); text-decoration: none; white-space: nowrap; transition: color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-header .wp-block-navigation-item > a.wp-block-navigation-item__content:is(:hover, :focus-visible) { color: var(--pf-color-on-accent); }
.pf-header .wp-block-navigation-item > a.wp-block-navigation-item__content:is([aria-current="page"], .current-menu-item > *) { color: var(--pf-color-on-accent); font-weight: 500; text-decoration: underline 2px var(--nq-glow); text-underline-offset: 0.6em; }
.pf-header :is(.wc-block-customer-account__link, .wc-block-mini-cart .wc-block-mini-cart__button) { display: inline-flex; align-items: center; min-block-size: 2.75rem; background-color: transparent; border: 0; font-size: var(--pf-font-size-sm); color: var(--nq-band-ink); text-decoration: none; transition: color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-header :is(.wc-block-customer-account__link, .wc-block-mini-cart .wc-block-mini-cart__button):is(:hover, :focus-visible) { background-color: transparent; color: var(--pf-color-on-accent); }
.pf-header .wp-block-navigation__responsive-container-open { color: var(--pf-color-on-accent); }
/* open overlay */
.pf-header .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open { background-color: var(--pf-color-accent); color: var(--pf-color-on-accent); }
.pf-header .pf-scheme-switch { --pf-shadow-xs: none; --pf-color-on-surface: var(--pf-color-on-accent); --pf-color-primary: var(--nq-glow); --pf-color-on-primary: var(--nq-band-deep); background: transparent; border-color: var(--nq-band-line); box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.pf-header .pf-scheme-switch .pf-scheme-switch__opt { font-weight: 500; font-size: var(--pf-font-size-sm); }
.pf-header :is(a, button):focus-visible { outline: 2px solid var(--nq-glow); outline-offset: 3px; }
@media (min-width: 37.5rem) {
	header.pf-header { --wp--preset--spacing--4: var(--pf-space-5); }
	.pf-header > .wp-block-group.alignwide {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto auto;
		grid-template-areas:
			"brand actions switch"
			"nav nav nav";
		column-gap: var(--pf-space-5);
		row-gap: var(--pf-space-2);
		align-items: center;
		justify-content: normal;
	}
	.pf-header .pf-logo { grid-area: brand; min-inline-size: 0; }
	.pf-header p.pf-logo__word > a { font-size: var(--pf-font-size-md); }
	.pf-header .pf-header__actions { grid-area: actions; justify-self: end; gap: var(--pf-space-4); }
	.pf-header .pf-scheme-switch--mounted { grid-area: switch; justify-self: end; margin: 0; }
	.pf-header nav.wp-block-navigation { grid-area: nav; justify-self: stretch; min-inline-size: 0; }
	.pf-header .wp-block-navigation ul.wp-block-navigation__container { display: flex; flex-wrap: wrap; gap: 0 var(--pf-space-6); justify-content: flex-start; }
}
@media (min-width: 80rem) {
	.pf-header > .wp-block-group.alignwide { grid-template-columns: auto minmax(0, 1fr) auto auto; grid-template-areas: "brand nav actions switch"; column-gap: var(--pf-space-7); }
}
@media (min-width: 37.5rem) and (max-width: 63.99rem) {
	.pf-header .pf-scheme-switch__label { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}

/* 3. Hero */
.pf-hero { --pf-space-8: clamp(3.5rem, 9vw, 8rem); }
.pf-hero-sf__wash, .pf-hero-sf__stage:has(.pf-hero-sf__frame--plate) { display: none; }
.pf-hero-sf:has(.pf-hero-sf__frame--plate) { grid-template-columns: minmax(0, 1fr); }
.pf-hero-sf__mark { color: var(--nq-glow); }
.pf-hero:is(.pf-hero--minimal, .pf-hero--centered, .pf-hero--split:not(:has(.pf-hero__media))) .pf-hero__inner { grid-template-columns: minmax(0, 1fr); justify-items: stretch; text-align: start; }
.pf-hero .pf-hero__content { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "eyebrow" "title" "lede" "actions"; gap: 0; align-items: end; max-inline-size: none; text-align: start; }
.pf-hero .pf-hero__eyebrow { grid-area: eyebrow; margin: 0 0 var(--pf-space-5); font-weight: 500; font-size: var(--pf-font-size-base); letter-spacing: 0; text-transform: none; }
.pf-hero h1.pf-hero__title { grid-area: title; font-weight: 700; font-size: var(--pf-display-d1); line-height: var(--pf-line-height-display); color: var(--pf-color-primary); max-inline-size: 9.6em; text-wrap: balance; margin: 0; }
.pf-hero h1.pf-hero__title::first-line { color: var(--pf-color-on-accent); }
.pf-hero:not([style*="background-color:var(--pf-color-accent)"], [style*="background-color:var(--pf-color-surface);"]) h1.pf-hero__title { color: var(--pf-color-on-surface); }
.pf-hero:not([style*="background-color:var(--pf-color-accent)"], [style*="background-color:var(--pf-color-surface);"]) h1.pf-hero__title::first-line { color: var(--pf-color-primary-text); }
.pf-hero .pf-hero__subtitle { grid-area: lede; font-size: var(--pf-font-size-md); line-height: 1.75; color: var(--pf-color-muted); opacity: 1; max-inline-size: 28rem; text-wrap: pretty; margin: var(--pf-space-6) 0 0; }
.pf-hero .pf-hero__actions { grid-area: actions; justify-content: flex-start; align-items: center; gap: var(--pf-space-5); margin: var(--pf-space-6) 0 0; }
.pf-hero .pf-hero__proof { grid-column: 1 / -1; color: var(--pf-color-muted); font-size: var(--pf-font-size-sm); }
.pf-hero--card .pf-hero__content { background: transparent; border: 0; box-shadow: none; padding: 0; }
.pf-hero .pf-hero__media img { border-radius: var(--pf-radius-lg); box-shadow: none; aspect-ratio: 4 / 5; object-fit: cover; }
@media (min-width: 64rem) {
	.pf-hero .pf-hero__content {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		grid-template-areas:
			"eyebrow ."
			"title lede"
			"title actions";
		grid-template-rows: auto 1fr auto;
		column-gap: var(--pf-space-9);
	}
	.pf-hero .pf-hero__subtitle { align-self: end; margin: 0; }
	.pf-hero:has(.pf-hero__media) .pf-hero__content { grid-template-columns: minmax(0, 1fr); grid-template-areas: "eyebrow" "title" "lede" "actions"; }
	.pf-hero:has(.pf-hero__media) .pf-hero__subtitle { margin-block-start: var(--pf-space-6); }
	.pf-hero--split:has(.pf-hero__media) .pf-hero__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--pf-space-8); align-items: center; }
}

/* 4. Section heads */
.pf-block:not(.pf-hero) { --pf-space-8: clamp(3rem, 7vw, 6.5rem); }
.pf-block .pf-block__head { max-inline-size: none; margin: 0 0 var(--pf-space-7); text-align: start; }
.pf-block .pf-block__head:empty { display: none; }
.pf-block .pf-block__eyebrow { margin: 0 0 var(--pf-space-3); font-family: var(--pf-font-arabic); font-weight: 600; font-size: var(--pf-font-size-sm); line-height: 1.6; letter-spacing: 0; text-transform: none; }
.pf-block .pf-block__title { font-weight: 600; font-size: var(--pf-display-d2); line-height: 1.35; text-wrap: balance; margin: 0; max-inline-size: 18em; }
.pf-block .pf-block__subtitle { font-size: var(--pf-font-size-md); line-height: 1.7; color: var(--pf-color-muted); max-inline-size: 30rem; text-wrap: pretty; margin: var(--pf-space-4) 0 0; }
@media (min-width: 64rem) {
	.pf-block .pf-block__head:has(> .pf-block__subtitle) { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--pf-space-9); align-items: end; }
	.pf-block .pf-block__head > * { grid-column: 1; }
	.pf-block .pf-block__head > .pf-block__subtitle { grid-column: 2; grid-row: 1 / span 2; align-self: end; margin: 0; }
}

/* 5. Catalogue */
.pf-block .pf-trade-catalog__tabs { justify-content: flex-start; flex-wrap: wrap; gap: var(--pf-space-3); margin: 0 0 var(--pf-space-6); border: 0; }
.pf-block .pf-trade-catalog__tab { display: inline-flex; align-items: center; min-block-size: 2.75rem; padding: 0 var(--pf-space-5); background: transparent; border: 1px solid var(--pf-color-border); border-radius: var(--pf-radius-pill); font-weight: 500; font-size: var(--pf-font-size-base); color: var(--pf-color-on-surface); text-decoration: none; transition: background-color var(--pf-duration-base) var(--pf-easing-standard), color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-block .pf-trade-catalog__tab:is(:hover, :focus-visible) { border-color: var(--pf-color-on-surface); }
.pf-block .pf-trade-catalog__tab:is(.is-active, [aria-selected="true"]) { background: var(--pf-color-on-surface); border-color: var(--pf-color-on-surface); color: var(--pf-color-surface); }
.pf-block .pf-trade-catalog__panel-title { margin: 0 0 var(--pf-space-2); font-family: var(--pf-font-arabic); font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); text-align: start; }
.pf-block :is(.pf-trade-catalog__grid, .pf-services__grid) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border-block-start: 2px solid var(--pf-color-on-surface); }
.pf-block :is(.pf-trade-catalog__card, .pf-services__card) { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "thumb thumb" "badge badge" "name name" "text text" "price actions"; gap: var(--pf-space-2) var(--pf-space-5); align-items: baseline; block-size: auto; min-block-size: 0; padding: var(--pf-space-6) 0; background: transparent; border: 0; border-block-end: 1px solid var(--nq-line); border-radius: 0; box-shadow: none; transform: none; overflow: visible; text-decoration: none; }
.pf-block :is(.pf-trade-catalog__card, .pf-services__card):hover { box-shadow: none; transform: none; border-color: var(--nq-line); }
.pf-block :is(.pf-trade-catalog__thumb, .pf-services__thumb) { grid-area: thumb; aspect-ratio: 16 / 10; border-radius: var(--pf-radius-sm); margin-block-end: var(--pf-space-3); }
.pf-block :is(.pf-trade-catalog__badge, .pf-services__badge) { grid-area: badge; justify-self: start; }
.pf-block :is(.pf-trade-catalog__name, .pf-services__name) { grid-area: name; margin: 0; font-weight: 600; font-size: var(--pf-font-size-lg); line-height: 1.4; color: var(--pf-color-on-surface); text-wrap: balance; text-decoration: underline 1px transparent; text-underline-offset: 0.3em; transition: text-decoration-color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-block .pf-services__card:is(:hover, :focus-visible) .pf-services__name { text-decoration-color: currentColor; }
.pf-block :is(.pf-trade-catalog__text, .pf-services__text) { grid-area: text; margin: 0; font-size: var(--pf-font-size-base); line-height: 1.75; color: var(--pf-color-muted); max-inline-size: 36rem; text-wrap: pretty; }
.pf-block :is(.pf-trade-catalog__price, .pf-services__price) { --pf-color-primary-text: var(--pf-color-on-surface); grid-area: price; display: flex; flex-wrap: wrap; align-items: baseline; column-gap: var(--pf-space-2); margin: var(--pf-space-2) 0 0; font-weight: 600; font-size: var(--pf-font-size-md); color: var(--pf-color-on-surface); }
.pf-block :is(.pf-trade-catalog__price, .pf-services__price) :is(ins, .woocommerce-Price-amount) { white-space: nowrap; }
.pf-block :is(.pf-trade-catalog__price, .pf-services__price) ins { color: inherit; text-decoration: none; font-weight: 600; }
.pf-block :is(.pf-trade-catalog__price, .pf-services__price) del { font-size: var(--pf-font-size-sm); font-weight: 400; color: var(--pf-color-muted); }
.pf-block .woocommerce-Price-currencySymbol { font-size: 0.8em; font-weight: 400; }
.pf-block .pf-trade-catalog__card-actions { grid-area: actions; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-end; gap: var(--pf-space-2) var(--pf-space-5); margin: var(--pf-space-2) 0 0; }
.pf-block .pf-block__btn.pf-trade-catalog__book { --pf-color-primary: transparent; --pf-color-on-primary: var(--pf-color-primary-text); min-block-size: 2.75rem; padding-inline: 0; font-weight: 600; font-size: var(--pf-font-size-base); text-decoration: underline 2px; text-underline-offset: 0.45em; box-shadow: none; }
.pf-block :is(.pf-trade-catalog__book-alt, .pf-services__more, .pf-article__more) { display: inline-flex; align-items: center; min-block-size: 2.75rem; font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); text-decoration: underline 1px; text-underline-offset: 0.35em; }
.pf-block .pf-trade-catalog__browse { margin: var(--pf-space-5) 0 0; text-align: start; }
.pf-block .pf-trade-catalog__browse a { display: inline-flex; align-items: center; min-block-size: 2.75rem; font-weight: 600; color: var(--pf-color-primary-text); text-decoration: underline 2px; text-underline-offset: 0.45em; }
.pf-services .pf-services__more { grid-area: actions; justify-self: end; color: var(--pf-color-primary-text); font-weight: 600; }
.pf-block :is(.pf-services__empty, .pf-trade-catalog__empty) { align-items: flex-start; text-align: start; margin-inline: 0; padding: var(--pf-space-6); background-color: var(--pf-color-surface-raised); border-radius: var(--pf-radius-md); max-inline-size: none; }
@media (min-width: 64rem) {
	.pf-block :is(.pf-trade-catalog__card, .pf-services__card) { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) minmax(8rem, auto) minmax(11rem, auto); grid-template-areas: "thumb thumb thumb thumb" "badge badge badge badge" "name text price actions"; column-gap: var(--pf-space-7); padding: var(--pf-space-7) 0; }
	.pf-block :is(.pf-trade-catalog__price, .pf-trade-catalog__card-actions, .pf-services__price) { margin: 0; }
	.pf-block :is(.pf-trade-catalog__price, .pf-services__price) { justify-content: flex-end; }
}

/* 6. Steps band */
.pf-faq .pf-faq__list { max-inline-size: none; margin-inline: 0; gap: 0; }
.pf-faq details.pf-faq__item { border: 0; border-block-end: 1px solid var(--nq-line); border-radius: 0; background: transparent; overflow: visible; }
.pf-faq .pf-faq__q { padding: var(--pf-space-5) 0; gap: var(--pf-space-5); font-family: var(--pf-font-arabic); font-weight: 600; font-size: var(--pf-font-size-md); line-height: 1.45; color: var(--pf-color-on-surface); border-radius: 0; }
.pf-faq .pf-faq__q:focus-visible { outline: 2px solid var(--pf-color-primary-text); outline-offset: 4px; border-radius: var(--pf-radius-sm); }
.pf-faq .pf-faq__icon { --pf-color-primary-text: currentColor; inline-size: 0.875rem; block-size: 0.875rem; }
.pf-faq .pf-faq__icon,
.pf-faq .pf-faq__icon::after { transition: none; }
.pf-faq .pf-faq__item[open] > .pf-faq__q { color: var(--pf-color-primary-text); }
.pf-faq .pf-faq__a { padding: var(--pf-space-2) 0 var(--pf-space-6); max-inline-size: 42rem; font-size: var(--pf-font-size-base); line-height: 1.8; color: var(--pf-color-muted); opacity: 1; }
.pf-faq .pf-faq__a p { margin: 0 0 var(--pf-space-3); }
.pf-faq .pf-faq__a p:last-child { margin-block-end: 0; }
.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-block__title { color: var(--pf-color-on-accent); }
.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__list { counter-reset: nq-step; border-block-start: 1px solid var(--nq-line); }
.pf-faq[style*="background-color:var(--pf-color-accent)"] details.pf-faq__item { counter-increment: nq-step; }
.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__q { flex-wrap: wrap; justify-content: flex-start; padding-block: var(--pf-space-6) var(--pf-space-3); color: var(--pf-color-on-accent); }
.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__q::before { content: counter(nq-step); flex-basis: 100%; margin-block-end: var(--pf-space-4); font-family: var(--pf-font-display); font-weight: 700; font-size: var(--pf-font-size-3xl); line-height: 1; color: var(--nq-glow); font-variant-numeric: tabular-nums; }
.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__item[open] > .pf-faq__q { color: var(--pf-color-on-accent); }
@supports selector(::details-content) {
	.pf-faq[style*="background-color:var(--pf-color-accent)"] details.pf-faq__item::details-content { content-visibility: visible; display: block; }
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__icon { display: none; }
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__q { cursor: default; }
}
@media (min-width: 48rem) {
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--pf-space-7); border-block-start: 0; }
	.pf-faq[style*="background-color:var(--pf-color-accent)"] details.pf-faq__item { border-block-start: 1px solid var(--nq-line); border-block-end: 0; }
}
@media (min-width: 64rem) {
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.pf-faq:not([style*="background-color:var(--pf-color-accent)"]) > .pf-block__container:has(> .pf-block__head) { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: var(--pf-space-9); align-items: start; }
	.pf-faq:not([style*="background-color:var(--pf-color-accent)"]) .pf-block__head { display: block; position: sticky; inset-block-start: var(--pf-space-6); }
	.pf-faq:not([style*="background-color:var(--pf-color-accent)"]) .pf-block__head > .pf-block__subtitle { margin-block-start: var(--pf-space-4); }
	.pf-faq:not([style*="background-color:var(--pf-color-accent)"]) .pf-block__title { font-size: var(--pf-font-size-2xl); }
	.pf-faq:not([style*="background-color:var(--pf-color-accent)"]) .pf-faq__list { border-block-start: 2px solid var(--pf-color-on-surface); }
}

/* 7. Notes, reviews, people, plans */
.pf-block :is(.pf-article__grid, .pf-team__grid, .pf-testimonials__grid, .pf-pricing__grid) { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--pf-space-6) var(--pf-space-7); }
@media (min-width: 48rem) {
	.pf-block :is(.pf-article__grid, .pf-team__grid, .pf-testimonials__grid, .pf-pricing__grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 64rem) {
	.pf-block :is(.pf-article__grid, .pf-team__grid, .pf-pricing__grid) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.pf-block :is(.pf-article__card, .pf-team__card, .pf-testimonials__card, .pf-pricing__card) { --pf-color-surface-raised: var(--pf-color-surface); background: transparent; border: 0; border-block-start: 2px solid var(--pf-color-on-surface); border-radius: 0; box-shadow: none; padding: var(--pf-space-5) 0 0; transform: none; overflow: visible; }
.pf-block :is(.pf-article__card, .pf-pricing__card):hover { box-shadow: none; transform: none; }
.pf-block :is(.pf-trade-catalog__card, .pf-services__card, .pf-article__card):focus-visible { outline: 2px solid var(--pf-color-primary-text); outline-offset: 6px; border-radius: var(--pf-radius-sm); }
.pf-article a.pf-article__card { display: flex; flex-direction: column; gap: var(--pf-space-2); block-size: auto; text-decoration: none; transition: none; }
.pf-article .pf-article__body { padding: 0; gap: var(--pf-space-2); }
.pf-article .pf-article__thumb { aspect-ratio: 16 / 10; border-radius: var(--pf-radius-sm); }
.pf-article .pf-article__date { font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); }
.pf-article .pf-article__title { margin: 0; font-weight: 600; font-size: var(--pf-font-size-lg); line-height: 1.45; color: var(--pf-color-on-surface); text-decoration: underline 1px transparent; text-underline-offset: 0.3em; }
.pf-article .pf-article__card:is(:hover, :focus-visible) .pf-article__title { text-decoration-color: currentColor; }
.pf-article .pf-article__excerpt { font-size: var(--pf-font-size-base); line-height: 1.75; color: var(--pf-color-muted); opacity: 1; }
.pf-article .pf-article__more { align-self: flex-start; color: var(--pf-color-primary-text); }
.pf-testimonials .pf-testimonials__card { display: flex; flex-direction: column; gap: var(--pf-space-3); margin: 0; block-size: auto; }
.pf-testimonials .pf-testimonials__stars { --pf-color-warning: var(--pf-color-on-surface); font-size: var(--pf-font-size-sm); letter-spacing: 0; }
.pf-testimonials .pf-testimonials__quote { font-weight: 500; font-size: var(--pf-font-size-lg); line-height: 1.6; color: var(--pf-color-on-surface); }
.pf-testimonials .pf-testimonials__author { flex-direction: row; flex-wrap: wrap; gap: var(--pf-space-2); font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); }
.pf-testimonials .pf-testimonials__name { font-weight: 600; color: var(--pf-color-on-surface); }
.pf-team .pf-team__card { display: flex; flex-direction: column; align-items: flex-start; gap: var(--pf-space-1); text-align: start; }
.pf-team .pf-team__photo { inline-size: 5rem; block-size: 5rem; border-radius: var(--pf-radius-sm); object-fit: cover; margin: 0 0 var(--pf-space-3); }
.pf-team .pf-team__name { font-weight: 600; font-size: var(--pf-font-size-md); margin: 0; }
.pf-team .pf-team__role { color: var(--pf-color-muted); margin: 0; }
.pf-pricing .pf-pricing__card { display: flex; flex-direction: column; gap: var(--pf-space-2); }
.pf-pricing .pf-pricing__card--featured { border-block-start-color: var(--pf-color-primary); color: var(--pf-color-on-surface); }
.pf-pricing .pf-pricing__name { font-weight: 600; font-size: var(--pf-font-size-md); margin: 0; }
.pf-pricing .pf-pricing__badge { align-self: flex-start; background: transparent; padding: 0; font-weight: 600; font-size: var(--pf-font-size-sm); color: var(--pf-color-primary-text); }
.pf-pricing .pf-pricing__price { font-weight: 700; font-size: var(--pf-font-size-2xl); line-height: 1.2; color: var(--pf-color-on-surface); }
.pf-pricing .pf-pricing__features { list-style: none; padding: 0; margin: 0; gap: 0; }
.pf-pricing .pf-pricing__features li { color: var(--pf-color-muted); line-height: 1.75; }
.pf-pricing .pf-pricing__features li::before { content: none; }

/* 8. Actions */
.pf-block .pf-block__btn { --pf-radius-md: var(--pf-radius-sm); font-family: var(--pf-font-arabic); font-weight: 600; font-size: var(--pf-font-size-base); box-shadow: none; transform: none; transition: background-color var(--pf-duration-base) var(--pf-easing-standard), color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-block .pf-block__btn:hover { box-shadow: none; transform: none; }
.pf-block .pf-block__btn:focus-visible { outline: 2px solid var(--pf-color-primary-text); outline-offset: 3px; box-shadow: none; }
.pf-block .pf-block__btn--primary { min-block-size: 3.5rem; padding-inline: var(--pf-space-7); }
.pf-block .pf-block__btn--primary:active { --pf-color-primary: var(--nq-press); }
@media (hover: hover) {
	.pf-block .pf-block__btn--primary:not(.pf-trade-catalog__book):hover { --pf-color-primary: var(--nq-press); }
	.pf-block .pf-trade-catalog__book:hover { text-decoration-thickness: 3px; }
}
.pf-block .pf-block__btn--ghost { --pf-color-primary: transparent; -webkit-text-fill-color: var(--pf-color-on-surface); border: 0; min-block-size: 2.75rem; padding-inline: 0; justify-content: flex-start; font-weight: 500; text-decoration: underline 1px; text-underline-offset: 0.45em; }
.pf-block[style*="background-color:var(--pf-color-accent)"] .pf-block__btn--ghost { -webkit-text-fill-color: var(--pf-color-on-accent); }
.pf-block .pf-block__btn--ghost:hover { background: transparent; text-decoration-thickness: 2px; }
.pf-cta .pf-cta__inner { align-items: flex-start; text-align: start; }
.pf-cta .pf-cta__title { font-weight: 700; font-size: var(--pf-display-d2); line-height: 1.35; }
.pf-cta .pf-cta__subtitle { color: var(--pf-color-muted); opacity: 1; }

/* 9. Contact */
.pf-contact .pf-contact__layout { gap: var(--pf-space-7); }
.pf-contact .pf-contact__form-wrap { background-color: transparent; border: 0; border-radius: 0; box-shadow: none; padding: 0; max-inline-size: none; }
@media (min-width: 64rem) {
	.pf-contact > .pf-block__container:has(> .pf-block__head) { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-rows: auto 1fr; column-gap: var(--pf-space-9); align-items: start; }
	.pf-contact > .pf-block__container > .pf-block__head { display: block; grid-column: 1; grid-row: 1; }
	.pf-contact > .pf-block__container > .pf-block__head > .pf-block__subtitle { margin-block-start: var(--pf-space-4); }
	.pf-contact > .pf-block__container > .pf-contact__layout { display: contents; }
	.pf-contact .pf-contact__layout > .pf-contact__form-wrap { grid-column: 2; grid-row: 1 / span 2; }
	.pf-contact .pf-contact__layout > .pf-contact__details { grid-column: 1; grid-row: 2; }
}
.pf-block .pf-form { max-inline-size: none; margin-inline: 0; column-gap: var(--pf-space-5); row-gap: var(--pf-space-5); }
.pf-block :is(.pf-form__input, .pf-form__select, .pf-form__textarea) { min-block-size: 3.25rem; padding-inline: var(--pf-space-4); background: var(--pf-color-surface-raised); border: 1px solid var(--pf-color-border); border-radius: var(--pf-radius-sm); font-family: var(--pf-font-arabic); font-size: var(--pf-font-size-base); color: var(--pf-color-on-surface); box-shadow: none; transition: border-color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-block .pf-form__textarea { min-block-size: 8rem; }
.pf-contact .pf-form__field:has(> [type="email"]) { grid-column: 1 / -1; }
.pf-block :is(.pf-form__input, .pf-form__select, .pf-form__textarea):hover { border-color: var(--pf-color-on-surface); }
.pf-block :is(.pf-form__input, .pf-form__select, .pf-form__textarea):focus { border-color: var(--pf-color-on-surface); box-shadow: none; outline: 2px solid var(--pf-color-primary-text); outline-offset: 2px; }
.pf-block .pf-form__label { font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-on-surface); }
.pf-block .pf-form__actions { justify-content: flex-start; align-items: flex-start; }
.pf-block .pf-formnote { background: transparent; border: 0; border-inline-start: 3px solid currentColor; border-radius: 0; padding: var(--pf-space-2) var(--pf-space-4); font-size: var(--pf-font-size-base); }
.pf-contact .pf-contact__details { gap: 0; align-content: start; border-block-start: 2px solid var(--pf-color-on-surface); margin-block-start: var(--pf-space-6); }
.pf-contact .pf-contact__detail { gap: var(--pf-space-1); padding: var(--pf-space-4) 0; border-block-end: 1px solid var(--nq-line); }
.pf-contact .pf-contact__detail-label { font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); }
.pf-contact .pf-contact__detail :is(a, span:not(.pf-contact__detail-label)) { font-weight: 600; font-size: var(--pf-font-size-md); line-height: 1.6; }
.pf-block :is(.pf-contact__detail a, .pf-booking__whatsapp a, a.pf-booking__whatsapp) { color: var(--pf-color-primary-text); text-decoration: underline 1px; text-underline-offset: 0.35em; }
.pf-block :is(.pf-contact__detail a, .pf-booking__whatsapp a, a.pf-booking__whatsapp):is(:hover, :focus-visible) { color: var(--pf-color-on-surface); text-decoration-thickness: 2px; }

/* 10. Trust */
.pf-block .pf-trust__row,
.pf-block .pf-trust__payments { justify-content: flex-start; gap: var(--pf-space-4) var(--pf-space-8); }
.pf-block .pf-trust__payments { margin-block-start: var(--pf-space-5); }
.pf-block .pf-trust__badge { flex-direction: column; align-items: flex-start; background: transparent; border: 0; border-radius: 0; padding: 0; gap: var(--pf-space-1); font-weight: 400; }
.pf-block .pf-trust__dot { display: none; }
.pf-block .pf-trust__badge-key { font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); }
.pf-block .pf-trust__badge-val { font-weight: 600; font-size: var(--pf-font-size-md); letter-spacing: 0; color: var(--pf-color-on-surface); }
.pf-block .pf-trust__pay { background: transparent; border: 0; padding: 0; font-weight: 500; font-size: var(--pf-font-size-sm); color: var(--pf-color-muted); text-transform: none; }
.pf-trust .pf-block__title { font-size: var(--pf-font-size-xl); }
.pf-block :is(.pf-stats__value, .pf-countdown__num) { font-weight: 700; }
.pf-block .pf-servicearea__chip { background: transparent; border: 1px solid var(--pf-color-border); }
.pf-block :is(.pf-gallery__item img, .pf-beforeafter) { border-radius: var(--pf-radius-sm); }

/* 11. Colophon */
footer.pf-footer { --wp--preset--color--surface-raised: var(--pf-color-accent); color: var(--nq-band-ink); border-block-start: 0; }
.pf-footer .wp-block-site-title { display: flex; margin: 0; line-height: 1.3; }
.pf-footer .wp-block-site-title a { font-family: var(--pf-font-display); font-weight: 700; font-size: var(--pf-font-size-lg); color: var(--pf-color-on-accent); text-decoration: none; }
.pf-footer .wp-block-site-tagline { --wp--preset--color--muted: var(--nq-band-ink); font-size: var(--pf-font-size-base); line-height: 1.7; margin: 0; max-inline-size: 26rem; }
.pf-footer nav.wp-block-navigation { color: var(--nq-band-ink); }
.pf-footer .wp-block-navigation ul.wp-block-navigation__container { display: grid; grid-template-columns: repeat(2, max-content); gap: 0 var(--pf-space-8); justify-content: start; }
.pf-footer .wp-block-navigation-item > a.wp-block-navigation-item__content { display: inline-flex; align-items: center; min-block-size: 2.75rem; color: var(--nq-band-ink); text-decoration: none; transition: color var(--pf-duration-base) var(--pf-easing-standard); }
.pf-footer .wp-block-navigation-item > a.wp-block-navigation-item__content:is(:hover, :focus-visible) { color: var(--pf-color-on-accent); text-decoration: underline 1px var(--nq-glow); text-underline-offset: 0.4em; }
.pf-footer :is(a, button):focus-visible { outline: 2px solid var(--nq-glow); outline-offset: 3px; }
footer.pf-footer > p.pf-footer__copyright { --wp--preset--font-size--sm: var(--pf-font-size-sm); --wp--preset--color--muted: var(--nq-band-ink); max-inline-size: var(--wp--style--global--wide-size); margin-block-start: var(--pf-space-7); padding-block-start: var(--pf-space-5); border-block-start: 1px solid var(--nq-band-line); text-align: start; }
@media (min-width: 48rem) {
	footer.pf-footer > .wp-block-group.alignwide { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--pf-space-8); align-items: start; }
}

/* 12. Prose pages */
:is(main.pf-main--post, main.pf-main--blog) > * { max-inline-size: var(--wp--style--global--content-size); }
main.pf-main--post .wp-block-post-title { font-family: var(--pf-font-display); font-weight: 700; font-size: var(--pf-font-size-xl); line-height: 1.35; text-wrap: balance; }
main.pf-main--post .wp-block-post-content { font-size: var(--pf-font-size-base); line-height: var(--pf-line-height-relaxed); }
main.pf-main--post .wp-block-post-content h2 { font-weight: 600; font-size: var(--pf-font-size-lg); }
main.pf-main--post .wp-block-post-content h3 { font-weight: 600; font-size: var(--pf-font-size-md); }
main.pf-main--post .wp-block-post-content a { color: var(--pf-color-primary-text); text-decoration: underline 1px; text-underline-offset: 0.3em; }
@media (min-width: 48rem) {
	:is(main.pf-main--post, main.pf-main--blog) { padding-inline-start: max(var(--wp--style--root--padding-left, 1rem), (100% - var(--wp--style--global--wide-size)) / 2); }
	main.pf-main--post .wp-block-post-title { font-size: var(--pf-display-d2); }
}

/* 13. WooCommerce — no photo: only a sale badge is drawn */
.wp-block-woocommerce-product-collection ul.wc-block-product-template.wc-block-product-template > li.wc-block-product { padding: var(--pf-space-4) 0 0; gap: var(--pf-space-2); background-color: transparent; border: 0; border-block-start: 2px solid var(--pf-color-on-surface); border-radius: 0; }
.wp-block-woocommerce-product-collection ul.wc-block-product-template.wc-block-product-template > li.wc-block-product:hover { box-shadow: none; border-color: var(--pf-color-on-surface); }
.wc-block-product .wc-block-components-product-image:not(:has(img:not(.pf-service-thumb))):not(:has(.wc-block-components-product-sale-badge)),
.pf-product__media:has(.woocommerce-product-gallery--without-images):not(:has(.onsale)), .wc-block-product .wc-block-components-product-image:not(:has(img:not(.pf-service-thumb))) img, .woocommerce-product-gallery--without-images { display: none; }
.wc-block-product .wc-block-components-product-image:not(:has(img:not(.pf-service-thumb))) :is(a, .wc-block-components-product-image__inner-container, .wc-block-components-product-sale-badge) { position: static; inline-size: fit-content; background-color: transparent; }
.pf-product__media:has(.woocommerce-product-gallery--without-images), .pf-product__media:has(.woocommerce-product-gallery--without-images) > * { display: contents; }
.pf-product__layout:has(.woocommerce-product-gallery--without-images) > .pf-product__buy { flex-basis: 100%; max-inline-size: 46rem; }
.pf-product__layout:has(.woocommerce-product-gallery--without-images) { position: relative; column-gap: 0; }
.pf-product__layout:has(.woocommerce-product-gallery--without-images):has(.onsale) > .pf-product__buy { padding-block-start: var(--pf-space-8); }
.pf-product__media:has(.woocommerce-product-gallery--without-images) span.onsale { inset-block-start: 0; inset-inline-start: 0; }
.wc-block-product > .wp-block-post-title { font-weight: 600; font-size: var(--pf-font-size-md); line-height: 1.45; }
.wc-block-product > .wp-block-post-title a { color: var(--pf-color-on-surface); text-decoration: underline 1px transparent; text-underline-offset: 0.3em; }
.wc-block-product > .wp-block-post-title a:is(:hover, :focus-visible) { text-decoration-color: currentColor; }
.wc-block-product .wc-block-components-product-price { font-weight: 600; color: var(--pf-color-on-surface); }
.wc-block-product .wc-block-components-product-price del { font-weight: 400; color: var(--pf-color-muted); }
.wc-block-product .wc-block-components-product-button__button.wp-element-button { justify-content: flex-start; inline-size: auto; min-block-size: 2.75rem; padding-inline: 0; background: transparent; color: var(--pf-color-primary-text); text-decoration: underline 2px; text-underline-offset: 0.45em; }
.wc-block-product .wc-block-components-product-sale-badge { background: transparent; border: 1px solid currentColor; border-radius: var(--pf-radius-pill); color: var(--pf-color-primary-text); }
.pf-category-children .wc-block-product-categories-list--depth-0 > li:not(:has(ul)) { padding: var(--pf-space-2) var(--pf-space-5); background-color: transparent; border: 1px solid var(--pf-color-border); border-radius: var(--pf-radius-pill); }
.pf-category-children .wc-block-product-categories-list--depth-0 > li:not(:has(ul)):hover { box-shadow: none; border-color: var(--pf-color-on-surface); }
.pf-category-children .wc-block-product-categories-list--depth-0 > li:has(ul) { padding: var(--pf-space-3) 0 0; background-color: transparent; border: 0; border-block-start: 1px solid var(--nq-line); border-radius: 0; box-shadow: none; }
.pf-category-children .wc-block-product-categories-list--depth-0 > li > a { font-weight: 500; font-size: var(--pf-font-size-base); }
.wc-block-breadcrumbs .woocommerce-breadcrumb a, .woocommerce-breadcrumb a { text-decoration: underline 1px; text-underline-offset: 0.3em; }
.woocommerce .show-password-input { min-inline-size: 1.75rem; min-block-size: 1.75rem; }
.wc-block-components-product-image img,
.woocommerce ul.products li.product a img { border-radius: var(--pf-radius-sm); }
:is(.wc-block-grid__product-title, .wc-block-components-product-name, .woocommerce-loop-product__title) { font-weight: 600; }
.wc-block-components-button:not(.is-link),
.wp-element-button { border-radius: var(--pf-radius-sm); font-weight: 600; box-shadow: none; }

/* 14. Motion */
@media (prefers-reduced-motion: reduce) {
	.pf-header .wp-block-navigation-item > a.wp-block-navigation-item__content,
	.pf-header :is(.wc-block-customer-account__link, .wc-block-mini-cart .wc-block-mini-cart__button),
	.pf-block :is(.pf-trade-catalog__tab, .pf-trade-catalog__name, .pf-services__name, .pf-block__btn, .pf-form__input, .pf-form__select, .pf-form__textarea),
	.pf-footer .wp-block-navigation-item > a.wp-block-navigation-item__content { transition: none; }
}

/* 15. Dark scheme */
html[data-pf-scheme="dark"] :is(.pf-hero__media, .pf-block__card) img { filter: brightness(0.92); }

/* 16. Phone and tablet */
@media (max-width: 47.99rem) {
	.pf-block .pf-block__btn--primary:not(.pf-trade-catalog__book) { inline-size: 100%; }
	.pf-hero .pf-hero__actions { flex-direction: column; align-items: stretch; }
	.pf-hero .pf-hero__actions .pf-block__btn--ghost { justify-content: center; }
	.pf-hero .pf-hero__subtitle { font-size: var(--pf-font-size-base); }
	.pf-block :is(.pf-trade-catalog__name, .pf-services__name) { font-size: var(--pf-font-size-md); }
	.pf-block :is(.pf-trade-catalog__card, .pf-services__card) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "thumb" "badge" "name" "text" "price" "actions"; }
	.pf-block :is(.pf-trade-catalog__card-actions, .pf-services__more) { justify-content: flex-start; justify-self: start; margin: 0; }
	.pf-faq .pf-faq__q { font-size: var(--pf-font-size-base); }
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__q { flex-wrap: nowrap; align-items: baseline; gap: var(--pf-space-4); padding-block: var(--pf-space-5) var(--pf-space-2); font-size: var(--pf-font-size-md); }
	.pf-faq[style*="background-color:var(--pf-color-accent)"] .pf-faq__q::before { flex-basis: auto; margin: 0; font-size: var(--pf-font-size-xl); }
}

/* 17. Forced colours */
@media (forced-colors: active) {
	.pf-hero h1.pf-hero__title,
	.pf-hero h1.pf-hero__title::first-line { color: CanvasText; }
	.pf-block .pf-block__btn--primary { border: 1px solid ButtonText; }
	.pf-block .pf-block__btn--ghost { -webkit-text-fill-color: LinkText; }
	.pf-block .pf-trade-catalog__tab:is(.is-active, [aria-selected="true"]) { border-width: 3px; }
	.pf-block :is(.pf-form__input, .pf-form__select, .pf-form__textarea) { border-color: CanvasText; }
}
/* Purchase keys = this theme's key (engine --pf-buy-* hooks) */
:root{--pf-buy-font:var(--pf-font-arabic);--pf-buy-weight:600;--pf-buy-radius:var(--pf-radius-sm);--pf-buy-shadow:none}
