/**
 * WpExperts Hub — design system.
 *
 * Tokens come from theme.json (--wp--preset--*); the short aliases below keep
 * component rules readable. Components are prefixed .wpxh-*.
 *
 * Sections: 1 tokens/base · 2 layout · 3 buttons · 4 header · 5 footer ·
 * 6 shared components · 7 home · 8 shop · 9 product · 10 pages · 11 motion.
 */

/* 1 ─ Tokens & base ─────────────────────────────────────────────────────── */
:root {
	--navy: #0F172A;
	--navy-2: #111C33;
	--navy-3: #0B1222;
	--ink: #334155;
	--ink-2: #475569;
	--muted: #64748B;
	--subtle: #94A3B8;
	--line-strong: #CBD5E1;
	--line: #E2E8F0;
	--surface-2: #F1F5F9;
	--surface: #F8FAFC;
	--white: #FFFFFF;
	--blue: #2563EB;
	--blue-dark: #1D4ED8;
	--blue-light: #60A5FA;
	--blue-300: #93C5FD;
	--blue-200: #BFDBFE;
	--blue-100: #DBEAFE;
	--blue-50: #EFF6FF;
	--cyan: #06B6D4;
	--cyan-light: #22D3EE;
	--cyan-300: #67E8F9;
	--cyan-dark: #0E7490;
	--cyan-50: #ECFEFF;
	--amber: #F59E0B;
	--mono: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
	--sans: Geist, ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
	--gutter: clamp(20px, 4vw, 40px);
	--container: 1280px;
	--header-h: 72px;
	--r-sm: 8px;
	--r-md: 10px;
	--r-lg: 14px;
	--r-xl: 18px;
	--r-2xl: 22px;
	--shadow-card: 0 1px 2px rgba(15, 23, 42, .04), 0 24px 48px -32px rgba(15, 23, 42, .18);
	--shadow-lift: 0 18px 40px -20px rgba(37, 99, 235, .35);
	--grad-brand: linear-gradient(135deg, #2563EB 0%, #06B6D4 100%);
	--grad-text: linear-gradient(135deg, #60A5FA 0%, #22D3EE 100%);
	--grad-tint: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
	--grad-tint-cyan: linear-gradient(135deg, #ECFEFF 0%, #E0F2FE 100%);
	--dot-bg: radial-gradient(rgba(37, 99, 235, .14) 1px, transparent 1px);
	--ease: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 16px); }
body {
	margin: 0;
	background: var(--surface);
	color: var(--navy);
	font-family: var(--sans);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
img, svg, video { max-width: 100%; height: auto; }
svg.wpxh-i, svg.wpxh-brand { flex: none; display: inline-block; vertical-align: middle; }
a { color: var(--blue); text-decoration: none; }
a:hover { color: var(--blue-dark); }
button { font-family: inherit; }
:where(h1, h2, h3, h4, p) { margin: 0; }
.wpxh-mono, .wpxh-mono-label { font-family: var(--mono); }
.wpxh-mono-label { font-size: 11.5px; font-weight: 500; color: var(--muted); letter-spacing: .02em; }

:focus-visible { outline: 3px solid var(--blue-light); outline-offset: 2px; border-radius: 4px; }
.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
	width: 1px; word-wrap: normal !important;
}
.skip-link.screen-reader-text:focus {
	clip: auto; clip-path: none; height: auto; width: auto; z-index: 100000;
	left: 12px; top: 12px; padding: 12px 18px; background: var(--white); color: var(--navy);
	border-radius: var(--r-md); box-shadow: var(--shadow-card); font-weight: 600;
}
::selection { background: var(--blue-100); color: var(--navy); }

/* 2 ─ Layout ────────────────────────────────────────────────────────────── */
.wp-site-blocks > * { margin-block: 0; }
.wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; }
.wpxh-main { flex: 1 0 auto; margin: 0; }
.wpxh-main > *,
.wpxh-canvas > *,
.wpxh-main .entry-content > * { margin-block: 0; }
.wpxh-container,
.wpxh-sec__in {
	width: 100%;
	max-width: var(--container);
	margin-inline: auto;
	padding-inline: var(--gutter);
}
.wpxh-sec { position: relative; overflow: hidden; }
.wpxh-sec > .wpxh-sec__in { position: relative; z-index: 1; }
.wpxh-sec--pad { padding-block: clamp(72px, 9vw, 120px); }
.wpxh-sec--pad-lg { padding-block: clamp(72px, 9vw, 128px); }
.wpxh-sec--light { background: var(--surface); }
.wpxh-sec--white { background: var(--white); }
.wpxh-sec--border { border-top: 1px solid var(--line); }
.wpxh-sec--dark { background: var(--navy); color: var(--white); }
.wpxh-sec--dark :where(h1, h2, h3, h4) { color: var(--white); }

/* Decorative backgrounds (applied as section modifiers). */
.wpxh-bg-grid::before,
.wpxh-bg-dots::before,
.wpxh-bg-glow::after { content: ""; position: absolute; inset: 0; pointer-events: none; }
.wpxh-bg-grid::before {
	background-image: linear-gradient(rgba(148, 163, 184, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(148, 163, 184, .07) 1px, transparent 1px);
	background-size: 56px 56px;
	-webkit-mask-image: radial-gradient(ellipse 80% 70% at 70% 40%, #000 30%, transparent 80%);
	mask-image: radial-gradient(ellipse 80% 70% at 70% 40%, #000 30%, transparent 80%);
}
.wpxh-bg-grid.is-full::before { -webkit-mask-image: none; mask-image: none; background-image: linear-gradient(rgba(148, 163, 184, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(148, 163, 184, .06) 1px, transparent 1px); }
.wpxh-bg-dots::before {
	background-image: radial-gradient(#E2E8F0 1px, transparent 1px);
	background-size: 24px 24px; opacity: .7;
	-webkit-mask-image: linear-gradient(#000, transparent 60%);
	mask-image: linear-gradient(#000, transparent 60%);
}
.wpxh-bg-glow::after { background: radial-gradient(45% 55% at 78% 38%, rgba(37, 99, 235, .32), transparent 70%), radial-gradient(30% 35% at 92% 85%, rgba(6, 182, 212, .16), transparent 70%); }
.wpxh-bg-glow--woo::after { background: radial-gradient(40% 50% at 15% 100%, rgba(6, 182, 212, .18), transparent 70%), radial-gradient(40% 50% at 90% 0%, rgba(37, 99, 235, .3), transparent 70%); }
.wpxh-bg-glow--right::after { background: radial-gradient(40% 70% at 90% 50%, rgba(37, 99, 235, .3), transparent 70%); }

/* Section heading group */
.wpxh-eyebrow {
	font: 500 12.5px/1 var(--mono) !important;
	color: var(--blue) !important;
	letter-spacing: .02em;
	text-transform: uppercase;
	margin: 0;
}
.wpxh-sec--dark .wpxh-eyebrow { color: var(--cyan-light) !important; }
.wpxh-sechdr { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px; }
.wpxh-sechdr__txt { display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.wpxh-sechdr__txt > * { margin: 0 !important; }
.wpxh-h2 { font-size: clamp(32px, 3.8vw, 48px) !important; line-height: 1.08 !important; letter-spacing: -.035em !important; text-wrap: balance; }
.wpxh-lead { font-size: 17px; line-height: 1.6; color: var(--muted); text-wrap: pretty; }
.wpxh-sec--dark .wpxh-lead { color: var(--subtle); }
.wpxh-stack-lg { display: flex; flex-direction: column; gap: clamp(40px, 5vw, 48px); }
.wpxh-stack-lg > * { margin: 0 !important; }
/* The block editor's flow layout puts a 20px top margin on every sibling after the first. Grid/flex
   containers space their items with gap, so that margin only knocks items out of line (the second
   card in a row sat 20px low). */
.wp-block-group.wpxh-hero__grid > *, .wp-block-group.wpxh-woo__grid > *, .wp-block-group.wpxh-svcards > *, .wp-block-group.wpxh-sechdr > *, .wp-block-post-template.wpxh-postgrid > * { margin-block-start: 0; }
/* Keep a hyphenated compound ("Real-World", "Brute-Force") on one line in big headings. */
.wpxh-nobr { white-space: nowrap; }

/* 3 ─ Buttons ───────────────────────────────────────────────────────────── */
.wpxh-btn,
.wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	min-height: 48px; padding: 0 22px;
	border: 1px solid transparent; border-radius: var(--r-md);
	background: var(--blue); color: var(--white);
	font: 600 15px/1.2 var(--sans); text-decoration: none; white-space: nowrap;
	cursor: pointer;
	transition: background-color .2s, border-color .2s, color .2s, transform .2s var(--ease), box-shadow .2s;
}
.wpxh-btn:hover, .wp-block-button__link:hover { background: var(--blue-dark); color: var(--white); transform: translateY(-1px); }
.wpxh-btn:active { transform: none; }
.wpxh-btn--lg, .wpxh-btns--lg .wp-block-button__link { min-height: 52px; padding: 0 24px; font-size: 16px; }
.wpxh-btn--sm { min-height: 42px; padding: 0 14px; font-size: 14px; border-radius: var(--r-sm); gap: 7px; }
.wpxh-btn--xs { min-height: 38px; padding: 0 12px; font-size: 13.5px; font-weight: 500; border-radius: 9px; gap: 7px; }
.wpxh-btn--glow, .wpxh-btns--glow .wp-block-button:first-child .wp-block-button__link { box-shadow: 0 8px 24px -8px rgba(37, 99, 235, .7); }
.wpxh-btn--outline,
.wp-block-button.is-style-outline .wp-block-button__link {
	background: var(--white); color: var(--navy); border-color: var(--line-strong);
}
.wpxh-btn--outline:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--white); border-color: var(--blue); color: var(--blue-dark); }
.wpxh-btn--soft { background: var(--white); color: var(--blue-dark); border-color: var(--blue-300); }
.wpxh-btn--soft:hover { background: var(--blue-50); color: var(--blue-dark); }
.wpxh-btn--white { background: var(--white); color: var(--navy); border-color: var(--line); }
.wpxh-btn--white:hover { background: var(--white); border-color: var(--line-strong); color: var(--navy); }
.wpxh-btn--ghost { background: transparent; color: var(--ink); }
.wpxh-btn--ghost:hover { background: var(--surface-2); color: var(--navy); }
.wpxh-btn--outline-dark,
.wp-block-button.is-style-ghost-dark .wp-block-button__link {
	background: transparent; color: var(--white); border-color: rgba(148, 163, 184, .35);
}
.wpxh-btn--outline-dark:hover,
.wp-block-button.is-style-ghost-dark .wp-block-button__link:hover { background: rgba(148, 163, 184, .1); border-color: rgba(203, 213, 225, .6); color: var(--white); }
.wp-block-button.is-style-white .wp-block-button__link { background: var(--white); color: var(--navy); }
.wp-block-button.is-style-white .wp-block-button__link:hover { background: var(--blue-50); color: var(--navy); }
.wp-block-button.is-style-white-blue .wp-block-button__link { background: var(--white); color: var(--blue-dark); }
.wp-block-button.is-style-ghost-light .wp-block-button__link { background: transparent; color: var(--white); border-color: rgba(255, 255, 255, .55); }
.wp-block-button.is-style-ghost-light .wp-block-button__link:hover { background: rgba(255, 255, 255, .12); color: var(--white); }
.wp-block-button.is-style-text .wp-block-button__link { background: none; border: 0; padding: 0; min-height: 0; color: var(--blue); }
.wp-block-button.is-style-text .wp-block-button__link:hover { transform: none; color: var(--blue-dark); }
.wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.wp-block-buttons > .wp-block-button { margin: 0; }
.wpxh-btnrow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.wpxh-link { font-size: 15px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; }
.wpxh-iconbtn {
	width: 40px; height: 40px; border-radius: 9px; border: 0; background: transparent; color: #CBD5E1;
	display: inline-grid; place-items: center; cursor: pointer; position: relative;
	transition: background-color .2s, color .2s;
}
.wpxh-iconbtn:hover, .wpxh-iconbtn[aria-expanded="true"] { background: rgba(148, 163, 184, .12); color: var(--white); }
.wpxh-iconbtn--light { color: var(--ink); border: 1px solid var(--line); background: var(--white); }
.wpxh-iconbtn--light:hover { background: var(--surface); color: var(--navy); }

/* 4 ─ Header ────────────────────────────────────────────────────────────── */
.wpxh-header-part { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 50; }
.wpxh-header {
	background: rgba(15, 23, 42, .92);
	-webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(148, 163, 184, .16);
	color: var(--white);
}
.wpxh-header__inner {
	max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter);
	height: var(--header-h); display: flex; align-items: center; gap: clamp(8px, 2vw, 24px);
}
.wpxh-logo { display: inline-flex; align-items: center; gap: clamp(8px, 2vw, 11px); color: var(--white); flex: none; min-width: 0; }
.wpxh-logo:hover { color: var(--white); }
.wpxh-logo__mark { width: clamp(30px, 8vw, 38px); height: auto; display: block; }
.wpxh-logo__word { font-size: clamp(18px, 4.8vw, 22px); font-weight: 700; letter-spacing: -.035em; line-height: 1; color: var(--white); white-space: nowrap; }
/* Wordmark: heavy "WP", light "Experts", gradient "Hub" with an underline. */
.wpxh-logo__wp { font-weight: 800; }
.wpxh-logo__ex { font-weight: 300; }
.wpxh-logo__hub { position: relative; font-weight: 700; background: linear-gradient(135deg, var(--blue-light), var(--cyan-light)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.wpxh-logo__hub::after { content: ""; position: absolute; left: 1px; right: 1px; bottom: -6px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, var(--blue), var(--cyan)); }
.wpxh-logo__word.is-light { color: var(--navy); }
.wpxh-logo__word.is-light .wpxh-logo__hub { background-image: linear-gradient(135deg, var(--blue), var(--cyan)); }
.wpxh-logo:hover .wpxh-logo__hub::after { background: linear-gradient(90deg, var(--blue-light), var(--cyan-light)); }
.wpxh-header__sep { width: 1px; height: 26px; background: rgba(148, 163, 184, .25); flex: none; }
.wpxh-nav { flex: 1; min-width: 0; }
.wpxh-nav ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 4px; }
.wpxh-nav a {
	display: block; padding: 8px 10px; border-radius: var(--r-sm);
	font-size: 14.5px; font-weight: 500; color: #CBD5E1; white-space: nowrap;
	transition: color .2s, background-color .2s;
}
.wpxh-nav a:hover, .wpxh-nav a[aria-current="page"] { color: var(--white); background: rgba(148, 163, 184, .12); }
.wpxh-header__actions { display: flex; align-items: center; gap: 4px; flex: none; margin-left: auto; }
.wpxh-header__cta { margin-left: 10px; min-height: 40px; padding: 0 18px; font-size: 14.5px; border-radius: 9px; }
.wpxh-cartlink__count {
	position: absolute; top: 5px; right: 3px; min-width: 16px; height: 16px; padding: 0 4px;
	border-radius: 8px; background: var(--cyan); color: var(--navy);
	font: 600 11px/16px var(--mono); text-align: center;
}
.wpxh-cartlink__count[hidden] { display: none; }
.wpxh-burger {
	display: none; width: 44px; height: 44px; border-radius: var(--r-md);
	border: 1px solid rgba(148, 163, 184, .25); background: transparent; cursor: pointer;
	flex-direction: column; align-items: center; justify-content: center; gap: 5px;
}
.wpxh-burger span { width: 18px; height: 2px; border-radius: 1px; background: var(--white); transition: transform .25s, opacity .2s; }
.wpxh-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.wpxh-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.wpxh-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
/* Header search panel */
.wpxh-header__search-close { display: none; }
.wpxh-header__search-toggle[aria-expanded="true"] .wpxh-header__search-open { display: none; }
.wpxh-header__search-toggle[aria-expanded="true"] .wpxh-header__search-close { display: inline-grid; }
.wpxh-header__search-toggle > span { place-items: center; }
.wpxh-header__search-open { display: inline-grid; }
.wpxh-searchbar { border-top: 1px solid rgba(148, 163, 184, .16); background: linear-gradient(180deg, rgba(15, 23, 42, .35), rgba(15, 23, 42, 0)); }
.wpxh-searchbar:not([hidden]) .wpxh-searchbar__inner { animation: wpxh-search-in .22s ease both; }
@keyframes wpxh-search-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.wpxh-searchbar__inner { max-width: 820px; margin: 0 auto; padding: 16px var(--gutter) 14px; display: flex; flex-direction: column; gap: 12px; }
.wpxh-searchbar__form { display: flex; align-items: center; gap: 10px; margin: 0; }
.wpxh-searchbar__field { position: relative; flex: 1; min-width: 0; display: flex; align-items: center; }
.wpxh-searchbar__field > svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--subtle); pointer-events: none; transition: color .2s; }
.wpxh-searchbar__field:focus-within > svg { color: var(--blue-light); }
.wpxh-searchbar input[type="search"] {
	flex: 1; width: 100%; min-width: 0; height: 50px; padding: 0 64px 0 46px; border-radius: 12px;
	border: 1px solid rgba(148, 163, 184, .28); background: rgba(15, 23, 42, .65); color: var(--white); font: 400 16px var(--sans);
	transition: border-color .2s, box-shadow .2s, background-color .2s; -webkit-appearance: none; appearance: none;
}
.wpxh-searchbar input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.wpxh-searchbar input[type="search"]:focus { outline: 0; border-color: var(--blue-light); background: rgba(15, 23, 42, .85); box-shadow: 0 0 0 4px rgba(37, 99, 235, .25); }
.wpxh-searchbar input::placeholder { color: var(--subtle); }
.wpxh-searchbar__kbd { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); padding: 3px 7px; border-radius: 6px; border: 1px solid rgba(148, 163, 184, .3); background: rgba(148, 163, 184, .08); font: 500 11px/1.2 var(--mono); color: var(--subtle); pointer-events: none; }
.wpxh-searchbar__submit.wpxh-btn { height: 50px; padding: 0 20px; border-radius: 12px; }
.wpxh-searchbar__close { flex: none; width: 50px; height: 50px; display: grid; place-items: center; border-radius: 12px; border: 1px solid rgba(148, 163, 184, .25); background: rgba(148, 163, 184, .06); color: #CBD5E1; cursor: pointer; transition: background-color .2s, color .2s, border-color .2s; }
.wpxh-searchbar__close:hover { background: rgba(148, 163, 184, .16); border-color: rgba(148, 163, 184, .4); color: var(--white); }
.wpxh-searchbar__close:focus-visible, .wpxh-searchbar__submit:focus-visible { outline: 2px solid var(--blue-light); outline-offset: 2px; }
.wpxh-searchbar__popular { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font-size: 13px; }
.wpxh-searchbar__popular span { font: 500 11px var(--mono); text-transform: uppercase; letter-spacing: .06em; color: var(--subtle); margin-right: 2px; }
.wpxh-searchbar__popular a { padding: 5px 11px; border-radius: 999px; border: 1px solid rgba(148, 163, 184, .22); background: rgba(148, 163, 184, .06); color: #CBD5E1; transition: border-color .2s, color .2s, background-color .2s; }
.wpxh-searchbar__popular a:hover { border-color: var(--blue-light); background: rgba(37, 99, 235, .16); color: var(--white); }
@media (max-width: 600px) {
	.wpxh-searchbar__inner { padding: 12px var(--gutter); }
	.wpxh-searchbar__kbd, .wpxh-searchbar__submit { display: none; }
	.wpxh-searchbar input[type="search"] { padding-right: 14px; }
	.wpxh-searchbar__popular a { font-size: 12.5px; }
}
@media (prefers-reduced-motion: reduce) {
	.wpxh-searchbar:not([hidden]) .wpxh-searchbar__inner { animation: none; }
}
.wpxh-mobile { border-top: 1px solid rgba(148, 163, 184, .18); padding: 12px var(--gutter) 24px; max-height: calc(100vh - var(--header-h)); overflow-y: auto; }
.wpxh-mobile ul { list-style: none; margin: 0; padding: 0; }
.wpxh-mobile a:not(.wpxh-btn) { display: block; padding: 14px 4px; font-size: 17px; font-weight: 500; color: var(--white); border-bottom: 1px solid rgba(148, 163, 184, .12); }
.wpxh-mobile__ctas { display: flex; gap: 10px; margin-top: 18px; }
.wpxh-mobile__ctas .wpxh-btn { flex: 1; }
@media (max-width: 1023px) {
	.wpxh-nav, .wpxh-header__sep, .wpxh-header__cta { display: none; }
	.wpxh-burger { display: flex; }
}
@media (min-width: 1024px) { .wpxh-mobile { display: none !important; } }
@media (max-width: 479px) { .wpxh-hide-sm { display: none; } }

/* 5 ─ Footer ────────────────────────────────────────────────────────────── */
.wpxh-footer { background: var(--navy); color: var(--subtle); }
.wpxh-footer__inner { max-width: var(--container); margin: 0 auto; padding: 72px var(--gutter) 32px; display: flex; flex-direction: column; gap: 56px; }
.wpxh-footer__top { display: flex; flex-wrap: wrap; gap: 40px 48px; }
.wpxh-footer__brand { flex: 1 1 260px; max-width: 360px; display: flex; flex-direction: column; gap: 16px; }
.wpxh-footer__brand p { font-size: 14.5px; line-height: 1.6; }
.wpxh-footer__mail { display: inline-flex; align-items: center; gap: 8px; color: #CBD5E1; font-size: 14.5px; }
.wpxh-footer__mail:hover { color: var(--white); }
.wpxh-footer__cols { flex: 3 1 520px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 128px), 1fr)); gap: 32px 24px; }
.wpxh-footer__title { margin: 0; font: 500 12px var(--mono); color: var(--white); letter-spacing: .02em; text-transform: uppercase; margin-bottom: 14px; }
.wpxh-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.wpxh-footer a:not(.wpxh-logo) { color: var(--subtle); font-size: 14.5px; }
.wpxh-footer a:not(.wpxh-logo):hover { color: var(--white); }
.wpxh-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; padding-top: 24px; border-top: 1px solid rgba(148, 163, 184, .16); font-size: 13.5px; }
.wpxh-footer__legal { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 20px; }
.wpxh-footer__legal a { font-size: 13.5px !important; }

/* 6 ─ Shared components ─────────────────────────────────────────────────── */
.wpxh-kind {
	display: inline-flex; align-items: center; gap: 6px; align-self: flex-start;
	padding: 5px 10px; border-radius: 7px; background: rgba(255, 255, 255, .8); border: 1px solid var(--blue-100);
	font: 500 11.5px var(--mono); color: var(--blue-dark);
}
.wpxh-kind i { width: 6px; height: 6px; border-radius: 2px; background: var(--blue); }
.wpxh-kind--lg { padding: 6px 12px; border-radius: var(--r-sm); font-size: 12.5px; }
.wpxh-flag { padding: 4px 9px; border-radius: 6px; background: var(--navy); color: var(--white); font: 500 11px var(--mono); }
.wpxh-flag--free { background: var(--white); color: var(--cyan-dark); }
.wpxh-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.wpxh-tag { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 4px 8px; border-radius: 6px; border: 1px solid var(--line); font: 500 11.5px var(--mono); color: var(--ink); }
.wpxh-tag--soft { padding: 5px 10px; background: var(--surface); font-size: 12px; }
.wpxh-chips { display: flex; gap: 10px; align-items: center; }
.wpxh-chip {
	width: var(--chip, 38px); height: var(--chip, 38px); border-radius: 50%;
	background: var(--white); box-shadow: 0 6px 14px -8px rgba(15, 23, 42, .3);
	display: inline-grid; place-items: center; overflow: hidden; flex: none; color: var(--blue);
}
.wpxh-chip--wide { width: calc(var(--chip, 38px) * 1.52); border-radius: 999px; }
.wpxh-chip--square { border-radius: var(--r-md); }
.wpxh-tick { flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--blue); color: var(--white); display: inline-grid; place-items: center; }
.wpxh-ticklist, .wpxh-speclist { list-style: none; margin: 0; padding: 0; }
.wpxh-dotlist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px 24px; }
.wpxh-dotlist li { display: flex; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--ink); }
.wpxh-dotlist li::before { content: ""; flex: none; margin-top: 7px; width: 6px; height: 6px; border-radius: 2px; background: var(--blue); }
.wpxh-dotlist.is-cyan li::before { background: var(--cyan); }
.wpxh-price { font-size: 22px; font-weight: 700; letter-spacing: -.03em; color: var(--navy); display: inline-flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.wpxh-price del { font-size: .7em; color: var(--subtle); font-weight: 500; }
.wpxh-price ins { text-decoration: none; }
.wpxh-price__from { font-size: 13px; font-weight: 500; color: var(--muted); letter-spacing: 0; }
.wpxh-price--free { color: var(--cyan-dark); }
.wpxh-status { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 6px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.wpxh-status i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.wpxh-status--blue { background: var(--blue-50); color: var(--blue-dark); }
.wpxh-status--amber { background: rgba(245, 158, 11, .15); color: #FCD34D; }
.wpxh-mono-badge { font: 500 11px var(--mono); padding: 3px 7px; border-radius: 5px; background: var(--surface-2); color: var(--ink-2); }
.wpxh-dots { display: inline-flex; gap: 6px; }
.wpxh-dots i { width: 10px; height: 10px; border-radius: 50%; background: var(--line-strong); }
.wpxh-dots.is-color i:nth-child(1) { background: #F87171; }
.wpxh-dots.is-color i:nth-child(2) { background: #FBBF24; }
.wpxh-dots.is-color i:nth-child(3) { background: #34D399; }
.wpxh-emoji { font-size: 20px; line-height: 1; }

/* Breadcrumbs */
.wpxh-crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.wpxh-crumbs li { display: inline-flex; align-items: center; gap: 8px; }
.wpxh-crumbs--mono { font: 500 12.5px var(--mono); color: var(--muted); }
.wpxh-crumbs--mono li + li::before { content: "/"; color: var(--subtle); }
.wpxh-crumbs--mono a { color: var(--muted); padding: 10px 0; margin: -10px 0; }
.wpxh-crumbs--mono a:hover { color: var(--blue); }
.wpxh-crumbs--mono [aria-current] { color: var(--navy); }
.wpxh-crumbs--pill { display: inline-flex; padding: 8px 14px; border-radius: var(--r-md); background: var(--white); border: 1px solid var(--line); font-size: 13px; color: var(--muted); }
.wpxh-crumbs--pill li + li::before { content: "›"; color: var(--line-strong); }
.wpxh-crumbs--pill a { color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
.wpxh-crumbs--pill li:first-child a { color: var(--blue); font-weight: 500; }
.wpxh-crumbs--pill [aria-current] { color: var(--navy); font-weight: 500; }

/* Breadcrumb (one component site-wide: wpxh_breadcrumbs()) */
.wpxh-bc { display: flex; min-width: 0; max-width: 100%; }
.wpxh-bc__list { list-style: none; margin: 0; padding: 4px 10px 4px 4px; display: inline-flex; align-items: center; max-width: 100%; border: 1px solid var(--line); border-radius: 999px; background: rgba(255, 255, 255, .78); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: 0 1px 2px rgba(15, 23, 42, .05); font-size: 13.5px; line-height: 20px; color: var(--muted); white-space: nowrap; overflow-x: auto; scrollbar-width: none; }
.wpxh-bc__list::-webkit-scrollbar { display: none; }
.wpxh-bc__item { display: inline-flex; align-items: center; min-width: 0; flex: none; }
.wpxh-bc__item[aria-current] { flex: 0 1 auto; min-width: 0; }
.wpxh-bc__sep { display: inline-flex; margin: 0 1px; color: var(--line-strong); }
.wpxh-bc__sep svg { width: 14px; height: 14px; }
.wpxh-bc__link, .wpxh-bc__text { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 999px; color: var(--muted); text-decoration: none; transition: background-color .15s ease, color .15s ease; }
.wpxh-bc__link svg, .wpxh-bc__text svg { flex: none; color: var(--blue); }
.wpxh-bc__link:hover { color: var(--blue); background: var(--blue-50); }
.wpxh-bc__link:focus-visible { outline: 2px solid var(--blue); outline-offset: 1px; }
.wpxh-bc__current { display: block; padding: 4px 6px 4px 9px; font-weight: 600; color: var(--navy); max-width: 44ch; overflow: hidden; text-overflow: ellipsis; }
.wpxh-bc.is-dark .wpxh-bc__list { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); box-shadow: none; color: rgba(226, 232, 240, .8); }
.wpxh-bc.is-dark .wpxh-bc__link, .wpxh-bc.is-dark .wpxh-bc__text { color: rgba(226, 232, 240, .8); }
.wpxh-bc.is-dark .wpxh-bc__link svg { color: #67E8F9; }
.wpxh-bc.is-dark .wpxh-bc__link:hover { color: var(--white); background: rgba(255, 255, 255, .1); }
.wpxh-bc.is-dark .wpxh-bc__link:focus-visible { outline-color: #67E8F9; }
.wpxh-bc.is-dark .wpxh-bc__sep { color: rgba(148, 163, 184, .55); }
.wpxh-bc.is-dark .wpxh-bc__current { color: var(--white); }
@media (max-width: 600px) {
	/* Phones: Home as an icon only, and a shorter current page. */
	.wpxh-bc__item:first-child .wpxh-bc__link span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.wpxh-bc__item:first-child .wpxh-bc__link { padding: 6px 8px; }
	.wpxh-bc__current { max-width: 22ch; }
}
@media print { .wpxh-bc { display: none; } }

/* Segmented tabs */
.wpxh-segment { display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 4px; background: var(--white); border: 1px solid var(--line); border-radius: 11px; }
.wpxh-segment button {
	min-height: 36px; padding: 0 14px; border: 0; border-radius: var(--r-sm);
	font: 500 14px var(--sans); cursor: pointer; background: transparent; color: var(--ink);
	transition: background-color .2s, color .2s;
}
.wpxh-segment button:hover { background: var(--surface-2); }
.wpxh-segment button[aria-selected="true"] { background: var(--navy); color: var(--white); }

/* "Window" mock with checks (shop cards, product hero fallback) */
.wpxh-mock { position: relative; flex: 1 1 240px; min-width: 0; max-width: 340px; margin: 0 auto; padding: 28px 12px 12px; }
.wpxh-mock__tile { position: absolute; z-index: 1; height: 44px; border-radius: 12px; background: var(--white); box-shadow: 0 10px 24px -12px rgba(15, 23, 42, .35); display: grid; place-items: center; overflow: hidden; color: var(--blue); }
.wpxh-mock__tile--a { top: 0; left: 8%; width: 44px; }
.wpxh-mock__tile--b { top: -10px; left: 40%; width: 70px; }
.wpxh-mock__tile--c { top: 4px; right: 4%; width: 42px; height: 42px; }
.wpxh-mock__screen { position: relative; margin-top: 30px; background: var(--white); border-radius: 12px; border: 6px solid #1E3A8A; box-shadow: 0 24px 40px -20px rgba(30, 58, 138, .55); overflow: hidden; }
.wpxh-mock__dots { display: flex; gap: 4px; padding: 8px 10px; border-bottom: 1px solid var(--blue-50); }
.wpxh-mock__dots i { width: 6px; height: 6px; border-radius: 50%; background: var(--blue-300); }
.wpxh-mock__rows { padding: 12px 14px; display: flex; flex-direction: column; gap: 9px; }
.wpxh-mock__row { display: flex; align-items: center; gap: 8px; font-size: 11.5px; color: var(--ink); }
.wpxh-mock__row span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wpxh-mock__row .wpxh-tick { width: 14px; height: 14px; border-radius: 4px; }
.wpxh-mock__base { height: 8px; margin: 0 -6%; border-radius: 0 0 10px 10px; background: #1E3A8A; opacity: .85; }

/* 7 ─ Home ──────────────────────────────────────────────────────────────── */
/* Hero */
.wpxh-hero { background: var(--navy); color: var(--white); }
.wpxh-hero__grid {
	padding-block: clamp(56px, 8vw, 104px) clamp(64px, 8vw, 112px);
	display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 470px), 1fr));
	gap: clamp(48px, 6vw, 72px); align-items: center;
}
.wpxh-hero__copy { display: flex; flex-direction: column; gap: 28px; max-width: 600px; animation: wpxh-rise .7s var(--ease) both; }
.wpxh-hero__copy > * { margin: 0 !important; }
.wpxh-badge {
	display: inline-flex; align-items: center; gap: 10px; align-self: flex-start;
	padding: 6px 12px 6px 6px; border: 1px solid rgba(148, 163, 184, .22); border-radius: var(--r-sm);
	background: rgba(15, 23, 42, .6); font: 500 12.5px/1.2 var(--mono); color: var(--subtle);
}
.wpxh-badge b { padding: 3px 7px; border-radius: 5px; background: rgba(6, 182, 212, .14); color: var(--cyan-300); font-weight: 500; font-size: 11.5px; }
.wpxh-hero__title { font-size: clamp(40px, 5.4vw, 70px) !important; line-height: 1.02 !important; font-weight: 700; letter-spacing: -.04em !important; color: var(--white) !important; text-wrap: balance; }
.wpxh-grad, mark.wpxh-grad { background: var(--grad-text); -webkit-background-clip: text; background-clip: text; color: transparent !important; padding-bottom: .04em; }
.wpxh-hero__intro { font-size: clamp(17px, 1.5vw, 19px) !important; line-height: 1.6; color: #CBD5E1; max-width: 520px; text-wrap: pretty; }

/* Hero visual: terminal */
.wpxh-herovis { position: relative; min-width: 0; animation: wpxh-rise .8s .1s var(--ease) both; }
.wpxh-term { position: relative; }
.wpxh-term__glow { position: absolute; inset: 8% 6%; border-radius: 40px; background: radial-gradient(circle at 50% 50%, rgba(37, 99, 235, .45), rgba(6, 182, 212, .15) 50%, transparent 70%); filter: blur(30px); }
.wpxh-term__win { position: relative; z-index: 1; border-radius: 16px; overflow: hidden; background: #070D1A; border: 1px solid rgba(148, 163, 184, .22); box-shadow: 0 0 0 1px rgba(34, 211, 238, .08), 0 40px 80px -30px rgba(2, 6, 23, .9), 0 0 80px -20px rgba(37, 99, 235, .5); }
.wpxh-term__bar { height: 42px; display: flex; align-items: center; gap: 14px; padding: 0 14px; background: #0B1324; border-bottom: 1px solid rgba(148, 163, 184, .14); }
.wpxh-term__bar .wpxh-dots i { width: 11px; height: 11px; }
.wpxh-term__tabs { flex: 1; min-width: 0; display: flex; gap: 4px; overflow: hidden; }
.wpxh-term__tabs span { display: inline-flex; align-items: center; gap: 7px; height: 28px; padding: 0 12px; border-radius: 7px; font: 500 11.5px var(--mono); color: var(--muted); white-space: nowrap; }
.wpxh-term__tabs span.is-on { background: #111C33; color: #E2E8F0; }
.wpxh-term__tabs span.is-on i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan-light); }
.wpxh-term__shell { font: 500 11px var(--mono); color: var(--muted); }
.wpxh-term__screen { position: relative; height: clamp(300px, 30vw, 380px); overflow: hidden; background: linear-gradient(180deg, #070D1A 0%, #0A1426 100%); }
.wpxh-term__scan { position: absolute; inset: 0; z-index: 2; pointer-events: none; background-image: linear-gradient(rgba(34, 211, 238, .04) 1px, transparent 1px); background-size: 100% 3px; }
.wpxh-term__stream { position: absolute; inset: 0; padding: 14px 16px 0; overflow: hidden; filter: blur(1.4px) saturate(1.3); -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 80%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 80%, transparent 100%); }
.wpxh-code { animation: wpxh-scroll 14s linear infinite; will-change: transform; }
.wpxh-code__ln { display: flex; gap: 14px; height: 22px; align-items: center; white-space: pre; font: 400 12.5px/22px var(--mono); color: var(--subtle); }
.wpxh-code__no { width: 22px; flex: none; text-align: right; color: #475569; font-size: 11px; }
.t-com { color: var(--muted); font-style: italic; } .t-str { color: #86EFAC; } .t-var { color: #F1F5F9; } .t-key { color: #C4B5FD; } .t-fn { color: var(--cyan-light); } .t-num { color: #FDBA74; }
.c-cyan { color: var(--cyan-light); } .c-blue { color: var(--blue-light); } .c-mute { color: var(--muted); } .c-violet { color: #C4B5FD; }
.wpxh-term__prompt { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; padding: 12px 16px 14px; background: linear-gradient(180deg, rgba(10, 20, 38, 0) 0%, #0A1426 45%); display: flex; flex-direction: column; gap: 8px; }
.wpxh-term__cmd { display: flex; align-items: center; gap: 8px; font: 500 12.5px var(--mono); color: #E2E8F0; white-space: nowrap; overflow: hidden; }
.wpxh-cursor { display: inline-block; width: 8px; height: 15px; background: var(--cyan-light); animation: wpxh-blink 1s step-end infinite; }
.wpxh-term__progress { display: flex; align-items: center; gap: 10px; }
.wpxh-term__progress span { flex: 1; height: 4px; border-radius: 2px; background: rgba(148, 163, 184, .18); overflow: hidden; }
.wpxh-term__progress span i { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #2563EB, #22D3EE, #2563EB); background-size: 200% 100%; animation: wpxh-pulse 2.4s ease-in-out infinite; }
.wpxh-term__progress b { font: 500 11px var(--mono); color: #86EFAC; }
.wpxh-term__status { height: 30px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 14px; background: #0B1324; border-top: 1px solid rgba(148, 163, 184, .14); font: 500 11px var(--mono); color: var(--muted); white-space: nowrap; overflow: hidden; }
.wpxh-term__status span:first-child { display: inline-flex; align-items: center; gap: 6px; }
.wpxh-term__status i { width: 6px; height: 6px; border-radius: 50%; background: #34D399; }
.wpxh-stack { position: relative; z-index: 1; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 18px; }
.wpxh-stack__item { width: 44px; height: 44px; border-radius: 12px; background: var(--white); display: grid; place-items: center; overflow: hidden; box-shadow: 0 10px 24px -12px rgba(2, 6, 23, .8); }
.wpxh-stack__item.is-wide { width: 64px; }

/* Hero: announcement badge, proof row, floating cards */
.wpxh-hero .wpxh-badge { gap: 10px; padding: 5px 14px 5px 5px; border-radius: 999px; border-color: rgba(96, 165, 250, .28); background: rgba(37, 99, 235, .1); font: 500 13px/1.2 var(--sans); color: #CBD5E1; box-shadow: 0 0 0 4px rgba(37, 99, 235, .06); }
.wpxh-hero .wpxh-badge b { position: relative; display: inline-flex; align-items: center; gap: 7px; padding: 4px 10px 4px 9px; border-radius: 999px; background: var(--grad-brand); color: var(--white); font: 600 11px/1.2 var(--mono); text-transform: uppercase; letter-spacing: .04em; }
.wpxh-hero .wpxh-badge b::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #BBF7D0; box-shadow: 0 0 0 0 rgba(187, 247, 208, .7); animation: wpxh-ping 2s ease-out infinite; }
@keyframes wpxh-ping { 0% { box-shadow: 0 0 0 0 rgba(187, 247, 208, .7); } 70%, 100% { box-shadow: 0 0 0 7px rgba(187, 247, 208, 0); } }
.wpxh-hero__copy { position: relative; }
.wpxh-hero__copy::before { content: ""; position: absolute; left: -12%; top: 8%; width: 70%; height: 60%; z-index: -1; background: radial-gradient(closest-side, rgba(37, 99, 235, .22), transparent); filter: blur(20px); pointer-events: none; }
.wpxh-hero .wpxh-btns--lg .wp-block-button__link::after { transition: transform .2s; }
.wpxh-hero .wpxh-btns--lg .wp-block-button:first-child .wp-block-button__link:hover { transform: translateY(-1px); }
.wpxh-hero__proof { list-style: none; display: flex; flex-wrap: wrap; gap: 10px 22px; padding: 0 !important; margin-top: -6px !important; }
.wpxh-hero__proof li { display: inline-flex; align-items: center; gap: 8px; font-size: 14.5px; color: #CBD5E1; }
.wpxh-hero__proof li::before { content: ""; flex: none; width: 18px; height: 18px; background: #4ADE80; -webkit-mask: url(../icons/circle-check.svg) center / contain no-repeat; mask: url(../icons/circle-check.svg) center / contain no-repeat; }
.wpxh-hfloat { position: absolute; z-index: 3; display: flex; flex-direction: column; gap: 10px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, .96); color: var(--navy); border: 1px solid rgba(255, 255, 255, .6); box-shadow: 0 24px 48px -20px rgba(2, 6, 23, .75), 0 0 0 1px rgba(15, 23, 42, .04); backdrop-filter: blur(8px); animation: wpxh-float 6s ease-in-out infinite; }
.wpxh-hfloat { flex-direction: row; align-items: center; gap: 11px; }
.wpxh-hfloat__row { display: flex; flex-direction: row; align-items: center; gap: 11px; }
.wpxh-hfloat--order { flex-direction: column; align-items: stretch; animation-delay: -3s; }
.wpxh-hfloat strong { display: block; font-size: 13.5px; font-weight: 650; letter-spacing: -.01em; line-height: 1.3; }
.wpxh-hfloat small { display: block; font-size: 12px; color: var(--muted); line-height: 1.35; white-space: nowrap; }
.wpxh-hfloat__icon { width: 34px; height: 34px; flex: none; display: grid; place-items: center; border-radius: 10px; background: var(--blue-50); color: var(--blue); }
.wpxh-hfloat__icon.is-green { background: #DCFCE7; color: #15803D; }
.wpxh-hfloat__bar { display: block; height: 6px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.wpxh-hfloat__bar i { display: block; width: 66%; height: 100%; border-radius: inherit; background: var(--grad-brand); }
.wpxh-hfloat--licence { top: 18%; left: -34px; }
.wpxh-hfloat--order { right: -26px; bottom: 16%; min-width: 210px; }
@keyframes wpxh-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@media (max-width: 1180px) { .wpxh-hfloat--licence { left: -12px; } .wpxh-hfloat--order { right: -8px; } }
@media (max-width: 600px) { .wpxh-hfloat { display: none; } .wpxh-hero .wpxh-badge { font-size: 12px; } }
@media (prefers-reduced-motion: reduce) { .wpxh-hfloat, .wpxh-hero .wpxh-badge b::before { animation: none; } }

/* Hero visual: order screen */
.wpxh-herovis--orders { padding: 24px 14px 56px 26px; }
.wpxh-orderwin { position: relative; background: var(--white); border-radius: 14px; overflow: hidden; color: var(--navy); box-shadow: 0 0 0 1px rgba(148, 163, 184, .25), 0 40px 80px -30px rgba(2, 6, 23, .8), 0 0 60px -10px rgba(37, 99, 235, .35); }
.wpxh-orderwin__bar { height: 40px; display: flex; align-items: center; gap: 14px; padding: 0 14px; background: var(--surface-2); border-bottom: 1px solid var(--line); }
.wpxh-orderwin__url { flex: 1; min-width: 0; height: 24px; border-radius: 6px; background: var(--white); border: 1px solid var(--line); display: flex; align-items: center; padding: 0 10px; font: 400 11.5px/1 var(--mono); color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wpxh-orderwin__body { display: flex; min-height: 330px; }
.wpxh-orderwin__side { width: 128px; flex: none; background: var(--navy); padding: 14px 10px; display: flex; flex-direction: column; gap: 3px; }
.wpxh-orderwin__side span { padding: 7px 9px; border-radius: 6px; font-size: 12px; color: var(--subtle); }
.wpxh-orderwin__side span.is-on { color: var(--white); background: var(--blue); font-weight: 500; }
.wpxh-orderwin__main { flex: 1; min-width: 0; padding: clamp(14px, 3vw, 20px); display: flex; flex-direction: column; gap: 14px; }
.wpxh-orderwin__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.wpxh-orderwin__head small { display: block; font: 500 11px/1 var(--mono); color: var(--muted); margin-bottom: 3px; }
.wpxh-orderwin__head strong { font-size: 17px; letter-spacing: -.02em; }
.wpxh-otable { border: 1px solid var(--line); border-radius: var(--r-md); overflow: hidden; }
.wpxh-otable__row { display: grid; grid-template-columns: minmax(0, 1fr) 36px 80px; gap: 10px; padding: 10px 12px; align-items: center; border-bottom: 1px solid var(--surface-2); font-size: 12.5px; }
.wpxh-otable__row:last-child { border-bottom: 0; }
.wpxh-otable__row span:first-child { font-weight: 500; }
.wpxh-otable__row span:nth-child(2) { color: var(--muted); }
.wpxh-otable__row--head { background: var(--surface); border-bottom-color: var(--line); padding: 8px 12px; font: 500 11px/1 var(--mono); color: var(--muted); }
.wpxh-otable__row--head span:first-child { font-weight: 500; }
.wpxh-bar { display: flex; align-items: center; gap: 6px; }
.wpxh-bar i { display: block; flex: 1; height: 5px; border-radius: 3px; background: linear-gradient(90deg, var(--blue) var(--w, 0), var(--line) 0); }
.wpxh-bar b { font: 500 11px var(--mono); color: var(--ink); }
.wpxh-bar.is-cyan i { background: linear-gradient(90deg, var(--cyan) var(--w, 0), var(--line) 0); }
.wpxh-draft { border: 1px solid var(--blue-200); background: var(--blue-50); border-radius: var(--r-md); padding: 12px; display: flex; flex-direction: column; gap: 9px; }
.wpxh-draft__head { display: flex; justify-content: space-between; align-items: center; font-size: 12.5px; }
.wpxh-draft__head small { font: 500 11px/1 var(--mono); color: var(--blue-dark); }
.wpxh-draft__fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; }
.wpxh-draft__fields span { height: 30px; border-radius: 6px; background: var(--white); border: 1px solid var(--line); display: flex; align-items: center; padding: 0 9px; font: 400 11px var(--mono); color: var(--ink); overflow: hidden; white-space: nowrap; }
.wpxh-draft__fields .is-muted { color: var(--muted); }
.wpxh-draft__foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; font-size: 11.5px; color: var(--ink); }
.wpxh-toggle-demo { display: inline-flex; align-items: center; gap: 7px; }
.wpxh-toggle-demo i { position: relative; width: 26px; height: 15px; border-radius: 8px; background: var(--blue); }
.wpxh-toggle-demo.is-cyan i { background: var(--cyan); }
.wpxh-toggle-demo i::after { content: ""; position: absolute; right: 2px; top: 2px; width: 11px; height: 11px; border-radius: 50%; background: var(--white); }
.wpxh-draft__btn { height: 28px; padding: 0 12px; border-radius: 6px; background: var(--blue); color: var(--white); font-size: 11.5px; font-weight: 600; display: flex; align-items: center; }
.wpxh-float { position: absolute; z-index: 2; }
.wpxh-float--plugin { top: -4px; right: -14px; width: 228px; background: var(--white); border-radius: 12px; padding: 14px; display: flex; flex-direction: column; gap: 10px; color: var(--navy); box-shadow: 0 0 0 1px var(--line), 0 24px 48px -16px rgba(2, 6, 23, .55); }
.wpxh-float__row { display: flex; align-items: center; gap: 10px; }
.wpxh-float__row strong { display: block; font-size: 12.5px; white-space: nowrap; }
.wpxh-float__row small { font: 400 11px var(--mono); color: var(--muted); }
.wpxh-mark { width: 32px; height: 32px; border-radius: var(--r-sm); background: var(--navy); display: grid; place-items: center; font: 600 11px var(--mono); color: var(--cyan-light); }
.wpxh-float__line { display: flex; justify-content: space-between; align-items: center; padding-top: 10px; border-top: 1px solid var(--surface-2); font-size: 11.5px; color: var(--ink); }
.wpxh-float--api { top: 44%; left: -26px; display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 9px; background: var(--navy); border: 1px solid rgba(34, 211, 238, .35); box-shadow: 0 16px 32px -12px rgba(2, 6, 23, .7); font: 500 11px var(--mono); color: #E2E8F0; }
.wpxh-float--api i { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan-light); box-shadow: 0 0 0 3px rgba(34, 211, 238, .2); }
.wpxh-float--api span { color: var(--muted); } .wpxh-float--api b { color: var(--cyan-300); font-weight: 500; }
.wpxh-float--code { bottom: -6px; right: -10px; width: min(360px, 80%); background: var(--navy-3); border: 1px solid rgba(148, 163, 184, .2); border-radius: 12px; box-shadow: 0 30px 60px -20px rgba(2, 6, 23, .9); overflow: hidden; }
.wpxh-float__code-head { display: flex; justify-content: space-between; padding: 9px 14px; border-bottom: 1px solid rgba(148, 163, 184, .14); font: 500 11px var(--mono); color: var(--muted); }
.wpxh-float__code-head span:last-child { color: var(--cyan-light); }
.wpxh-float--code pre { margin: 0; padding: 12px 14px 14px; font: 400 11.5px/1.7 var(--mono); color: #CBD5E1; white-space: pre; overflow: hidden; }
@media (max-width: 1199px) { .wpxh-float, .wpxh-orderwin__side { display: none; } .wpxh-herovis--orders { padding: 0; } }

/* Value strip */
.wpxh-values { background: var(--white); border-bottom: 1px solid var(--line); }
.wpxh-values__list { list-style: none; margin: 0 auto !important; padding: 0 var(--gutter); max-width: var(--container); display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.wpxh-values__list li { display: flex; align-items: center; gap: 12px; padding: 22px 20px 22px 0; border-right: 1px solid var(--surface-2); font-size: 15px; font-weight: 600; letter-spacing: -.01em; margin: 0; }
.wpxh-values__list li::before {
	content: ""; flex: none; width: 30px; height: 30px; border-radius: var(--r-sm); background: var(--blue-50)
	url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/15px no-repeat;
}
.wpxh-values__list li:last-child { border-right: 0; }

/* Plugin grid */
.wpxh-pgrid { display: flex; flex-direction: column; gap: 24px; }
.wpxh-pgrid > .wpxh-segment { align-self: flex-end; margin-top: -8px; }
.wpxh-pgrid__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 20px; }
.wpxh-pgrid__more { align-self: center; margin-top: 16px; }
.wpxh-pcard {
	background: var(--white); border: 1px solid var(--line); border-radius: var(--r-xl);
	padding: 12px 12px 22px; display: flex; flex-direction: column; gap: 18px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
	transition: transform .25s var(--ease), box-shadow .25s, border-color .25s;
}
.wpxh-pcard[hidden] { display: none; }
.wpxh-pcard:hover { transform: translateY(-3px); border-color: var(--blue-200); box-shadow: var(--shadow-lift); }
.wpxh-pcard__banner, .wpxh-pp__banner, .wpxh-rcard__banner { position: relative; overflow: hidden; background: var(--grad-tint); }
.wpxh-pcard__banner.is-free, .wpxh-pp__banner.is-free, .wpxh-rcard__banner.is-free { background: var(--grad-tint-cyan); }
.wpxh-pcard__banner::before, .wpxh-pp__banner::before, .wpxh-rcard__banner::before {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image: var(--dot-bg); background-size: 18px 18px;
	-webkit-mask-image: linear-gradient(90deg, transparent 35%, #000); mask-image: linear-gradient(90deg, transparent 35%, #000);
}
.wpxh-pcard__banner { border-radius: 12px; padding: 18px; min-height: 168px; display: flex; flex-direction: column; gap: 12px; }
.wpxh-pcard__banner > * { position: relative; }
.wpxh-pcard__top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.wpxh-pcard__title { font-size: 19px; line-height: 1.25; font-weight: 700; letter-spacing: -.025em; max-width: 92%; text-wrap: balance; }
.wpxh-pcard__title a { color: var(--navy); }
.wpxh-pcard__title a:hover { color: var(--blue-dark); }
.wpxh-pcard__banner .wpxh-chips { margin-top: auto; }
.wpxh-pcard__body { padding: 0 10px; display: flex; flex-direction: column; gap: 18px; flex: 1; }
.wpxh-pcard__desc { font-size: 14.5px; line-height: 1.6; color: var(--muted); flex: 1; text-wrap: pretty; }
.wpxh-pcard__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 18px; border-top: 1px solid var(--surface-2); flex-wrap: wrap; }
.wpxh-pcard__actions { display: flex; gap: 6px; }
.wpxh-pcard__price { display: flex; flex-direction: column; gap: 5px; }
.wpxh-pcard__price .wpxh-price { line-height: 1.1; }
.wpxh-pcard__rating { display: inline-flex; align-items: center; gap: 5px; width: fit-content; font-size: 12.5px; line-height: 1; color: var(--muted); }
.wpxh-pcard__rating strong { font-weight: 700; color: var(--navy); }
.wpxh-pcard__rating:hover strong, .wpxh-pcard__rating:hover { color: var(--blue-dark); }

/* Showcases */
.wpxh-showcases, .wpxh-showcases__list { display: flex; flex-direction: column; gap: clamp(80px, 10vw, 128px); }
.wpxh-showcases > * { margin: 0 !important; }
.wpxh-showcase { display: flex; flex-wrap: wrap; gap: clamp(40px, 6vw, 80px); align-items: center; }
.wpxh-showcase.is-reverse { flex-direction: row-reverse; }
.wpxh-showcase__copy { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.wpxh-showcase__head { display: flex; align-items: center; gap: 14px; }
.wpxh-showcase__head > div { display: flex; flex-direction: column; gap: 4px; }
.wpxh-showcase__head .wpxh-eyebrow { font-size: 12px !important; }
.wpxh-showcase__mark { width: 56px; height: 56px; border-radius: 13px; background: var(--grad-brand); display: grid; place-items: center; font: 600 16px var(--mono); color: var(--white); flex: none; }
.wpxh-showcase__mark.is-dark { background: var(--navy); color: var(--cyan-light); }
.wpxh-showcase__sub { font-size: 14px; color: var(--muted); }
.wpxh-showcase__title { font-size: clamp(28px, 3vw, 40px); line-height: 1.1; font-weight: 700; letter-spacing: -.035em; text-wrap: balance; }
.wpxh-showcase__title a { color: var(--navy); }
.wpxh-showcase__title a:hover { color: var(--blue-dark); }
.wpxh-showcase__text { font-size: 17px; line-height: 1.6; color: var(--ink); text-wrap: pretty; }
.wpxh-showcase__buy { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding-top: 24px; border-top: 1px solid var(--line); }
.wpxh-showcase__price { display: flex; flex-direction: column; gap: 2px; }
.wpxh-showcase__price .wpxh-price { font-size: 30px; letter-spacing: -.035em; }
.wpxh-showcase__visual { flex: 1 1 480px; min-width: 0; position: relative; border-radius: var(--r-xl); padding: clamp(24px, 4vw, 48px); overflow: hidden; }
.wpxh-showcase__visual--shipment, .wpxh-showcase__visual--image { background: var(--blue-50); border: 1px solid var(--blue-100); }
.wpxh-showcase__visual--shipment::before, .wpxh-showcase__visual--image::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(37, 99, 235, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(37, 99, 235, .07) 1px, transparent 1px); background-size: 32px 32px; }
.wpxh-showcase__visual--cancel { background: var(--navy); }
.wpxh-showcase__visual--cancel::before { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 60% at 20% 10%, rgba(37, 99, 235, .35), transparent 70%), radial-gradient(rgba(148, 163, 184, .18) 1px, transparent 1px) 0 0/20px 20px; }
.wpxh-showcase__visual > * { position: relative; }
.wpxh-showcase__img img { display: block; width: 100%; border-radius: var(--r-lg); box-shadow: 0 30px 60px -30px rgba(15, 23, 42, .35); }
.wpxh-shipcard { background: var(--white); border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: 0 30px 60px -30px rgba(15, 23, 42, .35); overflow: hidden; }
.wpxh-shipcard__head { padding: 16px 20px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.wpxh-shipcard__head small { display: block; font: 500 11px var(--mono); color: var(--muted); margin-bottom: 3px; }
.wpxh-shipcard__head strong { font-size: 16px; letter-spacing: -.02em; }
.wpxh-timeline { list-style: none; margin: 0; padding: 20px; }
.wpxh-timeline li { position: relative; padding: 0 0 20px 36px; display: flex; flex-direction: column; gap: 6px; }
.wpxh-timeline li:last-child { padding-bottom: 0; }
.wpxh-timeline li::before { content: ""; position: absolute; left: 4px; top: 2px; width: 14px; height: 14px; border-radius: 50%; }
.wpxh-timeline li:not(:last-child)::after { content: ""; position: absolute; left: 10px; top: 22px; bottom: 4px; width: 2px; background: var(--line); }
.wpxh-timeline li.is-done::before { background: var(--cyan); box-shadow: 0 0 0 4px var(--cyan-50); }
.wpxh-timeline li.is-active::before { background: var(--blue); box-shadow: 0 0 0 4px var(--blue-100); }
.wpxh-timeline li.is-waiting::before { border: 2px dashed var(--line-strong); }
.wpxh-timeline li > div { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.wpxh-timeline strong { font-size: 14px; }
.wpxh-timeline li.is-waiting strong { color: var(--muted); }
.wpxh-timeline small { font: 400 12px var(--mono); color: var(--muted); }
.wpxh-timeline small.c-blue { color: var(--blue); }
.wpxh-timeline li > span { font-size: 13px; color: var(--muted); }
.wpxh-shipcard__note { margin: 0 20px 20px; padding: 12px 14px; border-radius: var(--r-md); background: var(--surface); border: 1px solid var(--line); display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ink); }
.wpxh-pill-code { font: 500 11px var(--mono); padding: 3px 6px; border-radius: 4px; background: var(--navy); color: var(--cyan-light); }
.wpxh-cancelmock { display: flex; flex-direction: column; gap: 14px; }
.wpxh-cancelmock__form { background: var(--white); border-radius: var(--r-lg); padding: 22px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 30px 60px -24px rgba(2, 6, 23, .8); max-width: 420px; color: var(--navy); }
.wpxh-cancelmock__head { display: flex; justify-content: space-between; align-items: center; }
.wpxh-cancelmock__head strong { font-size: 16px; letter-spacing: -.02em; }
.wpxh-cancelmock__head small { font: 400 12px var(--mono); color: var(--muted); }
.wpxh-cancelmock__field { display: flex; flex-direction: column; gap: 6px; }
.wpxh-cancelmock__field > span { font-size: 12.5px; font-weight: 600; color: var(--ink); }
.wpxh-cancelmock__field > div { min-height: 40px; border-radius: var(--r-sm); border: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; padding: 0 12px; font-size: 13.5px; }
.wpxh-cancelmock__field > div.is-focus { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-100); }
.wpxh-cancelmock__field > div.is-focus i { color: var(--muted); font-style: normal; }
.wpxh-cancelmock__field > div.is-area { min-height: 62px; align-items: flex-start; padding: 10px 12px; color: var(--muted); }
.wpxh-cancelmock__btn { height: 42px; border-radius: 9px; background: var(--blue); color: var(--white); font-size: 14px; font-weight: 600; display: grid; place-items: center; }
.wpxh-cancelmock__admin { align-self: flex-end; width: min(100%, 330px); background: var(--navy-2); border: 1px solid rgba(148, 163, 184, .22); border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 12px; margin-top: -40px; box-shadow: 0 24px 48px -16px rgba(2, 6, 23, .9); }
.wpxh-cancelmock__admin-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.wpxh-cancelmock__admin-head small { font: 500 11px var(--mono); color: var(--subtle); }
.wpxh-cancelmock__actions { display: flex; gap: 8px; }
.wpxh-cancelmock__actions span { flex: 1; height: 34px; border-radius: 7px; border: 1px solid rgba(148, 163, 184, .3); color: #E2E8F0; font-size: 12.5px; font-weight: 600; display: grid; place-items: center; }
.wpxh-cancelmock__actions span.is-primary { background: var(--blue); border-color: var(--blue); color: var(--white); }

/* Categories */
.wpxh-cats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 16px; }
.wpxh-cat { display: flex; flex-direction: column; gap: 14px; padding: 24px; border-radius: var(--r-lg); background: var(--white); border: 1px solid var(--line); color: var(--navy); transition: border-color .25s, transform .25s var(--ease); }
.wpxh-cat:hover { border-color: var(--blue); transform: translateY(-3px); color: var(--navy); }
.wpxh-cat__art { height: 96px; border-radius: var(--r-md); padding: 14px; overflow: hidden; }
.wpxh-cat__art--grid { background: var(--blue-50); display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.wpxh-cat__art--grid i { border-radius: 5px; background: var(--blue-200); }
.wpxh-cat__art--grid i:first-child { background: var(--blue); }
.wpxh-cat__art--grid i:last-child { background: var(--blue-300); }
.wpxh-cat__art--lines { background: var(--blue-dark); display: flex; flex-direction: column; justify-content: center; gap: 7px; }
.wpxh-cat__art--lines i { height: 9px; border-radius: 4px; background: rgba(255, 255, 255, .45); }
.wpxh-cat__art--lines i:first-child { width: 80%; background: rgba(255, 255, 255, .9); } .wpxh-cat__art--lines i:nth-child(2) { width: 55%; } .wpxh-cat__art--lines i:nth-child(3) { width: 68%; }
.wpxh-cat__art--code { background: var(--navy); font: 400 11.5px/1.6 var(--mono); color: var(--muted); }
.wpxh-cat__art--free { background: var(--cyan-50); border: 1px dashed var(--cyan-300); display: grid; place-items: center; }
.wpxh-cat__art--free span { padding: 6px 12px; border-radius: 7px; background: var(--white); border: 1px solid #A5F3FC; font: 600 13px var(--mono); color: var(--cyan-dark); }
.wpxh-cat__path { font: 500 11.5px var(--mono); color: var(--blue); }
.wpxh-cat__title { font-size: 19px; font-weight: 650; letter-spacing: -.02em; }
.wpxh-cat__desc { font-size: 14.5px; line-height: 1.55; color: var(--muted); }

/* WooCommerce section */
.wpxh-woo__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap: clamp(48px, 6vw, 80px); align-items: center; }
.wpxh-woo__copy { display: flex; flex-direction: column; gap: 28px; }
.wpxh-woo__copy > * { margin: 0 !important; }
.wpxh-woo__title { font-size: clamp(32px, 4vw, 52px) !important; line-height: 1.05 !important; letter-spacing: -.04em !important; text-wrap: balance; }
.wpxh-numlist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid rgba(148, 163, 184, .18); counter-reset: n; }
.wpxh-numlist li { counter-increment: n; display: flex; align-items: center; gap: 12px; padding: 15px 12px 15px 0; border-bottom: 1px solid rgba(148, 163, 184, .18); font-size: 15.5px; font-weight: 500; color: #E2E8F0; margin: 0; }
.wpxh-numlist li::before { content: counter(n, decimal-leading-zero); font: 500 11.5px var(--mono); color: var(--cyan-light); }
.wpxh-ordersmock { background: var(--navy-2); border: 1px solid rgba(148, 163, 184, .2); border-radius: 16px; overflow: hidden; box-shadow: 0 40px 80px -30px rgba(2, 6, 23, .9); }
.wpxh-ordersmock__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px; border-bottom: 1px solid rgba(148, 163, 184, .14); flex-wrap: wrap; font-weight: 600; }
.wpxh-ordersmock__filters { display: flex; gap: 6px; font: 500 11.5px var(--mono); }
.wpxh-ordersmock__filters span { padding: 5px 9px; border-radius: 6px; color: var(--subtle); }
.wpxh-ordersmock__filters span:first-child { background: var(--blue); color: var(--white); }
.wpxh-ordersmock__row { display: grid; grid-template-columns: 70px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 20px; border-bottom: 1px solid rgba(148, 163, 184, .1); }
.wpxh-ordersmock__row.is-hl { background: rgba(37, 99, 235, .08); }
.wpxh-ordersmock__row > span:first-child { font: 500 12.5px var(--mono); color: var(--subtle); }
.wpxh-ordersmock__row > span:nth-child(2) { font-size: 14px; color: #E2E8F0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wpxh-ordersmock__row em { font-style: normal; padding: 4px 9px; border-radius: 6px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.s-blue { background: rgba(37, 99, 235, .2); color: var(--blue-300); } .s-cyan { background: rgba(6, 182, 212, .18); color: var(--cyan-300); } .s-amber { background: rgba(245, 158, 11, .15); color: #FCD34D; } .s-grey { background: rgba(148, 163, 184, .15); color: #CBD5E1; }
.wpxh-ordersmock__foot { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wpxh-ordersmock__foot div { padding: 16px 20px; display: flex; flex-direction: column; gap: 6px; border-right: 1px solid rgba(148, 163, 184, .14); font-size: 13px; color: #E2E8F0; }
.wpxh-ordersmock__foot div:last-child { border-right: 0; }
.wpxh-ordersmock__foot small { font: 500 11px var(--mono); color: var(--muted); }
.wpxh-codechip { margin: 14px 0 0 auto; width: min(100%, 340px); background: var(--navy-3); border: 1px solid rgba(34, 211, 238, .25); border-radius: 12px; padding: 14px 16px; font: 400 11.5px/1.7 var(--mono); color: #CBD5E1; box-shadow: 0 24px 48px -16px rgba(2, 6, 23, .9); }

/* Services (home) */
.wpxh-svc__intro { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 24px 64px; align-items: end; }
.wpxh-svc__intro > * { margin: 0 !important; }
.wpxh-svc__h { font-size: clamp(36px, 4.6vw, 60px) !important; line-height: 1 !important; letter-spacing: -.045em !important; }
.wpxh-svc__side { display: flex; flex-direction: column; gap: 20px; align-items: flex-start; }
.wpxh-svc__side > * { margin: 0 !important; }
.wpxh-svc__lead { font-size: clamp(18px, 1.6vw, 21px) !important; line-height: 1.5; color: var(--ink); }
.wpxh-svc__body { font-size: 16px; line-height: 1.65; color: var(--muted); max-width: 560px; }
.wpxh-svcards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap: 20px; }
.wpxh-svcard { position: relative; overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: clamp(28px, 3vw, 40px); display: flex; flex-direction: column; gap: 20px; min-height: 360px; }
.wpxh-svcard > * { position: relative; margin: 0 !important; }
.wpxh-svcard.is-dark { background: var(--navy); border-color: var(--navy); color: var(--white); }
.wpxh-svcard.is-dark::before { content: ""; position: absolute; inset: 0; background: radial-gradient(70% 60% at 100% 0%, rgba(37, 99, 235, .4), transparent 70%); }
.wpxh-svcard__top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.wpxh-svcard__top span:first-child { font: 500 13px var(--mono); color: var(--muted); }
.wpxh-svcard__top span:last-child { font: 500 11.5px var(--mono); padding: 4px 8px; border-radius: 6px; background: var(--blue-50); color: var(--blue-dark); }
.wpxh-svcard.is-dark .wpxh-svcard__top span:first-child { color: var(--subtle); }
.wpxh-svcard.is-dark .wpxh-svcard__top span:last-child { background: rgba(6, 182, 212, .15); color: var(--cyan-300); }
.wpxh-svcard h3 { font-size: clamp(26px, 2.6vw, 34px) !important; line-height: 1.1; letter-spacing: -.035em; }
.wpxh-svcard.is-dark h3 { color: var(--white); }
.wpxh-svcard__sub { font-size: 16px; line-height: 1.6; color: var(--muted); max-width: 420px; }
.wpxh-svcard.is-dark .wpxh-svcard__sub { color: var(--subtle); }
.wpxh-svcard__txt { font-size: 15.5px; line-height: 1.65; color: var(--ink); text-wrap: pretty; }
.wpxh-svcard.is-dark .wpxh-svcard__txt { color: #CBD5E1; }
.wpxh-svcard .wpxh-dotlist { padding-top: 18px; border-top: 1px solid var(--surface-2); grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px 20px; }
.wpxh-svcard .wpxh-dotlist li { font-size: 14.5px; }
.wpxh-svcard.is-dark .wpxh-dotlist { border-top-color: rgba(148, 163, 184, .18); }
.wpxh-svcard.is-dark .wpxh-dotlist li { color: #E2E8F0; }
.wpxh-svcard.is-dark .wpxh-dotlist li::before { background: var(--cyan); }
.wpxh-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto !important; list-style: none; padding: 0; }
.wpxh-pills li, .wpxh-pills span { padding: 6px 11px; border-radius: 7px; border: 1px solid var(--line); font-size: 13.5px; color: var(--ink); margin: 0; }
.wpxh-svcard.is-dark .wpxh-pills li { border-color: rgba(148, 163, 184, .25); color: #E2E8F0; }
.wpxh-minor { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); border-top: 1px solid var(--line-strong); }
.wpxh-minor a { display: flex; flex-direction: column; gap: 12px; padding: 28px 24px 28px 0; border-bottom: 1px solid var(--line); color: var(--navy); transition: color .2s; }
.wpxh-minor a:hover { color: var(--blue-dark); }
.wpxh-minor__top { display: flex; justify-content: space-between; align-items: center; font: 500 13px var(--mono); color: var(--muted); }
.wpxh-minor__top span:last-child { color: var(--blue); }
.wpxh-minor h3 { font-size: 21px; font-weight: 650; letter-spacing: -.025em; color: inherit; }
.wpxh-minor p { font-size: 15px; line-height: 1.55; color: var(--muted); max-width: 260px; }

/* Why */
.wpxh-why__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap: clamp(48px, 6vw, 96px); align-items: start; }
.wpxh-why__intro { display: flex; flex-direction: column; gap: 24px; position: sticky; top: calc(var(--header-h) + 40px); }
.wpxh-why__grid > *, .wpxh-why__intro > *, .wpxh-caps > * { margin: 0 !important; }
.wpxh-why__h { font-size: clamp(34px, 4vw, 52px) !important; line-height: 1.05 !important; letter-spacing: -.04em !important; text-wrap: balance; }
.wpxh-why__lead { font-size: clamp(19px, 1.8vw, 23px) !important; line-height: 1.45; color: var(--ink); letter-spacing: -.01em; text-wrap: pretty; }
.wpxh-caps { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 0 32px; }
.wpxh-cap { display: flex; flex-direction: column; gap: 10px; padding: 26px 0; border-top: 1px solid var(--line); }
.wpxh-cap > * { margin: 0 !important; }
.wpxh-cap h3 { display: flex; align-items: center; gap: 10px; font-size: 17.5px !important; font-weight: 650; letter-spacing: -.02em; }
.wpxh-cap h3::before { content: ""; width: 8px; height: 8px; border-radius: 2px; background: var(--grad-brand); flex: none; }
.wpxh-cap p { font-size: 15px; line-height: 1.6; color: var(--muted); }

/* CTA */
.wpxh-cta-wrap { background: var(--white); padding: 0 clamp(16px, 4vw, 40px) clamp(72px, 9vw, 120px); }
.wpxh-cta-wrap.is-top { padding-top: clamp(72px, 9vw, 120px); }
.wpxh-cta { position: relative; overflow: hidden; max-width: 1200px; margin: 0 auto; border-radius: 24px; background: linear-gradient(135deg, #1D4ED8 0%, #2563EB 55%, #06B6D4 130%); padding: clamp(28px, 5vw, 64px); display: flex; flex-wrap: wrap; align-items: center; gap: clamp(28px, 4vw, 56px); color: var(--white); }
.wpxh-cta::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px); background-size: 40px 40px; -webkit-mask-image: linear-gradient(90deg, transparent, #000); mask-image: linear-gradient(90deg, transparent, #000); }
.wpxh-cta::after { content: ""; position: absolute; right: -120px; top: -120px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(34, 211, 238, .35), transparent 70%); }
.wpxh-cta > * { position: relative; z-index: 1; flex: 1 1 380px; min-width: 0; margin: 0 !important; }
.wpxh-cta__copy { display: flex; flex-direction: column; gap: 18px; }
.wpxh-cta__copy > * { margin: 0 !important; }
.wpxh-cta__badge { align-self: flex-start; padding: 5px 10px; border-radius: 7px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .25); font: 500 12px var(--mono) !important; color: var(--white); }
.wpxh-cta__h { font-size: clamp(30px, 3.8vw, 48px) !important; line-height: 1.06 !important; letter-spacing: -.04em !important; color: var(--white) !important; text-wrap: balance; }
.wpxh-cta__p { font-size: 17px; line-height: 1.55; color: var(--blue-100); max-width: 460px; }
.wpxh-options { display: flex; flex-direction: column; gap: 14px; }
.wpxh-option { display: flex; flex-direction: column; gap: 14px; padding: 22px; border-radius: 16px; background: var(--white); color: var(--navy); box-shadow: 0 30px 60px -30px rgba(15, 23, 42, .5); transition: transform .25s var(--ease), background-color .25s; }
.wpxh-option:hover { transform: translateY(-3px); color: var(--navy); }
.wpxh-option.is-glass { background: rgba(15, 23, 42, .35); border: 1px solid rgba(255, 255, 255, .2); color: var(--white); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.wpxh-option.is-glass:hover { background: rgba(15, 23, 42, .5); color: var(--white); }
.wpxh-option__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.wpxh-option__who { display: flex; align-items: center; gap: 12px; }
.wpxh-option__icon { width: 40px; height: 40px; border-radius: var(--r-md); background: var(--blue-50); color: var(--blue); display: grid; place-items: center; }
.wpxh-option.is-glass .wpxh-option__icon { background: rgba(255, 255, 255, .14); color: var(--cyan-300); }
.wpxh-option__who small { display: block; font: 500 11px var(--mono); color: var(--muted); }
.wpxh-option.is-glass .wpxh-option__who small { color: var(--blue-200); }
.wpxh-option__who strong { font-size: 17px; font-weight: 650; letter-spacing: -.02em; }
.wpxh-option__arrow { font-family: var(--mono); color: var(--blue); }
.wpxh-option.is-glass .wpxh-option__arrow { color: var(--cyan-300); }
.wpxh-option__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.wpxh-option__chips span { display: inline-flex; align-items: center; gap: 7px; padding: 6px 10px; border-radius: var(--r-sm); background: var(--surface); border: 1px solid var(--line); font-size: 13px; color: var(--ink); }
.wpxh-option__chips span svg { color: var(--blue); }
.wpxh-option.is-glass .wpxh-option__chips span { background: transparent; border-color: rgba(255, 255, 255, .25); color: #E2E8F0; }
.wpxh-option__note { font-size: 13.5px; color: var(--muted); }
.wpxh-option.is-glass .wpxh-option__note { color: var(--blue-100); }

/* Dark band CTA (shop, product) */
.wpxh-band { background: var(--navy); color: var(--white); }
.wpxh-band__in { padding-block: clamp(56px, 7vw, 88px); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 28px; }
.wpxh-band__in > * { margin: 0 !important; }
.wpxh-band__txt { display: flex; flex-direction: column; gap: 12px; max-width: 620px; }
.wpxh-band__txt > * { margin: 0 !important; }
.wpxh-band h2 { font-size: clamp(28px, 3.4vw, 42px) !important; line-height: 1.08; letter-spacing: -.04em; color: var(--white); }
.wpxh-band p { font-size: 17px; line-height: 1.6; color: var(--subtle); }

/* 8 ─ Shop ──────────────────────────────────────────────────────────────── */
.wpxh-shophero { position: relative; overflow: hidden; background: var(--white); border-bottom: 1px solid var(--line); }
.wpxh-shophero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(#E2E8F0 1px, transparent 1px); background-size: 22px 22px; -webkit-mask-image: linear-gradient(90deg, transparent 30%, #000); mask-image: linear-gradient(90deg, transparent 30%, #000); }
.wpxh-shophero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(40% 80% at 100% 0%, rgba(37, 99, 235, .1), transparent 70%); }
.wpxh-shophero__inner { position: relative; z-index: 1; max-width: var(--container); margin: 0 auto; padding: clamp(40px, 6vw, 72px) var(--gutter); display: flex; flex-direction: column; gap: 20px; }
.wpxh-shophero__title { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.04; font-weight: 700; letter-spacing: -.04em; max-width: 760px; text-wrap: balance; }
.wpxh-shophero__intro { font-size: clamp(16px, 1.5vw, 18px); line-height: 1.6; color: var(--muted); max-width: 620px; text-wrap: pretty; }
.wpxh-shophero__copy { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.wpxh-shophero__kind { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; margin: 4px 0 -8px; padding: 5px 10px; border-radius: 999px; background: var(--blue-50); border: 1px solid var(--blue-100); font: 500 11.5px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--blue); }
.wpxh-shophero__kind::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--grad-brand); }
.wpxh-termcard { display: flex; flex-direction: column; gap: 18px; padding: clamp(20px, 2.4vw, 26px); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-xl); box-shadow: var(--shadow-card); }
.wpxh-termcard__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.wpxh-termcard__stats div { display: flex; flex-direction: column-reverse; gap: 4px; padding: 14px 14px 12px; border-radius: var(--r-lg); background: var(--surface); border: 1px solid var(--line); }
.wpxh-termcard__stats div:first-child { background: var(--grad-tint); border-color: var(--blue-100); }
.wpxh-termcard__stats dt { font: 500 11.5px/1.2 var(--mono); letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
.wpxh-termcard__stats dd { margin: 0; font-size: 30px; line-height: 1; font-weight: 700; letter-spacing: -.04em; color: var(--navy); font-variant-numeric: tabular-nums; }
.wpxh-termcard__stats div:first-child dd { color: var(--blue); }
.wpxh-termcard__list { list-style: none; margin: 0; padding: 16px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px; }
.wpxh-termcard__list li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--ink); }
.wpxh-termcard__list li::before { content: ""; flex: none; width: 18px; height: 18px; background: var(--blue); -webkit-mask: url(../icons/circle-check.svg) center / contain no-repeat; mask: url(../icons/circle-check.svg) center / contain no-repeat; }
@media (min-width: 960px) {
	.wpxh-shophero--term .wpxh-shophero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 380px); align-items: center; gap: clamp(32px, 5vw, 72px); }
	.wpxh-termcard { align-self: center; }
}
.wpxh-termabout { margin-top: clamp(8px, 2vw, 16px); padding: clamp(24px, 3.5vw, 40px); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-xl); display: grid; gap: 14px; }
.wpxh-termabout h2 { margin: 0; font-size: clamp(22px, 2.4vw, 28px); line-height: 1.2; font-weight: 700; letter-spacing: -.03em; }
.wpxh-termabout__body { display: grid; gap: 12px; max-width: 820px; }
.wpxh-termabout__body p { margin: 0; font-size: 16px; line-height: 1.7; color: var(--ink); text-wrap: pretty; }
.wpxh-termabout__body a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.wpxh-tagchips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.wpxh-tagchips a { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 6px 12px; border-radius: 999px; background: var(--surface); border: 1px solid var(--line); font-size: 14px; font-weight: 500; color: var(--navy); transition: border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease); }
.wpxh-tagchips a:hover { border-color: var(--blue-200); background: var(--blue-50); color: var(--blue-dark); }
.wpxh-tagchips span { font: 500 11.5px/1 var(--mono); color: var(--muted); }
.wpxh-bigsearch { margin-top: 8px; display: flex; align-items: center; gap: 12px; max-width: 620px; min-height: 56px; padding: 0 8px 0 18px; background: var(--white); border: 1px solid var(--line-strong); border-radius: 12px; box-shadow: 0 8px 24px -16px rgba(15, 23, 42, .3); color: var(--muted); }
.wpxh-bigsearch:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-100); }
.wpxh-bigsearch input { flex: 1; min-width: 0; height: 54px; border: 0; outline: 0; font-size: 16px; color: var(--navy); background: transparent; }
.wpxh-toolbar { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--header-h)); z-index: 40; background: rgba(248, 250, 252, .94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--line); }
.wpxh-toolbar__inner { max-width: var(--container); margin: 0 auto; padding: 12px var(--gutter); display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.wpxh-toolbar__chips { flex: 1 1 420px; min-width: 0; display: flex; gap: 6px; overflow-x: auto; padding: 2px 0; scrollbar-width: thin; }
@media (max-width: 700px) { .wpxh-toolbar__chips { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 32px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 32px), transparent); padding-right: 32px; } }
.wpxh-fchip { flex: none; min-height: 40px; padding: 0 14px; border-radius: 9px; font-size: 14px; font-weight: 500; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; background: var(--white); color: var(--ink); border: 1px solid var(--line); }
.wpxh-fchip span { font: 500 11.5px var(--mono); opacity: .8; }
.wpxh-fchip:hover { border-color: var(--line-strong); color: var(--navy); }
.wpxh-fchip.is-on { background: var(--navy); color: var(--white); border-color: var(--navy); }
.wpxh-toolbar__filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.wpxh-flagbtn { min-height: 40px; padding: 0 12px; border-radius: 9px; font-size: 13.5px; display: inline-flex; align-items: center; gap: 8px; background: var(--white); color: var(--ink); border: 1px solid var(--line-strong); }
.wpxh-flagbtn:hover { color: var(--navy); border-color: var(--blue-300); }
.wpxh-flagbtn__box { width: 16px; height: 16px; border-radius: 4px; display: grid; place-items: center; background: var(--white); border: 1.5px solid var(--line-strong); color: var(--white); }
.wpxh-flagbtn.is-on { border-color: var(--blue); }
.wpxh-flagbtn.is-on .wpxh-flagbtn__box { background: var(--blue); border-color: var(--blue); }
.wpxh-sort select { height: 40px; padding: 0 30px 0 10px; border-radius: 9px; border: 1px solid var(--line-strong); background: var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 10px center no-repeat; -webkit-appearance: none; appearance: none; font-size: 14px; color: var(--navy); cursor: pointer; }
.wpxh-catalogue__main { max-width: var(--container); margin: 0 auto; padding: clamp(24px, 4vw, 40px) clamp(16px, 4vw, 40px) clamp(64px, 8vw, 104px); display: flex; flex-direction: column; gap: clamp(20px, 3vw, 32px); }
.wpxh-catalogue__meta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; font-size: 15px; color: var(--ink); }
.wpxh-catalogue__meta strong { font-weight: 650; color: var(--navy); }
/* Catalogue: the same card as the homepage grid, three across on desktop. */
.wpxh-catalogue__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 20px; align-items: stretch; }
.wpxh-pcard--cat .wpxh-pcard__body { gap: 14px; }
.wpxh-pcard__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.wpxh-pcard__more { border-top: 1px solid var(--surface-2); padding-top: 12px; }
.wpxh-pcard__more summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 36px; cursor: pointer; list-style: none; font-size: 14px; font-weight: 600; color: var(--blue-dark); }
.wpxh-pcard__more summary::-webkit-details-marker { display: none; }
.wpxh-pcard__more summary:hover { color: var(--blue); }
.wpxh-pcard__more[open] .wpxh-faq__icon { background: var(--blue); color: var(--white); }
.wpxh-pcard__more[open] .wpxh-faq__icon::before { content: "−"; }
.wpxh-pcard__moreinner { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding-top: 10px; }
.wpxh-pcard__text { display: flex; flex-direction: column; gap: 8px; font-size: 14.5px; line-height: 1.65; color: var(--muted); text-wrap: pretty; }
.wpxh-pcard__text p { margin: 0; }
.wpxh-pcard__kf { margin: 4px 0 -2px; font-size: 15px; font-weight: 700; letter-spacing: -.02em; color: var(--navy); }
.wpxh-pcard__moreinner .wpxh-ticklist { gap: 9px; }
.wpxh-pcard__moreinner .wpxh-ticklist li { font-size: 14px; gap: 10px; align-items: flex-start; }
.wpxh-pcard__moreinner .wpxh-tick { width: 18px; height: 18px; margin-top: 1px; }
.wpxh-sort { display: flex; align-items: center; gap: 8px; }
.wpxh-catalogue .wpxh-sort select { height: 40px; min-height: 40px; }
.wpxh-sort__label { font-size: 13.5px; color: var(--muted); white-space: nowrap; }
.wpxh-ticklist { display: flex; flex-direction: column; gap: 12px; }
.wpxh-ticklist li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--ink); }
.wpxh-ticklist strong { font-weight: 650; color: var(--navy); }
.wpxh-updated { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; line-height: 1.2; color: var(--muted); white-space: nowrap; }
.wpxh-updated .wpxh-i { flex: none; color: var(--subtle); }
.wpxh-updated time { font-weight: 600; color: var(--ink); }
.wpxh-verchip { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; background: var(--blue-50); border: 1px solid var(--blue-100); font: 500 12px/1 var(--mono); letter-spacing: 0; color: var(--blue); white-space: nowrap; }
.wpxh-pricepanel { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 18px; }
/* Dividers (terms, rating) that wrap to the start of a line fall into the clipped 19px strip on the left. */
.wpxh-pricepanel { margin-left: -19px; clip-path: inset(-40px -40px -40px 19px); }
.wpxh-pricepanel > .wpxh-price { padding-left: 19px; }
.wpxh-pricepanel .wpxh-price { font-size: clamp(34px, 3.4vw, 42px); line-height: 1; letter-spacing: -.045em; font-variant-numeric: tabular-nums; }
.wpxh-pricepanel .woocommerce-Price-currencySymbol { font-size: .5em; font-weight: 600; letter-spacing: 0; vertical-align: .78em; margin-right: 2px; color: var(--ink); }
.wpxh-pricepanel .wpxh-price del .woocommerce-Price-currencySymbol { vertical-align: baseline; font-size: 1em; margin: 0; color: inherit; }
.wpxh-pricepanel.is-free .wpxh-price { background: var(--grad-brand); -webkit-background-clip: text; background-clip: text; color: transparent; padding-bottom: 2px; }
.wpxh-pricepanel__save { display: inline-flex; align-items: center; padding: 6px 9px; border-radius: 999px; background: #ECFDF5; border: 1px solid #A7F3D0; font: 600 12px/1 var(--mono); color: #047857; }
.wpxh-pricepanel__terms { display: flex; flex-direction: column; justify-content: center; align-self: stretch; gap: 3px; padding-left: 18px; border-left: 1px solid var(--line); font-size: 13.5px; line-height: 1.35; color: var(--muted); }
.wpxh-pricepanel__terms b { font-weight: 600; color: var(--navy); }
.wpxh-rating { font-size: 14px; color: var(--muted); white-space: nowrap; }
.wpxh-pricepanel .wpxh-rating { align-self: stretch; display: flex; align-items: center; gap: 5px; padding-left: 18px; border-left: 1px solid var(--line); }
.wpxh-rating span { color: var(--amber); }
.wpxh-empty { padding: 56px 24px; border: 1px dashed var(--line-strong); border-radius: 16px; background: var(--white); display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.wpxh-empty h2 { font-size: 18px; font-weight: 650; letter-spacing: -.01em; }
.wpxh-empty p { font-size: 15px; color: var(--muted); max-width: 420px; }
.wpxh-pagination { margin-top: clamp(32px, 5vw, 48px); }
.wpxh-pagination.wp-block-query-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 8px; }
.wpxh-pagination ul, .wpxh-pagination .wp-block-query-pagination-numbers { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; }
.wpxh-pagination a, .wpxh-pagination span.page-numbers { min-width: 40px; min-height: 40px; padding: 0 12px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 1px solid var(--line); background: var(--white); color: var(--ink); font-size: 14px; font-weight: 500; line-height: 1; text-decoration: none; transition: border-color .15s, color .15s, background-color .15s; }
.wpxh-pagination a:hover { border-color: var(--blue); color: var(--blue); }
.wpxh-pagination a:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.wpxh-pagination .page-numbers.current { background: var(--navy); color: var(--white); border-color: var(--navy); font-weight: 600; }
.wpxh-pagination .page-numbers.dots { min-width: 24px; padding: 0; border-color: transparent; background: transparent; color: var(--muted); }
.wpxh-pagination.wp-block-query-pagination .wp-block-query-pagination-previous, .wpxh-pagination.wp-block-query-pagination .wp-block-query-pagination-next { padding: 0 16px; margin: 0; }
.wpxh-pagination.wp-block-query-pagination .wp-block-query-pagination-previous-arrow, .wpxh-pagination.wp-block-query-pagination .wp-block-query-pagination-next-arrow { margin: 0; }

/* 9 ─ Product page ──────────────────────────────────────────────────────── */
.wpxh-pp { background: var(--surface); }
.wpxh-pp .wpxh-container { max-width: 1200px; padding-inline: clamp(16px, 4vw, 40px); }
.wpxh-pp__crumbs { padding-top: clamp(20px, 3vw, 28px); }
.wpxh-pp__hero { padding-top: clamp(16px, 2.5vw, 24px); display: flex; flex-wrap: wrap; gap: clamp(16px, 2vw, 24px); align-items: stretch; }
.wpxh-pp__main { flex: 2 1 560px; min-width: 0; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: clamp(12px, 2vw, 18px); box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 30px 60px -40px rgba(15, 23, 42, .25); display: flex; flex-direction: column; }
.wpxh-pp__banner { flex: 1 0 auto; border-radius: var(--r-lg); padding: clamp(24px, 4vw, 40px); display: flex; flex-wrap: wrap; align-items: center; gap: 24px; min-height: 280px; }
.wpxh-pp__banner > * { position: relative; }
.wpxh-pp__copy { flex: 1 1 260px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.wpxh-pp__title { font-size: clamp(30px, 3.8vw, 46px); line-height: 1.04; font-weight: 700; letter-spacing: -.04em; text-wrap: balance; }
.wpxh-pp__tagline { font-size: clamp(15px, 1.4vw, 17px); line-height: 1.55; color: var(--ink); max-width: 380px; text-wrap: pretty; }
.wpxh-pp__art { flex: 1 1 230px; min-width: 0; max-width: 340px; margin: 0 auto; display: flex; justify-content: center; }
/* Art wraps under the copy (260 + 24 + 230px no longer fit): the brand chips sit right above it, so drop the mock's repeated tiles. */
.wpxh-pp__banner { container: wpxh-ppbanner / inline-size; }
@container wpxh-ppbanner (max-width: 513px) {
	.wpxh-pp__art .wpxh-mock__tile { display: none; }
	.wpxh-pp__art .wpxh-mock { padding-top: 0; }
	.wpxh-pp__art .wpxh-mock__screen { margin-top: 0; }
}
.wpxh-pp__img { display: block; width: 100%; height: auto; border-radius: var(--r-lg); background: var(--white); box-shadow: 0 30px 50px -24px rgba(30, 58, 138, .45); }
.wpxh-pp__buy { padding: clamp(18px, 2.5vw, 24px) clamp(6px, 1vw, 8px) 4px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px 20px; scroll-margin-top: 150px; }
.wpxh-pp__labels { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.wpxh-pp__labels .wpxh-kind { margin: 0; }
.wpxh-buyform { margin: 0; display: inline-flex; }
.wpxh-wc-add form.cart { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; margin: 0; }
.wpxh-wc-add .single_add_to_cart_button { min-height: 48px; padding: 0 22px; border-radius: var(--r-md); background: var(--blue); color: var(--white); border: 0; font-weight: 600; }
.wpxh-pp__aside { flex: 1 1 280px; min-width: 0; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: clamp(22px, 2.5vw, 28px); display: flex; flex-direction: column; gap: 18px; box-shadow: 0 1px 2px rgba(15, 23, 42, .04); }
.wpxh-pp__aside h2 { font-size: 20px; font-weight: 700; letter-spacing: -.025em; }
.wpxh-pp__facts { display: flex; flex-direction: column; gap: 8px; }
.wpxh-pp__facts + .wpxh-pp__facts { margin-top: 6px; }
.wpxh-speclist li { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--surface-2); font-size: 15px; color: var(--ink); }
.wpxh-speclist li:last-child { border-bottom: 0; }
.wpxh-speclist__row { flex: 1; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 10px; }
.wpxh-speclist__row strong { font-weight: 650; color: var(--navy); }
.wpxh-speclist__row span { font-family: var(--mono); font-size: 13.5px; color: var(--ink); }
.wpxh-pp__custom { margin-top: auto; padding: 14px 16px; border-radius: 12px; background: var(--blue-50); border: 1px solid var(--blue-100); display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 14px; font-weight: 600; color: var(--blue-dark); }
.wpxh-sectabs { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--header-h)); z-index: 40; margin-top: clamp(28px, 4vw, 44px); background: rgba(248, 250, 252, .94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.wpxh-sectabs__inner { max-width: 1200px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); display: flex; gap: 4px; overflow-x: auto; height: 56px; align-items: center; scrollbar-width: none; }
.wpxh-sectabs__inner::-webkit-scrollbar { display: none; }
.wpxh-sectabs a { flex: none; min-height: 36px; padding: 0 13px; border-radius: 9px; font-size: 14px; font-weight: 500; color: var(--ink); display: inline-flex; align-items: center; white-space: nowrap; }
.wpxh-sectabs a:hover { background: var(--white); color: var(--navy); }
.wpxh-sectabs a.is-active { background: var(--white); color: var(--blue-dark); box-shadow: inset 0 0 0 1px var(--line); }
.wpxh-pp__body { padding-bottom: clamp(56px, 7vw, 80px); }
/* html scroll-padding-top already covers the header; this adds the sticky section tabs (56px). */
.wpxh-pp__sec { scroll-margin-top: 60px; padding-top: clamp(44px, 6vw, 64px); display: flex; flex-direction: column; gap: 20px; }
.wpxh-sechead { display: flex; align-items: center; gap: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.wpxh-sechead span { font: 500 12px var(--mono); color: var(--blue); }
.wpxh-sechead h2 { font-size: clamp(22px, 2.4vw, 28px); font-weight: 700; letter-spacing: -.03em; }
.wpxh-prose { display: flex; flex-direction: column; gap: 14px; font-size: 16px; line-height: 1.75; color: var(--ink); max-width: 920px; }
.wpxh-prose > * { margin: 0; }
.wpxh-prose .is-lead { font-size: clamp(17px, 1.6vw, 19px); line-height: 1.65; color: var(--navy); }
.wpxh-prose--rich h2 { font-size: clamp(20px, 2vw, 24px); letter-spacing: -.025em; margin-top: 18px; }
.wpxh-prose--rich h3, .wpxh-prose--rich h4 { font-size: 18px; letter-spacing: -.015em; margin-top: 10px; }
.wpxh-prose--rich ul, .wpxh-prose--rich ol { padding-left: 1.3em; display: flex; flex-direction: column; gap: 8px; }
.wpxh-prose--rich li::marker { color: var(--blue); }
.wpxh-prose--rich a { text-decoration: underline; text-underline-offset: 2px; }
.wpxh-prose--rich blockquote { margin: 0; padding: 6px 0 6px 20px; border-left: 3px solid var(--blue); font-size: 18px; font-weight: 500; color: var(--navy); }
.wpxh-prose--rich code { font-family: var(--mono); font-size: .9em; padding: 2px 6px; border-radius: 5px; background: var(--surface-2); }
.wpxh-prose--rich table { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.wpxh-prose--rich th, .wpxh-prose--rich td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: left; }
.wpxh-whygrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 14px; }
.wpxh-whycard { position: relative; overflow: hidden; padding: 22px; border-radius: 16px; background: var(--navy); color: #E2E8F0; display: flex; flex-direction: column; gap: 14px; }
.wpxh-whycard::before { content: ""; position: absolute; inset: 0; background: radial-gradient(80% 60% at 100% 0%, rgba(37, 99, 235, .35), transparent 70%); }
.wpxh-whycard > * { position: relative; }
.wpxh-whycard svg { color: var(--cyan-light); }
.wpxh-whycard p { font-size: 15px; line-height: 1.6; }
.wpxh-muted-note { font-size: 15.5px; line-height: 1.65; color: var(--muted); max-width: 920px; }
.wpxh-featgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 14px; }
.wpxh-feat { padding: 22px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); display: flex; gap: 16px; transition: border-color .2s, transform .2s var(--ease), box-shadow .2s; }
.wpxh-feat:hover { border-color: var(--blue-200); transform: translateY(-2px); box-shadow: 0 16px 32px -20px rgba(37, 99, 235, .35); }
.wpxh-feat__icon { flex: none; width: 44px; height: 44px; border-radius: 11px; background: var(--blue-50); color: var(--blue); display: grid; place-items: center; }
.wpxh-feat__icon--sm { width: 40px; height: 40px; border-radius: var(--r-md); }
.wpxh-feat > div { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.wpxh-feat h3, .wpxh-setcard h3 { font-size: 16.5px; font-weight: 650; letter-spacing: -.015em; }
.wpxh-feat p, .wpxh-setcard p { font-size: 14.5px; line-height: 1.6; color: var(--muted); text-wrap: pretty; }
.wpxh-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 16px; }
/* Four cards/steps: 1, 2 or 4 per row, never 3 + 1 orphan (3-column ranges: why 778-1041px, steps 722-967px). */
.wpxh-pp__sec:has(> .wpxh-whygrid, > .wpxh-steps) { container-type: inline-size; }
@container (min-width: 778px) and (max-width: 1041px) { .wpxh-whygrid:has(> :nth-child(4):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container (min-width: 722px) and (max-width: 967px) { .wpxh-steps:has(> :nth-child(4):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.wpxh-steps li { padding: 22px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); display: flex; flex-direction: column; gap: 12px; }
.wpxh-steps__num { display: flex; align-items: center; gap: 10px; }
.wpxh-steps__num span { width: 34px; height: 34px; border-radius: 50%; background: var(--navy); color: var(--white); display: grid; place-items: center; font: 600 14px var(--mono); }
.wpxh-steps__num i { flex: 1; height: 2px; background: linear-gradient(90deg, var(--blue), rgba(6, 182, 212, 0)); }
.wpxh-steps h3 { font-size: 16.5px; font-weight: 650; letter-spacing: -.015em; color: var(--blue-dark); }
.wpxh-steps p { font-size: 14.5px; line-height: 1.6; color: var(--muted); }
.wpxh-setcard { padding: 22px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px; }
.wpxh-setcard__head { display: flex; align-items: flex-start; gap: 12px; }
.wpxh-setcard__head h3 { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.wpxh-shots { list-style: none; margin: 0; padding: 0 0 6px; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px, 360px); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.wpxh-shots li { scroll-snap-align: start; display: flex; flex-direction: column; gap: 8px; }
.wpxh-shots a { display: block; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); background: var(--white); }
.wpxh-shots img { display: block; width: 100%; aspect-ratio: 16/10; object-fit: cover; object-position: top; transition: transform .3s var(--ease); }
.wpxh-shots a:hover img { transform: scale(1.02); }
.wpxh-shots__cap { font-size: 13px; color: var(--muted); }
.wpxh-video { max-width: 820px; scroll-margin-top: 60px; }
.wpxh-yt { position: relative; display: block; aspect-ratio: 16/9; border-radius: 16px; overflow: hidden; background: var(--navy); }
.wpxh-yt img { width: 100%; height: 100%; object-fit: cover; opacity: .85; transition: opacity .2s; }
.wpxh-yt:hover img { opacity: 1; }
.wpxh-yt__play { position: absolute; inset: 0; margin: auto; width: 72px; height: 72px; border-radius: 50%; background: #FF0000; color: var(--white); display: grid; place-items: center; box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .5); }
.wpxh-yt__play svg { margin-left: 4px; fill: currentColor; }
.wpxh-yt iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.wpxh-supportgrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 14px; }
.wpxh-supportcard { display: flex; gap: 14px; padding: 20px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); color: var(--navy); transition: border-color .2s; }
.wpxh-supportcard:hover { border-color: var(--blue-300); color: var(--navy); }
.wpxh-supportcard > span:last-child { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.wpxh-supportcard strong { font-size: 16px; font-weight: 650; }
.wpxh-supportcard span span { font-size: 14px; line-height: 1.5; color: var(--muted); overflow-wrap: break-word; }
/* The address sits on its own line and may only break at the @ (never mid-word). */
.wpxh-supportcard__mail { display: block; font-size: 13px; font-weight: 600; letter-spacing: -.005em; color: var(--navy); overflow-wrap: normal; word-break: normal; }
.wpxh-faqs { display: flex; flex-direction: column; gap: 10px; }
.wpxh-faq, .wp-block-details.is-style-faq { border-radius: var(--r-lg); background: var(--white); border: 1px solid var(--line); overflow: hidden; transition: border-color .2s; }
.wpxh-faq[open], .wp-block-details.is-style-faq[open] { border-color: var(--blue-200); }
.wpxh-faq summary, .wp-block-details.is-style-faq summary { min-height: 60px; padding: 16px 20px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; font-size: 15.5px; font-weight: 600; color: var(--navy); list-style: none; }
.wpxh-faq summary::-webkit-details-marker, .wp-block-details.is-style-faq summary::-webkit-details-marker { display: none; }
.wpxh-faq__icon, .wp-block-details.is-style-faq summary::after { flex: none; width: 28px; height: 28px; border-radius: var(--r-sm); background: var(--blue-50); color: var(--blue); display: grid; place-items: center; font: 500 16px var(--mono); }
.wpxh-faq__icon::before, .wp-block-details.is-style-faq summary::after { content: "+"; }
.wpxh-faq[open] .wpxh-faq__icon, .wpxh-toc[open] .wpxh-faq__icon { background: var(--blue); color: var(--white); }
.wpxh-faq[open] .wpxh-faq__icon::before, .wpxh-toc[open] .wpxh-faq__icon::before { content: "−"; }
.wp-block-details.is-style-faq[open] summary::after { content: "−"; background: var(--blue); color: var(--white); }
.wpxh-faq__a, .wp-block-details.is-style-faq > :not(summary) { padding: 0 64px 18px 20px; font-size: 15px; line-height: 1.65; color: var(--muted); margin: 0; }
.wpxh-faq__a p { margin: 0 0 8px; }
.wpxh-gallery { width: min(1080px, calc(100% - 32px)); max-width: none; max-height: calc(100vh - 32px); padding: 0; border: 0; border-radius: 18px; overflow: hidden; background: var(--navy); color: var(--white); box-shadow: 0 40px 100px -20px rgba(2, 6, 23, .8), 0 0 0 1px rgba(148, 163, 184, .18); }
.wpxh-gallery[open] { display: flex; flex-direction: column; }
.wpxh-gallery::backdrop { background: rgba(2, 6, 23, .82); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); animation: wpxh-fade .3s ease both; }
.wpxh-gallery.is-closing::backdrop { animation: wpxh-fade-out .2s ease-in both; }
@keyframes wpxh-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes wpxh-fade-out { from { opacity: 1; } to { opacity: 0; } }
.wpxh-gallery__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 14px 12px 20px; border-bottom: 1px solid rgba(148, 163, 184, .16); font-size: 15px; font-weight: 600; }
.wpxh-gallery__title { display: flex; align-items: baseline; gap: 12px; min-width: 0; }
.wpxh-gallery__title > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wpxh-gallery__count { flex: none; font: 500 12px var(--mono); color: var(--cyan-300); padding: 3px 8px; border-radius: 6px; background: rgba(6, 182, 212, .12); }
.wpxh-gallery .wpxh-iconbtn--light { background: rgba(148, 163, 184, .1); border-color: rgba(148, 163, 184, .2); color: #E2E8F0; transition: background-color .2s, transform .2s; }
.wpxh-gallery .wpxh-iconbtn--light:hover { background: rgba(148, 163, 184, .22); color: var(--white); transform: rotate(90deg); }
.wpxh-gallery__stage { position: relative; flex: 1; min-height: 0; display: grid; place-items: center; padding: clamp(12px, 2vw, 24px) clamp(56px, 7vw, 84px); background: radial-gradient(60% 70% at 50% 40%, rgba(37, 99, 235, .22), transparent 70%), #070D1A; overflow: hidden; touch-action: pan-y; }
.wpxh-gallery__stage img { display: block; max-width: 100%; max-height: calc(100vh - 210px); width: auto; height: auto; border-radius: 10px; box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .7); will-change: transform, opacity; user-select: none; -webkit-user-drag: none; }
.wpxh-gallery__nav { position: absolute; top: 50%; z-index: 2; width: 48px; height: 48px; margin-top: -24px; border-radius: 50%; border: 1px solid rgba(148, 163, 184, .28); background: rgba(15, 23, 42, .72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: var(--white); display: grid; place-items: center; cursor: pointer; transition: background-color .2s, border-color .2s, transform .25s var(--ease); }
.wpxh-gallery__nav--prev { left: clamp(8px, 1.5vw, 18px); }
.wpxh-gallery__nav--next { right: clamp(8px, 1.5vw, 18px); }
.wpxh-gallery__nav:hover { background: var(--blue); border-color: var(--blue); }
.wpxh-gallery__nav--prev:hover { transform: translateX(-3px); }
.wpxh-gallery__nav--next:hover { transform: translateX(3px); }
.wpxh-gallery__nav:active { transform: scale(.94); }
.wpxh-gallery__thumbs { display: flex; gap: 8px; padding: 12px 16px; overflow-x: auto; border-top: 1px solid rgba(148, 163, 184, .16); scrollbar-width: thin; scrollbar-color: rgba(148, 163, 184, .3) transparent; }
.wpxh-gallery__thumbs button { flex: none; min-height: 38px; padding: 0 14px; border-radius: 9px; cursor: pointer; font-size: 13px; font-weight: 500; background: transparent; color: #CBD5E1; border: 1px solid rgba(148, 163, 184, .22); transition: background-color .25s, color .25s, border-color .25s, transform .25s var(--ease); }
.wpxh-gallery__thumbs button:hover { color: var(--white); border-color: rgba(148, 163, 184, .45); transform: translateY(-1px); }
.wpxh-gallery__thumbs button[aria-current="true"] { background: var(--blue); color: var(--white); border-color: var(--blue); }
@media (max-width: 600px) {
	.wpxh-gallery__stage { padding: 12px; }
	.wpxh-gallery__nav { width: 40px; height: 40px; margin-top: -20px; }
}
.wpxh-stickybuy { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--white); border-top: 1px solid var(--line); box-shadow: 0 -10px 30px -12px rgba(15, 23, 42, .25); padding: 12px 16px; display: flex; align-items: center; gap: 12px; transform: translateY(100%); transition: transform .3s var(--ease); }
.wpxh-stickybuy.is-visible { transform: none; }
.wpxh-stickybuy[hidden] { display: none; }
.wpxh-stickybuy__info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.wpxh-stickybuy__info > span { font-size: 13px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wpxh-stickybuy .wpxh-price { font-size: 18px; }
@media (min-width: 768px) { .wpxh-stickybuy { display: none !important; } }
.wpxh-related { background: var(--white); border-top: 1px solid var(--line); }
.wpxh-related .wpxh-container { max-width: 1200px; padding: clamp(48px, 6vw, 72px) clamp(16px, 4vw, 40px); display: flex; flex-direction: column; gap: 24px; }
.wpxh-related__bar { position: relative; overflow: hidden; border-radius: var(--r-lg); background: var(--navy); color: var(--white); padding: 18px 22px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; }
.wpxh-related__bar::before { content: ""; position: absolute; inset: 0; background: radial-gradient(40% 140% at 100% 50%, rgba(37, 99, 235, .45), transparent 70%); }
.wpxh-related__bar > * { position: relative; }
.wpxh-related__bar h2 { font-size: clamp(20px, 2.2vw, 24px); letter-spacing: -.03em; color: var(--white); }
.wpxh-related__bar a { font-size: 14px; font-weight: 600; color: var(--cyan-300); }
.wpxh-related__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 255px), 1fr)); gap: 16px; }
.wpxh-rcard { border: 1px solid var(--line); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; background: var(--white); transition: transform .25s var(--ease), box-shadow .25s, border-color .25s; }
.wpxh-rcard:hover { transform: translateY(-3px); border-color: var(--blue-200); box-shadow: var(--shadow-lift); }
.wpxh-rcard__banner { margin: 12px 12px 0; border-radius: 12px; padding: 16px; min-height: 112px; display: flex; flex-direction: column; justify-content: space-between; gap: 10px; }
.wpxh-rcard__banner > * { position: relative; }
.wpxh-rcard__label { font-size: 13.5px; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; max-width: 75%; }
.wpxh-rcard__icons { display: flex; justify-content: space-between; align-items: flex-end; --chip: 34px; }
.wpxh-rcard__body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 12px; flex: 1; }
.wpxh-rcard__body h3 { font-size: 16.5px; line-height: 1.3; font-weight: 700; letter-spacing: -.02em; }
.wpxh-rcard__body h3 a { color: var(--navy); }
.wpxh-minispecs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.wpxh-minispecs li { display: flex; gap: 8px; font-size: 13px; line-height: 1.4; color: var(--ink); }
.wpxh-minispecs li > span:first-child { color: var(--blue); flex: none; }
.wpxh-minispecs strong { font-weight: 650; color: var(--navy); }
.wpxh-rcard .wpxh-price { font-size: 20px; margin-top: auto; }
.wpxh-rcard__desc { font-size: 13.5px; line-height: 1.6; color: var(--muted); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }

/* 10 ─ Pages ────────────────────────────────────────────────────────────── */
.wpxh-pagehero { position: relative; overflow: hidden; background: linear-gradient(180deg, #F1F6FF 0%, var(--white) 100%); border-bottom: 1px solid var(--line); }
.wpxh-pagehero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(#CBD5E1 1px, transparent 1px); background-size: 22px 22px; opacity: .7; -webkit-mask-image: linear-gradient(90deg, transparent 35%, #000); mask-image: linear-gradient(90deg, transparent 35%, #000); }
.wpxh-pagehero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(38% 110% at 100% 0%, rgba(37, 99, 235, .16), transparent 70%), radial-gradient(28% 90% at 0% 100%, rgba(6, 182, 212, .1), transparent 70%); pointer-events: none; }
/* Brand mark, large and faint, on the right of the header (not next to the quick-answers card). */
.wpxh-pagehero__inner::after { content: ""; position: absolute; top: 50%; right: clamp(16px, 4vw, 40px); width: clamp(170px, 20vw, 280px); aspect-ratio: 1; transform: translateY(-50%); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M5 11 L13.5 29 L22 11' fill='none' stroke='%232563EB' stroke-width='5.5' stroke-linejoin='round' stroke-linecap='round'/%3E%3Cpath d='M18 11 L26.5 29 L35 11' fill='none' stroke='%2306B6D4' stroke-width='5.5' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; opacity: .09; pointer-events: none; }
.wpxh-pagehero.has-aside .wpxh-pagehero__inner::after { display: none; }
@media (max-width: 719px) { .wpxh-pagehero__inner::after { display: none; } }
.wpxh-pagehero.is-dark { background: var(--navy); border-bottom: 0; color: var(--white); }
.wpxh-pagehero.is-dark::before { background-image: radial-gradient(rgba(148, 163, 184, .16) 1px, transparent 1px); }
.wpxh-pagehero.is-dark .wpxh-pagehero__title { color: var(--white); }
.wpxh-pagehero.is-dark .wpxh-crumbs--mono a, .wpxh-pagehero.is-dark .wpxh-crumbs--mono [aria-current] { color: var(--subtle); }
.wpxh-pagehero__inner { position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; padding: clamp(40px, 5.5vw, 72px) clamp(16px, 4vw, 40px); display: flex; flex-direction: column; gap: 18px; }
.wpxh-pagehero__title { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.02; font-weight: 700; letter-spacing: -.045em; }
.wpxh-pagehero__title::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 20px; border-radius: 4px; background: var(--grad-brand); }
.wpxh-pagehero__intro { font-size: clamp(17px, 1.6vw, 19px); line-height: 1.6; color: var(--ink); max-width: 660px; }
.wpxh-pagehero__stat { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; margin: 0; padding: 7px 14px 7px 12px; border-radius: 999px; background: var(--white); border: 1px solid var(--line); box-shadow: 0 1px 2px rgba(15, 23, 42, .04); font: 500 13px/1.2 var(--mono); color: var(--navy); }
.wpxh-pagehero__stat svg { color: var(--blue); flex: none; }
.wpxh-pagehero.is-dark .wpxh-pagehero__stat { background: rgba(255, 255, 255, .06); border-color: rgba(148, 163, 184, .25); box-shadow: none; color: #E2E8F0; }
.wpxh-pagehero.is-dark .wpxh-pagehero__stat svg { color: var(--blue-light); }
.wpxh-pagehero.is-dark .wpxh-pagehero__intro { color: rgba(226, 232, 240, .8); }
.wpxh-pagehero__copy { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
@media (min-width: 960px) {
	.wpxh-pagehero.has-aside .wpxh-pagehero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 400px); align-items: center; gap: clamp(32px, 5vw, 72px); }
}
/* "Quick answers" card: links to the questions answered further down the page. */
.wpxh-quickqa { padding: clamp(18px, 2.2vw, 24px); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-xl); box-shadow: var(--shadow-card); }
.wpxh-quickqa__label { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; font: 500 12px/1.2 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--blue); }
.wpxh-quickqa__list { list-style: none; margin: 0; padding: 0; }
.wpxh-quickqa__list li + li { border-top: 1px solid var(--line); }
.wpxh-quickqa__list a { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 2px; font-size: 15px; line-height: 1.4; font-weight: 500; color: var(--navy); text-decoration: none; }
.wpxh-quickqa__list a svg { flex: none; color: var(--subtle); transition: transform .15s ease, color .15s ease; }
.wpxh-quickqa__list a:hover { color: var(--blue); }
.wpxh-quickqa__list a:hover svg { color: var(--blue); transform: translateY(2px); }
details.wpxh-qa { scroll-margin-top: 96px; }
.wpxh-pagebody { max-width: 1200px; margin: 0 auto; padding: clamp(32px, 5vw, 56px) clamp(16px, 4vw, 40px) clamp(64px, 8vw, 96px); }
.wpxh-pagebody > .wpxh-prose { max-width: none; }
.wpxh-pagebody > .wpxh-prose > :is(p, h2, h3, h4, ul, ol, blockquote, table, figure) { max-width: 820px; }
.wpxh-legal__content p:empty { display: none; }
.wpxh-pagebody .wp-block-post-content > * + * { margin-top: 16px; }

/* Legal */
.wpxh-progress { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--header-h)); z-index: 45; height: 3px; margin-bottom: -3px; }
.wpxh-progress i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #2563EB, #06B6D4); }
.wpxh-legal__hero { position: relative; overflow: hidden; background: var(--white); border-bottom: 1px solid var(--line); }
.wpxh-legal__hero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(#E2E8F0 1px, transparent 1px); background-size: 22px 22px; -webkit-mask-image: linear-gradient(90deg, transparent 40%, #000); mask-image: linear-gradient(90deg, transparent 40%, #000); }
.wpxh-legal__heroin { position: relative; max-width: 1200px; margin: 0 auto; padding: clamp(36px, 5vw, 64px) clamp(16px, 4vw, 40px); display: flex; flex-direction: column; gap: 20px; }
.wpxh-legal__titlerow { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 20px; }
.wpxh-legal__titles { display: flex; flex-direction: column; gap: 14px; max-width: 720px; }
.wpxh-legal__icon { width: 52px; height: 52px; border-radius: 14px; background: var(--grad-brand); display: grid; place-items: center; color: var(--white); box-shadow: 0 12px 28px -12px rgba(37, 99, 235, .6); }
.wpxh-legal__titles h1 { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.02; font-weight: 700; letter-spacing: -.045em; }
.wpxh-legal__meta { display: flex; flex-wrap: wrap; gap: 10px; }
.wpxh-legal__updated { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 9px; background: var(--surface); border: 1px solid var(--line); font: 500 12.5px var(--mono); color: var(--ink); }
.wpxh-legal__updated i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); }
.wpxh-legal__wrap { max-width: 1200px; margin: 0 auto; padding: clamp(28px, 4vw, 48px) clamp(16px, 4vw, 40px) clamp(64px, 8vw, 96px); display: flex; align-items: flex-start; gap: clamp(40px, 5vw, 64px); }
/* Policy pages and blog posts: the text column is capped at a comfortable reading measure
   (about 75 characters a line); on wide screens the contents list sits beside it. */
.wpxh-legal__doc { flex: 1 1 0; min-width: 0; max-width: 780px; display: flex; flex-direction: column; gap: clamp(28px, 4vw, 40px); }
.wpxh-legal__content { max-width: none; }
.wpxh-legal__side { display: none; }
.wpxh-sidetoc__title { display: flex; align-items: center; gap: 8px; margin: 0 0 12px 16px; font: 600 11.5px var(--mono); letter-spacing: .09em; text-transform: uppercase; color: var(--muted); }
.wpxh-sidetoc__title svg { color: var(--blue); }
.wpxh-sidetoc ol { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--line); display: flex; flex-direction: column; }
.wpxh-sidetoc a { display: flex; align-items: baseline; gap: 10px; margin-left: -1px; padding: 7px 10px 7px 14px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.4; color: var(--ink); transition: color .15s, border-color .15s, background-color .15s; }
.wpxh-sidetoc a span { flex: none; font: 500 11.5px var(--mono); color: var(--blue); }
.wpxh-sidetoc a:hover { color: var(--blue-dark); background: var(--blue-50); }
.wpxh-sidetoc a.is-active { border-left-color: var(--blue); color: var(--navy); font-weight: 600; background: var(--blue-50); }
@media (min-width: 1100px) {
	.wpxh-legal__wrap.has-toc .wpxh-legal__side { display: block; flex: 0 0 236px; position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--header-h) + 28px); max-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px) - var(--header-h) - 56px); overflow-y: auto; overscroll-behavior: contain; }
	.wpxh-legal__wrap.has-toc .wpxh-toc { display: none; }
}
.wpxh-callout { display: flex; gap: 14px; padding: 18px 20px; border-radius: var(--r-lg); background: var(--blue-50); border: 1px solid var(--blue-200); color: #1E3A8A; }
.wpxh-callout > svg { color: var(--blue); margin-top: 1px; }
.wpxh-callout strong { display: block; font-size: 15px; margin-bottom: 4px; }
.wpxh-callout p { font-size: 15px; line-height: 1.6; }
.wpxh-toc { background: var(--white); border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.wpxh-toc summary { min-height: 56px; padding: 0 20px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 15.5px; font-weight: 650; }
.wpxh-toc summary::-webkit-details-marker { display: none; }
.wpxh-toc summary > span:first-child { display: flex; align-items: center; gap: 10px; }
.wpxh-toc summary svg { color: var(--blue); }
.wpxh-toc summary small { font: 500 12px var(--mono); color: var(--muted); }
.wpxh-toc ol { list-style: none; margin: 0; padding: 4px 12px 14px; border-top: 1px solid var(--surface-2); display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 2px 16px; }
.wpxh-toc a { display: flex; align-items: center; gap: 12px; padding: 10px 8px; border-radius: 9px; font-size: 14.5px; color: var(--ink); }
.wpxh-toc a:hover { background: var(--surface); color: var(--blue-dark); }
.wpxh-toc a span { font: 500 12px var(--mono); color: var(--blue); }
.wpxh-legal__content { gap: 16px; }
.wpxh-legal__content .wpxh-legal__h { display: flex; align-items: center; gap: 14px; font-size: clamp(22px, 2.4vw, 27px); line-height: 1.2; font-weight: 700; letter-spacing: -.03em; margin-top: clamp(20px, 3vw, 28px); padding-top: clamp(20px, 3vw, 28px); border-top: 1px solid var(--line); scroll-margin-top: 110px; }
.wpxh-legal__h[data-num]::before { content: attr(data-num); flex: none; display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 34px; padding: 0 9px; border-radius: var(--r-md); background: var(--blue-50); border: 1px solid var(--blue-100); font: 600 15px/1 var(--mono); color: var(--blue); letter-spacing: 0; }
.wpxh-legal__content p, .wpxh-legal__content li { font-size: 16.5px; line-height: 1.8; }
.wpxh-helpbox { position: relative; overflow: hidden; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; padding: clamp(22px, 3vw, 30px); border-radius: var(--r-xl); background: var(--navy); color: var(--white); }
.wpxh-helpbox::before { content: ""; position: absolute; inset: 0; background: radial-gradient(50% 120% at 100% 0%, rgba(37, 99, 235, .45), transparent 70%); }
.wpxh-helpbox > * { position: relative; }
.wpxh-helpbox__txt { display: flex; align-items: center; gap: 14px; }
.wpxh-helpbox__icon { flex: none; width: 44px; height: 44px; border-radius: 12px; background: rgba(255, 255, 255, .1); display: grid; place-items: center; color: var(--cyan-300); }
.wpxh-helpbox__txt strong { display: block; font-size: 17px; font-weight: 650; }
.wpxh-helpbox__txt span { font-size: 14px; color: var(--subtle); }
.wpxh-relpol { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 22px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); }
.wpxh-relpol > div:first-child strong { display: block; font-size: 16px; font-weight: 650; }
.wpxh-relpol > div:first-child span { font-size: 14px; color: var(--muted); }
.wpxh-totop { position: fixed; right: clamp(16px, 3vw, 28px); bottom: clamp(16px, 3vw, 28px); z-index: 55; width: 48px; height: 48px; border-radius: 14px; border: 1px solid var(--line); background: var(--white); box-shadow: 0 12px 30px -12px rgba(15, 23, 42, .35); display: grid; place-items: center; color: var(--blue); }
.wpxh-totop[hidden] { display: none; }

/* Services page */
.wpxh-svchero__grid { padding-block: clamp(56px, 8vw, 104px); display: flex; flex-wrap: wrap; gap: clamp(40px, 6vw, 72px); align-items: flex-end; }
.wpxh-svchero__copy { flex: 1.3 1 460px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.wpxh-svchero__copy > * { margin: 0 !important; }
.wpxh-svchero__badge { align-self: flex-start; padding: 6px 12px; border-radius: var(--r-sm); border: 1px solid rgba(148, 163, 184, .25); font: 500 12.5px var(--mono) !important; color: var(--cyan-300); }
.wpxh-svchero__title { font-size: clamp(38px, 5.4vw, 70px) !important; line-height: 1 !important; letter-spacing: -.045em !important; color: var(--white) !important; text-wrap: balance; }
.wpxh-svcnav { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; border-top: 1px solid rgba(148, 163, 184, .2); margin: 0 !important; }
.wpxh-svcnav a { display: flex; align-items: center; gap: 16px; padding: 18px 4px; border-bottom: 1px solid rgba(148, 163, 184, .2); color: var(--white); transition: padding .25s var(--ease), color .2s; }
.wpxh-svcnav a:hover { padding-left: 12px; color: var(--cyan-300); }
.wpxh-svcnav a > span:first-child { font: 500 12px var(--mono); color: var(--subtle); }
.wpxh-svcnav a svg { color: var(--cyan-light); }
.wpxh-svcnav a b { flex: 1; font-size: clamp(16px, 1.6vw, 19px); font-weight: 600; letter-spacing: -.02em; }
.wpxh-svcnav a i { font-style: normal; font-family: var(--mono); color: var(--subtle); }
.wpxh-svclist { display: flex; flex-direction: column; gap: clamp(72px, 9vw, 120px); padding-block: clamp(56px, 8vw, 104px); }
.wpxh-svclist > * { margin: 0 !important; }
.wpxh-svcrow { scroll-margin-top: 100px; display: flex; flex-wrap: wrap; gap: clamp(32px, 5vw, 64px); align-items: center; }
.wpxh-svcrow.is-reverse { flex-direction: row-reverse; }
.wpxh-svcrow__copy { flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.wpxh-svcrow__copy > * { margin: 0 !important; }
.wpxh-svcrow__label { display: flex; align-items: center; gap: 12px; font: 500 12px var(--mono); color: var(--muted); }
.wpxh-svcrow__label b { font: 500 13px var(--mono); color: var(--blue); }
.wpxh-svcrow__label i { height: 1px; width: 40px; background: var(--blue-200); }
.wpxh-svcrow__label span { display: inline-flex; align-items: center; gap: 8px; }
.wpxh-svcrow__h { font-size: clamp(30px, 3.6vw, 46px) !important; line-height: 1.05 !important; letter-spacing: -.04em !important; }
.wpxh-svcrow__p { font-size: 17px; line-height: 1.65; color: var(--ink); text-wrap: pretty; }
.wpxh-checklist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px 24px; }
.wpxh-checklist li { display: flex; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--ink); margin: 0; }
.wpxh-checklist li::before { content: ""; flex: none; width: 20px; height: 20px; border-radius: 50%; margin-top: 1px; background: var(--blue-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat; }
.wpxh-sec--dark .wpxh-checklist li { color: #E2E8F0; }
.wpxh-sec--dark .wpxh-checklist li::before { background-color: rgba(37, 99, 235, .25); }
.wpxh-svcrow__links { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.wpxh-svcrow__links p { margin: 0; }
.wpxh-svcrow__links a { font-size: 15.5px; font-weight: 600; }
.wpxh-svcvis { flex: 1 1 440px; min-width: 0; position: relative; border-radius: var(--r-2xl); padding: clamp(24px, 4vw, 44px); overflow: hidden; margin: 0 !important; }
.wpxh-svcvis--tint { background: var(--grad-tint); border: 1px solid var(--blue-100); }
.wpxh-svcvis--tint::before { content: ""; position: absolute; inset: 0; background-image: var(--dot-bg); background-size: 20px 20px; }
.wpxh-svcvis--dark { background: var(--navy); }
.wpxh-svcvis--dark::before { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 60% at 20% 10%, rgba(37, 99, 235, .4), transparent 70%), radial-gradient(rgba(148, 163, 184, .16) 1px, transparent 1px) 0 0/20px 20px; }
.wpxh-svcvis--white { background: var(--white); border: 1px solid var(--line); box-shadow: 0 30px 60px -40px rgba(15, 23, 42, .3); padding: clamp(20px, 3vw, 32px); }
.wpxh-svcvis > * { position: relative; }
.wpxh-mini-editor { background: var(--white); border-radius: var(--r-lg); box-shadow: 0 30px 60px -30px rgba(30, 58, 138, .45); overflow: hidden; }
.wpxh-mini-editor__bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--line); background: var(--surface); font: 500 11px var(--mono); color: var(--muted); }
.wpxh-mini-editor__bar .wpxh-dots i { width: 9px; height: 9px; }
.wpxh-mini-editor__bar b { padding: 4px 10px; border-radius: 6px; background: var(--blue); color: var(--white); font: 600 11px var(--sans); }
.wpxh-mini-editor__body { display: flex; }
.wpxh-mini-editor__canvas { flex: 1; min-width: 0; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.wpxh-mini-editor__sel { position: relative; padding: 14px; border-radius: var(--r-md); border: 2px solid var(--blue); display: flex; flex-direction: column; gap: 6px; }
.wpxh-mini-editor__sel small { position: absolute; top: -10px; left: 10px; padding: 1px 6px; border-radius: 4px; background: var(--blue); color: var(--white); font: 500 11px var(--mono); }
.wpxh-mini-editor__sel i { height: 7px; border-radius: 4px; background: var(--line-strong); }
.wpxh-mini-editor__sel i:first-of-type { height: 10px; width: 70%; background: var(--navy); }
.wpxh-mini-editor__sel i:nth-of-type(2) { width: 90%; } .wpxh-mini-editor__sel i:nth-of-type(3) { width: 60%; }
.wpxh-mini-editor__cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.wpxh-mini-editor__cols i { height: 56px; border-radius: var(--r-sm); background: var(--blue-50); border: 1px solid var(--blue-100); }
.wpxh-mini-editor__add { height: 40px; border-radius: var(--r-sm); border: 1px dashed var(--line-strong); display: grid; place-items: center; font-size: 18px; color: var(--subtle); }
.wpxh-mini-editor__side { width: 130px; flex: none; border-left: 1px solid var(--line); padding: 14px 12px; display: flex; flex-direction: column; gap: 10px; font-size: 12px; }
.wpxh-mini-editor__side small { font: 500 11px var(--mono); color: var(--muted); }
.wpxh-mini-editor__side i { height: 26px; border-radius: 6px; border: 1px solid var(--line); }
.wpxh-mini-editor__swatches { display: flex; gap: 5px; }
.wpxh-mini-editor__swatches b { width: 18px; height: 18px; border-radius: 50%; background: var(--blue); }
.wpxh-mini-editor__swatches b:nth-child(2) { background: var(--cyan); } .wpxh-mini-editor__swatches b:nth-child(3) { background: var(--navy); }
.wpxh-checkout-mock { background: var(--white); border-radius: var(--r-lg); padding: 18px; display: flex; flex-direction: column; gap: 12px; box-shadow: 0 30px 60px -24px rgba(2, 6, 23, .8); max-width: 380px; color: var(--navy); }
.wpxh-checkout-mock__head { display: flex; justify-content: space-between; align-items: center; font-size: 15px; font-weight: 700; }
.wpxh-checkout-mock__steps { display: flex; gap: 4px; }
.wpxh-checkout-mock__steps i { width: 18px; height: 4px; border-radius: 2px; background: var(--blue); }
.wpxh-checkout-mock__steps i:last-child { background: var(--line); }
.wpxh-checkout-mock__opt { display: flex; justify-content: space-between; align-items: center; padding: 10px 12px; border-radius: 9px; border: 1px solid var(--line); font-size: 13px; color: var(--ink); }
.wpxh-checkout-mock__opt.is-on { border: 1.5px solid var(--blue); background: var(--blue-50); color: var(--navy); font-weight: 600; }
.wpxh-checkout-mock__total { display: flex; justify-content: space-between; padding-top: 10px; border-top: 1px solid var(--surface-2); font-size: 14px; font-weight: 700; }
.wpxh-checkout-mock__btn { height: 40px; border-radius: 9px; background: var(--blue); color: var(--white); font-size: 13.5px; font-weight: 600; display: grid; place-items: center; }
.wpxh-chipstack { align-self: flex-end; display: flex; flex-direction: column; gap: 8px; width: min(100%, 300px); margin: -30px 0 0 auto; }
.wpxh-chipstack span { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-radius: 11px; background: var(--navy-2); border: 1px solid rgba(148, 163, 184, .22); font: 500 12px var(--mono); color: #E2E8F0; box-shadow: 0 20px 40px -16px rgba(2, 6, 23, .9); }
.wpxh-chipstack span i { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan-light); }
.wpxh-chipstack span b { margin-left: auto; color: var(--cyan-300); font-weight: 500; }
.wpxh-log__head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-bottom: 16px; border-bottom: 1px solid var(--surface-2); font-size: 16px; font-weight: 700; }
.wpxh-log__ok { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 6px; background: var(--cyan-50); color: var(--cyan-dark); font-size: 12px; font-weight: 600; }
.wpxh-log__ok i { width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); }
.wpxh-log__row { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--surface); }
.wpxh-log__row > span:first-child { width: 34px; height: 34px; border-radius: 9px; background: var(--blue-50); color: var(--blue); display: grid; place-items: center; }
.wpxh-log__row strong { display: block; font-size: 14px; }
.wpxh-log__row small { font-size: 12.5px; line-height: 1.45; color: var(--muted); }
.wpxh-log__row em { font: 500 11px var(--mono); font-style: normal; padding: 3px 7px; border-radius: 5px; background: var(--surface-2); color: var(--ink); }
.wpxh-tech3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px; }
.wpxh-tech3 > div { padding: 18px; border-radius: var(--r-lg); background: var(--white); border: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px; margin: 0 !important; }
.wpxh-tech3 > div > * { margin: 0 !important; }
.wpxh-tech3 h3 { font-size: 16px !important; font-weight: 650; }
.wpxh-tech3 p { font-size: 14px; line-height: 1.55; color: var(--muted); }
.wpxh-migr { display: flex; flex-direction: column; gap: 14px; }
.wpxh-migr__card { background: var(--white); border-radius: var(--r-lg); padding: 18px; box-shadow: 0 24px 48px -28px rgba(30, 58, 138, .45); display: flex; flex-direction: column; gap: 12px; }
.wpxh-migr__flow { display: flex; align-items: center; gap: 8px; }
.wpxh-migr__flow span { flex: 1; padding: 10px; border-radius: 9px; background: var(--surface); border: 1px solid var(--line); font-size: 12.5px; text-align: center; }
.wpxh-migr__flow span:nth-of-type(2) { background: var(--blue-50); border-color: var(--blue-200); color: var(--blue-dark); font-weight: 600; }
.wpxh-migr__flow span:nth-of-type(3) { background: var(--navy); border-color: var(--navy); color: var(--white); font-weight: 600; }
.wpxh-migr__flow i { flex: none; width: 24px; height: 2px; background: var(--blue); }
.wpxh-migr__flow i:last-of-type { background: var(--cyan); }
.wpxh-migr__pair { display: flex; flex-wrap: wrap; gap: 14px; }
.wpxh-migr__pair > div { flex: 1 1 180px; border-radius: var(--r-lg); padding: 18px; display: flex; flex-direction: column; gap: 9px; }
.wpxh-migr__perf { background: var(--white); box-shadow: 0 24px 48px -28px rgba(30, 58, 138, .45); }
.wpxh-migr__perf p { display: flex; align-items: center; gap: 8px; font-size: 12.5px; }
.wpxh-migr__perf p span { width: 62px; color: var(--muted); }
.wpxh-migr__perf p b { flex: 1; height: 8px; border-radius: 4px; background: var(--line); overflow: hidden; }
.wpxh-migr__perf p b i { display: block; height: 100%; background: var(--subtle); }
.wpxh-migr__perf p:nth-of-type(2) span { color: var(--navy); font-weight: 600; }
.wpxh-migr__perf p:nth-of-type(2) b i { background: linear-gradient(90deg, #2563EB, #06B6D4); }
.wpxh-migr__perf small, .wpxh-migr__sec small { font: 500 11px var(--mono); color: var(--muted); }
.wpxh-migr__perf em { font-style: normal; font-size: 11.5px; color: var(--muted); }
.wpxh-migr__sec { background: var(--navy); color: var(--white); }
.wpxh-migr__sec small { color: var(--subtle); }
.wpxh-migr__sec p { display: flex; align-items: center; gap: 8px; font-size: 12.5px; margin: 0; }
.wpxh-migr__sec p::before { content: "✓"; color: var(--cyan-light); }
.wpxh-nodes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.wpxh-nodes > div { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 8px; border-radius: 12px; background: rgba(17, 28, 51, .9); border: 1px solid rgba(148, 163, 184, .2); text-align: center; }
.wpxh-nodes > div > span { width: 36px; height: 36px; border-radius: var(--r-md); background: rgba(37, 99, 235, .18); color: var(--cyan-300); display: grid; place-items: center; }
.wpxh-nodes b { font-size: 12.5px; font-weight: 600; color: #E2E8F0; }
.wpxh-nodes small { display: flex; align-items: center; gap: 5px; font: 500 11px var(--mono); color: var(--subtle); }
.wpxh-nodes small::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--cyan-light); }
.wpxh-hub { display: flex; align-items: center; gap: 10px; margin: 18px 0; }
.wpxh-hub i { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, rgba(34, 211, 238, .6)); }
.wpxh-hub i:last-child { background: linear-gradient(90deg, rgba(34, 211, 238, .6), transparent); }
.wpxh-hub > span { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 12px; background: var(--white); box-shadow: 0 20px 40px -16px rgba(2, 6, 23, .8); }
.wpxh-webhook { background: var(--navy-3); border: 1px solid rgba(148, 163, 184, .2); border-radius: 12px; overflow: hidden; }
.wpxh-webhook > div { display: flex; justify-content: space-between; padding: 8px 14px; border-bottom: 1px solid rgba(148, 163, 184, .14); font: 500 11px var(--mono); color: var(--muted); }
.wpxh-webhook > div span:last-child { color: var(--cyan-light); }
.wpxh-webhook pre { margin: 0; padding: 12px 14px; font: 400 12px/1.7 var(--mono); color: #CBD5E1; overflow-x: auto; }
.wpxh-process { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 16px; counter-reset: p; }
.wpxh-process > li, .wpxh-process > .wp-block-group { counter-increment: p; padding: 24px; border-radius: 16px; background: rgba(17, 28, 51, .8); border: 1px solid rgba(148, 163, 184, .18); display: flex; flex-direction: column; gap: 14px; margin: 0 !important; }
.wpxh-process > * > * { margin: 0 !important; }
.wpxh-process > *::before { content: counter(p); width: 36px; height: 36px; border-radius: 50%; background: var(--grad-brand); display: grid; place-items: center; font: 600 14px var(--mono); color: var(--white); box-shadow: 60px 0 0 -17.5px rgba(148, 163, 184, .25); }
.wpxh-process h3 { font-size: 18px !important; font-weight: 650; letter-spacing: -.02em; color: var(--white) !important; }
.wpxh-process p { font-size: 14.5px; line-height: 1.6; color: var(--subtle); }
.wpxh-process--light > * { background: var(--white) !important; border-color: var(--line) !important; }
.wpxh-process--light h3 { color: var(--navy) !important; }
.wpxh-process--light p { color: var(--muted); }
.wpxh-contact { display: flex; flex-wrap: wrap; gap: clamp(32px, 5vw, 64px); align-items: flex-start; }
.wpxh-contact__copy { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.wpxh-contact__copy > * { margin: 0 !important; }
.wpxh-contact__info { list-style: none; margin: 8px 0 0 !important; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.wpxh-contact__info li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--ink); margin: 0; }
.wpxh-contact__info li > span:first-child { width: 36px; height: 36px; border-radius: 9px; background: var(--blue-50); color: var(--blue); display: grid; place-items: center; flex: none; }
.wpxh-contact__form { flex: 1.3 1 460px; min-width: 0; background: var(--white); border: 1px solid var(--line); border-radius: var(--r-2xl); padding: clamp(22px, 3.5vw, 36px); box-shadow: 0 30px 60px -40px rgba(15, 23, 42, .3); margin: 0 !important; }

/* Forms (Contact Form 7 + generic) */
.wpcf7 { margin: 0; }
.wpcf7 form { display: flex; flex-direction: column; gap: 18px; margin: 0; }
.wpcf7 form > p, .wpcf7 .wpxh-field { margin: 0; }
.wpcf7 form br { display: none; }
.wpcf7 label, .wpxh-field-label { display: flex; flex-direction: column; gap: 7px; font-size: 14px; font-weight: 600; color: var(--ink); margin: 0; }
.wpcf7 .wpxh-field { display: flex; flex-direction: column; gap: 10px; }
.wpcf7 .wpcf7-form-control-wrap { display: block; position: relative; }
.wpcf7 .wpxh-grid2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 18px; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="url"], .wpcf7 input[type="tel"], .wpcf7 textarea, .wpcf7 select,
.wpxh-input {
	display: block; width: 100%; min-height: 48px; padding: 0 14px; border-radius: var(--r-md); border: 1px solid var(--line-strong);
	background: var(--white); font: 400 15px var(--sans); color: var(--navy); box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
	transition: border-color .2s, box-shadow .2s, background-color .2s;
}
.wpcf7 input::placeholder, .wpcf7 textarea::placeholder { color: var(--subtle); }
.wpcf7 input:hover, .wpcf7 textarea:hover { border-color: var(--subtle); }
.wpcf7 textarea { padding: 12px 14px; min-height: 150px; line-height: 1.6; resize: vertical; }
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus, .wpxh-input:focus { outline: 0; border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-100); }
.wpcf7 .wpcf7-not-valid { border-color: #F87171 !important; background: #FEF2F2; }
.wpcf7 .wpcf7-not-valid:focus { box-shadow: 0 0 0 3px #FECACA !important; }
.wpcf7 .wpcf7-checkbox, .wpcf7 .wpcf7-radio { display: flex; flex-wrap: wrap; gap: 8px; }
.wpcf7 .wpcf7-list-item { margin: 0; }
.wpcf7 .wpcf7-list-item label { flex-direction: row; align-items: center; gap: 8px; min-height: 42px; padding: 0 14px; border-radius: var(--r-md); border: 1px solid var(--line); background: var(--white); font-weight: 500; cursor: pointer; transition: background-color .2s, border-color .2s, color .2s; }
.wpcf7 .wpcf7-list-item label:hover { border-color: var(--line-strong); }
.wpcf7 .wpcf7-list-item label:has(input:checked) { background: var(--navy); color: var(--white); border-color: var(--navy); }
.wpcf7 .wpcf7-list-item input { accent-color: var(--blue); }
.wpcf7 .wpxh-captcha { display: flex; flex-direction: column; gap: 7px; padding: 14px; border-radius: 12px; background: var(--surface); border: 1px dashed var(--line-strong); }
.wpcf7 .wpxh-captcha__row { display: flex; align-items: center; gap: 12px; }
.wpcf7 .wpxh-captcha__row > .wpcf7-form-control-wrap { flex: 1; min-width: 0; }
.wpcf7 img.wpcf7-captchac { flex: none; height: 48px; width: auto; padding: 8px 12px; border-radius: var(--r-md); background: var(--white); border: 1px solid var(--line-strong); image-rendering: auto; }
.wpcf7 input[type="submit"], .wpcf7 button[type="submit"] { align-self: stretch; min-height: 52px; width: 100%; margin: 0; border: 0; border-radius: 11px; background: var(--blue); color: var(--white); font: 600 16px var(--sans); cursor: pointer; box-shadow: 0 8px 24px -10px rgba(37, 99, 235, .6); transition: background-color .2s, transform .2s var(--ease); }
.wpcf7 input[type="submit"]:hover { background: var(--blue-dark); transform: translateY(-1px); }
.wpcf7 input[type="submit"]:disabled { opacity: .6; cursor: progress; transform: none; }
.wpcf7 .wpcf7-spinner { margin: 0 auto; display: block; }
/* The spinner only takes up a row while the form is being sent. */
.wpcf7 form:not(.submitting) .wpcf7-spinner { display: none; }
.wpcf7-not-valid-tip { display: block; font-size: 13px; font-weight: 500; color: #DC2626; margin-top: 6px; }
.wpcf7 form .wpcf7-response-output { margin: 0 !important; padding: 12px 14px; border-radius: var(--r-md); font-size: 14.5px; border: 1px solid var(--line) !important; background: var(--surface); }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output { border-color: #FDE68A !important; background: #FFFBEB; color: #78350F; }
.wpcf7 form.sent .wpcf7-response-output { border-color: #A5F3FC !important; background: var(--cyan-50); color: var(--cyan-dark); }
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output { border-color: #FECACA !important; background: #FEF2F2; color: #991B1B; }
.wpcf7 form.init .wpcf7-response-output:empty, .wpcf7 form .wpcf7-response-output[aria-hidden="true"]:empty { display: none; }
.wpxh-contact__form > .wp-block-heading { font-size: 22px !important; letter-spacing: -.02em; margin: 0 0 4px !important; }
.wpxh-contact__form > p.wpxh-contact__formsub { font-size: 14.5px; color: var(--muted); margin: 0 0 20px !important; }
@media (max-width: 479px) {
	.wpcf7 .wpxh-captcha__row { flex-direction: column; align-items: stretch; }
	.wpcf7 img.wpcf7-captchac { align-self: flex-start; }
}

/* Contact page: contact options, form card, quick answers */
.wpxh-contact__copy .wpxh-eyebrow { margin-bottom: -8px !important; }
.wpxh-contact__channels { display: flex; flex-direction: column; gap: 12px; margin-top: 6px !important; }
.wpxh-channel { position: relative; margin: 0 !important; padding: 18px 20px 18px 74px; border-radius: 16px; border: 1px solid var(--line); background: var(--white); transition: border-color .2s, box-shadow .2s, transform .2s; }
.wpxh-channel:hover { border-color: var(--blue-200); box-shadow: 0 18px 36px -28px rgba(37, 99, 235, .55); transform: translateY(-1px); }
.wpxh-channel::before { content: ""; position: absolute; left: 18px; top: 18px; width: 40px; height: 40px; border-radius: 12px; background: var(--grad-tint); border: 1px solid var(--blue-100); }
.wpxh-channel::after { content: ""; position: absolute; left: 29px; top: 29px; width: 18px; height: 18px; background: var(--blue); -webkit-mask: var(--wpxh-channel-icon) center / contain no-repeat; mask: var(--wpxh-channel-icon) center / contain no-repeat; }
.wpxh-channel.is-email { --wpxh-channel-icon: url(../icons/mail.svg); }
.wpxh-channel.is-support { --wpxh-channel-icon: url(../icons/headset.svg); }
.wpxh-channel.is-project { --wpxh-channel-icon: url(../icons/rocket.svg); }
.wpxh-channel > * { margin: 0 !important; }
.wpxh-channel .wpxh-channel__title { font-size: 16.5px !important; font-weight: 650; letter-spacing: -.015em; color: var(--navy); }
.wpxh-channel .wpxh-channel__text { margin-top: 4px !important; font-size: 14.5px; line-height: 1.6; color: var(--muted); }
.wpxh-channel a { font-weight: 600; color: var(--blue); text-decoration: underline; text-decoration-color: var(--blue-200); text-underline-offset: 3px; }
.wpxh-channel a:hover { text-decoration-color: var(--blue); }
/* Form card header with an icon tile */
.wpxh-contact__form { position: relative; overflow: hidden; }
.wpxh-contact__form::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--grad-brand); }
.wpxh-contact__form > .wp-block-heading { display: flex; align-items: center; gap: 12px; }
.wpxh-contact__form > .wp-block-heading::before { content: ""; flex: none; width: 40px; height: 40px; border-radius: 12px; background: var(--grad-brand) ; -webkit-mask: none; box-shadow: 0 10px 20px -12px rgba(37, 99, 235, .8); }
.wpxh-contact__form > .wp-block-heading::after { content: ""; position: absolute; left: calc(clamp(22px, 3.5vw, 36px) + 11px); width: 18px; height: 18px; background: var(--white); -webkit-mask: url(../icons/message-square.svg) center / contain no-repeat; mask: url(../icons/message-square.svg) center / contain no-repeat; }
.wpxh-contact__form > p.wpxh-contact__formsub { padding-left: 52px; margin-top: -2px !important; }
.wpxh-contact__form .wpcf7 input[type="text"], .wpxh-contact__form .wpcf7 input[type="email"], .wpxh-contact__form .wpcf7 textarea { min-height: 50px; border-radius: 12px; background: var(--surface); box-shadow: none; }
.wpxh-contact__form .wpcf7 textarea { min-height: 160px; }
.wpxh-contact__form .wpcf7 input:focus, .wpxh-contact__form .wpcf7 textarea:focus { background: var(--white); box-shadow: 0 0 0 4px var(--blue-100); }
.wpxh-contact__form .wpcf7 label { font-size: 13.5px; color: var(--navy); }
.wpxh-contact__form .wpcf7 input[type="submit"] { min-height: 54px; border-radius: 13px; font-size: 16px; }
/* Quick answers */
.wpxh-contact-faq { margin-top: clamp(48px, 7vw, 88px) !important; display: flex; flex-direction: column; gap: 10px; }
.wpxh-contact-faq > * { margin: 0 !important; }
.wpxh-contact-faq__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px !important; align-items: start; }
.wpxh-qa { margin: 0 !important; border: 1px solid var(--line); border-radius: 14px; background: var(--white); transition: border-color .2s, box-shadow .2s; }
.wpxh-qa[open] { border-color: var(--blue-200); box-shadow: 0 18px 36px -30px rgba(37, 99, 235, .6); }
.wpxh-qa summary { position: relative; list-style: none; cursor: pointer; padding: 17px 52px 17px 20px; font-size: 15.5px; font-weight: 650; letter-spacing: -.01em; color: var(--navy); }
.wpxh-qa summary::-webkit-details-marker { display: none; }
.wpxh-qa summary::after { content: ""; position: absolute; right: 18px; top: 50%; width: 20px; height: 20px; margin-top: -10px; border-radius: 50%; background: var(--blue-50); -webkit-mask: none; transition: transform .2s; }
.wpxh-qa summary::before { content: ""; position: absolute; right: 22px; top: 50%; width: 12px; height: 12px; margin-top: -6px; z-index: 1; background: var(--blue); -webkit-mask: url(../icons/plus.svg) center / contain no-repeat; mask: url(../icons/plus.svg) center / contain no-repeat; transition: transform .2s; }
.wpxh-qa[open] summary::before { transform: rotate(45deg); }
.wpxh-qa summary:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; border-radius: 14px; }
.wpxh-qa > p { margin: 0 !important; padding: 0 20px 18px; font-size: 14.5px; line-height: 1.65; color: var(--muted); }
.wpxh-qa > p a { color: var(--blue); font-weight: 600; }
@media (max-width: 767px) {
	.wpxh-contact-faq__list { grid-template-columns: minmax(0, 1fr); }
	.wpxh-channel { padding-left: 68px; }
}

/* Service detail pages */
.wpxh-svd-hero__grid { padding-block: clamp(48px, 7vw, 96px); display: flex; flex-direction: column; gap: 22px; }
.wpxh-svd-hero__grid > * { max-width: 860px; }
.wpxh-svd-hero__grid > .wpxh-svchero__badge { align-self: flex-start; }
.wpxh-svd-hero__grid > * { margin: 0 !important; }
/* Three cards: one column, or three once each can be 200px wide (3 x 200 + 2 x 14 = 628px) - never 2 + 1. */
.wpxh-cards3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(clamp((100% - 28px) / 3, (628px - 100%) * 999, 100%), 1fr)); gap: 14px; }
.wpxh-cards3 > * { margin: 0 !important; padding: 22px; border-radius: 16px; background: var(--white); border: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px; }
.wpxh-cards3 > * > * { margin: 0 !important; }
.wpxh-cards3 h3 { font-size: 17px !important; font-weight: 650; letter-spacing: -.015em; }
.wpxh-cards3 p { font-size: 14.5px; line-height: 1.6; color: var(--muted); }
.wpxh-cards3--dark > * { background: var(--navy); border-color: var(--navy); position: relative; overflow: hidden; }
.wpxh-cards3--dark > *::before { content: ""; position: absolute; inset: 0; background: radial-gradient(80% 60% at 100% 0%, rgba(37, 99, 235, .35), transparent 70%); }
.wpxh-cards3--dark > * > * { position: relative; }
.wpxh-cards3--dark h3 { color: var(--white) !important; }
.wpxh-cards3--dark p { color: #CBD5E1; }
.wpxh-techpills { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.wpxh-techpills li { padding: 8px 14px; border-radius: 999px; background: var(--white); border: 1px solid var(--line); font: 500 13px var(--mono); color: var(--ink); margin: 0; }
.wpxh-split { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: clamp(32px, 5vw, 64px); align-items: start; }
.wpxh-split > * { margin: 0 !important; display: flex; flex-direction: column; gap: 18px; }
.wpxh-split > * > * { margin: 0 !important; }
.wpxh-faqlist { display: flex; flex-direction: column; gap: 10px; }
.wpxh-faqlist > * { margin: 0 !important; }

/* Blog */
.wpxh-postlist { padding-block: clamp(32px, 5vw, 56px) clamp(64px, 8vw, 96px); }
.wpxh-postgrid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 20px; }
.wpxh-postcard { background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 12px 12px 20px; display: flex; flex-direction: column; gap: 10px; height: 100%; }
.wpxh-postcard > * { margin: 0 !important; padding-inline: 8px; }
.wpxh-postcard .wp-block-post-featured-image { padding: 0; border-radius: 12px; overflow: hidden; }
/* Show the whole image: product banners are not all 16:9 (e.g. 390x126), and cover would crop their text. */
.wpxh-postcard .wp-block-post-featured-image img { object-fit: contain !important; background: var(--surface); }
.wpxh-postcard .wp-block-post-title { font-size: 19px; letter-spacing: -.02em; }
.wpxh-postcard .wp-block-post-title a { color: var(--navy); }
.wpxh-postcard .wp-block-post-excerpt { font-size: 14.5px; color: var(--muted); }
.wpxh-article { max-width: 820px; margin: 0 auto; padding: clamp(40px, 6vw, 72px) clamp(16px, 4vw, 40px) clamp(64px, 8vw, 96px); display: flex; flex-direction: column; gap: 18px; }
.wpxh-article > * { margin: 0 !important; }
/* 404 and "no results": a friendly card with search, ways on, and the popular plugins. */
.wpxh-nf { padding-block: clamp(32px, 5vw, 56px) clamp(64px, 8vw, 96px); display: flex; flex-direction: column; gap: clamp(40px, 6vw, 64px); }
.wpxh-nf__card { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; gap: 14px; padding: clamp(32px, 5vw, 56px) clamp(20px, 5vw, 56px); text-align: center; background: var(--white); border: 1px solid var(--line); border-radius: 24px; box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 32px 64px -44px rgba(15, 23, 42, .35); }
.wpxh-nf__card::before { content: ""; position: absolute; inset: 0 0 auto; height: 200px; pointer-events: none; background: radial-gradient(50% 100% at 50% 0%, var(--blue-50), transparent 75%); }
.wpxh-nf__card > * { position: relative; margin: 0; }
.wpxh-nf__icon { width: 64px; height: 64px; margin-bottom: 6px; display: grid; place-items: center; border-radius: 18px; color: var(--blue); background: var(--white) padding-box, var(--grad-brand) border-box; border: 2px solid transparent; box-shadow: 0 18px 36px -18px rgba(37, 99, 235, .55); }
.wpxh-nf__title { font-size: clamp(24px, 3vw, 32px); line-height: 1.15; font-weight: 750; letter-spacing: -.035em; color: var(--navy); text-wrap: balance; }
.wpxh-nf__lead { max-width: 540px; font-size: 16px; line-height: 1.65; color: var(--muted); }
.wpxh-nf__card .wpxh-bigsearch { width: 100%; margin: 8px auto 0; text-align: left; }
.wpxh-nf__links { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.wpxh-nf__popular { display: flex; flex-direction: column; gap: 20px; }
.wpxh-searchresults { display: flex; flex-direction: column; gap: clamp(16px, 2.5vw, 24px); }
.wpxh-nf__sub { margin: 0; font-size: clamp(20px, 2.2vw, 26px); font-weight: 700; letter-spacing: -.03em; color: var(--navy); }
/* Blog, search and 404 pages: the hero sits on the 1200px grid, so the content below does too. */
.wpxh-main--blog .wpxh-container, .wpxh-main--404 .wpxh-container { max-width: 1200px; }

/* Account hero (rest in woocommerce.css) */
.wpxh-accthero { position: relative; overflow: hidden; background: var(--navy); color: var(--white); }
.wpxh-accthero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(40% 90% at 90% 0%, rgba(37, 99, 235, .35), transparent 70%); }
.wpxh-accthero__crumbs { position: relative; z-index: 1; max-width: 1200px; margin: 0 auto; padding: clamp(20px, 3vw, 28px) var(--gutter) 0; }
.wpxh-accthero__crumbs + .wpxh-accthero__inner { padding-top: clamp(16px, 2.4vw, 22px); }
.wpxh-accthero__inner { position: relative; max-width: 1200px; margin: 0 auto; padding: clamp(28px, 4vw, 44px) var(--gutter); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; }
.wpxh-accthero__who { display: flex; align-items: center; gap: 14px; }
.wpxh-accthero__avatar { width: 52px; height: 52px; border-radius: 13px; background: var(--grad-brand); display: grid; place-items: center; font-size: 18px; font-weight: 700; flex: none; }
.wpxh-accthero .wpxh-mono-label { color: var(--subtle); font-size: 12px; }
.wpxh-accthero h1 { font-size: clamp(24px, 3vw, 32px); font-weight: 700; letter-spacing: -.035em; color: var(--white); margin-top: 4px; }

/* WooCommerce page header (cart/checkout) */
.wpxh-wchead { max-width: 1200px; margin: 0 auto; padding: clamp(32px, 5vw, 56px) var(--gutter) 8px; display: flex; flex-direction: column; gap: 12px; }
.wpxh-wchead > * { margin: 0 !important; }
.wpxh-wchead h1 { font-size: clamp(32px, 4vw, 48px); letter-spacing: -.04em; }
.wpxh-wchead__sub { font-size: 16px; color: var(--muted); max-width: 640px; }
.wpxh-wcbody { max-width: 1200px; margin: 0 auto; padding: 16px var(--gutter) clamp(64px, 8vw, 96px); }

/* 11 ─ Motion ───────────────────────────────────────────────────────────── */
@keyframes wpxh-scroll { from { transform: translateY(0); } to { transform: translateY(-50%); } }
@keyframes wpxh-blink { 0%, 49% { opacity: 1; } 50%, 100% { opacity: 0; } }
@keyframes wpxh-pulse { 0%, 100% { opacity: .35; background-position: 0 0; } 50% { opacity: 1; background-position: 100% 0; } }
@keyframes wpxh-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.wpxh-js .wpxh-reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.wpxh-js .wpxh-reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
	.wpxh-js .wpxh-reveal { opacity: 1; transform: none; }
}

