/* =============================================================================
 * PowerArchiver Bricks v2 · css/main.css
 * -----------------------------------------------------------------------------
 * Consolidated stylesheet for the v2 homepage redesign. v2 leads with
 * business-value messaging (perpetual licensing, no subscriptions, since 1998).
 *
 * TABLE OF CONTENTS
 *   :root              — design tokens (palette, spacing, radii, shadows)
 *   Shared primitives  — .pa-btn, .pa-section-header
 *   Section 01 — Nav (with two CTAs)
 *   Section 02 — Hero
 *   Section 03 — Trust bar
 *   Section 04 — Advantages (6 cards)
 *   Section 05 — Codec performance
 *   Section 06 — Licensing 3-step strip                (NEW)
 *   Section 07 — Pricing (perpetual badges + maintenance + compare banner)
 *   Section 08 — Head-to-head comparison table
 *   Section 09 — Security
 *   Section 10 — Enterprise + quote form               (form NEW)
 *   Section 11 — Email capture                         (NEW)
 *   Section 12 — Final CTA
 *   Section 13 — Footer (4-column)
 *   Bricks compatibility shims
 *
 * Conventions
 *   · Brand tokens live in :root; component-local tokens on the component root.
 *   · All selectors prefixed `pa-` — no collision with Bricks' `brxe-`.
 *   · v2-specific overrides use `.pa-v2-*` so v1 and v2 can coexist on a site.
 *   · prefers-reduced-motion respected on every transition.
 * ========================================================================== */

:root {
	/* ---------- Brand blues ---------- */
	--pa-blue-primary: #4b90e2;
	--pa-blue-dark: #31639c;
	--pa-blue-light: #5da0f0;
	--pa-navy: #465773;
	--pa-accent-blue: #1e73be;
	--pa-accent-blue-light: #3399ff;

	/* ---------- Warm / status accents ---------- */
	--pa-accent-orange: #e5a50a;
	--pa-accent-green: #28c840;
	--pa-accent-red: #ff5f57;
	--pa-accent-yellow: #febc2e;

	/* ---------- Gradients ---------- */
	--pa-gradient-start: var(--pa-blue-primary);
	--pa-gradient-end: var(--pa-blue-light);
	--pa-gradient-cta-start: var(--pa-blue-primary);
	--pa-gradient-cta-end: var(--pa-blue-dark);
	--pa-gradient-hero-start: #e8f0fb;
	--pa-gradient-hero-end: #f0f5fc;

	/* ---------- Surfaces ---------- */
	--pa-dark-bg: #1a1a2e;
	--pa-dark-bg-alt: #252525;
	--pa-dark-bg-deep: #1a1a1a;
	--pa-card-bg: #ffffff;
	--pa-bg-subtle: #fafafa;

	/* ---------- Text ---------- */
	--pa-text-primary: #252525;
	--pa-text-secondary: #666666;
	--pa-text-muted: #737373;

	/* ---------- Borders ---------- */
	--pa-border: #e0e2e6;
	--pa-border-subtle: #f0f1f3;

	/* ---------- Shadows ---------- */
	--pa-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
	--pa-shadow-md: 0 4px 20px rgba(0, 0, 0, 0.1);
	--pa-shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.12);
	--pa-shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.15);

	/* ---------- Typography ---------- */
	--pa-font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
		'Helvetica Neue', Arial, sans-serif;
	--pa-font-heading: var(--pa-font-body);

	/* ---------- Spacing scale (4px base) ---------- */
	--pa-space-1: 4px;
	--pa-space-2: 8px;
	--pa-space-3: 12px;
	--pa-space-4: 16px;
	--pa-space-5: 20px;
	--pa-space-6: 24px;
	--pa-space-7: 28px;
	--pa-space-8: 32px;
	--pa-space-9: 36px;
	--pa-space-10: 40px;
	--pa-space-12: 48px;
	--pa-space-16: 64px;
	--pa-space-20: 80px;
	--pa-space-30: 120px;

	/* ---------- Radii ---------- */
	--pa-radius-sm: 8px;
	--pa-radius-md: 10px;
	--pa-radius-lg: 12px;
	--pa-radius-xl: 16px;
	--pa-radius-pill: 100px;
}

/* Reset isolated to elements we render — keep Bricks' own resets intact. */
.pa-v2 *,
.pa-v2 *::before,
.pa-v2 *::after {
	box-sizing: border-box;
}

/* =============================================================================
 * SHARED PRIMITIVES
 * ========================================================================== */

.pa-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--pa-space-2);
	padding: 14px 28px;
	/* min-height keeps icon-less and iconed buttons the same height. Without
	   this, a primary CTA with a Windows-logo icon (18px) computes to 46px
	   tall while a sibling icon-less button computes to 43px (15px font +
	   28px padding). Standardize the floor; pa-btn--xl overrides upward. */
	min-height: 46px;
	border: none;
	border-radius: var(--pa-radius-md);
	font-family: var(--pa-font-body);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease,
		background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.pa-btn--primary {
	color: #fff;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	box-shadow: 0 4px 16px color-mix(in srgb, var(--pa-accent-blue) 30%, transparent);
}
.pa-btn--primary:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 6px 24px color-mix(in srgb, var(--pa-accent-blue) 40%, transparent);
}

.pa-btn--secondary {
	color: var(--pa-text-primary);
	background: var(--pa-card-bg);
	border: 1.5px solid var(--pa-border);
	box-shadow: var(--pa-shadow-sm);
}
.pa-btn--secondary:hover {
	transform: translateY(-1px);
	color: var(--pa-blue-primary);
	border-color: var(--pa-blue-primary);
}

/* Sibling of pa-btn--white. Used as the secondary buy button in dual-mode
   CTAs on dark backgrounds (final-CTA). Same shape, transparent fill with
   a white outline so it reads as an alternative — not the same weight as
   the solid-white primary, but distinct from pa-btn--ghost-light which is
   for non-purchase actions. */
.pa-btn--white-outline {
	padding: 16px 36px;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	background: transparent;
	border: 1.5px solid rgba(255, 255, 255, 0.85);
}
.pa-btn--white-outline:hover {
	transform: translateY(-2px);
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	border-color: #fff;
}

.pa-btn--white {
	padding: 16px 36px;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	background: #fff;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.pa-btn--white:hover {
	transform: translateY(-2px);
	color: var(--pa-blue-primary);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
}

.pa-btn--ghost-light {
	color: #fff;
	background: rgba(255, 255, 255, 0.1);
	border: 1.5px solid rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(8px);
}
.pa-btn--ghost-light:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.5);
	transform: translateY(-1px);
}

.pa-section-header {
	margin-bottom: var(--pa-space-12);
}
.pa-section-header__label {
	display: inline-block;
	margin-bottom: var(--pa-space-3);
	font-family: var(--pa-font-heading);
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
.pa-section-header__title {
	margin: 0 0 var(--pa-space-4);
	font-family: var(--pa-font-heading);
	font-size: clamp(28px, 3.5vw, 40px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-section-header__subtitle {
	margin: 0;
	max-width: 640px;
	font-size: 17px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-section-header--centered {
	text-align: center;
}
.pa-section-header--centered .pa-section-header__subtitle {
	margin-left: auto;
	margin-right: auto;
}
.pa-section-header--dark .pa-section-header__label    { color: var(--pa-accent-blue-light); }
.pa-section-header--dark .pa-section-header__title    { color: #fff; }
.pa-section-header--dark .pa-section-header__subtitle { color: rgba(255, 255, 255, 0.7); }
.pa-section-header--warm .pa-section-header__label { color: var(--pa-accent-orange); }

@media (prefers-reduced-motion: reduce) {
	.pa-btn,
	.pa-btn:hover {
		transition: none;
		transform: none;
	}
}


/* =============================================================================
 * Section 01 — Nav (v2: two CTAs)
 * ========================================================================== */

.pa-v2-nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	height: 64px;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	/* No border at top — the bottom border only appears once the user has
	   scrolled, via the .pa-v2-nav-solid modifier (toggled in homepage.js). */
	border-bottom: 1px solid transparent;
	transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.pa-v2-nav__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 var(--pa-space-6);
	gap: var(--pa-space-6);
}

.pa-v2-nav.pa-v2-nav-transparent {
	background: rgba(255, 255, 255, 0.82);
	border-bottom-color: transparent;
}
.pa-v2-nav.pa-v2-nav-solid {
	background: rgba(255, 255, 255, 0.98);
	border-bottom-color: var(--pa-border);
	box-shadow: var(--pa-shadow-sm);
}

.pa-v2-nav__logo {
	display: inline-flex;
	align-items: center;
	gap: var(--pa-space-2);
	font-family: var(--pa-font-heading);
	font-size: 20px;
	font-weight: 700;
	color: var(--pa-text-primary);
	text-decoration: none;
}
.pa-v2-nav__logo-img {
	display: block;
	height: 36px;
	width: auto;
	/* Without flex-shrink:0, the logo gets compressed when the nav row runs
	   out of space (mobile: logo + CTA competing). The image's natural
	   aspect (169×30 = 5.63) gets visibly squished to ~4.22.
	   `max-width: none` overrides Bricks/WP's global `img { max-width: 100% }`
	   which would otherwise cap the image at its parent's width and create
	   a feedback loop that resolves to a stretched-vertical aspect. */
	flex-shrink: 0;
	max-width: none;
}

.pa-v2-nav__links {
	display: flex;
	align-items: center;
	gap: var(--pa-space-7);
	list-style: none;
	padding: 0;
	margin: 0;
}
.pa-v2-nav__links a {
	font-size: 14px;
	font-weight: 500;
	color: var(--pa-text-secondary);
	text-decoration: none;
	transition: color 0.2s ease;
}
.pa-v2-nav__links a:hover {
	color: var(--pa-blue-primary);
}

/* Bricks renders <button> elements with .bricks-button + .brxe-button classes
   that ship default padding/border/background. Compound our class with
   Bricks' so specificity wins (0,2,0 vs Bricks' 0,1,0) without !important. */
.bricks-button.pa-v2-nav__link,
.bricks-button.pa-v2-nav__link:link,
.bricks-button.pa-v2-nav__link:visited,
.brxe-button.pa-v2-nav__link,
.brxe-button.pa-v2-nav__link:link,
.brxe-button.pa-v2-nav__link:visited {
	display: inline-flex;
	align-items: center;
	padding: 0;
	margin: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	box-shadow: none;
	font-family: var(--pa-font-body);
	font-size: 14px;
	font-weight: 500;
	color: var(--pa-text-secondary);
	text-decoration: none;
	transition: color 0.2s ease;
}
.bricks-button.pa-v2-nav__link:hover,
.brxe-button.pa-v2-nav__link:hover {
	background: transparent;
	color: var(--pa-blue-primary);
}

/* Nav dropdowns — CSS-only hover + focus-within. No JS required. */
.pa-v2-nav__item--dropdown {
	position: relative;
}
.pa-v2-nav__dropdown-trigger {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	cursor: pointer;
}
.pa-v2-nav__chevron {
	transition: transform 0.2s ease;
}
.pa-v2-nav__item--dropdown:hover .pa-v2-nav__chevron,
.pa-v2-nav__item--dropdown:focus-within .pa-v2-nav__chevron {
	transform: rotate(180deg);
}
.pa-v2-nav__dropdown {
	position: absolute;
	top: calc(100% - 4px);
	left: -16px;
	min-width: 280px;
	padding: var(--pa-space-2) 0;
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	box-shadow: var(--pa-shadow-lg);
	opacity: 0;
	pointer-events: none;
	transform: translateY(-8px);
	transition: opacity 0.18s ease, transform 0.18s ease;
	z-index: 110;
}
.pa-v2-nav__item--dropdown:hover .pa-v2-nav__dropdown,
.pa-v2-nav__item--dropdown:focus-within .pa-v2-nav__dropdown {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}
.pa-v2-nav__dropdown a {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: var(--pa-space-3) var(--pa-space-5);
	color: var(--pa-text-primary);
	text-decoration: none;
	transition: background 0.15s ease;
}
.pa-v2-nav__dropdown a:hover {
	background: var(--pa-bg-subtle);
	color: var(--pa-blue-primary);
}
.pa-v2-nav__dropdown-title {
	font-size: 14px;
	font-weight: 600;
	color: inherit;
	line-height: 1.3;
}
.pa-v2-nav__dropdown-sub {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	color: var(--pa-text-muted);
}
.pa-v2-nav__dropdown a:hover .pa-v2-nav__dropdown-sub {
	color: var(--pa-text-secondary);
}
.pa-v2-nav__dropdown-sep {
	height: 1px;
	margin: var(--pa-space-2) var(--pa-space-5);
	background: var(--pa-border-subtle);
}

/* ----- Wide / two-column dropdown variant -----
   Used by Solutions when the menu has more entries than fit cleanly in a
   single column. Two named columns ("By Audience" / "By Industry") plus a
   full-width footer row for the comparison page link. */
.pa-v2-nav__dropdown--wide {
	min-width: 580px;
	padding: var(--pa-space-3);
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: var(--pa-space-3);
}
.pa-v2-nav__dropdown-col {
	display: flex;
	flex-direction: column;
}
.pa-v2-nav__dropdown-col-title {
	display: block;
	padding: var(--pa-space-2) var(--pa-space-3) var(--pa-space-1);
	font-family: var(--pa-font-body);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-v2-nav__dropdown--wide a {
	padding: 10px var(--pa-space-3);
	border-radius: var(--pa-radius-sm);
}
.pa-v2-nav__dropdown-footer {
	grid-column: 1 / -1;
	margin-top: var(--pa-space-2);
	padding-top: var(--pa-space-3);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-v2-nav__dropdown-footer a {
	padding: 10px var(--pa-space-3);
	border-radius: var(--pa-radius-sm);
}

.pa-v2-nav__actions {
	display: flex;
	align-items: center;
	gap: var(--pa-space-3);
}

/* Nav CTA — uses the standard page-level .pa-btn dimensions so the
   "Free Download" button visually matches the same CTA where it appears
   in heroes, final-CTA blocks, and contact buttons. (Earlier this class
   shrank the button to 8px/14px; that made the nav button feel orphaned
   from the rest of the system.) */

@media (max-width: 960px) {
	.pa-v2-nav__links {
		gap: var(--pa-space-5);
	}
}
/* ----- Hamburger button (mobile/tablet menu trigger) -----
   Hidden on desktop, shown at <=768px next to the CTA. Toggles `.is-menu-open`
   on .pa-v2-nav via homepage.js; when open, .pa-v2-nav__links flips from
   `display:none` to a full-screen drawer (rules below in the @media block). */

/* ---- Language switcher (WPML) ----
   Compact flag + label pill in the nav __actions area. Click opens a
   dropdown of other languages. Markup from the pa-cart plugin's
   [pa_lang_switcher] shortcode. JS in homepage.js handles open/close. */
.pa-lang-switcher {
	position: relative;
	display: inline-flex;
	align-items: center;
}
.pa-lang-switcher__current {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 10px;
	background: transparent;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	color: var(--pa-text-primary);
	font: 600 13px var(--pa-font-body);
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}
.pa-lang-switcher__current:hover {
	background: var(--pa-bg-subtle);
	border-color: var(--pa-blue-primary);
}
.pa-lang-switcher__flag {
	display: block;
	width: 20px;
	height: 14px;
	border-radius: 2px;
	object-fit: cover;
	flex-shrink: 0;
}
.pa-lang-switcher__label {
	white-space: nowrap;
}
.pa-lang-switcher__chevron {
	transition: transform 0.18s ease;
	color: var(--pa-text-muted);
}
.pa-lang-switcher.is-open .pa-lang-switcher__chevron {
	transform: rotate(180deg);
}
.pa-lang-switcher__menu {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	min-width: 180px;
	margin: 0;
	padding: 6px 0;
	list-style: none;
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	box-shadow: var(--pa-shadow-lg);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-4px);
	transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s linear 0.18s;
	z-index: 200;
}
.pa-lang-switcher.is-open .pa-lang-switcher__menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	transition-delay: 0s;
}
/* Hover/focus-within auto-open is for mouse + keyboard only. On touch, the
   trigger button retains focus after tap, which used to keep the menu
   pinned open via :focus-within even after outside-tap removed .is-open.
   Restricting to (hover: hover) and (pointer: fine) excludes touch. */
@media (hover: hover) and (pointer: fine) {
	.pa-lang-switcher:hover .pa-lang-switcher__menu,
	.pa-lang-switcher:focus-within .pa-lang-switcher__menu {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
		transition-delay: 0s;
	}
}
.pa-lang-switcher__option {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 14px;
	color: var(--pa-text-primary);
	font: 500 13px var(--pa-font-body);
	text-decoration: none;
	transition: background 0.12s ease;
}
.pa-lang-switcher__option:hover {
	background: var(--pa-bg-subtle);
	color: var(--pa-blue-primary);
}
/* Desktop nav: language switcher sits left of the hamburger area (which is
   hidden on desktop anyway). On mobile, label hides — flag-only chip to
   save space. */
@media (max-width: 768px) {
	.pa-lang-switcher__label {
		display: none;
	}
	.pa-lang-switcher__current {
		padding: 6px 8px;
	}
}

/* Right-side Free Download CTA — compact button living between the
   language switcher and the hamburger. Smaller padding than .pa-btn since
   it has to fit inside the 64px nav row alongside other actions. Primary
   variant (filled blue gradient) is the default; matches the look of
   hero/final-CTA buttons so visitors recognize it as the same action. */
.pa-v2-nav__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 16px;
	border: 1.5px solid transparent;
	border-radius: var(--pa-radius-md);
	font-family: var(--pa-font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.1;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.pa-v2-nav__cta--primary {
	color: #fff;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	box-shadow: 0 3px 10px color-mix(in srgb, var(--pa-accent-blue) 24%, transparent);
}
.pa-v2-nav__cta--primary:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 5px 16px color-mix(in srgb, var(--pa-accent-blue) 35%, transparent);
}

/* Mobile-only drawer entry — by default hidden so it doesn't show in the
   desktop horizontal nav. The mobile media query below flips it on. */
.pa-v2-nav__item--download {
	display: none;
}

.pa-v2-nav__hamburger {
	display: none;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	background: transparent;
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	color: var(--pa-text-primary);
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.pa-v2-nav__hamburger:hover {
	background: var(--pa-bg-subtle);
	border-color: var(--pa-blue-primary);
	color: var(--pa-blue-primary);
}
.pa-v2-nav.is-menu-open .pa-v2-nav__hamburger {
	background: var(--pa-blue-primary);
	color: #fff;
	border-color: var(--pa-blue-primary);
}
/* Toggle which path of the icon shows (3 bars vs X). Both live in the same
   SVG so we don't have to swap node trees from JS. */
.pa-v2-nav__hamburger-close { display: none; }
.pa-v2-nav.is-menu-open .pa-v2-nav__hamburger-bars { display: none; }
.pa-v2-nav.is-menu-open .pa-v2-nav__hamburger-close { display: inline; }

@media (max-width: 768px) {
	.pa-v2-nav__links {
		display: none;
	}
	.pa-v2-nav__actions .pa-v2-nav__cta--primary,
	.pa-v2-nav__actions .pa-v2-nav__cta--secondary {
		display: none; /* CTA hidden in nav row — appears inside the hamburger drawer via .pa-v2-nav__item--download */
	}
	.pa-v2-nav__hamburger {
		display: inline-flex;
	}
	/* When the drawer is open, show the Free Download entry as the
	   prominent first menu item — same destination as the desktop CTA. */
	.pa-v2-nav.is-menu-open .pa-v2-nav__item--download {
		display: block;
	}

	/* ----- Drawer mode: full-screen overlay menu -----
	   Use explicit height (not top+bottom) to dodge ancestor-transform
	   quirks that can collapse the fixed-position element to just padding
	   height when the containing block resolves to something other than
	   the viewport. */
	.pa-v2-nav.is-menu-open .pa-v2-nav__links {
		display: block;
		position: fixed;
		top: 64px;
		left: 0;
		width: 100vw;
		height: calc(100vh - 64px);
		padding: 16px 20px 32px;
		background: #fff;
		overflow-y: auto;
		z-index: 99;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__links > li {
		display: block;
		border-bottom: 1px solid var(--pa-border-subtle);
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__links > li:last-child {
		border-bottom: none;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__links > li > a {
		display: flex;
		align-items: center;
		padding: 14px 4px;
		font-size: 16px;
		font-weight: 600;
		color: var(--pa-text-primary);
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown-trigger .pa-v2-nav__chevron {
		margin-left: auto;
	}
	/* Dropdowns: always open inline (no hover), full-width, indented under
	   their trigger. Override the absolute-positioned desktop pattern. */
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown {
		position: static;
		display: block;
		opacity: 1;
		pointer-events: auto;
		transform: none;
		min-width: 0;
		padding: 0 0 8px 12px;
		background: transparent;
		border: none;
		box-shadow: none;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown--wide {
		display: block;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown a {
		padding: 8px 8px;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown-col {
		display: block;
	}
	.pa-v2-nav.is-menu-open .pa-v2-nav__dropdown-col-title {
		padding-top: 8px;
		padding-left: 4px;
	}
}

/* Body scroll lock when drawer is open — prevents the page underneath from
   scrolling on touch while the user is navigating the menu. */
body.pa-no-scroll {
	overflow: hidden;
}

/* Mobile: stacked CTA pairs (.pa-home-cta__actions, .pa-final-cta__actions)
   end up with ragged widths because each button sizes to its content. Force
   both buttons full-width when they wrap so the stacked pair lines up
   cleanly. Capped via max-width so a single button doesn't span the whole
   viewport on a wider phone. */
@media (max-width: 520px) {
	.pa-home-cta__actions .pa-btn,
	.pa-final-cta__actions .pa-btn {
		width: 100%;
		max-width: 320px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pa-v2-nav,
	.pa-v2-nav__links a {
		transition: none;
	}
}


/* =============================================================================
 * Section 02 — Hero
 * ========================================================================== */

.pa-hero {
	position: relative;
	overflow: hidden;
	padding: var(--pa-space-30) var(--pa-space-6) var(--pa-space-16);
	text-align: center;
	background: linear-gradient(
		160deg,
		var(--pa-gradient-hero-start) 0%,
		#ffffff 40%,
		var(--pa-gradient-hero-end) 100%
	);

	--pa-hero-glow-tl: color-mix(in srgb, var(--pa-accent-blue) 6%, transparent);
	--pa-hero-glow-bl: color-mix(in srgb, var(--pa-accent-blue) 5%, transparent);
	--pa-hero-badge-bg: color-mix(in srgb, var(--pa-accent-blue) 8%, transparent);
	--pa-hero-badge-border: color-mix(in srgb, var(--pa-accent-blue) 15%, transparent);
}

.pa-hero::before,
.pa-hero::after {
	content: '';
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}
.pa-hero::before {
	top: -200px;
	right: -200px;
	width: 600px;
	height: 600px;
	background: radial-gradient(circle, var(--pa-hero-glow-tl) 0%, transparent 70%);
}
.pa-hero::after {
	bottom: -150px;
	left: -150px;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, var(--pa-hero-glow-bl) 0%, transparent 70%);
}

.pa-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 1100px;
	margin: 0 auto;
}

/* Pill badge — hero eyebrow style. Reusable across pages (homepage hero,
   /pricing hero, future page heroes). Uses solid rgba() fallback values
   (instead of color-mix()) so the rule works regardless of the parent
   scope or browser color-mix support quirks. */
.pa-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: var(--pa-space-2);
	margin-bottom: var(--pa-space-6);
	padding: 6px var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08); /* var(--pa-accent-blue) at 8% */
	border: 1px solid rgba(30, 115, 190, 0.15); /* var(--pa-accent-blue) at 15% */
	border-radius: var(--pa-radius-pill);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
}
.pa-hero__badge-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--pa-blue-primary);
	flex-shrink: 0;
}

/* At narrow widths the badge text wraps to 2–3 lines. The default
   `align-items: center` + `border-radius: 100px` (full pill) renders as a
   tall capsule with the dot vertically-centered against the wrapped block,
   which looks chunky. Switch to a `display:block` layout so the dot flows
   inline with the text and `text-align: center` centers every wrapped line
   together — reads as a centered label, not a stretched pill. */
@media (max-width: 520px) {
	.pa-hero__badge {
		display: block;
		text-align: center;
		padding: 8px 14px;
		border-radius: 14px;
		font-size: 12px;
		line-height: 1.45;
	}
	.pa-hero__badge-dot {
		display: inline-block;
		vertical-align: middle;
		margin: -2px 6px 0 0;
	}
}

.pa-hero__title {
	max-width: 900px;
	margin: 0 auto var(--pa-space-5);
	font-family: var(--pa-font-heading);
	font-size: clamp(36px, 5vw, 60px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-hero__title-accent {
	background: linear-gradient(135deg, var(--pa-blue-dark), var(--pa-blue-primary));
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.pa-hero__subtitle {
	max-width: 640px;
	margin: 0 auto var(--pa-space-9);
	font-size: 18px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}

.pa-hero__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: var(--pa-space-12);
}

.pa-hero__stats {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--pa-space-12);
	margin: 0;
	padding: 0;
}
.pa-hero__stat {
	display: flex;
	flex-direction: column;
	text-align: center;
}
.pa-hero__stat-value {
	margin: 0;
	order: 1;
	font-family: var(--pa-font-heading);
	font-size: 36px;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--pa-blue-primary);
}
.pa-hero__stat-label {
	order: 2;
	font-size: 13px;
	font-weight: 500;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* Product screenshot below the hero text / CTA / stats. Soft shadow + rounded
   corners + subtle border to feel like a floating UI panel. Width capped at
   1100 so it fits inside the inner column without overflowing. */
.pa-hero__visual {
	margin: var(--pa-space-12) auto 0;
	max-width: 1100px;
	width: 100%;
}
.pa-hero__visual-img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--pa-radius-lg);
	border: 1px solid var(--pa-border);
	box-shadow:
		0 20px 60px -20px color-mix(in srgb, var(--pa-accent-blue) 30%, transparent),
		0 4px 12px rgba(0, 0, 0, 0.06);
}

@media (max-width: 768px) {
	.pa-hero__stats {
		gap: var(--pa-space-7);
	}
	.pa-hero__stat-value {
		font-size: 28px;
	}
}


/* =============================================================================
 * Section 03 — Trust Bar
 * ========================================================================== */

.pa-trust {
	padding: var(--pa-space-8) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-top: 1px solid var(--pa-border-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
	text-align: center;
}

.pa-trust__items {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--pa-space-2) var(--pa-space-8);
	list-style: none;
	padding: 0;
	margin: 0;
}

/* `display: block` (not `inline-flex`) so the text+<strong>+text inside
   each <li> flows as one inline run. With inline-flex, every contiguous
   text node and <strong> child became a separate flex item with gap, so
   "FIPS 140-2 & DFARS validated" rendered as three separated chunks (and
   that broke visibly on mobile when items wrapped). */
.pa-trust__items li,
.pa-trust__item {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-text-secondary);
	letter-spacing: 0.01em;
}

.pa-trust__items li::before,
.pa-trust__item::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: var(--pa-space-3);
	vertical-align: middle;
	border-radius: 50%;
	background: var(--pa-accent-blue-light);
}

@media (max-width: 520px) {
	.pa-trust__items {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--pa-space-2);
	}
	.pa-trust__items li,
	.pa-trust__item {
		text-align: left;
		width: 100%;
	}
}

.pa-trust__items li strong,
.pa-trust__item strong {
	color: var(--pa-text-primary);
	font-weight: 700;
}


/* =============================================================================
 * Section 04 — Advantages (6 cards)
 * ========================================================================== */

.pa-advantages {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(180deg, #ffffff 0%, var(--pa-bg-subtle) 100%);
}
.pa-advantages__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-advantages__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: var(--pa-space-5);
}

.pa-advantage-card {
	position: relative;
	overflow: hidden;
	/* Grid layout — icon + tag share row 1, title/body span both columns
	   below. Converter emits children in order: icon, tag, title, body. */
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: var(--pa-space-3);
	row-gap: var(--pa-space-4);
	padding: var(--pa-space-8);
	background: var(--pa-card-bg);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-advantage-card__title,
.pa-advantage-card__body {
	grid-column: 1 / -1;
}
.pa-advantage-card__tag {
	align-self: center;
	justify-self: start;
}
.pa-advantage-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--pa-blue-dark), var(--pa-blue-primary));
	opacity: 0;
	transition: opacity 0.25s ease;
}
.pa-advantage-card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-advantage-card:hover::before {
	opacity: 1;
}

.pa-advantage-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: var(--pa-radius-lg);
	font-size: 22px;
	line-height: 1;
}
.pa-advantage-card__icon--primary {
	background: color-mix(in srgb, var(--pa-accent-blue) 10%, transparent);
	color: var(--pa-blue-primary);
}
.pa-advantage-card__icon--dark {
	background: color-mix(in srgb, var(--pa-blue-dark) 10%, transparent);
	color: var(--pa-blue-dark);
}
.pa-advantage-card__icon--warm {
	background: color-mix(in srgb, var(--pa-accent-orange) 10%, transparent);
	color: var(--pa-accent-orange);
}

