/*
Theme Name: Plugen
Theme URI: https://plugen.ir/
Author: Plugen
Author URI: https://plugen.ir/
Description: A fast, accessible and purpose-built storefront for Plugen software products.
Version: 3.0.1
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: plugen
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: e-commerce, rtl-language-support, custom-logo, custom-menu, featured-images, accessibility-ready
*/

/* The complete visual system is intentionally kept in this single cached file. */

@font-face {
	font-family: "Yekan Bakh";
	src: url("assets/fonts/YekanBakhFaNum-Regular.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Yekan Bakh";
	src: url("assets/fonts/YekanBakhFaNum-SemiBold.woff2") format("woff2");
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

@font-face {
	font-family: "Yekan Bakh";
	src: url("assets/fonts/YekanBakhFaNum-Bold.woff2") format("woff2");
	font-style: normal;
	font-weight: 700 900;
	font-display: swap;
}

:root {
	--plg-primary: #0261fd;
	--plg-primary-dark: #0048c6;
	--plg-primary-soft: #eaf2ff;
	--plg-navy: #071b3e;
	--plg-ink: #0c1930;
	--plg-body: #384760;
	--plg-muted: #69768c;
	--plg-line: #dfe7f2;
	--plg-soft: #f4f8ff;
	--plg-soft-2: #f8faff;
	--plg-white: #fff;
	--plg-success: #0b8a5b;
	--plg-warning: #d88a00;
	--plg-danger: #c8334f;
	--plg-shadow-sm: 0 8px 26px rgba(10, 38, 84, .07);
	--plg-shadow: 0 24px 65px rgba(10, 38, 84, .11);
	--plg-radius-sm: 12px;
	--plg-radius: 18px;
	--plg-radius-lg: 28px;
	--plg-container: 1200px;
}

*,
*::before,
*::after { box-sizing: border-box; }

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	color: var(--plg-body);
	background: var(--plg-white);
	font-family: "Yekan Bakh", Tahoma, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.8;
	text-rendering: optimizeLegibility;
}

body.plugen-menu-is-open { overflow: hidden; }

img,
svg,
video { display: block; max-width: 100%; }

img { height: auto; }

button,
input,
select,
textarea { font: inherit; }

button,
summary { -webkit-tap-highlight-color: transparent; }

a { color: var(--plg-primary); text-underline-offset: 3px; }
a:hover { color: var(--plg-primary-dark); }

:focus-visible {
	outline: 3px solid rgba(2, 97, 253, .34);
	outline-offset: 3px;
}

::selection { color: #fff; background: var(--plg-primary); }

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 .65em;
	color: var(--plg-ink);
	font-weight: 800;
	line-height: 1.35;
}

p { margin: 0 0 1.25em; }

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
.plugen-skip-link:focus {
	z-index: 100000;
	top: 12px;
	right: 12px;
	width: auto;
	height: auto;
	padding: 10px 16px;
	clip: auto;
	color: #fff;
	border-radius: 8px;
	background: var(--plg-navy);
}

.plugen-skip-link { position: fixed; top: -100px; z-index: 10000; }

.plugen-container {
	width: min(calc(100% - 40px), var(--plg-container));
	margin-inline: auto;
}

.plugen-narrow-container {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

.plugen-section { padding: clamp(68px, 8vw, 112px) 0; }

.plugen-icon {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
}

.plugen-button,
.edd-submit.button,
#edd-purchase-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 46px;
	padding: 0 20px;
	border: 1px solid transparent;
	border-radius: 12px;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: transform .2s ease, color .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.plugen-button:hover,
.edd-submit.button:hover,
#edd-purchase-button:hover { transform: translateY(-2px); }

.plugen-button .plugen-icon { width: 19px; height: 19px; }
.plugen-button--primary,
.edd-submit.button,
#edd-purchase-button { color: #fff !important; background: var(--plg-primary) !important; box-shadow: 0 12px 28px rgba(2, 97, 253, .22); }
.plugen-button--primary:hover,
.edd-submit.button:hover,
#edd-purchase-button:hover { background: var(--plg-primary-dark) !important; box-shadow: 0 15px 32px rgba(2, 97, 253, .28); }
.plugen-button--secondary { color: var(--plg-primary); border-color: #bfd4fb; background: #fff; }
.plugen-button--secondary:hover { border-color: var(--plg-primary); background: var(--plg-primary-soft); }
.plugen-button--ghost { color: var(--plg-ink); border-color: var(--plg-line); background: #fff; }
.plugen-button--ghost:hover { color: var(--plg-primary); border-color: #aac7f9; }
.plugen-button--light { color: var(--plg-primary) !important; background: #fff; box-shadow: var(--plg-shadow-sm); }
.plugen-button--outline-light { color: #fff !important; border-color: rgba(255,255,255,.42); background: transparent; }
.plugen-button--large { min-height: 54px; padding-inline: 25px; }
.plugen-button--wide { width: 100%; }
.plugen-button--disabled { color: #7c899e; border-color: #d9e0ea; background: #eef2f7; cursor: not-allowed; box-shadow: none; }
.plugen-button--disabled:hover { transform: none; }

.plugen-text-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--plg-primary);
	font-weight: 800;
	text-decoration: none;
}

.plugen-text-link .plugen-icon { width: 18px; height: 18px; transition: transform .2s ease; }
.plugen-text-link:hover .plugen-icon { transform: translateX(-4px); }

.plugen-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	color: var(--plg-primary);
	font-size: .84rem;
	font-weight: 800;
}

.plugen-eyebrow::before {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 0 5px color-mix(in srgb, currentColor 12%, transparent);
	content: "";
}

.plugen-section-heading { max-width: 720px; margin-bottom: 38px; }
.plugen-section-heading h2 { margin: 0 0 10px; font-size: clamp(1.8rem, 3.6vw, 2.65rem); }
.plugen-section-heading p { margin: 0; color: var(--plg-muted); font-size: 1.04rem; }
.plugen-section-heading--split { display: flex; align-items: end; justify-content: space-between; gap: 32px; max-width: none; }
.plugen-section-heading--split > div { max-width: 700px; }
.plugen-section-heading--center { margin-inline: auto; text-align: center; }

/* Header */
.plugen-promo-bar { position: relative; z-index: 100; color: #dce9ff; background: #062654; font-size: .81rem; }
.plugen-promo-bar .plugen-container { display: flex; align-items: center; justify-content: center; gap: 22px; min-height: 38px; }
.plugen-promo-bar a { display: inline-flex; align-items: center; gap: 5px; color: #fff; font-weight: 800; text-decoration: none; }
.plugen-promo-bar .plugen-icon { width: 15px; height: 15px; }

.plugen-site-header {
	position: sticky;
	z-index: 90;
	top: 0;
	border-bottom: 1px solid rgba(217, 228, 241, .88);
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 7px 24px rgba(19, 43, 82, .035);
	backdrop-filter: blur(16px);
}

.admin-bar .plugen-site-header { top: 32px; }
.plugen-header-inner { display: flex; align-items: center; min-height: 74px; gap: 32px; }

.plugen-brand {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 10px;
	color: var(--plg-ink);
	text-decoration: none;
}

.plugen-brand:hover { color: var(--plg-ink); }
.plugen-brand img { flex: 0 0 auto; width: 29px; height: 36px; object-fit: contain; }
.plugen-brand span { display: block; }
.plugen-brand strong { display: block; color: var(--plg-ink); font-family: Arial, sans-serif; font-size: 1.28rem; font-weight: 800; letter-spacing: -.04em; line-height: 1; }
.plugen-brand small { display: block; margin-top: 6px; color: #8290a5; font-size: .68rem; font-weight: 600; }

.plugen-primary-nav { flex: 1; }
.plugen-primary-menu,
.plugen-mobile-menu,
.plugen-footer-column ul,
.plugen-footer-bottom ul { margin: 0; padding: 0; list-style: none; }
.plugen-primary-menu { display: flex; align-items: center; justify-content: center; gap: 5px; }
.plugen-primary-menu > li { position: relative; }
.plugen-primary-menu > li > a { display: block; padding: 10px 12px; color: #35445c; border-radius: 9px; font-size: .92rem; font-weight: 650; text-decoration: none; }
.plugen-primary-menu > li:hover > a,
.plugen-primary-menu > .current-menu-item > a,
.plugen-primary-menu > .current-menu-ancestor > a { color: var(--plg-primary); background: var(--plg-primary-soft); }
.plugen-primary-menu .sub-menu { position: absolute; top: calc(100% + 8px); right: 0; visibility: hidden; min-width: 200px; margin: 0; padding: 8px; opacity: 0; border: 1px solid var(--plg-line); border-radius: 13px; background: #fff; box-shadow: var(--plg-shadow); list-style: none; transform: translateY(7px); transition: .2s ease; }
.plugen-primary-menu li:hover > .sub-menu,
.plugen-primary-menu li:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: none; }
.plugen-primary-menu .sub-menu a { display: block; padding: 8px 10px; color: var(--plg-body); border-radius: 7px; text-decoration: none; }
.plugen-primary-menu .sub-menu a:hover { color: var(--plg-primary); background: var(--plg-soft); }

.plugen-header-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.plugen-icon-button { display: grid; width: 42px; height: 42px; padding: 0; color: var(--plg-ink); border: 1px solid var(--plg-line); border-radius: 11px; background: #fff; cursor: pointer; place-items: center; }
.plugen-icon-button:hover { color: var(--plg-primary); border-color: #b9d0f8; background: var(--plg-soft); }
.plugen-account-link { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; padding: 0 14px; color: #fff; border-radius: 11px; background: var(--plg-primary); font-size: .84rem; font-weight: 800; text-decoration: none; box-shadow: 0 9px 20px rgba(2, 97, 253, .17); }
.plugen-account-link:hover { color: #fff; background: var(--plg-primary-dark); }
.plugen-account-link .plugen-icon { width: 18px; height: 18px; }
.plugen-menu-toggle { display: none; }
.plugen-menu-close-icon { display: none; }
.plugen-menu-is-open .plugen-menu-open-icon { display: none; }
.plugen-menu-is-open .plugen-menu-close-icon { display: block; }
.plugen-mobile-panel { position: fixed; z-index: 89; top: var(--plg-mobile-panel-top, 74px); right: 0; bottom: 0; left: 0; min-height: calc(100dvh - var(--plg-mobile-panel-top, 74px)); overflow-y: auto; overscroll-behavior: contain; padding: 20px 0 40px; background: #fff; box-shadow: 0 20px 50px rgba(5, 28, 67, .12); }
.plugen-mobile-panel > .plugen-container { display: flex; min-height: 100%; flex-direction: column; }
.plugen-mobile-menu { display: grid; gap: 4px; margin-bottom: 20px; }
.plugen-mobile-menu a { display: block; padding: 12px 14px; color: var(--plg-ink); border-radius: 10px; font-weight: 700; text-decoration: none; }
.plugen-mobile-menu .current-menu-item > a { color: var(--plg-primary); background: var(--plg-primary-soft); }
.plugen-mobile-menu .sub-menu { margin: 0 20px 8px 0; padding: 0; list-style: none; }

.plugen-search-dialog { width: min(calc(100% - 32px), 690px); padding: 0; border: 0; border-radius: 24px; background: transparent; }
.plugen-search-dialog::backdrop { background: rgba(3, 16, 39, .72); backdrop-filter: blur(5px); }
.plugen-search-dialog__inner { position: relative; padding: clamp(28px, 6vw, 48px); border-radius: 24px; background: #fff; box-shadow: var(--plg-shadow); }
.plugen-search-dialog h2 { margin-bottom: 22px; font-size: clamp(1.7rem, 4vw, 2.35rem); }
.plugen-search-dialog form,
.plugen-search-page-form { position: relative; display: flex; gap: 9px; }
.plugen-search-dialog input,
.plugen-search-page-form input { flex: 1; min-width: 0; height: 54px; padding: 0 16px; border: 1px solid var(--plg-line); border-radius: 12px; outline: 0; }
.plugen-search-dialog input:focus,
.plugen-search-page-form input:focus { border-color: var(--plg-primary); box-shadow: 0 0 0 3px rgba(2,97,253,.1); }
.plugen-search-dialog p { margin: 14px 0 0; color: var(--plg-muted); font-size: .83rem; }
.plugen-search-close { position: absolute; top: 16px; left: 16px; display: grid; width: 38px; height: 38px; padding: 0; color: var(--plg-muted); border: 0; border-radius: 50%; background: var(--plg-soft); cursor: pointer; place-items: center; }

/* Breadcrumb and page headers */
.plugen-breadcrumbs { padding: 20px 0; font-size: .79rem; }
.plugen-breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: 0; padding: 0; list-style: none; }
.plugen-breadcrumbs li { display: flex; align-items: center; gap: 9px; color: #8a95a7; }
.plugen-breadcrumbs li:not(:last-child)::after { color: #b7c1cf; content: "←"; }
.plugen-breadcrumbs a { color: #61708a; text-decoration: none; }
.plugen-breadcrumbs a:hover { color: var(--plg-primary); }

.plugen-page-hero { position: relative; overflow: hidden; padding: clamp(66px, 9vw, 112px) 0; color: #fff; background: radial-gradient(circle at 20% 0, rgba(53,134,255,.8), transparent 32%), linear-gradient(135deg, #083d9c 0%, #031a42 100%); }
.plugen-page-hero::before { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.3) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.3) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to left, #000, transparent 78%); content: ""; }
.plugen-page-hero__inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.plugen-page-hero__inner > div:first-child { max-width: 790px; }
.plugen-page-hero .plugen-eyebrow { color: #bdd7ff; }
.plugen-page-hero h1 { margin: 0 0 15px; color: #fff; font-size: clamp(2.2rem, 5.5vw, 4.2rem); }
.plugen-page-hero h1 span { color: #84b5ff; }
.plugen-page-hero p { max-width: 730px; margin: 0; color: #d7e6ff; font-size: 1.08rem; }
.plugen-page-hero__art { position: relative; flex: 0 0 210px; width: 210px; height: 150px; }
.plugen-page-hero__art span { position: absolute; border: 1px solid rgba(255,255,255,.25); border-radius: 22px; background: rgba(255,255,255,.06); transform: rotate(-12deg); }
.plugen-page-hero__art span:nth-child(1) { inset: 25px 0 0 70px; }
.plugen-page-hero__art span:nth-child(2) { inset: 0 42px 34px 15px; transform: rotate(8deg); }
.plugen-page-hero__art span:nth-child(3) { inset: 48px 76px -20px -15px; transform: rotate(-3deg); }

/* Home hero */
.plugen-hero { position: relative; overflow: hidden; padding: clamp(74px, 9vw, 125px) 0 clamp(78px, 10vw, 138px); background: radial-gradient(circle at 16% 18%, rgba(188, 216, 255, .45), transparent 28%), linear-gradient(180deg, #f7faff 0%, #fff 86%); }
.plugen-hero::before { position: absolute; inset: 0; opacity: .42; background-image: radial-gradient(#b9cbed 1px, transparent 1px); background-size: 25px 25px; mask-image: linear-gradient(90deg, transparent, #000 35%, transparent 85%); content: ""; }
.plugen-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(460px, .92fr); align-items: center; gap: clamp(50px, 7vw, 95px); }
.plugen-hero__content { max-width: 650px; }
.plugen-hero__badge { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 22px; padding: 7px 13px; color: var(--plg-primary); border: 1px solid #c8dafe; border-radius: 999px; background: rgba(255,255,255,.8); font-size: .8rem; font-weight: 800; box-shadow: 0 5px 20px rgba(12,67,152,.06); }
.plugen-hero__badge i { width: 7px; height: 7px; border-radius: 50%; background: #17c483; box-shadow: 0 0 0 5px rgba(23,196,131,.12); }
.plugen-hero h1 { margin-bottom: 19px; font-size: clamp(2.65rem, 5.8vw, 4.9rem); letter-spacing: -.035em; line-height: 1.22; }
.plugen-hero h1::after { display: inline-block; width: .8em; height: .16em; margin-right: .12em; border-radius: 999px; background: var(--plg-primary); vertical-align: .25em; content: ""; }
.plugen-hero__content > p { max-width: 600px; margin-bottom: 29px; color: #52627b; font-size: clamp(1rem, 1.6vw, 1.12rem); line-height: 2; }
.plugen-hero__actions { display: flex; flex-wrap: wrap; gap: 11px; }
.plugen-hero__trust { display: flex; flex-wrap: wrap; gap: 18px; margin: 25px 0 0; padding: 0; color: #65728a; font-size: .8rem; list-style: none; }
.plugen-hero__trust li { display: flex; align-items: center; gap: 5px; }
.plugen-hero__trust .plugen-icon { width: 16px; height: 16px; color: var(--plg-success); }
.plugen-hero__visual { position: relative; min-height: 470px; }
.plugen-hero__visual > img { width: 100%; height: 100%; border-radius: var(--plg-radius-lg); object-fit: cover; box-shadow: var(--plg-shadow); }
.plugen-hero-demo { position: absolute; inset: 0; }
.plugen-hero-demo::before { position: absolute; inset: 10% 3% 5%; border-radius: 50%; background: radial-gradient(circle, rgba(58,133,255,.22), transparent 70%); filter: blur(18px); content: ""; }
.plugen-hero-demo__window { position: absolute; inset: 40px 0 20px 25px; overflow: hidden; border: 1px solid rgba(165,193,233,.65); border-radius: 24px; background: #fff; box-shadow: 0 38px 80px rgba(24,75,150,.18); transform: perspective(1100px) rotateY(5deg) rotateX(1deg); }
.plugen-hero-demo__bar { display: flex; align-items: center; gap: 6px; height: 48px; padding: 0 16px; border-bottom: 1px solid #e5ebf5; background: #f8faff; direction: ltr; }
.plugen-hero-demo__bar span { width: 8px; height: 8px; border-radius: 50%; background: #c8d1df; }
.plugen-hero-demo__bar span:first-child { background: #ff6e76; }
.plugen-hero-demo__bar span:nth-child(2) { background: #ffc861; }
.plugen-hero-demo__bar span:nth-child(3) { background: #4cd29b; }
.plugen-hero-demo__bar small { margin: auto; padding: 3px 55px; color: #96a2b4; border-radius: 6px; background: #eef2f8; font-size: .65rem; }
.plugen-hero-demo__body { display: grid; grid-template-columns: 66px 1fr; min-height: 360px; direction: ltr; }
.plugen-hero-demo__body aside { display: grid; align-content: start; gap: 18px; padding: 24px 19px; border-right: 1px solid #e8edf5; background: #fbfcff; }
.plugen-hero-demo__body aside i { width: 27px; height: 7px; border-radius: 99px; background: #dce4ef; }
.plugen-hero-demo__body aside i.is-active { background: #5b93f5; }
.plugen-hero-demo__screen { padding: 35px 29px; direction: rtl; }
.plugen-demo-label { color: #8ea0b9; font-family: Arial, sans-serif; font-size: .64rem; }
.plugen-hero-demo__screen > strong { display: block; margin-top: 5px; color: var(--plg-ink); font-size: 1.25rem; }
.plugen-demo-products { display: grid; gap: 13px; margin-top: 24px; }
.plugen-demo-products article { display: grid; grid-template-columns: 39px 1fr 28px; align-items: center; gap: 12px; padding: 12px; border: 1px solid #e2e9f3; border-radius: 12px; }
.plugen-demo-products b { display: grid; width: 39px; height: 39px; color: #fff; border-radius: 10px; background: linear-gradient(145deg, #0870ff, #0847ad); font-family: Arial, sans-serif; place-items: center; }
.plugen-demo-products span { display: grid; gap: 7px; }
.plugen-demo-products span i { height: 6px; border-radius: 99px; background: #e3e9f1; }
.plugen-demo-products span i:last-child { width: 62%; }
.plugen-demo-products em { display: grid; width: 28px; height: 28px; color: var(--plg-success); border-radius: 8px; background: #e7f8f2; place-items: center; }
.plugen-demo-products em .plugen-icon { width: 16px; height: 16px; }
.plugen-floating-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid rgba(202,215,234,.82); border-radius: 14px; background: rgba(255,255,255,.93); box-shadow: 0 18px 40px rgba(11,48,105,.14); backdrop-filter: blur(9px); }
.plugen-floating-card > .plugen-icon { display: block; width: 36px; height: 36px; padding: 8px; color: var(--plg-primary); border-radius: 10px; background: var(--plg-primary-soft); }
.plugen-floating-card span { display: block; }
.plugen-floating-card small,
.plugen-floating-card strong { display: block; line-height: 1.35; }
.plugen-floating-card small { color: #8a98ac; font-size: .65rem; }
.plugen-floating-card strong { margin-top: 3px; color: var(--plg-ink); font-size: .79rem; }
.plugen-floating-card--license { right: -35px; bottom: 38px; }
.plugen-floating-card--license > i { width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: #18bd80; box-shadow: 0 0 0 5px rgba(24,189,128,.13); }
.plugen-floating-card--update { top: 12px; left: -5px; }
.plugen-hero__glow { position: absolute; right: 48%; bottom: -220px; width: 650px; height: 330px; border-radius: 50%; background: rgba(2,97,253,.07); filter: blur(70px); }

/* Platforms */
.plugen-platforms-section { background: #fff; }
.plugen-platform-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.plugen-platform-card { position: relative; display: flex; align-items: center; gap: 15px; min-height: 104px; padding: 19px; overflow: hidden; color: var(--plg-ink); border: 1px solid var(--plg-line); border-radius: 16px; background: #fff; text-decoration: none; box-shadow: 0 8px 22px rgba(14,45,93,.035); transition: transform .2s ease, border .2s ease, box-shadow .2s ease; }
.plugen-platform-card::before { position: absolute; inset: 0 auto 0 0; width: 4px; opacity: 0; background: var(--platform-color); content: ""; transition: opacity .2s ease; }
.plugen-platform-card:hover { color: var(--plg-ink); border-color: color-mix(in srgb, var(--platform-color) 45%, #dbe5f2); box-shadow: 0 16px 35px color-mix(in srgb, var(--platform-color) 12%, transparent); transform: translateY(-4px); }
.plugen-platform-card:hover::before { opacity: 1; }
.plugen-platform-card__icon { display: grid; flex: 0 0 auto; width: 58px; height: 58px; padding: 9px; color: var(--platform-color); border: 1px solid color-mix(in srgb, var(--platform-color) 18%, #e4ebf5); border-radius: 15px; background: color-mix(in srgb, var(--platform-color) 7%, #fff); box-shadow: 0 8px 18px color-mix(in srgb, var(--platform-color) 12%, transparent); place-items: center; }
.plugen-platform-logo { display: block; width: 100%; max-width: 100%; height: 100%; max-height: 100%; object-fit: contain; object-position: center; }
.plugen-platform-logo-fallback { font-family: Arial, sans-serif; font-weight: 800; }
.plugen-platform-card > span:nth-child(2) { flex: 1; min-width: 0; }
.plugen-platform-card strong,
.plugen-platform-card small { display: block; }
.plugen-platform-card strong { font-size: 1rem; }
.plugen-platform-card small { margin-top: 4px; color: var(--plg-muted); font-size: .76rem; }
.plugen-platform-card > .plugen-icon { width: 18px; height: 18px; color: #a0adbe; transition: .2s ease; }
.plugen-platform-card:hover > .plugen-icon { color: var(--platform-color); transform: translate(-3px, -3px); }
.plugen-platform-grid--large { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.plugen-platform-grid--large .plugen-platform-card { min-height: 128px; padding: 25px; }
.plugen-platform-grid--large .plugen-platform-card__icon { width: 70px; height: 70px; padding: 11px; font-size: 1.7rem; }

/* Product cards */
.plugen-products-section { background: var(--plg-soft-2); }
.plugen-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.plugen-product-card { overflow: hidden; border: 1px solid var(--plg-line); border-radius: 20px; background: #fff; box-shadow: 0 8px 28px rgba(12,42,88,.05); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.plugen-product-card:hover { border-color: #bed2f3; box-shadow: 0 22px 48px rgba(12,55,122,.12); transform: translateY(-7px); }
.plugen-product-card__visual { position: relative; display: block; height: 245px; overflow: hidden; color: inherit; background: #eaf2ff; text-decoration: none; }
.plugen-product-card__visual > img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.plugen-product-card:hover .plugen-product-card__visual > img { transform: scale(1.035); }
.plugen-version-badge { position: absolute; top: 15px; left: 15px; z-index: 2; padding: 5px 9px; color: #4c5e78; border: 1px solid rgba(203,215,233,.85); border-radius: 7px; background: rgba(255,255,255,.9); font-family: Arial, sans-serif; font-size: .65rem; font-weight: 700; backdrop-filter: blur(8px); }
.plugen-product-placeholder { position: relative; display: flex; height: 100%; overflow: hidden; flex-direction: column; align-items: center; justify-content: center; color: #fff; background: radial-gradient(circle at 20% 15%, #5ba1ff, transparent 28%), linear-gradient(145deg, #075dde, #052a73); text-align: center; }
.plugen-product-placeholder::before { position: absolute; inset: 0; opacity: .14; background-image: linear-gradient(rgba(255,255,255,.38) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.38) 1px, transparent 1px); background-size: 34px 34px; transform: perspective(400px) rotateX(48deg) scale(1.5) translateY(28%); content: ""; }
.plugen-product-placeholder__orbit { position: absolute; width: 230px; height: 105px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; transform: rotate(-16deg); }
.plugen-product-placeholder__tile { position: relative; z-index: 1; display: grid; width: 72px; height: 72px; margin-bottom: 18px; border: 1px solid rgba(255,255,255,.35); border-radius: 19px; background: rgba(255,255,255,.14); box-shadow: 0 18px 35px rgba(0,20,70,.23); backdrop-filter: blur(7px); place-items: center; }
.plugen-product-placeholder__tile .plugen-icon { width: 35px; height: 35px; }
.plugen-product-placeholder strong { position: relative; z-index: 1; max-width: 85%; color: #fff; font-family: Arial, sans-serif; font-size: 1.06rem; }
.plugen-product-placeholder small { position: relative; z-index: 1; margin-top: 4px; color: #c9ddff; font-family: Arial, sans-serif; font-size: .62rem; }
.plugen-product-card__body { padding: 21px; }
.plugen-product-card__platforms { position: relative; z-index: 3; display: flex; align-items: center; min-height: 38px; gap: 8px; margin-bottom: 11px; overflow: visible; }
.plugen-platform-chip { position: relative; display: grid; flex: 0 0 auto; width: 36px; height: 36px; padding: 6px; color: var(--platform-color); border: 1px solid color-mix(in srgb, var(--platform-color) 24%, #dce5f1); border-radius: 10px; outline: 0; background: color-mix(in srgb, var(--platform-color) 8%, #fff); box-shadow: 0 5px 14px color-mix(in srgb, var(--platform-color) 14%, rgba(8,34,73,.08)); cursor: help; appearance: none; place-items: center; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.plugen-platform-chip:hover,
.plugen-platform-chip:focus-visible,
.plugen-platform-chip.is-tooltip-visible { z-index: 20; border-color: color-mix(in srgb, var(--platform-color) 55%, #c9d5e5); box-shadow: 0 9px 20px color-mix(in srgb, var(--platform-color) 22%, rgba(8,34,73,.12)); transform: translateY(-2px); }
.plugen-platform-tooltip { position: absolute; top: calc(100% + 9px); right: 50%; z-index: 30; width: max-content; max-width: 180px; padding: 7px 10px; opacity: 0; visibility: hidden; color: #fff; border-radius: 9px; background: #10213d; box-shadow: 0 10px 26px rgba(7,23,49,.25); font-size: .68rem; font-weight: 700; line-height: 1.45; pointer-events: none; transform: translate(50%, -4px); transition: opacity .16s ease, visibility .16s ease, transform .16s ease; }
.plugen-platform-tooltip::before { position: absolute; right: 50%; bottom: 100%; border-right: 5px solid transparent; border-bottom: 6px solid #10213d; border-left: 5px solid transparent; content: ""; transform: translateX(50%); }
.plugen-platform-chip:hover .plugen-platform-tooltip,
.plugen-platform-chip:focus-visible .plugen-platform-tooltip,
.plugen-platform-chip.is-tooltip-visible .plugen-platform-tooltip { opacity: 1; visibility: visible; transform: translate(50%, 0); }
.plugen-product-card h2 { margin-bottom: 8px; font-family: Arial, "Yekan Bakh", sans-serif; font-size: 1.14rem; }
.plugen-product-card h2 a { color: var(--plg-ink); text-decoration: none; }
.plugen-product-card h2 a:hover { color: var(--plg-primary); }
.plugen-product-card__body > p { min-height: 52px; margin-bottom: 19px; color: var(--plg-muted); font-size: .84rem; line-height: 1.85; }
.plugen-product-card footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 15px; border-top: 1px solid #edf1f6; }
.plugen-product-card footer > strong { color: var(--plg-ink); font-size: .95rem; }
.plugen-product-card footer > a,
.plugen-product-card footer > span { display: inline-flex; align-items: center; gap: 5px; color: var(--plg-primary); font-size: .78rem; font-weight: 800; text-decoration: none; }
.plugen-product-card footer .plugen-icon { width: 15px; height: 15px; }
.plugen-product-card--upcoming { opacity: .96; }

/* Why, process, blog */
.plugen-why-section { position: relative; overflow: hidden; }
.plugen-why-section::before { position: absolute; top: 15%; right: -200px; width: 450px; height: 450px; border-radius: 50%; background: rgba(2,97,253,.045); filter: blur(2px); content: ""; }
.plugen-why-layout { position: relative; display: grid; grid-template-columns: .72fr 1.45fr; align-items: center; gap: clamp(50px, 8vw, 105px); }
.plugen-why-intro h2 { font-size: clamp(2rem, 4vw, 3.25rem); }
.plugen-why-intro > p { color: var(--plg-muted); line-height: 2; }
.plugen-quality-mark { display: flex; align-items: center; gap: 13px; margin-top: 30px; padding: 15px; border: 1px solid var(--plg-line); border-radius: 14px; background: var(--plg-soft-2); }
.plugen-quality-mark img { width: 31px; height: 38px; }
.plugen-quality-mark strong,
.plugen-quality-mark small { display: block; }
.plugen-quality-mark strong { color: var(--plg-ink); font-size: .9rem; }
.plugen-quality-mark small { color: var(--plg-muted); font-size: .72rem; }
.plugen-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.plugen-feature-grid article { padding: 22px; border: 1px solid var(--plg-line); border-radius: 16px; background: #fff; transition: .2s ease; }
.plugen-feature-grid article:hover { border-color: #c0d5f8; box-shadow: var(--plg-shadow-sm); transform: translateY(-3px); }
.plugen-feature-grid article > span { display: grid; width: 44px; height: 44px; margin-bottom: 16px; color: var(--plg-primary); border-radius: 12px; background: var(--plg-primary-soft); place-items: center; }
.plugen-feature-grid article > span .plugen-icon { width: 23px; height: 23px; }
.plugen-feature-grid h3 { margin-bottom: 6px; font-size: 1rem; }
.plugen-feature-grid p { margin: 0; color: var(--plg-muted); font-size: .8rem; line-height: 1.85; }

.plugen-process-section { background: linear-gradient(180deg, #f7faff, #fff); }
.plugen-process-grid { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; max-width: 1000px; margin-inline: auto; }
.plugen-process-grid::before { position: absolute; top: 54px; right: 16%; left: 16%; border-top: 1px dashed #aac7f2; content: ""; }
.plugen-process-grid article { position: relative; z-index: 1; padding: 0 22px; text-align: center; }
.plugen-process-grid article > span { position: absolute; top: -4px; right: calc(50% - 56px); display: grid; width: 24px; height: 24px; color: var(--plg-primary); border-radius: 50%; background: #fff; font-size: .68rem; font-weight: 800; box-shadow: 0 4px 12px rgba(2,97,253,.15); place-items: center; }
.plugen-process-grid article > div { display: grid; width: 86px; height: 86px; margin: 0 auto 22px; color: var(--plg-primary); border: 1px solid #bcd2f6; border-radius: 24px; background: #fff; box-shadow: 0 15px 35px rgba(2,75,180,.09); place-items: center; }
.plugen-process-grid article > div .plugen-icon { width: 37px; height: 37px; }
.plugen-process-grid h3 { margin-bottom: 6px; font-size: 1.02rem; }
.plugen-process-grid p { margin: 0; color: var(--plg-muted); font-size: .82rem; }

.plugen-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.plugen-post-card { overflow: hidden; border: 1px solid var(--plg-line); border-radius: 18px; background: #fff; transition: .25s ease; }
.plugen-post-card:hover { border-color: #bfd2f1; box-shadow: var(--plg-shadow-sm); transform: translateY(-5px); }
.plugen-post-card__image { display: block; height: 205px; overflow: hidden; background: var(--plg-soft); }
.plugen-post-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.plugen-post-card:hover .plugen-post-card__image img { transform: scale(1.04); }
.plugen-post-placeholder { position: relative; display: grid; width: 100%; height: 100%; overflow: hidden; color: #fff; background: linear-gradient(145deg, #085dda, #052a68); place-items: center; }
.plugen-post-placeholder::before { position: absolute; inset: 0; opacity: .15; background-image: radial-gradient(#fff 1px, transparent 1px); background-size: 18px 18px; content: ""; }
.plugen-post-placeholder .plugen-icon { position: relative; z-index: 1; width: 54px; height: 54px; }
.plugen-post-placeholder i { position: absolute; width: 130px; height: 130px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }
.plugen-post-placeholder i:last-child { width: 210px; height: 210px; }
.plugen-post-card__body { padding: 20px; }
.plugen-post-card__category { display: inline-flex; margin-bottom: 9px; padding: 4px 8px; color: var(--plg-primary); border-radius: 7px; background: var(--plg-primary-soft); font-size: .65rem; font-weight: 800; text-decoration: none; }
.plugen-post-card__meta { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; color: #8995a8; font-size: .71rem; }
.plugen-post-card__meta span::before { margin-left: 10px; color: #c0c9d6; content: "•"; }
.plugen-post-card h2 { margin-bottom: 8px; font-size: 1.04rem; line-height: 1.55; }
.plugen-post-card h2 a { color: var(--plg-ink); text-decoration: none; }
.plugen-post-card h2 a:hover { color: var(--plg-primary); }
.plugen-post-card p { margin-bottom: 16px; color: var(--plg-muted); font-size: .8rem; }
.plugen-post-card .plugen-text-link { font-size: .78rem; }

.plugen-support-cta-section { padding-top: 25px; }
.plugen-support-cta { position: relative; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 35px; overflow: hidden; padding: 38px 45px; color: #fff; border-radius: 25px; background: radial-gradient(circle at 12% 20%, rgba(109,171,255,.8), transparent 25%), linear-gradient(135deg, #0757d4, #05275f); box-shadow: 0 24px 55px rgba(6,55,130,.2); }
.plugen-support-cta::before { position: absolute; inset: 0; opacity: .12; background-image: radial-gradient(#fff 1px, transparent 1px); background-size: 21px 21px; content: ""; }
.plugen-support-cta > * { position: relative; z-index: 1; }
.plugen-support-cta__art { position: relative; display: grid; width: 135px; height: 135px; color: #fff; border: 1px solid rgba(255,255,255,.3); border-radius: 38px; background: rgba(255,255,255,.1); place-items: center; transform: rotate(-8deg); }
.plugen-support-cta__art .plugen-icon { width: 65px; height: 65px; transform: rotate(8deg); }
.plugen-support-cta__art i { position: absolute; inset: -20px; border: 1px solid rgba(255,255,255,.13); border-radius: 45px; }
.plugen-support-cta__art i:last-child { inset: -42px; }
.plugen-support-cta .plugen-eyebrow { color: #c5dcff; }
.plugen-support-cta h2 { margin-bottom: 8px; color: #fff; font-size: clamp(1.6rem, 3vw, 2.35rem); }
.plugen-support-cta p { margin: 0; color: #d4e4ff; }
.plugen-support-cta > div:last-child { display: flex; flex-wrap: wrap; gap: 9px; justify-content: flex-end; }

/* Footer */
.plugen-site-footer { color: #aebbd0; background: #06152f; }
.plugen-footer-grid { display: grid; grid-template-columns: 1.25fr .75fr 1.15fr .95fr; gap: 38px; padding-top: 72px; padding-bottom: 60px; }
.plugen-footer-brand .plugen-brand strong { color: #fff; }
.plugen-footer-brand .plugen-brand small { color: #8296b7; }
.plugen-footer-brand > p { max-width: 330px; margin: 20px 0; color: #94a5bf; font-size: .83rem; line-height: 2; }
.plugen-social-links { display: flex; gap: 8px; }
.plugen-social-links a { display: grid; width: 36px; height: 36px; color: #c9d7eb; border: 1px solid #243a5c; border-radius: 10px; background: #0b2041; font-family: Arial, sans-serif; font-size: .75rem; font-weight: 800; text-decoration: none; place-items: center; }
.plugen-social-links a:hover { color: #fff; border-color: #3b72c5; background: #0b4da9; }
.plugen-footer-column h2 { margin: 7px 0 21px; color: #fff; font-size: .95rem; }
.plugen-footer-column li + li { margin-top: 10px; }
.plugen-footer-column a { color: #9aabc4; font-size: .8rem; text-decoration: none; }
.plugen-footer-column a:hover { color: #fff; }
.plugen-footer-contact ul { margin: 0; padding: 0; list-style: none; }
.plugen-footer-contact li { display: flex; align-items: flex-start; gap: 10px; }
.plugen-footer-contact li > .plugen-icon { width: 19px; height: 19px; margin-top: 4px; color: #6d9eea; }
.plugen-footer-contact li span,
.plugen-footer-contact li small { display: block; }
.plugen-footer-contact li span { color: #7488a7; font-size: .7rem; }
.plugen-footer-contact li a,
.plugen-footer-contact li strong,
.plugen-footer-contact li small { margin-top: 2px; color: #b4c1d4; font-size: .78rem; font-weight: 600; }
.plugen-trust-badges { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.plugen-trust-badge { display: flex; min-height: 82px; align-items: center; justify-content: center; flex-direction: column; gap: 5px; padding: 8px 5px; color: #9eb2cf; border: 1px solid rgba(163,187,220,.2); border-radius: 12px; background: rgba(255,255,255,.04); text-align: center; text-decoration: none; }
.plugen-trust-badge-slot { display: flex; min-width: 0; }
.plugen-trust-badge-slot > .plugen-trust-badge { width: 100%; min-width: 0; }
.plugen-trust-badge--enamad { overflow: hidden; cursor: pointer; }
.plugen-trust-badge--enamad img { width: 66px; height: 72px; max-width: 100%; object-fit: contain; }
.plugen-trust-badge:hover { color: #fff; border-color: rgba(163,187,220,.4); background: rgba(255,255,255,.07); }
.plugen-trust-badge i { display: grid; width: 33px; height: 33px; color: #8db4ef; border-radius: 10px; background: rgba(64,132,230,.14); place-items: center; }
.plugen-trust-badge .plugen-icon { width: 18px; height: 18px; }
.plugen-trust-badge small { color: inherit; font-size: .56rem; line-height: 1.45; }
.plugen-trust-badge img { width: 58px; height: 58px; object-fit: contain; }
.plugen-footer-trust > p { margin: 10px 0 0; color: #778ca9; font-size: .6rem; line-height: 1.7; }
.plugen-footer-bottom { border-top: 1px solid #162a48; }
.plugen-footer-bottom .plugen-container { display: flex; align-items: center; justify-content: space-between; min-height: 64px; gap: 20px; }
.plugen-footer-bottom p { margin: 0; color: #7486a1; font-size: .72rem; }
.plugen-footer-bottom > .plugen-container > div { display: flex; align-items: center; gap: 18px; }
.plugen-footer-bottom ul { display: flex; gap: 15px; }
.plugen-footer-bottom a,
.plugen-footer-bottom span { color: #6f829f; font-size: .7rem; text-decoration: none; }

/* Product detail */
.plugen-product-page { overflow: hidden; }
.plugen-product-hero { padding: 20px 0 75px; }
.plugen-product-hero__grid { display: grid; grid-template-columns: minmax(390px, .9fr) minmax(0, 1.1fr); align-items: center; gap: clamp(45px, 7vw, 90px); }
.plugen-product-hero__visual { position: relative; min-height: 440px; }
.plugen-product-hero__visual > img,
.plugen-product-hero__visual > .plugen-product-placeholder { position: relative; z-index: 1; width: 100%; height: 440px; border-radius: 26px; object-fit: cover; box-shadow: 0 30px 70px rgba(6,58,135,.18); }
.plugen-product-hero__shape { position: absolute; inset: 45px -30px -25px 45px; border: 1px solid #d5e3f8; border-radius: 30px; background: var(--plg-soft); transform: rotate(-4deg); }
.plugen-product-platforms { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 17px; }
.plugen-product-platforms a { display: inline-flex; align-items: center; gap: 8px; padding: 6px 11px; color: #4d5e77; border: 1px solid var(--plg-line); border-radius: 999px; background: #fff; font-size: .73rem; font-weight: 700; text-decoration: none; }
.plugen-product-platforms a span { display: grid; width: 28px; height: 28px; padding: 4px; color: var(--platform-color); border: 1px solid color-mix(in srgb, var(--platform-color) 18%, #e4ebf5); border-radius: 8px; background: color-mix(in srgb, var(--platform-color) 7%, #fff); place-items: center; }
.plugen-product-hero h1 { margin-bottom: 15px; font-family: Arial, "Yekan Bakh", sans-serif; font-size: clamp(2.25rem, 5vw, 4.25rem); letter-spacing: -.035em; }
.plugen-product-tagline { max-width: 700px; margin-bottom: 24px; color: #5a6980; font-size: 1.06rem; line-height: 2; }
.plugen-product-meta-strip { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 23px; }
.plugen-product-meta-strip > span { display: grid; grid-template-columns: 30px auto; grid-template-rows: auto auto; min-width: 120px; padding: 9px 12px; border: 1px solid var(--plg-line); border-radius: 12px; background: #fff; }
.plugen-product-meta-strip .plugen-icon { grid-row: 1 / 3; align-self: center; width: 20px; height: 20px; color: var(--plg-primary); }
.plugen-product-meta-strip small { color: #8c98aa; font-size: .62rem; }
.plugen-product-meta-strip strong { color: var(--plg-ink); font-size: .77rem; }
.plugen-product-buybox { padding: 19px; border: 1px solid #cdddf4; border-radius: 17px; background: linear-gradient(135deg, #f7faff, #fff); box-shadow: 0 12px 30px rgba(17,64,132,.06); }
.plugen-product-buybox { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.plugen-product-actions { display: grid; grid-template-columns: repeat(2, minmax(max-content, 1fr)); align-items: stretch; gap: 10px; }
.plugen-product-actions--has-both-free-links .plugen-product-actions__repository { grid-column: 1 / -1; }
.plugen-product-actions > form,
.plugen-product-actions .edd_purchase_submit_wrapper { height: 100%; margin: 0; }
.plugen-product-actions .plugen-button { height: 100%; white-space: nowrap; }
.plugen-product-buybox small,
.plugen-product-buybox strong { display: block; }
.plugen-product-buybox small { color: var(--plg-muted); font-size: .7rem; }
.plugen-product-buybox strong { margin-top: 2px; color: var(--plg-ink); font-size: 1.25rem; }
.plugen-product-buybox form { margin: 0; }
.plugen-product-guarantee { display: flex; align-items: center; gap: 7px; margin: 14px 0 0; color: #6f7e94; font-size: .72rem; }
.plugen-product-guarantee .plugen-icon { width: 17px; height: 17px; color: var(--plg-success); }
.plugen-product-nav { position: sticky; z-index: 50; top: 74px; border-block: 1px solid var(--plg-line); background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.admin-bar .plugen-product-nav { top: 106px; }
.plugen-product-nav .plugen-container { display: flex; overflow-x: auto; scrollbar-width: none; }
.plugen-product-nav a { flex: 0 0 auto; padding: 15px 17px; color: #67758b; border-bottom: 2px solid transparent; font-size: .79rem; font-weight: 700; text-decoration: none; }
.plugen-product-nav a:hover { color: var(--plg-primary); border-bottom-color: var(--plg-primary); }
.plugen-content-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, .55fr); align-items: start; gap: clamp(45px, 7vw, 90px); }
.plugen-prose { color: #3d4d65; font-size: 1rem; line-height: 2.05; }
.plugen-prose h2 { margin: 1.6em 0 .55em; font-size: clamp(1.55rem, 3vw, 2.1rem); }
.plugen-prose h3 { margin: 1.4em 0 .5em; font-size: 1.25rem; }
.plugen-prose h2:first-child,
.plugen-prose h3:first-child { margin-top: 0; }
.plugen-prose p { margin-bottom: 1.35em; }
.plugen-prose a { font-weight: 700; }
.plugen-prose ul,
.plugen-prose ol { padding-right: 1.4em; }
.plugen-prose blockquote { margin: 2em 0; padding: 18px 22px; border-right: 4px solid var(--plg-primary); border-radius: 0 12px 12px 0; background: var(--plg-soft); }
.plugen-prose img { border-radius: 16px; }
.plugen-prose table { display: block; width: 100%; overflow-x: auto; border-collapse: collapse; }
.plugen-prose th,
.plugen-prose td { padding: 11px 14px; border: 1px solid var(--plg-line); }
.plugen-product-requirements { position: sticky; top: 150px; padding: 23px; border: 1px solid var(--plg-line); border-radius: 17px; background: var(--plg-soft-2); }
.plugen-product-requirements h2 { font-size: 1.05rem; }
.plugen-product-requirements dl { margin: 18px 0; }
.plugen-product-requirements dl div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--plg-line); }
.plugen-product-requirements dt { color: var(--plg-muted); font-size: .75rem; }
.plugen-product-requirements dd { margin: 0; color: var(--plg-ink); font-size: .76rem; font-weight: 700; text-align: left; }
.plugen-product-requirements > p { display: flex; align-items: flex-start; gap: 7px; margin: 0; color: #59708f; font-size: .7rem; }
.plugen-product-requirements > p .plugen-icon { width: 17px; height: 17px; color: var(--plg-success); }
.plugen-product-features { background: #fff; }
.plugen-feature-grid--product { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plugen-feature-grid--product article { padding: 26px; }
.plugen-product-gallery { background: var(--plg-soft-2); }
.plugen-gallery-grid { display: grid; grid-template-columns: 1.45fr 1fr; grid-template-rows: repeat(2, 215px); gap: 16px; }
.plugen-gallery-grid button,
.plugen-gallery-placeholder { position: relative; display: grid; width: 100%; height: 100%; overflow: hidden; padding: 0; color: #fff; border: 0; border-radius: 17px; background: linear-gradient(145deg, #eaf2ff, #dceaff); cursor: pointer; place-items: center; }
.plugen-gallery-grid .is-featured { grid-row: 1 / 3; }
.plugen-gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.plugen-gallery-grid button:hover img { transform: scale(1.03); }
.plugen-gallery-placeholder { align-content: center; color: #7993b7; cursor: default; }
.plugen-gallery-placeholder::before { position: absolute; inset: 0; opacity: .5; background-image: radial-gradient(#afc5e6 1px, transparent 1px); background-size: 20px 20px; content: ""; }
.plugen-gallery-placeholder > * { position: relative; z-index: 1; }
.plugen-gallery-placeholder span { display: grid; width: 54px; height: 54px; margin-bottom: 10px; color: var(--plg-primary); border-radius: 15px; background: rgba(255,255,255,.72); place-items: center; }
.plugen-gallery-placeholder strong { color: #456389; font-size: .92rem; }
.plugen-gallery-placeholder small { margin-top: 2px; font-size: .68rem; }
.plugen-gallery-dialog { width: min(94vw, 1100px); padding: 0; overflow: visible; border: 0; border-radius: 18px; background: transparent; }
.plugen-gallery-dialog::backdrop { background: rgba(1,10,26,.88); }
.plugen-gallery-dialog img { width: 100%; max-height: 85vh; border-radius: 18px; object-fit: contain; }
.plugen-gallery-dialog button { position: absolute; z-index: 2; top: -16px; left: -16px; display: grid; width: 42px; height: 42px; color: #fff; border: 0; border-radius: 50%; background: var(--plg-primary); cursor: pointer; place-items: center; }
.plugen-product-video { padding-top: 0; background: var(--plg-soft-2); }
.plugen-video-frame { overflow: hidden; aspect-ratio: 16 / 7; border-radius: 24px; background: #051c43; box-shadow: var(--plg-shadow); }
.plugen-video-frame iframe,
.plugen-video-frame video { width: 100%; height: 100%; }
.plugen-video-frame iframe { border: 0; }
.plugen-video-frame .wp-video { width: 100% !important; height: 100%; }
.plugen-video-placeholder { position: relative; display: flex; height: 100%; align-items: center; justify-content: center; gap: 18px; color: #fff; background: radial-gradient(circle at 25% 30%, rgba(40,121,245,.75), transparent 30%), linear-gradient(145deg, #07377f, #03152f); }
.plugen-video-placeholder::before { position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.3) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 1px); background-size: 42px 42px; content: ""; }
.plugen-video-placeholder button { position: relative; z-index: 1; display: grid; width: 70px; height: 70px; padding: 0; color: var(--plg-primary); border: 0; border-radius: 50%; background: #fff; box-shadow: 0 15px 35px rgba(0,0,0,.22); cursor: default; place-items: center; }
.plugen-video-placeholder button .plugen-icon { width: 30px; height: 30px; }
.plugen-video-placeholder span { position: relative; z-index: 1; }
.plugen-video-placeholder strong,
.plugen-video-placeholder small { display: block; }
.plugen-video-placeholder strong { color: #fff; font-size: 1.2rem; }
.plugen-video-placeholder small { color: #c6d9f8; }
.plugen-comparison-section { background: var(--plg-soft-2); }
.plugen-comparison-table-wrap { overflow-x: auto; border: 1px solid var(--plg-line); border-radius: 18px; background: #fff; box-shadow: var(--plg-shadow-sm); }
.plugen-comparison-table { width: 100%; min-width: 680px; border-collapse: collapse; }
.plugen-comparison-table th,
.plugen-comparison-table td { width: 25%; padding: 16px 20px; border-bottom: 1px solid var(--plg-line); text-align: center; }
.plugen-comparison-table th:first-child { width: 50%; text-align: right; }
.plugen-comparison-table thead th { color: var(--plg-muted); background: #f8faff; font-size: .84rem; }
.plugen-comparison-table thead .is-pro { color: #fff; background: var(--plg-primary); }
.plugen-comparison-table thead .is-pro span { display: inline-flex; margin-left: 8px; padding: 3px 8px; border-radius: 99px; background: rgba(255,255,255,.16); font-size: .75rem; }
.plugen-comparison-table thead .is-pro small { font-size: .65rem; font-weight: 600; }
.plugen-comparison-table tbody th { color: var(--plg-ink); font-size: .85rem; }
.plugen-comparison-table td { color: #66758a; font-size: .82rem; }
.plugen-comparison-table td.is-pro { color: var(--plg-primary); background: #f4f8ff; font-weight: 800; }
.plugen-comparison-table td.is-pro .plugen-icon { display: inline-block; width: 17px; height: 17px; margin-left: 5px; vertical-align: middle; }
.plugen-changelog-section .plugen-content-layout { grid-template-columns: .65fr 1.35fr; }
.plugen-changelog-list { position: relative; display: grid; gap: 14px; }
.plugen-changelog-list::before { position: absolute; top: 0; right: 24px; bottom: 0; width: 1px; background: #cddbf0; content: ""; }
.plugen-changelog-list article { position: relative; margin-right: 55px; padding: 20px; border: 1px solid var(--plg-line); border-radius: 15px; background: #fff; }
.plugen-changelog-list article::before { position: absolute; top: 25px; right: -42px; width: 14px; height: 14px; border: 4px solid #fff; border-radius: 50%; background: var(--plg-primary); box-shadow: 0 0 0 1px #b9cce8; content: ""; }
.plugen-changelog-list header { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; }
.plugen-changelog-list header strong { color: var(--plg-ink); font-family: Arial, sans-serif; }
.plugen-changelog-list header span { padding: 3px 8px; color: var(--plg-success); border-radius: 99px; background: #e9f9f3; font-size: .63rem; font-weight: 800; }
.plugen-changelog-list header time { margin-right: auto; color: #929daf; font-size: .68rem; }
.plugen-changelog-list ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.plugen-changelog-list li { display: flex; gap: 6px; color: #53627a; font-size: .78rem; }
.plugen-changelog-list li .plugen-icon { width: 16px; height: 16px; margin-top: 4px; color: var(--plg-success); }
.plugen-faq-section { background: var(--plg-soft-2); }
.plugen-faq-layout { display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.35fr); align-items: start; gap: clamp(45px, 8vw, 100px); }
.plugen-faq-layout > div:first-child { position: sticky; top: 145px; }
.plugen-faq-layout > div:first-child h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.plugen-faq-layout > div:first-child p { color: var(--plg-muted); }
.plugen-faq-list { display: grid; gap: 10px; }
.plugen-faq-list article { overflow: hidden; border: 1px solid var(--plg-line); border-radius: 14px; background: #fff; }
.plugen-faq-list h2,
.plugen-faq-list h3 { margin: 0; font-size: 1rem; }
.plugen-faq-list button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 19px; color: var(--plg-ink); border: 0; background: transparent; text-align: right; cursor: pointer; }
.plugen-faq-list button span { font-weight: 800; }
.plugen-faq-list button i { position: relative; flex: 0 0 auto; width: 22px; height: 22px; border-radius: 50%; background: var(--plg-primary-soft); }
.plugen-faq-list button i::before,
.plugen-faq-list button i::after { position: absolute; top: 10px; right: 6px; width: 10px; height: 2px; background: var(--plg-primary); content: ""; }
.plugen-faq-list button i::after { transform: rotate(90deg); transition: transform .2s ease; }
.plugen-faq-list button[aria-expanded="true"] i::after { transform: rotate(0); }
.plugen-faq-list article > div { padding: 0 19px 17px; color: var(--plg-muted); font-size: .84rem; }
.plugen-faq-list article > div p:last-child { margin-bottom: 0; }
.plugen-product-final-cta { padding-top: 25px; }
.plugen-product-final-cta__card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, auto); align-items: center; gap: 35px; padding: 42px; color: #fff; border-radius: 24px; background: radial-gradient(circle at 15% 15%, rgba(91,160,255,.85), transparent 28%), linear-gradient(135deg, #0759d9, #062758); }
.plugen-product-final-cta .plugen-eyebrow { color: #c6ddff; }
.plugen-product-final-cta h2 { margin-bottom: 7px; color: #fff; font-size: clamp(1.6rem, 3vw, 2.4rem); }
.plugen-product-final-cta p { margin: 0; color: #d2e3ff; }
.plugen-product-final-cta__copy { min-width: 0; }
.plugen-product-final-cta__action { display: flex; min-width: 220px; flex-direction: column; align-items: stretch; gap: 8px; }
.plugen-product-final-cta__action > form { margin: 0; }
.plugen-product-final-cta__action .plugen-button { width: 100%; }
.plugen-product-final-cta strong { color: #fff; font-size: 1.25rem; }

/* Catalog and systems */
.plugen-catalog-section { padding-top: 45px; }
.plugen-catalog-toolbar { display: grid; grid-template-columns: minmax(280px, 1fr) 240px auto; align-items: end; gap: 12px; margin-bottom: 22px; padding: 15px; border: 1px solid var(--plg-line); border-radius: 15px; background: var(--plg-soft-2); }
.plugen-catalog-toolbar > div:first-child { position: relative; }
.plugen-catalog-toolbar > div:first-child .plugen-icon { position: absolute; top: 14px; right: 14px; width: 19px; height: 19px; color: #98a4b6; }
.plugen-catalog-toolbar input,
.plugen-catalog-toolbar select { width: 100%; height: 48px; padding: 0 14px; border: 1px solid var(--plg-line); border-radius: 11px; outline: 0; background: #fff; }
.plugen-catalog-toolbar > div:first-child input { padding-right: 43px; }
.plugen-catalog-toolbar label { display: block; margin-bottom: 5px; color: var(--plg-muted); font-size: .72rem; font-weight: 700; }
.plugen-catalog-toolbar input:focus,
.plugen-catalog-toolbar select:focus { border-color: var(--plg-primary); box-shadow: 0 0 0 3px rgba(2,97,253,.08); }
.plugen-catalog-summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 25px; }
.plugen-catalog-summary p { margin: 0; color: var(--plg-muted); font-size: .82rem; }
.plugen-catalog-summary a { font-size: .78rem; font-weight: 800; text-decoration: none; }
.plugen-catalog-empty { display: flex; min-height: 360px; flex-direction: column; align-items: center; justify-content: center; padding: 40px; border: 1px dashed #bcd0ec; border-radius: 21px; background: var(--plg-soft-2); text-align: center; }
.plugen-catalog-empty > span { display: grid; width: 68px; height: 68px; margin-bottom: 18px; color: var(--plg-primary); border-radius: 19px; background: var(--plg-primary-soft); place-items: center; }
.plugen-catalog-empty > span .plugen-icon { width: 34px; height: 34px; }
.plugen-catalog-empty h2 { margin-bottom: 7px; font-size: 1.35rem; }
.plugen-catalog-empty p { max-width: 520px; color: var(--plg-muted); }
.plugen-platform-empty-icon { display: grid; width: 68px; height: 68px; margin-bottom: 15px; padding: 13px; color: var(--platform-color) !important; border-radius: 18px; background: color-mix(in srgb, var(--platform-color) 8%, #fff) !important; place-items: center; }
.plugen-pagination { display: flex; width: 100%; align-items: center; justify-content: center; margin-top: 48px; }
.plugen-pagination ul.page-numbers { display: flex; max-width: 100%; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 0; padding: 8px; border: 1px solid #dbe5f2; border-radius: 17px; background: rgba(255,255,255,.92); box-shadow: 0 12px 35px rgba(12,47,94,.08); list-style: none; }
.plugen-pagination li { display: flex; align-items: center; justify-content: center; margin: 0; }
.plugen-pagination li > a,
.plugen-pagination li > span { display: inline-flex; min-width: 44px; height: 44px; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; color: #52627a; border: 1px solid transparent; border-radius: 12px; background: transparent; font-size: .82rem; font-weight: 800; line-height: 1; text-align: center; text-decoration: none; transition: color .18s ease, border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.plugen-pagination li > a:hover { color: var(--plg-primary); border-color: #c8daf5; background: var(--plg-primary-soft); box-shadow: 0 7px 18px rgba(2,97,253,.1); transform: translateY(-2px); }
.plugen-pagination li > a:focus-visible { outline: 3px solid rgba(2,97,253,.2); outline-offset: 2px; }
.plugen-pagination li > .current { color: #fff; border-color: var(--plg-primary); background: linear-gradient(145deg, var(--plg-primary), #064bbf); box-shadow: 0 9px 21px rgba(2,97,253,.24); }
.plugen-pagination li > .prev,
.plugen-pagination li > .next { min-width: 86px; color: var(--plg-primary); border-color: #d6e4f8; background: #f7faff; }
.plugen-pagination li > .dots { min-width: 28px; padding-inline: 2px; color: #91a0b5; }
.plugen-system-promise { padding-top: 0; }
.plugen-system-promise .plugen-container > div { padding: 45px; border: 1px solid #cbdcf5; border-radius: 24px; background: linear-gradient(130deg, #f4f8ff, #fff); text-align: center; }
.plugen-system-promise span { display: grid; width: 66px; height: 66px; margin: 0 auto 18px; color: var(--plg-primary); border-radius: 19px; background: #fff; box-shadow: var(--plg-shadow-sm); place-items: center; }
.plugen-system-promise span .plugen-icon { width: 31px; height: 31px; }
.plugen-system-promise p { max-width: 620px; margin-inline: auto; color: var(--plg-muted); }
.plugen-platform-archive-hero { padding: 60px 0; background: linear-gradient(135deg, color-mix(in srgb, var(--platform-color) 10%, #f6f9ff), #fff); }
.plugen-platform-archive-hero .plugen-container { display: flex; align-items: center; gap: 25px; }
.plugen-platform-archive-icon { display: grid; flex: 0 0 auto; width: 90px; height: 90px; padding: 18px; color: var(--platform-color); border: 1px solid color-mix(in srgb, var(--platform-color) 18%, #e4ebf5); border-radius: 24px; background: #fff; box-shadow: 0 20px 40px color-mix(in srgb, var(--platform-color) 18%, transparent); place-items: center; }
.plugen-platform-archive-hero h1 { margin-bottom: 6px; font-size: clamp(2.1rem, 4.5vw, 3.5rem); }
.plugen-platform-archive-hero p { margin: 0; color: var(--plg-muted); }

/* Docs */
.plugen-docs-hero { position: relative; overflow: hidden; padding: 82px 0 92px; color: #fff; background: radial-gradient(circle at 20% 10%, rgba(71,148,255,.8), transparent 30%), linear-gradient(135deg, #073b91, #031a3e); text-align: center; }
.plugen-docs-hero::before { position: absolute; inset: 0; opacity: .13; background-image: radial-gradient(#fff 1px, transparent 1px); background-size: 22px 22px; content: ""; }
.plugen-docs-hero .plugen-container { position: relative; }
.plugen-docs-hero .plugen-eyebrow { color: #c9ddff; }
.plugen-docs-hero h1 { margin-bottom: 10px; color: #fff; font-size: clamp(2.4rem, 5vw, 4rem); }
.plugen-docs-hero p { color: #d4e4ff; }
.plugen-docs-hero form { display: flex; max-width: 720px; align-items: center; gap: 8px; margin: 28px auto 0; padding: 7px; border: 1px solid rgba(255,255,255,.25); border-radius: 15px; background: rgba(255,255,255,.12); backdrop-filter: blur(8px); }
.plugen-docs-hero form > .plugen-icon { margin-right: 8px; color: #d5e5ff; }
.plugen-docs-hero input { flex: 1; min-width: 0; height: 44px; color: #fff; border: 0; outline: 0; background: transparent; }
.plugen-docs-hero input::placeholder { color: rgba(255,255,255,.67); }
.plugen-docs-layout { display: grid; grid-template-columns: 255px minmax(0, 1fr); align-items: start; gap: 45px; }
.plugen-docs-sidebar { position: sticky; top: 110px; display: grid; gap: 5px; padding: 17px; border: 1px solid var(--plg-line); border-radius: 16px; background: var(--plg-soft-2); }
.plugen-docs-sidebar > h2 { padding: 4px 9px 10px; border-bottom: 1px solid var(--plg-line); font-size: .9rem; }
.plugen-docs-sidebar > a { display: flex; align-items: center; gap: 8px; padding: 9px 10px; color: #58677e; border-radius: 9px; font-size: .77rem; font-weight: 700; text-decoration: none; }
.plugen-docs-sidebar > a:hover,
.plugen-docs-sidebar > a.is-active { color: var(--plg-primary); background: #e9f1ff; }
.plugen-docs-sidebar > a .plugen-icon { width: 17px; height: 17px; }
.plugen-docs-sidebar > a small { margin-right: auto; }
.plugen-docs-sidebar > div { margin-top: 14px; padding: 15px; border-radius: 12px; background: #fff; }
.plugen-docs-sidebar > div strong { color: var(--plg-ink); font-size: .78rem; }
.plugen-docs-sidebar > div p { margin: 5px 0 11px; color: var(--plg-muted); font-size: .7rem; }
.plugen-docs-sidebar > div .plugen-button { width: 100%; min-height: 38px; padding: 0 10px; font-size: .72rem; }
.plugen-doc-list { display: grid; gap: 11px; }
.plugen-doc-list article { border: 1px solid var(--plg-line); border-radius: 14px; background: #fff; transition: .2s ease; }
.plugen-doc-list article:hover { border-color: #bed2f4; box-shadow: var(--plg-shadow-sm); transform: translateX(-3px); }
.plugen-doc-card__link { display: grid; grid-template-columns: 45px minmax(0, 1fr) 24px; align-items: center; gap: 14px; padding: 18px; color: inherit; border-radius: inherit; text-decoration: none; }
.plugen-doc-card__link:focus-visible { outline: 3px solid rgba(2,97,253,.22); outline-offset: 3px; }
.plugen-doc-card__icon { display: grid; width: 45px; height: 45px; color: var(--plg-primary); border-radius: 12px; background: var(--plg-primary-soft); place-items: center; }
.plugen-doc-list h3 { margin: 0 0 4px; font-size: .96rem; }
.plugen-doc-list h3 { color: var(--plg-ink); }
.plugen-doc-list p { margin: 0 0 4px; color: var(--plg-muted); font-size: .75rem; }
.plugen-doc-list small { color: #929daf; font-size: .66rem; }
.plugen-doc-card__link > .plugen-icon { color: #9caabd; transition: transform .18s ease, color .18s ease; }
.plugen-doc-list article:hover .plugen-doc-card__link > .plugen-icon { color: var(--plg-primary); transform: translateX(-3px); }
.plugen-doc-single { padding-bottom: 80px; }
.plugen-doc-single-layout { display: grid; grid-template-columns: 235px minmax(0, 820px); justify-content: center; align-items: start; gap: 50px; padding-top: 35px; }
.plugen-doc-single-sidebar { position: sticky; top: 110px; display: grid; gap: 7px; padding-left: 20px; border-left: 1px solid var(--plg-line); }
.plugen-doc-single-sidebar > a:first-child { display: flex; align-items: center; gap: 6px; margin-bottom: 15px; color: var(--plg-primary); font-weight: 800; }
.plugen-doc-single-sidebar > a:first-child .plugen-icon { width: 17px; height: 17px; transform: rotate(180deg); }
.plugen-doc-single-sidebar h2 { margin-bottom: 8px; font-size: .9rem; }
.plugen-doc-single-sidebar a { color: #68768b; font-size: .75rem; text-decoration: none; }
.plugen-doc-single-sidebar a:hover { color: var(--plg-primary); }
.plugen-doc-article > header { padding-bottom: 27px; border-bottom: 1px solid var(--plg-line); }
.plugen-doc-article > header h1 { font-size: clamp(2rem, 4vw, 3.25rem); }
.plugen-doc-article > header > div { display: flex; gap: 15px; color: #8a96a8; font-size: .72rem; }
.plugen-doc-article > header span { display: flex; align-items: center; gap: 5px; }
.plugen-doc-article > header .plugen-icon { width: 15px; height: 15px; }
.plugen-doc-article .plugen-prose { padding: 35px 0; }
.plugen-doc-article > footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px; border-radius: 14px; background: var(--plg-soft); }
.plugen-doc-article > footer strong,
.plugen-doc-article > footer span { display: block; }
.plugen-doc-article > footer strong { color: var(--plg-ink); font-size: .86rem; }
.plugen-doc-article > footer span { color: var(--plg-muted); font-size: .72rem; }

/* Contact, about, support, legal */
.plugen-contact-layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: clamp(50px, 8vw, 95px); }
.plugen-contact-info h2 { font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
.plugen-contact-info > p { color: var(--plg-muted); }
.plugen-contact-cards { display: grid; gap: 10px; margin-top: 25px; }
.plugen-contact-cards article { display: flex; align-items: center; gap: 13px; padding: 14px; border: 1px solid var(--plg-line); border-radius: 13px; background: #fff; }
.plugen-contact-cards article > .plugen-icon { width: 38px; height: 38px; padding: 9px; color: var(--plg-primary); border-radius: 10px; background: var(--plg-primary-soft); }
.plugen-contact-cards small,
.plugen-contact-cards a,
.plugen-contact-cards strong { display: block; }
.plugen-contact-cards small { color: #8c98aa; font-size: .66rem; }
.plugen-contact-cards a,
.plugen-contact-cards strong { color: var(--plg-ink); font-size: .8rem; text-decoration: none; }
.plugen-response-note { display: flex; align-items: center; gap: 10px; margin-top: 20px; padding: 12px 14px; border-radius: 11px; background: #eaf9f3; }
.plugen-response-note i { width: 9px; height: 9px; border-radius: 50%; background: var(--plg-success); box-shadow: 0 0 0 5px rgba(11,138,91,.12); }
.plugen-response-note strong,
.plugen-response-note small { display: block; }
.plugen-response-note strong { color: #116d4d; font-size: .76rem; }
.plugen-response-note small { color: #5b8c78; font-size: .66rem; }
.plugen-contact-form-card { padding: clamp(24px, 4vw, 36px); border: 1px solid var(--plg-line); border-radius: 20px; background: #fff; box-shadow: var(--plg-shadow-sm); }
.plugen-contact-form-card > h2 { margin-bottom: 4px; }
.plugen-contact-form-card > p { color: var(--plg-muted); font-size: .8rem; }
.plugen-form p { margin: 0 0 15px; }
.plugen-form label { display: block; margin-bottom: 6px; color: var(--plg-ink); font-size: .78rem; font-weight: 800; }
.plugen-form input:not([type="checkbox"]),
.plugen-form textarea,
.plugen-form select { width: 100%; min-height: 49px; padding: 10px 13px; border: 1px solid var(--plg-line); border-radius: 11px; outline: 0; background: #fff; }
.plugen-form textarea { min-height: 145px; resize: vertical; }
.plugen-form input:focus,
.plugen-form textarea:focus,
.plugen-form select:focus { border-color: var(--plg-primary); box-shadow: 0 0 0 3px rgba(2,97,253,.09); }
.plugen-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; }
.plugen-honeypot { position: absolute !important; left: -9999px !important; }
.plugen-notice { margin-bottom: 18px; padding: 12px 15px; border: 1px solid; border-radius: 10px; font-size: .8rem; }
.plugen-notice--success { color: #08734b; border-color: #a9e6ce; background: #ecfbf5; }
.plugen-notice--error { color: #a51d35; border-color: #f1b8c2; background: #fff1f3; }
.plugen-about-intro .plugen-content-layout { grid-template-columns: .7fr 1.3fr; align-items: center; }
.plugen-about-art { position: relative; display: grid; min-height: 360px; border: 1px solid #c9daf4; border-radius: 28px; background: radial-gradient(circle at 25% 20%, #fff, transparent 25%), linear-gradient(145deg,#edf4ff,#dceaff); place-items: center; }
.plugen-about-art img { position: relative; z-index: 2; filter: drop-shadow(0 20px 25px rgba(2,70,180,.2)); }
.plugen-about-art i { position: absolute; width: 235px; height: 115px; border: 1px solid #aec6e9; border-radius: 50%; transform: rotate(-17deg); }
.plugen-about-art i:last-child { width: 315px; height: 155px; opacity: .55; transform: rotate(12deg); }
.plugen-values-section { background: var(--plg-soft-2); }
.plugen-values-section .plugen-feature-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.plugen-support-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.plugen-support-options > a { padding: 28px; color: var(--plg-body); border: 1px solid var(--plg-line); border-radius: 19px; background: #fff; text-decoration: none; transition: .25s ease; }
.plugen-support-options > a:hover { color: var(--plg-body); border-color: #b9cff2; box-shadow: var(--plg-shadow-sm); transform: translateY(-5px); }
.plugen-support-options > a > span { display: grid; width: 53px; height: 53px; margin-bottom: 20px; color: var(--plg-primary); border-radius: 15px; background: var(--plg-primary-soft); place-items: center; }
.plugen-support-options h2 { margin-bottom: 8px; font-size: 1.2rem; }
.plugen-support-options p { min-height: 76px; color: var(--plg-muted); font-size: .82rem; }
.plugen-support-options strong { display: flex; align-items: center; gap: 6px; color: var(--plg-primary); font-size: .78rem; }
.plugen-support-options strong .plugen-icon { width: 16px; height: 16px; }
.plugen-legal-layout { display: grid; grid-template-columns: 260px minmax(0, 760px); justify-content: center; align-items: start; gap: 55px; }
.plugen-legal-layout > aside { position: sticky; top: 110px; padding: 20px; border: 1px solid #f0dcae; border-radius: 14px; background: #fff9e9; }
.plugen-legal-layout > aside > span { display: grid; width: 43px; height: 43px; margin-bottom: 13px; color: #b67700; border-radius: 11px; background: #ffedbd; place-items: center; }
.plugen-legal-layout > aside strong { color: #775000; font-size: .83rem; }
.plugen-legal-layout > aside p { margin: 7px 0 0; color: #8c7443; font-size: .72rem; }

/* FAQ page */
.plugen-faq-aside { position: sticky; top: 110px; padding: 25px; color: #fff; border-radius: 20px; background: radial-gradient(circle at 20% 15%, rgba(83,157,255,.75), transparent 25%), linear-gradient(145deg,#0755cd,#04285f); }
.plugen-faq-aside > span { display: grid; width: 55px; height: 55px; margin-bottom: 18px; border: 1px solid rgba(255,255,255,.25); border-radius: 15px; background: rgba(255,255,255,.1); place-items: center; }
.plugen-faq-aside h2 { margin-bottom: 8px; color: #fff; font-size: 1.35rem; }
.plugen-faq-aside p { color: #d4e4ff; font-size: .8rem; }

/* Blog and post */
.plugen-blog-layout { display: block; }
.plugen-post-grid--archive { grid-template-columns: repeat(3,minmax(0,1fr)); }
.plugen-blog-sidebar { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; margin-top: 42px; }
.plugen-widget { padding: 20px; border: 1px solid var(--plg-line); border-radius: 15px; background: var(--plg-soft-2); }
.plugen-widget__title { font-size: .95rem; }
.plugen-widget ul { margin: 0; padding: 0; list-style: none; }
.plugen-widget li + li { margin-top: 7px; }
.plugen-widget a { color: #617088; font-size: .77rem; text-decoration: none; }
.plugen-post-hero { padding: 75px 0 50px; text-align: center; }
.plugen-post-hero h1 { margin-bottom: 15px; font-size: clamp(2.2rem,5vw,4rem); }
.plugen-post-hero > div > p { max-width: 700px; margin: 0 auto 18px; color: var(--plg-muted); font-size: 1.04rem; }
.plugen-post-hero .plugen-eyebrow { text-decoration: none; }
.plugen-post-hero > div > div { display: flex; justify-content: center; gap: 15px; color: #8c98aa; font-size: .73rem; }
.plugen-post-byline { flex-wrap: wrap; align-items: center; }
.plugen-post-byline span { display: inline-flex; align-items: center; gap: 5px; }
.plugen-post-byline .plugen-icon { width: 15px; height: 15px; }
.plugen-post-featured img { width: 100%; max-height: 580px; border-radius: 24px; object-fit: cover; box-shadow: var(--plg-shadow-sm); }
.plugen-post-content { padding-top: 55px; }
.plugen-post-footer { display: grid; gap: 22px; padding-top: 30px; padding-bottom: 60px; border-top: 1px solid var(--plg-line); }
.plugen-post-keywords > strong { display: block; margin-bottom: 9px; color: var(--plg-ink); font-size: .82rem; }
.plugen-post-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.plugen-post-tags a { padding: 5px 9px; color: #66758a; border-radius: 8px; background: var(--plg-soft); font-size: .68rem; text-decoration: none; }
.plugen-post-author { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 15px; padding: 20px; border: 1px solid var(--plg-line); border-radius: 16px; background: var(--plg-soft-2); }
.plugen-post-author__mark { display: grid; width: 54px; height: 54px; color: #fff; border-radius: 15px; background: linear-gradient(145deg, var(--plg-primary), #063575); font: 800 1.3rem Arial, sans-serif; place-items: center; }
.plugen-post-author strong { color: var(--plg-ink); font-size: .88rem; }
.plugen-post-author p { margin: 4px 0 0; color: var(--plg-muted); font-size: .74rem; line-height: 1.8; }
.plugen-post-author > a { font-size: .74rem; font-weight: 800; text-decoration: none; }
.plugen-post-back { display: flex; width: fit-content; align-items: center; gap: 6px; font-size: .78rem; font-weight: 800; text-decoration: none; }
.plugen-post-footer .plugen-icon { width: 17px; height: 17px; }
.plugen-related-posts { border-top: 1px solid var(--plg-line); background: var(--plg-soft-2); }
.plugen-direct-purchase { display: flex; margin: 0; }
.plugen-direct-purchase .plugen-button { width: 100%; }

/* Comments */
.plugen-comments { padding: 45px 0; }
.plugen-comments > h2 { font-size: 1.35rem; }
.plugen-comment-list { display: grid; gap: 13px; margin: 0 0 35px; padding: 0; list-style: none; }
.plugen-comment-list .comment-body { padding: 18px; border: 1px solid var(--plg-line); border-radius: 14px; }
.plugen-comment-list .comment-meta { display: flex; align-items: center; gap: 10px; }
.plugen-comment-list .avatar { border-radius: 50%; }
.plugen-comment-list .comment-author { font-size: .82rem; }
.plugen-comment-list .comment-metadata a { color: #8c98aa; font-size: .66rem; text-decoration: none; }
.plugen-comment-list .comment-content { margin-top: 12px; font-size: .82rem; }
.comment-respond { padding: 25px; border: 1px solid var(--plg-line); border-radius: 17px; background: var(--plg-soft-2); }
.comment-reply-title { font-size: 1.2rem; }
.comment-form { display: grid; gap: 12px; }
.comment-form p { margin: 0; }
.comment-form label { display: block; margin-bottom: 5px; font-size: .74rem; font-weight: 700; }
.comment-form input:not([type="checkbox"]),
.comment-form textarea { width: 100%; padding: 10px 13px; border: 1px solid var(--plg-line); border-radius: 10px; }

/* Checkout and EDD */
.plugen-checkout-page { padding: 65px 0 90px; background: var(--plg-soft-2); }
.plugen-checkout-header { max-width: 750px; margin: 0 auto 35px; text-align: center; }
.plugen-checkout-header h1 { font-size: clamp(2rem,4vw,3rem); }
.plugen-checkout-header p { color: var(--plg-muted); }
.plugen-checkout-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; align-items: start; gap: 24px; }
.plugen-checkout-card { padding: clamp(20px,4vw,35px); border: 1px solid var(--plg-line); border-radius: 20px; background: #fff; box-shadow: var(--plg-shadow-sm); }
.plugen-checkout-assurance { padding: 22px; border: 1px solid var(--plg-line); border-radius: 17px; background: #fff; }
.plugen-checkout-assurance h2 { font-size: 1.05rem; }
.plugen-checkout-assurance ul { display: grid; gap: 15px; margin: 20px 0 0; padding: 0; list-style: none; }
.plugen-checkout-assurance li { display: flex; gap: 10px; }
.plugen-checkout-assurance li > .plugen-icon { width: 35px; height: 35px; padding: 8px; color: var(--plg-primary); border-radius: 10px; background: var(--plg-primary-soft); }
.plugen-checkout-assurance strong,
.plugen-checkout-assurance small { display: block; }
.plugen-checkout-assurance strong { color: var(--plg-ink); font-size: .78rem; }
.plugen-checkout-assurance small { color: var(--plg-muted); font-size: .67rem; }
#edd_checkout_form_wrap fieldset { margin: 0 0 20px; padding: 20px; border: 1px solid var(--plg-line); border-radius: 14px; }
#edd_checkout_form_wrap legend { padding: 0 8px; color: var(--plg-ink); font-weight: 800; }
#edd_checkout_form_wrap label { display: block; margin-bottom: 5px; color: var(--plg-ink); font-size: .76rem; font-weight: 700; }
#edd_checkout_form_wrap input[type="text"],
#edd_checkout_form_wrap input[type="email"],
#edd_checkout_form_wrap input[type="password"],
#edd_checkout_form_wrap select { width: 100%; min-height: 48px; padding: 9px 12px; border: 1px solid var(--plg-line); border-radius: 10px; outline: 0; }
#edd_checkout_form_wrap input:focus,
#edd_checkout_form_wrap select:focus { border-color: var(--plg-primary); box-shadow: 0 0 0 3px rgba(2,97,253,.08); }
#edd_checkout_cart { width: 100%; border: 1px solid var(--plg-line); border-collapse: separate; border-spacing: 0; border-radius: 13px; }
#edd_checkout_cart th,
#edd_checkout_cart td { padding: 12px; border-bottom: 1px solid var(--plg-line); text-align: right; }
#edd_checkout_cart th { background: var(--plg-soft); }
#edd_checkout_cart tr:last-child td { border-bottom: 0; }
.edd_errors .edd_error,
.edd-alert-error { padding: 12px 15px; color: #9f1f38; border: 1px solid #efb4c0; border-radius: 10px; background: #fff1f3; }
.edd_success,
.edd-alert-success { padding: 12px 15px; color: #08734b; border: 1px solid #a9e6ce; border-radius: 10px; background: #ecfbf5; }
.edd_purchase_submit_wrapper { margin: 0; }
.edd_download_purchase_form { margin: 0; }
.plugen-receipt-licenses { margin-top: 30px; }

/* Search and 404 */
.plugen-search-results { max-width: 930px; }
.plugen-search-page-form { margin-bottom: 35px; }
.plugen-search-page-form > .plugen-icon { position: absolute; top: 16px; right: 15px; width: 20px; height: 20px; color: #98a4b6; }
.plugen-search-page-form input { padding-right: 44px; }
.plugen-result-list { display: grid; gap: 11px; }
.plugen-result-list article { display: grid; grid-template-columns: 72px 1fr 40px; align-items: center; gap: 18px; padding: 20px; border: 1px solid var(--plg-line); border-radius: 15px; background: #fff; transition: .2s ease; }
.plugen-result-list article:hover { border-color: #bdd2f4; box-shadow: var(--plg-shadow-sm); transform: translateX(-3px); }
.plugen-result-type { padding: 6px 8px; color: var(--plg-primary); border-radius: 8px; background: var(--plg-primary-soft); font-size: .67rem; font-weight: 800; text-align: center; }
.plugen-result-list h2 { margin-bottom: 4px; font-size: 1.02rem; }
.plugen-result-list h2 a { color: var(--plg-ink); text-decoration: none; }
.plugen-result-list p { margin: 0; color: var(--plg-muted); font-size: .77rem; }
.plugen-result-arrow { display: grid; width: 40px; height: 40px; color: #8d9aae; border-radius: 10px; background: var(--plg-soft); place-items: center; }
.plugen-404 { padding: clamp(70px,9vw,125px) 0; text-align: center; }
.plugen-404 > .plugen-container { display: flex; flex-direction: column; align-items: center; }
.plugen-404-art { display: flex; align-items: center; justify-content: center; margin-bottom: 28px; color: #d9e7fc; font-family: Arial,sans-serif; font-size: clamp(6rem,18vw,11rem); font-weight: 900; line-height: 1; }
.plugen-404-art > div { position: relative; display: grid; width: clamp(110px,18vw,180px); height: clamp(110px,18vw,180px); margin: 0 8px; border: 1px solid #bed3f3; border-radius: 50%; background: var(--plg-soft); place-items: center; }
.plugen-404-art img { width: 42%; }
.plugen-404-art i { position: absolute; inset: -18px; border: 1px dashed #abc6ec; border-radius: 50%; }
.plugen-404 h1 { margin-bottom: 8px; font-size: clamp(2rem,4vw,3rem); }
.plugen-404 > .plugen-container > p { max-width: 600px; color: var(--plg-muted); }
.plugen-404 .plugen-search-page-form { width: min(100%,620px); }
.plugen-404 > .plugen-container > div:last-child { display: flex; gap: 10px; }

/* Account page bridge */
.plugen-account-page { padding: 0 0 40px; background: var(--plg-soft-2); }
.plugen-account-page .plugen-breadcrumbs { padding-top: 24px; }

/* Motion */
.plugen-reveal { opacity: 1; transform: none; }
.js .plugen-reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }
.js .plugen-reveal.is-visible { opacity: 1; transform: none; }

/* Responsive */
@media (max-width: 1120px) {
	.plugen-header-inner { gap: 18px; }
	.plugen-primary-menu > li > a { padding-inline: 8px; font-size: .85rem; }
	.plugen-hero__grid { grid-template-columns: minmax(0,1fr) minmax(390px,.85fr); gap: 45px; }
	.plugen-hero__visual { min-height: 425px; }
	.plugen-footer-grid { grid-template-columns: 1.2fr .8fr; }
	.plugen-footer-contact { grid-column: auto; }
	.plugen-footer-contact ul { display: grid; grid-template-columns: 1fr; gap: 10px; }
	.plugen-product-buybox { align-items: flex-start; flex-direction: column; }
	.plugen-product-actions { width: 100%; justify-content: start; }
}

@media (max-width: 980px) {
	.admin-bar .plugen-site-header { top: 32px; }
	.plugen-primary-nav { display: none; }
	.plugen-header-inner { justify-content: space-between; }
	.plugen-menu-toggle { display: grid; }
	.plugen-hero__grid { grid-template-columns: 1fr; }
	.plugen-hero__content { max-width: 760px; text-align: center; margin-inline: auto; }
	.plugen-hero__content > p { margin-inline: auto; }
	.plugen-hero__actions,
	.plugen-hero__trust { justify-content: center; }
	.plugen-hero__visual { width: min(100%,620px); min-height: 460px; margin-inline: auto; }
	.plugen-platform-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.plugen-product-grid,
	.plugen-post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.plugen-why-layout { grid-template-columns: 1fr; }
	.plugen-why-intro { max-width: 720px; }
	.plugen-support-cta { grid-template-columns: 120px 1fr; }
	.plugen-support-cta > div:last-child { grid-column: 1 / -1; justify-content: flex-start; }
	.plugen-product-hero__grid { grid-template-columns: 1fr; }
	.plugen-product-hero__visual { width: min(100%,650px); margin-inline: auto; }
	.plugen-product-hero__content { max-width: 760px; margin-inline: auto; }
	.plugen-content-layout { grid-template-columns: 1fr; }
	.plugen-product-requirements { position: static; }
	.plugen-feature-grid--product { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.plugen-changelog-section .plugen-content-layout { grid-template-columns: 1fr; }
	.plugen-faq-layout { grid-template-columns: 1fr; }
	.plugen-faq-layout > div:first-child { position: static; }
	.plugen-product-final-cta__card { grid-template-columns: 1fr; }
	.plugen-product-final-cta__action { width: min(100%, 340px); min-width: 0; align-items: stretch; }
	.plugen-docs-layout { grid-template-columns: 1fr; }
	.plugen-docs-sidebar { position: static; grid-template-columns: repeat(3,minmax(0,1fr)); }
	.plugen-docs-sidebar > h2,
	.plugen-docs-sidebar > div { grid-column: 1 / -1; }
	.plugen-doc-single-layout { grid-template-columns: 1fr; }
	.plugen-doc-single-sidebar { position: static; display: flex; flex-wrap: wrap; padding: 0 0 20px; border: 0; border-bottom: 1px solid var(--plg-line); }
	.plugen-doc-single-sidebar h2 { width: 100%; }
	.plugen-contact-layout { grid-template-columns: 1fr; }
	.plugen-contact-info { max-width: 700px; }
	.plugen-values-section .plugen-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.plugen-checkout-layout { grid-template-columns: 1fr; }
	.plugen-checkout-assurance ul { grid-template-columns: repeat(3,minmax(0,1fr)); }
	.plugen-blog-layout { grid-template-columns: 1fr; }
	.plugen-blog-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 782px) {
	.admin-bar .plugen-site-header { top: 46px; }
	.admin-bar .plugen-product-nav { top: 120px; }
}

@media (max-width: 600px) {
	.admin-bar .plugen-site-header { top: 0; }
	.admin-bar .plugen-product-nav { top: 74px; }
}

@media (max-width: 740px) {
	.plugen-post-hero { padding: 55px 0 35px; }
	.plugen-post-byline { gap: 8px 12px !important; }
	.plugen-post-author { grid-template-columns: 46px minmax(0, 1fr); }
	.plugen-post-author__mark { width: 46px; height: 46px; }
	.plugen-post-author > a { grid-column: 2; }
	.plugen-container,
	.plugen-narrow-container { width: min(calc(100% - 28px), var(--plg-container)); }
	.plugen-section { padding: 62px 0; }
	.plugen-section-heading--split { align-items: flex-start; flex-direction: column; gap: 15px; }
	.plugen-page-hero__art { display: none; }
	.plugen-page-hero__inner { display: block; }
	.plugen-account-link span { display: none; }
	.plugen-account-link { width: 42px; padding: 0; justify-content: center; }
	.plugen-hero { padding-top: 65px; }
	.plugen-hero h1 { font-size: clamp(2.35rem,12vw,3.5rem); }
	.plugen-hero__visual { min-height: 390px; }
	.plugen-hero-demo__window { inset: 25px 10px 20px; }
	.plugen-floating-card--license { right: -3px; bottom: 14px; }
	.plugen-floating-card--update { top: 2px; left: 0; }
	.plugen-platform-grid,
	.plugen-platform-grid--large { grid-template-columns: 1fr; }
	.plugen-product-grid,
	.plugen-post-grid,
	.plugen-post-grid--archive { grid-template-columns: 1fr; }
	.plugen-product-card__visual { height: 270px; }
	.plugen-feature-grid { grid-template-columns: 1fr; }
	.plugen-process-grid { grid-template-columns: 1fr; gap: 35px; }
	.plugen-process-grid::before { top: 40px; right: 50%; bottom: 40px; left: auto; height: auto; border-top: 0; border-right: 1px dashed #aac7f2; }
	.plugen-process-grid article { padding: 0 15px; background: #f9fbff; }
	.plugen-support-cta { grid-template-columns: 1fr; padding: 34px 25px; }
	.plugen-support-cta__art { width: 90px; height: 90px; }
	.plugen-support-cta__art .plugen-icon { width: 45px; height: 45px; }
	.plugen-footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 25px; }
	.plugen-footer-brand { grid-column: 1 / -1; }
	.plugen-footer-trust { grid-column: 1 / -1; }
	.plugen-footer-contact ul { grid-template-columns: 1fr; }
	.plugen-footer-bottom .plugen-container { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 16px; }
	.plugen-footer-bottom > .plugen-container > div { align-items: flex-start; flex-direction: column; gap: 8px; }
	.plugen-product-hero__visual,
	.plugen-product-hero__visual > img,
	.plugen-product-hero__visual > .plugen-product-placeholder { min-height: 350px; height: 350px; }
	.plugen-product-actions { width: 100%; grid-auto-flow: initial; grid-auto-columns: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.plugen-product-buybox .plugen-button,
	.plugen-product-buybox form { width: 100%; }
	.plugen-product-actions .plugen-button { padding-inline: 10px; font-size: .88rem; }
	.plugen-product-meta-strip > span { flex: 1; }
	.plugen-feature-grid--product { grid-template-columns: 1fr; }
	.plugen-comparison-table-wrap { overflow: hidden; border-radius: 14px; }
	.plugen-comparison-table { display: block; width: 100%; min-width: 0; table-layout: fixed; }
	.plugen-comparison-table thead,
	.plugen-comparison-table tbody { display: block; }
	.plugen-comparison-table tr { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(72px, .72fr) minmax(78px, .78fr); }
	.plugen-comparison-table th,
	.plugen-comparison-table td,
	.plugen-comparison-table th:first-child { width: auto; min-width: 0; padding: 12px 7px; text-align: center; overflow-wrap: anywhere; }
	.plugen-comparison-table th:first-child { text-align: right; }
	.plugen-comparison-table thead th { display: flex; min-height: 58px; align-items: center; justify-content: center; flex-direction: column; line-height: 1.4; }
	.plugen-comparison-table thead th:first-child { align-items: flex-start; }
	.plugen-comparison-table thead .is-pro span { margin: 0; padding: 0; background: transparent; }
	.plugen-comparison-table thead .is-pro small { display: none; }
	.plugen-comparison-table tbody th,
	.plugen-comparison-table td { font-size: .72rem; line-height: 1.65; }
	.plugen-comparison-table td.is-pro .plugen-icon { display: none; }
	.plugen-gallery-grid { grid-template-columns: 1fr; grid-template-rows: 300px 190px 190px; }
	.plugen-gallery-grid .is-featured { grid-row: auto; }
	.plugen-video-frame { aspect-ratio: 16/10; }
	.plugen-video-placeholder { align-items: center; flex-direction: column; text-align: center; }
	.plugen-product-final-cta__card { padding: 30px 22px; }
	.plugen-catalog-toolbar { grid-template-columns: 1fr; }
	.plugen-docs-sidebar { grid-template-columns: 1fr; }
	.plugen-doc-card__link { grid-template-columns: 42px minmax(0, 1fr); }
	.plugen-doc-card__link > .plugen-icon { display: none; }
	.plugen-about-intro .plugen-content-layout { grid-template-columns: 1fr; }
	.plugen-values-section .plugen-feature-grid { grid-template-columns: 1fr; }
	.plugen-support-options { grid-template-columns: 1fr; }
	.plugen-support-options p { min-height: 0; }
	.plugen-legal-layout { grid-template-columns: 1fr; }
	.plugen-legal-layout > aside { position: static; }
	.plugen-checkout-assurance ul { grid-template-columns: 1fr; }
	.plugen-form-grid { grid-template-columns: 1fr; }
	.plugen-blog-sidebar { grid-template-columns: 1fr; }
	.plugen-result-list article { grid-template-columns: 60px 1fr; }
	.plugen-result-arrow { display: none; }
}

@media (max-width: 520px) {
	.plugen-pagination { margin-top: 38px; }
	.plugen-pagination ul.page-numbers { gap: 4px; padding: 6px; border-radius: 14px; }
	.plugen-pagination li > a,
	.plugen-pagination li > span { min-width: 40px; height: 40px; padding-inline: 8px; border-radius: 10px; }
	.plugen-pagination li > .prev,
	.plugen-pagination li > .next { min-width: 40px; }
	.plugen-pagination__label { display: none; }
	.plugen-header-inner { min-height: 66px; }
	.plugen-brand img { width: 25px; height: 31px; }
	.plugen-brand strong { font-size: 1.1rem; }
	.plugen-search-toggle { display: none; }
	.admin-bar .plugen-product-nav { top: 66px; }
	.plugen-hero__actions { align-items: stretch; flex-direction: column; }
	.plugen-hero__trust { display: grid; grid-template-columns: 1fr 1fr; justify-items: start; }
	.plugen-hero__visual { min-height: 335px; }
	.plugen-hero-demo__window { inset: 18px 0 30px; }
	.plugen-hero-demo__bar small { padding-inline: 30px; }
	.plugen-hero-demo__body { grid-template-columns: 47px 1fr; min-height: 300px; }
	.plugen-hero-demo__body aside { padding-inline: 10px; }
	.plugen-hero-demo__screen { padding: 24px 16px; }
	.plugen-floating-card { padding: 10px; }
	.plugen-floating-card--update { display: none; }
	.plugen-product-card__visual { height: 235px; }
	.plugen-footer-grid { grid-template-columns: 1fr; }
	.plugen-footer-brand,
	.plugen-footer-contact,
	.plugen-footer-trust { grid-column: auto; }
	.plugen-product-hero__visual,
	.plugen-product-hero__visual > img,
	.plugen-product-hero__visual > .plugen-product-placeholder { min-height: 295px; height: 295px; }
	.plugen-product-meta-strip { display: grid; grid-template-columns: 1fr 1fr; }
	.plugen-product-meta-strip > span { min-width: 0; }
	.plugen-product-actions { grid-template-columns: 1fr; }
	.plugen-product-actions--has-both-free-links .plugen-product-actions__repository { grid-column: auto; }
	.plugen-gallery-grid { grid-template-rows: 245px 170px 170px; }
	.plugen-changelog-list article { margin-right: 38px; }
	.plugen-changelog-list::before { right: 13px; }
	.plugen-changelog-list article::before { right: -32px; }
	.plugen-platform-archive-hero .plugen-container { align-items: flex-start; flex-direction: column; }
	.plugen-platform-archive-icon { width: 72px; height: 72px; font-size: 1.9rem; }
	.plugen-docs-hero form { align-items: stretch; flex-direction: column; }
	.plugen-docs-hero form > .plugen-icon { display: none; }
	.plugen-docs-hero input { width: 100%; padding: 0 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 9px; }
	.plugen-doc-article > footer { align-items: flex-start; flex-direction: column; }
	.plugen-search-dialog form,
	.plugen-search-page-form { flex-direction: column; }
	.plugen-search-page-form > .plugen-icon { top: 16px; }
	.plugen-404-art { font-size: 5.5rem; }
	.plugen-404 > .plugen-container > div:last-child { align-items: stretch; flex-direction: column; width: 100%; }
}

.plugen-product-brandmark { display: grid; min-height: 420px; place-items: center; border-radius: 24px; background: linear-gradient(145deg, #edf5ff, #dbeaff); color: var(--plugen-primary, #0261fd); }
.plugen-product-brandmark .plugen-icon { width: 96px; height: 96px; }
.plugen-requirement-versions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.plugen-requirement-versions > article { padding: 26px; border: 1px solid #dce6f3; border-radius: 18px; background: #fff; box-shadow: 0 12px 35px rgba(15, 47, 91, .06); }
.plugen-requirement-versions > article.is-pro { border-color: #9fc3ff; background: linear-gradient(145deg, #f8fbff, #edf5ff); }
.plugen-requirement-versions h3 { margin: 0 0 18px; }
.plugen-requirement-versions dl { margin: 0; }
.plugen-requirement-versions dl > div { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 11px 0; border-bottom: 1px solid #e7edf5; }
.plugen-requirement-versions dl > div:last-child { border-bottom: 0; }
.plugen-requirement-versions dt { color: var(--plugen-muted, #65728a); }
.plugen-requirement-versions dd { margin: 0; font-weight: 700; }
.plugen-product-requirements--extra { margin-top: 22px; }
.plugen-changelog-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; align-items: start; }
.plugen-changelog-columns > section > h3 { margin: 0 0 20px; }
.plugen-product-tags { padding: 20px 0 50px; }
.plugen-product-tags h2 { margin: 0 0 14px; font-size: 1.1rem; }
.plugen-product-tags .plugen-container > div { display: flex; flex-wrap: wrap; gap: 8px; }
.plugen-product-tags a { padding: 7px 13px; border: 1px solid #d8e3f2; border-radius: 999px; background: #f7faff; color: #315171; text-decoration: none; }
.plugen-product-tags a:hover { border-color: #9fc3ff; color: #0261fd; }
.plugen-product-grid > .plugen-empty-state { grid-column: 1 / -1; display: grid; min-height: 260px; padding: 44px; place-items: center; align-content: center; gap: 12px; border: 1px dashed #bfd2ec; border-radius: 24px; background: linear-gradient(145deg, #f9fbff, #eef5ff); text-align: center; }
.plugen-empty-state > span { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 18px; background: #fff; color: var(--plugen-primary, #0261fd); box-shadow: 0 12px 28px rgba(15, 65, 135, .1); }
.plugen-empty-state .plugen-icon { width: 27px; height: 27px; }
.plugen-empty-state h2 { margin: 4px 0 0; font-size: 1.35rem; }
.plugen-empty-state p { max-width: 580px; margin: 0; color: var(--plugen-muted, #65728a); }

@media (max-width: 782px) {
	.plugen-requirement-versions,
	.plugen-changelog-columns { grid-template-columns: 1fr; }
	.plugen-product-brandmark { min-height: 295px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.plugen-reveal { opacity: 1 !important; transform: none !important; }
}

@media print {
	.plugen-site-header,
	.plugen-site-footer,
	.plugen-breadcrumbs,
	.plugen-product-nav,
	.plugen-button { display: none !important; }
	body { color: #000; background: #fff; }
	.plugen-prose { max-width: none; color: #000; }
}