/* Responsive tweaks */
@media (max-width: 781px) {
	.wpxh-values__list li { border-right: 0; border-bottom: 1px solid var(--surface-2); padding-block: 16px; }
	.wpxh-numlist { grid-template-columns: 1fr; }
	.wpxh-why__intro { position: static; }
	.wpxh-pgrid > .wpxh-segment { align-self: stretch; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; }
	.wpxh-pgrid > .wpxh-segment::-webkit-scrollbar { display: none; }
	.wpxh-pgrid > .wpxh-segment button { flex: 1 0 auto; padding: 0 10px; }
	.wpxh-mock { max-width: 300px; }
	.wpxh-pcard__foot { align-items: flex-start; }
	.wpxh-showcase__buy { gap: 16px; }
	.wpxh-faq__a { padding-right: 20px; }
	.wpxh-mini-editor__side { display: none; }
	.wpxh-cancelmock__admin { margin-top: 0; }
	.wpxh-pp__buy .wpxh-btnrow { width: 100%; }
	.wpxh-pp__buy .wpxh-btnrow > * { flex: 1 1 auto; }
	.wpxh-pp__buy .wpxh-buyform .wpxh-btn { width: 100%; }
}
@media (max-width: 560px) {
	.wpxh-ordersmock__foot { grid-template-columns: 1fr; }
	.wpxh-ordersmock__foot div { border-right: 0; border-bottom: 1px solid rgba(148, 163, 184, .14); }
}
@media (max-width: 479px) {
	.wpxh-term__status span:nth-child(2) { display: none; }
	.wpxh-stack { gap: 6px; }
	.wpxh-stack__item { width: 34px; height: 34px; }
	.wpxh-stack__item.is-wide { width: 52px; }
	/* Stacked call-to-action buttons: equal full-width rows instead of ragged widths. */
	.wp-block-buttons.wpxh-btns--lg > .wp-block-button { flex: 1 1 100%; }
	.wp-block-buttons.wpxh-btns--lg .wp-block-button__link { width: 100%; justify-content: center; }
	.wpxh-btnrow > .wpxh-btn { flex: 1 1 auto; }
	.wpxh-nodes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print {
	.wpxh-header-part, .wpxh-footer-part, .wpxh-toc, .wpxh-legal__side, .wpxh-helpbox, .wpxh-relpol, .wpxh-progress, .wpxh-totop, .wpxh-legal__meta button { display: none !important; }
	body { background: #fff; }
}

/* Block style variations */
.wp-block-list.is-style-checks { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px 24px; }
.wp-block-list.is-style-checks li { display: flex; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--ink); }
.wp-block-list.is-style-checks li::before { content: ""; flex: none; width: 20px; height: 20px; border-radius: 50%; margin-top: 1px; background: var(--blue-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat; }
.wp-block-list.is-style-dots { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px 24px; }
.wp-block-list.is-style-dots li { display: flex; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--ink); }
.wp-block-list.is-style-dots li::before { content: ""; flex: none; margin-top: 7px; width: 6px; height: 6px; border-radius: 2px; background: var(--blue); }
.wpx-captcha-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.wpxh-svcard h3 a { color: inherit; }
.wpxh-svcard h3 a:hover { color: var(--blue); }
.wpxh-svcard.is-dark h3 a:hover { color: var(--cyan-300); }
.wpxh-crumbs--dark { color: var(--subtle); }
.wpxh-crumbs--dark a, .wpxh-crumbs--dark [aria-current] { color: var(--subtle) !important; }
.wpxh-crumbs--dark a:hover { color: var(--white) !important; }
.wpxh-checklist--one { grid-template-columns: 1fr; }
.wpxh-techhead { font-size: 15px !important; font-family: var(--mono); font-weight: 500 !important; letter-spacing: .02em !important; color: var(--cyan-light) !important; text-transform: uppercase; }
.wpxh-techpills.is-dark li { background: rgba(17, 28, 51, .8); border-color: rgba(148, 163, 184, .25); color: #E2E8F0; }
@media (max-width: 600px) {
	.admin-bar .wpxh-header-part { top: 0; }
	.admin-bar .wpxh-sectabs, .admin-bar .wpxh-progress { top: var(--header-h); }
}
@media (max-width: 781px) {
	.wpxh-toolbar { position: static; }
	.wpxh-toolbar__filters { width: 100%; }
}

/* Plugin reviews (inc/reviews.php) ------------------------------------ */
.wpxh-stars { position: relative; display: inline-flex; flex: none; line-height: 0; vertical-align: middle; }
.wpxh-stars__base, .wpxh-stars__fill { display: inline-flex; gap: 2px; }
.wpxh-stars__base { color: var(--line); }
.wpxh-stars__fill { position: absolute; inset: 0 auto 0 0; width: var(--wpxh-fill, 0px); overflow: hidden; color: var(--amber); }
.wpxh-stars svg, .wpxh-star { flex: none; fill: currentColor; }
.wpxh-reviews [hidden] { display: none !important; }

.wpxh-pp__rating { display: inline-flex; align-items: center; gap: 8px; width: fit-content; padding: 6px 12px 6px 10px; border-radius: 999px; background: var(--white); border: 1px solid var(--line); color: var(--ink); font-size: 14px; transition: border-color .2s, box-shadow .2s; }
.wpxh-pp__rating:hover { border-color: var(--blue-300); color: var(--navy); box-shadow: 0 6px 16px -10px rgba(37, 99, 235, .45); }
.wpxh-pp__rating strong { font-weight: 700; color: var(--navy); }
.wpxh-pp__rating > span:not(.wpxh-stars):not(.screen-reader-text)::before { content: "·"; margin-right: 8px; color: var(--subtle); }

.wpxh-reviews__grid { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 24px; align-items: start; }
.wpxh-reviews__main { display: flex; flex-direction: column; gap: 14px; min-width: 0; }

.wpxh-rsum { position: sticky; top: calc(var(--header-h) + 76px); display: flex; flex-direction: column; gap: 18px; padding: 24px; border-radius: var(--r-xl); background: var(--white); border: 1px solid var(--line); box-shadow: var(--shadow-card); }
.wpxh-rsum__score { display: flex; align-items: center; gap: 14px; }
.wpxh-rsum__score > strong { font-size: 52px; line-height: 1; font-weight: 700; letter-spacing: -.05em; color: var(--navy); }
.wpxh-rsum__score > div { display: flex; flex-direction: column; gap: 6px; }
.wpxh-rsum__score > div > span { font-size: 13.5px; color: var(--muted); }
.wpxh-rsum__score.is-empty { flex-direction: column; align-items: flex-start; gap: 8px; }
.wpxh-rsum__score.is-empty > span { font-size: 15px; font-weight: 600; color: var(--ink); }
.wpxh-rsum__bars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.wpxh-rbar { display: grid; grid-template-columns: 34px 1fr 28px; align-items: center; gap: 10px; width: 100%; padding: 5px 6px; border: 0; border-radius: var(--r-sm); background: transparent; font: 500 13px var(--sans); color: var(--ink); cursor: pointer; transition: background-color .2s; }
.wpxh-rbar:not(:disabled):hover, .wpxh-rbar[aria-pressed="true"] { background: var(--blue-50); }
.wpxh-rbar:disabled { cursor: default; color: var(--muted); }
.wpxh-rbar__label { display: inline-flex; align-items: center; gap: 4px; }
.wpxh-rbar__label .wpxh-star { color: var(--amber); }
.wpxh-rbar:disabled .wpxh-rbar__label .wpxh-star { color: var(--line-strong); }
.wpxh-rbar__track { height: 8px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.wpxh-rbar__track i { display: block; height: 100%; border-radius: inherit; background: var(--amber); }
.wpxh-rbar__n { text-align: right; font-family: var(--mono); font-size: 12px; color: var(--muted); }
.wpxh-rsum__cta { width: 100%; }
.wpxh-rsum__note { display: flex; gap: 8px; margin: 0; font-size: 13px; line-height: 1.5; color: var(--muted); }
.wpxh-rsum__note svg { flex: none; margin-top: 1px; color: var(--blue); }

.wpxh-rlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.wpxh-js .wpxh-review.is-extra, .wpxh-review.is-filtered { display: none; }
.wpxh-review { scroll-margin-top: 76px; }
.wpxh-review__card { display: flex; flex-direction: column; gap: 12px; padding: 22px 24px; border-radius: var(--r-xl); background: var(--white); border: 1px solid var(--line); transition: border-color .2s; }
.wpxh-review:target .wpxh-review__card { border-color: var(--blue-300); box-shadow: 0 0 0 4px var(--blue-50); }
.wpxh-review__head { display: flex; align-items: center; gap: 12px; }
.wpxh-review__head > .wpxh-stars { margin-left: auto; }
.wpxh-review__avatar { flex: none; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; font: 700 14px var(--sans); letter-spacing: .02em; color: var(--white); background: var(--grad-brand); }
.wpxh-review__avatar--1 { background: linear-gradient(135deg, #0EA5E9, #6366F1); }
.wpxh-review__avatar--2 { background: linear-gradient(135deg, #14B8A6, #0EA5E9); }
.wpxh-review__avatar--3 { background: linear-gradient(135deg, #8B5CF6, #EC4899); }
.wpxh-review__avatar--4 { background: linear-gradient(135deg, #F59E0B, #EF4444); }
.wpxh-review__who { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.wpxh-review__who strong { font-size: 15px; font-weight: 650; color: var(--navy); }
.wpxh-review__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 12.5px; color: var(--muted); }
.wpxh-review__badge { display: inline-flex; align-items: center; gap: 4px; font-weight: 600; color: #047857; }
.wpxh-review__title { margin: 0; font-size: 16.5px; font-weight: 700; letter-spacing: -.01em; color: var(--navy); }
.wpxh-review__body { font-size: 15px; line-height: 1.7; color: var(--ink); overflow-wrap: anywhere; }
.wpxh-review__body p { margin: 0 0 .7em; }
.wpxh-review__body p:last-child { margin-bottom: 0; }
.wpxh-review__reply { margin-top: 4px; padding: 14px 16px; border-radius: var(--r-lg); background: var(--surface); border-left: 3px solid var(--blue); }
.wpxh-review__replyhead { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin-bottom: 6px; font-size: 13px; color: var(--muted); }
.wpxh-review__replyhead strong { color: var(--navy); font-weight: 650; }
.wpxh-review__replyicon { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; background: var(--blue-50); color: var(--blue); }
.wpxh-review__replybody { font-size: 14.5px; line-height: 1.65; color: var(--ink); }
.wpxh-review__replybody p { margin: 0 0 .6em; }
.wpxh-review__replybody p:last-child { margin-bottom: 0; }

.wpxh-rmore { display: flex; justify-content: center; }
.wpxh-rfilter-note { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0; padding: 10px 14px; border-radius: var(--r-md); background: var(--blue-50); font-size: 14px; color: var(--ink); }
.wpxh-linkbtn { padding: 0; border: 0; background: none; font: 600 14px var(--sans); color: var(--blue); cursor: pointer; }
.wpxh-linkbtn:hover { color: var(--blue-dark); text-decoration: underline; }

.wpxh-rempty { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 18px; padding: 24px; border-radius: var(--r-xl); background: var(--white); border: 1px dashed var(--line-strong); }
.wpxh-rempty > div { flex: 1 1 260px; }
.wpxh-rempty h3 { margin: 0 0 4px; font-size: 17px; font-weight: 700; color: var(--navy); }
.wpxh-rempty p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--muted); }

.wpxh-rform { padding: 24px; border-radius: var(--r-xl); background: var(--white); border: 1px solid var(--blue-200); box-shadow: 0 24px 48px -32px rgba(37, 99, 235, .45); scroll-margin-top: 76px; }
.wpxh-js .wpxh-rform:not(.is-open) { display: none; }
.wpxh-rform form { display: flex; flex-direction: column; gap: 10px; margin: 0; }
.wpxh-rform__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding-bottom: 14px; margin-bottom: 6px; border-bottom: 1px solid var(--line); }
.wpxh-rform__head h3 { margin: 4px 0 0; font-size: 19px; font-weight: 700; letter-spacing: -.02em; color: var(--navy); }
.wpxh-rform__head .wpxh-iconbtn { color: var(--muted); }
.wpxh-rform__head .wpxh-iconbtn:hover { background: var(--surface-2); color: var(--navy); }
.wpxh-rform .wpxh-field-label { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px; margin-top: 6px; }
.wpxh-rform textarea.wpxh-input { min-height: 130px; padding: 12px 14px; line-height: 1.6; resize: vertical; }
.wpxh-req { color: #DC2626; }
.wpxh-opt { font-weight: 400; color: var(--muted); }
.wpxh-rform__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 10px 14px; }
.wpxh-rform__grid > div { display: flex; flex-direction: column; gap: 7px; }
.wpxh-rform__grid .wpxh-field-label { margin-top: 6px; }
.wpxh-rform__hint { margin: 0; font-size: 13px; line-height: 1.5; color: var(--muted); }
.wpxh-rform__as { display: flex; align-items: center; gap: 8px; margin: 6px 0 0; padding: 10px 14px; border-radius: var(--r-md); background: var(--surface); font-size: 14px; color: var(--ink); }
.wpxh-rform__as svg { color: var(--blue); }
.wpxh-rform__error { padding: 12px 14px; border-radius: var(--r-md); background: #FEF2F2; border: 1px solid #FECACA; font-size: 14px; line-height: 1.5; color: #991B1B; }
.wpxh-rform__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 18px; margin-top: 8px; padding-top: 16px; border-top: 1px solid var(--line); }
.wpxh-rform__foot p { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; color: var(--muted); }
.wpxh-rform__foot p svg { flex: none; color: var(--blue); }
.wpxh-rform__foot .wpxh-btn[disabled] { opacity: .7; cursor: wait; transform: none; }
.wpxh-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.wpxh-rate { margin: 0; padding: 0; border: 0; min-width: 0; }
.wpxh-rate legend { padding: 0; }
.wpxh-rate__row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin-top: 7px; }
.wpxh-rate__stars { display: inline-flex; flex-direction: row-reverse; gap: 4px; }
.wpxh-rate__stars input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.wpxh-rate__stars label { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: var(--r-md); cursor: pointer; transition: transform .15s var(--ease), background-color .15s; }
.wpxh-rate__stars label .wpxh-star { color: var(--line-strong); transition: color .15s; }
.wpxh-rate__stars label:hover { transform: scale(1.08); }
.wpxh-rate__stars input:checked ~ label .wpxh-star,
.wpxh-rate__stars label:hover .wpxh-star,
.wpxh-rate__stars label:hover ~ label .wpxh-star { color: var(--amber); }
.wpxh-rate__stars:hover input:checked ~ label:not(:hover):not(:hover ~ label) .wpxh-star { color: var(--line-strong); }
.wpxh-rate__stars input:focus-visible + label { outline: 3px solid var(--blue-light); outline-offset: 1px; }
.wpxh-rate__word { font-size: 14px; font-weight: 600; color: var(--muted); }
.wpxh-rate__word.is-set { color: var(--navy); }
.wpxh-rate.is-invalid .wpxh-rate__stars label .wpxh-star { color: #FCA5A5; }

.wpxh-rcap { display: flex; flex-direction: column; gap: 7px; margin-top: 6px; padding: 14px; border-radius: 12px; background: var(--surface); border: 1px dashed var(--line-strong); }
.wpxh-rcap .wpxh-field-label { margin-top: 0; }
.wpxh-rcap__row { display: flex; align-items: center; gap: 10px; }
.wpxh-rcap__img { flex: none; display: inline-grid; place-items: center; min-width: 150px; height: 48px; padding: 2px 8px; border-radius: var(--r-md); background: var(--white); border: 1px solid var(--line-strong); }
.wpxh-rcap__img img { height: 42px; width: auto; }
.wpxh-rcap__status { font-size: 13px; color: var(--muted); }
.wpxh-rcap__img img:not([hidden]) + .wpxh-rcap__status { display: none; }
.wpxh-rcap .wpxh-iconbtn { flex: none; color: var(--ink); border: 1px solid var(--line); background: var(--white); }
.wpxh-rcap .wpxh-iconbtn:hover { background: var(--surface-2); color: var(--navy); }
.wpxh-rcap .wpxh-input { flex: 1; min-width: 0; font-family: var(--mono); letter-spacing: .08em; }

.wpxh-rform__done { display: flex; gap: 14px; align-items: flex-start; padding: 20px 22px; border-radius: var(--r-xl); background: #ECFDF5; border: 1px solid #A7F3D0; }
.wpxh-rform__done[hidden] { display: none; }
.wpxh-rform__done:focus { outline: 0; }
.wpxh-rform__doneicon { flex: none; color: #059669; }
.wpxh-rform__done h3 { margin: 0 0 4px; font-size: 17px; font-weight: 700; color: #064E3B; }
.wpxh-rform__done p { margin: 0; font-size: 14.5px; line-height: 1.55; color: #065F46; }

@media (max-width: 900px) {
	.wpxh-reviews__grid { grid-template-columns: minmax(0, 1fr); }
	.wpxh-rsum { position: static; }
}
@media (max-width: 560px) {
	.wpxh-review__card, .wpxh-rform, .wpxh-rsum { padding: 18px; }
	.wpxh-review__head { flex-wrap: wrap; }
	.wpxh-review__head > .wpxh-stars { margin-left: 54px; order: 3; flex-basis: calc(100% - 54px); }
	.wpxh-rate__stars label { width: 40px; height: 40px; }
	.wpxh-rcap__row { flex-wrap: wrap; }
	.wpxh-rcap .wpxh-input { flex-basis: 100%; }
	.wpxh-rform__foot .wpxh-btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	.wpxh-rate__stars label, .wpxh-rate__stars label:hover { transition: none; transform: none; }
}
