/**
 * HeliumWP – plugin (product) page sections.
 *
 * Block versions of the Elementor product pages. Classes are prefixed `hp-`
 * and set on core blocks through the patterns in patterns/plugin-*.php.
 */

/* ---------------------------------------------------------------------------
 * Shared
 * ------------------------------------------------------------------------- */
.page-template-page-plugin .storeplugin-header {
	margin-bottom: 0;
}

.hp-section {
	--hp-heading: "Inter", sans-serif;
	--hp-body: "Roboto", sans-serif;
	--hp-ink: #080113;
	--hp-muted: #7a7a7a;
	--hp-blue: #0057ff;
}

.wp-site-blocks .hp-section .wp-block-columns,
.editor-styles-wrapper .hp-section .wp-block-columns {
	gap: 0;
	margin: 0;
}
.hp-section .wp-block-column {
	padding: 10px;
}

/* Section heading row ("Plugin features", "Users Reviews", …) */
.wp-site-blocks .hp-head,
.editor-styles-wrapper .hp-head {
	padding: 80px 10px 40px;
	margin: 0;
}
.wp-site-blocks .hp-pricing .hp-head,
.editor-styles-wrapper .hp-pricing .hp-head {
	padding: 70px 10px 30px;
}
.hp-section .hp-head__title {
	font-family: var(--hp-heading);
	font-size: 38px;
	font-weight: 700;
	line-height: 58px;
	color: var(--hp-ink);
	text-align: center;
	margin: 0;
}
.wp-site-blocks .hp-head--features,
.editor-styles-wrapper .hp-head--features {
	padding: 90px 10px 60px;
}
.hp-head--features .hp-head__title {
	line-height: 38px;
}
/* Heading rows that were Elementor containers (no extra inner padding). */
.wp-site-blocks .hp-head.hp-head--tight,
.editor-styles-wrapper .hp-head.hp-head--tight {
	padding: 70px 10px 30px;
}