.pa-advantage-card__title {
	margin: 0;
	font-family: var(--pa-font-heading);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-advantage-card__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-advantage-card__tag {
	display: inline-block;
	padding: 4px var(--pa-space-3);
	background: color-mix(in srgb, var(--pa-blue-primary) 10%, transparent);
	border-radius: var(--pa-radius-pill);
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-blue-dark);
}

@media (prefers-reduced-motion: reduce) {
	.pa-advantage-card,
	.pa-advantage-card::before,
	.pa-advantage-card:hover {
		transition: none;
		transform: none;
	}
}


/* =============================================================================
 * Section 05 — Codec performance (4 cards with animated stat bars)
 * ========================================================================== */

.pa-format {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-format__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-codec-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}

.pa-codec-card {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
	padding: var(--pa-space-6);
	background: var(--pa-card-bg);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
	--pa-codec-bar-fill: 50%;
}
.pa-codec-card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}

.pa-codec-name {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-codec-desc {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}

.pa-codec-ratio-wrap {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-1);
}
.pa-codec-ratio {
	font-size: 36px;
	font-weight: 800;
	color: var(--pa-blue-primary);
	line-height: 1;
	letter-spacing: -0.02em;
}
.pa-codec-ratio-label {
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.pa-codec-stat-bar {
	position: relative;
	height: 6px;
	background: var(--pa-border-subtle);
	border-radius: var(--pa-radius-pill);
	overflow: hidden;
}
.pa-codec-stat-bar__fill {
	height: 100%;
	width: var(--pa-codec-bar-fill);
	background: linear-gradient(90deg, var(--pa-gradient-start), var(--pa-gradient-end));
	border-radius: inherit;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}
.pa-codec-card.is-in-view .pa-codec-stat-bar__fill {
	transform: scaleX(1);
}

/* Both selector forms supported: data-bar-fill="N" (used in standalone HTML
   snippets) and pa-codec-card--bar-N (used in Bricks JSON exports — Bricks'
   attribute repeater is awkward to populate so we use class modifiers there). */
.pa-codec-card[data-bar-fill="23"], .pa-codec-card--bar-23 { --pa-codec-bar-fill: 23%; }
.pa-codec-card[data-bar-fill="50"], .pa-codec-card--bar-50 { --pa-codec-bar-fill: 50%; }
.pa-codec-card[data-bar-fill="70"], .pa-codec-card--bar-70 { --pa-codec-bar-fill: 70%; }
.pa-codec-card[data-bar-fill="75"], .pa-codec-card--bar-75 { --pa-codec-bar-fill: 75%; }
.pa-codec-card[data-bar-fill="85"], .pa-codec-card--bar-85 { --pa-codec-bar-fill: 85%; }

.pa-codec-metrics {
	display: flex;
	justify-content: space-between;
	gap: var(--pa-space-3);
	margin: auto 0 0;
	padding-top: var(--pa-space-2);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-codec-metric {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.pa-codec-metric__label {
	margin: 0;
	font-size: 11px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	order: 2;
}
.pa-codec-metric__value {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-text-primary);
	order: 1;
}

@media (max-width: 960px) {
	.pa-codec-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
	.pa-codec-grid { grid-template-columns: 1fr; }
	.pa-codec-ratio { font-size: 32px; }
}
@media (prefers-reduced-motion: reduce) {
	.pa-codec-card { transition: none; }
	.pa-codec-stat-bar__fill { transition: none; transform: none; }
}


/* =============================================================================
 * Section 06 — Licensing 3-step strip (NEW)
 * ========================================================================== */

.pa-licensing {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-licensing__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.pa-licensing__steps {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr;
	align-items: stretch;
	gap: var(--pa-space-4);
	margin-top: var(--pa-space-10);
}

.pa-licensing-step {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	text-align: left;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-licensing-step:hover {
	transform: translateY(-2px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}

.pa-licensing-step__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin-bottom: var(--pa-space-4);
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 16px;
	font-weight: 800;
}
.pa-licensing-step__label {
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: var(--pa-space-2);
}
.pa-licensing-step__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 20px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-licensing-step__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}

/* Arrow connector between steps. */
.pa-licensing__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--pa-blue-primary);
	font-size: 24px;
	font-weight: 700;
	user-select: none;
}

.pa-licensing__footer {
	margin-top: var(--pa-space-8);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: color-mix(in srgb, var(--pa-accent-blue) 6%, transparent);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 14%, transparent);
	border-radius: var(--pa-radius-md);
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	color: var(--pa-blue-dark);
}

@media (max-width: 960px) {
	.pa-licensing__steps {
		grid-template-columns: 1fr;
	}
	.pa-licensing__arrow {
		transform: rotate(90deg);
		padding: var(--pa-space-1) 0;
	}
}


/* =============================================================================
 * Section 07 — Pricing
 * ========================================================================== */

.pa-pricing {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
/* /pricing only — pa-pricing#tiers follows the hero (with the fixed-position
   sub-nav between them in DOM, so adjacent-sibling selector doesn't match).
   Drop the section's top padding to tighten the 120px gap to the first card. */
#tiers.pa-pricing {
	padding-top: var(--pa-space-12);
}
/* Modifier — when the pricing reel is reused inline on a product / audience
   page (right after the use-cases section). Trim the TOP padding only so it
   doesn't double the rhythm of the page; preserve full BOTTOM padding for
   breathing room before the next section. Mirrors /pricing/'s effective
   padding (#tiers.pa-pricing override + .pa-pricing default bottom). */
.pa-pricing--inline {
	padding: var(--pa-space-12) var(--pa-space-6) var(--pa-space-16);
}
.pa-pricing__volume-note {
	max-width: 760px;
	margin: var(--pa-space-7) auto 0;
	padding: var(--pa-space-3) var(--pa-space-5);
	background: #fff;
	border: 1px solid var(--pa-border-subtle);
	border-radius: var(--pa-radius-sm);
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-pricing__volume-note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-pricing__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-pricing__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
/* PA 2027 4-card layout: Business · Professional · Pro Toolbox · Enterprise.
   Free is excluded from the tier-cards reel deliberately — it's the
   top-of-funnel entry on the homepage / /download / external sites, not
   a buy-option on /pricing. Free still appears in the comparison matrix
   below the tier cards on /pricing.

   At desktop, 4 columns; at tablet, 2 columns auto-wrap; at narrow, single. */
.pa-pricing__grid--four {
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-4);
}
.pa-pricing__grid--four .pa-price-card {
	padding: 24px var(--pa-space-5);
}
/* PA 2027 4-col layout: tighten internal spacing so the 4 cards fit at 263px
   wide without feeling vertically bloated. Scoped to --four so the 3-col
   homepage reel keeps its breathing room. */
.pa-pricing__grid--four .pa-price-card__badge {
	margin-bottom: var(--pa-space-2);
}
.pa-pricing__grid--four .pa-price-card__title {
	font-size: 18px;
	margin-bottom: 4px;
	/* Reserve 2 lines so "Professional Toolbox" (wraps to 2 at narrow card
	   width) doesn't push that card's desc + price below the other 3 cards'. */
	min-height: 2.6em;
}
.pa-pricing__grid--four .pa-price-card__desc {
	margin-bottom: var(--pa-space-4);
	/* Reserve ~4.5 lines so all four descriptions reserve identical vertical
	   space across EN/DE/FR/IT. EN runs ~2–3 lines; DE/FR/IT translations are
	   typically 20–30% longer and wrap to 4 lines at the 263px card width
	   (e.g. DE Business desc "Lizenz für die kommerzielle Nutzung des
	   Kern-Archivers…" = 4 lines). Without enough reserved height the descs
	   stack at their natural heights and the prices land at different Y
	   positions across the row. */
	min-height: 7em;
}
.pa-pricing__grid--four .pa-price-card__amount-value {
	font-size: 40px;
}
.pa-pricing__grid--four .pa-price-card__amount-prefix,
.pa-pricing__grid--four .pa-price-card__amount-suffix {
	font-size: 18px;
}
.pa-pricing__grid--four .pa-price-card__type {
	margin-bottom: var(--pa-space-4);
}
.pa-pricing__grid--four .pa-price-card__features {
	gap: var(--pa-space-2);
	margin-bottom: var(--pa-space-5);
}
.pa-pricing__grid--four .pa-price-card__features li {
	font-size: 13px;
	line-height: 1.45;
}
.pa-pricing__grid--four .pa-price-card__cta {
	padding: 12px;
	font-size: 14px;
}
.pa-pricing__grid--four .pa-price-card__cta-alt,
.pa-pricing__grid--four .bricks-button.pa-price-card__cta-alt,
.pa-pricing__grid--four .brxe-button.pa-price-card__cta-alt {
	padding: 12px;
	font-size: 14px;
}
@media (max-width: 1100px) {
	.pa-pricing__grid--four {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 600px) {
	.pa-pricing__grid--four {
		grid-template-columns: 1fr;
	}
}
/* Enterprise card — soft accent-orange tint to flag the compliance tier. */
.pa-price-card--enterprise {
	background: color-mix(in srgb, var(--pa-accent-orange) 4%, var(--pa-card-bg));
	border-color: color-mix(in srgb, var(--pa-accent-orange) 22%, var(--pa-border));
}
.pa-price-card--enterprise .pa-price-card__badge {
	background: color-mix(in srgb, var(--pa-accent-orange) 12%, transparent);
	color: var(--pa-accent-orange);
	border-color: color-mix(in srgb, var(--pa-accent-orange) 30%, transparent);
}

.pa-price-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 36px var(--pa-space-7);
	background: var(--pa-card-bg);
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-xl);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-price-card:hover {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-lg);
}

.pa-price-card--featured {
	border-color: var(--pa-blue-primary);
	background: linear-gradient(
		180deg,
		color-mix(in srgb, var(--pa-accent-blue) 3%, transparent) 0%,
		var(--pa-card-bg) 100%
	);
	box-shadow: var(--pa-shadow-lg);
}
.pa-price-card--featured::before {
	content: 'Most Popular';
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px var(--pa-space-4);
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	white-space: nowrap;
}

.pa-price-card__badge {
	display: inline-flex;
	align-self: flex-start;
	align-items: center;
	gap: 6px;
	margin-bottom: var(--pa-space-4);
	padding: 4px var(--pa-space-3);
	background: color-mix(in srgb, var(--pa-accent-green) 12%, transparent);
	border: 1px solid color-mix(in srgb, var(--pa-accent-green) 28%, transparent);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	color: #1a7a3e;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-price-card__badge::before {
	content: '\2713';
	font-size: 12px;
}

.pa-price-card__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 20px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-price-card__desc {
	margin: 0 0 var(--pa-space-6);
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-muted);
}

.pa-price-card__amount {
	display: flex;
	align-items: baseline;
	gap: 4px;
	margin: 0 0 4px;
	color: var(--pa-text-primary);
}
.pa-price-card__amount-prefix,
.pa-price-card__amount-suffix {
	font-size: 20px;
	font-weight: 700;
}
.pa-price-card__amount-value {
	font-size: 48px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.03em;
}
.pa-price-card__type {
	margin: 0 0 var(--pa-space-5);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
}

.pa-price-card__maintenance {
	margin: 0 0 var(--pa-space-6);
	padding: var(--pa-space-4);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 12px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-price-card__maintenance strong {
	display: block;
	color: var(--pa-text-primary);
	font-weight: 700;
	margin-bottom: 2px;
}
.pa-price-card__maintenance span {
	display: block;
	color: var(--pa-text-muted);
	margin-top: 2px;
}

.pa-price-card__features {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
	margin: 0 0 var(--pa-space-7);
	padding: 0;
	list-style: none;
}
.pa-price-card__features li {
	position: relative;
	margin: 0;
	padding-left: calc(var(--pa-space-2) + 14px);
	font-size: 14px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
.pa-price-card__features li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 700;
	color: var(--pa-blue-primary);
}

.pa-price-card__cta {
	display: block;
	width: 100%;
	padding: 14px;
	border-radius: var(--pa-radius-md);
	font-family: var(--pa-font-body);
	font-size: 15px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.pa-price-card__cta--primary {
	color: #fff;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	box-shadow: 0 4px 12px color-mix(in srgb, var(--pa-accent-blue) 25%, transparent);
}
.pa-price-card__cta--primary:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--pa-accent-blue) 35%, transparent);
}
.pa-price-card__cta--outline {
	background: transparent;
	color: var(--pa-blue-primary);
	border: 1.5px solid var(--pa-border);
}
.pa-price-card__cta--outline:hover {
	background: color-mix(in srgb, var(--pa-accent-blue) 4%, transparent);
	border-color: var(--pa-blue-primary);
}

/* Secondary buy button in tier cards — emitted as a sibling of the primary
   by pa_cart_link's dual="1" mode on en World (Multilingual EUR variant).
   Stacked below the primary with a small gap. Visual weight is lower than
   the filled primary so the "default" (English-only) choice reads first. */
.pa-price-card__cta--secondary {
	margin-top: var(--pa-space-2);
	color: var(--pa-text-primary);
	background: var(--pa-card-bg);
	border: 1.5px solid var(--pa-border);
}
.pa-price-card__cta--secondary:hover {
	transform: translateY(-1px);
	color: var(--pa-blue-primary);
	border-color: var(--pa-blue-primary);
}

/* Secondary CTA below the primary Buy button — Multilingual variant.
   Matches /education's dual-button pattern: primary filled blue (English-only),
   secondary outline (Multilingual). Compound `.bricks-button.pa-price-card__cta-alt`
   selectors override Bricks' default button padding/background that would
   otherwise leak through (since `.brxe-button` ties on specificity with our
   single class). */
.pa-price-card__cta-alt,
.bricks-button.pa-price-card__cta-alt,
.bricks-button.pa-price-card__cta-alt:link,
.bricks-button.pa-price-card__cta-alt:visited,
.brxe-button.pa-price-card__cta-alt,
.brxe-button.pa-price-card__cta-alt:link,
.brxe-button.pa-price-card__cta-alt:visited {
	display: block;
	width: 100%;
	margin-top: var(--pa-space-2);
	padding: 14px;
	background: transparent;
	color: var(--pa-blue-primary);
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	box-shadow: none;
	font-family: var(--pa-font-body);
	font-size: 15px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.pa-price-card__cta-alt:hover,
.bricks-button.pa-price-card__cta-alt:hover,
.brxe-button.pa-price-card__cta-alt:hover {
	background: color-mix(in srgb, var(--pa-accent-blue) 4%, transparent);
	border-color: var(--pa-blue-primary);
	color: var(--pa-blue-primary);
}

/* 4-year cost compare banner below the pricing grid. */
.pa-price-compare-banner {
	margin-top: var(--pa-space-9);
	padding: var(--pa-space-6) var(--pa-space-7);
	background: linear-gradient(
		135deg,
		color-mix(in srgb, var(--pa-accent-blue) 8%, transparent),
		color-mix(in srgb, var(--pa-blue-light) 6%, transparent)
	);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 18%, transparent);
	border-radius: var(--pa-radius-lg);
	text-align: center;
}
.pa-price-compare-banner__label {
	display: block;
	margin-bottom: var(--pa-space-3);
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-blue-dark);
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
.pa-price-compare-banner__row {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--pa-space-3) var(--pa-space-9);
	font-size: 16px;
	color: var(--pa-text-primary);
}
.pa-price-compare-banner__pa,
.pa-price-compare-banner__rival {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	/* Lock to same width so every TCO row has the divider, prices, and
	   savings pill aligned at identical X positions. Without this, rows
	   with wider amounts (e.g. "$2,695.50") stretched rival's natural
	   width and `justify-content: center` shifted the whole row left. */
	width: 240px;
}
.pa-price-compare-banner__name {
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-price-compare-banner__amount {
	font-size: 28px;
	font-weight: 800;
	letter-spacing: -0.02em;
}
.pa-price-compare-banner__pa .pa-price-compare-banner__amount {
	color: var(--pa-blue-primary);
}
.pa-price-compare-banner__rival .pa-price-compare-banner__amount {
	color: var(--pa-text-secondary);
	text-decoration: line-through;
	text-decoration-color: rgba(0, 0, 0, 0.25);
}
.pa-price-compare-banner__divider {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-text-muted);
}

/* ---- Multi-year banner variant (4-year + 5-year stacked rows) -------- */

.pa-price-compare-banner--multi {
	padding: var(--pa-space-7);
}
.pa-price-compare-banner--multi .pa-price-compare-banner__label {
	margin-bottom: var(--pa-space-2);
}
/* Sub-label below the banner heading — call out the
   perpetual-vs-subscription framing before the cost rows. */
.pa-price-compare-banner__sublabel {
	margin: 0 0 var(--pa-space-5);
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-price-compare-banner__sublabel strong {
	color: var(--pa-text-primary);
	font-weight: 700;
}
.pa-price-compare-banner__year-row {
	display: grid;
	grid-template-columns: 100px 1fr;
	align-items: center;
	gap: var(--pa-space-5);
	padding: var(--pa-space-4) 0;
	border-top: 1px solid color-mix(in srgb, var(--pa-accent-blue) 15%, transparent);
}
.pa-price-compare-banner__year-row:first-of-type {
	border-top: none;
	padding-top: 0;
}
.pa-price-compare-banner__year-row:last-of-type {
	padding-bottom: 0;
}
.pa-price-compare-banner__year-label {
	font-size: 13px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	text-align: left;
}
.pa-price-compare-banner__savings {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 160px;
	padding: 4px 12px;
	background: color-mix(in srgb, var(--pa-accent-green) 14%, transparent);
	border-radius: var(--pa-radius-pill);
	font-size: 13px;
	font-weight: 600;
	color: #1a7a3e;
	white-space: nowrap;
}
.pa-price-compare-banner__savings strong {
	margin-left: 6px;
	font-weight: 800;
}
.pa-price-compare-banner__note {
	margin: var(--pa-space-5) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid color-mix(in srgb, var(--pa-accent-blue) 15%, transparent);
	font-size: 12px;
	line-height: 1.6;
	color: var(--pa-text-muted);
	text-align: center;
}


@media (max-width: 768px) {
	.pa-price-compare-banner__year-row {
		grid-template-columns: 1fr;
		gap: var(--pa-space-3);
		text-align: center;
	}
	.pa-price-compare-banner__year-label {
		text-align: center;
	}
	.pa-price-compare-banner__row {
		gap: var(--pa-space-3) var(--pa-space-5);
	}
	.pa-price-compare-banner__amount {
		font-size: 24px;
	}
	.pa-price-compare-banner__pa,
	.pa-price-compare-banner__rival {
		width: auto;
	}
	.pa-price-compare-banner__savings {
		min-width: 0;
	}
}

@media (max-width: 768px) {
	.pa-pricing__grid {
		grid-template-columns: 1fr;
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
	}
}
@media (prefers-reduced-motion: reduce) {
	.pa-price-card,
	.pa-price-card__cta { transition: none; }
	.pa-price-card__cta--primary:hover { transform: none; }
}


/* =============================================================================
 * Section 08 — Comparison table
 * ========================================================================== */

.pa-comparison {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-dark-bg-alt);
	color: #fff;
}
.pa-comparison__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.pa-compare-wrap {
	width: 100%;
	margin-top: var(--pa-space-12);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.2) transparent;
}

.pa-compare-table {
	width: 100%;
	min-width: 640px;
	border-collapse: collapse;
	font-family: var(--pa-font-body);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);

	--pa-compare-divider: rgba(255, 255, 255, 0.08);
	--pa-compare-row-stripe: rgba(255, 255, 255, 0.025);
	--pa-compare-row-highlight: color-mix(in srgb, var(--pa-accent-blue) 14%, transparent);
	--pa-compare-col-pa-bg: color-mix(in srgb, var(--pa-accent-blue) 8%, transparent);
	--pa-compare-col-pa-top: 2px solid var(--pa-accent-blue-light);
	--pa-compare-label: rgba(255, 255, 255, 0.6);
	--pa-compare-muted: rgba(255, 255, 255, 0.55);
	--pa-compare-x-color: rgba(255, 255, 255, 0.45);
}

.pa-compare-col-pa {
	background: var(--pa-compare-col-pa-bg);
	border-top: var(--pa-compare-col-pa-top);
}

.pa-compare-table thead th {
	padding: var(--pa-space-4) var(--pa-space-5);
	text-align: left;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	border-bottom: 1px solid var(--pa-compare-divider);
}
.pa-compare-head-label,
.pa-compare-head-competitor {
	color: var(--pa-compare-label);
}
.pa-compare-head-brand {
	color: var(--pa-accent-blue-light);
	font-weight: 700;
}

.pa-compare-table tbody th,
.pa-compare-table tbody td {
	padding: var(--pa-space-4) var(--pa-space-5);
	border-bottom: 1px solid var(--pa-compare-divider);
	vertical-align: middle;
	text-align: left;
}
.pa-compare-feature {
	font-weight: 500;
	color: rgba(255, 255, 255, 0.72);
}
.pa-compare-cell {
	color: var(--pa-compare-muted);
}
.pa-compare-cell--pa {
	color: rgba(255, 255, 255, 0.95);
	font-weight: 600;
}

.pa-compare-table tbody tr:nth-child(even) td,
.pa-compare-table tbody tr:nth-child(even) th {
	background: var(--pa-compare-row-stripe);
}
.pa-compare-table tbody tr:hover td,
.pa-compare-table tbody tr:hover th {
	background: rgba(255, 255, 255, 0.04);
}

.pa-compare-row--highlight td,
.pa-compare-row--highlight th {
	background: var(--pa-compare-row-highlight);
}

.pa-compare-check {
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-compare-x {
	color: var(--pa-compare-x-color);
}

@media (max-width: 768px) {
	.pa-compare-table { font-size: 13px; }
	.pa-compare-table thead th,
	.pa-compare-table tbody th,
	.pa-compare-table tbody td {
		padding: var(--pa-space-3) var(--pa-space-4);
	}
}


/* =============================================================================
 * Section 09 — Security
 * ========================================================================== */

.pa-security {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(
		160deg,
		var(--pa-gradient-hero-start) 0%,
		#ffffff 60%,
		var(--pa-gradient-hero-end) 100%
	);
}
.pa-security__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-security__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-10);
	align-items: start;
	margin-top: var(--pa-space-10);
}

.pa-security__panel {
	position: relative;
	overflow: hidden;
	padding: var(--pa-space-10);
	background: var(--pa-dark-bg-alt);
	border-radius: var(--pa-radius-xl);
	color: #fff;
}
.pa-security__panel::before {
	content: '';
	position: absolute;
	top: -50px;
	right: -50px;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background: radial-gradient(
		circle,
		color-mix(in srgb, var(--pa-accent-blue) 15%, transparent) 0%,
		transparent 70%
	);
	pointer-events: none;
}
.pa-security__badge {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	gap: var(--pa-space-2);
	margin-bottom: var(--pa-space-6);
	padding: 8px var(--pa-space-4);
	background: color-mix(in srgb, var(--pa-accent-blue) 15%, transparent);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 30%, transparent);
	border-radius: var(--pa-radius-sm);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-accent-blue-light);
}

.pa-encrypt-stack {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
	list-style: none;
	padding: 0;
	margin: 0;
}
.pa-encrypt-item {
	display: flex;
	align-items: center;
	gap: var(--pa-space-4);
	padding: var(--pa-space-4) var(--pa-space-5);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-md);
	transition: background 0.2s ease, border-color 0.2s ease;
}
.pa-encrypt-item:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: color-mix(in srgb, var(--pa-accent-blue-light) 28%, transparent);
}
.pa-encrypt-icon {
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: color-mix(in srgb, var(--pa-accent-blue) 15%, transparent);
	border-radius: var(--pa-radius-sm);
	color: var(--pa-accent-blue-light);
	font-size: 18px;
}
.pa-encrypt-body {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.pa-encrypt-title {
	font-size: 14px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.92);
	line-height: 1.3;
}
.pa-encrypt-sub {
	margin-top: 2px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.4;
}

.pa-security__details {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-6);
}
.pa-security-detail {
	display: flex;
	gap: var(--pa-space-4);
}
.pa-security-detail__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: color-mix(in srgb, var(--pa-accent-blue) 8%, transparent);
	border-radius: var(--pa-radius-md);
	color: var(--pa-blue-primary);
	font-size: 20px;
}
.pa-security-detail__body {
	flex: 1;
	min-width: 0;
}
.pa-security-detail__title {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-security-detail__text {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}

@media (max-width: 768px) {
	.pa-security__grid {
		grid-template-columns: 1fr;
		gap: var(--pa-space-6);
	}
}
@media (prefers-reduced-motion: reduce) {
	.pa-encrypt-item { transition: none; }
}


/* =============================================================================
 * Section 10 — Enterprise + Quote form
 * ========================================================================== */

.pa-enterprise {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-deep) 100%);
	color: #fff;
}
.pa-enterprise__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-enterprise__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-12);
	align-items: start;
}

/* Left column — copy + bullet list. */
.pa-enterprise__copy {
	display: flex;
	flex-direction: column;
}
.pa-enterprise__bullets {
	list-style: none;
	padding: 0;
	margin: var(--pa-space-6) 0 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-enterprise__bullet {
	display: flex;
	gap: var(--pa-space-4);
	padding: var(--pa-space-4);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-md);
}
.pa-enterprise__bullet-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background: color-mix(in srgb, var(--pa-accent-orange) 14%, transparent);
	border-radius: var(--pa-radius-sm);
	color: var(--pa-accent-orange);
	font-size: 18px;
}
.pa-enterprise__bullet-body {
	flex: 1;
	min-width: 0;
}
.pa-enterprise__bullet-title {
	margin: 0 0 2px;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
}
.pa-enterprise__bullet-text {
	margin: 0;
	font-size: 13px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.65);
}

/* Right column — sidebar (header + form + procurement card). Stacks
   vertically inside the 2nd grid column; gap between blocks matches the
   left column's bullet rhythm so the section reads as one composition. */
.pa-enterprise__sidebar {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-6);
}
/* Compact section-header modifier — smaller title + subtitle so the
   right-column header sits visually subordinate to the left column's
   primary H2. Used on the homepage Enterprise sidebar header. */
.pa-section-header--compact .pa-section-header__title {
	font-size: clamp(22px, 2.4vw, 28px);
	font-weight: 700;
	letter-spacing: -0.01em;
	margin-bottom: var(--pa-space-3);
}
.pa-section-header--compact .pa-section-header__subtitle {
	font-size: 15px;
	line-height: 1.55;
}

/* Procurement / contact card sitting under the form. Matches form's
   translucent-on-dark treatment but with tighter padding so the two
   blocks read as a stack, not as two equal "cards". */
.pa-enterprise__sidebar-card {
	padding: var(--pa-space-7);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-xl);
}
.pa-enterprise__sidebar-bullets {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--pa-space-6);
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-enterprise__sidebar-bullets li {
	font-size: 14px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.85);
	padding-left: 18px;
	position: relative;
}
.pa-enterprise__sidebar-bullets li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--pa-accent-orange);
	font-weight: 700;
}
.pa-enterprise__sidebar-bullets strong {
	color: #fff;
	font-weight: 600;
}
.pa-enterprise__sidebar-direct {
	padding-top: var(--pa-space-5);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.pa-enterprise__sidebar-direct-label {
	margin: 0 0 var(--pa-space-3);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgba(255, 255, 255, 0.55);
}
.pa-enterprise__sidebar-direct-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-enterprise__sidebar-direct-list li {
	display: flex;
	gap: var(--pa-space-3);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);
}
.pa-enterprise__sidebar-direct-list strong {
	min-width: 56px;
	color: rgba(255, 255, 255, 0.55);
	font-weight: 600;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.05em;
	padding-top: 2px;
}
.pa-enterprise__sidebar-direct-list a {
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	transition: border-color 0.15s ease;
}
.pa-enterprise__sidebar-direct-list a:hover {
	border-bottom-color: var(--pa-accent-orange);
}

