.wbuilder-layout {
	box-sizing: border-box;
	color: var(--wbuilder-text, #111827);
	width: 100%;
}

.wbuilder-layout *,
.wbuilder-layout *::before,
.wbuilder-layout *::after {
	box-sizing: inherit;
}

.wbuilder-section {
	border-style: solid;
	border-width: 0;
	width: 100%;
}

.wbuilder-section-inner {
	margin: 0 auto;
	max-width: min(var(--wbuilder-content-width, 1120px), 100%);
	width: 100%;
}

.wbuilder-columns {
	box-sizing: border-box;
	display: grid;
	gap: var(--wbuilder-column-gap, var(--wbuilder-gap, 24px));
	grid-template-columns: var(--wbuilder-column-template, minmax(0, 1fr));
	width: 100%;
}

.wbuilder-column {
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
}

.wbuilder-section.is-full-width > .wbuilder-section-inner {
	max-width: none;
	width: 100%;
}

.wbuilder-section.is-full-width {
	max-width: none !important;
	width: 100%;
}

.wbuilder-section.no-stack-tablet {
	--wbuilder-stack-tablet: initial;
}

.wbuilder-section.no-stack-mobile {
	--wbuilder-stack-mobile: initial;
}

.wbuilder-widget-container {
	border: 1px dashed transparent;
}

.wbuilder-widget {
	border-style: solid;
	border-width: 0;
}

.wbuilder-container-children {
	display: grid;
	gap: var(--wbuilder-gap, 18px);
	grid-template-columns: var(--wbuilder-container-template, repeat(var(--wbuilder-container-columns, 1), minmax(0, 1fr)));
}

.wbuilder-container-children:empty::before {
	content: none !important;
	display: none !important;
}

.wbuilder-widget + .wbuilder-widget {
	margin-top: 18px;
}

.wbuilder-column > .wbuilder-widget + .wbuilder-widget,
.wbuilder-section-inner > .wbuilder-widget + .wbuilder-widget {
	margin-top: 0;
}

@media (max-width: 1024px) {
	.wbuilder-section:not(.no-stack-tablet) > .wbuilder-section-inner > .wbuilder-columns {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 767px) {
	.wbuilder-section:not(.no-stack-mobile) > .wbuilder-section-inner > .wbuilder-columns {
		grid-template-columns: 1fr !important;
	}

	.wbuilder-section.reverse-mobile > .wbuilder-section-inner > .wbuilder-columns > .wbuilder-column {
		order: calc(var(--wbuilder-columns, 1) - var(--wbuilder-column-index, 0));
	}
}

.wbuilder-heading,
.wbuilder-post-title,
.wbuilder-archive-title {
	margin: 0 0 12px;
	line-height: 1.15;
}

.wbuilder-text {
	line-height: 1.65;
}

.wbuilder-post-meta,
.wbuilder-breadcrumbs {
	align-items: center;
	color: #6b7280;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wbuilder-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.wbuilder-author-box {
	align-items: center;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	display: flex;
	gap: 14px;
	padding: 16px;
}

.wbuilder-author-box img {
	border-radius: 999px;
	flex: 0 0 auto;
}

.wbuilder-author-box p {
	margin: 6px 0 0;
}

.wbuilder-avatar-preview {
	background: #e5e7eb;
	border-radius: 999px;
	height: 72px;
	width: 72px;
}

.wbuilder-image,
.wbuilder-featured-image {
	display: block;
	height: 100%;
	max-width: none;
	min-height: 220px;
	object-fit: cover;
	width: 100%;
}

.wbuilder-image-link {
	display: block;
	height: 100%;
	width: 100%;
}

.wbuilder-image-placeholder {
	align-items: center;
	aspect-ratio: 16 / 10;
	background:
		linear-gradient(135deg, rgba(37, 99, 235, 0.12), rgba(217, 143, 240, 0.18)),
		#f8fafc;
	border: 1px dashed #93c5fd;
	border-radius: 6px;
	color: #475569;
	display: flex;
	font-weight: 900;
	justify-content: center;
	min-height: 220px;
	width: 100%;
}

.wbuilder-button {
	align-items: center;
	background: var(--wbuilder-primary, #111827);
	border-radius: var(--wbuilder-button-radius, 6px);
	color: #fff;
	display: inline-flex;
	font-weight: 700;
	gap: 8px;
	line-height: 1;
	padding: 13px 18px;
	text-decoration: none;
}

.wbuilder-widget-button {
	box-shadow: none !important;
}

.wbuilder-button:hover,
.wbuilder-button:focus {
	background: #111827;
	color: #fff;
}

.wbuilder-spacer {
	height: var(--wbuilder-spacer-height, 40px);
}

.wbuilder-divider {
	border: 0;
	border-top: 1px solid currentColor;
	opacity: 0.25;
}

.wbuilder-video {
	aspect-ratio: 16 / 9;
	background: #111827;
	width: 100%;
}

.wbuilder-video iframe,
.wbuilder-video video {
	border: 0;
	height: 100%;
	width: 100%;
}

.wbuilder-card {
	border: 1px solid #e5e7eb;
	border-radius: var(--wbuilder-card-radius, 6px);
	padding: 18px;
}

.wbuilder-layout a:not(.wbuilder-button) {
	color: var(--wbuilder-link, #2563eb);
}

.wbuilder-tabs-list {
	border-bottom: 1px solid #e5e7eb;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-bottom: 14px;
}

.wbuilder-tabs-list button {
	background: transparent;
	border: 0;
	border-bottom: 3px solid transparent;
	cursor: pointer;
	font-weight: 700;
	padding: 10px 12px;
}

.wbuilder-tabs-list button[aria-selected="true"] {
	border-bottom-color: var(--wbuilder-primary, #2563eb);
	color: var(--wbuilder-primary, #2563eb);
}

.wbuilder-tab-panel {
	line-height: 1.65;
}

.wbuilder-accordion details + details {
	margin-top: 8px;
}

.wbuilder-accordion summary {
	cursor: pointer;
	font-weight: 700;
}

.wbuilder-form {
	display: grid;
	gap: 12px;
}

.wbuilder-hp {
	left: -10000px;
	position: absolute;
	top: auto;
}

.wbuilder-form-success {
	background: #ecfdf5;
	border: 1px solid #86efac;
	border-radius: 4px;
	color: #14532d;
	margin-bottom: 12px;
	padding: 12px;
}

.wbuilder-form input,
.wbuilder-form textarea,
.wbuilder-form select,
.search-form input {
	border: 1px solid #cbd5e1;
	border-radius: 4px;
	padding: 10px;
	width: 100%;
}

.search-form {
	display: flex;
	gap: 8px;
}

.search-form button {
	background: var(--wbuilder-primary, #2563eb);
	border: 0;
	border-radius: 4px;
	color: #fff;
	cursor: pointer;
	padding: 10px 14px;
}

.wbuilder-popup {
	background: rgba(15, 23, 42, 0.58);
	inset: 0;
	padding: 32px;
	position: fixed;
	z-index: 99999;
}

.wbuilder-popup[hidden] {
	display: none;
}

.wbuilder-popup-inner {
	background: #fff;
	margin: 8vh auto 0;
	max-width: 640px;
	padding: 24px;
	position: relative;
}

.wbuilder-popup[data-position="top"] .wbuilder-popup-inner {
	margin-top: 24px;
}

.wbuilder-popup[data-position="bottom"] .wbuilder-popup-inner {
	margin-bottom: 24px;
	margin-top: auto;
	position: absolute;
	left: 32px;
	right: 32px;
	bottom: 0;
}

.wbuilder-popup-close {
	background: #111827;
	border: 0;
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	font-size: 20px;
	height: 34px;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 34px;
}

.wbuilder-gallery {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(var(--wbuilder-gallery-columns, 3), minmax(0, 1fr));
}

.wbuilder-gallery img {
	aspect-ratio: 1;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.wbuilder-social-icons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.wbuilder-social-icons a {
	background: #f3f4f6;
	border-radius: 4px;
	padding: 8px 10px;
	text-decoration: none;
}

.wbuilder-countdown {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	text-align: center;
}

.wbuilder-countdown div {
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	padding: 16px 10px;
}

.wbuilder-countdown strong {
	display: block;
	font-size: 32px;
	line-height: 1;
}

.wbuilder-countdown span {
	color: #6b7280;
	display: block;
	font-size: 12px;
	margin-top: 6px;
	text-transform: uppercase;
}

.wbuilder-cta {
	background: #f8fafc;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	padding: 28px;
}

.wbuilder-cta h2 {
	margin-top: 0;
}

.wbuilder-stats,
.wbuilder-feature-list {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.wbuilder-stats div,
.wbuilder-feature-list div,
.wbuilder-team-member {
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	margin: 0;
	padding: 18px;
}

.wbuilder-stats strong {
	display: block;
	font-size: 34px;
	line-height: 1;
}

.wbuilder-stats span,
.wbuilder-team-member span {
	color: #6b7280;
	display: block;
	margin-top: 6px;
}

.wbuilder-team-member img {
	aspect-ratio: 1;
	display: block;
	height: auto;
	margin-bottom: 14px;
	object-fit: cover;
	width: 100%;
}

.wbuilder-table-wrap {
	overflow-x: auto;
}

.wbuilder-comparison-table {
	border-collapse: collapse;
	width: 100%;
}

.wbuilder-comparison-table th,
.wbuilder-comparison-table td {
	border: 1px solid #e5e7eb;
	padding: 12px;
	text-align: left;
}

.wbuilder-comparison-table th {
	background: #f8fafc;
}

.wbuilder-price {
	font-size: 38px;
	font-weight: 800;
}

.wbuilder-progress {
	background: #e5e7eb;
	border-radius: 999px;
	height: 12px;
	overflow: hidden;
}

.wbuilder-progress span {
	background: var(--wbuilder-primary, #2563eb);
	display: block;
	height: 100%;
}

.wbuilder-icon-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wbuilder-icon-list li {
	margin: 0 0 8px;
	padding-left: 22px;
	position: relative;
}

.wbuilder-icon-list li::before {
	background: var(--wbuilder-primary, #2563eb);
	border-radius: 999px;
	content: "";
	height: 8px;
	left: 0;
	position: absolute;
	top: 0.65em;
	width: 8px;
}

.wbuilder-menu {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wbuilder-menu a {
	color: inherit;
	text-decoration: none;
}

.wbuilder-posts {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(var(--wbuilder-post-columns, 3), minmax(0, 1fr));
}

.wbuilder-post-card-image {
	aspect-ratio: 16 / 10;
	display: block;
	height: auto;
	margin: -18px -18px 14px;
	max-width: calc(100% + 36px);
	object-fit: cover;
	width: calc(100% + 36px);
}

.wbuilder-product-image img {
	height: auto;
	max-width: 100%;
}

@media (max-width: 720px) {
	.wbuilder-section-inner {
		max-width: 100%;
	}

	.wbuilder-menu {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.wbuilder-gallery,
	.wbuilder-posts,
	.wbuilder-countdown {
		grid-template-columns: 1fr;
	}
}