/* Buttons */
.hp-section .hp-btn .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-family: var(--hp-body);
	font-size: 15px;
	font-weight: 500;
	line-height: 15px;
	color: #fff;
	background-color: var(--hp-blue);
	border: 1px solid var(--hp-blue);
	border-radius: 5px;
	padding: 15px 25px;
}
.hp-section .hp-btn .wp-block-button__link:hover,
.hp-section .hp-btn .wp-block-button__link:focus {
	color: #fff;
	background-color: var(--hp-blue);
}
.hp-section .hp-btn--cart .wp-block-button__link::before {
	content: "";
	width: 17px;
	height: 15px;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Check lists (List block → Styles → "Check" / "Check (large)") */
.hp-section ul.is-style-hp-check,
.hp-section ul.is-style-hp-check-circle,
ul.is-style-hp-check,
ul.is-style-hp-check-circle {
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: "Roboto", sans-serif;
	color: #54595f;
}
ul.is-style-hp-check li,
ul.is-style-hp-check-circle li {
	position: relative;
	margin: 0;
}
ul.is-style-hp-check li {
	font-size: 16px;
	line-height: 24px;
	padding: 0 0 0 27.5px;
}
ul.is-style-hp-check li + li {
	margin-top: 12px;
}
.hp-section ul.hp-list-spaced {
	padding-top: 15px;
}
ul.is-style-hp-check.hp-list-tight li + li {
	margin-top: 10px;
}
ul.hp-gap-4 li + li,
ul.is-style-hp-check.hp-gap-4 li + li {
	margin-top: 4px;
}
ul.is-style-hp-check.hp-text-18 li {
	font-size: 18px;
	line-height: 27px;
}
ul.is-style-hp-check.hp-text-18 li::before {
	top: 4.5px;
}
ul.is-style-hp-check.hp-gap-14 li + li {
	margin-top: 14px;
}
ul.is-style-hp-check.hp-gap-20 li + li {
	margin-top: 20px;
}
ul.is-style-hp-check-circle li {
	font-size: 20px;
	line-height: 30px;
	padding: 0 0 0 32.5px;
}
ul.is-style-hp-check-circle li + li {
	margin-top: 20px;
}
ul.is-style-hp-check li::before,
ul.is-style-hp-check-circle li::before {
	content: "";
	position: absolute;
	left: 0;
	background-color: #0057ff;
}
ul.is-style-hp-check li::before {
	top: 3px;
	width: 22.5px;
	height: 18px;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}
ul.is-style-hp-check-circle li::before {
	top: 4px;
	width: 27.5px;
	height: 22px;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z'/%3E%3C/svg%3E") center / 22px 22px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z'/%3E%3C/svg%3E") center / 22px 22px no-repeat;
}

/* ---------------------------------------------------------------------------
 * Hero
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-hero,
.editor-styles-wrapper .hp-hero {
	background-color: #f8f8f8;
	padding: 80px 0;
	margin: 0;
}
.hp-hero .wp-block-columns > .wp-block-column.hp-hero__content {
	flex-basis: 53.08%;
}
.hp-hero .wp-block-columns > .wp-block-column.hp-hero__media {
	flex-basis: 46.92%;
	padding: 0;
}
.hp-section .hp-hero__title {
	font-family: var(--hp-heading);
	font-size: 46px;
	font-weight: 800;
	line-height: 1.3;
	color: var(--hp-ink);
	margin: 0 0 20px;
}
.hp-section p.hp-hero__text {
	font-family: var(--hp-heading);
	font-size: 18px;
	line-height: 28px;
	color: #555;
	margin: 0 0 45px;
}
.wp-site-blocks .hp-hero__actions,
.editor-styles-wrapper .hp-hero__actions {
	gap: 16px;
	align-items: flex-start;
	margin: 0;
}
.hp-hero__actions .wp-block-buttons {
	margin: 0;
}
.hp-section .hp-hero__card {
	background-color: #fff;
	border: 1px solid #f0f0f0;
	border-radius: 10px;
	box-shadow: 0 23px 56px 0 rgba(17, 24, 82, 0.08);
	margin: 10px 30px;
	padding: 50px 30px 35px;
}
.hp-hero__card .wp-block-image {
	margin: 0;
}
.hp-hero__card img {
	display: block;
	margin: 0 auto;
}

/* Hero that keeps the 50px gap under the header (Elementor section without the -50px offset). */
.wp-site-blocks .hp-hero.hp-hero--gap {
	margin-top: 50px;
}
/* Empty white box in the right column. */
.hp-hero .wp-block-columns > .wp-block-column.hp-hero__blank {
	background-color: #fff;
}
/* Hero variant without an image card (text left, empty right half). */
.hp-hero--half .wp-block-columns > .wp-block-column.hp-hero__content,
.hp-hero--half .wp-block-columns > .wp-block-column.hp-hero__media {
	flex-basis: 50%;
}
.hp-section .hp-hero__icon {
	margin: 0 0 20px;
}
.hp-hero__icon img {
	display: block;
}
.hp-section p.hp-hero__text.hp-mb-20 {
	margin-bottom: 20px;
}
.wp-site-blocks .hp-hero .hp-hero__buttons,
.editor-styles-wrapper .hp-hero .hp-hero__buttons {
	gap: 16px;
	margin: 0;
}
.hp-section .hp-btn--outline .wp-block-button__link,
.hp-section .hp-btn--outline .wp-block-button__link:hover,
.hp-section .hp-btn--outline .wp-block-button__link:focus {
	color: var(--hp-blue);
	background-color: transparent;
}

/* ---------------------------------------------------------------------------
 * Feature rows (image + text)
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-feature,
.editor-styles-wrapper .hp-feature {
	max-width: 1200px;
	margin: 0 auto 90px;
}
.hp-section .hp-feature__title {
	font-family: var(--hp-heading);
	font-size: 30px;
	font-weight: 700;
	line-height: 52px;
	color: var(--hp-ink);
	margin: 0 0 20px;
}
.hp-feature p {
	font-family: var(--hp-body);
	font-size: 16px;
	line-height: 24px;
	color: var(--hp-muted);
	margin: 0 0 20px;
}
.hp-section p.hp-mb-25 {
	margin-bottom: 25px;
}
.hp-section p.hp-mb-45 {
	margin-bottom: 45px;
}
.hp-section p.hp-pr-20 {
	padding-right: 20px;
}
.hp-section .hp-feature__img {
	display: flex;
	flex-direction: row; /* core's lightbox wrapper switches figures to a column */
	margin: 0;
}
.hp-section .hp-feature__img.hp-align-end {
	justify-content: flex-end;
}
.hp-feature__img.hp-img-dim img {
	opacity: 0.9;
}
/* Two overlapping screenshots in one feature row. Like the Elementor version they
   keep their set widths (500px / 420px) on narrow screens. */