/* Universal LiveAgent form card. Applied by js/homepage.js to every LA
   form's parent wrapper BEFORE LiveAgent.createForm() runs, so the white
   card with the orange accent rail survives LA's mount-replacement
   (which destroys the original `data-pa-liveagent-form` mount element).

   `.pa-quote-form` is included for the pre-mount state on the homepage
   Enterprise section, so the visual doesn't flicker between page-load
   and LA mount.

   Pages covered: homepage / (Enterprise sidebar), /enterprise, /support,
   /suggest-a-feature, /uninstall-survey, /resellers, /contact. */
.pa-liveagent-card,
.pa-quote-form {
	position: relative;
	/* Top padding tightened from --pa-space-8 (32px) to --pa-space-3 (12px)
	   — the orange accent strip sits at top:0 of the card, so 32px of top
	   padding left a visible white gap between the strip and the LA form
	   iframe content. 12px keeps a hairline of breathing room without
	   visually detaching the strip from the form. */
	padding: var(--pa-space-3) var(--pa-space-8) var(--pa-space-7);
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: var(--pa-radius-xl);
	box-shadow: var(--pa-shadow-xl);
	overflow: hidden;
}
.pa-liveagent-card::before,
.pa-quote-form::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--pa-accent-orange), #ff9847);
	z-index: 1;
}
.pa-quote-form__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 20px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-quote-form__subtitle {
	margin: 0 0 var(--pa-space-5);
	padding-bottom: var(--pa-space-5);
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	font-size: 14px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-quote-form__fallback {
	margin: var(--pa-space-4) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	font-size: 12px;
	line-height: 1.55;
	color: var(--pa-text-muted);
}
.pa-quote-form__fallback a {
	color: var(--pa-text-primary);
	font-weight: 600;
}
.pa-quote-form__noscript p {
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}

.pa-quote-form__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: var(--pa-space-4);
}
.pa-quote-form__label {
	font-size: 12px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.85);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-quote-form__label-req::after {
	content: ' *';
	color: var(--pa-accent-orange);
}
.pa-quote-form__input,
.pa-quote-form__select,
.pa-quote-form__textarea {
	width: 100%;
	padding: 12px 14px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--pa-radius-sm);
	font-family: var(--pa-font-body);
	font-size: 14px;
	color: #fff;
	transition: background 0.2s ease, border-color 0.2s ease;
}
.pa-quote-form__input::placeholder,
.pa-quote-form__textarea::placeholder {
	color: rgba(255, 255, 255, 0.4);
}
.pa-quote-form__input:focus,
.pa-quote-form__select:focus,
.pa-quote-form__textarea:focus {
	outline: none;
	background: rgba(255, 255, 255, 0.12);
	border-color: var(--pa-accent-blue-light);
}
.pa-quote-form__select {
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='white' opacity='0.7' d='M6 8L0 0h12z'/></svg>");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 36px;
}
/* Style the dropdown options for browsers that respect it (Firefox; partial in Chromium). */
.pa-quote-form__select option {
	background: var(--pa-dark-bg);
	color: #fff;
}
.pa-quote-form__textarea {
	min-height: 96px;
	resize: vertical;
	line-height: 1.5;
}
.pa-quote-form__submit {
	width: 100%;
	margin-top: var(--pa-space-3);
}
.pa-quote-form__note {
	margin: var(--pa-space-4) 0 0;
	font-size: 12px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.55);
	text-align: center;
}

@media (max-width: 960px) {
	.pa-enterprise__grid {
		grid-template-columns: 1fr;
		gap: var(--pa-space-9);
	}
}


/* =============================================================================
 * Section 11 — Subscribe / email capture (NEW)
 * ========================================================================== */

.pa-subscribe {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	text-align: center;
}
.pa-subscribe__inner {
	max-width: 640px;
	margin: 0 auto;
}
.pa-subscribe__title {
	margin: 0 0 var(--pa-space-3);
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-subscribe__subtitle {
	margin: 0 0 var(--pa-space-6);
	font-size: 16px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-subscribe__form {
	display: flex;
	gap: var(--pa-space-3);
	max-width: 480px;
	margin: 0 auto;
}
.pa-subscribe__input {
	flex: 1;
	padding: 14px 18px;
	background: #fff;
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	font-family: var(--pa-font-body);
	font-size: 15px;
	color: var(--pa-text-primary);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pa-subscribe__input::placeholder {
	color: var(--pa-text-muted);
}
.pa-subscribe__input:focus {
	outline: none;
	border-color: var(--pa-blue-primary);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--pa-blue-primary) 20%, transparent);
}
.pa-subscribe__submit {
	flex-shrink: 0;
	white-space: nowrap;
}
.pa-subscribe__note {
	margin: var(--pa-space-4) 0 0;
	font-size: 12px;
	color: var(--pa-text-muted);
}

@media (max-width: 540px) {
	.pa-subscribe__form {
		flex-direction: column;
	}
	.pa-subscribe__submit {
		width: 100%;
	}
}


/* =============================================================================
 * Section 12 — Final CTA
 * ========================================================================== */

.pa-final-cta {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, var(--pa-gradient-cta-start) 0%, var(--pa-gradient-cta-end) 100%);
	color: #fff;
	text-align: center;
}
.pa-final-cta__inner {
	max-width: 720px;
	margin: 0 auto;
}
.pa-final-cta__title {
	margin: 0 0 var(--pa-space-4);
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
}
.pa-final-cta__body {
	max-width: 520px;
	margin: 0 auto var(--pa-space-8);
	font-size: 17px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.85);
}
.pa-final-cta__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
}
.pa-final-cta__sub {
	margin: var(--pa-space-5) 0 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.7);
}


/* =============================================================================
 * Section 13 — Footer (4-column)
 * ========================================================================== */

.pa-footer {
	padding: var(--pa-space-16) var(--pa-space-6) var(--pa-space-8);
	background: var(--pa-dark-bg-deep);
	color: rgba(255, 255, 255, 0.6);
	font-size: 13px;
}
.pa-footer__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-footer__cols {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-8);
	padding-bottom: var(--pa-space-9);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.pa-footer__col-title {
	margin: 0 0 var(--pa-space-4);
	font-size: 12px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.85);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.pa-footer__col ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-footer__col a {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
	transition: color 0.2s ease;
}
.pa-footer__col a:hover {
	color: #fff;
}

.pa-footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--pa-space-4);
	margin-top: var(--pa-space-6);
}
.pa-footer__copy {
	margin: 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.5);
}
.pa-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-2) var(--pa-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 12px;
}
.pa-footer__legal li {
	margin: 0;
}
.pa-footer__legal a {
	color: rgba(255, 255, 255, 0.45);
	text-decoration: none;
	transition: color 0.15s ease;
}
.pa-footer__legal a:hover {
	color: rgba(255, 255, 255, 0.85);
}

@media (max-width: 768px) {
	.pa-footer__cols {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--pa-space-6);
	}
}
@media (max-width: 540px) {
	.pa-footer__cols {
		grid-template-columns: 1fr;
	}
}


/* =============================================================================
 * Sub-nav — floating bottom-dock pill. Used on long pages (e.g. /pricing) to
 * jump between major sections. Hidden until the user scrolls past the hero.
 * Active state managed by homepage.js scroll-spy.
 *
 * Positioned at the bottom-center of the viewport on desktop; full-width
 * pinned to the bottom edge on mobile (thumb-zone friendly). Doesn't stack
 * with the main nav, so saves top-of-viewport real estate.
 * ========================================================================== */

.pa-subnav {
	position: fixed;
	bottom: 24px;
	left: 50%;
	transform: translate(-50%, 40px);
	z-index: 90; /* below main nav (z:100), above content */
	display: flex;
	align-items: center;
	gap: var(--pa-space-1);
	padding: 6px;
	background: var(--pa-dark-bg); /* #1a1a2e */
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-pill);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25), 0 4px 12px rgba(0, 0, 0, 0.15);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.pa-subnav--visible {
	opacity: 1;
	pointer-events: auto;
	transform: translate(-50%, 0);
}

.pa-subnav__link {
	padding: 10px 18px;
	font-size: 13px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	border-radius: var(--pa-radius-pill);
	transition: color 0.15s ease, background 0.15s ease;
	white-space: nowrap;
	letter-spacing: 0.01em;
}
.pa-subnav__link:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.08);
}
.pa-subnav__link--active {
	color: #fff;
	background: var(--pa-blue-primary);
}

@media (max-width: 768px) {
	.pa-subnav {
		left: 12px;
		right: 12px;
		bottom: 12px;
		transform: translate(0, 40px);
		border-radius: var(--pa-radius-lg);
		padding: 4px;
		overflow-x: auto;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	.pa-subnav--visible {
		transform: translate(0, 0);
	}
	.pa-subnav::-webkit-scrollbar { display: none; }
	.pa-subnav__link {
		padding: 10px 14px;
		font-size: 12px;
		flex-shrink: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pa-subnav,
	.pa-subnav__link {
		transition: none;
	}
}


/* =============================================================================
 * /pricing page — additional sections beyond the homepage
 *   - Pricing hero (small, page-titled)
 *   - Enterprise 3-tier strip (Silver / Gold / Platinum)
 *   - PA Select explainer (two-column deep dive with renewal paths)
 *   - Feature comparison matrix (4-edition table)
 *   - Volume / Education / Government cards (3-up)
 *   - FAQ (collapsible)
 * ========================================================================== */

/* ---- Pricing hero ------------------------------------------------------ */

.pa-pricing-hero {
	/* Bottom padding intentionally tight (--pa-space-6 / 24px). The
	   `#tiers.pa-pricing` override drops .pa-pricing's top padding to
	   --pa-space-12 (48px), so the hero→tiers gap lands at 72px — pulls
	   the first tier card up close to the hero rather than letting the
	   hero float disconnected above it. */
	padding: var(--pa-space-30) var(--pa-space-6) var(--pa-space-6);
	background: linear-gradient(
		160deg,
		var(--pa-gradient-hero-start) 0%,
		#ffffff 60%,
		var(--pa-gradient-hero-end) 100%
	);
	text-align: center;
}
.pa-pricing-hero__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-pricing-hero__title {
	margin: var(--pa-space-3) 0 var(--pa-space-5);
	font-size: clamp(32px, 4.5vw, 52px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-pricing-hero__subtitle {
	max-width: 900px;
	margin: 0 auto var(--pa-space-4);
	font-size: 17px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-pricing-hero__proof {
	max-width: 900px;
	margin: 0 auto var(--pa-space-7);
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-muted);
	letter-spacing: 0.01em;
}
.pa-pricing-hero__proof strong {
	color: var(--pa-text-secondary);
	font-weight: 600;
}
.pa-pricing-hero__highlights {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--pa-space-3) var(--pa-space-6);
	list-style: none;
	margin: 0;
	padding: 0;
}
.pa-pricing-hero__highlights li {
	font-size: 14px;
	color: var(--pa-text-secondary);
}
.pa-pricing-hero__highlights strong {
	color: var(--pa-blue-primary);
	font-weight: 700;
}

/* ---- (Legacy) Enterprise Unlimited spotlight — replaced by 3-tier strip
       above. Kept here in case the single-card layout is needed elsewhere. */

.pa-enterprise-spotlight {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-deep) 100%);
	color: #fff;
	position: relative;
	overflow: hidden;
}
.pa-enterprise-spotlight::before {
	content: '';
	position: absolute;
	top: -100px;
	right: -100px;
	width: 400px;
	height: 400px;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--pa-accent-orange) 18%, transparent) 0%, transparent 70%);
	pointer-events: none;
}
.pa-enterprise-spotlight__inner {
	position: relative;
	z-index: 1;
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: var(--pa-space-12);
	align-items: center;
}
.pa-enterprise-spotlight__title {
	margin: var(--pa-space-3) 0 var(--pa-space-5);
	font-size: clamp(28px, 3.5vw, 40px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #fff;
}
.pa-enterprise-spotlight__body {
	margin: 0 0 var(--pa-space-6);
	font-size: 16px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.75);
}
.pa-enterprise-spotlight__features {
	list-style: none;
	margin: 0 0 var(--pa-space-7);
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-3) var(--pa-space-6);
}
.pa-enterprise-spotlight__features li {
	display: flex;
	align-items: flex-start;
	gap: var(--pa-space-2);
	font-size: 14px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.85);
}
.pa-enterprise-spotlight__features li::before {
	content: '\2713';
	flex-shrink: 0;
	margin-top: 1px;
	color: var(--pa-accent-orange);
	font-weight: 700;
}
.pa-enterprise-spotlight__features strong {
	color: #fff;
}
.pa-enterprise-spotlight__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-3);
}
.pa-enterprise-spotlight__price {
	text-align: center;
	padding: var(--pa-space-9);
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--pa-radius-xl);
	backdrop-filter: blur(8px);
}
.pa-enterprise-spotlight__price-label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-accent-orange);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: var(--pa-space-3);
}
.pa-enterprise-spotlight__price-amount {
	display: block;
	font-size: clamp(48px, 6vw, 72px);
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #fff;
	line-height: 1;
}
.pa-enterprise-spotlight__price-sub {
	display: block;
	margin-top: var(--pa-space-3);
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
}

@media (max-width: 960px) {
	.pa-enterprise-spotlight__inner {
		grid-template-columns: 1fr;
		gap: var(--pa-space-8);
	}
	.pa-enterprise-spotlight__features {
		grid-template-columns: 1fr;
	}
}

/* ---- Enterprise 3-tier strip (Silver / Gold / Platinum) -------------- */

.pa-enterprise-tiers {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-deep) 100%);
	color: #fff;
	position: relative;
	overflow: hidden;
}
.pa-enterprise-tiers::before {
	content: '';
	position: absolute;
	top: -100px;
	right: -100px;
	width: 400px;
	height: 400px;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--pa-accent-orange) 18%, transparent) 0%, transparent 70%);
	pointer-events: none;
}
.pa-enterprise-tiers__inner {
	position: relative;
	z-index: 1;
	max-width: 1100px;
	margin: 0 auto;
}
.pa-enterprise-tiers__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
/* PA 2027 two-card layout: Enterprise (per-seat $59.95) + Enterprise Unlimited (custom). */
.pa-enterprise-tiers__grid--two {
	grid-template-columns: repeat(2, 1fr);
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.pa-enterprise-tier-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: var(--pa-space-9) var(--pa-space-7);
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--pa-radius-xl);
	backdrop-filter: blur(8px);
	transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}
.pa-enterprise-tier-card:hover {
	transform: translateY(-3px);
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.22);
}

.pa-enterprise-tier-card--featured {
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-orange) 12%, transparent) 0%,
		rgba(255, 255, 255, 0.05) 100%);
	border-color: color-mix(in srgb, var(--pa-accent-orange) 35%, transparent);
	box-shadow: 0 8px 32px color-mix(in srgb, var(--pa-accent-orange) 20%, transparent);
}

.pa-enterprise-tier-card__pill {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px var(--pa-space-4);
	background: var(--pa-accent-orange);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	color: #1a1a1a;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	white-space: nowrap;
}

.pa-enterprise-tier-card__metal {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--pa-accent-orange);
	text-transform: uppercase;
	letter-spacing: 0.12em;
	margin-bottom: var(--pa-space-3);
}

.pa-enterprise-tier-card__amount {
	display: block;
	font-size: clamp(36px, 4vw, 48px);
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #fff;
	line-height: 1;
}
.pa-enterprise-tier-card__amount span {
	font-size: 20px;
	vertical-align: top;
	margin-right: 2px;
	color: rgba(255, 255, 255, 0.7);
}

.pa-enterprise-tier-card__sub {
	display: block;
	margin-top: var(--pa-space-2);
	font-size: 12px;
	color: rgba(255, 255, 255, 0.55);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.pa-enterprise-tier-card__seats {
	margin: var(--pa-space-5) 0;
	padding: var(--pa-space-4);
	background: rgba(0, 0, 0, 0.25);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);
	text-align: center;
}
.pa-enterprise-tier-card__seats strong {
	display: block;
	font-size: 28px;
	font-weight: 800;
	color: var(--pa-accent-orange);
	letter-spacing: -0.02em;
	margin-bottom: 2px;
}

.pa-enterprise-tier-card__features {
	flex-grow: 1;
	list-style: none;
	margin: 0 0 var(--pa-space-7);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-enterprise-tier-card__features li {
	display: flex;
	align-items: flex-start;
	gap: var(--pa-space-2);
	font-size: 14px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.85);
}
.pa-enterprise-tier-card__features li::before {
	content: '\2713';
	flex-shrink: 0;
	margin-top: 1px;
	font-weight: 700;
	color: var(--pa-accent-orange);
}

.pa-enterprise-tier-card__cta {
	display: block;
	width: 100%;
	padding: 12px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: var(--pa-radius-md);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease;
}
.pa-enterprise-tier-card__cta:hover {
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.3);
	color: #fff;
}
.pa-enterprise-tier-card__cta--primary {
	background: var(--pa-accent-orange);
	border-color: var(--pa-accent-orange);
	color: #1a1a1a;
}
.pa-enterprise-tier-card__cta--primary:hover {
	background: #d99409;
	border-color: #d99409;
	color: #1a1a1a;
}

/* Outline variant for the dual-buy pattern (Multilingual button below the
   English-only primary). Same base layout as __cta but transparent fill +
   subtle white border, so it pairs visually with the filled primary above. */
.pa-enterprise-tier-card__cta-alt {
	display: block;
	width: 100%;
	margin-top: 8px;
	padding: 12px;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: var(--pa-radius-md);
	color: rgba(255, 255, 255, 0.85);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.pa-enterprise-tier-card__cta-alt:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.4);
	color: #fff;
}

.pa-enterprise-tiers__footer {
	margin-top: var(--pa-space-10);
	padding: var(--pa-space-7);
	background: rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-lg);
}
.pa-enterprise-tiers__footnote {
	font-size: 14px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.75);
	margin-bottom: var(--pa-space-5);
}
.pa-enterprise-tiers__footnote strong {
	color: #fff;
}
.pa-enterprise-tiers__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-3);
	justify-content: center;
}

@media (max-width: 960px) {
	.pa-enterprise-tiers__grid {
		grid-template-columns: 1fr;
		max-width: 420px;
		margin-left: auto;
		margin-right: auto;
	}
}


/* ---- PA Select explainer ---------------------------------------------- */

.pa-pa-select {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-pa-select__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-pa-select__columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-pa-select__col {
	padding: var(--pa-space-9);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-pa-select__col--accent {
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-blue) 4%, #fff) 0%,
		#fff 100%);
	border-color: color-mix(in srgb, var(--pa-blue-primary) 24%, transparent);
}
.pa-pa-select__col-title {
	margin: 0 0 var(--pa-space-5);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-pa-select__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-pa-select__list li {
	display: flex;
	align-items: flex-start;
	gap: var(--pa-space-3);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-pa-select__list li::before {
	content: '\2713';
	flex-shrink: 0;
	margin-top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-pa-select__list strong {
	color: var(--pa-text-primary);
}
.pa-pa-select__paths {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-4);
}
.pa-pa-select__path {
	padding: var(--pa-space-5);
	background: #fff;
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	text-align: center;
}
.pa-pa-select__path--featured {
	border-color: var(--pa-blue-primary);
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-blue) 6%, #fff) 0%,
		#fff 100%);
	box-shadow: var(--pa-shadow-md);
}
.pa-pa-select__path-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
.pa-pa-select__path-discount {
	display: block;
	margin: var(--pa-space-2) 0 var(--pa-space-3);
	font-size: 28px;
	font-weight: 800;
	color: var(--pa-blue-primary);
	letter-spacing: -0.02em;
}
.pa-pa-select__path-desc {
	display: block;
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
.pa-pa-select__note {
	margin: var(--pa-space-5) 0 0;
	font-size: 13px;
	text-align: center;
	color: var(--pa-text-muted);
	font-style: italic;
}
/* Single centered accent panel — used on /pricing's PA Select section
   where we explain WHAT Select is (no pricing tables, no comparisons —
   those live in the cart). */
.pa-pa-select__panel {
	max-width: 1000px;
	margin: var(--pa-space-10) auto 0;
	padding: var(--pa-space-9);
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-blue) 4%, #fff) 0%,
		#fff 100%);
	border: 1px solid color-mix(in srgb, var(--pa-blue-primary) 24%, transparent);
	border-radius: var(--pa-radius-lg);
}
/* Benefits table inside the Select panel — bold benefit name on the
   left, description on the right, thin separator between rows. */
.pa-pa-select__benefits {
	width: 100%;
	border-collapse: collapse;
	margin: 0;
}
.pa-pa-select__benefits th[scope="row"],
.pa-pa-select__benefits td {
	padding: var(--pa-space-3) 0;
	border-top: 1px solid color-mix(in srgb, var(--pa-blue-primary) 14%, transparent);
	vertical-align: top;
	font-size: 14px;
	line-height: 1.55;
}
.pa-pa-select__benefits tr:first-child th,
.pa-pa-select__benefits tr:first-child td {
	border-top: none;
	padding-top: 0;
}
.pa-pa-select__benefits th[scope="row"] {
	width: 32%;
	padding-right: var(--pa-space-5);
	text-align: left;
	font-weight: 700;
	color: var(--pa-text-primary);
	white-space: nowrap;
}
.pa-pa-select__benefits td {
	color: var(--pa-text-secondary);
}
.pa-pa-select__benefits strong {
	color: var(--pa-text-primary);
}
@media (max-width: 600px) {
	.pa-pa-select__benefits th[scope="row"] {
		white-space: normal;
		width: 38%;
	}
}
.pa-pa-select__cart-note {
	margin: var(--pa-space-3) 0 0;
	font-size: 13px;
	text-align: center;
	color: var(--pa-text-muted);
	font-style: italic;
}
/* Compact pricing band below the benefits table — surfaces the
   25%/yr or 50%-for-3-years model. Per-edition dollar prices stay
   in the cart. */
.pa-pa-select__pricing {
	margin: var(--pa-space-5) 0 0;
	padding: var(--pa-space-4) var(--pa-space-5);
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid color-mix(in srgb, var(--pa-blue-primary) 18%, transparent);
	border-radius: var(--pa-radius-sm);
	font-size: 14px;
	line-height: 1.5;
	color: var(--pa-text-primary);
	text-align: center;
}
.pa-pa-select__pricing strong {
	color: var(--pa-blue-primary);
	font-weight: 700;
}
/* Per-edition Select pricing band — appears inside the accent column on
   /pricing's PA Select section. Lists Business / Professional / Pro
   Toolbox / Enterprise yearly Select prices in one tight line. */
.pa-pa-select__paths-pricing {
	margin: var(--pa-space-5) 0 0;
	padding: var(--pa-space-4) var(--pa-space-5);
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid color-mix(in srgb, var(--pa-blue-primary) 18%, transparent);
	border-radius: var(--pa-radius-sm);
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-primary);
	text-align: left;
}
.pa-pa-select__paths-pricing strong {
	color: var(--pa-blue-primary);
	font-weight: 700;
}

@media (max-width: 768px) {
	.pa-pa-select__columns,
	.pa-pa-select__paths {
		grid-template-columns: 1fr;
	}
}

/* ---- Business volume pricing ----------------------------------------- */

.pa-volume-pricing {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-volume-pricing__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-volume-pricing__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-volume-pricing__edition {
	display: flex;
	flex-direction: column;
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	overflow: hidden;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-volume-pricing__edition:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-volume-pricing__edition--featured {
	border-color: var(--pa-blue-primary);
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-blue) 4%, var(--pa-bg-subtle)) 0%,
		var(--pa-bg-subtle) 100%);
	box-shadow: var(--pa-shadow-md);
}