.hp-section .hp-feature__img.hp-stack-1 img,
.hp-section .hp-feature__img.hp-stack-2 img {
	max-width: none;
	flex-shrink: 0;
}
.hp-section .hp-feature__img.hp-stack-2 {
	position: relative;
	margin: -120px 0 0 160px;
}
.hp-feature__img img {
	/* The Elementor version kept a 50px gap on the inner side at every width. */
	width: calc(100% - 50px);
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
}
.hp-feature__img.hp-pad-40 img {
	width: calc(100% - 40px);
}
.hp-feature__img.hp-pad-30 img {
	width: calc(100% - 30px);
}

/* Narrow screenshots keep their own width, centred in the area beside the 50px gap
   (as Elementor showed them). */
.hp-section .hp-feature__img.hp-img-natural {
	justify-content: center;
	padding-right: 50px;
}
.hp-section .hp-feature__img.hp-img-natural.hp-natural-pad-left {
	padding-right: 0;
	padding-left: 50px;
}
.hp-feature__img.hp-img-natural img {
	max-width: 100%;
}

/* Full-width feature row: heading, text, then a full-width screenshot. */
.hp-feature--full .hp-feature__full {
	padding: 10px;
}
.hp-section .hp-feature__img.hp-img-full {
	display: block;
}
.hp-feature__img.hp-img-full img {
	width: 100%;
}

/* ---------------------------------------------------------------------------
 * Free vs Pro table
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-compare,
.editor-styles-wrapper .hp-compare {
	background-color: #fdfdfd;
	margin: 0;
}
.hp-compare__body {
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px 10px 80px;
}
.hp-section .hp-compare-table {
	margin: 20px 0;
	box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.05);
	font-family: "Poppins", sans-serif;
}
.hp-compare-table table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
.hp-section .hp-compare-table thead {
	background-color: #f5f7fa;
	border-bottom: 0;
}
.hp-section .hp-compare-table th,
.hp-section .hp-compare-table td {
	border: 1px solid #e0e0e0;
	padding: 14px 16px;
	text-align: center;
	vertical-align: middle;
	color: #000;
}
.hp-section .hp-compare-table th {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
}
.hp-section .hp-compare-table td {
	font-size: 15px;
	line-height: 22.5px;
}
.hp-section .hp-compare-table th:first-child,
.hp-section .hp-compare-table td:first-child {
	text-align: left;
	padding-left: 20px;
}
.hp-yes,
.hp-no {
	display: inline-block;
	vertical-align: middle;
	height: 18px;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
.hp-yes {
	width: 18px;
	background-color: #0057ff;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.hp-no {
	width: 12px;
	background-color: #f44336;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.hp-table-btn a {
	display: inline-block;
	padding: 8px 20px;
	border-radius: 5px;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	background-color: #0057ff;
}
.hp-table-btn.is-download a {
	background-color: #69727d;
}

/* ---------------------------------------------------------------------------
 * Reviews
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-reviews,
.editor-styles-wrapper .hp-reviews {
	max-width: 1160px;
	margin: 0 auto 50px;
	padding: 10px;
}
.hp-section .hp-review {
	padding: 30px;
	margin: 0 0 20px;
	box-shadow: 0 0 7px -4px rgba(0, 0, 0, 0.5);
}
.hp-section .hp-review:last-child {
	margin-bottom: 0;
}

/* Boxed variant: one card per column, cards sized to their content. */
.wp-site-blocks .hp-reviews--grid,
.editor-styles-wrapper .hp-reviews--grid {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 0 70px;
}
.wp-site-blocks .hp-reviews--grid .wp-block-columns {
	align-items: flex-start;
}
.hp-section .hp-review--boxed {
	padding: 40px;
	margin: 0;
}
.hp-section .hp-review--boxed:empty {
	padding: 30px 30px 31px;
}
.hp-section .hp-review > * {
	margin: 0 0 20px;
}
.hp-section .hp-review > :last-child {
	margin-bottom: 0;
}
.hp-section p.hp-rating {
	width: 100px;
	height: 16px;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
	background-color: #f0ad4e;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 16'%3E%3Cpath d='M8 .6l2.3 4.7 5.2.8-3.8 3.6.9 5.2L8 12.4l-4.6 2.5.9-5.2L.5 6.1l5.2-.8z'/%3E%3C/svg%3E") 0 0 / 21px 16px repeat-x;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 16'%3E%3Cpath d='M8 .6l2.3 4.7 5.2.8-3.8 3.6.9 5.2L8 12.4l-4.6 2.5.9-5.2L.5 6.1l5.2-.8z'/%3E%3C/svg%3E") 0 0 / 21px 16px repeat-x;
}
.hp-section .hp-review__title {
	font-family: var(--hp-heading);
	font-size: 20px;
	font-weight: 600;
	line-height: 22px;
	color: #021343;
}
.hp-section .hp-review p {
	font-family: var(--hp-body);
	font-size: 16px;
	line-height: 24px;
	color: var(--hp-muted);
}
.hp-section p.hp-review__author {
	font-size: 15px;
	font-weight: 600;
	line-height: 15px;
	color: #000;
}

/* ---------------------------------------------------------------------------
 * Pricing
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-pricing,
.editor-styles-wrapper .hp-pricing {
	background-color: #f8f8f8;
	margin: 0;
}
.hp-pricing__body {
	max-width: 1170px;
	margin: 0 auto;
	padding: 15px 15px 70px;
}
.hp-pricing .pricing-plan__heading {
	text-align: center;
	padding: 32px 0 70px;
}
.hp-pricing .pricing-plan__switch {
	display: inline-block;
	position: relative;
}
.wp-site-blocks .hp-pricing .pricing-plan__toggle,
.editor-styles-wrapper .hp-pricing .pricing-plan__toggle {
	display: inline-flex;
	gap: 0;
	background-color: #fff;
	border-radius: 6px;
	box-shadow: 0 5px 30px rgba(0, 0, 0, 0.1);
	padding: 4px;
	margin: 0;
}
.hp-pricing .pricing-plan__toggle .wp-block-button__link {
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 28px;
	color: #151826;
	background: transparent;
	border-radius: 6px;
	padding: 4px 20px;
	cursor: pointer;
}
.hp-pricing:not(.is-lifetime) .hp-toggle-yearly .wp-block-button__link,
.hp-pricing.is-lifetime .hp-toggle-lifetime .wp-block-button__link {
	background-color: #0057ff;
	color: #fff;
}
.hp-section p.pricing-plan__badge {
	margin: 0;
}

/* Only one billing period is visible on the front end; both show in the editor. */
body:not(.wp-admin) .hp-pricing:not(.is-lifetime) .hp-plans-lifetime,
body:not(.wp-admin) .hp-pricing.is-lifetime .hp-plans-yearly {
	display: none;
}
.editor-styles-wrapper .hp-plans-lifetime {
	margin-top: 60px !important;
}
.editor-styles-wrapper .hp-plans-lifetime::before {
	content: "Lifetime plans (hidden until the Lifetime toggle is clicked)";
	display: block;
	font: 600 13px/1 sans-serif;
	color: #757575;
	text-align: center;
	margin-bottom: 30px;
}