.pa-volume-pricing__edition-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	padding: var(--pa-space-5) var(--pa-space-6);
	border-bottom: 1px solid var(--pa-border);
	background: #fff;
}
.pa-volume-pricing__edition--featured .pa-volume-pricing__edition-head {
	background: color-mix(in srgb, var(--pa-accent-blue) 6%, #fff);
}
.pa-volume-pricing__edition-title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-volume-pricing__edition-list {
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.pa-volume-pricing__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.pa-volume-pricing__table thead th {
	padding: var(--pa-space-3) var(--pa-space-4);
	text-align: left;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--pa-text-muted);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-volume-pricing__table thead th:nth-child(2),
.pa-volume-pricing__table thead th:nth-child(3) {
	text-align: right;
}
.pa-volume-pricing__table tbody th[scope="row"] {
	padding: 10px var(--pa-space-4);
	text-align: left;
	font-weight: 500;
	color: var(--pa-text-primary);
	border-bottom: 1px solid var(--pa-border-subtle);
	font-size: 14px;
}
.pa-volume-pricing__table tbody td {
	padding: 10px var(--pa-space-4);
	text-align: right;
	border-bottom: 1px solid var(--pa-border-subtle);
	color: var(--pa-text-secondary);
}
.pa-volume-pricing__table tbody td:nth-child(2) {
	font-weight: 700;
	color: var(--pa-text-primary);
	font-variant-numeric: tabular-nums;
}
.pa-volume-pricing__table tbody td:nth-child(3) {
	font-weight: 600;
	color: var(--pa-blue-primary);
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}
.pa-volume-pricing__row--featured th,
.pa-volume-pricing__row--featured td {
	background: color-mix(in srgb, var(--pa-accent-blue) 6%, transparent);
}

/* ---- Dual-currency variant (single-edition deep pages: /business,
        /professional, /toolbox). Renders USD + EUR side-by-side in one
        4-column table (Quantity | English-only | Multilingual | Save)
        plus a buy-button row in tfoot. ---- */
.pa-volume-pricing--dual .pa-volume-pricing__inner {
	max-width: 880px;
}
.pa-volume-pricing__table--dual {
	margin-top: var(--pa-space-8);
}
.pa-volume-pricing__table--dual thead th:nth-child(4) {
	text-align: right;
}
.pa-volume-pricing__table--dual tbody td:nth-child(4) {
	font-weight: 600;
	color: var(--pa-blue-primary);
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}
.pa-volume-pricing__table--dual tbody td:nth-child(2),
.pa-volume-pricing__table--dual tbody td:nth-child(3) {
	font-weight: 700;
	color: var(--pa-text-primary);
	font-variant-numeric: tabular-nums;
}
.pa-volume-pricing__col-currency {
	display: inline-block;
	margin-left: 6px;
	padding: 2px 6px;
	background: var(--pa-bg-subtle);
	border-radius: 4px;
	font-size: 10px;
	font-weight: 700;
	color: var(--pa-text-muted);
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.pa-volume-pricing__buy-row td {
	padding-top: var(--pa-space-5) !important;
	border-bottom: 0 !important;
	vertical-align: middle !important;
}
/* Buttons right-align in their cells to line up with the right-aligned prices
   in the column above. Cell 2 (English-only) puts the button under the USD
   price column, cell 3 (Multilingual) puts it under the EUR price column. */
.pa-volume-pricing__buy-row td:nth-child(2),
.pa-volume-pricing__buy-row td:nth-child(3) {
	text-align: right !important;
}
/* Override the default .pa-volume-pricing__buy `display: block; width: 100%`
   so buttons are compact inline blocks instead of stretching the column.
   `vertical-align: middle` on both buttons + their cells keeps them locked
   to the same baseline (default inline-block baseline alignment was leaving
   the two cells with a 4px vertical drift). */
.pa-volume-pricing__buy-row .pa-volume-pricing__buy,
.pa-volume-pricing__buy-row .pa-volume-pricing__buy-alt {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	min-width: 0;
	margin-top: 0;  /* override .pa-volume-pricing__buy-alt's --pa-space-2 top margin that pushed it 8px below the primary button */
	padding: 10px 20px;
	font-size: 14px;
	line-height: 1.2;
}

/* ---- Volume-pricing per-edition buy CTAs (footer of each edition card) -- */

.pa-volume-pricing__edition-foot {
	padding: var(--pa-space-4) var(--pa-space-5) var(--pa-space-5);
	background: #fff;
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-volume-pricing__edition--featured .pa-volume-pricing__edition-foot {
	background: color-mix(in srgb, var(--pa-accent-blue) 4%, #fff);
}
.pa-volume-pricing__buy {
	display: block;
	width: 100%;
	padding: 12px;
	background: transparent;
	color: var(--pa-blue-primary);
	border: 1.5px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}
.pa-volume-pricing__buy:hover {
	background: var(--pa-blue-primary);
	color: #fff;
	transform: translateY(-1px);
}
.pa-volume-pricing__buy--featured {
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	color: #fff;
	border-color: transparent;
	box-shadow: 0 4px 12px color-mix(in srgb, var(--pa-accent-blue) 22%, transparent);
}
.pa-volume-pricing__buy--featured:hover {
	color: #fff;
	box-shadow: 0 6px 16px color-mix(in srgb, var(--pa-accent-blue) 32%, transparent);
}
.pa-volume-pricing__buy-alt {
	display: block;
	width: 100%;
	margin-top: var(--pa-space-2);
	padding: 12px;
	background: transparent;
	color: var(--pa-blue-primary);
	border: 1.5px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}
.pa-volume-pricing__buy-alt:hover {
	background: color-mix(in srgb, var(--pa-accent-blue) 4%, transparent);
	border-color: var(--pa-blue-primary);
	color: var(--pa-blue-primary);
	transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
	.pa-volume-pricing__buy,
	.pa-volume-pricing__buy:hover,
	.pa-volume-pricing__buy-alt {
		transition: none;
		transform: none;
	}
}

.pa-volume-pricing__tip {
	margin-top: var(--pa-space-9);
	display: flex;
	align-items: flex-start;
	gap: var(--pa-space-5);
	padding: var(--pa-space-7);
	background: linear-gradient(
		135deg,
		color-mix(in srgb, var(--pa-accent-orange) 8%, transparent),
		color-mix(in srgb, var(--pa-accent-orange) 4%, transparent)
	);
	border: 1px solid color-mix(in srgb, var(--pa-accent-orange) 22%, transparent);
	border-radius: var(--pa-radius-lg);
}
.pa-volume-pricing__tip-icon {
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--pa-accent-orange);
	color: #1a1a1a;
	border-radius: var(--pa-radius-pill);
	font-size: 18px;
	font-weight: 800;
}
.pa-volume-pricing__tip-body {
	flex: 1;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-volume-pricing__tip-body strong {
	color: var(--pa-text-primary);
	font-weight: 700;
}
.pa-volume-pricing__tip-body a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

.pa-volume-pricing__note {
	margin: var(--pa-space-6) 0 0;
	font-size: 13px;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-volume-pricing__note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

@media (max-width: 1099px) {
	.pa-volume-pricing__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 640px) {
	.pa-volume-pricing__grid {
		grid-template-columns: 1fr;
		max-width: 480px;
		margin-left: auto;
		margin-right: auto;
	}
}


/* ---- Feature comparison matrix --------------------------------------- */

.pa-feature-matrix-section {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
/* Widen the subtitle here vs. the global 640px section-header__subtitle —
   the matrix below is 1100px so a 640px subtitle reads cramped under it. */
.pa-feature-matrix-section .pa-section-header__subtitle {
	max-width: 900px;
}
.pa-feature-matrix-section__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-feature-matrix-wrap {
	margin-top: var(--pa-space-10);
	overflow-x: auto;
	border-radius: var(--pa-radius-lg);
	border: 1px solid var(--pa-border);
}
.pa-feature-matrix {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
}
.pa-feature-matrix thead th {
	padding: var(--pa-space-5) var(--pa-space-4);
	text-align: center;
	font-size: 13px;
	font-weight: 700;
	color: var(--pa-text-primary);
	background: var(--pa-bg-subtle);
	border-bottom: 2px solid var(--pa-border);
}
.pa-feature-matrix thead th:first-child {
	text-align: left;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 11px;
}
/* (Removed) .pa-feature-matrix__col-ent — was used to tint the Enterprise
   column orange when Enterprise was a 5th column in the matrix. New
   matrix is FREE / Standard / Professional / Professional Toolbox; no
   per-column highlight. Kept for future re-introduction if needed. */
.pa-feature-matrix tbody th[scope="row"] {
	padding: 12px var(--pa-space-4);
	text-align: left;
	font-weight: 500;
	color: var(--pa-text-primary);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-feature-matrix tbody td {
	padding: 12px var(--pa-space-4);
	text-align: center;
	color: var(--pa-text-secondary);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-feature-matrix tbody tr:hover td,
.pa-feature-matrix tbody tr:hover th {
	background: color-mix(in srgb, var(--pa-accent-blue) 3%, transparent);
}
.pa-feature-matrix__group {
	padding: var(--pa-space-5) var(--pa-space-4) 8px !important;
	text-align: left !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	color: var(--pa-blue-primary) !important;
	background: var(--pa-bg-subtle) !important;
	border-top: 1px solid var(--pa-border);
	border-bottom: 1px solid var(--pa-border) !important;
}
.pa-feature-matrix__check {
	color: var(--pa-accent-green);
	font-weight: 700;
	font-size: 16px;
}
.pa-feature-matrix__none {
	color: var(--pa-text-muted);
	opacity: 0.5;
}
/* Column-header links — let visitors click directly through to the
   dedicated edition page (Free, /standard, /professional, /toolbox,
   /enterprise) rather than gating on a contact-sales flow.
   Underline on hover via pseudo-element so the header still reads as
   a column heading at rest. */
.pa-feature-matrix__col-link {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	white-space: nowrap;
	color: inherit;
	text-decoration: none;
	transition: color 0.15s ease;
}
.pa-feature-matrix__col-link:hover,
.pa-feature-matrix__col-link:focus {
	color: var(--pa-blue-primary);
}
.pa-feature-matrix__col-link span {
	font-size: 0.85em;
	opacity: 0.45;
	transition: transform 0.18s ease, opacity 0.18s ease;
}
.pa-feature-matrix__col-link:hover span,
.pa-feature-matrix__col-link:focus span {
	opacity: 1;
	transform: translateX(2px);
}
/* "Soon" pill — used for upcoming Enterprise features (Purview DLP,
   IT-controlled recovery key) so they read as roadmap-on-the-way rather
   than missing data. Soft accent-blue tint, uppercased + tracked. */
.pa-feature-matrix__soon {
	display: inline-block;
	padding: 2px 8px;
	background: color-mix(in srgb, var(--pa-blue-primary) 12%, transparent);
	color: var(--pa-blue-primary);
	border: 1px solid color-mix(in srgb, var(--pa-blue-primary) 25%, transparent);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-feature-matrix__footnote {
	max-width: 760px;
	margin: var(--pa-space-7) auto 0;
	padding: var(--pa-space-4) var(--pa-space-5);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
	text-align: left;
}
.pa-feature-matrix__footnote strong {
	color: var(--pa-text-primary);
}
.pa-feature-matrix__footnote a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-feature-matrix tbody td code {
	font-family: var(--pa-font-mono, 'Consolas', 'Monaco', 'Courier New', monospace);
	font-size: 12px;
	padding: 1px 5px;
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border-subtle);
	border-radius: 3px;
	color: var(--pa-text-primary);
}

/* ---- Volume / Education / Government cards --------------------------- */

.pa-volume {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-volume__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-volume__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: var(--pa-space-5);
	/* Bricks's own stylesheet sets `align-items: flex-start` on .brxe-block,
	   which leaks onto our grid container even after we override display
	   to grid. Setting it explicitly here keeps every card stretched to the
	   tallest sibling's row height so the bottom-aligned CTA links line up. */
	align-items: stretch;
}
.pa-volume__card {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-8);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-volume__card-link {
	margin-top: auto;
}
.pa-volume__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-volume__card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: var(--pa-space-4);
	border-radius: var(--pa-radius-lg);
	font-size: 22px;
	line-height: 1;
}
.pa-volume__card-icon--primary {
	background: color-mix(in srgb, var(--pa-accent-blue) 10%, transparent);
	color: var(--pa-blue-primary);
}
.pa-volume__card-icon--dark {
	background: color-mix(in srgb, var(--pa-blue-dark) 10%, transparent);
	color: var(--pa-blue-dark);
}
.pa-volume__card-icon--warm {
	background: color-mix(in srgb, var(--pa-accent-orange) 10%, transparent);
	color: var(--pa-accent-orange);
}

.pa-volume__card-title {
	margin: 0 0 var(--pa-space-3);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-volume__card-body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-volume__card-link {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-volume__card-link:hover {
	color: var(--pa-blue-dark);
}

/* ---- FAQ ------------------------------------------------------------- */

.pa-faq {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-faq__inner {
	max-width: 800px;
	margin: 0 auto;
}
.pa-faq__list {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
	margin-top: var(--pa-space-10);
}
.pa-faq__item {
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	background: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pa-faq__item[open],
.pa-faq__item--open {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-sm);
}
/* Bricks renders source <details> as <div>, losing native collapse. JS toggles
   `--open` class; CSS hides the answer by default so the item starts collapsed. */
.pa-faq__item:not([open]):not(.pa-faq__item--open) .pa-faq__a {
	display: none;
}
.pa-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--pa-space-4);
	padding: var(--pa-space-5) var(--pa-space-6);
	font-size: 15px;
	font-weight: 600;
	color: var(--pa-text-primary);
	cursor: pointer;
	list-style: none;
	user-select: none;
}
.pa-faq__q::-webkit-details-marker {
	display: none;
}
.pa-faq__q::after {
	content: '+';
	flex-shrink: 0;
	font-size: 24px;
	font-weight: 400;
	color: var(--pa-blue-primary);
	line-height: 1;
	transition: transform 0.2s ease;
}
.pa-faq__item[open] .pa-faq__q::after,
.pa-faq__item--open .pa-faq__q::after {
	content: '\2212'; /* − */
}
.pa-faq__a {
	padding: 0 var(--pa-space-6) var(--pa-space-5);
}
.pa-faq__a p {
	margin: 0;
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-faq__a a {
	color: var(--pa-blue-primary);
}


/* =============================================================================
 * /download page — page hero, platform cards, install paths, sysreq, trial,
 * and help sections. The .pa-page-hero is the canonical "secondary hero" for
 * deep pages — same pattern as .pa-pricing-hero but generic, so /security,
 * /enterprise, /about etc. can reuse it.
 * ========================================================================== */

/* ---- Page hero (generic secondary hero) ---- */

.pa-page-hero {
	padding: var(--pa-space-30) var(--pa-space-6) var(--pa-space-12);
	background: linear-gradient(
		160deg,
		var(--pa-gradient-hero-start) 0%,
		#ffffff 60%,
		var(--pa-gradient-hero-end) 100%
	);
	text-align: center;
}
.pa-page-hero__inner {
	max-width: 900px;
	margin: 0 auto;
}
.pa-page-hero__title {
	margin: var(--pa-space-3) 0 var(--pa-space-5);
	font-size: clamp(32px, 4.5vw, 52px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-page-hero__subtitle {
	max-width: 700px;
	margin: 0 auto var(--pa-space-7);
	font-size: 17px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-page-hero__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
}
/* /download hero — single centered focus: badge · title · subtitle · big
   Windows-logo Download CTA · inline meta strip · alt-platform note. No
   split column, no card-in-hero — collapsing the duplicate-CTA feel. */
.pa-btn--xl {
	padding: 18px 36px;
	font-size: 17px;
	gap: var(--pa-space-3);
	min-width: 280px;
}
/* Inline icon inside any .pa-btn (Windows tile logo, etc). Inherits color
   via `fill="currentColor"` so the icon picks up the button text color in
   primary/white/ghost-light/secondary variants alike. */
.pa-btn__icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}
.pa-btn--xl .pa-btn__icon {
	width: 22px;
	height: 22px;
}
/* Inline meta strip below the primary CTA — version, size, OS support,
   editions. Reads as a single horizontal pill row, not as a feature card. */
.pa-download-meta {
	list-style: none;
	margin: var(--pa-space-5) auto var(--pa-space-3);
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--pa-space-2) var(--pa-space-4);
	font-size: 13px;
	color: var(--pa-text-muted);
	letter-spacing: 0.01em;
}
.pa-download-meta li {
	position: relative;
	padding: 0 var(--pa-space-2);
}
.pa-download-meta li + li::before {
	content: "·";
	position: absolute;
	left: calc(var(--pa-space-4) * -0.5);
	color: var(--pa-border);
}

/* Small subdued line below the hero CTA pair — used on /download to route
   non-Windows visitors to the all-downloads table without crowding the
   primary CTAs. */
.pa-page-hero__alt-platform {
	max-width: 640px;
	margin: var(--pa-space-4) auto 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-page-hero__alt-platform a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-page-hero__alt-platform a:hover {
	text-decoration: underline;
}

/* ---- Platform download cards (3-up grid) ---- */

.pa-download-cards {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-download-cards__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-download-cards__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
/* Two-card variant — used when CLI lives in the all-downloads table instead
   of as a primary card. Caps grid width so the 2 cards don't stretch into
   awkwardly chunky shapes on wide screens. */
.pa-download-cards__grid--two {
	grid-template-columns: repeat(2, 1fr);
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
/* Single-card variant — used on /download when Windows is the sole featured
   build and the macOS / MSI / portable etc. live in the All Downloads table
   below. Caps width so the card doesn't sprawl on wide viewports. */
.pa-download-cards__grid--one {
	grid-template-columns: 1fr;
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

.pa-download-card {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-download-card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-download-card--featured {
	position: relative;
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--pa-accent-blue) 5%, #fff) 0%,
		#fff 100%);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
/* "Most downloaded" pill on the featured Windows card. Mirrors the
   pricing-strip "Most popular" badge styling. */
.pa-download-card__badge {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 5px 14px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #fff;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	border-radius: 999px;
	white-space: nowrap;
	box-shadow: 0 3px 10px color-mix(in srgb, var(--pa-accent-blue) 30%, transparent);
}

.pa-download-card__head {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	padding-bottom: var(--pa-space-5);
	border-bottom: 1px solid var(--pa-border);
}
.pa-download-card__platform {
	font-size: 22px;
	font-weight: 800;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-download-card__version {
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.pa-download-card__body {
	flex-grow: 1;
	padding: var(--pa-space-5) 0;
}
.pa-download-card__desc {
	margin: 0 0 var(--pa-space-5);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-download-card__meta {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-download-card__meta li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--pa-space-3);
	padding: 8px 0;
	border-bottom: 1px solid var(--pa-border-subtle);
	font-size: 13px;
}
.pa-download-card__meta li:last-child {
	border-bottom: none;
}
.pa-download-card__meta li span {
	color: var(--pa-text-muted);
}
.pa-download-card__meta li strong {
	color: var(--pa-text-primary);
	font-weight: 600;
	text-align: right;
}

.pa-download-card__cta {
	display: block;
	width: 100%;
	margin-top: var(--pa-space-5);
	padding: 14px;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	color: #fff;
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 4px 12px rgba(30, 115, 190, 0.22);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.pa-download-card__cta:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(30, 115, 190, 0.32);
}

@media (max-width: 960px) {
	.pa-download-cards__grid {
		grid-template-columns: 1fr;
		max-width: 480px;
		margin-left: auto;
		margin-right: auto;
	}
}

/* ---- Install paths (IT deployment alternatives) ---- */

.pa-install-paths {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-install-paths__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-install-paths__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-install-paths__card {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-8);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-install-paths__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-install-paths__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-lg);
	font-size: 22px;
	line-height: 1;
}
.pa-install-paths__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-install-paths__body {
	flex-grow: 1;
	margin: 0 0 var(--pa-space-3);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-install-paths__meta {
	margin: 0 0 var(--pa-space-4);
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-install-paths__link {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
	margin-bottom: var(--pa-space-2);
}
.pa-install-paths__link:hover {
	color: var(--pa-blue-dark);
}
.pa-install-paths__link--alt {
	font-size: 12px;
	font-weight: 500;
	color: var(--pa-text-muted);
}
.pa-install-paths__link--alt:hover {
	color: var(--pa-blue-primary);
}

/* ---- Downloads table (/download #all-downloads) — every PowerArchiver
   build in one grouped, sortable-by-eye table. Uses tbody groups for visual
   separation between product families. */

.pa-dl-table-section {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-dl-table-section__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-dl-table-wrap {
	margin-top: var(--pa-space-10);
	overflow-x: auto;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	-webkit-overflow-scrolling: touch;
}
.pa-dl-table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
}
.pa-dl-table thead th {
	padding: var(--pa-space-4) var(--pa-space-5);
	text-align: left;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--pa-text-muted);
	background: var(--pa-bg-subtle);
	border-bottom: 1px solid var(--pa-border);
}
.pa-dl-table thead th.pa-dl-table__num,
.pa-dl-table tbody td.pa-dl-table__num {
	text-align: right;
	font-variant-numeric: tabular-nums;
}
.pa-dl-table thead th.pa-dl-table__action,
.pa-dl-table tbody td.pa-dl-table__action {
	text-align: right;
}
.pa-dl-table__group-head th {
	padding: var(--pa-space-3) var(--pa-space-5);
	background: color-mix(in srgb, var(--pa-accent-blue) 5%, transparent);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--pa-blue-dark);
	border-top: 1px solid var(--pa-border);
	border-bottom: 1px solid var(--pa-border);
	text-align: left;
}
.pa-dl-table tbody th[scope="row"] {
	padding: 12px var(--pa-space-5);
	text-align: left;
	font-weight: 600;
	color: var(--pa-text-primary);
	border-bottom: 1px solid var(--pa-border-subtle);
	font-size: 14px;
}
.pa-dl-table tbody td {
	padding: 12px var(--pa-space-5);
	border-bottom: 1px solid var(--pa-border-subtle);
	color: var(--pa-text-secondary);
	vertical-align: middle;
}
.pa-dl-table tbody tr:hover th,
.pa-dl-table tbody tr:hover td {
	background: color-mix(in srgb, var(--pa-accent-blue) 3%, transparent);
}
.pa-dl-table__action a {
	display: inline-block;
	padding: 6px 14px;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	color: #fff;
	border-radius: var(--pa-radius-sm);
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.pa-dl-table__action a:hover {
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(30, 115, 190, 0.32);
}
.pa-dl-table-section__note {
	margin: var(--pa-space-6) 0 0;
	font-size: 13px;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-dl-table-section__note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

@media (max-width: 768px) {
	.pa-dl-table {
		font-size: 13px;
	}
	.pa-dl-table thead th,
	.pa-dl-table tbody th,
	.pa-dl-table tbody td {
		padding: 10px var(--pa-space-3);
	}
	.pa-dl-table__action a {
		padding: 6px 10px;
		font-size: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pa-dl-table__action a:hover {
		transform: none;
	}
}


/* ---- Sub-section title (used inside merged chapters like /download #it
   and #trial). Styled as a small uppercase eyebrow above a sub-group of cards. */
.pa-subgroup-title {
	margin: var(--pa-space-10) 0 var(--pa-space-5);
	font-family: var(--pa-font-heading);
	font-size: 13px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
/* First sub-group inside a section sits closer to the section header. */
.pa-section-header + .pa-subgroup-title {
	margin-top: var(--pa-space-8);
}

/* ---- Install-paths strip (single-item horizontal banner). Same colors as
   `.pa-install-paths__card` but a flex row with icon-left, body-middle,
   link-right. */
.pa-install-paths__strip {
	display: flex;
	align-items: center;
	gap: var(--pa-space-5);
	padding: var(--pa-space-5) var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pa-install-paths__strip:hover {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-sm);
}
.pa-install-paths__strip-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 20px;
	line-height: 1;
}
.pa-install-paths__strip-body {
	flex: 1;
	min-width: 0;
}
.pa-install-paths__strip-title {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-install-paths__strip-body p {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-install-paths__strip-link {
	flex-shrink: 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
	white-space: nowrap;
}
.pa-install-paths__strip-link:hover {
	color: var(--pa-blue-dark);
}

@media (max-width: 768px) {
	.pa-install-paths__strip {
		flex-direction: column;
		align-items: flex-start;
		gap: var(--pa-space-3);
		padding: var(--pa-space-5);
	}
}

/* ---- Older versions (collapsible details element) ---- */

.pa-old-versions {
	padding: var(--pa-space-12) var(--pa-space-6) var(--pa-space-16);
	background: #fff;
}
.pa-old-versions__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-old-versions__details {
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	background: var(--pa-bg-subtle);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pa-old-versions__details[open] {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-sm);
}
.pa-old-versions__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--pa-space-4);
	padding: var(--pa-space-5) var(--pa-space-6);
	cursor: pointer;
	list-style: none;
	user-select: none;
}
.pa-old-versions__summary::-webkit-details-marker { display: none; }
.pa-old-versions__summary::after {
	content: '+';
	font-size: 24px;
	font-weight: 400;
	color: var(--pa-blue-primary);
	line-height: 1;
}
.pa-old-versions__details[open] .pa-old-versions__summary::after {
	content: '\2212';
}
.pa-old-versions__label {
	font-size: 15px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-old-versions__hint {
	flex-grow: 1;
	font-size: 13px;
	color: var(--pa-text-muted);
	margin-left: var(--pa-space-3);
}
.pa-old-versions__body {
	padding: 0 var(--pa-space-6) var(--pa-space-6);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-old-versions__intro {
	margin: var(--pa-space-5) 0 var(--pa-space-6);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-old-versions__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--pa-space-5);
}
.pa-old-versions__group {
	padding: var(--pa-space-5);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
}
.pa-old-versions__group-title {
	margin: 0 0 var(--pa-space-3);
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-old-versions__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.pa-old-versions__list li {
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-muted);
}
.pa-old-versions__list a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-old-versions__list a:hover {
	color: var(--pa-blue-dark);
	text-decoration: underline;
}

@media (max-width: 768px) {
	.pa-old-versions__hint {
		display: none;
	}
}


/* ---- System requirements ---- */

.pa-sysreq {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-sysreq__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-sysreq__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
/* Solo variant — used on /download since macOS was dropped. Centers the
   single Windows card at a comfortable max-width instead of letting it sit
   half-width with empty space beside it. */
.pa-sysreq__grid--solo {
	grid-template-columns: minmax(0, 800px);
	justify-content: center;
}
.pa-sysreq__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-sysreq__platform {
	margin: 0 0 var(--pa-space-5);
	padding-bottom: var(--pa-space-3);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
	border-bottom: 1px solid var(--pa-border);
}
.pa-sysreq__list {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-sysreq__list > div {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: var(--pa-space-4);
	font-size: 14px;
	line-height: 1.5;
}
.pa-sysreq__list dt {
	color: var(--pa-text-muted);
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding-top: 2px;
}
.pa-sysreq__list dd {
	margin: 0;
	color: var(--pa-text-secondary);
}

@media (max-width: 768px) {
	.pa-sysreq__grid {
		grid-template-columns: 1fr;
	}
	.pa-sysreq__list > div {
		grid-template-columns: 100px 1fr;
		gap: var(--pa-space-3);
	}
}

/* ---- Trial: what's included / what happens after ---- */

.pa-trial {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-trial__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-trial__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-trial__col {
	padding: var(--pa-space-8);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-trial__col-title {
	margin: 0 0 var(--pa-space-5);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-trial__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-trial__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-trial__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-trial__list strong {
	color: var(--pa-text-primary);
}
.pa-trial__list a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

@media (max-width: 768px) {
	.pa-trial__grid {
		grid-template-columns: 1fr;
	}
}

/* ---- Help / Support links ---- */

.pa-help {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-help__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-help__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-help__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-help__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-help__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 20px;
	line-height: 1;
}
.pa-help__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-help__body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-help__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-help__link:hover {
	color: var(--pa-blue-dark);
}


/* ---- /resellers — Reseller program tiers + apply steps + product catalog ---- */

.pa-resell-tiers {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-resell-tiers__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-tiers__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-resell-tiers__card {
	padding: var(--pa-space-9);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-resell-tiers__card--featured {
	background: #fff;
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
	position: relative;
}
.pa-resell-tiers__pill {
	display: inline-block;
	padding: 4px 12px;
	margin-bottom: var(--pa-space-3);
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-resell-tiers__name {
	margin: 0 0 4px;
	font-size: 22px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-tiers__sub {
	margin: 0 0 var(--pa-space-5);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
}
.pa-resell-tiers__list {
	list-style: none;
	margin: 0 0 var(--pa-space-5);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-resell-tiers__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-resell-tiers__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-resell-tiers__list strong { color: var(--pa-text-primary); }
.pa-resell-tiers__list a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-resell-tiers__link {
	display: inline-block;
	padding: 10px 18px;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-resell-tiers__link:hover { color: var(--pa-blue-dark); }
.pa-resell-tiers__link--primary {
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-md);
	transition: background 0.2s ease;
}
.pa-resell-tiers__link--primary:hover { background: var(--pa-blue-dark); color: #fff; }
.pa-resell-tiers__note {
	margin: var(--pa-space-4) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid var(--pa-border-subtle);
	font-size: 12px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-resell-tiers__note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 768px) { .pa-resell-tiers__grid { grid-template-columns: 1fr; } }

/* Reseller Premium account section — 2-column panel (benefits + when-to-apply).
   Lighter visual weight than Tiers since this is the secondary path. */
.pa-resell-premium {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-resell-premium__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-premium__panel {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin-top: var(--pa-space-10);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	overflow: hidden;
}
.pa-resell-premium__col {
	padding: var(--pa-space-8);
}
.pa-resell-premium__col + .pa-resell-premium__col {
	border-left: 1px solid var(--pa-border-subtle);
	background: var(--pa-bg-subtle);
}
.pa-resell-premium__col-title {
	margin: 0 0 var(--pa-space-4);
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-premium__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-resell-premium__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-resell-premium__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-resell-premium__list strong { color: var(--pa-text-primary); }
.pa-resell-premium__list a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-resell-premium__cta {
	margin-top: var(--pa-space-5);
	padding-top: var(--pa-space-5);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-resell-premium__cta-note {
	margin: var(--pa-space-3) 0 0;
	font-size: 12px;
	line-height: 1.55;
	color: var(--pa-text-muted);
}
.pa-resell-premium__cta-note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 768px) {
	.pa-resell-premium__panel { grid-template-columns: 1fr; }
	.pa-resell-premium__col + .pa-resell-premium__col {
		border-left: none;
		border-top: 1px solid var(--pa-border-subtle);
	}
}


/* Reseller why-partner section — 6-card value props grid on bg-subtle. */
.pa-resell-why {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-resell-why__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-why__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-resell-why__card {
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-resell-why__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-resell-why__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-resell-why__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-why__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
@media (max-width: 920px) { .pa-resell-why__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-resell-why__grid { grid-template-columns: 1fr; } }

/* Reseller types section — 6-card grid on white (alternates rhythm with why on bg-subtle). */
.pa-resell-types {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-resell-types__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-types__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-resell-types__card {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-resell-types__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-resell-types__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-types__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
@media (max-width: 920px) { .pa-resell-types__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-resell-types__grid { grid-template-columns: 1fr; } }

/* Reseller margin/order examples — 3 cards on dark band, mirrors
   /education's pricing-examples treatment. */
.pa-resell-margins {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-alt) 100%);
	color: rgba(255, 255, 255, 0.85);
}
.pa-resell-margins__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-margins__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-resell-margins__card {
	position: relative;
	padding: var(--pa-space-8);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--pa-radius-xl);
}
.pa-resell-margins__card--featured {
	background: rgba(75, 144, 226, 0.12);
	border-color: var(--pa-blue-primary);
}
.pa-resell-margins__pill {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px 14px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-resell-margins__head {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-bottom: var(--pa-space-4);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	margin-bottom: var(--pa-space-4);
}
.pa-resell-margins__size {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
}
.pa-resell-margins__count {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-accent-blue-light);
}
.pa-resell-margins__scenario {
	margin: 0 0 var(--pa-space-4);
	font-size: 13px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.78);
}
.pa-resell-margins__scenario strong { color: #fff; }
.pa-resell-margins__details {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-resell-margins__details li {
	position: relative;
	padding-left: 22px;
	font-size: 13px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.78);
}
.pa-resell-margins__details li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-resell-margins__details strong { color: #fff; }
.pa-resell-margins__caveat {
	max-width: 780px;
	margin: var(--pa-space-7) auto 0;
	font-size: 13px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.7);
	text-align: center;
	font-style: italic;
}
@media (max-width: 920px) { .pa-resell-margins__grid { grid-template-columns: 1fr; } }


/* Reseller inquiry form section (LiveAgent embed) — same pattern as
   /support form section. Light bg, two-column layout. */
.pa-resell-inquiry {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-resell-inquiry__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: var(--pa-space-12);
	align-items: start;
}
.pa-resell-inquiry__bullets {
	list-style: none;
	margin: var(--pa-space-6) 0 var(--pa-space-7);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-resell-inquiry__bullets li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-resell-inquiry__bullets li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-resell-inquiry__bullets strong { color: var(--pa-text-primary); }
.pa-resell-inquiry__alt {
	padding: var(--pa-space-5) var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-sm);
}
.pa-resell-inquiry__alt-label {
	margin: 0 0 var(--pa-space-3);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-blue-primary);
}
.pa-resell-inquiry__alt-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-resell-inquiry__alt-list strong { color: var(--pa-text-primary); }
.pa-resell-inquiry__alt-list a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-resell-inquiry__alt-list a:hover { color: var(--pa-blue-dark); }
.pa-resell-inquiry__form-frame {
	min-height: 480px;
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-xl);
	box-shadow: var(--pa-shadow-md);
}
.pa-resell-inquiry__noscript {
	margin: 0;
	padding: var(--pa-space-5);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-resell-inquiry__noscript a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-resell-inquiry__fallback {
	margin: var(--pa-space-3) 0 0;
	font-size: 12px;
	font-style: italic;
	line-height: 1.55;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-resell-inquiry__fallback a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 920px) {
	.pa-resell-inquiry__inner { grid-template-columns: 1fr; }
}


/* Reseller apply steps — shared layout pattern with /thanks-mac
   guide-steps but on a light bg-subtle band. */
.pa-resell-apply {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-resell-apply__inner {
	max-width: 900px;
	margin: 0 auto;
}
.pa-resell-apply__steps {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-resell-apply__steps li {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: var(--pa-space-5);
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-resell-apply__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 18px;
	font-weight: 700;
}
.pa-resell-apply__steps h3 {
	margin: 4px 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-apply__steps p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-resell-apply__steps a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 600px) { .pa-resell-apply__steps li { grid-template-columns: 1fr; } }

/* Reseller product catalog — 4-card grid. */
.pa-resell-products {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-resell-products__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-resell-products__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-resell-products__item {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-resell-products__item h3 {
	margin: 0 0 var(--pa-space-2);
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-resell-products__item p {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-resell-products__item a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 768px) { .pa-resell-products__grid { grid-template-columns: 1fr; } }


/* ---- /education — Eligibility, process, what's included ---- */

.pa-edu-eligibility {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-edu-eligibility__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-edu-eligibility__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-edu-eligibility__card {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-edu-eligibility__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-edu-eligibility__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-edu-eligibility__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-edu-eligibility__note {
	margin: var(--pa-space-7) auto 0;
	max-width: 760px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
	text-align: center;
	font-style: italic;
}
.pa-edu-eligibility__note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 768px) { .pa-edu-eligibility__grid { grid-template-columns: 1fr; } }

/* Education process steps — same pattern as resellers/thanks. */
.pa-edu-process {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-edu-process__inner {
	max-width: 900px;
	margin: 0 auto;
}
.pa-edu-process__steps {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-edu-process__steps li {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: var(--pa-space-5);
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-edu-process__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 18px;
	font-weight: 700;
}
.pa-edu-process__steps h3 {
	margin: 4px 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-edu-process__steps p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-edu-process__steps a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-edu-process__steps code {
	padding: 1px 6px;
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-sm);
	font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
	font-size: 13px;
}
@media (max-width: 600px) { .pa-edu-process__steps li { grid-template-columns: 1fr; } }

/* Education Unlimited — primary product showcase. Two compact pricing
   cards on top + single shared "same features in both" panel below.
   Structure makes "same product, only user count differs" obvious. */
.pa-edu-unlim {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-alt) 100%);
	color: rgba(255, 255, 255, 0.85);
}
.pa-edu-unlim__inner {
	max-width: 1100px;
	margin: 0 auto;
}

/* Compact pricing cards row — just price + capacity + CTA, no feature
   list (those live in the shared panel below). */
.pa-edu-unlim__pricing-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-edu-unlim__price-card {
	position: relative;
	padding: var(--pa-space-7);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--pa-radius-xl);
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-5);
}
.pa-edu-unlim__price-card--featured {
	background: rgba(75, 144, 226, 0.12);
	border-color: var(--pa-blue-primary);
}
.pa-edu-unlim__price-pill {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px 14px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	white-space: nowrap;
}
.pa-edu-unlim__price-head {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-bottom: var(--pa-space-4);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.pa-edu-unlim__price-tier {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: #fff;
}
.pa-edu-unlim__price-fit {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-accent-blue-light);
}
.pa-edu-unlim__price-body {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-edu-unlim__price-amount-row {
	display: flex;
	align-items: baseline;
	gap: 6px;
}
.pa-edu-unlim__price-amount {
	font-size: clamp(36px, 4.5vw, 52px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
	line-height: 1;
}
.pa-edu-unlim__price-period {
	font-size: 16px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.7);
}
.pa-edu-unlim__price-capacity {
	font-size: 14px;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.85);
}
.pa-edu-unlim__price-capacity strong {
	color: #fff;
	font-weight: 700;
}
.pa-edu-unlim__price-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 18px;
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-accent-blue-light);
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: var(--pa-radius-md);
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.pa-edu-unlim__price-cta:hover {
	background: rgba(255, 255, 255, 0.06);
	border-color: var(--pa-blue-primary);
	color: #fff;
}
.pa-edu-unlim__price-cta--primary {
	background: var(--pa-blue-primary);
	color: #fff;
	border-color: var(--pa-blue-primary);
}
.pa-edu-unlim__price-cta--primary:hover {
	background: var(--pa-blue-light);
	border-color: var(--pa-blue-light);
	color: #fff;
}

/* Shared "Both tiers include..." panel — single feature list applies
   to Gold AND Platinum. Visually emphasizes that the product is
   identical; only the user-pool ceiling differs. */
.pa-edu-unlim__shared {
	margin-top: var(--pa-space-8);
	padding: var(--pa-space-9);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--pa-radius-xl);
}
.pa-edu-unlim__shared-title {
	margin: 0 0 var(--pa-space-5);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: #fff;
	text-align: center;
}
.pa-edu-unlim__shared-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-3) var(--pa-space-7);
}
.pa-edu-unlim__shared-list li {
	position: relative;
	padding-left: 24px;
	font-size: 14px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.85);
}
.pa-edu-unlim__shared-list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-edu-unlim__shared-list strong { color: #fff; }
.pa-edu-unlim__shared-note {
	margin: var(--pa-space-5) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	font-size: 13px;
	font-style: italic;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.7);
	text-align: center;
}

@media (max-width: 768px) {
	.pa-edu-unlim__pricing-row { grid-template-columns: 1fr; }
	.pa-edu-unlim__shared-list { grid-template-columns: 1fr; }
}


/* Education individual .edu discount — clearly secondary path.
   Three buy-cards (Standard / Pro / Toolbox) each with $/€ purchase
   buttons that link directly to the live order URLs. */
.pa-edu-individual {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-edu-individual__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-edu-individual__buy-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-edu-individual__buy-card {
	position: relative;
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	display: flex;
	flex-direction: column;
}
.pa-edu-individual__buy-card--featured {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-edu-individual__buy-pill {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px 14px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-edu-individual__buy-head {
	margin-bottom: var(--pa-space-4);
	padding-bottom: var(--pa-space-3);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-edu-individual__buy-edition {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-edu-individual__buy-desc {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
.pa-edu-individual__buy-price {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-bottom: var(--pa-space-5);
}
.pa-edu-individual__buy-amount {
	font-size: clamp(28px, 3.2vw, 36px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--pa-blue-primary);
	line-height: 1;
}
.pa-edu-individual__buy-was {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-edu-individual__buy-actions {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	margin-top: auto;
}
.pa-edu-individual__buy-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
	border: 1px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-md);
	transition: background 0.15s ease, color 0.15s ease;
}
.pa-edu-individual__buy-btn:hover {
	background: var(--pa-blue-primary);
	color: #fff;
}
.pa-edu-individual__buy-btn--primary {
	background: var(--pa-blue-primary);
	color: #fff;
}
.pa-edu-individual__buy-btn--primary:hover {
	background: var(--pa-blue-dark);
	color: #fff;
}
.pa-edu-individual__buy-note {
	max-width: 800px;
	margin: var(--pa-space-7) auto 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-edu-individual__buy-note strong { color: var(--pa-text-primary); }
.pa-edu-individual__buy-note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 920px) { .pa-edu-individual__buy-grid { grid-template-columns: 1fr; } }
.pa-edu-individual__panel {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin-top: var(--pa-space-10);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	overflow: hidden;
}
.pa-edu-individual__col {
	padding: var(--pa-space-8);
}
.pa-edu-individual__col + .pa-edu-individual__col {
	border-left: 1px solid var(--pa-border-subtle);
	background: var(--pa-bg-subtle);
}
.pa-edu-individual__col-title {
	margin: 0 0 var(--pa-space-4);
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-edu-individual__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-edu-individual__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-edu-individual__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-edu-individual__list strong { color: var(--pa-text-primary); }
.pa-edu-individual__pricing {
	list-style: none;
	margin: 0 0 var(--pa-space-4);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-edu-individual__pricing li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--pa-space-3);
	padding: var(--pa-space-3) var(--pa-space-4);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-sm);
	font-size: 14px;
}
.pa-edu-individual__pricing li span:first-child {
	font-weight: 600;
	color: var(--pa-text-primary);
}
.pa-edu-individual__pricing li strong {
	font-size: 18px;
	font-weight: 800;
	color: var(--pa-blue-primary);
	margin-left: auto;
}
.pa-edu-individual__pricing li small {
	font-size: 12px;
	color: var(--pa-text-muted);
}
.pa-edu-individual__note {
	margin: var(--pa-space-4) 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-edu-individual__note a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-edu-individual__cta {
	display: inline-block;
	padding: 10px 18px;
	margin-top: var(--pa-space-2);
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
	border: 1px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-md);
}
.pa-edu-individual__cta:hover {
	background: var(--pa-blue-primary);
	color: #fff;
}
@media (max-width: 768px) {
	.pa-edu-individual__panel { grid-template-columns: 1fr; }
	.pa-edu-individual__col + .pa-edu-individual__col {
		border-left: none;
		border-top: 1px solid var(--pa-border-subtle);
	}
}


/* Education use cases — 6-card grid (3×2 on desktop). */
.pa-edu-usecases {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-edu-usecases__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-edu-usecases__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-edu-usecases__card {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-edu-usecases__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-edu-usecases__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-edu-usecases__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-edu-usecases__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-edu-usecases__body a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 920px) { .pa-edu-usecases__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-edu-usecases__grid { grid-template-columns: 1fr; } }

/* Education pricing examples — 3 cards (small / mid / large) on dark band. */
.pa-edu-examples {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-alt) 100%);
	color: rgba(255, 255, 255, 0.85);
}
.pa-edu-examples__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-edu-examples__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-edu-examples__card {
	position: relative;
	padding: var(--pa-space-8);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--pa-radius-xl);
}
.pa-edu-examples__card--featured {
	background: rgba(75, 144, 226, 0.12);
	border-color: var(--pa-blue-primary);
}
.pa-edu-examples__pill {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px 14px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-edu-examples__head {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-bottom: var(--pa-space-4);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	margin-bottom: var(--pa-space-5);
}
.pa-edu-examples__size {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
}
.pa-edu-examples__count {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-accent-blue-light);
}
.pa-edu-examples__price {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: var(--pa-space-5);
}
.pa-edu-examples__amount {
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
	line-height: 1;
}
.pa-edu-examples__period {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.65);
}
.pa-edu-examples__details {
	list-style: none;
	margin: 0 0 var(--pa-space-4);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-edu-examples__details li {
	position: relative;
	padding-left: 22px;
	font-size: 13px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.78);
}
.pa-edu-examples__details li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-edu-examples__details strong { color: #fff; }
.pa-edu-examples__note {
	margin: 0;
	padding-top: var(--pa-space-3);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	font-size: 12px;
	font-style: italic;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.6);
}
.pa-edu-examples__caveat {
	max-width: 780px;
	margin: var(--pa-space-7) auto 0;
	font-size: 13px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.7);
	text-align: center;
	font-style: italic;
}
.pa-edu-examples__caveat a { color: var(--pa-accent-blue-light); font-weight: 600; }
@media (max-width: 920px) { .pa-edu-examples__grid { grid-template-columns: 1fr; } }


/* Education included list — bullet checklist on white. */
.pa-edu-included {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-edu-included__inner {
	max-width: 800px;
	margin: 0 auto;
}
.pa-edu-included__list {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-edu-included__list li {
	position: relative;
	padding: var(--pa-space-4) var(--pa-space-5) var(--pa-space-4) var(--pa-space-9);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-edu-included__list li::before {
	content: '\2713';
	position: absolute;
	left: var(--pa-space-5);
	top: var(--pa-space-4);
	color: var(--pa-blue-primary);
	font-weight: 700;
	font-size: 16px;
}
.pa-edu-included__list strong { color: var(--pa-text-primary); }
.pa-edu-included__list a { color: var(--pa-blue-primary); font-weight: 600; }


/* ---- /awards — Top awards strip + reviews grid ---- */

.pa-awards-strip {
	padding: var(--pa-space-12) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-awards-strip__inner {
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.pa-awards-strip__lead {
	margin: 0 0 var(--pa-space-7);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-awards-strip__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: var(--pa-space-6);
	align-items: center;
	justify-items: center;
}
.pa-awards-strip__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--pa-space-3);
	text-decoration: none;
	color: var(--pa-text-secondary);
}
.pa-awards-strip__item img {
	max-width: 130px;
	max-height: 64px;
	object-fit: contain;
}
.pa-awards-strip__caption {
	font-size: 11px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--pa-text-secondary);
	text-align: center;
}
@media (max-width: 920px) { .pa-awards-strip__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 540px) { .pa-awards-strip__grid { grid-template-columns: repeat(2, 1fr); } }

/* Awards editorial reviews grid */
.pa-awards-reviews {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-awards-reviews__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-awards-reviews__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-awards-reviews__card {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	display: flex;
	flex-direction: column;
}
.pa-awards-reviews__card-head {
	margin-bottom: var(--pa-space-4);
	padding-bottom: var(--pa-space-3);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-awards-reviews__publication {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-awards-reviews__rating {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--pa-blue-primary);
}
.pa-awards-reviews__quote {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
	font-style: italic;
	flex: 1;
}
.pa-awards-reviews__link {
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-awards-reviews__link:hover { color: var(--pa-blue-dark); }
@media (max-width: 920px) { .pa-awards-reviews__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-awards-reviews__grid { grid-template-columns: 1fr; } }


/* ---- Awards band — shared partial section-awards.html ----
   Compact social-proof strip for cross-site use. Lives between any two
   sections — homepage, /pricing, /enterprise, /download, /about. Muted
   grayscale-tinted images, hover restores color. */

.pa-awards-band {
	padding: var(--pa-space-12) var(--pa-space-6);
	background: #fff;
	border-top: 1px solid var(--pa-border-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-awards-band__inner {
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.pa-awards-band__lead {
	margin: 0 0 var(--pa-space-7);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-awards-band__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: var(--pa-space-5);
	align-items: center;
	justify-items: center;
}
.pa-awards-band__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--pa-space-2);
	text-decoration: none;
	color: var(--pa-text-secondary);
	transition: opacity 0.25s ease, filter 0.25s ease;
	opacity: 0.7;
	filter: grayscale(0.4);
}
.pa-awards-band__item:hover {
	opacity: 1;
	filter: grayscale(0);
}
.pa-awards-band__item img {
	max-width: 110px;
	max-height: 56px;
	object-fit: contain;
}
.pa-awards-band__caption {
	font-size: 10px;
	font-weight: 500;
	line-height: 1.4;
	color: var(--pa-text-muted);
	text-align: center;
	letter-spacing: 0.02em;
}
.pa-awards-band__caption strong {
	color: var(--pa-text-primary);
	font-weight: 700;
}
.pa-awards-band__cta {
	margin: var(--pa-space-7) 0 0;
	font-size: 13px;
}
.pa-awards-band__cta a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-awards-band__cta a:hover {
	color: var(--pa-blue-dark);
	text-decoration: underline;
}
@media (max-width: 920px) { .pa-awards-band__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 540px) { .pa-awards-band__grid { grid-template-columns: repeat(2, 1fr); } }


/* ---- /support — Form section (LiveAgent embed, primary action) ---- */

.pa-support-form-section {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-support-form-section__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: var(--pa-space-12);
	align-items: start;
}
.pa-support-form-section__bullets {
	list-style: none;
	margin: var(--pa-space-6) 0 var(--pa-space-7);
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-support-form-section__bullets li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-support-form-section__bullets li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-support-form-section__bullets strong { color: var(--pa-text-primary); }
.pa-support-form-section__alt {
	padding: var(--pa-space-5) var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-sm);
}
.pa-support-form-section__alt-label {
	margin: 0 0 var(--pa-space-3);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-blue-primary);
}
.pa-support-form-section__alt-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-support-form-section__alt-list strong { color: var(--pa-text-primary); }
.pa-support-form-section__alt-list a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-support-form-section__alt-list a:hover { color: var(--pa-blue-dark); }
.pa-support-form-section__form-frame {
	min-height: 480px;
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-xl);
	box-shadow: var(--pa-shadow-md);
}
.pa-support-form-section__noscript {
	margin: 0;
	padding: var(--pa-space-5);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-support-form-section__noscript a { color: var(--pa-blue-primary); font-weight: 600; }
.pa-support-form-section__fallback-note {
	margin: var(--pa-space-3) 0 0;
	font-size: 12px;
	font-style: italic;
	line-height: 1.55;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-support-form-section__fallback-note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 920px) {
	.pa-support-form-section__inner { grid-template-columns: 1fr; }
}


/* ---- /support — Support paths grid ---- */

.pa-support-paths {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-support-paths__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-support-paths__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-support-paths__grid--three { grid-template-columns: repeat(3, 1fr); }
.pa-support-paths__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-support-paths__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-support-paths__card--featured {
	background: linear-gradient(180deg, color-mix(in srgb, var(--pa-blue-primary) 4%, #fff) 0%, #fff 100%);
	border-color: rgba(75, 144, 226, 0.35);
}
.pa-support-paths__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-support-paths__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 19px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-support-paths__body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-support-paths__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-support-paths__link:hover { color: var(--pa-blue-dark); }
.pa-support-paths__link--primary {
	display: inline-block;
	padding: 10px 18px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-md);
	transition: background 0.2s ease;
}
.pa-support-paths__link--primary:hover {
	background: var(--pa-blue-dark);
	color: #fff;
}
@media (max-width: 920px) { .pa-support-paths__grid--three { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) { .pa-support-paths__grid,
	.pa-support-paths__grid--three { grid-template-columns: 1fr; } }


/* ---- /support — Support tiers (free vs Premium) ---- */

.pa-support-tiers {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-support-tiers__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-support-tiers__grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-support-tiers__card {
	padding: var(--pa-space-9);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-support-tiers__card--featured {
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
	position: relative;
}
.pa-support-tiers__pill {
	display: inline-block;
	padding: 4px 12px;
	margin-bottom: var(--pa-space-3);
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-support-tiers__name {
	margin: 0 0 4px;
	font-size: 22px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-support-tiers__sub {
	margin: 0 0 var(--pa-space-5);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
}
.pa-support-tiers__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-support-tiers__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-support-tiers__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-support-tiers__list strong { color: var(--pa-text-primary); }
.pa-support-tiers__note {
	margin: var(--pa-space-5) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid var(--pa-border-subtle);
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-support-tiers__note a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 768px) { .pa-support-tiers__grid { grid-template-columns: 1fr; } }


/* ---- /support — Contact CTA strip (dark band) ---- */

.pa-support-contact {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, var(--pa-gradient-cta-start) 0%, var(--pa-gradient-cta-end) 100%);
	color: #fff;
	text-align: center;
}
.pa-support-contact__inner {
	max-width: 720px;
	margin: 0 auto;
}
.pa-support-contact__title {
	margin: 0 0 var(--pa-space-3);
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 800;
	letter-spacing: -0.02em;
}
.pa-support-contact__body {
	margin: 0 auto var(--pa-space-6);
	max-width: 520px;
	font-size: 16px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.85);
}
.pa-support-contact__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
}
.pa-support-contact__sub {
	margin: var(--pa-space-5) 0 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.7);
}
.pa-support-contact__sub a {
	color: var(--pa-accent-blue-light);
	font-weight: 600;
}
.pa-support-contact__sub a:hover { color: #fff; }


/* ---- /compare/winzip — at-a-glance summary ---- */

.pa-vs-summary {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-vs-summary__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-vs-summary__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-vs-summary__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-vs-summary__title {
	margin: 0 0 var(--pa-space-4);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-vs-summary__pa,
.pa-vs-summary__rival {
	margin: 0 0 var(--pa-space-3);
	padding: var(--pa-space-3) var(--pa-space-4);
	border-radius: var(--pa-radius-sm);
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-vs-summary__pa {
	background: rgba(75, 144, 226, 0.08);
	border-left: 3px solid var(--pa-blue-primary);
}
.pa-vs-summary__rival {
	background: rgba(115, 115, 115, 0.08);
	border-left: 3px solid var(--pa-text-muted);
	margin-bottom: 0;
}
.pa-vs-summary__pa strong,
.pa-vs-summary__rival strong { color: var(--pa-text-primary); }
@media (max-width: 920px) { .pa-vs-summary__grid { grid-template-columns: 1fr; } }


/* ---- /compare/winzip — 5-year TCO ---- */

.pa-vs-tco {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-dark-bg-alt);
	color: rgba(255, 255, 255, 0.85);
}
.pa-vs-tco__inner {
	max-width: 1000px;
	margin: 0 auto;
}
.pa-vs-tco__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-vs-tco__card {
	padding: var(--pa-space-8);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-xl);
}
.pa-vs-tco__card--pa {
	border-color: var(--pa-blue-primary);
	background: rgba(75, 144, 226, 0.1);
}
.pa-vs-tco__card-head {
	display: flex;
	flex-direction: column;
	margin-bottom: var(--pa-space-5);
	padding-bottom: var(--pa-space-5);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.pa-vs-tco__brand {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
	margin-bottom: var(--pa-space-2);
}
.pa-vs-tco__total {
	font-size: clamp(36px, 4.5vw, 48px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
	line-height: 1;
}
.pa-vs-tco__period {
	margin-top: 4px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
}
.pa-vs-tco__breakdown {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-vs-tco__breakdown div {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	font-size: 14px;
}
.pa-vs-tco__breakdown dt {
	color: rgba(255, 255, 255, 0.78);
}
.pa-vs-tco__breakdown dd {
	margin: 0;
	font-weight: 700;
	color: #fff;
	font-variant-numeric: tabular-nums;
}
.pa-vs-tco__note {
	margin: var(--pa-space-5) 0 0;
	padding-top: var(--pa-space-4);
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 13px;
	font-style: italic;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.65);
}
.pa-vs-tco__savings {
	margin-top: var(--pa-space-10);
	padding: var(--pa-space-7);
	background: var(--pa-blue-primary);
	border-radius: var(--pa-radius-xl);
	text-align: center;
}
.pa-vs-tco__savings-label {
	display: block;
	margin-bottom: var(--pa-space-2);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.85);
}
.pa-vs-tco__savings-value {
	display: block;
	font-size: clamp(32px, 4vw, 44px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
}
.pa-vs-tco__savings-note {
	display: block;
	margin-top: var(--pa-space-3);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);
}
.pa-vs-tco__savings-note a {
	color: #fff;
	font-weight: 600;
	text-decoration: underline;
}
@media (max-width: 768px) { .pa-vs-tco__grid { grid-template-columns: 1fr; } }


/* ---- /compare/winzip — feature comparison table ---- */

.pa-vs-features {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-vs-features__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-vs-features__table-wrap {
	margin-top: var(--pa-space-10);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	overflow-x: auto;
}
.pa-vs-features__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	min-width: 720px;
}
.pa-vs-features__table th,
.pa-vs-features__table td {
	padding: 14px 18px;
	text-align: left;
	border-bottom: 1px solid var(--pa-border-subtle);
	vertical-align: top;
}
.pa-vs-features__table thead th {
	background: var(--pa-bg-subtle);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-vs-features__table thead th.pa-vs-features__col-pa { color: var(--pa-blue-primary); }
.pa-vs-features__table tbody th {
	font-weight: 600;
	color: var(--pa-text-primary);
}
.pa-vs-features__cell { color: var(--pa-text-secondary); line-height: 1.5; }
.pa-vs-features__cell--pa {
	background: rgba(75, 144, 226, 0.04);
	color: var(--pa-text-primary);
	font-weight: 500;
}
.pa-vs-features__honest {
	margin: var(--pa-space-7) 0 0;
	padding: var(--pa-space-5) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-accent-orange);
	border-radius: var(--pa-radius-sm);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-vs-features__honest strong { color: var(--pa-text-primary); }


/* ---- /compare/winzip — switching steps ---- */

.pa-vs-switching {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-vs-switching__inner {
	max-width: 900px;
	margin: 0 auto;
}
.pa-vs-switching__steps {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-vs-switching__steps li {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: var(--pa-space-5);
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-vs-switching__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 18px;
	font-weight: 700;
}
.pa-vs-switching__steps h3 {
	margin: 4px 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-vs-switching__steps p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-vs-switching__steps a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-vs-switching__enterprise {
	margin-top: var(--pa-space-7);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-sm);
}
.pa-vs-switching__enterprise p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-vs-switching__enterprise strong { color: var(--pa-text-primary); }
.pa-vs-switching__enterprise a { color: var(--pa-blue-primary); font-weight: 600; }
@media (max-width: 600px) {
	.pa-vs-switching__steps li { grid-template-columns: 1fr; }
}


/* ---- /blog — featured post ---- */

.pa-blog-featured {
	padding: var(--pa-space-12) var(--pa-space-6) var(--pa-space-7);
	background: #fff;
}
.pa-blog-featured__inner {
	max-width: 920px;
	margin: 0 auto;
}
.pa-blog-featured__article {
	padding: var(--pa-space-9);
	background: linear-gradient(135deg, color-mix(in srgb, var(--pa-blue-primary) 5%, #fff) 0%, #fff 100%);
	border: 1px solid rgba(75, 144, 226, 0.3);
	border-radius: var(--pa-radius-xl);
}
.pa-blog-featured__meta {
	display: flex;
	align-items: center;
	gap: var(--pa-space-4);
	margin-bottom: var(--pa-space-3);
}
.pa-blog-featured__label {
	padding: 4px 10px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-blog-featured__date {
	font-size: 13px;
	color: var(--pa-text-muted);
}
.pa-blog-featured__title {
	margin: 0 0 var(--pa-space-4);
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -0.02em;
}
.pa-blog-featured__title a {
	color: var(--pa-text-primary);
	text-decoration: none;
}
.pa-blog-featured__title a:hover { color: var(--pa-blue-primary); }
.pa-blog-featured__excerpt {
	margin: 0 0 var(--pa-space-5);
	font-size: 16px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-blog-featured__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-blog-featured__link:hover { color: var(--pa-blue-dark); }


/* ---- /blog — posts grid ---- */

.pa-blog-grid {
	padding: var(--pa-space-12) var(--pa-space-6) var(--pa-space-16);
	background: #fff;
}
.pa-blog-grid__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-blog-grid__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-7);
}
.pa-blog-card {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	padding: var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-blog-card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-blog-card__date {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-blog-card__title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
}
.pa-blog-card__title a {
	color: var(--pa-text-primary);
	text-decoration: none;
}
.pa-blog-card__title a:hover { color: var(--pa-blue-primary); }
.pa-blog-card__excerpt {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
	flex: 1;
}
.pa-blog-card__link {
	margin-top: var(--pa-space-2);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-blog-card__link:hover { color: var(--pa-blue-dark); }
.pa-blog-grid__pagination {
	display: flex;
	justify-content: center;
	margin-top: var(--pa-space-10);
}
@media (max-width: 920px) { .pa-blog-grid__list { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-blog-grid__list { grid-template-columns: 1fr; } }


/* ---- Single news post (/YYYY/MM/DD/{slug}/) ----
   Compact hero strip + prose body + tags/share footer + related cards.
   Bound in Bricks via `singularType: 'post'` condition.

   Visual design: hero blends into body (no background-color break, no
   border-bottom separator). The category + date + title carry the visual
   weight; vertical padding gives breathing room without a hard divide.
   This pattern reads as "one post" rather than "header strip + body". */
.pa-post-hero {
	/* Top padding must clear the fixed 64px nav — was --pa-space-10 (40px)
	   which left the "← All news" back link hidden behind the nav on
	   single-post pages. Bumped to --pa-space-20 (80px) → 64px nav + 16px
	   breathing room before the back link. */
	padding: var(--pa-space-20) var(--pa-space-6) var(--pa-space-4);
}
.pa-post-hero__inner {
	max-width: 760px;
	margin: 0 auto;
}
.pa-post-hero__back {
	display: inline-block;
	margin-bottom: var(--pa-space-4);
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-post-hero__back:hover { color: var(--pa-blue-dark); }
.pa-post-hero__meta {
	display: flex;
	align-items: center;
	gap: var(--pa-space-2);
	margin-bottom: var(--pa-space-3);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-post-hero__category { color: var(--pa-blue-primary); }
.pa-post-hero__sep { color: var(--pa-border); }
.pa-post-hero__title {
	margin: 0;
	font-family: var(--pa-font-display);
	font-size: 36px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: var(--pa-text-primary);
}
.pa-post-hero__excerpt {
	margin: var(--pa-space-3) 0 0;
	font-size: 17px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
@media (max-width: 600px) {
	.pa-post-hero { padding: var(--pa-space-8) var(--pa-space-5) var(--pa-space-3); }
	.pa-post-hero__title { font-size: 26px; }
	.pa-post-hero__excerpt { font-size: 15px; }
}

.pa-post-body-section {
	padding: var(--pa-space-6) var(--pa-space-6) var(--pa-space-10);
}
.pa-post-body-section__inner {
	max-width: 760px;
	margin: 0 auto;
}
.pa-post-body {
	font-size: 17px;
	line-height: 1.75;
	color: var(--pa-text-primary);
}
/* Zero out browser defaults on all body children so the rules below have
   sole authority over vertical spacing. */
.pa-post-body p,
.pa-post-body ul,
.pa-post-body ol,
.pa-post-body h2,
.pa-post-body h3,
.pa-post-body blockquote,
.pa-post-body pre,
.pa-post-body img { margin: 0; }
/* Doubled-class selectors boost specificity to 0,2,0 — wins over any
   single-class-and-type reset above (0,1,1), so these adjacency rules
   apply universally. */
.pa-post-body.pa-post-body > * + * { margin-top: var(--pa-space-6); }
.pa-post-body.pa-post-body > * + h2 { margin-top: var(--pa-space-8); }
.pa-post-body.pa-post-body > * + h3 { margin-top: var(--pa-space-7); }
/* Source PA 2023 release notes use single-newline breaks throughout — WP's
   `wpautop` filter converts these to <br> tags inside paragraphs (rather
   than splitting into <p>...</p>). Style each <br> so the next line gets
   paragraph-like vertical space. Two techniques combined for max browser
   coverage: `display: block` + `margin-top` works in modern browsers; the
   `content: ""` pseudo-content ensures the <br> claims a renderable box.
   Bumped to space-6 (24px) so the visual rhythm matches separate-<p>
   paragraphs elsewhere in the body. */
.pa-post-body br {
	content: "";
	display: block;
	margin-top: var(--pa-space-6);
}
/* Belt-and-braces: in case some browser ignores margin on a styled <br>,
   give the line containing the <br> extra leading via line-height bump on
   the parent <p>. Won't matter when the rule above works — kicks in only
   if the <br>'s box-model styling is dropped. */
.pa-post-body p:has(br) { line-height: 2; }
.pa-post-body h2 {
	font-family: var(--pa-font-display);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
}
.pa-post-body h3 {
	font-size: 18px;
	font-weight: 700;
}
.pa-post-body ul,
.pa-post-body ol { padding-left: var(--pa-space-8); list-style-position: outside; }
.pa-post-body li + li { margin-top: var(--pa-space-2); }
.pa-post-body a {
	color: var(--pa-blue-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.pa-post-body a:hover { color: var(--pa-blue-dark); }
.pa-post-body img {
	max-width: 100%;
	height: auto;
	border-radius: var(--pa-radius-md);
}
.pa-post-body blockquote {
	padding: var(--pa-space-4) var(--pa-space-5);
	border-left: 3px solid var(--pa-blue-primary);
	background: var(--pa-bg-subtle);
	font-style: italic;
	color: var(--pa-text-secondary);
}
.pa-post-body code {
	padding: 2px 6px;
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: 4px;
	font-family: var(--pa-font-mono, monospace);
	font-size: 0.9em;
}
.pa-post-body pre {
	padding: var(--pa-space-4);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	overflow-x: auto;
}
.pa-post-body pre code {
	padding: 0;
	background: none;
	border: 0;
}
@media (max-width: 600px) {
	.pa-post-body-section { padding: var(--pa-space-6) var(--pa-space-5); }
	.pa-post-body { font-size: 15px; }
	.pa-post-body h2 { font-size: 20px; }
	.pa-post-body h3 { font-size: 17px; }
}

.pa-post-footer {
	padding: var(--pa-space-6);
	border-top: 1px solid var(--pa-border);
	background: var(--pa-bg-subtle);
}
.pa-post-footer__inner {
	max-width: 760px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--pa-space-4);
}
.pa-post-footer__tags,
.pa-post-footer__share {
	display: flex;
	align-items: center;
	gap: var(--pa-space-2);
	font-size: 13px;
	color: var(--pa-text-secondary);
}
.pa-post-footer__tags-label,
.pa-post-footer__share-label {
	font-weight: 600;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 11px;
}
.pa-post-footer__tags-list a {
	color: var(--pa-blue-primary);
	text-decoration: none;
	font-weight: 500;
}
.pa-post-footer__tags-list a:hover { color: var(--pa-blue-dark); }
.pa-post-footer__share-link {
	color: var(--pa-blue-primary);
	text-decoration: none;
	font-weight: 500;
}
.pa-post-footer__share-link:hover { color: var(--pa-blue-dark); }
@media (max-width: 600px) {
	.pa-post-footer__inner { flex-direction: column; align-items: flex-start; }
}

.pa-post-related {
	padding: var(--pa-space-6) var(--pa-space-6) var(--pa-space-8);
}
.pa-post-related__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-post-related__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-2);
}
.pa-post-related__cta {
	display: flex;
	justify-content: center;
	margin-top: var(--pa-space-5);
}
/* Tighten the section-header (label + h2 title) when used inside related
   posts — the default has generous breathing room that makes the cards
   feel orphaned below the title. */
.pa-post-related .pa-section-header { text-align: left; }
.pa-post-related .pa-section-header__label { margin-bottom: var(--pa-space-1); }
.pa-post-related .pa-section-header__title { font-size: 22px; margin: 0; }
/* Compact related-card variant: hide the excerpt and "Read more" link so
   the card shows just date + title. Keeps .pa-blog-card structure intact
   for the /news listing where the full card is still desirable. */
.pa-post-related .pa-blog-card__excerpt,
.pa-post-related .pa-blog-card__link {
	display: none;
}
@media (max-width: 920px) { .pa-post-related__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-post-related__grid { grid-template-columns: 1fr; } }

/* ---- Override Bricks .bricks-button defaults on news-page link-style buttons.
   The converter emits these as Bricks `button` elements (so Query Loop and
   dynamic-data work consistently), which auto-applies `.bricks-button` with
   default padding / background / border / pill radius / button text color.
   Strip ALL the button chrome and restore link styling explicitly — the
   .pa-post-hero__back etc. component-class rules below get overshadowed by
   Bricks button defaults on specificity, so we restate them here. */
.bricks-button.pa-post-hero__back,
.bricks-button.pa-blog-card__link,
.bricks-button.pa-blog-featured__link,
.bricks-button.pa-post-footer__share-link {
	background: transparent;
	border: 0;
	padding: 0;
	border-radius: 0;
	min-height: 0;
	box-shadow: none;
	text-decoration: none;
	display: inline-block;
	width: auto;
	font-family: inherit;
	font-weight: 600;
	letter-spacing: normal;
	text-transform: none;
}
.bricks-button.pa-post-hero__back {
	font-size: 13px;
	color: var(--pa-blue-primary);
	margin-bottom: var(--pa-space-4);
}
.bricks-button.pa-blog-card__link,
.bricks-button.pa-blog-featured__link {
	font-size: 13px;
	color: var(--pa-blue-primary);
	margin-top: var(--pa-space-2);
}
.bricks-button.pa-post-footer__share-link {
	font-size: 13px;
	font-weight: 500;
	color: var(--pa-blue-primary);
}
.bricks-button.pa-post-hero__back:hover,
.bricks-button.pa-blog-card__link:hover,
.bricks-button.pa-blog-featured__link:hover,
.bricks-button.pa-post-footer__share-link:hover {
	background: transparent;
	box-shadow: none;
	color: var(--pa-blue-dark);
}

/* ---- Bricks wraps inline-meant text-basic children (e.g. category / sep /
   date in the post hero meta row) in `<div class="brxe-text-basic">` which
   defaults to display: block. The parent flex container can't lay them out
   in a row when each child claims block-level full-width. Force the
   text-basic descendants of .pa-post-hero__meta to behave inline-flex. */
.pa-post-hero__meta > .brxe-text-basic,
.pa-post-hero__meta > div {
	display: inline-flex;
	align-items: center;
}

/* ---- Hide the "Tagged:" row when a post has no tags. The Bricks dynamic-
   data token `{post_terms_post_tag}` renders empty when no tags are set;
   without this rule the bare label "Tagged:" lingers awkwardly. */
.pa-post-footer__tags:has(.pa-post-footer__tags-list:empty) {
	display: none;
}
/* ...AND hide the entire footer section when tags are empty (since tags
   is now the only content in the footer). Otherwise the footer wrapper's
   padding + background + border-top still renders as a visible "empty
   strip" above the Recent posts section. */
.pa-post-footer:has(.pa-post-footer__tags-list:empty) {
	display: none;
}


/* ---- /about — Origin story ----
   Single-column narrative block with constrained width for readability. */

.pa-about-story {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-about-story__inner {
	max-width: 760px;
	margin: 0 auto;
}
.pa-about-story__body {
	margin-top: var(--pa-space-10);
	font-size: 17px;
	line-height: 1.75;
	color: var(--pa-text-secondary);
}
.pa-about-story__body p {
	margin: 0 0 var(--pa-space-5);
}
.pa-about-story__body p:last-child { margin-bottom: 0; }
.pa-about-story__body strong { color: var(--pa-text-primary); }


/* ---- /about — By the numbers ----
   4-column stat strip on a tinted band. Each stat is value + label. */

.pa-about-numbers {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-top: 1px solid var(--pa-border-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-about-numbers__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-about-numbers__grid {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-6);
	text-align: center;
}
.pa-about-numbers__stat {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-about-numbers__value {
	margin: 0;
	font-size: clamp(36px, 5vw, 56px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--pa-blue-primary);
}
.pa-about-numbers__label {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
@media (max-width: 768px) { .pa-about-numbers__grid { grid-template-columns: repeat(2, 1fr); } }


/* ---- /about — Differentiators ----
   3-card grid on white. Reuses the .pa-deploy card style philosophy. */

.pa-about-diff {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-about-diff__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-about-diff__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-about-diff__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-about-diff__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 24px;
	line-height: 1;
}
.pa-about-diff__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-about-diff__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
@media (max-width: 768px) { .pa-about-diff__grid { grid-template-columns: 1fr; } }


/* ---- /about — Office locations ----
   3-card grid for HQ + two European offices. Bg-subtle to break visual
   rhythm before the final CTA. */

.pa-about-offices {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-about-offices__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-about-offices__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-about-offices__card {
	padding: var(--pa-space-8);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-about-offices__flag {
	font-size: 28px;
	line-height: 1;
	display: inline-block;
	margin-bottom: var(--pa-space-3);
}
.pa-about-offices__city {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-about-offices__role {
	margin: 0 0 var(--pa-space-4);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-blue-primary);
}
.pa-about-offices__address {
	margin: 0;
	font-size: 14px;
	font-style: normal;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-about-offices__address-note {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-about-offices__address-note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
@media (max-width: 768px) { .pa-about-offices__grid { grid-template-columns: 1fr; } }


/* ---- Vertical landing pages — shared component family ----
   Used by /government, /healthcare, /financial-services, /legal. Each page
   reuses the same compliance-grid / security-stack / deploy-list / certs-table
   structure but populates them with vertical-specific copy and regulations.
   Earlier this lived under .pa-gov-* (only /government existed) — renamed
   to .pa-vert-* when the verticals expanded so future verticals don't have
   to fork the CSS. */

.pa-vert-compliance {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-vert-compliance__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-vert-compliance__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-vert-compliance__card {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.pa-vert-compliance__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-vert-compliance__badge {
	display: inline-block;
	margin-bottom: var(--pa-space-4);
	padding: 4px 12px;
	background: rgba(75, 144, 226, 0.12);
	color: var(--pa-blue-primary);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.pa-vert-compliance__badge--warm {
	background: rgba(229, 165, 10, 0.14);
	color: var(--pa-accent-orange);
}
.pa-vert-compliance__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--pa-text-primary);
}
.pa-vert-compliance__body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-vert-compliance__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-vert-compliance__link:hover { color: var(--pa-blue-dark); }
.pa-vert-compliance__card--featured {
	border: 1.5px solid var(--pa-blue-primary);
	box-shadow: 0 6px 18px color-mix(in srgb, var(--pa-accent-blue) 12%, transparent);
}
.pa-vert-compliance__note {
	margin-top: var(--pa-space-7);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-vert-compliance__note strong { color: var(--pa-text-primary); }

/* 2-col variant — used on /enterprise-unlimited's "Programs" section where
   only two cards (Home Use for Employees + Free Sponsored Version) need
   wider treatment than the standard 3-col grid. */
.pa-vert-compliance__grid--two {
	grid-template-columns: repeat(2, 1fr);
}

/* Feature list inside a compliance card — used inside larger 2-col cards
   where prose body + bulleted feature list both belong. Same check-bullet
   pattern as the global features list, scoped to compliance card padding. */
.pa-vert-compliance__list {
	margin: var(--pa-space-3) 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
}
.pa-vert-compliance__list li {
	position: relative;
	padding-left: calc(var(--pa-space-2) + 14px);
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-vert-compliance__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 700;
	color: var(--pa-blue-primary);
}

@media (max-width: 768px) {
	.pa-vert-compliance__grid,
	.pa-vert-compliance__grid--two { grid-template-columns: 1fr; }
}


/* ---- /government — Security stack (3×2 feature grid) ---- */

.pa-vert-security {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-vert-security__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-vert-security__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-vert-security__item {
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-vert-security__item-title {
	margin: 0 0 var(--pa-space-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-vert-security__item p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
@media (max-width: 920px) { .pa-vert-security__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-vert-security__grid { grid-template-columns: 1fr; } }


/* ---- /government — Deployment list ---- */

.pa-vert-deploy {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-vert-deploy__inner {
	max-width: 900px;
	margin: 0 auto;
}
.pa-vert-deploy__list {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-4);
}
.pa-vert-deploy__list li {
	position: relative;
	padding: var(--pa-space-5) var(--pa-space-6) var(--pa-space-5) var(--pa-space-10);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	font-size: 15px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-vert-deploy__list li::before {
	content: '\2713';
	position: absolute;
	left: var(--pa-space-5);
	top: var(--pa-space-5);
	color: var(--pa-blue-primary);
	font-weight: 700;
	font-size: 16px;
}
.pa-vert-deploy__list strong { color: var(--pa-text-primary); }
.pa-vert-deploy__list code {
	padding: 1px 6px;
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-sm);
	font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
	font-size: 13px;
	color: var(--pa-text-primary);
}


/* ---- /government — Volume-pricing anchor (zero-height marker for sub-nav) ----
   /pricing's volume-pricing section already has id="volume-pricing", but on
   /government we put it inside the @included partial, so we need a separate
   anchor right above the include for the "Pricing" sub-nav link to work. */

.pa-vert-pricing-anchor {
	display: block;
	height: 0;
	scroll-margin-top: 80px;
}


/* ---- /government — FIPS validation certificates table ---- */

.pa-vert-certs {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-vert-certs__inner {
	max-width: 800px;
	margin: 0 auto;
}
.pa-vert-certs__table-wrap {
	margin-top: var(--pa-space-10);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	overflow-x: auto;
}
.pa-vert-certs__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.pa-vert-certs__table th,
.pa-vert-certs__table td {
	padding: 12px 20px;
	text-align: left;
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-vert-certs__table thead th {
	background: var(--pa-bg-subtle);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-vert-certs__table tbody th {
	font-weight: 600;
	color: var(--pa-text-primary);
}
.pa-vert-certs__table tbody td {
	color: var(--pa-text-secondary);
}
.pa-vert-certs__table tbody tr:last-child th,
.pa-vert-certs__table tbody tr:last-child td {
	border-bottom: none;
}
.pa-vert-certs__table a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-vert-certs__table a:hover {
	color: var(--pa-blue-dark);
	text-decoration: underline;
}
.pa-vert-certs__note {
	margin: var(--pa-space-7) 0 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
	text-align: center;
}
.pa-vert-certs__note a { color: var(--pa-blue-primary); font-weight: 600; }


/* ---- /government — Procurement contact (dark band, before help) ---- */

.pa-vert-contact {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-alt) 100%);
	color: rgba(255, 255, 255, 0.85);
	text-align: center;
}
.pa-vert-contact__inner {
	max-width: 800px;
	margin: 0 auto;
}
.pa-vert-contact__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: var(--pa-space-8);
}
.pa-vert-contact__direct {
	list-style: none;
	margin: var(--pa-space-8) 0 0;
	padding: var(--pa-space-6) 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.78);
}
.pa-vert-contact__direct strong { color: #fff; }
.pa-vert-contact__direct a {
	color: var(--pa-accent-blue-light);
	font-weight: 600;
	text-decoration: none;
}
.pa-vert-contact__direct a:hover { color: #fff; }


/* ---- /contact — Hero modifier (compact) ----
   /contact uses a smaller hero than /download or /enterprise since the
   page is shorter and gets straight to the directory + form. */

.pa-page-hero--compact {
	padding-top: var(--pa-space-16);
	padding-bottom: var(--pa-space-10);
}


/* ---- /contact — Directory + Form section (2-column) ----
   Left column: contact directory (sales / general / resellers / support
   routing / phone / office address). Right column: multi-purpose contact
   form. Both stack on mobile. */

.pa-contact {
	padding: var(--pa-space-16) var(--pa-space-6) var(--pa-space-16);
	background: #fff;
}
.pa-contact__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-12);
	align-items: start;
}
.pa-contact__directory .pa-section-header {
	text-align: left;
	margin-bottom: var(--pa-space-7);
}
.pa-contact__list {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-6);
}
.pa-contact__row {
	padding-bottom: var(--pa-space-5);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-contact__row:last-child {
	border-bottom: none;
}
.pa-contact__row-label {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-blue-primary);
}
.pa-contact__row-value {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	color: var(--pa-text-primary);
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pa-contact__row-value a {
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-contact__row-value a:hover {
	color: var(--pa-blue-dark);
	text-decoration: underline;
}
.pa-contact__row-note {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
.pa-contact__address {
	margin: 0;
	font-size: 14px;
	font-weight: 400;
	font-style: normal;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}

/* Contact form — designed for light backgrounds (unlike pa-quote-form
   which is for dark). Card-style with subtle border, white inputs. */
.pa-contact-form {
	padding: var(--pa-space-9);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-xl);
}
.pa-contact-form__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 22px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-contact-form__subtitle {
	margin: 0 0 var(--pa-space-6);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-contact-form__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: var(--pa-space-4);
}
.pa-contact-form__label {
	font-size: 12px;
	font-weight: 600;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-contact-form__label-req::after {
	content: ' *';
	color: var(--pa-accent-orange);
}
.pa-contact-form__input,
.pa-contact-form__select,
.pa-contact-form__textarea {
	width: 100%;
	padding: 12px 14px;
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-sm);
	font-family: var(--pa-font-body);
	font-size: 14px;
	color: var(--pa-text-primary);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pa-contact-form__input::placeholder,
.pa-contact-form__textarea::placeholder {
	color: var(--pa-text-muted);
}
.pa-contact-form__input:focus,
.pa-contact-form__select:focus,
.pa-contact-form__textarea:focus {
	outline: none;
	border-color: var(--pa-blue-primary);
	box-shadow: 0 0 0 3px rgba(75, 144, 226, 0.15);
}
.pa-contact-form__select {
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23666' d='M6 8L0 0h12z'/></svg>");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 36px;
}
.pa-contact-form__textarea {
	min-height: 120px;
	resize: vertical;
	line-height: 1.5;
}
.pa-contact-form__submit {
	width: 100%;
	margin-top: var(--pa-space-3);
}
.pa-contact-form__note {
	margin: var(--pa-space-4) 0 0;
	font-size: 12px;
	line-height: 1.6;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-contact-form__note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
@media (max-width: 920px) {
	.pa-contact__inner { grid-template-columns: 1fr; }
}


/* ---- /contact — Special-purpose paths (Volume / Education / Reseller) ----
   3-card grid mirroring the .pa-help layout style; replaces the live
   page's three separate text blocks for the three high-volume contact
   reasons. */

.pa-contact-paths {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-contact-paths__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-contact-paths__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-contact-paths__card {
	padding: var(--pa-space-8);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-contact-paths__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-contact-paths__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 22px;
	line-height: 1;
}
.pa-contact-paths__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-contact-paths__body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-contact-paths__body strong { color: var(--pa-text-primary); }
.pa-contact-paths__body a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-contact-paths__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-contact-paths__link:hover { color: var(--pa-blue-dark); }
@media (max-width: 920px) { .pa-contact-paths__grid { grid-template-columns: 1fr; } }


/* ---- /enterprise — Industries served strip ----
   Six verticals shown as icon + title + tagline, in a 3×2 grid on
   desktop. Reassures procurement that PA serves their specific
   compliance/use-case context. */

.pa-industries {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-industries__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-industries__lead {
	margin: 0 0 var(--pa-space-8);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
	text-align: center;
}
.pa-industries__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
}
.pa-industries__item {
	display: flex;
	gap: var(--pa-space-4);
	padding: var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.pa-industries__item:hover {
	transform: translateY(-2px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-industries__icon {
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	color: var(--pa-blue-primary);
}
.pa-industries__body { min-width: 0; }
.pa-industries__title {
	margin: 0 0 4px;
	font-size: 15px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-industries__sub {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
@media (max-width: 920px) { .pa-industries__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 540px) { .pa-industries__grid { grid-template-columns: 1fr; } }


/* ---- /enterprise — Subscription-vs-perpetual contrast banner ----
   Sharp, opinionated callout positioned right after the tier cards.
   Light background with a strong title and three reinforcing bullets.
   This is the rebuttal to subscription-fatigued procurement teams. */

.pa-vs-subs {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, #fff 0%, var(--pa-bg-subtle) 100%);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-vs-subs__inner {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}
.pa-vs-subs__label {
	display: inline-block;
	margin-bottom: var(--pa-space-3);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--pa-blue-primary);
}
.pa-vs-subs__title {
	margin: 0 0 var(--pa-space-5);
	font-size: clamp(26px, 3.5vw, 38px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-vs-subs__title-accent {
	color: var(--pa-blue-primary);
}
.pa-vs-subs__body {
	max-width: 720px;
	margin: 0 auto var(--pa-space-7);
	font-size: 16px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-vs-subs__points {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	text-align: left;
}
.pa-vs-subs__points li {
	position: relative;
	padding: var(--pa-space-5);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-vs-subs__points strong {
	display: block;
	margin-bottom: 4px;
	color: var(--pa-text-primary);
	font-size: 15px;
}
@media (max-width: 768px) {
	.pa-vs-subs__points { grid-template-columns: 1fr; }
}


/* ---- /enterprise — PA Select for Enterprise ----
   Two-column layout: "What's included" on the left, "Renewal economics"
   (with the TCO comparison) on the right. White background to break the
   visual rhythm between Deploy (bg-subtle) and Compliance (dark). */

.pa-select-ent {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-select-ent__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-select-ent__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-select-ent__col {
	padding: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-select-ent__col-title {
	margin: 0 0 var(--pa-space-5);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-select-ent__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-select-ent__list li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-select-ent__list li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-blue-primary);
	font-weight: 700;
}
.pa-select-ent__list strong { color: var(--pa-text-primary); }
.pa-select-ent__caveat {
	margin: var(--pa-space-4) 0 0;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	color: var(--pa-text-muted);
}
@media (max-width: 768px) {
	.pa-select-ent__grid { grid-template-columns: 1fr; }
}


/* ---- /enterprise — Customer logo strip ----
   Lives between the hero and the tier cards. Real customer logos render
   as bitmap PNGs from the PA CDN. Theme normalization: grayscale + muted
   opacity by default so the multicolor real-brand logos still feel
   coherent against the v2 design; full color on hover. */

.pa-trust-logos {
	padding: var(--pa-space-16) var(--pa-space-6) var(--pa-space-12);
	background: #fff;
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-trust-logos__inner {
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.pa-trust-logos__lead {
	margin: 0 0 var(--pa-space-8);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-trust-logos__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: var(--pa-space-6) var(--pa-space-5);
	align-items: center;
	justify-items: center;
}
.pa-trust-logos__item {
	max-width: 130px;
	max-height: 64px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.7;
	transition: filter 0.3s ease, opacity 0.3s ease;
}
.pa-trust-logos__item:hover {
	filter: grayscale(0);
	opacity: 1;
}
@media (max-width: 920px) { .pa-trust-logos__grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 600px) { .pa-trust-logos__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 380px) { .pa-trust-logos__grid { grid-template-columns: repeat(2, 1fr); } }


/* ---- /enterprise — Deployment & lockdown grid ----
   3×2 card grid on desktop, 2-up on tablet, single column on mobile.
   Reuses the .pa-advantage-card styling philosophy but with a cleaner
   icon-on-top layout suitable for IT-flavored content. */

.pa-deploy {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-deploy__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-deploy__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-10);
}
.pa-deploy__card {
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.pa-deploy__card:hover {
	transform: translateY(-3px);
	border-color: var(--pa-blue-primary);
	box-shadow: var(--pa-shadow-md);
}
.pa-deploy__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var(--pa-space-4);
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-md);
	font-size: 20px;
	line-height: 1;
}
.pa-deploy__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-deploy__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-deploy__body code {
	padding: 1px 6px;
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-sm);
	font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
	font-size: 13px;
	color: var(--pa-text-primary);
}
.pa-deploy__cta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--pa-space-4);
	margin-top: var(--pa-space-12);
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	text-align: center;
}
.pa-deploy__cta-text {
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--pa-text-primary);
}
@media (max-width: 920px) { .pa-deploy__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pa-deploy__grid { grid-template-columns: 1fr; } }


/* ---- /enterprise — Compliance & trust ----
   Dark section with two big panels (FIPS / Since 1998), then a list of
   compliance bullet points below. Echoes the homepage .pa-security
   pattern but tuned for procurement copy rather than feature pitch. */

.pa-compliance {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-dark-bg-alt);
	color: rgba(255, 255, 255, 0.85);
}
.pa-compliance__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-compliance__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-10);
}
.pa-compliance__panel {
	padding: var(--pa-space-9);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--pa-radius-xl);
}
.pa-compliance__badge {
	display: inline-block;
	padding: 4px 12px;
	margin-bottom: var(--pa-space-4);
	background: rgba(75, 144, 226, 0.18);
	color: var(--pa-accent-blue-light);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.pa-compliance__badge--warm {
	background: rgba(229, 165, 10, 0.18);
	color: var(--pa-accent-orange);
}
.pa-compliance__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 21px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: #fff;
}
.pa-compliance__body {
	margin: 0 0 var(--pa-space-5);
	font-size: 15px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
}
.pa-compliance__link {
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-accent-blue-light);
	text-decoration: none;
}
.pa-compliance__link:hover { color: #fff; }
.pa-compliance__points {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-4) var(--pa-space-8);
	font-size: 14px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.78);
}
.pa-compliance__points li {
	position: relative;
	padding-left: 22px;
}
.pa-compliance__points li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-compliance__points strong { color: #fff; }
@media (max-width: 768px) {
	.pa-compliance__grid,
	.pa-compliance__points { grid-template-columns: 1fr; }
}


/* ---- /enterprise — Quote section (copy + form, 2-column) ----
   Dark background matches the homepage section-10 pattern that
   .pa-quote-form was originally designed for (translucent white panel +
   white text). Two-column on desktop, stacked on mobile. */

.pa-quote-section {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(160deg, var(--pa-dark-bg) 0%, var(--pa-dark-bg-alt) 100%);
	color: rgba(255, 255, 255, 0.85);
}
.pa-quote-section__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: var(--pa-space-12);
	align-items: start;
}
.pa-quote-section__copy .pa-section-header {
	text-align: left;
}
.pa-quote-section__copy .pa-section-header__title {
	color: #fff;
}
.pa-quote-section__copy .pa-section-header__subtitle {
	color: rgba(255, 255, 255, 0.78);
}
.pa-quote-section__bullets {
	list-style: none;
	margin: var(--pa-space-6) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-quote-section__bullets li {
	position: relative;
	padding-left: 22px;
	font-size: 15px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.78);
}
.pa-quote-section__bullets li::before {
	content: '\2713';
	position: absolute;
	left: 0;
	top: 1px;
	color: var(--pa-accent-green);
	font-weight: 700;
}
.pa-quote-section__bullets strong { color: #fff; }

.pa-quote-section__direct {
	margin-top: var(--pa-space-8);
	padding-top: var(--pa-space-6);
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.pa-quote-section__direct-label {
	margin: 0 0 var(--pa-space-2);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--pa-accent-blue-light);
}
.pa-quote-section__direct-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-2) var(--pa-space-6);
	font-size: 14px;
	color: rgba(255, 255, 255, 0.78);
}
.pa-quote-section__direct-list strong { color: #fff; }
.pa-quote-section__direct-list a {
	color: var(--pa-accent-blue-light);
	text-decoration: none;
	font-weight: 600;
}
.pa-quote-section__direct-list a:hover { color: #fff; }

@media (max-width: 920px) {
	.pa-quote-section__inner { grid-template-columns: 1fr; }
}


/* ---- Thank-you-for-downloading page ----
   Compact status hero + 3-step strip + slim help row. Pricing teaser block
   reuses .pa-final-cta from section 12. */

/* On thank-you-for-downloading-* pages, hide the nav's "Free Download" CTA
   (desktop button + mobile menu link). The user just downloaded — the CTA
   is redundant AND its position competes with the dashed-arrow target that
   gestures toward the browser's downloads icon. The :has() selector keys
   off the unique .pa-thanks-hero section so the rule self-scopes without
   needing a body-class hook from WordPress. */
body:has(.pa-thanks-hero) .pa-v2-nav__cta,
body:has(.pa-thanks-hero) .pa-v2-nav__item--download {
	display: none;
}

.pa-thanks-hero {
	position: relative;
	padding: var(--pa-space-30) var(--pa-space-6) var(--pa-space-12);
	background: linear-gradient(
		160deg,
		var(--pa-gradient-hero-start) 0%,
		#ffffff 60%,
		var(--pa-gradient-hero-end) 100%
	);
	text-align: center;
	overflow: hidden;
}
/* Curved dashed arrow gesturing past the page UI to the browser's
   download icon at the very top-right of the viewport. The tip needs
   to reach above the fixed nav (64px tall, z-index 100), so the arrow
   is fixed-positioned with a higher z-index than the nav. pointer-events
   is none so it never blocks clicks. Hidden on narrow viewports. */
.pa-thanks-hero__arrow {
	position: fixed;
	top: 4px;
	right: 96px; /* tip lands ~3 buttons in from corner — at the Chrome Downloads icon */
	width: 220px;
	height: 200px;
	color: var(--pa-blue-primary);
	opacity: 0.9;
	pointer-events: none;
	z-index: 110;
	animation: pa-thanks-arrow-bob 2.4s ease-in-out infinite;
}
@keyframes pa-thanks-arrow-bob {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-6px); }
}
.pa-thanks-hero__cue {
	position: fixed;
	top: 90px;
	right: 320px;
	margin: 0;
	max-width: 220px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--pa-blue-dark);
	text-align: right;
	z-index: 110;
	pointer-events: none;
}
@media (max-width: 1100px) {
	.pa-thanks-hero__arrow,
	.pa-thanks-hero__cue { display: none; }
}
.pa-thanks-hero__inner {
	max-width: 820px;
	margin: 0 auto;
}
.pa-thanks-hero__pulse {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--pa-accent-green);
	box-shadow: 0 0 0 0 rgba(40, 200, 64, 0.55);
	animation: pa-thanks-pulse 1.6s ease-out infinite;
}
@keyframes pa-thanks-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(40, 200, 64, 0.55); }
	70%  { box-shadow: 0 0 0 10px rgba(40, 200, 64, 0); }
	100% { box-shadow: 0 0 0 0 rgba(40, 200, 64, 0); }
}
.pa-thanks-hero__title {
	margin: var(--pa-space-3) 0 var(--pa-space-5);
	font-size: clamp(28px, 4vw, 44px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-thanks-hero__subtitle {
	max-width: 640px;
	margin: 0 auto var(--pa-space-4);
	font-size: 16px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-thanks-hero__subtitle a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-thanks-hero__meta {
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}

.pa-thanks-guide {
	/* Asymmetric top/bottom — header was removed so the steps tuck right
	   under the hero and the section reads as one composition with the
	   hero above it. Bottom keeps the standard --pa-space-16 rhythm so
	   the next section (Help) gets normal breathing room. */
	padding: var(--pa-space-6) var(--pa-space-6) var(--pa-space-16);
	background: #fff;
}
.pa-thanks-guide__inner {
	max-width: 1080px;
	margin: 0 auto;
}
/* Three step cards in a row on desktop, stacked on mobile. Cards are
   centered vertical layouts: number badge → icon → title → one-line body.
   Ashampoo-style brevity — each card carries one imperative + one short
   sentence, no deep links or compliance footnotes (those moved to the
   page subtitle / help section). */
.pa-thanks-guide__list {
	list-style: none;
	margin: var(--pa-space-10) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--pa-space-4);
}
@media (min-width: 900px) {
	.pa-thanks-guide__list {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--pa-space-5);
	}
}
.pa-thanks-guide__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: var(--pa-space-4);
	padding: var(--pa-space-7) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-thanks-guide__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--pa-blue-primary);
	color: #fff;
	border-radius: var(--pa-radius-pill);
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}
.pa-thanks-guide__graphic {
	width: 72px;
	height: 72px;
	color: var(--pa-blue-primary);
	flex-shrink: 0;
}
.pa-thanks-guide__body {
	min-width: 0;
	max-width: 32ch;
}
.pa-thanks-guide__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--pa-text-primary);
}
.pa-thanks-guide__body p {
	margin: 0;
	font-size: 15px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-thanks-guide__body strong { color: var(--pa-text-primary); }
.pa-thanks-guide__body a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-thanks-guide__body a:hover { color: var(--pa-blue-dark); }
.pa-thanks-guide__body code {
	padding: 2px 6px;
	background: rgba(30, 115, 190, 0.08);
	border-radius: var(--pa-radius-sm);
	font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
	font-size: 13px;
	color: var(--pa-text-primary);
}
.pa-thanks-guide__note {
	padding: var(--pa-space-3) var(--pa-space-4);
	background: rgba(30, 115, 190, 0.06);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-sm);
	font-size: 14px !important;
}


/* =============================================================================
 * Bricks compatibility shims
 * Bricks defaults `.brxe-block { display: flex; flex-direction: column }`,
 * which collapses our horizontal flex layouts. Force row direction on the
 * usual suspects.
 * ========================================================================== */

.pa-v2-nav__inner,
.pa-v2-nav__links,
.pa-v2-nav__actions,
.pa-hero__badge,
.pa-hero__actions,
.pa-hero__stats,
.pa-trust__items,
.pa-trust__items li,
.pa-licensing__steps,
.pa-licensing__arrow,
.pa-price-card__amount,
.pa-price-compare-banner__row,
.pa-encrypt-item,
.pa-security-detail,
.pa-enterprise__bullet,
.pa-subscribe__form,
.pa-page-hero__actions,
.pa-pricing-hero__actions,
.pa-pricing-strip__actions,
.pa-final-cta__actions,
.pa-footer__bottom,
.pa-codec-metrics {
	flex-direction: row;
}

/* Bricks also defaults .brxe-block to `flex-wrap: wrap`, which on narrow
   viewports breaks the nav into 3 stacked rows (logo / lang switcher /
   hamburger). Force nowrap so the 64px nav stays one row, and constrain
   the logo to its natural width so it doesn't claim the full row and
   push the actions block onto a second line. */
.pa-v2-nav__inner,
.pa-v2-nav__actions {
	flex-wrap: nowrap;
}
.pa-v2-nav__logo {
	flex: 0 0 auto;
	width: auto;
	max-width: max-content;
}
@media (max-width: 480px) {
	.pa-v2-nav__logo-img {
		max-height: 32px;
	}
}

.pa-v2-nav__cta,
.pa-btn,
.pa-price-card__cta,
.pa-quote-form__submit,
.pa-subscribe__submit {
	flex-direction: row;
	white-space: nowrap;
	max-width: 100%;
}
/* Long-text buttons (e.g., "Email ordering for licensing", "Buy Professional ($34.95) — includes PACL")
   would overflow narrow viewports if nowrap stayed on. Allow wrapping below 480px so the button
   fits its parent without horizontal scroll. */
@media (max-width: 480px) {
	.pa-btn {
		white-space: normal;
		text-align: center;
	}
}

/* Cards inside grids fill the full row height. */
.pa-advantage-card,
.pa-price-card,
.pa-codec-card,
.pa-licensing-step {
	height: 100%;
}

.pa-hero__stat {
	width: auto;
}

/* Hero stats horizontal layout — chained-class selectors so we win over
   Bricks's `.brxe-block { display: flex; flex-direction: column }` default
   regardless of CSS load order. Without these, each `.pa-hero__stat` flex
   item gets full-row width and the row collapses to 4 stacked items. */
.brxe-block.pa-hero__stats {
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
.brxe-block.pa-hero__stat,
.brxe-text-basic.pa-hero__stat {
	flex: 0 1 auto;
	width: auto;
	min-width: 0;
}

.pa-contents {
	display: contents;
}

/* =============================================================================
 * /security PAGE — compliance trust page. Procurement-driven content.
 * Distinct from .pa-security (homepage section); these are page-scoped classes.
 * ============================================================================= */

.pa-security-summary,
.pa-security-validations,
.pa-security-crypto,
.pa-security-formats,
.pa-security-disclosure,
.pa-security-docs {
	padding: var(--pa-space-16) var(--pa-space-6);
}
.pa-security-summary__inner,
.pa-security-validations__inner,
.pa-security-crypto__inner,
.pa-security-formats__inner,
.pa-security-disclosure__inner,
.pa-security-docs__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.pa-security-summary { background: var(--pa-bg-subtle); }
.pa-security-validations { background: #fff; }
.pa-security-crypto { background: var(--pa-bg-subtle); }
.pa-security-formats { background: #fff; }
.pa-security-disclosure { background: var(--pa-bg-subtle); }
.pa-security-docs { background: #fff; }

/* Summary cards */
.pa-security-summary__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-security-summary__card {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	box-shadow: var(--pa-shadow-sm);
}
.pa-security-summary__card--featured {
	border-color: var(--pa-blue-primary);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--pa-accent-blue) 12%, transparent);
}
.pa-security-summary__badge {
	align-self: flex-start;
	padding: 4px var(--pa-space-3);
	background: color-mix(in srgb, var(--pa-accent-blue) 10%, transparent);
	border-radius: var(--pa-radius-pill);
	font-family: var(--pa-font-mono, monospace);
	font-size: 11px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.pa-security-summary__title {
	margin: var(--pa-space-3) 0 var(--pa-space-2);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-security-summary__body {
	flex: 1;
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-security-summary__link {
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-security-summary__link:hover {
	text-decoration: underline;
}

/* Reusable security-page table */
.pa-security-table {
	width: 100%;
	margin-top: var(--pa-space-8);
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	overflow: hidden;
}
.pa-security-table th,
.pa-security-table td {
	padding: var(--pa-space-3) var(--pa-space-4);
	text-align: left;
	border-bottom: 1px solid var(--pa-border-subtle);
	vertical-align: top;
}
.pa-security-table thead th {
	background: var(--pa-bg-subtle);
	font-weight: 700;
	font-size: 12px;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.pa-security-table tbody th {
	font-weight: 600;
	color: var(--pa-text-primary);
	white-space: nowrap;
}
.pa-security-table tbody tr:last-child th,
.pa-security-table tbody tr:last-child td {
	border-bottom: none;
}
.pa-security-validations__note {
	margin-top: var(--pa-space-6);
	padding: var(--pa-space-5);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}

/* Crypto stack cards */
.pa-security-crypto__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-security-crypto__card {
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-security-crypto__title {
	margin: 0 0 var(--pa-space-4);
	padding-bottom: var(--pa-space-3);
	border-bottom: 1px solid var(--pa-border-subtle);
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-security-crypto__list {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
}
.pa-security-crypto__list > div {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: var(--pa-space-2);
	font-size: 13px;
}
.pa-security-crypto__list dt {
	font-weight: 600;
	color: var(--pa-text-secondary);
}
.pa-security-crypto__list dd {
	margin: 0;
	color: var(--pa-text-primary);
}

/* Formats callout */
.pa-security-formats__callout {
	display: block;
	margin-top: var(--pa-space-6);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: color-mix(in srgb, var(--pa-accent-blue) 5%, transparent);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 18%, transparent);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}

/* Disclosure cards */
.pa-security-disclosure__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-9);
}
.pa-security-disclosure__card {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	padding: var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
}
.pa-security-disclosure__icon {
	font-size: 24px;
}
.pa-security-disclosure__title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-security-disclosure__body {
	margin: 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-security-disclosure__advisories {
	margin-top: var(--pa-space-7);
	padding: var(--pa-space-6);
	background: #fff;
	border: 1px dashed var(--pa-border);
	border-radius: var(--pa-radius-md);
}
.pa-security-disclosure__advisories h3 {
	margin: 0 0 var(--pa-space-2);
	font-size: 15px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-security-disclosure__advisories p {
	margin: 0;
	font-size: 13px;
	color: var(--pa-text-secondary);
}

/* Docs grid */
.pa-security-docs__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-security-docs__item {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-md);
}
.pa-security-docs__title {
	margin: 0 0 var(--pa-space-4);
	padding-bottom: var(--pa-space-3);
	border-bottom: 1px solid var(--pa-border);
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-security-docs__list {
	margin: 0 0 var(--pa-space-4);
	padding-left: var(--pa-space-5);
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-primary);
}
.pa-security-docs__email {
	margin: 0;
	font-size: 13px;
	color: var(--pa-text-secondary);
}

/* Mobile */
@media (max-width: 920px) {
	.pa-security-summary__grid,
	.pa-security-crypto__grid,
	.pa-security-disclosure__grid,
	.pa-security-docs__grid {
		grid-template-columns: 1fr;
	}
	.pa-security-table {
		display: block;
		overflow-x: auto;
	}
}

/* =============================================================================
 * /privacy, /eula, /terms — long-form legal pages. Reading-optimized:
 * narrower measure, larger paragraph spacing, anchored sections that line up
 * with the sticky sub-nav.
 * ============================================================================= */

.pa-legal {
	padding: var(--pa-space-12) var(--pa-space-6) var(--pa-space-16);
	background: #fff;
}
.pa-legal__inner {
	max-width: 820px;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.75;
	color: var(--pa-text-primary);
}
.pa-legal__intro {
	padding: var(--pa-space-6) var(--pa-space-7);
	margin-bottom: var(--pa-space-8);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
}
.pa-legal__intro p {
	margin: 0 0 var(--pa-space-3);
	font-size: 15px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-legal__intro p:last-child {
	margin-bottom: 0;
}
.pa-legal__draft-banner {
	max-width: 820px;
	margin: var(--pa-space-7) auto 0;
	padding: var(--pa-space-4) var(--pa-space-6);
	background: color-mix(in srgb, #f5a623 12%, transparent);
	border: 1px solid color-mix(in srgb, #f5a623 35%, transparent);
	border-left-width: 4px;
	border-radius: var(--pa-radius-sm);
	font-size: 14px;
	line-height: 1.6;
	color: #a26310;
}
.pa-legal__draft-banner strong {
	color: #6f410a;
}
.pa-legal__section {
	scroll-margin-top: 96px;
	margin-bottom: var(--pa-space-9);
	padding-bottom: var(--pa-space-7);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-legal__section:last-of-type {
	border-bottom: none;
}
.pa-legal__h2 {
	margin: 0 0 var(--pa-space-4);
	font-family: var(--pa-font-display);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--pa-text-primary);
	letter-spacing: -0.01em;
}
.pa-legal__h3 {
	margin: var(--pa-space-6) 0 var(--pa-space-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-legal__section p {
	margin: 0 0 var(--pa-space-4);
}
.pa-legal__list {
	margin: var(--pa-space-3) 0 var(--pa-space-5);
	padding-left: var(--pa-space-6);
}
.pa-legal__list li {
	margin-bottom: var(--pa-space-3);
	line-height: 1.7;
}
.pa-legal__address {
	display: block;
	margin: var(--pa-space-4) 0;
	padding: var(--pa-space-5) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-sm);
	font-style: normal;
	font-size: 15px;
	line-height: 1.7;
}
.pa-legal__related {
	margin-top: var(--pa-space-9);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-md);
	font-size: 14px;
}
.pa-legal__related h3 {
	margin: 0 0 var(--pa-space-3);
	font-size: 13px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
.pa-legal__related ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-2) var(--pa-space-5);
}
.pa-legal__related a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-legal__related a:hover {
	text-decoration: underline;
}

@media (max-width: 720px) {
	.pa-legal__inner {
		font-size: 15px;
	}
	.pa-legal__h2 {
		font-size: 22px;
	}
}

/* =============================================================================
 * Product pages — /standard, /professional, /toolbox, /powerarchiver-command-line/
 * Shared template: hero (copy + highlights aside) → "What's included" → feature
 * deep-dive → use cases → buy block → edition compare → FAQ → final CTA.
 * ============================================================================= */

.pa-product-hero {
	padding: var(--pa-space-16) var(--pa-space-6) var(--pa-space-12);
	background: linear-gradient(160deg, var(--pa-bg-subtle) 0%, #fff 70%);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-product-hero__inner {
	/* Capped narrower than the global container so wide screens don't sprawl;
	   on >1100 viewports the hero stops growing and centers in the page. */
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr);
	gap: var(--pa-space-9);
	align-items: center;
}
.pa-product-hero__copy {
	max-width: 620px;
}
.pa-product-hero__edition-pill {
	display: inline-block;
	padding: 6px var(--pa-space-3);
	background: color-mix(in srgb, var(--pa-accent-blue) 10%, transparent);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 25%, transparent);
	border-radius: var(--pa-radius-pill);
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.pa-product-hero__edition-pill--featured {
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	border-color: transparent;
	color: #fff;
}
.pa-product-hero__title {
	margin: var(--pa-space-4) 0 var(--pa-space-4);
	font-family: var(--pa-font-display);
	font-size: 42px;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--pa-text-primary);
}
.pa-product-hero__subtitle {
	margin: 0;
	font-size: 17px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-product-hero__price-row {
	display: flex;
	align-items: baseline;
	gap: var(--pa-space-3);
	margin: var(--pa-space-6) 0 var(--pa-space-4);
}
.pa-product-hero__price {
	font-family: var(--pa-font-display);
	font-size: 36px;
	font-weight: 800;
	color: var(--pa-text-primary);
}
/* "/seat" suffix on Enterprise price — small subdued text inline with the
   big number, matches the same pattern in .pa-pricing-strip__tier-price-suffix. */
.pa-product-hero__price-suffix {
	font-size: 16px;
	font-weight: 600;
	color: var(--pa-text-muted);
	letter-spacing: 0;
}
/* Tagline line below the H1 product name. H1 carries the product identity
   ("PowerArchiver Business"), tagline carries the value-prop hook ("Compress,
   encrypt, and exchange — without the bloat"). Sits between H1 and the
   longer descriptive subtitle. */
.pa-product-hero__tagline {
	margin: var(--pa-space-2) 0 var(--pa-space-3);
	font-size: clamp(17px, 1.6vw, 20px);
	font-weight: 500;
	line-height: 1.35;
	color: var(--pa-text-secondary);
	letter-spacing: -0.005em;
}
.pa-product-hero__price-meta {
	font-size: 13px;
	color: var(--pa-text-muted);
}
.pa-product-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-3);
	margin-bottom: var(--pa-space-3);
}
.pa-product-hero__trial-link {
	display: inline-block;
	margin-top: var(--pa-space-2);
	font-size: 14px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-product-hero__trial-link:hover {
	text-decoration: underline;
}
.pa-product-hero__cli-note {
	margin: var(--pa-space-4) 0 0;
	padding: var(--pa-space-3) var(--pa-space-4);
	background: color-mix(in srgb, var(--pa-accent-blue) 5%, transparent);
	border-left: 3px solid var(--pa-blue-primary);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-product-hero__highlights {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-3);
}
.pa-product-hero__highlight {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: var(--pa-space-5) var(--pa-space-5);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	box-shadow: var(--pa-shadow-sm);
}
.pa-product-hero__highlight-num {
	font-family: var(--pa-font-display);
	font-size: 20px;
	font-weight: 800;
	color: var(--pa-blue-primary);
	letter-spacing: -0.01em;
}
.pa-product-hero__highlight-label {
	font-size: 12px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}

/* "What's included" section */
.pa-product-included {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-product-included__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-product-pills {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-2);
	margin: var(--pa-space-7) 0 0;
	padding: 0;
	list-style: none;
}
.pa-product-pills li {
	padding: 8px var(--pa-space-4);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border-subtle);
	border-radius: var(--pa-radius-pill);
	font-size: 13px;
	font-weight: 500;
	color: var(--pa-text-primary);
}
.pa-product-pills--featured li {
	background: color-mix(in srgb, var(--pa-accent-blue) 6%, transparent);
	border-color: color-mix(in srgb, var(--pa-accent-blue) 25%, transparent);
	color: var(--pa-blue-primary);
	font-weight: 600;
}
.pa-product-pills--muted li {
	background: var(--pa-bg-subtle);
	color: var(--pa-text-secondary);
}
.pa-product-included__split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-9);
	margin-top: var(--pa-space-8);
}
.pa-product-included__col-title {
	margin: 0 0 var(--pa-space-2);
	padding-bottom: var(--pa-space-3);
	border-bottom: 1px solid var(--pa-border);
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-product-included__split .pa-product-pills {
	margin-top: var(--pa-space-3);
}

/* Feature deep-dive */
.pa-product-features {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-product-features__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-product-features__list {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-7);
	margin-top: var(--pa-space-9);
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.pa-product-feature-block {
	display: grid;
	grid-template-columns: 80px 1fr;
	gap: var(--pa-space-5);
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	box-shadow: var(--pa-shadow-sm);
}
.pa-product-feature-block__num {
	font-family: var(--pa-font-display);
	font-size: 36px;
	font-weight: 800;
	color: color-mix(in srgb, var(--pa-blue-primary) 70%, transparent);
	letter-spacing: -0.02em;
	line-height: 1;
}
.pa-product-feature-block__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--pa-text-primary);
}
.pa-product-feature-block__lede {
	margin: 0 0 var(--pa-space-4);
	font-size: 15px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-product-feature-block__bullets {
	margin: 0;
	padding-left: var(--pa-space-5);
	font-size: 14px;
	line-height: 1.75;
	color: var(--pa-text-primary);
}
.pa-product-feature-block__bullets li {
	margin-bottom: var(--pa-space-2);
}
.pa-product-feature-block__bullets strong {
	color: var(--pa-text-primary);
}
.pa-product-feature-block__specs {
	display: grid;
	gap: var(--pa-space-4);
	margin: var(--pa-space-3) 0 0;
}
.pa-product-feature-block__specs > div {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: var(--pa-space-3);
	font-size: 14px;
	padding-top: var(--pa-space-3);
	border-top: 1px solid var(--pa-border-subtle);
}
.pa-product-feature-block__specs dt {
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.05em;
	padding-top: 2px;
}
.pa-product-feature-block__specs dd {
	margin: 0;
	color: var(--pa-text-primary);
	line-height: 1.65;
}
.pa-product-feature-block__note {
	margin-top: var(--pa-space-4);
	padding: var(--pa-space-3) var(--pa-space-4);
	background: var(--pa-bg-subtle);
	border-left: 3px solid var(--pa-border);
	border-radius: 0 var(--pa-radius-sm) var(--pa-radius-sm) 0;
	font-size: 13px;
	line-height: 1.65;
	color: var(--pa-text-secondary);
}
.pa-product-feature-block__note a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

/* Use cases */
.pa-product-usecases {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-product-usecases__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-product-usecases__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-product-usecase {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-lg);
}
.pa-product-usecase__icon {
	display: inline-block;
	font-size: 28px;
	margin-bottom: var(--pa-space-3);
}
.pa-product-usecase__title {
	margin: 0 0 var(--pa-space-2);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-product-usecase__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}

/* Buy block */
.pa-product-buy {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-product-buy__inner {
	max-width: 600px;
	margin: 0 auto;
}
.pa-product-buy__card {
	padding: var(--pa-space-9);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	box-shadow: var(--pa-shadow-md);
}
.pa-product-buy__card--featured {
	border: 2px solid var(--pa-blue-primary);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--pa-accent-blue) 14%, transparent);
}
.pa-product-buy__head {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: var(--pa-space-5);
}
.pa-product-buy__edition {
	font-family: var(--pa-font-display);
	font-size: 28px;
	font-weight: 800;
	color: var(--pa-text-primary);
}
.pa-product-buy__perpetual {
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-blue-primary);
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.pa-product-buy__price {
	display: flex;
	align-items: baseline;
	gap: var(--pa-space-3);
	margin-bottom: var(--pa-space-6);
}
.pa-product-buy__price-amount {
	font-family: var(--pa-font-display);
	font-size: 44px;
	font-weight: 800;
	color: var(--pa-text-primary);
	letter-spacing: -0.02em;
}
.pa-product-buy__price-period {
	font-size: 13px;
	color: var(--pa-text-muted);
}
.pa-product-buy__includes {
	margin: 0 0 var(--pa-space-6);
	padding-left: var(--pa-space-5);
	font-size: 14px;
	line-height: 1.75;
	color: var(--pa-text-secondary);
}
.pa-product-buy__includes li {
	margin-bottom: var(--pa-space-2);
}
.pa-product-buy__actions {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	margin-bottom: var(--pa-space-4);
}
.pa-product-buy__actions .pa-btn {
	width: 100%;
}
.pa-product-buy__volume {
	margin: 0;
	font-size: 13px;
	color: var(--pa-text-muted);
}
.pa-product-buy__volume a {
	color: var(--pa-blue-primary);
	font-weight: 600;
}

/* Edition compare */
.pa-product-compare {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-product-compare__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-product-compare__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-9);
}
.pa-product-compare__card {
	display: flex;
	flex-direction: column;
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
.pa-product-compare__card--current {
	border: 2px solid var(--pa-blue-primary);
	background: color-mix(in srgb, var(--pa-accent-blue) 3%, #fff);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--pa-accent-blue) 12%, transparent);
}
.pa-product-compare__head {
	margin-bottom: var(--pa-space-4);
}
.pa-product-compare__pill {
	display: inline-block;
	padding: 3px var(--pa-space-2);
	background: var(--pa-blue-primary);
	border-radius: var(--pa-radius-pill);
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: var(--pa-space-2);
}
.pa-product-compare__head h3 {
	margin: 0;
	font-family: var(--pa-font-display);
	font-size: 24px;
	font-weight: 800;
	color: var(--pa-text-primary);
}
.pa-product-compare__price {
	display: block;
	margin-top: 4px;
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-blue-primary);
}
.pa-product-compare__plus {
	margin: 0 0 var(--pa-space-3);
	padding: var(--pa-space-2) var(--pa-space-3);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-sm);
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-product-compare__features {
	flex: 1;
	margin: 0 0 var(--pa-space-4);
	padding-left: var(--pa-space-5);
	font-size: 13px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-product-compare__features li {
	margin-bottom: var(--pa-space-2);
}
.pa-product-compare__link {
	display: inline-block;
	margin-top: auto;
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-blue-primary);
	text-decoration: none;
}
.pa-product-compare__link:hover {
	text-decoration: underline;
}

/* CLI examples */
.pa-cli-examples {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-cli-examples__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-examples__list {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-9);
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.pa-cli-example {
	padding: var(--pa-space-6) var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	box-shadow: var(--pa-shadow-sm);
}
.pa-cli-example__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 16px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-cli-example__code {
	margin: 0;
	padding: var(--pa-space-4) var(--pa-space-5);
	background: #1a1a2e;
	border-radius: var(--pa-radius-sm);
	overflow-x: auto;
	font-family: var(--pa-font-mono, 'Consolas', 'Monaco', 'Courier New', monospace);
	font-size: 13px;
	line-height: 1.55;
	color: #d8e4ff;
}
.pa-cli-example__code code {
	white-space: pre;
}
.pa-cli-example__note {
	margin: var(--pa-space-3) 0 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-cli-example__note code {
	padding: 1px 6px;
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border-subtle);
	border-radius: 3px;
	font-family: var(--pa-font-mono, monospace);
	font-size: 12px;
	color: var(--pa-text-primary);
}

/* CLI licensing */
.pa-cli-licensing {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-cli-licensing__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-licensing__paths {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-cli-licensing__path {
	padding: var(--pa-space-7);
	background: var(--pa-bg-subtle);
	border-radius: var(--pa-radius-lg);
	min-width: 0;
}
.pa-cli-licensing__path--featured {
	background: color-mix(in srgb, var(--pa-accent-blue) 4%, #fff);
	border: 1px solid color-mix(in srgb, var(--pa-accent-blue) 18%, transparent);
}
.pa-cli-licensing__title {
	margin: 0 0 var(--pa-space-3);
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-cli-licensing__list {
	margin: 0;
	padding-left: var(--pa-space-5);
	font-size: 14px;
	line-height: 1.85;
}
.pa-cli-licensing__body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.7;
	color: var(--pa-text-secondary);
}
.pa-cli-licensing__note {
	margin: var(--pa-space-3) 0 0;
	font-size: 12px;
	color: var(--pa-text-muted);
	line-height: 1.55;
}
/* Dual-button row under the PACL volume-pricing table: primary cart link +
   secondary quote link for 1000+ seat orders. Stacks vertically on narrow
   viewports. */
.pa-cli-licensing__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pa-space-3);
	margin: var(--pa-space-4) 0 0;
}
.pa-cli-licensing__actions .pa-btn {
	flex: 1 1 auto;
	min-width: 200px;
}
/* Standalone PACL pricing table inside the licensing block. */
.pa-cli-licensing__pricing {
	width: 100%;
	margin: var(--pa-space-4) 0;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	overflow: hidden;
}
.pa-cli-licensing__pricing th,
.pa-cli-licensing__pricing td {
	padding: 10px 14px;
	text-align: left;
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-cli-licensing__pricing thead th {
	background: var(--pa-bg-subtle);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-cli-licensing__pricing tbody th {
	font-weight: 600;
	color: var(--pa-text-primary);
}
.pa-cli-licensing__pricing tbody td {
	font-weight: 600;
	color: var(--pa-text-primary);
	text-align: right;
	font-variant-numeric: tabular-nums;
}
.pa-cli-licensing__pricing tbody tr:last-child th,
.pa-cli-licensing__pricing tbody tr:last-child td {
	border-bottom: none;
}

/* ============================================================
   PACL hero terminal — stylized PowerShell window below the hero,
   showing a real PACL command run with VSS + multi-core + AES.
   Pure CSS — no real terminal emulator. */
.pa-cli-terminal-wrap {
	padding: 0 var(--pa-space-6) var(--pa-space-14);
	background: linear-gradient(180deg, var(--pa-bg-subtle) 0%, #fff 60%);
}
.pa-cli-terminal-wrap__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-terminal {
	background: #0f1f3f;
	border-radius: var(--pa-radius-lg);
	overflow: hidden;
	box-shadow: 0 24px 64px rgba(15, 31, 64, 0.32),
		0 6px 18px rgba(15, 31, 64, 0.18);
	font-family: var(--pa-font-mono, ui-monospace, "Cascadia Code", "Consolas", "Roboto Mono", monospace);
}
.pa-cli-terminal__chrome {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	background: #1a2c52;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.pa-cli-terminal__dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	display: inline-block;
}
.pa-cli-terminal__dot--red { background: #ff5f57; }
.pa-cli-terminal__dot--yellow { background: #ffbd2e; }
.pa-cli-terminal__dot--green { background: #28c941; }
.pa-cli-terminal__title {
	margin-left: 12px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.65);
	letter-spacing: 0.02em;
}
.pa-cli-terminal__body {
	margin: 0;
	padding: var(--pa-space-6) var(--pa-space-7);
	font-size: 13px;
	line-height: 1.7;
	color: #c8d4ef;
	white-space: pre;
	overflow-x: auto;
}
.pa-cli-terminal__prompt {
	color: #8ec5ff;
	font-weight: 700;
}
.pa-cli-terminal__cmd {
	color: #fff;
	font-weight: 600;
}
.pa-cli-terminal__line {
	color: rgba(255, 255, 255, 0.62);
}
.pa-cli-terminal__success {
	color: #5bd986;
	font-weight: 600;
}

/* ============================================================
   PACL toolkit section — 3-col grid of 6 tool cards listing the
   PAEXT / PACOMP / PAENCODE / PASPAN / PACRYPT / PACONV executables. */
.pa-cli-toolkit {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-cli-toolkit__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-toolkit__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-9);
}
.pa-cli-toolkit__card {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	padding: var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	min-width: 0;
}
.pa-cli-toolkit__name {
	margin: 0;
	font-family: var(--pa-font-mono, ui-monospace, "Cascadia Code", monospace);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--pa-blue-primary);
}
.pa-cli-toolkit__tagline {
	margin: 0 0 var(--pa-space-2);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}
.pa-cli-toolkit__body {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-cli-toolkit__note {
	margin-top: var(--pa-space-6);
	padding: var(--pa-space-5) var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-left: 4px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-md);
}
.pa-cli-toolkit__note p {
	margin: 0 0 var(--pa-space-2);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-cli-toolkit__note p:last-child {
	margin-bottom: 0;
}
.pa-cli-toolkit__note code {
	font-family: var(--pa-font-mono, monospace);
	font-size: 12px;
	padding: 1px 5px;
	background: color-mix(in srgb, var(--pa-accent-blue) 8%, #fff);
	border-radius: 4px;
}
@media (max-width: 920px) {
	.pa-cli-toolkit__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 600px) {
	.pa-cli-toolkit__grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   PACL performance section — 4-card grid surfacing the multi-core
   ZIP engine, .PA codec, unlimited-size, VSS claims. */
.pa-cli-performance {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: #fff;
}
.pa-cli-performance__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-performance__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-5);
	margin-top: var(--pa-space-9);
}
.pa-cli-performance__card {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
	padding: var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	min-width: 0;
}
.pa-cli-performance__card--featured {
	background: linear-gradient(165deg,
		color-mix(in srgb, var(--pa-accent-blue) 8%, #fff),
		#fff);
	border-color: color-mix(in srgb, var(--pa-accent-blue) 32%, transparent);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--pa-accent-blue) 14%, transparent);
}
.pa-cli-performance__metric {
	font-family: var(--pa-font-display);
	font-size: 44px;
	font-weight: 800;
	color: var(--pa-blue-primary);
	letter-spacing: -0.02em;
	line-height: 1;
}
.pa-cli-performance__metric-label {
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--pa-text-primary);
}
.pa-cli-performance__body {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: var(--pa-text-secondary);
}
.pa-cli-performance__body code {
	font-family: var(--pa-font-mono, monospace);
	font-size: 12px;
	padding: 1px 5px;
	background: color-mix(in srgb, var(--pa-accent-blue) 8%, #fff);
	border-radius: 4px;
}

/* ============================================================
   PACL format-support section — 2-col grid (write / read-only)
   plus a compatibility callout below. */
.pa-cli-formats {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: var(--pa-bg-subtle);
}
.pa-cli-formats__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-cli-formats__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--pa-space-6);
	margin-top: var(--pa-space-9);
}
.pa-cli-formats__col {
	padding: var(--pa-space-7);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
	min-width: 0;
}
.pa-cli-formats__col--featured {
	background: linear-gradient(165deg,
		color-mix(in srgb, var(--pa-accent-blue) 6%, #fff),
		#fff);
	border-color: color-mix(in srgb, var(--pa-accent-blue) 28%, transparent);
}
.pa-cli-formats__col-title {
	margin: 0 0 var(--pa-space-3);
	font-size: 18px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-cli-formats__col-body {
	margin: 0 0 var(--pa-space-4);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-cli-formats__list {
	margin: 0;
	padding-left: var(--pa-space-5);
	font-size: 14px;
	line-height: 1.85;
	color: var(--pa-text-primary);
}
.pa-cli-formats__compat {
	margin-top: var(--pa-space-6);
	padding: var(--pa-space-6);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-left: 4px solid var(--pa-blue-primary);
	border-radius: var(--pa-radius-md);
}
.pa-cli-formats__compat-title {
	margin: 0 0 var(--pa-space-2);
	font-size: 15px;
	font-weight: 700;
	color: var(--pa-text-primary);
}
.pa-cli-formats__compat p {
	margin: 0 0 var(--pa-space-2);
	font-size: 14px;
	line-height: 1.6;
	color: var(--pa-text-secondary);
}
.pa-cli-formats__compat-note {
	font-size: 12px !important;
	color: var(--pa-text-muted) !important;
}

@media (max-width: 920px) {
	.pa-cli-performance__grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.pa-cli-formats__grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 600px) {
	.pa-cli-performance__grid {
		grid-template-columns: 1fr;
	}
	.pa-cli-terminal__body {
		font-size: 11.5px;
		padding: var(--pa-space-5);
	}
}

/* Mobile */
@media (max-width: 920px) {
	.pa-product-hero__inner {
		grid-template-columns: 1fr;
		gap: var(--pa-space-7);
	}
	.pa-product-included__split {
		grid-template-columns: 1fr;
	}
	.pa-product-features__list {
		max-width: none;
	}
	.pa-product-feature-block {
		grid-template-columns: 1fr;
		gap: var(--pa-space-3);
	}
	.pa-product-feature-block__num {
		font-size: 28px;
	}
	.pa-product-usecases__grid,
	.pa-product-compare__grid,
	.pa-cli-licensing__paths {
		grid-template-columns: 1fr;
	}
	.pa-product-hero__title {
		font-size: 32px;
	}
}



/* ============================================================
   Bricks Builder rendering compatibility
   ============================================================

   Bricks wraps every element in `<div class="brxe-block">` /
   `<div class="brxe-text-basic">` / `<div class="brxe-heading">` /
   etc. with `display: flex; flex-direction: column`. Inside a flex
   column parent, flex items default to content-sized width instead
   of taking full parent width like plain block-level divs would.

   The v2 design was authored assuming default block-level behavior
   (full-width children, content-sized buttons). These shims restore
   that behavior so layouts render on Bricks identically to the local
   preview HTML files.

   Rules are scoped to .brxe-* (Bricks's own wrappers) so non-Bricks
   contexts are untouched. Buttons stay content-sized via an explicit
   override.
   ============================================================ */

/* Containers stretch to fill parent flex column (like plain divs) */
.brxe-block,
.brxe-text-basic,
.brxe-heading {
	width: 100%;
}

/* Buttons stay content-sized */
.brxe-button {
	width: auto;
}

/* Tier-card primary CTAs must stretch full-width like their `__cta-alt`
   siblings. Without this, Bricks's `.brxe-button { width: auto }` wins on
   specificity and primary buttons shrink to text width — visible when one
   card's CTA copy is shorter than the others (e.g. Enterprise's
   "See Enterprise →" vs the three "$XX · Buy English-only" buttons). */
.brxe-button.pa-price-card__cta,
.brxe-button.pa-price-card__cta--primary {
	width: 100%;
}

/* Volume-pricing per-edition Buy CTAs — same fix pattern. Content-sized
   buttons make the Enterprise card's "Volume / Unlimited quote" balloon
   wider than the other cards' "Buy Multilingual" links. */
.brxe-button.pa-volume-pricing__buy,
.brxe-button.pa-volume-pricing__buy-alt {
	width: 100%;
}

/* Volume-options card icon — 48px tinted badge. Bricks renders the source
   <span class="pa-volume__card-icon"> as `.brxe-text-basic` which the
   width:100% shim stretches to full card width. Win on specificity. */
.brxe-text-basic.pa-volume__card-icon {
	width: 48px;
}

/* Homepage advantage-card icon — same 48px tinted badge pattern, same
   brxe-text-basic stretch bug. */
.brxe-text-basic.pa-advantage-card__icon {
	width: 48px;
}

/* Enterprise tier-card pill (Per-seat / Site-wide chip floating above each
   card). Same brxe-text-basic shim stretches the absolute-positioned pill
   to card width, turning the chip into a full-width band. The pill must
   stay content-sized so the `translateX(-50%)` centering keeps it as a
   small chip at the card's top edge. */
.brxe-text-basic.pa-enterprise-tier-card__pill {
	width: auto;
}

/* Codec stat-bar fill — Bricks's `.brxe-block.bricks-lazy-hidden` rule
   has `background-image: none !important` which zaps the fill's gradient,
   and the `transform: scaleX(0) -> scaleX(1)` animation gets pinned by
   Bricks's lazy-load mechanism on the same wrapper. Both fixed below:
     - `!important` on background-image beats the lazy-hidden override
     - `transform: none !important` short-circuits the broken transition
       and shows bars at their full configured width on page load (the
       slide-in animation just doesn't work under Bricks). */
/* Homepage press-review quotes — 3-card row, completes the social-proof
   stack alongside the trust bar + trust logos above. */
.pa-press-quotes {
	padding: var(--pa-space-12) var(--pa-space-6);
	background: #fff;
}
.pa-press-quotes__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.pa-press-quotes__lead {
	margin: 0 0 var(--pa-space-8);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
	text-align: center;
}
/* Horizontal scroll-snap carousel: each card is a fixed-width slide; users
   drag/swipe to see more. Mask fades the left/right edges to hint there
   are more cards off-screen. Arrow buttons (injected by homepage.js) sit
   in the .pa-press-carousel-wrap parent for absolute positioning. */
.pa-press-carousel-wrap {
	position: relative;
}
.pa-press-carousel {
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding: 0 var(--pa-space-2);
	scroll-behavior: smooth;
	/* hide scrollbar across engines */
	scrollbar-width: none;
	-ms-overflow-style: none;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
	padding: var(--pa-space-2) 0 var(--pa-space-4);
}
.pa-press-carousel::-webkit-scrollbar {
	display: none;
}
/* Arrow buttons — injected by JS so they survive Bricks's element converter
   (which has no <button> handler). Round white buttons hover-tint blue. */
.pa-press-carousel__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	padding: 0;
	border-radius: 50%;
	background: #fff;
	border: 1px solid var(--pa-border);
	cursor: pointer;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--pa-text-secondary);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease,
		box-shadow 0.2s ease, opacity 0.2s ease;
}
.pa-press-carousel__nav:hover:not(:disabled) {
	background: var(--pa-blue-primary);
	color: #fff;
	box-shadow: 0 6px 18px color-mix(in srgb, var(--pa-accent-blue) 32%, transparent);
}
.pa-press-carousel__nav:disabled {
	opacity: 0.3;
	cursor: default;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.pa-press-carousel__nav--prev { left: -8px; }
.pa-press-carousel__nav--next { right: -8px; }
/* Mobile: hide arrows; native touch swipe is more natural at that width. */
@media (max-width: 600px) {
	.pa-press-carousel__nav { display: none; }
}
.pa-press-carousel__track {
	display: flex;
	gap: var(--pa-space-5);
	margin: 0;
	padding: 0 var(--pa-space-2);
	list-style: none;
}
.pa-press-quote {
	flex: 0 0 360px;
	scroll-snap-align: start;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-3);
	margin: 0;
	padding: var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-lg);
}
@media (max-width: 480px) {
	.pa-press-quote {
		flex-basis: 300px;
	}
}
.pa-press-quote__stars {
	font-size: 14px;
	font-weight: 700;
	color: var(--pa-accent-orange);
	letter-spacing: 0.04em;
}
/* Magazine logo: same visual treatment as the trust-logos grid above —
   grayscale at 0.7 opacity by default, full color on hover. Lined up at
   the top of each card with a uniform height cap (variable assets, all
   shrink to fit). */
.pa-press-quote__logo {
	max-width: 130px;
	max-height: 48px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.7;
	transition: filter 0.3s ease, opacity 0.3s ease;
	align-self: flex-start;
}
.pa-press-quote:hover .pa-press-quote__logo {
	filter: grayscale(0);
	opacity: 1;
}
.pa-press-quote__award {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--pa-accent-orange);
}
.pa-press-quote__body {
	flex-grow: 1;
	margin: 0;
}
.pa-press-quote__body p {
	margin: 0;
	font-size: 16px;
	line-height: 1.55;
	color: var(--pa-text-primary);
	font-style: italic;
}
.pa-press-quote__source {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: var(--pa-text-secondary);
	text-transform: uppercase;
}

/* Product page hero screenshot — sits below the .pa-product-hero on
   /standard, /professional, /toolbox. Same image at full width, soft
   shadow, subtle caption below. Visual anchor between text-heavy hero
   copy and the "What's included" pills section. */
.pa-product-screenshot {
	padding: 0 var(--pa-space-6) var(--pa-space-14);
	background: linear-gradient(180deg, var(--pa-bg-subtle) 0%, #fff 60%);
}
.pa-product-screenshot__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--pa-space-3);
}
.pa-product-screenshot__img {
	width: 100%;
	height: auto;
	max-height: 580px;
	object-fit: cover;
	border-radius: var(--pa-radius-lg);
	box-shadow: 0 24px 64px rgba(15, 31, 64, 0.18),
		0 6px 18px rgba(15, 31, 64, 0.10);
}
/* Modifier for 4:3 aspect screenshots (e.g. PowerArchiver Pro for Mac
   uses 1024×768 captures). The default --img rule was tuned for the
   ~16:9 Windows captures used on /business, /professional, /toolbox,
   /enterprise where 580px crop loses nothing. On 4:3 the height cap +
   object-fit:cover loses ~188px of vertical content; switching to
   contain instead pillarboxes the image with whitespace which looks
   like the image is "cut off" too. The right answer is to size the
   IMG box itself to the natural aspect — drop the width:100%/cover
   pattern and let the image render at its natural pixels (capped at
   container width on narrow viewports). The shadow then wraps the
   actual image content, no pillarbox, no crop. */
.pa-product-screenshot__img--full {
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: none;
	object-fit: initial;
}
.pa-product-screenshot__caption {
	margin: var(--pa-space-2) 0 0;
	font-size: 13px;
	letter-spacing: 0.02em;
	color: var(--pa-text-muted);
	text-align: center;
}

/* Single press quote — used on /download (between FAQ + final CTA) and on
   each product page (between use-cases + tier-cards). Borrows the logo
   treatment from the homepage press carousel but renders as a single
   centered card so it doesn't compete with the page's own content. */
.pa-press-quote-single {
	padding: var(--pa-space-12) var(--pa-space-6);
	background: var(--pa-bg-subtle);
	border-top: 1px solid var(--pa-border-subtle);
	border-bottom: 1px solid var(--pa-border-subtle);
}
.pa-press-quote-single__inner {
	max-width: 720px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--pa-space-4);
	text-align: center;
}
.pa-press-quote-single__logo {
	max-width: 140px;
	max-height: 44px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.75;
	transition: filter 0.3s ease, opacity 0.3s ease;
}
.pa-press-quote-single:hover .pa-press-quote-single__logo {
	filter: grayscale(0);
	opacity: 1;
}
.pa-press-quote-single__body {
	margin: 0;
}
.pa-press-quote-single__body p {
	margin: 0;
	font-size: clamp(18px, 2vw, 22px);
	line-height: 1.45;
	font-style: italic;
	color: var(--pa-text-primary);
}
.pa-press-quote-single__attribution {
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pa-text-muted);
}

/* Homepage slim pricing strip. Vertical stack: header (label + h2 + sub),
   then 4-up tier grid (Professional featured), then dual CTAs. */
.pa-pricing-strip {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg,
		color-mix(in srgb, var(--pa-accent-blue) 5%, #fff),
		color-mix(in srgb, var(--pa-accent-blue) 1%, #fff));
}
.pa-pricing-strip__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-8);
}
.pa-pricing-strip__head {
	display: flex;
	flex-direction: column;
	gap: var(--pa-space-2);
	text-align: center;
	align-items: center;
}
.pa-pricing-strip__label {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--pa-blue-primary);
}
.pa-pricing-strip__title {
	margin: 0;
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 800;
	letter-spacing: -0.015em;
	color: var(--pa-text-primary);
}
.pa-pricing-strip__title-accent {
	color: var(--pa-blue-primary);
}
.pa-pricing-strip__sub {
	margin: 0;
	max-width: 640px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--pa-text-secondary);
}
.pa-pricing-strip__sub a {
	color: var(--pa-blue-primary);
	font-weight: 600;
	text-decoration: none;
}
.pa-pricing-strip__sub a:hover {
	text-decoration: underline;
}
.pa-pricing-strip__tiers {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--pa-space-4);
}
.pa-pricing-strip__tier {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: var(--pa-space-5) var(--pa-space-4);
	background: #fff;
	border: 1px solid var(--pa-border);
	border-radius: var(--pa-radius-md);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.pa-pricing-strip__tier:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(15, 31, 64, 0.07);
	border-color: color-mix(in srgb, var(--pa-accent-blue) 35%, var(--pa-border));
}
.pa-pricing-strip__tier--featured {
	background: linear-gradient(165deg,
		color-mix(in srgb, var(--pa-accent-blue) 8%, #fff),
		#fff);
	border-color: color-mix(in srgb, var(--pa-accent-blue) 35%, transparent);
	box-shadow: 0 6px 20px color-mix(in srgb, var(--pa-accent-blue) 16%, transparent);
}
.pa-pricing-strip__tier-badge {
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
	padding: 4px 12px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #fff;
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-light));
	border-radius: 999px;
	white-space: nowrap;
	box-shadow: 0 3px 10px color-mix(in srgb, var(--pa-accent-blue) 30%, transparent);
}
.pa-pricing-strip__tier-name {
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.pa-pricing-strip__tier-price {
	font-family: var(--pa-font-heading);
	font-size: 28px;
	font-weight: 800;
	letter-spacing: -0.025em;
	color: var(--pa-text-primary);
	line-height: 1;
}
.pa-pricing-strip__tier-price-suffix {
	font-size: 13px;
	font-weight: 600;
	color: var(--pa-text-muted);
	letter-spacing: 0;
}
.pa-pricing-strip__tier-feat {
	margin-top: 2px;
	font-size: 13px;
	line-height: 1.4;
	color: var(--pa-text-secondary);
}
.pa-pricing-strip__actions {
	display: flex;
	gap: var(--pa-space-3);
	flex-wrap: wrap;
	justify-content: center;
}
@media (max-width: 900px) {
	.pa-pricing-strip__tiers {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 480px) {
	.pa-pricing-strip__tiers {
		grid-template-columns: 1fr;
	}
}

/* Homepage closing CTA — slim band at the very bottom of the page. */
.pa-home-cta {
	padding: var(--pa-space-16) var(--pa-space-6);
	background: linear-gradient(135deg, var(--pa-blue-primary), var(--pa-blue-dark));
	color: #fff;
	text-align: center;
}
.pa-home-cta__inner {
	max-width: 720px;
	margin: 0 auto;
}
.pa-home-cta__title {
	margin: 0 0 var(--pa-space-3);
	font-family: var(--pa-font-heading);
	font-size: clamp(24px, 2.4vw, 32px);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #fff;
}
.pa-home-cta__body {
	margin: 0 0 var(--pa-space-6);
	font-size: 16px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.85);
}
.pa-home-cta__actions {
	display: flex;
	gap: var(--pa-space-3);
	justify-content: center;
	flex-wrap: wrap;
}

/* Higher specificity (3 classes + descendant) to beat Bricks's
   `.brxe-block.bricks-lazy-hidden { background-image: none !important }`
   which has same specificity (0,2,0) and loads after our main.css. */
.pa-codec-card .brxe-block.pa-codec-stat-bar__fill {
	width: var(--pa-codec-bar-fill) !important;
	background-image: linear-gradient(90deg, var(--pa-gradient-start), var(--pa-gradient-end)) !important;
	transition: none !important;
	transform: none !important;
}

/* Enterprise tier-strip CTAs (See per-seat Enterprise / See Enterprise
   Unlimited buttons). Same content-sized pattern under Bricks. */
.brxe-button.pa-enterprise-tier-card__cta,
.brxe-button.pa-enterprise-tier-card__cta--primary {
	width: 100%;
}

/* Hero eyebrow pill — keep content-sized + centered inside flex column */
.brxe-text-basic.pa-hero__badge,
.brxe-block.pa-hero__badge {
	width: auto;
	align-self: center;
}

/* Sub-nav is a horizontal sticky pill, override Bricks column default */
.brxe-section.pa-subnav,
.brxe-block.pa-subnav {
	flex-direction: row;
	flex-wrap: wrap;
}

/* The outer `<section>` Bricks wraps around the source <nav.pa-subnav>
   inherits the same dark pill styling AND the `transform: translate(-50%, …)`
   centering trick from .pa-subnav. The transform creates a new containing
   block for the inner element's `position: fixed`, collapsing it to the
   section's width. `display: contents` removes the section from layout
   entirely — children render as if they were direct children of the parent. */
.brxe-section.pa-subnav {
	display: contents;
}

/* Inner block must be content-sized (a chip pill), not full-width like
   the default `.brxe-block { width: 100% }` shim. The pill is centered via
   `left: 50%; transform: translateX(-50%)` from the base .pa-subnav rule —
   that only works when width is content-sized. */
.brxe-block.pa-subnav {
	width: auto;
	max-width: none;
}
.brxe-button.pa-subnav__link {
	width: auto;
}

/* Hero / final-CTA action rows must be horizontal, not stacked */
.brxe-block.pa-hero__actions,
.brxe-block.pa-final-cta__actions {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--pa-space-3);
	justify-content: center;
	align-items: center;
	width: 100%;
}


/* =============================================================================
 * Mobile vertical rhythm — site-wide
 * Placed at end of file so source-order cascade beats the per-section
 * `padding:` shorthands declared earlier (e.g. `.pa-pricing-strip` and
 * `.pa-home-cta` both set `padding: var(--pa-space-16) var(--pa-space-6)`
 * which would otherwise reset padding-top/bottom).
 *
 * Desktop default per section is 80px top+bottom, which becomes 160px of
 * empty space between every content block on a phone (~20% of viewport per
 * transition). Default-tighten every `<section class="pa-…">` to 56/56 at
 * mobile, then add specific overrides for heroes, slim strips, and the
 * footer.
 * ========================================================================== */
@media (max-width: 768px) {
	/* Default — applies to every <section> with a pa-* class */
	body > section[class*="pa-"]:not(.pa-v2-nav),
	header > section[class*="pa-"]:not(.pa-v2-nav) {
		padding-top: 56px;
		padding-bottom: 56px;
	}

	/* Heroes — taller top padding to clear the 64px fixed nav. !important
	   because the default `body > section[class*="pa-"]:not(.pa-v2-nav)` rule
	   above has higher specificity (element + attribute + :not = 0,2,2) than
	   the bare hero class selectors here (0,1,0), so we'd lose the cascade
	   without forcing — and a hero content area starting at scrollY=56 would
	   be clipped by the 64px-tall fixed nav. */
	.pa-hero,
	.pa-page-hero,
	.pa-thanks-hero,
	.pa-pricing-hero,
	.pa-product-hero {
		padding-top: 96px !important;
		padding-bottom: 48px !important;
	}

	/* Slim trust/press strips — tight padding, they're visual rhythm beats */
	.pa-trust {
		padding-top: 24px;
		padding-bottom: 24px;
	}
	.pa-trust-logos {
		padding-top: 40px;
		padding-bottom: 32px;
	}
	.pa-press-quotes {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	/* Medium-height sections (pricing/CTA/help/faq/product detail/CLI/etc.) */
	.pa-pricing-strip,
	.pa-home-cta,
	.pa-final-cta,
	.pa-help,
	.pa-faq,
	.pa-pricing,
	.pa-blog-grid,
	.pa-legal,
	.pa-product-included,
	.pa-product-features,
	.pa-product-usecases,
	.pa-cli-toolkit,
	.pa-cli-performance,
	.pa-cli-formats,
	.pa-cli-licensing,
	.pa-industries,
	.pa-vs-subs,
	.pa-about-numbers,
	.pa-support-form-section,
	.pa-support-contact,
	.pa-security-summary,
	.pa-security-validations,
	.pa-security-crypto,
	.pa-security-formats,
	.pa-security-disclosure,
	.pa-security-docs,
	.pa-contact {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	/* Footer — short top, very short bottom for the © line */
	.pa-footer {
		padding-top: 48px;
		padding-bottom: 24px;
	}
}


/* =============================================================================
 * WPML stock footer-position language switcher — hide.
 *
 * WPML ships a default language switcher widget assigned to the footer
 * "language switcher" position (configurable in WP-admin → WPML → Languages
 * → Language switcher options → Footer). It renders as `.wpml-ls-statics-footer`
 * on every page across all locales and duplicates the function of our
 * styled `.pa-lang-switcher` already living in the global nav header.
 *
 * Cleaner fix is to disable it in WPML admin, but this CSS rule is the
 * immediate, reversible mitigation.
 * ========================================================================== */
.wpml-ls-statics-footer {
	display: none !important;
}