.hp-pricing .pricing-plan__single > *,
.hp-pricing .pricing-plan__header > * {
	margin-top: 0;
}
.hp-pricing .pricing-plan__header h4 {
	font-family: "Inter", sans-serif;
	font-size: 20px;
	line-height: 24px;
	font-weight: 500;
	color: #151826;
	margin: 0;
}
.hp-section .pricing-plan__header p.pricing-plan__price {
	font-family: "Inter", sans-serif;
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
	color: #151826;
	margin: 20px 0 15px;
}
.hp-section .pricing-plan__header p.pricing-plan__subtitle {
	font-family: "Inter", sans-serif;
	font-size: 15px;
	line-height: 1.5;
	color: #626ca2;
	margin: 0;
}
.hp-pricing .pricing-plan__price s {
	text-decoration: line-through;
}
.hp-section .pricing-plan__single ul.wp-block-list {
	list-style: none;
	margin: 0;
	padding: 18px 0 45px;
}
.hp-section .hp-plan-btn {
	display: block;
	width: 100%;
}
.hp-section .hp-plan-btn .wp-block-button__link {
	display: block;
	width: 100%;
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	background-color: #e0eaff;
	border-radius: 6px;
	color: #0057ff;
	padding: 15px;
	text-align: center;
	transition: 0.3s ease-in-out;
}
.hp-section .hp-plan-btn .wp-block-button__link:hover,
.hp-section .pricing-plan__single:nth-child(2) .hp-plan-btn .wp-block-button__link {
	background-color: #0057ff;
	color: #fff;
}

/* ---------------------------------------------------------------------------
 * Money-back guarantee (synced pattern)
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-money-back,
.editor-styles-wrapper .hp-money-back {
	max-width: 1140px;
	margin: 0 auto;
	padding: 30px 0;
}
.wp-site-blocks .hp-money-back .wp-block-columns,
.editor-styles-wrapper .hp-money-back .wp-block-columns {
	gap: 20px;
}
.hp-money-back .wp-block-columns > .wp-block-column.hp-money-back__badge {
	flex: 0 0 204px;
}
.hp-money-back .wp-block-columns > .wp-block-column.hp-money-back__text {
	margin-top: 40px;
}
.hp-money-back .wp-block-image {
	margin: 0;
	text-align: center;
}
.hp-section.hp-money-back .hp-money-back__title {
	font-family: "Roboto", sans-serif;
	font-size: 30px;
	font-weight: 600;
	line-height: 30px;
	color: #000;
	margin: 0 0 20px;
}
.hp-section.hp-money-back p {
	font-family: "Roboto", sans-serif;
	font-size: 18px;
	line-height: 27px;
	color: var(--hp-muted, #7a7a7a);
	margin: 0 0 25px;
}

/* ---------------------------------------------------------------------------
 * FAQ
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-faq,
.editor-styles-wrapper .hp-faq {
	background-color: #f8f8f8;
	margin: 0;
}
.hp-faq__list {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 10px 80px;
}
.hp-section .hp-faq__item {
	padding: 10px;
	margin: 0 0 15px;
	box-shadow: 0 0 5px -2px rgba(0, 0, 0, 0.5);
}
.hp-faq__item summary {
	display: block;
	padding: 15px;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 16px;
	color: #000;
	cursor: pointer;
	list-style: none;
}
.hp-faq__item summary::-webkit-details-marker {
	display: none;
}
/* Floated like Elementor's accordion icon, so only the first line of a long
   question is narrowed. */
.hp-faq__item summary::before {
	content: "";
	float: right;
	width: 24px;
	height: 17px; /* Elementor's icon box is 17px, so it also narrows the second line. */
	background-color: #000;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z'/%3E%3C/svg%3E") right center / 14px 16px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z'/%3E%3C/svg%3E") right center / 14px 16px no-repeat;
}
.hp-faq__item[open] summary::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z'/%3E%3C/svg%3E");
}
.hp-section .hp-faq__item p {
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: #7a7a7a;
	padding: 10px;
	margin: 0;
}
.hp-section .hp-faq__item p.hp-mb-25 {
	margin-bottom: 25px;
}

/* ---------------------------------------------------------------------------
 * "Kick off" call to action (tablet and mobile only, as on the Elementor page)
 * ------------------------------------------------------------------------- */
.wp-site-blocks .hp-kickoff,
.editor-styles-wrapper .hp-kickoff {
	background-color: #faf9f9;
	padding: 71px calc(12% + 10px) 121px;
	margin: 0;
	text-align: center;
}
.hp-section .hp-kickoff__title {
	font-family: "Kanit", sans-serif;
	font-size: 48px;
	font-weight: 500;
	line-height: 58px;
	color: #080113;
	text-align: center;
	margin: 0;
}
.hp-section.hp-kickoff .wp-block-buttons {
	justify-content: center;
	margin-top: 35px;
}
.hp-kickoff .wp-block-button__link {
	font-family: "Kanit", sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 26px;
	color: #fff;
	background-color: #61ce70;
	border-radius: 10px;
	padding: 12px 24px;
}
@media (min-width: 1025px) {
	body:not(.wp-admin) .hp-kickoff {
		display: none;
	}
}

/* ---------------------------------------------------------------------------
 * Responsive
 * ------------------------------------------------------------------------- */
@media (max-width: 781px) {

	.hp-section .hp-compare-table {
		overflow-x: auto;
	}
	.wp-site-blocks .hp-kickoff {
		padding: 71px 20px 121px;
	}
}

@media (max-width: 768px) {
	.hp-section .hp-compare-table th,
	.hp-section .hp-compare-table td {
		padding: 10px;
	}
}

@media (max-width: 767.98px) {
	.hp-faq__item summary::before {
		width: 19px; /* Elementor's accordion icon box narrows to 19px on mobile. */
	}
	/* Plugin-page columns opt out of core's <782px stacking and stack here instead,
	   matching Elementor's mobile breakpoint. */
	.hp-section .wp-block-columns.is-not-stacked-on-mobile {
		flex-wrap: wrap !important;
	}
	.hp-section .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
		flex-basis: 100% !important;
	}
	.hp-hero--half .wp-block-columns > .wp-block-column.hp-hero__media:empty {
		display: none;
	}
	.hp-pricing .pricing-plan__heading {
		padding: 32px 0 40px;
	}
	.hp-pricing .pricing-plan__box {
		grid-template-columns: 1fr;
		gap: 40px;
	}
}

/* ---------------------------------------------------------------------------
 * Plugin catalog (secondary Plugins page) – homepage look: blue rounded hero,
 * highlighted section title, pastel cards, blue CTA.
 * ------------------------------------------------------------------------- */
.hp-catalog-hero,
.hp-catalog,
.hp-catalog-cta {
	--hp-cat-font: "Poppins", sans-serif;
}

/* Hero */
.wp-site-blocks .hp-catalog-hero,
.editor-styles-wrapper .hp-catalog-hero {
	position: relative;
	overflow: hidden;
	background-color: #004ce5;
	background-image: url("../images/bg-vector.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	border-radius: 25px;
	margin: 25px 25px 0;
	padding: 110px 30px 120px;
	text-align: center;
}
.hp-section p.hp-eyebrow {
	display: inline-block;
	font-family: var(--hp-cat-font);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #000;
	background-color: #ffbe18;
	border-radius: 80px;
	padding: 10px 18px;
	margin: 0 0 28px;
}
.hp-section .hp-catalog-hero__title {
	font-family: var(--hp-cat-font);
	font-size: 62px;
	font-weight: 700;
	line-height: 72px;
	color: #fff;
	max-width: 900px;
	margin: 0 auto 36px;
	text-align: center;
}
.hp-section ul.hp-trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: var(--hp-cat-font);
	font-size: 15px;
	font-weight: 500;
	line-height: 22px;
	color: #fff;
}
.hp-trust li {
	position: relative;
	padding: 10px 18px 10px 44px;
	margin: 0;
	background-color: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 80px;
}
.hp-trust li::before {
	content: "";
	position: absolute;
	left: 16px;
	top: 12px;
	width: 18px;
	height: 18px;
	background-color: #ffbe18;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Section heading above the grid (homepage section-title with yellow highlight) */
.wp-site-blocks .hp-catalog-head,
.editor-styles-wrapper .hp-catalog-head {
	padding: 110px 20px 60px;
	margin: 0;
}
.hp-catalog-head .storeplugin-section-title {
	font-family: var(--hp-cat-font, "Poppins", sans-serif);
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
	color: #000;
}
@media screen and (min-width: 1440px) {
	.hp-catalog-head .storeplugin-section-title {
		font-size: 48px;
	}
}

/* Card grid */
.wp-site-blocks .hp-catalog,
.editor-styles-wrapper .hp-catalog {
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 30px 120px;
}
.wp-site-blocks .hp-catalog__grid,
.editor-styles-wrapper .hp-catalog__grid {
	gap: 30px;
}
.hp-section .hp-card {
	position: relative;
	display: flex;
	flex-direction: column;
	background-color: #fcfbe5;
	border-radius: 15px;
	padding: 35px 35px 32px;
	margin: 0;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
/* Homepage pastel tints, repeating for any number of cards. */
.hp-catalog__grid > .hp-card:nth-child(6n+1) { background-color: #d8eaef; }
.hp-catalog__grid > .hp-card:nth-child(6n+2) { background-color: #e3e1f9; }
.hp-catalog__grid > .hp-card:nth-child(6n+3) { background-color: #fde3e9; }
.hp-catalog__grid > .hp-card:nth-child(6n+4) { background-color: #e1f7fd; }
.hp-catalog__grid > .hp-card:nth-child(6n+5) { background-color: #fcfbe5; }
.hp-catalog__grid > .hp-card:nth-child(6n+6) { background-color: #e8eafa; }
.hp-section .hp-card:hover,
.hp-section .hp-card:focus-within {
	transform: translateY(-6px);
	box-shadow: 0 24px 40px -24px rgba(0, 76, 229, 0.45);
}
.wp-site-blocks .hp-card__head,
.editor-styles-wrapper .hp-card__head {
	justify-content: space-between;
	align-items: center;
	margin: 0 0 28px;
}
.hp-section .hp-card__icon {
	margin: 0;
	padding: 8px;
	background-color: #fff;
	border-radius: 14px;
	box-shadow: 0 8px 20px -10px rgba(17, 24, 82, 0.35);
}
.hp-card__icon img {
	display: block;
	width: 56px;
	height: 56px;
	border-radius: 8px;
	object-fit: cover;
}
.hp-section p.hp-card__tag {
	font-family: var(--hp-cat-font);
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	color: #000;
	background-color: #fff;
	border-radius: 80px;
	padding: 8px 14px;
	margin: 0;
}
.hp-section .hp-card__title {
	font-family: var(--hp-cat-font);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	color: #000;
	margin: 0 0 14px;
}
.hp-card__title a {
	color: inherit;
	text-decoration: none;
}
/* Whole card is clickable through the title link. */
.hp-card__title a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 15px;
}
.hp-card__title a:focus-visible {
	outline: none;
}
.hp-card:focus-within {
	outline: 2px solid #004ce5;
	outline-offset: 3px;
}
.hp-section p.hp-card__text {
	flex-grow: 1;
	font-family: var(--hp-cat-font);
	font-size: 16px;
	line-height: 26px;
	color: #4a4a4a;
	margin: 0 0 28px;
}
.wp-site-blocks .hp-card__foot,
.editor-styles-wrapper .hp-card__foot {
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin: 0;
}
.hp-card__foot > * {
	position: relative;
	z-index: 1;
}
.wp-site-blocks .hp-card__foot .wp-block-buttons,
.editor-styles-wrapper .hp-card__foot .wp-block-buttons {
	margin: 0;
}
/* Blue pill button (theme primary), sized for cards. */
.hp-section .hp-card__btn .wp-block-button__link {
	font-family: var(--hp-cat-font);
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	color: #fff;
	background-color: #004ce5;
	border-radius: 80px;
	padding: 12px 28px;
}
.hp-section .hp-card__btn .wp-block-button__link:hover,
.hp-section .hp-card__btn .wp-block-button__link:focus {
	color: #000;
	background-color: #ffae00;
}
.hp-section p.hp-card__docs {
	font-family: var(--hp-cat-font);
	font-size: 15px;
	font-weight: 500;
	line-height: 24px;
	margin: 0;
}
.hp-section p.hp-card__docs a {
	color: #000;
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-color: rgba(0, 0, 0, 0.3);
}
.hp-section p.hp-card__docs a:hover {
	color: #004ce5;
	text-decoration-color: currentColor;
}

/* Help banner */
.wp-site-blocks .hp-catalog-cta,
.editor-styles-wrapper .hp-catalog-cta {
	position: relative;
	overflow: hidden;
	background-color: #004ce5;
	background-image: url("../images/bg-vector.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	border-radius: 25px;
	margin: 0 25px 120px;
	padding: 90px 30px;
	text-align: center;
}
.hp-catalog-cta .storeplugin-section-title {
	font-family: var(--hp-cat-font);
	color: #fff;
	max-width: 760px;
	margin: 0 auto 20px;
	text-align: center;
}
.hp-section p.hp-catalog-cta__text {
	font-family: var(--hp-cat-font);
	font-size: 18px;
	line-height: 28px;
	color: rgba(255, 255, 255, 0.9);
	max-width: 620px;
	margin: 0 auto 36px;
	text-align: center;
}
.wp-site-blocks .hp-catalog-cta .wp-block-buttons,
.editor-styles-wrapper .hp-catalog-cta .wp-block-buttons {
	justify-content: center;
	gap: 16px;
	margin: 0;
}
.hp-catalog-cta .wp-block-button__link {
	font-family: var(--hp-cat-font);
	font-size: 18px;
	font-weight: 600;
	line-height: 28px;
	border-radius: 80px;
	padding: 16px 35px;
	background-color: #ffbe18;
	color: #000;
}
.hp-catalog-cta .wp-block-button__link:hover,
.hp-catalog-cta .wp-block-button__link:focus {
	background-color: #fff;
	color: #004ce5;
}
.hp-catalog-cta .hp-btn-ghost .wp-block-button__link {
	background-color: transparent;
	color: #fff;
	box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.7);
}
.hp-catalog-cta .hp-btn-ghost .wp-block-button__link:hover,
.hp-catalog-cta .hp-btn-ghost .wp-block-button__link:focus {
	background-color: #fff;
	color: #004ce5;
	box-shadow: none;
}

@media (max-width: 1199.98px) {
	.hp-section .hp-catalog-hero__title {
		font-size: 50px;
		line-height: 62px;
	}
}
@media (max-width: 781px) {
	.wp-site-blocks .hp-catalog-hero {
		border-radius: 15px;
		margin: 15px 15px 0;
		padding: 70px 20px 80px;
	}
	.hp-section .hp-catalog-hero__title {
		font-size: 36px;
		line-height: 44px;
	}
	.wp-site-blocks .hp-catalog-head {
		padding: 70px 15px 40px;
	}
	.hp-catalog-head .storeplugin-section-title,
	.hp-catalog-cta .storeplugin-section-title {
		font-size: 32px;
	}
	.wp-site-blocks .hp-catalog {
		padding: 0 15px 70px;
	}
	.hp-section .hp-card {
		padding: 28px 24px;
	}
	.wp-site-blocks .hp-catalog-cta {
		border-radius: 15px;
		margin: 0 15px 70px;
		padding: 60px 20px;
	}
}
